From f514fdb41a760dff45b1ec8ed99bbb495a0519ba Mon Sep 17 00:00:00 2001 From: Aaron Lee Date: Fri, 5 Jun 2026 12:25:34 -0400 Subject: [PATCH 1/3] feat: add destination-labeled back button to Employee OnboardingExecutionFlow MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add a secondary back button above each step of the Employee onboarding execution flow. The label names the previous step (e.g. "Basic details" on Compensation, "Compensation" on Federal taxes) so users can orient themselves before navigating. Includes a parent-supplied initialBackHeader prop so the first step can expose a "Back to employees" affordance when nested in OnboardingFlow. Extracts createBackHeaderFactory in src/components/Flow/useFlow.ts and documents the conventions (per-flow back event, per-flow translation namespace, destination-labeled headers) in src/components/Flow/README.md so the same pattern can be applied to other linear flows. Also fixes a stale-namespace bug in FlowHeader where useTranslation(ns) caches the namespace on first render and does not re-bind when the namespace prop changes between steps — switched to per-call t(key, { ns }) so multi-namespace flows resolve correctly. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../OnboardingExecutionFlow.tsx | 14 + .../OnboardingExecutionFlowComponents.tsx | 10 +- .../onboardingExecutionStateMachine.test.ts | 286 ++++++++++++++++++ .../onboardingExecutionStateMachine.ts | 84 ++++- .../OnboardingFlowComponents.tsx | 13 +- src/components/Flow/FlowHeader.tsx | 10 +- src/components/Flow/README.md | 85 ++++++ src/components/Flow/useFlow.ts | 36 +++ src/i18n/en/Employee.EmployeeList.json | 1 + .../en/Employee.OnboardingExecutionFlow.json | 8 + src/shared/constants.ts | 1 + 11 files changed, 535 insertions(+), 13 deletions(-) create mode 100644 src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.test.ts create mode 100644 src/components/Flow/README.md create mode 100644 src/i18n/en/Employee.OnboardingExecutionFlow.json diff --git a/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlow.tsx b/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlow.tsx index cf9dcc454..1b6f2a9cd 100644 --- a/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlow.tsx +++ b/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlow.tsx @@ -12,6 +12,8 @@ import { import { Flow } from '@/components/Flow/Flow' import type { OnEventType } from '@/components/Base/useBase' import type { EventType, EmployeeOnboardingStatus } from '@/shared/constants' +import type { FlowHeaderConfig } from '@/components/Flow/useFlow' +import { useI18n } from '@/i18n' /** * Props for {@link OnboardingExecutionFlow}. @@ -37,6 +39,13 @@ export interface OnboardingExecutionFlowProps { isSelfOnboardingEnabled?: boolean /** When true, enables the Employee Documents step in the flow, allowing the admin to configure I-9 document requirements. Defaults to `false`. */ withEmployeeI9?: boolean + /** + * Optional header shown above the initial step. When supplied, the back + * affordance is preserved if the user navigates back to step one from a + * later step. Use this to expose an "exit" path when the flow is rendered + * inside a parent flow (e.g. back to an employee list). + */ + initialBackHeader?: FlowHeaderConfig } /** @@ -78,7 +87,9 @@ export function OnboardingExecutionFlow({ isAdmin = true, isSelfOnboardingEnabled = true, withEmployeeI9 = false, + initialBackHeader, }: OnboardingExecutionFlowProps) { + useI18n('Employee.OnboardingExecutionFlow') const machine = useMemo( () => createMachine( @@ -87,6 +98,8 @@ export function OnboardingExecutionFlow({ (initialContext: OnboardingContextInterface) => ({ ...initialContext, component: INITIAL_COMPONENT_MAP[initialState], + header: initialBackHeader ?? null, + initialHeader: initialBackHeader ?? null, companyId, employeeId: initialEmployeeId, onboardingStatus: initialOnboardingStatus, @@ -105,6 +118,7 @@ export function OnboardingExecutionFlow({ isAdmin, isSelfOnboardingEnabled, withEmployeeI9, + initialBackHeader, ], ) diff --git a/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlowComponents.tsx b/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlowComponents.tsx index 7f57a0e13..94d20e157 100644 --- a/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlowComponents.tsx +++ b/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlowComponents.tsx @@ -5,7 +5,11 @@ import { StateTaxes } from '../StateTaxes/onboarding/StateTaxes' import type { ProfileDefaultValues } from '../Profile/onboarding/Profile' import type { CompensationDefaultValues } from '../Compensation' import { ensureRequired } from '@/helpers/ensureRequired' -import { useFlow, type FlowContextInterface } from '@/components/Flow/useFlow' +import { + useFlow, + type FlowContextInterface, + type FlowHeaderConfig, +} from '@/components/Flow/useFlow' import type { EmployeeOnboardingStatus } from '@/shared/constants' import type { RequireAtLeastOne } from '@/types/Helpers' @@ -38,6 +42,10 @@ export interface OnboardingContextInterface extends FlowContextInterface { defaultValues?: OnboardingDefaultValues isSelfOnboardingEnabled?: boolean withEmployeeI9?: boolean + // Header used on the initial step (and restored when the user navigates back + // to it). Lets a parent flow expose an "exit" affordance from step one + // without changing the back behaviour of intermediate steps. + initialHeader?: FlowHeaderConfig | null } /** @internal */ diff --git a/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.test.ts b/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.test.ts new file mode 100644 index 000000000..28ae8ffb0 --- /dev/null +++ b/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.test.ts @@ -0,0 +1,286 @@ +import { describe, expect, it } from 'vitest' +import { createMachine, interpret, type SendFunction } from 'robot3' +import { onboardingExecutionMachine } from './onboardingExecutionStateMachine' +import type { OnboardingContextInterface } from './OnboardingExecutionFlowComponents' +import { ProfileContextual } from '@/components/Employee/Profile/onboarding/Profile' +import { CompensationContextual } from '@/components/Employee/Compensation' +import { PaymentMethodContextual } from '@/components/Employee/PaymentMethod' +import { OnboardingSummaryContextual } from '@/components/Employee/OnboardingSummary' +import { componentEvents, EmployeeOnboardingStatus } from '@/shared/constants' +import type { FlowHeaderConfig } from '@/components/Flow/useFlow' + +type State = keyof typeof onboardingExecutionMachine + +function createService( + initialState: State = 'employeeProfile', + contextOverrides: Partial = {}, +) { + const machine = createMachine( + initialState, + onboardingExecutionMachine, + (initialContext: OnboardingContextInterface) => ({ + ...initialContext, + component: ProfileContextual, + header: null, + companyId: 'company-123', + employeeId: 'employee-456', + ...contextOverrides, + }), + ) + return interpret(machine, () => {}) +} + +function send(service: ReturnType, type: string, payload?: unknown) { + ;(service.send as SendFunction)({ type, payload }) +} + +const stepLabelHeader = (stepKey: string) => ({ + type: 'minimal', + back: { + labelKey: stepKey, + namespace: 'Employee.OnboardingExecutionFlow', + event: componentEvents.EMPLOYEE_ONBOARDING_BACK, + }, +}) + +describe('onboardingExecutionMachine back navigation', () => { + describe('header configuration', () => { + it('starts with no header on employeeProfile', () => { + const service = createService('employeeProfile') + + expect(service.machine.current).toBe('employeeProfile') + expect(service.context.header).toBeNull() + }) + + it('labels the compensation back button with the previous step (employeeProfile)', () => { + const service = createService('employeeProfile') + + send(service, componentEvents.EMPLOYEE_PROFILE_DONE, { + uuid: 'employee-456', + onboardingStatus: EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE, + startDate: '2026-01-01', + }) + + expect(service.machine.current).toBe('compensation') + expect(service.context.header).toMatchObject(stepLabelHeader('employeeProfile')) + }) + + it('labels the federalTaxes back button with the previous step (compensation)', () => { + const service = createService('compensation', { + onboardingStatus: EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE, + }) + + send(service, componentEvents.EMPLOYEE_COMPENSATION_DONE) + + expect(service.machine.current).toBe('federalTaxes') + expect(service.context.header).toMatchObject(stepLabelHeader('compensation')) + }) + + it('labels the stateTaxes back button with the previous step (federalTaxes)', () => { + const service = createService('federalTaxes', { + onboardingStatus: EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE, + }) + + send(service, componentEvents.EMPLOYEE_FEDERAL_TAXES_DONE) + + expect(service.machine.current).toBe('stateTaxes') + expect(service.context.header).toMatchObject(stepLabelHeader('federalTaxes')) + }) + + it('labels the paymentMethod back button with the previous step (stateTaxes)', () => { + const service = createService('stateTaxes', { + onboardingStatus: EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE, + }) + + send(service, componentEvents.EMPLOYEE_STATE_TAXES_DONE) + + expect(service.machine.current).toBe('paymentMethod') + expect(service.context.header).toMatchObject(stepLabelHeader('stateTaxes')) + }) + + it('labels the deductions back button with paymentMethod in the non-self-onboarding path', () => { + const service = createService('paymentMethod') + + send(service, componentEvents.EMPLOYEE_PAYMENT_METHOD_DONE) + + expect(service.machine.current).toBe('deductions') + expect(service.context.header).toMatchObject(stepLabelHeader('paymentMethod')) + }) + + it('labels the deductions back button with compensation in the self-onboarding path', () => { + const service = createService('compensation', { + onboardingStatus: EmployeeOnboardingStatus.SELF_ONBOARDING_INVITED, + }) + + send(service, componentEvents.EMPLOYEE_COMPENSATION_DONE) + + expect(service.machine.current).toBe('deductions') + expect(service.context.header).toMatchObject(stepLabelHeader('compensation')) + }) + + it('labels the employeeDocuments back button with the previous step (deductions)', () => { + const service = createService('deductions', { withEmployeeI9: true }) + + send(service, componentEvents.EMPLOYEE_DEDUCTION_DONE) + + expect(service.machine.current).toBe('employeeDocuments') + expect(service.context.header).toMatchObject(stepLabelHeader('deductions')) + }) + + it('clears the header on the summary state', () => { + const service = createService('employeeDocuments') + + send(service, componentEvents.EMPLOYEE_DOCUMENTS_DONE) + + expect(service.machine.current).toBe('summary') + expect(service.context.header).toBeNull() + }) + }) + + describe('back transitions', () => { + it('returns to employeeProfile from compensation and clears the header', () => { + const service = createService('compensation') + + send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) + + expect(service.machine.current).toBe('employeeProfile') + expect(service.context.component).toBe(ProfileContextual) + expect(service.context.header).toBeNull() + }) + + it('returns to compensation from federalTaxes and relabels for employeeProfile', () => { + const service = createService('federalTaxes') + + send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) + + expect(service.machine.current).toBe('compensation') + expect(service.context.component).toBe(CompensationContextual) + expect(service.context.header).toMatchObject(stepLabelHeader('employeeProfile')) + }) + + it('returns to federalTaxes from stateTaxes and relabels for compensation', () => { + const service = createService('stateTaxes') + + send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) + + expect(service.machine.current).toBe('federalTaxes') + expect(service.context.header).toMatchObject(stepLabelHeader('compensation')) + }) + + it('returns to stateTaxes from paymentMethod and relabels for federalTaxes', () => { + const service = createService('paymentMethod') + + send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) + + expect(service.machine.current).toBe('stateTaxes') + expect(service.context.header).toMatchObject(stepLabelHeader('federalTaxes')) + }) + + it('returns to deductions from employeeDocuments and relabels for paymentMethod (non-self)', () => { + const service = createService('employeeDocuments', { + onboardingStatus: EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE, + }) + + send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) + + expect(service.machine.current).toBe('deductions') + expect(service.context.header).toMatchObject(stepLabelHeader('paymentMethod')) + }) + + it('returns to deductions from employeeDocuments and relabels for compensation (self)', () => { + const service = createService('employeeDocuments', { + onboardingStatus: EmployeeOnboardingStatus.SELF_ONBOARDING_INVITED, + }) + + send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) + + expect(service.machine.current).toBe('deductions') + expect(service.context.header).toMatchObject(stepLabelHeader('compensation')) + }) + + it('returns to paymentMethod from deductions when not self-onboarding and relabels for stateTaxes', () => { + const service = createService('deductions', { + onboardingStatus: EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE, + }) + + send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) + + expect(service.machine.current).toBe('paymentMethod') + expect(service.context.component).toBe(PaymentMethodContextual) + expect(service.context.header).toMatchObject(stepLabelHeader('stateTaxes')) + }) + + it('returns to compensation from deductions when self-onboarding and relabels for employeeProfile', () => { + const service = createService('deductions', { + onboardingStatus: EmployeeOnboardingStatus.SELF_ONBOARDING_INVITED, + }) + + send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) + + expect(service.machine.current).toBe('compensation') + expect(service.context.component).toBe(CompensationContextual) + expect(service.context.header).toMatchObject(stepLabelHeader('employeeProfile')) + }) + + it('does not transition out of summary on back (no back edge defined)', () => { + const service = createService('deductions') + + send(service, componentEvents.EMPLOYEE_DEDUCTION_DONE) + expect(service.machine.current).toBe('summary') + expect(service.context.component).toBe(OnboardingSummaryContextual) + + send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) + + expect(service.machine.current).toBe('summary') + expect(service.context.header).toBeNull() + }) + + it('does not respond to CANCEL on intermediate steps (back uses a dedicated event)', () => { + const service = createService('compensation') + + send(service, componentEvents.CANCEL) + + expect(service.machine.current).toBe('compensation') + }) + }) + + describe('initialHeader (nested usage)', () => { + const backToListHeader: FlowHeaderConfig = { + type: 'minimal', + back: { + labelKey: 'backToListCta', + namespace: 'Employee.EmployeeList', + event: componentEvents.EMPLOYEES_LIST, + }, + } + + it('uses the supplied initialHeader as the first-step header', () => { + const service = createService('employeeProfile', { + header: backToListHeader, + initialHeader: backToListHeader, + }) + + expect(service.context.header).toEqual(backToListHeader) + }) + + it('restores initialHeader when navigating back from compensation to employeeProfile', () => { + const service = createService('compensation', { + initialHeader: backToListHeader, + }) + + send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) + + expect(service.machine.current).toBe('employeeProfile') + expect(service.context.header).toEqual(backToListHeader) + }) + + it('falls back to null on first-step when no initialHeader is supplied', () => { + const service = createService('compensation') + + send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) + + expect(service.machine.current).toBe('employeeProfile') + expect(service.context.header).toBeNull() + }) + }) +}) diff --git a/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.ts b/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.ts index f0e0ee997..df677359d 100644 --- a/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.ts +++ b/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.ts @@ -16,6 +16,7 @@ import { EmployeeDocumentsContextual } from '@/components/Employee/Documents/onb import { PaymentMethodContextual } from '@/components/Employee/PaymentMethod' import { ProfileContextual } from '@/components/Employee/Profile/onboarding/Profile' import { OnboardingSummaryContextual } from '@/components/Employee/OnboardingSummary' +import { createBackHeaderFactory } from '@/components/Flow/useFlow' type EventPayloads = { [componentEvents.EMPLOYEE_PROFILE_DONE]: { @@ -25,6 +26,18 @@ type EventPayloads = { } } +const backHeaderTo = createBackHeaderFactory({ + namespace: 'Employee.OnboardingExecutionFlow', + event: componentEvents.EMPLOYEE_ONBOARDING_BACK, +}) + +const backToProfileHeader = backHeaderTo('employeeProfile') +const backToCompensationHeader = backHeaderTo('compensation') +const backToFederalTaxesHeader = backHeaderTo('federalTaxes') +const backToStateTaxesHeader = backHeaderTo('stateTaxes') +const backToPaymentMethodHeader = backHeaderTo('paymentMethod') +const backToDeductionsHeader = backHeaderTo('deductions') + const createReducer = (props: Partial) => { return (ctx: OnboardingContextInterface): OnboardingContextInterface => ({ ...ctx, @@ -70,6 +83,7 @@ export const onboardingExecutionMachine = { ): OnboardingContextInterface => ({ ...ctx, component: CompensationContextual, + header: backToProfileHeader, employeeId: ev.payload.uuid, onboardingStatus: ev.payload.onboardingStatus, startDate: ev.payload.startDate, @@ -81,56 +95,110 @@ export const onboardingExecutionMachine = { transition( componentEvents.EMPLOYEE_COMPENSATION_DONE, 'federalTaxes', - reduce(createReducer({ component: FederalTaxesContextual })), + reduce( + createReducer({ component: FederalTaxesContextual, header: backToCompensationHeader }), + ), guard(selfOnboardingGuard), ), transition( componentEvents.EMPLOYEE_COMPENSATION_DONE, 'deductions', - reduce(createReducer({ component: DeductionsContextual })), + reduce(createReducer({ component: DeductionsContextual, header: backToCompensationHeader })), + ), + transition( + componentEvents.EMPLOYEE_ONBOARDING_BACK, + 'employeeProfile', + reduce( + (ctx: OnboardingContextInterface): OnboardingContextInterface => ({ + ...ctx, + component: ProfileContextual, + header: ctx.initialHeader ?? null, + }), + ), ), ), federalTaxes: state( transition( componentEvents.EMPLOYEE_FEDERAL_TAXES_DONE, 'stateTaxes', - reduce(createReducer({ component: StateTaxesContextual })), + reduce(createReducer({ component: StateTaxesContextual, header: backToFederalTaxesHeader })), guard(selfOnboardingGuard), ), + transition( + componentEvents.EMPLOYEE_ONBOARDING_BACK, + 'compensation', + reduce(createReducer({ component: CompensationContextual, header: backToProfileHeader })), + ), ), stateTaxes: state( transition( componentEvents.EMPLOYEE_STATE_TAXES_DONE, 'paymentMethod', - reduce(createReducer({ component: PaymentMethodContextual })), + reduce(createReducer({ component: PaymentMethodContextual, header: backToStateTaxesHeader })), guard(selfOnboardingGuard), ), + transition( + componentEvents.EMPLOYEE_ONBOARDING_BACK, + 'federalTaxes', + reduce( + createReducer({ component: FederalTaxesContextual, header: backToCompensationHeader }), + ), + ), ), paymentMethod: state( transition( componentEvents.EMPLOYEE_PAYMENT_METHOD_DONE, 'deductions', - reduce(createReducer({ component: DeductionsContextual })), + reduce(createReducer({ component: DeductionsContextual, header: backToPaymentMethodHeader })), + ), + transition( + componentEvents.EMPLOYEE_ONBOARDING_BACK, + 'stateTaxes', + reduce(createReducer({ component: StateTaxesContextual, header: backToFederalTaxesHeader })), ), ), deductions: state( transition( componentEvents.EMPLOYEE_DEDUCTION_DONE, 'employeeDocuments', - reduce(createReducer({ component: EmployeeDocumentsContextual })), + reduce( + createReducer({ component: EmployeeDocumentsContextual, header: backToDeductionsHeader }), + ), guard(employeeDocumentsGuard), ), transition( componentEvents.EMPLOYEE_DEDUCTION_DONE, 'summary', - reduce(createReducer({ component: OnboardingSummaryContextual })), + reduce(createReducer({ component: OnboardingSummaryContextual, header: null })), + ), + transition( + componentEvents.EMPLOYEE_ONBOARDING_BACK, + 'compensation', + reduce(createReducer({ component: CompensationContextual, header: backToProfileHeader })), + guard((ctx: OnboardingContextInterface) => !selfOnboardingGuard(ctx)), + ), + transition( + componentEvents.EMPLOYEE_ONBOARDING_BACK, + 'paymentMethod', + reduce(createReducer({ component: PaymentMethodContextual, header: backToStateTaxesHeader })), ), ), employeeDocuments: state( transition( componentEvents.EMPLOYEE_DOCUMENTS_DONE, 'summary', - reduce(createReducer({ component: OnboardingSummaryContextual })), + reduce(createReducer({ component: OnboardingSummaryContextual, header: null })), + ), + transition( + componentEvents.EMPLOYEE_ONBOARDING_BACK, + 'deductions', + reduce(createReducer({ component: DeductionsContextual, header: backToCompensationHeader })), + guard((ctx: OnboardingContextInterface) => !selfOnboardingGuard(ctx)), + ), + transition( + componentEvents.EMPLOYEE_ONBOARDING_BACK, + 'deductions', + reduce(createReducer({ component: DeductionsContextual, header: backToPaymentMethodHeader })), ), ), summary: state(), diff --git a/src/components/Employee/OnboardingFlow/OnboardingFlowComponents.tsx b/src/components/Employee/OnboardingFlow/OnboardingFlowComponents.tsx index 02dd6795c..f3b1fb95b 100644 --- a/src/components/Employee/OnboardingFlow/OnboardingFlowComponents.tsx +++ b/src/components/Employee/OnboardingFlow/OnboardingFlowComponents.tsx @@ -1,8 +1,18 @@ import { OnboardingExecutionFlow } from '../OnboardingExecutionFlow/OnboardingExecutionFlow' import { EmployeeList } from '../EmployeeList/onboarding/EmployeeList' import type { OnboardingContextInterface } from '../OnboardingExecutionFlow/OnboardingExecutionFlowComponents' -import { useFlow } from '@/components/Flow/useFlow' +import { useFlow, type FlowHeaderConfig } from '@/components/Flow/useFlow' import { ensureRequired } from '@/helpers/ensureRequired' +import { componentEvents } from '@/shared/constants' + +const backToEmployeeListHeader: FlowHeaderConfig = { + type: 'minimal', + back: { + labelKey: 'backToListCta', + namespace: 'Employee.EmployeeList', + event: componentEvents.EMPLOYEES_LIST, + }, +} export type { OnboardingContextInterface, @@ -38,6 +48,7 @@ export function OnboardingExecutionFlowContextual() { isAdmin={isAdmin} isSelfOnboardingEnabled={isSelfOnboardingEnabled} withEmployeeI9={withEmployeeI9} + initialBackHeader={backToEmployeeListHeader} /> ) } diff --git a/src/components/Flow/FlowHeader.tsx b/src/components/Flow/FlowHeader.tsx index 2fd02e8e0..501faf6ec 100644 --- a/src/components/Flow/FlowHeader.tsx +++ b/src/components/Flow/FlowHeader.tsx @@ -74,9 +74,13 @@ function MinimalHeader({ }) { const { onEvent } = useFlow() const Components = useComponentContext() - const { t } = useTranslation(back?.namespace) - - const label = back ? t(back.labelKey as never) : t('back') + // Pass the namespace per-call via the `ns` option rather than binding it via + // `useTranslation(ns)`. The hook caches the namespace on first render and + // does not re-bind when the `back.namespace` prop changes between steps, + // which leaves `t(key)` resolving against a stale namespace and returning + // the key literal. + const { t } = useTranslation() + const label = back ? t(back.labelKey as never, { ns: back.namespace }) : t('back') const event = back?.event ?? componentEvents.CANCEL return ( diff --git a/src/components/Flow/README.md b/src/components/Flow/README.md new file mode 100644 index 000000000..277b5cb80 --- /dev/null +++ b/src/components/Flow/README.md @@ -0,0 +1,85 @@ +# Flow chrome conventions + +This folder hosts the generic state-machine flow plumbing (`Flow`, `FlowHeader`, `FlowContext`) and one factory for the most common header variant. + +## Picking a header variant + +`FlowHeaderConfig` (in [`useFlow.ts`](./useFlow.ts)) is a discriminated union with three variants: + +| `type` | When to use | +| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `minimal` | Linear flow, one step at a time, optional back affordance. Best for onboarding-style flows where forward progression is the dominant motion and back is a recovery affordance. | +| `progress` | Linear flow where you want to emphasize "how much is left." A step indicator with no inline back button. Pair with `cta` for a "Save and exit" or similar. | +| `breadcrumbs` | Multi-entry-point or non-linear flow where the user should be able to see and jump between sibling steps. Used by payroll/termination-style flows. | + +If a flow has irreversible side effects on forward progression (creating a draft, charging a card, etc.), prefer `breadcrumbs` — back navigation in those flows needs an explicit user choice, not a sneaky-feeling arrow. + +## Adding a destination-labeled back button (the `minimal` pattern) + +Used by `Employee/OnboardingExecutionFlow`. Each step's header names the step the user will return to (e.g. on Compensation the button reads "Basic details"). The pattern: + +1. **Dedicated back event.** Add a `*_BACK` constant to `componentEvents` for the flow. Don't reuse `CANCEL` — it bubbles to parent flows and gets intercepted. + + ```ts + // src/shared/constants.ts + EMPLOYEE_ONBOARDING_BACK: 'employee/onboarding/back', + ``` + +2. **Translations namespace, one entry per step.** Create `..json` with flat keys naming each step. Run `npm run i18n:generate` after. + + ```json + // src/i18n/en/Employee.OnboardingExecutionFlow.json + { + "employeeProfile": "Basic details", + "compensation": "Compensation", + "federalTaxes": "Federal taxes" + } + ``` + +3. **Load the namespace from the flow root.** Call `useI18n('.')` once in the flow component (e.g. `OnboardingExecutionFlow.tsx`) so the bundle is registered before the back button renders. + +4. **Header factory at the top of the state machine.** Use `createBackHeaderFactory` from `useFlow.ts`: + + ```ts + const backHeaderTo = createBackHeaderFactory({ + namespace: 'Employee.OnboardingExecutionFlow', + event: componentEvents.EMPLOYEE_ONBOARDING_BACK, + }) + + const backToProfileHeader = backHeaderTo('employeeProfile') + const backToCompensationHeader = backHeaderTo('compensation') + ``` + +5. **Set `header` per reducer, naming the back destination.** Forward transitions into a state set the header that labels _that state's_ predecessor. Back transitions do the same — when navigating into a state, set the header that labels _that state's_ predecessor. + + ```ts + compensation: state( + transition( + EMPLOYEE_COMPENSATION_DONE, + 'federalTaxes', + reduce(createReducer({ component: FederalTaxesContextual, header: backToCompensationHeader })), + ), + transition( + EMPLOYEE_ONBOARDING_BACK, + 'employeeProfile', + reduce(/* sets header back to initial / parent header */), + ), + ), + ``` + +6. **Skip the back button on terminal states.** Set `header: null` when transitioning into a summary / final state. + +## Parent-supplied first-step back affordance + +When the flow is nested inside another flow (e.g. `OnboardingExecutionFlow` rendered by `OnboardingFlow`), the first step has no internal predecessor — but the parent flow often wants an "exit" affordance there (e.g. "Back to employees"). Expose an `initialBackHeader?: FlowHeaderConfig` prop on the inner flow component and: + +- Use it as the initial `header` in the machine's initial context. +- Stash it in machine context (e.g. as `initialHeader`) so the reducer that lands back on step one can restore it instead of clearing the header. + +See `OnboardingExecutionFlow.tsx` + `onboardingExecutionStateMachine.ts` for a working reference. + +## Avoid: binding namespace via `useTranslation(ns)` for dynamic headers + +`react-i18next`'s `useTranslation(ns)` caches the namespace on the hook's first render and does not re-bind when the argument changes between renders. If a header switches between different namespaces across renders (e.g. `Employee.EmployeeList` on step one, then `Employee.OnboardingExecutionFlow` on step two), the second render's `t(key)` will resolve against the first render's namespace and return the literal key. + +`FlowHeader` handles this by calling `useTranslation()` once and using the per-call `t(key, { ns })` form. New header variants that need to read translations should do the same. diff --git a/src/components/Flow/useFlow.ts b/src/components/Flow/useFlow.ts index 63ddbabfb..0ca18e2e9 100644 --- a/src/components/Flow/useFlow.ts +++ b/src/components/Flow/useFlow.ts @@ -61,6 +61,42 @@ export type FlowHeaderConfig = cta?: React.ComponentType } +/** + * Builds a `(labelKey) => FlowHeaderConfig` factory bound to a flow-specific + * translation namespace and back event. + * + * @remarks + * Each step's `header` should name the step the user will return to (i.e. its + * predecessor in the forward graph). Declaring one factory at the top of a + * flow's state machine keeps the per-state header configs terse: + * + * ```ts + * const backHeaderTo = createBackHeaderFactory({ + * namespace: 'Employee.OnboardingExecutionFlow', + * event: componentEvents.EMPLOYEE_ONBOARDING_BACK, + * }) + * const backToProfileHeader = backHeaderTo('employeeProfile') + * const backToCompensationHeader = backHeaderTo('compensation') + * ``` + * + * Use a dedicated `*_BACK` event constant per flow rather than a generic + * `BACK` — generic events collide with nested-flow event bubbling. + * + * @internal + */ +export function createBackHeaderFactory({ + namespace, + event, +}: { + namespace: keyof CustomTypeOptions['resources'] + event: EventType +}): (labelKey: string) => FlowHeaderConfig { + return (labelKey: string) => ({ + type: 'minimal', + back: { labelKey, namespace, event }, + }) +} + /** * Shape of the value carried by {@link FlowContext}: the active step component, the upstream * event dispatcher, and optional defaults / chrome configuration. diff --git a/src/i18n/en/Employee.EmployeeList.json b/src/i18n/en/Employee.EmployeeList.json index 7a8533188..d3e2d4ded 100644 --- a/src/i18n/en/Employee.EmployeeList.json +++ b/src/i18n/en/Employee.EmployeeList.json @@ -1,6 +1,7 @@ { "actionLabel": "Actions", "addEmployeeCta": "Add an employee", + "backToListCta": "Back to employees", "skipCta": "I'll do this later", "addAnotherCta": "Add another employee", "continueCta": "Continue", diff --git a/src/i18n/en/Employee.OnboardingExecutionFlow.json b/src/i18n/en/Employee.OnboardingExecutionFlow.json new file mode 100644 index 000000000..794349d4a --- /dev/null +++ b/src/i18n/en/Employee.OnboardingExecutionFlow.json @@ -0,0 +1,8 @@ +{ + "employeeProfile": "Basic details", + "compensation": "Compensation", + "federalTaxes": "Federal taxes", + "stateTaxes": "State taxes", + "paymentMethod": "Payment method", + "deductions": "Deductions" +} diff --git a/src/shared/constants.ts b/src/shared/constants.ts index 4a48e8895..96414f5ca 100644 --- a/src/shared/constants.ts +++ b/src/shared/constants.ts @@ -19,6 +19,7 @@ export const employeeEvents = { EMPLOYEE_DELETED: 'employee/deleted', EMPLOYEE_DISMISS: 'employee/dismiss', EMPLOYEE_ONBOARDING_DONE: 'employee/onboarding/done', + EMPLOYEE_ONBOARDING_BACK: 'employee/onboarding/back', EMPLOYEE_PROFILE_DONE: 'employee/profile/done', EMPLOYEE_HOME_ADDRESS_CREATED: 'employee/addresses/home/created', EMPLOYEE_HOME_ADDRESS_UPDATED: 'employee/addresses/home/updated', From 0c0597453b80ef575178ddd8bab843564a3fd63c Mon Sep 17 00:00:00 2001 From: Aaron Lee Date: Wed, 17 Jun 2026 13:53:40 -0400 Subject: [PATCH 2/3] feat(employee-onboarding): add progress indicator to OnboardingExecutionFlow steps Decomposes FlowHeaderConfig into independent back/cta/indicator axes so the progress bar coexists with the destination-labeled back button on every step (profile through employeeDocuments). Total step count adapts to onboarding status (self vs full path) and withEmployeeI9. When nested inside OnboardingFlow, the parent's "Back to employees" affordance is preserved on step 1 alongside the progress bar via a new initialBack ctx field. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../OnboardingFlow/onboardingStateMachine.ts | 2 +- .../OnboardingFlow/onboardingStateMachine.ts | 2 +- .../Payments/PaymentFlow/PaymentFlow.tsx | 2 +- .../employeeListStateMachine.ts | 2 +- .../OnboardingExecutionFlow.tsx | 40 +++-- .../OnboardingExecutionFlowComponents.tsx | 14 +- .../onboardingExecutionStateMachine.test.ts | 103 ++++++------ .../onboardingExecutionStateMachine.ts | 154 ++++++++++++------ .../OnboardingFlowComponents.tsx | 2 +- .../TerminationFlow/TerminationFlow.tsx | 2 +- .../terminationStateMachine.test.ts | 4 +- src/components/Flow/Flow.test.tsx | 20 ++- src/components/Flow/FlowHeader.test.tsx | 86 +++++++--- src/components/Flow/FlowHeader.tsx | 149 ++++++++++------- src/components/Flow/README.md | 22 +-- src/components/Flow/useFlow.test.tsx | 8 +- src/components/Flow/useFlow.ts | 67 ++++---- .../Payroll/Dismissal/DismissalFlow.tsx | 2 +- .../Dismissal/DismissalFlowComponents.tsx | 4 +- .../Dismissal/dismissalStateMachine.test.ts | 8 +- .../OffCycle/OffCycleExecution.test.tsx | 2 +- .../Payroll/OffCycle/OffCycleFlow.tsx | 2 +- .../OffCycle/OffCycleFlowComponents.tsx | 4 +- .../OffCycle/offCycleStateMachine.test.ts | 8 +- .../PayrollExecutionFlow.tsx | 2 +- .../payrollExecutionMachine.test.ts | 10 +- .../Payroll/PayrollFlow/PayrollFlow.tsx | 2 +- .../PayrollFlow/payrollStateMachine.test.ts | 22 +-- .../Payroll/PayrollLanding/PayrollLanding.tsx | 2 +- .../payrollLandingStateMachine.ts | 6 +- .../Payroll/Transition/TransitionFlow.tsx | 2 +- .../Transition/TransitionFlowComponents.tsx | 2 +- .../Transition/transitionStateMachine.test.ts | 8 +- src/helpers/breadcrumbHelpers.test.ts | 20 +-- src/helpers/breadcrumbHelpers.ts | 12 +- src/types/i18next.d.ts | 11 +- 36 files changed, 480 insertions(+), 328 deletions(-) diff --git a/src/components/Company/OnboardingFlow/onboardingStateMachine.ts b/src/components/Company/OnboardingFlow/onboardingStateMachine.ts index a6edd7f02..6555c057f 100644 --- a/src/components/Company/OnboardingFlow/onboardingStateMachine.ts +++ b/src/components/Company/OnboardingFlow/onboardingStateMachine.ts @@ -18,7 +18,7 @@ import type { FlowHeaderConfig } from '@/components/Flow/useFlow' const TOTAL_STEPS = 8 const progressHeader = (currentStep: number): FlowHeaderConfig => ({ - type: 'progress', + indicator: 'progress', currentStep, totalSteps: TOTAL_STEPS, }) diff --git a/src/components/Contractor/OnboardingFlow/onboardingStateMachine.ts b/src/components/Contractor/OnboardingFlow/onboardingStateMachine.ts index 3c8ba1a38..df0580546 100644 --- a/src/components/Contractor/OnboardingFlow/onboardingStateMachine.ts +++ b/src/components/Contractor/OnboardingFlow/onboardingStateMachine.ts @@ -28,7 +28,7 @@ const progressHeader = ( currentStep: number, totalSteps: number = TOTAL_STEPS_DEFAULT, ): FlowHeaderConfig => ({ - type: 'progress', + indicator: 'progress', currentStep, totalSteps, cta: ProgressBarCta, diff --git a/src/components/Contractor/Payments/PaymentFlow/PaymentFlow.tsx b/src/components/Contractor/Payments/PaymentFlow/PaymentFlow.tsx index 95f20bab0..68d6e3c99 100644 --- a/src/components/Contractor/Payments/PaymentFlow/PaymentFlow.tsx +++ b/src/components/Contractor/Payments/PaymentFlow/PaymentFlow.tsx @@ -17,7 +17,7 @@ export const PaymentFlow = ({ companyId, onEvent }: PaymentFlowProps) => { component: PaymentListContextual, companyId, header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(paymentFlowBreadcrumbsNodes), }, })), diff --git a/src/components/Employee/EmployeeListFlow/employeeListStateMachine.ts b/src/components/Employee/EmployeeListFlow/employeeListStateMachine.ts index 19fb345e2..ec31570a6 100644 --- a/src/components/Employee/EmployeeListFlow/employeeListStateMachine.ts +++ b/src/components/Employee/EmployeeListFlow/employeeListStateMachine.ts @@ -16,7 +16,7 @@ type EventPayloads = { } const backToListHeader: FlowHeaderConfig = { - type: 'minimal', + indicator: 'none', back: { labelKey: 'backToListCta', namespace: 'Employee.ManagementEmployeeList', diff --git a/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlow.tsx b/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlow.tsx index 1b6f2a9cd..f2f108528 100644 --- a/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlow.tsx +++ b/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlow.tsx @@ -3,6 +3,7 @@ import { useMemo } from 'react' import { onboardingExecutionMachine, INITIAL_COMPONENT_MAP, + stepHeader, type OnboardingExecutionInitialState, } from './onboardingExecutionStateMachine' import { @@ -40,9 +41,10 @@ export interface OnboardingExecutionFlowProps { /** When true, enables the Employee Documents step in the flow, allowing the admin to configure I-9 document requirements. Defaults to `false`. */ withEmployeeI9?: boolean /** - * Optional header shown above the initial step. When supplied, the back - * affordance is preserved if the user navigates back to step one from a - * later step. Use this to expose an "exit" path when the flow is rendered + * Optional header shown above the initial step. Only the `back` affordance + * is read — the indicator is always the execution-flow progress bar. The + * back affordance is preserved if the user navigates back to step one from + * a later step. Use this to expose an "exit" path when the flow is rendered * inside a parent flow (e.g. back to an employee list). */ initialBackHeader?: FlowHeaderConfig @@ -95,19 +97,25 @@ export function OnboardingExecutionFlow({ createMachine( initialState, onboardingExecutionMachine, - (initialContext: OnboardingContextInterface) => ({ - ...initialContext, - component: INITIAL_COMPONENT_MAP[initialState], - header: initialBackHeader ?? null, - initialHeader: initialBackHeader ?? null, - companyId, - employeeId: initialEmployeeId, - onboardingStatus: initialOnboardingStatus, - defaultValues, - isAdmin, - isSelfOnboardingEnabled, - withEmployeeI9, - }), + (initialContext: OnboardingContextInterface) => { + const initialBack = initialBackHeader?.back ?? null + const baseContext: OnboardingContextInterface = { + ...initialContext, + component: INITIAL_COMPONENT_MAP[initialState], + companyId, + employeeId: initialEmployeeId, + onboardingStatus: initialOnboardingStatus, + defaultValues, + isAdmin, + isSelfOnboardingEnabled, + withEmployeeI9, + initialBack, + } + return { + ...baseContext, + header: stepHeader(baseContext, initialState, initialBack), + } + }, ), [ companyId, diff --git a/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlowComponents.tsx b/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlowComponents.tsx index 94d20e157..c3800e4d9 100644 --- a/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlowComponents.tsx +++ b/src/components/Employee/OnboardingExecutionFlow/OnboardingExecutionFlowComponents.tsx @@ -5,11 +5,7 @@ import { StateTaxes } from '../StateTaxes/onboarding/StateTaxes' import type { ProfileDefaultValues } from '../Profile/onboarding/Profile' import type { CompensationDefaultValues } from '../Compensation' import { ensureRequired } from '@/helpers/ensureRequired' -import { - useFlow, - type FlowContextInterface, - type FlowHeaderConfig, -} from '@/components/Flow/useFlow' +import { useFlow, type BackConfig, type FlowContextInterface } from '@/components/Flow/useFlow' import type { EmployeeOnboardingStatus } from '@/shared/constants' import type { RequireAtLeastOne } from '@/types/Helpers' @@ -42,10 +38,10 @@ export interface OnboardingContextInterface extends FlowContextInterface { defaultValues?: OnboardingDefaultValues isSelfOnboardingEnabled?: boolean withEmployeeI9?: boolean - // Header used on the initial step (and restored when the user navigates back - // to it). Lets a parent flow expose an "exit" affordance from step one - // without changing the back behaviour of intermediate steps. - initialHeader?: FlowHeaderConfig | null + // Back affordance to render on the initial step (and restored when the user + // navigates back to it). Lets a parent flow expose an "exit" affordance from + // step one without changing the back behaviour of intermediate steps. + initialBack?: BackConfig | null } /** @internal */ diff --git a/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.test.ts b/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.test.ts index 28ae8ffb0..edc235da5 100644 --- a/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.test.ts +++ b/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.test.ts @@ -7,7 +7,7 @@ import { CompensationContextual } from '@/components/Employee/Compensation' import { PaymentMethodContextual } from '@/components/Employee/PaymentMethod' import { OnboardingSummaryContextual } from '@/components/Employee/OnboardingSummary' import { componentEvents, EmployeeOnboardingStatus } from '@/shared/constants' -import type { FlowHeaderConfig } from '@/components/Flow/useFlow' +import type { BackConfig } from '@/components/Flow/useFlow' type State = keyof typeof onboardingExecutionMachine @@ -34,25 +34,29 @@ function send(service: ReturnType, type: string, payload?: ;(service.send as SendFunction)({ type, payload }) } -const stepLabelHeader = (stepKey: string) => ({ - type: 'minimal', - back: { - labelKey: stepKey, - namespace: 'Employee.OnboardingExecutionFlow', - event: componentEvents.EMPLOYEE_ONBOARDING_BACK, - }, +const stepHeader = (currentStep: number, totalSteps: number, backLabelKey?: string) => ({ + indicator: 'progress', + currentStep, + totalSteps, + ...(backLabelKey && { + back: { + labelKey: backLabelKey, + namespace: 'Employee.OnboardingExecutionFlow', + event: componentEvents.EMPLOYEE_ONBOARDING_BACK, + }, + }), }) describe('onboardingExecutionMachine back navigation', () => { describe('header configuration', () => { - it('starts with no header on employeeProfile', () => { + it('starts with no header on employeeProfile (test-only initial context bypasses production initial header builder)', () => { const service = createService('employeeProfile') expect(service.machine.current).toBe('employeeProfile') expect(service.context.header).toBeNull() }) - it('labels the compensation back button with the previous step (employeeProfile)', () => { + it('builds a step 2 of 6 progress header on compensation labeled with employeeProfile', () => { const service = createService('employeeProfile') send(service, componentEvents.EMPLOYEE_PROFILE_DONE, { @@ -62,10 +66,10 @@ describe('onboardingExecutionMachine back navigation', () => { }) expect(service.machine.current).toBe('compensation') - expect(service.context.header).toMatchObject(stepLabelHeader('employeeProfile')) + expect(service.context.header).toEqual(stepHeader(2, 6, 'employeeProfile')) }) - it('labels the federalTaxes back button with the previous step (compensation)', () => { + it('builds a step 3 of 6 progress header on federalTaxes labeled with compensation', () => { const service = createService('compensation', { onboardingStatus: EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE, }) @@ -73,10 +77,10 @@ describe('onboardingExecutionMachine back navigation', () => { send(service, componentEvents.EMPLOYEE_COMPENSATION_DONE) expect(service.machine.current).toBe('federalTaxes') - expect(service.context.header).toMatchObject(stepLabelHeader('compensation')) + expect(service.context.header).toEqual(stepHeader(3, 6, 'compensation')) }) - it('labels the stateTaxes back button with the previous step (federalTaxes)', () => { + it('builds a step 4 of 6 progress header on stateTaxes labeled with federalTaxes', () => { const service = createService('federalTaxes', { onboardingStatus: EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE, }) @@ -84,10 +88,10 @@ describe('onboardingExecutionMachine back navigation', () => { send(service, componentEvents.EMPLOYEE_FEDERAL_TAXES_DONE) expect(service.machine.current).toBe('stateTaxes') - expect(service.context.header).toMatchObject(stepLabelHeader('federalTaxes')) + expect(service.context.header).toEqual(stepHeader(4, 6, 'federalTaxes')) }) - it('labels the paymentMethod back button with the previous step (stateTaxes)', () => { + it('builds a step 5 of 6 progress header on paymentMethod labeled with stateTaxes', () => { const service = createService('stateTaxes', { onboardingStatus: EmployeeOnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE, }) @@ -95,19 +99,19 @@ describe('onboardingExecutionMachine back navigation', () => { send(service, componentEvents.EMPLOYEE_STATE_TAXES_DONE) expect(service.machine.current).toBe('paymentMethod') - expect(service.context.header).toMatchObject(stepLabelHeader('stateTaxes')) + expect(service.context.header).toEqual(stepHeader(5, 6, 'stateTaxes')) }) - it('labels the deductions back button with paymentMethod in the non-self-onboarding path', () => { + it('builds a step 6 of 6 progress header on deductions labeled with paymentMethod (non-self path)', () => { const service = createService('paymentMethod') send(service, componentEvents.EMPLOYEE_PAYMENT_METHOD_DONE) expect(service.machine.current).toBe('deductions') - expect(service.context.header).toMatchObject(stepLabelHeader('paymentMethod')) + expect(service.context.header).toEqual(stepHeader(6, 6, 'paymentMethod')) }) - it('labels the deductions back button with compensation in the self-onboarding path', () => { + it('builds a step 3 of 3 progress header on deductions labeled with compensation (self-onboarding path)', () => { const service = createService('compensation', { onboardingStatus: EmployeeOnboardingStatus.SELF_ONBOARDING_INVITED, }) @@ -115,16 +119,16 @@ describe('onboardingExecutionMachine back navigation', () => { send(service, componentEvents.EMPLOYEE_COMPENSATION_DONE) expect(service.machine.current).toBe('deductions') - expect(service.context.header).toMatchObject(stepLabelHeader('compensation')) + expect(service.context.header).toEqual(stepHeader(3, 3, 'compensation')) }) - it('labels the employeeDocuments back button with the previous step (deductions)', () => { + it('builds a step 7 of 7 progress header on employeeDocuments labeled with deductions', () => { const service = createService('deductions', { withEmployeeI9: true }) send(service, componentEvents.EMPLOYEE_DEDUCTION_DONE) expect(service.machine.current).toBe('employeeDocuments') - expect(service.context.header).toMatchObject(stepLabelHeader('deductions')) + expect(service.context.header).toEqual(stepHeader(7, 7, 'deductions')) }) it('clears the header on the summary state', () => { @@ -138,14 +142,14 @@ describe('onboardingExecutionMachine back navigation', () => { }) describe('back transitions', () => { - it('returns to employeeProfile from compensation and clears the header', () => { + it('returns to employeeProfile from compensation and renders a step 1 progress header', () => { const service = createService('compensation') send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) expect(service.machine.current).toBe('employeeProfile') expect(service.context.component).toBe(ProfileContextual) - expect(service.context.header).toBeNull() + expect(service.context.header).toEqual(stepHeader(1, 6)) }) it('returns to compensation from federalTaxes and relabels for employeeProfile', () => { @@ -155,7 +159,7 @@ describe('onboardingExecutionMachine back navigation', () => { expect(service.machine.current).toBe('compensation') expect(service.context.component).toBe(CompensationContextual) - expect(service.context.header).toMatchObject(stepLabelHeader('employeeProfile')) + expect(service.context.header).toEqual(stepHeader(2, 6, 'employeeProfile')) }) it('returns to federalTaxes from stateTaxes and relabels for compensation', () => { @@ -164,7 +168,7 @@ describe('onboardingExecutionMachine back navigation', () => { send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) expect(service.machine.current).toBe('federalTaxes') - expect(service.context.header).toMatchObject(stepLabelHeader('compensation')) + expect(service.context.header).toEqual(stepHeader(3, 6, 'compensation')) }) it('returns to stateTaxes from paymentMethod and relabels for federalTaxes', () => { @@ -173,7 +177,7 @@ describe('onboardingExecutionMachine back navigation', () => { send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) expect(service.machine.current).toBe('stateTaxes') - expect(service.context.header).toMatchObject(stepLabelHeader('federalTaxes')) + expect(service.context.header).toEqual(stepHeader(4, 6, 'federalTaxes')) }) it('returns to deductions from employeeDocuments and relabels for paymentMethod (non-self)', () => { @@ -184,7 +188,7 @@ describe('onboardingExecutionMachine back navigation', () => { send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) expect(service.machine.current).toBe('deductions') - expect(service.context.header).toMatchObject(stepLabelHeader('paymentMethod')) + expect(service.context.header).toEqual(stepHeader(6, 6, 'paymentMethod')) }) it('returns to deductions from employeeDocuments and relabels for compensation (self)', () => { @@ -195,7 +199,7 @@ describe('onboardingExecutionMachine back navigation', () => { send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) expect(service.machine.current).toBe('deductions') - expect(service.context.header).toMatchObject(stepLabelHeader('compensation')) + expect(service.context.header).toEqual(stepHeader(3, 3, 'compensation')) }) it('returns to paymentMethod from deductions when not self-onboarding and relabels for stateTaxes', () => { @@ -207,7 +211,7 @@ describe('onboardingExecutionMachine back navigation', () => { expect(service.machine.current).toBe('paymentMethod') expect(service.context.component).toBe(PaymentMethodContextual) - expect(service.context.header).toMatchObject(stepLabelHeader('stateTaxes')) + expect(service.context.header).toEqual(stepHeader(5, 6, 'stateTaxes')) }) it('returns to compensation from deductions when self-onboarding and relabels for employeeProfile', () => { @@ -219,7 +223,7 @@ describe('onboardingExecutionMachine back navigation', () => { expect(service.machine.current).toBe('compensation') expect(service.context.component).toBe(CompensationContextual) - expect(service.context.header).toMatchObject(stepLabelHeader('employeeProfile')) + expect(service.context.header).toEqual(stepHeader(2, 3, 'employeeProfile')) }) it('does not transition out of summary on back (no back edge defined)', () => { @@ -244,43 +248,34 @@ describe('onboardingExecutionMachine back navigation', () => { }) }) - describe('initialHeader (nested usage)', () => { - const backToListHeader: FlowHeaderConfig = { - type: 'minimal', - back: { - labelKey: 'backToListCta', - namespace: 'Employee.EmployeeList', - event: componentEvents.EMPLOYEES_LIST, - }, + describe('initialBack (nested usage)', () => { + const backToListConfig: BackConfig = { + labelKey: 'backToListCta', + namespace: 'Employee.EmployeeList', + event: componentEvents.EMPLOYEES_LIST, } - it('uses the supplied initialHeader as the first-step header', () => { - const service = createService('employeeProfile', { - header: backToListHeader, - initialHeader: backToListHeader, - }) - - expect(service.context.header).toEqual(backToListHeader) - }) - - it('restores initialHeader when navigating back from compensation to employeeProfile', () => { + it('preserves the initialBack affordance on the step 1 header restored when navigating back to employeeProfile', () => { const service = createService('compensation', { - initialHeader: backToListHeader, + initialBack: backToListConfig, }) send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) expect(service.machine.current).toBe('employeeProfile') - expect(service.context.header).toEqual(backToListHeader) + expect(service.context.header).toEqual({ + ...stepHeader(1, 6), + back: backToListConfig, + }) }) - it('falls back to null on first-step when no initialHeader is supplied', () => { + it('renders a step 1 progress header with no back affordance when no initialBack is supplied', () => { const service = createService('compensation') send(service, componentEvents.EMPLOYEE_ONBOARDING_BACK) expect(service.machine.current).toBe('employeeProfile') - expect(service.context.header).toBeNull() + expect(service.context.header).toEqual(stepHeader(1, 6)) }) }) }) diff --git a/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.ts b/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.ts index df677359d..96f03556c 100644 --- a/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.ts +++ b/src/components/Employee/OnboardingExecutionFlow/onboardingExecutionStateMachine.ts @@ -16,7 +16,7 @@ import { EmployeeDocumentsContextual } from '@/components/Employee/Documents/onb import { PaymentMethodContextual } from '@/components/Employee/PaymentMethod' import { ProfileContextual } from '@/components/Employee/Profile/onboarding/Profile' import { OnboardingSummaryContextual } from '@/components/Employee/OnboardingSummary' -import { createBackHeaderFactory } from '@/components/Flow/useFlow' +import type { BackConfig, FlowHeaderConfig } from '@/components/Flow/useFlow' type EventPayloads = { [componentEvents.EMPLOYEE_PROFILE_DONE]: { @@ -26,24 +26,17 @@ type EventPayloads = { } } -const backHeaderTo = createBackHeaderFactory({ - namespace: 'Employee.OnboardingExecutionFlow', - event: componentEvents.EMPLOYEE_ONBOARDING_BACK, -}) - -const backToProfileHeader = backHeaderTo('employeeProfile') -const backToCompensationHeader = backHeaderTo('compensation') -const backToFederalTaxesHeader = backHeaderTo('federalTaxes') -const backToStateTaxesHeader = backHeaderTo('stateTaxes') -const backToPaymentMethodHeader = backHeaderTo('paymentMethod') -const backToDeductionsHeader = backHeaderTo('deductions') +type StepKey = + | 'employeeProfile' + | 'compensation' + | 'federalTaxes' + | 'stateTaxes' + | 'paymentMethod' + | 'deductions' + | 'employeeDocuments' -const createReducer = (props: Partial) => { - return (ctx: OnboardingContextInterface): OnboardingContextInterface => ({ - ...ctx, - ...props, - }) -} +const STEP_LABEL_NAMESPACE = 'Employee.OnboardingExecutionFlow' as const +const BACK_EVENT = componentEvents.EMPLOYEE_ONBOARDING_BACK const employeeDocumentsConfigCompletedStatuses: Set< (typeof EmployeeOnboardingStatus)[keyof typeof EmployeeOnboardingStatus] @@ -70,6 +63,60 @@ const selfOnboardingGuard = (ctx: OnboardingContextInterface) => ) : true +const isSelfOnboarding = (ctx: OnboardingContextInterface) => !selfOnboardingGuard(ctx) + +/** @internal */ +export const getTotalSteps = (ctx: OnboardingContextInterface): number => { + const baseSteps = isSelfOnboarding(ctx) ? 3 : 6 + return baseSteps + (employeeDocumentsGuard(ctx) ? 1 : 0) +} + +const getStepNumber = (state: StepKey, ctx: OnboardingContextInterface): number => { + switch (state) { + case 'employeeProfile': + return 1 + case 'compensation': + return 2 + case 'federalTaxes': + return 3 + case 'stateTaxes': + return 4 + case 'paymentMethod': + return 5 + case 'deductions': + return isSelfOnboarding(ctx) ? 3 : 6 + case 'employeeDocuments': + return isSelfOnboarding(ctx) ? 4 : 7 + } +} + +const backTo = (labelKey: string): BackConfig => ({ + labelKey, + namespace: STEP_LABEL_NAMESPACE, + event: BACK_EVENT, +}) + +/** @internal */ +export const stepHeader = ( + ctx: OnboardingContextInterface, + step: StepKey, + back?: BackConfig | null, +): FlowHeaderConfig => ({ + indicator: 'progress', + currentStep: getStepNumber(step, ctx), + totalSteps: getTotalSteps(ctx), + ...(back && { back }), +}) + +const advance = (step: StepKey, component: React.ComponentType, backLabelKey: string) => + reduce( + (ctx: OnboardingContextInterface): OnboardingContextInterface => ({ + ...ctx, + component, + header: stepHeader(ctx, step, backTo(backLabelKey)), + }), + ) + /** @internal */ export const onboardingExecutionMachine = { employeeProfile: state( @@ -80,14 +127,19 @@ export const onboardingExecutionMachine = { ( ctx: OnboardingContextInterface, ev: MachineEventType, - ): OnboardingContextInterface => ({ - ...ctx, - component: CompensationContextual, - header: backToProfileHeader, - employeeId: ev.payload.uuid, - onboardingStatus: ev.payload.onboardingStatus, - startDate: ev.payload.startDate, - }), + ): OnboardingContextInterface => { + const updatedCtx = { + ...ctx, + employeeId: ev.payload.uuid, + onboardingStatus: ev.payload.onboardingStatus, + startDate: ev.payload.startDate, + } + return { + ...updatedCtx, + component: CompensationContextual, + header: stepHeader(updatedCtx, 'compensation', backTo('employeeProfile')), + } + }, ), ), ), @@ -95,15 +147,13 @@ export const onboardingExecutionMachine = { transition( componentEvents.EMPLOYEE_COMPENSATION_DONE, 'federalTaxes', - reduce( - createReducer({ component: FederalTaxesContextual, header: backToCompensationHeader }), - ), + advance('federalTaxes', FederalTaxesContextual, 'compensation'), guard(selfOnboardingGuard), ), transition( componentEvents.EMPLOYEE_COMPENSATION_DONE, 'deductions', - reduce(createReducer({ component: DeductionsContextual, header: backToCompensationHeader })), + advance('deductions', DeductionsContextual, 'compensation'), ), transition( componentEvents.EMPLOYEE_ONBOARDING_BACK, @@ -112,7 +162,7 @@ export const onboardingExecutionMachine = { (ctx: OnboardingContextInterface): OnboardingContextInterface => ({ ...ctx, component: ProfileContextual, - header: ctx.initialHeader ?? null, + header: stepHeader(ctx, 'employeeProfile', ctx.initialBack), }), ), ), @@ -121,84 +171,92 @@ export const onboardingExecutionMachine = { transition( componentEvents.EMPLOYEE_FEDERAL_TAXES_DONE, 'stateTaxes', - reduce(createReducer({ component: StateTaxesContextual, header: backToFederalTaxesHeader })), + advance('stateTaxes', StateTaxesContextual, 'federalTaxes'), guard(selfOnboardingGuard), ), transition( componentEvents.EMPLOYEE_ONBOARDING_BACK, 'compensation', - reduce(createReducer({ component: CompensationContextual, header: backToProfileHeader })), + advance('compensation', CompensationContextual, 'employeeProfile'), ), ), stateTaxes: state( transition( componentEvents.EMPLOYEE_STATE_TAXES_DONE, 'paymentMethod', - reduce(createReducer({ component: PaymentMethodContextual, header: backToStateTaxesHeader })), + advance('paymentMethod', PaymentMethodContextual, 'stateTaxes'), guard(selfOnboardingGuard), ), transition( componentEvents.EMPLOYEE_ONBOARDING_BACK, 'federalTaxes', - reduce( - createReducer({ component: FederalTaxesContextual, header: backToCompensationHeader }), - ), + advance('federalTaxes', FederalTaxesContextual, 'compensation'), ), ), paymentMethod: state( transition( componentEvents.EMPLOYEE_PAYMENT_METHOD_DONE, 'deductions', - reduce(createReducer({ component: DeductionsContextual, header: backToPaymentMethodHeader })), + advance('deductions', DeductionsContextual, 'paymentMethod'), ), transition( componentEvents.EMPLOYEE_ONBOARDING_BACK, 'stateTaxes', - reduce(createReducer({ component: StateTaxesContextual, header: backToFederalTaxesHeader })), + advance('stateTaxes', StateTaxesContextual, 'federalTaxes'), ), ), deductions: state( transition( componentEvents.EMPLOYEE_DEDUCTION_DONE, 'employeeDocuments', - reduce( - createReducer({ component: EmployeeDocumentsContextual, header: backToDeductionsHeader }), - ), + advance('employeeDocuments', EmployeeDocumentsContextual, 'deductions'), guard(employeeDocumentsGuard), ), transition( componentEvents.EMPLOYEE_DEDUCTION_DONE, 'summary', - reduce(createReducer({ component: OnboardingSummaryContextual, header: null })), + reduce( + (ctx: OnboardingContextInterface): OnboardingContextInterface => ({ + ...ctx, + component: OnboardingSummaryContextual, + header: null, + }), + ), ), transition( componentEvents.EMPLOYEE_ONBOARDING_BACK, 'compensation', - reduce(createReducer({ component: CompensationContextual, header: backToProfileHeader })), + advance('compensation', CompensationContextual, 'employeeProfile'), guard((ctx: OnboardingContextInterface) => !selfOnboardingGuard(ctx)), ), transition( componentEvents.EMPLOYEE_ONBOARDING_BACK, 'paymentMethod', - reduce(createReducer({ component: PaymentMethodContextual, header: backToStateTaxesHeader })), + advance('paymentMethod', PaymentMethodContextual, 'stateTaxes'), ), ), employeeDocuments: state( transition( componentEvents.EMPLOYEE_DOCUMENTS_DONE, 'summary', - reduce(createReducer({ component: OnboardingSummaryContextual, header: null })), + reduce( + (ctx: OnboardingContextInterface): OnboardingContextInterface => ({ + ...ctx, + component: OnboardingSummaryContextual, + header: null, + }), + ), ), transition( componentEvents.EMPLOYEE_ONBOARDING_BACK, 'deductions', - reduce(createReducer({ component: DeductionsContextual, header: backToCompensationHeader })), + advance('deductions', DeductionsContextual, 'compensation'), guard((ctx: OnboardingContextInterface) => !selfOnboardingGuard(ctx)), ), transition( componentEvents.EMPLOYEE_ONBOARDING_BACK, 'deductions', - reduce(createReducer({ component: DeductionsContextual, header: backToPaymentMethodHeader })), + advance('deductions', DeductionsContextual, 'paymentMethod'), ), ), summary: state(), diff --git a/src/components/Employee/OnboardingFlow/OnboardingFlowComponents.tsx b/src/components/Employee/OnboardingFlow/OnboardingFlowComponents.tsx index f3b1fb95b..329b2b869 100644 --- a/src/components/Employee/OnboardingFlow/OnboardingFlowComponents.tsx +++ b/src/components/Employee/OnboardingFlow/OnboardingFlowComponents.tsx @@ -6,7 +6,7 @@ import { ensureRequired } from '@/helpers/ensureRequired' import { componentEvents } from '@/shared/constants' const backToEmployeeListHeader: FlowHeaderConfig = { - type: 'minimal', + indicator: 'none', back: { labelKey: 'backToListCta', namespace: 'Employee.EmployeeList', diff --git a/src/components/Employee/Terminations/TerminationFlow/TerminationFlow.tsx b/src/components/Employee/Terminations/TerminationFlow/TerminationFlow.tsx index 2d7e04356..fd060bdd8 100644 --- a/src/components/Employee/Terminations/TerminationFlow/TerminationFlow.tsx +++ b/src/components/Employee/Terminations/TerminationFlow/TerminationFlow.tsx @@ -68,7 +68,7 @@ export const TerminationFlow = ({ companyId, employeeId, onEvent }: TerminationF companyId, employeeId, header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(terminationBreadcrumbNodes), currentBreadcrumbId: 'form', }, diff --git a/src/components/Employee/Terminations/TerminationFlow/terminationStateMachine.test.ts b/src/components/Employee/Terminations/TerminationFlow/terminationStateMachine.test.ts index 0e4e5318f..1fbb31457 100644 --- a/src/components/Employee/Terminations/TerminationFlow/terminationStateMachine.test.ts +++ b/src/components/Employee/Terminations/TerminationFlow/terminationStateMachine.test.ts @@ -17,7 +17,7 @@ function createTestMachine(initialState: TerminationState = 'form') { companyId: 'company-123', employeeId: 'employee-123', header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(terminationBreadcrumbNodes), currentBreadcrumbId: initialState, }, @@ -37,7 +37,7 @@ function send(service: ReturnType, type: string, payload?: function currentBreadcrumb(service: ReturnType) { const header = service.context.header - return header?.type === 'breadcrumbs' ? header.currentBreadcrumbId : undefined + return header?.indicator === 'breadcrumbs' ? header.currentBreadcrumbId : undefined } function toSummary(service: ReturnType) { diff --git a/src/components/Flow/Flow.test.tsx b/src/components/Flow/Flow.test.tsx index 7b737aa9e..3d5ddf642 100644 --- a/src/components/Flow/Flow.test.tsx +++ b/src/components/Flow/Flow.test.tsx @@ -28,7 +28,10 @@ const buildMachine = (overrides: Partial = {}) => (ctx: FlowContextInterface): FlowContextInterface => ({ ...ctx, component: SecondScreen, - header: { type: 'minimal' }, + header: { + indicator: 'none', + back: { labelKey: 'back', namespace: 'common', event: BACK_EVENT }, + }, }), ), ), @@ -141,7 +144,10 @@ describe('Flow', () => { (ctx: FlowContextInterface): FlowContextInterface => ({ ...ctx, component: SecondWithButton, - header: { type: 'minimal' }, + header: { + indicator: 'none', + back: { labelKey: 'back', namespace: 'common', event: BACK_EVENT }, + }, }), ), ), @@ -209,7 +215,10 @@ describe('Flow', () => { (ctx: FlowContextInterface): FlowContextInterface => ({ ...ctx, component: SecondScreen, - header: { type: 'minimal' }, + header: { + indicator: 'none', + back: { labelKey: 'back', namespace: 'common', event: BACK_EVENT }, + }, }), ), ), @@ -257,7 +266,10 @@ describe('Flow', () => { (ctx: FlowContextInterface): FlowContextInterface => ({ ...ctx, component: SecondScreen, - header: { type: 'minimal' }, + header: { + indicator: 'none', + back: { labelKey: 'back', namespace: 'common', event: BACK_EVENT }, + }, }), ) diff --git a/src/components/Flow/FlowHeader.test.tsx b/src/components/Flow/FlowHeader.test.tsx index 5dcb3fd2f..25afa2d8f 100644 --- a/src/components/Flow/FlowHeader.test.tsx +++ b/src/components/Flow/FlowHeader.test.tsx @@ -25,6 +25,12 @@ const renderWithFlow = (overrides: Partial) => { } } +const backConfig = { + labelKey: 'back', + namespace: 'common' as const, + event: componentEvents.CANCEL, +} + describe('FlowHeader', () => { describe('absent chrome', () => { const expectNoHeaderChrome = () => { @@ -46,21 +52,26 @@ describe('FlowHeader', () => { it('renders nothing when there is no active component, even if header is set', () => { renderWithFlow({ component: null, - header: { type: 'minimal' }, + header: { indicator: 'none', back: backConfig }, }) expectNoHeaderChrome() }) + + it('renders nothing when indicator is none with no back and no cta', () => { + renderWithFlow({ header: { indicator: 'none' } }) + expectNoHeaderChrome() + }) }) - describe('minimal header', () => { - it('renders a Back button', () => { - renderWithFlow({ header: { type: 'minimal' } }) + describe('back affordance', () => { + it('renders a back button labeled from the configured translation', () => { + renderWithFlow({ header: { indicator: 'none', back: backConfig } }) expect(screen.getByRole('button', { name: 'Back' })).toBeInTheDocument() }) - it('emits a CANCEL event when the Back button is clicked', async () => { + it('emits the configured back event when clicked', async () => { const user = userEvent.setup() - const { onEvent } = renderWithFlow({ header: { type: 'minimal' } }) + const { onEvent } = renderWithFlow({ header: { indicator: 'none', back: backConfig } }) await user.click(screen.getByRole('button', { name: 'Back' })) @@ -68,24 +79,55 @@ describe('FlowHeader', () => { expect(onEvent).toHaveBeenCalledWith(componentEvents.CANCEL, undefined) }) - it('renders the optional cta alongside the Back button', () => { + it('renders the back button alongside a progress indicator', () => { + renderWithFlow({ + header: { indicator: 'progress', currentStep: 2, totalSteps: 5, back: backConfig }, + }) + + expect(screen.getByRole('button', { name: 'Back' })).toBeInTheDocument() + expect(screen.getByRole('progressbar')).toBeInTheDocument() + }) + + it('renders the back button alongside breadcrumbs', () => { + const breadcrumbs: BreadcrumbTrail = { + 'step-one': [{ id: 'step-one', label: 'Step One' }], + } + renderWithFlow({ + header: { + indicator: 'breadcrumbs', + currentBreadcrumbId: 'step-one', + breadcrumbs, + back: backConfig, + }, + }) + + expect(screen.getByRole('button', { name: 'Back' })).toBeInTheDocument() + expect(screen.getByText('Step One')).toBeInTheDocument() + }) + }) + + describe('none indicator', () => { + it('renders the optional cta alongside the back button', () => { const Cta = () => - renderWithFlow({ header: { type: 'minimal', cta: Cta } }) + renderWithFlow({ header: { indicator: 'none', back: backConfig, cta: Cta } }) expect(screen.getByRole('button', { name: 'Back' })).toBeInTheDocument() expect(screen.getByRole('button', { name: 'Save and exit' })).toBeInTheDocument() }) - it('does not render a cta when none is provided', () => { - renderWithFlow({ header: { type: 'minimal' } }) - expect(screen.getAllByRole('button')).toHaveLength(1) + it('renders only the cta when back is absent', () => { + const Cta = () => + renderWithFlow({ header: { indicator: 'none', cta: Cta } }) + + expect(screen.getByRole('button', { name: 'Save and exit' })).toBeInTheDocument() + expect(screen.queryByRole('button', { name: 'Back' })).not.toBeInTheDocument() }) }) - describe('progress header', () => { + describe('progress indicator', () => { it('renders a progress bar with the correct step values', () => { renderWithFlow({ - header: { type: 'progress', currentStep: 2, totalSteps: 5 }, + header: { indicator: 'progress', currentStep: 2, totalSteps: 5 }, }) const progressBar = screen.getByRole('progressbar') @@ -94,9 +136,9 @@ describe('FlowHeader', () => { expect(progressBar).toHaveAttribute('max', '5') }) - it('does not render a Back button', () => { + it('does not render a back button when back is omitted', () => { renderWithFlow({ - header: { type: 'progress', currentStep: 1, totalSteps: 3 }, + header: { indicator: 'progress', currentStep: 1, totalSteps: 3 }, }) expect(screen.queryByRole('button', { name: 'Back' })).not.toBeInTheDocument() }) @@ -104,14 +146,14 @@ describe('FlowHeader', () => { it('renders the optional cta', () => { const Cta = () => renderWithFlow({ - header: { type: 'progress', currentStep: 1, totalSteps: 3, cta: Cta }, + header: { indicator: 'progress', currentStep: 1, totalSteps: 3, cta: Cta }, }) expect(screen.getByRole('button', { name: 'Save and exit' })).toBeInTheDocument() }) }) - describe('breadcrumbs header', () => { + describe('breadcrumbs indicator', () => { const breadcrumbs: BreadcrumbTrail = { 'step-one': [ { id: 'step-one', label: 'Step One' }, @@ -122,7 +164,7 @@ describe('FlowHeader', () => { it('renders the breadcrumbs trail when currentBreadcrumbId is set', () => { renderWithFlow({ header: { - type: 'breadcrumbs', + indicator: 'breadcrumbs', currentBreadcrumbId: 'step-one', breadcrumbs, }, @@ -132,10 +174,10 @@ describe('FlowHeader', () => { expect(screen.getByText('Step Two')).toBeInTheDocument() }) - it('renders nothing when currentBreadcrumbId is not set', () => { + it('renders nothing when currentBreadcrumbId is not set and no back is configured', () => { renderWithFlow({ header: { - type: 'breadcrumbs', + indicator: 'breadcrumbs', breadcrumbs, }, }) @@ -148,7 +190,7 @@ describe('FlowHeader', () => { it('renders an empty trail when the currentBreadcrumbId has no entry', () => { renderWithFlow({ header: { - type: 'breadcrumbs', + indicator: 'breadcrumbs', currentBreadcrumbId: 'unknown-id', breadcrumbs, }, @@ -162,7 +204,7 @@ describe('FlowHeader', () => { const Cta = () => renderWithFlow({ header: { - type: 'breadcrumbs', + indicator: 'breadcrumbs', currentBreadcrumbId: 'step-one', breadcrumbs, cta: Cta, diff --git a/src/components/Flow/FlowHeader.tsx b/src/components/Flow/FlowHeader.tsx index 501faf6ec..84ae07cf0 100644 --- a/src/components/Flow/FlowHeader.tsx +++ b/src/components/Flow/FlowHeader.tsx @@ -5,25 +5,26 @@ import type { BreadcrumbTrail } from '../Common/FlowBreadcrumbs/FlowBreadcrumbsT import { Flex } from '../Common/Flex' import { FlexItem } from '../Common' import { useFlow } from './useFlow' -import { componentEvents, type EventType } from '@/shared/constants' +import { type EventType } from '@/shared/constants' import { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext' import CaretLeftIcon from '@/assets/icons/caret-left.svg?react' /** - * Renders the chrome above the active flow component (back affordance, progress bar, breadcrumbs). + * Renders the chrome above the active flow component. * * @remarks - * Reads the discriminated `header` value from {@link FlowContext} and dispatches to the matching - * internal renderer: + * Reads the `header` value from {@link FlowContext} and composes three independent pieces: * - * - `header.type === 'minimal'` — back button and optional CTA. - * - `header.type === 'progress'` — step indicator with `currentStep` / `totalSteps`. - * - `header.type === 'breadcrumbs'` — breadcrumb trail; renders nothing while - * `currentBreadcrumbId` is absent so passive states (e.g. landing screens) don't reset the bar. + * - `back` — if set, a destination-labeled back button rendered above the indicator row. + * - `indicator` — `'progress'` renders a step indicator; `'breadcrumbs'` renders a trail + * (and is suppressed while `currentBreadcrumbId` is absent so passive landing states + * don't reset the bar); `'none'` renders no indicator. + * - `cta` — optional component composed alongside the indicator. For `progress`, the CTA + * is embedded inside the progress bar component; otherwise it sits next to the back + * button (when `indicator` is `'none'`) or breadcrumbs trail. * - * When no `header` is configured, or there is no active `component` in context, nothing is - * rendered. To add a new chrome variant: extend {@link FlowHeaderConfig}, add a renderer below, - * and add a branch here. + * Returns `null` when there is no active `component`, no `header`, or the `header` would + * produce no visible chrome (e.g. `{ indicator: 'none' }` with no `back` and no `cta`). * * @returns A header element above the active flow component, or `null` when no header should show. * @internal @@ -33,44 +34,80 @@ export function FlowHeader() { if (!header || !component) return null - switch (header.type) { - case 'minimal': - return - case 'progress': - return ( - + {back && } + - ) - case 'breadcrumbs': - // The breadcrumb trail is intentionally persisted across "passive" - // states (e.g. landing screens) so that subsequent transitions can - // pick up where they left off without rebuilding it. We render the - // bar only when there's an active breadcrumb to show; otherwise - // we treat the flow as "no chrome" for this state. - if (!header.currentBreadcrumbId) return null - return ( - - ) + + ) + } + + if (indicator === 'breadcrumbs') { + return ( + <> + {back && } + {header.currentBreadcrumbId && ( + + )} + + ) } + + if (!back && !Cta) return null + + return ( + + {back && ( + + + + )} + {Cta && ( + + + + )} + + ) } -function MinimalHeader({ +function BackRow({ back, - cta: Cta, }: { - back?: { + back: { + labelKey: string + namespace: keyof CustomTypeOptions['resources'] + event: EventType + } +}) { + return ( + + + + + + ) +} + +function BackButton({ + back, +}: { + back: { labelKey: string namespace: keyof CustomTypeOptions['resources'] event: EventType } - cta?: React.ComponentType }) { const { onEvent } = useFlow() const Components = useComponentContext() @@ -80,32 +117,22 @@ function MinimalHeader({ // which leaves `t(key)` resolving against a stale namespace and returning // the key literal. const { t } = useTranslation() - const label = back ? t(back.labelKey as never, { ns: back.namespace }) : t('back') - const event = back?.event ?? componentEvents.CANCEL + const label = t(back.labelKey as never, { ns: back.namespace }) return ( - - - - - {Cta && ( - - - - )} - + ) } -function ProgressHeader({ +function ProgressIndicator({ currentStep, totalSteps, cta: Cta, @@ -127,12 +154,12 @@ function ProgressHeader({ ) } -function BreadcrumbsHeader({ +function BreadcrumbsIndicator({ currentBreadcrumbId, breadcrumbs = {}, cta: Cta, }: { - currentBreadcrumbId?: string + currentBreadcrumbId: string breadcrumbs?: BreadcrumbTrail cta?: React.ComponentType }) { @@ -142,7 +169,7 @@ function BreadcrumbsHeader({ diff --git a/src/components/Flow/README.md b/src/components/Flow/README.md index 277b5cb80..97795831d 100644 --- a/src/components/Flow/README.md +++ b/src/components/Flow/README.md @@ -1,20 +1,20 @@ # Flow chrome conventions -This folder hosts the generic state-machine flow plumbing (`Flow`, `FlowHeader`, `FlowContext`) and one factory for the most common header variant. +This folder hosts the generic state-machine flow plumbing (`Flow`, `FlowHeader`, `FlowContext`) and one factory for the most common header configuration. -## Picking a header variant +## Composing a header -`FlowHeaderConfig` (in [`useFlow.ts`](./useFlow.ts)) is a discriminated union with three variants: +`FlowHeaderConfig` (in [`useFlow.ts`](./useFlow.ts)) is three independent pieces. None are mutually exclusive — combine them freely: -| `type` | When to use | -| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `minimal` | Linear flow, one step at a time, optional back affordance. Best for onboarding-style flows where forward progression is the dominant motion and back is a recovery affordance. | -| `progress` | Linear flow where you want to emphasize "how much is left." A step indicator with no inline back button. Pair with `cta` for a "Save and exit" or similar. | -| `breadcrumbs` | Multi-entry-point or non-linear flow where the user should be able to see and jump between sibling steps. Used by payroll/termination-style flows. | +| Field | What it adds | +| ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `back` | Destination-labeled back button rendered above the indicator. Omit to hide. | +| `cta` | Optional component composed alongside the indicator (e.g. "Save and exit"). | +| `indicator` | Progress indicator: `'none'` (no indicator — use when `back`/`cta` are the only chrome), `'progress'` (step indicator), `'breadcrumbs'` (trail; used by non-linear flows). | -If a flow has irreversible side effects on forward progression (creating a draft, charging a card, etc.), prefer `breadcrumbs` — back navigation in those flows needs an explicit user choice, not a sneaky-feeling arrow. +Reach for `'breadcrumbs'` when the flow has irreversible side effects on forward progression (creating a draft, charging a card, etc.) — back navigation in those flows needs an explicit user choice, not a sneaky-feeling arrow. -## Adding a destination-labeled back button (the `minimal` pattern) +## Adding a destination-labeled back button Used by `Employee/OnboardingExecutionFlow`. Each step's header names the step the user will return to (e.g. on Compensation the button reads "Basic details"). The pattern: @@ -82,4 +82,4 @@ See `OnboardingExecutionFlow.tsx` + `onboardingExecutionStateMachine.ts` for a w `react-i18next`'s `useTranslation(ns)` caches the namespace on the hook's first render and does not re-bind when the argument changes between renders. If a header switches between different namespaces across renders (e.g. `Employee.EmployeeList` on step one, then `Employee.OnboardingExecutionFlow` on step two), the second render's `t(key)` will resolve against the first render's namespace and return the literal key. -`FlowHeader` handles this by calling `useTranslation()` once and using the per-call `t(key, { ns })` form. New header variants that need to read translations should do the same. +`FlowHeader` handles this by calling `useTranslation()` once and using the per-call `t(key, { ns })` form. New chrome that needs to read translations should do the same. diff --git a/src/components/Flow/useFlow.test.tsx b/src/components/Flow/useFlow.test.tsx index 95718b9d3..713c9223f 100644 --- a/src/components/Flow/useFlow.test.tsx +++ b/src/components/Flow/useFlow.test.tsx @@ -18,7 +18,7 @@ describe('useFlow', () => { const value: FlowContextInterface = { component: TestComponent, onEvent, - header: { type: 'minimal' }, + header: { indicator: 'none' }, } const wrapper = ({ children }: { children: ReactNode }) => ( @@ -30,7 +30,7 @@ describe('useFlow', () => { expect(result.current).toBe(value) expect(result.current.component).toBe(TestComponent) expect(result.current.onEvent).toBe(onEvent) - expect(result.current.header).toEqual({ type: 'minimal' }) + expect(result.current.header).toEqual({ indicator: 'none' }) }) it('preserves discriminated header variants in the returned context', () => { @@ -39,7 +39,7 @@ describe('useFlow', () => { component: () => null, onEvent, header: { - type: 'breadcrumbs', + indicator: 'breadcrumbs', currentBreadcrumbId: 'step-1', breadcrumbs: { 'step-1': [{ id: 'step-1', label: 'Step One' }] }, }, @@ -52,7 +52,7 @@ describe('useFlow', () => { const { result } = renderHook(() => useFlow(), { wrapper }) expect(result.current.header).toMatchObject({ - type: 'breadcrumbs', + indicator: 'breadcrumbs', currentBreadcrumbId: 'step-1', }) }) diff --git a/src/components/Flow/useFlow.ts b/src/components/Flow/useFlow.ts index 0ca18e2e9..7ba8fcbb6 100644 --- a/src/components/Flow/useFlow.ts +++ b/src/components/Flow/useFlow.ts @@ -16,50 +16,49 @@ interface CtaConfig { } /** - * Discriminated union describing the chrome rendered above the active flow component. + * Configuration for the optional back affordance rendered above the active flow component. * * @remarks - * Each variant declares only the data it needs: + * Routes the back click to a flow-specific event (use a dedicated `*_BACK` event constant + * per flow rather than `CANCEL`, which bubbles to parent flows). * - * - `minimal` — back button. Optional `cta` for an extra control next to it. - * - `progress` — step indicator. Requires `currentStep` / `totalSteps`, plus optional `cta`. - * - `breadcrumbs` — breadcrumb trail. Optional `currentBreadcrumbId` / `breadcrumbs` (typically - * populated via `buildBreadcrumbs` + `updateBreadcrumbs`), plus optional `cta`. + * @internal + */ +export interface BackConfig { + labelKey: string + namespace: keyof CustomTypeOptions['resources'] + event: EventType +} + +/** + * Configuration for the chrome rendered above the active flow component. + * + * @remarks + * Three independent axes — none are mutually exclusive: * - * `cta` carries the same meaning across every variant: an optional component rendered as part - * of the header chrome. + * - `back` — optional back affordance. Renders a destination-labeled back button above the + * indicator row. Omit to hide. + * - `cta` — optional component (e.g. "Save and exit") composed alongside the indicator. + * - `indicator` — progress indicator variant: + * - `none` — no indicator (use when `back` and/or `cta` are the only chrome). + * - `progress` — step indicator. Requires `currentStep` / `totalSteps`. + * - `breadcrumbs` — breadcrumb trail. Optional `currentBreadcrumbId` / `breadcrumbs` + * (typically populated via `buildBreadcrumbs` + `updateBreadcrumbs`). * * @internal */ -export type FlowHeaderConfig = - | { - type: 'minimal' - /** - * Optional override for the default back button (defaults to - * `t('back')` + `componentEvents.CANCEL`). Provide both `label` and - * `event` to render a flow-specific affordance — e.g. "Back to - * employees" routed to a dedicated state-machine transition so nested - * flows don't intercept it as a generic cancel. - */ - back?: { - labelKey: string - namespace: keyof CustomTypeOptions['resources'] - event: EventType - } - cta?: React.ComponentType - } - | { - type: 'progress' - currentStep: number - totalSteps: number - cta?: React.ComponentType - } +export type FlowHeaderConfig = { + back?: BackConfig + cta?: React.ComponentType +} & ( + | { indicator: 'none' } + | { indicator: 'progress'; currentStep: number; totalSteps: number } | { - type: 'breadcrumbs' + indicator: 'breadcrumbs' currentBreadcrumbId?: string breadcrumbs?: BreadcrumbTrail - cta?: React.ComponentType } +) /** * Builds a `(labelKey) => FlowHeaderConfig` factory bound to a flow-specific @@ -92,7 +91,7 @@ export function createBackHeaderFactory({ event: EventType }): (labelKey: string) => FlowHeaderConfig { return (labelKey: string) => ({ - type: 'minimal', + indicator: 'none', back: { labelKey, namespace, event }, }) } diff --git a/src/components/Payroll/Dismissal/DismissalFlow.tsx b/src/components/Payroll/Dismissal/DismissalFlow.tsx index 9cb555440..30ade3190 100644 --- a/src/components/Payroll/Dismissal/DismissalFlow.tsx +++ b/src/components/Payroll/Dismissal/DismissalFlow.tsx @@ -29,7 +29,7 @@ export function DismissalFlow({ companyId, employeeId, onEvent, payrollId }: Dis employeeId, payrollUuid: payrollId, header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(dismissalBreadcrumbsNodes), currentBreadcrumbId: shouldAutoAdvance ? undefined : 'payPeriodSelection', }, diff --git a/src/components/Payroll/Dismissal/DismissalFlowComponents.tsx b/src/components/Payroll/Dismissal/DismissalFlowComponents.tsx index 304b4702f..bcc05a7ab 100644 --- a/src/components/Payroll/Dismissal/DismissalFlowComponents.tsx +++ b/src/components/Payroll/Dismissal/DismissalFlowComponents.tsx @@ -39,7 +39,9 @@ export function DismissalExecutionContextual() { const { companyId, payrollUuid, onEvent, header } = useFlow() const payPeriodSelectionBreadcrumb = - header?.type === 'breadcrumbs' ? header.breadcrumbs?.['payPeriodSelection']?.[0] : undefined + header?.indicator === 'breadcrumbs' + ? header.breadcrumbs?.['payPeriodSelection']?.[0] + : undefined const prefixBreadcrumbs = useMemo(() => { return payPeriodSelectionBreadcrumb ? [payPeriodSelectionBreadcrumb] : undefined }, [payPeriodSelectionBreadcrumb]) diff --git a/src/components/Payroll/Dismissal/dismissalStateMachine.test.ts b/src/components/Payroll/Dismissal/dismissalStateMachine.test.ts index 8e49a6c9e..70912e0ba 100644 --- a/src/components/Payroll/Dismissal/dismissalStateMachine.test.ts +++ b/src/components/Payroll/Dismissal/dismissalStateMachine.test.ts @@ -15,7 +15,7 @@ function createTestMachine() { companyId: 'test-company', employeeId: 'test-employee', header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(dismissalBreadcrumbsNodes), currentBreadcrumbId: 'payPeriodSelection', }, @@ -50,7 +50,7 @@ describe('dismissalStateMachine', () => { expect(service.machine.current).toBe('execution') expect(service.context.payrollUuid).toBe('payroll-123') expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBeUndefined() @@ -73,9 +73,9 @@ describe('dismissalStateMachine', () => { expect(service.machine.current).toBe('payPeriodSelection') expect(service.context.payrollUuid).toBeUndefined() - expect(service.context.header?.type).toBe('breadcrumbs') + expect(service.context.header?.indicator).toBe('breadcrumbs') expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBe('payPeriodSelection') diff --git a/src/components/Payroll/OffCycle/OffCycleExecution.test.tsx b/src/components/Payroll/OffCycle/OffCycleExecution.test.tsx index 34e97f3ae..3a93a64bd 100644 --- a/src/components/Payroll/OffCycle/OffCycleExecution.test.tsx +++ b/src/components/Payroll/OffCycle/OffCycleExecution.test.tsx @@ -139,7 +139,7 @@ function OffCycleFlowInExecutionState({ companyId: COMPANY_ID, payrollUuid: PAYROLL_ID, header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(offCycleBreadcrumbsNodes), }, withReimbursements, diff --git a/src/components/Payroll/OffCycle/OffCycleFlow.tsx b/src/components/Payroll/OffCycle/OffCycleFlow.tsx index f47b1974b..11bda4122 100644 --- a/src/components/Payroll/OffCycle/OffCycleFlow.tsx +++ b/src/components/Payroll/OffCycle/OffCycleFlow.tsx @@ -27,7 +27,7 @@ export function OffCycleFlow({ payrollType, withReimbursements, header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(offCycleBreadcrumbsNodes), currentBreadcrumbId: 'createOffCyclePayroll', }, diff --git a/src/components/Payroll/OffCycle/OffCycleFlowComponents.tsx b/src/components/Payroll/OffCycle/OffCycleFlowComponents.tsx index 8906255bd..c4274665b 100644 --- a/src/components/Payroll/OffCycle/OffCycleFlowComponents.tsx +++ b/src/components/Payroll/OffCycle/OffCycleFlowComponents.tsx @@ -46,7 +46,9 @@ export function OffCycleExecutionContextual() { const resolvedPayrollId = ensureRequired(payrollUuid) const offCycleRootBreadcrumb = - header?.type === 'breadcrumbs' ? header.breadcrumbs?.['createOffCyclePayroll']?.[0] : undefined + header?.indicator === 'breadcrumbs' + ? header.breadcrumbs?.['createOffCyclePayroll']?.[0] + : undefined const prefixBreadcrumbs = useMemo( () => (offCycleRootBreadcrumb ? [offCycleRootBreadcrumb] : undefined), [offCycleRootBreadcrumb], diff --git a/src/components/Payroll/OffCycle/offCycleStateMachine.test.ts b/src/components/Payroll/OffCycle/offCycleStateMachine.test.ts index 2cb8fc022..ced495942 100644 --- a/src/components/Payroll/OffCycle/offCycleStateMachine.test.ts +++ b/src/components/Payroll/OffCycle/offCycleStateMachine.test.ts @@ -14,7 +14,7 @@ function createTestMachine() { component: () => null, companyId: 'test-company', header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(offCycleBreadcrumbsNodes), currentBreadcrumbId: 'createOffCyclePayroll', }, @@ -47,7 +47,7 @@ describe('offCycleStateMachine', () => { expect(service.machine.current).toBe('execution') expect(service.context.payrollUuid).toBe('payroll-123') expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBeUndefined() @@ -68,9 +68,9 @@ describe('offCycleStateMachine', () => { expect(service.machine.current).toBe('createOffCyclePayroll') expect(service.context.payrollUuid).toBeUndefined() - expect(service.context.header?.type).toBe('breadcrumbs') + expect(service.context.header?.indicator).toBe('breadcrumbs') expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBe('createOffCyclePayroll') diff --git a/src/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.tsx b/src/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.tsx index de0a75002..bcda63856 100644 --- a/src/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.tsx +++ b/src/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.tsx @@ -70,7 +70,7 @@ export function PayrollExecutionFlow({ initialState, { header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs, cta: SaveAndExitCta, }, diff --git a/src/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.test.ts b/src/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.test.ts index 5e3dbce76..1d43e4988 100644 --- a/src/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.test.ts +++ b/src/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.test.ts @@ -18,7 +18,7 @@ function createTestMachine(initialState: 'configuration' | 'overview' = 'configu companyId: 'test-company', payrollUuid: 'payroll-123', header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(getPayrollExecutionBreadcrumbsNodes()), currentBreadcrumbId: initialState, }, @@ -71,7 +71,7 @@ describe('payrollExecutionMachine', () => { companyId: 'test-company', payrollUuid: 'payroll-123', header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(getPayrollExecutionBreadcrumbsNodes()), currentBreadcrumbId: 'configuration' as const, }, @@ -147,9 +147,9 @@ describe('payrollExecutionMachine', () => { send(service, componentEvents.RUN_PAYROLL_RECEIPT_GET) expect(service.machine.current).toBe('receipts') - expect(service.context.header?.type).toBe('breadcrumbs') + expect(service.context.header?.indicator).toBe('breadcrumbs') expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBe('receipts') @@ -228,7 +228,7 @@ describe('payrollExecutionMachine', () => { send(service, componentEvents.RUN_PAYROLL_SUBMITTING) const allBreadcrumbs = - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? (service.context.header.breadcrumbs ?? {}) : {} for (const trail of Object.values(allBreadcrumbs)) { diff --git a/src/components/Payroll/PayrollFlow/PayrollFlow.tsx b/src/components/Payroll/PayrollFlow/PayrollFlow.tsx index 1a6da7776..f91bbba67 100644 --- a/src/components/Payroll/PayrollFlow/PayrollFlow.tsx +++ b/src/components/Payroll/PayrollFlow/PayrollFlow.tsx @@ -26,7 +26,7 @@ export const PayrollFlow = ({ component: PayrollLandingContextual, companyId, header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(payrollFlowBreadcrumbsNodes), cta: SaveAndExitCta, }, diff --git a/src/components/Payroll/PayrollFlow/payrollStateMachine.test.ts b/src/components/Payroll/PayrollFlow/payrollStateMachine.test.ts index 4b50efbf2..ac0fc2ed3 100644 --- a/src/components/Payroll/PayrollFlow/payrollStateMachine.test.ts +++ b/src/components/Payroll/PayrollFlow/payrollStateMachine.test.ts @@ -14,7 +14,7 @@ function createTestMachine() { component: () => null, companyId: 'test-company', header: { - type: 'breadcrumbs', + indicator: 'breadcrumbs', breadcrumbs: buildBreadcrumbs(payrollFlowBreadcrumbsNodes), }, withReimbursements: true, @@ -67,9 +67,9 @@ describe('payrollFlowMachine', () => { send(service, componentEvents.RUN_PAYROLL_BLOCKERS_VIEW_ALL) expect(service.machine.current).toBe('blockers') - expect(service.context.header?.type).toBe('breadcrumbs') + expect(service.context.header?.indicator).toBe('breadcrumbs') expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBe('blockers') @@ -109,7 +109,7 @@ describe('payrollFlowMachine', () => { expect(service.context.payrollUuid).toBeUndefined() expect(service.context.executionInitialState).toBeUndefined() expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBeUndefined() @@ -137,9 +137,9 @@ describe('payrollFlowMachine', () => { expect(service.machine.current).toBe('submittedOverview') expect(service.context.payPeriod).toEqual(payPeriod) expect(service.context.executionInitialState).toBeUndefined() - expect(service.context.header?.type).toBe('breadcrumbs') + expect(service.context.header?.indicator).toBe('breadcrumbs') expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBe('submittedOverview') @@ -185,7 +185,7 @@ describe('payrollFlowMachine', () => { expect(service.machine.current).toBe('submittedReceipts') expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBe('submittedReceipts') @@ -255,7 +255,7 @@ describe('payrollFlowMachine', () => { expect(service.machine.current).toBe('offCycle') expect(service.context.showPayrollCancelledAlert).toBe(false) expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBeUndefined() @@ -315,7 +315,7 @@ describe('payrollFlowMachine', () => { expect(service.context.payrollUuid).toBe('payroll-789') expect(service.context.executionInitialState).toBeUndefined() expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBe('submittedOverview') @@ -347,7 +347,7 @@ describe('payrollFlowMachine', () => { expect(service.context.transitionPayScheduleUuid).toBe('ps-123') expect(service.context.showPayrollCancelledAlert).toBe(false) expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBeUndefined() @@ -407,7 +407,7 @@ describe('payrollFlowMachine', () => { expect(service.context.payrollUuid).toBe('payroll-789') expect(service.context.executionInitialState).toBeUndefined() expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBe('submittedOverview') diff --git a/src/components/Payroll/PayrollLanding/PayrollLanding.tsx b/src/components/Payroll/PayrollLanding/PayrollLanding.tsx index fd8869f1e..517183061 100644 --- a/src/components/Payroll/PayrollLanding/PayrollLanding.tsx +++ b/src/components/Payroll/PayrollLanding/PayrollLanding.tsx @@ -51,7 +51,7 @@ export function PayrollLandingFlow({ withReimbursements, ConfirmWireDetailsComponent, header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(payrollLandingBreadcrumbNodes), }, showPayrollCancelledAlert, diff --git a/src/components/Payroll/PayrollLanding/payrollLandingStateMachine.ts b/src/components/Payroll/PayrollLanding/payrollLandingStateMachine.ts index 9d256ccd8..d2b2259f4 100644 --- a/src/components/Payroll/PayrollLanding/payrollLandingStateMachine.ts +++ b/src/components/Payroll/PayrollLanding/payrollLandingStateMachine.ts @@ -40,7 +40,7 @@ export const payrollLandingBreadcrumbNodes: BreadcrumbNodes = { ...ctx, component: PayrollLandingTabsContextual, header: - ctx.header?.type === 'breadcrumbs' + ctx.header?.indicator === 'breadcrumbs' ? { ...ctx.header, currentBreadcrumbId: undefined } : null, payrollUuid: undefined, @@ -91,7 +91,9 @@ const returnToTabs = ( startDate: undefined, endDate: undefined, header: - ctx.header?.type === 'breadcrumbs' ? { ...ctx.header, currentBreadcrumbId: undefined } : null, + ctx.header?.indicator === 'breadcrumbs' + ? { ...ctx.header, currentBreadcrumbId: undefined } + : null, ...extra, }) } diff --git a/src/components/Payroll/Transition/TransitionFlow.tsx b/src/components/Payroll/Transition/TransitionFlow.tsx index ec7b1d90b..cf55fc79a 100644 --- a/src/components/Payroll/Transition/TransitionFlow.tsx +++ b/src/components/Payroll/Transition/TransitionFlow.tsx @@ -38,7 +38,7 @@ export function TransitionFlow({ payScheduleUuid, payrollUuid, header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(transitionBreadcrumbsNodes), currentBreadcrumbId: hasExistingPayroll ? undefined : 'createTransitionPayroll', }, diff --git a/src/components/Payroll/Transition/TransitionFlowComponents.tsx b/src/components/Payroll/Transition/TransitionFlowComponents.tsx index 807832eb2..30ed58880 100644 --- a/src/components/Payroll/Transition/TransitionFlowComponents.tsx +++ b/src/components/Payroll/Transition/TransitionFlowComponents.tsx @@ -46,7 +46,7 @@ export function TransitionExecutionContextual() { const { companyId, payrollUuid, onEvent, header } = useFlow() const transitionCreationBreadcrumb = - header?.type === 'breadcrumbs' + header?.indicator === 'breadcrumbs' ? header.breadcrumbs?.['createTransitionPayroll']?.[0] : undefined const prefixBreadcrumbs = useMemo(() => { diff --git a/src/components/Payroll/Transition/transitionStateMachine.test.ts b/src/components/Payroll/Transition/transitionStateMachine.test.ts index eba09e7fb..ac96bd5d6 100644 --- a/src/components/Payroll/Transition/transitionStateMachine.test.ts +++ b/src/components/Payroll/Transition/transitionStateMachine.test.ts @@ -17,7 +17,7 @@ function createTestMachine() { endDate: '2025-08-27', payScheduleUuid: 'schedule-uuid-1', header: { - type: 'breadcrumbs' as const, + indicator: 'breadcrumbs' as const, breadcrumbs: buildBreadcrumbs(transitionBreadcrumbsNodes), currentBreadcrumbId: 'createTransitionPayroll', }, @@ -50,7 +50,7 @@ describe('transitionStateMachine', () => { expect(service.machine.current).toBe('execution') expect(service.context.payrollUuid).toBe('payroll-123') expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBeUndefined() @@ -89,9 +89,9 @@ describe('transitionStateMachine', () => { expect(service.machine.current).toBe('createTransitionPayroll') expect(service.context.payrollUuid).toBeUndefined() - expect(service.context.header?.type).toBe('breadcrumbs') + expect(service.context.header?.indicator).toBe('breadcrumbs') expect( - service.context.header?.type === 'breadcrumbs' + service.context.header?.indicator === 'breadcrumbs' ? service.context.header.currentBreadcrumbId : undefined, ).toBe('createTransitionPayroll') diff --git a/src/helpers/breadcrumbHelpers.test.ts b/src/helpers/breadcrumbHelpers.test.ts index db50c213d..2f3244b47 100644 --- a/src/helpers/breadcrumbHelpers.test.ts +++ b/src/helpers/breadcrumbHelpers.test.ts @@ -13,8 +13,8 @@ import type { import type { FlowHeaderConfig } from '@/components/Flow/useFlow' const breadcrumbsHeader = ( - fields: Omit, 'type'>, -): FlowHeaderConfig => ({ type: 'breadcrumbs', ...fields }) + fields: Omit, 'indicator'>, +): FlowHeaderConfig => ({ indicator: 'breadcrumbs', ...fields }) describe('buildBreadcrumbs', () => { it('should build breadcrumbs for a single node with no parent', () => { @@ -291,7 +291,7 @@ describe('hideBreadcrumb', () => { const result = hideBreadcrumb('configuration', context) const breadcrumbs = - result.header.type === 'breadcrumbs' ? (result.header.breadcrumbs ?? {}) : {} + result.header.indicator === 'breadcrumbs' ? (result.header.breadcrumbs ?? {}) : {} expect(breadcrumbs.configuration).toEqual([]) expect(breadcrumbs.overview).toEqual([{ id: 'overview', label: 'Overview' }]) @@ -315,7 +315,7 @@ describe('hideBreadcrumb', () => { const result = hideBreadcrumb('other', context) const breadcrumbs = - result.header.type === 'breadcrumbs' ? (result.header.breadcrumbs ?? {}) : {} + result.header.indicator === 'breadcrumbs' ? (result.header.breadcrumbs ?? {}) : {} expect(breadcrumbs.overview).toEqual([ { id: 'configuration', label: 'Config' }, @@ -345,7 +345,7 @@ describe('hideBreadcrumb', () => { const result = hideBreadcrumb('anything', context) const breadcrumbs = - result.header.type === 'breadcrumbs' ? (result.header.breadcrumbs ?? {}) : {} + result.header.indicator === 'breadcrumbs' ? (result.header.breadcrumbs ?? {}) : {} expect(breadcrumbs).toEqual({}) }) @@ -355,7 +355,7 @@ describe('hideBreadcrumb', () => { const result = hideBreadcrumb('anything', context) - expect(result.header).toEqual({ type: 'breadcrumbs', breadcrumbs: {} }) + expect(result.header).toEqual({ indicator: 'breadcrumbs', breadcrumbs: {} }) }) }) @@ -375,7 +375,7 @@ describe('lockBreadcrumb', () => { const result = lockBreadcrumb('configuration', context) const breadcrumbs = - result.header.type === 'breadcrumbs' ? (result.header.breadcrumbs ?? {}) : {} + result.header.indicator === 'breadcrumbs' ? (result.header.breadcrumbs ?? {}) : {} expect(breadcrumbs.configuration![0]!.isNavigable).toBe(false) expect(breadcrumbs.overview![0]!.isNavigable).toBe(false) @@ -396,7 +396,7 @@ describe('lockBreadcrumb', () => { const result = lockBreadcrumb('configuration', context) const breadcrumbs = - result.header.type === 'breadcrumbs' ? (result.header.breadcrumbs ?? {}) : {} + result.header.indicator === 'breadcrumbs' ? (result.header.breadcrumbs ?? {}) : {} expect(breadcrumbs.overview![1]).toEqual({ id: 'overview', label: 'Overview' }) }) @@ -423,7 +423,7 @@ describe('lockBreadcrumb', () => { const result = lockBreadcrumb('anything', context) const breadcrumbs = - result.header.type === 'breadcrumbs' ? (result.header.breadcrumbs ?? {}) : {} + result.header.indicator === 'breadcrumbs' ? (result.header.breadcrumbs ?? {}) : {} expect(breadcrumbs).toEqual({}) }) @@ -576,7 +576,7 @@ describe('updateBreadcrumbs', () => { const result = updateBreadcrumbs('newState', context) expect(result.header).toEqual({ - type: 'breadcrumbs', + indicator: 'breadcrumbs', breadcrumbs: { newState: [] }, currentBreadcrumbId: 'newState', }) diff --git a/src/helpers/breadcrumbHelpers.ts b/src/helpers/breadcrumbHelpers.ts index 36403d396..18e5f1515 100644 --- a/src/helpers/breadcrumbHelpers.ts +++ b/src/helpers/breadcrumbHelpers.ts @@ -6,7 +6,7 @@ import type { } from '@/components/Common/FlowBreadcrumbs/FlowBreadcrumbsTypes' import type { FlowHeaderConfig } from '@/components/Flow/useFlow' -type BreadcrumbsHeader = Extract +type BreadcrumbsHeader = Extract type WithHeader = { header?: FlowHeaderConfig | null } @@ -17,8 +17,8 @@ type WithHeader = { header?: FlowHeaderConfig | null } * the discriminated `header` union before mutating breadcrumb data. */ const getBreadcrumbsHeader = (header: FlowHeaderConfig | null | undefined): BreadcrumbsHeader => { - if (header?.type === 'breadcrumbs') return header - return { type: 'breadcrumbs' } + if (header?.indicator === 'breadcrumbs') return header + return { indicator: 'breadcrumbs' } } /** @@ -96,14 +96,14 @@ export const resolveBreadcrumbVariables = ( * * @typeParam T - Context shape carrying an optional `header` of the discriminated union. * @param context - The context whose breadcrumbs header should be patched. - * @param patch - Partial breadcrumbs-header fields to merge in. The `type` discriminator + * @param patch - Partial breadcrumbs-header fields to merge in. The `indicator` discriminator * cannot be overridden. * @returns A new context with the patched breadcrumbs header. * @internal */ export const patchBreadcrumbsHeader = ( context: T, - patch: Partial>, + patch: Partial>, ): T & { header: BreadcrumbsHeader } => { const existing = getBreadcrumbsHeader(context.header) return { ...context, header: { ...existing, ...patch } } @@ -170,7 +170,7 @@ export const lockBreadcrumb = (breadcrumbId: string, conte * @remarks Typically called from state machine transitions to update breadcrumb navigation * when moving between states. Existing trails for other states are preserved; only the trail * for `stateName` is rewritten with `variables` resolved against the context. The resulting - * context's header is always of type `'breadcrumbs'`. + * context's header is always a `'breadcrumbs'` indicator. * * @typeParam T - Context shape carrying an optional `header` of the discriminated union. * @param stateName - The state whose breadcrumb trail should be updated and made active. diff --git a/src/types/i18next.d.ts b/src/types/i18next.d.ts index 387aa70be..e9a75c0de 100644 --- a/src/types/i18next.d.ts +++ b/src/types/i18next.d.ts @@ -1709,6 +1709,7 @@ export interface EmployeeEmployeeDocuments{ export interface EmployeeEmployeeList{ "actionLabel":string; "addEmployeeCta":string; +"backToListCta":string; "skipCta":string; "addAnotherCta":string; "continueCta":string; @@ -2531,6 +2532,14 @@ export interface EmployeeManagementEmployeeList{ "cancelCta":string; }; }; +export interface EmployeeOnboardingExecutionFlow{ +"employeeProfile":string; +"compensation":string; +"federalTaxes":string; +"stateTaxes":string; +"paymentMethod":string; +"deductions":string; +}; export interface EmployeeOnboardingSummary{ "subTitle":string; "description":string; @@ -4012,6 +4021,6 @@ export interface common{ interface CustomTypeOptions { defaultNS: 'common'; - resources: { 'Company.Addresses': CompanyAddresses, 'Company.AssignSignatory': CompanyAssignSignatory, 'Company.BankAccount': CompanyBankAccount, 'Company.DocumentList': CompanyDocumentList, 'Company.FederalTaxes': CompanyFederalTaxes, 'Company.Industry': CompanyIndustry, 'Company.Locations': CompanyLocations, 'Company.OnboardingOverview': CompanyOnboardingOverview, 'Company.PaySchedule': CompanyPaySchedule, 'Company.SignatureForm': CompanySignatureForm, 'Company.StateTaxes': CompanyStateTaxes, 'Company.TimeOff.CreateTimeOffPolicy': CompanyTimeOffCreateTimeOffPolicy, 'Company.TimeOff.EmployeeTable': CompanyTimeOffEmployeeTable, 'Company.TimeOff.HolidayPolicy': CompanyTimeOffHolidayPolicy, 'Company.TimeOff.PolicyDetail': CompanyTimeOffPolicyDetail, 'Company.TimeOff.SelectEmployees': CompanyTimeOffSelectEmployees, 'Company.TimeOff.SelectPolicyType': CompanyTimeOffSelectPolicyType, 'Company.TimeOff.TimeOffPolicies': CompanyTimeOffTimeOffPolicies, 'Company.TimeOff.TimeOffPolicyDetails': CompanyTimeOffTimeOffPolicyDetails, 'Company.TimeOff.TimeOffRequests': CompanyTimeOffTimeOffRequests, 'Contractor.Address': ContractorAddress, 'Contractor.ContractorList': ContractorContractorList, 'Contractor.NewHireReport': ContractorNewHireReport, 'Contractor.PaymentMethod': ContractorPaymentMethod, 'Contractor.Payments.CreatePayment': ContractorPaymentsCreatePayment, 'Contractor.Payments.PaymentHistory': ContractorPaymentsPaymentHistory, 'Contractor.Payments.PaymentStatement': ContractorPaymentsPaymentStatement, 'Contractor.Payments.PaymentSummary': ContractorPaymentsPaymentSummary, 'Contractor.Payments.PaymentsList': ContractorPaymentsPaymentsList, 'Contractor.Profile': ContractorProfile, 'Contractor.Submit': ContractorSubmit, 'Employee.BankAccount': EmployeeBankAccount, 'Employee.BankFormBody': EmployeeBankFormBody, 'Employee.Compensation': EmployeeCompensation, 'Employee.Dashboard': EmployeeDashboard, 'Employee.Deductions': EmployeeDeductions, 'Employee.DeductionsForm': EmployeeDeductionsForm, 'Employee.DocumentManager': EmployeeDocumentManager, 'Employee.DocumentSigner': EmployeeDocumentSigner, 'Employee.EmployeeDocuments': EmployeeEmployeeDocuments, 'Employee.EmployeeList': EmployeeEmployeeList, 'Employee.EmploymentEligibility': EmployeeEmploymentEligibility, 'Employee.FederalTaxes': EmployeeFederalTaxes, 'Employee.FederalTaxesView': EmployeeFederalTaxesView, 'Employee.HomeAddress': EmployeeHomeAddress, 'Employee.I9SignatureForm': EmployeeI9SignatureForm, 'Employee.Landing': EmployeeLanding, 'Employee.Management.Compensation': EmployeeManagementCompensation, 'Employee.Management.Deductions': EmployeeManagementDeductions, 'Employee.Management.Documents': EmployeeManagementDocuments, 'Employee.Management.FederalTaxes': EmployeeManagementFederalTaxes, 'Employee.Management.HomeAddress': EmployeeManagementHomeAddress, 'Employee.Management.PaymentMethod': EmployeeManagementPaymentMethod, 'Employee.Management.PaymentMethodBankForm': EmployeeManagementPaymentMethodBankForm, 'Employee.Management.PaymentMethodSplitForm': EmployeeManagementPaymentMethodSplitForm, 'Employee.Management.Paystubs': EmployeeManagementPaystubs, 'Employee.Management.Profile': EmployeeManagementProfile, 'Employee.Management.StateTaxes': EmployeeManagementStateTaxes, 'Employee.Management.WorkAddress': EmployeeManagementWorkAddress, 'Employee.ManagementEmployeeList': EmployeeManagementEmployeeList, 'Employee.OnboardingSummary': EmployeeOnboardingSummary, 'Employee.PaySchedules': EmployeePaySchedules, 'Employee.PaymentMethod': EmployeePaymentMethod, 'Employee.Profile': EmployeeProfile, 'Employee.SplitPaycheck': EmployeeSplitPaycheck, 'Employee.SplitPaymentsFormBody': EmployeeSplitPaymentsFormBody, 'Employee.StateTaxes': EmployeeStateTaxes, 'Employee.StateTaxesView': EmployeeStateTaxesView, 'Employee.Terminations.TerminateEmployee': EmployeeTerminationsTerminateEmployee, 'Employee.Terminations.TerminationFlow': EmployeeTerminationsTerminationFlow, 'Employee.Terminations.TerminationSummary': EmployeeTerminationsTerminationSummary, 'InformationRequests.InformationRequestForm': InformationRequestsInformationRequestForm, 'InformationRequests.InformationRequestList': InformationRequestsInformationRequestList, 'InformationRequests': InformationRequests, 'Payroll.Common': PayrollCommon, 'Payroll.ConfirmWireDetailsBanner': PayrollConfirmWireDetailsBanner, 'Payroll.ConfirmWireDetailsForm': PayrollConfirmWireDetailsForm, 'Payroll.Dismissal': PayrollDismissal, 'Payroll.EmployeeSelection': PayrollEmployeeSelection, 'Payroll.GrossUpModal': PayrollGrossUpModal, 'Payroll.OffCycle': PayrollOffCycle, 'Payroll.OffCycleCreation': PayrollOffCycleCreation, 'Payroll.OffCycleDeductionsSetting': PayrollOffCycleDeductionsSetting, 'Payroll.OffCyclePayPeriodDateForm': PayrollOffCyclePayPeriodDateForm, 'Payroll.OffCycleReasonSelection': PayrollOffCycleReasonSelection, 'Payroll.OffCycleTaxWithholding': PayrollOffCycleTaxWithholding, 'Payroll.PayrollBlocker': PayrollPayrollBlocker, 'Payroll.PayrollConfiguration': PayrollPayrollConfiguration, 'Payroll.PayrollEditEmployee': PayrollPayrollEditEmployee, 'Payroll.PayrollFlow': PayrollPayrollFlow, 'Payroll.PayrollHistory': PayrollPayrollHistory, 'Payroll.PayrollLanding': PayrollPayrollLanding, 'Payroll.PayrollList': PayrollPayrollList, 'Payroll.PayrollOverview': PayrollPayrollOverview, 'Payroll.PayrollReceipts': PayrollPayrollReceipts, 'Payroll.RecoveryCasesList': PayrollRecoveryCasesList, 'Payroll.RecoveryCasesResubmit': PayrollRecoveryCasesResubmit, 'Payroll.Transition': PayrollTransition, 'Payroll.TransitionCreation': PayrollTransitionCreation, 'Payroll.TransitionPayrollAlert': PayrollTransitionPayrollAlert, 'Payroll.WireInstructions': PayrollWireInstructions, 'common': common, } + resources: { 'Company.Addresses': CompanyAddresses, 'Company.AssignSignatory': CompanyAssignSignatory, 'Company.BankAccount': CompanyBankAccount, 'Company.DocumentList': CompanyDocumentList, 'Company.FederalTaxes': CompanyFederalTaxes, 'Company.Industry': CompanyIndustry, 'Company.Locations': CompanyLocations, 'Company.OnboardingOverview': CompanyOnboardingOverview, 'Company.PaySchedule': CompanyPaySchedule, 'Company.SignatureForm': CompanySignatureForm, 'Company.StateTaxes': CompanyStateTaxes, 'Company.TimeOff.CreateTimeOffPolicy': CompanyTimeOffCreateTimeOffPolicy, 'Company.TimeOff.EmployeeTable': CompanyTimeOffEmployeeTable, 'Company.TimeOff.HolidayPolicy': CompanyTimeOffHolidayPolicy, 'Company.TimeOff.PolicyDetail': CompanyTimeOffPolicyDetail, 'Company.TimeOff.SelectEmployees': CompanyTimeOffSelectEmployees, 'Company.TimeOff.SelectPolicyType': CompanyTimeOffSelectPolicyType, 'Company.TimeOff.TimeOffPolicies': CompanyTimeOffTimeOffPolicies, 'Company.TimeOff.TimeOffPolicyDetails': CompanyTimeOffTimeOffPolicyDetails, 'Company.TimeOff.TimeOffRequests': CompanyTimeOffTimeOffRequests, 'Contractor.Address': ContractorAddress, 'Contractor.ContractorList': ContractorContractorList, 'Contractor.NewHireReport': ContractorNewHireReport, 'Contractor.PaymentMethod': ContractorPaymentMethod, 'Contractor.Payments.CreatePayment': ContractorPaymentsCreatePayment, 'Contractor.Payments.PaymentHistory': ContractorPaymentsPaymentHistory, 'Contractor.Payments.PaymentStatement': ContractorPaymentsPaymentStatement, 'Contractor.Payments.PaymentSummary': ContractorPaymentsPaymentSummary, 'Contractor.Payments.PaymentsList': ContractorPaymentsPaymentsList, 'Contractor.Profile': ContractorProfile, 'Contractor.Submit': ContractorSubmit, 'Employee.BankAccount': EmployeeBankAccount, 'Employee.BankFormBody': EmployeeBankFormBody, 'Employee.Compensation': EmployeeCompensation, 'Employee.Dashboard': EmployeeDashboard, 'Employee.Deductions': EmployeeDeductions, 'Employee.DeductionsForm': EmployeeDeductionsForm, 'Employee.DocumentManager': EmployeeDocumentManager, 'Employee.DocumentSigner': EmployeeDocumentSigner, 'Employee.EmployeeDocuments': EmployeeEmployeeDocuments, 'Employee.EmployeeList': EmployeeEmployeeList, 'Employee.EmploymentEligibility': EmployeeEmploymentEligibility, 'Employee.FederalTaxes': EmployeeFederalTaxes, 'Employee.FederalTaxesView': EmployeeFederalTaxesView, 'Employee.HomeAddress': EmployeeHomeAddress, 'Employee.I9SignatureForm': EmployeeI9SignatureForm, 'Employee.Landing': EmployeeLanding, 'Employee.Management.Compensation': EmployeeManagementCompensation, 'Employee.Management.Deductions': EmployeeManagementDeductions, 'Employee.Management.Documents': EmployeeManagementDocuments, 'Employee.Management.FederalTaxes': EmployeeManagementFederalTaxes, 'Employee.Management.HomeAddress': EmployeeManagementHomeAddress, 'Employee.Management.PaymentMethod': EmployeeManagementPaymentMethod, 'Employee.Management.PaymentMethodBankForm': EmployeeManagementPaymentMethodBankForm, 'Employee.Management.PaymentMethodSplitForm': EmployeeManagementPaymentMethodSplitForm, 'Employee.Management.Paystubs': EmployeeManagementPaystubs, 'Employee.Management.Profile': EmployeeManagementProfile, 'Employee.Management.StateTaxes': EmployeeManagementStateTaxes, 'Employee.Management.WorkAddress': EmployeeManagementWorkAddress, 'Employee.ManagementEmployeeList': EmployeeManagementEmployeeList, 'Employee.OnboardingExecutionFlow': EmployeeOnboardingExecutionFlow, 'Employee.OnboardingSummary': EmployeeOnboardingSummary, 'Employee.PaySchedules': EmployeePaySchedules, 'Employee.PaymentMethod': EmployeePaymentMethod, 'Employee.Profile': EmployeeProfile, 'Employee.SplitPaycheck': EmployeeSplitPaycheck, 'Employee.SplitPaymentsFormBody': EmployeeSplitPaymentsFormBody, 'Employee.StateTaxes': EmployeeStateTaxes, 'Employee.StateTaxesView': EmployeeStateTaxesView, 'Employee.Terminations.TerminateEmployee': EmployeeTerminationsTerminateEmployee, 'Employee.Terminations.TerminationFlow': EmployeeTerminationsTerminationFlow, 'Employee.Terminations.TerminationSummary': EmployeeTerminationsTerminationSummary, 'InformationRequests.InformationRequestForm': InformationRequestsInformationRequestForm, 'InformationRequests.InformationRequestList': InformationRequestsInformationRequestList, 'InformationRequests': InformationRequests, 'Payroll.Common': PayrollCommon, 'Payroll.ConfirmWireDetailsBanner': PayrollConfirmWireDetailsBanner, 'Payroll.ConfirmWireDetailsForm': PayrollConfirmWireDetailsForm, 'Payroll.Dismissal': PayrollDismissal, 'Payroll.EmployeeSelection': PayrollEmployeeSelection, 'Payroll.GrossUpModal': PayrollGrossUpModal, 'Payroll.OffCycle': PayrollOffCycle, 'Payroll.OffCycleCreation': PayrollOffCycleCreation, 'Payroll.OffCycleDeductionsSetting': PayrollOffCycleDeductionsSetting, 'Payroll.OffCyclePayPeriodDateForm': PayrollOffCyclePayPeriodDateForm, 'Payroll.OffCycleReasonSelection': PayrollOffCycleReasonSelection, 'Payroll.OffCycleTaxWithholding': PayrollOffCycleTaxWithholding, 'Payroll.PayrollBlocker': PayrollPayrollBlocker, 'Payroll.PayrollConfiguration': PayrollPayrollConfiguration, 'Payroll.PayrollEditEmployee': PayrollPayrollEditEmployee, 'Payroll.PayrollFlow': PayrollPayrollFlow, 'Payroll.PayrollHistory': PayrollPayrollHistory, 'Payroll.PayrollLanding': PayrollPayrollLanding, 'Payroll.PayrollList': PayrollPayrollList, 'Payroll.PayrollOverview': PayrollPayrollOverview, 'Payroll.PayrollReceipts': PayrollPayrollReceipts, 'Payroll.RecoveryCasesList': PayrollRecoveryCasesList, 'Payroll.RecoveryCasesResubmit': PayrollRecoveryCasesResubmit, 'Payroll.Transition': PayrollTransition, 'Payroll.TransitionCreation': PayrollTransitionCreation, 'Payroll.TransitionPayrollAlert': PayrollTransitionPayrollAlert, 'Payroll.WireInstructions': PayrollWireInstructions, 'common': common, } }; } \ No newline at end of file From 12c546288dda069f14e0d6bc36a67a47f12280b3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 17 Jun 2026 17:58:16 +0000 Subject: [PATCH 3/3] chore: update derived files --- .reports/embedded-react-sdk.api.md | 3 +++ docs/api/Employee/EmployeeManagement/blocks.md | 14 +++++++------- docs/api/Employee/EmployeeManagement/flows.md | 6 +++--- docs/api/Employee/EmployeeOnboarding/blocks.md | 16 ++++++++-------- docs/api/Employee/EmployeeOnboarding/flows.md | 3 ++- docs/api/events.md | 1 + docs/api/index.md | 6 +++--- 7 files changed, 27 insertions(+), 22 deletions(-) diff --git a/.reports/embedded-react-sdk.api.md b/.reports/embedded-react-sdk.api.md index e3cae5c63..bb4873edf 100644 --- a/.reports/embedded-react-sdk.api.md +++ b/.reports/embedded-react-sdk.api.md @@ -930,6 +930,7 @@ export const componentEvents: { readonly EMPLOYEE_DELETED: "employee/deleted"; readonly EMPLOYEE_DISMISS: "employee/dismiss"; readonly EMPLOYEE_ONBOARDING_DONE: "employee/onboarding/done"; + readonly EMPLOYEE_ONBOARDING_BACK: "employee/onboarding/back"; readonly EMPLOYEE_PROFILE_DONE: "employee/profile/done"; readonly EMPLOYEE_HOME_ADDRESS_CREATED: "employee/addresses/home/created"; readonly EMPLOYEE_HOME_ADDRESS_UPDATED: "employee/addresses/home/updated"; @@ -3333,6 +3334,8 @@ function OnboardingExecutionFlow(input: OnboardingExecutionFlowProps): JSX; interface OnboardingExecutionFlowProps { companyId: string; defaultValues?: OnboardingDefaultValues; + // Warning: (ae-forgotten-export) The symbol "FlowHeaderConfig" needs to be exported by the entry point index.d.ts + initialBackHeader?: FlowHeaderConfig; initialEmployeeId?: string; initialOnboardingStatus?: (typeof EmployeeOnboardingStatus)[keyof typeof EmployeeOnboardingStatus]; initialState?: OnboardingExecutionInitialState; diff --git a/docs/api/Employee/EmployeeManagement/blocks.md b/docs/api/Employee/EmployeeManagement/blocks.md index a1204275d..65aa81331 100644 --- a/docs/api/Employee/EmployeeManagement/blocks.md +++ b/docs/api/Employee/EmployeeManagement/blocks.md @@ -245,7 +245,7 @@ Standalone add/edit surface for a single employee deduction. | Parameter | Type | Description | | ------ | ------ | ------ | -| `input` | [`DeductionsEditFormProps`](#deductionseditformprops) & `Pick`\<`BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\>, `"FallbackComponent"`\> | See [DeductionsEditFormProps](#deductionseditformprops), plus a `FallbackComponent` override for the error boundary. | +| `input` | [`DeductionsEditFormProps`](#deductionseditformprops) & `Pick`\<`BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\>, `"FallbackComponent"`\> | See [DeductionsEditFormProps](#deductionseditformprops), plus a `FallbackComponent` override for the error boundary. | #### Remarks @@ -321,7 +321,7 @@ tabs, with per-row actions tailored to each tab (edit, delete, dismiss, rehire). | Parameter | Type | | ------ | ------ | -| `__namedParameters` | [`ManagementEmployeeListProps`](#managementemployeelistprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | +| `__namedParameters` | [`ManagementEmployeeListProps`](#managementemployeelistprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | #### Remarks @@ -394,7 +394,7 @@ Standalone form for editing an employee's federal tax (W-4) withholdings — fil | Parameter | Type | Description | | ------ | ------ | ------ | -| `props` | [`FederalTaxesEditFormProps`](#federaltaxeseditformprops) & `Pick`\<`BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\>, `"FallbackComponent"`\> | See [FederalTaxesEditFormProps](#federaltaxeseditformprops). | +| `props` | [`FederalTaxesEditFormProps`](#federaltaxeseditformprops) & `Pick`\<`BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\>, `"FallbackComponent"`\> | See [FederalTaxesEditFormProps](#federaltaxeseditformprops). | #### Remarks @@ -468,7 +468,7 @@ Standalone employee home address edit form for creating, updating, and deleting | Parameter | Type | | ------ | ------ | -| `__namedParameters` | [`HomeAddressEditFormProps`](#homeaddresseditformprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | +| `__namedParameters` | [`HomeAddressEditFormProps`](#homeaddresseditformprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | #### Remarks @@ -711,7 +711,7 @@ Standalone edit form for an employee's basic profile details. | Parameter | Type | Description | | ------ | ------ | ------ | -| `input` | [`ProfileEditFormProps`](#profileeditformprops) & `Pick`\<`BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\>, `"FallbackComponent"`\> | See [ProfileEditFormProps](#profileeditformprops). | +| `input` | [`ProfileEditFormProps`](#profileeditformprops) & `Pick`\<`BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\>, `"FallbackComponent"`\> | See [ProfileEditFormProps](#profileeditformprops). | #### Remarks @@ -795,7 +795,7 @@ overrides on the management namespace do not leak into the onboarding flow. | Parameter | Type | Description | | ------ | ------ | ------ | -| `props` | `Omit`\<`CommonComponentInterface`\<`"Employee.Management.StateTaxes"`\>, `"children"`\> & `object` & `Pick`\<`BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\>, `"FallbackComponent"`\> | The component props. | +| `props` | `Omit`\<`CommonComponentInterface`\<`"Employee.Management.StateTaxes"`\>, `"children"`\> & `object` & `Pick`\<`BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\>, `"FallbackComponent"`\> | The component props. | #### Remarks @@ -987,7 +987,7 @@ Standalone employee work address edit form for creating, updating, and deleting | Parameter | Type | | ------ | ------ | -| `__namedParameters` | [`WorkAddressEditFormProps`](#workaddresseditformprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | +| `__namedParameters` | [`WorkAddressEditFormProps`](#workaddresseditformprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | #### Remarks diff --git a/docs/api/Employee/EmployeeManagement/flows.md b/docs/api/Employee/EmployeeManagement/flows.md index 17c0d8109..27e09a33a 100644 --- a/docs/api/Employee/EmployeeManagement/flows.md +++ b/docs/api/Employee/EmployeeManagement/flows.md @@ -28,7 +28,7 @@ Props for [DashboardFlow](#dashboardflow). | `children?` | `ReactNode` | Optional child content rendered inside the component's layout. | | `className?` | `string` | CSS class name applied to the component's root element. | | `defaultValues?` | `unknown` | Initial values pre-populated into the component's form fields before the user interacts. The exact shape depends on the specific component — refer to each component's own props type. | -| `dictionary?` | `Record`\<`"en"`, `DeepPartial`\<`common`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAddresses`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAssignSignatory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyDocumentList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyIndustry`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyLocations`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyOnboardingOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyPaySchedule`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanySignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffCreateTimeOffPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffEmployeeTable`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffHolidayPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffPolicyDetail`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectEmployees`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectPolicyType`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicies`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicyDetails`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorContractorList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorNewHireReport`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsCreatePayment`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentStatement`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentsList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorSubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDashboard`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductionsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentManager`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentSigner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmploymentEligibility`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeI9SignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodBankForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodSplitForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaystubs`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementWorkAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeOnboardingSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaySchedules`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaycheck`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaymentsFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminateEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollCommon`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsBanner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollDismissal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollEmployeeSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollGrossUpModal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycle`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleDeductionsSetting`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCyclePayPeriodDateForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleReasonSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleTaxWithholding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollBlocker`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollConfiguration`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollEditEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollReceipts`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesResubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransition`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionPayrollAlert`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollWireInstructions`\>\> | Overrides for the component's i18n strings. Supply a partial object whose keys match the component's resource namespace — any omitted keys fall back to SDK defaults. See the [Translation guide](https://docs.gusto.com/embedded-payroll/docs/translation) for details. | +| `dictionary?` | `Record`\<`"en"`, `DeepPartial`\<`common`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAddresses`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAssignSignatory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyDocumentList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyIndustry`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyLocations`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyOnboardingOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyPaySchedule`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanySignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffCreateTimeOffPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffEmployeeTable`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffHolidayPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffPolicyDetail`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectEmployees`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectPolicyType`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicies`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicyDetails`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorContractorList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorNewHireReport`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsCreatePayment`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentStatement`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentsList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorSubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDashboard`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductionsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentManager`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentSigner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmploymentEligibility`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeI9SignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodBankForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodSplitForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaystubs`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementWorkAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeOnboardingExecutionFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeOnboardingSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaySchedules`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaycheck`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaymentsFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminateEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollCommon`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsBanner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollDismissal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollEmployeeSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollGrossUpModal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycle`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleDeductionsSetting`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCyclePayPeriodDateForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleReasonSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleTaxWithholding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollBlocker`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollConfiguration`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollEditEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollReceipts`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesResubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransition`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionPayrollAlert`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollWireInstructions`\>\> | Overrides for the component's i18n strings. Supply a partial object whose keys match the component's resource namespace — any omitted keys fall back to SDK defaults. See the [Translation guide](https://docs.gusto.com/embedded-payroll/docs/translation) for details. | | `employeeId` | `string` | The associated employee identifier. | | `FallbackComponent?` | (`props`) => `Element` | Custom React component rendered in place of the component when an unhandled error is caught by the component-level error boundary. Receives `error` and `resetErrorBoundary` as props. Defaults to the SDK's built-in `InternalError` fallback. | | `LoaderComponent?` | (`__namedParameters`) => `Element` | Custom loading indicator rendered while the component's async data is fetching. Overrides the indicator configured on `GustoProvider` for this component instance only. | @@ -158,7 +158,7 @@ Props for [EmployeeListFlow](#employeelistflow). | `className?` | `string` | CSS class name applied to the component's root element. | | `companyId` | `string` | The associated company identifier. | | `defaultValues?` | `unknown` | Initial values pre-populated into the component's form fields before the user interacts. The exact shape depends on the specific component — refer to each component's own props type. | -| `dictionary?` | `Record`\<`"en"`, `DeepPartial`\<`common`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAddresses`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAssignSignatory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyDocumentList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyIndustry`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyLocations`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyOnboardingOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyPaySchedule`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanySignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffCreateTimeOffPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffEmployeeTable`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffHolidayPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffPolicyDetail`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectEmployees`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectPolicyType`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicies`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicyDetails`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorContractorList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorNewHireReport`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsCreatePayment`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentStatement`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentsList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorSubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDashboard`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductionsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentManager`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentSigner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmploymentEligibility`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeI9SignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodBankForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodSplitForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaystubs`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementWorkAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeOnboardingSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaySchedules`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaycheck`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaymentsFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminateEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollCommon`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsBanner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollDismissal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollEmployeeSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollGrossUpModal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycle`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleDeductionsSetting`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCyclePayPeriodDateForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleReasonSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleTaxWithholding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollBlocker`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollConfiguration`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollEditEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollReceipts`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesResubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransition`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionPayrollAlert`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollWireInstructions`\>\> | Overrides for the component's i18n strings. Supply a partial object whose keys match the component's resource namespace — any omitted keys fall back to SDK defaults. See the [Translation guide](https://docs.gusto.com/embedded-payroll/docs/translation) for details. | +| `dictionary?` | `Record`\<`"en"`, `DeepPartial`\<`common`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAddresses`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAssignSignatory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyDocumentList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyIndustry`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyLocations`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyOnboardingOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyPaySchedule`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanySignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffCreateTimeOffPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffEmployeeTable`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffHolidayPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffPolicyDetail`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectEmployees`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectPolicyType`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicies`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicyDetails`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorContractorList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorNewHireReport`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsCreatePayment`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentStatement`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentsList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorSubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDashboard`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductionsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentManager`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentSigner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmploymentEligibility`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeI9SignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodBankForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodSplitForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaystubs`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementWorkAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeOnboardingExecutionFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeOnboardingSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaySchedules`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaycheck`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaymentsFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminateEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollCommon`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsBanner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollDismissal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollEmployeeSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollGrossUpModal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycle`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleDeductionsSetting`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCyclePayPeriodDateForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleReasonSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleTaxWithholding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollBlocker`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollConfiguration`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollEditEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollReceipts`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesResubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransition`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionPayrollAlert`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollWireInstructions`\>\> | Overrides for the component's i18n strings. Supply a partial object whose keys match the component's resource namespace — any omitted keys fall back to SDK defaults. See the [Translation guide](https://docs.gusto.com/embedded-payroll/docs/translation) for details. | | `FallbackComponent?` | (`props`) => `Element` | Custom React component rendered in place of the component when an unhandled error is caught by the component-level error boundary. Receives `error` and `resetErrorBoundary` as props. Defaults to the SDK's built-in `InternalError` fallback. | | `LoaderComponent?` | (`__namedParameters`) => `Element` | Custom loading indicator rendered while the component's async data is fetching. Overrides the indicator configured on `GustoProvider` for this component instance only. | | `onEvent` | `OnEventType`\<[`EventType`](../../events.md#eventtype), `unknown`\> | Callback invoked each time the component emits an event — user interactions, successful API responses, step transitions, or errors. Receives the event type constant and an optional payload whose shape varies by event. See the [Event Handling guide](https://docs.gusto.com/embedded-payroll/docs/event-handling) and each component's event table for the full list of emitted events. | @@ -211,7 +211,7 @@ Props for [TerminationFlow](#terminationflow). | `className?` | `string` | CSS class name applied to the component's root element. | | `companyId` | `string` | The associated company identifier. | | `defaultValues?` | `unknown` | Initial values pre-populated into the component's form fields before the user interacts. The exact shape depends on the specific component — refer to each component's own props type. | -| `dictionary?` | `Record`\<`"en"`, `DeepPartial`\<`common`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAddresses`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAssignSignatory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyDocumentList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyIndustry`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyLocations`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyOnboardingOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyPaySchedule`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanySignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffCreateTimeOffPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffEmployeeTable`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffHolidayPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffPolicyDetail`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectEmployees`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectPolicyType`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicies`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicyDetails`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorContractorList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorNewHireReport`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsCreatePayment`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentStatement`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentsList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorSubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDashboard`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductionsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentManager`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentSigner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmploymentEligibility`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeI9SignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodBankForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodSplitForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaystubs`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementWorkAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeOnboardingSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaySchedules`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaycheck`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaymentsFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminateEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollCommon`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsBanner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollDismissal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollEmployeeSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollGrossUpModal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycle`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleDeductionsSetting`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCyclePayPeriodDateForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleReasonSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleTaxWithholding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollBlocker`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollConfiguration`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollEditEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollReceipts`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesResubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransition`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionPayrollAlert`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollWireInstructions`\>\> | Overrides for the component's i18n strings. Supply a partial object whose keys match the component's resource namespace — any omitted keys fall back to SDK defaults. See the [Translation guide](https://docs.gusto.com/embedded-payroll/docs/translation) for details. | +| `dictionary?` | `Record`\<`"en"`, `DeepPartial`\<`common`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAddresses`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAssignSignatory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyDocumentList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyIndustry`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyLocations`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyOnboardingOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyPaySchedule`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanySignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffCreateTimeOffPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffEmployeeTable`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffHolidayPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffPolicyDetail`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectEmployees`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectPolicyType`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicies`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicyDetails`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorContractorList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorNewHireReport`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsCreatePayment`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentStatement`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentsList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorSubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDashboard`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductionsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentManager`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentSigner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmploymentEligibility`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeI9SignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodBankForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodSplitForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaystubs`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementWorkAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeOnboardingExecutionFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeOnboardingSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaySchedules`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaycheck`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaymentsFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminateEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollCommon`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsBanner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollDismissal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollEmployeeSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollGrossUpModal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycle`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleDeductionsSetting`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCyclePayPeriodDateForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleReasonSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleTaxWithholding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollBlocker`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollConfiguration`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollEditEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollReceipts`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesResubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransition`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionPayrollAlert`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollWireInstructions`\>\> | Overrides for the component's i18n strings. Supply a partial object whose keys match the component's resource namespace — any omitted keys fall back to SDK defaults. See the [Translation guide](https://docs.gusto.com/embedded-payroll/docs/translation) for details. | | `employeeId` | `string` | The employee identifier to terminate. | | `FallbackComponent?` | (`props`) => `Element` | Custom React component rendered in place of the component when an unhandled error is caught by the component-level error boundary. Receives `error` and `resetErrorBoundary` as props. Defaults to the SDK's built-in `InternalError` fallback. | | `LoaderComponent?` | (`__namedParameters`) => `Element` | Custom loading indicator rendered while the component's async data is fetching. Overrides the indicator configured on `GustoProvider` for this component instance only. | diff --git a/docs/api/Employee/EmployeeOnboarding/blocks.md b/docs/api/Employee/EmployeeOnboarding/blocks.md index 5c0634f81..f42dd6ae5 100644 --- a/docs/api/Employee/EmployeeOnboarding/blocks.md +++ b/docs/api/Employee/EmployeeOnboarding/blocks.md @@ -261,7 +261,7 @@ delete, review, cancel self-onboarding) and an "Add employee" entry point. | Parameter | Type | | ------ | ------ | -| `__namedParameters` | [`EmployeeListProps`](#employeelistprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | +| `__namedParameters` | [`EmployeeListProps`](#employeelistprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | #### Remarks @@ -321,7 +321,7 @@ Onboarding step for collecting an employee's federal tax (W-4) withholdings — | Parameter | Type | Description | | ------ | ------ | ------ | -| `props` | [`FederalTaxesProps`](#federaltaxesprops) & `Pick`\<`BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\>, `"FallbackComponent"`\> | See [FederalTaxesProps](#federaltaxesprops). | +| `props` | [`FederalTaxesProps`](#federaltaxesprops) & `Pick`\<`BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\>, `"FallbackComponent"`\> | See [FederalTaxesProps](#federaltaxesprops). | #### Remarks @@ -342,7 +342,7 @@ The federal tax record is created automatically with the employee, so this step | Parameter | Type | | ------ | ------ | -| `props` | [`JobsListProps`](#jobslistprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | +| `props` | [`JobsListProps`](#jobslistprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | *** @@ -357,7 +357,7 @@ message and the list of onboarding steps the employee needs to complete. | Parameter | Type | | ------ | ------ | -| `props` | `SummaryProps` & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | +| `props` | `SummaryProps` & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | *** @@ -372,7 +372,7 @@ outstanding steps. Rendered as a standalone step inside `OnboardingFlow`. | Parameter | Type | | ------ | ------ | -| `props` | `SummaryProps` & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | +| `props` | `SummaryProps` & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | *** @@ -386,7 +386,7 @@ Onboarding step for setting up an employee's payment method. | Parameter | Type | Description | | ------ | ------ | ------ | -| `props` | [`PaymentMethodProps`](#paymentmethodprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | See [PaymentMethodProps](#paymentmethodprops). | +| `props` | [`PaymentMethodProps`](#paymentmethodprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | See [PaymentMethodProps](#paymentmethodprops). | #### Remarks @@ -428,7 +428,7 @@ Onboarding step for collecting an employee's basic profile and addresses. | Parameter | Type | Description | | ------ | ------ | ------ | -| `input` | [`ProfileProps`](#profileprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | See [ProfileProps](#profileprops). | +| `input` | [`ProfileProps`](#profileprops) & `BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\> | See [ProfileProps](#profileprops). | #### Remarks @@ -464,7 +464,7 @@ on record. | Parameter | Type | Description | | ------ | ------ | ------ | -| `props` | `Omit`\<`CommonComponentInterface`\<`"Employee.StateTaxes"`\>, `"children"`\> & `object` & `Pick`\<`BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\>, `"FallbackComponent"`\> | The component props. | +| `props` | `Omit`\<`CommonComponentInterface`\<`"Employee.StateTaxes"`\>, `"children"`\> & `object` & `Pick`\<`BaseComponentInterface`\<`"common"` \| `"Company.Addresses"` \| `"Company.AssignSignatory"` \| `"Company.BankAccount"` \| `"Company.DocumentList"` \| `"Company.FederalTaxes"` \| `"Company.Industry"` \| `"Company.Locations"` \| `"Company.OnboardingOverview"` \| `"Company.PaySchedule"` \| `"Company.SignatureForm"` \| `"Company.StateTaxes"` \| `"Company.TimeOff.CreateTimeOffPolicy"` \| `"Company.TimeOff.EmployeeTable"` \| `"Company.TimeOff.HolidayPolicy"` \| `"Company.TimeOff.PolicyDetail"` \| `"Company.TimeOff.SelectEmployees"` \| `"Company.TimeOff.SelectPolicyType"` \| `"Company.TimeOff.TimeOffPolicies"` \| `"Company.TimeOff.TimeOffPolicyDetails"` \| `"Company.TimeOff.TimeOffRequests"` \| `"Contractor.Address"` \| `"Contractor.ContractorList"` \| `"Contractor.NewHireReport"` \| `"Contractor.PaymentMethod"` \| `"Contractor.Payments.CreatePayment"` \| `"Contractor.Payments.PaymentHistory"` \| `"Contractor.Payments.PaymentStatement"` \| `"Contractor.Payments.PaymentSummary"` \| `"Contractor.Payments.PaymentsList"` \| `"Contractor.Profile"` \| `"Contractor.Submit"` \| `"Employee.BankAccount"` \| `"Employee.BankFormBody"` \| `"Employee.Compensation"` \| `"Employee.Dashboard"` \| `"Employee.Deductions"` \| `"Employee.DeductionsForm"` \| `"Employee.DocumentManager"` \| `"Employee.DocumentSigner"` \| `"Employee.EmployeeDocuments"` \| `"Employee.EmployeeList"` \| `"Employee.EmploymentEligibility"` \| `"Employee.FederalTaxes"` \| `"Employee.FederalTaxesView"` \| `"Employee.HomeAddress"` \| `"Employee.I9SignatureForm"` \| `"Employee.Landing"` \| `"Employee.Management.Compensation"` \| `"Employee.Management.Deductions"` \| `"Employee.Management.Documents"` \| `"Employee.Management.FederalTaxes"` \| `"Employee.Management.HomeAddress"` \| `"Employee.Management.PaymentMethod"` \| `"Employee.Management.PaymentMethodBankForm"` \| `"Employee.Management.PaymentMethodSplitForm"` \| `"Employee.Management.Paystubs"` \| `"Employee.Management.Profile"` \| `"Employee.Management.StateTaxes"` \| `"Employee.Management.WorkAddress"` \| `"Employee.ManagementEmployeeList"` \| `"Employee.OnboardingExecutionFlow"` \| `"Employee.OnboardingSummary"` \| `"Employee.PaySchedules"` \| `"Employee.PaymentMethod"` \| `"Employee.Profile"` \| `"Employee.SplitPaycheck"` \| `"Employee.SplitPaymentsFormBody"` \| `"Employee.StateTaxes"` \| `"Employee.StateTaxesView"` \| `"Employee.Terminations.TerminateEmployee"` \| `"Employee.Terminations.TerminationFlow"` \| `"Employee.Terminations.TerminationSummary"` \| `"InformationRequests.InformationRequestForm"` \| `"InformationRequests.InformationRequestList"` \| `"InformationRequests"` \| `"Payroll.Common"` \| `"Payroll.ConfirmWireDetailsBanner"` \| `"Payroll.ConfirmWireDetailsForm"` \| `"Payroll.Dismissal"` \| `"Payroll.EmployeeSelection"` \| `"Payroll.GrossUpModal"` \| `"Payroll.OffCycle"` \| `"Payroll.OffCycleCreation"` \| `"Payroll.OffCycleDeductionsSetting"` \| `"Payroll.OffCyclePayPeriodDateForm"` \| `"Payroll.OffCycleReasonSelection"` \| `"Payroll.OffCycleTaxWithholding"` \| `"Payroll.PayrollBlocker"` \| `"Payroll.PayrollConfiguration"` \| `"Payroll.PayrollEditEmployee"` \| `"Payroll.PayrollFlow"` \| `"Payroll.PayrollHistory"` \| `"Payroll.PayrollLanding"` \| `"Payroll.PayrollList"` \| `"Payroll.PayrollOverview"` \| `"Payroll.PayrollReceipts"` \| `"Payroll.RecoveryCasesList"` \| `"Payroll.RecoveryCasesResubmit"` \| `"Payroll.Transition"` \| `"Payroll.TransitionCreation"` \| `"Payroll.TransitionPayrollAlert"` \| `"Payroll.WireInstructions"`\>, `"FallbackComponent"`\> | The component props. | #### Remarks diff --git a/docs/api/Employee/EmployeeOnboarding/flows.md b/docs/api/Employee/EmployeeOnboarding/flows.md index 420ebf89b..4d8d91721 100644 --- a/docs/api/Employee/EmployeeOnboarding/flows.md +++ b/docs/api/Employee/EmployeeOnboarding/flows.md @@ -27,6 +27,7 @@ Props for [OnboardingExecutionFlow](#onboardingexecutionflow). | ------ | ------ | ------ | | `companyId` | `string` | The associated company identifier. | | `defaultValues?` | [`OnboardingDefaultValues`](blocks.md#onboardingdefaultvalues) | Default values for individual flow step components. | +| `initialBackHeader?` | `FlowHeaderConfig` | Optional header shown above the initial step. Only the `back` affordance is read — the indicator is always the execution-flow progress bar. The back affordance is preserved if the user navigates back to step one from a later step. Use this to expose an "exit" path when the flow is rendered inside a parent flow (e.g. back to an employee list). | | `initialEmployeeId?` | `string` | The associated employee identifier to resume onboarding for. Omit to begin onboarding a new employee. | | `initialOnboardingStatus?` | `"admin_onboarding_incomplete"` \| `"self_onboarding_pending_invite"` \| `"self_onboarding_invited"` \| `"self_onboarding_invited_started"` \| `"self_onboarding_invited_overdue"` \| `"self_onboarding_completed_by_employee"` \| `"self_onboarding_awaiting_admin_review"` \| `"onboarding_completed"` | The current onboarding status of the employee being onboarded. Drives skip behavior for self-onboarding and document steps. | | `initialState?` | `"employeeProfile"` | The step the flow starts on. Defaults to `employeeProfile`. | @@ -78,7 +79,7 @@ Props for [OnboardingFlow](#onboardingflow). | `className?` | `string` | CSS class name applied to the component's root element. | | `companyId` | `string` | The associated company identifier. | | `defaultValues?` | `RequireAtLeastOne`\<[`OnboardingDefaultValues`](blocks.md#onboardingdefaultvalues)\> | Default values for individual flow step components. | -| `dictionary?` | `Record`\<`"en"`, `DeepPartial`\<`common`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAddresses`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAssignSignatory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyDocumentList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyIndustry`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyLocations`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyOnboardingOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyPaySchedule`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanySignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffCreateTimeOffPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffEmployeeTable`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffHolidayPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffPolicyDetail`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectEmployees`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectPolicyType`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicies`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicyDetails`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorContractorList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorNewHireReport`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsCreatePayment`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentStatement`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentsList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorSubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDashboard`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductionsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentManager`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentSigner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmploymentEligibility`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeI9SignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodBankForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodSplitForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaystubs`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementWorkAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeOnboardingSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaySchedules`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaycheck`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaymentsFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminateEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollCommon`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsBanner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollDismissal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollEmployeeSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollGrossUpModal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycle`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleDeductionsSetting`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCyclePayPeriodDateForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleReasonSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleTaxWithholding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollBlocker`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollConfiguration`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollEditEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollReceipts`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesResubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransition`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionPayrollAlert`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollWireInstructions`\>\> | Overrides for the component's i18n strings. Supply a partial object whose keys match the component's resource namespace — any omitted keys fall back to SDK defaults. See the [Translation guide](https://docs.gusto.com/embedded-payroll/docs/translation) for details. | +| `dictionary?` | `Record`\<`"en"`, `DeepPartial`\<`common`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAddresses`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyAssignSignatory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyDocumentList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyIndustry`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyLocations`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyOnboardingOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyPaySchedule`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanySignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffCreateTimeOffPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffEmployeeTable`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffHolidayPolicy`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffPolicyDetail`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectEmployees`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffSelectPolicyType`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicies`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffPolicyDetails`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`CompanyTimeOffTimeOffRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorContractorList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorNewHireReport`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsCreatePayment`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentStatement`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorPaymentsPaymentsList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`ContractorSubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankAccount`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeBankFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDashboard`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDeductionsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentManager`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeDocumentSigner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeEmploymentEligibility`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeFederalTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeI9SignatureForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementCompensation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDeductions`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementDocuments`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementFederalTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementHomeAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodBankForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaymentMethodSplitForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementPaystubs`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementWorkAddress`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeManagementEmployeeList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeOnboardingExecutionFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeOnboardingSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaySchedules`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeePaymentMethod`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeProfile`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaycheck`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeSplitPaymentsFormBody`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxes`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeStateTaxesView`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminateEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`EmployeeTerminationsTerminationSummary`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequestsInformationRequestList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`InformationRequests`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollCommon`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsBanner`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollConfirmWireDetailsForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollDismissal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollEmployeeSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollGrossUpModal`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycle`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleDeductionsSetting`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCyclePayPeriodDateForm`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleReasonSelection`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollOffCycleTaxWithholding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollBlocker`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollConfiguration`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollEditEmployee`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollFlow`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollHistory`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollLanding`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollOverview`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollPayrollReceipts`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesList`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollRecoveryCasesResubmit`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransition`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionCreation`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollTransitionPayrollAlert`\>\> \| `Record`\<`"en"`, `DeepPartial`\<`PayrollWireInstructions`\>\> | Overrides for the component's i18n strings. Supply a partial object whose keys match the component's resource namespace — any omitted keys fall back to SDK defaults. See the [Translation guide](https://docs.gusto.com/embedded-payroll/docs/translation) for details. | | `FallbackComponent?` | (`props`) => `Element` | Custom React component rendered in place of the component when an unhandled error is caught by the component-level error boundary. Receives `error` and `resetErrorBoundary` as props. Defaults to the SDK's built-in `InternalError` fallback. | | `isSelfOnboardingEnabled?` | `boolean` | When true, presents the self-onboarding toggle allowing the admin to opt the employee into self-onboarding. When false, the option to self-onboard is not available. Defaults to `true`. | | `LoaderComponent?` | (`__namedParameters`) => `Element` | Custom loading indicator rendered while the component's async data is fetching. Overrides the indicator configured on `GustoProvider` for this component instance only. | diff --git a/docs/api/events.md b/docs/api/events.md index 310c90346..765c94268 100644 --- a/docs/api/events.md +++ b/docs/api/events.md @@ -184,6 +184,7 @@ Catalog of every event key that an SDK component can emit through `onEvent`. | `EMPLOYEE_MANAGEMENT_WORK_ADDRESS_EDIT_CANCELLED` | `"employee/management/workAddress/editCancelled"` | `'employee/management/workAddress/editCancelled'` | | `EMPLOYEE_MANAGEMENT_WORK_ADDRESS_EDIT_REQUESTED` | `"employee/management/workAddress/editRequested"` | `'employee/management/workAddress/editRequested'` | | `EMPLOYEE_MANAGEMENT_WORK_ADDRESS_UPDATED` | `"employee/management/workAddress/updated"` | `'employee/management/workAddress/updated'` | +| `EMPLOYEE_ONBOARDING_BACK` | `"employee/onboarding/back"` | `'employee/onboarding/back'` | | `EMPLOYEE_ONBOARDING_DOCUMENTS_CONFIG_UPDATED` | `"employee/onboardingDocumentsConfig/updated"` | `'employee/onboardingDocumentsConfig/updated'` | | `EMPLOYEE_ONBOARDING_DONE` | `"employee/onboarding/done"` | `'employee/onboarding/done'` | | `EMPLOYEE_ONBOARDING_STATUS_UPDATED` | `"employee/onboardingStatus/updated"` | `'employee/onboardingStatus/updated'` | diff --git a/docs/api/index.md b/docs/api/index.md index d53d19b10..e86a5e1f1 100644 --- a/docs/api/index.md +++ b/docs/api/index.md @@ -261,7 +261,7 @@ you do not supply fall back to the SDK's built-in React Aria implementations. | `components?` | `Partial`\<[`ComponentsContextType`](component-adapter.md#componentscontexttype)\> | Partial component overrides. Any component you do not supply uses the SDK's default React Aria implementation. | | `config` | [`APIConfig`](#apiconfig) | API client configuration, including the proxy `baseUrl`, request hooks, and observability. See [APIConfig](#apiconfig). | | `currency?` | `string` | ISO 4217 currency code used for monetary formatting. Defaults to `'USD'`. | -| `dictionary?` | `Record`\<`"en"`, `Partial`\<\{ `common`: `common`; `Company.Addresses`: `CompanyAddresses`; `Company.AssignSignatory`: `CompanyAssignSignatory`; `Company.BankAccount`: `CompanyBankAccount`; `Company.DocumentList`: `CompanyDocumentList`; `Company.FederalTaxes`: `CompanyFederalTaxes`; `Company.Industry`: `CompanyIndustry`; `Company.Locations`: `CompanyLocations`; `Company.OnboardingOverview`: `CompanyOnboardingOverview`; `Company.PaySchedule`: `CompanyPaySchedule`; `Company.SignatureForm`: `CompanySignatureForm`; `Company.StateTaxes`: `CompanyStateTaxes`; `Company.TimeOff.CreateTimeOffPolicy`: `CompanyTimeOffCreateTimeOffPolicy`; `Company.TimeOff.EmployeeTable`: `CompanyTimeOffEmployeeTable`; `Company.TimeOff.HolidayPolicy`: `CompanyTimeOffHolidayPolicy`; `Company.TimeOff.PolicyDetail`: `CompanyTimeOffPolicyDetail`; `Company.TimeOff.SelectEmployees`: `CompanyTimeOffSelectEmployees`; `Company.TimeOff.SelectPolicyType`: `CompanyTimeOffSelectPolicyType`; `Company.TimeOff.TimeOffPolicies`: `CompanyTimeOffTimeOffPolicies`; `Company.TimeOff.TimeOffPolicyDetails`: `CompanyTimeOffTimeOffPolicyDetails`; `Company.TimeOff.TimeOffRequests`: `CompanyTimeOffTimeOffRequests`; `Contractor.Address`: `ContractorAddress`; `Contractor.ContractorList`: `ContractorContractorList`; `Contractor.NewHireReport`: `ContractorNewHireReport`; `Contractor.PaymentMethod`: `ContractorPaymentMethod`; `Contractor.Payments.CreatePayment`: `ContractorPaymentsCreatePayment`; `Contractor.Payments.PaymentHistory`: `ContractorPaymentsPaymentHistory`; `Contractor.Payments.PaymentsList`: `ContractorPaymentsPaymentsList`; `Contractor.Payments.PaymentStatement`: `ContractorPaymentsPaymentStatement`; `Contractor.Payments.PaymentSummary`: `ContractorPaymentsPaymentSummary`; `Contractor.Profile`: `ContractorProfile`; `Contractor.Submit`: `ContractorSubmit`; `Employee.BankAccount`: `EmployeeBankAccount`; `Employee.BankFormBody`: `EmployeeBankFormBody`; `Employee.Compensation`: `EmployeeCompensation`; `Employee.Dashboard`: `EmployeeDashboard`; `Employee.Deductions`: `EmployeeDeductions`; `Employee.DeductionsForm`: `EmployeeDeductionsForm`; `Employee.DocumentManager`: `EmployeeDocumentManager`; `Employee.DocumentSigner`: `EmployeeDocumentSigner`; `Employee.EmployeeDocuments`: `EmployeeEmployeeDocuments`; `Employee.EmployeeList`: `EmployeeEmployeeList`; `Employee.EmploymentEligibility`: `EmployeeEmploymentEligibility`; `Employee.FederalTaxes`: `EmployeeFederalTaxes`; `Employee.FederalTaxesView`: `EmployeeFederalTaxesView`; `Employee.HomeAddress`: `EmployeeHomeAddress`; `Employee.I9SignatureForm`: `EmployeeI9SignatureForm`; `Employee.Landing`: `EmployeeLanding`; `Employee.Management.Compensation`: `EmployeeManagementCompensation`; `Employee.Management.Deductions`: `EmployeeManagementDeductions`; `Employee.Management.Documents`: `EmployeeManagementDocuments`; `Employee.Management.FederalTaxes`: `EmployeeManagementFederalTaxes`; `Employee.Management.HomeAddress`: `EmployeeManagementHomeAddress`; `Employee.Management.PaymentMethod`: `EmployeeManagementPaymentMethod`; `Employee.Management.PaymentMethodBankForm`: `EmployeeManagementPaymentMethodBankForm`; `Employee.Management.PaymentMethodSplitForm`: `EmployeeManagementPaymentMethodSplitForm`; `Employee.Management.Paystubs`: `EmployeeManagementPaystubs`; `Employee.Management.Profile`: `EmployeeManagementProfile`; `Employee.Management.StateTaxes`: `EmployeeManagementStateTaxes`; `Employee.Management.WorkAddress`: `EmployeeManagementWorkAddress`; `Employee.ManagementEmployeeList`: `EmployeeManagementEmployeeList`; `Employee.OnboardingSummary`: `EmployeeOnboardingSummary`; `Employee.PaymentMethod`: `EmployeePaymentMethod`; `Employee.PaySchedules`: `EmployeePaySchedules`; `Employee.Profile`: `EmployeeProfile`; `Employee.SplitPaycheck`: `EmployeeSplitPaycheck`; `Employee.SplitPaymentsFormBody`: `EmployeeSplitPaymentsFormBody`; `Employee.StateTaxes`: `EmployeeStateTaxes`; `Employee.StateTaxesView`: `EmployeeStateTaxesView`; `Employee.Terminations.TerminateEmployee`: `EmployeeTerminationsTerminateEmployee`; `Employee.Terminations.TerminationFlow`: `EmployeeTerminationsTerminationFlow`; `Employee.Terminations.TerminationSummary`: `EmployeeTerminationsTerminationSummary`; `InformationRequests`: `InformationRequests`; `InformationRequests.InformationRequestForm`: `InformationRequestsInformationRequestForm`; `InformationRequests.InformationRequestList`: `InformationRequestsInformationRequestList`; `Payroll.Common`: `PayrollCommon`; `Payroll.ConfirmWireDetailsBanner`: `PayrollConfirmWireDetailsBanner`; `Payroll.ConfirmWireDetailsForm`: `PayrollConfirmWireDetailsForm`; `Payroll.Dismissal`: `PayrollDismissal`; `Payroll.EmployeeSelection`: `PayrollEmployeeSelection`; `Payroll.GrossUpModal`: `PayrollGrossUpModal`; `Payroll.OffCycle`: `PayrollOffCycle`; `Payroll.OffCycleCreation`: `PayrollOffCycleCreation`; `Payroll.OffCycleDeductionsSetting`: `PayrollOffCycleDeductionsSetting`; `Payroll.OffCyclePayPeriodDateForm`: `PayrollOffCyclePayPeriodDateForm`; `Payroll.OffCycleReasonSelection`: `PayrollOffCycleReasonSelection`; `Payroll.OffCycleTaxWithholding`: `PayrollOffCycleTaxWithholding`; `Payroll.PayrollBlocker`: `PayrollPayrollBlocker`; `Payroll.PayrollConfiguration`: `PayrollPayrollConfiguration`; `Payroll.PayrollEditEmployee`: `PayrollPayrollEditEmployee`; `Payroll.PayrollFlow`: `PayrollPayrollFlow`; `Payroll.PayrollHistory`: `PayrollPayrollHistory`; `Payroll.PayrollLanding`: `PayrollPayrollLanding`; `Payroll.PayrollList`: `PayrollPayrollList`; `Payroll.PayrollOverview`: `PayrollPayrollOverview`; `Payroll.PayrollReceipts`: `PayrollPayrollReceipts`; `Payroll.RecoveryCasesList`: `PayrollRecoveryCasesList`; `Payroll.RecoveryCasesResubmit`: `PayrollRecoveryCasesResubmit`; `Payroll.Transition`: `PayrollTransition`; `Payroll.TransitionCreation`: `PayrollTransitionCreation`; `Payroll.TransitionPayrollAlert`: `PayrollTransitionPayrollAlert`; `Payroll.WireInstructions`: `PayrollWireInstructions`; \}\>\> | Translation overrides keyed by language and i18next namespace. Strings supplied here replace the SDK defaults for the matching keys. | +| `dictionary?` | `Record`\<`"en"`, `Partial`\<\{ `common`: `common`; `Company.Addresses`: `CompanyAddresses`; `Company.AssignSignatory`: `CompanyAssignSignatory`; `Company.BankAccount`: `CompanyBankAccount`; `Company.DocumentList`: `CompanyDocumentList`; `Company.FederalTaxes`: `CompanyFederalTaxes`; `Company.Industry`: `CompanyIndustry`; `Company.Locations`: `CompanyLocations`; `Company.OnboardingOverview`: `CompanyOnboardingOverview`; `Company.PaySchedule`: `CompanyPaySchedule`; `Company.SignatureForm`: `CompanySignatureForm`; `Company.StateTaxes`: `CompanyStateTaxes`; `Company.TimeOff.CreateTimeOffPolicy`: `CompanyTimeOffCreateTimeOffPolicy`; `Company.TimeOff.EmployeeTable`: `CompanyTimeOffEmployeeTable`; `Company.TimeOff.HolidayPolicy`: `CompanyTimeOffHolidayPolicy`; `Company.TimeOff.PolicyDetail`: `CompanyTimeOffPolicyDetail`; `Company.TimeOff.SelectEmployees`: `CompanyTimeOffSelectEmployees`; `Company.TimeOff.SelectPolicyType`: `CompanyTimeOffSelectPolicyType`; `Company.TimeOff.TimeOffPolicies`: `CompanyTimeOffTimeOffPolicies`; `Company.TimeOff.TimeOffPolicyDetails`: `CompanyTimeOffTimeOffPolicyDetails`; `Company.TimeOff.TimeOffRequests`: `CompanyTimeOffTimeOffRequests`; `Contractor.Address`: `ContractorAddress`; `Contractor.ContractorList`: `ContractorContractorList`; `Contractor.NewHireReport`: `ContractorNewHireReport`; `Contractor.PaymentMethod`: `ContractorPaymentMethod`; `Contractor.Payments.CreatePayment`: `ContractorPaymentsCreatePayment`; `Contractor.Payments.PaymentHistory`: `ContractorPaymentsPaymentHistory`; `Contractor.Payments.PaymentsList`: `ContractorPaymentsPaymentsList`; `Contractor.Payments.PaymentStatement`: `ContractorPaymentsPaymentStatement`; `Contractor.Payments.PaymentSummary`: `ContractorPaymentsPaymentSummary`; `Contractor.Profile`: `ContractorProfile`; `Contractor.Submit`: `ContractorSubmit`; `Employee.BankAccount`: `EmployeeBankAccount`; `Employee.BankFormBody`: `EmployeeBankFormBody`; `Employee.Compensation`: `EmployeeCompensation`; `Employee.Dashboard`: `EmployeeDashboard`; `Employee.Deductions`: `EmployeeDeductions`; `Employee.DeductionsForm`: `EmployeeDeductionsForm`; `Employee.DocumentManager`: `EmployeeDocumentManager`; `Employee.DocumentSigner`: `EmployeeDocumentSigner`; `Employee.EmployeeDocuments`: `EmployeeEmployeeDocuments`; `Employee.EmployeeList`: `EmployeeEmployeeList`; `Employee.EmploymentEligibility`: `EmployeeEmploymentEligibility`; `Employee.FederalTaxes`: `EmployeeFederalTaxes`; `Employee.FederalTaxesView`: `EmployeeFederalTaxesView`; `Employee.HomeAddress`: `EmployeeHomeAddress`; `Employee.I9SignatureForm`: `EmployeeI9SignatureForm`; `Employee.Landing`: `EmployeeLanding`; `Employee.Management.Compensation`: `EmployeeManagementCompensation`; `Employee.Management.Deductions`: `EmployeeManagementDeductions`; `Employee.Management.Documents`: `EmployeeManagementDocuments`; `Employee.Management.FederalTaxes`: `EmployeeManagementFederalTaxes`; `Employee.Management.HomeAddress`: `EmployeeManagementHomeAddress`; `Employee.Management.PaymentMethod`: `EmployeeManagementPaymentMethod`; `Employee.Management.PaymentMethodBankForm`: `EmployeeManagementPaymentMethodBankForm`; `Employee.Management.PaymentMethodSplitForm`: `EmployeeManagementPaymentMethodSplitForm`; `Employee.Management.Paystubs`: `EmployeeManagementPaystubs`; `Employee.Management.Profile`: `EmployeeManagementProfile`; `Employee.Management.StateTaxes`: `EmployeeManagementStateTaxes`; `Employee.Management.WorkAddress`: `EmployeeManagementWorkAddress`; `Employee.ManagementEmployeeList`: `EmployeeManagementEmployeeList`; `Employee.OnboardingExecutionFlow`: `EmployeeOnboardingExecutionFlow`; `Employee.OnboardingSummary`: `EmployeeOnboardingSummary`; `Employee.PaymentMethod`: `EmployeePaymentMethod`; `Employee.PaySchedules`: `EmployeePaySchedules`; `Employee.Profile`: `EmployeeProfile`; `Employee.SplitPaycheck`: `EmployeeSplitPaycheck`; `Employee.SplitPaymentsFormBody`: `EmployeeSplitPaymentsFormBody`; `Employee.StateTaxes`: `EmployeeStateTaxes`; `Employee.StateTaxesView`: `EmployeeStateTaxesView`; `Employee.Terminations.TerminateEmployee`: `EmployeeTerminationsTerminateEmployee`; `Employee.Terminations.TerminationFlow`: `EmployeeTerminationsTerminationFlow`; `Employee.Terminations.TerminationSummary`: `EmployeeTerminationsTerminationSummary`; `InformationRequests`: `InformationRequests`; `InformationRequests.InformationRequestForm`: `InformationRequestsInformationRequestForm`; `InformationRequests.InformationRequestList`: `InformationRequestsInformationRequestList`; `Payroll.Common`: `PayrollCommon`; `Payroll.ConfirmWireDetailsBanner`: `PayrollConfirmWireDetailsBanner`; `Payroll.ConfirmWireDetailsForm`: `PayrollConfirmWireDetailsForm`; `Payroll.Dismissal`: `PayrollDismissal`; `Payroll.EmployeeSelection`: `PayrollEmployeeSelection`; `Payroll.GrossUpModal`: `PayrollGrossUpModal`; `Payroll.OffCycle`: `PayrollOffCycle`; `Payroll.OffCycleCreation`: `PayrollOffCycleCreation`; `Payroll.OffCycleDeductionsSetting`: `PayrollOffCycleDeductionsSetting`; `Payroll.OffCyclePayPeriodDateForm`: `PayrollOffCyclePayPeriodDateForm`; `Payroll.OffCycleReasonSelection`: `PayrollOffCycleReasonSelection`; `Payroll.OffCycleTaxWithholding`: `PayrollOffCycleTaxWithholding`; `Payroll.PayrollBlocker`: `PayrollPayrollBlocker`; `Payroll.PayrollConfiguration`: `PayrollPayrollConfiguration`; `Payroll.PayrollEditEmployee`: `PayrollPayrollEditEmployee`; `Payroll.PayrollFlow`: `PayrollPayrollFlow`; `Payroll.PayrollHistory`: `PayrollPayrollHistory`; `Payroll.PayrollLanding`: `PayrollPayrollLanding`; `Payroll.PayrollList`: `PayrollPayrollList`; `Payroll.PayrollOverview`: `PayrollPayrollOverview`; `Payroll.PayrollReceipts`: `PayrollPayrollReceipts`; `Payroll.RecoveryCasesList`: `PayrollRecoveryCasesList`; `Payroll.RecoveryCasesResubmit`: `PayrollRecoveryCasesResubmit`; `Payroll.Transition`: `PayrollTransition`; `Payroll.TransitionCreation`: `PayrollTransitionCreation`; `Payroll.TransitionPayrollAlert`: `PayrollTransitionPayrollAlert`; `Payroll.WireInstructions`: `PayrollWireInstructions`; \}\>\> | Translation overrides keyed by language and i18next namespace. Strings supplied here replace the SDK defaults for the matching keys. | | `lng?` | `string` | Active i18next language. Defaults to `'en'`. | | `LoaderComponent?` | (`__namedParameters`) => `Element` | Loading indicator rendered while SDK queries are pending. Overrides the SDK default spinner. | | `locale?` | `string` | BCP 47 locale used for number, date, and currency formatting throughout the SDK. Defaults to `'en-US'`. | @@ -289,7 +289,7 @@ Props for [GustoProviderCustomUIAdapter](#gustoprovidercustomuiadapter). | `components` | [`ComponentsContextType`](component-adapter.md#componentscontexttype) | Complete map of UI components the SDK renders. Required because this adapter ships no defaults. | | `config` | [`APIConfig`](#apiconfig) | API client configuration, including the proxy `baseUrl`, request hooks, and observability. See [APIConfig](#apiconfig). | | `currency?` | `string` | ISO 4217 currency code used for monetary formatting. Defaults to `'USD'`. | -| `dictionary?` | `Record`\<`"en"`, `Partial`\<\{ `common`: `common`; `Company.Addresses`: `CompanyAddresses`; `Company.AssignSignatory`: `CompanyAssignSignatory`; `Company.BankAccount`: `CompanyBankAccount`; `Company.DocumentList`: `CompanyDocumentList`; `Company.FederalTaxes`: `CompanyFederalTaxes`; `Company.Industry`: `CompanyIndustry`; `Company.Locations`: `CompanyLocations`; `Company.OnboardingOverview`: `CompanyOnboardingOverview`; `Company.PaySchedule`: `CompanyPaySchedule`; `Company.SignatureForm`: `CompanySignatureForm`; `Company.StateTaxes`: `CompanyStateTaxes`; `Company.TimeOff.CreateTimeOffPolicy`: `CompanyTimeOffCreateTimeOffPolicy`; `Company.TimeOff.EmployeeTable`: `CompanyTimeOffEmployeeTable`; `Company.TimeOff.HolidayPolicy`: `CompanyTimeOffHolidayPolicy`; `Company.TimeOff.PolicyDetail`: `CompanyTimeOffPolicyDetail`; `Company.TimeOff.SelectEmployees`: `CompanyTimeOffSelectEmployees`; `Company.TimeOff.SelectPolicyType`: `CompanyTimeOffSelectPolicyType`; `Company.TimeOff.TimeOffPolicies`: `CompanyTimeOffTimeOffPolicies`; `Company.TimeOff.TimeOffPolicyDetails`: `CompanyTimeOffTimeOffPolicyDetails`; `Company.TimeOff.TimeOffRequests`: `CompanyTimeOffTimeOffRequests`; `Contractor.Address`: `ContractorAddress`; `Contractor.ContractorList`: `ContractorContractorList`; `Contractor.NewHireReport`: `ContractorNewHireReport`; `Contractor.PaymentMethod`: `ContractorPaymentMethod`; `Contractor.Payments.CreatePayment`: `ContractorPaymentsCreatePayment`; `Contractor.Payments.PaymentHistory`: `ContractorPaymentsPaymentHistory`; `Contractor.Payments.PaymentsList`: `ContractorPaymentsPaymentsList`; `Contractor.Payments.PaymentStatement`: `ContractorPaymentsPaymentStatement`; `Contractor.Payments.PaymentSummary`: `ContractorPaymentsPaymentSummary`; `Contractor.Profile`: `ContractorProfile`; `Contractor.Submit`: `ContractorSubmit`; `Employee.BankAccount`: `EmployeeBankAccount`; `Employee.BankFormBody`: `EmployeeBankFormBody`; `Employee.Compensation`: `EmployeeCompensation`; `Employee.Dashboard`: `EmployeeDashboard`; `Employee.Deductions`: `EmployeeDeductions`; `Employee.DeductionsForm`: `EmployeeDeductionsForm`; `Employee.DocumentManager`: `EmployeeDocumentManager`; `Employee.DocumentSigner`: `EmployeeDocumentSigner`; `Employee.EmployeeDocuments`: `EmployeeEmployeeDocuments`; `Employee.EmployeeList`: `EmployeeEmployeeList`; `Employee.EmploymentEligibility`: `EmployeeEmploymentEligibility`; `Employee.FederalTaxes`: `EmployeeFederalTaxes`; `Employee.FederalTaxesView`: `EmployeeFederalTaxesView`; `Employee.HomeAddress`: `EmployeeHomeAddress`; `Employee.I9SignatureForm`: `EmployeeI9SignatureForm`; `Employee.Landing`: `EmployeeLanding`; `Employee.Management.Compensation`: `EmployeeManagementCompensation`; `Employee.Management.Deductions`: `EmployeeManagementDeductions`; `Employee.Management.Documents`: `EmployeeManagementDocuments`; `Employee.Management.FederalTaxes`: `EmployeeManagementFederalTaxes`; `Employee.Management.HomeAddress`: `EmployeeManagementHomeAddress`; `Employee.Management.PaymentMethod`: `EmployeeManagementPaymentMethod`; `Employee.Management.PaymentMethodBankForm`: `EmployeeManagementPaymentMethodBankForm`; `Employee.Management.PaymentMethodSplitForm`: `EmployeeManagementPaymentMethodSplitForm`; `Employee.Management.Paystubs`: `EmployeeManagementPaystubs`; `Employee.Management.Profile`: `EmployeeManagementProfile`; `Employee.Management.StateTaxes`: `EmployeeManagementStateTaxes`; `Employee.Management.WorkAddress`: `EmployeeManagementWorkAddress`; `Employee.ManagementEmployeeList`: `EmployeeManagementEmployeeList`; `Employee.OnboardingSummary`: `EmployeeOnboardingSummary`; `Employee.PaymentMethod`: `EmployeePaymentMethod`; `Employee.PaySchedules`: `EmployeePaySchedules`; `Employee.Profile`: `EmployeeProfile`; `Employee.SplitPaycheck`: `EmployeeSplitPaycheck`; `Employee.SplitPaymentsFormBody`: `EmployeeSplitPaymentsFormBody`; `Employee.StateTaxes`: `EmployeeStateTaxes`; `Employee.StateTaxesView`: `EmployeeStateTaxesView`; `Employee.Terminations.TerminateEmployee`: `EmployeeTerminationsTerminateEmployee`; `Employee.Terminations.TerminationFlow`: `EmployeeTerminationsTerminationFlow`; `Employee.Terminations.TerminationSummary`: `EmployeeTerminationsTerminationSummary`; `InformationRequests`: `InformationRequests`; `InformationRequests.InformationRequestForm`: `InformationRequestsInformationRequestForm`; `InformationRequests.InformationRequestList`: `InformationRequestsInformationRequestList`; `Payroll.Common`: `PayrollCommon`; `Payroll.ConfirmWireDetailsBanner`: `PayrollConfirmWireDetailsBanner`; `Payroll.ConfirmWireDetailsForm`: `PayrollConfirmWireDetailsForm`; `Payroll.Dismissal`: `PayrollDismissal`; `Payroll.EmployeeSelection`: `PayrollEmployeeSelection`; `Payroll.GrossUpModal`: `PayrollGrossUpModal`; `Payroll.OffCycle`: `PayrollOffCycle`; `Payroll.OffCycleCreation`: `PayrollOffCycleCreation`; `Payroll.OffCycleDeductionsSetting`: `PayrollOffCycleDeductionsSetting`; `Payroll.OffCyclePayPeriodDateForm`: `PayrollOffCyclePayPeriodDateForm`; `Payroll.OffCycleReasonSelection`: `PayrollOffCycleReasonSelection`; `Payroll.OffCycleTaxWithholding`: `PayrollOffCycleTaxWithholding`; `Payroll.PayrollBlocker`: `PayrollPayrollBlocker`; `Payroll.PayrollConfiguration`: `PayrollPayrollConfiguration`; `Payroll.PayrollEditEmployee`: `PayrollPayrollEditEmployee`; `Payroll.PayrollFlow`: `PayrollPayrollFlow`; `Payroll.PayrollHistory`: `PayrollPayrollHistory`; `Payroll.PayrollLanding`: `PayrollPayrollLanding`; `Payroll.PayrollList`: `PayrollPayrollList`; `Payroll.PayrollOverview`: `PayrollPayrollOverview`; `Payroll.PayrollReceipts`: `PayrollPayrollReceipts`; `Payroll.RecoveryCasesList`: `PayrollRecoveryCasesList`; `Payroll.RecoveryCasesResubmit`: `PayrollRecoveryCasesResubmit`; `Payroll.Transition`: `PayrollTransition`; `Payroll.TransitionCreation`: `PayrollTransitionCreation`; `Payroll.TransitionPayrollAlert`: `PayrollTransitionPayrollAlert`; `Payroll.WireInstructions`: `PayrollWireInstructions`; \}\>\> | Translation overrides keyed by language and i18next namespace. Strings supplied here replace the SDK defaults for the matching keys. | +| `dictionary?` | `Record`\<`"en"`, `Partial`\<\{ `common`: `common`; `Company.Addresses`: `CompanyAddresses`; `Company.AssignSignatory`: `CompanyAssignSignatory`; `Company.BankAccount`: `CompanyBankAccount`; `Company.DocumentList`: `CompanyDocumentList`; `Company.FederalTaxes`: `CompanyFederalTaxes`; `Company.Industry`: `CompanyIndustry`; `Company.Locations`: `CompanyLocations`; `Company.OnboardingOverview`: `CompanyOnboardingOverview`; `Company.PaySchedule`: `CompanyPaySchedule`; `Company.SignatureForm`: `CompanySignatureForm`; `Company.StateTaxes`: `CompanyStateTaxes`; `Company.TimeOff.CreateTimeOffPolicy`: `CompanyTimeOffCreateTimeOffPolicy`; `Company.TimeOff.EmployeeTable`: `CompanyTimeOffEmployeeTable`; `Company.TimeOff.HolidayPolicy`: `CompanyTimeOffHolidayPolicy`; `Company.TimeOff.PolicyDetail`: `CompanyTimeOffPolicyDetail`; `Company.TimeOff.SelectEmployees`: `CompanyTimeOffSelectEmployees`; `Company.TimeOff.SelectPolicyType`: `CompanyTimeOffSelectPolicyType`; `Company.TimeOff.TimeOffPolicies`: `CompanyTimeOffTimeOffPolicies`; `Company.TimeOff.TimeOffPolicyDetails`: `CompanyTimeOffTimeOffPolicyDetails`; `Company.TimeOff.TimeOffRequests`: `CompanyTimeOffTimeOffRequests`; `Contractor.Address`: `ContractorAddress`; `Contractor.ContractorList`: `ContractorContractorList`; `Contractor.NewHireReport`: `ContractorNewHireReport`; `Contractor.PaymentMethod`: `ContractorPaymentMethod`; `Contractor.Payments.CreatePayment`: `ContractorPaymentsCreatePayment`; `Contractor.Payments.PaymentHistory`: `ContractorPaymentsPaymentHistory`; `Contractor.Payments.PaymentsList`: `ContractorPaymentsPaymentsList`; `Contractor.Payments.PaymentStatement`: `ContractorPaymentsPaymentStatement`; `Contractor.Payments.PaymentSummary`: `ContractorPaymentsPaymentSummary`; `Contractor.Profile`: `ContractorProfile`; `Contractor.Submit`: `ContractorSubmit`; `Employee.BankAccount`: `EmployeeBankAccount`; `Employee.BankFormBody`: `EmployeeBankFormBody`; `Employee.Compensation`: `EmployeeCompensation`; `Employee.Dashboard`: `EmployeeDashboard`; `Employee.Deductions`: `EmployeeDeductions`; `Employee.DeductionsForm`: `EmployeeDeductionsForm`; `Employee.DocumentManager`: `EmployeeDocumentManager`; `Employee.DocumentSigner`: `EmployeeDocumentSigner`; `Employee.EmployeeDocuments`: `EmployeeEmployeeDocuments`; `Employee.EmployeeList`: `EmployeeEmployeeList`; `Employee.EmploymentEligibility`: `EmployeeEmploymentEligibility`; `Employee.FederalTaxes`: `EmployeeFederalTaxes`; `Employee.FederalTaxesView`: `EmployeeFederalTaxesView`; `Employee.HomeAddress`: `EmployeeHomeAddress`; `Employee.I9SignatureForm`: `EmployeeI9SignatureForm`; `Employee.Landing`: `EmployeeLanding`; `Employee.Management.Compensation`: `EmployeeManagementCompensation`; `Employee.Management.Deductions`: `EmployeeManagementDeductions`; `Employee.Management.Documents`: `EmployeeManagementDocuments`; `Employee.Management.FederalTaxes`: `EmployeeManagementFederalTaxes`; `Employee.Management.HomeAddress`: `EmployeeManagementHomeAddress`; `Employee.Management.PaymentMethod`: `EmployeeManagementPaymentMethod`; `Employee.Management.PaymentMethodBankForm`: `EmployeeManagementPaymentMethodBankForm`; `Employee.Management.PaymentMethodSplitForm`: `EmployeeManagementPaymentMethodSplitForm`; `Employee.Management.Paystubs`: `EmployeeManagementPaystubs`; `Employee.Management.Profile`: `EmployeeManagementProfile`; `Employee.Management.StateTaxes`: `EmployeeManagementStateTaxes`; `Employee.Management.WorkAddress`: `EmployeeManagementWorkAddress`; `Employee.ManagementEmployeeList`: `EmployeeManagementEmployeeList`; `Employee.OnboardingExecutionFlow`: `EmployeeOnboardingExecutionFlow`; `Employee.OnboardingSummary`: `EmployeeOnboardingSummary`; `Employee.PaymentMethod`: `EmployeePaymentMethod`; `Employee.PaySchedules`: `EmployeePaySchedules`; `Employee.Profile`: `EmployeeProfile`; `Employee.SplitPaycheck`: `EmployeeSplitPaycheck`; `Employee.SplitPaymentsFormBody`: `EmployeeSplitPaymentsFormBody`; `Employee.StateTaxes`: `EmployeeStateTaxes`; `Employee.StateTaxesView`: `EmployeeStateTaxesView`; `Employee.Terminations.TerminateEmployee`: `EmployeeTerminationsTerminateEmployee`; `Employee.Terminations.TerminationFlow`: `EmployeeTerminationsTerminationFlow`; `Employee.Terminations.TerminationSummary`: `EmployeeTerminationsTerminationSummary`; `InformationRequests`: `InformationRequests`; `InformationRequests.InformationRequestForm`: `InformationRequestsInformationRequestForm`; `InformationRequests.InformationRequestList`: `InformationRequestsInformationRequestList`; `Payroll.Common`: `PayrollCommon`; `Payroll.ConfirmWireDetailsBanner`: `PayrollConfirmWireDetailsBanner`; `Payroll.ConfirmWireDetailsForm`: `PayrollConfirmWireDetailsForm`; `Payroll.Dismissal`: `PayrollDismissal`; `Payroll.EmployeeSelection`: `PayrollEmployeeSelection`; `Payroll.GrossUpModal`: `PayrollGrossUpModal`; `Payroll.OffCycle`: `PayrollOffCycle`; `Payroll.OffCycleCreation`: `PayrollOffCycleCreation`; `Payroll.OffCycleDeductionsSetting`: `PayrollOffCycleDeductionsSetting`; `Payroll.OffCyclePayPeriodDateForm`: `PayrollOffCyclePayPeriodDateForm`; `Payroll.OffCycleReasonSelection`: `PayrollOffCycleReasonSelection`; `Payroll.OffCycleTaxWithholding`: `PayrollOffCycleTaxWithholding`; `Payroll.PayrollBlocker`: `PayrollPayrollBlocker`; `Payroll.PayrollConfiguration`: `PayrollPayrollConfiguration`; `Payroll.PayrollEditEmployee`: `PayrollPayrollEditEmployee`; `Payroll.PayrollFlow`: `PayrollPayrollFlow`; `Payroll.PayrollHistory`: `PayrollPayrollHistory`; `Payroll.PayrollLanding`: `PayrollPayrollLanding`; `Payroll.PayrollList`: `PayrollPayrollList`; `Payroll.PayrollOverview`: `PayrollPayrollOverview`; `Payroll.PayrollReceipts`: `PayrollPayrollReceipts`; `Payroll.RecoveryCasesList`: `PayrollRecoveryCasesList`; `Payroll.RecoveryCasesResubmit`: `PayrollRecoveryCasesResubmit`; `Payroll.Transition`: `PayrollTransition`; `Payroll.TransitionCreation`: `PayrollTransitionCreation`; `Payroll.TransitionPayrollAlert`: `PayrollTransitionPayrollAlert`; `Payroll.WireInstructions`: `PayrollWireInstructions`; \}\>\> | Translation overrides keyed by language and i18next namespace. Strings supplied here replace the SDK defaults for the matching keys. | | `lng?` | `string` | Active i18next language. Defaults to `'en'`. | | `LoaderComponent?` | (`__namedParameters`) => `Element` | Loading indicator rendered while SDK queries are pending. Overrides the SDK default spinner. | | `locale?` | `string` | BCP 47 locale used for number, date, and currency formatting throughout the SDK. Defaults to `'en-US'`. | @@ -316,7 +316,7 @@ Shared configuration props accepted by [GustoProvider](#gustoprovider) and [Gust | `components` | [`ComponentsContextType`](component-adapter.md#componentscontexttype) | Complete map of UI components the SDK renders. Required because this adapter ships no defaults. | | `config` | [`APIConfig`](#apiconfig) | API client configuration, including the proxy `baseUrl`, request hooks, and observability. See [APIConfig](#apiconfig). | | `currency?` | `string` | ISO 4217 currency code used for monetary formatting. Defaults to `'USD'`. | -| `dictionary?` | `Record`\<`"en"`, `Partial`\<\{ `common`: `common`; `Company.Addresses`: `CompanyAddresses`; `Company.AssignSignatory`: `CompanyAssignSignatory`; `Company.BankAccount`: `CompanyBankAccount`; `Company.DocumentList`: `CompanyDocumentList`; `Company.FederalTaxes`: `CompanyFederalTaxes`; `Company.Industry`: `CompanyIndustry`; `Company.Locations`: `CompanyLocations`; `Company.OnboardingOverview`: `CompanyOnboardingOverview`; `Company.PaySchedule`: `CompanyPaySchedule`; `Company.SignatureForm`: `CompanySignatureForm`; `Company.StateTaxes`: `CompanyStateTaxes`; `Company.TimeOff.CreateTimeOffPolicy`: `CompanyTimeOffCreateTimeOffPolicy`; `Company.TimeOff.EmployeeTable`: `CompanyTimeOffEmployeeTable`; `Company.TimeOff.HolidayPolicy`: `CompanyTimeOffHolidayPolicy`; `Company.TimeOff.PolicyDetail`: `CompanyTimeOffPolicyDetail`; `Company.TimeOff.SelectEmployees`: `CompanyTimeOffSelectEmployees`; `Company.TimeOff.SelectPolicyType`: `CompanyTimeOffSelectPolicyType`; `Company.TimeOff.TimeOffPolicies`: `CompanyTimeOffTimeOffPolicies`; `Company.TimeOff.TimeOffPolicyDetails`: `CompanyTimeOffTimeOffPolicyDetails`; `Company.TimeOff.TimeOffRequests`: `CompanyTimeOffTimeOffRequests`; `Contractor.Address`: `ContractorAddress`; `Contractor.ContractorList`: `ContractorContractorList`; `Contractor.NewHireReport`: `ContractorNewHireReport`; `Contractor.PaymentMethod`: `ContractorPaymentMethod`; `Contractor.Payments.CreatePayment`: `ContractorPaymentsCreatePayment`; `Contractor.Payments.PaymentHistory`: `ContractorPaymentsPaymentHistory`; `Contractor.Payments.PaymentsList`: `ContractorPaymentsPaymentsList`; `Contractor.Payments.PaymentStatement`: `ContractorPaymentsPaymentStatement`; `Contractor.Payments.PaymentSummary`: `ContractorPaymentsPaymentSummary`; `Contractor.Profile`: `ContractorProfile`; `Contractor.Submit`: `ContractorSubmit`; `Employee.BankAccount`: `EmployeeBankAccount`; `Employee.BankFormBody`: `EmployeeBankFormBody`; `Employee.Compensation`: `EmployeeCompensation`; `Employee.Dashboard`: `EmployeeDashboard`; `Employee.Deductions`: `EmployeeDeductions`; `Employee.DeductionsForm`: `EmployeeDeductionsForm`; `Employee.DocumentManager`: `EmployeeDocumentManager`; `Employee.DocumentSigner`: `EmployeeDocumentSigner`; `Employee.EmployeeDocuments`: `EmployeeEmployeeDocuments`; `Employee.EmployeeList`: `EmployeeEmployeeList`; `Employee.EmploymentEligibility`: `EmployeeEmploymentEligibility`; `Employee.FederalTaxes`: `EmployeeFederalTaxes`; `Employee.FederalTaxesView`: `EmployeeFederalTaxesView`; `Employee.HomeAddress`: `EmployeeHomeAddress`; `Employee.I9SignatureForm`: `EmployeeI9SignatureForm`; `Employee.Landing`: `EmployeeLanding`; `Employee.Management.Compensation`: `EmployeeManagementCompensation`; `Employee.Management.Deductions`: `EmployeeManagementDeductions`; `Employee.Management.Documents`: `EmployeeManagementDocuments`; `Employee.Management.FederalTaxes`: `EmployeeManagementFederalTaxes`; `Employee.Management.HomeAddress`: `EmployeeManagementHomeAddress`; `Employee.Management.PaymentMethod`: `EmployeeManagementPaymentMethod`; `Employee.Management.PaymentMethodBankForm`: `EmployeeManagementPaymentMethodBankForm`; `Employee.Management.PaymentMethodSplitForm`: `EmployeeManagementPaymentMethodSplitForm`; `Employee.Management.Paystubs`: `EmployeeManagementPaystubs`; `Employee.Management.Profile`: `EmployeeManagementProfile`; `Employee.Management.StateTaxes`: `EmployeeManagementStateTaxes`; `Employee.Management.WorkAddress`: `EmployeeManagementWorkAddress`; `Employee.ManagementEmployeeList`: `EmployeeManagementEmployeeList`; `Employee.OnboardingSummary`: `EmployeeOnboardingSummary`; `Employee.PaymentMethod`: `EmployeePaymentMethod`; `Employee.PaySchedules`: `EmployeePaySchedules`; `Employee.Profile`: `EmployeeProfile`; `Employee.SplitPaycheck`: `EmployeeSplitPaycheck`; `Employee.SplitPaymentsFormBody`: `EmployeeSplitPaymentsFormBody`; `Employee.StateTaxes`: `EmployeeStateTaxes`; `Employee.StateTaxesView`: `EmployeeStateTaxesView`; `Employee.Terminations.TerminateEmployee`: `EmployeeTerminationsTerminateEmployee`; `Employee.Terminations.TerminationFlow`: `EmployeeTerminationsTerminationFlow`; `Employee.Terminations.TerminationSummary`: `EmployeeTerminationsTerminationSummary`; `InformationRequests`: `InformationRequests`; `InformationRequests.InformationRequestForm`: `InformationRequestsInformationRequestForm`; `InformationRequests.InformationRequestList`: `InformationRequestsInformationRequestList`; `Payroll.Common`: `PayrollCommon`; `Payroll.ConfirmWireDetailsBanner`: `PayrollConfirmWireDetailsBanner`; `Payroll.ConfirmWireDetailsForm`: `PayrollConfirmWireDetailsForm`; `Payroll.Dismissal`: `PayrollDismissal`; `Payroll.EmployeeSelection`: `PayrollEmployeeSelection`; `Payroll.GrossUpModal`: `PayrollGrossUpModal`; `Payroll.OffCycle`: `PayrollOffCycle`; `Payroll.OffCycleCreation`: `PayrollOffCycleCreation`; `Payroll.OffCycleDeductionsSetting`: `PayrollOffCycleDeductionsSetting`; `Payroll.OffCyclePayPeriodDateForm`: `PayrollOffCyclePayPeriodDateForm`; `Payroll.OffCycleReasonSelection`: `PayrollOffCycleReasonSelection`; `Payroll.OffCycleTaxWithholding`: `PayrollOffCycleTaxWithholding`; `Payroll.PayrollBlocker`: `PayrollPayrollBlocker`; `Payroll.PayrollConfiguration`: `PayrollPayrollConfiguration`; `Payroll.PayrollEditEmployee`: `PayrollPayrollEditEmployee`; `Payroll.PayrollFlow`: `PayrollPayrollFlow`; `Payroll.PayrollHistory`: `PayrollPayrollHistory`; `Payroll.PayrollLanding`: `PayrollPayrollLanding`; `Payroll.PayrollList`: `PayrollPayrollList`; `Payroll.PayrollOverview`: `PayrollPayrollOverview`; `Payroll.PayrollReceipts`: `PayrollPayrollReceipts`; `Payroll.RecoveryCasesList`: `PayrollRecoveryCasesList`; `Payroll.RecoveryCasesResubmit`: `PayrollRecoveryCasesResubmit`; `Payroll.Transition`: `PayrollTransition`; `Payroll.TransitionCreation`: `PayrollTransitionCreation`; `Payroll.TransitionPayrollAlert`: `PayrollTransitionPayrollAlert`; `Payroll.WireInstructions`: `PayrollWireInstructions`; \}\>\> | Translation overrides keyed by language and i18next namespace. Strings supplied here replace the SDK defaults for the matching keys. | +| `dictionary?` | `Record`\<`"en"`, `Partial`\<\{ `common`: `common`; `Company.Addresses`: `CompanyAddresses`; `Company.AssignSignatory`: `CompanyAssignSignatory`; `Company.BankAccount`: `CompanyBankAccount`; `Company.DocumentList`: `CompanyDocumentList`; `Company.FederalTaxes`: `CompanyFederalTaxes`; `Company.Industry`: `CompanyIndustry`; `Company.Locations`: `CompanyLocations`; `Company.OnboardingOverview`: `CompanyOnboardingOverview`; `Company.PaySchedule`: `CompanyPaySchedule`; `Company.SignatureForm`: `CompanySignatureForm`; `Company.StateTaxes`: `CompanyStateTaxes`; `Company.TimeOff.CreateTimeOffPolicy`: `CompanyTimeOffCreateTimeOffPolicy`; `Company.TimeOff.EmployeeTable`: `CompanyTimeOffEmployeeTable`; `Company.TimeOff.HolidayPolicy`: `CompanyTimeOffHolidayPolicy`; `Company.TimeOff.PolicyDetail`: `CompanyTimeOffPolicyDetail`; `Company.TimeOff.SelectEmployees`: `CompanyTimeOffSelectEmployees`; `Company.TimeOff.SelectPolicyType`: `CompanyTimeOffSelectPolicyType`; `Company.TimeOff.TimeOffPolicies`: `CompanyTimeOffTimeOffPolicies`; `Company.TimeOff.TimeOffPolicyDetails`: `CompanyTimeOffTimeOffPolicyDetails`; `Company.TimeOff.TimeOffRequests`: `CompanyTimeOffTimeOffRequests`; `Contractor.Address`: `ContractorAddress`; `Contractor.ContractorList`: `ContractorContractorList`; `Contractor.NewHireReport`: `ContractorNewHireReport`; `Contractor.PaymentMethod`: `ContractorPaymentMethod`; `Contractor.Payments.CreatePayment`: `ContractorPaymentsCreatePayment`; `Contractor.Payments.PaymentHistory`: `ContractorPaymentsPaymentHistory`; `Contractor.Payments.PaymentsList`: `ContractorPaymentsPaymentsList`; `Contractor.Payments.PaymentStatement`: `ContractorPaymentsPaymentStatement`; `Contractor.Payments.PaymentSummary`: `ContractorPaymentsPaymentSummary`; `Contractor.Profile`: `ContractorProfile`; `Contractor.Submit`: `ContractorSubmit`; `Employee.BankAccount`: `EmployeeBankAccount`; `Employee.BankFormBody`: `EmployeeBankFormBody`; `Employee.Compensation`: `EmployeeCompensation`; `Employee.Dashboard`: `EmployeeDashboard`; `Employee.Deductions`: `EmployeeDeductions`; `Employee.DeductionsForm`: `EmployeeDeductionsForm`; `Employee.DocumentManager`: `EmployeeDocumentManager`; `Employee.DocumentSigner`: `EmployeeDocumentSigner`; `Employee.EmployeeDocuments`: `EmployeeEmployeeDocuments`; `Employee.EmployeeList`: `EmployeeEmployeeList`; `Employee.EmploymentEligibility`: `EmployeeEmploymentEligibility`; `Employee.FederalTaxes`: `EmployeeFederalTaxes`; `Employee.FederalTaxesView`: `EmployeeFederalTaxesView`; `Employee.HomeAddress`: `EmployeeHomeAddress`; `Employee.I9SignatureForm`: `EmployeeI9SignatureForm`; `Employee.Landing`: `EmployeeLanding`; `Employee.Management.Compensation`: `EmployeeManagementCompensation`; `Employee.Management.Deductions`: `EmployeeManagementDeductions`; `Employee.Management.Documents`: `EmployeeManagementDocuments`; `Employee.Management.FederalTaxes`: `EmployeeManagementFederalTaxes`; `Employee.Management.HomeAddress`: `EmployeeManagementHomeAddress`; `Employee.Management.PaymentMethod`: `EmployeeManagementPaymentMethod`; `Employee.Management.PaymentMethodBankForm`: `EmployeeManagementPaymentMethodBankForm`; `Employee.Management.PaymentMethodSplitForm`: `EmployeeManagementPaymentMethodSplitForm`; `Employee.Management.Paystubs`: `EmployeeManagementPaystubs`; `Employee.Management.Profile`: `EmployeeManagementProfile`; `Employee.Management.StateTaxes`: `EmployeeManagementStateTaxes`; `Employee.Management.WorkAddress`: `EmployeeManagementWorkAddress`; `Employee.ManagementEmployeeList`: `EmployeeManagementEmployeeList`; `Employee.OnboardingExecutionFlow`: `EmployeeOnboardingExecutionFlow`; `Employee.OnboardingSummary`: `EmployeeOnboardingSummary`; `Employee.PaymentMethod`: `EmployeePaymentMethod`; `Employee.PaySchedules`: `EmployeePaySchedules`; `Employee.Profile`: `EmployeeProfile`; `Employee.SplitPaycheck`: `EmployeeSplitPaycheck`; `Employee.SplitPaymentsFormBody`: `EmployeeSplitPaymentsFormBody`; `Employee.StateTaxes`: `EmployeeStateTaxes`; `Employee.StateTaxesView`: `EmployeeStateTaxesView`; `Employee.Terminations.TerminateEmployee`: `EmployeeTerminationsTerminateEmployee`; `Employee.Terminations.TerminationFlow`: `EmployeeTerminationsTerminationFlow`; `Employee.Terminations.TerminationSummary`: `EmployeeTerminationsTerminationSummary`; `InformationRequests`: `InformationRequests`; `InformationRequests.InformationRequestForm`: `InformationRequestsInformationRequestForm`; `InformationRequests.InformationRequestList`: `InformationRequestsInformationRequestList`; `Payroll.Common`: `PayrollCommon`; `Payroll.ConfirmWireDetailsBanner`: `PayrollConfirmWireDetailsBanner`; `Payroll.ConfirmWireDetailsForm`: `PayrollConfirmWireDetailsForm`; `Payroll.Dismissal`: `PayrollDismissal`; `Payroll.EmployeeSelection`: `PayrollEmployeeSelection`; `Payroll.GrossUpModal`: `PayrollGrossUpModal`; `Payroll.OffCycle`: `PayrollOffCycle`; `Payroll.OffCycleCreation`: `PayrollOffCycleCreation`; `Payroll.OffCycleDeductionsSetting`: `PayrollOffCycleDeductionsSetting`; `Payroll.OffCyclePayPeriodDateForm`: `PayrollOffCyclePayPeriodDateForm`; `Payroll.OffCycleReasonSelection`: `PayrollOffCycleReasonSelection`; `Payroll.OffCycleTaxWithholding`: `PayrollOffCycleTaxWithholding`; `Payroll.PayrollBlocker`: `PayrollPayrollBlocker`; `Payroll.PayrollConfiguration`: `PayrollPayrollConfiguration`; `Payroll.PayrollEditEmployee`: `PayrollPayrollEditEmployee`; `Payroll.PayrollFlow`: `PayrollPayrollFlow`; `Payroll.PayrollHistory`: `PayrollPayrollHistory`; `Payroll.PayrollLanding`: `PayrollPayrollLanding`; `Payroll.PayrollList`: `PayrollPayrollList`; `Payroll.PayrollOverview`: `PayrollPayrollOverview`; `Payroll.PayrollReceipts`: `PayrollPayrollReceipts`; `Payroll.RecoveryCasesList`: `PayrollRecoveryCasesList`; `Payroll.RecoveryCasesResubmit`: `PayrollRecoveryCasesResubmit`; `Payroll.Transition`: `PayrollTransition`; `Payroll.TransitionCreation`: `PayrollTransitionCreation`; `Payroll.TransitionPayrollAlert`: `PayrollTransitionPayrollAlert`; `Payroll.WireInstructions`: `PayrollWireInstructions`; \}\>\> | Translation overrides keyed by language and i18next namespace. Strings supplied here replace the SDK defaults for the matching keys. | | `lng?` | `string` | Active i18next language. Defaults to `'en'`. | | `LoaderComponent?` | (`__namedParameters`) => `Element` | Loading indicator rendered while SDK queries are pending. Overrides the SDK default spinner. | | `locale?` | `string` | BCP 47 locale used for number, date, and currency formatting throughout the SDK. Defaults to `'en-US'`. |