@gusto/embedded-react-sdk 0.35.0-rc.3 → 0.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +20 -11
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js +58 -57
- package/dist/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.js.map +1 -1
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js +18 -18
- package/dist/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.js.map +1 -1
- package/dist/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.js +17 -13
- package/dist/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js +1 -1
- package/dist/components/Company/DocumentSigner/DocumentList/DocumentList.js.map +1 -1
- package/dist/components/Company/DocumentSigner/DocumentSigner.js +5 -5
- package/dist/components/Company/DocumentSigner/DocumentSigner.js.map +1 -1
- package/dist/components/Employee/Compensation/Compensation.js +21 -21
- package/dist/components/Employee/Compensation/Compensation.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/FederalForm.d.ts +2 -8
- package/dist/components/Employee/FederalTaxes/FederalForm.js +29 -84
- package/dist/components/Employee/FederalTaxes/FederalForm.js.map +1 -1
- package/dist/components/Employee/FederalTaxes/FederalTaxes.js +44 -49
- package/dist/components/Employee/FederalTaxes/FederalTaxes.js.map +1 -1
- package/dist/components/Employee/Taxes/FederalForm.d.ts +2 -8
- package/dist/components/Employee/Taxes/FederalForm.js +29 -84
- package/dist/components/Employee/Taxes/FederalForm.js.map +1 -1
- package/dist/components/Employee/Taxes/Taxes.js +69 -74
- package/dist/components/Employee/Taxes/Taxes.js.map +1 -1
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +6 -6
- package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js +12 -12
- package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerList.js.map +1 -1
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +2 -2
- package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
- package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
- package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js +6 -4
- package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js.map +1 -1
- package/dist/components/Payroll/PayrollList/PayrollList.js +8 -6
- package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
- package/dist/components/Payroll/helpers.d.ts +1 -1
- package/dist/components/Payroll/helpers.js.map +1 -1
- package/package.json +9 -9
package/CHANGELOG.md
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 0.
|
|
3
|
+
## 0.36.0
|
|
4
4
|
|
|
5
5
|
### Features & Enhancements
|
|
6
6
|
|
|
7
7
|
- Integrate tax withholding config into off-cycle payroll creation
|
|
8
8
|
- Add gross up modal to PayrollConfiguration kebab menu
|
|
9
|
+
- Add observability hooks with PII protection
|
|
9
10
|
|
|
10
11
|
### Fixes
|
|
11
12
|
|
|
@@ -14,9 +15,12 @@
|
|
|
14
15
|
- Updated to use correct translation keys
|
|
15
16
|
- Handle date field serialization in state taxes form
|
|
16
17
|
- Preset payment date based on company payment speed
|
|
18
|
+
- Revert react-aria upgrade and block in dependabot
|
|
17
19
|
|
|
18
20
|
### Chores & Maintenance
|
|
19
21
|
|
|
22
|
+
- Update embedded api to 0.12.4
|
|
23
|
+
- Convert Cursor commands to Claude Code skills
|
|
20
24
|
- Add comprehensive tests for rem conversion utilities
|
|
21
25
|
- Improve Cursor configuration for team productivity
|
|
22
26
|
- Upgrade vitest to v4, coverage-v8 to v4, and plugin-react-swc to v4
|
|
@@ -25,17 +29,22 @@
|
|
|
25
29
|
- Bump dompurify from 3.3.2 to 3.3.3
|
|
26
30
|
- Bump react-aria from 3.45.0 to 3.47.0
|
|
27
31
|
- Bump sass-embedded from 1.97.3 to 1.98.0
|
|
28
|
-
- Bump typescript-eslint from 8.56.1 to 8.57.
|
|
29
|
-
- Bump eslint-plugin-storybook from 10.2.15 to 10.2.
|
|
30
|
-
- Bump @storybook/react-vite from 10.2.15 to 10.2.
|
|
31
|
-
- Bump @storybook/addon-docs from 10.2.14 to 10.2.
|
|
32
|
-
- Bump @storybook/addon-a11y from 10.2.16 to 10.2.
|
|
33
|
-
- Bump @storybook/addon-onboarding from 10.2.15 to 10.2.
|
|
34
|
-
- Bump storybook from 10.2.16 to 10.2.
|
|
35
|
-
- Bump lint-staged from 16.3.2 to 16.
|
|
32
|
+
- Bump typescript-eslint from 8.56.1 to 8.57.1
|
|
33
|
+
- Bump eslint-plugin-storybook from 10.2.15 to 10.2.19
|
|
34
|
+
- Bump @storybook/react-vite from 10.2.15 to 10.2.19
|
|
35
|
+
- Bump @storybook/addon-docs from 10.2.14 to 10.2.19
|
|
36
|
+
- Bump @storybook/addon-a11y from 10.2.16 to 10.2.19
|
|
37
|
+
- Bump @storybook/addon-onboarding from 10.2.15 to 10.2.19
|
|
38
|
+
- Bump storybook from 10.2.16 to 10.2.19
|
|
39
|
+
- Bump lint-staged from 16.3.2 to 16.4.0
|
|
40
|
+
- Bump msw from 2.12.10 to 2.12.12
|
|
36
41
|
- Bump eslint from 9.39.3 to 9.39.4
|
|
37
|
-
- Bump @commitlint/cli from 20.4.3 to 20.
|
|
38
|
-
- Bump @commitlint/config-conventional from 20.4.3 to 20.
|
|
42
|
+
- Bump @commitlint/cli from 20.4.3 to 20.5.0
|
|
43
|
+
- Bump @commitlint/config-conventional from 20.4.3 to 20.5.0
|
|
44
|
+
|
|
45
|
+
## 0.35.0 (unpublished)
|
|
46
|
+
|
|
47
|
+
> This version was unpublished from NPM due to a critical bug caused by a react-aria upgrade that required a rollback. All changes are included in 0.36.0.
|
|
39
48
|
|
|
40
49
|
## 0.34.0
|
|
41
50
|
|
|
@@ -1,43 +1,44 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { useForm as q, FormProvider as
|
|
3
|
-
import { zodResolver as
|
|
4
|
-
import
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
1
|
+
import { jsx as r, jsxs as w, Fragment as Y } from "react/jsx-runtime";
|
|
2
|
+
import { useForm as q, FormProvider as x } from "react-hook-form";
|
|
3
|
+
import { zodResolver as z } from "@hookform/resolvers/zod";
|
|
4
|
+
import k from "classnames";
|
|
5
|
+
import { RFCDate as B } from "@gusto/embedded-api/types/rfcdate";
|
|
6
|
+
import { useSignatoriesListSuspense as G } from "@gusto/embedded-api/react-query/signatoriesList";
|
|
7
|
+
import { useSignatoriesCreateMutation as j } from "@gusto/embedded-api/react-query/signatoriesCreate";
|
|
8
|
+
import { useSignatoriesUpdateMutation as L } from "@gusto/embedded-api/react-query/signatoriesUpdate";
|
|
9
|
+
import { useSignatoriesDeleteMutation as H } from "@gusto/embedded-api/react-query/signatoriesDelete";
|
|
10
|
+
import { CreateSignatoryForm as I } from "./CreateSignatoryForm.js";
|
|
11
|
+
import { Actions as J } from "./Actions.js";
|
|
12
|
+
import K from "./CreateSignatory.module.scss.js";
|
|
13
|
+
import { CreateSignatoryProvider as Q } from "./useCreateSignatory.js";
|
|
14
|
+
import { generateCreateSignatorySchema as W } from "./Schema.js";
|
|
15
|
+
import { Form as X } from "../../../Common/Form/Form.js";
|
|
16
|
+
import { useI18n as Z } from "../../../../i18n/I18n.js";
|
|
17
|
+
import { BaseComponent as $ } from "../../../Base/Base.js";
|
|
18
|
+
import { useBase as V } from "../../../Base/useBase.js";
|
|
19
|
+
import { Flex as tt } from "../../../Common/Flex/Flex.js";
|
|
19
20
|
import { companyEvents as c } from "../../../../shared/constants.js";
|
|
20
21
|
import "react-i18next";
|
|
21
22
|
import "../../../../contexts/ComponentAdapter/useComponentContext.js";
|
|
22
23
|
import "react";
|
|
23
|
-
import { formatDateToStringDate as
|
|
24
|
-
import { useMaskedTransform as
|
|
25
|
-
function
|
|
26
|
-
return /* @__PURE__ */
|
|
24
|
+
import { formatDateToStringDate as et } from "../../../../helpers/dateFormatting.js";
|
|
25
|
+
import { useMaskedTransform as rt, commonMasks as ot } from "../../../../helpers/mask.js";
|
|
26
|
+
function Tt(o) {
|
|
27
|
+
return /* @__PURE__ */ r($, { ...o, children: /* @__PURE__ */ r(it, { ...o, children: o.children }) });
|
|
27
28
|
}
|
|
28
|
-
function
|
|
29
|
-
companyId:
|
|
29
|
+
function it({
|
|
30
|
+
companyId: o,
|
|
30
31
|
signatoryId: f,
|
|
31
32
|
defaultValues: e,
|
|
32
33
|
className: A,
|
|
33
34
|
children: d
|
|
34
35
|
}) {
|
|
35
|
-
|
|
36
|
-
const { onEvent: i, baseSubmitHandler: l } =
|
|
37
|
-
data: {
|
|
38
|
-
} =
|
|
39
|
-
companyUuid:
|
|
40
|
-
}),
|
|
36
|
+
Z("Company.AssignSignatory");
|
|
37
|
+
const { onEvent: i, baseSubmitHandler: l } = V(), N = rt(ot.phoneMask), {
|
|
38
|
+
data: { signatories: C }
|
|
39
|
+
} = G({
|
|
40
|
+
companyUuid: o
|
|
41
|
+
}), n = C, t = n.find((s) => s.uuid === f), p = j(), y = L(), g = H(), u = t?.birthday ?? e?.birthday, D = {
|
|
41
42
|
firstName: t?.firstName ?? e?.firstName ?? "",
|
|
42
43
|
lastName: t?.lastName ?? e?.lastName ?? "",
|
|
43
44
|
email: t?.email ?? e?.email ?? "",
|
|
@@ -49,29 +50,29 @@ function ot({
|
|
|
49
50
|
city: t?.homeAddress?.city ?? e?.city,
|
|
50
51
|
state: t?.homeAddress?.state ?? e?.state,
|
|
51
52
|
zip: t?.homeAddress?.zip ?? e?.zip,
|
|
52
|
-
...
|
|
53
|
+
...u ? { birthday: new Date(u) } : {}
|
|
53
54
|
}, h = q({
|
|
54
|
-
resolver:
|
|
55
|
-
defaultValues:
|
|
56
|
-
}),
|
|
57
|
-
await l(
|
|
58
|
-
const { street1: b, street2:
|
|
59
|
-
...
|
|
60
|
-
birthday:
|
|
55
|
+
resolver: z(W(t?.hasSsn)),
|
|
56
|
+
defaultValues: D
|
|
57
|
+
}), M = async (s) => {
|
|
58
|
+
await l(s, async (R) => {
|
|
59
|
+
const { street1: b, street2: P, city: v, state: U, zip: E, birthday: T, email: F, ssn: a, ...O } = R, _ = et(T) || "", S = {
|
|
60
|
+
...O,
|
|
61
|
+
birthday: new B(_),
|
|
61
62
|
homeAddress: {
|
|
62
63
|
street1: b,
|
|
63
|
-
street2:
|
|
64
|
-
city:
|
|
65
|
-
state:
|
|
66
|
-
zip:
|
|
64
|
+
street2: P,
|
|
65
|
+
city: v,
|
|
66
|
+
state: U,
|
|
67
|
+
zip: E
|
|
67
68
|
}
|
|
68
69
|
};
|
|
69
70
|
if (t) {
|
|
70
71
|
const m = await y.mutateAsync({
|
|
71
72
|
request: {
|
|
72
|
-
companyUuid:
|
|
73
|
+
companyUuid: o,
|
|
73
74
|
signatoryUuid: t.uuid,
|
|
74
|
-
|
|
75
|
+
signatoryUpdateRequest: {
|
|
75
76
|
version: t.version,
|
|
76
77
|
...a ? { ssn: a } : {},
|
|
77
78
|
...S
|
|
@@ -80,17 +81,17 @@ function ot({
|
|
|
80
81
|
});
|
|
81
82
|
i(c.COMPANY_SIGNATORY_UPDATED, m.signatory);
|
|
82
83
|
} else {
|
|
83
|
-
|
|
84
|
+
n[0]?.uuid && await g.mutateAsync({
|
|
84
85
|
request: {
|
|
85
|
-
companyUuid:
|
|
86
|
-
signatoryUuid:
|
|
86
|
+
companyUuid: o,
|
|
87
|
+
signatoryUuid: n[0].uuid
|
|
87
88
|
}
|
|
88
89
|
});
|
|
89
90
|
const m = await p.mutateAsync({
|
|
90
91
|
request: {
|
|
91
|
-
companyUuid:
|
|
92
|
-
|
|
93
|
-
email:
|
|
92
|
+
companyUuid: o,
|
|
93
|
+
signatoryCreateRequest: {
|
|
94
|
+
email: F,
|
|
94
95
|
ssn: a || "",
|
|
95
96
|
...S
|
|
96
97
|
}
|
|
@@ -101,21 +102,21 @@ function ot({
|
|
|
101
102
|
i(c.COMPANY_CREATE_SIGNATORY_DONE);
|
|
102
103
|
});
|
|
103
104
|
};
|
|
104
|
-
return /* @__PURE__ */
|
|
105
|
-
|
|
105
|
+
return /* @__PURE__ */ r("section", { className: k(K.container, A), children: /* @__PURE__ */ r(
|
|
106
|
+
Q,
|
|
106
107
|
{
|
|
107
108
|
value: {
|
|
108
|
-
isPending: p.isPending ||
|
|
109
|
+
isPending: p.isPending || g.isPending || y.isPending,
|
|
109
110
|
currentSignatory: t
|
|
110
111
|
},
|
|
111
|
-
children: /* @__PURE__ */
|
|
112
|
-
/* @__PURE__ */
|
|
113
|
-
/* @__PURE__ */
|
|
112
|
+
children: /* @__PURE__ */ r(x, { ...h, children: /* @__PURE__ */ r(X, { onSubmit: h.handleSubmit(M), children: /* @__PURE__ */ r(tt, { flexDirection: "column", gap: 32, children: d || /* @__PURE__ */ w(Y, { children: [
|
|
113
|
+
/* @__PURE__ */ r(I, {}),
|
|
114
|
+
/* @__PURE__ */ r(J, {})
|
|
114
115
|
] }) }) }) })
|
|
115
116
|
}
|
|
116
117
|
) });
|
|
117
118
|
}
|
|
118
119
|
export {
|
|
119
|
-
|
|
120
|
+
Tt as CreateSignatory
|
|
120
121
|
};
|
|
121
122
|
//# sourceMappingURL=CreateSignatory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateSignatory.js","sources":["../../../../../src/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.tsx"],"sourcesContent":["import { FormProvider, useForm } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport classNames from 'classnames'\nimport { useSignatoriesListSuspense } from '@gusto/embedded-api/react-query/signatoriesList'\nimport { useSignatoriesCreateMutation } from '@gusto/embedded-api/react-query/signatoriesCreate'\nimport { useSignatoriesUpdateMutation } from '@gusto/embedded-api/react-query/signatoriesUpdate'\nimport { useSignatoriesDeleteMutation } from '@gusto/embedded-api/react-query/signatoriesDelete'\nimport { type CreateSignatoryInputs } from './CreateSignatoryForm'\nimport { CreateSignatoryForm } from './CreateSignatoryForm'\nimport { Actions } from './Actions'\nimport styles from './CreateSignatory.module.scss'\nimport type { CreateSignatoryDefaultValues } from './useCreateSignatory'\nimport { CreateSignatoryProvider } from './useCreateSignatory'\nimport { generateCreateSignatorySchema } from './Schema'\nimport { Form } from '@/components/Common/Form'\nimport { useI18n } from '@/i18n'\nimport {\n useBase,\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { Flex } from '@/components/Common'\nimport { companyEvents } from '@/shared/constants'\nimport { formatDateToStringDate } from '@/helpers/dateFormatting'\nimport { commonMasks, useMaskedTransform } from '@/helpers/mask'\n\ninterface CreateSignatoryProps extends CommonComponentInterface {\n companyId: string\n signatoryId?: string\n defaultValues?: CreateSignatoryDefaultValues\n}\n\nexport function CreateSignatory(props: CreateSignatoryProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({\n companyId,\n signatoryId,\n defaultValues,\n className,\n children,\n}: CreateSignatoryProps) {\n useI18n('Company.AssignSignatory')\n const { onEvent, baseSubmitHandler } = useBase()\n const transformPhone = useMaskedTransform(commonMasks.phoneMask)\n\n const {\n data: { signatoryList },\n } = useSignatoriesListSuspense({\n companyUuid: companyId,\n })\n const signatories = signatoryList!\n\n const currentSignatory = signatories.find(signatory => signatory.uuid === signatoryId)\n\n const createSignatoryMutation = useSignatoriesCreateMutation()\n const updateSignatoryMutation = useSignatoriesUpdateMutation()\n const deleteSignatoryMutation = useSignatoriesDeleteMutation()\n\n const defaultBirthday = currentSignatory?.birthday ?? defaultValues?.birthday\n\n const createSignatoryDefaultValues = {\n firstName: currentSignatory?.firstName ?? defaultValues?.firstName ?? '',\n lastName: currentSignatory?.lastName ?? defaultValues?.lastName ?? '',\n email: currentSignatory?.email ?? defaultValues?.email ?? '',\n title: currentSignatory?.title ?? defaultValues?.title ?? '',\n phone: transformPhone(currentSignatory?.phone ?? defaultValues?.phone ?? ''),\n ssn: currentSignatory?.hasSsn ? '' : defaultValues?.ssn,\n street1: currentSignatory?.homeAddress?.street1 ?? defaultValues?.street1,\n street2: currentSignatory?.homeAddress?.street2 ?? defaultValues?.street2,\n city: currentSignatory?.homeAddress?.city ?? defaultValues?.city,\n state: currentSignatory?.homeAddress?.state ?? defaultValues?.state,\n zip: currentSignatory?.homeAddress?.zip ?? defaultValues?.zip,\n ...(defaultBirthday ? { birthday: new Date(defaultBirthday) } : {}),\n }\n\n const formMethods = useForm<CreateSignatoryInputs>({\n resolver: zodResolver(generateCreateSignatorySchema(currentSignatory?.hasSsn)),\n defaultValues: createSignatoryDefaultValues,\n })\n\n const onSubmit = async (data: CreateSignatoryInputs) => {\n await baseSubmitHandler(data, async payload => {\n const { street1, street2, city, state, zip, birthday, email, ssn, ...signatoryData } = payload\n\n const commonData = {\n ...signatoryData,\n birthday: formatDateToStringDate(birthday) || '',\n homeAddress: {\n street1,\n street2,\n city,\n state,\n zip,\n },\n }\n\n if (currentSignatory) {\n const updateSignatoryResponse = await updateSignatoryMutation.mutateAsync({\n request: {\n companyUuid: companyId,\n signatoryUuid: currentSignatory.uuid,\n requestBody: {\n version: currentSignatory.version,\n ...(ssn ? { ssn } : {}),\n ...commonData,\n },\n },\n })\n\n onEvent(companyEvents.COMPANY_SIGNATORY_UPDATED, updateSignatoryResponse.signatory)\n } else {\n if (signatories[0]?.uuid) {\n await deleteSignatoryMutation.mutateAsync({\n request: {\n companyUuid: companyId,\n signatoryUuid: signatories[0].uuid,\n },\n })\n }\n const createSignatoryResponse = await createSignatoryMutation.mutateAsync({\n request: {\n companyUuid: companyId,\n requestBody: {\n email,\n ssn: ssn || '',\n ...commonData,\n },\n },\n })\n onEvent(companyEvents.COMPANY_SIGNATORY_CREATED, createSignatoryResponse.signatory)\n }\n onEvent(companyEvents.COMPANY_CREATE_SIGNATORY_DONE)\n })\n }\n\n return (\n <section className={classNames(styles.container, className)}>\n <CreateSignatoryProvider\n value={{\n isPending:\n createSignatoryMutation.isPending ||\n deleteSignatoryMutation.isPending ||\n updateSignatoryMutation.isPending,\n currentSignatory,\n }}\n >\n <FormProvider {...formMethods}>\n <Form onSubmit={formMethods.handleSubmit(onSubmit)}>\n <Flex flexDirection=\"column\" gap={32}>\n {children ? (\n children\n ) : (\n <>\n <CreateSignatoryForm />\n <Actions />\n </>\n )}\n </Flex>\n </Form>\n </FormProvider>\n </CreateSignatoryProvider>\n </section>\n )\n}\n"],"names":["CreateSignatory","props","jsx","BaseComponent","Root","companyId","signatoryId","defaultValues","className","children","useI18n","onEvent","baseSubmitHandler","useBase","transformPhone","useMaskedTransform","commonMasks","signatoryList","useSignatoriesListSuspense","signatories","currentSignatory","signatory","createSignatoryMutation","useSignatoriesCreateMutation","updateSignatoryMutation","useSignatoriesUpdateMutation","deleteSignatoryMutation","useSignatoriesDeleteMutation","defaultBirthday","createSignatoryDefaultValues","formMethods","useForm","zodResolver","generateCreateSignatorySchema","onSubmit","data","payload","street1","street2","city","state","zip","birthday","email","ssn","signatoryData","commonData","formatDateToStringDate","updateSignatoryResponse","companyEvents","createSignatoryResponse","classNames","styles","CreateSignatoryProvider","FormProvider","Form","Flex","jsxs","Fragment","CreateSignatoryForm","Actions"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CreateSignatory.js","sources":["../../../../../src/components/Company/AssignSignatory/CreateSignatory/CreateSignatory.tsx"],"sourcesContent":["import { FormProvider, useForm } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport classNames from 'classnames'\nimport { RFCDate } from '@gusto/embedded-api/types/rfcdate'\nimport { useSignatoriesListSuspense } from '@gusto/embedded-api/react-query/signatoriesList'\nimport { useSignatoriesCreateMutation } from '@gusto/embedded-api/react-query/signatoriesCreate'\nimport { useSignatoriesUpdateMutation } from '@gusto/embedded-api/react-query/signatoriesUpdate'\nimport { useSignatoriesDeleteMutation } from '@gusto/embedded-api/react-query/signatoriesDelete'\nimport { type CreateSignatoryInputs } from './CreateSignatoryForm'\nimport { CreateSignatoryForm } from './CreateSignatoryForm'\nimport { Actions } from './Actions'\nimport styles from './CreateSignatory.module.scss'\nimport type { CreateSignatoryDefaultValues } from './useCreateSignatory'\nimport { CreateSignatoryProvider } from './useCreateSignatory'\nimport { generateCreateSignatorySchema } from './Schema'\nimport { Form } from '@/components/Common/Form'\nimport { useI18n } from '@/i18n'\nimport {\n useBase,\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { Flex } from '@/components/Common'\nimport { companyEvents } from '@/shared/constants'\nimport { formatDateToStringDate } from '@/helpers/dateFormatting'\nimport { commonMasks, useMaskedTransform } from '@/helpers/mask'\n\ninterface CreateSignatoryProps extends CommonComponentInterface {\n companyId: string\n signatoryId?: string\n defaultValues?: CreateSignatoryDefaultValues\n}\n\nexport function CreateSignatory(props: CreateSignatoryProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({\n companyId,\n signatoryId,\n defaultValues,\n className,\n children,\n}: CreateSignatoryProps) {\n useI18n('Company.AssignSignatory')\n const { onEvent, baseSubmitHandler } = useBase()\n const transformPhone = useMaskedTransform(commonMasks.phoneMask)\n\n const {\n data: { signatories: signatoryList },\n } = useSignatoriesListSuspense({\n companyUuid: companyId,\n })\n const signatories = signatoryList!\n\n const currentSignatory = signatories.find(signatory => signatory.uuid === signatoryId)\n\n const createSignatoryMutation = useSignatoriesCreateMutation()\n const updateSignatoryMutation = useSignatoriesUpdateMutation()\n const deleteSignatoryMutation = useSignatoriesDeleteMutation()\n\n const defaultBirthday = currentSignatory?.birthday ?? defaultValues?.birthday\n\n const createSignatoryDefaultValues = {\n firstName: currentSignatory?.firstName ?? defaultValues?.firstName ?? '',\n lastName: currentSignatory?.lastName ?? defaultValues?.lastName ?? '',\n email: currentSignatory?.email ?? defaultValues?.email ?? '',\n title: currentSignatory?.title ?? defaultValues?.title ?? '',\n phone: transformPhone(currentSignatory?.phone ?? defaultValues?.phone ?? ''),\n ssn: currentSignatory?.hasSsn ? '' : defaultValues?.ssn,\n street1: currentSignatory?.homeAddress?.street1 ?? defaultValues?.street1,\n street2: currentSignatory?.homeAddress?.street2 ?? defaultValues?.street2,\n city: currentSignatory?.homeAddress?.city ?? defaultValues?.city,\n state: currentSignatory?.homeAddress?.state ?? defaultValues?.state,\n zip: currentSignatory?.homeAddress?.zip ?? defaultValues?.zip,\n ...(defaultBirthday ? { birthday: new Date(defaultBirthday) } : {}),\n }\n\n const formMethods = useForm<CreateSignatoryInputs>({\n resolver: zodResolver(generateCreateSignatorySchema(currentSignatory?.hasSsn)),\n defaultValues: createSignatoryDefaultValues,\n })\n\n const onSubmit = async (data: CreateSignatoryInputs) => {\n await baseSubmitHandler(data, async payload => {\n const { street1, street2, city, state, zip, birthday, email, ssn, ...signatoryData } = payload\n\n const birthdayString = formatDateToStringDate(birthday) || ''\n const commonData = {\n ...signatoryData,\n birthday: new RFCDate(birthdayString),\n homeAddress: {\n street1,\n street2,\n city,\n state,\n zip,\n },\n }\n\n if (currentSignatory) {\n const updateSignatoryResponse = await updateSignatoryMutation.mutateAsync({\n request: {\n companyUuid: companyId,\n signatoryUuid: currentSignatory.uuid,\n signatoryUpdateRequest: {\n version: currentSignatory.version!,\n ...(ssn ? { ssn } : {}),\n ...commonData,\n },\n },\n })\n\n onEvent(companyEvents.COMPANY_SIGNATORY_UPDATED, updateSignatoryResponse.signatory)\n } else {\n if (signatories[0]?.uuid) {\n await deleteSignatoryMutation.mutateAsync({\n request: {\n companyUuid: companyId,\n signatoryUuid: signatories[0].uuid,\n },\n })\n }\n const createSignatoryResponse = await createSignatoryMutation.mutateAsync({\n request: {\n companyUuid: companyId,\n signatoryCreateRequest: {\n email,\n ssn: ssn || '',\n ...commonData,\n },\n },\n })\n onEvent(companyEvents.COMPANY_SIGNATORY_CREATED, createSignatoryResponse.signatory)\n }\n onEvent(companyEvents.COMPANY_CREATE_SIGNATORY_DONE)\n })\n }\n\n return (\n <section className={classNames(styles.container, className)}>\n <CreateSignatoryProvider\n value={{\n isPending:\n createSignatoryMutation.isPending ||\n deleteSignatoryMutation.isPending ||\n updateSignatoryMutation.isPending,\n currentSignatory,\n }}\n >\n <FormProvider {...formMethods}>\n <Form onSubmit={formMethods.handleSubmit(onSubmit)}>\n <Flex flexDirection=\"column\" gap={32}>\n {children ? (\n children\n ) : (\n <>\n <CreateSignatoryForm />\n <Actions />\n </>\n )}\n </Flex>\n </Form>\n </FormProvider>\n </CreateSignatoryProvider>\n </section>\n )\n}\n"],"names":["CreateSignatory","props","jsx","BaseComponent","Root","companyId","signatoryId","defaultValues","className","children","useI18n","onEvent","baseSubmitHandler","useBase","transformPhone","useMaskedTransform","commonMasks","signatoryList","useSignatoriesListSuspense","signatories","currentSignatory","signatory","createSignatoryMutation","useSignatoriesCreateMutation","updateSignatoryMutation","useSignatoriesUpdateMutation","deleteSignatoryMutation","useSignatoriesDeleteMutation","defaultBirthday","createSignatoryDefaultValues","formMethods","useForm","zodResolver","generateCreateSignatorySchema","onSubmit","data","payload","street1","street2","city","state","zip","birthday","email","ssn","signatoryData","birthdayString","formatDateToStringDate","commonData","RFCDate","updateSignatoryResponse","companyEvents","createSignatoryResponse","classNames","styles","CreateSignatoryProvider","FormProvider","Form","Flex","jsxs","Fragment","CreateSignatoryForm","Actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAkCO,SAASA,GAAgBC,GAAsD;AACpF,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GACjB,UAAA,gBAAAC,EAACE,MAAM,GAAGH,GAAQ,UAAAA,EAAM,SAAA,CAAS,EAAA,CACnC;AAEJ;AAEA,SAASG,GAAK;AAAA,EACZ,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,eAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AACF,GAAyB;AACvB,EAAAC,EAAQ,yBAAyB;AACjC,QAAM,EAAE,SAAAC,GAAS,mBAAAC,EAAA,IAAsBC,EAAA,GACjCC,IAAiBC,GAAmBC,GAAY,SAAS,GAEzD;AAAA,IACJ,MAAM,EAAE,aAAaC,EAAA;AAAA,EAAc,IACjCC,EAA2B;AAAA,IAC7B,aAAab;AAAA,EAAA,CACd,GACKc,IAAcF,GAEdG,IAAmBD,EAAY,KAAK,CAAAE,MAAaA,EAAU,SAASf,CAAW,GAE/EgB,IAA0BC,EAAA,GAC1BC,IAA0BC,EAAA,GAC1BC,IAA0BC,EAAA,GAE1BC,IAAkBR,GAAkB,YAAYb,GAAe,UAE/DsB,IAA+B;AAAA,IACnC,WAAWT,GAAkB,aAAab,GAAe,aAAa;AAAA,IACtE,UAAUa,GAAkB,YAAYb,GAAe,YAAY;AAAA,IACnE,OAAOa,GAAkB,SAASb,GAAe,SAAS;AAAA,IAC1D,OAAOa,GAAkB,SAASb,GAAe,SAAS;AAAA,IAC1D,OAAOO,EAAeM,GAAkB,SAASb,GAAe,SAAS,EAAE;AAAA,IAC3E,KAAKa,GAAkB,SAAS,KAAKb,GAAe;AAAA,IACpD,SAASa,GAAkB,aAAa,WAAWb,GAAe;AAAA,IAClE,SAASa,GAAkB,aAAa,WAAWb,GAAe;AAAA,IAClE,MAAMa,GAAkB,aAAa,QAAQb,GAAe;AAAA,IAC5D,OAAOa,GAAkB,aAAa,SAASb,GAAe;AAAA,IAC9D,KAAKa,GAAkB,aAAa,OAAOb,GAAe;AAAA,IAC1D,GAAIqB,IAAkB,EAAE,UAAU,IAAI,KAAKA,CAAe,EAAA,IAAM,CAAA;AAAA,EAAC,GAG7DE,IAAcC,EAA+B;AAAA,IACjD,UAAUC,EAAYC,EAA8Bb,GAAkB,MAAM,CAAC;AAAA,IAC7E,eAAeS;AAAA,EAAA,CAChB,GAEKK,IAAW,OAAOC,MAAgC;AACtD,UAAMvB,EAAkBuB,GAAM,OAAMC,MAAW;AAC7C,YAAM,EAAE,SAAAC,GAAS,SAAAC,GAAS,MAAAC,GAAM,OAAAC,GAAO,KAAAC,GAAK,UAAAC,GAAU,OAAAC,GAAO,KAAAC,GAAK,GAAGC,EAAA,IAAkBT,GAEjFU,IAAiBC,GAAuBL,CAAQ,KAAK,IACrDM,IAAa;AAAA,QACjB,GAAGH;AAAA,QACH,UAAU,IAAII,EAAQH,CAAc;AAAA,QACpC,aAAa;AAAA,UACX,SAAAT;AAAA,UACA,SAAAC;AAAA,UACA,MAAAC;AAAA,UACA,OAAAC;AAAA,UACA,KAAAC;AAAA,QAAA;AAAA,MACF;AAGF,UAAIrB,GAAkB;AACpB,cAAM8B,IAA0B,MAAM1B,EAAwB,YAAY;AAAA,UACxE,SAAS;AAAA,YACP,aAAanB;AAAA,YACb,eAAee,EAAiB;AAAA,YAChC,wBAAwB;AAAA,cACtB,SAASA,EAAiB;AAAA,cAC1B,GAAIwB,IAAM,EAAE,KAAAA,EAAA,IAAQ,CAAA;AAAA,cACpB,GAAGI;AAAA,YAAA;AAAA,UACL;AAAA,QACF,CACD;AAED,QAAArC,EAAQwC,EAAc,2BAA2BD,EAAwB,SAAS;AAAA,MACpF,OAAO;AACL,QAAI/B,EAAY,CAAC,GAAG,QAClB,MAAMO,EAAwB,YAAY;AAAA,UACxC,SAAS;AAAA,YACP,aAAarB;AAAA,YACb,eAAec,EAAY,CAAC,EAAE;AAAA,UAAA;AAAA,QAChC,CACD;AAEH,cAAMiC,IAA0B,MAAM9B,EAAwB,YAAY;AAAA,UACxE,SAAS;AAAA,YACP,aAAajB;AAAA,YACb,wBAAwB;AAAA,cACtB,OAAAsC;AAAA,cACA,KAAKC,KAAO;AAAA,cACZ,GAAGI;AAAA,YAAA;AAAA,UACL;AAAA,QACF,CACD;AACD,QAAArC,EAAQwC,EAAc,2BAA2BC,EAAwB,SAAS;AAAA,MACpF;AACA,MAAAzC,EAAQwC,EAAc,6BAA6B;AAAA,IACrD,CAAC;AAAA,EACH;AAEA,2BACG,WAAA,EAAQ,WAAWE,EAAWC,EAAO,WAAW9C,CAAS,GACxD,UAAA,gBAAAN;AAAA,IAACqD;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,QACL,WACEjC,EAAwB,aACxBI,EAAwB,aACxBF,EAAwB;AAAA,QAC1B,kBAAAJ;AAAA,MAAA;AAAA,MAGF,4BAACoC,GAAA,EAAc,GAAG1B,GAChB,UAAA,gBAAA5B,EAACuD,GAAA,EAAK,UAAU3B,EAAY,aAAaI,CAAQ,GAC/C,UAAA,gBAAAhC,EAACwD,MAAK,eAAc,UAAS,KAAK,IAC/B,UAAAjD,KAGC,gBAAAkD,EAAAC,GAAA,EACE,UAAA;AAAA,QAAA,gBAAA1D,EAAC2D,GAAA,EAAoB;AAAA,0BACpBC,GAAA,CAAA,CAAQ;AAAA,MAAA,GACX,EAAA,CAEJ,GACF,EAAA,CACF;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
|
|
@@ -5,9 +5,9 @@ import M from "classnames";
|
|
|
5
5
|
import { useSignatoriesListSuspense as D } from "@gusto/embedded-api/react-query/signatoriesList";
|
|
6
6
|
import { useSignatoriesInviteMutation as F } from "@gusto/embedded-api/react-query/signatoriesInvite";
|
|
7
7
|
import { useSignatoriesDeleteMutation as P } from "@gusto/embedded-api/react-query/signatoriesDelete";
|
|
8
|
-
import { InviteSignatorySchema as
|
|
9
|
-
import { Actions as
|
|
10
|
-
import
|
|
8
|
+
import { InviteSignatorySchema as R, InviteSignatoryForm as b } from "./InviteSignatoryForm.js";
|
|
9
|
+
import { Actions as x } from "./Actions.js";
|
|
10
|
+
import O from "./InviteSignatory.module.scss.js";
|
|
11
11
|
import { InviteSignatoryProvider as _ } from "./useInviteSignatory.js";
|
|
12
12
|
import { Form as C } from "../../../Common/Form/Form.js";
|
|
13
13
|
import { useI18n as T } from "../../../../i18n/I18n.js";
|
|
@@ -21,24 +21,24 @@ import "react";
|
|
|
21
21
|
function mi(t) {
|
|
22
22
|
return /* @__PURE__ */ i(U, { ...t, children: /* @__PURE__ */ i(w, { ...t, children: t.children }) });
|
|
23
23
|
}
|
|
24
|
-
function w({ companyId: t, defaultValues: o, className: c, children:
|
|
24
|
+
function w({ companyId: t, defaultValues: o, className: c, children: n }) {
|
|
25
25
|
T("Company.AssignSignatory");
|
|
26
|
-
const { onEvent:
|
|
27
|
-
data: {
|
|
26
|
+
const { onEvent: r, baseSubmitHandler: u } = Y(), {
|
|
27
|
+
data: { signatories: l }
|
|
28
28
|
} = D({
|
|
29
29
|
companyUuid: t
|
|
30
|
-
}), e = l, m = F(), f = P(),
|
|
30
|
+
}), e = l, m = F(), f = P(), g = {
|
|
31
31
|
firstName: o?.firstName ?? "",
|
|
32
32
|
lastName: o?.lastName ?? "",
|
|
33
33
|
email: o?.email,
|
|
34
34
|
confirmEmail: o?.confirmEmail,
|
|
35
35
|
title: o?.title ?? ""
|
|
36
36
|
}, s = I({
|
|
37
|
-
resolver: E(
|
|
38
|
-
defaultValues:
|
|
39
|
-
}),
|
|
40
|
-
await u(y, async (
|
|
41
|
-
const { confirmEmail:
|
|
37
|
+
resolver: E(R),
|
|
38
|
+
defaultValues: g
|
|
39
|
+
}), p = async (y) => {
|
|
40
|
+
await u(y, async (S) => {
|
|
41
|
+
const { confirmEmail: j, ...d } = S;
|
|
42
42
|
e[0]?.uuid && await f.mutateAsync({
|
|
43
43
|
request: {
|
|
44
44
|
companyUuid: t,
|
|
@@ -48,21 +48,21 @@ function w({ companyId: t, defaultValues: o, className: c, children: r }) {
|
|
|
48
48
|
const v = await m.mutateAsync({
|
|
49
49
|
request: {
|
|
50
50
|
companyUuid: t,
|
|
51
|
-
|
|
51
|
+
signatoryInviteRequest: d
|
|
52
52
|
}
|
|
53
53
|
});
|
|
54
|
-
|
|
54
|
+
r(a.COMPANY_SIGNATORY_INVITED, v.signatory), r(a.COMPANY_INVITE_SIGNATORY_DONE);
|
|
55
55
|
});
|
|
56
56
|
};
|
|
57
|
-
return /* @__PURE__ */ i("section", { className: M(
|
|
57
|
+
return /* @__PURE__ */ i("section", { className: M(O.container, c), children: /* @__PURE__ */ i(
|
|
58
58
|
_,
|
|
59
59
|
{
|
|
60
60
|
value: {
|
|
61
61
|
isPending: m.isPending
|
|
62
62
|
},
|
|
63
|
-
children: /* @__PURE__ */ i(A, { ...s, children: /* @__PURE__ */ i(C, { onSubmit: s.handleSubmit(
|
|
64
|
-
/* @__PURE__ */ i(
|
|
65
|
-
/* @__PURE__ */ i(
|
|
63
|
+
children: /* @__PURE__ */ i(A, { ...s, children: /* @__PURE__ */ i(C, { onSubmit: s.handleSubmit(p), children: /* @__PURE__ */ i(q, { flexDirection: "column", gap: 32, children: n || /* @__PURE__ */ N(h, { children: [
|
|
64
|
+
/* @__PURE__ */ i(b, {}),
|
|
65
|
+
/* @__PURE__ */ i(x, {})
|
|
66
66
|
] }) }) }) })
|
|
67
67
|
}
|
|
68
68
|
) });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InviteSignatory.js","sources":["../../../../../src/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.tsx"],"sourcesContent":["import { FormProvider, useForm } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport classNames from 'classnames'\nimport { useSignatoriesListSuspense } from '@gusto/embedded-api/react-query/signatoriesList'\nimport { useSignatoriesInviteMutation } from '@gusto/embedded-api/react-query/signatoriesInvite'\nimport { useSignatoriesDeleteMutation } from '@gusto/embedded-api/react-query/signatoriesDelete'\nimport { type InviteSignatoryInputs, InviteSignatorySchema } from './InviteSignatoryForm'\nimport { InviteSignatoryForm } from './InviteSignatoryForm'\nimport { Actions } from './Actions'\nimport styles from './InviteSignatory.module.scss'\nimport type { InviteSignatoryDefaultValues } from './useInviteSignatory'\nimport { InviteSignatoryProvider } from './useInviteSignatory'\nimport { Form } from '@/components/Common/Form'\nimport { useI18n } from '@/i18n'\nimport {\n useBase,\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { Flex } from '@/components/Common'\nimport { companyEvents } from '@/shared/constants'\n\ninterface InviteSignatoryProps extends CommonComponentInterface {\n companyId: string\n defaultValues?: InviteSignatoryDefaultValues\n}\n\nexport function InviteSignatory(props: InviteSignatoryProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({ companyId, defaultValues, className, children }: InviteSignatoryProps) {\n useI18n('Company.AssignSignatory')\n const { onEvent, baseSubmitHandler } = useBase()\n\n const {\n data: { signatoryList },\n } = useSignatoriesListSuspense({\n companyUuid: companyId,\n })\n const signatories = signatoryList!\n\n const inviteSignatoryMutation = useSignatoriesInviteMutation()\n const deleteSignatoryMutation = useSignatoriesDeleteMutation()\n\n const inviteSignatoryDefaultValues = {\n firstName: defaultValues?.firstName ?? '',\n lastName: defaultValues?.lastName ?? '',\n email: defaultValues?.email,\n confirmEmail: defaultValues?.confirmEmail,\n title: defaultValues?.title ?? '',\n }\n\n const formMethods = useForm<InviteSignatoryInputs>({\n resolver: zodResolver(InviteSignatorySchema),\n defaultValues: inviteSignatoryDefaultValues,\n })\n\n const onSubmit = async (data: InviteSignatoryInputs) => {\n await baseSubmitHandler(data, async payload => {\n const { confirmEmail, ...signatoryData } = payload\n if (signatories[0]?.uuid) {\n await deleteSignatoryMutation.mutateAsync({\n request: {\n companyUuid: companyId,\n signatoryUuid: signatories[0].uuid,\n },\n })\n }\n\n const inviteSignatoryResponse = await inviteSignatoryMutation.mutateAsync({\n request: {\n companyUuid: companyId,\n
|
|
1
|
+
{"version":3,"file":"InviteSignatory.js","sources":["../../../../../src/components/Company/AssignSignatory/InviteSignatory/InviteSignatory.tsx"],"sourcesContent":["import { FormProvider, useForm } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport classNames from 'classnames'\nimport { useSignatoriesListSuspense } from '@gusto/embedded-api/react-query/signatoriesList'\nimport { useSignatoriesInviteMutation } from '@gusto/embedded-api/react-query/signatoriesInvite'\nimport { useSignatoriesDeleteMutation } from '@gusto/embedded-api/react-query/signatoriesDelete'\nimport { type InviteSignatoryInputs, InviteSignatorySchema } from './InviteSignatoryForm'\nimport { InviteSignatoryForm } from './InviteSignatoryForm'\nimport { Actions } from './Actions'\nimport styles from './InviteSignatory.module.scss'\nimport type { InviteSignatoryDefaultValues } from './useInviteSignatory'\nimport { InviteSignatoryProvider } from './useInviteSignatory'\nimport { Form } from '@/components/Common/Form'\nimport { useI18n } from '@/i18n'\nimport {\n useBase,\n BaseComponent,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { Flex } from '@/components/Common'\nimport { companyEvents } from '@/shared/constants'\n\ninterface InviteSignatoryProps extends CommonComponentInterface {\n companyId: string\n defaultValues?: InviteSignatoryDefaultValues\n}\n\nexport function InviteSignatory(props: InviteSignatoryProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({ companyId, defaultValues, className, children }: InviteSignatoryProps) {\n useI18n('Company.AssignSignatory')\n const { onEvent, baseSubmitHandler } = useBase()\n\n const {\n data: { signatories: signatoryList },\n } = useSignatoriesListSuspense({\n companyUuid: companyId,\n })\n const signatories = signatoryList!\n\n const inviteSignatoryMutation = useSignatoriesInviteMutation()\n const deleteSignatoryMutation = useSignatoriesDeleteMutation()\n\n const inviteSignatoryDefaultValues = {\n firstName: defaultValues?.firstName ?? '',\n lastName: defaultValues?.lastName ?? '',\n email: defaultValues?.email,\n confirmEmail: defaultValues?.confirmEmail,\n title: defaultValues?.title ?? '',\n }\n\n const formMethods = useForm<InviteSignatoryInputs>({\n resolver: zodResolver(InviteSignatorySchema),\n defaultValues: inviteSignatoryDefaultValues,\n })\n\n const onSubmit = async (data: InviteSignatoryInputs) => {\n await baseSubmitHandler(data, async payload => {\n const { confirmEmail, ...signatoryData } = payload\n if (signatories[0]?.uuid) {\n await deleteSignatoryMutation.mutateAsync({\n request: {\n companyUuid: companyId,\n signatoryUuid: signatories[0].uuid,\n },\n })\n }\n\n const inviteSignatoryResponse = await inviteSignatoryMutation.mutateAsync({\n request: {\n companyUuid: companyId,\n signatoryInviteRequest: signatoryData,\n },\n })\n\n onEvent(companyEvents.COMPANY_SIGNATORY_INVITED, inviteSignatoryResponse.signatory)\n onEvent(companyEvents.COMPANY_INVITE_SIGNATORY_DONE)\n })\n }\n\n return (\n <section className={classNames(styles.container, className)}>\n <InviteSignatoryProvider\n value={{\n isPending: inviteSignatoryMutation.isPending,\n }}\n >\n <FormProvider {...formMethods}>\n <Form onSubmit={formMethods.handleSubmit(onSubmit)}>\n <Flex flexDirection=\"column\" gap={32}>\n {children ? (\n children\n ) : (\n <>\n <InviteSignatoryForm />\n <Actions />\n </>\n )}\n </Flex>\n </Form>\n </FormProvider>\n </InviteSignatoryProvider>\n </section>\n )\n}\n"],"names":["InviteSignatory","props","jsx","BaseComponent","Root","companyId","defaultValues","className","children","useI18n","onEvent","baseSubmitHandler","useBase","signatoryList","useSignatoriesListSuspense","signatories","inviteSignatoryMutation","useSignatoriesInviteMutation","deleteSignatoryMutation","useSignatoriesDeleteMutation","inviteSignatoryDefaultValues","formMethods","useForm","zodResolver","InviteSignatorySchema","onSubmit","data","payload","confirmEmail","signatoryData","inviteSignatoryResponse","companyEvents","classNames","styles","InviteSignatoryProvider","FormProvider","Form","Flex","jsxs","Fragment","InviteSignatoryForm","Actions"],"mappings":";;;;;;;;;;;;;;;;;;;;AA4BO,SAASA,GAAgBC,GAAsD;AACpF,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GACjB,UAAA,gBAAAC,EAACE,KAAM,GAAGH,GAAQ,UAAAA,EAAM,SAAA,CAAS,EAAA,CACnC;AAEJ;AAEA,SAASG,EAAK,EAAE,WAAAC,GAAW,eAAAC,GAAe,WAAAC,GAAW,UAAAC,KAAkC;AACrF,EAAAC,EAAQ,yBAAyB;AACjC,QAAM,EAAE,SAAAC,GAAS,mBAAAC,EAAA,IAAsBC,EAAA,GAEjC;AAAA,IACJ,MAAM,EAAE,aAAaC,EAAA;AAAA,EAAc,IACjCC,EAA2B;AAAA,IAC7B,aAAaT;AAAA,EAAA,CACd,GACKU,IAAcF,GAEdG,IAA0BC,EAAA,GAC1BC,IAA0BC,EAAA,GAE1BC,IAA+B;AAAA,IACnC,WAAWd,GAAe,aAAa;AAAA,IACvC,UAAUA,GAAe,YAAY;AAAA,IACrC,OAAOA,GAAe;AAAA,IACtB,cAAcA,GAAe;AAAA,IAC7B,OAAOA,GAAe,SAAS;AAAA,EAAA,GAG3Be,IAAcC,EAA+B;AAAA,IACjD,UAAUC,EAAYC,CAAqB;AAAA,IAC3C,eAAeJ;AAAA,EAAA,CAChB,GAEKK,IAAW,OAAOC,MAAgC;AACtD,UAAMf,EAAkBe,GAAM,OAAMC,MAAW;AAC7C,YAAM,EAAE,cAAAC,GAAc,GAAGC,EAAA,IAAkBF;AAC3C,MAAIZ,EAAY,CAAC,GAAG,QAClB,MAAMG,EAAwB,YAAY;AAAA,QACxC,SAAS;AAAA,UACP,aAAab;AAAA,UACb,eAAeU,EAAY,CAAC,EAAE;AAAA,QAAA;AAAA,MAChC,CACD;AAGH,YAAMe,IAA0B,MAAMd,EAAwB,YAAY;AAAA,QACxE,SAAS;AAAA,UACP,aAAaX;AAAA,UACb,wBAAwBwB;AAAA,QAAA;AAAA,MAC1B,CACD;AAED,MAAAnB,EAAQqB,EAAc,2BAA2BD,EAAwB,SAAS,GAClFpB,EAAQqB,EAAc,6BAA6B;AAAA,IACrD,CAAC;AAAA,EACH;AAEA,2BACG,WAAA,EAAQ,WAAWC,EAAWC,EAAO,WAAW1B,CAAS,GACxD,UAAA,gBAAAL;AAAA,IAACgC;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,QACL,WAAWlB,EAAwB;AAAA,MAAA;AAAA,MAGrC,4BAACmB,GAAA,EAAc,GAAGd,GAChB,UAAA,gBAAAnB,EAACkC,GAAA,EAAK,UAAUf,EAAY,aAAaI,CAAQ,GAC/C,UAAA,gBAAAvB,EAACmC,KAAK,eAAc,UAAS,KAAK,IAC/B,UAAA7B,KAGC,gBAAA8B,EAAAC,GAAA,EACE,UAAA;AAAA,QAAA,gBAAArC,EAACsC,GAAA,EAAoB;AAAA,0BACpBC,GAAA,CAAA,CAAQ;AAAA,MAAA,GACX,EAAA,CAEJ,GACF,EAAA,CACF;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
|
|
@@ -2,43 +2,47 @@ import { jsx as o, jsxs as y, Fragment as B } from "react/jsx-runtime";
|
|
|
2
2
|
import { useForm as k, FormProvider as v } from "react-hook-form";
|
|
3
3
|
import { zodResolver as C } from "@hookform/resolvers/zod";
|
|
4
4
|
import { useBankAccountsVerifyMutation as F } from "@gusto/embedded-api/react-query/bankAccountsVerify";
|
|
5
|
-
import { Head as
|
|
6
|
-
import { BankAccountVerifyProvider as
|
|
5
|
+
import { Head as V } from "./Head.js";
|
|
6
|
+
import { BankAccountVerifyProvider as b } from "./context.js";
|
|
7
7
|
import { BankAccountVerifySchema as x, Form as E } from "./Form.js";
|
|
8
8
|
import { Actions as S } from "./Actions.js";
|
|
9
9
|
import { Form as N } from "../../../Common/Form/Form.js";
|
|
10
10
|
import { BaseComponent as P } from "../../../Base/Base.js";
|
|
11
|
-
import { useBase as
|
|
12
|
-
import { useI18n as
|
|
13
|
-
import { Flex as
|
|
11
|
+
import { useBase as R } from "../../../Base/useBase.js";
|
|
12
|
+
import { useI18n as g } from "../../../../i18n/I18n.js";
|
|
13
|
+
import { Flex as I } from "../../../Common/Flex/Flex.js";
|
|
14
14
|
import { componentEvents as i } from "../../../../shared/constants.js";
|
|
15
15
|
function G(n) {
|
|
16
16
|
return /* @__PURE__ */ o(P, { ...n, children: /* @__PURE__ */ o(_, { ...n, children: n.children }) });
|
|
17
17
|
}
|
|
18
|
-
function _({ companyId: n, bankAccountId:
|
|
19
|
-
|
|
20
|
-
const { onEvent: t, baseSubmitHandler: a } =
|
|
18
|
+
function _({ companyId: n, bankAccountId: c, className: m, children: r }) {
|
|
19
|
+
g("Company.BankAccount");
|
|
20
|
+
const { onEvent: t, baseSubmitHandler: a } = R(), { mutateAsync: s, isPending: u } = F(), { control: f, ...e } = k({
|
|
21
21
|
resolver: C(x),
|
|
22
22
|
defaultValues: { deposit1: 0, deposit2: 0 }
|
|
23
23
|
}), d = async (p) => {
|
|
24
24
|
await a(p, async (A) => {
|
|
25
25
|
const { companyBankAccount: h } = await s({
|
|
26
|
-
request: {
|
|
26
|
+
request: {
|
|
27
|
+
companyId: n,
|
|
28
|
+
bankAccountUuid: c,
|
|
29
|
+
companyBankAccountVerifyRequest: A
|
|
30
|
+
}
|
|
27
31
|
});
|
|
28
32
|
t(i.COMPANY_BANK_ACCOUNT_VERIFIED, h);
|
|
29
33
|
});
|
|
30
34
|
}, l = () => {
|
|
31
35
|
t(i.CANCEL);
|
|
32
36
|
};
|
|
33
|
-
return /* @__PURE__ */ o("section", { className:
|
|
34
|
-
|
|
37
|
+
return /* @__PURE__ */ o("section", { className: m, children: /* @__PURE__ */ o(v, { ...e, control: f, children: /* @__PURE__ */ o(N, { onSubmit: e.handleSubmit(d), children: /* @__PURE__ */ o(
|
|
38
|
+
b,
|
|
35
39
|
{
|
|
36
40
|
value: {
|
|
37
41
|
isPending: u,
|
|
38
42
|
handleCancel: l
|
|
39
43
|
},
|
|
40
|
-
children: /* @__PURE__ */ o(
|
|
41
|
-
/* @__PURE__ */ o(
|
|
44
|
+
children: /* @__PURE__ */ o(I, { flexDirection: "column", gap: 32, children: r || /* @__PURE__ */ y(B, { children: [
|
|
45
|
+
/* @__PURE__ */ o(V, {}),
|
|
42
46
|
/* @__PURE__ */ o(E, {}),
|
|
43
47
|
/* @__PURE__ */ o(S, {})
|
|
44
48
|
] }) })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BankAccountVerify.js","sources":["../../../../../src/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.tsx"],"sourcesContent":["import { FormProvider, useForm } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { useBankAccountsVerifyMutation } from '@gusto/embedded-api/react-query/bankAccountsVerify'\nimport { Head } from './Head'\nimport { BankAccountVerifyProvider } from './context'\nimport type { BankAccountVerifyInputs } from './Form'\nimport { BankAccountVerifySchema, Form } from './Form'\nimport { Actions } from './Actions'\nimport { Form as HtmlForm } from '@/components/Common/Form'\nimport type { BaseComponentInterface, CommonComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { useI18n } from '@/i18n/I18n'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { componentEvents } from '@/shared/constants'\n\ninterface BankAccountVerifyProps extends CommonComponentInterface {\n companyId: string\n bankAccountId: string\n}\n\nexport function BankAccountVerify(props: BankAccountVerifyProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\nfunction Root({ companyId, bankAccountId, className, children }: BankAccountVerifyProps) {\n useI18n('Company.BankAccount')\n const { onEvent, baseSubmitHandler } = useBase()\n const { mutateAsync: verifyBankAccount, isPending } = useBankAccountsVerifyMutation()\n\n const { control, ...methods } = useForm<BankAccountVerifyInputs>({\n resolver: zodResolver(BankAccountVerifySchema),\n defaultValues: { deposit1: 0, deposit2: 0 },\n })\n\n const onSubmit = async (data: BankAccountVerifyInputs) => {\n await baseSubmitHandler(data, async payload => {\n const { companyBankAccount } = await verifyBankAccount({\n request: {
|
|
1
|
+
{"version":3,"file":"BankAccountVerify.js","sources":["../../../../../src/components/Company/BankAccount/BankAccountVerify/BankAccountVerify.tsx"],"sourcesContent":["import { FormProvider, useForm } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { useBankAccountsVerifyMutation } from '@gusto/embedded-api/react-query/bankAccountsVerify'\nimport { Head } from './Head'\nimport { BankAccountVerifyProvider } from './context'\nimport type { BankAccountVerifyInputs } from './Form'\nimport { BankAccountVerifySchema, Form } from './Form'\nimport { Actions } from './Actions'\nimport { Form as HtmlForm } from '@/components/Common/Form'\nimport type { BaseComponentInterface, CommonComponentInterface } from '@/components/Base/Base'\nimport { BaseComponent } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { useI18n } from '@/i18n/I18n'\nimport { Flex } from '@/components/Common/Flex/Flex'\nimport { componentEvents } from '@/shared/constants'\n\ninterface BankAccountVerifyProps extends CommonComponentInterface {\n companyId: string\n bankAccountId: string\n}\n\nexport function BankAccountVerify(props: BankAccountVerifyProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\nfunction Root({ companyId, bankAccountId, className, children }: BankAccountVerifyProps) {\n useI18n('Company.BankAccount')\n const { onEvent, baseSubmitHandler } = useBase()\n const { mutateAsync: verifyBankAccount, isPending } = useBankAccountsVerifyMutation()\n\n const { control, ...methods } = useForm<BankAccountVerifyInputs>({\n resolver: zodResolver(BankAccountVerifySchema),\n defaultValues: { deposit1: 0, deposit2: 0 },\n })\n\n const onSubmit = async (data: BankAccountVerifyInputs) => {\n await baseSubmitHandler(data, async payload => {\n const { companyBankAccount } = await verifyBankAccount({\n request: {\n companyId,\n bankAccountUuid: bankAccountId,\n companyBankAccountVerifyRequest: payload,\n },\n })\n onEvent(componentEvents.COMPANY_BANK_ACCOUNT_VERIFIED, companyBankAccount)\n })\n }\n const handleCancel = () => {\n onEvent(componentEvents.CANCEL)\n }\n\n return (\n <section className={className}>\n <FormProvider {...methods} control={control}>\n <HtmlForm onSubmit={methods.handleSubmit(onSubmit)}>\n <BankAccountVerifyProvider\n value={{\n isPending,\n handleCancel,\n }}\n >\n <Flex flexDirection=\"column\" gap={32}>\n {children ? (\n children\n ) : (\n <>\n <Head />\n <Form />\n <Actions />\n </>\n )}\n </Flex>\n </BankAccountVerifyProvider>\n </HtmlForm>\n </FormProvider>\n </section>\n )\n}\n"],"names":["BankAccountVerify","props","jsx","BaseComponent","Root","companyId","bankAccountId","className","children","useI18n","onEvent","baseSubmitHandler","useBase","verifyBankAccount","isPending","useBankAccountsVerifyMutation","control","methods","useForm","zodResolver","BankAccountVerifySchema","onSubmit","data","payload","companyBankAccount","componentEvents","handleCancel","FormProvider","HtmlForm","BankAccountVerifyProvider","Flex","jsxs","Fragment","Head","Form","Actions"],"mappings":";;;;;;;;;;;;;;AAqBO,SAASA,EAAkBC,GAAwD;AACxF,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GACjB,UAAA,gBAAAC,EAACE,KAAM,GAAGH,GAAQ,UAAAA,EAAM,SAAA,CAAS,EAAA,CACnC;AAEJ;AACA,SAASG,EAAK,EAAE,WAAAC,GAAW,eAAAC,GAAe,WAAAC,GAAW,UAAAC,KAAoC;AACvF,EAAAC,EAAQ,qBAAqB;AAC7B,QAAM,EAAE,SAAAC,GAAS,mBAAAC,EAAA,IAAsBC,EAAA,GACjC,EAAE,aAAaC,GAAmB,WAAAC,EAAA,IAAcC,EAAA,GAEhD,EAAE,SAAAC,GAAS,GAAGC,EAAA,IAAYC,EAAiC;AAAA,IAC/D,UAAUC,EAAYC,CAAuB;AAAA,IAC7C,eAAe,EAAE,UAAU,GAAG,UAAU,EAAA;AAAA,EAAE,CAC3C,GAEKC,IAAW,OAAOC,MAAkC;AACxD,UAAMX,EAAkBW,GAAM,OAAMC,MAAW;AAC7C,YAAM,EAAE,oBAAAC,MAAuB,MAAMX,EAAkB;AAAA,QACrD,SAAS;AAAA,UACP,WAAAR;AAAA,UACA,iBAAiBC;AAAA,UACjB,iCAAiCiB;AAAA,QAAA;AAAA,MACnC,CACD;AACD,MAAAb,EAAQe,EAAgB,+BAA+BD,CAAkB;AAAA,IAC3E,CAAC;AAAA,EACH,GACME,IAAe,MAAM;AACzB,IAAAhB,EAAQe,EAAgB,MAAM;AAAA,EAChC;AAEA,SACE,gBAAAvB,EAAC,WAAA,EAAQ,WAAAK,GACP,UAAA,gBAAAL,EAACyB,KAAc,GAAGV,GAAS,SAAAD,GACzB,UAAA,gBAAAd,EAAC0B,GAAA,EAAS,UAAUX,EAAQ,aAAaI,CAAQ,GAC/C,UAAA,gBAAAnB;AAAA,IAAC2B;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,QACL,WAAAf;AAAA,QACA,cAAAY;AAAA,MAAA;AAAA,MAGF,UAAA,gBAAAxB,EAAC4B,KAAK,eAAc,UAAS,KAAK,IAC/B,UAAAtB,KAGC,gBAAAuB,EAAAC,GAAA,EACE,UAAA;AAAA,QAAA,gBAAA9B,EAAC+B,GAAA,EAAK;AAAA,0BACLC,GAAA,EAAK;AAAA,0BACLC,GAAA,CAAA,CAAQ;AAAA,MAAA,EAAA,CACX,EAAA,CAEJ;AAAA,IAAA;AAAA,EAAA,EACF,CACF,GACF,GACF;AAEJ;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DocumentList.js","sources":["../../../../../src/components/Company/DocumentSigner/DocumentList/DocumentList.tsx"],"sourcesContent":["import { type Form as FormSchema } from '@gusto/embedded-api/models/components/form'\nimport { useCompanyFormsGetAllSuspense } from '@gusto/embedded-api/react-query/companyFormsGetAll'\nimport { useSignatoriesListSuspense } from '@gusto/embedded-api/react-query/signatoriesList'\nimport { Head } from './Head'\nimport { List } from './List'\nimport { ManageSignatories } from './ManageSignatories'\nimport { Actions } from './Actions'\nimport { DocumentListProvider } from './useDocumentList'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { Flex } from '@/components/Common'\nimport { companyEvents } from '@/shared/constants'\n\ninterface DocumentListProps extends BaseComponentInterface<'Company.DocumentList'> {\n companyId: string\n signatoryId?: string\n}\n\nexport function DocumentList(props: DocumentListProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({ companyId, signatoryId, className, children, dictionary }: DocumentListProps) {\n useComponentDictionary('Company.DocumentList', dictionary)\n useI18n('Company.DocumentList')\n const { onEvent } = useBase()\n\n const {\n data: { formList },\n error: documentListError,\n } = useCompanyFormsGetAllSuspense({\n companyId,\n })\n const companyForms = formList!\n\n const {\n data: { signatoryList },\n } = useSignatoriesListSuspense({\n companyUuid: companyId,\n })\n const signatories = signatoryList!\n\n // For now, this will only ever have one entry for the current signatory since companies can\n // only have one signatory. If that changes in the future, this UX will need to be revisited.\n const signatory = signatories[0]\n const isSelfSignatory = !!signatoryId && signatory?.uuid === signatoryId\n\n const handleRequestFormToSign = (form: FormSchema) => {\n onEvent(companyEvents.COMPANY_VIEW_FORM_TO_SIGN, form)\n }\n\n const handleChangeSignatory = () => {\n onEvent(companyEvents.COMPANY_FORM_EDIT_SIGNATORY, signatory)\n }\n\n const handleContinue = () => {\n onEvent(companyEvents.COMPANY_FORMS_DONE)\n }\n\n return (\n <section className={className}>\n <DocumentListProvider\n value={{\n companyForms,\n documentListError,\n handleRequestFormToSign,\n handleChangeSignatory,\n handleContinue,\n isSelfSignatory,\n signatory,\n }}\n >\n <Flex flexDirection=\"column\" gap={32}>\n {children ? (\n children\n ) : (\n <>\n <Head />\n <ManageSignatories />\n <List />\n <Actions />\n </>\n )}\n </Flex>\n </DocumentListProvider>\n </section>\n )\n}\n"],"names":["DocumentList","props","jsx","BaseComponent","Root","companyId","signatoryId","className","children","dictionary","useComponentDictionary","useI18n","onEvent","useBase","formList","documentListError","useCompanyFormsGetAllSuspense","companyForms","signatoryList","useSignatoriesListSuspense","signatory","isSelfSignatory","DocumentListProvider","form","companyEvents","Flex","jsxs","Fragment","Head","ManageSignatories","List","Actions"],"mappings":";;;;;;;;;;;;;;;;;AAmBO,SAASA,EAAaC,GAA0B;AACrD,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GACjB,UAAA,gBAAAC,EAACE,KAAM,GAAGH,GAAQ,UAAAA,EAAM,SAAA,CAAS,EAAA,CACnC;AAEJ;AAEA,SAASG,EAAK,EAAE,WAAAC,GAAW,aAAAC,GAAa,WAAAC,GAAW,UAAAC,GAAU,YAAAC,KAAiC;AAC5F,EAAAC,EAAuB,wBAAwBD,CAAU,GACzDE,EAAQ,sBAAsB;AAC9B,QAAM,EAAE,SAAAC,EAAA,IAAYC,EAAA,GAEd;AAAA,IACJ,MAAM,EAAE,UAAAC,EAAA;AAAA,IACR,OAAOC;AAAA,EAAA,IACLC,EAA8B;AAAA,IAChC,WAAAX;AAAA,EAAA,CACD,GACKY,IAAeH,GAEf;AAAA,IACJ,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"DocumentList.js","sources":["../../../../../src/components/Company/DocumentSigner/DocumentList/DocumentList.tsx"],"sourcesContent":["import { type Form as FormSchema } from '@gusto/embedded-api/models/components/form'\nimport { useCompanyFormsGetAllSuspense } from '@gusto/embedded-api/react-query/companyFormsGetAll'\nimport { useSignatoriesListSuspense } from '@gusto/embedded-api/react-query/signatoriesList'\nimport { Head } from './Head'\nimport { List } from './List'\nimport { ManageSignatories } from './ManageSignatories'\nimport { Actions } from './Actions'\nimport { DocumentListProvider } from './useDocumentList'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base/Base'\nimport { useBase } from '@/components/Base/useBase'\nimport { Flex } from '@/components/Common'\nimport { companyEvents } from '@/shared/constants'\n\ninterface DocumentListProps extends BaseComponentInterface<'Company.DocumentList'> {\n companyId: string\n signatoryId?: string\n}\n\nexport function DocumentList(props: DocumentListProps) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({ companyId, signatoryId, className, children, dictionary }: DocumentListProps) {\n useComponentDictionary('Company.DocumentList', dictionary)\n useI18n('Company.DocumentList')\n const { onEvent } = useBase()\n\n const {\n data: { formList },\n error: documentListError,\n } = useCompanyFormsGetAllSuspense({\n companyId,\n })\n const companyForms = formList!\n\n const {\n data: { signatories: signatoryList },\n } = useSignatoriesListSuspense({\n companyUuid: companyId,\n })\n const signatories = signatoryList!\n\n // For now, this will only ever have one entry for the current signatory since companies can\n // only have one signatory. If that changes in the future, this UX will need to be revisited.\n const signatory = signatories[0]\n const isSelfSignatory = !!signatoryId && signatory?.uuid === signatoryId\n\n const handleRequestFormToSign = (form: FormSchema) => {\n onEvent(companyEvents.COMPANY_VIEW_FORM_TO_SIGN, form)\n }\n\n const handleChangeSignatory = () => {\n onEvent(companyEvents.COMPANY_FORM_EDIT_SIGNATORY, signatory)\n }\n\n const handleContinue = () => {\n onEvent(companyEvents.COMPANY_FORMS_DONE)\n }\n\n return (\n <section className={className}>\n <DocumentListProvider\n value={{\n companyForms,\n documentListError,\n handleRequestFormToSign,\n handleChangeSignatory,\n handleContinue,\n isSelfSignatory,\n signatory,\n }}\n >\n <Flex flexDirection=\"column\" gap={32}>\n {children ? (\n children\n ) : (\n <>\n <Head />\n <ManageSignatories />\n <List />\n <Actions />\n </>\n )}\n </Flex>\n </DocumentListProvider>\n </section>\n )\n}\n"],"names":["DocumentList","props","jsx","BaseComponent","Root","companyId","signatoryId","className","children","dictionary","useComponentDictionary","useI18n","onEvent","useBase","formList","documentListError","useCompanyFormsGetAllSuspense","companyForms","signatoryList","useSignatoriesListSuspense","signatory","isSelfSignatory","DocumentListProvider","form","companyEvents","Flex","jsxs","Fragment","Head","ManageSignatories","List","Actions"],"mappings":";;;;;;;;;;;;;;;;;AAmBO,SAASA,EAAaC,GAA0B;AACrD,SACE,gBAAAC,EAACC,GAAA,EAAe,GAAGF,GACjB,UAAA,gBAAAC,EAACE,KAAM,GAAGH,GAAQ,UAAAA,EAAM,SAAA,CAAS,EAAA,CACnC;AAEJ;AAEA,SAASG,EAAK,EAAE,WAAAC,GAAW,aAAAC,GAAa,WAAAC,GAAW,UAAAC,GAAU,YAAAC,KAAiC;AAC5F,EAAAC,EAAuB,wBAAwBD,CAAU,GACzDE,EAAQ,sBAAsB;AAC9B,QAAM,EAAE,SAAAC,EAAA,IAAYC,EAAA,GAEd;AAAA,IACJ,MAAM,EAAE,UAAAC,EAAA;AAAA,IACR,OAAOC;AAAA,EAAA,IACLC,EAA8B;AAAA,IAChC,WAAAX;AAAA,EAAA,CACD,GACKY,IAAeH,GAEf;AAAA,IACJ,MAAM,EAAE,aAAaI,EAAA;AAAA,EAAc,IACjCC,EAA2B;AAAA,IAC7B,aAAad;AAAA,EAAA,CACd,GAKKe,IAJcF,EAIU,CAAC,GACzBG,IAAkB,CAAC,CAACf,KAAec,GAAW,SAASd;AAc7D,SACE,gBAAAJ,EAAC,aAAQ,WAAAK,GACP,UAAA,gBAAAL;AAAA,IAACoB;AAAA,IAAA;AAAA,MACC,OAAO;AAAA,QACL,cAAAL;AAAA,QACA,mBAAAF;AAAA,QACA,yBAlBwB,CAACQ,MAAqB;AACpD,UAAAX,EAAQY,EAAc,2BAA2BD,CAAI;AAAA,QACvD;AAAA,QAiBQ,uBAfsB,MAAM;AAClC,UAAAX,EAAQY,EAAc,6BAA6BJ,CAAS;AAAA,QAC9D;AAAA,QAcQ,gBAZe,MAAM;AAC3B,UAAAR,EAAQY,EAAc,kBAAkB;AAAA,QAC1C;AAAA,QAWQ,iBAAAH;AAAA,QACA,WAAAD;AAAA,MAAA;AAAA,MAGF,UAAA,gBAAAlB,EAACuB,KAAK,eAAc,UAAS,KAAK,IAC/B,UAAAjB,KAGC,gBAAAkB,EAAAC,GAAA,EACE,UAAA;AAAA,QAAA,gBAAAzB,EAAC0B,GAAA,EAAK;AAAA,0BACLC,GAAA,EAAkB;AAAA,0BAClBC,GAAA,EAAK;AAAA,0BACLC,GAAA,CAAA,CAAQ;AAAA,MAAA,EAAA,CACX,EAAA,CAEJ;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as t } from "react/jsx-runtime";
|
|
2
2
|
import { createMachine as u } from "robot3";
|
|
3
3
|
import { useSignatoriesListSuspense as a } from "@gusto/embedded-api/react-query/signatoriesList";
|
|
4
|
-
import { useMemo as
|
|
5
|
-
import { DocumentList as
|
|
4
|
+
import { useMemo as g } from "react";
|
|
5
|
+
import { DocumentList as p, AssignSignatory as f } from "./documentSignerStateMachine.js";
|
|
6
6
|
import { documentSignerMachine as S } from "./stateMachine.js";
|
|
7
7
|
import { Flow as d } from "../../Flow/Flow.js";
|
|
8
8
|
import { BaseComponent as h } from "../../Base/Base.js";
|
|
@@ -11,16 +11,16 @@ import { useComponentDictionary as D } from "../../../i18n/I18n.js";
|
|
|
11
11
|
function L({ companyId: o, signatoryId: i, onEvent: e, dictionary: r }) {
|
|
12
12
|
D("Company.DocumentList", r);
|
|
13
13
|
const {
|
|
14
|
-
data: {
|
|
14
|
+
data: { signatories: m }
|
|
15
15
|
} = a({
|
|
16
16
|
companyUuid: o
|
|
17
|
-
}), n = m.length > 0, s =
|
|
17
|
+
}), n = m.length > 0, s = g(
|
|
18
18
|
() => u(
|
|
19
19
|
n ? "documentList" : "index",
|
|
20
20
|
S,
|
|
21
21
|
(c) => ({
|
|
22
22
|
...c,
|
|
23
|
-
component: n ?
|
|
23
|
+
component: n ? p : f,
|
|
24
24
|
companyId: o,
|
|
25
25
|
signatoryId: i
|
|
26
26
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DocumentSigner.js","sources":["../../../../src/components/Company/DocumentSigner/DocumentSigner.tsx"],"sourcesContent":["import { createMachine } from 'robot3'\nimport { useSignatoriesListSuspense } from '@gusto/embedded-api/react-query/signatoriesList'\nimport { useMemo } from 'react'\nimport { AssignSignatory, DocumentList } from './documentSignerStateMachine'\nimport { documentSignerMachine } from './stateMachine'\nimport type { DocumentSignerContextInterface } from './useDocumentSigner'\nimport { Flow } from '@/components/Flow/Flow'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base'\nimport { useComponentDictionary } from '@/i18n/I18n'\n\nexport interface DocumentSignerProps extends BaseComponentInterface<'Company.DocumentList'> {\n companyId: string\n signatoryId?: string\n}\n\nfunction DocumentSignerFlow({ companyId, signatoryId, onEvent, dictionary }: DocumentSignerProps) {\n useComponentDictionary('Company.DocumentList', dictionary)\n const {\n data: { signatoryList },\n } = useSignatoriesListSuspense({\n companyUuid: companyId,\n })\n const signatories = signatoryList!\n const doesSignatoryExist = signatories.length > 0\n\n const documentSigner = useMemo(\n () =>\n createMachine(\n doesSignatoryExist ? 'documentList' : 'index',\n documentSignerMachine,\n (initialContext: DocumentSignerContextInterface) => ({\n ...initialContext,\n component: doesSignatoryExist ? DocumentList : AssignSignatory,\n companyId,\n signatoryId,\n }),\n ),\n\n [companyId], // Only companyId - prevents recreation when signatoryId/doesSignatoryExist change\n )\n return <Flow machine={documentSigner} onEvent={onEvent} />\n}\n\nexport function DocumentSigner(props: DocumentSignerProps) {\n return (\n <BaseComponent {...props}>\n <DocumentSignerFlow {...props} />\n </BaseComponent>\n )\n}\n"],"names":["DocumentSignerFlow","companyId","signatoryId","onEvent","dictionary","useComponentDictionary","signatoryList","useSignatoriesListSuspense","doesSignatoryExist","documentSigner","useMemo","createMachine","documentSignerMachine","initialContext","DocumentList","AssignSignatory","jsx","Flow","DocumentSigner","props","BaseComponent"],"mappings":";;;;;;;;;;AAeA,SAASA,EAAmB,EAAE,WAAAC,GAAW,aAAAC,GAAa,SAAAC,GAAS,YAAAC,KAAmC;AAChG,EAAAC,EAAuB,wBAAwBD,CAAU;AACzD,QAAM;AAAA,IACJ,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"DocumentSigner.js","sources":["../../../../src/components/Company/DocumentSigner/DocumentSigner.tsx"],"sourcesContent":["import { createMachine } from 'robot3'\nimport { useSignatoriesListSuspense } from '@gusto/embedded-api/react-query/signatoriesList'\nimport { useMemo } from 'react'\nimport { AssignSignatory, DocumentList } from './documentSignerStateMachine'\nimport { documentSignerMachine } from './stateMachine'\nimport type { DocumentSignerContextInterface } from './useDocumentSigner'\nimport { Flow } from '@/components/Flow/Flow'\nimport { BaseComponent, type BaseComponentInterface } from '@/components/Base'\nimport { useComponentDictionary } from '@/i18n/I18n'\n\nexport interface DocumentSignerProps extends BaseComponentInterface<'Company.DocumentList'> {\n companyId: string\n signatoryId?: string\n}\n\nfunction DocumentSignerFlow({ companyId, signatoryId, onEvent, dictionary }: DocumentSignerProps) {\n useComponentDictionary('Company.DocumentList', dictionary)\n const {\n data: { signatories: signatoryList },\n } = useSignatoriesListSuspense({\n companyUuid: companyId,\n })\n const signatories = signatoryList!\n const doesSignatoryExist = signatories.length > 0\n\n const documentSigner = useMemo(\n () =>\n createMachine(\n doesSignatoryExist ? 'documentList' : 'index',\n documentSignerMachine,\n (initialContext: DocumentSignerContextInterface) => ({\n ...initialContext,\n component: doesSignatoryExist ? DocumentList : AssignSignatory,\n companyId,\n signatoryId,\n }),\n ),\n\n [companyId], // Only companyId - prevents recreation when signatoryId/doesSignatoryExist change\n )\n return <Flow machine={documentSigner} onEvent={onEvent} />\n}\n\nexport function DocumentSigner(props: DocumentSignerProps) {\n return (\n <BaseComponent {...props}>\n <DocumentSignerFlow {...props} />\n </BaseComponent>\n )\n}\n"],"names":["DocumentSignerFlow","companyId","signatoryId","onEvent","dictionary","useComponentDictionary","signatoryList","useSignatoriesListSuspense","doesSignatoryExist","documentSigner","useMemo","createMachine","documentSignerMachine","initialContext","DocumentList","AssignSignatory","jsx","Flow","DocumentSigner","props","BaseComponent"],"mappings":";;;;;;;;;;AAeA,SAASA,EAAmB,EAAE,WAAAC,GAAW,aAAAC,GAAa,SAAAC,GAAS,YAAAC,KAAmC;AAChG,EAAAC,EAAuB,wBAAwBD,CAAU;AACzD,QAAM;AAAA,IACJ,MAAM,EAAE,aAAaE,EAAA;AAAA,EAAc,IACjCC,EAA2B;AAAA,IAC7B,aAAaN;AAAA,EAAA,CACd,GAEKO,IADcF,EACmB,SAAS,GAE1CG,IAAiBC;AAAA,IACrB,MACEC;AAAA,MACEH,IAAqB,iBAAiB;AAAA,MACtCI;AAAA,MACA,CAACC,OAAoD;AAAA,QACnD,GAAGA;AAAA,QACH,WAAWL,IAAqBM,IAAeC;AAAA,QAC/C,WAAAd;AAAA,QACA,aAAAC;AAAA,MAAA;AAAA,IACF;AAAA,IAGJ,CAACD,CAAS;AAAA;AAAA,EAAA;AAEZ,SAAO,gBAAAe,EAACC,GAAA,EAAK,SAASR,GAAgB,SAAAN,EAAA,CAAkB;AAC1D;AAEO,SAASe,EAAeC,GAA4B;AACzD,SACE,gBAAAH,EAACI,KAAe,GAAGD,GACjB,4BAACnB,GAAA,EAAoB,GAAGmB,GAAO,EAAA,CACjC;AAEJ;"}
|