@inseefr/lunatic 3.0.6 → 3.0.7
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/lib/components/CheckboxBoolean/CheckboxBoolean.js +1 -1
- package/lib/components/CheckboxGroup/CheckboxGroup.d.ts +1 -10
- package/lib/components/CheckboxGroup/CheckboxGroup.js +1 -21
- package/lib/components/CheckboxGroup/CheckboxGroup.js.map +1 -1
- package/lib/components/CheckboxGroup/CustomCheckboxGroup.d.ts +1 -3
- package/lib/components/CheckboxGroup/CustomCheckboxGroup.js +4 -2
- package/lib/components/CheckboxGroup/CustomCheckboxGroup.js.map +1 -1
- package/lib/components/CheckboxGroup/CustomCheckboxGroup.spec.js +10 -10
- package/lib/components/Sequence/Sequence.d.ts +1 -1
- package/lib/components/Subsequence/Subsequence.d.ts +1 -1
- package/lib/components/library.d.ts +3 -3
- package/lib/components/shared/Checkbox/CheckboxOption.d.ts +1 -1
- package/lib/components/shared/Checkbox/CheckboxOption.js +2 -2
- package/lib/components/shared/Checkbox/CheckboxOption.spec.js +7 -7
- package/lib/components/type.d.ts +8 -5
- package/lib/main.css +1 -0
- package/lib/main.css.map +1 -1
- package/lib/type.source.d.ts +24 -13
- package/lib/use-lunatic/commons/fill-components/fill-component-expressions.d.ts +1 -1
- package/lib/use-lunatic/commons/fill-components/fill-component-expressions.js +1 -0
- package/lib/use-lunatic/commons/fill-components/fill-component-expressions.js.map +1 -1
- package/lib/use-lunatic/props/getComponentTypeProps.d.ts +14 -9
- package/lib/use-lunatic/props/propOptions.d.ts +12 -1
- package/lib/use-lunatic/props/propOptions.js +27 -0
- package/lib/use-lunatic/props/propOptions.js.map +1 -1
- package/package.json +1 -1
|
@@ -14,6 +14,6 @@ export function CheckboxBoolean({ handleChanges, response, errors, value, ...pro
|
|
|
14
14
|
}
|
|
15
15
|
export const CustomCheckboxBoolean = slottableComponent('CheckboxBoolean', (props) => {
|
|
16
16
|
const { disabled, checked, id, onChange, label, declarations, description, errors, } = props;
|
|
17
|
-
return (_jsxs("div", { className: "lunatic-checkbox-boolean", children: [_jsx(CheckboxOption, { disabled: disabled, checked: checked, id: id,
|
|
17
|
+
return (_jsxs("div", { className: "lunatic-checkbox-boolean", children: [_jsx(CheckboxOption, { disabled: disabled, checked: checked, id: id, onCheck: onChange, label: _jsxs(_Fragment, { children: [label, _jsx(Declarations, { type: "AFTER_QUESTION_TEXT", declarations: declarations })] }), description: description, invalid: !!errors }), _jsx(ComponentErrors, { errors: errors })] }));
|
|
18
18
|
});
|
|
19
19
|
//# sourceMappingURL=CheckboxBoolean.js.map
|
|
@@ -1,11 +1,2 @@
|
|
|
1
|
-
import { type ReactNode } from 'react';
|
|
2
1
|
import type { LunaticComponentProps } from '../type';
|
|
3
|
-
export
|
|
4
|
-
id: string;
|
|
5
|
-
label: ReactNode;
|
|
6
|
-
name: string;
|
|
7
|
-
checked: boolean;
|
|
8
|
-
description?: ReactNode;
|
|
9
|
-
onClick: (b: boolean) => void;
|
|
10
|
-
};
|
|
11
|
-
export declare function CheckboxGroup({ id, value, responses, shortcut, readOnly, disabled, handleChanges, errors, label, description, declarations, }: LunaticComponentProps<'CheckboxGroup'>): import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
export declare function CheckboxGroup({ id, shortcut, readOnly, options, disabled, errors, label, description, declarations, }: LunaticComponentProps<'CheckboxGroup'>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,27 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import {} from 'react';
|
|
3
2
|
import { CustomCheckboxGroup } from './CustomCheckboxGroup';
|
|
4
3
|
import { getComponentErrors } from '../shared/ComponentErrors/ComponentErrors';
|
|
5
|
-
export function CheckboxGroup({ id,
|
|
6
|
-
const options = responses.map(({ label, response, description, id }) => {
|
|
7
|
-
const { name } = response;
|
|
8
|
-
return {
|
|
9
|
-
label,
|
|
10
|
-
name,
|
|
11
|
-
id,
|
|
12
|
-
checked: castValueToBoolean(value, name),
|
|
13
|
-
description,
|
|
14
|
-
onClick: function (checked) {
|
|
15
|
-
handleChanges([{ name: response.name, value: checked }]);
|
|
16
|
-
},
|
|
17
|
-
};
|
|
18
|
-
});
|
|
4
|
+
export function CheckboxGroup({ id, shortcut, readOnly, options, disabled, errors, label, description, declarations, }) {
|
|
19
5
|
return (_jsx(CustomCheckboxGroup, { id: id, description: description, options: options, label: label, errors: getComponentErrors(errors, id), shortcut: shortcut, disabled: disabled, readOnly: readOnly, declarations: declarations }));
|
|
20
6
|
}
|
|
21
|
-
function castValueToBoolean(value, name) {
|
|
22
|
-
if (value && name in value) {
|
|
23
|
-
return value[name] ?? false;
|
|
24
|
-
}
|
|
25
|
-
return false;
|
|
26
|
-
}
|
|
27
7
|
//# sourceMappingURL=CheckboxGroup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckboxGroup.js","sourceRoot":"","sources":["../../../src/components/CheckboxGroup/CheckboxGroup.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"CheckboxGroup.js","sourceRoot":"","sources":["../../../src/components/CheckboxGroup/CheckboxGroup.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAE/E,MAAM,UAAU,aAAa,CAAC,EAC7B,EAAE,EACF,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,MAAM,EACN,KAAK,EACL,WAAW,EACX,YAAY,GAC4B;IACxC,OAAO,CACN,KAAC,mBAAmB,IACnB,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,EACtC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,GACzB,CACF,CAAC;AACH,CAAC"}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import type { LunaticError } from '../../use-lunatic/type';
|
|
3
|
-
import { type CheckboxGroupOption } from './CheckboxGroup';
|
|
4
3
|
import type { LunaticComponentProps } from '../type';
|
|
5
|
-
type Props = Pick<LunaticComponentProps<'CheckboxGroup'>, 'id' | 'label' | 'description' | 'declarations' | 'shortcut' | 'readOnly' | 'disabled'> & {
|
|
6
|
-
options: CheckboxGroupOption[];
|
|
4
|
+
type Props = Pick<LunaticComponentProps<'CheckboxGroup'>, 'id' | 'label' | 'description' | 'declarations' | 'shortcut' | 'readOnly' | 'disabled' | 'options'> & {
|
|
7
5
|
errors?: LunaticError[];
|
|
8
6
|
};
|
|
9
7
|
export declare const CustomCheckboxGroup: import("react").ComponentType<Props>;
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import {} from './CheckboxGroup';
|
|
3
2
|
import { slottableComponent } from '../shared/HOC/slottableComponent';
|
|
4
3
|
import { ComponentErrors } from '../shared/ComponentErrors/ComponentErrors';
|
|
5
4
|
import { Fieldset } from '../shared/Fieldset/Fieldset';
|
|
6
5
|
import { CheckboxOption } from '../shared/Checkbox/CheckboxOption';
|
|
7
6
|
import { getShortcutKey } from '../shared/Checkbox/getShortcutKey';
|
|
8
7
|
import { Declarations } from '../shared/Declarations/Declarations';
|
|
8
|
+
import { CustomInput } from '../Input/Input';
|
|
9
9
|
export const CustomCheckboxGroup = slottableComponent('CheckboxGroup', ({ options, label, description, errors, shortcut, disabled, readOnly, declarations, }) => {
|
|
10
10
|
return (_jsxs(Fieldset, { className: "lunatic-checkbox-group", legend: label, description: description, children: [_jsx(Declarations, { type: "AFTER_QUESTION_TEXT", declarations: declarations }), options.map((option, index) => {
|
|
11
|
-
return (
|
|
11
|
+
return (_jsxs("div", { className: "lunatic-checkbox-group-option", children: [_jsx(CheckboxOption, { ...option, disabled: disabled, readOnly: readOnly, shortcut: shortcut, invalid: !!errors, id: option.id, codeModality: shortcut ? getShortcutKey(index, options.length) : undefined }), option.onDetailChange && option.checked && (_jsx(CustomInput, { id: "detailId", label: option.detailLabel ?? 'Précisez :', value: typeof option.detailValue === 'string'
|
|
12
|
+
? option.detailValue
|
|
13
|
+
: '', onChange: option.onDetailChange, disabled: disabled }))] }, option.id));
|
|
12
14
|
}), _jsx(ComponentErrors, { errors: errors })] }));
|
|
13
15
|
});
|
|
14
16
|
//# sourceMappingURL=CustomCheckboxGroup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomCheckboxGroup.js","sourceRoot":"","sources":["../../../src/components/CheckboxGroup/CustomCheckboxGroup.tsx"],"names":[],"mappings":";AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"CustomCheckboxGroup.js","sourceRoot":"","sources":["../../../src/components/CheckboxGroup/CustomCheckboxGroup.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAgB7C,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CACpD,eAAe,EACf,CAAC,EACA,OAAO,EACP,KAAK,EACL,WAAW,EACX,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,YAAY,GACL,EAAE,EAAE;IACX,OAAO,CACN,MAAC,QAAQ,IACR,SAAS,EAAC,wBAAwB,EAClC,MAAM,EAAE,KAAK,EACb,WAAW,EAAE,WAAW,aAExB,KAAC,YAAY,IAAC,IAAI,EAAC,qBAAqB,EAAC,YAAY,EAAE,YAAY,GAAI,EACtE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBAC9B,OAAO,CACN,eAAK,SAAS,EAAC,+BAA+B,aAC7C,KAAC,cAAc,OACV,MAAM,EACV,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,CAAC,CAAC,MAAM,EACjB,EAAE,EAAE,MAAM,CAAC,EAAE,EACb,YAAY,EACX,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,GAE5D,EACD,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,OAAO,IAAI,CAC3C,KAAC,WAAW,IACX,EAAE,EAAC,UAAU,EACb,KAAK,EAAE,MAAM,CAAC,WAAW,IAAI,YAAY,EACzC,KAAK,EACJ,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ;gCACrC,CAAC,CAAC,MAAM,CAAC,WAAW;gCACpB,CAAC,CAAC,EAAE,EAEN,QAAQ,EAAE,MAAM,CAAC,cAAc,EAC/B,QAAQ,EAAE,QAAQ,GACjB,CACF,KAxBkD,MAAM,CAAC,EAAE,CAyBvD,CACN,CAAC;YACH,CAAC,CAAC,EACF,KAAC,eAAe,IAAC,MAAM,EAAE,MAAM,GAAI,IACzB,CACX,CAAC;AACH,CAAC,CACD,CAAC"}
|
|
@@ -9,37 +9,37 @@ describe('CheckboxGroupContent', () => {
|
|
|
9
9
|
label: 'Option 1',
|
|
10
10
|
checked: false,
|
|
11
11
|
name: 'option1',
|
|
12
|
-
|
|
12
|
+
onCheck: vi.fn(),
|
|
13
13
|
},
|
|
14
14
|
{
|
|
15
15
|
id: '2',
|
|
16
16
|
label: 'Option 2',
|
|
17
17
|
checked: true,
|
|
18
18
|
name: 'option2',
|
|
19
|
-
|
|
19
|
+
onCheck: vi.fn(),
|
|
20
20
|
},
|
|
21
21
|
{
|
|
22
22
|
id: '3',
|
|
23
23
|
label: 'Option 3',
|
|
24
24
|
checked: false,
|
|
25
25
|
name: 'option3',
|
|
26
|
-
|
|
26
|
+
onCheck: vi.fn(),
|
|
27
27
|
},
|
|
28
28
|
];
|
|
29
|
-
it('calls
|
|
29
|
+
it('calls onCheck callback when an option is clicked', () => {
|
|
30
30
|
const { getByLabelText } = render(_jsx(CustomCheckboxGroup, { options: options, id: "test-checkbox-group" }));
|
|
31
31
|
const option1 = getByLabelText('Option 1');
|
|
32
32
|
const option2 = getByLabelText('Option 2');
|
|
33
33
|
const option3 = getByLabelText('Option 3');
|
|
34
34
|
fireEvent.click(option1);
|
|
35
|
-
expect(options[0].
|
|
36
|
-
expect(options[0].
|
|
35
|
+
expect(options[0].onCheck).toHaveBeenCalledTimes(1);
|
|
36
|
+
expect(options[0].onCheck).toHaveBeenCalledWith(true);
|
|
37
37
|
fireEvent.click(option2);
|
|
38
|
-
expect(options[1].
|
|
39
|
-
expect(options[1].
|
|
38
|
+
expect(options[1].onCheck).toHaveBeenCalledTimes(1);
|
|
39
|
+
expect(options[1].onCheck).toHaveBeenCalledWith(false);
|
|
40
40
|
fireEvent.click(option3);
|
|
41
|
-
expect(options[2].
|
|
42
|
-
expect(options[2].
|
|
41
|
+
expect(options[2].onCheck).toHaveBeenCalledTimes(1);
|
|
42
|
+
expect(options[2].onCheck).toHaveBeenCalledWith(true);
|
|
43
43
|
});
|
|
44
44
|
});
|
|
45
45
|
//# sourceMappingURL=CustomCheckboxGroup.spec.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
export declare const Sequence: import("react").ComponentType<Pick<import("../type").LunaticBaseProps<string>, "
|
|
2
|
+
export declare const Sequence: import("react").ComponentType<Pick<import("../type").LunaticBaseProps<string>, "label" | "description" | "declarations" | "id" | "style"> & {
|
|
3
3
|
componentType?: "Sequence" | undefined;
|
|
4
4
|
}>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
export declare const Subsequence: import("react").ComponentType<Pick<import("../type").LunaticBaseProps<string>, "
|
|
2
|
+
export declare const Subsequence: import("react").ComponentType<Pick<import("../type").LunaticBaseProps<string>, "label" | "description" | "declarations" | "id"> & {
|
|
3
3
|
componentType?: "Subsequence" | undefined;
|
|
4
4
|
}>;
|
|
@@ -16,10 +16,10 @@ import { CheckboxOne } from './CheckboxOne/CheckboxOne';
|
|
|
16
16
|
import { Suggester } from './Suggester/Suggester';
|
|
17
17
|
import { Summary } from './Summary/Summary';
|
|
18
18
|
export declare const library: {
|
|
19
|
-
Sequence: ComponentType<Pick<import("./type").LunaticBaseProps<string>, "
|
|
19
|
+
Sequence: ComponentType<Pick<import("./type").LunaticBaseProps<string>, "label" | "description" | "declarations" | "id" | "style"> & {
|
|
20
20
|
componentType?: "Sequence" | undefined;
|
|
21
21
|
}>;
|
|
22
|
-
Subsequence: ComponentType<Pick<import("./type").LunaticBaseProps<string>, "
|
|
22
|
+
Subsequence: ComponentType<Pick<import("./type").LunaticBaseProps<string>, "label" | "description" | "declarations" | "id"> & {
|
|
23
23
|
componentType?: "Subsequence" | undefined;
|
|
24
24
|
}>;
|
|
25
25
|
RosterForLoop: (props: import("./type").LunaticBaseProps<unknown> & {
|
|
@@ -72,7 +72,7 @@ export declare const library: {
|
|
|
72
72
|
} | undefined;
|
|
73
73
|
componentType?: "Switch" | undefined;
|
|
74
74
|
}>;
|
|
75
|
-
Question: ({ components, ...props }: Pick<import("./type").LunaticBaseProps<unknown>, "
|
|
75
|
+
Question: ({ components, ...props }: Pick<import("./type").LunaticBaseProps<unknown>, "label" | "description" | "declarations" | "id" | "errors" | "disabled" | "readOnly"> & {
|
|
76
76
|
components: LunaticComponentProps<keyof import("./type").ComponentPropsByType>[];
|
|
77
77
|
componentType?: "Question" | undefined;
|
|
78
78
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -3,12 +3,12 @@ import {} from 'react';
|
|
|
3
3
|
import { slottableComponent } from '../HOC/slottableComponent';
|
|
4
4
|
import { Label } from '../Label/Label';
|
|
5
5
|
import { useKeyboardKey } from '../../../hooks/useKeyboardKey';
|
|
6
|
-
function LunaticCheckboxOption({ disabled, readOnly, checked, id,
|
|
6
|
+
function LunaticCheckboxOption({ disabled, readOnly, checked, id, onCheck, label, description, codeModality, shortcut, invalid, }) {
|
|
7
7
|
const isEnabled = !readOnly && !disabled;
|
|
8
8
|
const hasKeyboardShortcut = Boolean(shortcut && codeModality && isEnabled);
|
|
9
9
|
const onClickOption = () => {
|
|
10
10
|
if (isEnabled) {
|
|
11
|
-
|
|
11
|
+
onCheck(!checked);
|
|
12
12
|
}
|
|
13
13
|
};
|
|
14
14
|
const handleKeyDown = (e) => {
|
|
@@ -5,7 +5,7 @@ import { describe, it, expect, vi } from 'vitest';
|
|
|
5
5
|
describe('CheckboxOption', () => {
|
|
6
6
|
const props = {
|
|
7
7
|
id: 'checkbox',
|
|
8
|
-
|
|
8
|
+
onCheck: vi.fn(),
|
|
9
9
|
checked: false,
|
|
10
10
|
disabled: false,
|
|
11
11
|
label: 'Option 1',
|
|
@@ -15,7 +15,7 @@ describe('CheckboxOption', () => {
|
|
|
15
15
|
};
|
|
16
16
|
const defaultProps = {
|
|
17
17
|
id: 'test-checkbox',
|
|
18
|
-
|
|
18
|
+
onCheck: vi.fn(),
|
|
19
19
|
label: 'Test checkbox',
|
|
20
20
|
};
|
|
21
21
|
it('renders the component correctly', () => {
|
|
@@ -35,18 +35,18 @@ describe('CheckboxOption', () => {
|
|
|
35
35
|
const checkbox = getByRole('checkbox');
|
|
36
36
|
expect(checkbox).toBeChecked();
|
|
37
37
|
});
|
|
38
|
-
it('calls the
|
|
38
|
+
it('calls the onCheck function when clicked', () => {
|
|
39
39
|
const { getByRole } = render(_jsx(CheckboxOption, { ...props }));
|
|
40
40
|
const checkbox = getByRole('checkbox');
|
|
41
41
|
fireEvent.click(checkbox);
|
|
42
|
-
expect(props.
|
|
43
|
-
expect(props.
|
|
42
|
+
expect(props.onCheck).toHaveBeenCalledTimes(1);
|
|
43
|
+
expect(props.onCheck).toHaveBeenCalledWith(true);
|
|
44
44
|
});
|
|
45
|
-
it('calls the
|
|
45
|
+
it('calls the onCheck function when space key is pressed', () => {
|
|
46
46
|
const { getByRole } = render(_jsx(CheckboxOption, { ...defaultProps }));
|
|
47
47
|
const checkbox = getByRole('checkbox');
|
|
48
48
|
fireEvent.keyDown(checkbox, { code: 'Space' });
|
|
49
|
-
expect(defaultProps.
|
|
49
|
+
expect(defaultProps.onCheck).toHaveBeenCalledWith(true);
|
|
50
50
|
});
|
|
51
51
|
});
|
|
52
52
|
//# sourceMappingURL=CheckboxOption.spec.js.map
|
package/lib/components/type.d.ts
CHANGED
|
@@ -157,14 +157,17 @@ export type ComponentPropsByType = {
|
|
|
157
157
|
componentType?: 'Datepicker';
|
|
158
158
|
};
|
|
159
159
|
CheckboxGroup: LunaticBaseProps<Record<string, boolean | null>> & {
|
|
160
|
-
|
|
160
|
+
options: {
|
|
161
161
|
id: string;
|
|
162
162
|
label: ReactNode;
|
|
163
|
+
name: string;
|
|
164
|
+
checked: boolean;
|
|
163
165
|
description?: ReactNode;
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
166
|
+
onCheck: (b: boolean) => void;
|
|
167
|
+
onDetailChange?: (v: string) => void;
|
|
168
|
+
detailValue?: string | null;
|
|
169
|
+
detailLabel?: ReactNode;
|
|
170
|
+
}[];
|
|
168
171
|
componentType?: 'CheckboxGroup';
|
|
169
172
|
};
|
|
170
173
|
CheckboxOne: LunaticBaseProps<string | null> & {
|
package/lib/main.css
CHANGED
package/lib/main.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../src/css/main.scss","../src/css/components/Button.scss","../src/css/components/CheckboxGroup.scss","../src/css/components/CheckboxOne.scss","../src/css/components/CheckboxOption.scss","../src/css/components/Combobox.scss","../src/css/components/ComponentErrors.scss","../src/css/components/Datepicker.scss","../src/css/components/Declarations.scss","../src/css/components/Dropdown.scss","../src/css/components/Duration.scss","../src/css/components/Fieldset.scss","../src/css/components/IconButton.scss","../src/css/components/Input.scss","../src/css/components/InputNumber.scss","../src/css/components/Label.scss","../src/css/components/Missing.scss","../src/css/components/ModalControls.scss","../src/css/components/RosterForLoop.scss","../src/css/components/Roundabout.scss","../src/css/components/Sequence.scss","../src/css/components/Suggester.scss","../src/css/components/Table.scss","../src/css/components/Textarea.scss","../src/css/components/VariableStatus.scss","../src/css/components/Dragger.scss","../src/css/components/SuggesterWidget.scss"],"names":[],"mappings":";AAAA;EACE;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;;;AAkBF;AA0BE;AA+BA;;AAxDA;EACE;EACA;;AAEF;EACE;EACA;;AAIF;AAAA;AAAA;AAAA;AAAA;EAKE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AASF;EACE;;AAEA;EACE;EACA;;AACA;EACE;;AAGJ;EACE;EACA;;AACA;EACE;;AAGJ;EACE;;AAEF;EACE;;AAMJ;EAzEA;EACA;;AA2EA;EA5EA;EACA;;AA8EA;EACE;EA3EF;EACA;EACA;;AAEA;EACE;;AAyEF;EA9EA;EACA;EACA;;AAEA;EACE;;AA6EF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;AACA;EACE;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEE;EACE;;AAEF;EACE;;;AAMR;EACE;;;AC3JF;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EAEC;EACA;EACA;;AAED;EACC;EACA;EACA;;AAED;EACC;EACA;;;AClBE;EACE;EACA;;AAGJ;EACE;EACA;;;
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../src/css/main.scss","../src/css/components/Button.scss","../src/css/components/CheckboxGroup.scss","../src/css/components/CheckboxOne.scss","../src/css/components/CheckboxOption.scss","../src/css/components/Combobox.scss","../src/css/components/ComponentErrors.scss","../src/css/components/Datepicker.scss","../src/css/components/Declarations.scss","../src/css/components/Dropdown.scss","../src/css/components/Duration.scss","../src/css/components/Fieldset.scss","../src/css/components/IconButton.scss","../src/css/components/Input.scss","../src/css/components/InputNumber.scss","../src/css/components/Label.scss","../src/css/components/Missing.scss","../src/css/components/ModalControls.scss","../src/css/components/RosterForLoop.scss","../src/css/components/Roundabout.scss","../src/css/components/Sequence.scss","../src/css/components/Suggester.scss","../src/css/components/Table.scss","../src/css/components/Textarea.scss","../src/css/components/VariableStatus.scss","../src/css/components/Dragger.scss","../src/css/components/SuggesterWidget.scss"],"names":[],"mappings":";AAAA;EACE;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;;;AAkBF;AA0BE;AA+BA;;AAxDA;EACE;EACA;;AAEF;EACE;EACA;;AAIF;AAAA;AAAA;AAAA;AAAA;EAKE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AASF;EACE;;AAEA;EACE;EACA;;AACA;EACE;;AAGJ;EACE;EACA;;AACA;EACE;;AAGJ;EACE;;AAEF;EACE;;AAMJ;EAzEA;EACA;;AA2EA;EA5EA;EACA;;AA8EA;EACE;EA3EF;EACA;EACA;;AAEA;EACE;;AAyEF;EA9EA;EACA;EACA;;AAEA;EACE;;AA6EF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;AACA;EACE;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEE;EACE;;AAEF;EACE;;;AAMR;EACE;;;AC3JF;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EAEC;EACA;EACA;;AAED;EACC;EACA;EACA;;AAED;EACC;EACA;;;AClBE;EACE;EACA;;AAGJ;EACE;EACA;EACA;;;ACTF;EACC;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AACA;EACC;;;ACdJ;EACC;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;EACA;;;AAIF;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;;;AAIF;EACC;;;AAGD;AAAA;EAEC;;AAEA;AAAA;EAEC;EACA;;;AAQD;AAAA;EACC;;;AAMF;EACC;;AAEA;EACC;;;AAKF;EACC;;;AAGD;EACC;EACA;EACA;EACA;EACA;;;ACpDD;EACC;EACA;;AAEA;EACC;EACA;EACA;EACA;EACA;EACA;EAEA;;AACA;EACC;EACA;EACA;;AAEC;EACC;EACA;EACA;;AACA;EACC;;AAED;EACC;EACA;EACA;EACA;EApCL;;AAuCK;EAhDL;EASA;EAPA;EACA;EACA;EACA;;AAgDI;EACC;EACA;EACA;EACA;EAhDL;EAkDK;EACA;EACA;EA7DL;EASA;EAPA;EACA;EACA;EACA;;AA2DK;EACC;EACA;EACA;;AAGD;EACC;;AAKH;EAnEH;EAqEI;EACA;EACA;EACA;;AAGA;EACC;EACA;EACA;EACA;EACA;EACA;;AAED;EACC;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;;AAED;EACC;EACA;;AAQN;EACC;EACA;EACA;EACA;;AACA;EACC;;AAIA;EACC;EACA;EACA;EACA;;AAKH;EACC;EACA;;AAEA;EACC;;AAGD;EACC;;AAGD;EACC;;AAEA;EACC;;AACA;EACC;EACA;EACA;EACA;EAKA;;AAJA;EACC;;AAMF;EAEC;EACA;EACA;EACA;EACA;;AACA;EACC;;AAKH;AAAA;AAAA;AAAA;EAIC;EACA;EACA;EACA;;AAIA;EACC;;AAED;EACC;EApMJ;EACA;EACA;;;ACFA;EACC;;;ACFF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AChBD;EACC;;AAGD;EACC;EACA;;AAGD;EACC;EACA;EACA;;AAGD;EACC;EACA;EACA;;AAGD;EACC;EACA;EACA;EACA;EACA;EACA;;AACA;EACC;;AAIF;EACC;EACA;;AACA;EACC;;;ACxBD;EACC;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;;AAGD;EACC;EACA;;AAGD;EACC;;;ACjCJ;AAAA;EAEE;EACA;EACA;;;AAEF;EACE;;;ACPF;EACC;EACA;EACA;;;ACHD;EACC;EACA;;;AAID;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACC;EACA;EACA;;AAGD;EACC;EACA;;AAGD;EACC;;AAGD;EACC;EACA;;;AC9BA;AAAA;AAAA;AAAA;EACC;;AACA;AAAA;AAAA;AAAA;EACC;EACA;EACA;;AAGF;AAAA;AAAA;AAAA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;AAAA;AAAA;AAAA;EACC;EACA;;AAED;AAAA;AAAA;AAAA;EACC;;AAED;AAAA;AAAA;AAAA;EACC;;AAIF;AAAA;AAAA;AAAA;EACC;EACA;EACA;;;ACnCF;EACC;;AAEA;EACC;;;ACNF;EACC;EACA;;;ACHF;EACC;;;AAED;EACC;EACA;EACA;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;ACzBD;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACC;EACA;EACA;;AAGD;EACC;EACA;;AACA;EACC;;AAMF;AAAA;AAAA;AAAA;EAIC;EACA;;AAGF;EACC;EACA;;;AClBF;EACC;EACA;EACA;EACA;;AAEC;EACC;EACA;;;ACnCH;EACC;;AAGC;EACC;;AAGD;EACC;;;ACRF;EACC;EACA;EACA;EACA;EACA;EACA;;;AC8BD;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AAIA;EACC;;AACA;EACC;EACA;EACA;;AAQC;EACC;EACA;EACA;;AACA;EACC;;AAED;EACC;EACA;EACA;EACA;EAvEN;;AA0EM;EAlEN;EARA;EAUA;EACA;EACA;EACA;;AAkEK;EACC;EACA;EACA;EACA;EACA;EApFN;;AAuFM;EACC;EAhFP;EARA;EAUA;EACA;EACA;EACA;;AA8EM;EACC;EACA;EACA;;AAGD;EACC;;AAKH;EAvGJ;EAyGK;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;EACA;EACA;;AAED;EACC;EACA;EACA;EACA;EACA;EACA;;AACA;EACC;EACA;;AAED;EACC;EACA;;AASP;EACC;EACA;EACA;;AAEA;EACC;;AAjIF;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAsHA;EACC;;AArIF;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AA0HA;EACC;;AAzIF;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AA+HA;EACC;EACA;;AACA;EACC;EACA;EACA;;;ACrKJ;EACC;EACA;EACA;EACA;;AAEA;EACC;EACA;;AAGD;AAAA;EAEC;EACA;EACA;;AAGD;EACC;EACA;EACA;EACA;EACA;EAEA;EACA;;AAIA;AAAA;EAEC;EACA;EACA;;;AAKD;EACE;EACA;;;ACtCH;EACC;EACA;;;ACLF;EACC;AAMA;AAUA;;AAdA;EACC;;AAID;EACC;EACA;EACA;EACA;EACA;EACA;;AAID;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AAEC;EACC;;AAED;EACC;;;AC/BJ;EACE;EACA;EACA;EACA;EACA;EACA;;;ACaD;EACC;EACA;;AAED;EACC;EACA;EACA,kBA1BO;EA2BP;EACA;EACA;EACA;;AAlBD;EACC;EACA;;AAoBA;EACC;EACA;EACA;EACA;;AACA;EACC;EACA,OAxCK;EAyCL;EACA;EACA;;AAED;EACC,OA9CK;EA+CL;EACA;EACA;EACA;;AAED;EACC;EACA;EACA;EACA;EACA;EACA,kBA1DK;;AA4DL;EACC;EACA;;AAGD;EACC,kBAjEI;EAkEJ;EACA;;AAIA;EACC;EACA;EACA,MA5EG;;AAiFN;EACC;EACA;EACA;EACA;;AAGC;EACC,cAvFG;EAwFH;EAMA;;AALA;EACC,kBA1FE;EA2FF;;AAOH;EACC;EACA;EACA;;AACA;EACC,kBAxGG;EAyGH;;AAMJ;EACC;EACA;EACA;EACA,kBApHM;EAqHN;EACA;EACA;EACA;EACA;;AAGC;EACC;;AAIF;EACC;EACA;EACA,MAnIK;;AAWR;EACC;EACA;;AA4HA;EACC;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA,kBAnJK;EAoJL;EACA;;AAEA;EACC;;AAGD;EACC,kBA1JI;EA2JJ;;AAGD;EACC;;AACA;EACC;;AAED;EACC;EACA;EACA,MAzKG","file":"main.css"}
|
package/lib/type.source.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ export type ComponentDefinitionWithPage = ComponentDefinition & ({
|
|
|
8
8
|
} | {
|
|
9
9
|
goToPage: string;
|
|
10
10
|
});
|
|
11
|
-
export type ComponentDefinition = ComponentInputDefinition | ComponentSequenceDefinition | ComponentRoundaboutDefinition | ComponentLoopDefinition | ComponentRosterForLoopDefinition | ComponentTableDefinition | ComponentNumberDefinition | ComponentDurationDefinition | ComponentDatePickerDefinition | ComponentCheckboxGroupDefinition | ComponentCheckboxBooleanDefinition | ComponentRadioDefinition | ComponentDropdownDefinition | ComponentQuestionDefinition | ComponentCheckboxOneDefinition | ComponentSuggesterDefinition | ComponentPairWiseLinksDefinition | ComponentSummaryDefinition | ComponentText;
|
|
11
|
+
export type ComponentDefinition = ComponentInputDefinition | ComponentSequenceDefinition | ComponentRoundaboutDefinition | ComponentLoopDefinition | ComponentRosterForLoopDefinition | ComponentTableDefinition | ComponentNumberDefinition | ComponentDurationDefinition | ComponentDatePickerDefinition | ComponentCheckboxGroupDefinition | ComponentCheckboxBooleanDefinition | ComponentRadioDefinition | ComponentDropdownDefinition | ComponentQuestionDefinition | ComponentCheckboxOneDefinition | ComponentSuggesterDefinition | ComponentPairWiseLinksDefinition | ComponentSummaryDefinition | ComponentText | ComponentAccordion;
|
|
12
12
|
export type ComponentInputDefinition = ComponentInputDefinition1 & {
|
|
13
13
|
componentType: 'Input' | 'Textarea';
|
|
14
14
|
maxLength?: number;
|
|
@@ -117,6 +117,10 @@ export type ComponentCheckboxGroupDefinition = ComponentCheckboxGroupDefinition1
|
|
|
117
117
|
description?: VTLExpression;
|
|
118
118
|
response: ResponseDefinition;
|
|
119
119
|
id: string;
|
|
120
|
+
detail?: {
|
|
121
|
+
label?: VTLExpression;
|
|
122
|
+
response: ResponseDefinition;
|
|
123
|
+
};
|
|
120
124
|
}[];
|
|
121
125
|
};
|
|
122
126
|
export type ComponentCheckboxGroupDefinition1 = ComponentDefinitionBase;
|
|
@@ -126,9 +130,20 @@ export type ComponentCheckboxBooleanDefinition = ComponentCheckboxBooleanDefinit
|
|
|
126
130
|
export type ComponentCheckboxBooleanDefinition1 = ComponentDefinitionBaseWithResponse;
|
|
127
131
|
export type ComponentRadioDefinition = ComponentRadioDefinition1 & {
|
|
128
132
|
componentType: 'Radio';
|
|
129
|
-
options:
|
|
133
|
+
options: OptionsWithDetail;
|
|
130
134
|
};
|
|
131
135
|
export type ComponentRadioDefinition1 = ComponentDefinitionBaseWithResponse;
|
|
136
|
+
export type OptionsWithDetail = {
|
|
137
|
+
value: string | boolean;
|
|
138
|
+
label: VTLExpression;
|
|
139
|
+
description?: VTLExpression;
|
|
140
|
+
detail?: {
|
|
141
|
+
label: VTLExpression;
|
|
142
|
+
response: {
|
|
143
|
+
name: string;
|
|
144
|
+
};
|
|
145
|
+
};
|
|
146
|
+
}[];
|
|
132
147
|
export type ComponentDropdownDefinition = ComponentDropdownDefinition1 & {
|
|
133
148
|
componentType: 'Dropdown';
|
|
134
149
|
options: Options;
|
|
@@ -144,17 +159,6 @@ export type ComponentCheckboxOneDefinition = ComponentCheckboxOneDefinition1 & {
|
|
|
144
159
|
options: OptionsWithDetail;
|
|
145
160
|
};
|
|
146
161
|
export type ComponentCheckboxOneDefinition1 = ComponentDefinitionBaseWithResponse;
|
|
147
|
-
export type OptionsWithDetail = {
|
|
148
|
-
value: string | boolean;
|
|
149
|
-
label: VTLExpression;
|
|
150
|
-
description?: VTLExpression;
|
|
151
|
-
detail?: {
|
|
152
|
-
label: VTLExpression;
|
|
153
|
-
response: {
|
|
154
|
-
name: string;
|
|
155
|
-
};
|
|
156
|
-
};
|
|
157
|
-
}[];
|
|
158
162
|
export type ComponentSuggesterDefinition = ComponentSuggesterDefinition1 & {
|
|
159
163
|
componentType: 'Suggester';
|
|
160
164
|
/**
|
|
@@ -336,6 +340,13 @@ export interface ComponentText {
|
|
|
336
340
|
componentType: 'Text';
|
|
337
341
|
label: VTLExpression;
|
|
338
342
|
}
|
|
343
|
+
export interface ComponentAccordion {
|
|
344
|
+
componentType: 'Accordion';
|
|
345
|
+
items: {
|
|
346
|
+
label: VTLExpression;
|
|
347
|
+
body: VTLExpression;
|
|
348
|
+
}[];
|
|
349
|
+
}
|
|
339
350
|
export interface SuggesterDefinition {
|
|
340
351
|
/**
|
|
341
352
|
* Name of the list (will be used as storeName for suggester)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ReactNode } from 'react';
|
|
2
2
|
import type { LunaticComponentDefinition, LunaticExpression, LunaticReducerState } from '../../type';
|
|
3
3
|
type UntranslatedProperties = 'expressions' | 'sections';
|
|
4
|
-
export type DeepTranslateExpression<T> = T extends LunaticExpression ? ReactNode : T extends {
|
|
4
|
+
export type DeepTranslateExpression<T> = T extends LunaticExpression ? ReactNode : T extends (infer ElementType)[] ? DeepTranslateExpression<ElementType>[] : T extends {
|
|
5
5
|
[k: string | number]: unknown;
|
|
6
6
|
} ? {
|
|
7
7
|
[key in keyof T]: key extends UntranslatedProperties ? T[key] : DeepTranslateExpression<T[key]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fill-component-expressions.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/fill-components/fill-component-expressions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAOpD,MAAM,cAAc,GAAG;IACtB,CAAC,OAAO,EAAE,IAAI,CAAC;IACf,CAAC,eAAe,EAAE,IAAI,CAAC;IACvB,CAAC,oBAAoB,EAAE,IAAI,CAAC;IAC5B,CAAC,aAAa,EAAE,IAAI,CAAC;IACrB,CAAC,YAAY,EAAE,UAAU,CAAC;IAC1B,CAAC,iBAAiB,EAAE,IAAI,CAAC;IACzB,CAAC,uBAAuB,EAAE,IAAI,CAAC;IAC/B,CAAC,qBAAqB,EAAE,IAAI,CAAC;IAC7B,CAAC,sBAAsB,EAAE,IAAI,CAAC;IAC9B,CAAC,qBAAqB,EAAE,UAAU,CAAC;IACnC,CAAC,aAAa,EAAE,IAAI,CAAC;IACrB,CAAC,YAAY,EAAE,IAAI,CAAC;IACpB,CAAC,WAAW,EAAE,UAAU,CAAC;IACzB,CAAC,WAAW,EAAE,UAAU,CAAC;IACzB,CAAC,iBAAiB,EAAE,UAAU,CAAC;IAC/B,CAAC,iBAAiB,EAAE,UAAU,CAAC;IAC/B,CAAC,iBAAiB,EAAE,QAAQ,CAAC;IAC7B,CAAC,cAAc,EAAE,IAAI,CAAC;IACtB,CAAC,UAAU,EAAE,QAAQ,CAAC;IACtB,CAAC,UAAU,EAAE,QAAQ,CAAC;IACtB,iBAAiB;IACjB,CAAC,iBAAiB,EAAE,UAAU,CAAC;IAC/B,CAAC,sBAAsB,EAAE,UAAU,CAAC;CAC3B,CAAC;AAEX,SAAS,UAAU,CAAC,CAAU;IAC7B,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAC;IACV,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACxB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,QAAQ,CAAC,CAAU;IAC3B,IAAI,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,CAAC,CAAC;IACV,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAED,SAAS,UAAU,CAAC,CAAU;IAC7B,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAC;IACV,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;IACrB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,CAAC,CAAC,EAAE,CAAC;QACR,OAAO,EAAE,CAAC;IACX,CAAC;IACD,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;AACrB,CAAC;
|
|
1
|
+
{"version":3,"file":"fill-component-expressions.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/fill-components/fill-component-expressions.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,11 +34,11 @@ export declare function getComponentTypeProps(component: DeepTranslateExpression
|
|
|
34
34
|
componentType?: "Textarea" | undefined;
|
|
35
35
|
} & {
|
|
36
36
|
conditionFilter?: boolean | undefined;
|
|
37
|
-
}) | (Pick<import("../../components/type").LunaticBaseProps<string>, "
|
|
37
|
+
}) | (Pick<import("../../components/type").LunaticBaseProps<string>, "label" | "description" | "declarations" | "id" | "style"> & {
|
|
38
38
|
componentType?: "Sequence" | undefined;
|
|
39
39
|
} & {
|
|
40
40
|
conditionFilter?: boolean | undefined;
|
|
41
|
-
}) | (Pick<import("../../components/type").LunaticBaseProps<string>, "
|
|
41
|
+
}) | (Pick<import("../../components/type").LunaticBaseProps<string>, "label" | "description" | "declarations" | "id"> & {
|
|
42
42
|
componentType?: "Subsequence" | undefined;
|
|
43
43
|
} & {
|
|
44
44
|
conditionFilter?: boolean | undefined;
|
|
@@ -49,7 +49,9 @@ export declare function getComponentTypeProps(component: DeepTranslateExpression
|
|
|
49
49
|
iteration?: number | undefined;
|
|
50
50
|
nbIterations?: number | undefined;
|
|
51
51
|
subPage?: number | undefined;
|
|
52
|
-
}) => void;
|
|
52
|
+
}) => void; /**
|
|
53
|
+
* Get component specific props (RoundAbout for instance)
|
|
54
|
+
*/
|
|
53
55
|
page: number;
|
|
54
56
|
locked?: boolean | undefined;
|
|
55
57
|
expressions: {
|
|
@@ -153,13 +155,16 @@ export declare function getComponentTypeProps(component: DeepTranslateExpression
|
|
|
153
155
|
} & {
|
|
154
156
|
conditionFilter?: boolean | undefined;
|
|
155
157
|
}) | (import("../../components/type").LunaticBaseProps<Record<string, boolean | null>> & {
|
|
156
|
-
|
|
158
|
+
options: {
|
|
157
159
|
id: string;
|
|
158
160
|
label: import("react").ReactNode;
|
|
161
|
+
name: string;
|
|
162
|
+
checked: boolean;
|
|
159
163
|
description?: import("react").ReactNode;
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
164
|
+
onCheck: (b: boolean) => void;
|
|
165
|
+
onDetailChange?: ((v: string) => void) | undefined;
|
|
166
|
+
detailValue?: string | null | undefined;
|
|
167
|
+
detailLabel?: import("react").ReactNode;
|
|
163
168
|
}[];
|
|
164
169
|
componentType?: "CheckboxGroup" | undefined;
|
|
165
170
|
} & {
|
|
@@ -192,7 +197,7 @@ export declare function getComponentTypeProps(component: DeepTranslateExpression
|
|
|
192
197
|
componentType?: "Dropdown" | undefined;
|
|
193
198
|
} & {
|
|
194
199
|
conditionFilter?: boolean | undefined;
|
|
195
|
-
}) | (Pick<import("../../components/type").LunaticBaseProps<unknown>, "
|
|
200
|
+
}) | (Pick<import("../../components/type").LunaticBaseProps<unknown>, "label" | "description" | "declarations" | "id" | "errors" | "disabled" | "readOnly"> & {
|
|
196
201
|
components: import("../..").LunaticComponentProps<keyof import("../../components/type").ComponentPropsByType>[];
|
|
197
202
|
componentType?: "Question" | undefined;
|
|
198
203
|
} & {
|
|
@@ -296,7 +301,7 @@ export declare function getComponentTypeProps(component: DeepTranslateExpression
|
|
|
296
301
|
componentType?: "Switch" | undefined;
|
|
297
302
|
} & {
|
|
298
303
|
conditionFilter?: boolean | undefined;
|
|
299
|
-
}) | (Pick<import("../../components/type").LunaticBaseProps<string>, "
|
|
304
|
+
}) | (Pick<import("../../components/type").LunaticBaseProps<string>, "label" | "id"> & {
|
|
300
305
|
componentType?: "FilterDescription" | undefined;
|
|
301
306
|
} & {
|
|
302
307
|
conditionFilter?: boolean | undefined;
|
|
@@ -8,7 +8,7 @@ export type InterpretedOption = {
|
|
|
8
8
|
checked?: boolean;
|
|
9
9
|
detailLabel?: ReactNode;
|
|
10
10
|
description?: ReactNode;
|
|
11
|
-
detailValue?:
|
|
11
|
+
detailValue?: string | null;
|
|
12
12
|
onDetailChange?: (value: string) => void;
|
|
13
13
|
onCheck?: () => void;
|
|
14
14
|
};
|
|
@@ -16,10 +16,21 @@ export type InterpretedOption = {
|
|
|
16
16
|
* Compute options for checkboxes / radios
|
|
17
17
|
*/
|
|
18
18
|
export declare function getOptionsProp(definition: DeepTranslateExpression<LunaticComponentDefinition>, state: Parameters<typeof fillComponent>[1], value: unknown): {
|
|
19
|
+
label: import("../../type.source").VTLExpression;
|
|
20
|
+
name: string;
|
|
21
|
+
id: string;
|
|
22
|
+
checked: boolean;
|
|
23
|
+
description: import("../../type.source").VTLExpression | undefined;
|
|
24
|
+
detailLabel: import("../../type.source").VTLExpression | undefined;
|
|
25
|
+
detailValue: unknown;
|
|
26
|
+
onCheck: (checked: boolean) => void;
|
|
27
|
+
onDetailChange: ((v: string) => void) | undefined;
|
|
28
|
+
}[] | {
|
|
19
29
|
label: import("../../type.source").VTLExpression;
|
|
20
30
|
description: import("../../type.source").VTLExpression | undefined;
|
|
21
31
|
value: string | boolean;
|
|
22
32
|
checked: boolean;
|
|
33
|
+
detailLabel: import("../../type.source").VTLExpression | undefined;
|
|
23
34
|
onCheck: () => void;
|
|
24
35
|
detailValue: unknown;
|
|
25
36
|
onDetailChange: ((value: string) => void) | null;
|
|
@@ -4,6 +4,32 @@ import { isNumber } from '../../utils/number';
|
|
|
4
4
|
* Compute options for checkboxes / radios
|
|
5
5
|
*/
|
|
6
6
|
export function getOptionsProp(definition, state, value) {
|
|
7
|
+
if (definition.componentType === 'CheckboxGroup') {
|
|
8
|
+
const iteration = state.pager.iteration
|
|
9
|
+
? [state.pager.iteration]
|
|
10
|
+
: undefined;
|
|
11
|
+
return definition.responses.map((response) => ({
|
|
12
|
+
label: response.label,
|
|
13
|
+
name: response.response.name,
|
|
14
|
+
id: response.id,
|
|
15
|
+
checked: !!state.variables.get(response.response.name, iteration),
|
|
16
|
+
description: response.description,
|
|
17
|
+
detailLabel: response.detail?.label,
|
|
18
|
+
detailValue: response.detail?.response
|
|
19
|
+
? state.variables.get(response.detail.response.name, iteration)
|
|
20
|
+
: undefined,
|
|
21
|
+
onCheck: (checked) => {
|
|
22
|
+
state.handleChanges([{ name: response.response.name, value: checked }]);
|
|
23
|
+
},
|
|
24
|
+
onDetailChange: response.detail?.response
|
|
25
|
+
? (v) => {
|
|
26
|
+
state.handleChanges([
|
|
27
|
+
{ name: response.detail.response.name, value: v },
|
|
28
|
+
]);
|
|
29
|
+
}
|
|
30
|
+
: undefined,
|
|
31
|
+
}));
|
|
32
|
+
}
|
|
7
33
|
if (!('options' in definition)) {
|
|
8
34
|
return [];
|
|
9
35
|
}
|
|
@@ -12,6 +38,7 @@ export function getOptionsProp(definition, state, value) {
|
|
|
12
38
|
description: option.description,
|
|
13
39
|
value: option.value,
|
|
14
40
|
checked: value === option.value,
|
|
41
|
+
detailLabel: 'detail' in option ? option.detail?.label : undefined,
|
|
15
42
|
onCheck: () => {
|
|
16
43
|
state.handleChanges([
|
|
17
44
|
{ name: definition.response.name, value: option.value },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"propOptions.js","sourceRoot":"","sources":["../../../src/use-lunatic/props/propOptions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAE3E,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAa9C;;GAEG;AACH,MAAM,UAAU,cAAc,CAC7B,UAA+D,EAC/D,KAA0C,EAC1C,KAAc;IAEd,IAAI,CAAC,CAAC,SAAS,IAAI,UAAU,CAAC,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC;IACX,CAAC;
|
|
1
|
+
{"version":3,"file":"propOptions.js","sourceRoot":"","sources":["../../../src/use-lunatic/props/propOptions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAE3E,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAa9C;;GAEG;AACH,MAAM,UAAU,cAAc,CAC7B,UAA+D,EAC/D,KAA0C,EAC1C,KAAc;IAEd,IAAI,UAAU,CAAC,aAAa,KAAK,eAAe,EAAE,CAAC;QAClD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS;YACtC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;YACzB,CAAC,CAAC,SAAS,CAAC;QACb,OAAO,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC9C,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI;YAC5B,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;YACjE,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,WAAW,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK;YACnC,WAAW,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ;gBACrC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;gBAC/D,CAAC,CAAC,SAAS;YACZ,OAAO,EAAE,CAAC,OAAgB,EAAE,EAAE;gBAC7B,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;YACzE,CAAC;YACD,cAAc,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ;gBACxC,CAAC,CAAC,CAAC,CAAS,EAAE,EAAE;oBACd,KAAK,CAAC,aAAa,CAAC;wBACnB,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE;qBAClD,CAAC,CAAC;gBACJ,CAAC;gBACF,CAAC,CAAC,SAAS;SACZ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,CAAC,SAAS,IAAI,UAAU,CAAC,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,OAAO,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC1C,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,OAAO,EAAE,KAAK,KAAK,MAAM,CAAC,KAAK;QAC/B,WAAW,EAAE,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS;QAClE,OAAO,EAAE,GAAG,EAAE;YACb,KAAK,CAAC,aAAa,CAAC;gBACnB,EAAE,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE;aACvD,CAAC,CAAC;QACJ,CAAC;QACD,WAAW,EACV,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM;YAClC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CACnB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAC3B,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;gBAC9B,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;gBACzB,CAAC,CAAC,SAAS,CACZ;YACF,CAAC,CAAC,IAAI;QACR,cAAc,EACb,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM;YAClC,CAAC,CAAC,CAAC,KAAa,EAAE,EAAE;gBAClB,KAAK,CAAC,aAAa,CAAC;oBACnB,EAAE,IAAI,EAAE,MAAM,CAAC,MAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE;iBAC7C,CAAC,CAAC;YACJ,CAAC;YACF,CAAC,CAAC,IAAI;KACR,CAAC,CAAC,CAAC;AACL,CAAC"}
|