Skip to content

Commit 3622d1e

Browse files
authored
feat(form) - Add transformer hook (#986)
* add context and utility * feat(form) - add transformer to the description * changes * fix mock tests * sanitize * fix tests
1 parent 636134e commit 3622d1e

27 files changed

Lines changed: 346 additions & 79 deletions

src/components/form/fields/tests/CheckBoxField.test.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,13 @@ import { CheckboxFieldDefault } from '@/src/components/form/fields/default/Check
88
import { $TSFixMe } from '@/src/types/remoteFlows';
99

1010
// Mock dependencies
11-
vi.mock('@/src/context', () => ({
12-
useFormFields: vi.fn(),
13-
}));
11+
vi.mock('@/src/context', async (importOriginal) => {
12+
const actual = await importOriginal<typeof import('@/src/context')>();
13+
return {
14+
...actual,
15+
useFormFields: vi.fn(),
16+
};
17+
});
1418

1519
describe('CheckBoxField Component', () => {
1620
const mockOnChange = vi.fn();

src/components/form/fields/tests/CountryField.test.tsx

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,13 @@ import { JSFField, $TSFixMe } from '@/src/types/remoteFlows';
1313
import { CountryFieldDefault } from '@/src/components/form/fields/default/CountryFieldDefault';
1414

1515
// Mock dependencies
16-
vi.mock('@/src/context');
16+
vi.mock('@/src/context', async (importOriginal) => {
17+
const actual = await importOriginal<typeof import('@/src/context')>();
18+
return {
19+
...actual,
20+
useFormFields: vi.fn(),
21+
};
22+
});
1723

1824
type CountryFieldProps = JSFField & {
1925
placeholder?: string;

src/components/form/fields/tests/DatePickerField.test.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,13 @@ import { DatePickerFieldDefault } from '@/src/components/form/fields/default/Dat
88
import { $TSFixMe } from '@/src/types/remoteFlows';
99

1010
// Mock dependencies
11-
vi.mock('@/src/context', () => ({
12-
useFormFields: vi.fn(),
13-
}));
11+
vi.mock('@/src/context', async (importOriginal) => {
12+
const actual = await importOriginal<typeof import('@/src/context')>();
13+
return {
14+
...actual,
15+
useFormFields: vi.fn(),
16+
};
17+
});
1418

1519
vi.mock('date-fns', async () => {
1620
const actual = await vi.importActual('date-fns');

src/components/form/fields/tests/FieldSetField.test.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,13 @@ import { $TSFixMe } from '@/src/types/remoteFlows';
66
import { FieldsetToggleButtonDefault } from '@/src/components/form/fields/default/FieldsetToggleButtonDefault';
77
import { TextFieldDefault } from '@/src/components/form/fields/default/TextFieldDefault';
88

9-
vi.mock('@/src/context', () => ({
10-
useFormFields: vi.fn(),
11-
}));
9+
vi.mock('@/src/context', async (importOriginal) => {
10+
const actual = await importOriginal<typeof import('@/src/context')>();
11+
return {
12+
...actual,
13+
useFormFields: vi.fn(),
14+
};
15+
});
1216

1317
vi.mock('@/src/components/shared/zendesk-drawer/ZendeskTriggerButton', () => ({
1418
ZendeskTriggerButton: ({ zendeskId, children, className }: $TSFixMe) => (

src/components/form/fields/tests/FileUploadField.test.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,13 @@ import { FileUploadFieldDefault } from '@/src/components/form/fields/default/Fil
88
import { $TSFixMe } from '@/src/types/remoteFlows';
99

1010
// Mock dependencies
11-
vi.mock('@/src/context', () => ({
12-
useFormFields: vi.fn(),
13-
}));
11+
vi.mock('@/src/context', async (importOriginal) => {
12+
const actual = await importOriginal<typeof import('@/src/context')>();
13+
return {
14+
...actual,
15+
useFormFields: vi.fn(),
16+
};
17+
});
1418

1519
describe('FileUploadField Component', () => {
1620
const mockOnChange = vi.fn();

src/components/form/fields/tests/MultiSelectField.test.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,13 @@ import { $TSFixMe } from '@/src/types/remoteFlows';
1010
type MultiSelectFieldProps = React.ComponentProps<typeof MultiSelectField>;
1111

1212
// Mock dependencies
13-
vi.mock('@/src/context', () => ({
14-
useFormFields: vi.fn(),
15-
}));
13+
vi.mock('@/src/context', async (importOriginal) => {
14+
const actual = await importOriginal<typeof import('@/src/context')>();
15+
return {
16+
...actual,
17+
useFormFields: vi.fn(),
18+
};
19+
});
1620

1721
describe('MultiSelectField Component', () => {
1822
const mockOnChange = vi.fn();

src/components/form/fields/tests/NumberField.test.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,13 @@ import { NumberFieldDefault } from '@/src/components/form/fields/default/NumberF
1010
import { TextFieldDefault } from '@/src/components/form/fields/default/TextFieldDefault';
1111

1212
// Mock dependencies
13-
vi.mock('@/src/context', () => ({
14-
useFormFields: vi.fn(),
15-
}));
13+
vi.mock('@/src/context', async (importOriginal) => {
14+
const actual = await importOriginal<typeof import('@/src/context')>();
15+
return {
16+
...actual,
17+
useFormFields: vi.fn(),
18+
};
19+
});
1620

1721
describe('NumberField Component', () => {
1822
const mockOnChange = vi.fn();

src/components/form/fields/tests/RadioGroupField.test.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,13 @@ type RadioGroupFieldProps = JSFField & {
1919
};
2020

2121
// Mock dependencies
22-
vi.mock('@/src/context', () => ({
23-
useFormFields: vi.fn(),
24-
}));
22+
vi.mock('@/src/context', async (importOriginal) => {
23+
const actual = await importOriginal<typeof import('@/src/context')>();
24+
return {
25+
...actual,
26+
useFormFields: vi.fn(),
27+
};
28+
});
2529

2630
describe('RadioGroupField Component', () => {
2731
const mockOnChange = vi.fn();

src/components/form/fields/tests/SelectField.test.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,13 @@ import { $TSFixMe } from '@/src/types/remoteFlows';
1010
type SelectFieldProps = React.ComponentProps<typeof SelectField>;
1111

1212
// Mock dependencies
13-
vi.mock('@/src/context', () => ({
14-
useFormFields: vi.fn(),
15-
}));
13+
vi.mock('@/src/context', async (importOriginal) => {
14+
const actual = await importOriginal<typeof import('@/src/context')>();
15+
return {
16+
...actual,
17+
useFormFields: vi.fn(),
18+
};
19+
});
1620

1721
describe('SelectField Component', () => {
1822
const mockOnChange = vi.fn();

src/components/form/fields/tests/TelField.test.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,13 @@ import { TelFieldDefault } from '../default/TelFieldDefault';
88
import { $TSFixMe } from '@/src/types/remoteFlows';
99
import { yupResolver } from '@hookform/resolvers/yup';
1010

11-
vi.mock('@/src/context', () => ({
12-
useFormFields: vi.fn(),
13-
}));
11+
vi.mock('@/src/context', async (importOriginal) => {
12+
const actual = await importOriginal<typeof import('@/src/context')>();
13+
return {
14+
...actual,
15+
useFormFields: vi.fn(),
16+
};
17+
});
1418

1519
// Helper function to interact with Radix UI Select
1620
async function fillRadixSelect(labelText: string, countryName: string) {

0 commit comments

Comments
 (0)