@gusto/embedded-react-sdk 0.52.1 → 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 (471) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/dist/components/Base/Base.d.ts +2 -2
  3. package/dist/components/Base/Base.js.map +1 -1
  4. package/dist/components/Common/DateRangeFilter/DateRangeFilter.d.ts +1 -2
  5. package/dist/components/Common/DateRangeFilter/DateRangeFilter.js +42 -43
  6. package/dist/components/Common/DateRangeFilter/DateRangeFilter.js.map +1 -1
  7. package/dist/components/Common/Fields/PercentageField/PercentageField.js +44 -42
  8. package/dist/components/Common/Fields/PercentageField/PercentageField.js.map +1 -1
  9. package/dist/components/Common/UI/Box/Box.js +6 -6
  10. package/dist/components/Common/UI/Box/Box.js.map +1 -1
  11. package/dist/components/Common/UI/Box/Box.module.scss.js +8 -8
  12. package/dist/components/Common/UI/Box/BoxTypes.d.ts +1 -1
  13. package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
  14. package/dist/components/Common/UI/CalendarPreview/CalendarPreview.js +16 -14
  15. package/dist/components/Common/UI/CalendarPreview/CalendarPreview.js.map +1 -1
  16. package/dist/components/Common/UI/Dialog/Dialog.js +29 -28
  17. package/dist/components/Common/UI/Dialog/Dialog.js.map +1 -1
  18. package/dist/components/Common/UI/FileInput/FileInput.js +1 -1
  19. package/dist/components/Common/UI/FormBox/FormBox.d.ts +1 -1
  20. package/dist/components/Common/UI/FormBox/FormBox.js +9 -8
  21. package/dist/components/Common/UI/FormBox/FormBox.js.map +1 -1
  22. package/dist/components/Common/UI/FormBox/FormBox.module.scss.js +8 -6
  23. package/dist/components/Common/UI/FormBox/FormBox.module.scss.js.map +1 -1
  24. package/dist/components/Common/UI/FormBox/FormBoxTypes.d.ts +5 -1
  25. package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
  26. package/dist/components/Company/AssignSignatory/AssignSignatory.js +7 -10
  27. package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
  28. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +6 -8
  29. package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
  30. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +8 -9
  31. package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
  32. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +18 -21
  33. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
  34. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +11 -12
  35. package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
  36. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +3 -4
  37. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  38. package/dist/components/Company/AssignSignatory/Head.js +8 -9
  39. package/dist/components/Company/AssignSignatory/Head.js.map +1 -1
  40. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +6 -7
  41. package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
  42. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +5 -8
  43. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
  44. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +20 -21
  45. package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
  46. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +3 -4
  47. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  48. package/dist/components/Company/AssignSignatory/TitleSelect.js +10 -12
  49. package/dist/components/Company/AssignSignatory/TitleSelect.js.map +1 -1
  50. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +5 -6
  51. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  52. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +2 -3
  53. package/dist/components/Company/BankAccount/BankAccountForm/Actions.js.map +1 -1
  54. package/dist/components/Company/BankAccount/BankAccountForm/Form.js +9 -11
  55. package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
  56. package/dist/components/Company/BankAccount/BankAccountForm/Head.js +2 -3
  57. package/dist/components/Company/BankAccount/BankAccountForm/Head.js.map +1 -1
  58. package/dist/components/Company/BankAccount/BankAccountForm/context.js +3 -4
  59. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  60. package/dist/components/Company/BankAccount/BankAccountList/Actions.js +6 -7
  61. package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
  62. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +7 -8
  63. package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
  64. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +4 -6
  65. package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
  66. package/dist/components/Company/BankAccount/stateMachine.d.ts +0 -1
  67. package/dist/components/Company/BankAccount/stateMachine.js +33 -35
  68. package/dist/components/Company/BankAccount/stateMachine.js.map +1 -1
  69. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +5 -6
  70. package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
  71. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +11 -14
  72. package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  73. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +3 -4
  74. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  75. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +7 -8
  76. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  77. package/dist/components/Company/DocumentSigner/stateMachine.d.ts +0 -1
  78. package/dist/components/Company/DocumentSigner/stateMachine.js +27 -29
  79. package/dist/components/Company/DocumentSigner/stateMachine.js.map +1 -1
  80. package/dist/components/Company/FederalTaxes/Actions.js +6 -7
  81. package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
  82. package/dist/components/Company/FederalTaxes/FederalTaxes.js +7 -10
  83. package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
  84. package/dist/components/Company/FederalTaxes/Form.js +4 -4
  85. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +5 -6
  86. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  87. package/dist/components/Company/Industry/Actions.js +5 -6
  88. package/dist/components/Company/Industry/Actions.js.map +1 -1
  89. package/dist/components/Company/Industry/Context.js +6 -7
  90. package/dist/components/Company/Industry/Context.js.map +1 -1
  91. package/dist/components/Company/Industry/Edit.js +10 -12
  92. package/dist/components/Company/Industry/Edit.js.map +1 -1
  93. package/dist/components/Company/Industry/IndustrySelect.js +6 -8
  94. package/dist/components/Company/Industry/IndustrySelect.js.map +1 -1
  95. package/dist/components/Company/Locations/LocationForm/Actions.js +6 -7
  96. package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
  97. package/dist/components/Company/Locations/LocationForm/Form.js +4 -6
  98. package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
  99. package/dist/components/Company/Locations/LocationForm/LocationForm.js +11 -14
  100. package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
  101. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +3 -4
  102. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  103. package/dist/components/Company/Locations/LocationsList/Actions.js +2 -3
  104. package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
  105. package/dist/components/Company/Locations/LocationsList/LocationsList.js +9 -12
  106. package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
  107. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +3 -4
  108. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  109. package/dist/components/Company/OnboardingOverview/Completed.js +5 -6
  110. package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
  111. package/dist/components/Company/OnboardingOverview/MissingRequirements.js +9 -10
  112. package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
  113. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +2 -5
  114. package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
  115. package/dist/components/Company/OnboardingOverview/context.js +3 -4
  116. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  117. package/dist/components/Company/PaySchedule/PayScheduleForm.js +47 -51
  118. package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
  119. package/dist/components/Company/PaySchedule/payScheduleStateMachine.d.ts +0 -1
  120. package/dist/components/Company/PaySchedule/payScheduleStateMachine.js +26 -28
  121. package/dist/components/Company/PaySchedule/payScheduleStateMachine.js.map +1 -1
  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 +3 -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 +3 -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 -1
  182. package/dist/components/Company/StateTaxes/stateTaxesStateMachine.js +40 -20
  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 +83 -76
  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 +170 -123
  211. package/dist/components/Contractor/Documents/SignatureForm/SignatureForm.js.map +1 -1
  212. package/dist/components/Contractor/Documents/SignatureForm/SignatureForm.module.scss.js +12 -0
  213. package/dist/components/Contractor/Documents/SignatureForm/SignatureForm.module.scss.js.map +1 -0
  214. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/fields.js +40 -39
  215. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/fields.js.map +1 -1
  216. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/useContractorSignatureForm.js +91 -88
  217. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/useContractorSignatureForm.js.map +1 -1
  218. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/w9Fields.d.ts +0 -33
  219. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/w9Fields.js +77 -86
  220. package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/w9Fields.js.map +1 -1
  221. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js +1 -1
  222. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js.map +1 -1
  223. package/dist/components/Contractor/OnboardingSummary/OnboardingSummary.js +9 -10
  224. package/dist/components/Contractor/OnboardingSummary/OnboardingSummary.js.map +1 -1
  225. package/dist/components/Contractor/PaymentMethod/PaymentMethod.js +2 -3
  226. package/dist/components/Contractor/PaymentMethod/PaymentMethod.js.map +1 -1
  227. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +162 -251
  228. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
  229. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.d.ts +2 -1
  230. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.js +2 -2
  231. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.js.map +1 -1
  232. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js +45 -44
  233. package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js.map +1 -1
  234. package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js +2 -3
  235. package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js.map +1 -1
  236. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js +2 -3
  237. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -1
  238. package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.d.ts +32 -0
  239. package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.js +107 -0
  240. package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.js.map +1 -0
  241. package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.test.d.ts +1 -0
  242. package/dist/components/Contractor/Profile/BusinessSelfOnboardingProfile.js +6 -7
  243. package/dist/components/Contractor/Profile/BusinessSelfOnboardingProfile.js.map +1 -1
  244. package/dist/components/Contractor/Profile/ContractorProfile.js +63 -57
  245. package/dist/components/Contractor/Profile/ContractorProfile.js.map +1 -1
  246. package/dist/components/Contractor/Profile/IndividualSelfOnboardingProfile.js +18 -19
  247. package/dist/components/Contractor/Profile/IndividualSelfOnboardingProfile.js.map +1 -1
  248. package/dist/components/Contractor/Submit/Submit.js +118 -102
  249. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  250. package/dist/components/Contractor/exports/contractorManagement.d.ts +1 -0
  251. package/dist/components/Contractor/exports/contractorManagement.js +12 -10
  252. package/dist/components/Contractor/exports/contractorManagement.js.map +1 -1
  253. package/dist/components/Contractor/exports/contractorOnboarding.d.ts +1 -1
  254. package/dist/components/Contractor/exports/contractorOnboarding.js +1 -1
  255. package/dist/components/Contractor/shared/useContractorHasSignedW9.d.ts +8 -0
  256. package/dist/components/Contractor/shared/useContractorHasSignedW9.js +10 -0
  257. package/dist/components/Contractor/shared/useContractorHasSignedW9.js.map +1 -0
  258. package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js +32 -33
  259. package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js.map +1 -1
  260. package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js +2 -3
  261. package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js.map +1 -1
  262. package/dist/components/Employee/Deductions/shared/DeductionsForm/ChildSupportFormView.js +6 -7
  263. package/dist/components/Employee/Deductions/shared/DeductionsForm/ChildSupportFormView.js.map +1 -1
  264. package/dist/components/Employee/Deductions/shared/DeductionsForm/StandardDeductionForm.js +14 -15
  265. package/dist/components/Employee/Deductions/shared/DeductionsForm/StandardDeductionForm.js.map +1 -1
  266. package/dist/components/Employee/Documents/management/DocumentManager.js +6 -7
  267. package/dist/components/Employee/Documents/management/DocumentManager.js.map +1 -1
  268. package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js +6 -7
  269. package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js.map +1 -1
  270. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.js +4 -5
  271. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.js.map +1 -1
  272. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/DocumentList.js +10 -13
  273. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
  274. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.js +5 -6
  275. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.js.map +1 -1
  276. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.module.scss.js +8 -0
  277. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.module.scss.js.map +1 -0
  278. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +3 -4
  279. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  280. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js +22 -21
  281. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js.map +1 -1
  282. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js +6 -6
  283. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.js +5 -4
  284. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.js.map +1 -1
  285. package/dist/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.js +3 -4
  286. package/dist/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.js.map +1 -1
  287. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js +6 -7
  288. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js.map +1 -1
  289. package/dist/components/Employee/Documents/shared/SignatureForm/SignatureForm.js +11 -12
  290. package/dist/components/Employee/Documents/shared/SignatureForm/SignatureForm.js.map +1 -1
  291. package/dist/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.js +15 -16
  292. package/dist/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.js.map +1 -1
  293. package/dist/components/Employee/FederalTaxes/management/FederalTaxesEditForm.js +6 -7
  294. package/dist/components/Employee/FederalTaxes/management/FederalTaxesEditForm.js.map +1 -1
  295. package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js +11 -12
  296. package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js.map +1 -1
  297. package/dist/components/Employee/FederalTaxes/shared/FederalTaxesView.js +1 -1
  298. package/dist/components/Employee/HomeAddress/management/HomeAddressCard/HomeAddressCard.js +7 -8
  299. package/dist/components/Employee/HomeAddress/management/HomeAddressCard/HomeAddressCard.js.map +1 -1
  300. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +4 -4
  301. package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js +29 -23
  302. package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js.map +1 -1
  303. package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js +26 -20
  304. package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js.map +1 -1
  305. package/dist/components/Employee/PaymentMethod/onboarding/ListView.js +133 -99
  306. package/dist/components/Employee/PaymentMethod/onboarding/ListView.js.map +1 -1
  307. package/dist/components/Employee/PaymentMethod/onboarding/ListView.module.scss.js +8 -0
  308. package/dist/components/Employee/PaymentMethod/onboarding/ListView.module.scss.js.map +1 -0
  309. package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.d.ts +1 -1
  310. package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js +19 -20
  311. package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js.map +1 -1
  312. package/dist/components/Employee/PaymentMethod/shared/SplitPaymentsFormBody/SplitPaymentsFormBody.js +92 -86
  313. package/dist/components/Employee/PaymentMethod/shared/SplitPaymentsFormBody/SplitPaymentsFormBody.js.map +1 -1
  314. package/dist/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.js +65 -64
  315. package/dist/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.js.map +1 -1
  316. package/dist/components/Employee/Profile/management/ProfileCard/ProfileCard.js +7 -8
  317. package/dist/components/Employee/Profile/management/ProfileCard/ProfileCard.js.map +1 -1
  318. package/dist/components/Employee/Profile/management/ProfileEditForm.js +7 -7
  319. package/dist/components/Employee/Profile/onboarding/AdminProfile.js +6 -6
  320. package/dist/components/Employee/Profile/onboarding/EmployeeProfile.js +6 -6
  321. package/dist/components/Employee/Profile/shared/useHomeAddressForm/useCurrentHomeAddressForm.d.ts +1 -0
  322. package/dist/components/Employee/Profile/shared/useHomeAddressForm/useCurrentHomeAddressForm.js.map +1 -1
  323. package/dist/components/Employee/Profile/shared/useWorkAddressForm/useCurrentWorkAddressForm.d.ts +1 -0
  324. package/dist/components/Employee/Profile/shared/useWorkAddressForm/useCurrentWorkAddressForm.js.map +1 -1
  325. package/dist/components/Employee/StateTaxes/management/StateTaxesCard/StateTaxesCard.js +11 -12
  326. package/dist/components/Employee/StateTaxes/management/StateTaxesCard/StateTaxesCard.js.map +1 -1
  327. package/dist/components/Employee/StateTaxes/management/StateTaxesEditForm.js +9 -10
  328. package/dist/components/Employee/StateTaxes/management/StateTaxesEditForm.js.map +1 -1
  329. package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js +6 -7
  330. package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js.map +1 -1
  331. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js +44 -45
  332. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js.map +1 -1
  333. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +23 -22
  334. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -1
  335. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js +27 -27
  336. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js.map +1 -1
  337. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js +9 -10
  338. package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js.map +1 -1
  339. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js +2 -3
  340. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js.map +1 -1
  341. package/dist/components/Employee/WorkAddress/management/WorkAddressCard/WorkAddressCard.js +16 -17
  342. package/dist/components/Employee/WorkAddress/management/WorkAddressCard/WorkAddressCard.js.map +1 -1
  343. package/dist/components/Flow/Flow.js +1 -1
  344. package/dist/components/Flow/FlowHeader.js +3 -4
  345. package/dist/components/Flow/FlowHeader.js.map +1 -1
  346. package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js +8 -9
  347. package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js.map +1 -1
  348. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js +7 -8
  349. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js.map +1 -1
  350. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js +37 -37
  351. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js.map +1 -1
  352. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js +8 -9
  353. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js.map +1 -1
  354. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +7 -8
  355. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
  356. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js +10 -12
  357. package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js.map +1 -1
  358. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js +0 -1
  359. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js.map +1 -1
  360. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js +7 -8
  361. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js.map +1 -1
  362. package/dist/components/Payroll/PayrollHistory/PayrollHistory.d.ts +3 -3
  363. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +54 -50
  364. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
  365. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +80 -69
  366. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  367. package/dist/components/Payroll/PayrollList/PayrollList.js +20 -18
  368. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  369. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +138 -136
  370. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  371. package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js +10 -12
  372. package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js.map +1 -1
  373. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +4 -4
  374. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js +2 -3
  375. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js.map +1 -1
  376. package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js +2 -3
  377. package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js.map +1 -1
  378. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js +1 -2
  379. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js.map +1 -1
  380. package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js +2 -3
  381. package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js.map +1 -1
  382. package/dist/components/Payroll/usePreparedPayrollData.js +8 -9
  383. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  384. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js +2 -3
  385. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js.map +1 -1
  386. package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js +4 -4
  387. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js +4 -4
  388. package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.js +34 -36
  389. package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.js.map +1 -1
  390. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js +4 -4
  391. package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js +24 -25
  392. package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js.map +1 -1
  393. package/dist/components/index.d.ts +40 -0
  394. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.d.ts +6 -0
  395. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +29 -28
  396. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  397. package/dist/contexts/LocaleProvider/useLocale.d.ts +1 -9
  398. package/dist/contexts/LocaleProvider/useLocale.js +5 -15
  399. package/dist/contexts/LocaleProvider/useLocale.js.map +1 -1
  400. package/dist/contexts/NonceProvider/index.d.ts +1 -0
  401. package/dist/contexts/NonceProvider/useNonce.d.ts +37 -0
  402. package/dist/contexts/NonceProvider/useNonce.js +7 -0
  403. package/dist/contexts/NonceProvider/useNonce.js.map +1 -0
  404. package/dist/contexts/ThemeProvider/ThemeProvider.js +25 -24
  405. package/dist/contexts/ThemeProvider/ThemeProvider.js.map +1 -1
  406. package/dist/contexts/index.d.ts +1 -0
  407. package/dist/hooks/useDateRangeFilter/useDateRangeFilter.d.ts +12 -7
  408. package/dist/hooks/useDateRangeFilter/useDateRangeFilter.js +25 -21
  409. package/dist/hooks/useDateRangeFilter/useDateRangeFilter.js.map +1 -1
  410. package/dist/i18n/I18n.js +1 -0
  411. package/dist/i18n/I18n.js.map +1 -1
  412. package/dist/i18n/en/Company.StateTaxes.json.js +6 -4
  413. package/dist/i18n/en/Company.StateTaxes.json.js.map +1 -1
  414. package/dist/i18n/en/Contractor.Address.json.js +22 -20
  415. package/dist/i18n/en/Contractor.Address.json.js.map +1 -1
  416. package/dist/i18n/en/Contractor.ContractorList.json.js +14 -12
  417. package/dist/i18n/en/Contractor.ContractorList.json.js.map +1 -1
  418. package/dist/i18n/en/Contractor.ManagementContractorList.json.js +60 -0
  419. package/dist/i18n/en/Contractor.ManagementContractorList.json.js.map +1 -0
  420. package/dist/i18n/en/Contractor.Profile.json.js +13 -11
  421. package/dist/i18n/en/Contractor.Profile.json.js.map +1 -1
  422. package/dist/i18n/en/Contractor.SignatureForm.json.js +5 -5
  423. package/dist/i18n/en/Employee.Management.PaymentMethodBankForm.json.js +18 -16
  424. package/dist/i18n/en/Employee.Management.PaymentMethodBankForm.json.js.map +1 -1
  425. package/dist/i18n/en/Employee.Management.PaymentMethodSplitForm.json.js +2 -2
  426. package/dist/i18n/en/Employee.PaymentMethod.json.js +74 -72
  427. package/dist/i18n/en/Employee.PaymentMethod.json.js.map +1 -1
  428. package/dist/i18n/en/Employee.SplitPaymentsFormBody.json.js +2 -2
  429. package/dist/i18n/en/Payroll.PayrollHistory.json.js +8 -8
  430. package/dist/i18n/en/Payroll.PayrollList.json.js +23 -23
  431. package/dist/i18n/types.d.ts +215 -17
  432. package/dist/index.d.ts +6 -3
  433. package/dist/index.js +15 -13
  434. package/dist/index.js.map +1 -1
  435. package/dist/models/external.d.ts +4 -0
  436. package/dist/partner-hook-utils/form/SDKFormProvider.js +39 -24
  437. package/dist/partner-hook-utils/form/SDKFormProvider.js.map +1 -1
  438. package/dist/partner-hook-utils/form/fields/CheckboxHookField.js +12 -15
  439. package/dist/partner-hook-utils/form/fields/CheckboxHookField.js.map +1 -1
  440. package/dist/partner-hook-utils/form/fields/NumberInputHookField.js +16 -19
  441. package/dist/partner-hook-utils/form/fields/NumberInputHookField.js.map +1 -1
  442. package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js +13 -16
  443. package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js.map +1 -1
  444. package/dist/partner-hook-utils/form/fields/SelectHookField.js +12 -15
  445. package/dist/partner-hook-utils/form/fields/SelectHookField.js.map +1 -1
  446. package/dist/partner-hook-utils/form/fields/SwitchHookField.js +18 -21
  447. package/dist/partner-hook-utils/form/fields/SwitchHookField.js.map +1 -1
  448. package/dist/partner-hook-utils/form/fields/TextInputHookField.js +9 -12
  449. package/dist/partner-hook-utils/form/fields/TextInputHookField.js.map +1 -1
  450. package/dist/partner-hook-utils/form/preprocessors.d.ts +2 -2
  451. package/dist/partner-hook-utils/form/preprocessors.js +8 -7
  452. package/dist/partner-hook-utils/form/preprocessors.js.map +1 -1
  453. package/dist/partner-hook-utils/form/preprocessors.test.d.ts +1 -0
  454. package/dist/shared/constants.d.ts +12 -0
  455. package/dist/shared/constants.js +23 -17
  456. package/dist/shared/constants.js.map +1 -1
  457. package/dist/style.css +1 -1
  458. package/dist/types/Helpers.d.ts +1 -1
  459. package/docs/guides/endpoint-inventory.json +61 -27
  460. package/package.json +19 -17
  461. package/dist/components/Company/StateTaxes/StateTaxesForm/applicableIf.js.map +0 -1
  462. package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.d.ts +0 -4
  463. package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.js +0 -5
  464. package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.js.map +0 -1
  465. package/dist/components/Contractor/ContractorList/index.js +0 -150
  466. package/dist/components/Contractor/ContractorList/index.js.map +0 -1
  467. package/dist/components/Contractor/ContractorList/useContractorList.d.ts +0 -18
  468. package/dist/components/Contractor/ContractorList/useContractorList.js +0 -15
  469. package/dist/components/Contractor/ContractorList/useContractorList.js.map +0 -1
  470. /package/dist/components/Company/StateTaxes/{StateTaxesForm/applicableIf.test.d.ts → TaxRateManagement/toHistoryRows.test.d.ts} +0 -0
  471. /package/dist/components/Company/StateTaxes/{StateTaxesForm → shared}/applicableIf.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Form.js","sources":["../../../../../src/components/Company/StateTaxes/StateTaxesForm/Form.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { Fragment } from 'react/jsx-runtime'\nimport { useFormContext, useWatch } from 'react-hook-form'\nimport { useStateTaxesForm } from './context'\nimport { toRhfKey } from './rhfKey'\nimport { isRequirementApplicable, type StateTaxesFormValues } from './applicableIf'\nimport { QuestionInput } from '@/components/Common/TaxInputs/TaxInputs'\nimport { useLocaleDateFormatter } from '@/contexts/LocaleProvider/useLocale'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/** @internal */\nexport function Form() {\n const { t } = useTranslation('Company.StateTaxes', { keyPrefix: 'form' })\n const dateFormatter = useLocaleDateFormatter()\n const { stateTaxRequirements } = useStateTaxesForm()\n const Components = useComponentContext()\n const { control } = useFormContext()\n const watchedValues = useWatch({ control }) as StateTaxesFormValues\n\n return stateTaxRequirements.requirementSets?.map(\n ({ requirements, label, effectiveFrom, key }) => (\n <Fragment key={key}>\n <div>\n <Components.Heading as=\"h3\">{label}</Components.Heading>\n {effectiveFrom && (\n <Components.Text size=\"sm\">\n {t('effectiveFromLabel', { date: dateFormatter.format(new Date(effectiveFrom)) })}\n </Components.Text>\n )}\n </div>\n {requirements?.flatMap(requirement => {\n if (requirement.editable === false) return []\n if (!key || !isRequirementApplicable(requirement, key, watchedValues)) return []\n return [\n <QuestionInput\n requirement={{\n ...requirement,\n key: `${key}.${toRhfKey(requirement.key as string)}`,\n }}\n questionType={requirement.metadata?.type ?? 'Text'}\n key={requirement.key}\n />,\n ]\n })}\n </Fragment>\n ),\n )\n}\n"],"names":["Form","t","useTranslation","dateFormatter","useLocaleDateFormatter","stateTaxRequirements","useStateTaxesForm","Components","useComponentContext","control","useFormContext","watchedValues","useWatch","requirements","label","effectiveFrom","key","Fragment","jsxs","jsx","requirement","isRequirementApplicable","QuestionInput","toRhfKey"],"mappings":";;;;;;;;;AAWO,SAASA,IAAO;AACrB,QAAM,EAAE,GAAAC,MAAMC,EAAe,sBAAsB,EAAE,WAAW,QAAQ,GAClEC,IAAgBC,EAAA,GAChB,EAAE,sBAAAC,EAAA,IAAyBC,EAAA,GAC3BC,IAAaC,EAAA,GACb,EAAE,SAAAC,EAAA,IAAYC,EAAA,GACdC,IAAgBC,EAAS,EAAE,SAAAH,GAAS;AAE1C,SAAOJ,EAAqB,iBAAiB;AAAA,IAC3C,CAAC,EAAE,cAAAQ,GAAc,OAAAC,GAAO,eAAAC,GAAe,KAAAC,EAAA,wBACpCC,GAAA,EACC,UAAA;AAAA,MAAA,gBAAAC,EAAC,OAAA,EACC,UAAA;AAAA,QAAA,gBAAAC,EAACZ,EAAW,SAAX,EAAmB,IAAG,MAAM,UAAAO,GAAM;AAAA,QAClCC,KACC,gBAAAI,EAACZ,EAAW,MAAX,EAAgB,MAAK,MACnB,UAAAN,EAAE,sBAAsB,EAAE,MAAME,EAAc,OAAO,IAAI,KAAKY,CAAa,CAAC,EAAA,CAAG,EAAA,CAClF;AAAA,MAAA,GAEJ;AAAA,MACCF,GAAc,QAAQ,CAAAO,MACjBA,EAAY,aAAa,KAAc,CAAA,IACvC,CAACJ,KAAO,CAACK,EAAwBD,GAAaJ,GAAKL,CAAa,IAAU,CAAA,IACvE;AAAA,QACL,gBAAAQ;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,aAAa;AAAA,cACX,GAAGF;AAAA,cACH,KAAK,GAAGJ,CAAG,IAAIO,EAASH,EAAY,GAAa,CAAC;AAAA,YAAA;AAAA,YAEpD,cAAcA,EAAY,UAAU,QAAQ;AAAA,UAAA;AAAA,UACvCA,EAAY;AAAA,QAAA;AAAA,MACnB,CAEH;AAAA,IAAA,EAAA,GAtBYJ,CAuBf;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"Form.js","sources":["../../../../../src/components/Company/StateTaxes/StateTaxesForm/Form.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { Fragment } from 'react/jsx-runtime'\nimport { RequirementFields } from '../shared/RequirementFields'\nimport { getUniqueRhfKey } from '../shared/rhfKey'\nimport { useStateTaxesForm } from './context'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\n\n/** @internal */\nexport function Form() {\n const { t } = useTranslation('Company.StateTaxes', { keyPrefix: 'form' })\n const dateFormatter = useDateFormatter()\n const { stateTaxRequirements } = useStateTaxesForm()\n const Components = useComponentContext()\n const requirementSets = stateTaxRequirements.requirementSets ?? []\n\n // A single key (e.g. \"taxrates\") can appear in more than one set when a future-dated set is\n // already scheduled alongside the current one — each rendered section still needs its own\n // disambiguated form path so the two sections' fields don't share state.\n return requirementSets.map((requirementSet, index) => {\n const { requirements, label, effectiveFrom, key } = requirementSet\n if (!key) return null\n const requirementSetPath = getUniqueRhfKey(requirementSet, index, requirementSets)\n return (\n <Fragment key={requirementSetPath}>\n <div>\n <Components.Heading as=\"h3\">{label}</Components.Heading>\n {effectiveFrom && (\n <Components.Text size=\"sm\">\n {t('effectiveFromLabel', { date: dateFormatter.formatLongWithYear(effectiveFrom) })}\n </Components.Text>\n )}\n </div>\n <RequirementFields requirements={requirements} requirementSetKey={requirementSetPath} />\n </Fragment>\n )\n })\n}\n"],"names":["Form","t","useTranslation","dateFormatter","useDateFormatter","stateTaxRequirements","useStateTaxesForm","Components","useComponentContext","requirementSets","requirementSet","index","requirements","label","effectiveFrom","key","requirementSetPath","getUniqueRhfKey","Fragment","jsxs","jsx","RequirementFields"],"mappings":";;;;;;;AASO,SAASA,IAAO;AACrB,QAAM,EAAE,GAAAC,MAAMC,EAAe,sBAAsB,EAAE,WAAW,QAAQ,GAClEC,IAAgBC,EAAA,GAChB,EAAE,sBAAAC,EAAA,IAAyBC,EAAA,GAC3BC,IAAaC,EAAA,GACbC,IAAkBJ,EAAqB,mBAAmB,CAAA;AAKhE,SAAOI,EAAgB,IAAI,CAACC,GAAgBC,MAAU;AACpD,UAAM,EAAE,cAAAC,GAAc,OAAAC,GAAO,eAAAC,GAAe,KAAAC,MAAQL;AACpD,QAAI,CAACK,EAAK,QAAO;AACjB,UAAMC,IAAqBC,EAAgBP,GAAgBC,GAAOF,CAAe;AACjF,6BACGS,GAAA,EACC,UAAA;AAAA,MAAA,gBAAAC,EAAC,OAAA,EACC,UAAA;AAAA,QAAA,gBAAAC,EAACb,EAAW,SAAX,EAAmB,IAAG,MAAM,UAAAM,GAAM;AAAA,QAClCC,KACC,gBAAAM,EAACb,EAAW,MAAX,EAAgB,MAAK,MACnB,UAAAN,EAAE,sBAAsB,EAAE,MAAME,EAAc,mBAAmBW,CAAa,EAAA,CAAG,EAAA,CACpF;AAAA,MAAA,GAEJ;AAAA,MACA,gBAAAM,EAACC,GAAA,EAAkB,cAAAT,GAA4B,mBAAmBI,EAAA,CAAoB;AAAA,IAAA,EAAA,GATzEA,CAUf;AAAA,EAEJ,CAAC;AACH;"}
@@ -1,95 +1,87 @@
1
- import { jsx as n, jsxs as w, Fragment as K } from "react/jsx-runtime";
2
- import { useForm as O, FormProvider as B } from "react-hook-form";
3
- import { zodResolver as D } from "@hookform/resolvers/zod";
4
- import { useTaxRequirementsUpdateStateMutation as M } from "@gusto/embedded-api/react-query/taxRequirementsUpdateState";
5
- import { useTaxRequirementsGetSuspense as z } from "@gusto/embedded-api/react-query/taxRequirementsGet";
6
- import { z as m } from "zod";
7
- import { useMemo as H } from "react";
8
- import { useTranslation as q } from "react-i18next";
9
- import { Head as G } from "./Head.js";
10
- import { StateTaxesFormProvider as L } from "./context.js";
11
- import { Form as X } from "./Form.js";
12
- import { Actions as Y } from "./Actions.js";
13
- import { toRhfKey as g } from "./rhfKey.js";
14
- import { isRequirementApplicable as $ } from "./applicableIf.js";
15
- import { BaseComponent as I } from "../../../Base/Base.js";
16
- import { useI18n as J } from "../../../../i18n/I18n.js";
17
- import { Flex as Q } from "../../../Common/Flex/Flex.js";
18
- import { Form as W } from "../../../Common/Form/Form.js";
19
- import { componentEvents as T } from "../../../../shared/constants.js";
20
- import { useBase as Z } from "../../../Base/useBase.js";
21
- function ee(t) {
22
- return t == null ? "" : typeof t == "number" ? isNaN(t) ? "" : String(t) : typeof t == "string" ? t : typeof t == "boolean" ? String(t) : "";
1
+ import { jsx as t, jsxs as D, Fragment as M } from "react/jsx-runtime";
2
+ import { useForm as _, FormProvider as w } from "react-hook-form";
3
+ import { zodResolver as z } from "@hookform/resolvers/zod";
4
+ import { useTaxRequirementsUpdateStateMutation as H } from "@gusto/embedded-api/react-query/taxRequirementsUpdateState";
5
+ import { useTaxRequirementsGetSuspense as K } from "@gusto/embedded-api/react-query/taxRequirementsGet";
6
+ import { z as b } from "zod";
7
+ import { useMemo as N } from "react";
8
+ import { useTranslation as O } from "react-i18next";
9
+ import { getUniqueRhfKey as d } from "../shared/rhfKey.js";
10
+ import { isRequirementApplicable as G } from "../shared/applicableIf.js";
11
+ import { buildRequirementSchema as L } from "../shared/buildRequirementSchema.js";
12
+ import { stringifyRequirementValue as X } from "../shared/requirementValue.js";
13
+ import { Head as Y } from "./Head.js";
14
+ import { StateTaxesFormProvider as $ } from "./context.js";
15
+ import { Form as I } from "./Form.js";
16
+ import { Actions as J } from "./Actions.js";
17
+ import { BaseComponent as Q } from "../../../Base/Base.js";
18
+ import { useI18n as W } from "../../../../i18n/I18n.js";
19
+ import { Flex as Z } from "../../../Common/Flex/Flex.js";
20
+ import { Form as ee } from "../../../Common/Form/Form.js";
21
+ import { componentEvents as R } from "../../../../shared/constants.js";
22
+ import { useBase as te } from "../../../Base/useBase.js";
23
+ function Pe(n) {
24
+ return /* @__PURE__ */ t(Q, { ...n, children: /* @__PURE__ */ t(re, { ...n, children: n.children }) });
23
25
  }
24
- function ge(t) {
25
- return /* @__PURE__ */ n(I, { ...t, children: /* @__PURE__ */ n(te, { ...t, children: t.children }) });
26
- }
27
- function te({ companyId: t, state: f, className: F, children: y }) {
28
- J("Company.StateTaxes");
29
- const { onEvent: S, baseSubmitHandler: R } = Z(), { t: h } = q("Company.StateTaxes", { keyPrefix: "form" }), { data: P } = z({ companyUuid: t, state: f }), l = P.taxRequirementsState, { mutateAsync: _, isPending: A } = M(), { dynamicSchema: C, defaultValues: E } = H(() => {
30
- const p = {}, i = {};
31
- return l.requirementSets?.forEach((c) => {
32
- if (!c.key) return;
33
- const a = c.key, r = {}, s = {};
34
- c.requirements?.forEach((e) => {
35
- if (!e.key) return;
36
- const o = g(e.key), U = e.metadata?.type === "tax_rate" || e.metadata?.type === "percent";
37
- e.metadata?.type === "radio" ? s[o] = e.value ?? void 0 : e.metadata?.type === "workers_compensation_rate" ? s[o] = e.value !== null && e.value !== void 0 ? Number(e.value) : void 0 : s[o] = e.value ? String(e.value) : "";
38
- let u = m.string().optional();
39
- const d = e.metadata?.validation;
40
- if (d && U && d.type === "one_of") {
41
- const x = d.rates;
42
- u = m.string().optional().refine((k) => !k || x.includes(k), {
43
- message: h("validations.oneOf", { values: x.join(", ") })
44
- });
45
- }
46
- e.metadata?.type === "radio" ? u = m.boolean().optional() : e.metadata?.type === "workers_compensation_rate" && (u = m.number().optional()), r[o] = u;
47
- }), Object.keys(r).length > 0 && (p[a] = m.object(r), i[a] = s);
26
+ function re({ companyId: n, state: a, className: v, children: S }) {
27
+ W("Company.StateTaxes");
28
+ const { onEvent: y, baseSubmitHandler: F } = te(), { t: q } = O("Company.StateTaxes", { keyPrefix: "form" }), { data: P } = K({ companyUuid: n, state: a }), c = P.taxRequirementsState, { mutateAsync: g, isPending: k } = H(), { dynamicSchema: A, defaultValues: C } = N(() => {
29
+ const u = {}, m = {}, f = c.requirementSets ?? [];
30
+ return f.forEach((s, e) => {
31
+ if (!s.key) return;
32
+ const r = d(s, e, f), { shape: i, defaults: p } = L(s.requirements, q);
33
+ Object.keys(i).length > 0 && (u[r] = b.object(i), m[r] = p);
48
34
  }), {
49
- dynamicSchema: m.object(p),
50
- defaultValues: i
35
+ dynamicSchema: b.object(u),
36
+ defaultValues: m
51
37
  };
52
- }, [l, h]), { control: j, ...b } = O({
53
- resolver: D(C),
54
- defaultValues: E
55
- }), V = async (p) => {
56
- await R(p, async (i) => {
57
- const v = i, c = l.requirementSets?.filter((a) => a.key && i[a.key]).map((a) => {
58
- const r = a.key, s = i[r], e = (a.requirements ?? []).filter((o) => o.editable !== !1).filter((o) => $(o, r, v));
38
+ }, [c, q]), { control: E, ...x } = _({
39
+ resolver: z(A),
40
+ defaultValues: C
41
+ }), U = async (u) => {
42
+ await F(u, async (m) => {
43
+ const f = m, l = c.requirementSets ?? [], s = l.map((e, r) => ({ requirementSet: e, setIndex: r })).filter(({ requirementSet: e, setIndex: r }) => {
44
+ if (!e.key) return !1;
45
+ const i = d(e, r, l);
46
+ return !!m[i];
47
+ }).map(({ requirementSet: e, setIndex: r }) => {
48
+ const i = e.key, p = d(e, r, l), B = m[p], T = e.requirements ?? [], V = T.map((o, h) => ({ req: o, index: h })).filter(({ req: o }) => o.editable !== !1).filter(({ req: o }) => G(o, p, f));
59
49
  return {
60
- state: f,
61
- key: r,
62
- effectiveFrom: a.effectiveFrom,
63
- requirements: e.map((o) => ({
50
+ state: a,
51
+ key: i,
52
+ effectiveFrom: e.effectiveFrom,
53
+ requirements: V.map(({ req: o, index: h }) => ({
64
54
  key: o.key,
65
- value: ee(s[g(o.key)])
55
+ value: X(
56
+ B[d(o, h, T)]
57
+ )
66
58
  }))
67
59
  };
68
60
  });
69
- await _({
61
+ await g({
70
62
  request: {
71
- companyUuid: t,
72
- requestBody: { requirementSets: c },
73
- state: f
63
+ companyUuid: n,
64
+ requestBody: { requirementSets: s },
65
+ state: a
74
66
  }
75
- }), S(T.COMPANY_STATE_TAX_UPDATED);
67
+ }), y(R.COMPANY_STATE_TAX_UPDATED);
76
68
  });
77
- }, N = () => {
78
- S(T.CANCEL);
69
+ }, j = () => {
70
+ y(R.CANCEL);
79
71
  };
80
- return /* @__PURE__ */ n("section", { className: F, children: /* @__PURE__ */ n(B, { ...b, control: j, children: /* @__PURE__ */ n(W, { onSubmit: b.handleSubmit(V), children: /* @__PURE__ */ n(
81
- L,
72
+ return /* @__PURE__ */ t("section", { className: v, children: /* @__PURE__ */ t(w, { ...x, control: E, children: /* @__PURE__ */ t(ee, { onSubmit: x.handleSubmit(U), children: /* @__PURE__ */ t(
73
+ $,
82
74
  {
83
- value: { stateTaxRequirements: l, isPending: A, state: f, handleCancel: N },
84
- children: /* @__PURE__ */ n(Q, { flexDirection: "column", gap: 32, children: y || /* @__PURE__ */ w(K, { children: [
85
- /* @__PURE__ */ n(G, {}),
86
- /* @__PURE__ */ n(X, {}),
87
- /* @__PURE__ */ n(Y, {})
75
+ value: { stateTaxRequirements: c, isPending: k, state: a, handleCancel: j },
76
+ children: /* @__PURE__ */ t(Z, { flexDirection: "column", gap: 32, children: S || /* @__PURE__ */ D(M, { children: [
77
+ /* @__PURE__ */ t(Y, {}),
78
+ /* @__PURE__ */ t(I, {}),
79
+ /* @__PURE__ */ t(J, {})
88
80
  ] }) })
89
81
  }
90
82
  ) }) }) });
91
83
  }
92
84
  export {
93
- ge as StateTaxesForm
85
+ Pe as StateTaxesForm
94
86
  };
95
87
  //# sourceMappingURL=StateTaxesForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StateTaxesForm.js","sources":["../../../../../src/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.tsx"],"sourcesContent":["import { FormProvider, useForm } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { useTaxRequirementsUpdateStateMutation } from '@gusto/embedded-api/react-query/taxRequirementsUpdateState'\nimport { useTaxRequirementsGetSuspense } from '@gusto/embedded-api/react-query/taxRequirementsGet'\nimport { z } from 'zod'\nimport { useMemo } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { Head } from './Head'\nimport { StateTaxesFormProvider } from './context'\nimport { Form } from './Form'\nimport { Actions } from './Actions'\nimport { toRhfKey } from './rhfKey'\nimport { isRequirementApplicable, type StateTaxesFormValues } from './applicableIf'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useI18n } from '@/i18n/I18n'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { Form as HtmlForm } from '@/components/Common/Form'\nimport { componentEvents } from '@/shared/constants'\nimport { useBase } from '@/components/Base'\n\n/**\n * Props for {@link StateTaxesForm}.\n *\n * @public\n */\nexport interface StateTaxesFormProps extends BaseComponentInterface<'Company.StateTaxes'> {\n /** The associated company identifier. */\n companyId: string\n /** Two-letter code of the state whose tax requirements are edited. */\n state: string\n}\n\nfunction stringifyRequirementValue(value: unknown): string {\n if (value === undefined || value === null) return ''\n if (typeof value === 'number') return isNaN(value) ? '' : String(value)\n if (typeof value === 'string') return value\n if (typeof value === 'boolean') return String(value)\n return ''\n}\n\n/**\n * Standalone form for editing a company's state tax requirements for a single state.\n *\n * @remarks\n * Lower-level building block used by {@link StateTaxes} for its edit view. Use directly when\n * you need full control over navigation between the list and edit views.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `company/stateTaxes/updated` | State tax requirements were saved successfully | Response from the update state tax requirements API |\n * | `CANCEL` | The user cancelled editing | — |\n *\n * @param props - {@link StateTaxesFormProps}\n * @returns The rendered state taxes edit form.\n * @public\n *\n * @example\n * ```tsx\n * import { CompanyOnboarding } from '@gusto/embedded-react-sdk'\n *\n * function MyComponent() {\n * return (\n * <CompanyOnboarding.StateTaxesForm\n * companyId=\"a007e1ab-3595-43c2-ab4b-af7a5af2e365\"\n * state=\"CA\"\n * onEvent={() => {}}\n * />\n * )\n * }\n * ```\n */\nexport function StateTaxesForm(props: StateTaxesFormProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({ companyId, state, className, children }: StateTaxesFormProps) {\n useI18n('Company.StateTaxes')\n const { onEvent, baseSubmitHandler } = useBase()\n const { t } = useTranslation('Company.StateTaxes', { keyPrefix: 'form' })\n const { data } = useTaxRequirementsGetSuspense({ companyUuid: companyId, state })\n const stateTaxRequirements = data.taxRequirementsState!\n\n const { mutateAsync: updateStateTax, isPending: isPendingUpdate } =\n useTaxRequirementsUpdateStateMutation()\n\n // Schema and default value generation\n const { dynamicSchema, defaultValues } = useMemo(() => {\n const schemaShape: Record<string, z.ZodObject> = {}\n const values: Partial<Record<string, Record<string, string | boolean | number | undefined>>> =\n {}\n\n //Looping through each requirement set\n stateTaxRequirements.requirementSets?.forEach(requirementSet => {\n if (!requirementSet.key) return\n\n const requirementSetKey = requirementSet.key\n const requirementShape: Record<string, z.ZodType> = {}\n const requirementValues: Record<string, string | boolean | number | undefined> = {}\n\n requirementSet.requirements?.forEach(requirement => {\n if (!requirement.key) return\n\n const requirementKey = toRhfKey(requirement.key)\n\n const isPercentField =\n requirement.metadata?.type === 'tax_rate' || requirement.metadata?.type === 'percent'\n\n if (requirement.metadata?.type === 'radio') {\n requirementValues[requirementKey] = requirement.value ?? undefined\n } else if (requirement.metadata?.type === 'workers_compensation_rate') {\n requirementValues[requirementKey] =\n requirement.value !== null && requirement.value !== undefined\n ? Number(requirement.value)\n : undefined\n } else {\n requirementValues[requirementKey] = requirement.value ? String(requirement.value) : ''\n }\n\n let fieldSchema: z.ZodType = z.string().optional()\n\n const validation = requirement.metadata?.validation\n\n if (validation) {\n if (isPercentField && validation.type === 'one_of') {\n const oneOfValues = validation.rates as string[]\n fieldSchema = z\n .string()\n .optional()\n .refine(val => !val || oneOfValues.includes(val), {\n message: t('validations.oneOf', { values: oneOfValues.join(', ') }),\n })\n }\n }\n\n if (requirement.metadata?.type === 'radio') {\n fieldSchema = z.boolean().optional()\n } else if (requirement.metadata?.type === 'workers_compensation_rate') {\n fieldSchema = z.number().optional()\n }\n requirementShape[requirementKey] = fieldSchema\n // --- End Schema Logic ---\n })\n\n if (Object.keys(requirementShape).length > 0) {\n schemaShape[requirementSetKey] = z.object(requirementShape)\n values[requirementSetKey] = requirementValues\n }\n })\n\n const finalSchema = z.object(schemaShape)\n\n // Return both the schema and the default values\n return {\n dynamicSchema: finalSchema,\n defaultValues: values as z.infer<typeof finalSchema>,\n }\n }, [stateTaxRequirements, t])\n\n // Infer the type from the schema\n type InferredFormInputs = z.infer<typeof dynamicSchema>\n\n const { control, ...methods } = useForm({\n resolver: zodResolver(dynamicSchema),\n defaultValues,\n })\n\n const onSubmit = async (formData: InferredFormInputs) => {\n await baseSubmitHandler(formData, async payload => {\n const formValues = payload as StateTaxesFormValues\n const requirementSets = stateTaxRequirements.requirementSets\n ?.filter(rs => rs.key && payload[rs.key])\n .map(requirementSet => {\n const requirementSetKey = requirementSet.key as string\n const payloadSet = payload[requirementSetKey] as Record<string, unknown>\n\n const applicableRequirements = (requirementSet.requirements ?? [])\n .filter(req => req.editable !== false)\n .filter(req => isRequirementApplicable(req, requirementSetKey, formValues))\n\n return {\n state,\n key: requirementSetKey,\n effectiveFrom: requirementSet.effectiveFrom,\n requirements: applicableRequirements.map(req => ({\n key: req.key as string,\n value: stringifyRequirementValue(payloadSet[toRhfKey(req.key as string)]),\n })),\n }\n })\n await updateStateTax({\n request: {\n companyUuid: companyId,\n requestBody: { requirementSets },\n state,\n },\n })\n onEvent(componentEvents.COMPANY_STATE_TAX_UPDATED)\n })\n }\n\n const handleCancel = () => {\n onEvent(componentEvents.CANCEL)\n }\n\n return (\n <section className={className}>\n <FormProvider {...methods} control={control}>\n <HtmlForm onSubmit={methods.handleSubmit(onSubmit)}>\n <StateTaxesFormProvider\n value={{ stateTaxRequirements, isPending: isPendingUpdate, state, handleCancel }}\n >\n <Flex flexDirection=\"column\" gap={32}>\n {children ? (\n children\n ) : (\n <>\n <Head />\n <Form />\n <Actions />\n </>\n )}\n </Flex>\n </StateTaxesFormProvider>\n </HtmlForm>\n </FormProvider>\n </section>\n )\n}\n"],"names":["stringifyRequirementValue","value","StateTaxesForm","props","jsx","BaseComponent","Root","companyId","state","className","children","useI18n","onEvent","baseSubmitHandler","useBase","t","useTranslation","data","useTaxRequirementsGetSuspense","stateTaxRequirements","updateStateTax","isPendingUpdate","useTaxRequirementsUpdateStateMutation","dynamicSchema","defaultValues","useMemo","schemaShape","values","requirementSet","requirementSetKey","requirementShape","requirementValues","requirement","requirementKey","toRhfKey","isPercentField","fieldSchema","z","validation","oneOfValues","val","control","methods","useForm","zodResolver","onSubmit","formData","payload","formValues","requirementSets","rs","payloadSet","applicableRequirements","req","isRequirementApplicable","componentEvents","handleCancel","FormProvider","HtmlForm","StateTaxesFormProvider","Flex","jsxs","Fragment","Head","Form","Actions"],"mappings":"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"}
1
+ {"version":3,"file":"StateTaxesForm.js","sources":["../../../../../src/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.tsx"],"sourcesContent":["import { FormProvider, useForm } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { useTaxRequirementsUpdateStateMutation } from '@gusto/embedded-api/react-query/taxRequirementsUpdateState'\nimport { useTaxRequirementsGetSuspense } from '@gusto/embedded-api/react-query/taxRequirementsGet'\nimport { z } from 'zod'\nimport { useMemo } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { getUniqueRhfKey } from '../shared/rhfKey'\nimport { isRequirementApplicable, type StateTaxesFormValues } from '../shared/applicableIf'\nimport { buildRequirementSchema } from '../shared/buildRequirementSchema'\nimport { stringifyRequirementValue } from '../shared/requirementValue'\nimport { Head } from './Head'\nimport { StateTaxesFormProvider } from './context'\nimport { Form } from './Form'\nimport { Actions } from './Actions'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useI18n } from '@/i18n/I18n'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { Form as HtmlForm } from '@/components/Common/Form'\nimport { componentEvents } from '@/shared/constants'\nimport { useBase } from '@/components/Base'\n\n/**\n * Props for {@link StateTaxesForm}.\n *\n * @public\n */\nexport interface StateTaxesFormProps extends BaseComponentInterface<'Company.StateTaxes'> {\n /** The associated company identifier. */\n companyId: string\n /** Two-letter code of the state whose tax requirements are edited. */\n state: string\n}\n\n/**\n * Standalone form for editing a company's state tax requirements for a single state.\n *\n * @remarks\n * Lower-level building block used by {@link StateTaxes} for its edit view. Use directly when\n * you need full control over navigation between the list and edit views.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `company/stateTaxes/updated` | State tax requirements were saved successfully | Response from the update state tax requirements API |\n * | `CANCEL` | The user cancelled editing | — |\n *\n * @param props - {@link StateTaxesFormProps}\n * @returns The rendered state taxes edit form.\n * @public\n *\n * @example\n * ```tsx\n * import { CompanyOnboarding } from '@gusto/embedded-react-sdk'\n *\n * function MyComponent() {\n * return (\n * <CompanyOnboarding.StateTaxesForm\n * companyId=\"a007e1ab-3595-43c2-ab4b-af7a5af2e365\"\n * state=\"CA\"\n * onEvent={() => {}}\n * />\n * )\n * }\n * ```\n */\nexport function StateTaxesForm(props: StateTaxesFormProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({ companyId, state, className, children }: StateTaxesFormProps) {\n useI18n('Company.StateTaxes')\n const { onEvent, baseSubmitHandler } = useBase()\n const { t } = useTranslation('Company.StateTaxes', { keyPrefix: 'form' })\n const { data } = useTaxRequirementsGetSuspense({ companyUuid: companyId, state })\n const stateTaxRequirements = data.taxRequirementsState!\n\n const { mutateAsync: updateStateTax, isPending: isPendingUpdate } =\n useTaxRequirementsUpdateStateMutation()\n\n // Schema and default value generation\n const { dynamicSchema, defaultValues } = useMemo(() => {\n const schemaShape: Record<string, z.ZodObject> = {}\n const values: Partial<Record<string, Record<string, string | boolean | number | undefined>>> =\n {}\n const requirementSets = stateTaxRequirements.requirementSets ?? []\n\n //Looping through each requirement set. A single key (e.g. \"taxrates\") can appear more than\n //once when a future-dated set is already scheduled alongside the current one, so each set\n //needs its own disambiguated path — otherwise two visually distinct sections would silently\n //share one underlying form field.\n requirementSets.forEach((requirementSet, index) => {\n if (!requirementSet.key) return\n\n const requirementSetPath = getUniqueRhfKey(requirementSet, index, requirementSets)\n const { shape, defaults } = buildRequirementSchema(requirementSet.requirements, t)\n\n if (Object.keys(shape).length > 0) {\n schemaShape[requirementSetPath] = z.object(shape)\n values[requirementSetPath] = defaults\n }\n })\n\n const finalSchema = z.object(schemaShape)\n\n // Return both the schema and the default values\n return {\n dynamicSchema: finalSchema,\n defaultValues: values as z.infer<typeof finalSchema>,\n }\n }, [stateTaxRequirements, t])\n\n // Infer the type from the schema\n type InferredFormInputs = z.infer<typeof dynamicSchema>\n\n const { control, ...methods } = useForm({\n resolver: zodResolver(dynamicSchema),\n defaultValues,\n })\n\n const onSubmit = async (formData: InferredFormInputs) => {\n await baseSubmitHandler(formData, async payload => {\n const formValues = payload as StateTaxesFormValues\n const allRequirementSets = stateTaxRequirements.requirementSets ?? []\n const requirementSets = allRequirementSets\n .map((requirementSet, setIndex) => ({ requirementSet, setIndex }))\n .filter(({ requirementSet, setIndex }) => {\n if (!requirementSet.key) return false\n const requirementSetPath = getUniqueRhfKey(requirementSet, setIndex, allRequirementSets)\n return Boolean(payload[requirementSetPath])\n })\n .map(({ requirementSet, setIndex }) => {\n const requirementSetKey = requirementSet.key as string\n const requirementSetPath = getUniqueRhfKey(requirementSet, setIndex, allRequirementSets)\n const payloadSet = payload[requirementSetPath] as Record<string, unknown>\n const requirements = requirementSet.requirements ?? []\n\n const applicableRequirements = requirements\n .map((req, index) => ({ req, index }))\n .filter(({ req }) => req.editable !== false)\n .filter(({ req }) => isRequirementApplicable(req, requirementSetPath, formValues))\n\n return {\n state,\n key: requirementSetKey,\n effectiveFrom: requirementSet.effectiveFrom,\n requirements: applicableRequirements.map(({ req, index }) => ({\n key: req.key as string,\n value: stringifyRequirementValue(\n payloadSet[getUniqueRhfKey(req, index, requirements)],\n ),\n })),\n }\n })\n await updateStateTax({\n request: {\n companyUuid: companyId,\n requestBody: { requirementSets },\n state,\n },\n })\n onEvent(componentEvents.COMPANY_STATE_TAX_UPDATED)\n })\n }\n\n const handleCancel = () => {\n onEvent(componentEvents.CANCEL)\n }\n\n return (\n <section className={className}>\n <FormProvider {...methods} control={control}>\n <HtmlForm onSubmit={methods.handleSubmit(onSubmit)}>\n <StateTaxesFormProvider\n value={{ stateTaxRequirements, isPending: isPendingUpdate, state, handleCancel }}\n >\n <Flex flexDirection=\"column\" gap={32}>\n {children ? (\n children\n ) : (\n <>\n <Head />\n <Form />\n <Actions />\n </>\n )}\n </Flex>\n </StateTaxesFormProvider>\n </HtmlForm>\n </FormProvider>\n </section>\n )\n}\n"],"names":["StateTaxesForm","props","jsx","BaseComponent","Root","companyId","state","className","children","useI18n","onEvent","baseSubmitHandler","useBase","t","useTranslation","data","useTaxRequirementsGetSuspense","stateTaxRequirements","updateStateTax","isPendingUpdate","useTaxRequirementsUpdateStateMutation","dynamicSchema","defaultValues","useMemo","schemaShape","values","requirementSets","requirementSet","index","requirementSetPath","getUniqueRhfKey","shape","defaults","buildRequirementSchema","z","control","methods","useForm","zodResolver","onSubmit","formData","payload","formValues","allRequirementSets","setIndex","requirementSetKey","payloadSet","requirements","applicableRequirements","req","isRequirementApplicable","stringifyRequirementValue","componentEvents","handleCancel","FormProvider","HtmlForm","StateTaxesFormProvider","Flex","jsxs","Fragment","Head","Form","Actions"],"mappings":"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"}
@@ -13,11 +13,10 @@ import "dompurify";
13
13
  import "../../../../contexts/LocaleProvider/useLocale.js";
14
14
  import "../../../../shared/constants.js";
15
15
  import "../../../../contexts/ComponentAdapter/useComponentContext.js";
16
- import "../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
17
16
  import { createCompoundContext as t } from "../../../Base/createCompoundContext.js";
18
- const [f, v] = t("StateTaxesFormContext");
17
+ const [u, f] = t("StateTaxesFormContext");
19
18
  export {
20
- v as StateTaxesFormProvider,
21
- f as useStateTaxesForm
19
+ f as StateTaxesFormProvider,
20
+ u as useStateTaxesForm
22
21
  };
23
22
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sources":["../../../../../src/components/Company/StateTaxes/StateTaxesForm/context.ts"],"sourcesContent":["import type { TaxRequirementsState } from '@gusto/embedded-api/models/components/taxrequirementsstate'\nimport { createCompoundContext } from '@/components/Base'\n\ninterface StateTaxFormContext {\n isPending: boolean\n state: string\n stateTaxRequirements: TaxRequirementsState\n handleCancel: () => void\n}\n\nconst [useStateTaxesForm, StateTaxesFormProvider] =\n createCompoundContext<StateTaxFormContext>('StateTaxesFormContext')\n\nexport { useStateTaxesForm, StateTaxesFormProvider }\n"],"names":["useStateTaxesForm","StateTaxesFormProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;;AAUA,MAAM,CAACA,GAAmBC,CAAsB,IAC9CC,EAA2C,uBAAuB;"}
1
+ {"version":3,"file":"context.js","sources":["../../../../../src/components/Company/StateTaxes/StateTaxesForm/context.ts"],"sourcesContent":["import type { TaxRequirementsState } from '@gusto/embedded-api/models/components/taxrequirementsstate'\nimport { createCompoundContext } from '@/components/Base'\n\ninterface StateTaxFormContext {\n isPending: boolean\n state: string\n stateTaxRequirements: TaxRequirementsState\n handleCancel: () => void\n}\n\nconst [useStateTaxesForm, StateTaxesFormProvider] =\n createCompoundContext<StateTaxFormContext>('StateTaxesFormContext')\n\nexport { useStateTaxesForm, StateTaxesFormProvider }\n"],"names":["useStateTaxesForm","StateTaxesFormProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;AAUA,MAAM,CAACA,GAAmBC,CAAsB,IAC9CC,EAA2C,uBAAuB;"}
@@ -1,14 +1,13 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
2
  import { useTranslation as i } from "react-i18next";
3
3
  import { useStateTaxesList as e } from "./context.js";
4
- import { ActionsLayout as m } from "../../../Common/ActionsLayout/ActionsLayout.js";
5
- import { useComponentContext as s } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
6
- import "react";
7
- function l() {
8
- const { t: o } = i("Company.StateTaxes"), n = s(), { handleContinue: r } = e();
9
- return /* @__PURE__ */ t(m, { children: /* @__PURE__ */ t(n.Button, { variant: "primary", onClick: r, children: o("list.continueCta") }) });
4
+ import { ActionsLayout as s } from "../../../Common/ActionsLayout/ActionsLayout.js";
5
+ import { useComponentContext as m } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
6
+ function f() {
7
+ const { t: o } = i("Company.StateTaxes"), n = m(), { handleContinue: r } = e();
8
+ return /* @__PURE__ */ t(s, { children: /* @__PURE__ */ t(n.Button, { variant: "primary", onClick: r, children: o("list.continueCta") }) });
10
9
  }
11
10
  export {
12
- l as Actions
11
+ f as Actions
13
12
  };
14
13
  //# sourceMappingURL=Actions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Actions.js","sources":["../../../../../src/components/Company/StateTaxes/StateTaxesList/Actions.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useStateTaxesList } from './context'\nimport { ActionsLayout } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/** @internal */\nexport function Actions() {\n const { t } = useTranslation('Company.StateTaxes')\n const Components = useComponentContext()\n const { handleContinue } = useStateTaxesList()\n return (\n <ActionsLayout>\n <Components.Button variant=\"primary\" onClick={handleContinue}>\n {t('list.continueCta')}\n </Components.Button>\n </ActionsLayout>\n )\n}\n"],"names":["Actions","t","useTranslation","Components","useComponentContext","handleContinue","useStateTaxesList","jsx","ActionsLayout"],"mappings":";;;;;;AAMO,SAASA,IAAU;AACxB,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,oBAAoB,GAC3CC,IAAaC,EAAA,GACb,EAAE,gBAAAC,EAAA,IAAmBC,EAAA;AAC3B,SACE,gBAAAC,EAACC,GAAA,EACC,UAAA,gBAAAD,EAACJ,EAAW,QAAX,EAAkB,SAAQ,WAAU,SAASE,GAC3C,UAAAJ,EAAE,kBAAkB,GACvB,GACF;AAEJ;"}
1
+ {"version":3,"file":"Actions.js","sources":["../../../../../src/components/Company/StateTaxes/StateTaxesList/Actions.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useStateTaxesList } from './context'\nimport { ActionsLayout } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\n/** @internal */\nexport function Actions() {\n const { t } = useTranslation('Company.StateTaxes')\n const Components = useComponentContext()\n const { handleContinue } = useStateTaxesList()\n return (\n <ActionsLayout>\n <Components.Button variant=\"primary\" onClick={handleContinue}>\n {t('list.continueCta')}\n </Components.Button>\n </ActionsLayout>\n )\n}\n"],"names":["Actions","t","useTranslation","Components","useComponentContext","handleContinue","useStateTaxesList","jsx","ActionsLayout"],"mappings":";;;;;AAMO,SAASA,IAAU;AACxB,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,oBAAoB,GAC3CC,IAAaC,EAAA,GACb,EAAE,gBAAAC,EAAA,IAAmBC,EAAA;AAC3B,SACE,gBAAAC,EAACC,GAAA,EACC,UAAA,gBAAAD,EAACJ,EAAW,QAAX,EAAkB,SAAQ,WAAU,SAASE,GAC3C,UAAAJ,EAAE,kBAAkB,GACvB,GACF;AAEJ;"}
@@ -1,71 +1,86 @@
1
- import { jsxs as i, jsx as s } from "react/jsx-runtime";
2
- import { useTranslation as l } from "react-i18next";
3
- import { SetupStatus as t } from "@gusto/embedded-api/models/components/taxrequirementstateslist";
4
- import { useStateTaxesList as g } from "./context.js";
5
- import { Flex as p } from "../../../Common/Flex/Flex.js";
6
- import { EmptyData as f } from "../../../Common/EmptyData/EmptyData.js";
7
- import { useComponentContext as x } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
8
- import "react";
9
- import { useDataView as S } from "../../../Common/DataView/useDataView.js";
10
- import { DataView as T } from "../../../Common/DataView/DataView.js";
1
+ import { jsxs as m, jsx as s } from "react/jsx-runtime";
2
+ import { useTranslation as p } from "react-i18next";
3
+ import { SetupStatus as e } from "@gusto/embedded-api/models/components/taxrequirementstateslist";
4
+ import { useStateTaxesList as f } from "./context.js";
5
+ import { Flex as u } from "../../../Common/Flex/Flex.js";
6
+ import { EmptyData as S } from "../../../Common/EmptyData/EmptyData.js";
7
+ import { HamburgerMenu as C } from "../../../Common/HamburgerMenu/HamburgerMenu.js";
8
+ import { useComponentContext as T } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
9
+ import { useDataView as b } from "../../../Common/DataView/useDataView.js";
10
+ import { DataView as h } from "../../../Common/DataView/DataView.js";
11
11
  const y = {
12
- [t.NotStarted]: "info",
13
- [t.InProgress]: "warning",
14
- [t.Complete]: "success"
15
- }, C = {
16
- [t.NotStarted]: "notStartedBadge",
17
- [t.InProgress]: "inProgressBadge",
18
- [t.Complete]: "completeBadge"
19
- }, h = {
20
- [t.NotStarted]: "startStateTaxSetupCta",
21
- [t.InProgress]: "continueStateTaxSetupCta",
22
- [t.Complete]: "editStateTaxCta"
12
+ [e.NotStarted]: "info",
13
+ [e.InProgress]: "warning",
14
+ [e.Complete]: "success"
15
+ }, P = {
16
+ [e.NotStarted]: "notStartedBadge",
17
+ [e.InProgress]: "inProgressBadge",
18
+ [e.Complete]: "completeBadge"
19
+ }, L = {
20
+ [e.NotStarted]: "startStateTaxSetupCta",
21
+ [e.InProgress]: "continueStateTaxSetupCta",
22
+ [e.Complete]: "editStateTaxCta"
23
23
  };
24
- function m(n) {
25
- return n.setupStatus ?? t.InProgress;
24
+ function d(i) {
25
+ return i.setupStatus ?? e.InProgress;
26
26
  }
27
- const N = () => {
28
- const { stateTaxRequirements: n, handleChange: c } = g(), o = x(), { t: e } = l("Company.StateTaxes", { keyPrefix: "list" }), { t: u } = l("common", { keyPrefix: "statesHash" }), { ...d } = S({
29
- data: n,
27
+ const j = () => {
28
+ const { stateTaxRequirements: i, handleChange: c, handleManageRates: g } = f(), r = T(), { t } = p("Company.StateTaxes", { keyPrefix: "list" }), { t: l } = p("common", { keyPrefix: "statesHash" }), { ...x } = b({
29
+ data: i,
30
30
  columns: [
31
31
  {
32
32
  key: "state",
33
- title: e("requirementsListCol1"),
34
- render: (a) => /* @__PURE__ */ i(p, { flexDirection: "column", gap: 4, children: [
35
- /* @__PURE__ */ s(o.Text, { as: "span", children: u(a.state) }),
36
- a.defaultRatesApplied && /* @__PURE__ */ s(o.Text, { size: "sm", children: e("defaultRatesAppliedText") })
33
+ title: t("requirementsListCol1"),
34
+ render: (a) => /* @__PURE__ */ m(u, { flexDirection: "column", gap: 4, children: [
35
+ /* @__PURE__ */ s(r.Text, { as: "span", children: l(a.state) }),
36
+ a.defaultRatesApplied && /* @__PURE__ */ s(r.Text, { size: "sm", children: t("defaultRatesAppliedText") })
37
37
  ] })
38
38
  },
39
39
  {
40
40
  key: "status",
41
- title: e("requirementsListCol2"),
41
+ title: t("requirementsListCol2"),
42
42
  render: (a) => {
43
- const r = m(a);
44
- return /* @__PURE__ */ i(p, { gap: 8, alignItems: "center", flexWrap: "wrap", children: [
45
- /* @__PURE__ */ s(o.Badge, { status: y[r], children: e(C[r]) }),
46
- a.readyToRunPayroll && /* @__PURE__ */ s(o.Badge, { status: "success", children: e("readyToRunPayrollBadge") })
43
+ const o = d(a);
44
+ return /* @__PURE__ */ m(u, { gap: 8, alignItems: "center", flexWrap: "wrap", children: [
45
+ /* @__PURE__ */ s(r.Badge, { status: y[o], children: t(P[o]) }),
46
+ a.readyToRunPayroll && /* @__PURE__ */ s(r.Badge, { status: "success", children: t("readyToRunPayrollBadge") })
47
47
  ] });
48
48
  }
49
49
  }
50
50
  ],
51
51
  itemMenu: (a) => {
52
- const r = m(a);
53
- return /* @__PURE__ */ s(
54
- o.Button,
52
+ const o = d(a), n = a.state;
53
+ return n ? /* @__PURE__ */ s(
54
+ C,
55
55
  {
56
- variant: "secondary",
57
- onClick: () => {
58
- a.state && c(a.state);
59
- },
60
- children: e(h[r])
56
+ triggerLabel: t("hamburgerTitle", {
57
+ state: l(n)
58
+ }),
59
+ items: [
60
+ {
61
+ label: t(L[o]),
62
+ onClick: () => {
63
+ c(n);
64
+ },
65
+ "data-testid": "edit-state-tax"
66
+ },
67
+ {
68
+ label: t("manageRatesCta"),
69
+ onClick: () => {
70
+ g(n);
71
+ },
72
+ "data-testid": "manage-tax-rates"
73
+ }
74
+ ],
75
+ "data-testid": "state-tax-hamburger"
61
76
  }
62
- );
77
+ ) : null;
63
78
  },
64
- emptyState: () => /* @__PURE__ */ s(f, { title: e("emptyTableTitle"), description: e("emptyTableDescription") })
79
+ emptyState: () => /* @__PURE__ */ s(S, { title: t("emptyTableTitle"), description: t("emptyTableDescription") })
65
80
  });
66
- return /* @__PURE__ */ s(T, { label: e("requirementsListLabel"), ...d });
81
+ return /* @__PURE__ */ s(h, { label: t("requirementsListLabel"), ...x });
67
82
  };
68
83
  export {
69
- N as List
84
+ j as List
70
85
  };
71
86
  //# sourceMappingURL=List.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"List.js","sources":["../../../../../src/components/Company/StateTaxes/StateTaxesList/List.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport {\n SetupStatus,\n type TaxRequirementStatesList,\n} from '@gusto/embedded-api/models/components/taxrequirementstateslist'\nimport { useStateTaxesList } from './context'\nimport { DataView, EmptyData, Flex, useDataView } from '@/components/Common'\nimport type { STATES_ABBR } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\ntype BadgeStatus = 'success' | 'warning' | 'info'\n\nconst badgeStatusMap: Record<SetupStatus, BadgeStatus> = {\n [SetupStatus.NotStarted]: 'info',\n [SetupStatus.InProgress]: 'warning',\n [SetupStatus.Complete]: 'success',\n}\n\nconst badgeLabelMap = {\n [SetupStatus.NotStarted]: 'notStartedBadge',\n [SetupStatus.InProgress]: 'inProgressBadge',\n [SetupStatus.Complete]: 'completeBadge',\n} as const satisfies Record<SetupStatus, string>\n\nconst ctaLabelMap = {\n [SetupStatus.NotStarted]: 'startStateTaxSetupCta',\n [SetupStatus.InProgress]: 'continueStateTaxSetupCta',\n [SetupStatus.Complete]: 'editStateTaxCta',\n} as const satisfies Record<SetupStatus, string>\n\nfunction getSetupStatus(req: TaxRequirementStatesList): SetupStatus {\n return req.setupStatus ?? SetupStatus.InProgress\n}\n\n/** @internal */\nexport const List = () => {\n const { stateTaxRequirements, handleChange } = useStateTaxesList()\n const Components = useComponentContext()\n\n const { t } = useTranslation('Company.StateTaxes', { keyPrefix: 'list' })\n const { t: statesHash } = useTranslation('common', { keyPrefix: 'statesHash' })\n\n const { ...dataViewProps } = useDataView({\n data: stateTaxRequirements,\n columns: [\n {\n key: 'state',\n title: t('requirementsListCol1'),\n render: requirement => (\n <Flex flexDirection=\"column\" gap={4}>\n <Components.Text as=\"span\">\n {statesHash(requirement.state as (typeof STATES_ABBR)[number])}\n </Components.Text>\n {requirement.defaultRatesApplied && (\n <Components.Text size=\"sm\">{t('defaultRatesAppliedText')}</Components.Text>\n )}\n </Flex>\n ),\n },\n {\n key: 'status',\n title: t('requirementsListCol2'),\n render: requirement => {\n const status = getSetupStatus(requirement)\n return (\n <Flex gap={8} alignItems=\"center\" flexWrap=\"wrap\">\n <Components.Badge status={badgeStatusMap[status]}>\n {t(badgeLabelMap[status])}\n </Components.Badge>\n {requirement.readyToRunPayroll && (\n <Components.Badge status=\"success\">{t('readyToRunPayrollBadge')}</Components.Badge>\n )}\n </Flex>\n )\n },\n },\n ],\n itemMenu: requirement => {\n const status = getSetupStatus(requirement)\n return (\n <Components.Button\n variant=\"secondary\"\n onClick={() => {\n if (requirement.state) handleChange(requirement.state)\n }}\n >\n {t(ctaLabelMap[status])}\n </Components.Button>\n )\n },\n\n emptyState: () => (\n <EmptyData title={t('emptyTableTitle')} description={t('emptyTableDescription')} />\n ),\n })\n return <DataView label={t('requirementsListLabel')} {...dataViewProps} />\n}\n"],"names":["badgeStatusMap","SetupStatus","badgeLabelMap","ctaLabelMap","getSetupStatus","req","List","stateTaxRequirements","handleChange","useStateTaxesList","Components","useComponentContext","t","useTranslation","statesHash","dataViewProps","useDataView","requirement","jsxs","Flex","jsx","status","EmptyData","DataView"],"mappings":";;;;;;;;;;AAYA,MAAMA,IAAmD;AAAA,EACvD,CAACC,EAAY,UAAU,GAAG;AAAA,EAC1B,CAACA,EAAY,UAAU,GAAG;AAAA,EAC1B,CAACA,EAAY,QAAQ,GAAG;AAC1B,GAEMC,IAAgB;AAAA,EACpB,CAACD,EAAY,UAAU,GAAG;AAAA,EAC1B,CAACA,EAAY,UAAU,GAAG;AAAA,EAC1B,CAACA,EAAY,QAAQ,GAAG;AAC1B,GAEME,IAAc;AAAA,EAClB,CAACF,EAAY,UAAU,GAAG;AAAA,EAC1B,CAACA,EAAY,UAAU,GAAG;AAAA,EAC1B,CAACA,EAAY,QAAQ,GAAG;AAC1B;AAEA,SAASG,EAAeC,GAA4C;AAClE,SAAOA,EAAI,eAAeJ,EAAY;AACxC;AAGO,MAAMK,IAAO,MAAM;AACxB,QAAM,EAAE,sBAAAC,GAAsB,cAAAC,EAAA,IAAiBC,EAAA,GACzCC,IAAaC,EAAA,GAEb,EAAE,GAAAC,MAAMC,EAAe,sBAAsB,EAAE,WAAW,QAAQ,GAClE,EAAE,GAAGC,MAAeD,EAAe,UAAU,EAAE,WAAW,cAAc,GAExE,EAAE,GAAGE,EAAA,IAAkBC,EAAY;AAAA,IACvC,MAAMT;AAAA,IACN,SAAS;AAAA,MACP;AAAA,QACE,KAAK;AAAA,QACL,OAAOK,EAAE,sBAAsB;AAAA,QAC/B,QAAQ,CAAAK,MACN,gBAAAC,EAACC,KAAK,eAAc,UAAS,KAAK,GAChC,UAAA;AAAA,UAAA,gBAAAC,EAACV,EAAW,MAAX,EAAgB,IAAG,QACjB,UAAAI,EAAWG,EAAY,KAAqC,GAC/D;AAAA,UACCA,EAAY,uBACX,gBAAAG,EAACV,EAAW,MAAX,EAAgB,MAAK,MAAM,UAAAE,EAAE,yBAAyB,EAAA,CAAE;AAAA,QAAA,EAAA,CAE7D;AAAA,MAAA;AAAA,MAGJ;AAAA,QACE,KAAK;AAAA,QACL,OAAOA,EAAE,sBAAsB;AAAA,QAC/B,QAAQ,CAAAK,MAAe;AACrB,gBAAMI,IAASjB,EAAea,CAAW;AACzC,mCACGE,GAAA,EAAK,KAAK,GAAG,YAAW,UAAS,UAAS,QACzC,UAAA;AAAA,YAAA,gBAAAC,EAACV,EAAW,OAAX,EAAiB,QAAQV,EAAeqB,CAAM,GAC5C,UAAAT,EAAEV,EAAcmB,CAAM,CAAC,EAAA,CAC1B;AAAA,YACCJ,EAAY,qBACX,gBAAAG,EAACV,EAAW,OAAX,EAAiB,QAAO,WAAW,UAAAE,EAAE,wBAAwB,EAAA,CAAE;AAAA,UAAA,GAEpE;AAAA,QAEJ;AAAA,MAAA;AAAA,IACF;AAAA,IAEF,UAAU,CAAAK,MAAe;AACvB,YAAMI,IAASjB,EAAea,CAAW;AACzC,aACE,gBAAAG;AAAA,QAACV,EAAW;AAAA,QAAX;AAAA,UACC,SAAQ;AAAA,UACR,SAAS,MAAM;AACb,YAAIO,EAAY,SAAOT,EAAaS,EAAY,KAAK;AAAA,UACvD;AAAA,UAEC,UAAAL,EAAET,EAAYkB,CAAM,CAAC;AAAA,QAAA;AAAA,MAAA;AAAA,IAG5B;AAAA,IAEA,YAAY,MACV,gBAAAD,EAACE,GAAA,EAAU,OAAOV,EAAE,iBAAiB,GAAG,aAAaA,EAAE,uBAAuB,EAAA,CAAG;AAAA,EAAA,CAEpF;AACD,2BAAQW,GAAA,EAAS,OAAOX,EAAE,uBAAuB,GAAI,GAAGG,GAAe;AACzE;"}
1
+ {"version":3,"file":"List.js","sources":["../../../../../src/components/Company/StateTaxes/StateTaxesList/List.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport {\n SetupStatus,\n type TaxRequirementStatesList,\n} from '@gusto/embedded-api/models/components/taxrequirementstateslist'\nimport { useStateTaxesList } from './context'\nimport { DataView, EmptyData, Flex, useDataView } from '@/components/Common'\nimport type { STATES_ABBR } from '@/shared/constants'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\n\ntype BadgeStatus = 'success' | 'warning' | 'info'\n\nconst badgeStatusMap: Record<SetupStatus, BadgeStatus> = {\n [SetupStatus.NotStarted]: 'info',\n [SetupStatus.InProgress]: 'warning',\n [SetupStatus.Complete]: 'success',\n}\n\nconst badgeLabelMap = {\n [SetupStatus.NotStarted]: 'notStartedBadge',\n [SetupStatus.InProgress]: 'inProgressBadge',\n [SetupStatus.Complete]: 'completeBadge',\n} as const satisfies Record<SetupStatus, string>\n\nconst ctaLabelMap = {\n [SetupStatus.NotStarted]: 'startStateTaxSetupCta',\n [SetupStatus.InProgress]: 'continueStateTaxSetupCta',\n [SetupStatus.Complete]: 'editStateTaxCta',\n} as const satisfies Record<SetupStatus, string>\n\nfunction getSetupStatus(req: TaxRequirementStatesList): SetupStatus {\n return req.setupStatus ?? SetupStatus.InProgress\n}\n\n/** @internal */\nexport const List = () => {\n const { stateTaxRequirements, handleChange, handleManageRates } = useStateTaxesList()\n const Components = useComponentContext()\n\n const { t } = useTranslation('Company.StateTaxes', { keyPrefix: 'list' })\n const { t: statesHash } = useTranslation('common', { keyPrefix: 'statesHash' })\n\n const { ...dataViewProps } = useDataView({\n data: stateTaxRequirements,\n columns: [\n {\n key: 'state',\n title: t('requirementsListCol1'),\n render: requirement => (\n <Flex flexDirection=\"column\" gap={4}>\n <Components.Text as=\"span\">\n {statesHash(requirement.state as (typeof STATES_ABBR)[number])}\n </Components.Text>\n {requirement.defaultRatesApplied && (\n <Components.Text size=\"sm\">{t('defaultRatesAppliedText')}</Components.Text>\n )}\n </Flex>\n ),\n },\n {\n key: 'status',\n title: t('requirementsListCol2'),\n render: requirement => {\n const status = getSetupStatus(requirement)\n return (\n <Flex gap={8} alignItems=\"center\" flexWrap=\"wrap\">\n <Components.Badge status={badgeStatusMap[status]}>\n {t(badgeLabelMap[status])}\n </Components.Badge>\n {requirement.readyToRunPayroll && (\n <Components.Badge status=\"success\">{t('readyToRunPayrollBadge')}</Components.Badge>\n )}\n </Flex>\n )\n },\n },\n ],\n itemMenu: requirement => {\n const status = getSetupStatus(requirement)\n const state = requirement.state\n if (!state) return null\n return (\n <HamburgerMenu\n triggerLabel={t('hamburgerTitle', {\n state: statesHash(state as (typeof STATES_ABBR)[number]),\n })}\n items={[\n {\n label: t(ctaLabelMap[status]),\n onClick: () => {\n handleChange(state)\n },\n 'data-testid': 'edit-state-tax',\n },\n {\n label: t('manageRatesCta'),\n onClick: () => {\n handleManageRates(state)\n },\n 'data-testid': 'manage-tax-rates',\n },\n ]}\n data-testid=\"state-tax-hamburger\"\n />\n )\n },\n\n emptyState: () => (\n <EmptyData title={t('emptyTableTitle')} description={t('emptyTableDescription')} />\n ),\n })\n return <DataView label={t('requirementsListLabel')} {...dataViewProps} />\n}\n"],"names":["badgeStatusMap","SetupStatus","badgeLabelMap","ctaLabelMap","getSetupStatus","req","List","stateTaxRequirements","handleChange","handleManageRates","useStateTaxesList","Components","useComponentContext","useTranslation","statesHash","dataViewProps","useDataView","requirement","jsxs","Flex","jsx","status","state","HamburgerMenu","EmptyData","DataView"],"mappings":";;;;;;;;;;AAaA,MAAMA,IAAmD;AAAA,EACvD,CAACC,EAAY,UAAU,GAAG;AAAA,EAC1B,CAACA,EAAY,UAAU,GAAG;AAAA,EAC1B,CAACA,EAAY,QAAQ,GAAG;AAC1B,GAEMC,IAAgB;AAAA,EACpB,CAACD,EAAY,UAAU,GAAG;AAAA,EAC1B,CAACA,EAAY,UAAU,GAAG;AAAA,EAC1B,CAACA,EAAY,QAAQ,GAAG;AAC1B,GAEME,IAAc;AAAA,EAClB,CAACF,EAAY,UAAU,GAAG;AAAA,EAC1B,CAACA,EAAY,UAAU,GAAG;AAAA,EAC1B,CAACA,EAAY,QAAQ,GAAG;AAC1B;AAEA,SAASG,EAAeC,GAA4C;AAClE,SAAOA,EAAI,eAAeJ,EAAY;AACxC;AAGO,MAAMK,IAAO,MAAM;AACxB,QAAM,EAAE,sBAAAC,GAAsB,cAAAC,GAAc,mBAAAC,EAAA,IAAsBC,EAAA,GAC5DC,IAAaC,EAAA,GAEb,EAAE,MAAMC,EAAe,sBAAsB,EAAE,WAAW,QAAQ,GAClE,EAAE,GAAGC,MAAeD,EAAe,UAAU,EAAE,WAAW,cAAc,GAExE,EAAE,GAAGE,EAAA,IAAkBC,EAAY;AAAA,IACvC,MAAMT;AAAA,IACN,SAAS;AAAA,MACP;AAAA,QACE,KAAK;AAAA,QACL,OAAO,EAAE,sBAAsB;AAAA,QAC/B,QAAQ,CAAAU,MACN,gBAAAC,EAACC,KAAK,eAAc,UAAS,KAAK,GAChC,UAAA;AAAA,UAAA,gBAAAC,EAACT,EAAW,MAAX,EAAgB,IAAG,QACjB,UAAAG,EAAWG,EAAY,KAAqC,GAC/D;AAAA,UACCA,EAAY,uBACX,gBAAAG,EAACT,EAAW,MAAX,EAAgB,MAAK,MAAM,UAAA,EAAE,yBAAyB,EAAA,CAAE;AAAA,QAAA,EAAA,CAE7D;AAAA,MAAA;AAAA,MAGJ;AAAA,QACE,KAAK;AAAA,QACL,OAAO,EAAE,sBAAsB;AAAA,QAC/B,QAAQ,CAAAM,MAAe;AACrB,gBAAMI,IAASjB,EAAea,CAAW;AACzC,mCACGE,GAAA,EAAK,KAAK,GAAG,YAAW,UAAS,UAAS,QACzC,UAAA;AAAA,YAAA,gBAAAC,EAACT,EAAW,OAAX,EAAiB,QAAQX,EAAeqB,CAAM,GAC5C,UAAA,EAAEnB,EAAcmB,CAAM,CAAC,EAAA,CAC1B;AAAA,YACCJ,EAAY,qBACX,gBAAAG,EAACT,EAAW,OAAX,EAAiB,QAAO,WAAW,UAAA,EAAE,wBAAwB,EAAA,CAAE;AAAA,UAAA,GAEpE;AAAA,QAEJ;AAAA,MAAA;AAAA,IACF;AAAA,IAEF,UAAU,CAAAM,MAAe;AACvB,YAAMI,IAASjB,EAAea,CAAW,GACnCK,IAAQL,EAAY;AAC1B,aAAKK,IAEH,gBAAAF;AAAA,QAACG;AAAA,QAAA;AAAA,UACC,cAAc,EAAE,kBAAkB;AAAA,YAChC,OAAOT,EAAWQ,CAAqC;AAAA,UAAA,CACxD;AAAA,UACD,OAAO;AAAA,YACL;AAAA,cACE,OAAO,EAAEnB,EAAYkB,CAAM,CAAC;AAAA,cAC5B,SAAS,MAAM;AACb,gBAAAb,EAAac,CAAK;AAAA,cACpB;AAAA,cACA,eAAe;AAAA,YAAA;AAAA,YAEjB;AAAA,cACE,OAAO,EAAE,gBAAgB;AAAA,cACzB,SAAS,MAAM;AACb,gBAAAb,EAAkBa,CAAK;AAAA,cACzB;AAAA,cACA,eAAe;AAAA,YAAA;AAAA,UACjB;AAAA,UAEF,eAAY;AAAA,QAAA;AAAA,MAAA,IAtBG;AAAA,IAyBrB;AAAA,IAEA,YAAY,MACV,gBAAAF,EAACI,GAAA,EAAU,OAAO,EAAE,iBAAiB,GAAG,aAAa,EAAE,uBAAuB,EAAA,CAAG;AAAA,EAAA,CAEpF;AACD,2BAAQC,GAAA,EAAS,OAAO,EAAE,uBAAuB,GAAI,GAAGV,GAAe;AACzE;"}
@@ -27,6 +27,7 @@ export interface StateTaxesListProps extends BaseComponentInterface<'Company.Sta
27
27
  * | Event | Description | Data |
28
28
  * | ----- | ----------- | ---- |
29
29
  * | `company/stateTaxes/edit` | A user chose to edit requirements for a specific state | `{ state: string }` |
30
+ * | `company/stateTaxes/manageRates` | A user chose to view rate history/scheduling for a specific state | `{ state: string }` |
30
31
  * | `company/stateTaxes/done` | The user chose to proceed to the next step | — |
31
32
  *
32
33
  * @param props - Component props including the `companyId` whose state tax requirements should be listed.
@@ -1,42 +1,45 @@
1
- import { jsx as e, jsxs as l, Fragment as u } from "react/jsx-runtime";
2
- import { useTaxRequirementsGetAllSuspense as d } from "@gusto/embedded-api/react-query/taxRequirementsGetAll";
3
- import { Head as f } from "./Head.js";
4
- import { StateTaxesListProvider as p } from "./context.js";
1
+ import { jsx as e, jsxs as l, Fragment as d } from "react/jsx-runtime";
2
+ import { useTaxRequirementsGetAllSuspense as u } from "@gusto/embedded-api/react-query/taxRequirementsGetAll";
3
+ import { Head as T } from "./Head.js";
4
+ import { StateTaxesListProvider as f } from "./context.js";
5
5
  import { Actions as h } from "./Actions.js";
6
- import { List as T } from "./List.js";
7
- import { BaseComponent as x } from "../../../Base/Base.js";
8
- import { useI18n as A } from "../../../../i18n/I18n.js";
9
- import { Flex as C } from "../../../Common/Flex/Flex.js";
6
+ import { List as p } from "./List.js";
7
+ import { BaseComponent as A } from "../../../Base/Base.js";
8
+ import { useI18n as x } from "../../../../i18n/I18n.js";
9
+ import { Flex as _ } from "../../../Common/Flex/Flex.js";
10
10
  import { componentEvents as r } from "../../../../shared/constants.js";
11
- import { useBase as S } from "../../../Base/useBase.js";
12
- function F(t) {
13
- return /* @__PURE__ */ e(x, { ...t, children: /* @__PURE__ */ e(E, { ...t, children: t.children }) });
11
+ import { useBase as C } from "../../../Base/useBase.js";
12
+ function y(t) {
13
+ return /* @__PURE__ */ e(A, { ...t, children: /* @__PURE__ */ e(E, { ...t, children: t.children }) });
14
14
  }
15
- function E({ className: t, children: n, companyId: i, showContinueButton: m = !0 }) {
16
- A("Company.StateTaxes");
17
- const { onEvent: o } = S(), { data: s } = d({ companyUuid: i }), a = s.taxRequirementStatesList;
15
+ function E({ className: t, children: a, companyId: i, showContinueButton: s = !0 }) {
16
+ x("Company.StateTaxes");
17
+ const { onEvent: n } = C(), { data: m } = u({ companyUuid: i }), c = m.taxRequirementStatesList;
18
18
  return /* @__PURE__ */ e("section", { className: t, children: /* @__PURE__ */ e(
19
- p,
19
+ f,
20
20
  {
21
21
  value: {
22
22
  isPending: !1,
23
- stateTaxRequirements: a,
23
+ stateTaxRequirements: c,
24
24
  handleContinue: () => {
25
- o(r.COMPANY_STATE_TAX_DONE);
25
+ n(r.COMPANY_STATE_TAX_DONE);
26
26
  },
27
- handleChange: (c) => {
28
- o(r.COMPANY_STATE_TAX_EDIT, { state: c });
27
+ handleChange: (o) => {
28
+ n(r.COMPANY_STATE_TAX_EDIT, { state: o });
29
+ },
30
+ handleManageRates: (o) => {
31
+ n(r.COMPANY_STATE_TAX_MANAGE_RATES, { state: o });
29
32
  }
30
33
  },
31
- children: /* @__PURE__ */ e(C, { flexDirection: "column", gap: 32, children: n || /* @__PURE__ */ l(u, { children: [
32
- /* @__PURE__ */ e(f, {}),
34
+ children: /* @__PURE__ */ e(_, { flexDirection: "column", gap: 32, children: a || /* @__PURE__ */ l(d, { children: [
33
35
  /* @__PURE__ */ e(T, {}),
34
- m && /* @__PURE__ */ e(h, {})
36
+ /* @__PURE__ */ e(p, {}),
37
+ s && /* @__PURE__ */ e(h, {})
35
38
  ] }) })
36
39
  }
37
40
  ) });
38
41
  }
39
42
  export {
40
- F as StateTaxesList
43
+ y as StateTaxesList
41
44
  };
42
45
  //# sourceMappingURL=StateTaxesList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StateTaxesList.js","sources":["../../../../../src/components/Company/StateTaxes/StateTaxesList/StateTaxesList.tsx"],"sourcesContent":["import { useTaxRequirementsGetAllSuspense } from '@gusto/embedded-api/react-query/taxRequirementsGetAll'\nimport { Head } from './Head'\nimport { StateTaxesListProvider } from './context'\nimport { Actions } from './Actions'\nimport { List } from './List'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useI18n } from '@/i18n/I18n'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { componentEvents } from '@/shared/constants'\nimport { useBase } from '@/components/Base'\n\n/**\n * Props for the {@link StateTaxesList} component.\n *\n * @public\n */\nexport interface StateTaxesListProps extends BaseComponentInterface<'Company.StateTaxes'> {\n /** The associated company identifier. */\n companyId: string\n /**\n * Controls visibility of the Continue button below the state tax list.\n *\n * When `false`, hides the Continue button. Use this when the list is embedded\n * as one step inside a larger flow that provides its own navigation.\n *\n * @defaultValue `true`\n */\n showContinueButton?: boolean\n}\n\n/**\n * Displays the list of state tax requirements for a company with their setup status.\n *\n * @remarks\n * Standalone building block used internally by the orchestrated `StateTaxes` component for its list view. Use this directly when you need full control over navigation between the list and form views.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `company/stateTaxes/edit` | A user chose to edit requirements for a specific state | `{ state: string }` |\n * | `company/stateTaxes/done` | The user chose to proceed to the next step | — |\n *\n * @param props - Component props including the `companyId` whose state tax requirements should be listed.\n * @returns The rendered state taxes list section.\n * @public\n */\nexport function StateTaxesList(props: StateTaxesListProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({ className, children, companyId, showContinueButton = true }: StateTaxesListProps) {\n useI18n('Company.StateTaxes')\n const { onEvent } = useBase()\n const { data } = useTaxRequirementsGetAllSuspense({ companyUuid: companyId })\n const stateTaxRequirements = data.taxRequirementStatesList!\n\n const handleContinue = () => {\n onEvent(componentEvents.COMPANY_STATE_TAX_DONE)\n }\n\n const handleChange = (state: string) => {\n onEvent(componentEvents.COMPANY_STATE_TAX_EDIT, { state })\n }\n\n return (\n <section className={className}>\n <StateTaxesListProvider\n value={{\n isPending: false,\n stateTaxRequirements,\n handleContinue,\n handleChange,\n }}\n >\n <Flex flexDirection=\"column\" gap={32}>\n {children ? (\n children\n ) : (\n <>\n <Head />\n <List />\n {showContinueButton && <Actions />}\n </>\n )}\n </Flex>\n </StateTaxesListProvider>\n </section>\n )\n}\n"],"names":["StateTaxesList","props","jsx","BaseComponent","Root","className","children","companyId","showContinueButton","useI18n","onEvent","useBase","data","useTaxRequirementsGetAllSuspense","stateTaxRequirements","StateTaxesListProvider","componentEvents","state","Flex","jsxs","Fragment","Head","List","Actions"],"mappings":";;;;;;;;;;;AA+CO,SAASA,EAAeC,GAA4B;AACzD,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GACjB,UAAA,gBAAAC,EAACE,KAAM,GAAGH,GAAQ,UAAAA,EAAM,SAAA,CAAS,EAAA,CACnC;AAEJ;AAEA,SAASG,EAAK,EAAE,WAAAC,GAAW,UAAAC,GAAU,WAAAC,GAAW,oBAAAC,IAAqB,MAA6B;AAChG,EAAAC,EAAQ,oBAAoB;AAC5B,QAAM,EAAE,SAAAC,EAAA,IAAYC,EAAA,GACd,EAAE,MAAAC,EAAA,IAASC,EAAiC,EAAE,aAAaN,GAAW,GACtEO,IAAuBF,EAAK;AAUlC,SACE,gBAAAV,EAAC,aAAQ,WAAAG,GACP,UAAA,gBAAAH;AAAA,IAACa;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,QACL,WAAW;AAAA,QACX,sBAAAD;AAAA,QACA,gBAde,MAAM;AAC3B,UAAAJ,EAAQM,EAAgB,sBAAsB;AAAA,QAChD;AAAA,QAaQ,cAXa,CAACC,MAAkB;AACtC,UAAAP,EAAQM,EAAgB,wBAAwB,EAAE,OAAAC,EAAA,CAAO;AAAA,QAC3D;AAAA,MASQ;AAAA,MAGF,UAAA,gBAAAf,EAACgB,KAAK,eAAc,UAAS,KAAK,IAC/B,UAAAZ,KAGC,gBAAAa,EAAAC,GAAA,EACE,UAAA;AAAA,QAAA,gBAAAlB,EAACmB,GAAA,EAAK;AAAA,0BACLC,GAAA,EAAK;AAAA,QACLd,uBAAuBe,GAAA,CAAA,CAAQ;AAAA,MAAA,EAAA,CAClC,EAAA,CAEJ;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
1
+ {"version":3,"file":"StateTaxesList.js","sources":["../../../../../src/components/Company/StateTaxes/StateTaxesList/StateTaxesList.tsx"],"sourcesContent":["import { useTaxRequirementsGetAllSuspense } from '@gusto/embedded-api/react-query/taxRequirementsGetAll'\nimport { Head } from './Head'\nimport { StateTaxesListProvider } from './context'\nimport { Actions } from './Actions'\nimport { List } from './List'\nimport type { BaseComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useI18n } from '@/i18n/I18n'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { componentEvents } from '@/shared/constants'\nimport { useBase } from '@/components/Base'\n\n/**\n * Props for the {@link StateTaxesList} component.\n *\n * @public\n */\nexport interface StateTaxesListProps extends BaseComponentInterface<'Company.StateTaxes'> {\n /** The associated company identifier. */\n companyId: string\n /**\n * Controls visibility of the Continue button below the state tax list.\n *\n * When `false`, hides the Continue button. Use this when the list is embedded\n * as one step inside a larger flow that provides its own navigation.\n *\n * @defaultValue `true`\n */\n showContinueButton?: boolean\n}\n\n/**\n * Displays the list of state tax requirements for a company with their setup status.\n *\n * @remarks\n * Standalone building block used internally by the orchestrated `StateTaxes` component for its list view. Use this directly when you need full control over navigation between the list and form views.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `company/stateTaxes/edit` | A user chose to edit requirements for a specific state | `{ state: string }` |\n * | `company/stateTaxes/manageRates` | A user chose to view rate history/scheduling for a specific state | `{ state: string }` |\n * | `company/stateTaxes/done` | The user chose to proceed to the next step | — |\n *\n * @param props - Component props including the `companyId` whose state tax requirements should be listed.\n * @returns The rendered state taxes list section.\n * @public\n */\nexport function StateTaxesList(props: StateTaxesListProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({ className, children, companyId, showContinueButton = true }: StateTaxesListProps) {\n useI18n('Company.StateTaxes')\n const { onEvent } = useBase()\n const { data } = useTaxRequirementsGetAllSuspense({ companyUuid: companyId })\n const stateTaxRequirements = data.taxRequirementStatesList!\n\n const handleContinue = () => {\n onEvent(componentEvents.COMPANY_STATE_TAX_DONE)\n }\n\n const handleChange = (state: string) => {\n onEvent(componentEvents.COMPANY_STATE_TAX_EDIT, { state })\n }\n\n const handleManageRates = (state: string) => {\n onEvent(componentEvents.COMPANY_STATE_TAX_MANAGE_RATES, { state })\n }\n\n return (\n <section className={className}>\n <StateTaxesListProvider\n value={{\n isPending: false,\n stateTaxRequirements,\n handleContinue,\n handleChange,\n handleManageRates,\n }}\n >\n <Flex flexDirection=\"column\" gap={32}>\n {children ? (\n children\n ) : (\n <>\n <Head />\n <List />\n {showContinueButton && <Actions />}\n </>\n )}\n </Flex>\n </StateTaxesListProvider>\n </section>\n )\n}\n"],"names":["StateTaxesList","props","jsx","BaseComponent","Root","className","children","companyId","showContinueButton","useI18n","onEvent","useBase","data","useTaxRequirementsGetAllSuspense","stateTaxRequirements","StateTaxesListProvider","componentEvents","state","Flex","jsxs","Fragment","Head","List","Actions"],"mappings":";;;;;;;;;;;AAgDO,SAASA,EAAeC,GAA4B;AACzD,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GACjB,UAAA,gBAAAC,EAACE,KAAM,GAAGH,GAAQ,UAAAA,EAAM,SAAA,CAAS,EAAA,CACnC;AAEJ;AAEA,SAASG,EAAK,EAAE,WAAAC,GAAW,UAAAC,GAAU,WAAAC,GAAW,oBAAAC,IAAqB,MAA6B;AAChG,EAAAC,EAAQ,oBAAoB;AAC5B,QAAM,EAAE,SAAAC,EAAA,IAAYC,EAAA,GACd,EAAE,MAAAC,EAAA,IAASC,EAAiC,EAAE,aAAaN,GAAW,GACtEO,IAAuBF,EAAK;AAclC,SACE,gBAAAV,EAAC,aAAQ,WAAAG,GACP,UAAA,gBAAAH;AAAA,IAACa;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,QACL,WAAW;AAAA,QACX,sBAAAD;AAAA,QACA,gBAlBe,MAAM;AAC3B,UAAAJ,EAAQM,EAAgB,sBAAsB;AAAA,QAChD;AAAA,QAiBQ,cAfa,CAACC,MAAkB;AACtC,UAAAP,EAAQM,EAAgB,wBAAwB,EAAE,OAAAC,EAAA,CAAO;AAAA,QAC3D;AAAA,QAcQ,mBAZkB,CAACA,MAAkB;AAC3C,UAAAP,EAAQM,EAAgB,gCAAgC,EAAE,OAAAC,EAAA,CAAO;AAAA,QACnE;AAAA,MAUQ;AAAA,MAGF,UAAA,gBAAAf,EAACgB,KAAK,eAAc,UAAS,KAAK,IAC/B,UAAAZ,KAGC,gBAAAa,EAAAC,GAAA,EACE,UAAA;AAAA,QAAA,gBAAAlB,EAACmB,GAAA,EAAK;AAAA,0BACLC,GAAA,EAAK;AAAA,QACLd,uBAAuBe,GAAA,CAAA,CAAQ;AAAA,MAAA,EAAA,CAClC,EAAA,CAEJ;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
@@ -4,6 +4,7 @@ type StateTaxesListContextType = {
4
4
  stateTaxRequirements: TaxRequirementStatesList[];
5
5
  handleContinue: () => void;
6
6
  handleChange: (state: string) => void;
7
+ handleManageRates: (state: string) => void;
7
8
  };
8
9
  declare const useStateTaxesList: () => StateTaxesListContextType, StateTaxesListProvider: import('react').Provider<StateTaxesListContextType | null>;
9
10
  export { useStateTaxesList, StateTaxesListProvider };