@gusto/embedded-react-sdk 0.52.0 → 0.52.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/components/Base/Base.d.ts +2 -0
  3. package/dist/components/Base/Base.js.map +1 -1
  4. package/dist/components/Common/PaginationControl/PaginationControlTypes.d.ts +4 -1
  5. package/dist/components/Common/UI/Breadcrumbs/BreadcrumbsTypes.d.ts +1 -1
  6. package/dist/components/Common/UI/Breadcrumbs/BreadcrumbsTypes.js.map +1 -1
  7. package/dist/components/Common/UI/CheckboxGroup/CheckboxGroupTypes.d.ts +1 -1
  8. package/dist/components/Common/UI/CheckboxGroup/CheckboxGroupTypes.js.map +1 -1
  9. package/dist/components/Common/UI/ComboBox/ComboBoxTypes.d.ts +2 -2
  10. package/dist/components/Common/UI/DateRangePicker/DateRangePickerTypes.d.ts +3 -2
  11. package/dist/components/Common/UI/DescriptionList/DescriptionListTypes.d.ts +1 -1
  12. package/dist/components/Common/UI/DescriptionList/DescriptionListTypes.js.map +1 -1
  13. package/dist/components/Common/UI/Menu/MenuTypes.d.ts +3 -3
  14. package/dist/components/Common/UI/Menu/MenuTypes.js.map +1 -1
  15. package/dist/components/Common/UI/MultiSelectComboBox/MultiSelectComboBoxTypes.d.ts +2 -2
  16. package/dist/components/Common/UI/RadioGroup/RadioGroupTypes.d.ts +2 -2
  17. package/dist/components/Common/UI/RadioGroup/RadioGroupTypes.js.map +1 -1
  18. package/dist/components/Common/UI/Select/SelectTypes.d.ts +2 -2
  19. package/dist/components/Common/UI/Table/TableTypes.d.ts +4 -4
  20. package/dist/components/Common/UI/Table/TableTypes.js.map +1 -1
  21. package/dist/components/Common/UI/Tabs/TabsTypes.d.ts +2 -2
  22. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +5 -3
  23. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  24. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +5 -3
  25. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  26. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +7 -5
  27. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  28. package/dist/components/Company/BankAccount/BankAccountForm/context.js +5 -3
  29. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  30. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +5 -3
  31. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  32. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +10 -8
  33. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  34. package/dist/components/Company/Industry/Context.js +8 -6
  35. package/dist/components/Company/Industry/Context.js.map +1 -1
  36. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +5 -3
  37. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  38. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +5 -3
  39. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  40. package/dist/components/Company/OnboardingOverview/context.js +5 -3
  41. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  42. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +5 -3
  43. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  44. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +5 -3
  45. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  46. package/dist/components/Contractor/ContractorList/index.d.ts +2 -1
  47. package/dist/components/Contractor/ContractorList/index.js +121 -99
  48. package/dist/components/Contractor/ContractorList/index.js.map +1 -1
  49. package/dist/components/Contractor/OnboardingFlow/OnboardingFlow.d.ts +1 -1
  50. package/dist/components/Contractor/OnboardingFlow/OnboardingFlow.js.map +1 -1
  51. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.d.ts +2 -0
  52. package/dist/components/Contractor/OnboardingFlow/OnboardingFlowComponents.js.map +1 -1
  53. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.js +150 -80
  54. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.js.map +1 -1
  55. package/dist/components/Contractor/OnboardingFlow/onboardingStateMachine.test.d.ts +1 -0
  56. package/dist/components/Contractor/Profile/BusinessSelfOnboardingProfile.js +19 -18
  57. package/dist/components/Contractor/Profile/BusinessSelfOnboardingProfile.js.map +1 -1
  58. package/dist/components/Contractor/Profile/ContractorProfile.d.ts +1 -1
  59. package/dist/components/Contractor/Profile/ContractorProfile.js +114 -110
  60. package/dist/components/Contractor/Profile/ContractorProfile.js.map +1 -1
  61. package/dist/components/Contractor/Profile/IndividualSelfOnboardingProfile.js +27 -26
  62. package/dist/components/Contractor/Profile/IndividualSelfOnboardingProfile.js.map +1 -1
  63. package/dist/components/Contractor/Submit/Submit.js +106 -63
  64. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  65. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +5 -3
  66. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  67. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fields.d.ts +2 -2
  68. package/dist/components/Employee/StateTaxes/shared/useEmployeeStateTaxesForm/fields.js.map +1 -1
  69. package/dist/components/Payroll/usePreparedPayrollData.js +10 -8
  70. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  71. package/dist/contexts/ComponentAdapter/useComponentContext.d.ts +1 -1
  72. package/dist/contexts/ComponentAdapter/useComponentContext.js.map +1 -1
  73. package/dist/contexts/GustoProvider/GustoProvider.d.ts +1 -0
  74. package/dist/contexts/GustoProvider/GustoProvider.js.map +1 -1
  75. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.d.ts +1 -0
  76. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  77. package/dist/contexts/ThemeProvider/types.d.ts +2 -2
  78. package/dist/i18n/en/Contractor.ContractorList.json.js +22 -20
  79. package/dist/i18n/en/Contractor.ContractorList.json.js.map +1 -1
  80. package/dist/i18n/en/Contractor.Submit.json.js +11 -11
  81. package/dist/i18n/types.d.ts +7 -3
  82. package/dist/models/WA_RISK_CODES.d.ts +1 -0
  83. package/dist/models/WA_RISK_CODES.js.map +1 -1
  84. package/dist/partner-hook-utils/composeErrorHandler.d.ts +4 -0
  85. package/dist/partner-hook-utils/composeErrorHandler.js.map +1 -1
  86. package/dist/partner-hook-utils/form/SDKFormProvider.d.ts +1 -0
  87. package/dist/partner-hook-utils/form/SDKFormProvider.js.map +1 -1
  88. package/dist/partner-hook-utils/form/composeSubmitHandler.d.ts +4 -0
  89. package/dist/partner-hook-utils/form/composeSubmitHandler.js.map +1 -1
  90. package/dist/partner-hook-utils/form/fields/CheckboxHookField.d.ts +1 -0
  91. package/dist/partner-hook-utils/form/fields/CheckboxHookField.js.map +1 -1
  92. package/dist/partner-hook-utils/form/fields/DatePickerHookField.d.ts +1 -0
  93. package/dist/partner-hook-utils/form/fields/DatePickerHookField.js.map +1 -1
  94. package/dist/partner-hook-utils/form/fields/NumberInputHookField.d.ts +1 -0
  95. package/dist/partner-hook-utils/form/fields/NumberInputHookField.js.map +1 -1
  96. package/dist/partner-hook-utils/form/fields/RadioGroupHookField.d.ts +1 -0
  97. package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js.map +1 -1
  98. package/dist/partner-hook-utils/form/fields/SelectHookField.d.ts +1 -0
  99. package/dist/partner-hook-utils/form/fields/SelectHookField.js.map +1 -1
  100. package/dist/partner-hook-utils/form/fields/SwitchHookField.d.ts +1 -0
  101. package/dist/partner-hook-utils/form/fields/SwitchHookField.js.map +1 -1
  102. package/dist/partner-hook-utils/form/fields/TextInputHookField.d.ts +1 -0
  103. package/dist/partner-hook-utils/form/fields/TextInputHookField.js.map +1 -1
  104. package/dist/partner-hook-utils/types.d.ts +9 -0
  105. package/dist/shared/constants.d.ts +10 -0
  106. package/dist/shared/constants.js +7 -6
  107. package/dist/shared/constants.js.map +1 -1
  108. package/dist/types/Helpers.d.ts +2 -0
  109. package/dist/types/hooks.d.ts +1 -0
  110. package/dist/types/observability.d.ts +1 -0
  111. package/docs/guides/endpoint-inventory.json +17 -1
  112. package/package.json +11 -11
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.52.1](https://github.com/Gusto/embedded-react-sdk/compare/v0.52.0...v0.52.1) (2026-07-14)
4
+
5
+ ### Features & Enhancements
6
+
7
+ - Contractor self-onboarding now mirrors the employee self-onboarding experience, giving contractors a guided flow to complete their own profile, address, and signature steps. ([#2385](https://github.com/Gusto/embedded-react-sdk/issues/2385))
8
+ - The Contractor `Submit` step now lets contractors download their signed W-9. ([#2392](https://github.com/Gusto/embedded-react-sdk/issues/2392))
9
+
10
+ ### Fixes
11
+
12
+ - The contractor new hire report is now only triggered during the initial onboarding pass, so re-editing an already-onboarded contractor no longer re-files the report. ([#2386](https://github.com/Gusto/embedded-react-sdk/issues/2386))
13
+
14
+ ### Chores & Maintenance
15
+
16
+ - Bump dev dependencies (`storybook` and its addons to 10.5.0, `eslint`, `@eslint/js`, `@typescript-eslint/rule-tester`, `@typescript-eslint/utils`)
17
+ - Bump dependencies (`dompurify`)
18
+
3
19
  ## [0.52.0](https://github.com/Gusto/embedded-react-sdk/compare/v0.51.2...v0.52.0) (2026-07-10)
4
20
 
5
21
  ### ⚠ Breaking Changes
@@ -9,6 +9,7 @@ import { SDKError } from '../../types/sdkError';
9
9
  *
10
10
  * @typeParam TResourceKey - The i18n resource namespace key whose dictionary entries can be overridden.
11
11
  * @public
12
+ * @page workflows-and-blocks
12
13
  */
13
14
  export interface CommonComponentInterface<TResourceKey extends keyof Resources = keyof Resources> {
14
15
  /** Optional child content rendered inside the component's layout. */
@@ -37,6 +38,7 @@ export interface CommonComponentInterface<TResourceKey extends keyof Resources =
37
38
  *
38
39
  * @typeParam TResourceKey - The i18n resource namespace key whose dictionary entries can be overridden.
39
40
  * @public
41
+ * @page workflows-and-blocks
40
42
  */
41
43
  export interface BaseComponentInterface<TResourceKey extends keyof Resources = keyof Resources> extends CommonComponentInterface<TResourceKey> {
42
44
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Base.js","sources":["../../../src/components/Base/Base.tsx"],"sourcesContent":["import type { ReactNode, JSX, ErrorInfo } from 'react'\nimport { Suspense, useEffect, useRef } from 'react'\nimport type { FallbackProps } from 'react-error-boundary'\nimport { ErrorBoundary } from 'react-error-boundary'\nimport { useTranslation } from 'react-i18next'\nimport { QueryErrorResetBoundary } from '@tanstack/react-query'\nimport { FadeIn } from '../Common/FadeIn/FadeIn'\nimport { BaseContext, type OnEventType } from './useBase'\nimport { useBaseSubmit } from './useBaseSubmit'\nimport { componentEvents, type EventType } from '@/shared/constants'\nimport { InternalError } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport type { ResourceDictionary, Resources } from '@/types/Helpers'\nimport { useLoadingIndicator } from '@/contexts/LoadingIndicatorProvider/useLoadingIndicator'\nimport type { LoadingIndicatorContextProps } from '@/contexts/LoadingIndicatorProvider/useLoadingIndicator'\nimport { useObservability } from '@/contexts/ObservabilityProvider/useObservability'\nimport { normalizeToSDKError, type SDKError } from '@/types/sdkError'\n\n/**\n * Props common to all SDK feature components, including children, an optional className, default form values, and an i18n resource dictionary override.\n *\n * @typeParam TResourceKey - The i18n resource namespace key whose dictionary entries can be overridden.\n * @public\n */\nexport interface CommonComponentInterface<TResourceKey extends keyof Resources = keyof Resources> {\n /** Optional child content rendered inside the component's layout. */\n children?: ReactNode\n /** CSS class name applied to the component's root element. */\n className?: string\n /**\n * Initial values pre-populated into the component's form fields before the user interacts.\n * The exact shape depends on the specific component — refer to each component's own props type.\n */\n defaultValues?: unknown\n /**\n * Overrides for the component's i18n strings. Supply a partial object whose keys match the\n * component's resource namespace — any omitted keys fall back to SDK defaults.\n * See the [Translation guide](https://docs.gusto.com/embedded-payroll/docs/translation) for details.\n */\n dictionary?: ResourceDictionary<TResourceKey>\n}\n\n/**\n * Props for SDK feature components that participate in the standard error/loading/observability surface.\n *\n * @remarks\n * Extends {@link CommonComponentInterface} with the `onEvent` callback that emits component events\n * and optional overrides for the error-boundary fallback and loading indicator. This is the prop\n * shape mixed into every public SDK feature component.\n *\n * @typeParam TResourceKey - The i18n resource namespace key whose dictionary entries can be overridden.\n * @public\n */\nexport interface BaseComponentInterface<\n TResourceKey extends keyof Resources = keyof Resources,\n> extends CommonComponentInterface<TResourceKey> {\n /**\n * Custom React component rendered in place of the component when an unhandled error is caught\n * by the component-level error boundary. Receives `error` and `resetErrorBoundary` as props.\n * Defaults to the SDK's built-in `InternalError` fallback.\n */\n FallbackComponent?: (props: FallbackProps) => JSX.Element\n /**\n * Custom loading indicator rendered while the component's async data is fetching.\n * Overrides the indicator configured on `GustoProvider` for this component instance only.\n */\n LoaderComponent?: ({ children }: { children?: ReactNode }) => JSX.Element\n /**\n * Callback invoked each time the component emits an event — user interactions, successful API\n * responses, step transitions, or errors. Receives the event type constant and an optional\n * payload whose shape varies by event. See the [Event Handling guide](https://docs.gusto.com/embedded-payroll/docs/event-handling)\n * and each component's event table for the full list of emitted events.\n */\n onEvent: OnEventType<EventType, unknown>\n}\n\n/**\n * Keys unique to the BaseComponentInterface\n *\n * @internal\n */\nexport type BaseComponentKeys = Exclude<\n keyof BaseComponentInterface,\n keyof CommonComponentInterface\n>\n\ninterface InternalBaseComponentProps {\n componentName?: string\n}\n\n/**\n * Wraps SDK feature components with the standard error boundary, suspense fallback, form-submission handler, and observability wiring.\n *\n * @remarks\n * Provides a {@link BaseContext} value to descendants exposing `error`, `setError`, `onEvent`, and\n * `baseSubmitHandler`, then renders children inside {@link BaseBoundaries} and {@link BaseLayout}.\n * Errors caught by the React error boundary are normalized, emitted to observability, and re-emitted\n * via `onEvent`.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `componentEvents.ERROR` | Emitted when an unhandled rendering error is caught by the component's error boundary | The raw error value caught by the boundary |\n *\n * @typeParam TResourceKey - The i18n resource namespace key whose dictionary entries can be overridden.\n * @param props - Component props extending {@link BaseComponentInterface}.\n * @returns A React element wrapping `children` with the SDK's standard error, loading, and event-emission surface.\n * @internal\n */\nexport const BaseComponent = <TResourceKey extends keyof Resources = keyof Resources>({\n children,\n FallbackComponent = InternalError,\n LoaderComponent: LoadingIndicatorFromProps,\n onEvent,\n componentName,\n}: BaseComponentInterface<TResourceKey> & InternalBaseComponentProps) => {\n const { error, baseSubmitHandler, setError } = useBaseSubmit(componentName)\n const { observability } = useObservability()\n\n const { LoadingIndicator: LoadingIndicatorFromContext } = useLoadingIndicator()\n const LoaderComponent = LoadingIndicatorFromProps ?? LoadingIndicatorFromContext\n\n const onErrorBoundaryError = (boundaryError: unknown, errorInfo: ErrorInfo) => {\n onEvent(componentEvents.ERROR, boundaryError)\n\n const sdkError = normalizeToSDKError(boundaryError)\n\n observability?.onError?.({\n ...sdkError,\n timestamp: Date.now(),\n componentName,\n componentStack: errorInfo.componentStack ?? undefined,\n })\n }\n\n return (\n <BaseContext.Provider\n value={{\n error,\n setError,\n onEvent,\n baseSubmitHandler,\n LoadingIndicator: LoaderComponent,\n componentName,\n }}\n >\n <BaseBoundaries\n FallbackComponent={FallbackComponent}\n onErrorBoundaryError={onErrorBoundaryError}\n componentName={componentName}\n >\n <BaseLayout error={error}>{children}</BaseLayout>\n </BaseBoundaries>\n </BaseContext.Provider>\n )\n}\n\n/** @internal */\nexport interface BaseLayoutProps {\n children?: ReactNode\n error?: SDKError | SDKError[] | null\n isLoading?: boolean\n}\n\nfunction SingleErrorContent({ error }: { error: SDKError }) {\n const Components = useComponentContext()\n const { t } = useTranslation()\n const hasFieldErrors = error.fieldErrors.length > 0\n\n return (\n <Components.Alert label={t('status.errorEncountered')} status=\"error\">\n {hasFieldErrors && (\n <Components.UnorderedList\n items={error.fieldErrors\n .filter(fieldError => fieldError.message)\n .map(fieldError => (\n <span key={fieldError.field}>{fieldError.message}</span>\n ))}\n />\n )}\n {!hasFieldErrors && error.category === 'validation_error' && (\n <Components.Text as=\"pre\">\n {error.raw &&\n typeof error.raw === 'object' &&\n 'pretty' in error.raw &&\n typeof (error.raw as { pretty: unknown }).pretty === 'function'\n ? (error.raw as { pretty: () => string }).pretty()\n : error.message}\n </Components.Text>\n )}\n {!hasFieldErrors && error.category !== 'validation_error' && (\n <Components.Text>{error.message || t('errors.unknownError')}</Components.Text>\n )}\n </Components.Alert>\n )\n}\n\nfunction MultipleErrorsContent({ errors }: { errors: SDKError[] }) {\n const Components = useComponentContext()\n const { t } = useTranslation()\n\n return (\n <Components.Alert label={t('status.multipleErrorsEncountered')} status=\"error\">\n <Components.UnorderedList\n items={errors\n .filter(error => error.message || error.fieldErrors.length > 0)\n .map((error, index) => {\n const visibleFieldErrors = error.fieldErrors.filter(fieldError => fieldError.message)\n\n if (visibleFieldErrors.length === 0) {\n return <span key={index}>{error.message || t('errors.unknownError')}</span>\n }\n\n return (\n <span key={index}>\n {error.message || t('errors.unknownError')}\n <Components.UnorderedList\n items={visibleFieldErrors.map(fieldError => (\n <span key={fieldError.field}>{fieldError.message}</span>\n ))}\n />\n </span>\n )\n })}\n />\n </Components.Alert>\n )\n}\n\n/**\n * Renders the standard SDK layout with normalized error display, suspense-aware loading state, and the children content.\n *\n * @remarks\n * When `isLoading` is true and there are no errors, renders the configured loading indicator.\n * Otherwise renders a fade-in wrapper that displays a single error alert, an aggregated alert when\n * multiple errors are present, or no alert when errors are absent. Field-level errors are rendered\n * as a list, validation errors as preformatted Zod output, and all other errors as a generic\n * message — see {@link https://github.com/Gusto/embedded-react-sdk/blob/main/docs/integration-guide/error-handling.md | the Error Handling guide}.\n *\n * @param props - Component props matching {@link BaseLayoutProps}.\n * @returns A React element with the SDK's standard error rendering and loading behavior wrapped around `children`.\n * @internal\n */\nexport const BaseLayout = ({ children, error, isLoading }: BaseLayoutProps) => {\n const { LoadingIndicator } = useLoadingIndicator()\n\n const errors = Array.isArray(error) ? error : error ? [error] : []\n const hasErrors = errors.length > 0\n\n if (isLoading && !hasErrors) {\n return <LoadingIndicator />\n }\n\n const [firstError] = errors\n\n return (\n <FadeIn>\n {errors.length > 1 && <MultipleErrorsContent errors={errors} />}\n {errors.length === 1 && firstError && <SingleErrorContent error={firstError} />}\n {children}\n </FadeIn>\n )\n}\n\ninterface LoaderWithMetricsProps {\n LoaderComponent: LoadingIndicatorContextProps['LoadingIndicator']\n observability: ReturnType<typeof useObservability>['observability']\n componentName?: string\n}\n\nconst LoaderWithMetrics = ({\n LoaderComponent,\n observability,\n componentName,\n}: LoaderWithMetricsProps) => {\n const loadingStartTime = useRef(Date.now())\n const observabilityRef = useRef(observability)\n const componentNameRef = useRef(componentName)\n\n useEffect(() => {\n observabilityRef.current = observability\n componentNameRef.current = componentName\n }, [observability, componentName])\n\n useEffect(() => {\n return () => {\n const duration = Date.now() - loadingStartTime.current\n observabilityRef.current?.onMetric?.({\n name: 'sdk.component.loading_duration',\n value: duration,\n unit: 'ms',\n tags: componentNameRef.current ? { component: componentNameRef.current } : undefined,\n timestamp: Date.now(),\n })\n }\n }, [])\n\n return <LoaderComponent />\n}\n\nfunction SuspenseFallback({ componentName }: { componentName?: string }) {\n const { LoadingIndicator } = useLoadingIndicator()\n const { observability } = useObservability()\n return (\n <LoaderWithMetrics\n LoaderComponent={LoadingIndicator}\n observability={observability}\n componentName={componentName}\n />\n )\n}\n\n/** @internal */\nexport interface BaseBoundariesProps {\n children?: ReactNode\n FallbackComponent?: (props: FallbackProps) => JSX.Element\n onErrorBoundaryError?: (error: unknown, info: ErrorInfo) => void\n componentName?: string\n}\n\n/**\n * Composes the SDK's React error boundary, TanStack Query reset boundary, and Suspense fallback around children.\n *\n * @remarks\n * Resetting the error boundary also resets any TanStack Query errors so suspended queries refetch\n * cleanly. While children suspend, a metrics-instrumented loading indicator is rendered that emits\n * an `sdk.component.loading_duration` observability metric on unmount.\n *\n * @param props - Component props matching {@link BaseBoundariesProps}.\n * @returns A React element wrapping `children` with the SDK's error and suspense boundaries.\n * @internal\n */\nexport const BaseBoundaries = ({\n children,\n FallbackComponent = InternalError,\n onErrorBoundaryError,\n componentName,\n}: BaseBoundariesProps) => {\n return (\n <QueryErrorResetBoundary>\n {({ reset: resetQueries }) => (\n <ErrorBoundary\n FallbackComponent={FallbackComponent}\n onReset={resetQueries}\n onError={onErrorBoundaryError}\n >\n <Suspense fallback={<SuspenseFallback componentName={componentName} />}>\n {children}\n </Suspense>\n </ErrorBoundary>\n )}\n </QueryErrorResetBoundary>\n )\n}\n"],"names":["BaseComponent","children","FallbackComponent","InternalError","LoadingIndicatorFromProps","onEvent","componentName","error","baseSubmitHandler","setError","useBaseSubmit","observability","useObservability","LoadingIndicatorFromContext","useLoadingIndicator","LoaderComponent","onErrorBoundaryError","boundaryError","errorInfo","componentEvents","sdkError","normalizeToSDKError","jsx","BaseContext","BaseBoundaries","BaseLayout","SingleErrorContent","Components","useComponentContext","t","useTranslation","hasFieldErrors","jsxs","fieldError","MultipleErrorsContent","errors","index","visibleFieldErrors","isLoading","LoadingIndicator","hasErrors","firstError","FadeIn","LoaderWithMetrics","loadingStartTime","useRef","observabilityRef","componentNameRef","useEffect","duration","SuspenseFallback","QueryErrorResetBoundary","resetQueries","ErrorBoundary","Suspense"],"mappings":"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"}
1
+ {"version":3,"file":"Base.js","sources":["../../../src/components/Base/Base.tsx"],"sourcesContent":["import type { ReactNode, JSX, ErrorInfo } from 'react'\nimport { Suspense, useEffect, useRef } from 'react'\nimport type { FallbackProps } from 'react-error-boundary'\nimport { ErrorBoundary } from 'react-error-boundary'\nimport { useTranslation } from 'react-i18next'\nimport { QueryErrorResetBoundary } from '@tanstack/react-query'\nimport { FadeIn } from '../Common/FadeIn/FadeIn'\nimport { BaseContext, type OnEventType } from './useBase'\nimport { useBaseSubmit } from './useBaseSubmit'\nimport { componentEvents, type EventType } from '@/shared/constants'\nimport { InternalError } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport type { ResourceDictionary, Resources } from '@/types/Helpers'\nimport { useLoadingIndicator } from '@/contexts/LoadingIndicatorProvider/useLoadingIndicator'\nimport type { LoadingIndicatorContextProps } from '@/contexts/LoadingIndicatorProvider/useLoadingIndicator'\nimport { useObservability } from '@/contexts/ObservabilityProvider/useObservability'\nimport { normalizeToSDKError, type SDKError } from '@/types/sdkError'\n\n/**\n * Props common to all SDK feature components, including children, an optional className, default form values, and an i18n resource dictionary override.\n *\n * @typeParam TResourceKey - The i18n resource namespace key whose dictionary entries can be overridden.\n * @public\n * @page workflows-and-blocks\n */\nexport interface CommonComponentInterface<TResourceKey extends keyof Resources = keyof Resources> {\n /** Optional child content rendered inside the component's layout. */\n children?: ReactNode\n /** CSS class name applied to the component's root element. */\n className?: string\n /**\n * Initial values pre-populated into the component's form fields before the user interacts.\n * The exact shape depends on the specific component — refer to each component's own props type.\n */\n defaultValues?: unknown\n /**\n * Overrides for the component's i18n strings. Supply a partial object whose keys match the\n * component's resource namespace — any omitted keys fall back to SDK defaults.\n * See the [Translation guide](https://docs.gusto.com/embedded-payroll/docs/translation) for details.\n */\n dictionary?: ResourceDictionary<TResourceKey>\n}\n\n/**\n * Props for SDK feature components that participate in the standard error/loading/observability surface.\n *\n * @remarks\n * Extends {@link CommonComponentInterface} with the `onEvent` callback that emits component events\n * and optional overrides for the error-boundary fallback and loading indicator. This is the prop\n * shape mixed into every public SDK feature component.\n *\n * @typeParam TResourceKey - The i18n resource namespace key whose dictionary entries can be overridden.\n * @public\n * @page workflows-and-blocks\n */\nexport interface BaseComponentInterface<\n TResourceKey extends keyof Resources = keyof Resources,\n> extends CommonComponentInterface<TResourceKey> {\n /**\n * Custom React component rendered in place of the component when an unhandled error is caught\n * by the component-level error boundary. Receives `error` and `resetErrorBoundary` as props.\n * Defaults to the SDK's built-in `InternalError` fallback.\n */\n FallbackComponent?: (props: FallbackProps) => JSX.Element\n /**\n * Custom loading indicator rendered while the component's async data is fetching.\n * Overrides the indicator configured on `GustoProvider` for this component instance only.\n */\n LoaderComponent?: ({ children }: { children?: ReactNode }) => JSX.Element\n /**\n * Callback invoked each time the component emits an event — user interactions, successful API\n * responses, step transitions, or errors. Receives the event type constant and an optional\n * payload whose shape varies by event. See the [Event Handling guide](https://docs.gusto.com/embedded-payroll/docs/event-handling)\n * and each component's event table for the full list of emitted events.\n */\n onEvent: OnEventType<EventType, unknown>\n}\n\n/**\n * Keys unique to the BaseComponentInterface\n *\n * @internal\n */\nexport type BaseComponentKeys = Exclude<\n keyof BaseComponentInterface,\n keyof CommonComponentInterface\n>\n\ninterface InternalBaseComponentProps {\n componentName?: string\n}\n\n/**\n * Wraps SDK feature components with the standard error boundary, suspense fallback, form-submission handler, and observability wiring.\n *\n * @remarks\n * Provides a {@link BaseContext} value to descendants exposing `error`, `setError`, `onEvent`, and\n * `baseSubmitHandler`, then renders children inside {@link BaseBoundaries} and {@link BaseLayout}.\n * Errors caught by the React error boundary are normalized, emitted to observability, and re-emitted\n * via `onEvent`.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `componentEvents.ERROR` | Emitted when an unhandled rendering error is caught by the component's error boundary | The raw error value caught by the boundary |\n *\n * @typeParam TResourceKey - The i18n resource namespace key whose dictionary entries can be overridden.\n * @param props - Component props extending {@link BaseComponentInterface}.\n * @returns A React element wrapping `children` with the SDK's standard error, loading, and event-emission surface.\n * @internal\n */\nexport const BaseComponent = <TResourceKey extends keyof Resources = keyof Resources>({\n children,\n FallbackComponent = InternalError,\n LoaderComponent: LoadingIndicatorFromProps,\n onEvent,\n componentName,\n}: BaseComponentInterface<TResourceKey> & InternalBaseComponentProps) => {\n const { error, baseSubmitHandler, setError } = useBaseSubmit(componentName)\n const { observability } = useObservability()\n\n const { LoadingIndicator: LoadingIndicatorFromContext } = useLoadingIndicator()\n const LoaderComponent = LoadingIndicatorFromProps ?? LoadingIndicatorFromContext\n\n const onErrorBoundaryError = (boundaryError: unknown, errorInfo: ErrorInfo) => {\n onEvent(componentEvents.ERROR, boundaryError)\n\n const sdkError = normalizeToSDKError(boundaryError)\n\n observability?.onError?.({\n ...sdkError,\n timestamp: Date.now(),\n componentName,\n componentStack: errorInfo.componentStack ?? undefined,\n })\n }\n\n return (\n <BaseContext.Provider\n value={{\n error,\n setError,\n onEvent,\n baseSubmitHandler,\n LoadingIndicator: LoaderComponent,\n componentName,\n }}\n >\n <BaseBoundaries\n FallbackComponent={FallbackComponent}\n onErrorBoundaryError={onErrorBoundaryError}\n componentName={componentName}\n >\n <BaseLayout error={error}>{children}</BaseLayout>\n </BaseBoundaries>\n </BaseContext.Provider>\n )\n}\n\n/** @internal */\nexport interface BaseLayoutProps {\n children?: ReactNode\n error?: SDKError | SDKError[] | null\n isLoading?: boolean\n}\n\nfunction SingleErrorContent({ error }: { error: SDKError }) {\n const Components = useComponentContext()\n const { t } = useTranslation()\n const hasFieldErrors = error.fieldErrors.length > 0\n\n return (\n <Components.Alert label={t('status.errorEncountered')} status=\"error\">\n {hasFieldErrors && (\n <Components.UnorderedList\n items={error.fieldErrors\n .filter(fieldError => fieldError.message)\n .map(fieldError => (\n <span key={fieldError.field}>{fieldError.message}</span>\n ))}\n />\n )}\n {!hasFieldErrors && error.category === 'validation_error' && (\n <Components.Text as=\"pre\">\n {error.raw &&\n typeof error.raw === 'object' &&\n 'pretty' in error.raw &&\n typeof (error.raw as { pretty: unknown }).pretty === 'function'\n ? (error.raw as { pretty: () => string }).pretty()\n : error.message}\n </Components.Text>\n )}\n {!hasFieldErrors && error.category !== 'validation_error' && (\n <Components.Text>{error.message || t('errors.unknownError')}</Components.Text>\n )}\n </Components.Alert>\n )\n}\n\nfunction MultipleErrorsContent({ errors }: { errors: SDKError[] }) {\n const Components = useComponentContext()\n const { t } = useTranslation()\n\n return (\n <Components.Alert label={t('status.multipleErrorsEncountered')} status=\"error\">\n <Components.UnorderedList\n items={errors\n .filter(error => error.message || error.fieldErrors.length > 0)\n .map((error, index) => {\n const visibleFieldErrors = error.fieldErrors.filter(fieldError => fieldError.message)\n\n if (visibleFieldErrors.length === 0) {\n return <span key={index}>{error.message || t('errors.unknownError')}</span>\n }\n\n return (\n <span key={index}>\n {error.message || t('errors.unknownError')}\n <Components.UnorderedList\n items={visibleFieldErrors.map(fieldError => (\n <span key={fieldError.field}>{fieldError.message}</span>\n ))}\n />\n </span>\n )\n })}\n />\n </Components.Alert>\n )\n}\n\n/**\n * Renders the standard SDK layout with normalized error display, suspense-aware loading state, and the children content.\n *\n * @remarks\n * When `isLoading` is true and there are no errors, renders the configured loading indicator.\n * Otherwise renders a fade-in wrapper that displays a single error alert, an aggregated alert when\n * multiple errors are present, or no alert when errors are absent. Field-level errors are rendered\n * as a list, validation errors as preformatted Zod output, and all other errors as a generic\n * message — see {@link https://github.com/Gusto/embedded-react-sdk/blob/main/docs/integration-guide/error-handling.md | the Error Handling guide}.\n *\n * @param props - Component props matching {@link BaseLayoutProps}.\n * @returns A React element with the SDK's standard error rendering and loading behavior wrapped around `children`.\n * @internal\n */\nexport const BaseLayout = ({ children, error, isLoading }: BaseLayoutProps) => {\n const { LoadingIndicator } = useLoadingIndicator()\n\n const errors = Array.isArray(error) ? error : error ? [error] : []\n const hasErrors = errors.length > 0\n\n if (isLoading && !hasErrors) {\n return <LoadingIndicator />\n }\n\n const [firstError] = errors\n\n return (\n <FadeIn>\n {errors.length > 1 && <MultipleErrorsContent errors={errors} />}\n {errors.length === 1 && firstError && <SingleErrorContent error={firstError} />}\n {children}\n </FadeIn>\n )\n}\n\ninterface LoaderWithMetricsProps {\n LoaderComponent: LoadingIndicatorContextProps['LoadingIndicator']\n observability: ReturnType<typeof useObservability>['observability']\n componentName?: string\n}\n\nconst LoaderWithMetrics = ({\n LoaderComponent,\n observability,\n componentName,\n}: LoaderWithMetricsProps) => {\n const loadingStartTime = useRef(Date.now())\n const observabilityRef = useRef(observability)\n const componentNameRef = useRef(componentName)\n\n useEffect(() => {\n observabilityRef.current = observability\n componentNameRef.current = componentName\n }, [observability, componentName])\n\n useEffect(() => {\n return () => {\n const duration = Date.now() - loadingStartTime.current\n observabilityRef.current?.onMetric?.({\n name: 'sdk.component.loading_duration',\n value: duration,\n unit: 'ms',\n tags: componentNameRef.current ? { component: componentNameRef.current } : undefined,\n timestamp: Date.now(),\n })\n }\n }, [])\n\n return <LoaderComponent />\n}\n\nfunction SuspenseFallback({ componentName }: { componentName?: string }) {\n const { LoadingIndicator } = useLoadingIndicator()\n const { observability } = useObservability()\n return (\n <LoaderWithMetrics\n LoaderComponent={LoadingIndicator}\n observability={observability}\n componentName={componentName}\n />\n )\n}\n\n/** @internal */\nexport interface BaseBoundariesProps {\n children?: ReactNode\n FallbackComponent?: (props: FallbackProps) => JSX.Element\n onErrorBoundaryError?: (error: unknown, info: ErrorInfo) => void\n componentName?: string\n}\n\n/**\n * Composes the SDK's React error boundary, TanStack Query reset boundary, and Suspense fallback around children.\n *\n * @remarks\n * Resetting the error boundary also resets any TanStack Query errors so suspended queries refetch\n * cleanly. While children suspend, a metrics-instrumented loading indicator is rendered that emits\n * an `sdk.component.loading_duration` observability metric on unmount.\n *\n * @param props - Component props matching {@link BaseBoundariesProps}.\n * @returns A React element wrapping `children` with the SDK's error and suspense boundaries.\n * @internal\n */\nexport const BaseBoundaries = ({\n children,\n FallbackComponent = InternalError,\n onErrorBoundaryError,\n componentName,\n}: BaseBoundariesProps) => {\n return (\n <QueryErrorResetBoundary>\n {({ reset: resetQueries }) => (\n <ErrorBoundary\n FallbackComponent={FallbackComponent}\n onReset={resetQueries}\n onError={onErrorBoundaryError}\n >\n <Suspense fallback={<SuspenseFallback componentName={componentName} />}>\n {children}\n </Suspense>\n </ErrorBoundary>\n )}\n </QueryErrorResetBoundary>\n )\n}\n"],"names":["BaseComponent","children","FallbackComponent","InternalError","LoadingIndicatorFromProps","onEvent","componentName","error","baseSubmitHandler","setError","useBaseSubmit","observability","useObservability","LoadingIndicatorFromContext","useLoadingIndicator","LoaderComponent","onErrorBoundaryError","boundaryError","errorInfo","componentEvents","sdkError","normalizeToSDKError","jsx","BaseContext","BaseBoundaries","BaseLayout","SingleErrorContent","Components","useComponentContext","t","useTranslation","hasFieldErrors","jsxs","fieldError","MultipleErrorsContent","errors","index","visibleFieldErrors","isLoading","LoadingIndicator","hasErrors","firstError","FadeIn","LoaderWithMetrics","loadingStartTime","useRef","observabilityRef","componentNameRef","useEffect","duration","SuspenseFallback","QueryErrorResetBoundary","resetQueries","ErrorBoundary","Suspense"],"mappings":";;;;;;;;;;;;;;AA+GO,MAAMA,IAAgB,CAAyD;AAAA,EACpF,UAAAC;AAAA,EACA,mBAAAC,IAAoBC;AAAA,EACpB,iBAAiBC;AAAA,EACjB,SAAAC;AAAA,EACA,eAAAC;AACF,MAAyE;AACvE,QAAM,EAAE,OAAAC,GAAO,mBAAAC,GAAmB,UAAAC,EAAA,IAAaC,EAAcJ,CAAa,GACpE,EAAE,eAAAK,EAAA,IAAkBC,EAAA,GAEpB,EAAE,kBAAkBC,EAAA,IAAgCC,EAAA,GACpDC,IAAkBX,KAA6BS,GAE/CG,IAAuB,CAACC,GAAwBC,MAAyB;AAC7E,IAAAb,EAAQc,EAAgB,OAAOF,CAAa;AAE5C,UAAMG,IAAWC,EAAoBJ,CAAa;AAElD,IAAAN,GAAe,UAAU;AAAA,MACvB,GAAGS;AAAA,MACH,WAAW,KAAK,IAAA;AAAA,MAChB,eAAAd;AAAA,MACA,gBAAgBY,EAAU,kBAAkB;AAAA,IAAA,CAC7C;AAAA,EACH;AAEA,SACE,gBAAAI;AAAA,IAACC,EAAY;AAAA,IAAZ;AAAA,MACC,OAAO;AAAA,QACL,OAAAhB;AAAA,QACA,UAAAE;AAAA,QACA,SAAAJ;AAAA,QACA,mBAAAG;AAAA,QACA,kBAAkBO;AAAA,QAClB,eAAAT;AAAA,MAAA;AAAA,MAGF,UAAA,gBAAAgB;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,mBAAAtB;AAAA,UACA,sBAAAc;AAAA,UACA,eAAAV;AAAA,UAEA,UAAA,gBAAAgB,EAACG,GAAA,EAAW,OAAAlB,GAAe,UAAAN,EAAA,CAAS;AAAA,QAAA;AAAA,MAAA;AAAA,IACtC;AAAA,EAAA;AAGN;AASA,SAASyB,EAAmB,EAAE,OAAAnB,KAA8B;AAC1D,QAAMoB,IAAaC,EAAA,GACb,EAAE,GAAAC,EAAA,IAAMC,EAAA,GACRC,IAAiBxB,EAAM,YAAY,SAAS;AAElD,SACE,gBAAAyB,EAACL,EAAW,OAAX,EAAiB,OAAOE,EAAE,yBAAyB,GAAG,QAAO,SAC3D,UAAA;AAAA,IAAAE,KACC,gBAAAT;AAAA,MAACK,EAAW;AAAA,MAAX;AAAA,QACC,OAAOpB,EAAM,YACV,OAAO,CAAA0B,MAAcA,EAAW,OAAO,EACvC,IAAI,CAAAA,wBACF,QAAA,EAA6B,UAAAA,EAAW,QAAA,GAA9BA,EAAW,KAA2B,CAClD;AAAA,MAAA;AAAA,IAAA;AAAA,IAGN,CAACF,KAAkBxB,EAAM,aAAa,sBACrC,gBAAAe,EAACK,EAAW,MAAX,EAAgB,IAAG,OACjB,UAAApB,EAAM,OACP,OAAOA,EAAM,OAAQ,YACrB,YAAYA,EAAM,OAClB,OAAQA,EAAM,IAA4B,UAAW,aAChDA,EAAM,IAAiC,OAAA,IACxCA,EAAM,QAAA,CACZ;AAAA,IAED,CAACwB,KAAkBxB,EAAM,aAAa,sBACrC,gBAAAe,EAACK,EAAW,MAAX,EAAiB,UAAApB,EAAM,WAAWsB,EAAE,qBAAqB,EAAA,CAAE;AAAA,EAAA,GAEhE;AAEJ;AAEA,SAASK,EAAsB,EAAE,QAAAC,KAAkC;AACjE,QAAMR,IAAaC,EAAA,GACb,EAAE,GAAAC,EAAA,IAAMC,EAAA;AAEd,SACE,gBAAAR,EAACK,EAAW,OAAX,EAAiB,OAAOE,EAAE,kCAAkC,GAAG,QAAO,SACrE,UAAA,gBAAAP;AAAA,IAACK,EAAW;AAAA,IAAX;AAAA,MACC,OAAOQ,EACJ,OAAO,CAAA5B,MAASA,EAAM,WAAWA,EAAM,YAAY,SAAS,CAAC,EAC7D,IAAI,CAACA,GAAO6B,MAAU;AACrB,cAAMC,IAAqB9B,EAAM,YAAY,OAAO,CAAA0B,MAAcA,EAAW,OAAO;AAEpF,eAAII,EAAmB,WAAW,sBACxB,QAAA,EAAkB,UAAA9B,EAAM,WAAWsB,EAAE,qBAAqB,KAAhDO,CAAkD,sBAInE,QAAA,EACE,UAAA;AAAA,UAAA7B,EAAM,WAAWsB,EAAE,qBAAqB;AAAA,UACzC,gBAAAP;AAAA,YAACK,EAAW;AAAA,YAAX;AAAA,cACC,OAAOU,EAAmB,IAAI,CAAAJ,MAC5B,gBAAAX,EAAC,UAA6B,UAAAW,EAAW,WAA9BA,EAAW,KAA2B,CAClD;AAAA,YAAA;AAAA,UAAA;AAAA,QACH,EAAA,GANSG,CAOX;AAAA,MAEJ,CAAC;AAAA,IAAA;AAAA,EAAA,GAEP;AAEJ;AAgBO,MAAMX,IAAa,CAAC,EAAE,UAAAxB,GAAU,OAAAM,GAAO,WAAA+B,QAAiC;AAC7E,QAAM,EAAE,kBAAAC,EAAA,IAAqBzB,EAAA,GAEvBqB,IAAS,MAAM,QAAQ5B,CAAK,IAAIA,IAAQA,IAAQ,CAACA,CAAK,IAAI,CAAA,GAC1DiC,IAAYL,EAAO,SAAS;AAElC,MAAIG,KAAa,CAACE;AAChB,6BAAQD,GAAA,EAAiB;AAG3B,QAAM,CAACE,CAAU,IAAIN;AAErB,2BACGO,GAAA,EACE,UAAA;AAAA,IAAAP,EAAO,SAAS,KAAK,gBAAAb,EAACY,GAAA,EAAsB,QAAAC,GAAgB;AAAA,IAC5DA,EAAO,WAAW,KAAKM,KAAc,gBAAAnB,EAACI,GAAA,EAAmB,OAAOe,GAAY;AAAA,IAC5ExC;AAAA,EAAA,GACH;AAEJ,GAQM0C,IAAoB,CAAC;AAAA,EACzB,iBAAA5B;AAAA,EACA,eAAAJ;AAAA,EACA,eAAAL;AACF,MAA8B;AAC5B,QAAMsC,IAAmBC,EAAO,KAAK,IAAA,CAAK,GACpCC,IAAmBD,EAAOlC,CAAa,GACvCoC,IAAmBF,EAAOvC,CAAa;AAE7C,SAAA0C,EAAU,MAAM;AACd,IAAAF,EAAiB,UAAUnC,GAC3BoC,EAAiB,UAAUzC;AAAA,EAC7B,GAAG,CAACK,GAAeL,CAAa,CAAC,GAEjC0C,EAAU,MACD,MAAM;AACX,UAAMC,IAAW,KAAK,IAAA,IAAQL,EAAiB;AAC/C,IAAAE,EAAiB,SAAS,WAAW;AAAA,MACnC,MAAM;AAAA,MACN,OAAOG;AAAA,MACP,MAAM;AAAA,MACN,MAAMF,EAAiB,UAAU,EAAE,WAAWA,EAAiB,YAAY;AAAA,MAC3E,WAAW,KAAK,IAAA;AAAA,IAAI,CACrB;AAAA,EACH,GACC,CAAA,CAAE,qBAEGhC,GAAA,EAAgB;AAC1B;AAEA,SAASmC,EAAiB,EAAE,eAAA5C,KAA6C;AACvE,QAAM,EAAE,kBAAAiC,EAAA,IAAqBzB,EAAA,GACvB,EAAE,eAAAH,EAAA,IAAkBC,EAAA;AAC1B,SACE,gBAAAU;AAAA,IAACqB;AAAA,IAAA;AAAA,MACC,iBAAiBJ;AAAA,MACjB,eAAA5B;AAAA,MACA,eAAAL;AAAA,IAAA;AAAA,EAAA;AAGN;AAsBO,MAAMkB,IAAiB,CAAC;AAAA,EAC7B,UAAAvB;AAAA,EACA,mBAAAC,IAAoBC;AAAA,EACpB,sBAAAa;AAAA,EACA,eAAAV;AACF,wBAEK6C,GAAA,EACE,UAAA,CAAC,EAAE,OAAOC,QACT,gBAAA9B;AAAA,EAAC+B;AAAA,EAAA;AAAA,IACC,mBAAAnD;AAAA,IACA,SAASkD;AAAA,IACT,SAASpC;AAAA,IAET,4BAACsC,GAAA,EAAS,4BAAWJ,GAAA,EAAiB,eAAA5C,GAA8B,GACjE,UAAAL,EAAA,CACH;AAAA,EAAA;AAAA,GAGN;"}
@@ -1,6 +1,9 @@
1
1
  /**
2
+ * Allowed page-size values a {@link PaginationControlProps | PaginationControl} offers for
3
+ * how many items to show per page.
4
+ *
2
5
  * @public
3
- * @group Utility types
6
+ * @childOf {@link PaginationControlProps}
4
7
  */
5
8
  export type PaginationItemsPerPage = 5 | 10 | 25 | 50;
6
9
  /**
@@ -3,7 +3,7 @@ import { ReactNode } from 'react';
3
3
  * Single entry in a {@link BreadcrumbsProps | Breadcrumbs} trail.
4
4
  *
5
5
  * @public
6
- * @group Utility types
6
+ * @childOf {@link BreadcrumbsProps}
7
7
  */
8
8
  export interface Breadcrumb {
9
9
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"BreadcrumbsTypes.js","sources":["../../../../../src/components/Common/UI/Breadcrumbs/BreadcrumbsTypes.ts"],"sourcesContent":["import type { ReactNode } from 'react'\n\n/**\n * Single entry in a {@link BreadcrumbsProps | Breadcrumbs} trail.\n *\n * @public\n * @group Utility types\n */\nexport interface Breadcrumb {\n /**\n * Unique identifier for the breadcrumb. Matches against `currentBreadcrumbId` and is passed to `onClick`.\n */\n id: string\n /**\n * Display content rendered for the breadcrumb.\n */\n label: ReactNode\n /**\n * When false, the breadcrumb is rendered as plain text even if onClick is provided.\n * Defaults to true.\n */\n isClickable?: boolean\n}\n/**\n * Props your `Breadcrumbs` implementation must accept from the component adapter.\n * Renders a navigation breadcrumb trail showing the user's position in a multi-step flow.\n *\n * @public\n * @group Component props\n */\nexport interface BreadcrumbsProps {\n /**\n * Array of breadcrumbs\n */\n breadcrumbs: Breadcrumb[]\n /**\n * Current breadcrumb id\n */\n currentBreadcrumbId?: string\n /**\n * Accessibility label for the breadcrumbs\n *\n * @defaultValue `'Breadcrumbs'`\n */\n 'aria-label'?: string\n /**\n * Additional CSS class name for the breadcrumbs container\n */\n className?: string\n /**\n * Event handler for breadcrumb navigation\n */\n onClick?: (id: string) => void\n /**\n * Passed to the breadcrumbs when the container size is small (640px and below)\n * At this size, the breadcrumb typically does not have sufficient size to render\n * completely. In our implementation, we switch to a condensed mobile version of\n * the breadcrumbs\n *\n * @defaultValue `false`\n */\n isSmallContainer?: boolean\n}\n\n/**\n * Default prop values for Breadcrumbs component.\n *\n * @internal\n */\nexport const BreadcrumbsDefaults = {\n isSmallContainer: false,\n 'aria-label': 'Breadcrumbs',\n} as const satisfies Partial<BreadcrumbsProps>\n"],"names":["BreadcrumbsDefaults"],"mappings":"AAqEO,MAAMA,IAAsB;AAAA,EACjC,kBAAkB;AAAA,EAClB,cAAc;AAChB;"}
1
+ {"version":3,"file":"BreadcrumbsTypes.js","sources":["../../../../../src/components/Common/UI/Breadcrumbs/BreadcrumbsTypes.ts"],"sourcesContent":["import type { ReactNode } from 'react'\n\n/**\n * Single entry in a {@link BreadcrumbsProps | Breadcrumbs} trail.\n *\n * @public\n * @childOf {@link BreadcrumbsProps}\n */\nexport interface Breadcrumb {\n /**\n * Unique identifier for the breadcrumb. Matches against `currentBreadcrumbId` and is passed to `onClick`.\n */\n id: string\n /**\n * Display content rendered for the breadcrumb.\n */\n label: ReactNode\n /**\n * When false, the breadcrumb is rendered as plain text even if onClick is provided.\n * Defaults to true.\n */\n isClickable?: boolean\n}\n/**\n * Props your `Breadcrumbs` implementation must accept from the component adapter.\n * Renders a navigation breadcrumb trail showing the user's position in a multi-step flow.\n *\n * @public\n * @group Component props\n */\nexport interface BreadcrumbsProps {\n /**\n * Array of breadcrumbs\n */\n breadcrumbs: Breadcrumb[]\n /**\n * Current breadcrumb id\n */\n currentBreadcrumbId?: string\n /**\n * Accessibility label for the breadcrumbs\n *\n * @defaultValue `'Breadcrumbs'`\n */\n 'aria-label'?: string\n /**\n * Additional CSS class name for the breadcrumbs container\n */\n className?: string\n /**\n * Event handler for breadcrumb navigation\n */\n onClick?: (id: string) => void\n /**\n * Passed to the breadcrumbs when the container size is small (640px and below)\n * At this size, the breadcrumb typically does not have sufficient size to render\n * completely. In our implementation, we switch to a condensed mobile version of\n * the breadcrumbs\n *\n * @defaultValue `false`\n */\n isSmallContainer?: boolean\n}\n\n/**\n * Default prop values for Breadcrumbs component.\n *\n * @internal\n */\nexport const BreadcrumbsDefaults = {\n isSmallContainer: false,\n 'aria-label': 'Breadcrumbs',\n} as const satisfies Partial<BreadcrumbsProps>\n"],"names":["BreadcrumbsDefaults"],"mappings":"AAqEO,MAAMA,IAAsB;AAAA,EACjC,kBAAkB;AAAA,EAClB,cAAc;AAChB;"}
@@ -4,7 +4,7 @@ import { SharedFieldLayoutProps } from '../../FieldLayout/FieldLayoutTypes';
4
4
  * Option entry rendered as a single checkbox within a {@link CheckboxGroupProps | CheckboxGroup}.
5
5
  *
6
6
  * @public
7
- * @group Utility types
7
+ * @childOf {@link CheckboxGroupProps}
8
8
  */
9
9
  export interface CheckboxGroupOption {
10
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxGroupTypes.js","sources":["../../../../../src/components/Common/UI/CheckboxGroup/CheckboxGroupTypes.ts"],"sourcesContent":["import type { FieldsetHTMLAttributes, Ref } from 'react'\nimport type { SharedFieldLayoutProps } from '@/components/Common/FieldLayout/FieldLayoutTypes'\n\n/**\n * Option entry rendered as a single checkbox within a {@link CheckboxGroupProps | CheckboxGroup}.\n *\n * @public\n * @group Utility types\n */\nexport interface CheckboxGroupOption {\n /**\n * Label text or content for the checkbox option\n */\n label: React.ReactNode\n /**\n * Value of the option that will be passed to onChange\n */\n value: string\n /**\n * Disables this specific checkbox option\n */\n isDisabled?: boolean\n /**\n * Optional description text for the checkbox option\n */\n description?: React.ReactNode\n}\n\n/**\n * Props your `CheckboxGroup` implementation must accept from the component adapter.\n * Renders a form field wrapping multiple `<input type=\"checkbox\" />` elements with a label, optional description, and error message.\n *\n * @public\n * @group Component props\n */\nexport interface CheckboxGroupProps\n extends SharedFieldLayoutProps, Pick<FieldsetHTMLAttributes<HTMLFieldSetElement>, 'className'> {\n /**\n * Indicates if the checkbox group is in an invalid state\n *\n * @defaultValue `false`\n */\n isInvalid?: boolean\n /**\n * Disables all checkbox options in the group\n *\n * @defaultValue `false`\n */\n isDisabled?: boolean\n /**\n * Array of checkbox options to display\n */\n options: Array<CheckboxGroupOption>\n /**\n * Array of currently selected values\n */\n value?: string[]\n /**\n * Callback when selection changes\n */\n onChange?: (value: string[]) => void\n /**\n * React ref for the first checkbox input element\n */\n inputRef?: Ref<HTMLInputElement>\n}\n\n/**\n * Default prop values for the CheckboxGroup component.\n *\n * @internal\n */\nexport const CheckboxGroupDefaults = {\n isRequired: false,\n isInvalid: false,\n isDisabled: false,\n shouldVisuallyHideLabel: false,\n} as const satisfies Partial<CheckboxGroupProps>\n"],"names":["CheckboxGroupDefaults"],"mappings":"AAwEO,MAAMA,IAAwB;AAAA,EACnC,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,yBAAyB;AAC3B;"}
1
+ {"version":3,"file":"CheckboxGroupTypes.js","sources":["../../../../../src/components/Common/UI/CheckboxGroup/CheckboxGroupTypes.ts"],"sourcesContent":["import type { FieldsetHTMLAttributes, Ref } from 'react'\nimport type { SharedFieldLayoutProps } from '@/components/Common/FieldLayout/FieldLayoutTypes'\n\n/**\n * Option entry rendered as a single checkbox within a {@link CheckboxGroupProps | CheckboxGroup}.\n *\n * @public\n * @childOf {@link CheckboxGroupProps}\n */\nexport interface CheckboxGroupOption {\n /**\n * Label text or content for the checkbox option\n */\n label: React.ReactNode\n /**\n * Value of the option that will be passed to onChange\n */\n value: string\n /**\n * Disables this specific checkbox option\n */\n isDisabled?: boolean\n /**\n * Optional description text for the checkbox option\n */\n description?: React.ReactNode\n}\n\n/**\n * Props your `CheckboxGroup` implementation must accept from the component adapter.\n * Renders a form field wrapping multiple `<input type=\"checkbox\" />` elements with a label, optional description, and error message.\n *\n * @public\n * @group Component props\n */\nexport interface CheckboxGroupProps\n extends SharedFieldLayoutProps, Pick<FieldsetHTMLAttributes<HTMLFieldSetElement>, 'className'> {\n /**\n * Indicates if the checkbox group is in an invalid state\n *\n * @defaultValue `false`\n */\n isInvalid?: boolean\n /**\n * Disables all checkbox options in the group\n *\n * @defaultValue `false`\n */\n isDisabled?: boolean\n /**\n * Array of checkbox options to display\n */\n options: Array<CheckboxGroupOption>\n /**\n * Array of currently selected values\n */\n value?: string[]\n /**\n * Callback when selection changes\n */\n onChange?: (value: string[]) => void\n /**\n * React ref for the first checkbox input element\n */\n inputRef?: Ref<HTMLInputElement>\n}\n\n/**\n * Default prop values for the CheckboxGroup component.\n *\n * @internal\n */\nexport const CheckboxGroupDefaults = {\n isRequired: false,\n isInvalid: false,\n isDisabled: false,\n shouldVisuallyHideLabel: false,\n} as const satisfies Partial<CheckboxGroupProps>\n"],"names":["CheckboxGroupDefaults"],"mappings":"AAwEO,MAAMA,IAAwB;AAAA,EACnC,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,yBAAyB;AAC3B;"}
@@ -1,10 +1,10 @@
1
1
  import { InputHTMLAttributes, Ref } from 'react';
2
2
  import { SharedFieldLayoutProps } from '../../FieldLayout/FieldLayoutTypes';
3
3
  /**
4
- * Option entry for the ComboBox dropdown list.
4
+ * Option entry for the {@link ComboBoxProps | ComboBox} dropdown list.
5
5
  *
6
6
  * @public
7
- * @group Utility types
7
+ * @childOf {@link ComboBoxProps}
8
8
  */
9
9
  export interface ComboBoxOption {
10
10
  /**
@@ -1,8 +1,9 @@
1
1
  /**
2
- * Inclusive start/end pair representing a selected date range.
2
+ * Inclusive start/end pair representing a date range selected in a
3
+ * {@link DateRangePickerProps | DateRangePicker}.
3
4
  *
4
5
  * @public
5
- * @group Utility types
6
+ * @childOf {@link DateRangePickerProps}
6
7
  */
7
8
  export interface DateRange {
8
9
  /**
@@ -3,7 +3,7 @@ import { ReactNode } from 'react';
3
3
  * Single term/description pair rendered as a row within a {@link DescriptionListProps | DescriptionList}.
4
4
  *
5
5
  * @public
6
- * @group Utility types
6
+ * @childOf {@link DescriptionListProps}
7
7
  */
8
8
  export interface DescriptionListItem {
9
9
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"DescriptionListTypes.js","sources":["../../../../../src/components/Common/UI/DescriptionList/DescriptionListTypes.ts"],"sourcesContent":["import type { ReactNode } from 'react'\n\n/**\n * Single term/description pair rendered as a row within a {@link DescriptionListProps | DescriptionList}.\n *\n * @public\n * @group Utility types\n */\nexport interface DescriptionListItem {\n /**\n * Term content (the `<dt>`). Pass an array to render multiple `<dt>` elements for the same description.\n */\n term: ReactNode | ReactNode[]\n /**\n * Description content (the `<dd>`). Pass an array to render multiple `<dd>` elements for the same term.\n */\n description: ReactNode | ReactNode[]\n}\n\n/**\n * Props your `DescriptionList` implementation must accept from the component adapter.\n * Renders an HTML `<dl>` of term/description pairs in either a stacked or horizontal layout.\n *\n * @public\n * @group Component props\n */\nexport interface DescriptionListProps {\n /**\n * Term/description pairs to render in order.\n */\n items: DescriptionListItem[]\n /**\n * Visual arrangement of each term/description pair. Defaults to `'stacked'`.\n *\n * @defaultValue `'stacked'`\n */\n layout?: 'stacked' | 'horizontal'\n /**\n * Whether to render dividers between rows. Defaults to `true`.\n *\n * @defaultValue `true`\n */\n showSeparators?: boolean\n /**\n * Additional class name applied to the root `<dl>`.\n */\n className?: string\n}\n\n/**\n * Default prop values for the DescriptionList component.\n *\n * @internal\n */\nexport const DescriptionListDefaults = {\n layout: 'stacked',\n showSeparators: true,\n} as const satisfies Partial<DescriptionListProps>\n"],"names":["DescriptionListDefaults"],"mappings":"AAsDO,MAAMA,IAA0B;AAAA,EACrC,QAAQ;AAAA,EACR,gBAAgB;AAClB;"}
1
+ {"version":3,"file":"DescriptionListTypes.js","sources":["../../../../../src/components/Common/UI/DescriptionList/DescriptionListTypes.ts"],"sourcesContent":["import type { ReactNode } from 'react'\n\n/**\n * Single term/description pair rendered as a row within a {@link DescriptionListProps | DescriptionList}.\n *\n * @public\n * @childOf {@link DescriptionListProps}\n */\nexport interface DescriptionListItem {\n /**\n * Term content (the `<dt>`). Pass an array to render multiple `<dt>` elements for the same description.\n */\n term: ReactNode | ReactNode[]\n /**\n * Description content (the `<dd>`). Pass an array to render multiple `<dd>` elements for the same term.\n */\n description: ReactNode | ReactNode[]\n}\n\n/**\n * Props your `DescriptionList` implementation must accept from the component adapter.\n * Renders an HTML `<dl>` of term/description pairs in either a stacked or horizontal layout.\n *\n * @public\n * @group Component props\n */\nexport interface DescriptionListProps {\n /**\n * Term/description pairs to render in order.\n */\n items: DescriptionListItem[]\n /**\n * Visual arrangement of each term/description pair. Defaults to `'stacked'`.\n *\n * @defaultValue `'stacked'`\n */\n layout?: 'stacked' | 'horizontal'\n /**\n * Whether to render dividers between rows. Defaults to `true`.\n *\n * @defaultValue `true`\n */\n showSeparators?: boolean\n /**\n * Additional class name applied to the root `<dl>`.\n */\n className?: string\n}\n\n/**\n * Default prop values for the DescriptionList component.\n *\n * @internal\n */\nexport const DescriptionListDefaults = {\n layout: 'stacked',\n showSeparators: true,\n} as const satisfies Partial<DescriptionListProps>\n"],"names":["DescriptionListDefaults"],"mappings":"AAsDO,MAAMA,IAA0B;AAAA,EACrC,QAAQ;AAAA,EACR,gBAAgB;AAClB;"}
@@ -1,11 +1,11 @@
1
1
  import { ReactNode, RefObject } from 'react';
2
2
  import { DataAttributes } from '../../../../types/Helpers';
3
3
  /**
4
- * Action entry your `Menu` implementation must accept for each entry in its `items` array
5
- * from the component adapter.
4
+ * Action entry your {@link MenuProps | Menu} implementation must accept for each entry in its
5
+ * `items` array from the component adapter.
6
6
  *
7
7
  * @public
8
- * @group Utility types
8
+ * @childOf {@link MenuProps}
9
9
  */
10
10
  export interface MenuItem extends DataAttributes {
11
11
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"MenuTypes.js","sources":["../../../../../src/components/Common/UI/Menu/MenuTypes.ts"],"sourcesContent":["import type { ReactNode, RefObject } from 'react'\nimport type { DataAttributes } from '@/types/Helpers'\n\n/**\n * Action entry your `Menu` implementation must accept for each entry in its `items` array\n * from the component adapter.\n *\n * @public\n * @group Utility types\n */\nexport interface MenuItem extends DataAttributes {\n /**\n * Text label for the menu item\n */\n label: string\n /**\n * Optional icon to display before the label\n */\n icon?: ReactNode\n /**\n * Callback function when the menu item is clicked\n */\n onClick: () => void\n /**\n * Disables the menu item and prevents interaction\n */\n isDisabled?: boolean\n /**\n * Optional URL to navigate to when clicked\n */\n href?: string\n}\n\n/**\n * Props your `Menu` implementation must accept from the component adapter.\n * Renders a popover menu of actions anchored to a trigger element.\n *\n * @public\n * @group Component props\n */\nexport interface MenuProps extends DataAttributes {\n /**\n * Reference to the element that triggers the menu\n */\n triggerRef?: RefObject<Element | null>\n /**\n * Array of menu items to display\n */\n items?: MenuItem[]\n /**\n * Controls whether the menu is currently open\n *\n * @defaultValue `false`\n */\n isOpen?: boolean\n /**\n * Callback when the menu is closed\n */\n onClose?: () => void\n /**\n * Accessible label describing the menu's purpose\n */\n 'aria-label': string\n /**\n * Element to use as the portal container for the menu popover.\n * Overrides the default SDK root container from context.\n */\n portalContainer?: HTMLElement\n /**\n * Controls the placement of the menu popover relative to the trigger\n *\n * @defaultValue `'bottom start'`\n */\n placement?:\n 'top' | 'top start' | 'top end' | 'bottom' | 'bottom start' | 'bottom end' | 'left' | 'right'\n}\n\n/**\n * Default prop values for the {@link Menu} component.\n *\n * @internal\n */\nexport const MenuDefaults = {\n isOpen: false,\n placement: 'bottom start',\n} as const satisfies Partial<MenuProps>\n"],"names":["MenuDefaults"],"mappings":"AAkFO,MAAMA,IAAe;AAAA,EAC1B,QAAQ;AAAA,EACR,WAAW;AACb;"}
1
+ {"version":3,"file":"MenuTypes.js","sources":["../../../../../src/components/Common/UI/Menu/MenuTypes.ts"],"sourcesContent":["import type { ReactNode, RefObject } from 'react'\nimport type { DataAttributes } from '@/types/Helpers'\n\n/**\n * Action entry your {@link MenuProps | Menu} implementation must accept for each entry in its\n * `items` array from the component adapter.\n *\n * @public\n * @childOf {@link MenuProps}\n */\nexport interface MenuItem extends DataAttributes {\n /**\n * Text label for the menu item\n */\n label: string\n /**\n * Optional icon to display before the label\n */\n icon?: ReactNode\n /**\n * Callback function when the menu item is clicked\n */\n onClick: () => void\n /**\n * Disables the menu item and prevents interaction\n */\n isDisabled?: boolean\n /**\n * Optional URL to navigate to when clicked\n */\n href?: string\n}\n\n/**\n * Props your `Menu` implementation must accept from the component adapter.\n * Renders a popover menu of actions anchored to a trigger element.\n *\n * @public\n * @group Component props\n */\nexport interface MenuProps extends DataAttributes {\n /**\n * Reference to the element that triggers the menu\n */\n triggerRef?: RefObject<Element | null>\n /**\n * Array of menu items to display\n */\n items?: MenuItem[]\n /**\n * Controls whether the menu is currently open\n *\n * @defaultValue `false`\n */\n isOpen?: boolean\n /**\n * Callback when the menu is closed\n */\n onClose?: () => void\n /**\n * Accessible label describing the menu's purpose\n */\n 'aria-label': string\n /**\n * Element to use as the portal container for the menu popover.\n * Overrides the default SDK root container from context.\n */\n portalContainer?: HTMLElement\n /**\n * Controls the placement of the menu popover relative to the trigger\n *\n * @defaultValue `'bottom start'`\n */\n placement?:\n 'top' | 'top start' | 'top end' | 'bottom' | 'bottom start' | 'bottom end' | 'left' | 'right'\n}\n\n/**\n * Default prop values for the {@link Menu} component.\n *\n * @internal\n */\nexport const MenuDefaults = {\n isOpen: false,\n placement: 'bottom start',\n} as const satisfies Partial<MenuProps>\n"],"names":["MenuDefaults"],"mappings":"AAkFO,MAAMA,IAAe;AAAA,EAC1B,QAAQ;AAAA,EACR,WAAW;AACb;"}
@@ -1,10 +1,10 @@
1
1
  import { InputHTMLAttributes, Ref } from 'react';
2
2
  import { SharedFieldLayoutProps } from '../../FieldLayout/FieldLayoutTypes';
3
3
  /**
4
- * Option entry for a `MultiSelectComboBox` dropdown list.
4
+ * Option entry for a {@link MultiSelectComboBoxProps | MultiSelectComboBox} dropdown list.
5
5
  *
6
6
  * @public
7
- * @group Utility types
7
+ * @childOf {@link MultiSelectComboBoxProps}
8
8
  */
9
9
  export interface MultiSelectComboBoxOption {
10
10
  /**
@@ -1,10 +1,10 @@
1
1
  import { FieldsetHTMLAttributes, Ref } from 'react';
2
2
  import { SharedFieldLayoutProps } from '../../FieldLayout/FieldLayoutTypes';
3
3
  /**
4
- * Option entry your `RadioGroup` implementation receives in the `options` array when rendering each radio button.
4
+ * Option entry your {@link RadioGroupProps | RadioGroup} implementation receives in the `options` array when rendering each radio button.
5
5
  *
6
6
  * @public
7
- * @group Utility types
7
+ * @childOf {@link RadioGroupProps}
8
8
  */
9
9
  export interface RadioGroupOption {
10
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"RadioGroupTypes.js","sources":["../../../../../src/components/Common/UI/RadioGroup/RadioGroupTypes.ts"],"sourcesContent":["import type { FieldsetHTMLAttributes, Ref } from 'react'\nimport type { SharedFieldLayoutProps } from '@/components/Common/FieldLayout/FieldLayoutTypes'\n\n/**\n * Option entry your `RadioGroup` implementation receives in the `options` array when rendering each radio button.\n *\n * @public\n * @group Utility types\n */\nexport interface RadioGroupOption {\n /**\n * Label text or content for the radio option\n */\n label: React.ReactNode\n /**\n * Value of the option that will be passed to onChange\n */\n value: string\n /**\n * Disables this specific radio option\n */\n isDisabled?: boolean\n /**\n * Optional description text for the radio option\n */\n description?: React.ReactNode\n}\n\n/**\n * Props your `RadioGroup` implementation must accept from the component adapter.\n * Renders a form field wrapping multiple `<input type=\"radio\" />` elements with a label, optional description, and error message.\n *\n * @public\n * @group Component props\n */\nexport interface RadioGroupProps\n extends SharedFieldLayoutProps, Pick<FieldsetHTMLAttributes<HTMLFieldSetElement>, 'className'> {\n /**\n * Indicates that the field has an error\n *\n * @defaultValue `false`\n */\n isInvalid?: boolean\n /**\n * Disables all radio options in the group\n *\n * @defaultValue `false`\n */\n isDisabled?: boolean\n /**\n * Array of radio options to display\n */\n options: Array<RadioGroupOption>\n /**\n * Currently selected value\n */\n value?: string | null\n /**\n * Initially selected value\n */\n defaultValue?: string\n /**\n * Callback when selection changes\n */\n onChange?: (value: string) => void\n /**\n * React ref for the first radio input element\n */\n inputRef?: Ref<HTMLInputElement>\n}\n\n/**\n * Default prop values for the RadioGroup component.\n *\n * @internal\n */\nexport const RadioGroupDefaults = {\n isRequired: false,\n isInvalid: false,\n isDisabled: false,\n shouldVisuallyHideLabel: false,\n} as const satisfies Partial<RadioGroupProps>\n"],"names":["RadioGroupDefaults"],"mappings":"AA4EO,MAAMA,IAAqB;AAAA,EAChC,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,yBAAyB;AAC3B;"}
1
+ {"version":3,"file":"RadioGroupTypes.js","sources":["../../../../../src/components/Common/UI/RadioGroup/RadioGroupTypes.ts"],"sourcesContent":["import type { FieldsetHTMLAttributes, Ref } from 'react'\nimport type { SharedFieldLayoutProps } from '@/components/Common/FieldLayout/FieldLayoutTypes'\n\n/**\n * Option entry your {@link RadioGroupProps | RadioGroup} implementation receives in the `options` array when rendering each radio button.\n *\n * @public\n * @childOf {@link RadioGroupProps}\n */\nexport interface RadioGroupOption {\n /**\n * Label text or content for the radio option\n */\n label: React.ReactNode\n /**\n * Value of the option that will be passed to onChange\n */\n value: string\n /**\n * Disables this specific radio option\n */\n isDisabled?: boolean\n /**\n * Optional description text for the radio option\n */\n description?: React.ReactNode\n}\n\n/**\n * Props your `RadioGroup` implementation must accept from the component adapter.\n * Renders a form field wrapping multiple `<input type=\"radio\" />` elements with a label, optional description, and error message.\n *\n * @public\n * @group Component props\n */\nexport interface RadioGroupProps\n extends SharedFieldLayoutProps, Pick<FieldsetHTMLAttributes<HTMLFieldSetElement>, 'className'> {\n /**\n * Indicates that the field has an error\n *\n * @defaultValue `false`\n */\n isInvalid?: boolean\n /**\n * Disables all radio options in the group\n *\n * @defaultValue `false`\n */\n isDisabled?: boolean\n /**\n * Array of radio options to display\n */\n options: Array<RadioGroupOption>\n /**\n * Currently selected value\n */\n value?: string | null\n /**\n * Initially selected value\n */\n defaultValue?: string\n /**\n * Callback when selection changes\n */\n onChange?: (value: string) => void\n /**\n * React ref for the first radio input element\n */\n inputRef?: Ref<HTMLInputElement>\n}\n\n/**\n * Default prop values for the RadioGroup component.\n *\n * @internal\n */\nexport const RadioGroupDefaults = {\n isRequired: false,\n isInvalid: false,\n isDisabled: false,\n shouldVisuallyHideLabel: false,\n} as const satisfies Partial<RadioGroupProps>\n"],"names":["RadioGroupDefaults"],"mappings":"AA4EO,MAAMA,IAAqB;AAAA,EAChC,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,yBAAyB;AAC3B;"}
@@ -1,10 +1,10 @@
1
1
  import { Ref, SelectHTMLAttributes } from 'react';
2
2
  import { SharedFieldLayoutProps } from '../../FieldLayout/FieldLayoutTypes';
3
3
  /**
4
- * Option entry your `Select` implementation receives in the `options` array when rendering each item in the dropdown.
4
+ * Option entry your {@link SelectProps | Select} implementation receives in the `options` array when rendering each item in the dropdown.
5
5
  *
6
6
  * @public
7
- * @group Utility types
7
+ * @childOf {@link SelectProps}
8
8
  */
9
9
  export interface SelectOption {
10
10
  /**
@@ -1,9 +1,9 @@
1
1
  import { ReactNode, TableHTMLAttributes } from 'react';
2
2
  /**
3
- * Shape of a single cell your `Table` implementation receives for headers, rows, and footers.
3
+ * Shape of a single cell your {@link TableProps | Table} implementation receives for headers, rows, and footers.
4
4
  *
5
5
  * @public
6
- * @group Utility types
6
+ * @childOf {@link TableProps}
7
7
  */
8
8
  export interface TableData {
9
9
  /**
@@ -16,10 +16,10 @@ export interface TableData {
16
16
  content: ReactNode;
17
17
  }
18
18
  /**
19
- * Shape of a single row your `Table` implementation receives, containing an ordered list of cells.
19
+ * Shape of a single row your {@link TableProps | Table} implementation receives, containing an ordered list of cells.
20
20
  *
21
21
  * @public
22
- * @group Utility types
22
+ * @childOf {@link TableProps}
23
23
  */
24
24
  export interface TableRow {
25
25
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"TableTypes.js","sources":["../../../../../src/components/Common/UI/Table/TableTypes.ts"],"sourcesContent":["import type { ReactNode, TableHTMLAttributes } from 'react'\n\n/**\n * Shape of a single cell your `Table` implementation receives for headers, rows, and footers.\n *\n * @public\n * @group Utility types\n */\nexport interface TableData {\n /**\n * Unique identifier for the table cell\n */\n key: string\n /**\n * Content to be displayed in the table cell\n */\n content: ReactNode\n}\n\n/**\n * Shape of a single row your `Table` implementation receives, containing an ordered list of cells.\n *\n * @public\n * @group Utility types\n */\nexport interface TableRow {\n /**\n * Unique identifier for the table row\n */\n key: string\n /**\n * Array of cells to be displayed in the row\n */\n data: TableData[]\n}\n\n/**\n * Props your `Table` implementation must accept from the component adapter.\n * Renders a table with column headers, body rows, an optional footer row, and an optional empty state.\n *\n * @public\n * @group Component props\n */\nexport interface TableProps extends Pick<\n TableHTMLAttributes<HTMLTableElement>,\n 'className' | 'aria-label' | 'id' | 'role' | 'aria-labelledby' | 'aria-describedby'\n> {\n /**\n * Array of header cells for the table\n */\n headers: TableData[]\n /**\n * Array of rows to be displayed in the table\n */\n rows: TableRow[]\n /**\n * Array of footer cells for the table\n */\n footer?: TableData[]\n /**\n * Content to display when the table has no rows\n */\n emptyState?: ReactNode\n /**\n * Removes borders and background for use inside a Box component\n *\n * @defaultValue `false`\n */\n isWithinBox?: boolean\n /**\n * Whether the first column contains checkboxes (affects which column gets leading variant)\n *\n * @defaultValue `false`\n */\n hasCheckboxColumn?: boolean\n}\n\n/**\n * Default prop values for the Table component.\n *\n * @internal\n */\nexport const TableDefaults = {\n isWithinBox: false,\n hasCheckboxColumn: false,\n} as const satisfies Partial<TableProps>\n"],"names":["TableDefaults"],"mappings":"AAkFO,MAAMA,IAAgB;AAAA,EAC3B,aAAa;AAAA,EACb,mBAAmB;AACrB;"}
1
+ {"version":3,"file":"TableTypes.js","sources":["../../../../../src/components/Common/UI/Table/TableTypes.ts"],"sourcesContent":["import type { ReactNode, TableHTMLAttributes } from 'react'\n\n/**\n * Shape of a single cell your {@link TableProps | Table} implementation receives for headers, rows, and footers.\n *\n * @public\n * @childOf {@link TableProps}\n */\nexport interface TableData {\n /**\n * Unique identifier for the table cell\n */\n key: string\n /**\n * Content to be displayed in the table cell\n */\n content: ReactNode\n}\n\n/**\n * Shape of a single row your {@link TableProps | Table} implementation receives, containing an ordered list of cells.\n *\n * @public\n * @childOf {@link TableProps}\n */\nexport interface TableRow {\n /**\n * Unique identifier for the table row\n */\n key: string\n /**\n * Array of cells to be displayed in the row\n */\n data: TableData[]\n}\n\n/**\n * Props your `Table` implementation must accept from the component adapter.\n * Renders a table with column headers, body rows, an optional footer row, and an optional empty state.\n *\n * @public\n * @group Component props\n */\nexport interface TableProps extends Pick<\n TableHTMLAttributes<HTMLTableElement>,\n 'className' | 'aria-label' | 'id' | 'role' | 'aria-labelledby' | 'aria-describedby'\n> {\n /**\n * Array of header cells for the table\n */\n headers: TableData[]\n /**\n * Array of rows to be displayed in the table\n */\n rows: TableRow[]\n /**\n * Array of footer cells for the table\n */\n footer?: TableData[]\n /**\n * Content to display when the table has no rows\n */\n emptyState?: ReactNode\n /**\n * Removes borders and background for use inside a Box component\n *\n * @defaultValue `false`\n */\n isWithinBox?: boolean\n /**\n * Whether the first column contains checkboxes (affects which column gets leading variant)\n *\n * @defaultValue `false`\n */\n hasCheckboxColumn?: boolean\n}\n\n/**\n * Default prop values for the Table component.\n *\n * @internal\n */\nexport const TableDefaults = {\n isWithinBox: false,\n hasCheckboxColumn: false,\n} as const satisfies Partial<TableProps>\n"],"names":["TableDefaults"],"mappings":"AAkFO,MAAMA,IAAgB;AAAA,EAC3B,aAAa;AAAA,EACb,mBAAmB;AACrB;"}
@@ -1,9 +1,9 @@
1
1
  import { ReactNode } from 'react';
2
2
  /**
3
- * Shape of a single tab configuration your `Tabs` implementation receives in its `tabs` prop.
3
+ * Shape of a single tab configuration your {@link TabsProps | Tabs} implementation receives in its `tabs` prop.
4
4
  *
5
5
  * @public
6
- * @group Utility types
6
+ * @childOf {@link TabsProps}
7
7
  */
8
8
  export interface TabProps {
9
9
  /**
@@ -9,13 +9,15 @@ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
9
  import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
10
  import "@gusto/embedded-api/models/errors/unprocessableentityerror";
11
11
  import "@gusto/embedded-api/models/errors/httpclienterrors";
12
+ import "dompurify";
13
+ import "../../../../contexts/LocaleProvider/useLocale.js";
12
14
  import "../../../../shared/constants.js";
13
15
  import "../../../../contexts/ComponentAdapter/useComponentContext.js";
14
16
  import "../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
15
17
  import { createCompoundContext as t } from "../../../Base/createCompoundContext.js";
16
- const [s, u] = t("CreateSignatoryContext");
18
+ const [f, v] = t("CreateSignatoryContext");
17
19
  export {
18
- u as CreateSignatoryProvider,
19
- s as useCreateSignatory
20
+ v as CreateSignatoryProvider,
21
+ f as useCreateSignatory
20
22
  };
21
23
  //# sourceMappingURL=useCreateSignatory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCreateSignatory.js","sources":["../../../../../src/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.ts"],"sourcesContent":["import { type Signatory } from '@gusto/embedded-api/models/components/signatory'\nimport { createCompoundContext } from '@/components/Base'\nimport type { RequireAtLeastOne } from '@/types/Helpers'\n\n/**\n * Initial values for the {@link CreateSignatory} form fields. At least one field must be provided.\n *\n * @public\n */\nexport type CreateSignatoryDefaultValues = RequireAtLeastOne<\n Pick<Signatory, 'firstName' | 'lastName' | 'email' | 'title' | 'phone' | 'birthday'> &\n Pick<\n NonNullable<Signatory['homeAddress']>,\n 'street1' | 'street2' | 'city' | 'state' | 'zip'\n > & {\n ssn?: string\n }\n>\ntype CreateSignatoryContextType = {\n isPending: boolean\n currentSignatory?: Signatory\n}\n\nconst [useCreateSignatory, CreateSignatoryProvider] =\n createCompoundContext<CreateSignatoryContextType>('CreateSignatoryContext')\n\nexport {\n /** @internal */\n useCreateSignatory,\n /** @internal */\n CreateSignatoryProvider,\n}\n"],"names":["useCreateSignatory","CreateSignatoryProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AAuBA,MAAM,CAACA,GAAoBC,CAAuB,IAChDC,EAAkD,wBAAwB;"}
1
+ {"version":3,"file":"useCreateSignatory.js","sources":["../../../../../src/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.ts"],"sourcesContent":["import { type Signatory } from '@gusto/embedded-api/models/components/signatory'\nimport { createCompoundContext } from '@/components/Base'\nimport type { RequireAtLeastOne } from '@/types/Helpers'\n\n/**\n * Initial values for the {@link CreateSignatory} form fields. At least one field must be provided.\n *\n * @public\n */\nexport type CreateSignatoryDefaultValues = RequireAtLeastOne<\n Pick<Signatory, 'firstName' | 'lastName' | 'email' | 'title' | 'phone' | 'birthday'> &\n Pick<\n NonNullable<Signatory['homeAddress']>,\n 'street1' | 'street2' | 'city' | 'state' | 'zip'\n > & {\n ssn?: string\n }\n>\ntype CreateSignatoryContextType = {\n isPending: boolean\n currentSignatory?: Signatory\n}\n\nconst [useCreateSignatory, CreateSignatoryProvider] =\n createCompoundContext<CreateSignatoryContextType>('CreateSignatoryContext')\n\nexport {\n /** @internal */\n useCreateSignatory,\n /** @internal */\n CreateSignatoryProvider,\n}\n"],"names":["useCreateSignatory","CreateSignatoryProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;;AAuBA,MAAM,CAACA,GAAoBC,CAAuB,IAChDC,EAAkD,wBAAwB;"}
@@ -9,13 +9,15 @@ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
9
  import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
10
  import "@gusto/embedded-api/models/errors/unprocessableentityerror";
11
11
  import "@gusto/embedded-api/models/errors/httpclienterrors";
12
+ import "dompurify";
13
+ import "../../../../contexts/LocaleProvider/useLocale.js";
12
14
  import "../../../../shared/constants.js";
13
15
  import "../../../../contexts/ComponentAdapter/useComponentContext.js";
14
16
  import "../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
15
17
  import { createCompoundContext as t } from "../../../Base/createCompoundContext.js";
16
- const [c, d] = t("InviteSignatoryContext");
18
+ const [s, u] = t("InviteSignatoryContext");
17
19
  export {
18
- d as InviteSignatoryProvider,
19
- c as useInviteSignatory
20
+ u as InviteSignatoryProvider,
21
+ s as useInviteSignatory
20
22
  };
21
23
  //# sourceMappingURL=useInviteSignatory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useInviteSignatory.js","sources":["../../../../../src/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.ts"],"sourcesContent":["import { type Signatory } from '@gusto/embedded-api/models/components/signatory'\nimport { createCompoundContext } from '@/components/Base'\nimport type { RequireAtLeastOne } from '@/types/Helpers'\n\ntype InviteSignatoryContextType = {\n isPending: boolean\n}\n\n/**\n * Default values for the invite signatory form fields: `firstName`, `lastName`, `email`,\n * `confirmEmail`, and `title`. At least one field is required.\n *\n * @public\n */\nexport type InviteSignatoryDefaultValues = RequireAtLeastOne<\n Pick<Signatory, 'firstName' | 'lastName' | 'email' | 'title'> & {\n confirmEmail: string\n }\n>\n\nconst [useInviteSignatory, InviteSignatoryProvider] =\n createCompoundContext<InviteSignatoryContextType>('InviteSignatoryContext')\n\nexport { useInviteSignatory, InviteSignatoryProvider }\n"],"names":["useInviteSignatory","InviteSignatoryProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AAoBA,MAAM,CAACA,GAAoBC,CAAuB,IAChDC,EAAkD,wBAAwB;"}
1
+ {"version":3,"file":"useInviteSignatory.js","sources":["../../../../../src/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.ts"],"sourcesContent":["import { type Signatory } from '@gusto/embedded-api/models/components/signatory'\nimport { createCompoundContext } from '@/components/Base'\nimport type { RequireAtLeastOne } from '@/types/Helpers'\n\ntype InviteSignatoryContextType = {\n isPending: boolean\n}\n\n/**\n * Default values for the invite signatory form fields: `firstName`, `lastName`, `email`,\n * `confirmEmail`, and `title`. At least one field is required.\n *\n * @public\n */\nexport type InviteSignatoryDefaultValues = RequireAtLeastOne<\n Pick<Signatory, 'firstName' | 'lastName' | 'email' | 'title'> & {\n confirmEmail: string\n }\n>\n\nconst [useInviteSignatory, InviteSignatoryProvider] =\n createCompoundContext<InviteSignatoryContextType>('InviteSignatoryContext')\n\nexport { useInviteSignatory, InviteSignatoryProvider }\n"],"names":["useInviteSignatory","InviteSignatoryProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;;AAoBA,MAAM,CAACA,GAAoBC,CAAuB,IAChDC,EAAkD,wBAAwB;"}
@@ -9,17 +9,19 @@ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
9
  import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
10
  import "@gusto/embedded-api/models/errors/unprocessableentityerror";
11
11
  import "@gusto/embedded-api/models/errors/httpclienterrors";
12
+ import "dompurify";
13
+ import "../../../contexts/LocaleProvider/useLocale.js";
12
14
  import "../../../shared/constants.js";
13
15
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
14
16
  import "../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
15
17
  import { createCompoundContext as t } from "../../Base/createCompoundContext.js";
16
- const v = {
18
+ const C = {
17
19
  createSignatory: "createSignatory",
18
20
  inviteSignatory: "inviteSignatory"
19
- }, [x, C] = t("AssignSignatoryContext");
21
+ }, [u, f] = t("AssignSignatoryContext");
20
22
  export {
21
- C as AssignSignatoryProvider,
22
- v as SignatoryAssignmentMode,
23
- x as useAssignSignatory
23
+ f as AssignSignatoryProvider,
24
+ C as SignatoryAssignmentMode,
25
+ u as useAssignSignatory
24
26
  };
25
27
  //# sourceMappingURL=useAssignSignatory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAssignSignatory.js","sources":["../../../../src/components/Company/AssignSignatory/useAssignSignatory.ts"],"sourcesContent":["import { type CreateSignatoryDefaultValues } from './CreateSignatory'\nimport { type InviteSignatoryDefaultValues } from './InviteSignatory'\nimport type { BaseComponentInterface } from '@/components/Base'\nimport { createCompoundContext } from '@/components/Base'\nimport type { RequireAtLeastOne } from '@/types/Helpers'\n\n/** @internal */\nexport const SignatoryAssignmentMode = {\n createSignatory: 'createSignatory',\n inviteSignatory: 'inviteSignatory',\n} as const\n\n/**\n * Default values for the create and invite forms rendered by {@link AssignSignatory}.\n *\n * @remarks\n * At least one of `create` or `invite` must be provided.\n *\n * @public\n */\nexport type AssignSignatoryDefaultValues = RequireAtLeastOne<{\n create?: CreateSignatoryDefaultValues\n invite?: InviteSignatoryDefaultValues\n}>\n\ntype AssignSignatoryContextType = {\n companyId: string\n signatoryId?: string\n defaultValues?: AssignSignatoryDefaultValues\n onSignatoryAssignmentModeChange: (mode: string) => void\n onSignatoryFormEvent: BaseComponentInterface['onEvent']\n}\n\nconst [useAssignSignatory, AssignSignatoryProvider] =\n createCompoundContext<AssignSignatoryContextType>('AssignSignatoryContext')\n\nexport { useAssignSignatory, AssignSignatoryProvider }\n"],"names":["SignatoryAssignmentMode","useAssignSignatory","AssignSignatoryProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AAOO,MAAMA,IAA0B;AAAA,EACrC,iBAAiB;AAAA,EACjB,iBAAiB;AACnB,GAuBM,CAACC,GAAoBC,CAAuB,IAChDC,EAAkD,wBAAwB;"}
1
+ {"version":3,"file":"useAssignSignatory.js","sources":["../../../../src/components/Company/AssignSignatory/useAssignSignatory.ts"],"sourcesContent":["import { type CreateSignatoryDefaultValues } from './CreateSignatory'\nimport { type InviteSignatoryDefaultValues } from './InviteSignatory'\nimport type { BaseComponentInterface } from '@/components/Base'\nimport { createCompoundContext } from '@/components/Base'\nimport type { RequireAtLeastOne } from '@/types/Helpers'\n\n/** @internal */\nexport const SignatoryAssignmentMode = {\n createSignatory: 'createSignatory',\n inviteSignatory: 'inviteSignatory',\n} as const\n\n/**\n * Default values for the create and invite forms rendered by {@link AssignSignatory}.\n *\n * @remarks\n * At least one of `create` or `invite` must be provided.\n *\n * @public\n */\nexport type AssignSignatoryDefaultValues = RequireAtLeastOne<{\n create?: CreateSignatoryDefaultValues\n invite?: InviteSignatoryDefaultValues\n}>\n\ntype AssignSignatoryContextType = {\n companyId: string\n signatoryId?: string\n defaultValues?: AssignSignatoryDefaultValues\n onSignatoryAssignmentModeChange: (mode: string) => void\n onSignatoryFormEvent: BaseComponentInterface['onEvent']\n}\n\nconst [useAssignSignatory, AssignSignatoryProvider] =\n createCompoundContext<AssignSignatoryContextType>('AssignSignatoryContext')\n\nexport { useAssignSignatory, AssignSignatoryProvider }\n"],"names":["SignatoryAssignmentMode","useAssignSignatory","AssignSignatoryProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;;AAOO,MAAMA,IAA0B;AAAA,EACrC,iBAAiB;AAAA,EACjB,iBAAiB;AACnB,GAuBM,CAACC,GAAoBC,CAAuB,IAChDC,EAAkD,wBAAwB;"}
@@ -9,13 +9,15 @@ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
9
  import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
10
  import "@gusto/embedded-api/models/errors/unprocessableentityerror";
11
11
  import "@gusto/embedded-api/models/errors/httpclienterrors";
12
+ import "dompurify";
13
+ import "../../../../contexts/LocaleProvider/useLocale.js";
12
14
  import "../../../../shared/constants.js";
13
15
  import "../../../../contexts/ComponentAdapter/useComponentContext.js";
14
16
  import "../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
15
17
  import { createCompoundContext as o } from "../../../Base/createCompoundContext.js";
16
- const [d, s] = o("BankAccountContext");
18
+ const [F, f] = o("BankAccountContext");
17
19
  export {
18
- s as BankAccountFormProvider,
19
- d as useBankAccountForm
20
+ f as BankAccountFormProvider,
21
+ F as useBankAccountForm
20
22
  };
21
23
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sources":["../../../../../src/components/Company/BankAccount/BankAccountForm/context.ts"],"sourcesContent":["import { createCompoundContext } from '@/components/Base'\nimport { type OnEventType } from '@/components/Base/useBase'\nimport { type EventType } from '@/shared/constants'\n\ntype BankAccountFormContextType = {\n isPending: boolean\n isEditing: boolean\n onEvent: OnEventType<EventType, unknown>\n}\n\nconst [useBankAccountForm, BankAccountFormProvider] =\n createCompoundContext<BankAccountFormContextType>('BankAccountContext')\n\nexport { useBankAccountForm, BankAccountFormProvider }\n"],"names":["useBankAccountForm","BankAccountFormProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AAUA,MAAM,CAACA,GAAoBC,CAAuB,IAChDC,EAAkD,oBAAoB;"}
1
+ {"version":3,"file":"context.js","sources":["../../../../../src/components/Company/BankAccount/BankAccountForm/context.ts"],"sourcesContent":["import { createCompoundContext } from '@/components/Base'\nimport { type OnEventType } from '@/components/Base/useBase'\nimport { type EventType } from '@/shared/constants'\n\ntype BankAccountFormContextType = {\n isPending: boolean\n isEditing: boolean\n onEvent: OnEventType<EventType, unknown>\n}\n\nconst [useBankAccountForm, BankAccountFormProvider] =\n createCompoundContext<BankAccountFormContextType>('BankAccountContext')\n\nexport { useBankAccountForm, BankAccountFormProvider }\n"],"names":["useBankAccountForm","BankAccountFormProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;;AAUA,MAAM,CAACA,GAAoBC,CAAuB,IAChDC,EAAkD,oBAAoB;"}
@@ -9,15 +9,17 @@ import "@gusto/embedded-api/models/errors/gustoembeddederror";
9
9
  import "@gusto/embedded-api/models/errors/sdkvalidationerror";
10
10
  import "@gusto/embedded-api/models/errors/unprocessableentityerror";
11
11
  import "@gusto/embedded-api/models/errors/httpclienterrors";
12
+ import "dompurify";
13
+ import "../../../../contexts/LocaleProvider/useLocale.js";
12
14
  import "../../../../shared/constants.js";
13
15
  import "../../../../contexts/ComponentAdapter/useComponentContext.js";
14
16
  import "../../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
15
17
  import { createCompoundContext as t } from "../../../Base/createCompoundContext.js";
16
- const [d, f] = t(
18
+ const [v, y] = t(
17
19
  "CompanyDocumentListContext"
18
20
  );
19
21
  export {
20
- f as DocumentListProvider,
21
- d as useDocumentList
22
+ y as DocumentListProvider,
23
+ v as useDocumentList
22
24
  };
23
25
  //# sourceMappingURL=useDocumentList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useDocumentList.js","sources":["../../../../../src/components/Company/DocumentSigner/DocumentList/useDocumentList.ts"],"sourcesContent":["import { type Signatory } from '@gusto/embedded-api/models/components/signatory'\nimport { type Form as FormSchema } from '@gusto/embedded-api/models/components/form'\nimport { createCompoundContext } from '@/components/Base'\n\ntype DocumentListContextType = {\n companyForms: FormSchema[]\n documentListError: Error | null\n handleRequestFormToSign: (form: FormSchema) => void\n handleChangeSignatory: () => void\n handleContinue: () => void\n isSelfSignatory: boolean\n signatory?: Signatory\n}\n\nconst [useDocumentList, DocumentListProvider] = createCompoundContext<DocumentListContextType>(\n 'CompanyDocumentListContext',\n)\n\nexport { useDocumentList, DocumentListProvider }\n"],"names":["useDocumentList","DocumentListProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;AAcA,MAAM,CAACA,GAAiBC,CAAoB,IAAIC;AAAA,EAC9C;AACF;"}
1
+ {"version":3,"file":"useDocumentList.js","sources":["../../../../../src/components/Company/DocumentSigner/DocumentList/useDocumentList.ts"],"sourcesContent":["import { type Signatory } from '@gusto/embedded-api/models/components/signatory'\nimport { type Form as FormSchema } from '@gusto/embedded-api/models/components/form'\nimport { createCompoundContext } from '@/components/Base'\n\ntype DocumentListContextType = {\n companyForms: FormSchema[]\n documentListError: Error | null\n handleRequestFormToSign: (form: FormSchema) => void\n handleChangeSignatory: () => void\n handleContinue: () => void\n isSelfSignatory: boolean\n signatory?: Signatory\n}\n\nconst [useDocumentList, DocumentListProvider] = createCompoundContext<DocumentListContextType>(\n 'CompanyDocumentListContext',\n)\n\nexport { useDocumentList, DocumentListProvider }\n"],"names":["useDocumentList","DocumentListProvider","createCompoundContext"],"mappings":";;;;;;;;;;;;;;;;;AAcA,MAAM,CAACA,GAAiBC,CAAoB,IAAIC;AAAA,EAC9C;AACF;"}
@@ -1,5 +1,5 @@
1
1
  import { z as o } from "zod";
2
- import { FilingForm as r, TaxPayerType as e } from "@gusto/embedded-api/models/components/federaltaxdetails";
2
+ import { FilingForm as r, TaxPayerType as t } from "@gusto/embedded-api/models/components/federaltaxdetails";
3
3
  import "react/jsx-runtime";
4
4
  import "react";
5
5
  import "react-error-boundary";
@@ -11,21 +11,23 @@ import "@gusto/embedded-api/models/errors/gustoembeddederror";
11
11
  import "@gusto/embedded-api/models/errors/sdkvalidationerror";
12
12
  import "@gusto/embedded-api/models/errors/unprocessableentityerror";
13
13
  import "@gusto/embedded-api/models/errors/httpclienterrors";
14
+ import "dompurify";
15
+ import "../../../contexts/LocaleProvider/useLocale.js";
14
16
  import "../../../shared/constants.js";
15
17
  import "../../../contexts/ComponentAdapter/useComponentContext.js";
16
18
  import "../../../contexts/LoadingIndicatorProvider/useLoadingIndicator.js";
17
- import { createCompoundContext as t } from "../../Base/createCompoundContext.js";
18
- const b = o.object({
19
+ import { createCompoundContext as e } from "../../Base/createCompoundContext.js";
20
+ const v = o.object({
19
21
  federalEin: o.string().optional(),
20
- taxPayerType: o.enum(Object.values(e)).optional(),
22
+ taxPayerType: o.enum(Object.values(t)).optional(),
21
23
  filingForm: o.enum(Object.values(r)).optional(),
22
24
  legalName: o.string().min(1)
23
- }), [j, v] = t(
25
+ }), [P, O] = e(
24
26
  "CompanyFederalTaxesContext"
25
27
  );
26
28
  export {
27
- b as FederalTaxFormSchema,
28
- v as FederalTaxesProvider,
29
- j as useFederalTaxes
29
+ v as FederalTaxFormSchema,
30
+ O as FederalTaxesProvider,
31
+ P as useFederalTaxes
30
32
  };
31
33
  //# sourceMappingURL=useFederalTaxes.js.map