@gusto/embedded-react-sdk 0.18.0 → 0.19.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 +23 -0
- package/dist/assets/icons/icon-error-outline.svg.js +10 -0
- package/dist/assets/icons/icon-error-outline.svg.js.map +1 -0
- package/dist/assets/icons/icon-info-outline.svg.js +10 -0
- package/dist/assets/icons/icon-info-outline.svg.js.map +1 -0
- package/dist/assets/icons/icon-zap-fast.svg.js +10 -0
- package/dist/assets/icons/icon-zap-fast.svg.js.map +1 -0
- package/dist/components/Common/Fieldset/Fieldset.module.scss.js +1 -1
- package/dist/components/Common/PaginationControl/PaginationControl.js +6 -6
- package/dist/components/Common/PaginationControl/PaginationControl.js.map +1 -1
- package/dist/components/Common/RequirementsList/RequirementsList.js +19 -13
- package/dist/components/Common/RequirementsList/RequirementsList.js.map +1 -1
- package/dist/components/Common/RequirementsList/RequirementsList.module.scss.js +1 -1
- package/dist/components/Common/UI/Badge/index.d.ts +2 -0
- package/dist/components/Common/UI/Banner/Banner.d.ts +3 -0
- package/dist/components/Common/UI/Banner/Banner.js +31 -0
- package/dist/components/Common/UI/Banner/Banner.js.map +1 -0
- package/dist/components/Common/UI/Banner/Banner.module.scss.js +14 -0
- package/dist/components/Common/UI/Banner/Banner.module.scss.js.map +1 -0
- package/dist/components/Common/UI/Banner/BannerTypes.d.ts +21 -0
- package/dist/components/Common/UI/Banner/BannerTypes.js +7 -0
- package/dist/components/Common/UI/Banner/BannerTypes.js.map +1 -0
- package/dist/components/Common/UI/Banner/index.d.ts +4 -0
- package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
- package/dist/components/Common/UI/List/List.module.scss.js +2 -2
- package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
- package/dist/components/Company/DocumentSigner/DocumentList/ManageSignatories.js +13 -13
- package/dist/components/Company/DocumentSigner/DocumentList/ManageSignatories.js.map +1 -1
- package/dist/components/Company/FederalTaxes/Form.js +29 -29
- package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
- package/dist/components/Company/FederalTaxes/Head.js +5 -5
- package/dist/components/Company/FederalTaxes/Head.js.map +1 -1
- package/dist/components/Contractor/ContractorList/index.js +32 -32
- package/dist/components/Contractor/ContractorList/index.js.map +1 -1
- package/dist/components/Contractor/Profile/ContractorProfileForm.js +11 -11
- package/dist/components/Contractor/Submit/Submit.js +6 -6
- package/dist/components/Contractor/Submit/Submit.js.map +1 -1
- package/dist/components/Contractor/Submit/SubmitDone.js +8 -8
- package/dist/components/Contractor/Submit/SubmitDone.js.map +1 -1
- package/dist/components/Employee/Compensation/Edit.js +16 -16
- package/dist/components/Employee/Compensation/Edit.js.map +1 -1
- package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.d.ts +3 -3
- package/dist/components/Employee/EmployeeList/List.js +23 -23
- package/dist/components/Employee/EmployeeList/List.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/Head.js +1 -1
- package/dist/components/Employee/FederalTaxes/Head.js.map +1 -1
- package/dist/components/Employee/Landing/Landing.js +17 -16
- package/dist/components/Employee/Landing/Landing.js.map +1 -1
- package/dist/components/Employee/PaymentMethod/BankAccountsList.js +1 -1
- package/dist/components/Employee/PaymentMethod/BankAccountsList.js.map +1 -1
- package/dist/components/Employee/Profile/HomeAddress.js +1 -1
- package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
- package/dist/components/Employee/Taxes/FederalHead.js +1 -1
- package/dist/components/Employee/Taxes/FederalHead.js.map +1 -1
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.d.ts +6 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js +57 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js.map +1 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.d.ts +8 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js +79 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js.map +1 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/index.d.ts +2 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsComponents.d.ts +7 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsComponents.js +25 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsComponents.js.map +1 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.d.ts +10 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js +30 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js.map +1 -0
- package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/index.d.ts +2 -0
- package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.d.ts +10 -0
- package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.js +30 -0
- package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.js.map +1 -0
- package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/index.d.ts +2 -0
- package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.d.ts +13 -0
- package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.js +63 -0
- package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.js.map +1 -0
- package/dist/components/Payroll/ConfirmWireDetails/index.d.ts +3 -0
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js +1 -1
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/payrollHelpers.js +1 -1
- package/dist/components/Payroll/PayrollBlocker/payrollHelpers.js.map +1 -1
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +60 -59
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +30 -29
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +75 -75
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js +41 -36
- package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +25 -25
- package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +109 -89
- package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +6 -1
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +179 -147
- package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.d.ts +8 -0
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.js +49 -0
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.js.map +1 -0
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/GenericBlocker.d.ts +6 -0
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/GenericBlocker.js +18 -0
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/GenericBlocker.js.map +1 -0
- package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/index.d.ts +3 -0
- package/dist/components/Payroll/index.d.ts +1 -0
- package/dist/components/Payroll/index.js +8 -6
- package/dist/components/Payroll/index.js.map +1 -1
- package/dist/contexts/ComponentAdapter/adapters/defaultComponentAdapter.js +54 -52
- package/dist/contexts/ComponentAdapter/adapters/defaultComponentAdapter.js.map +1 -1
- package/dist/contexts/ComponentAdapter/componentAdapterTypes.d.ts +1 -0
- package/dist/contexts/ComponentAdapter/createComponentsWithDefaults.d.ts +5 -0
- package/dist/contexts/ComponentAdapter/createComponentsWithDefaults.js +27 -25
- package/dist/contexts/ComponentAdapter/createComponentsWithDefaults.js.map +1 -1
- package/dist/contexts/ComponentAdapter/useComponentContext.d.ts +2 -0
- package/dist/contexts/ComponentAdapter/useComponentContext.js +3 -3
- package/dist/contexts/ComponentAdapter/useComponentContext.js.map +1 -1
- package/dist/contexts/ThemeProvider/theme.d.ts +1 -0
- package/dist/contexts/ThemeProvider/theme.js +5 -4
- package/dist/contexts/ThemeProvider/theme.js.map +1 -1
- package/dist/i18n/I18n.js +1 -1
- package/dist/i18n/I18n.js.map +1 -1
- package/dist/i18n/en/Company.BankAccount.json.js +1 -1
- package/dist/i18n/en/Company.DocumentList.json.js +16 -16
- package/dist/i18n/en/Company.FederalTaxes.json.js +22 -22
- package/dist/i18n/en/Contractor.ContractorList.json.js +8 -8
- package/dist/i18n/en/Contractor.Submit.json.js +6 -6
- package/dist/i18n/en/Employee.Compensation.json.js +8 -8
- package/dist/i18n/en/Employee.Deductions.json.js +51 -51
- package/dist/i18n/en/Employee.EmployeeList.json.js +6 -6
- package/dist/i18n/en/Employee.FederalTaxes.json.js +3 -3
- package/dist/i18n/en/Employee.HomeAddress.json.js +2 -2
- package/dist/i18n/en/Employee.OnboardingSummary.json.js +1 -1
- package/dist/i18n/en/Employee.PaymentMethod.json.js +11 -11
- package/dist/i18n/en/Employee.Taxes.json.js +2 -2
- package/dist/i18n/en/Payroll.ConfirmWireDetailsBanner.json.js +14 -0
- package/dist/i18n/en/Payroll.ConfirmWireDetailsBanner.json.js.map +1 -0
- package/dist/i18n/en/Payroll.ConfirmWireDetailsForm.json.js +10 -0
- package/dist/i18n/en/Payroll.ConfirmWireDetailsForm.json.js.map +1 -0
- package/dist/i18n/en/Payroll.PayrollBlocker.json.js +3 -3
- package/dist/i18n/en/Payroll.PayrollEditEmployee.json.js +4 -4
- package/dist/i18n/en/Payroll.PayrollList.json.js +7 -7
- package/dist/i18n/en/Payroll.PayrollOverview.json.js +35 -33
- package/dist/i18n/en/Payroll.PayrollOverview.json.js.map +1 -1
- package/dist/i18n/en/Payroll.PayrollReceipts.json.js +7 -7
- package/dist/i18n/en/Payroll.WireInstructions.json.js +10 -0
- package/dist/i18n/en/Payroll.WireInstructions.json.js.map +1 -0
- package/dist/i18n/en/common.json.d.ts +1 -1
- package/dist/i18n/en/common.json.js +1 -1
- package/dist/shared/constants.d.ts +13 -0
- package/dist/shared/constants.js +56 -47
- package/dist/shared/constants.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/i18next.d.ts +113 -98
- package/package.json +9 -10
- package/dist/i18n/en/Company.AddBank.json.js +0 -28
- package/dist/i18n/en/Company.AddBank.json.js.map +0 -1
- package/dist/i18n/en/Payroll.PayrollSchedule.json.js +0 -27
- package/dist/i18n/en/Payroll.PayrollSchedule.json.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayrollOverviewPresentation.js","sources":["../../../../src/components/Payroll/PayrollOverview/PayrollOverviewPresentation.tsx"],"sourcesContent":["import { Trans, useTranslation } from 'react-i18next'\nimport type {\n EmployeeCompensations,\n PayrollShow,\n} from '@gusto/embedded-api/models/components/payrollshow'\nimport type { PayrollPayPeriodType } from '@gusto/embedded-api/models/components/payrollpayperiodtype'\nimport type { CompanyBankAccount } from '@gusto/embedded-api/models/components/companybankaccount'\nimport { useState, useRef } from 'react'\nimport type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport type { PayrollFlowAlert } from '../PayrollFlow/PayrollFlowComponents'\nimport { calculateTotalPayroll } from '../helpers'\nimport styles from './PayrollOverviewPresentation.module.scss'\nimport { DataView, Flex, FlexItem } from '@/components/Common'\nimport { useContainerBreakpoints } from '@/hooks/useContainerBreakpoints/useContainerBreakpoints'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport { firstLastName } from '@/helpers/formattedStrings'\nimport { compensationTypeLabels, FlsaStatus, PAYMENT_METHODS } from '@/shared/constants'\nimport DownloadIcon from '@/assets/icons/download-cloud.svg?react'\nimport { useLoadingIndicator } from '@/contexts/LoadingIndicatorProvider/useLoadingIndicator'\n\ninterface PayrollOverviewProps {\n payrollData: PayrollShow\n bankAccount?: CompanyBankAccount\n employeeDetails: Employee[]\n taxes: Record<string, { employee: number; employer: number }>\n isSubmitting?: boolean\n isProcessed: boolean\n alerts?: PayrollFlowAlert[]\n onEdit: () => void\n onSubmit: () => void\n onCancel: () => void\n onPayrollReceipt: () => void\n onPaystubDownload: (employeeId: string) => void\n}\n\nconst getPayrollOverviewTitle = (\n payPeriod: PayrollPayPeriodType | undefined,\n dateFormatter: ReturnType<typeof useDateFormatter>,\n) => {\n if (payPeriod?.startDate && payPeriod.endDate) {\n return dateFormatter.formatPayPeriod(payPeriod.startDate, payPeriod.endDate)\n }\n return { startDate: '', endDate: '' }\n}\n\nexport const PayrollOverviewPresentation = ({\n onEdit,\n onSubmit,\n onCancel,\n onPayrollReceipt,\n onPaystubDownload,\n employeeDetails,\n payrollData,\n bankAccount,\n taxes,\n isSubmitting = false,\n isProcessed,\n alerts = [],\n}: PayrollOverviewProps) => {\n const { Alert, Button, ButtonIcon, Dialog, Heading, Text, Tabs, LoadingSpinner } =\n useComponentContext()\n useI18n('Payroll.PayrollOverview')\n const dateFormatter = useDateFormatter()\n const { t } = useTranslation('Payroll.PayrollOverview')\n const formatCurrency = useNumberFormatter('currency')\n const [selectedTab, setSelectedTab] = useState('companyPays')\n const [isCancelDialogOpen, setIsCancelDialogOpen] = useState(false)\n const { LoadingIndicator } = useLoadingIndicator()\n const containerRef = useRef<HTMLDivElement>(null)\n const breakpoints = useContainerBreakpoints({ ref: containerRef })\n const isDesktop = breakpoints.includes('small')\n\n const totalPayroll = calculateTotalPayroll(payrollData)\n\n const expectedDebitDate =\n payrollData.payrollStatusMeta?.expectedDebitTime ?? payrollData.payrollDeadline\n\n const getCompanyTaxes = (employeeCompensation: EmployeeCompensations) => {\n return (\n employeeCompensation.taxes?.reduce(\n (acc, tax) => (tax.employer ? acc + tax.amount : acc),\n 0,\n ) ?? 0\n )\n }\n const getCompanyBenefits = (employeeCompensation: EmployeeCompensations) => {\n return (\n employeeCompensation.benefits?.reduce(\n (acc, benefit) => (benefit.companyContribution ? acc + benefit.companyContribution : acc),\n 0,\n ) ?? 0\n )\n }\n const getReimbursements = (employeeCompensation: EmployeeCompensations) => {\n return employeeCompensation.fixedCompensations?.length\n ? Number(\n employeeCompensation.fixedCompensations.find(\n c => c.name?.toLowerCase() === compensationTypeLabels.REIMBURSEMENT_NAME.toLowerCase(),\n )?.amount || 0,\n )\n : 0\n }\n\n const getCompanyCost = (employeeCompensation: EmployeeCompensations) => {\n return (\n employeeCompensation.grossPay! +\n getReimbursements(employeeCompensation) +\n getCompanyTaxes(employeeCompensation) +\n getCompanyBenefits(employeeCompensation)\n )\n }\n\n const employeeMap = new Map(employeeDetails.map(employee => [employee.uuid, employee]))\n\n const getEmployeeHours = (\n employeeCompensations: EmployeeCompensations,\n ): Record<string, number> => {\n return (\n employeeCompensations.hourlyCompensations?.reduce(\n (acc, hourlyCompensation) => {\n if (typeof hourlyCompensation.name === 'undefined') {\n return acc\n }\n const name = hourlyCompensation.name.toLowerCase()\n const currentHours = acc[name] ?? 0\n acc[name] = currentHours + Number(hourlyCompensation.hours || 0)\n return acc\n },\n {} as Record<string, number>,\n ) || {}\n )\n }\n const getEmployeePtoHours = (employeeCompensations: EmployeeCompensations) => {\n return (\n employeeCompensations.paidTimeOff?.reduce((acc, paidTimeOff) => {\n return acc + Number(paidTimeOff.hours || 0)\n }, 0) ?? 0\n )\n }\n\n const checkPaymentsCount =\n payrollData.employeeCompensations?.reduce(\n (acc, comp) =>\n !comp.excluded && comp.paymentMethod === PAYMENT_METHODS.check ? acc + 1 : acc,\n 0,\n ) ?? 0\n const companyPaysColumns = [\n {\n key: 'employeeName',\n title: t('tableHeaders.employees'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {firstLastName({\n first_name: employeeMap.get(employeeCompensations.employeeUuid!)?.firstName,\n last_name: employeeMap.get(employeeCompensations.employeeUuid!)?.lastName,\n })}\n </Text>\n ),\n },\n {\n key: 'grossPay',\n title: t('tableHeaders.grossPay'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>{formatCurrency(employeeCompensations.grossPay!)}</Text>\n ),\n },\n {\n key: 'reimbursements',\n title: t('tableHeaders.reimbursements'),\n render: (employeeCompensation: EmployeeCompensations) => (\n <Text>{formatCurrency(getReimbursements(employeeCompensation))}</Text>\n ),\n },\n {\n key: 'companyTaxes',\n title: t('tableHeaders.companyTaxes'),\n render: (employeeCompensation: EmployeeCompensations) => (\n <Text>{formatCurrency(getCompanyTaxes(employeeCompensation))}</Text>\n ),\n },\n {\n key: 'companyBenefits',\n title: t('tableHeaders.companyBenefits'),\n render: (employeeCompensation: EmployeeCompensations) => (\n <Text>{formatCurrency(getCompanyBenefits(employeeCompensation))}</Text>\n ),\n },\n {\n key: 'companyPays',\n title: t('tableHeaders.companyPays'),\n render: (employeeCompensation: EmployeeCompensations) => (\n <Text>{formatCurrency(getCompanyCost(employeeCompensation))}</Text>\n ),\n },\n ]\n if (isProcessed) {\n companyPaysColumns.push({\n key: 'paystubs',\n title: t('tableHeaders.paystub'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <ButtonIcon\n aria-label={t('downloadPaystubLabel')}\n variant=\"tertiary\"\n onClick={() => {\n if (employeeCompensations.employeeUuid) {\n onPaystubDownload(employeeCompensations.employeeUuid)\n }\n }}\n >\n <DownloadIcon />\n </ButtonIcon>\n ),\n })\n }\n const tabs = [\n {\n id: 'companyPays',\n label: t('dataViews.companyPaysTab'),\n content: (\n <DataView\n label={t('dataViews.companyPaysTable')}\n columns={companyPaysColumns}\n data={payrollData.employeeCompensations!}\n footer={() => ({\n employeeName: (\n <>\n <Text>{t('tableHeaders.footerTotalsLabel')}</Text>\n <Text>{t('tableHeaders.footerTotalsDescription')}</Text>\n </>\n ),\n grossPay: <Text>{formatCurrency(Number(payrollData.totals?.grossPay ?? 0))}</Text>,\n reimbursements: (\n <Text>{formatCurrency(Number(payrollData.totals?.reimbursements ?? 0))}</Text>\n ),\n companyTaxes: (\n <Text>{formatCurrency(Number(payrollData.totals?.employerTaxes ?? 0))}</Text>\n ),\n companyBenefits: (\n <Text>{formatCurrency(Number(payrollData.totals?.benefits ?? 0))}</Text>\n ),\n companyPays: <Text>{formatCurrency(totalPayroll)}</Text>,\n })}\n />\n ),\n },\n {\n id: 'hoursWorked',\n label: t('dataViews.hoursWorkedTab'),\n content: (\n <DataView\n label={t('dataViews.hoursWorkedTable')}\n columns={[\n {\n title: t('tableHeaders.employees'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {firstLastName({\n first_name: employeeMap.get(employeeCompensations.employeeUuid!)?.firstName,\n last_name: employeeMap.get(employeeCompensations.employeeUuid!)?.lastName,\n })}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.compensationType'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {employeeMap\n .get(employeeCompensations.employeeUuid!)\n ?.jobs?.reduce((acc, job) => {\n if (job.primary) {\n const flsaStatus = job.compensations?.find(\n comp => comp.uuid === job.currentCompensationUuid,\n )?.flsaStatus\n\n switch (flsaStatus) {\n case FlsaStatus.EXEMPT:\n return t('compensationTypeLabels.exempt')\n case FlsaStatus.NONEXEMPT:\n return t('compensationTypeLabels.nonexempt')\n default:\n return flsaStatus ?? ''\n }\n }\n return acc\n }, '')}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.regular'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {getEmployeeHours(employeeCompensations)[\n compensationTypeLabels.REGULAR_HOURS_NAME\n ] || 0}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.overtime'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {getEmployeeHours(employeeCompensations)[compensationTypeLabels.OVERTIME_NAME] ||\n 0}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.doubleOT'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {getEmployeeHours(employeeCompensations)[\n compensationTypeLabels.DOUBLE_OVERTIME_NAME\n ] || 0}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.timeOff'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>{getEmployeePtoHours(employeeCompensations)}</Text>\n ),\n },\n {\n title: t('tableHeaders.totalHours'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {Object.values(getEmployeeHours(employeeCompensations)).reduce(\n (acc, hours) => acc + hours,\n 0,\n ) + getEmployeePtoHours(employeeCompensations)}\n </Text>\n ),\n },\n ]}\n data={payrollData.employeeCompensations!}\n />\n ),\n },\n {\n id: 'employeeTakeHome',\n label: t('dataViews.employeeTakeHomeTab'),\n content: (\n <DataView\n label={t('dataViews.employeeTakeHomeTable')}\n columns={[\n {\n title: t('tableHeaders.employees'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {firstLastName({\n first_name: employeeMap.get(employeeCompensations.employeeUuid!)?.firstName,\n last_name: employeeMap.get(employeeCompensations.employeeUuid!)?.lastName,\n })}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.paymentType'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>{employeeCompensations.paymentMethod ?? ''}</Text>\n ),\n },\n {\n title: t('tableHeaders.grossPay'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>{formatCurrency(employeeCompensations.grossPay ?? 0)}</Text>\n ),\n },\n {\n title: t('tableHeaders.deductions'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {formatCurrency(\n employeeCompensations.deductions?.reduce(\n (acc, deduction) => acc + deduction.amount!,\n 0,\n ) ?? 0,\n )}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.reimbursements'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>{formatCurrency(getReimbursements(employeeCompensations))}</Text>\n ),\n },\n {\n title: t('tableHeaders.employeeTaxes'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {formatCurrency(\n employeeCompensations.taxes?.reduce(\n (acc, tax) => (tax.employer ? acc : acc + tax.amount),\n 0,\n ) ?? 0,\n )}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.employeeBenefits'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {formatCurrency(\n employeeCompensations.benefits?.reduce(\n (acc, benefit) => acc + (benefit.employeeDeduction ?? 0),\n 0,\n ) ?? 0,\n )}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.payment'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>{formatCurrency(employeeCompensations.netPay ?? 0)}</Text>\n ),\n },\n ]}\n data={payrollData.employeeCompensations!}\n />\n ),\n },\n {\n id: 'taxes',\n label: t('dataViews.taxesTab'),\n content: (\n <Flex flexDirection=\"column\" gap={32}>\n <DataView\n label={t('dataViews.taxesTable')}\n columns={[\n {\n key: 'taxDescription',\n title: t('tableHeaders.taxDescription'),\n render: taxKey => <Text>{taxKey}</Text>,\n },\n {\n key: 'byYourEmployees',\n title: t('tableHeaders.byYourEmployees'),\n render: taxKey => <Text>{formatCurrency(taxes[taxKey]?.employee ?? 0)}</Text>,\n },\n {\n key: 'byYourCompany',\n title: t('tableHeaders.byYourCompany'),\n render: taxKey => <Text>{formatCurrency(taxes[taxKey]?.employer ?? 0)}</Text>,\n },\n ]}\n footer={() => ({\n taxDescription: <Text>{t('totalsLabel')}</Text>,\n byYourEmployees: (\n <Text>{formatCurrency(Number(payrollData.totals?.employeeTaxes ?? 0))}</Text>\n ),\n byYourCompany: (\n <Text>{formatCurrency(Number(payrollData.totals?.employerTaxes ?? 0))}</Text>\n ),\n })}\n data={Object.keys(taxes)}\n />\n\n <DataView\n label={t('dataViews.debitedTable')}\n columns={[\n {\n title: t('tableHeaders.debitedByGusto'),\n render: ({ label }) => <Text>{label}</Text>,\n },\n {\n title: t('tableHeaders.taxesTotal'),\n render: ({ value }) => <Text>{formatCurrency(Number(value))}</Text>,\n },\n ]}\n data={[\n { label: t('directDepositLabel'), value: payrollData.totals?.netPayDebit || '0' },\n {\n label: t('reimbursementLabel'),\n value: payrollData.totals?.reimbursementDebit || '0',\n },\n {\n label: t('garnishmentsLabel'),\n value: payrollData.totals?.childSupportDebit || '0',\n },\n { label: t('taxesLabel'), value: payrollData.totals?.taxDebit || '0' },\n ]}\n />\n </Flex>\n ),\n },\n ]\n\n return (\n <div ref={containerRef} className={styles.container}>\n <Flex flexDirection=\"column\" alignItems=\"stretch\">\n <Flex\n flexDirection={isDesktop ? 'row' : 'column'}\n justifyContent={isDesktop ? 'space-between' : 'normal'}\n alignItems={isDesktop ? 'flex-start' : 'stretch'}\n gap={isDesktop ? 0 : 16}\n >\n <FlexItem flexGrow={1}>\n <Heading as=\"h1\">{isProcessed ? t('summaryTitle') : t('overviewTitle')}</Heading>\n <Text>\n <Trans\n i18nKey=\"pageSubtitle\"\n t={t}\n components={{ dateWrapper: <Text weight=\"bold\" as=\"span\" /> }}\n values={getPayrollOverviewTitle(payrollData.payPeriod, dateFormatter)}\n />\n </Text>\n </FlexItem>\n <FlexItem flexGrow={isDesktop ? 1 : 0}>\n <Flex\n flexDirection={isDesktop ? 'row' : 'column'}\n justifyContent={isDesktop ? 'flex-end' : 'normal'}\n alignItems={isDesktop ? 'flex-start' : 'stretch'}\n gap={12}\n >\n {isProcessed ? (\n <>\n <Button onClick={onPayrollReceipt} variant=\"secondary\" isDisabled={isSubmitting}>\n {t('payrollReceiptCta')}\n </Button>\n <Button\n onClick={() => {\n setIsCancelDialogOpen(true)\n }}\n variant=\"error\"\n isDisabled={isSubmitting}\n >\n {t('cancelCta')}\n </Button>\n </>\n ) : (\n <>\n <Button onClick={onEdit} variant=\"secondary\" isDisabled={isSubmitting}>\n {t('editCta')}\n </Button>\n <Button onClick={onSubmit} isDisabled={isSubmitting}>\n {t('submitCta')}\n </Button>\n </>\n )}\n </Flex>\n </FlexItem>\n </Flex>\n {isSubmitting ? (\n <LoadingIndicator>\n <Flex flexDirection=\"column\" alignItems=\"center\" gap={4}>\n <LoadingSpinner size=\"lg\" />\n <Heading as=\"h4\">{t('loadingTitle')}</Heading>\n <Text>{t('loadingDescription')}</Text>\n </Flex>\n </LoadingIndicator>\n ) : (\n <>\n {alerts.length > 0 && (\n <Flex flexDirection={'column'} gap={16}>\n {alerts.map((alert, index) => (\n <Alert\n key={`${alert.type}-${alert.title}`}\n label={alert.title}\n status={alert.type}\n >\n {alert.content ?? null}\n </Alert>\n ))}\n </Flex>\n )}\n <Heading as=\"h3\">{t('payrollSummaryTitle')}</Heading>\n <DataView\n label={t('payrollSummaryLabel')}\n columns={[\n {\n title: t('tableHeaders.totalPayroll'),\n render: () => <Text>{formatCurrency(totalPayroll)}</Text>,\n },\n {\n title: t('tableHeaders.debitAmount'),\n render: () => (\n <Text>{formatCurrency(Number(payrollData.totals?.companyDebit ?? 0))}</Text>\n ),\n },\n {\n title: t('tableHeaders.debitAccount'),\n render: () => <Text>{bankAccount?.hiddenAccountNumber ?? ''}</Text>,\n },\n {\n title: t('tableHeaders.debitDate'),\n render: () => <Text>{dateFormatter.formatShortWithYear(expectedDebitDate)}</Text>,\n },\n {\n title: t('tableHeaders.employeesPayDate'),\n render: () => (\n <Text>{dateFormatter.formatShortWithYear(payrollData.checkDate)}</Text>\n ),\n },\n ]}\n data={[{}]}\n />\n {checkPaymentsCount > 0 && (\n <Alert\n status=\"warning\"\n label={t('alerts.checkPaymentWarning', { count: checkPaymentsCount })}\n >\n <Text>{t('alerts.checkPaymentWarningDescription')}</Text>\n </Alert>\n )}\n <Tabs\n onSelectionChange={setSelectedTab}\n selectedId={selectedTab}\n aria-label={t('dataViews.label')}\n tabs={tabs}\n />\n {isCancelDialogOpen && (\n <Dialog\n isOpen={isCancelDialogOpen}\n onClose={() => {\n setIsCancelDialogOpen(false)\n }}\n onPrimaryActionClick={onCancel}\n shouldCloseOnBackdropClick={true}\n primaryActionLabel={t('confirmCancelCta')}\n isDestructive={true}\n closeActionLabel={t('declineCancelCta')}\n title={t('cancelDialogTitle', {\n startDate: dateFormatter.formatLong(payrollData.payPeriod?.startDate),\n endDate: dateFormatter.formatLongWithYear(payrollData.payPeriod?.endDate),\n })}\n >\n <Flex gap={14} flexDirection=\"column\">\n <Text>{t('cancelDialogDescription')}</Text>\n <Text>\n {t('cancelDialogDescriptionDeadline', {\n deadline: dateFormatter.formatWithTime(payrollData.payrollDeadline).time,\n })}\n </Text>\n </Flex>\n </Dialog>\n )}\n </>\n )}\n </Flex>\n </div>\n )\n}\n"],"names":["getPayrollOverviewTitle","payPeriod","dateFormatter","PayrollOverviewPresentation","onEdit","onSubmit","onCancel","onPayrollReceipt","onPaystubDownload","employeeDetails","payrollData","bankAccount","taxes","isSubmitting","isProcessed","alerts","Alert","Button","ButtonIcon","Dialog","Heading","Text","Tabs","LoadingSpinner","useComponentContext","useI18n","useDateFormatter","t","useTranslation","formatCurrency","useNumberFormatter","selectedTab","setSelectedTab","useState","isCancelDialogOpen","setIsCancelDialogOpen","LoadingIndicator","useLoadingIndicator","containerRef","useRef","isDesktop","useContainerBreakpoints","totalPayroll","calculateTotalPayroll","expectedDebitDate","getCompanyTaxes","employeeCompensation","acc","tax","getCompanyBenefits","benefit","getReimbursements","c","compensationTypeLabels","getCompanyCost","employeeMap","employee","getEmployeeHours","employeeCompensations","hourlyCompensation","name","currentHours","getEmployeePtoHours","paidTimeOff","checkPaymentsCount","comp","PAYMENT_METHODS","companyPaysColumns","jsx","firstLastName","DownloadIcon","tabs","DataView","jsxs","Fragment","job","flsaStatus","FlsaStatus","hours","deduction","Flex","taxKey","label","value","styles","FlexItem","Trans","alert","index"],"mappings":";;;;;;;;;;;;;;;;AAsCA,MAAMA,KAA0B,CAC9BC,GACAC,MAEID,GAAW,aAAaA,EAAU,UAC7BC,EAAc,gBAAgBD,EAAU,WAAWA,EAAU,OAAO,IAEtE,EAAE,WAAW,IAAI,SAAS,GAAA,GAGtBE,KAA8B,CAAC;AAAA,EAC1C,QAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA,OAAAC;AAAA,EACA,cAAAC,IAAe;AAAA,EACf,aAAAC;AAAA,EACA,QAAAC,IAAS,CAAA;AACX,MAA4B;AAC1B,QAAM,EAAE,OAAAC,GAAO,QAAAC,GAAQ,YAAAC,GAAY,QAAAC,GAAQ,SAAAC,GAAS,MAAAC,GAAM,MAAAC,GAAM,gBAAAC,EAAA,IAC9DC,GAAA;AACF,EAAAC,GAAQ,yBAAyB;AACjC,QAAMvB,IAAgBwB,GAAA,GAChB,EAAE,GAAAC,EAAA,IAAMC,GAAe,yBAAyB,GAChDC,IAAiBC,GAAmB,UAAU,GAC9C,CAACC,GAAaC,CAAc,IAAIC,EAAS,aAAa,GACtD,CAACC,GAAoBC,CAAqB,IAAIF,EAAS,EAAK,GAC5D,EAAE,kBAAAG,EAAA,IAAqBC,GAAA,GACvBC,IAAeC,GAAuB,IAAI,GAE1CC,IADcC,GAAwB,EAAE,KAAKH,GAAc,EACnC,SAAS,OAAO,GAExCI,IAAeC,GAAsBjC,CAAW,GAEhDkC,KACJlC,EAAY,mBAAmB,qBAAqBA,EAAY,iBAE5DmC,IAAkB,CAACC,MAErBA,EAAqB,OAAO;AAAA,IAC1B,CAACC,GAAKC,MAASA,EAAI,WAAWD,IAAMC,EAAI,SAASD;AAAA,IACjD;AAAA,EAAA,KACG,GAGHE,IAAqB,CAACH,MAExBA,EAAqB,UAAU;AAAA,IAC7B,CAACC,GAAKG,MAAaA,EAAQ,sBAAsBH,IAAMG,EAAQ,sBAAsBH;AAAA,IACrF;AAAA,EAAA,KACG,GAGHI,IAAoB,CAACL,MAClBA,EAAqB,oBAAoB,SAC5C;AAAA,IACEA,EAAqB,mBAAmB;AAAA,MACtC,OAAKM,EAAE,MAAM,kBAAkBC,EAAuB,mBAAmB,YAAA;AAAA,IAAY,GACpF,UAAU;AAAA,EAAA,IAEf,GAGAC,KAAiB,CAACR,MAEpBA,EAAqB,WACrBK,EAAkBL,CAAoB,IACtCD,EAAgBC,CAAoB,IACpCG,EAAmBH,CAAoB,GAIrCS,IAAc,IAAI,IAAI9C,EAAgB,IAAI,CAAA+C,MAAY,CAACA,EAAS,MAAMA,CAAQ,CAAC,CAAC,GAEhFC,IAAmB,CACvBC,MAGEA,EAAsB,qBAAqB;AAAA,IACzC,CAACX,GAAKY,MAAuB;AAC3B,UAAI,OAAOA,EAAmB,OAAS;AACrC,eAAOZ;AAET,YAAMa,IAAOD,EAAmB,KAAK,YAAA,GAC/BE,IAAed,EAAIa,CAAI,KAAK;AAClC,aAAAb,EAAIa,CAAI,IAAIC,IAAe,OAAOF,EAAmB,SAAS,CAAC,GACxDZ;AAAA,IACT;AAAA,IACA,CAAA;AAAA,EAAC,KACE,CAAA,GAGHe,IAAsB,CAACJ,MAEzBA,EAAsB,aAAa,OAAO,CAACX,GAAKgB,MACvChB,IAAM,OAAOgB,EAAY,SAAS,CAAC,GACzC,CAAC,KAAK,GAIPC,IACJtD,EAAY,uBAAuB;AAAA,IACjC,CAACqC,GAAKkB,MACJ,CAACA,EAAK,YAAYA,EAAK,kBAAkBC,GAAgB,QAAQnB,IAAM,IAAIA;AAAA,IAC7E;AAAA,EAAA,KACG,GACDoB,IAAqB;AAAA,IACzB;AAAA,MACE,KAAK;AAAA,MACL,OAAOxC,EAAE,wBAAwB;AAAA,MACjC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,KACE,UAAAgD,EAAc;AAAA,QACb,YAAYd,EAAY,IAAIG,EAAsB,YAAa,GAAG;AAAA,QAClE,WAAWH,EAAY,IAAIG,EAAsB,YAAa,GAAG;AAAA,MAAA,CAClE,EAAA,CACH;AAAA,IAAA;AAAA,IAGJ;AAAA,MACE,KAAK;AAAA,MACL,OAAO/B,EAAE,uBAAuB;AAAA,MAChC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,KAAM,UAAAQ,EAAe6B,EAAsB,QAAS,EAAA,CAAE;AAAA,IAAA;AAAA,IAG3D;AAAA,MACE,KAAK;AAAA,MACL,OAAO/B,EAAE,6BAA6B;AAAA,MACtC,QAAQ,CAACmB,MACP,gBAAAsB,EAAC/C,KAAM,UAAAQ,EAAesB,EAAkBL,CAAoB,CAAC,EAAA,CAAE;AAAA,IAAA;AAAA,IAGnE;AAAA,MACE,KAAK;AAAA,MACL,OAAOnB,EAAE,2BAA2B;AAAA,MACpC,QAAQ,CAACmB,MACP,gBAAAsB,EAAC/C,KAAM,UAAAQ,EAAegB,EAAgBC,CAAoB,CAAC,EAAA,CAAE;AAAA,IAAA;AAAA,IAGjE;AAAA,MACE,KAAK;AAAA,MACL,OAAOnB,EAAE,8BAA8B;AAAA,MACvC,QAAQ,CAACmB,MACP,gBAAAsB,EAAC/C,KAAM,UAAAQ,EAAeoB,EAAmBH,CAAoB,CAAC,EAAA,CAAE;AAAA,IAAA;AAAA,IAGpE;AAAA,MACE,KAAK;AAAA,MACL,OAAOnB,EAAE,0BAA0B;AAAA,MACnC,QAAQ,CAACmB,MACP,gBAAAsB,EAAC/C,KAAM,UAAAQ,EAAeyB,GAAeR,CAAoB,CAAC,EAAA,CAAE;AAAA,IAAA;AAAA,EAEhE;AAEF,EAAIhC,KACFqD,EAAmB,KAAK;AAAA,IACtB,KAAK;AAAA,IACL,OAAOxC,EAAE,sBAAsB;AAAA,IAC/B,QAAQ,CAAC+B,MACP,gBAAAU;AAAA,MAAClD;AAAA,MAAA;AAAA,QACC,cAAYS,EAAE,sBAAsB;AAAA,QACpC,SAAQ;AAAA,QACR,SAAS,MAAM;AACb,UAAI+B,EAAsB,gBACxBlD,EAAkBkD,EAAsB,YAAY;AAAA,QAExD;AAAA,QAEA,4BAACY,IAAA,CAAA,CAAa;AAAA,MAAA;AAAA,IAAA;AAAA,EAChB,CAEH;AAEH,QAAMC,KAAO;AAAA,IACX;AAAA,MACE,IAAI;AAAA,MACJ,OAAO5C,EAAE,0BAA0B;AAAA,MACnC,SACE,gBAAAyC;AAAA,QAACI;AAAA,QAAA;AAAA,UACC,OAAO7C,EAAE,4BAA4B;AAAA,UACrC,SAASwC;AAAA,UACT,MAAMzD,EAAY;AAAA,UAClB,QAAQ,OAAO;AAAA,YACb,cACE,gBAAA+D,EAAAC,GAAA,EACE,UAAA;AAAA,cAAA,gBAAAN,EAAC/C,GAAA,EAAM,UAAAM,EAAE,gCAAgC,EAAA,CAAE;AAAA,cAC3C,gBAAAyC,EAAC/C,GAAA,EAAM,UAAAM,EAAE,sCAAsC,EAAA,CAAE;AAAA,YAAA,GACnD;AAAA,YAEF,UAAU,gBAAAyC,EAAC/C,GAAA,EAAM,UAAAQ,EAAe,OAAOnB,EAAY,QAAQ,YAAY,CAAC,CAAC,EAAA,CAAE;AAAA,YAC3E,gBACE,gBAAA0D,EAAC/C,GAAA,EAAM,UAAAQ,EAAe,OAAOnB,EAAY,QAAQ,kBAAkB,CAAC,CAAC,EAAA,CAAE;AAAA,YAEzE,cACE,gBAAA0D,EAAC/C,GAAA,EAAM,UAAAQ,EAAe,OAAOnB,EAAY,QAAQ,iBAAiB,CAAC,CAAC,EAAA,CAAE;AAAA,YAExE,iBACE,gBAAA0D,EAAC/C,GAAA,EAAM,UAAAQ,EAAe,OAAOnB,EAAY,QAAQ,YAAY,CAAC,CAAC,EAAA,CAAE;AAAA,YAEnE,aAAa,gBAAA0D,EAAC/C,GAAA,EAAM,UAAAQ,EAAea,CAAY,EAAA,CAAE;AAAA,UAAA;AAAA,QACnD;AAAA,MAAA;AAAA,IACF;AAAA,IAGJ;AAAA,MACE,IAAI;AAAA,MACJ,OAAOf,EAAE,0BAA0B;AAAA,MACnC,SACE,gBAAAyC;AAAA,QAACI;AAAA,QAAA;AAAA,UACC,OAAO7C,EAAE,4BAA4B;AAAA,UACrC,SAAS;AAAA,YACP;AAAA,cACE,OAAOA,EAAE,wBAAwB;AAAA,cACjC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,KACE,UAAAgD,EAAc;AAAA,gBACb,YAAYd,EAAY,IAAIG,EAAsB,YAAa,GAAG;AAAA,gBAClE,WAAWH,EAAY,IAAIG,EAAsB,YAAa,GAAG;AAAA,cAAA,CAClE,EAAA,CACH;AAAA,YAAA;AAAA,YAGJ;AAAA,cACE,OAAO/B,EAAE,+BAA+B;AAAA,cACxC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,KACE,UAAAkC,EACE,IAAIG,EAAsB,YAAa,GACtC,MAAM,OAAO,CAACX,GAAK4B,MAAQ;AAC3B,oBAAIA,EAAI,SAAS;AACf,wBAAMC,IAAaD,EAAI,eAAe;AAAA,oBACpC,CAAAV,MAAQA,EAAK,SAASU,EAAI;AAAA,kBAAA,GACzB;AAEH,0BAAQC,GAAA;AAAA,oBACN,KAAKC,EAAW;AACd,6BAAOlD,EAAE,+BAA+B;AAAA,oBAC1C,KAAKkD,EAAW;AACd,6BAAOlD,EAAE,kCAAkC;AAAA,oBAC7C;AACE,6BAAOiD,KAAc;AAAA,kBAAA;AAAA,gBAE3B;AACA,uBAAO7B;AAAA,cACT,GAAG,EAAE,EAAA,CACT;AAAA,YAAA;AAAA,YAGJ;AAAA,cACE,OAAOpB,EAAE,sBAAsB;AAAA,cAC/B,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,GAAA,EACE,UAAAoC,EAAiBC,CAAqB,EACrCL,EAAuB,kBACzB,KAAK,EAAA,CACP;AAAA,YAAA;AAAA,YAGJ;AAAA,cACE,OAAO1B,EAAE,uBAAuB;AAAA,cAChC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,GAAA,EACE,UAAAoC,EAAiBC,CAAqB,EAAEL,EAAuB,aAAa,KAC3E,EAAA,CACJ;AAAA,YAAA;AAAA,YAGJ;AAAA,cACE,OAAO1B,EAAE,uBAAuB;AAAA,cAChC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,GAAA,EACE,UAAAoC,EAAiBC,CAAqB,EACrCL,EAAuB,oBACzB,KAAK,EAAA,CACP;AAAA,YAAA;AAAA,YAGJ;AAAA,cACE,OAAO1B,EAAE,sBAAsB;AAAA,cAC/B,QAAQ,CAAC+B,wBACNrC,GAAA,EAAM,UAAAyC,EAAoBJ,CAAqB,EAAA,CAAE;AAAA,YAAA;AAAA,YAGtD;AAAA,cACE,OAAO/B,EAAE,yBAAyB;AAAA,cAClC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,GAAA,EACE,iBAAO,OAAOoC,EAAiBC,CAAqB,CAAC,EAAE;AAAA,gBACtD,CAACX,GAAK+B,MAAU/B,IAAM+B;AAAA,gBACtB;AAAA,cAAA,IACEhB,EAAoBJ,CAAqB,EAAA,CAC/C;AAAA,YAAA;AAAA,UAEJ;AAAA,UAEF,MAAMhD,EAAY;AAAA,QAAA;AAAA,MAAA;AAAA,IACpB;AAAA,IAGJ;AAAA,MACE,IAAI;AAAA,MACJ,OAAOiB,EAAE,+BAA+B;AAAA,MACxC,SACE,gBAAAyC;AAAA,QAACI;AAAA,QAAA;AAAA,UACC,OAAO7C,EAAE,iCAAiC;AAAA,UAC1C,SAAS;AAAA,YACP;AAAA,cACE,OAAOA,EAAE,wBAAwB;AAAA,cACjC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,KACE,UAAAgD,EAAc;AAAA,gBACb,YAAYd,EAAY,IAAIG,EAAsB,YAAa,GAAG;AAAA,gBAClE,WAAWH,EAAY,IAAIG,EAAsB,YAAa,GAAG;AAAA,cAAA,CAClE,EAAA,CACH;AAAA,YAAA;AAAA,YAGJ;AAAA,cACE,OAAO/B,EAAE,0BAA0B;AAAA,cACnC,QAAQ,CAAC+B,wBACNrC,GAAA,EAAM,UAAAqC,EAAsB,iBAAiB,GAAA,CAAG;AAAA,YAAA;AAAA,YAGrD;AAAA,cACE,OAAO/B,EAAE,uBAAuB;AAAA,cAChC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,KAAM,UAAAQ,EAAe6B,EAAsB,YAAY,CAAC,EAAA,CAAE;AAAA,YAAA;AAAA,YAG/D;AAAA,cACE,OAAO/B,EAAE,yBAAyB;AAAA,cAClC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,GAAA,EACE,UAAAQ;AAAA,gBACC6B,EAAsB,YAAY;AAAA,kBAChC,CAACX,GAAKgC,MAAchC,IAAMgC,EAAU;AAAA,kBACpC;AAAA,gBAAA,KACG;AAAA,cAAA,EACP,CACF;AAAA,YAAA;AAAA,YAGJ;AAAA,cACE,OAAOpD,EAAE,6BAA6B;AAAA,cACtC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,KAAM,UAAAQ,EAAesB,EAAkBO,CAAqB,CAAC,EAAA,CAAE;AAAA,YAAA;AAAA,YAGpE;AAAA,cACE,OAAO/B,EAAE,4BAA4B;AAAA,cACrC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,GAAA,EACE,UAAAQ;AAAA,gBACC6B,EAAsB,OAAO;AAAA,kBAC3B,CAACX,GAAKC,MAASA,EAAI,WAAWD,IAAMA,IAAMC,EAAI;AAAA,kBAC9C;AAAA,gBAAA,KACG;AAAA,cAAA,EACP,CACF;AAAA,YAAA;AAAA,YAGJ;AAAA,cACE,OAAOrB,EAAE,+BAA+B;AAAA,cACxC,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,GAAA,EACE,UAAAQ;AAAA,gBACC6B,EAAsB,UAAU;AAAA,kBAC9B,CAACX,GAAKG,MAAYH,KAAOG,EAAQ,qBAAqB;AAAA,kBACtD;AAAA,gBAAA,KACG;AAAA,cAAA,EACP,CACF;AAAA,YAAA;AAAA,YAGJ;AAAA,cACE,OAAOvB,EAAE,sBAAsB;AAAA,cAC/B,QAAQ,CAAC+B,MACP,gBAAAU,EAAC/C,KAAM,UAAAQ,EAAe6B,EAAsB,UAAU,CAAC,EAAA,CAAE;AAAA,YAAA;AAAA,UAE7D;AAAA,UAEF,MAAMhD,EAAY;AAAA,QAAA;AAAA,MAAA;AAAA,IACpB;AAAA,IAGJ;AAAA,MACE,IAAI;AAAA,MACJ,OAAOiB,EAAE,oBAAoB;AAAA,MAC7B,SACE,gBAAA8C,EAACO,GAAA,EAAK,eAAc,UAAS,KAAK,IAChC,UAAA;AAAA,QAAA,gBAAAZ;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,OAAO7C,EAAE,sBAAsB;AAAA,YAC/B,SAAS;AAAA,cACP;AAAA,gBACE,KAAK;AAAA,gBACL,OAAOA,EAAE,6BAA6B;AAAA,gBACtC,QAAQ,CAAAsD,MAAU,gBAAAb,EAAC/C,GAAA,EAAM,UAAA4D,EAAA,CAAO;AAAA,cAAA;AAAA,cAElC;AAAA,gBACE,KAAK;AAAA,gBACL,OAAOtD,EAAE,8BAA8B;AAAA,gBACvC,QAAQ,CAAAsD,MAAU,gBAAAb,EAAC/C,GAAA,EAAM,UAAAQ,EAAejB,EAAMqE,CAAM,GAAG,YAAY,CAAC,EAAA,CAAE;AAAA,cAAA;AAAA,cAExE;AAAA,gBACE,KAAK;AAAA,gBACL,OAAOtD,EAAE,4BAA4B;AAAA,gBACrC,QAAQ,CAAAsD,MAAU,gBAAAb,EAAC/C,GAAA,EAAM,UAAAQ,EAAejB,EAAMqE,CAAM,GAAG,YAAY,CAAC,EAAA,CAAE;AAAA,cAAA;AAAA,YACxE;AAAA,YAEF,QAAQ,OAAO;AAAA,cACb,gBAAgB,gBAAAb,EAAC/C,GAAA,EAAM,UAAAM,EAAE,aAAa,GAAE;AAAA,cACxC,iBACE,gBAAAyC,EAAC/C,GAAA,EAAM,UAAAQ,EAAe,OAAOnB,EAAY,QAAQ,iBAAiB,CAAC,CAAC,EAAA,CAAE;AAAA,cAExE,eACE,gBAAA0D,EAAC/C,GAAA,EAAM,UAAAQ,EAAe,OAAOnB,EAAY,QAAQ,iBAAiB,CAAC,CAAC,EAAA,CAAE;AAAA,YAAA;AAAA,YAG1E,MAAM,OAAO,KAAKE,CAAK;AAAA,UAAA;AAAA,QAAA;AAAA,QAGzB,gBAAAwD;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,OAAO7C,EAAE,wBAAwB;AAAA,YACjC,SAAS;AAAA,cACP;AAAA,gBACE,OAAOA,EAAE,6BAA6B;AAAA,gBACtC,QAAQ,CAAC,EAAE,OAAAuD,QAAY,gBAAAd,EAAC/C,KAAM,UAAA6D,EAAA,CAAM;AAAA,cAAA;AAAA,cAEtC;AAAA,gBACE,OAAOvD,EAAE,yBAAyB;AAAA,gBAClC,QAAQ,CAAC,EAAE,OAAAwD,EAAA,MAAY,gBAAAf,EAAC/C,GAAA,EAAM,UAAAQ,EAAe,OAAOsD,CAAK,CAAC,EAAA,CAAE;AAAA,cAAA;AAAA,YAC9D;AAAA,YAEF,MAAM;AAAA,cACJ,EAAE,OAAOxD,EAAE,oBAAoB,GAAG,OAAOjB,EAAY,QAAQ,eAAe,IAAA;AAAA,cAC5E;AAAA,gBACE,OAAOiB,EAAE,oBAAoB;AAAA,gBAC7B,OAAOjB,EAAY,QAAQ,sBAAsB;AAAA,cAAA;AAAA,cAEnD;AAAA,gBACE,OAAOiB,EAAE,mBAAmB;AAAA,gBAC5B,OAAOjB,EAAY,QAAQ,qBAAqB;AAAA,cAAA;AAAA,cAElD,EAAE,OAAOiB,EAAE,YAAY,GAAG,OAAOjB,EAAY,QAAQ,YAAY,IAAA;AAAA,YAAI;AAAA,UACvE;AAAA,QAAA;AAAA,MACF,EAAA,CACF;AAAA,IAAA;AAAA,EAEJ;AAGF,SACE,gBAAA0D,EAAC,OAAA,EAAI,KAAK9B,GAAc,WAAW8C,GAAO,WACxC,UAAA,gBAAAX,EAACO,GAAA,EAAK,eAAc,UAAS,YAAW,WACtC,UAAA;AAAA,IAAA,gBAAAP;AAAA,MAACO;AAAA,MAAA;AAAA,QACC,eAAexC,IAAY,QAAQ;AAAA,QACnC,gBAAgBA,IAAY,kBAAkB;AAAA,QAC9C,YAAYA,IAAY,eAAe;AAAA,QACvC,KAAKA,IAAY,IAAI;AAAA,QAErB,UAAA;AAAA,UAAA,gBAAAiC,EAACY,GAAA,EAAS,UAAU,GAClB,UAAA;AAAA,YAAA,gBAAAjB,EAAChD,GAAA,EAAQ,IAAG,MAAM,UAAcO,EAAdb,IAAgB,iBAAoB,eAAN,EAAqB,CAAE;AAAA,8BACtEO,GAAA,EACC,UAAA,gBAAA+C;AAAA,cAACkB;AAAA,cAAA;AAAA,gBACC,SAAQ;AAAA,gBACR,GAAA3D;AAAA,gBACA,YAAY,EAAE,aAAa,gBAAAyC,EAAC/C,KAAK,QAAO,QAAO,IAAG,OAAA,CAAO,EAAA;AAAA,gBACzD,QAAQrB,GAAwBU,EAAY,WAAWR,CAAa;AAAA,cAAA;AAAA,YAAA,EACtE,CACF;AAAA,UAAA,GACF;AAAA,UACA,gBAAAkE,EAACiB,GAAA,EAAS,UAAU7C,IAAY,IAAI,GAClC,UAAA,gBAAA4B;AAAA,YAACY;AAAA,YAAA;AAAA,cACC,eAAexC,IAAY,QAAQ;AAAA,cACnC,gBAAgBA,IAAY,aAAa;AAAA,cACzC,YAAYA,IAAY,eAAe;AAAA,cACvC,KAAK;AAAA,cAEJ,cACC,gBAAAiC,EAAAC,GAAA,EACE,UAAA;AAAA,gBAAA,gBAAAN,EAACnD,GAAA,EAAO,SAASV,GAAkB,SAAQ,aAAY,YAAYM,GAChE,UAAAc,EAAE,mBAAmB,EAAA,CACxB;AAAA,gBACA,gBAAAyC;AAAA,kBAACnD;AAAA,kBAAA;AAAA,oBACC,SAAS,MAAM;AACb,sBAAAkB,EAAsB,EAAI;AAAA,oBAC5B;AAAA,oBACA,SAAQ;AAAA,oBACR,YAAYtB;AAAA,oBAEX,YAAE,WAAW;AAAA,kBAAA;AAAA,gBAAA;AAAA,cAChB,EAAA,CACF,IAEA,gBAAA4D,EAAAC,GAAA,EACE,UAAA;AAAA,gBAAA,gBAAAN,EAACnD,GAAA,EAAO,SAASb,GAAQ,SAAQ,aAAY,YAAYS,GACtD,UAAAc,EAAE,SAAS,EAAA,CACd;AAAA,gBACA,gBAAAyC,EAACnD,KAAO,SAASZ,GAAU,YAAYQ,GACpC,UAAAc,EAAE,WAAW,EAAA,CAChB;AAAA,cAAA,EAAA,CACF;AAAA,YAAA;AAAA,UAAA,EAEJ,CACF;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAEDd,IACC,gBAAAuD,EAAChC,GAAA,EACC,UAAA,gBAAAqC,EAACO,GAAA,EAAK,eAAc,UAAS,YAAW,UAAS,KAAK,GACpD,UAAA;AAAA,MAAA,gBAAAZ,EAAC7C,GAAA,EAAe,MAAK,KAAA,CAAK;AAAA,wBACzBH,GAAA,EAAQ,IAAG,MAAM,UAAAO,EAAE,cAAc,GAAE;AAAA,MACpC,gBAAAyC,EAAC/C,GAAA,EAAM,UAAAM,EAAE,oBAAoB,EAAA,CAAE;AAAA,IAAA,EAAA,CACjC,EAAA,CACF,IAEA,gBAAA8C,EAAAC,GAAA,EACG,UAAA;AAAA,MAAA3D,EAAO,SAAS,KACf,gBAAAqD,EAACY,GAAA,EAAK,eAAe,UAAU,KAAK,IACjC,UAAAjE,EAAO,IAAI,CAACwE,GAAOC,MAClB,gBAAApB;AAAA,QAACpD;AAAA,QAAA;AAAA,UAEC,OAAOuE,EAAM;AAAA,UACb,QAAQA,EAAM;AAAA,UAEb,YAAM,WAAW;AAAA,QAAA;AAAA,QAJb,GAAGA,EAAM,IAAI,IAAIA,EAAM,KAAK;AAAA,MAAA,CAMpC,GACH;AAAA,wBAEDnE,GAAA,EAAQ,IAAG,MAAM,UAAAO,EAAE,qBAAqB,GAAE;AAAA,MAC3C,gBAAAyC;AAAA,QAACI;AAAA,QAAA;AAAA,UACC,OAAO7C,EAAE,qBAAqB;AAAA,UAC9B,SAAS;AAAA,YACP;AAAA,cACE,OAAOA,EAAE,2BAA2B;AAAA,cACpC,QAAQ,MAAM,gBAAAyC,EAAC/C,GAAA,EAAM,UAAAQ,EAAea,CAAY,EAAA,CAAE;AAAA,YAAA;AAAA,YAEpD;AAAA,cACE,OAAOf,EAAE,0BAA0B;AAAA,cACnC,QAAQ,MACN,gBAAAyC,EAAC/C,GAAA,EAAM,UAAAQ,EAAe,OAAOnB,EAAY,QAAQ,gBAAgB,CAAC,CAAC,EAAA,CAAE;AAAA,YAAA;AAAA,YAGzE;AAAA,cACE,OAAOiB,EAAE,2BAA2B;AAAA,cACpC,QAAQ,MAAM,gBAAAyC,EAAC/C,GAAA,EAAM,UAAAV,GAAa,uBAAuB,GAAA,CAAG;AAAA,YAAA;AAAA,YAE9D;AAAA,cACE,OAAOgB,EAAE,wBAAwB;AAAA,cACjC,QAAQ,MAAM,gBAAAyC,EAAC/C,KAAM,UAAAnB,EAAc,oBAAoB0C,EAAiB,EAAA,CAAE;AAAA,YAAA;AAAA,YAE5E;AAAA,cACE,OAAOjB,EAAE,+BAA+B;AAAA,cACxC,QAAQ,MACN,gBAAAyC,EAAC/C,GAAA,EAAM,YAAc,oBAAoBX,EAAY,SAAS,EAAA,CAAE;AAAA,YAAA;AAAA,UAEpE;AAAA,UAEF,MAAM,CAAC,CAAA,CAAE;AAAA,QAAA;AAAA,MAAA;AAAA,MAEVsD,IAAqB,KACpB,gBAAAI;AAAA,QAACpD;AAAA,QAAA;AAAA,UACC,QAAO;AAAA,UACP,OAAOW,EAAE,8BAA8B,EAAE,OAAOqC,GAAoB;AAAA,UAEpE,UAAA,gBAAAI,EAAC/C,GAAA,EAAM,UAAAM,EAAE,uCAAuC,EAAA,CAAE;AAAA,QAAA;AAAA,MAAA;AAAA,MAGtD,gBAAAyC;AAAA,QAAC9C;AAAA,QAAA;AAAA,UACC,mBAAmBU;AAAA,UACnB,YAAYD;AAAA,UACZ,cAAYJ,EAAE,iBAAiB;AAAA,UAC/B,MAAA4C;AAAA,QAAA;AAAA,MAAA;AAAA,MAEDrC,KACC,gBAAAkC;AAAA,QAACjD;AAAA,QAAA;AAAA,UACC,QAAQe;AAAA,UACR,SAAS,MAAM;AACb,YAAAC,EAAsB,EAAK;AAAA,UAC7B;AAAA,UACA,sBAAsB7B;AAAA,UACtB,4BAA4B;AAAA,UAC5B,oBAAoBqB,EAAE,kBAAkB;AAAA,UACxC,eAAe;AAAA,UACf,kBAAkBA,EAAE,kBAAkB;AAAA,UACtC,OAAOA,EAAE,qBAAqB;AAAA,YAC5B,WAAWzB,EAAc,WAAWQ,EAAY,WAAW,SAAS;AAAA,YACpE,SAASR,EAAc,mBAAmBQ,EAAY,WAAW,OAAO;AAAA,UAAA,CACzE;AAAA,UAED,UAAA,gBAAA+D,EAACO,GAAA,EAAK,KAAK,IAAI,eAAc,UAC3B,UAAA;AAAA,YAAA,gBAAAZ,EAAC/C,GAAA,EAAM,UAAAM,EAAE,yBAAyB,EAAA,CAAE;AAAA,YACpC,gBAAAyC,EAAC/C,GAAA,EACE,UAAAM,EAAE,mCAAmC;AAAA,cACpC,UAAUzB,EAAc,eAAeQ,EAAY,eAAe,EAAE;AAAA,YAAA,CACrE,EAAA,CACH;AAAA,UAAA,EAAA,CACF;AAAA,QAAA;AAAA,MAAA;AAAA,IACF,EAAA,CAEJ;AAAA,EAAA,EAAA,CAEJ,EAAA,CACF;AAEJ;"}
|
|
1
|
+
{"version":3,"file":"PayrollOverviewPresentation.js","sources":["../../../../src/components/Payroll/PayrollOverview/PayrollOverviewPresentation.tsx"],"sourcesContent":["import { Trans, useTranslation } from 'react-i18next'\nimport type {\n EmployeeCompensations,\n PayrollShow,\n} from '@gusto/embedded-api/models/components/payrollshow'\nimport type { PayrollPayPeriodType } from '@gusto/embedded-api/models/components/payrollpayperiodtype'\nimport type { CompanyBankAccount } from '@gusto/embedded-api/models/components/companybankaccount'\nimport { useState, useRef } from 'react'\nimport type { Employee } from '@gusto/embedded-api/models/components/employee'\nimport type { PayrollSubmissionBlockersType } from '@gusto/embedded-api/models/components/payrollsubmissionblockerstype'\nimport type { PayrollFlowAlert } from '../PayrollFlow/PayrollFlowComponents'\nimport { calculateTotalPayroll } from '../helpers'\nimport { FastAchThresholdExceeded, GenericBlocker } from './SubmissionBlockers'\nimport styles from './PayrollOverviewPresentation.module.scss'\nimport { DataView, Flex, FlexItem } from '@/components/Common'\nimport { useContainerBreakpoints } from '@/hooks/useContainerBreakpoints/useContainerBreakpoints'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport { firstLastName } from '@/helpers/formattedStrings'\nimport {\n compensationTypeLabels,\n FlsaStatus,\n PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES,\n PAYMENT_METHODS,\n} from '@/shared/constants'\nimport DownloadIcon from '@/assets/icons/download-cloud.svg?react'\nimport { useLoadingIndicator } from '@/contexts/LoadingIndicatorProvider/useLoadingIndicator'\n\ninterface PayrollOverviewProps {\n payrollData: PayrollShow\n bankAccount?: CompanyBankAccount\n employeeDetails: Employee[]\n taxes: Record<string, { employee: number; employer: number }>\n isSubmitting?: boolean\n isProcessed: boolean\n alerts?: PayrollFlowAlert[]\n submissionBlockers?: PayrollSubmissionBlockersType[]\n selectedUnblockOptions?: Record<string, string>\n wireInConfirmationRequest?: React.ReactNode\n onEdit: () => void\n onSubmit: () => void\n onCancel: () => void\n onPayrollReceipt: () => void\n onPaystubDownload: (employeeId: string) => void\n onUnblockOptionChange?: (blockerType: string, value: string) => void\n}\n\nconst getPayrollOverviewTitle = (\n payPeriod: PayrollPayPeriodType | undefined,\n dateFormatter: ReturnType<typeof useDateFormatter>,\n) => {\n if (payPeriod?.startDate && payPeriod.endDate) {\n return dateFormatter.formatPayPeriod(payPeriod.startDate, payPeriod.endDate)\n }\n return { startDate: '', endDate: '' }\n}\n\nexport const PayrollOverviewPresentation = ({\n onEdit,\n onSubmit,\n onCancel,\n onPayrollReceipt,\n onPaystubDownload,\n employeeDetails,\n payrollData,\n bankAccount,\n taxes,\n isSubmitting = false,\n isProcessed,\n alerts = [],\n submissionBlockers = [],\n selectedUnblockOptions = {},\n onUnblockOptionChange,\n wireInConfirmationRequest,\n}: PayrollOverviewProps) => {\n const { Alert, Button, ButtonIcon, Dialog, Heading, Text, Tabs, LoadingSpinner } =\n useComponentContext()\n useI18n('Payroll.PayrollOverview')\n const dateFormatter = useDateFormatter()\n const { t } = useTranslation('Payroll.PayrollOverview')\n const formatCurrency = useNumberFormatter('currency')\n const [selectedTab, setSelectedTab] = useState('companyPays')\n const [isCancelDialogOpen, setIsCancelDialogOpen] = useState(false)\n const { LoadingIndicator } = useLoadingIndicator()\n const containerRef = useRef<HTMLDivElement>(null)\n const breakpoints = useContainerBreakpoints({ ref: containerRef })\n const isDesktop = breakpoints.includes('small')\n\n const totalPayroll = calculateTotalPayroll(payrollData)\n\n const expectedDebitDate =\n payrollData.payrollStatusMeta?.expectedDebitTime ?? payrollData.payrollDeadline\n\n const getCompanyTaxes = (employeeCompensation: EmployeeCompensations) => {\n return (\n employeeCompensation.taxes?.reduce(\n (acc, tax) => (tax.employer ? acc + tax.amount : acc),\n 0,\n ) ?? 0\n )\n }\n const getCompanyBenefits = (employeeCompensation: EmployeeCompensations) => {\n return (\n employeeCompensation.benefits?.reduce(\n (acc, benefit) => (benefit.companyContribution ? acc + benefit.companyContribution : acc),\n 0,\n ) ?? 0\n )\n }\n const getReimbursements = (employeeCompensation: EmployeeCompensations) => {\n return employeeCompensation.fixedCompensations?.length\n ? Number(\n employeeCompensation.fixedCompensations.find(\n c => c.name?.toLowerCase() === compensationTypeLabels.REIMBURSEMENT_NAME.toLowerCase(),\n )?.amount || 0,\n )\n : 0\n }\n\n const getCompanyCost = (employeeCompensation: EmployeeCompensations) => {\n return (\n employeeCompensation.grossPay! +\n getReimbursements(employeeCompensation) +\n getCompanyTaxes(employeeCompensation) +\n getCompanyBenefits(employeeCompensation)\n )\n }\n\n const employeeMap = new Map(employeeDetails.map(employee => [employee.uuid, employee]))\n\n const getEmployeeHours = (\n employeeCompensations: EmployeeCompensations,\n ): Record<string, number> => {\n return (\n employeeCompensations.hourlyCompensations?.reduce(\n (acc, hourlyCompensation) => {\n if (typeof hourlyCompensation.name === 'undefined') {\n return acc\n }\n const name = hourlyCompensation.name.toLowerCase()\n const currentHours = acc[name] ?? 0\n acc[name] = currentHours + Number(hourlyCompensation.hours || 0)\n return acc\n },\n {} as Record<string, number>,\n ) || {}\n )\n }\n const getEmployeePtoHours = (employeeCompensations: EmployeeCompensations) => {\n return (\n employeeCompensations.paidTimeOff?.reduce((acc, paidTimeOff) => {\n return acc + Number(paidTimeOff.hours || 0)\n }, 0) ?? 0\n )\n }\n\n const checkPaymentsCount =\n payrollData.employeeCompensations?.reduce(\n (acc, comp) =>\n !comp.excluded && comp.paymentMethod === PAYMENT_METHODS.check ? acc + 1 : acc,\n 0,\n ) ?? 0\n const companyPaysColumns = [\n {\n key: 'employeeName',\n title: t('tableHeaders.employees'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {firstLastName({\n first_name: employeeMap.get(employeeCompensations.employeeUuid!)?.firstName,\n last_name: employeeMap.get(employeeCompensations.employeeUuid!)?.lastName,\n })}\n </Text>\n ),\n },\n {\n key: 'grossPay',\n title: t('tableHeaders.grossPay'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>{formatCurrency(employeeCompensations.grossPay!)}</Text>\n ),\n },\n {\n key: 'reimbursements',\n title: t('tableHeaders.reimbursements'),\n render: (employeeCompensation: EmployeeCompensations) => (\n <Text>{formatCurrency(getReimbursements(employeeCompensation))}</Text>\n ),\n },\n {\n key: 'companyTaxes',\n title: t('tableHeaders.companyTaxes'),\n render: (employeeCompensation: EmployeeCompensations) => (\n <Text>{formatCurrency(getCompanyTaxes(employeeCompensation))}</Text>\n ),\n },\n {\n key: 'companyBenefits',\n title: t('tableHeaders.companyBenefits'),\n render: (employeeCompensation: EmployeeCompensations) => (\n <Text>{formatCurrency(getCompanyBenefits(employeeCompensation))}</Text>\n ),\n },\n {\n key: 'companyPays',\n title: t('tableHeaders.companyPays'),\n render: (employeeCompensation: EmployeeCompensations) => (\n <Text>{formatCurrency(getCompanyCost(employeeCompensation))}</Text>\n ),\n },\n ]\n if (isProcessed) {\n companyPaysColumns.push({\n key: 'paystubs',\n title: t('tableHeaders.paystub'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <ButtonIcon\n aria-label={t('downloadPaystubLabel')}\n variant=\"tertiary\"\n onClick={() => {\n if (employeeCompensations.employeeUuid) {\n onPaystubDownload(employeeCompensations.employeeUuid)\n }\n }}\n >\n <DownloadIcon />\n </ButtonIcon>\n ),\n })\n }\n const tabs = [\n {\n id: 'companyPays',\n label: t('dataViews.companyPaysTab'),\n content: (\n <DataView\n label={t('dataViews.companyPaysTable')}\n columns={companyPaysColumns}\n data={payrollData.employeeCompensations!}\n footer={() => ({\n employeeName: (\n <>\n <Text>{t('tableHeaders.footerTotalsLabel')}</Text>\n <Text>{t('tableHeaders.footerTotalsDescription')}</Text>\n </>\n ),\n grossPay: <Text>{formatCurrency(Number(payrollData.totals?.grossPay ?? 0))}</Text>,\n reimbursements: (\n <Text>{formatCurrency(Number(payrollData.totals?.reimbursements ?? 0))}</Text>\n ),\n companyTaxes: (\n <Text>{formatCurrency(Number(payrollData.totals?.employerTaxes ?? 0))}</Text>\n ),\n companyBenefits: (\n <Text>{formatCurrency(Number(payrollData.totals?.benefits ?? 0))}</Text>\n ),\n companyPays: <Text>{formatCurrency(totalPayroll)}</Text>,\n })}\n />\n ),\n },\n {\n id: 'hoursWorked',\n label: t('dataViews.hoursWorkedTab'),\n content: (\n <DataView\n label={t('dataViews.hoursWorkedTable')}\n columns={[\n {\n title: t('tableHeaders.employees'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {firstLastName({\n first_name: employeeMap.get(employeeCompensations.employeeUuid!)?.firstName,\n last_name: employeeMap.get(employeeCompensations.employeeUuid!)?.lastName,\n })}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.compensationType'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {employeeMap\n .get(employeeCompensations.employeeUuid!)\n ?.jobs?.reduce((acc, job) => {\n if (job.primary) {\n const flsaStatus = job.compensations?.find(\n comp => comp.uuid === job.currentCompensationUuid,\n )?.flsaStatus\n\n switch (flsaStatus) {\n case FlsaStatus.EXEMPT:\n return t('compensationTypeLabels.exempt')\n case FlsaStatus.NONEXEMPT:\n return t('compensationTypeLabels.nonexempt')\n default:\n return flsaStatus ?? ''\n }\n }\n return acc\n }, '')}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.regular'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {getEmployeeHours(employeeCompensations)[\n compensationTypeLabels.REGULAR_HOURS_NAME\n ] || 0}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.overtime'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {getEmployeeHours(employeeCompensations)[compensationTypeLabels.OVERTIME_NAME] ||\n 0}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.doubleOT'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {getEmployeeHours(employeeCompensations)[\n compensationTypeLabels.DOUBLE_OVERTIME_NAME\n ] || 0}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.timeOff'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>{getEmployeePtoHours(employeeCompensations)}</Text>\n ),\n },\n {\n title: t('tableHeaders.totalHours'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {Object.values(getEmployeeHours(employeeCompensations)).reduce(\n (acc, hours) => acc + hours,\n 0,\n ) + getEmployeePtoHours(employeeCompensations)}\n </Text>\n ),\n },\n ]}\n data={payrollData.employeeCompensations!}\n />\n ),\n },\n {\n id: 'employeeTakeHome',\n label: t('dataViews.employeeTakeHomeTab'),\n content: (\n <DataView\n label={t('dataViews.employeeTakeHomeTable')}\n columns={[\n {\n title: t('tableHeaders.employees'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {firstLastName({\n first_name: employeeMap.get(employeeCompensations.employeeUuid!)?.firstName,\n last_name: employeeMap.get(employeeCompensations.employeeUuid!)?.lastName,\n })}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.paymentType'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>{employeeCompensations.paymentMethod ?? ''}</Text>\n ),\n },\n {\n title: t('tableHeaders.grossPay'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>{formatCurrency(employeeCompensations.grossPay ?? 0)}</Text>\n ),\n },\n {\n title: t('tableHeaders.deductions'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {formatCurrency(\n employeeCompensations.deductions?.reduce(\n (acc, deduction) => acc + deduction.amount!,\n 0,\n ) ?? 0,\n )}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.reimbursements'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>{formatCurrency(getReimbursements(employeeCompensations))}</Text>\n ),\n },\n {\n title: t('tableHeaders.employeeTaxes'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {formatCurrency(\n employeeCompensations.taxes?.reduce(\n (acc, tax) => (tax.employer ? acc : acc + tax.amount),\n 0,\n ) ?? 0,\n )}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.employeeBenefits'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>\n {formatCurrency(\n employeeCompensations.benefits?.reduce(\n (acc, benefit) => acc + (benefit.employeeDeduction ?? 0),\n 0,\n ) ?? 0,\n )}\n </Text>\n ),\n },\n {\n title: t('tableHeaders.payment'),\n render: (employeeCompensations: EmployeeCompensations) => (\n <Text>{formatCurrency(employeeCompensations.netPay ?? 0)}</Text>\n ),\n },\n ]}\n data={payrollData.employeeCompensations!}\n />\n ),\n },\n {\n id: 'taxes',\n label: t('dataViews.taxesTab'),\n content: (\n <Flex flexDirection=\"column\" gap={32}>\n <DataView\n label={t('dataViews.taxesTable')}\n columns={[\n {\n key: 'taxDescription',\n title: t('tableHeaders.taxDescription'),\n render: taxKey => <Text>{taxKey}</Text>,\n },\n {\n key: 'byYourEmployees',\n title: t('tableHeaders.byYourEmployees'),\n render: taxKey => <Text>{formatCurrency(taxes[taxKey]?.employee ?? 0)}</Text>,\n },\n {\n key: 'byYourCompany',\n title: t('tableHeaders.byYourCompany'),\n render: taxKey => <Text>{formatCurrency(taxes[taxKey]?.employer ?? 0)}</Text>,\n },\n ]}\n footer={() => ({\n taxDescription: <Text>{t('totalsLabel')}</Text>,\n byYourEmployees: (\n <Text>{formatCurrency(Number(payrollData.totals?.employeeTaxes ?? 0))}</Text>\n ),\n byYourCompany: (\n <Text>{formatCurrency(Number(payrollData.totals?.employerTaxes ?? 0))}</Text>\n ),\n })}\n data={Object.keys(taxes)}\n />\n\n <DataView\n label={t('dataViews.debitedTable')}\n columns={[\n {\n title: t('tableHeaders.debitedByGusto'),\n render: ({ label }) => <Text>{label}</Text>,\n },\n {\n title: t('tableHeaders.taxesTotal'),\n render: ({ value }) => <Text>{formatCurrency(Number(value))}</Text>,\n },\n ]}\n data={[\n { label: t('directDepositLabel'), value: payrollData.totals?.netPayDebit || '0' },\n {\n label: t('reimbursementLabel'),\n value: payrollData.totals?.reimbursementDebit || '0',\n },\n {\n label: t('garnishmentsLabel'),\n value: payrollData.totals?.childSupportDebit || '0',\n },\n { label: t('taxesLabel'), value: payrollData.totals?.taxDebit || '0' },\n ]}\n />\n </Flex>\n ),\n },\n ]\n\n return (\n <div ref={containerRef} className={styles.container}>\n <Flex flexDirection=\"column\" alignItems=\"stretch\">\n <Flex\n flexDirection={isDesktop ? 'row' : 'column'}\n justifyContent={isDesktop ? 'space-between' : 'normal'}\n alignItems={isDesktop ? 'flex-start' : 'stretch'}\n gap={isDesktop ? 0 : 16}\n >\n <FlexItem flexGrow={1}>\n <Heading as=\"h1\">{isProcessed ? t('summaryTitle') : t('overviewTitle')}</Heading>\n <Text>\n <Trans\n i18nKey=\"pageSubtitle\"\n t={t}\n components={{ dateWrapper: <Text weight=\"bold\" as=\"span\" /> }}\n values={getPayrollOverviewTitle(payrollData.payPeriod, dateFormatter)}\n />\n </Text>\n </FlexItem>\n <FlexItem flexGrow={isDesktop ? 1 : 0}>\n <Flex\n flexDirection={isDesktop ? 'row' : 'column'}\n justifyContent={isDesktop ? 'flex-end' : 'normal'}\n alignItems={isDesktop ? 'flex-start' : 'stretch'}\n gap={12}\n >\n {isProcessed ? (\n <>\n <Button onClick={onPayrollReceipt} variant=\"secondary\" isDisabled={isSubmitting}>\n {t('payrollReceiptCta')}\n </Button>\n <Button\n onClick={() => {\n setIsCancelDialogOpen(true)\n }}\n variant=\"error\"\n isDisabled={isSubmitting}\n >\n {t('cancelCta')}\n </Button>\n </>\n ) : (\n <>\n <Button onClick={onEdit} variant=\"secondary\" isDisabled={isSubmitting}>\n {t('editCta')}\n </Button>\n <Button\n onClick={onSubmit}\n isDisabled={\n isSubmitting ||\n (submissionBlockers.length > 0 &&\n (submissionBlockers.some(\n blocker =>\n !PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES.includes(\n blocker.blockerType || '',\n ),\n ) ||\n submissionBlockers.some(\n blocker => !selectedUnblockOptions[blocker.blockerType || ''],\n )))\n }\n >\n {t('submitCta')}\n </Button>\n </>\n )}\n </Flex>\n </FlexItem>\n </Flex>\n {isSubmitting ? (\n <LoadingIndicator>\n <Flex flexDirection=\"column\" alignItems=\"center\" gap={4}>\n <LoadingSpinner size=\"lg\" />\n <Heading as=\"h4\">{t('loadingTitle')}</Heading>\n <Text>{t('loadingDescription')}</Text>\n </Flex>\n </LoadingIndicator>\n ) : (\n <>\n {wireInConfirmationRequest}\n {alerts.length > 0 && (\n <Flex flexDirection={'column'} gap={16}>\n {alerts.map((alert, index) => (\n <Alert\n key={`${alert.type}-${alert.title}`}\n label={alert.title}\n status={alert.type}\n >\n {alert.content ?? null}\n </Alert>\n ))}\n </Flex>\n )}\n {submissionBlockers.length > 0 &&\n onUnblockOptionChange &&\n submissionBlockers.map(blocker => {\n const blockerType = blocker.blockerType || ''\n\n if (PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES.includes(blockerType)) {\n return (\n <FastAchThresholdExceeded\n key={blockerType}\n blocker={blocker}\n selectedValue={selectedUnblockOptions[blockerType]}\n onUnblockOptionChange={onUnblockOptionChange}\n />\n )\n }\n\n return <GenericBlocker key={blockerType} blocker={blocker} />\n })}\n <Heading as=\"h3\">{t('payrollSummaryTitle')}</Heading>\n <DataView\n label={t('payrollSummaryLabel')}\n columns={[\n {\n title: t('tableHeaders.totalPayroll'),\n render: () => <Text>{formatCurrency(totalPayroll)}</Text>,\n },\n {\n title: t('tableHeaders.debitAmount'),\n render: () => (\n <Text>{formatCurrency(Number(payrollData.totals?.companyDebit ?? 0))}</Text>\n ),\n },\n {\n title: t('tableHeaders.debitAccount'),\n render: () => <Text>{bankAccount?.hiddenAccountNumber ?? ''}</Text>,\n },\n {\n title: t('tableHeaders.debitDate'),\n render: () => <Text>{dateFormatter.formatShortWithYear(expectedDebitDate)}</Text>,\n },\n {\n title: t('tableHeaders.employeesPayDate'),\n render: () => (\n <Text>{dateFormatter.formatShortWithYear(payrollData.checkDate)}</Text>\n ),\n },\n ]}\n data={[{}]}\n />\n {checkPaymentsCount > 0 && (\n <Alert\n status=\"warning\"\n label={t('alerts.checkPaymentWarning', { count: checkPaymentsCount })}\n >\n <Text>{t('alerts.checkPaymentWarningDescription')}</Text>\n </Alert>\n )}\n <Tabs\n onSelectionChange={setSelectedTab}\n selectedId={selectedTab}\n aria-label={t('dataViews.label')}\n tabs={tabs}\n />\n {isCancelDialogOpen && (\n <Dialog\n isOpen={isCancelDialogOpen}\n onClose={() => {\n setIsCancelDialogOpen(false)\n }}\n onPrimaryActionClick={onCancel}\n shouldCloseOnBackdropClick={true}\n primaryActionLabel={t('confirmCancelCta')}\n isDestructive={true}\n closeActionLabel={t('declineCancelCta')}\n title={t('cancelDialogTitle', {\n startDate: dateFormatter.formatLong(payrollData.payPeriod?.startDate),\n endDate: dateFormatter.formatLongWithYear(payrollData.payPeriod?.endDate),\n })}\n >\n <Flex gap={14} flexDirection=\"column\">\n <Text>{t('cancelDialogDescription')}</Text>\n <Text>\n {t('cancelDialogDescriptionDeadline', {\n deadline: dateFormatter.formatWithTime(payrollData.payrollDeadline).time,\n })}\n </Text>\n </Flex>\n </Dialog>\n )}\n </>\n )}\n </Flex>\n </div>\n )\n}\n"],"names":["getPayrollOverviewTitle","payPeriod","dateFormatter","PayrollOverviewPresentation","onEdit","onSubmit","onCancel","onPayrollReceipt","onPaystubDownload","employeeDetails","payrollData","bankAccount","taxes","isSubmitting","isProcessed","alerts","submissionBlockers","selectedUnblockOptions","onUnblockOptionChange","wireInConfirmationRequest","Alert","Button","ButtonIcon","Dialog","Heading","Text","Tabs","LoadingSpinner","useComponentContext","useI18n","useDateFormatter","t","useTranslation","formatCurrency","useNumberFormatter","selectedTab","setSelectedTab","useState","isCancelDialogOpen","setIsCancelDialogOpen","LoadingIndicator","useLoadingIndicator","containerRef","useRef","isDesktop","useContainerBreakpoints","totalPayroll","calculateTotalPayroll","expectedDebitDate","getCompanyTaxes","employeeCompensation","acc","tax","getCompanyBenefits","benefit","getReimbursements","c","compensationTypeLabels","getCompanyCost","employeeMap","employee","getEmployeeHours","employeeCompensations","hourlyCompensation","name","currentHours","getEmployeePtoHours","paidTimeOff","checkPaymentsCount","comp","PAYMENT_METHODS","companyPaysColumns","jsx","firstLastName","DownloadIcon","tabs","DataView","jsxs","Fragment","job","flsaStatus","FlsaStatus","hours","deduction","Flex","taxKey","label","value","styles","FlexItem","Trans","blocker","PAYROLL_RESOLVABLE_SUBMISSION_BLOCKER_TYPES","alert","index","blockerType","FastAchThresholdExceeded","GenericBlocker"],"mappings":"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"}
|
package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PayrollSubmissionBlockersType } from '@gusto/embedded-api/models/components/payrollsubmissionblockerstype';
|
|
2
|
+
interface FastAchThresholdExceededProps {
|
|
3
|
+
blocker: PayrollSubmissionBlockersType;
|
|
4
|
+
selectedValue?: string;
|
|
5
|
+
onUnblockOptionChange: (blockerType: string, value: string) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare const FastAchThresholdExceeded: ({ blocker, selectedValue, onUnblockOptionChange, }: FastAchThresholdExceededProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.js
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { jsx as t, jsxs as r } from "react/jsx-runtime";
|
|
2
|
+
import { useTranslation as b } from "react-i18next";
|
|
3
|
+
import { Flex as a } from "../../../Common/Flex/Flex.js";
|
|
4
|
+
import { useComponentContext as f } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
5
|
+
import { useDateFormatter as x } from "../../../../hooks/useDateFormatter.js";
|
|
6
|
+
import k from "../../../../assets/icons/icon-zap-fast.svg.js";
|
|
7
|
+
const v = ({
|
|
8
|
+
blocker: l,
|
|
9
|
+
selectedValue: d,
|
|
10
|
+
onUnblockOptionChange: n
|
|
11
|
+
}) => {
|
|
12
|
+
const { t: e } = b("Payroll.PayrollOverview"), { Banner: h, Text: i, RadioGroup: _, Badge: c } = f(), m = x();
|
|
13
|
+
return /* @__PURE__ */ t(h, { status: "error", title: e("submissionBlockers.fast_ach_threshold_exceeded.title"), children: /* @__PURE__ */ r(a, { flexDirection: "column", gap: 16, children: [
|
|
14
|
+
/* @__PURE__ */ t(i, { children: e("submissionBlockers.fast_ach_threshold_exceeded.description") }),
|
|
15
|
+
/* @__PURE__ */ t(
|
|
16
|
+
_,
|
|
17
|
+
{
|
|
18
|
+
label: e("submissionBlockers.fast_ach_threshold_exceeded.fundingOptionsLabel"),
|
|
19
|
+
shouldVisuallyHideLabel: !0,
|
|
20
|
+
options: l.unblockOptions?.map((s) => {
|
|
21
|
+
const o = s.unblockType === "wire_in", u = e(o ? "submissionBlockers.fast_ach_threshold_exceeded.wireLabel" : "submissionBlockers.fast_ach_threshold_exceeded.directDepositLabel"), p = e(o ? "submissionBlockers.fast_ach_threshold_exceeded.wireDescription" : "submissionBlockers.fast_ach_threshold_exceeded.directDepositDescription");
|
|
22
|
+
return {
|
|
23
|
+
value: s.unblockType || "",
|
|
24
|
+
label: /* @__PURE__ */ r(a, { alignItems: "center", gap: 8, children: [
|
|
25
|
+
/* @__PURE__ */ t(i, { weight: "semibold", children: u }),
|
|
26
|
+
o && /* @__PURE__ */ r(c, { status: "success", children: [
|
|
27
|
+
/* @__PURE__ */ t(k, { "aria-hidden": !0 }),
|
|
28
|
+
" ",
|
|
29
|
+
e("submissionBlockers.fast_ach_threshold_exceeded.wireFastestBadge")
|
|
30
|
+
] }),
|
|
31
|
+
s.checkDate && /* @__PURE__ */ t(c, { status: "info", children: e("submissionBlockers.fast_ach_threshold_exceeded.employeePayDate", {
|
|
32
|
+
date: m.formatShortWithYear(s.checkDate)
|
|
33
|
+
}) })
|
|
34
|
+
] }),
|
|
35
|
+
description: p
|
|
36
|
+
};
|
|
37
|
+
}) || [],
|
|
38
|
+
value: d,
|
|
39
|
+
onChange: (s) => {
|
|
40
|
+
n("fast_ach_threshold_exceeded", s);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
)
|
|
44
|
+
] }) });
|
|
45
|
+
};
|
|
46
|
+
export {
|
|
47
|
+
v as FastAchThresholdExceeded
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=FastAchThresholdExceeded.js.map
|
package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FastAchThresholdExceeded.js","sources":["../../../../../src/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport type { PayrollSubmissionBlockersType } from '@gusto/embedded-api/models/components/payrollsubmissionblockerstype'\nimport { Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useDateFormatter } from '@/hooks/useDateFormatter'\nimport IconFast from '@/assets/icons/icon-zap-fast.svg?react'\n\ninterface FastAchThresholdExceededProps {\n blocker: PayrollSubmissionBlockersType\n selectedValue?: string\n onUnblockOptionChange: (blockerType: string, value: string) => void\n}\n\nexport const FastAchThresholdExceeded = ({\n blocker,\n selectedValue,\n onUnblockOptionChange,\n}: FastAchThresholdExceededProps) => {\n const { t } = useTranslation('Payroll.PayrollOverview')\n const { Banner, Text, RadioGroup, Badge } = useComponentContext()\n const dateFormatter = useDateFormatter()\n\n return (\n <Banner status=\"error\" title={t('submissionBlockers.fast_ach_threshold_exceeded.title')}>\n <Flex flexDirection=\"column\" gap={16}>\n <Text>{t('submissionBlockers.fast_ach_threshold_exceeded.description')}</Text>\n <RadioGroup\n label={t('submissionBlockers.fast_ach_threshold_exceeded.fundingOptionsLabel')}\n shouldVisuallyHideLabel\n options={\n blocker.unblockOptions?.map(option => {\n const isWire = option.unblockType === 'wire_in'\n const label = isWire\n ? t('submissionBlockers.fast_ach_threshold_exceeded.wireLabel')\n : t('submissionBlockers.fast_ach_threshold_exceeded.directDepositLabel')\n const description = isWire\n ? t('submissionBlockers.fast_ach_threshold_exceeded.wireDescription')\n : t('submissionBlockers.fast_ach_threshold_exceeded.directDepositDescription')\n\n return {\n value: option.unblockType || '',\n label: (\n <Flex alignItems=\"center\" gap={8}>\n <Text weight=\"semibold\">{label}</Text>\n {isWire && (\n <Badge status=\"success\">\n <IconFast aria-hidden />{' '}\n {t('submissionBlockers.fast_ach_threshold_exceeded.wireFastestBadge')}\n </Badge>\n )}\n {option.checkDate && (\n <Badge status=\"info\">\n {t('submissionBlockers.fast_ach_threshold_exceeded.employeePayDate', {\n date: dateFormatter.formatShortWithYear(option.checkDate),\n })}\n </Badge>\n )}\n </Flex>\n ),\n description,\n }\n }) || []\n }\n value={selectedValue}\n onChange={value => {\n onUnblockOptionChange('fast_ach_threshold_exceeded', value)\n }}\n />\n </Flex>\n </Banner>\n )\n}\n"],"names":["FastAchThresholdExceeded","blocker","selectedValue","onUnblockOptionChange","t","useTranslation","Banner","Text","RadioGroup","Badge","useComponentContext","dateFormatter","useDateFormatter","jsx","jsxs","Flex","option","isWire","label","description","IconFast","value"],"mappings":";;;;;;AAaO,MAAMA,IAA2B,CAAC;AAAA,EACvC,SAAAC;AAAA,EACA,eAAAC;AAAA,EACA,uBAAAC;AACF,MAAqC;AACnC,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,yBAAyB,GAChD,EAAE,QAAAC,GAAQ,MAAAC,GAAM,YAAAC,GAAY,OAAAC,EAAA,IAAUC,EAAA,GACtCC,IAAgBC,EAAA;AAEtB,SACE,gBAAAC,EAACP,GAAA,EAAO,QAAO,SAAQ,OAAOF,EAAE,sDAAsD,GACpF,UAAA,gBAAAU,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,IAChC,UAAA;AAAA,IAAA,gBAAAF,EAACN,GAAA,EAAM,UAAAH,EAAE,4DAA4D,EAAA,CAAE;AAAA,IACvE,gBAAAS;AAAA,MAACL;AAAA,MAAA;AAAA,QACC,OAAOJ,EAAE,oEAAoE;AAAA,QAC7E,yBAAuB;AAAA,QACvB,SACEH,EAAQ,gBAAgB,IAAI,CAAAe,MAAU;AACpC,gBAAMC,IAASD,EAAO,gBAAgB,WAChCE,IACFd,EADUa,IACR,6DACA,mEAD0D,GAE1DE,IACFf,EADgBa,IACd,mEACA,yEADgE;AAGtE,iBAAO;AAAA,YACL,OAAOD,EAAO,eAAe;AAAA,YAC7B,OACE,gBAAAF,EAACC,GAAA,EAAK,YAAW,UAAS,KAAK,GAC7B,UAAA;AAAA,cAAA,gBAAAF,EAACN,GAAA,EAAK,QAAO,YAAY,UAAAW,GAAM;AAAA,cAC9BD,KACC,gBAAAH,EAACL,GAAA,EAAM,QAAO,WACZ,UAAA;AAAA,gBAAA,gBAAAI,EAACO,GAAA,EAAS,eAAW,GAAA,CAAC;AAAA,gBAAG;AAAA,gBACxBhB,EAAE,iEAAiE;AAAA,cAAA,GACtE;AAAA,cAEDY,EAAO,aACN,gBAAAH,EAACJ,KAAM,QAAO,QACX,YAAE,kEAAkE;AAAA,gBACnE,MAAME,EAAc,oBAAoBK,EAAO,SAAS;AAAA,cAAA,CACzD,EAAA,CACH;AAAA,YAAA,GAEJ;AAAA,YAEF,aAAAG;AAAA,UAAA;AAAA,QAEJ,CAAC,KAAK,CAAA;AAAA,QAER,OAAOjB;AAAA,QACP,UAAU,CAAAmB,MAAS;AACjB,UAAAlB,EAAsB,+BAA+BkB,CAAK;AAAA,QAC5D;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,EAAA,CACF,EAAA,CACF;AAEJ;"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PayrollSubmissionBlockersType } from '@gusto/embedded-api/models/components/payrollsubmissionblockerstype';
|
|
2
|
+
interface GenericBlockerProps {
|
|
3
|
+
blocker: PayrollSubmissionBlockersType;
|
|
4
|
+
}
|
|
5
|
+
export declare const GenericBlocker: ({ blocker }: GenericBlockerProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { useTranslation as n } from "react-i18next";
|
|
3
|
+
import { useComponentContext as i } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
4
|
+
const a = ({ blocker: o }) => {
|
|
5
|
+
const { Banner: s, Text: t } = i(), { t: e } = n("Payroll.PayrollOverview");
|
|
6
|
+
return /* @__PURE__ */ r(
|
|
7
|
+
s,
|
|
8
|
+
{
|
|
9
|
+
status: "error",
|
|
10
|
+
title: o.blockerName || e("submissionBlockers.genericBlockerTitle"),
|
|
11
|
+
children: /* @__PURE__ */ r(t, { children: e("submissionBlockers.genericBlockerMessage") })
|
|
12
|
+
}
|
|
13
|
+
);
|
|
14
|
+
};
|
|
15
|
+
export {
|
|
16
|
+
a as GenericBlocker
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=GenericBlocker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GenericBlocker.js","sources":["../../../../../src/components/Payroll/PayrollOverview/SubmissionBlockers/GenericBlocker.tsx"],"sourcesContent":["import type { PayrollSubmissionBlockersType } from '@gusto/embedded-api/models/components/payrollsubmissionblockerstype'\nimport { useTranslation } from 'react-i18next'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\ninterface GenericBlockerProps {\n blocker: PayrollSubmissionBlockersType\n}\n\nexport const GenericBlocker = ({ blocker }: GenericBlockerProps) => {\n const { Banner, Text } = useComponentContext()\n const { t } = useTranslation('Payroll.PayrollOverview')\n\n return (\n <Banner\n status=\"error\"\n title={blocker.blockerName || t('submissionBlockers.genericBlockerTitle')}\n >\n <Text>{t('submissionBlockers.genericBlockerMessage')}</Text>\n </Banner>\n )\n}\n"],"names":["GenericBlocker","blocker","Banner","Text","useComponentContext","t","useTranslation","jsx"],"mappings":";;;AAQO,MAAMA,IAAiB,CAAC,EAAE,SAAAC,QAAmC;AAClE,QAAM,EAAE,QAAAC,GAAQ,MAAAC,EAAA,IAASC,EAAA,GACnB,EAAE,GAAAC,EAAA,IAAMC,EAAe,yBAAyB;AAEtD,SACE,gBAAAC;AAAA,IAACL;AAAA,IAAA;AAAA,MACC,QAAO;AAAA,MACP,OAAOD,EAAQ,eAAeI,EAAE,wCAAwC;AAAA,MAExE,UAAA,gBAAAE,EAACJ,GAAA,EAAM,UAAAE,EAAE,0CAA0C,EAAA,CAAE;AAAA,IAAA;AAAA,EAAA;AAG3D;"}
|
|
@@ -7,4 +7,5 @@ export { PayrollList } from './PayrollList/PayrollList';
|
|
|
7
7
|
export { PayrollOverview } from './PayrollOverview/PayrollOverview';
|
|
8
8
|
export { PayrollFlow } from './PayrollFlow/PayrollFlow';
|
|
9
9
|
export { PayrollReceipts } from './PayrollReceipts/PayrollReceipts';
|
|
10
|
+
export { ConfirmWireDetails } from './ConfirmWireDetails/ConfirmWireDetails';
|
|
10
11
|
export { type ApiPayrollBlocker } from './PayrollBlocker';
|
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
import { PayrollConfiguration as l } from "./PayrollConfiguration/PayrollConfiguration.js";
|
|
2
2
|
import { PayrollEditEmployee as t } from "./PayrollEditEmployee/PayrollEditEmployee.js";
|
|
3
|
-
import { PayrollHistory as
|
|
4
|
-
import { PayrollLanding as
|
|
5
|
-
import { PayrollList as
|
|
3
|
+
import { PayrollHistory as f } from "./PayrollHistory/PayrollHistory.js";
|
|
4
|
+
import { PayrollLanding as m } from "./PayrollLanding/PayrollLanding.js";
|
|
5
|
+
import { PayrollList as y } from "./PayrollList/PayrollList.js";
|
|
6
6
|
import { PayrollOverview as P } from "./PayrollOverview/PayrollOverview.js";
|
|
7
7
|
import { PayrollFlow as s } from "./PayrollFlow/PayrollFlow.js";
|
|
8
8
|
import { PayrollReceipts as g } from "./PayrollReceipts/PayrollReceipts.js";
|
|
9
|
+
import { ConfirmWireDetails as w } from "./ConfirmWireDetails/ConfirmWireDetails.js";
|
|
9
10
|
export {
|
|
11
|
+
w as ConfirmWireDetails,
|
|
10
12
|
l as PayrollConfiguration,
|
|
11
13
|
t as PayrollEditEmployee,
|
|
12
14
|
s as PayrollFlow,
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
f as PayrollHistory,
|
|
16
|
+
m as PayrollLanding,
|
|
17
|
+
y as PayrollList,
|
|
16
18
|
P as PayrollOverview,
|
|
17
19
|
g as PayrollReceipts
|
|
18
20
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
|
|
@@ -1,67 +1,69 @@
|
|
|
1
|
-
import { jsx as
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
2
|
import { TextInput as m } from "../../../components/Common/UI/TextInput/TextInput.js";
|
|
3
3
|
import { NumberInput as t } from "../../../components/Common/UI/NumberInput/NumberInput.js";
|
|
4
4
|
import { CheckboxGroup as i } from "../../../components/Common/UI/CheckboxGroup/CheckboxGroup.js";
|
|
5
5
|
import { ComboBox as e } from "../../../components/Common/UI/ComboBox/ComboBox.js";
|
|
6
6
|
import { Checkbox as p } from "../../../components/Common/UI/Checkbox/Checkbox.js";
|
|
7
|
-
import { DatePicker as
|
|
7
|
+
import { DatePicker as n } from "../../../components/Common/UI/DatePicker/DatePicker.js";
|
|
8
8
|
import { Radio as a } from "../../../components/Common/UI/Radio/Radio.js";
|
|
9
|
-
import { RadioGroup as
|
|
9
|
+
import { RadioGroup as f } from "../../../components/Common/UI/RadioGroup/RadioGroup.js";
|
|
10
10
|
import { Select as d } from "../../../components/Common/UI/Select/Select.js";
|
|
11
11
|
import { Switch as s } from "../../../components/Common/UI/Switch/Switch.js";
|
|
12
12
|
import { Button as u } from "../../../components/Common/UI/Button/Button.js";
|
|
13
13
|
import { ButtonIcon as c } from "../../../components/Common/UI/Button/ButtonIcon.js";
|
|
14
14
|
import { Alert as b } from "../../../components/Common/UI/Alert/Alert.js";
|
|
15
|
-
import { Card as
|
|
16
|
-
import { Badge as
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
29
|
-
import {
|
|
30
|
-
import {
|
|
31
|
-
import {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
15
|
+
import { Card as B } from "../../../components/Common/UI/Card/Card.js";
|
|
16
|
+
import { Badge as l } from "../../../components/Common/UI/Badge/Badge.js";
|
|
17
|
+
import { Banner as x } from "../../../components/Common/UI/Banner/Banner.js";
|
|
18
|
+
import { Link as C } from "../../../components/Common/UI/Link/Link.js";
|
|
19
|
+
import { Menu as g } from "../../../components/Common/UI/Menu/Menu.js";
|
|
20
|
+
import { Table as L } from "../../../components/Common/UI/Table/Table.js";
|
|
21
|
+
import { OrderedList as k } from "../../../components/Common/UI/List/OrderedList.js";
|
|
22
|
+
import { UnorderedList as T } from "../../../components/Common/UI/List/UnorderedList.js";
|
|
23
|
+
import { Heading as h } from "../../../components/Common/UI/Heading/Heading.js";
|
|
24
|
+
import { Text as D } from "../../../components/Common/UI/Text/Text.js";
|
|
25
|
+
import { CalendarPreview as I } from "../../../components/Common/UI/CalendarPreview/CalendarPreview.js";
|
|
26
|
+
import { ProgressBar as P } from "../../../components/Common/UI/ProgressBar/ProgressBar.js";
|
|
27
|
+
import { Breadcrumbs as S } from "../../../components/Common/UI/Breadcrumbs/Breadcrumbs.js";
|
|
28
|
+
import { Tabs as w } from "../../../components/Common/UI/Tabs/Tabs.js";
|
|
29
|
+
import { Dialog as G } from "../../../components/Common/UI/Dialog/Dialog.js";
|
|
30
|
+
import { Modal as M } from "../../../components/Common/UI/Modal/Modal.js";
|
|
31
|
+
import { LoadingSpinner as R } from "../../../components/Common/UI/LoadingSpinner/LoadingSpinner.js";
|
|
32
|
+
import { DescriptionList as v } from "../../../components/Common/UI/DescriptionList/DescriptionList.js";
|
|
33
|
+
const sr = {
|
|
34
|
+
Alert: (r) => /* @__PURE__ */ o(b, { ...r }),
|
|
35
|
+
Badge: (r) => /* @__PURE__ */ o(l, { ...r }),
|
|
36
|
+
Banner: (r) => /* @__PURE__ */ o(x, { ...r }),
|
|
37
|
+
Button: (r) => /* @__PURE__ */ o(u, { ...r }),
|
|
38
|
+
ButtonIcon: (r) => /* @__PURE__ */ o(c, { ...r }),
|
|
39
|
+
Card: (r) => /* @__PURE__ */ o(B, { ...r }),
|
|
40
|
+
TextInput: (r) => /* @__PURE__ */ o(m, { ...r }),
|
|
41
|
+
Checkbox: (r) => /* @__PURE__ */ o(p, { ...r }),
|
|
42
|
+
CheckboxGroup: (r) => /* @__PURE__ */ o(i, { ...r }),
|
|
43
|
+
ComboBox: (r) => /* @__PURE__ */ o(e, { ...r }),
|
|
44
|
+
DatePicker: (r) => /* @__PURE__ */ o(n, { ...r }),
|
|
45
|
+
OrderedList: (r) => /* @__PURE__ */ o(k, { ...r }),
|
|
46
|
+
UnorderedList: (r) => /* @__PURE__ */ o(T, { ...r }),
|
|
47
|
+
NumberInput: (r) => /* @__PURE__ */ o(t, { ...r }),
|
|
48
|
+
Radio: (r) => /* @__PURE__ */ o(a, { ...r }),
|
|
49
|
+
RadioGroup: (r) => /* @__PURE__ */ o(f, { ...r }),
|
|
50
|
+
Select: (r) => /* @__PURE__ */ o(d, { ...r }),
|
|
51
|
+
Switch: (r) => /* @__PURE__ */ o(s, { ...r }),
|
|
52
|
+
Link: (r) => /* @__PURE__ */ o(C, { ...r }),
|
|
53
|
+
Menu: (r) => /* @__PURE__ */ o(g, { ...r }),
|
|
54
|
+
Table: (r) => /* @__PURE__ */ o(L, { ...r }),
|
|
55
|
+
Heading: (r) => /* @__PURE__ */ o(h, { ...r }),
|
|
56
|
+
Text: (r) => /* @__PURE__ */ o(D, { ...r }),
|
|
57
|
+
CalendarPreview: (r) => /* @__PURE__ */ o(I, { ...r }),
|
|
58
|
+
ProgressBar: (r) => /* @__PURE__ */ o(P, { ...r }),
|
|
59
|
+
Breadcrumbs: (r) => /* @__PURE__ */ o(S, { ...r }),
|
|
60
|
+
Tabs: (r) => /* @__PURE__ */ o(w, { ...r }),
|
|
61
|
+
Dialog: (r) => /* @__PURE__ */ o(G, { ...r }),
|
|
62
|
+
Modal: (r) => /* @__PURE__ */ o(M, { ...r }),
|
|
63
|
+
LoadingSpinner: (r) => /* @__PURE__ */ o(R, { ...r }),
|
|
64
|
+
DescriptionList: (r) => /* @__PURE__ */ o(v, { ...r })
|
|
63
65
|
};
|
|
64
66
|
export {
|
|
65
|
-
|
|
67
|
+
sr as defaultComponents
|
|
66
68
|
};
|
|
67
69
|
//# sourceMappingURL=defaultComponentAdapter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultComponentAdapter.js","sources":["../../../../src/contexts/ComponentAdapter/adapters/defaultComponentAdapter.tsx"],"sourcesContent":["// This is used to set the default adapter and can already be ommitted by using the\n// `GustoProviderCustomUIAdapter` component. That means this is a safe file to use\n// non type imports from the UI directory so the lint rule is disabled for this file.\n/* eslint-disable no-restricted-imports */\nimport type { ComponentsContextType } from '../useComponentContext'\nimport type { TextInputProps } from '@/components/Common/UI/TextInput/TextInputTypes'\nimport { TextInput } from '@/components/Common/UI/TextInput'\nimport type { NumberInputProps } from '@/components/Common/UI/NumberInput/NumberInputTypes'\nimport { NumberInput } from '@/components/Common/UI/NumberInput'\nimport type { CheckboxGroupProps } from '@/components/Common/UI/CheckboxGroup/CheckboxGroupTypes'\nimport { CheckboxGroup } from '@/components/Common/UI/CheckboxGroup'\nimport type { ComboBoxProps } from '@/components/Common/UI/ComboBox/ComboBoxTypes'\nimport { ComboBox } from '@/components/Common/UI/ComboBox/ComboBox'\nimport type { CheckboxProps } from '@/components/Common/UI/Checkbox/CheckboxTypes'\nimport { Checkbox } from '@/components/Common/UI/Checkbox'\nimport type { DatePickerProps } from '@/components/Common/UI/DatePicker/DatePickerTypes'\nimport { DatePicker } from '@/components/Common/UI/DatePicker'\nimport type { RadioProps } from '@/components/Common/UI/Radio/RadioTypes'\nimport { Radio } from '@/components/Common/UI/Radio'\nimport type { RadioGroupProps } from '@/components/Common/UI/RadioGroup/RadioGroupTypes'\nimport { RadioGroup } from '@/components/Common/UI/RadioGroup'\nimport type { SelectProps } from '@/components/Common/UI/Select/SelectTypes'\nimport { Select } from '@/components/Common/UI/Select'\nimport type { SwitchProps } from '@/components/Common/UI/Switch/SwitchTypes'\nimport { Switch } from '@/components/Common/UI/Switch'\nimport type { ButtonProps, ButtonIconProps } from '@/components/Common/UI/Button/ButtonTypes'\nimport { Button } from '@/components/Common/UI/Button'\nimport { ButtonIcon } from '@/components/Common/UI/Button/ButtonIcon'\nimport type { AlertProps } from '@/components/Common/UI/Alert/AlertTypes'\nimport { Alert } from '@/components/Common/UI/Alert/Alert'\nimport type { CardProps } from '@/components/Common/UI/Card/CardTypes'\nimport { Card } from '@/components/Common/UI/Card/Card'\nimport { Badge } from '@/components/Common/UI/Badge/Badge'\nimport type { BadgeProps } from '@/components/Common/UI/Badge/BadgeTypes'\nimport type { LinkProps } from '@/components/Common/UI/Link/LinkTypes'\nimport { Link } from '@/components/Common/UI/Link'\nimport type { MenuProps } from '@/components/Common/UI/Menu/MenuTypes'\nimport { Menu } from '@/components/Common/UI/Menu'\nimport type { TableProps } from '@/components/Common/UI/Table'\nimport { Table } from '@/components/Common/UI/Table'\nimport type { OrderedListProps, UnorderedListProps } from '@/components/Common/UI/List'\nimport { OrderedList, UnorderedList } from '@/components/Common/UI/List'\nimport { Heading } from '@/components/Common/UI/Heading'\nimport type { HeadingProps } from '@/components/Common/UI/Heading/HeadingTypes'\nimport { Text } from '@/components/Common/UI/Text'\nimport type { TextProps } from '@/components/Common/UI/Text/TextTypes'\nimport { CalendarPreview } from '@/components/Common/UI/CalendarPreview'\nimport type { CalendarPreviewProps } from '@/components/Common/UI/CalendarPreview/CalendarPreviewTypes'\nimport type { ProgressBarProps } from '@/components/Common/UI/ProgressBar'\nimport { ProgressBar } from '@/components/Common/UI/ProgressBar'\nimport type { BreadcrumbsProps } from '@/components/Common/UI/Breadcrumbs'\nimport { Breadcrumbs } from '@/components/Common/UI/Breadcrumbs'\nimport type { TabsProps } from '@/components/Common/UI/Tabs/TabsTypes'\nimport { Tabs } from '@/components/Common/UI/Tabs'\nimport type { DialogProps } from '@/components/Common/UI/Dialog/DialogTypes'\nimport { Dialog } from '@/components/Common/UI/Dialog'\nimport type { ModalProps } from '@/components/Common/UI/Modal/ModalTypes'\nimport { Modal } from '@/components/Common/UI/Modal'\nimport type { LoadingSpinnerProps } from '@/components/Common/UI/LoadingSpinner/LoadingSpinnerTypes'\nimport { LoadingSpinner } from '@/components/Common/UI/LoadingSpinner'\nimport type { DescriptionListProps } from '@/components/Common/UI/DescriptionList/DescriptionListTypes'\nimport { DescriptionList } from '@/components/Common/UI/DescriptionList'\n\nexport const defaultComponents: ComponentsContextType = {\n Alert: (props: AlertProps) => <Alert {...props} />,\n Badge: (props: BadgeProps) => <Badge {...props} />,\n Button: (props: ButtonProps) => <Button {...props} />,\n ButtonIcon: (props: ButtonIconProps) => <ButtonIcon {...props} />,\n Card: (props: CardProps) => <Card {...props} />,\n TextInput: (props: TextInputProps) => <TextInput {...props} />,\n Checkbox: (props: CheckboxProps) => <Checkbox {...props} />,\n CheckboxGroup: (props: CheckboxGroupProps) => <CheckboxGroup {...props} />,\n ComboBox: (props: ComboBoxProps) => <ComboBox {...props} />,\n DatePicker: (props: DatePickerProps) => <DatePicker {...props} />,\n OrderedList: (props: OrderedListProps) => <OrderedList {...props} />,\n UnorderedList: (props: UnorderedListProps) => <UnorderedList {...props} />,\n NumberInput: (props: NumberInputProps) => <NumberInput {...props} />,\n Radio: (props: RadioProps) => <Radio {...props} />,\n RadioGroup: (props: RadioGroupProps) => <RadioGroup {...props} />,\n Select: (props: SelectProps) => <Select {...props} />,\n Switch: (props: SwitchProps) => <Switch {...props} />,\n Link: (props: LinkProps) => <Link {...props} />,\n Menu: (props: MenuProps) => <Menu {...props} />,\n Table: (props: TableProps) => <Table {...props} />,\n Heading: (props: HeadingProps) => <Heading {...props} />,\n Text: (props: TextProps) => <Text {...props} />,\n CalendarPreview: (props: CalendarPreviewProps) => <CalendarPreview {...props} />,\n ProgressBar: (props: ProgressBarProps) => <ProgressBar {...props} />,\n Breadcrumbs: (props: BreadcrumbsProps) => <Breadcrumbs {...props} />,\n Tabs: (props: TabsProps) => <Tabs {...props} />,\n Dialog: (props: DialogProps) => <Dialog {...props} />,\n Modal: (props: ModalProps) => <Modal {...props} />,\n LoadingSpinner: (props: LoadingSpinnerProps) => <LoadingSpinner {...props} />,\n DescriptionList: (props: DescriptionListProps) => <DescriptionList {...props} />,\n}\n"],"names":["defaultComponents","props","jsx","Alert","Badge","Button","ButtonIcon","Card","TextInput","Checkbox","CheckboxGroup","ComboBox","DatePicker","OrderedList","UnorderedList","NumberInput","Radio","RadioGroup","Select","Switch","Link","Menu","Table","Heading","Text","CalendarPreview","ProgressBar","Breadcrumbs","Tabs","Dialog","Modal","LoadingSpinner","DescriptionList"],"mappings":"
|
|
1
|
+
{"version":3,"file":"defaultComponentAdapter.js","sources":["../../../../src/contexts/ComponentAdapter/adapters/defaultComponentAdapter.tsx"],"sourcesContent":["// This is used to set the default adapter and can already be ommitted by using the\n// `GustoProviderCustomUIAdapter` component. That means this is a safe file to use\n// non type imports from the UI directory so the lint rule is disabled for this file.\n/* eslint-disable no-restricted-imports */\nimport type { ComponentsContextType } from '../useComponentContext'\nimport type { TextInputProps } from '@/components/Common/UI/TextInput/TextInputTypes'\nimport { TextInput } from '@/components/Common/UI/TextInput'\nimport type { NumberInputProps } from '@/components/Common/UI/NumberInput/NumberInputTypes'\nimport { NumberInput } from '@/components/Common/UI/NumberInput'\nimport type { CheckboxGroupProps } from '@/components/Common/UI/CheckboxGroup/CheckboxGroupTypes'\nimport { CheckboxGroup } from '@/components/Common/UI/CheckboxGroup'\nimport type { ComboBoxProps } from '@/components/Common/UI/ComboBox/ComboBoxTypes'\nimport { ComboBox } from '@/components/Common/UI/ComboBox/ComboBox'\nimport type { CheckboxProps } from '@/components/Common/UI/Checkbox/CheckboxTypes'\nimport { Checkbox } from '@/components/Common/UI/Checkbox'\nimport type { DatePickerProps } from '@/components/Common/UI/DatePicker/DatePickerTypes'\nimport { DatePicker } from '@/components/Common/UI/DatePicker'\nimport type { RadioProps } from '@/components/Common/UI/Radio/RadioTypes'\nimport { Radio } from '@/components/Common/UI/Radio'\nimport type { RadioGroupProps } from '@/components/Common/UI/RadioGroup/RadioGroupTypes'\nimport { RadioGroup } from '@/components/Common/UI/RadioGroup'\nimport type { SelectProps } from '@/components/Common/UI/Select/SelectTypes'\nimport { Select } from '@/components/Common/UI/Select'\nimport type { SwitchProps } from '@/components/Common/UI/Switch/SwitchTypes'\nimport { Switch } from '@/components/Common/UI/Switch'\nimport type { ButtonProps, ButtonIconProps } from '@/components/Common/UI/Button/ButtonTypes'\nimport { Button } from '@/components/Common/UI/Button'\nimport { ButtonIcon } from '@/components/Common/UI/Button/ButtonIcon'\nimport type { AlertProps } from '@/components/Common/UI/Alert/AlertTypes'\nimport { Alert } from '@/components/Common/UI/Alert/Alert'\nimport type { CardProps } from '@/components/Common/UI/Card/CardTypes'\nimport { Card } from '@/components/Common/UI/Card/Card'\nimport { Badge } from '@/components/Common/UI/Badge/Badge'\nimport type { BadgeProps } from '@/components/Common/UI/Badge/BadgeTypes'\nimport { Banner } from '@/components/Common/UI/Banner/Banner'\nimport type { BannerProps } from '@/components/Common/UI/Banner/BannerTypes'\nimport type { LinkProps } from '@/components/Common/UI/Link/LinkTypes'\nimport { Link } from '@/components/Common/UI/Link'\nimport type { MenuProps } from '@/components/Common/UI/Menu/MenuTypes'\nimport { Menu } from '@/components/Common/UI/Menu'\nimport type { TableProps } from '@/components/Common/UI/Table'\nimport { Table } from '@/components/Common/UI/Table'\nimport type { OrderedListProps, UnorderedListProps } from '@/components/Common/UI/List'\nimport { OrderedList, UnorderedList } from '@/components/Common/UI/List'\nimport { Heading } from '@/components/Common/UI/Heading'\nimport type { HeadingProps } from '@/components/Common/UI/Heading/HeadingTypes'\nimport { Text } from '@/components/Common/UI/Text'\nimport type { TextProps } from '@/components/Common/UI/Text/TextTypes'\nimport { CalendarPreview } from '@/components/Common/UI/CalendarPreview'\nimport type { CalendarPreviewProps } from '@/components/Common/UI/CalendarPreview/CalendarPreviewTypes'\nimport type { ProgressBarProps } from '@/components/Common/UI/ProgressBar'\nimport { ProgressBar } from '@/components/Common/UI/ProgressBar'\nimport type { BreadcrumbsProps } from '@/components/Common/UI/Breadcrumbs'\nimport { Breadcrumbs } from '@/components/Common/UI/Breadcrumbs'\nimport type { TabsProps } from '@/components/Common/UI/Tabs/TabsTypes'\nimport { Tabs } from '@/components/Common/UI/Tabs'\nimport type { DialogProps } from '@/components/Common/UI/Dialog/DialogTypes'\nimport { Dialog } from '@/components/Common/UI/Dialog'\nimport type { ModalProps } from '@/components/Common/UI/Modal/ModalTypes'\nimport { Modal } from '@/components/Common/UI/Modal'\nimport type { LoadingSpinnerProps } from '@/components/Common/UI/LoadingSpinner/LoadingSpinnerTypes'\nimport { LoadingSpinner } from '@/components/Common/UI/LoadingSpinner'\nimport type { DescriptionListProps } from '@/components/Common/UI/DescriptionList/DescriptionListTypes'\nimport { DescriptionList } from '@/components/Common/UI/DescriptionList'\n\nexport const defaultComponents: ComponentsContextType = {\n Alert: (props: AlertProps) => <Alert {...props} />,\n Badge: (props: BadgeProps) => <Badge {...props} />,\n Banner: (props: BannerProps) => <Banner {...props} />,\n Button: (props: ButtonProps) => <Button {...props} />,\n ButtonIcon: (props: ButtonIconProps) => <ButtonIcon {...props} />,\n Card: (props: CardProps) => <Card {...props} />,\n TextInput: (props: TextInputProps) => <TextInput {...props} />,\n Checkbox: (props: CheckboxProps) => <Checkbox {...props} />,\n CheckboxGroup: (props: CheckboxGroupProps) => <CheckboxGroup {...props} />,\n ComboBox: (props: ComboBoxProps) => <ComboBox {...props} />,\n DatePicker: (props: DatePickerProps) => <DatePicker {...props} />,\n OrderedList: (props: OrderedListProps) => <OrderedList {...props} />,\n UnorderedList: (props: UnorderedListProps) => <UnorderedList {...props} />,\n NumberInput: (props: NumberInputProps) => <NumberInput {...props} />,\n Radio: (props: RadioProps) => <Radio {...props} />,\n RadioGroup: (props: RadioGroupProps) => <RadioGroup {...props} />,\n Select: (props: SelectProps) => <Select {...props} />,\n Switch: (props: SwitchProps) => <Switch {...props} />,\n Link: (props: LinkProps) => <Link {...props} />,\n Menu: (props: MenuProps) => <Menu {...props} />,\n Table: (props: TableProps) => <Table {...props} />,\n Heading: (props: HeadingProps) => <Heading {...props} />,\n Text: (props: TextProps) => <Text {...props} />,\n CalendarPreview: (props: CalendarPreviewProps) => <CalendarPreview {...props} />,\n ProgressBar: (props: ProgressBarProps) => <ProgressBar {...props} />,\n Breadcrumbs: (props: BreadcrumbsProps) => <Breadcrumbs {...props} />,\n Tabs: (props: TabsProps) => <Tabs {...props} />,\n Dialog: (props: DialogProps) => <Dialog {...props} />,\n Modal: (props: ModalProps) => <Modal {...props} />,\n LoadingSpinner: (props: LoadingSpinnerProps) => <LoadingSpinner {...props} />,\n DescriptionList: (props: DescriptionListProps) => <DescriptionList {...props} />,\n}\n"],"names":["defaultComponents","props","jsx","Alert","Badge","Banner","Button","ButtonIcon","Card","TextInput","Checkbox","CheckboxGroup","ComboBox","DatePicker","OrderedList","UnorderedList","NumberInput","Radio","RadioGroup","Select","Switch","Link","Menu","Table","Heading","Text","CalendarPreview","ProgressBar","Breadcrumbs","Tabs","Dialog","Modal","LoadingSpinner","DescriptionList"],"mappings":"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"}
|
|
@@ -17,6 +17,7 @@ export type { TableProps, TableData, TableRow } from '../../components/Common/UI
|
|
|
17
17
|
export type { TextInputProps } from '../../components/Common/UI/TextInput/TextInputTypes';
|
|
18
18
|
export type { AlertProps } from '../../components/Common/UI/Alert/AlertTypes';
|
|
19
19
|
export type { BadgeProps } from '../../components/Common/UI/Badge/BadgeTypes';
|
|
20
|
+
export type { BannerProps } from '../../components/Common/UI/Banner/BannerTypes';
|
|
20
21
|
export type { OrderedListProps, UnorderedListProps } from '../../components/Common/UI/List/ListTypes';
|
|
21
22
|
export type { HeadingProps } from '../../components/Common/UI/Heading/HeadingTypes';
|
|
22
23
|
export type { PaginationControlProps } from '../../components/Common/PaginationControl/PaginationControlTypes';
|
|
@@ -2,6 +2,7 @@ import { default as React } from 'react';
|
|
|
2
2
|
import { ComponentsContextType } from './useComponentContext';
|
|
3
3
|
import { AlertProps } from '../../components/Common/UI/Alert/AlertTypes';
|
|
4
4
|
import { BadgeProps } from '../../components/Common/UI/Badge/BadgeTypes';
|
|
5
|
+
import { BannerProps } from '../../components/Common/UI/Banner/BannerTypes';
|
|
5
6
|
import { ButtonProps, ButtonIconProps } from '../../components/Common/UI/Button/ButtonTypes';
|
|
6
7
|
import { CheckboxProps } from '../../components/Common/UI/Checkbox/CheckboxTypes';
|
|
7
8
|
import { CheckboxGroupProps } from '../../components/Common/UI/CheckboxGroup/CheckboxGroupTypes';
|
|
@@ -23,6 +24,10 @@ export declare const componentCreators: {
|
|
|
23
24
|
(props: BadgeProps): React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | null;
|
|
24
25
|
displayName: string;
|
|
25
26
|
};
|
|
27
|
+
readonly Banner: (customComponent: (props: BannerProps) => React.ReactElement | null) => {
|
|
28
|
+
(props: BannerProps): React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | null;
|
|
29
|
+
displayName: string;
|
|
30
|
+
};
|
|
26
31
|
readonly Button: (customComponent: (props: ButtonProps) => React.ReactElement | null) => {
|
|
27
32
|
(props: ButtonProps): React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | null;
|
|
28
33
|
displayName: string;
|