@gusto/embedded-react-sdk 0.57.0 → 0.57.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/dist/components/Common/DataView/DataCards/DataCards.js +44 -42
  3. package/dist/components/Common/DataView/DataCards/DataCards.js.map +1 -1
  4. package/dist/components/Common/DataView/DataCards/DataCards.module.scss.js +17 -15
  5. package/dist/components/Common/DataView/DataCards/DataCards.module.scss.js.map +1 -1
  6. package/dist/components/Common/UI/Input/Input.js +35 -32
  7. package/dist/components/Common/UI/Input/Input.js.map +1 -1
  8. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +4 -5
  9. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  10. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +4 -5
  11. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  12. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +6 -7
  13. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  14. package/dist/components/Company/BankAccount/BankAccountForm/context.js +4 -5
  15. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  16. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +4 -5
  17. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  18. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +9 -10
  19. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  20. package/dist/components/Company/Industry/Context.js +7 -8
  21. package/dist/components/Company/Industry/Context.js.map +1 -1
  22. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +4 -5
  23. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  24. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +4 -5
  25. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  26. package/dist/components/Company/OnboardingOverview/context.js +4 -5
  27. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  28. package/dist/components/Company/PaySchedule/PayScheduleForm.js +66 -62
  29. package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
  30. package/dist/components/Company/PaySchedule/PayScheduleForm.module.scss.js +2 -2
  31. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js +80 -68
  32. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js.map +1 -1
  33. package/dist/components/Company/PaySchedule/management/PayScheduleManagementComponents.js +49 -44
  34. package/dist/components/Company/PaySchedule/management/PayScheduleManagementComponents.js.map +1 -1
  35. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +96 -69
  36. package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js.map +1 -1
  37. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +4 -5
  38. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  39. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +4 -5
  40. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  41. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +4 -5
  42. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -1
  43. package/dist/components/Company/StateTaxes/shared/requirementSetError.js +27 -10
  44. package/dist/components/Company/StateTaxes/shared/requirementSetError.js.map +1 -1
  45. package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetail.js +77 -0
  46. package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetail.js.map +1 -0
  47. package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetailPresentation.js +94 -0
  48. package/dist/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetailPresentation.js.map +1 -0
  49. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.js +26 -0
  50. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.js.map +1 -0
  51. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlowComponents.js +25 -0
  52. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlowComponents.js.map +1 -0
  53. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/taxPaymentsStateMachine.js +33 -0
  54. package/dist/components/Company/TaxPayments/TaxPaymentsFlow/taxPaymentsStateMachine.js.map +1 -0
  55. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsList.js +55 -0
  56. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsList.js.map +1 -0
  57. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.js +153 -0
  58. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.js.map +1 -0
  59. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.module.scss.js +14 -0
  60. package/dist/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.module.scss.js.map +1 -0
  61. package/dist/components/Company/TaxPayments/shared/payrollLookupWindow.js +16 -0
  62. package/dist/components/Company/TaxPayments/shared/payrollLookupWindow.js.map +1 -0
  63. package/dist/components/Company/TaxPayments/shared/taxPaymentStatus.js +34 -0
  64. package/dist/components/Company/TaxPayments/shared/taxPaymentStatus.js.map +1 -0
  65. package/dist/components/Company/TaxPayments/shared/useAllTaxPayments.js +30 -0
  66. package/dist/components/Company/TaxPayments/shared/useAllTaxPayments.js.map +1 -0
  67. package/dist/components/Company/exports/companyManagement.js +10 -4
  68. package/dist/components/Company/exports/companyManagement.js.map +1 -1
  69. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +4 -5
  70. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  71. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js +24 -23
  72. package/dist/components/Employee/EmployeeListFlow/employeeListStateMachine.js.map +1 -1
  73. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js +42 -34
  74. package/dist/components/Employee/Terminations/TerminationFlow/terminationStateMachine.js.map +1 -1
  75. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +3 -2
  76. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
  77. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +56 -54
  78. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
  79. package/dist/components/Payroll/PayrollFlow/PayrollFlow.js.map +1 -1
  80. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +60 -52
  81. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
  82. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +74 -88
  83. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  84. package/dist/components/Payroll/PayrollLanding/PayrollLanding.js.map +1 -1
  85. package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.js +23 -18
  86. package/dist/components/Payroll/PayrollLanding/payrollLandingStateMachine.js.map +1 -1
  87. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +204 -179
  88. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
  89. package/dist/components/Payroll/PayrollOverview/PayrollOverview.module.scss.js +8 -0
  90. package/dist/components/Payroll/PayrollOverview/PayrollOverview.module.scss.js.map +1 -0
  91. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +44 -46
  92. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  93. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js +4 -4
  94. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js.map +1 -1
  95. package/dist/components/Payroll/PrintChecks/PrintChecksForm/useGenerationPoll.js +50 -41
  96. package/dist/components/Payroll/PrintChecks/PrintChecksForm/useGenerationPoll.js.map +1 -1
  97. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +63 -61
  98. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +1 -1
  99. package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js +14 -13
  100. package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js.map +1 -1
  101. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js +164 -154
  102. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js.map +1 -1
  103. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js +9 -5
  104. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js.map +1 -1
  105. package/dist/components/Payroll/helpers.js +103 -92
  106. package/dist/components/Payroll/helpers.js.map +1 -1
  107. package/dist/components/Payroll/usePreparedPayrollData.js +3 -4
  108. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  109. package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js +2 -2
  110. package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js.map +1 -1
  111. package/dist/contexts/ApiProvider/ApiProvider.js +19 -18
  112. package/dist/contexts/ApiProvider/ApiProvider.js.map +1 -1
  113. package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js +36 -0
  114. package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js.map +1 -0
  115. package/dist/contexts/UnstableFeaturesProvider/useUnstableFeature.js.map +1 -1
  116. package/dist/helpers/dateFormatting.js +47 -40
  117. package/dist/helpers/dateFormatting.js.map +1 -1
  118. package/dist/i18n/I18n.js +2 -0
  119. package/dist/i18n/I18n.js.map +1 -1
  120. package/dist/i18n/en/Company.Management.PaySchedule.json.js +20 -18
  121. package/dist/i18n/en/Company.Management.PaySchedule.json.js.map +1 -1
  122. package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js +6 -4
  123. package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js.map +1 -1
  124. package/dist/i18n/en/Company.Management.TaxPaymentDetail.json.js +26 -0
  125. package/dist/i18n/en/Company.Management.TaxPaymentDetail.json.js.map +1 -0
  126. package/dist/i18n/en/Company.Management.TaxPaymentsList.json.js +48 -0
  127. package/dist/i18n/en/Company.Management.TaxPaymentsList.json.js.map +1 -0
  128. package/dist/i18n/en/Company.StateTaxes.json.js +1 -1
  129. package/dist/i18n/en/Payroll.PayrollHistory.json.js +5 -5
  130. package/dist/i18n/en/Payroll.PayrollOverview.json.js +42 -36
  131. package/dist/i18n/en/Payroll.PayrollOverview.json.js.map +1 -1
  132. package/dist/package.json.js +1 -1
  133. package/dist/shared/constants.js +62 -56
  134. package/dist/shared/constants.js.map +1 -1
  135. package/dist/src/components/Company/PaySchedule/PayScheduleForm.d.ts +6 -0
  136. package/dist/src/components/Company/StateTaxes/shared/requirementSetError.d.ts +18 -5
  137. package/dist/src/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetail.d.ts +31 -0
  138. package/dist/src/components/Company/TaxPayments/TaxPaymentDetail/TaxPaymentDetailPresentation.d.ts +19 -0
  139. package/dist/src/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlow.d.ts +42 -0
  140. package/dist/src/components/Company/TaxPayments/TaxPaymentsFlow/TaxPaymentsFlowComponents.d.ts +20 -0
  141. package/dist/src/components/Company/TaxPayments/TaxPaymentsFlow/taxPaymentsStateMachine.d.ts +10 -0
  142. package/dist/src/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsList.d.ts +28 -0
  143. package/dist/src/components/Company/TaxPayments/TaxPaymentsList/TaxPaymentsListPresentation.d.ts +33 -0
  144. package/dist/src/components/Company/TaxPayments/index.d.ts +6 -0
  145. package/dist/src/components/Company/TaxPayments/shared/payrollLookupWindow.d.ts +29 -0
  146. package/dist/src/components/Company/TaxPayments/shared/payrollLookupWindow.test.d.ts +1 -0
  147. package/dist/src/components/Company/TaxPayments/shared/taxPaymentStatus.d.ts +62 -0
  148. package/dist/src/components/Company/TaxPayments/shared/taxPaymentStatus.test.d.ts +1 -0
  149. package/dist/src/components/Company/TaxPayments/shared/useAllTaxPayments.d.ts +30 -0
  150. package/dist/src/components/Company/exports/companyManagement.d.ts +2 -0
  151. package/dist/src/components/Payroll/PayrollConfiguration/__fixtures__/payrollConfigurationMocks.d.ts +6 -1
  152. package/dist/src/components/Payroll/PayrollFlow/PayrollFlow.d.ts +1 -0
  153. package/dist/src/components/Payroll/PayrollLanding/PayrollLanding.d.ts +1 -0
  154. package/dist/src/components/Payroll/PayrollOverview/PayrollOverview.d.ts +9 -3
  155. package/dist/src/components/Payroll/helpers.d.ts +34 -18
  156. package/dist/src/contexts/ApiProvider/payrollOffCycleReasonEnumHook.d.ts +14 -0
  157. package/dist/src/contexts/ApiProvider/payrollOffCycleReasonEnumHook.test.d.ts +1 -0
  158. package/dist/src/contexts/UnstableFeaturesProvider/useUnstableFeature.d.ts +2 -0
  159. package/dist/src/helpers/dateFormatting.d.ts +13 -0
  160. package/dist/src/i18n/types.d.ts +168 -4
  161. package/dist/src/models/external.d.ts +2 -0
  162. package/dist/src/shared/constants.d.ts +18 -0
  163. package/dist/style.css +1 -1
  164. package/docs/guides/endpoint-inventory.json +33 -0
  165. package/package.json +30 -27
@@ -9,20 +9,19 @@ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
9
  import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
10
  import "@gusto/embedded-api/models/errors/unprocessableentityerror";
11
11
  import "@gusto/embedded-api/models/errors/httpclienterrors";
12
- import "dompurify";
13
- import "../../../contexts/LocaleProvider/useLocale.js";
14
12
  import "../../../shared/constants.js";
15
13
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
14
+ import "../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
16
15
  import { createCompoundContext as t } from "../../Base/createCompoundContext.js";
17
- const [f, v] = t("IndustryItems", {
16
+ const [P, f] = t("IndustryItems", {
18
17
  items: []
19
- }), [x, C] = t("IndustryApi", {
18
+ }), [v, x] = t("IndustryApi", {
20
19
  isPending: !1
21
20
  });
22
21
  export {
23
- C as IndustryApiStateProvider,
24
- v as IndustryItemsProvider,
25
- x as useIndustryApiState,
26
- f as useIndustryItems
22
+ x as IndustryApiStateProvider,
23
+ f as IndustryItemsProvider,
24
+ v as useIndustryApiState,
25
+ P as useIndustryItems
27
26
  };
28
27
  //# sourceMappingURL=Context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","sources":["../../../../src/components/Company/Industry/Context.ts"],"sourcesContent":["import { createCompoundContext } from '@/components/Base'\nimport type { ComboBoxOption } from '@/components/Common/UI/ComboBox/ComboBoxTypes'\n\nconst [useIndustryItems, IndustryItemsProvider] = createCompoundContext('IndustryItems', {\n items: [] as ComboBoxOption[],\n})\n\nconst [useIndustryApiState, IndustryApiStateProvider] = createCompoundContext('IndustryApi', {\n isPending: false,\n})\n\nexport { IndustryApiStateProvider, IndustryItemsProvider, useIndustryItems, useIndustryApiState }\n"],"names":["useIndustryItems","IndustryItemsProvider","createCompoundContext","useIndustryApiState","IndustryApiStateProvider"],"mappings":";;;;;;;;;;;;;;;;AAGA,MAAM,CAACA,GAAkBC,CAAqB,IAAIC,EAAsB,iBAAiB;AAAA,EACvF,OAAO,CAAA;AACT,CAAC,GAEK,CAACC,GAAqBC,CAAwB,IAAIF,EAAsB,eAAe;AAAA,EAC3F,WAAW;AACb,CAAC;"}
1
+ {"version":3,"file":"Context.js","sources":["../../../../src/components/Company/Industry/Context.ts"],"sourcesContent":["import { createCompoundContext } from '@/components/Base'\nimport type { ComboBoxOption } from '@/components/Common/UI/ComboBox/ComboBoxTypes'\n\nconst [useIndustryItems, IndustryItemsProvider] = createCompoundContext('IndustryItems', {\n items: [] as ComboBoxOption[],\n})\n\nconst [useIndustryApiState, IndustryApiStateProvider] = createCompoundContext('IndustryApi', {\n isPending: false,\n})\n\nexport { IndustryApiStateProvider, IndustryItemsProvider, useIndustryItems, useIndustryApiState }\n"],"names":["useIndustryItems","IndustryItemsProvider","createCompoundContext","useIndustryApiState","IndustryApiStateProvider"],"mappings":";;;;;;;;;;;;;;;AAGA,MAAM,CAACA,GAAkBC,CAAqB,IAAIC,EAAsB,iBAAiB;AAAA,EACvF,OAAO,CAAA;AACT,CAAC,GAEK,CAACC,GAAqBC,CAAwB,IAAIF,EAAsB,eAAe;AAAA,EAC3F,WAAW;AACb,CAAC;"}
@@ -9,16 +9,15 @@ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
9
  import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
10
  import "@gusto/embedded-api/models/errors/unprocessableentityerror";
11
11
  import "@gusto/embedded-api/models/errors/httpclienterrors";
12
- import "dompurify";
13
- import "../../../../contexts/LocaleProvider/useLocale.js";
14
12
  import "../../../../shared/constants.js";
15
13
  import "../../../../contexts/ComponentAdapter/useComponentContext.js";
14
+ import "../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
16
15
  import { createCompoundContext as o } from "../../../Base/createCompoundContext.js";
17
- const [f, v] = o(
16
+ const [L, f] = o(
18
17
  "CompanyDocumentFormContext"
19
18
  );
20
19
  export {
21
- v as LocationsFormProvider,
22
- f as useLocationsForm
20
+ f as LocationsFormProvider,
21
+ L as useLocationsForm
23
22
  };
24
23
  //# sourceMappingURL=useLocationForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLocationForm.js","sources":["../../../../../src/components/Company/Locations/LocationForm/useLocationForm.ts"],"sourcesContent":["import { createCompoundContext } from '@/components/Base'\n\ntype LocationsFormContextType = {\n isPending: boolean\n handleCancel: () => void\n}\n\nconst [useLocationsForm, LocationsFormProvider] = createCompoundContext<LocationsFormContextType>(\n 'CompanyDocumentFormContext',\n)\n\nexport { useLocationsForm, LocationsFormProvider }\n"],"names":["useLocationsForm","LocationsFormProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;AAOA,MAAM,CAACA,GAAkBC,CAAqB,IAAIC;AAAA,EAChD;AACF;"}
1
+ {"version":3,"file":"useLocationForm.js","sources":["../../../../../src/components/Company/Locations/LocationForm/useLocationForm.ts"],"sourcesContent":["import { createCompoundContext } from '@/components/Base'\n\ntype LocationsFormContextType = {\n isPending: boolean\n handleCancel: () => void\n}\n\nconst [useLocationsForm, LocationsFormProvider] = createCompoundContext<LocationsFormContextType>(\n 'CompanyDocumentFormContext',\n)\n\nexport { useLocationsForm, LocationsFormProvider }\n"],"names":["useLocationsForm","LocationsFormProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AAOA,MAAM,CAACA,GAAkBC,CAAqB,IAAIC;AAAA,EAChD;AACF;"}
@@ -9,16 +9,15 @@ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
9
  import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
10
  import "@gusto/embedded-api/models/errors/unprocessableentityerror";
11
11
  import "@gusto/embedded-api/models/errors/httpclienterrors";
12
- import "dompurify";
13
- import "../../../../contexts/LocaleProvider/useLocale.js";
14
12
  import "../../../../shared/constants.js";
15
13
  import "../../../../contexts/ComponentAdapter/useComponentContext.js";
14
+ import "../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
16
15
  import { createCompoundContext as o } from "../../../Base/createCompoundContext.js";
17
- const [v, y] = o(
16
+ const [f, v] = o(
18
17
  "CompanyDocumentListContext"
19
18
  );
20
19
  export {
21
- y as LocationsListProvider,
22
- v as useLocationsList
20
+ v as LocationsListProvider,
21
+ f as useLocationsList
23
22
  };
24
23
  //# sourceMappingURL=useLocationsList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLocationsList.js","sources":["../../../../../src/components/Company/Locations/LocationsList/useLocationsList.ts"],"sourcesContent":["import { type Location } from '@gusto/embedded-api/models/components/location'\nimport { createCompoundContext } from '@/components/Base'\nimport type { PaginationItemsPerPage } from '@/components/Common/PaginationControl/PaginationControlTypes'\n\ntype LocationsListContextType = {\n locationList: Location[]\n totalPages: number\n totalCount: number\n currentPage: number\n itemsPerPage: PaginationItemsPerPage\n isFetching?: boolean\n handleItemsPerPageChange: (n: PaginationItemsPerPage) => void\n handleFirstPage: () => void\n handlePreviousPage: () => void\n handleNextPage: () => void\n handleLastPage: () => void\n handleEditLocation: (uuid: string) => void\n handleAddLocation: () => void\n handleContinue: () => void\n}\n\nconst [useLocationsList, LocationsListProvider] = createCompoundContext<LocationsListContextType>(\n 'CompanyDocumentListContext',\n)\n\nexport { useLocationsList, LocationsListProvider }\n"],"names":["useLocationsList","LocationsListProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;AAqBA,MAAM,CAACA,GAAkBC,CAAqB,IAAIC;AAAA,EAChD;AACF;"}
1
+ {"version":3,"file":"useLocationsList.js","sources":["../../../../../src/components/Company/Locations/LocationsList/useLocationsList.ts"],"sourcesContent":["import { type Location } from '@gusto/embedded-api/models/components/location'\nimport { createCompoundContext } from '@/components/Base'\nimport type { PaginationItemsPerPage } from '@/components/Common/PaginationControl/PaginationControlTypes'\n\ntype LocationsListContextType = {\n locationList: Location[]\n totalPages: number\n totalCount: number\n currentPage: number\n itemsPerPage: PaginationItemsPerPage\n isFetching?: boolean\n handleItemsPerPageChange: (n: PaginationItemsPerPage) => void\n handleFirstPage: () => void\n handlePreviousPage: () => void\n handleNextPage: () => void\n handleLastPage: () => void\n handleEditLocation: (uuid: string) => void\n handleAddLocation: () => void\n handleContinue: () => void\n}\n\nconst [useLocationsList, LocationsListProvider] = createCompoundContext<LocationsListContextType>(\n 'CompanyDocumentListContext',\n)\n\nexport { useLocationsList, LocationsListProvider }\n"],"names":["useLocationsList","LocationsListProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AAqBA,MAAM,CAACA,GAAkBC,CAAqB,IAAIC;AAAA,EAChD;AACF;"}
@@ -9,14 +9,13 @@ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
9
  import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
10
  import "@gusto/embedded-api/models/errors/unprocessableentityerror";
11
11
  import "@gusto/embedded-api/models/errors/httpclienterrors";
12
- import "dompurify";
13
- import "../../../contexts/LocaleProvider/useLocale.js";
14
12
  import "../../../shared/constants.js";
15
13
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
14
+ import "../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
16
15
  import { createCompoundContext as o } from "../../Base/createCompoundContext.js";
17
- const [c, s] = o("OnboardingOverviewContext");
16
+ const [C, c] = o("OnboardingOverviewContext");
18
17
  export {
19
- s as OnboardingOverviewProvider,
20
- c as useOnboardingOverview
18
+ c as OnboardingOverviewProvider,
19
+ C as useOnboardingOverview
21
20
  };
22
21
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sources":["../../../../src/components/Company/OnboardingOverview/context.ts"],"sourcesContent":["import type { OnboardingStep } from '@gusto/embedded-api/models/components/companyonboardingstatus'\nimport { createCompoundContext } from '@/components/Base'\n\ntype OnboardingOverviewContextType = {\n onboardingCompleted?: boolean\n onboardingSteps?: OnboardingStep[]\n handleDone: () => void\n handleContinue: () => void\n}\n\nconst [useOnboardingOverview, OnboardingOverviewProvider] =\n createCompoundContext<OnboardingOverviewContextType>('OnboardingOverviewContext')\n\nexport { useOnboardingOverview, OnboardingOverviewProvider }\n"],"names":["useOnboardingOverview","OnboardingOverviewProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;AAUA,MAAM,CAACA,GAAuBC,CAA0B,IACtDC,EAAqD,2BAA2B;"}
1
+ {"version":3,"file":"context.js","sources":["../../../../src/components/Company/OnboardingOverview/context.ts"],"sourcesContent":["import type { OnboardingStep } from '@gusto/embedded-api/models/components/companyonboardingstatus'\nimport { createCompoundContext } from '@/components/Base'\n\ntype OnboardingOverviewContextType = {\n onboardingCompleted?: boolean\n onboardingSteps?: OnboardingStep[]\n handleDone: () => void\n handleContinue: () => void\n}\n\nconst [useOnboardingOverview, OnboardingOverviewProvider] =\n createCompoundContext<OnboardingOverviewContextType>('OnboardingOverviewContext')\n\nexport { useOnboardingOverview, OnboardingOverviewProvider }\n"],"names":["useOnboardingOverview","OnboardingOverviewProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AAUA,MAAM,CAACA,GAAuBC,CAA0B,IACtDC,EAAqD,2BAA2B;"}
@@ -1,49 +1,55 @@
1
- import { jsx as a, jsxs as c } from "react/jsx-runtime";
2
- import { useState as R } from "react";
3
- import { useTranslation as C } from "react-i18next";
4
- import { usePayScheduleForm as O } from "./shared/usePayScheduleForm/usePayScheduleForm.js";
5
- import m from "./PayScheduleForm.module.scss.js";
6
- import { BaseBoundaries as M, BaseLayout as f } from "../../Base/Base.js";
1
+ import { jsx as a, jsxs as y } from "react/jsx-runtime";
2
+ import { useState as O } from "react";
3
+ import { useTranslation as M } from "react-i18next";
4
+ import { usePayScheduleForm as q } from "./shared/usePayScheduleForm/usePayScheduleForm.js";
5
+ import u from "./PayScheduleForm.module.scss.js";
6
+ import { BaseBoundaries as A, BaseLayout as P } from "../../Base/Base.js";
7
7
  import "../../Base/useBase.js";
8
- import { SDKFormProvider as q } from "../../../partner-hook-utils/form/SDKFormProvider.js";
9
- import { Form as A } from "../../Common/Form/Form.js";
10
- import { Flex as u } from "../../Common/Flex/Flex.js";
11
- import { Grid as L } from "../../Common/Grid/Grid.js";
12
- import { ActionsLayout as T } from "../../Common/ActionsLayout/ActionsLayout.js";
13
- import { useComponentContext as F } from "../../../contexts/ComponentAdapter/useComponentContext.js";
14
- import { useDateFormatter as x } from "../../../hooks/useDateFormatter.js";
15
- import { componentEvents as D } from "../../../shared/constants.js";
16
- import { normalizeToDate as N } from "../../../helpers/dateFormatting.js";
17
- const p = (l) => N(l.toString());
18
- function ee({ onEvent: l, LoaderComponent: d, ...h }) {
19
- return /* @__PURE__ */ a(M, { componentName: "Company.PayScheduleForm", LoaderComponent: d, children: /* @__PURE__ */ a(I, { onEvent: l, LoaderComponent: d, ...h }) });
8
+ import { SDKFormProvider as L } from "../../../partner-hook-utils/form/SDKFormProvider.js";
9
+ import { Form as T } from "../../Common/Form/Form.js";
10
+ import { Flex as p } from "../../Common/Flex/Flex.js";
11
+ import { Grid as F } from "../../Common/Grid/Grid.js";
12
+ import { ActionsLayout as x } from "../../Common/ActionsLayout/ActionsLayout.js";
13
+ import { useComponentContext as N } from "../../../contexts/ComponentAdapter/useComponentContext.js";
14
+ import { useDateFormatter as I } from "../../../hooks/useDateFormatter.js";
15
+ import { componentEvents as f } from "../../../shared/constants.js";
16
+ import { normalizeToDate as U } from "../../../helpers/dateFormatting.js";
17
+ const D = (l) => U(l.toString());
18
+ function te({ onEvent: l, LoaderComponent: d, ...c }) {
19
+ return /* @__PURE__ */ a(A, { componentName: "Company.PayScheduleForm", LoaderComponent: d, children: /* @__PURE__ */ a(Q, { onEvent: l, LoaderComponent: d, ...c }) });
20
20
  }
21
- function I({ onEvent: l, LoaderComponent: d, ...h }) {
22
- const { t: e } = C("Company.PaySchedule"), i = F(), P = x(), o = O(h), [n, w] = R(0);
23
- if (o.isLoading)
21
+ function Q({
22
+ onEvent: l,
23
+ LoaderComponent: d,
24
+ variant: c = "onboarding",
25
+ copy: m,
26
+ ...w
27
+ }) {
28
+ const { t: e } = M("Company.PaySchedule"), o = N(), g = I(), i = q(w), [n, S] = O(0);
29
+ if (i.isLoading)
24
30
  return /* @__PURE__ */ a(
25
- f,
31
+ P,
26
32
  {
27
33
  isLoading: !0,
28
- error: o.errorHandling.errors,
34
+ error: i.errorHandling.errors,
29
35
  LoaderComponent: d
30
36
  }
31
37
  );
32
38
  const v = async () => {
33
- const t = await o.actions.onSubmit();
39
+ const t = await i.actions.onSubmit();
34
40
  t && l(
35
- t.mode === "create" ? D.PAY_SCHEDULE_CREATED : D.PAY_SCHEDULE_UPDATED,
41
+ t.mode === "create" ? f.PAY_SCHEDULE_CREATED : f.PAY_SCHEDULE_UPDATED,
36
42
  { paySchedule: t.data }
37
43
  );
38
- }, { Fields: r } = o.form, { paymentSpeedDays: S, payPreviewLoading: g } = o.data, s = o.data.payPeriodPreview, b = {
44
+ }, { Fields: r } = i.form, { paymentSpeedDays: b, payPreviewLoading: k } = i.data, s = i.data.payPeriodPreview, E = {
39
45
  "Every week": e("frequencies.everyWeek"),
40
46
  "Every other week": e("frequencies.everyOtherWeek"),
41
47
  "Twice per month": e("frequencies.twicePerMonth"),
42
48
  Monthly: e("frequencies.monthly")
43
- }, k = {
49
+ }, R = {
44
50
  "1st15th": e("frequencyOptions.15thAndLast"),
45
51
  custom: e("frequencyOptions.custom")
46
- }, E = {
52
+ }, C = {
47
53
  Sunday: e("workweekStartDayOptions.sunday"),
48
54
  Monday: e("workweekStartDayOptions.monday"),
49
55
  Tuesday: e("workweekStartDayOptions.tuesday"),
@@ -52,12 +58,12 @@ function I({ onEvent: l, LoaderComponent: d, ...h }) {
52
58
  Friday: e("workweekStartDayOptions.friday"),
53
59
  Saturday: e("workweekStartDayOptions.saturday")
54
60
  };
55
- return /* @__PURE__ */ a(f, { error: o.errorHandling.errors, LoaderComponent: d, children: /* @__PURE__ */ a(q, { formHookResult: o, children: /* @__PURE__ */ a(A, { onSubmit: () => {
61
+ return /* @__PURE__ */ a(P, { error: i.errorHandling.errors, LoaderComponent: d, children: /* @__PURE__ */ a(L, { formHookResult: i, children: /* @__PURE__ */ a(T, { onSubmit: () => {
56
62
  v();
57
- }, children: /* @__PURE__ */ c(u, { flexDirection: "column", children: [
58
- /* @__PURE__ */ a(u, { justifyContent: "space-between", flexDirection: "column", gap: 4, children: /* @__PURE__ */ a("header", { children: /* @__PURE__ */ a(i.Heading, { as: "h2", children: o.status.mode === "create" ? e("headings.addPaySchedule") : e("headings.editPaySchedule") }) }) }),
59
- /* @__PURE__ */ a("div", { className: m.payScheduleContainer, children: /* @__PURE__ */ c(L, { gap: 32, gridTemplateColumns: { base: "1fr", small: "1fr 1fr" }, children: [
60
- /* @__PURE__ */ a("div", { className: m.payScheduleForm, children: /* @__PURE__ */ c(u, { flexDirection: "column", children: [
63
+ }, children: /* @__PURE__ */ y(p, { flexDirection: "column", children: [
64
+ /* @__PURE__ */ a(p, { justifyContent: "space-between", flexDirection: "column", gap: 4, children: /* @__PURE__ */ a("header", { children: /* @__PURE__ */ a(o.Heading, { as: "h2", children: i.status.mode === "create" ? e("headings.addPaySchedule") : e("headings.editPaySchedule") }) }) }),
65
+ /* @__PURE__ */ a("div", { className: u.payScheduleContainer, children: /* @__PURE__ */ y(F, { gap: 32, gridTemplateColumns: { base: "1fr", small: "1fr 1fr" }, children: [
66
+ /* @__PURE__ */ a("div", { className: u.payScheduleForm, children: /* @__PURE__ */ y(p, { flexDirection: "column", children: [
61
67
  /* @__PURE__ */ a(
62
68
  r.CustomName,
63
69
  {
@@ -70,7 +76,7 @@ function I({ onEvent: l, LoaderComponent: d, ...h }) {
70
76
  {
71
77
  label: e("labels.frequency"),
72
78
  placeholder: e("labels.frequencyPlaceholder"),
73
- getOptionLabel: (t) => b[t],
79
+ getOptionLabel: (t) => E[t],
74
80
  validationMessages: { REQUIRED: e("validations.frequency") }
75
81
  }
76
82
  ),
@@ -79,7 +85,7 @@ function I({ onEvent: l, LoaderComponent: d, ...h }) {
79
85
  {
80
86
  label: e("labels.frequencyOptions"),
81
87
  description: e("descriptions.frequencyOptionsDescription"),
82
- getOptionLabel: (t) => k[t] ?? t,
88
+ getOptionLabel: (t) => R[t] ?? t,
83
89
  validationMessages: { REQUIRED: e("validations.frequencyOptions") }
84
90
  }
85
91
  ),
@@ -87,9 +93,7 @@ function I({ onEvent: l, LoaderComponent: d, ...h }) {
87
93
  r.AnchorPayDate,
88
94
  {
89
95
  label: e("labels.firstPayDate"),
90
- description: e("descriptions.anchorPayDateDescription", {
91
- count: S
92
- }),
96
+ description: m ? m.anchorPayDateDescription : e("descriptions.anchorPayDateDescription", { count: b }),
93
97
  validationMessages: { REQUIRED: e("validations.firstPayDate") },
94
98
  minDate: /* @__PURE__ */ new Date()
95
99
  }
@@ -98,7 +102,7 @@ function I({ onEvent: l, LoaderComponent: d, ...h }) {
98
102
  r.AnchorEndOfPayPeriod,
99
103
  {
100
104
  label: e("labels.firstPayPeriodEndDate"),
101
- description: e("descriptions.anchorEndOfPayPeriodDescription"),
105
+ description: m?.anchorEndOfPayPeriodDescription ?? e("descriptions.anchorEndOfPayPeriodDescription"),
102
106
  validationMessages: { REQUIRED: e("validations.firstPayPeriodEndDate") }
103
107
  }
104
108
  ),
@@ -128,84 +132,84 @@ function I({ onEvent: l, LoaderComponent: d, ...h }) {
128
132
  label: e("labels.workweekStartDay"),
129
133
  placeholder: e("labels.workweekStartDayPlaceholder"),
130
134
  description: e("descriptions.workweekStartDayDescription"),
131
- getOptionLabel: (t) => E[t]
135
+ getOptionLabel: (t) => C[t]
132
136
  }
133
137
  )
134
138
  ] }) }),
135
- /* @__PURE__ */ a(u, { flexDirection: "column", gap: 4, justifyContent: "center", alignItems: "center", children: s && s[n] ? /* @__PURE__ */ c("div", { className: m.calendarContainer, children: [
136
- !g && /* @__PURE__ */ a(
137
- i.Select,
139
+ /* @__PURE__ */ a(p, { flexDirection: "column", gap: 4, justifyContent: "center", alignItems: "center", children: s && s[n] ? /* @__PURE__ */ y("div", { className: u.calendarContainer, "data-variant": c, children: [
140
+ !k && /* @__PURE__ */ a(
141
+ o.Select,
138
142
  {
139
143
  label: e("labels.preview"),
140
144
  placeholder: "",
141
145
  isRequired: !0,
142
- options: s.map((t, y) => ({
143
- value: String(y),
144
- label: P.formatPayPeriodRange(
146
+ options: s.map((t, h) => ({
147
+ value: String(h),
148
+ label: c === "management" ? `${t.startDate.toString()} — ${t.endDate.toString()}` : g.formatPayPeriodRange(
145
149
  t.startDate.toString(),
146
150
  t.endDate.toString()
147
151
  )
148
152
  })),
149
153
  value: String(n),
150
154
  onChange: (t) => {
151
- const y = Number(t);
152
- isNaN(y) || w(y);
155
+ const h = Number(t);
156
+ isNaN(h) || S(h);
153
157
  }
154
158
  }
155
159
  ),
156
160
  /* @__PURE__ */ a(
157
- i.CalendarPreview,
161
+ o.CalendarPreview,
158
162
  {
159
163
  dateRange: {
160
- start: p(s[n].startDate),
161
- end: p(s[n].endDate),
164
+ start: D(s[n].startDate),
165
+ end: D(s[n].endDate),
162
166
  label: e("payPreview.payPeriod") || "Pay Period"
163
167
  },
164
168
  highlightDates: [
165
169
  {
166
- date: p(s[n].checkDate),
170
+ date: D(s[n].checkDate),
167
171
  highlightColor: "primary",
168
172
  label: e("payPreview.payday") || "Payday"
169
173
  },
170
174
  {
171
- date: p(
175
+ date: D(
172
176
  s[n].runPayrollBy
173
177
  ),
174
178
  highlightColor: "secondary",
175
- label: e("payPreview.payrollDeadline") || "Payroll Deadline"
179
+ label: m?.payrollDeadline ?? e("payPreview.payrollDeadline")
176
180
  }
177
181
  ]
178
182
  },
179
183
  n
180
184
  )
181
- ] }) : /* @__PURE__ */ a("div", { className: m.calendarContainer, children: /* @__PURE__ */ a(
182
- i.Alert,
185
+ ] }) : /* @__PURE__ */ a("div", { className: u.calendarContainer, "data-variant": c, children: /* @__PURE__ */ a(
186
+ o.Alert,
183
187
  {
184
188
  status: "info",
185
189
  label: e("previewAlert.title", "Pay Schedule Preview"),
186
- children: /* @__PURE__ */ a(i.Text, { children: e(
190
+ children: /* @__PURE__ */ a(o.Text, { children: e(
187
191
  "previewAlert.description",
188
192
  "Complete all the required fields on the left to see a preview of your pay schedule."
189
193
  ) })
190
194
  }
191
195
  ) }) })
192
196
  ] }) }),
193
- /* @__PURE__ */ c(T, { children: [
197
+ /* @__PURE__ */ y(x, { children: [
194
198
  /* @__PURE__ */ a(
195
- i.Button,
199
+ o.Button,
196
200
  {
197
201
  variant: "secondary",
198
202
  onClick: () => {
199
- l(D.CANCEL);
203
+ l(f.CANCEL);
200
204
  },
201
205
  children: e("actions.cancel")
202
206
  }
203
207
  ),
204
- /* @__PURE__ */ a(i.Button, { type: "submit", isLoading: o.status.isPending, children: e("actions.save") })
208
+ /* @__PURE__ */ a(o.Button, { type: "submit", isLoading: i.status.isPending, children: e("actions.save") })
205
209
  ] })
206
210
  ] }) }) }) });
207
211
  }
208
212
  export {
209
- ee as PayScheduleForm
213
+ te as PayScheduleForm
210
214
  };
211
215
  //# sourceMappingURL=PayScheduleForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayScheduleForm.js","sources":["../../../../src/components/Company/PaySchedule/PayScheduleForm.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { usePayScheduleForm } from './shared/usePayScheduleForm'\nimport type {\n UsePayScheduleFormProps,\n PayScheduleFrequency,\n PayScheduleWorkweekStartDay,\n} from './shared/usePayScheduleForm'\nimport style from './PayScheduleForm.module.scss'\nimport { BaseBoundaries, BaseLayout } from '@/components/Base'\nimport { SDKFormProvider } from '@/partner-hook-utils/form/SDKFormProvider'\nimport { Form } from '@/components/Common/Form'\nimport { Flex, Grid, ActionsLayout } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport { componentEvents, type EventType } from '@/shared/constants'\nimport type { OnEventType } from '@/components/Base/useBase'\nimport { normalizeToDate } from '@/helpers/dateFormatting'\nimport type { LoaderComponentType } from '@/components/Base'\n\ninterface PayScheduleFormProps extends UsePayScheduleFormProps {\n onEvent: OnEventType<EventType, unknown>\n /** Custom loading indicator rendered while this component's async data is fetching. Overrides the indicator configured on `GustoProvider` for this instance only. */\n LoaderComponent?: LoaderComponentType\n}\n\n// Pay period preview dates are RFCDate (`YYYY-MM-DD`) instances; normalizeToDate parses\n// them as local midnight instead of new Date's UTC midnight, which CalendarPreview would\n// otherwise roll back a day for timezones behind UTC. The format is always valid here.\nconst toLocalDate = (rfcDate: { toString(): string }): Date => normalizeToDate(rfcDate.toString())!\n\n/** @internal */\nexport function PayScheduleForm({ onEvent, LoaderComponent, ...hookProps }: PayScheduleFormProps) {\n return (\n <BaseBoundaries componentName=\"Company.PayScheduleForm\" LoaderComponent={LoaderComponent}>\n <PayScheduleFormRoot onEvent={onEvent} LoaderComponent={LoaderComponent} {...hookProps} />\n </BaseBoundaries>\n )\n}\n\nfunction PayScheduleFormRoot({ onEvent, LoaderComponent, ...hookProps }: PayScheduleFormProps) {\n const { t } = useTranslation('Company.PaySchedule')\n const Components = useComponentContext()\n const dateFormatter = useDateFormatter()\n const paySchedule = usePayScheduleForm(hookProps)\n const [selectedPayPeriodIndex, setSelectedPayPeriodIndex] = useState(0)\n\n if (paySchedule.isLoading) {\n return (\n <BaseLayout\n isLoading\n error={paySchedule.errorHandling.errors}\n LoaderComponent={LoaderComponent}\n />\n )\n }\n\n const handleSubmit = async () => {\n const result = await paySchedule.actions.onSubmit()\n if (result) {\n onEvent(\n result.mode === 'create'\n ? componentEvents.PAY_SCHEDULE_CREATED\n : componentEvents.PAY_SCHEDULE_UPDATED,\n { paySchedule: result.data },\n )\n }\n }\n\n const { Fields } = paySchedule.form\n const { paymentSpeedDays, payPreviewLoading } = paySchedule.data\n const payPeriodPreview = paySchedule.data.payPeriodPreview\n\n const frequencyLabels: Record<PayScheduleFrequency, string> = {\n 'Every week': t('frequencies.everyWeek'),\n 'Every other week': t('frequencies.everyOtherWeek'),\n 'Twice per month': t('frequencies.twicePerMonth'),\n Monthly: t('frequencies.monthly'),\n }\n\n const twicePerMonthLabels: Record<string, string> = {\n '1st15th': t('frequencyOptions.15thAndLast'),\n custom: t('frequencyOptions.custom'),\n }\n\n const workweekStartDayLabels: Record<PayScheduleWorkweekStartDay, string> = {\n Sunday: t('workweekStartDayOptions.sunday'),\n Monday: t('workweekStartDayOptions.monday'),\n Tuesday: t('workweekStartDayOptions.tuesday'),\n Wednesday: t('workweekStartDayOptions.wednesday'),\n Thursday: t('workweekStartDayOptions.thursday'),\n Friday: t('workweekStartDayOptions.friday'),\n Saturday: t('workweekStartDayOptions.saturday'),\n }\n\n return (\n <BaseLayout error={paySchedule.errorHandling.errors} LoaderComponent={LoaderComponent}>\n <SDKFormProvider formHookResult={paySchedule}>\n <Form onSubmit={() => void handleSubmit()}>\n <Flex flexDirection=\"column\">\n <Flex justifyContent=\"space-between\" flexDirection=\"column\" gap={4}>\n <header>\n <Components.Heading as=\"h2\">\n {paySchedule.status.mode === 'create'\n ? t('headings.addPaySchedule')\n : t('headings.editPaySchedule')}\n </Components.Heading>\n </header>\n </Flex>\n <div className={style.payScheduleContainer}>\n <Grid gap={32} gridTemplateColumns={{ base: '1fr', small: '1fr 1fr' }}>\n <div className={style.payScheduleForm}>\n <Flex flexDirection=\"column\">\n <Fields.CustomName\n label={t('labels.name')}\n validationMessages={{ REQUIRED: t('validations.name') }}\n />\n <Fields.Frequency\n label={t('labels.frequency')}\n placeholder={t('labels.frequencyPlaceholder')}\n getOptionLabel={(entry: PayScheduleFrequency) => frequencyLabels[entry]}\n validationMessages={{ REQUIRED: t('validations.frequency') }}\n />\n {Fields.CustomTwicePerMonth && (\n <Fields.CustomTwicePerMonth\n label={t('labels.frequencyOptions')}\n description={t('descriptions.frequencyOptionsDescription')}\n getOptionLabel={(entry: string) => twicePerMonthLabels[entry] ?? entry}\n validationMessages={{ REQUIRED: t('validations.frequencyOptions') }}\n />\n )}\n <Fields.AnchorPayDate\n label={t('labels.firstPayDate')}\n description={t('descriptions.anchorPayDateDescription', {\n count: paymentSpeedDays,\n })}\n validationMessages={{ REQUIRED: t('validations.firstPayDate') }}\n minDate={new Date()}\n />\n <Fields.AnchorEndOfPayPeriod\n label={t('labels.firstPayPeriodEndDate')}\n description={t('descriptions.anchorEndOfPayPeriodDescription')}\n validationMessages={{ REQUIRED: t('validations.firstPayPeriodEndDate') }}\n />\n {Fields.Day1 && (\n <Fields.Day1\n label={t('labels.firstPayDayOfTheMonth')}\n validationMessages={{\n REQUIRED: t('validations.firstPayDayOfTheMonth'),\n DAY_RANGE: t('validations.dayRange'),\n }}\n />\n )}\n {Fields.Day2 && (\n <Fields.Day2\n label={t('labels.lastPayDayOfTheMonth')}\n validationMessages={{\n REQUIRED: t('validations.lastPayDayOfTheMonth'),\n DAY_RANGE: t('validations.dayRange'),\n }}\n />\n )}\n {Fields.WorkweekStartDay && (\n <Fields.WorkweekStartDay\n label={t('labels.workweekStartDay')}\n placeholder={t('labels.workweekStartDayPlaceholder')}\n description={t('descriptions.workweekStartDayDescription')}\n getOptionLabel={(entry: PayScheduleWorkweekStartDay) =>\n workweekStartDayLabels[entry]\n }\n />\n )}\n </Flex>\n </div>\n <Flex flexDirection=\"column\" gap={4} justifyContent=\"center\" alignItems=\"center\">\n {payPeriodPreview && payPeriodPreview[selectedPayPeriodIndex] ? (\n <div className={style.calendarContainer}>\n {!payPreviewLoading && (\n <Components.Select\n label={t('labels.preview')}\n placeholder=\"\"\n isRequired\n options={payPeriodPreview.map((period, index) => ({\n value: String(index),\n label: dateFormatter.formatPayPeriodRange(\n period.startDate.toString(),\n period.endDate.toString(),\n ),\n }))}\n value={String(selectedPayPeriodIndex)}\n onChange={(value: string) => {\n const numericValue = Number(value)\n if (!isNaN(numericValue)) {\n setSelectedPayPeriodIndex(numericValue)\n }\n }}\n />\n )}\n <Components.CalendarPreview\n key={selectedPayPeriodIndex}\n dateRange={{\n start: toLocalDate(payPeriodPreview[selectedPayPeriodIndex].startDate),\n end: toLocalDate(payPeriodPreview[selectedPayPeriodIndex].endDate),\n label: t('payPreview.payPeriod') || 'Pay Period',\n }}\n highlightDates={[\n {\n date: toLocalDate(payPeriodPreview[selectedPayPeriodIndex].checkDate),\n highlightColor: 'primary',\n label: t('payPreview.payday') || 'Payday',\n },\n {\n date: toLocalDate(\n payPeriodPreview[selectedPayPeriodIndex].runPayrollBy,\n ),\n highlightColor: 'secondary',\n label: t('payPreview.payrollDeadline') || 'Payroll Deadline',\n },\n ]}\n />\n </div>\n ) : (\n <div className={style.calendarContainer}>\n <Components.Alert\n status=\"info\"\n label={t('previewAlert.title', 'Pay Schedule Preview')}\n >\n <Components.Text>\n {t(\n 'previewAlert.description',\n 'Complete all the required fields on the left to see a preview of your pay schedule.',\n )}\n </Components.Text>\n </Components.Alert>\n </div>\n )}\n </Flex>\n </Grid>\n </div>\n <ActionsLayout>\n <Components.Button\n variant=\"secondary\"\n onClick={() => {\n onEvent(componentEvents.CANCEL)\n }}\n >\n {t('actions.cancel')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={paySchedule.status.isPending}>\n {t('actions.save')}\n </Components.Button>\n </ActionsLayout>\n </Flex>\n </Form>\n </SDKFormProvider>\n </BaseLayout>\n )\n}\n"],"names":["toLocalDate","rfcDate","normalizeToDate","PayScheduleForm","onEvent","LoaderComponent","hookProps","jsx","BaseBoundaries","PayScheduleFormRoot","t","useTranslation","Components","useComponentContext","dateFormatter","useDateFormatter","paySchedule","usePayScheduleForm","selectedPayPeriodIndex","setSelectedPayPeriodIndex","useState","BaseLayout","handleSubmit","result","componentEvents","Fields","paymentSpeedDays","payPreviewLoading","payPeriodPreview","frequencyLabels","twicePerMonthLabels","workweekStartDayLabels","SDKFormProvider","Form","jsxs","Flex","style","Grid","entry","period","index","value","numericValue","ActionsLayout"],"mappings":"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"}
1
+ {"version":3,"file":"PayScheduleForm.js","sources":["../../../../src/components/Company/PaySchedule/PayScheduleForm.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { usePayScheduleForm } from './shared/usePayScheduleForm'\nimport type {\n UsePayScheduleFormProps,\n PayScheduleFrequency,\n PayScheduleWorkweekStartDay,\n} from './shared/usePayScheduleForm'\nimport style from './PayScheduleForm.module.scss'\nimport { BaseBoundaries, BaseLayout } from '@/components/Base'\nimport { SDKFormProvider } from '@/partner-hook-utils/form/SDKFormProvider'\nimport { Form } from '@/components/Common/Form'\nimport { Flex, Grid, ActionsLayout } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport { componentEvents, type EventType } from '@/shared/constants'\nimport type { OnEventType } from '@/components/Base/useBase'\nimport { normalizeToDate } from '@/helpers/dateFormatting'\nimport type { LoaderComponentType } from '@/components/Base'\n\ninterface PayScheduleFormProps extends UsePayScheduleFormProps {\n variant?: 'onboarding' | 'management'\n copy?: {\n anchorPayDateDescription?: string\n anchorEndOfPayPeriodDescription: string\n payrollDeadline: string\n }\n onEvent: OnEventType<EventType, unknown>\n /** Custom loading indicator rendered while this component's async data is fetching. Overrides the indicator configured on `GustoProvider` for this instance only. */\n LoaderComponent?: LoaderComponentType\n}\n\n// Pay period preview dates are RFCDate (`YYYY-MM-DD`) instances; normalizeToDate parses\n// them as local midnight instead of new Date's UTC midnight, which CalendarPreview would\n// otherwise roll back a day for timezones behind UTC. The format is always valid here.\nconst toLocalDate = (rfcDate: { toString(): string }): Date => normalizeToDate(rfcDate.toString())!\n\n/** @internal */\nexport function PayScheduleForm({ onEvent, LoaderComponent, ...hookProps }: PayScheduleFormProps) {\n return (\n <BaseBoundaries componentName=\"Company.PayScheduleForm\" LoaderComponent={LoaderComponent}>\n <PayScheduleFormRoot onEvent={onEvent} LoaderComponent={LoaderComponent} {...hookProps} />\n </BaseBoundaries>\n )\n}\n\nfunction PayScheduleFormRoot({\n onEvent,\n LoaderComponent,\n variant = 'onboarding',\n copy,\n ...hookProps\n}: PayScheduleFormProps) {\n const { t } = useTranslation('Company.PaySchedule')\n const Components = useComponentContext()\n const dateFormatter = useDateFormatter()\n const paySchedule = usePayScheduleForm(hookProps)\n const [selectedPayPeriodIndex, setSelectedPayPeriodIndex] = useState(0)\n\n if (paySchedule.isLoading) {\n return (\n <BaseLayout\n isLoading\n error={paySchedule.errorHandling.errors}\n LoaderComponent={LoaderComponent}\n />\n )\n }\n\n const handleSubmit = async () => {\n const result = await paySchedule.actions.onSubmit()\n if (result) {\n onEvent(\n result.mode === 'create'\n ? componentEvents.PAY_SCHEDULE_CREATED\n : componentEvents.PAY_SCHEDULE_UPDATED,\n { paySchedule: result.data },\n )\n }\n }\n\n const { Fields } = paySchedule.form\n const { paymentSpeedDays, payPreviewLoading } = paySchedule.data\n const payPeriodPreview = paySchedule.data.payPeriodPreview\n\n const frequencyLabels: Record<PayScheduleFrequency, string> = {\n 'Every week': t('frequencies.everyWeek'),\n 'Every other week': t('frequencies.everyOtherWeek'),\n 'Twice per month': t('frequencies.twicePerMonth'),\n Monthly: t('frequencies.monthly'),\n }\n\n const twicePerMonthLabels: Record<string, string> = {\n '1st15th': t('frequencyOptions.15thAndLast'),\n custom: t('frequencyOptions.custom'),\n }\n\n const workweekStartDayLabels: Record<PayScheduleWorkweekStartDay, string> = {\n Sunday: t('workweekStartDayOptions.sunday'),\n Monday: t('workweekStartDayOptions.monday'),\n Tuesday: t('workweekStartDayOptions.tuesday'),\n Wednesday: t('workweekStartDayOptions.wednesday'),\n Thursday: t('workweekStartDayOptions.thursday'),\n Friday: t('workweekStartDayOptions.friday'),\n Saturday: t('workweekStartDayOptions.saturday'),\n }\n\n return (\n <BaseLayout error={paySchedule.errorHandling.errors} LoaderComponent={LoaderComponent}>\n <SDKFormProvider formHookResult={paySchedule}>\n <Form onSubmit={() => void handleSubmit()}>\n <Flex flexDirection=\"column\">\n <Flex justifyContent=\"space-between\" flexDirection=\"column\" gap={4}>\n <header>\n <Components.Heading as=\"h2\">\n {paySchedule.status.mode === 'create'\n ? t('headings.addPaySchedule')\n : t('headings.editPaySchedule')}\n </Components.Heading>\n </header>\n </Flex>\n <div className={style.payScheduleContainer}>\n <Grid gap={32} gridTemplateColumns={{ base: '1fr', small: '1fr 1fr' }}>\n <div className={style.payScheduleForm}>\n <Flex flexDirection=\"column\">\n <Fields.CustomName\n label={t('labels.name')}\n validationMessages={{ REQUIRED: t('validations.name') }}\n />\n <Fields.Frequency\n label={t('labels.frequency')}\n placeholder={t('labels.frequencyPlaceholder')}\n getOptionLabel={(entry: PayScheduleFrequency) => frequencyLabels[entry]}\n validationMessages={{ REQUIRED: t('validations.frequency') }}\n />\n {Fields.CustomTwicePerMonth && (\n <Fields.CustomTwicePerMonth\n label={t('labels.frequencyOptions')}\n description={t('descriptions.frequencyOptionsDescription')}\n getOptionLabel={(entry: string) => twicePerMonthLabels[entry] ?? entry}\n validationMessages={{ REQUIRED: t('validations.frequencyOptions') }}\n />\n )}\n <Fields.AnchorPayDate\n label={t('labels.firstPayDate')}\n description={\n copy\n ? copy.anchorPayDateDescription\n : t('descriptions.anchorPayDateDescription', { count: paymentSpeedDays })\n }\n validationMessages={{ REQUIRED: t('validations.firstPayDate') }}\n minDate={new Date()}\n />\n <Fields.AnchorEndOfPayPeriod\n label={t('labels.firstPayPeriodEndDate')}\n description={\n copy?.anchorEndOfPayPeriodDescription ??\n t('descriptions.anchorEndOfPayPeriodDescription')\n }\n validationMessages={{ REQUIRED: t('validations.firstPayPeriodEndDate') }}\n />\n {Fields.Day1 && (\n <Fields.Day1\n label={t('labels.firstPayDayOfTheMonth')}\n validationMessages={{\n REQUIRED: t('validations.firstPayDayOfTheMonth'),\n DAY_RANGE: t('validations.dayRange'),\n }}\n />\n )}\n {Fields.Day2 && (\n <Fields.Day2\n label={t('labels.lastPayDayOfTheMonth')}\n validationMessages={{\n REQUIRED: t('validations.lastPayDayOfTheMonth'),\n DAY_RANGE: t('validations.dayRange'),\n }}\n />\n )}\n {Fields.WorkweekStartDay && (\n <Fields.WorkweekStartDay\n label={t('labels.workweekStartDay')}\n placeholder={t('labels.workweekStartDayPlaceholder')}\n description={t('descriptions.workweekStartDayDescription')}\n getOptionLabel={(entry: PayScheduleWorkweekStartDay) =>\n workweekStartDayLabels[entry]\n }\n />\n )}\n </Flex>\n </div>\n <Flex flexDirection=\"column\" gap={4} justifyContent=\"center\" alignItems=\"center\">\n {payPeriodPreview && payPeriodPreview[selectedPayPeriodIndex] ? (\n <div className={style.calendarContainer} data-variant={variant}>\n {!payPreviewLoading && (\n <Components.Select\n label={t('labels.preview')}\n placeholder=\"\"\n isRequired\n options={payPeriodPreview.map((period, index) => ({\n value: String(index),\n label:\n variant === 'management'\n ? `${period.startDate.toString()} — ${period.endDate.toString()}`\n : dateFormatter.formatPayPeriodRange(\n period.startDate.toString(),\n period.endDate.toString(),\n ),\n }))}\n value={String(selectedPayPeriodIndex)}\n onChange={(value: string) => {\n const numericValue = Number(value)\n if (!isNaN(numericValue)) {\n setSelectedPayPeriodIndex(numericValue)\n }\n }}\n />\n )}\n <Components.CalendarPreview\n key={selectedPayPeriodIndex}\n dateRange={{\n start: toLocalDate(payPeriodPreview[selectedPayPeriodIndex].startDate),\n end: toLocalDate(payPeriodPreview[selectedPayPeriodIndex].endDate),\n label: t('payPreview.payPeriod') || 'Pay Period',\n }}\n highlightDates={[\n {\n date: toLocalDate(payPeriodPreview[selectedPayPeriodIndex].checkDate),\n highlightColor: 'primary',\n label: t('payPreview.payday') || 'Payday',\n },\n {\n date: toLocalDate(\n payPeriodPreview[selectedPayPeriodIndex].runPayrollBy,\n ),\n highlightColor: 'secondary',\n label: copy?.payrollDeadline ?? t('payPreview.payrollDeadline'),\n },\n ]}\n />\n </div>\n ) : (\n <div className={style.calendarContainer} data-variant={variant}>\n <Components.Alert\n status=\"info\"\n label={t('previewAlert.title', 'Pay Schedule Preview')}\n >\n <Components.Text>\n {t(\n 'previewAlert.description',\n 'Complete all the required fields on the left to see a preview of your pay schedule.',\n )}\n </Components.Text>\n </Components.Alert>\n </div>\n )}\n </Flex>\n </Grid>\n </div>\n <ActionsLayout>\n <Components.Button\n variant=\"secondary\"\n onClick={() => {\n onEvent(componentEvents.CANCEL)\n }}\n >\n {t('actions.cancel')}\n </Components.Button>\n <Components.Button type=\"submit\" isLoading={paySchedule.status.isPending}>\n {t('actions.save')}\n </Components.Button>\n </ActionsLayout>\n </Flex>\n </Form>\n </SDKFormProvider>\n </BaseLayout>\n )\n}\n"],"names":["toLocalDate","rfcDate","normalizeToDate","PayScheduleForm","onEvent","LoaderComponent","hookProps","jsx","BaseBoundaries","PayScheduleFormRoot","variant","copy","t","useTranslation","Components","useComponentContext","dateFormatter","useDateFormatter","paySchedule","usePayScheduleForm","selectedPayPeriodIndex","setSelectedPayPeriodIndex","useState","BaseLayout","handleSubmit","result","componentEvents","Fields","paymentSpeedDays","payPreviewLoading","payPeriodPreview","frequencyLabels","twicePerMonthLabels","workweekStartDayLabels","SDKFormProvider","Form","jsxs","Flex","style","Grid","entry","period","index","value","numericValue","ActionsLayout"],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- const e = "_payScheduleContainer_1glwl_1", a = "_payScheduleForm_1glwl_5", n = "_calendarContainer_1glwl_9", l = {
1
+ const e = "_payScheduleContainer_6fjx0_1", a = "_payScheduleForm_6fjx0_5", n = "_calendarContainer_6fjx0_9", o = {
2
2
  payScheduleContainer: e,
3
3
  payScheduleForm: a,
4
4
  calendarContainer: n
5
5
  };
6
6
  export {
7
7
  n as calendarContainer,
8
- l as default,
8
+ o as default,
9
9
  e as payScheduleContainer,
10
10
  a as payScheduleForm
11
11
  };