@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.
- package/CHANGELOG.md +52 -0
- package/dist/components/Base/Base.d.ts +2 -2
- package/dist/components/Base/Base.js.map +1 -1
- package/dist/components/Common/DateRangeFilter/DateRangeFilter.d.ts +1 -2
- package/dist/components/Common/DateRangeFilter/DateRangeFilter.js +42 -43
- package/dist/components/Common/DateRangeFilter/DateRangeFilter.js.map +1 -1
- package/dist/components/Common/Fields/PercentageField/PercentageField.js +44 -42
- package/dist/components/Common/Fields/PercentageField/PercentageField.js.map +1 -1
- package/dist/components/Common/UI/Box/Box.js +6 -6
- package/dist/components/Common/UI/Box/Box.js.map +1 -1
- package/dist/components/Common/UI/Box/Box.module.scss.js +8 -8
- package/dist/components/Common/UI/Box/BoxTypes.d.ts +1 -1
- package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
- package/dist/components/Common/UI/CalendarPreview/CalendarPreview.js +16 -14
- package/dist/components/Common/UI/CalendarPreview/CalendarPreview.js.map +1 -1
- package/dist/components/Common/UI/Dialog/Dialog.js +29 -28
- package/dist/components/Common/UI/Dialog/Dialog.js.map +1 -1
- package/dist/components/Common/UI/FileInput/FileInput.js +1 -1
- package/dist/components/Common/UI/FormBox/FormBox.d.ts +1 -1
- package/dist/components/Common/UI/FormBox/FormBox.js +9 -8
- package/dist/components/Common/UI/FormBox/FormBox.js.map +1 -1
- package/dist/components/Common/UI/FormBox/FormBox.module.scss.js +8 -6
- package/dist/components/Common/UI/FormBox/FormBox.module.scss.js.map +1 -1
- package/dist/components/Common/UI/FormBox/FormBoxTypes.d.ts +5 -1
- package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
- package/dist/components/Company/AssignSignatory/AssignSignatory.js +7 -10
- package/dist/components/Company/AssignSignatory/AssignSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js +6 -8
- package/dist/components/Company/AssignSignatory/AssignSignatorySelection.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js +8 -9
- package/dist/components/Company/AssignSignatory/CreateSignatory/Actions.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +18 -21
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js +11 -12
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatoryForm.js.map +1 -1
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +3 -4
- package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/Head.js +8 -9
- package/dist/components/Company/AssignSignatory/Head.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js +6 -7
- package/dist/components/Company/AssignSignatory/InviteSignatory/Actions.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +5 -8
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js +20 -21
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatoryForm.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +3 -4
- package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/TitleSelect.js +10 -12
- package/dist/components/Company/AssignSignatory/TitleSelect.js.map +1 -1
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js +5 -6
- package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/Actions.js +2 -3
- package/dist/components/Company/BankAccount/BankAccountForm/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/Form.js +9 -11
- package/dist/components/Company/BankAccount/BankAccountForm/Form.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/Head.js +2 -3
- package/dist/components/Company/BankAccount/BankAccountForm/Head.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountForm/context.js +3 -4
- package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountList/Actions.js +6 -7
- package/dist/components/Company/BankAccount/BankAccountList/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js +7 -8
- package/dist/components/Company/BankAccount/BankAccountVerify/Actions.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/Form.js +4 -6
- package/dist/components/Company/BankAccount/BankAccountVerify/Form.js.map +1 -1
- package/dist/components/Company/BankAccount/stateMachine.d.ts +0 -1
- package/dist/components/Company/BankAccount/stateMachine.js +33 -35
- package/dist/components/Company/BankAccount/stateMachine.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/Actions.js +5 -6
- package/dist/components/Company/DocumentSigner/DocumentList/Actions.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +11 -14
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +3 -4
- package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +7 -8
- package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
- package/dist/components/Company/DocumentSigner/stateMachine.d.ts +0 -1
- package/dist/components/Company/DocumentSigner/stateMachine.js +27 -29
- package/dist/components/Company/DocumentSigner/stateMachine.js.map +1 -1
- package/dist/components/Company/FederalTaxes/Actions.js +6 -7
- package/dist/components/Company/FederalTaxes/Actions.js.map +1 -1
- package/dist/components/Company/FederalTaxes/FederalTaxes.js +7 -10
- package/dist/components/Company/FederalTaxes/FederalTaxes.js.map +1 -1
- package/dist/components/Company/FederalTaxes/Form.js +4 -4
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js +5 -6
- package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
- package/dist/components/Company/Industry/Actions.js +5 -6
- package/dist/components/Company/Industry/Actions.js.map +1 -1
- package/dist/components/Company/Industry/Context.js +6 -7
- package/dist/components/Company/Industry/Context.js.map +1 -1
- package/dist/components/Company/Industry/Edit.js +10 -12
- package/dist/components/Company/Industry/Edit.js.map +1 -1
- package/dist/components/Company/Industry/IndustrySelect.js +6 -8
- package/dist/components/Company/Industry/IndustrySelect.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/Actions.js +6 -7
- package/dist/components/Company/Locations/LocationForm/Actions.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/Form.js +4 -6
- package/dist/components/Company/Locations/LocationForm/Form.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/LocationForm.js +11 -14
- package/dist/components/Company/Locations/LocationForm/LocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js +3 -4
- package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/Actions.js +2 -3
- package/dist/components/Company/Locations/LocationsList/Actions.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/LocationsList.js +9 -12
- package/dist/components/Company/Locations/LocationsList/LocationsList.js.map +1 -1
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js +3 -4
- package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/Completed.js +5 -6
- package/dist/components/Company/OnboardingOverview/Completed.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/MissingRequirements.js +9 -10
- package/dist/components/Company/OnboardingOverview/MissingRequirements.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/OnboardingOverview.js +2 -5
- package/dist/components/Company/OnboardingOverview/OnboardingOverview.js.map +1 -1
- package/dist/components/Company/OnboardingOverview/context.js +3 -4
- package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
- package/dist/components/Company/PaySchedule/PayScheduleForm.js +47 -51
- package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
- package/dist/components/Company/PaySchedule/payScheduleStateMachine.d.ts +0 -1
- package/dist/components/Company/PaySchedule/payScheduleStateMachine.js +26 -28
- package/dist/components/Company/PaySchedule/payScheduleStateMachine.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxes.d.ts +2 -1
- package/dist/components/Company/StateTaxes/StateTaxes.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesComponents.d.ts +2 -0
- package/dist/components/Company/StateTaxes/StateTaxesComponents.js +29 -16
- package/dist/components/Company/StateTaxes/StateTaxesComponents.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js +2 -3
- package/dist/components/Company/StateTaxes/StateTaxesForm/Actions.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/Form.d.ts +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/Form.js +21 -32
- package/dist/components/Company/StateTaxes/StateTaxesForm/Form.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js +67 -75
- package/dist/components/Company/StateTaxes/StateTaxesForm/StateTaxesForm.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +3 -4
- package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js +6 -7
- package/dist/components/Company/StateTaxes/StateTaxesList/Actions.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/List.js +62 -47
- package/dist/components/Company/StateTaxes/StateTaxesList/List.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.d.ts +1 -0
- package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js +26 -23
- package/dist/components/Company/StateTaxes/StateTaxesList/StateTaxesList.js.map +1 -1
- package/dist/components/Company/StateTaxes/StateTaxesList/context.d.ts +1 -0
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js +3 -4
- package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
- package/dist/components/Company/StateTaxes/TaxRateManagement/AddRateAction.d.ts +12 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/AddRateAction.js +36 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/AddRateAction.js.map +1 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/AddTaxRateDialog.d.ts +10 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/AddTaxRateDialog.js +110 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/AddTaxRateDialog.js.map +1 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateHistorySection.d.ts +18 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateHistorySection.js +55 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateHistorySection.js.map +1 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateManagement.d.ts +47 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateManagement.js +108 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/TaxRateManagement.js.map +1 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/context.d.ts +25 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +22 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/index.d.ts +1 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/toHistoryRows.d.ts +29 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/toHistoryRows.js +34 -0
- package/dist/components/Company/StateTaxes/TaxRateManagement/toHistoryRows.js.map +1 -0
- package/dist/components/Company/StateTaxes/shared/RequirementFields.d.ts +17 -0
- package/dist/components/Company/StateTaxes/shared/RequirementFields.js +24 -0
- package/dist/components/Company/StateTaxes/shared/RequirementFields.js.map +1 -0
- package/dist/components/Company/StateTaxes/{StateTaxesForm → shared}/applicableIf.d.ts +1 -1
- package/dist/components/Company/StateTaxes/shared/applicableIf.js.map +1 -0
- package/dist/components/Company/StateTaxes/shared/applicableIf.test.d.ts +1 -0
- package/dist/components/Company/StateTaxes/shared/buildRequirementSchema.d.ts +19 -0
- package/dist/components/Company/StateTaxes/shared/buildRequirementSchema.js +38 -0
- package/dist/components/Company/StateTaxes/shared/buildRequirementSchema.js.map +1 -0
- package/dist/components/Company/StateTaxes/shared/requirementValue.d.ts +2 -0
- package/dist/components/Company/StateTaxes/shared/requirementValue.js +7 -0
- package/dist/components/Company/StateTaxes/shared/requirementValue.js.map +1 -0
- package/dist/components/Company/StateTaxes/shared/rhfKey.d.ts +23 -0
- package/dist/components/Company/StateTaxes/shared/rhfKey.js +13 -0
- package/dist/components/Company/StateTaxes/shared/rhfKey.js.map +1 -0
- package/dist/components/Company/StateTaxes/shared/rhfKey.test.d.ts +1 -0
- package/dist/components/Company/StateTaxes/stateTaxesStateMachine.d.ts +1 -1
- package/dist/components/Company/StateTaxes/stateTaxesStateMachine.js +40 -20
- package/dist/components/Company/StateTaxes/stateTaxesStateMachine.js.map +1 -1
- package/dist/components/Company/exports/companyOnboarding.d.ts +1 -0
- package/dist/components/Company/exports/companyOnboarding.js +12 -10
- package/dist/components/Company/exports/companyOnboarding.js.map +1 -1
- package/dist/components/Contractor/Address/Address.js +83 -76
- package/dist/components/Contractor/Address/Address.js.map +1 -1
- package/dist/components/Contractor/ContractorList/management/ManagementContractorList.d.ts +39 -0
- package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js +90 -0
- package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js.map +1 -0
- package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.d.ts +22 -0
- package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js +247 -0
- package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js.map +1 -0
- package/dist/components/Contractor/ContractorList/{index.d.ts → onboarding/ContractorList.d.ts} +3 -3
- package/dist/components/Contractor/ContractorList/onboarding/ContractorList.js +51 -0
- package/dist/components/Contractor/ContractorList/onboarding/ContractorList.js.map +1 -0
- package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.d.ts +16 -0
- package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.js +113 -0
- package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.js.map +1 -0
- package/dist/components/Contractor/ContractorList/shared/index.d.ts +1 -0
- package/dist/components/Contractor/ContractorList/shared/useContractorList.d.ts +87 -0
- package/dist/components/Contractor/ContractorList/shared/useContractorList.js +110 -0
- package/dist/components/Contractor/ContractorList/shared/useContractorList.js.map +1 -0
- package/dist/components/Contractor/Documents/DocumentSigner/stateMachine.d.ts +0 -1
- package/dist/components/Contractor/Documents/DocumentSigner/stateMachine.js +18 -20
- package/dist/components/Contractor/Documents/DocumentSigner/stateMachine.js.map +1 -1
- package/dist/components/Contractor/Documents/DocumentsList/DocumentsList.js +2 -3
- package/dist/components/Contractor/Documents/DocumentsList/DocumentsList.js.map +1 -1
- package/dist/components/Contractor/Documents/SignatureForm/SignatureForm.js +170 -123
- package/dist/components/Contractor/Documents/SignatureForm/SignatureForm.js.map +1 -1
- package/dist/components/Contractor/Documents/SignatureForm/SignatureForm.module.scss.js +12 -0
- package/dist/components/Contractor/Documents/SignatureForm/SignatureForm.module.scss.js.map +1 -0
- package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/fields.js +40 -39
- package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/fields.js.map +1 -1
- package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/useContractorSignatureForm.js +91 -88
- package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/useContractorSignatureForm.js.map +1 -1
- package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/w9Fields.d.ts +0 -33
- package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/w9Fields.js +77 -86
- package/dist/components/Contractor/Documents/SignatureForm/useContractorSignatureForm/w9Fields.js.map +1 -1
- package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js +1 -1
- package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js.map +1 -1
- package/dist/components/Contractor/OnboardingSummary/OnboardingSummary.js +9 -10
- package/dist/components/Contractor/OnboardingSummary/OnboardingSummary.js.map +1 -1
- package/dist/components/Contractor/PaymentMethod/PaymentMethod.js +2 -3
- package/dist/components/Contractor/PaymentMethod/PaymentMethod.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +162 -251
- package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.d.ts +2 -1
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.js +2 -2
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentFormSchema.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js +45 -44
- package/dist/components/Contractor/Payments/CreatePayment/EditContractorPaymentPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js +2 -3
- package/dist/components/Contractor/Payments/CreatePayment/FastAchSubmissionBlockerBanner.js.map +1 -1
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js +2 -3
- package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -1
- package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.d.ts +32 -0
- package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.js +107 -0
- package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.js.map +1 -0
- package/dist/components/Contractor/Payments/shared/usePaymentAmountsEditor.test.d.ts +1 -0
- package/dist/components/Contractor/Profile/BusinessSelfOnboardingProfile.js +6 -7
- package/dist/components/Contractor/Profile/BusinessSelfOnboardingProfile.js.map +1 -1
- package/dist/components/Contractor/Profile/ContractorProfile.js +63 -57
- package/dist/components/Contractor/Profile/ContractorProfile.js.map +1 -1
- package/dist/components/Contractor/Profile/IndividualSelfOnboardingProfile.js +18 -19
- package/dist/components/Contractor/Profile/IndividualSelfOnboardingProfile.js.map +1 -1
- package/dist/components/Contractor/Submit/Submit.js +118 -102
- package/dist/components/Contractor/Submit/Submit.js.map +1 -1
- package/dist/components/Contractor/exports/contractorManagement.d.ts +1 -0
- package/dist/components/Contractor/exports/contractorManagement.js +12 -10
- package/dist/components/Contractor/exports/contractorManagement.js.map +1 -1
- package/dist/components/Contractor/exports/contractorOnboarding.d.ts +1 -1
- package/dist/components/Contractor/exports/contractorOnboarding.js +1 -1
- package/dist/components/Contractor/shared/useContractorHasSignedW9.d.ts +8 -0
- package/dist/components/Contractor/shared/useContractorHasSignedW9.js +10 -0
- package/dist/components/Contractor/shared/useContractorHasSignedW9.js.map +1 -0
- package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js +32 -33
- package/dist/components/Employee/Compensation/management/ManagementCompensationFormBody.js.map +1 -1
- package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js +2 -3
- package/dist/components/Employee/Compensation/shared/AddCompensationFormBody.js.map +1 -1
- package/dist/components/Employee/Deductions/shared/DeductionsForm/ChildSupportFormView.js +6 -7
- package/dist/components/Employee/Deductions/shared/DeductionsForm/ChildSupportFormView.js.map +1 -1
- package/dist/components/Employee/Deductions/shared/DeductionsForm/StandardDeductionForm.js +14 -15
- package/dist/components/Employee/Deductions/shared/DeductionsForm/StandardDeductionForm.js.map +1 -1
- package/dist/components/Employee/Documents/management/DocumentManager.js +6 -7
- package/dist/components/Employee/Documents/management/DocumentManager.js.map +1 -1
- package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js +6 -7
- package/dist/components/Employee/Documents/management/DocumentsCard/DocumentsCard.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.js +4 -5
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/Actions.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/DocumentList.js +10 -13
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.js +5 -6
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.module.scss.js +8 -0
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/List.module.scss.js.map +1 -0
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +3 -4
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js +22 -21
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js +6 -6
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.js +5 -4
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilitySchema.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.js +3 -4
- package/dist/components/Employee/Documents/onboarding/DocumentSigner/I9SignatureForm/I9SignatureForm.js.map +1 -1
- package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js +6 -7
- package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js.map +1 -1
- package/dist/components/Employee/Documents/shared/SignatureForm/SignatureForm.js +11 -12
- package/dist/components/Employee/Documents/shared/SignatureForm/SignatureForm.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.js +15 -16
- package/dist/components/Employee/FederalTaxes/management/FederalTaxesCard/FederalTaxesCard.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/management/FederalTaxesEditForm.js +6 -7
- package/dist/components/Employee/FederalTaxes/management/FederalTaxesEditForm.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js +11 -12
- package/dist/components/Employee/FederalTaxes/onboarding/FederalTaxes.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/shared/FederalTaxesView.js +1 -1
- package/dist/components/Employee/HomeAddress/management/HomeAddressCard/HomeAddressCard.js +7 -8
- package/dist/components/Employee/HomeAddress/management/HomeAddressCard/HomeAddressCard.js.map +1 -1
- package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +4 -4
- package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js +29 -23
- package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js +26 -20
- package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/onboarding/ListView.js +133 -99
- package/dist/components/Employee/PaymentMethod/onboarding/ListView.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/onboarding/ListView.module.scss.js +8 -0
- package/dist/components/Employee/PaymentMethod/onboarding/ListView.module.scss.js.map +1 -0
- package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.d.ts +1 -1
- package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js +19 -20
- package/dist/components/Employee/PaymentMethod/shared/BankFormBody/BankFormBody.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/shared/SplitPaymentsFormBody/SplitPaymentsFormBody.js +92 -86
- package/dist/components/Employee/PaymentMethod/shared/SplitPaymentsFormBody/SplitPaymentsFormBody.js.map +1 -1
- package/dist/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.js +65 -64
- package/dist/components/Employee/Paystubs/management/PaystubsCard/PaystubsCard.js.map +1 -1
- package/dist/components/Employee/Profile/management/ProfileCard/ProfileCard.js +7 -8
- package/dist/components/Employee/Profile/management/ProfileCard/ProfileCard.js.map +1 -1
- package/dist/components/Employee/Profile/management/ProfileEditForm.js +7 -7
- package/dist/components/Employee/Profile/onboarding/AdminProfile.js +6 -6
- package/dist/components/Employee/Profile/onboarding/EmployeeProfile.js +6 -6
- package/dist/components/Employee/Profile/shared/useHomeAddressForm/useCurrentHomeAddressForm.d.ts +1 -0
- package/dist/components/Employee/Profile/shared/useHomeAddressForm/useCurrentHomeAddressForm.js.map +1 -1
- package/dist/components/Employee/Profile/shared/useWorkAddressForm/useCurrentWorkAddressForm.d.ts +1 -0
- package/dist/components/Employee/Profile/shared/useWorkAddressForm/useCurrentWorkAddressForm.js.map +1 -1
- package/dist/components/Employee/StateTaxes/management/StateTaxesCard/StateTaxesCard.js +11 -12
- package/dist/components/Employee/StateTaxes/management/StateTaxesCard/StateTaxesCard.js.map +1 -1
- package/dist/components/Employee/StateTaxes/management/StateTaxesEditForm.js +9 -10
- package/dist/components/Employee/StateTaxes/management/StateTaxesEditForm.js.map +1 -1
- package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js +6 -7
- package/dist/components/Employee/StateTaxes/onboarding/StateTaxes.js.map +1 -1
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js +44 -45
- package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/useEmployeeStateTaxesForm.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +23 -22
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js +27 -27
- package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js +9 -10
- package/dist/components/Employee/Terminations/TerminationFlow/TerminationFlowComponents.js.map +1 -1
- package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js +2 -3
- package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js.map +1 -1
- package/dist/components/Employee/WorkAddress/management/WorkAddressCard/WorkAddressCard.js +16 -17
- package/dist/components/Employee/WorkAddress/management/WorkAddressCard/WorkAddressCard.js.map +1 -1
- package/dist/components/Flow/Flow.js +1 -1
- package/dist/components/Flow/FlowHeader.js +3 -4
- package/dist/components/Flow/FlowHeader.js.map +1 -1
- package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js +8 -9
- package/dist/components/InformationRequests/InformationRequestForm/InformationRequestForm.js.map +1 -1
- package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js +7 -8
- package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js.map +1 -1
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js +37 -37
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js.map +1 -1
- package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js +8 -9
- package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js.map +1 -1
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +7 -8
- package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js +10 -12
- package/dist/components/Payroll/OffCyclePayPeriodDateForm/OffCyclePayPeriodDateFormPresentation.js.map +1 -1
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js +0 -1
- package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js +7 -8
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js.map +1 -1
- package/dist/components/Payroll/PayrollHistory/PayrollHistory.d.ts +3 -3
- package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +54 -50
- package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +80 -69
- package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollList.js +20 -18
- package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +138 -136
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js +10 -12
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.module.scss.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +4 -4
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js +2 -3
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchSubmissionBlockerBanner.js.map +1 -1
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js +2 -3
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesList/RecoveryCasesList.js.map +1 -1
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js +1 -2
- package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js.map +1 -1
- package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js +2 -3
- package/dist/components/Payroll/RecoveryCases/useRecoveryCaseErrorCode.js.map +1 -1
- package/dist/components/Payroll/usePreparedPayrollData.js +8 -9
- package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js +2 -3
- package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js.map +1 -1
- package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js +4 -4
- package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js +4 -4
- package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.js +34 -36
- package/dist/components/TimeOff/TimeOffFlow/TimeOffFlowComponents.js.map +1 -1
- package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js +4 -4
- package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js +24 -25
- package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js.map +1 -1
- package/dist/components/index.d.ts +40 -0
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.d.ts +6 -0
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +29 -28
- package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
- package/dist/contexts/LocaleProvider/useLocale.d.ts +1 -9
- package/dist/contexts/LocaleProvider/useLocale.js +5 -15
- package/dist/contexts/LocaleProvider/useLocale.js.map +1 -1
- package/dist/contexts/NonceProvider/index.d.ts +1 -0
- package/dist/contexts/NonceProvider/useNonce.d.ts +37 -0
- package/dist/contexts/NonceProvider/useNonce.js +7 -0
- package/dist/contexts/NonceProvider/useNonce.js.map +1 -0
- package/dist/contexts/ThemeProvider/ThemeProvider.js +25 -24
- package/dist/contexts/ThemeProvider/ThemeProvider.js.map +1 -1
- package/dist/contexts/index.d.ts +1 -0
- package/dist/hooks/useDateRangeFilter/useDateRangeFilter.d.ts +12 -7
- package/dist/hooks/useDateRangeFilter/useDateRangeFilter.js +25 -21
- package/dist/hooks/useDateRangeFilter/useDateRangeFilter.js.map +1 -1
- package/dist/i18n/I18n.js +1 -0
- package/dist/i18n/I18n.js.map +1 -1
- package/dist/i18n/en/Company.StateTaxes.json.js +6 -4
- package/dist/i18n/en/Company.StateTaxes.json.js.map +1 -1
- package/dist/i18n/en/Contractor.Address.json.js +22 -20
- package/dist/i18n/en/Contractor.Address.json.js.map +1 -1
- package/dist/i18n/en/Contractor.ContractorList.json.js +14 -12
- package/dist/i18n/en/Contractor.ContractorList.json.js.map +1 -1
- package/dist/i18n/en/Contractor.ManagementContractorList.json.js +60 -0
- package/dist/i18n/en/Contractor.ManagementContractorList.json.js.map +1 -0
- package/dist/i18n/en/Contractor.Profile.json.js +13 -11
- package/dist/i18n/en/Contractor.Profile.json.js.map +1 -1
- package/dist/i18n/en/Contractor.SignatureForm.json.js +5 -5
- package/dist/i18n/en/Employee.Management.PaymentMethodBankForm.json.js +18 -16
- package/dist/i18n/en/Employee.Management.PaymentMethodBankForm.json.js.map +1 -1
- package/dist/i18n/en/Employee.Management.PaymentMethodSplitForm.json.js +2 -2
- package/dist/i18n/en/Employee.PaymentMethod.json.js +74 -72
- package/dist/i18n/en/Employee.PaymentMethod.json.js.map +1 -1
- package/dist/i18n/en/Employee.SplitPaymentsFormBody.json.js +2 -2
- package/dist/i18n/en/Payroll.PayrollHistory.json.js +8 -8
- package/dist/i18n/en/Payroll.PayrollList.json.js +23 -23
- package/dist/i18n/types.d.ts +215 -17
- package/dist/index.d.ts +6 -3
- package/dist/index.js +15 -13
- package/dist/index.js.map +1 -1
- package/dist/models/external.d.ts +4 -0
- package/dist/partner-hook-utils/form/SDKFormProvider.js +39 -24
- package/dist/partner-hook-utils/form/SDKFormProvider.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/CheckboxHookField.js +12 -15
- package/dist/partner-hook-utils/form/fields/CheckboxHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/NumberInputHookField.js +16 -19
- package/dist/partner-hook-utils/form/fields/NumberInputHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js +13 -16
- package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/SelectHookField.js +12 -15
- package/dist/partner-hook-utils/form/fields/SelectHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/SwitchHookField.js +18 -21
- package/dist/partner-hook-utils/form/fields/SwitchHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/fields/TextInputHookField.js +9 -12
- package/dist/partner-hook-utils/form/fields/TextInputHookField.js.map +1 -1
- package/dist/partner-hook-utils/form/preprocessors.d.ts +2 -2
- package/dist/partner-hook-utils/form/preprocessors.js +8 -7
- package/dist/partner-hook-utils/form/preprocessors.js.map +1 -1
- package/dist/partner-hook-utils/form/preprocessors.test.d.ts +1 -0
- package/dist/shared/constants.d.ts +12 -0
- package/dist/shared/constants.js +23 -17
- package/dist/shared/constants.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/Helpers.d.ts +1 -1
- package/docs/guides/endpoint-inventory.json +61 -27
- package/package.json +19 -17
- package/dist/components/Company/StateTaxes/StateTaxesForm/applicableIf.js.map +0 -1
- package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.d.ts +0 -4
- package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.js +0 -5
- package/dist/components/Company/StateTaxes/StateTaxesForm/rhfKey.js.map +0 -1
- package/dist/components/Contractor/ContractorList/index.js +0 -150
- package/dist/components/Contractor/ContractorList/index.js.map +0 -1
- package/dist/components/Contractor/ContractorList/useContractorList.d.ts +0 -18
- package/dist/components/Contractor/ContractorList/useContractorList.js +0 -15
- package/dist/components/Contractor/ContractorList/useContractorList.js.map +0 -1
- /package/dist/components/Company/StateTaxes/{StateTaxesForm/applicableIf.test.d.ts → TaxRateManagement/toHistoryRows.test.d.ts} +0 -0
- /package/dist/components/Company/StateTaxes/{StateTaxesForm → shared}/applicableIf.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Address.js","sources":["../../../../src/components/Contractor/Address/Address.tsx"],"sourcesContent":["import type { JSX } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport classNames from 'classnames'\nimport type { FallbackProps } from 'react-error-boundary'\nimport styles from './Address.module.scss'\nimport { useContractorAddressForm } from './shared/useContractorAddressForm'\nimport type { ContractorAddressOptionalFieldsToRequire } from './shared/useContractorAddressForm'\nimport type { AddressDefaultValues } from './types'\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 { useI18n, useComponentDictionary } from '@/i18n'\nimport type { ResourceDictionary } from '@/types/Helpers'\nimport { contractorEvents, type EventType } from '@/shared/constants'\nimport type { OnEventType } from '@/components/Base/useBase'\n\n// The hook defaults to the API contract, which treats every address field as\n// optional. The SDK's address form has always required a complete mailing\n// address, so it opts those fields back into being required here.\nconst SDK_REQUIRED_ADDRESS_FIELDS: ContractorAddressOptionalFieldsToRequire = {\n update: ['street1', 'city', 'state', 'zip'],\n}\n\n/**\n * Props for {@link Address}.\n *\n * @public\n */\nexport interface AddressProps {\n /** The associated contractor identifier. */\n contractorId: string\n /** Pre-fill values for address fields. Server data takes precedence when the contractor already has an address on file. */\n defaultValues?: AddressDefaultValues\n /** Callback invoked each time the component emits an event. */\n onEvent: OnEventType<EventType, unknown>\n /** Overrides for the component's i18n strings. */\n dictionary?: ResourceDictionary<'Contractor.Address'>\n /** Optional class applied to the wrapping `<section>`. */\n className?: string\n /** Custom React component rendered when an unhandled error is caught by the component-level error boundary. */\n FallbackComponent?: (props: FallbackProps) => JSX.Element\n}\n\n/**\n * Form for collecting and updating a contractor's mailing address. Renders a business or home address title based on the contractor type.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/address/updated` | Fired after the address is saved | The updated `ContractorAddress` entity |\n * | `contractor/address/done` | Fired after a successful save so the parent flow can advance | — |\n *\n * @param props - See {@link AddressProps}.\n * @returns The contractor address form.\n * @public\n *\n * @example\n * ```tsx\n * import { ContractorOnboarding } from '@gusto/embedded-react-sdk'\n *\n * function MyComponent() {\n * return (\n * <ContractorOnboarding.Address\n * contractorId=\"contractor-uuid\"\n * onEvent={() => {}}\n * />\n * )\n * }\n * ```\n */\nexport function Address({ onEvent, FallbackComponent, ...rootProps }: AddressProps) {\n return (\n <BaseBoundaries componentName=\"Contractor.Address\" FallbackComponent={FallbackComponent}>\n <AddressRoot onEvent={onEvent} {...rootProps} />\n </BaseBoundaries>\n )\n}\n\nfunction AddressRoot({\n contractorId,\n defaultValues,\n onEvent,\n dictionary,\n className,\n}: Omit<AddressProps, 'FallbackComponent'>) {\n useComponentDictionary('Contractor.Address', dictionary)\n useI18n('Contractor.Address')\n const { t } = useTranslation('Contractor.Address')\n const { t: tCommon } = useTranslation('common')\n const Components = useComponentContext()\n\n const contractorAddress = useContractorAddressForm({\n contractorId,\n optionalFieldsToRequire: SDK_REQUIRED_ADDRESS_FIELDS,\n defaultValues,\n })\n\n if (contractorAddress.isLoading) {\n return <BaseLayout isLoading error={contractorAddress.errorHandling.errors} />\n }\n\n const { Fields } = contractorAddress.form\n const isBusiness = contractorAddress.data.contractorType === 'Business'\n\n const handleSubmit = async () => {\n const result = await contractorAddress.actions.onSubmit()\n if (result) {\n onEvent(contractorEvents.CONTRACTOR_ADDRESS_UPDATED, result.data)\n onEvent(contractorEvents.CONTRACTOR_ADDRESS_DONE)\n }\n }\n\n return (\n <section className={classNames(styles.container, className)}>\n <BaseLayout error={contractorAddress.errorHandling.errors}>\n <SDKFormProvider formHookResult={contractorAddress}>\n <Form onSubmit={() => void handleSubmit()}>\n <Flex flexDirection=\"column\" gap={32} alignItems=\"stretch\">\n <header>\n <Flex flexDirection=\"column\" gap={4}>\n <Components.Heading as=\"h2\">\n {isBusiness ? t('businessAddressTitle') : t('homeAddressTitle')}\n </Components.Heading>\n <Components.Text variant=\"supporting\">\n {isBusiness ? t('businessAddressDescription') : t('homeAddressDescription')}\n </Components.Text>\n </Flex>\n </header>\n\n <Grid gridTemplateColumns={{ base: '1fr', small: ['1fr', '1fr'] }} gap={20}>\n <Fields.Street1\n label={t('street1')}\n validationMessages={{ REQUIRED: t('validations.street1') }}\n />\n <Fields.Street2 label={t('street2')} />\n <Fields.City\n label={t('city')}\n validationMessages={{ REQUIRED: t('validations.city') }}\n />\n <Fields.State\n label={t('state')}\n placeholder={t('statePlaceholder')}\n validationMessages={{ REQUIRED: t('validations.state') }}\n getOptionLabel={(abbr: string) =>\n tCommon(`statesHash.${abbr}`, { defaultValue: abbr })\n }\n />\n <Fields.Zip\n label={t('zip')}\n validationMessages={{\n REQUIRED: t('validations.zip'),\n INVALID_ZIP: t('validations.zipInvalid'),\n }}\n />\n </Grid>\n\n <ActionsLayout>\n <Components.Button type=\"submit\" isDisabled={contractorAddress.status.isPending}>\n {contractorAddress.status.isPending ? t('submitting') : t('submit')}\n </Components.Button>\n </ActionsLayout>\n </Flex>\n </Form>\n </SDKFormProvider>\n </BaseLayout>\n </section>\n )\n}\n"],"names":["SDK_REQUIRED_ADDRESS_FIELDS","Address","onEvent","FallbackComponent","rootProps","jsx","BaseBoundaries","AddressRoot","contractorId","defaultValues","dictionary","className","useComponentDictionary","useI18n","useTranslation","tCommon","Components","useComponentContext","contractorAddress","useContractorAddressForm","BaseLayout","Fields","isBusiness","handleSubmit","result","contractorEvents","classNames","styles","SDKFormProvider","Form","jsxs","Flex","Grid","abbr","ActionsLayout"],"mappings":";;;;;;;;;;;;;;;;AAqBA,MAAMA,IAAwE;AAAA,EAC5E,QAAQ,CAAC,WAAW,QAAQ,SAAS,KAAK;AAC5C;AAiDO,SAASC,EAAQ,EAAE,SAAAC,GAAS,mBAAAC,GAAmB,GAAGC,KAA2B;AAClF,SACE,gBAAAC,EAACC,GAAA,EAAe,eAAc,sBAAqB,mBAAAH,GACjD,4BAACI,GAAA,EAAY,SAAAL,GAAmB,GAAGE,EAAA,CAAW,EAAA,CAChD;AAEJ;AAEA,SAASG,EAAY;AAAA,EACnB,cAAAC;AAAA,EACA,eAAAC;AAAA,EACA,SAAAP;AAAA,EACA,YAAAQ;AAAA,EACA,WAAAC;AACF,GAA4C;AAC1C,EAAAC,EAAuB,sBAAsBF,CAAU,GACvDG,EAAQ,oBAAoB;AAC5B,QAAM,EAAE,EAAA,IAAMC,EAAe,oBAAoB,GAC3C,EAAE,GAAGC,MAAYD,EAAe,QAAQ,GACxCE,IAAaC,EAAA,GAEbC,IAAoBC,EAAyB;AAAA,IACjD,cAAAX;AAAA,IACA,yBAAyBR;AAAA,IACzB,eAAAS;AAAA,EAAA,CACD;AAED,MAAIS,EAAkB;AACpB,6BAAQE,GAAA,EAAW,WAAS,IAAC,OAAOF,EAAkB,cAAc,QAAQ;AAG9E,QAAM,EAAE,QAAAG,MAAWH,EAAkB,MAC/BI,IAAaJ,EAAkB,KAAK,mBAAmB,YAEvDK,IAAe,YAAY;AAC/B,UAAMC,IAAS,MAAMN,EAAkB,QAAQ,SAAA;AAC/C,IAAIM,MACFtB,EAAQuB,EAAiB,4BAA4BD,EAAO,IAAI,GAChEtB,EAAQuB,EAAiB,uBAAuB;AAAA,EAEpD;AAEA,SACE,gBAAApB,EAAC,WAAA,EAAQ,WAAWqB,EAAWC,EAAO,WAAWhB,CAAS,GACxD,UAAA,gBAAAN,EAACe,GAAA,EAAW,OAAOF,EAAkB,cAAc,QACjD,UAAA,gBAAAb,EAACuB,GAAA,EAAgB,gBAAgBV,GAC/B,UAAA,gBAAAb,EAACwB,GAAA,EAAK,UAAU,MAAA;AAAM,IAAKN;KACzB,UAAA,gBAAAO,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,IAAI,YAAW,WAC/C,UAAA;AAAA,IAAA,gBAAA1B,EAAC,YACC,UAAA,gBAAAyB,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,GAChC,UAAA;AAAA,MAAA,gBAAA1B,EAACW,EAAW,SAAX,EAAmB,IAAG,MACpB,UAAa,EAAbM,IAAe,yBAA4B,kBAAN,EAAwB,CAChE;AAAA,MACA,gBAAAjB,EAACW,EAAW,MAAX,EAAgB,SAAQ,cACtB,UAAa,EAAbM,IAAe,+BAAkC,wBAAN,EAA8B,CAC5E;AAAA,IAAA,EAAA,CACF,EAAA,CACF;AAAA,IAEA,gBAAAQ,EAACE,GAAA,EAAK,qBAAqB,EAAE,MAAM,OAAO,OAAO,CAAC,OAAO,KAAK,EAAA,GAAK,KAAK,IACtE,UAAA;AAAA,MAAA,gBAAA3B;AAAA,QAACgB,EAAO;AAAA,QAAP;AAAA,UACC,OAAO,EAAE,SAAS;AAAA,UAClB,oBAAoB,EAAE,UAAU,EAAE,qBAAqB,EAAA;AAAA,QAAE;AAAA,MAAA;AAAA,wBAE1DA,EAAO,SAAP,EAAe,OAAO,EAAE,SAAS,GAAG;AAAA,MACrC,gBAAAhB;AAAA,QAACgB,EAAO;AAAA,QAAP;AAAA,UACC,OAAO,EAAE,MAAM;AAAA,UACf,oBAAoB,EAAE,UAAU,EAAE,kBAAkB,EAAA;AAAA,QAAE;AAAA,MAAA;AAAA,MAExD,gBAAAhB;AAAA,QAACgB,EAAO;AAAA,QAAP;AAAA,UACC,OAAO,EAAE,OAAO;AAAA,UAChB,aAAa,EAAE,kBAAkB;AAAA,UACjC,oBAAoB,EAAE,UAAU,EAAE,mBAAmB,EAAA;AAAA,UACrD,gBAAgB,CAACY,MACflB,EAAQ,cAAckB,CAAI,IAAI,EAAE,cAAcA,EAAA,CAAM;AAAA,QAAA;AAAA,MAAA;AAAA,MAGxD,gBAAA5B;AAAA,QAACgB,EAAO;AAAA,QAAP;AAAA,UACC,OAAO,EAAE,KAAK;AAAA,UACd,oBAAoB;AAAA,YAClB,UAAU,EAAE,iBAAiB;AAAA,YAC7B,aAAa,EAAE,wBAAwB;AAAA,UAAA;AAAA,QACzC;AAAA,MAAA;AAAA,IACF,GACF;AAAA,IAEA,gBAAAhB,EAAC6B,KACC,UAAA,gBAAA7B,EAACW,EAAW,QAAX,EAAkB,MAAK,UAAS,YAAYE,EAAkB,OAAO,WACnE,UAAAA,EAAkB,OAAO,YAAY,EAAE,YAAY,IAAI,EAAE,QAAQ,EAAA,CACpE,EAAA,CACF;AAAA,EAAA,EAAA,CACF,EAAA,CACF,GACF,EAAA,CACF,EAAA,CACF;AAEJ;"}
|
|
1
|
+
{"version":3,"file":"Address.js","sources":["../../../../src/components/Contractor/Address/Address.tsx"],"sourcesContent":["import type { JSX } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport classNames from 'classnames'\nimport type { FallbackProps } from 'react-error-boundary'\nimport styles from './Address.module.scss'\nimport { useContractorAddressForm } from './shared/useContractorAddressForm'\nimport type { ContractorAddressOptionalFieldsToRequire } from './shared/useContractorAddressForm'\nimport type { AddressDefaultValues } from './types'\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 { useI18n, useComponentDictionary } from '@/i18n'\nimport type { ResourceDictionary } from '@/types/Helpers'\nimport { contractorEvents, type EventType } from '@/shared/constants'\nimport type { OnEventType } from '@/components/Base/useBase'\nimport { useContractorHasSignedW9 } from '@/components/Contractor/shared/useContractorHasSignedW9'\n\n// The hook defaults to the API contract, which treats every address field as\n// optional. The SDK's address form has always required a complete mailing\n// address, so it opts those fields back into being required here.\nconst SDK_REQUIRED_ADDRESS_FIELDS: ContractorAddressOptionalFieldsToRequire = {\n update: ['street1', 'city', 'state', 'zip'],\n}\n\n/**\n * Props for {@link Address}.\n *\n * @public\n */\nexport interface AddressProps {\n /** The associated contractor identifier. */\n contractorId: string\n /** Pre-fill values for address fields. Server data takes precedence when the contractor already has an address on file. */\n defaultValues?: AddressDefaultValues\n /** Callback invoked each time the component emits an event. */\n onEvent: OnEventType<EventType, unknown>\n /** Overrides for the component's i18n strings. */\n dictionary?: ResourceDictionary<'Contractor.Address'>\n /** Optional class applied to the wrapping `<section>`. */\n className?: string\n /** Custom React component rendered when an unhandled error is caught by the component-level error boundary. */\n FallbackComponent?: (props: FallbackProps) => JSX.Element\n}\n\n/**\n * Form for collecting and updating a contractor's mailing address. Renders a business or home address title based on the contractor type.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/address/updated` | Fired after the address is saved | The updated `ContractorAddress` entity |\n * | `contractor/address/done` | Fired after a successful save so the parent flow can advance | — |\n *\n * @param props - See {@link AddressProps}.\n * @returns The contractor address form.\n * @public\n *\n * @example\n * ```tsx\n * import { ContractorOnboarding } from '@gusto/embedded-react-sdk'\n *\n * function MyComponent() {\n * return (\n * <ContractorOnboarding.Address\n * contractorId=\"contractor-uuid\"\n * onEvent={() => {}}\n * />\n * )\n * }\n * ```\n */\nexport function Address({ onEvent, FallbackComponent, ...rootProps }: AddressProps) {\n return (\n <BaseBoundaries componentName=\"Contractor.Address\" FallbackComponent={FallbackComponent}>\n <AddressRoot onEvent={onEvent} {...rootProps} />\n </BaseBoundaries>\n )\n}\n\nfunction ContractorAddressW9Warning({ contractorId }: { contractorId: string }) {\n const hasSignedW9 = useContractorHasSignedW9(contractorId)\n const { t } = useTranslation('Contractor.Address')\n const Components = useComponentContext()\n if (!hasSignedW9) return null\n return (\n <Components.Alert status=\"warning\" disableScrollIntoView label={t('w9EditWarning.label')}>\n <Components.Text>{t('w9EditWarning.body')}</Components.Text>\n </Components.Alert>\n )\n}\n\nfunction AddressRoot({\n contractorId,\n defaultValues,\n onEvent,\n dictionary,\n className,\n}: Omit<AddressProps, 'FallbackComponent'>) {\n useComponentDictionary('Contractor.Address', dictionary)\n useI18n('Contractor.Address')\n const { t } = useTranslation('Contractor.Address')\n const { t: tCommon } = useTranslation('common')\n const Components = useComponentContext()\n\n const contractorAddress = useContractorAddressForm({\n contractorId,\n optionalFieldsToRequire: SDK_REQUIRED_ADDRESS_FIELDS,\n defaultValues,\n })\n\n if (contractorAddress.isLoading) {\n return <BaseLayout isLoading error={contractorAddress.errorHandling.errors} />\n }\n\n const { Fields } = contractorAddress.form\n const isBusiness = contractorAddress.data.contractorType === 'Business'\n\n const handleSubmit = async () => {\n const result = await contractorAddress.actions.onSubmit()\n if (result) {\n onEvent(contractorEvents.CONTRACTOR_ADDRESS_UPDATED, result.data)\n onEvent(contractorEvents.CONTRACTOR_ADDRESS_DONE)\n }\n }\n\n return (\n <section className={classNames(styles.container, className)}>\n <BaseLayout error={contractorAddress.errorHandling.errors}>\n <SDKFormProvider formHookResult={contractorAddress}>\n <Form onSubmit={() => void handleSubmit()}>\n <ContractorAddressW9Warning contractorId={contractorId} />\n\n <Flex flexDirection=\"column\" gap={32} alignItems=\"stretch\">\n <header>\n <Flex flexDirection=\"column\" gap={4}>\n <Components.Heading as=\"h2\">\n {isBusiness ? t('businessAddressTitle') : t('homeAddressTitle')}\n </Components.Heading>\n <Components.Text variant=\"supporting\">\n {isBusiness ? t('businessAddressDescription') : t('homeAddressDescription')}\n </Components.Text>\n </Flex>\n </header>\n\n <Grid gridTemplateColumns={{ base: '1fr', small: ['1fr', '1fr'] }} gap={20}>\n <Fields.Street1\n label={t('street1')}\n validationMessages={{ REQUIRED: t('validations.street1') }}\n />\n <Fields.Street2 label={t('street2')} />\n <Fields.City\n label={t('city')}\n validationMessages={{ REQUIRED: t('validations.city') }}\n />\n <Fields.State\n label={t('state')}\n placeholder={t('statePlaceholder')}\n validationMessages={{ REQUIRED: t('validations.state') }}\n getOptionLabel={(abbr: string) =>\n tCommon(`statesHash.${abbr}`, { defaultValue: abbr })\n }\n />\n <Fields.Zip\n label={t('zip')}\n validationMessages={{\n REQUIRED: t('validations.zip'),\n INVALID_ZIP: t('validations.zipInvalid'),\n }}\n />\n </Grid>\n\n <ActionsLayout>\n <Components.Button type=\"submit\" isDisabled={contractorAddress.status.isPending}>\n {contractorAddress.status.isPending ? t('submitting') : t('submit')}\n </Components.Button>\n </ActionsLayout>\n </Flex>\n </Form>\n </SDKFormProvider>\n </BaseLayout>\n </section>\n )\n}\n"],"names":["SDK_REQUIRED_ADDRESS_FIELDS","Address","onEvent","FallbackComponent","rootProps","jsx","BaseBoundaries","AddressRoot","ContractorAddressW9Warning","contractorId","hasSignedW9","useContractorHasSignedW9","t","useTranslation","Components","useComponentContext","defaultValues","dictionary","className","useComponentDictionary","useI18n","tCommon","contractorAddress","useContractorAddressForm","BaseLayout","Fields","isBusiness","handleSubmit","result","contractorEvents","classNames","styles","SDKFormProvider","jsxs","Form","Flex","Grid","abbr","ActionsLayout"],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { BaseComponentInterface } from '../../../Base/Base';
|
|
2
|
+
/**
|
|
3
|
+
* The tab currently selected on {@link ManagementContractorList}.
|
|
4
|
+
*
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export type ContractorTab = 'active' | 'onboarding' | 'dismissed';
|
|
8
|
+
/**
|
|
9
|
+
* Props for {@link ManagementContractorList}.
|
|
10
|
+
*
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
export interface ManagementContractorListProps extends BaseComponentInterface<'Contractor.ManagementContractorList'> {
|
|
14
|
+
/** The associated company identifier. */
|
|
15
|
+
companyId: string;
|
|
16
|
+
/** Tab to render first: Active, Onboarding, or Dismissed. Defaults to `'active'`. */
|
|
17
|
+
initialTab?: ContractorTab;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Renders a tabbed list of a company's contractors split across Active, Onboarding, and Dismissed
|
|
21
|
+
* tabs, with per-row actions tailored to each tab (edit, delete, view details, dismiss, rehire,
|
|
22
|
+
* cancel a scheduled dismissal or rehire).
|
|
23
|
+
*
|
|
24
|
+
* @events
|
|
25
|
+
* | Event | Description | Data |
|
|
26
|
+
* | ----- | ----------- | ---- |
|
|
27
|
+
* | `contractor/create` | Fired when the user clicks "Add contractor". | — |
|
|
28
|
+
* | `contractor/update` | Fired when the user selects "Edit"/"Review" on an onboarding-tab row. | `{ contractorId: string }` |
|
|
29
|
+
* | `contractor/view` | Fired when the user selects "View details" on an active or dismissed row. | `{ contractorId: string }` |
|
|
30
|
+
* | `contractor/deleted` | Fired after an onboarding-tab row's "Remove" action completes. | `{ contractorId: string }` |
|
|
31
|
+
* | `contractor/selfOnboarding/cancelled` | Fired after the "Cancel self-onboarding" action updates a contractor's onboarding status. | The updated `contractorOnboardingStatus` returned by the API. |
|
|
32
|
+
* | `contractor/dismiss` | Fired when the user selects "Dismiss" on an active row. No mutation is performed by this component. | `{ contractorId: string }` |
|
|
33
|
+
* | `contractor/rehire` | Fired when the user selects "Rehire" on a dismissed row. No mutation is performed by this component. | `{ contractorId: string }` |
|
|
34
|
+
* | `contractor/dismissal/cancelled` | Fired after a scheduled dismissal is cancelled via the confirm dialog. | `{ contractorId: string }` |
|
|
35
|
+
* | `contractor/rehire/cancelled` | Fired after a scheduled rehire is cancelled via the confirm dialog. | `{ contractorId: string }` |
|
|
36
|
+
*
|
|
37
|
+
* @public
|
|
38
|
+
*/
|
|
39
|
+
export declare function ManagementContractorList({ FallbackComponent, ...props }: ManagementContractorListProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { useState as L } from "react";
|
|
3
|
+
import { useContractorList as A } from "../shared/useContractorList.js";
|
|
4
|
+
import { ManagementContractorListView as h } from "./ManagementContractorListView.js";
|
|
5
|
+
import { BaseBoundaries as p, BaseLayout as C } from "../../../Base/Base.js";
|
|
6
|
+
import { useI18n as D, useComponentDictionary as N } from "../../../../i18n/I18n.js";
|
|
7
|
+
import { componentEvents as o } from "../../../../shared/constants.js";
|
|
8
|
+
const f = (r) => {
|
|
9
|
+
switch (r) {
|
|
10
|
+
case "active":
|
|
11
|
+
return "active";
|
|
12
|
+
case "onboarding":
|
|
13
|
+
return "onboarding";
|
|
14
|
+
case "dismissed":
|
|
15
|
+
return "terminated";
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
function E({
|
|
19
|
+
companyId: r,
|
|
20
|
+
initialTab: i = "active",
|
|
21
|
+
onEvent: a,
|
|
22
|
+
dictionary: m
|
|
23
|
+
}) {
|
|
24
|
+
D("Contractor.ManagementContractorList"), N("Contractor.ManagementContractorList", m);
|
|
25
|
+
const [s, R] = L(i), n = A({
|
|
26
|
+
companyId: r,
|
|
27
|
+
contractorType: f(s)
|
|
28
|
+
});
|
|
29
|
+
if (n.isLoading)
|
|
30
|
+
return /* @__PURE__ */ e(C, { isLoading: !0, error: n.errorHandling.errors });
|
|
31
|
+
const T = (t) => {
|
|
32
|
+
a(o.CONTRACTOR_UPDATE, { contractorId: t });
|
|
33
|
+
}, d = (t) => {
|
|
34
|
+
a(o.CONTRACTOR_VIEW, { contractorId: t });
|
|
35
|
+
}, l = () => {
|
|
36
|
+
a(o.CONTRACTOR_CREATE);
|
|
37
|
+
}, O = (t) => {
|
|
38
|
+
a(o.CONTRACTOR_DISMISS, { contractorId: t });
|
|
39
|
+
}, g = (t) => {
|
|
40
|
+
a(o.CONTRACTOR_REHIRE, { contractorId: t });
|
|
41
|
+
}, u = (t) => {
|
|
42
|
+
R(t);
|
|
43
|
+
};
|
|
44
|
+
return /* @__PURE__ */ e(C, { error: n.errorHandling.errors, children: /* @__PURE__ */ e(
|
|
45
|
+
h,
|
|
46
|
+
{
|
|
47
|
+
selectedTab: s,
|
|
48
|
+
onTabChange: u,
|
|
49
|
+
contractors: n.data.contractors,
|
|
50
|
+
isFetching: n.status.isFetching,
|
|
51
|
+
pagination: n.pagination,
|
|
52
|
+
status: n.status,
|
|
53
|
+
onEdit: T,
|
|
54
|
+
onView: d,
|
|
55
|
+
onDismiss: O,
|
|
56
|
+
onRehire: g,
|
|
57
|
+
onDelete: async (t) => {
|
|
58
|
+
await n.actions.onDelete(t), a(o.CONTRACTOR_DELETED, { contractorId: t });
|
|
59
|
+
},
|
|
60
|
+
onCancelSelfOnboarding: async (t) => {
|
|
61
|
+
const c = await n.actions.onCancelSelfOnboarding(t);
|
|
62
|
+
c && a(o.CONTRACTOR_SELF_ONBOARDING_CANCELLED, c);
|
|
63
|
+
},
|
|
64
|
+
onCancelDismissal: async (t) => {
|
|
65
|
+
await n.actions.onCancelDismissal(t), a(o.CONTRACTOR_DISMISSAL_CANCELLED, { contractorId: t });
|
|
66
|
+
},
|
|
67
|
+
onCancelRehire: async (t) => {
|
|
68
|
+
await n.actions.onCancelRehire(t), a(o.CONTRACTOR_REHIRE_CANCELLED, { contractorId: t });
|
|
69
|
+
},
|
|
70
|
+
onAddContractor: l
|
|
71
|
+
}
|
|
72
|
+
) });
|
|
73
|
+
}
|
|
74
|
+
function B({
|
|
75
|
+
FallbackComponent: r,
|
|
76
|
+
...i
|
|
77
|
+
}) {
|
|
78
|
+
return /* @__PURE__ */ e(
|
|
79
|
+
p,
|
|
80
|
+
{
|
|
81
|
+
componentName: "Contractor.ManagementContractorList",
|
|
82
|
+
FallbackComponent: r,
|
|
83
|
+
children: /* @__PURE__ */ e(E, { ...i })
|
|
84
|
+
}
|
|
85
|
+
);
|
|
86
|
+
}
|
|
87
|
+
export {
|
|
88
|
+
B as ManagementContractorList
|
|
89
|
+
};
|
|
90
|
+
//# sourceMappingURL=ManagementContractorList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ManagementContractorList.js","sources":["../../../../../src/components/Contractor/ContractorList/management/ManagementContractorList.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useContractorList, type ContractorType } from '../shared/useContractorList'\nimport { ManagementContractorListView } from './ManagementContractorListView'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base/Base'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\n\n/**\n * The tab currently selected on {@link ManagementContractorList}.\n *\n * @public\n */\nexport type ContractorTab = 'active' | 'onboarding' | 'dismissed'\n\n/**\n * Props for {@link ManagementContractorList}.\n *\n * @public\n */\nexport interface ManagementContractorListProps extends BaseComponentInterface<'Contractor.ManagementContractorList'> {\n /** The associated company identifier. */\n companyId: string\n /** Tab to render first: Active, Onboarding, or Dismissed. Defaults to `'active'`. */\n initialTab?: ContractorTab\n}\n\nconst mapTabToContractorType = (tab: ContractorTab): ContractorType => {\n switch (tab) {\n case 'active':\n return 'active'\n case 'onboarding':\n return 'onboarding'\n case 'dismissed':\n return 'terminated'\n }\n}\n\nfunction ManagementContractorListRoot({\n companyId,\n initialTab = 'active',\n onEvent,\n dictionary,\n}: ManagementContractorListProps) {\n useI18n('Contractor.ManagementContractorList')\n useComponentDictionary('Contractor.ManagementContractorList', dictionary)\n\n const [selectedTab, setSelectedTab] = useState<ContractorTab>(initialTab)\n\n const contractorList = useContractorList({\n companyId,\n contractorType: mapTabToContractorType(selectedTab),\n })\n\n if (contractorList.isLoading) {\n return <BaseLayout isLoading error={contractorList.errorHandling.errors} />\n }\n\n const handleEdit = (contractorId: string) => {\n onEvent(componentEvents.CONTRACTOR_UPDATE, { contractorId })\n }\n\n const handleView = (contractorId: string) => {\n onEvent(componentEvents.CONTRACTOR_VIEW, { contractorId })\n }\n\n const handleAddContractor = () => {\n onEvent(componentEvents.CONTRACTOR_CREATE)\n }\n\n const handleDismiss = (contractorId: string) => {\n onEvent(componentEvents.CONTRACTOR_DISMISS, { contractorId })\n }\n\n const handleRehire = (contractorId: string) => {\n onEvent(componentEvents.CONTRACTOR_REHIRE, { contractorId })\n }\n\n const handleTabChange = (tab: ContractorTab) => {\n setSelectedTab(tab)\n }\n\n return (\n <BaseLayout error={contractorList.errorHandling.errors}>\n <ManagementContractorListView\n selectedTab={selectedTab}\n onTabChange={handleTabChange}\n contractors={contractorList.data.contractors}\n isFetching={contractorList.status.isFetching}\n pagination={contractorList.pagination}\n status={contractorList.status}\n onEdit={handleEdit}\n onView={handleView}\n onDismiss={handleDismiss}\n onRehire={handleRehire}\n onDelete={async (contractorId: string) => {\n await contractorList.actions.onDelete(contractorId)\n onEvent(componentEvents.CONTRACTOR_DELETED, { contractorId })\n }}\n onCancelSelfOnboarding={async (contractorId: string) => {\n const onboardingStatus = await contractorList.actions.onCancelSelfOnboarding(contractorId)\n if (!onboardingStatus) return\n onEvent(componentEvents.CONTRACTOR_SELF_ONBOARDING_CANCELLED, onboardingStatus)\n }}\n onCancelDismissal={async (contractorId: string) => {\n await contractorList.actions.onCancelDismissal(contractorId)\n onEvent(componentEvents.CONTRACTOR_DISMISSAL_CANCELLED, { contractorId })\n }}\n onCancelRehire={async (contractorId: string) => {\n await contractorList.actions.onCancelRehire(contractorId)\n onEvent(componentEvents.CONTRACTOR_REHIRE_CANCELLED, { contractorId })\n }}\n onAddContractor={handleAddContractor}\n />\n </BaseLayout>\n )\n}\n\n/**\n * Renders a tabbed list of a company's contractors split across Active, Onboarding, and Dismissed\n * tabs, with per-row actions tailored to each tab (edit, delete, view details, dismiss, rehire,\n * cancel a scheduled dismissal or rehire).\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/create` | Fired when the user clicks \"Add contractor\". | — |\n * | `contractor/update` | Fired when the user selects \"Edit\"/\"Review\" on an onboarding-tab row. | `{ contractorId: string }` |\n * | `contractor/view` | Fired when the user selects \"View details\" on an active or dismissed row. | `{ contractorId: string }` |\n * | `contractor/deleted` | Fired after an onboarding-tab row's \"Remove\" action completes. | `{ contractorId: string }` |\n * | `contractor/selfOnboarding/cancelled` | Fired after the \"Cancel self-onboarding\" action updates a contractor's onboarding status. | The updated `contractorOnboardingStatus` returned by the API. |\n * | `contractor/dismiss` | Fired when the user selects \"Dismiss\" on an active row. No mutation is performed by this component. | `{ contractorId: string }` |\n * | `contractor/rehire` | Fired when the user selects \"Rehire\" on a dismissed row. No mutation is performed by this component. | `{ contractorId: string }` |\n * | `contractor/dismissal/cancelled` | Fired after a scheduled dismissal is cancelled via the confirm dialog. | `{ contractorId: string }` |\n * | `contractor/rehire/cancelled` | Fired after a scheduled rehire is cancelled via the confirm dialog. | `{ contractorId: string }` |\n *\n * @public\n */\nexport function ManagementContractorList({\n FallbackComponent,\n ...props\n}: ManagementContractorListProps) {\n return (\n <BaseBoundaries\n componentName=\"Contractor.ManagementContractorList\"\n FallbackComponent={FallbackComponent}\n >\n <ManagementContractorListRoot {...props} />\n </BaseBoundaries>\n )\n}\n"],"names":["mapTabToContractorType","tab","ManagementContractorListRoot","companyId","initialTab","onEvent","dictionary","useI18n","useComponentDictionary","selectedTab","setSelectedTab","useState","contractorList","useContractorList","BaseLayout","handleEdit","contractorId","componentEvents","handleView","handleAddContractor","handleDismiss","handleRehire","handleTabChange","jsx","ManagementContractorListView","onboardingStatus","ManagementContractorList","FallbackComponent","props","BaseBoundaries"],"mappings":"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"}
|
package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.d.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { UseContractorListResult, ContractorWithActions } from '../shared/useContractorList';
|
|
2
|
+
import { ContractorTab } from './ManagementContractorList';
|
|
3
|
+
/** @internal */
|
|
4
|
+
export interface ManagementContractorListViewProps extends Pick<Extract<UseContractorListResult, {
|
|
5
|
+
isLoading: false;
|
|
6
|
+
}>, 'pagination' | 'status'> {
|
|
7
|
+
contractors: ContractorWithActions[];
|
|
8
|
+
isFetching: boolean;
|
|
9
|
+
selectedTab: ContractorTab;
|
|
10
|
+
onTabChange: (tab: ContractorTab) => void;
|
|
11
|
+
onEdit: (contractorId: string) => void;
|
|
12
|
+
onView: (contractorId: string) => void;
|
|
13
|
+
onDismiss: (contractorId: string) => void;
|
|
14
|
+
onRehire: (contractorId: string) => void;
|
|
15
|
+
onDelete: (contractorId: string) => Promise<void>;
|
|
16
|
+
onCancelSelfOnboarding: (contractorId: string) => Promise<void>;
|
|
17
|
+
onCancelDismissal: (contractorId: string) => Promise<void>;
|
|
18
|
+
onCancelRehire: (contractorId: string) => Promise<void>;
|
|
19
|
+
onAddContractor: () => void;
|
|
20
|
+
}
|
|
21
|
+
/** @internal */
|
|
22
|
+
export declare function ManagementContractorListView({ contractors, isFetching, selectedTab, onTabChange, status, pagination, onEdit, onView, onDismiss, onRehire, onDelete, onCancelSelfOnboarding, onCancelDismissal, onCancelRehire, onAddContractor, }: ManagementContractorListViewProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
import { jsxs as m, Fragment as P, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { useState as b } from "react";
|
|
3
|
+
import { useTranslation as M } from "react-i18next";
|
|
4
|
+
import { Flex as d } from "../../../Common/Flex/Flex.js";
|
|
5
|
+
import { EmptyData as V } from "../../../Common/EmptyData/EmptyData.js";
|
|
6
|
+
import { HamburgerMenu as y } from "../../../Common/HamburgerMenu/HamburgerMenu.js";
|
|
7
|
+
import { useComponentContext as w } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
8
|
+
import { ContractorOnboardingStatusBadge as Y } from "../../../Common/OnboardingStatusBadge/index.js";
|
|
9
|
+
import F from "../../../../assets/icons/trashcan.svg.js";
|
|
10
|
+
import h from "../../../../assets/icons/x-circle.svg.js";
|
|
11
|
+
import j from "../../../../assets/icons/eye.svg.js";
|
|
12
|
+
import H from "../../../../assets/icons/slash-circle.svg.js";
|
|
13
|
+
import $ from "../../../../assets/icons/plus-circle.svg.js";
|
|
14
|
+
import { firstLastName as z } from "../../../../helpers/formattedStrings.js";
|
|
15
|
+
import { normalizeToDate as G, formatDateLong as W, formatDateLongWithYear as U } from "../../../../helpers/dateFormatting.js";
|
|
16
|
+
import { ContractorOnboardingStatus as C, CONTRACTOR_TYPE as X } from "../../../../shared/constants.js";
|
|
17
|
+
import { useDataView as q } from "../../../Common/DataView/useDataView.js";
|
|
18
|
+
import { DataView as J } from "../../../Common/DataView/DataView.js";
|
|
19
|
+
function K(n) {
|
|
20
|
+
return n.type === X.BUSINESS ? n.businessName ?? "" : z({ first_name: n.firstName, last_name: n.lastName });
|
|
21
|
+
}
|
|
22
|
+
function Q({ contractor: n }) {
|
|
23
|
+
const l = w();
|
|
24
|
+
return /* @__PURE__ */ m(d, { flexDirection: "column", gap: 0, children: [
|
|
25
|
+
/* @__PURE__ */ t(l.Text, { size: "sm", weight: "medium", children: K(n) }),
|
|
26
|
+
/* @__PURE__ */ t(l.Text, { variant: "supporting", size: "sm", children: n.type ?? "–" })
|
|
27
|
+
] });
|
|
28
|
+
}
|
|
29
|
+
function u(n) {
|
|
30
|
+
const l = G(n);
|
|
31
|
+
return l ? l.getFullYear() === (/* @__PURE__ */ new Date()).getFullYear() ? W(l) : U(l) : "";
|
|
32
|
+
}
|
|
33
|
+
function Z(n) {
|
|
34
|
+
return n === C.ADMIN_ONBOARDING_REVIEW || n === C.SELF_ONBOARDING_REVIEW;
|
|
35
|
+
}
|
|
36
|
+
function De({
|
|
37
|
+
contractors: n,
|
|
38
|
+
isFetching: l,
|
|
39
|
+
selectedTab: o,
|
|
40
|
+
onTabChange: v,
|
|
41
|
+
status: D,
|
|
42
|
+
pagination: S,
|
|
43
|
+
onEdit: A,
|
|
44
|
+
onView: L,
|
|
45
|
+
onDismiss: I,
|
|
46
|
+
onRehire: R,
|
|
47
|
+
onDelete: k,
|
|
48
|
+
onCancelSelfOnboarding: E,
|
|
49
|
+
onCancelDismissal: N,
|
|
50
|
+
onCancelRehire: O,
|
|
51
|
+
onAddContractor: B
|
|
52
|
+
}) {
|
|
53
|
+
const { t: e } = M("Contractor.ManagementContractorList"), r = w(), [g, p] = b(null), [s, c] = b(null), _ = [
|
|
54
|
+
{ id: "active", label: e("tabs.active"), content: null },
|
|
55
|
+
{ id: "onboarding", label: e("tabs.onboarding"), content: null },
|
|
56
|
+
{ id: "dismissed", label: e("tabs.dismissed"), content: null }
|
|
57
|
+
], x = () => {
|
|
58
|
+
const a = {
|
|
59
|
+
key: "name",
|
|
60
|
+
title: e("nameLabel"),
|
|
61
|
+
render: (i) => /* @__PURE__ */ t(Q, { contractor: i })
|
|
62
|
+
};
|
|
63
|
+
return o === "active" ? [
|
|
64
|
+
a,
|
|
65
|
+
{
|
|
66
|
+
key: "rate",
|
|
67
|
+
title: e("rateLabel"),
|
|
68
|
+
render: (i) => i.wageType === "Hourly" && i.hourlyRate ? e("rateHourly", { rate: `$${i.hourlyRate}` }) : i.wageType ?? "–"
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
key: "status",
|
|
72
|
+
title: "",
|
|
73
|
+
render: (i) => i.upcomingEmployment?.startDate ? /* @__PURE__ */ t(r.Badge, { status: "info", children: e("startsBadge", {
|
|
74
|
+
date: u(i.upcomingEmployment.startDate)
|
|
75
|
+
}) }) : i.dismissalDate ? /* @__PURE__ */ t(r.Badge, { status: "warning", children: e("lastDayBadge", { date: u(i.dismissalDate) }) }) : null
|
|
76
|
+
}
|
|
77
|
+
] : o === "onboarding" ? [
|
|
78
|
+
a,
|
|
79
|
+
{
|
|
80
|
+
key: "status",
|
|
81
|
+
title: e("onboardingStatusLabel"),
|
|
82
|
+
render: (i) => /* @__PURE__ */ m(d, { alignItems: "center", gap: 8, children: [
|
|
83
|
+
/* @__PURE__ */ t(
|
|
84
|
+
Y,
|
|
85
|
+
{
|
|
86
|
+
onboarded: i.onboarded,
|
|
87
|
+
onboardingStatus: i.onboardingStatus
|
|
88
|
+
}
|
|
89
|
+
),
|
|
90
|
+
i.onboardingStatus === C.ONBOARDING_COMPLETED && i.upcomingEmployment?.startDate && /* @__PURE__ */ t(r.Badge, { status: "info", children: e("startsBadge", {
|
|
91
|
+
date: u(i.upcomingEmployment.startDate)
|
|
92
|
+
}) })
|
|
93
|
+
] })
|
|
94
|
+
}
|
|
95
|
+
] : [
|
|
96
|
+
a,
|
|
97
|
+
{
|
|
98
|
+
key: "dismissalDate",
|
|
99
|
+
title: e("dismissalDateLabel"),
|
|
100
|
+
render: (i) => i.dismissalDate ? u(i.dismissalDate) : "–"
|
|
101
|
+
}
|
|
102
|
+
];
|
|
103
|
+
}, { ...T } = q({
|
|
104
|
+
data: n,
|
|
105
|
+
columns: x(),
|
|
106
|
+
itemMenu: (a) => {
|
|
107
|
+
if (o === "onboarding") {
|
|
108
|
+
const f = [];
|
|
109
|
+
return a.allowedActions.includes("cancel_self_onboarding") && f.push({
|
|
110
|
+
label: e("cancelSelfOnboardingCta"),
|
|
111
|
+
onClick: () => {
|
|
112
|
+
E(a.uuid);
|
|
113
|
+
},
|
|
114
|
+
icon: /* @__PURE__ */ t(h, { "aria-hidden": !0 })
|
|
115
|
+
}), a.allowedActions.includes("delete") && f.push({
|
|
116
|
+
label: e("removeCta"),
|
|
117
|
+
onClick: () => {
|
|
118
|
+
p(a.uuid);
|
|
119
|
+
},
|
|
120
|
+
icon: /* @__PURE__ */ t(F, { "aria-hidden": !0 })
|
|
121
|
+
}), /* @__PURE__ */ m(d, { alignItems: "center", justifyContent: "flex-end", gap: 4, children: [
|
|
122
|
+
a.allowedActions.includes("edit") && /* @__PURE__ */ t(
|
|
123
|
+
r.Button,
|
|
124
|
+
{
|
|
125
|
+
variant: "secondary",
|
|
126
|
+
onClick: () => {
|
|
127
|
+
A(a.uuid);
|
|
128
|
+
},
|
|
129
|
+
children: Z(a.onboardingStatus) ? e("reviewCta") : e("continueCta")
|
|
130
|
+
}
|
|
131
|
+
),
|
|
132
|
+
/* @__PURE__ */ t(y, { items: f, triggerLabel: e("hamburgerTitle") })
|
|
133
|
+
] });
|
|
134
|
+
}
|
|
135
|
+
const i = [];
|
|
136
|
+
return a.allowedActions.includes("view") && i.push({
|
|
137
|
+
label: e("viewDetailsCta"),
|
|
138
|
+
onClick: () => {
|
|
139
|
+
L(a.uuid);
|
|
140
|
+
},
|
|
141
|
+
icon: /* @__PURE__ */ t(j, { "aria-hidden": !0 })
|
|
142
|
+
}), a.allowedActions.includes("cancel_rehire") && i.push({
|
|
143
|
+
label: e("cancelRehireCta"),
|
|
144
|
+
onClick: () => {
|
|
145
|
+
c({ contractorId: a.uuid, type: "rehire" });
|
|
146
|
+
},
|
|
147
|
+
icon: /* @__PURE__ */ t(h, { "aria-hidden": !0 })
|
|
148
|
+
}), a.allowedActions.includes("cancel_dismissal") && i.push({
|
|
149
|
+
label: e("cancelDismissalCta"),
|
|
150
|
+
onClick: () => {
|
|
151
|
+
c({ contractorId: a.uuid, type: "dismissal" });
|
|
152
|
+
},
|
|
153
|
+
icon: /* @__PURE__ */ t(h, { "aria-hidden": !0 })
|
|
154
|
+
}), a.allowedActions.includes("dismiss") && i.push({
|
|
155
|
+
label: e("dismissCta"),
|
|
156
|
+
onClick: () => {
|
|
157
|
+
I(a.uuid);
|
|
158
|
+
},
|
|
159
|
+
icon: /* @__PURE__ */ t(H, { "aria-hidden": !0 })
|
|
160
|
+
}), a.allowedActions.includes("rehire") && i.push({
|
|
161
|
+
label: e("rehireCta"),
|
|
162
|
+
onClick: () => {
|
|
163
|
+
R(a.uuid);
|
|
164
|
+
},
|
|
165
|
+
icon: /* @__PURE__ */ t($, { "aria-hidden": !0 })
|
|
166
|
+
}), /* @__PURE__ */ t(y, { items: i, triggerLabel: e("hamburgerTitle") });
|
|
167
|
+
},
|
|
168
|
+
isFetching: l,
|
|
169
|
+
pagination: S,
|
|
170
|
+
emptyState: () => /* @__PURE__ */ t(
|
|
171
|
+
V,
|
|
172
|
+
{
|
|
173
|
+
title: e(`emptyState.${o}.title`),
|
|
174
|
+
description: e(`emptyState.${o}.description`)
|
|
175
|
+
}
|
|
176
|
+
)
|
|
177
|
+
});
|
|
178
|
+
return /* @__PURE__ */ m(P, { children: [
|
|
179
|
+
/* @__PURE__ */ m(d, { flexDirection: "column", gap: 32, children: [
|
|
180
|
+
/* @__PURE__ */ m(d, { justifyContent: "space-between", alignItems: "center", children: [
|
|
181
|
+
/* @__PURE__ */ t(r.Heading, { as: "h2", children: e("title") }),
|
|
182
|
+
/* @__PURE__ */ t(r.Button, { variant: "secondary", onClick: B, children: e("addContractorCta") })
|
|
183
|
+
] }),
|
|
184
|
+
/* @__PURE__ */ m(d, { flexDirection: "column", gap: 0, children: [
|
|
185
|
+
/* @__PURE__ */ t(
|
|
186
|
+
r.Tabs,
|
|
187
|
+
{
|
|
188
|
+
tabs: _,
|
|
189
|
+
selectedId: o,
|
|
190
|
+
onSelectionChange: (a) => {
|
|
191
|
+
v(a);
|
|
192
|
+
},
|
|
193
|
+
"aria-label": e("tabsLabel")
|
|
194
|
+
}
|
|
195
|
+
),
|
|
196
|
+
/* @__PURE__ */ t(J, { label: e("contractorListLabel"), ...T })
|
|
197
|
+
] })
|
|
198
|
+
] }),
|
|
199
|
+
/* @__PURE__ */ t(
|
|
200
|
+
r.Dialog,
|
|
201
|
+
{
|
|
202
|
+
isOpen: !!g,
|
|
203
|
+
onClose: () => {
|
|
204
|
+
p(null);
|
|
205
|
+
},
|
|
206
|
+
onPrimaryActionClick: async () => {
|
|
207
|
+
if (g)
|
|
208
|
+
try {
|
|
209
|
+
await k(g), p(null);
|
|
210
|
+
} catch {
|
|
211
|
+
}
|
|
212
|
+
},
|
|
213
|
+
isPrimaryActionLoading: D.isPending,
|
|
214
|
+
isDestructive: !0,
|
|
215
|
+
title: e("removeDialog.title"),
|
|
216
|
+
primaryActionLabel: e("removeDialog.confirmCta"),
|
|
217
|
+
closeActionLabel: e("removeDialog.cancelCta"),
|
|
218
|
+
children: e("removeDialog.description")
|
|
219
|
+
}
|
|
220
|
+
),
|
|
221
|
+
/* @__PURE__ */ t(
|
|
222
|
+
r.Dialog,
|
|
223
|
+
{
|
|
224
|
+
isOpen: !!s,
|
|
225
|
+
onClose: () => {
|
|
226
|
+
c(null);
|
|
227
|
+
},
|
|
228
|
+
onPrimaryActionClick: async () => {
|
|
229
|
+
if (s)
|
|
230
|
+
try {
|
|
231
|
+
s.type === "rehire" ? await O(s.contractorId) : await N(s.contractorId), c(null);
|
|
232
|
+
} catch {
|
|
233
|
+
}
|
|
234
|
+
},
|
|
235
|
+
isPrimaryActionLoading: D.isPending,
|
|
236
|
+
title: s?.type === "rehire" ? e("cancelRehireDialog.title") : e("cancelDismissalDialog.title"),
|
|
237
|
+
primaryActionLabel: s?.type === "rehire" ? e("cancelRehireDialog.confirmCta") : e("cancelDismissalDialog.confirmCta"),
|
|
238
|
+
closeActionLabel: s?.type === "rehire" ? e("cancelRehireDialog.cancelCta") : e("cancelDismissalDialog.cancelCta"),
|
|
239
|
+
children: s?.type === "rehire" ? e("cancelRehireDialog.description") : e("cancelDismissalDialog.description")
|
|
240
|
+
}
|
|
241
|
+
)
|
|
242
|
+
] });
|
|
243
|
+
}
|
|
244
|
+
export {
|
|
245
|
+
De as ManagementContractorListView
|
|
246
|
+
};
|
|
247
|
+
//# sourceMappingURL=ManagementContractorListView.js.map
|
package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ManagementContractorListView.js","sources":["../../../../../src/components/Contractor/ContractorList/management/ManagementContractorListView.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport type { UseContractorListResult, ContractorWithActions } from '../shared/useContractorList'\nimport type { ContractorTab } from './ManagementContractorList'\nimport { DataView, EmptyData, useDataView, Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { ContractorOnboardingStatusBadge } from '@/components/Common/OnboardingStatusBadge'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\nimport XCircleSvg from '@/assets/icons/x-circle.svg?react'\nimport EyeSvg from '@/assets/icons/eye.svg?react'\nimport SlashCircleSvg from '@/assets/icons/slash-circle.svg?react'\nimport PlusCircleIcon from '@/assets/icons/plus-circle.svg?react'\nimport { firstLastName } from '@/helpers/formattedStrings'\nimport { normalizeToDate, formatDateLong, formatDateLongWithYear } from '@/helpers/dateFormatting'\nimport { CONTRACTOR_TYPE, ContractorOnboardingStatus } from '@/shared/constants'\n\n/** @internal */\nexport interface ManagementContractorListViewProps extends Pick<\n Extract<UseContractorListResult, { isLoading: false }>,\n 'pagination' | 'status'\n> {\n contractors: ContractorWithActions[]\n isFetching: boolean\n selectedTab: ContractorTab\n onTabChange: (tab: ContractorTab) => void\n onEdit: (contractorId: string) => void\n onView: (contractorId: string) => void\n onDismiss: (contractorId: string) => void\n onRehire: (contractorId: string) => void\n onDelete: (contractorId: string) => Promise<void>\n onCancelSelfOnboarding: (contractorId: string) => Promise<void>\n onCancelDismissal: (contractorId: string) => Promise<void>\n onCancelRehire: (contractorId: string) => Promise<void>\n onAddContractor: () => void\n}\n\nfunction contractorDisplayName(contractor: ContractorWithActions) {\n return contractor.type === CONTRACTOR_TYPE.BUSINESS\n ? (contractor.businessName ?? '')\n : firstLastName({ first_name: contractor.firstName, last_name: contractor.lastName })\n}\n\nfunction ContractorNameCell({ contractor }: { contractor: ContractorWithActions }) {\n const Components = useComponentContext()\n return (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text size=\"sm\" weight=\"medium\">\n {contractorDisplayName(contractor)}\n </Components.Text>\n <Components.Text variant=\"supporting\" size=\"sm\">\n {contractor.type ?? '–'}\n </Components.Text>\n </Flex>\n )\n}\n\nfunction formatBadgeDate(dateStr: string): string {\n const date = normalizeToDate(dateStr)\n if (!date) return ''\n const isSameYear = date.getFullYear() === new Date().getFullYear()\n return isSameYear ? formatDateLong(date) : formatDateLongWithYear(date)\n}\n\nfunction isOnboardingEditReview(onboardingStatus?: string | null) {\n return (\n onboardingStatus === ContractorOnboardingStatus.ADMIN_ONBOARDING_REVIEW ||\n onboardingStatus === ContractorOnboardingStatus.SELF_ONBOARDING_REVIEW\n )\n}\n\n/** @internal */\nexport function ManagementContractorListView({\n contractors,\n isFetching,\n selectedTab,\n onTabChange,\n status,\n pagination,\n onEdit,\n onView,\n onDismiss,\n onRehire,\n onDelete,\n onCancelSelfOnboarding,\n onCancelDismissal,\n onCancelRehire,\n onAddContractor,\n}: ManagementContractorListViewProps) {\n const { t } = useTranslation('Contractor.ManagementContractorList')\n const Components = useComponentContext()\n const [contractorToRemove, setContractorToRemove] = useState<string | null>(null)\n const [cancelAction, setCancelAction] = useState<{\n contractorId: string\n type: 'dismissal' | 'rehire'\n } | null>(null)\n\n const tabs = [\n { id: 'active', label: t('tabs.active'), content: null },\n { id: 'onboarding', label: t('tabs.onboarding'), content: null },\n { id: 'dismissed', label: t('tabs.dismissed'), content: null },\n ]\n\n const getColumns = () => {\n const nameColumn = {\n key: 'name',\n title: t('nameLabel'),\n render: (contractor: ContractorWithActions) => <ContractorNameCell contractor={contractor} />,\n }\n\n if (selectedTab === 'active') {\n return [\n nameColumn,\n {\n key: 'rate',\n title: t('rateLabel'),\n render: (contractor: ContractorWithActions) =>\n contractor.wageType === 'Hourly' && contractor.hourlyRate\n ? t('rateHourly', { rate: `$${contractor.hourlyRate}` })\n : (contractor.wageType ?? '–'),\n },\n {\n key: 'status',\n title: '',\n render: (contractor: ContractorWithActions) => {\n if (contractor.upcomingEmployment?.startDate) {\n return (\n <Components.Badge status=\"info\">\n {t('startsBadge', {\n date: formatBadgeDate(contractor.upcomingEmployment.startDate),\n })}\n </Components.Badge>\n )\n }\n if (contractor.dismissalDate) {\n return (\n <Components.Badge status=\"warning\">\n {t('lastDayBadge', { date: formatBadgeDate(contractor.dismissalDate) })}\n </Components.Badge>\n )\n }\n return null\n },\n },\n ]\n }\n\n if (selectedTab === 'onboarding') {\n return [\n nameColumn,\n {\n key: 'status',\n title: t('onboardingStatusLabel'),\n render: (contractor: ContractorWithActions) => (\n <Flex alignItems=\"center\" gap={8}>\n <ContractorOnboardingStatusBadge\n onboarded={contractor.onboarded}\n onboardingStatus={contractor.onboardingStatus}\n />\n {contractor.onboardingStatus === ContractorOnboardingStatus.ONBOARDING_COMPLETED &&\n contractor.upcomingEmployment?.startDate && (\n <Components.Badge status=\"info\">\n {t('startsBadge', {\n date: formatBadgeDate(contractor.upcomingEmployment.startDate),\n })}\n </Components.Badge>\n )}\n </Flex>\n ),\n },\n ]\n }\n\n return [\n nameColumn,\n {\n key: 'dismissalDate',\n title: t('dismissalDateLabel'),\n render: (contractor: ContractorWithActions) =>\n contractor.dismissalDate ? formatBadgeDate(contractor.dismissalDate) : '–',\n },\n ]\n }\n\n const { ...dataViewProps } = useDataView({\n data: contractors,\n columns: getColumns(),\n itemMenu: contractor => {\n if (selectedTab === 'onboarding') {\n const menuItems = []\n\n if (contractor.allowedActions.includes('cancel_self_onboarding')) {\n menuItems.push({\n label: t('cancelSelfOnboardingCta'),\n onClick: () => {\n void onCancelSelfOnboarding(contractor.uuid)\n },\n icon: <XCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('delete')) {\n menuItems.push({\n label: t('removeCta'),\n onClick: () => {\n setContractorToRemove(contractor.uuid)\n },\n icon: <TrashCanSvg aria-hidden />,\n })\n }\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"flex-end\" gap={4}>\n {contractor.allowedActions.includes('edit') && (\n <Components.Button\n variant=\"secondary\"\n onClick={() => {\n onEdit(contractor.uuid)\n }}\n >\n {isOnboardingEditReview(contractor.onboardingStatus)\n ? t('reviewCta')\n : t('continueCta')}\n </Components.Button>\n )}\n <HamburgerMenu items={menuItems} triggerLabel={t('hamburgerTitle')} />\n </Flex>\n )\n }\n\n const menuItems = []\n\n if (contractor.allowedActions.includes('view')) {\n menuItems.push({\n label: t('viewDetailsCta'),\n onClick: () => {\n onView(contractor.uuid)\n },\n icon: <EyeSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('cancel_rehire')) {\n menuItems.push({\n label: t('cancelRehireCta'),\n onClick: () => {\n setCancelAction({ contractorId: contractor.uuid, type: 'rehire' })\n },\n icon: <XCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('cancel_dismissal')) {\n menuItems.push({\n label: t('cancelDismissalCta'),\n onClick: () => {\n setCancelAction({ contractorId: contractor.uuid, type: 'dismissal' })\n },\n icon: <XCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('dismiss')) {\n menuItems.push({\n label: t('dismissCta'),\n onClick: () => {\n onDismiss(contractor.uuid)\n },\n icon: <SlashCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('rehire')) {\n menuItems.push({\n label: t('rehireCta'),\n onClick: () => {\n onRehire(contractor.uuid)\n },\n icon: <PlusCircleIcon aria-hidden />,\n })\n }\n\n return <HamburgerMenu items={menuItems} triggerLabel={t('hamburgerTitle')} />\n },\n isFetching,\n pagination,\n emptyState: () => (\n <EmptyData\n title={t(`emptyState.${selectedTab}.title`)}\n description={t(`emptyState.${selectedTab}.description`)}\n />\n ),\n })\n\n return (\n <>\n <Flex flexDirection=\"column\" gap={32}>\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <Components.Heading as=\"h2\">{t('title')}</Components.Heading>\n <Components.Button variant=\"secondary\" onClick={onAddContractor}>\n {t('addContractorCta')}\n </Components.Button>\n </Flex>\n\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Tabs\n tabs={tabs}\n selectedId={selectedTab}\n onSelectionChange={id => {\n onTabChange(id as ContractorTab)\n }}\n aria-label={t('tabsLabel')}\n />\n\n <DataView label={t('contractorListLabel')} {...dataViewProps} />\n </Flex>\n </Flex>\n\n <Components.Dialog\n isOpen={!!contractorToRemove}\n onClose={() => {\n setContractorToRemove(null)\n }}\n onPrimaryActionClick={async () => {\n if (contractorToRemove) {\n try {\n await onDelete(contractorToRemove)\n setContractorToRemove(null)\n } catch {\n // Keep dialog open on error\n }\n }\n }}\n isPrimaryActionLoading={status.isPending}\n isDestructive\n title={t('removeDialog.title')}\n primaryActionLabel={t('removeDialog.confirmCta')}\n closeActionLabel={t('removeDialog.cancelCta')}\n >\n {t('removeDialog.description')}\n </Components.Dialog>\n\n <Components.Dialog\n isOpen={!!cancelAction}\n onClose={() => {\n setCancelAction(null)\n }}\n onPrimaryActionClick={async () => {\n if (!cancelAction) return\n try {\n if (cancelAction.type === 'rehire') {\n await onCancelRehire(cancelAction.contractorId)\n } else {\n await onCancelDismissal(cancelAction.contractorId)\n }\n setCancelAction(null)\n } catch {\n // Keep dialog open on error\n }\n }}\n isPrimaryActionLoading={status.isPending}\n title={\n cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.title')\n : t('cancelDismissalDialog.title')\n }\n primaryActionLabel={\n cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.confirmCta')\n : t('cancelDismissalDialog.confirmCta')\n }\n closeActionLabel={\n cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.cancelCta')\n : t('cancelDismissalDialog.cancelCta')\n }\n >\n {cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.description')\n : t('cancelDismissalDialog.description')}\n </Components.Dialog>\n </>\n )\n}\n"],"names":["contractorDisplayName","contractor","CONTRACTOR_TYPE","firstLastName","ContractorNameCell","Components","useComponentContext","jsxs","Flex","jsx","formatBadgeDate","dateStr","date","normalizeToDate","formatDateLong","formatDateLongWithYear","isOnboardingEditReview","onboardingStatus","ContractorOnboardingStatus","ManagementContractorListView","contractors","isFetching","selectedTab","onTabChange","status","pagination","onEdit","onView","onDismiss","onRehire","onDelete","onCancelSelfOnboarding","onCancelDismissal","onCancelRehire","onAddContractor","t","useTranslation","contractorToRemove","setContractorToRemove","useState","cancelAction","setCancelAction","tabs","getColumns","nameColumn","ContractorOnboardingStatusBadge","dataViewProps","useDataView","menuItems","XCircleSvg","TrashCanSvg","HamburgerMenu","EyeSvg","SlashCircleSvg","PlusCircleIcon","EmptyData","Fragment","id","DataView"],"mappings":"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"}
|
package/dist/components/Contractor/ContractorList/{index.d.ts → onboarding/ContractorList.d.ts}
RENAMED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { BaseComponentInterface } from '
|
|
1
|
+
import { BaseComponentInterface } from '../../../Base/Base';
|
|
2
2
|
/**
|
|
3
3
|
* Props for {@link ContractorList}.
|
|
4
4
|
*
|
|
5
5
|
* @public
|
|
6
6
|
*/
|
|
7
7
|
export interface ContractorListProps extends BaseComponentInterface<'Contractor.ContractorList'> {
|
|
8
|
-
/**
|
|
8
|
+
/** The associated company identifier. */
|
|
9
9
|
companyId: string;
|
|
10
10
|
/** Success message to display in an alert above the list, typically after a create, update, or delete action. */
|
|
11
11
|
successMessage?: string;
|
|
@@ -26,4 +26,4 @@ export interface ContractorListProps extends BaseComponentInterface<'Contractor.
|
|
|
26
26
|
* @returns The rendered contractor list.
|
|
27
27
|
* @public
|
|
28
28
|
*/
|
|
29
|
-
export declare function ContractorList(props: ContractorListProps): import("react").JSX.Element;
|
|
29
|
+
export declare function ContractorList({ FallbackComponent, ...props }: ContractorListProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { jsx as a } from "react/jsx-runtime";
|
|
2
|
+
import { useContractorList as m } from "../shared/useContractorList.js";
|
|
3
|
+
import { ContractorListView as L } from "./ContractorListView.js";
|
|
4
|
+
import { BaseBoundaries as R, BaseLayout as e } from "../../../Base/Base.js";
|
|
5
|
+
import { useI18n as T, useComponentDictionary as l } from "../../../../i18n/I18n.js";
|
|
6
|
+
import { componentEvents as n } from "../../../../shared/constants.js";
|
|
7
|
+
function N({
|
|
8
|
+
companyId: i,
|
|
9
|
+
onEvent: o,
|
|
10
|
+
dictionary: c,
|
|
11
|
+
successMessage: C
|
|
12
|
+
}) {
|
|
13
|
+
T("Contractor.ContractorList"), l("Contractor.ContractorList", c);
|
|
14
|
+
const t = m({ companyId: i });
|
|
15
|
+
if (t.isLoading)
|
|
16
|
+
return /* @__PURE__ */ a(e, { isLoading: !0, error: t.errorHandling.errors });
|
|
17
|
+
const d = () => {
|
|
18
|
+
o(n.CONTRACTOR_CREATE);
|
|
19
|
+
}, u = (r) => {
|
|
20
|
+
o(n.CONTRACTOR_UPDATE, { contractorId: r });
|
|
21
|
+
}, O = () => {
|
|
22
|
+
o(n.CONTRACTOR_ONBOARDING_CONTINUE);
|
|
23
|
+
};
|
|
24
|
+
return /* @__PURE__ */ a(e, { error: t.errorHandling.errors, children: /* @__PURE__ */ a(
|
|
25
|
+
L,
|
|
26
|
+
{
|
|
27
|
+
contractors: t.data.contractors,
|
|
28
|
+
isFetching: t.status.isFetching,
|
|
29
|
+
pagination: t.pagination,
|
|
30
|
+
status: t.status,
|
|
31
|
+
successMessage: C,
|
|
32
|
+
onEdit: u,
|
|
33
|
+
onDelete: async (r) => {
|
|
34
|
+
await t.actions.onDelete(r), o(n.CONTRACTOR_DELETED, { contractorId: r });
|
|
35
|
+
},
|
|
36
|
+
onCancelSelfOnboarding: async (r) => {
|
|
37
|
+
const s = await t.actions.onCancelSelfOnboarding(r);
|
|
38
|
+
s && o(n.CONTRACTOR_SELF_ONBOARDING_CANCELLED, s);
|
|
39
|
+
},
|
|
40
|
+
onAddContractor: d,
|
|
41
|
+
onContinue: O
|
|
42
|
+
}
|
|
43
|
+
) });
|
|
44
|
+
}
|
|
45
|
+
function _({ FallbackComponent: i, ...o }) {
|
|
46
|
+
return /* @__PURE__ */ a(R, { componentName: "Contractor.ContractorList", FallbackComponent: i, children: /* @__PURE__ */ a(N, { ...o }) });
|
|
47
|
+
}
|
|
48
|
+
export {
|
|
49
|
+
_ as ContractorList
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=ContractorList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContractorList.js","sources":["../../../../../src/components/Contractor/ContractorList/onboarding/ContractorList.tsx"],"sourcesContent":["import { useContractorList } from '../shared/useContractorList'\nimport { ContractorListView } from './ContractorListView'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base/Base'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\n\n/**\n * Props for {@link ContractorList}.\n *\n * @public\n */\nexport interface ContractorListProps extends BaseComponentInterface<'Contractor.ContractorList'> {\n /** The associated company identifier. */\n companyId: string\n /** Success message to display in an alert above the list, typically after a create, update, or delete action. */\n successMessage?: string\n}\n\nfunction ContractorListRoot({\n companyId,\n onEvent,\n dictionary,\n successMessage,\n}: ContractorListProps) {\n useI18n('Contractor.ContractorList')\n useComponentDictionary('Contractor.ContractorList', dictionary)\n\n const contractorList = useContractorList({ companyId })\n\n if (contractorList.isLoading) {\n return <BaseLayout isLoading error={contractorList.errorHandling.errors} />\n }\n\n const handleAddContractor = () => {\n onEvent(componentEvents.CONTRACTOR_CREATE)\n }\n\n const handleEdit = (contractorId: string) => {\n onEvent(componentEvents.CONTRACTOR_UPDATE, { contractorId })\n }\n\n const handleContinue = () => {\n onEvent(componentEvents.CONTRACTOR_ONBOARDING_CONTINUE)\n }\n\n return (\n <BaseLayout error={contractorList.errorHandling.errors}>\n <ContractorListView\n contractors={contractorList.data.contractors}\n isFetching={contractorList.status.isFetching}\n pagination={contractorList.pagination}\n status={contractorList.status}\n successMessage={successMessage}\n onEdit={handleEdit}\n onDelete={async (contractorId: string) => {\n await contractorList.actions.onDelete(contractorId)\n onEvent(componentEvents.CONTRACTOR_DELETED, { contractorId })\n }}\n onCancelSelfOnboarding={async (contractorId: string) => {\n const onboardingStatus = await contractorList.actions.onCancelSelfOnboarding(contractorId)\n if (!onboardingStatus) return\n onEvent(componentEvents.CONTRACTOR_SELF_ONBOARDING_CANCELLED, onboardingStatus)\n }}\n onAddContractor={handleAddContractor}\n onContinue={handleContinue}\n />\n </BaseLayout>\n )\n}\n\n/**\n * Lists a company's contractors with controls to add, edit, delete, cancel self-onboarding, and continue onboarding.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/create` | The add-contractor action was triggered. | — |\n * | `contractor/update` | A contractor row's edit action was triggered. | `{ contractorId: string }` |\n * | `contractor/deleted` | A contractor was successfully deleted. | `{ contractorId: string }` |\n * | `contractor/selfOnboarding/cancelled` | A contractor's self-onboarding was cancelled, reverting them to admin onboarding. | The updated `contractorOnboardingStatus` returned by the API. |\n * | `contractor/onboarding/continue` | The continue action was triggered to advance onboarding. | — |\n *\n * @param props - See {@link ContractorListProps}.\n * @returns The rendered contractor list.\n * @public\n */\nexport function ContractorList({ FallbackComponent, ...props }: ContractorListProps) {\n return (\n <BaseBoundaries componentName=\"Contractor.ContractorList\" FallbackComponent={FallbackComponent}>\n <ContractorListRoot {...props} />\n </BaseBoundaries>\n )\n}\n"],"names":["ContractorListRoot","companyId","onEvent","dictionary","successMessage","useI18n","useComponentDictionary","contractorList","useContractorList","BaseLayout","handleAddContractor","componentEvents","handleEdit","contractorId","handleContinue","jsx","ContractorListView","onboardingStatus","ContractorList","FallbackComponent","props","BaseBoundaries"],"mappings":";;;;;;AAkBA,SAASA,EAAmB;AAAA,EAC1B,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,YAAAC;AAAA,EACA,gBAAAC;AACF,GAAwB;AACtB,EAAAC,EAAQ,2BAA2B,GACnCC,EAAuB,6BAA6BH,CAAU;AAE9D,QAAMI,IAAiBC,EAAkB,EAAE,WAAAP,GAAW;AAEtD,MAAIM,EAAe;AACjB,6BAAQE,GAAA,EAAW,WAAS,IAAC,OAAOF,EAAe,cAAc,QAAQ;AAG3E,QAAMG,IAAsB,MAAM;AAChC,IAAAR,EAAQS,EAAgB,iBAAiB;AAAA,EAC3C,GAEMC,IAAa,CAACC,MAAyB;AAC3C,IAAAX,EAAQS,EAAgB,mBAAmB,EAAE,cAAAE,EAAA,CAAc;AAAA,EAC7D,GAEMC,IAAiB,MAAM;AAC3B,IAAAZ,EAAQS,EAAgB,8BAA8B;AAAA,EACxD;AAEA,SACE,gBAAAI,EAACN,GAAA,EAAW,OAAOF,EAAe,cAAc,QAC9C,UAAA,gBAAAQ;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,aAAaT,EAAe,KAAK;AAAA,MACjC,YAAYA,EAAe,OAAO;AAAA,MAClC,YAAYA,EAAe;AAAA,MAC3B,QAAQA,EAAe;AAAA,MACvB,gBAAAH;AAAA,MACA,QAAQQ;AAAA,MACR,UAAU,OAAOC,MAAyB;AACxC,cAAMN,EAAe,QAAQ,SAASM,CAAY,GAClDX,EAAQS,EAAgB,oBAAoB,EAAE,cAAAE,EAAA,CAAc;AAAA,MAC9D;AAAA,MACA,wBAAwB,OAAOA,MAAyB;AACtD,cAAMI,IAAmB,MAAMV,EAAe,QAAQ,uBAAuBM,CAAY;AACzF,QAAKI,KACLf,EAAQS,EAAgB,sCAAsCM,CAAgB;AAAA,MAChF;AAAA,MACA,iBAAiBP;AAAA,MACjB,YAAYI;AAAA,IAAA;AAAA,EAAA,GAEhB;AAEJ;AAkBO,SAASI,EAAe,EAAE,mBAAAC,GAAmB,GAAGC,KAA8B;AACnF,SACE,gBAAAL,EAACM,KAAe,eAAc,6BAA4B,mBAAAF,GACxD,UAAA,gBAAAJ,EAACf,GAAA,EAAoB,GAAGoB,EAAA,CAAO,EAAA,CACjC;AAEJ;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { UseContractorListResult, ContractorWithActions } from '../shared/useContractorList';
|
|
2
|
+
/** @internal */
|
|
3
|
+
export interface ContractorListViewProps extends Pick<Extract<UseContractorListResult, {
|
|
4
|
+
isLoading: false;
|
|
5
|
+
}>, 'pagination' | 'status'> {
|
|
6
|
+
contractors: ContractorWithActions[];
|
|
7
|
+
isFetching: boolean;
|
|
8
|
+
successMessage?: string;
|
|
9
|
+
onEdit: (contractorId: string) => void;
|
|
10
|
+
onDelete: (contractorId: string) => Promise<void>;
|
|
11
|
+
onCancelSelfOnboarding: (contractorId: string) => Promise<void>;
|
|
12
|
+
onAddContractor: () => void;
|
|
13
|
+
onContinue: () => void;
|
|
14
|
+
}
|
|
15
|
+
/** @internal */
|
|
16
|
+
export declare function ContractorListView({ contractors, isFetching, pagination, status, successMessage, onEdit, onDelete, onCancelSelfOnboarding, onAddContractor, onContinue, }: ContractorListViewProps): import("react").JSX.Element;
|