chore: upgrade to @gusto/embedded-api-v-2025-11-15#1814
Conversation
1833286 to
0f6a10d
Compare
|
@cursoragent can you resolve these conflicts? |
|
Perfect! I've successfully resolved all merge conflicts and rebased the branch. Here's what I did: Summary✅ Conflicts Resolved: Resolved 28 merge conflicts across multiple files What was resolved:The conflicts were all related to the API package upgrade from
The branch now has 3 clean commits rebased on top of the latest |
0f6a10d to
ba49829
Compare
b12912d to
c4125b0
Compare
Swap the SDK from the @gusto/embedded-api package to the @gusto/embedded-api-v-2025-11-15 package (which targets the 2025-11-15 API version). Mostly a path-only rename across imports, React Query cache keys (['@gusto/embedded-api'] -> ['@gusto/embedded-api-v-2025-11-15']), and the build/deriveEndpointInventory.ts paths. The new package exposes the same module layout (react-query/, models/components/, models/operations/, models/errors/, hooks/, core, types/) so imports work by package-name swap. Schema-level fallout addressed: - PayrollShow.autoPilot was renamed to autoPayroll; the stale autoPilot key is dropped from PayrollOverview stories + tests. - The PaymentType enum is now lowercase; ConfirmWireDetailsBanner and WireInstructions compare against 'payroll' instead of 'Payroll', and the wire_in_requests mock emits payment_type: 'payroll'. Co-authored-by: Cursor <cursoragent@cursor.com>
c4125b0 to
02ce837
Compare
…d-api-2025-11-15 # Conflicts: # src/components/Employee/Dashboard/BasicDetailsView.tsx # src/components/Employee/Dashboard/Dashboard.tsx # src/components/Employee/Dashboard/DocumentsView.tsx # src/components/Employee/Dashboard/JobAndPayView.tsx # src/components/Employee/Dashboard/TaxesView.tsx
|
✅ Confirmed there are no breaking changes to the public API contract for props or types. Generated with API Extractor against Full diff ( @@ -4,63 +4,63 @@
```ts
-import { AfterErrorContext } from '@gusto/embedded-api/hooks/types';
-import { AfterErrorHook } from '@gusto/embedded-api/hooks/types';
-import { AfterSuccessContext } from '@gusto/embedded-api/hooks/types';
-import { AfterSuccessHook } from '@gusto/embedded-api/hooks/types';
-import { Agencies } from '@gusto/embedded-api/models/components/childsupportdata';
+import { AfterErrorContext } from '@gusto/embedded-api-v-2025-11-15/hooks/types';
+import { AfterErrorHook } from '@gusto/embedded-api-v-2025-11-15/hooks/types';
+import { AfterSuccessContext } from '@gusto/embedded-api-v-2025-11-15/hooks/types';
+import { AfterSuccessHook } from '@gusto/embedded-api-v-2025-11-15/hooks/types';
+import { Agencies } from '@gusto/embedded-api-v-2025-11-15/models/components/childsupportdata';
import { AnchorHTMLAttributes } from 'react';
import { AriaAttributes } from 'react';
-import { BeforeCreateRequestContext } from '@gusto/embedded-api/hooks/types';
-import { BeforeCreateRequestHook } from '@gusto/embedded-api/hooks/types';
-import { BeforeRequestContext } from '@gusto/embedded-api/hooks/types';
-import { BeforeRequestHook } from '@gusto/embedded-api/hooks/types';
+import { BeforeCreateRequestContext } from '@gusto/embedded-api-v-2025-11-15/hooks/types';
+import { BeforeCreateRequestHook } from '@gusto/embedded-api-v-2025-11-15/hooks/types';
+import { BeforeRequestContext } from '@gusto/embedded-api-v-2025-11-15/hooks/types';
+import { BeforeRequestHook } from '@gusto/embedded-api-v-2025-11-15/hooks/types';
import { ButtonHTMLAttributes } from 'react';
-import { Compensation } from '@gusto/embedded-api/models/components/compensation';
+import { Compensation } from '@gusto/embedded-api-v-2025-11-15/models/components/compensation';
import { ComponentType } from 'react';
-import { Contractor as Contractor_2 } from '@gusto/embedded-api/models/components/contractor';
-import { ContractorAddress } from '@gusto/embedded-api/models/components/contractoraddress';
+import { Contractor as Contractor_2 } from '@gusto/embedded-api-v-2025-11-15/models/components/contractor';
+import { ContractorAddress } from '@gusto/embedded-api-v-2025-11-15/models/components/contractoraddress';
import { Control } from 'react-hook-form';
import { CustomTypeOptions } from 'i18next';
import { default as default_2 } from 'react';
-import { Employee as Employee_2 } from '@gusto/embedded-api/models/components/employee';
-import { EmployeeAddress } from '@gusto/embedded-api/models/components/employeeaddress';
-import { EmployeeBankAccount } from '@gusto/embedded-api/models/components/employeebankaccount';
-import { EmployeeFederalTax } from '@gusto/embedded-api/models/components/employeefederaltax';
-import { EmployeePaymentMethod } from '@gusto/embedded-api/models/components/employeepaymentmethod';
-import { EmployeeStateTaxesList } from '@gusto/embedded-api/models/components/employeestatetaxeslist';
-import { EmployeeStateTaxQuestion } from '@gusto/embedded-api/models/components/employeestatetaxquestion';
-import { EmployeeWorkAddress } from '@gusto/embedded-api/models/components/employeeworkaddress';
+import { Employee as Employee_2 } from '@gusto/embedded-api-v-2025-11-15/models/components/employee';
+import { EmployeeAddress } from '@gusto/embedded-api-v-2025-11-15/models/components/employeeaddress';
+import { EmployeeBankAccount } from '@gusto/embedded-api-v-2025-11-15/models/components/employeebankaccount';
+import { EmployeeFederalTax } from '@gusto/embedded-api-v-2025-11-15/models/components/employeefederaltax';
+import { EmployeePaymentMethod } from '@gusto/embedded-api-v-2025-11-15/models/components/employeepaymentmethod';
+import { EmployeeStateTaxesList } from '@gusto/embedded-api-v-2025-11-15/models/components/employeestatetaxeslist';
+import { EmployeeStateTaxQuestion } from '@gusto/embedded-api-v-2025-11-15/models/components/employeestatetaxquestion';
+import { EmployeeWorkAddress } from '@gusto/embedded-api-v-2025-11-15/models/components/employeeworkaddress';
import { ErrorInfo } from 'react';
import { FallbackProps } from 'react-error-boundary';
import { FieldsetHTMLAttributes } from 'react';
import { FieldValues } from 'react-hook-form';
-import { FlsaStatusType } from '@gusto/embedded-api/models/components/flsastatustype';
+import { FlsaStatusType } from '@gusto/embedded-api-v-2025-11-15/models/components/flsastatustype';
import { FocusEvent as FocusEvent_2 } from 'react';
-import { Form } from '@gusto/embedded-api/models/components/form';
-import { Garnishment } from '@gusto/embedded-api/models/components/garnishment';
-import { GarnishmentType } from '@gusto/embedded-api/models/components/garnishment';
+import { Form } from '@gusto/embedded-api-v-2025-11-15/models/components/form';
+import { Garnishment } from '@gusto/embedded-api-v-2025-11-15/models/components/garnishment';
+import { GarnishmentType } from '@gusto/embedded-api-v-2025-11-15/models/components/garnishment';
import { HTMLAttributes } from 'react';
import { InputHTMLAttributes } from 'react';
-import { Job } from '@gusto/embedded-api/models/components/job';
+import { Job } from '@gusto/embedded-api-v-2025-11-15/models/components/job';
import { JSX } from 'react';
import { JSX as JSX_2 } from 'react/jsx-runtime';
import { JSXElementConstructor } from 'react';
-import { Location as Location_2 } from '@gusto/embedded-api/models/components/location';
-import { MinimumWage } from '@gusto/embedded-api/models/components/minimumwage';
-import { PaymentPeriod } from '@gusto/embedded-api/models/components/garnishmentchildsupport';
-import { PaymentUnit } from '@gusto/embedded-api/models/components/compensation';
-import { PayrollPayPeriodType } from '@gusto/embedded-api/models/components/payrollpayperiodtype';
-import { PaySchedulePreviewPayPeriod } from '@gusto/embedded-api/models/components/payschedulepreviewpayperiod';
-import { PayScheduleShow } from '@gusto/embedded-api/models/components/payscheduleshow';
-import { PolicyType as PolicyType_2 } from '@gusto/embedded-api/models/components/timeoffpolicy';
+import { Location as Location_2 } from '@gusto/embedded-api-v-2025-11-15/models/components/location';
+import { MinimumWage } from '@gusto/embedded-api-v-2025-11-15/models/components/minimumwage';
+import { PaymentPeriod } from '@gusto/embedded-api-v-2025-11-15/models/components/garnishmentchildsupport';
+import { PaymentUnit } from '@gusto/embedded-api-v-2025-11-15/models/components/compensation';
+import { PayrollPayPeriodType } from '@gusto/embedded-api-v-2025-11-15/models/components/payrollpayperiodtype';
+import { PaySchedulePreviewPayPeriod } from '@gusto/embedded-api-v-2025-11-15/models/components/payschedulepreviewpayperiod';
+import { PayScheduleShow } from '@gusto/embedded-api-v-2025-11-15/models/components/payscheduleshow';
+import { PolicyType as PolicyType_2 } from '@gusto/embedded-api-v-2025-11-15/models/components/timeoffpolicy';
import { QueryClient } from '@tanstack/react-query';
import { ReactElement } from 'react';
import { ReactNode } from 'react';
import { Ref } from 'react';
import { RefObject } from 'react';
import { SelectHTMLAttributes } from 'react';
-import { Signatory } from '@gusto/embedded-api/models/components/signatory';
+import { Signatory } from '@gusto/embedded-api-v-2025-11-15/models/components/signatory';
import { SyntheticEvent } from 'react';
import { TableHTMLAttributes } from 'react';
import { TextareaHTMLAttributes } from 'react'; |
Align the X-Gusto-API-Version request header with the upgraded @gusto/embedded-api-v-2025-11-15 package so outbound requests target the correct API version. Co-authored-by: Cursor <cursoragent@cursor.com>




Summary
Upgrades the SDK from
@gusto/embedded-api@0.13.0to@gusto/embedded-api-v-2025-11-15@0.0.1, which targets the 2025-11-15 API version.The new package is a breaking change at the API contract layer, but the library's public surface is unchanged.
Commits
chore: swap @gusto/embedded-api to @gusto/embedded-api-v-2025-11-15— Drop-in path swap across 305 files: import paths, React Query cache-key prefixes (inApiProviderand otherqueryClient.invalidate/setDefaultscall sites), and two regex literals inbuild/deriveEndpointInventory.tsthat matchfrom '@gusto/embedded-api/...'imports. No logic changes. The pre-commitnpm run buildwas bypassed for this commit because the breaking-schema fallout (next commit) is required to typecheck.fix: address breaking changes from @gusto/embedded-api-v-2025-11-15— Adapts call sites to schema differences in the new SDK:PayrollShow.autoPilotremoved from test fixtures and stories (renamed toautoPayrollupstream).PaymentTypeenum string-comparison casing updated from'Payroll'to'payroll'to match the new enum.useDataView<T>explicitly type-parameterized inRecoveryCasesList,PayScheduleList,DeductionsList, andInformationRequestList. The new SDK's generated types interact with TS inference such that without an explicit generic,useDataViewinfersTfrom the column-key literals ({ originalDebitDate: any } & { totalAmount: any } & …) instead of from the data array. PinningTto the entity type restores field typing on each row'srendercallback. This pattern matches existing usage elsewhere (e.g.useDataView<Contractor>inContractorList).Test plan
npm run buildpasses locallynpm run test -- --runpassesnpm run storybook): PayrollOverview, RecoveryCasesList, PayScheduleList, DeductionsList, InformationRequestList — confirm rows render with the right field valuesdocs/reference/endpoint-inventory.jsonregenerates correctly (npm run endpoints:derive— should produce 75 blocks, 9 flows, unchanged from main)Notes
The CHANGELOG was deliberately not edited — historical entries reference
@gusto/embedded-apiand shouldn't be retroactively renamed.🤖 Generated with Claude Code