Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .reports/embedded-react-sdk.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,7 @@ import { FunctionComponent } from 'react';
import { Garnishment } from '@gusto/embedded-api/models/components/garnishment';
import { GarnishmentChildSupport } from '@gusto/embedded-api/models/components/garnishmentchildsupport';
import { GarnishmentType } from '@gusto/embedded-api/models/components/garnishment';
import { GeneratedDocumentStatus } from '@gusto/embedded-api/models/components/generateddocument';
import { HolidayPayPolicy } from '@gusto/embedded-api/models/components/holidaypaypolicy';
import { HolidayPayPolicyEmployees } from '@gusto/embedded-api/models/components/holidaypaypolicy';
import { HourlyCompensations } from '@gusto/embedded-api/models/components/payrollemployeecompensationstype';
Expand Down Expand Up @@ -247,6 +248,8 @@ import { PayScheduleShow } from '@gusto/embedded-api/models/components/payschedu
import { PlaidStatus } from '@gusto/embedded-api/models/components/companybankaccount';
import { PolicyType } from '@gusto/embedded-api/models/components/timeoffpolicy';
import { PresidentsDay } from '@gusto/embedded-api/models/components/holidaypaypolicy';
import { PrintablePayrollChecksBody } from '@gusto/embedded-api/models/components/printablepayrollchecksbody';
import { PrintingFormat } from '@gusto/embedded-api/models/components/printablepayrollchecksbody';
import { QueryClient } from '@tanstack/react-query';
import { Questions } from '@gusto/embedded-api/models/components/employeestatetaxesrequest';
import { RateType } from '@gusto/embedded-api/models/components/taxrequirementmetadata';
Expand Down Expand Up @@ -537,6 +540,7 @@ declare namespace APIModels {
Garnishment,
GarnishmentChildSupport,
PaymentPeriod,
GeneratedDocumentStatus,
ChristmasDay,
ColumbusDay,
HolidayPayPolicyEmployees,
Expand Down Expand Up @@ -656,6 +660,8 @@ declare namespace APIModels {
PayScheduleFrequency_2 as PayScheduleFrequency,
PaySchedulePreviewPayPeriod,
PayScheduleShow,
PrintablePayrollChecksBody,
PrintingFormat,
RecoveryCase,
RecoveryCaseStatus,
IdentityVerificationStatus,
Expand Down Expand Up @@ -5007,6 +5013,8 @@ export interface Resources {
// (undocumented)
'Payroll.PrintChecksFailure': Translations.PayrollPrintChecksFailure
// (undocumented)
'Payroll.PrintChecksForm': Translations.PayrollPrintChecksForm
// (undocumented)
'Payroll.PrintChecksSummary': Translations.PayrollPrintChecksSummary
// (undocumented)
'Payroll.RecoveryCasesList': Translations.PayrollRecoveryCasesList
Expand Down
83 changes: 83 additions & 0 deletions docs/reference/APIModels/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3036,6 +3036,39 @@ Defined in: [gusto\_embedded\_v\_2026\_06\_15/src/models/components/garnishment.

***

<a id="generateddocumentstatus"></a>

## GeneratedDocumentStatus

> `const` **GeneratedDocumentStatus**: `object`

Defined in: [gusto\_embedded\_v\_2026\_06\_15/src/models/components/generateddocument.ts:15](https://github.com/Gusto/gusto-typescript-client/blob/gusto_embedded_v_2026_06_15/v0.1.0/gusto_embedded_v_2026_06_15/src/models/components/generateddocument.ts#L15)

Current status of the Generated Document

### Type Declaration

| Name | Type |
| ------ | ------ |
| <a id="property-generateddocumentstatusfailed"></a> `Failed` | `"failed"` |
| <a id="property-generateddocumentstatuspending"></a> `Pending` | `"pending"` |
| <a id="property-generateddocumentstatusstarted"></a> `Started` | `"started"` |
| <a id="property-generateddocumentstatussucceeded"></a> `Succeeded` | `"succeeded"` |

***

<a id="generateddocumentstatus-1"></a>

## GeneratedDocumentStatus

> **GeneratedDocumentStatus** = `ClosedEnum`\<*typeof* [`GeneratedDocumentStatus`](#generateddocumentstatus)\>

Defined in: [gusto\_embedded\_v\_2026\_06\_15/src/models/components/generateddocument.ts:15](https://github.com/Gusto/gusto-typescript-client/blob/gusto_embedded_v_2026_06_15/v0.1.0/gusto_embedded_v_2026_06_15/src/models/components/generateddocument.ts#L15)

Current status of the Generated Document

***

<a id="holidaypaypolicy"></a>

## HolidayPayPolicy
Expand Down Expand Up @@ -6028,6 +6061,56 @@ Defined in: [gusto\_embedded\_v\_2026\_06\_15/src/models/components/holidaypaypo

***

<a id="printablepayrollchecksbody"></a>

## PrintablePayrollChecksBody

> **PrintablePayrollChecksBody** = `object`

Defined in: [gusto\_embedded\_v\_2026\_06\_15/src/models/components/printablepayrollchecksbody.ts:24](https://github.com/Gusto/gusto-typescript-client/blob/gusto_embedded_v_2026_06_15/v0.1.0/gusto_embedded_v_2026_06_15/src/models/components/printablepayrollchecksbody.ts#L24)

Request body for generating printable payroll checks.

### Properties

| Property | Type | Description |
| ------ | ------ | ------ |
| <a id="property-printablepayrollchecksbodyprintingformat"></a> `printingFormat` | [`PrintingFormat`](#printingformat-1) | The type of check stock being printed. Check the "Types of check stock" section in this [link](https://support.gusto.com/article/999877761000000/Pay-your-team-by-check) for more info on check types |
| <a id="property-printablepayrollchecksbodystartingchecknumber"></a> `startingCheckNumber?` | `number` | The starting check number we will start generating checks from. Use to override the sequence that will be used to generate check numbers. |

***

<a id="printingformat"></a>

## PrintingFormat

> `const` **PrintingFormat**: `object`

Defined in: [gusto\_embedded\_v\_2026\_06\_15/src/models/components/printablepayrollchecksbody.ts:12](https://github.com/Gusto/gusto-typescript-client/blob/gusto_embedded_v_2026_06_15/v0.1.0/gusto_embedded_v_2026_06_15/src/models/components/printablepayrollchecksbody.ts#L12)

The type of check stock being printed. Check the "Types of check stock" section in this [link](https://support.gusto.com/article/999877761000000/Pay-your-team-by-check) for more info on check types

### Type Declaration

| Name | Type |
| ------ | ------ |
| <a id="property-printingformatbottom"></a> `Bottom` | `"bottom"` |
| <a id="property-printingformattop"></a> `Top` | `"top"` |

***

<a id="printingformat-1"></a>

## PrintingFormat

> **PrintingFormat** = `ClosedEnum`\<*typeof* [`PrintingFormat`](#printingformat)\>

Defined in: [gusto\_embedded\_v\_2026\_06\_15/src/models/components/printablepayrollchecksbody.ts:12](https://github.com/Gusto/gusto-typescript-client/blob/gusto_embedded_v_2026_06_15/v0.1.0/gusto_embedded_v_2026_06_15/src/models/components/printablepayrollchecksbody.ts#L12)

The type of check stock being printed. Check the "Types of check stock" section in this [link](https://support.gusto.com/article/999877761000000/Pay-your-team-by-check) for more info on check types

***

<a id="questions"></a>

## Questions
Expand Down
26 changes: 26 additions & 0 deletions docs/reference/Translations/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -5271,6 +5271,31 @@ Translation keys for the `Payroll.PrintChecksFailure` i18n namespace.

***

<a id="payrollprintchecksform"></a>

### PayrollPrintChecksForm

Translation keys for the `Payroll.PrintChecksForm` i18n namespace.

#### Properties

| Property | Default value |
| ------ | ------ |
| <a id="property-payrollprintchecksformblankstockdescription"></a> `blankStockDescription` | `"Use this check stock if you have blank check stock and need us to populate your company and bank information. The physical check will always be on the bottom of the check PDF."` |
| <a id="property-payrollprintchecksformblankstocklabel"></a> `blankStockLabel` | `"Blank check stock"` |
| <a id="property-payrollprintchecksformcancelcta"></a> `cancelCta` | `"Cancel"` |
| <a id="property-payrollprintchecksformcustomstockdescription"></a> `customStockDescription` | `"Use this check stock if you have check stock that is pre-printed with your company and bank information. The physical check will appear on the top of the check PDF. Check numbers should already be pre-printed on the check stock you purchased."` |
| <a id="property-payrollprintchecksformcustomstocklabel"></a> `customStockLabel` | `"Custom check stock"` |
| <a id="property-payrollprintchecksformmodaltitle"></a> `modalTitle` | `"Choose check stock"` |
| <a id="property-payrollprintchecksformstartingchecknumberdescription"></a> `startingCheckNumberDescription` | `"This will be the first check number, all other checks will follow sequentially."` |
| <a id="property-payrollprintchecksformstartingchecknumberlabel"></a> `startingCheckNumberLabel` | `"Check number starts with"` |
| <a id="property-payrollprintchecksformsubmitcta"></a> `submitCta` | `"View checks"` |
| <a id="property-payrollprintchecksformsubmitctaloading"></a> `submitCtaLoading` | `"Generating..."` |
| <a id="property-payrollprintchecksformvalidations"></a> `validations` | |
| `validations.startingCheckNumber` | `"Enter a valid check number"` |

***

<a id="payrollprintcheckssummary"></a>

### PayrollPrintChecksSummary
Expand Down Expand Up @@ -5662,6 +5687,7 @@ yields that namespace's keys. Backs i18next `t()` typing and `ResourceDictionary
| <a id="property-resourcespayrollpayrollreceipts"></a> `Payroll.PayrollReceipts` | [`PayrollPayrollReceipts`](#payrollpayrollreceipts) |
| <a id="property-resourcespayrollprintchecksbanner"></a> `Payroll.PrintChecksBanner` | [`PayrollPrintChecksBanner`](#payrollprintchecksbanner) |
| <a id="property-resourcespayrollprintchecksfailure"></a> `Payroll.PrintChecksFailure` | [`PayrollPrintChecksFailure`](#payrollprintchecksfailure) |
| <a id="property-resourcespayrollprintchecksform"></a> `Payroll.PrintChecksForm` | [`PayrollPrintChecksForm`](#payrollprintchecksform) |
| <a id="property-resourcespayrollprintcheckssummary"></a> `Payroll.PrintChecksSummary` | [`PayrollPrintChecksSummary`](#payrollprintcheckssummary) |
| <a id="property-resourcespayrollrecoverycaseslist"></a> `Payroll.RecoveryCasesList` | [`PayrollRecoveryCasesList`](#payrollrecoverycaseslist) |
| <a id="property-resourcespayrollrecoverycasesresubmit"></a> `Payroll.RecoveryCasesResubmit` | [`PayrollRecoveryCasesResubmit`](#payrollrecoverycasesresubmit) |
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
import { Suspense } from 'react'
import { fn } from 'storybook/test'
import { PrintChecksForm } from './PrintChecksForm'
import { GustoTestProvider } from '@/test/GustoTestApiProvider'
import { FlowContext } from '@/components/Flow/useFlow'
import { useI18n } from '@/i18n'

function I18nLoader({ children }: { children: React.ReactNode }) {
useI18n('Payroll.PrintChecksForm')
return <>{children}</>
}

export default {
title: 'Domain/Payroll/PrintChecksForm',
decorators: [
(Story: React.ComponentType) => (
<Suspense fallback={<div>Loading translations...</div>}>
<I18nLoader>
<GustoTestProvider>
<Story />
</GustoTestProvider>
</I18nLoader>
</Suspense>
),
],
Comment on lines +16 to +25

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same feedback around stories, i think there should be an abstraction to share this stuff, i feel like it exists already?

}

export const Default = () => (
<FlowContext.Provider value={{ component: null, onEvent: fn().mockName('onEvent') }}>
<PrintChecksForm payrollId="payroll-1" onEvent={fn().mockName('onEvent')} />
<PrintChecksForm.Footer onEvent={fn().mockName('onEvent')} />
</FlowContext.Provider>
)
Loading
Loading