@conduction/components 2.1.32 → 2.1.34
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/README.md +2 -0
- package/lib/components/card/detailsCard/DetailsCard.d.ts +0 -1
- package/lib/components/card/downloadCard/DownloadCard.d.ts +0 -1
- package/lib/components/card/horizontalImageCard/HorizontalImageCard.d.ts +0 -1
- package/lib/components/card/imageAndDetailsCard/ImageAndDetailsCard.d.ts +0 -1
- package/lib/components/card/infoCard/InfoCard.d.ts +0 -1
- package/lib/components/card/richContentCard/RichContentCard.d.ts +0 -1
- package/lib/components/codeBlock/CodeBlock.d.ts +0 -1
- package/lib/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.d.ts +0 -1
- package/lib/components/denhaag-wrappers/pagination/Pagination.d.ts +0 -1
- package/lib/components/editableTableRow/EditableTableRow.d.ts +0 -1
- package/lib/components/formFields/checkbox/checkbox.d.ts +0 -1
- package/lib/components/formFields/createKeyValue/CreateKeyValue.d.ts +0 -1
- package/lib/components/formFields/date/Date.d.ts +0 -1
- package/lib/components/formFields/errorMessage/ErrorMessage.d.ts +0 -1
- package/lib/components/formFields/input.js +8 -12
- package/lib/components/formFields/radio.d.ts +0 -1
- package/lib/components/formFields/select/select.d.ts +4 -4
- package/lib/components/formFields/select/select.js +6 -6
- package/lib/components/formFields/select/select.module.css +14 -9
- package/lib/components/formFields/textarea.d.ts +0 -1
- package/lib/components/formFields/textarea.js +2 -2
- package/lib/components/imageDivider/ImageDivider.d.ts +0 -1
- package/lib/components/logo/Logo.d.ts +0 -1
- package/lib/components/metaIcon/MetaIcon.d.ts +0 -1
- package/lib/components/notificationPopUp/NotificationPopUp.d.ts +0 -1
- package/lib/components/tag/Tag.d.ts +0 -1
- package/lib/components/topNav/primaryTopNav/PrimaryTopNav.d.ts +0 -1
- package/lib/components/topNav/secondaryTopNav/SecondaryTopNav.d.ts +0 -1
- package/lib/index.d.ts +0 -1
- package/package.json +1 -1
- package/src/components/formFields/input.tsx +9 -18
- package/src/components/formFields/select/select.module.css +14 -9
- package/src/components/formFields/select/select.tsx +7 -3
- package/src/components/formFields/textarea.tsx +2 -2
package/README.md
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
- **Version 2.1 (breaking changes from 2.0.x)**
|
|
6
6
|
|
|
7
|
+
- 2.1.34: Refactor Den Haag textbox and textarea to Utrecht; add Single Select design tokens.
|
|
8
|
+
- 2.1.33: Added optional placeholder to all select elements.
|
|
7
9
|
- 2.1.32: Add inline-padding to container, remove redundant (breaking and unused) components, up React version.
|
|
8
10
|
- 2.1.31: Removed Den Haag implementations which hold shapeRendering warnings.
|
|
9
11
|
- 2.1.29/2.1.30: Added optional menuPlacement to all select elements.
|
|
@@ -1,16 +1,12 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
3
|
-
import { TextField } from "@gemeente-denhaag/textfield";
|
|
4
|
-
import { faEyeSlash, faEye } from "@fortawesome/free-solid-svg-icons";
|
|
5
|
-
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
|
|
2
|
+
import { Textbox } from "@utrecht/component-library-react/dist/css-module";
|
|
6
3
|
import { ErrorMessage } from "./errorMessage/ErrorMessage";
|
|
7
4
|
export const InputPassword = ({ disabled, name, validation, register, placeholder, errors, hideErrorMessage, }) => {
|
|
8
|
-
|
|
9
|
-
return (_jsxs(_Fragment, { children: [_jsx(TextField, { type: showPassword ? "text" : "password", ...{ disabled, placeholder }, ...register(name, { ...validation }), invalid: errors[name], icon: _jsx("span", { onClick: () => setShowPassword(!showPassword), children: showPassword ? _jsx(FontAwesomeIcon, { icon: faEye }) : _jsx(FontAwesomeIcon, { icon: faEyeSlash }) }) }), errors[name] && !hideErrorMessage && _jsx(ErrorMessage, { message: errors[name].message })] }));
|
|
5
|
+
return (_jsxs(_Fragment, { children: [_jsx(Textbox, { type: "password", ...{ disabled, placeholder }, ...register(name, { ...validation }), invalid: errors[name] }), errors[name] && !hideErrorMessage && _jsx(ErrorMessage, { message: errors[name].message })] }));
|
|
10
6
|
};
|
|
11
|
-
export const InputText = ({ disabled, name, defaultValue, validation, register, icon, placeholder, errors, hideErrorMessage, }) => (_jsxs(_Fragment, { children: [_jsx(
|
|
12
|
-
export const InputEmail = ({ disabled, name, defaultValue, validation, register, icon, placeholder, errors, hideErrorMessage, }) => (_jsxs(_Fragment, { children: [_jsx(
|
|
13
|
-
export const InputURL = ({ disabled, name, defaultValue, validation, register, icon, placeholder, errors, hideErrorMessage, }) => (_jsxs(_Fragment, { children: [_jsx(
|
|
14
|
-
export const InputNumber = ({ disabled, name, defaultValue, validation, register, icon, placeholder, errors, hideErrorMessage, }) => (_jsxs(_Fragment, { children: [_jsx(
|
|
15
|
-
export const InputFloat = ({ disabled, name, defaultValue, validation, register, icon, placeholder, errors, hideErrorMessage, }) => (_jsxs(_Fragment, { children: [_jsx(
|
|
16
|
-
export const InputFile = ({ disabled, name, accept, defaultValue, validation, register, }) => (_jsx("input", { className: "denhaag-
|
|
7
|
+
export const InputText = ({ disabled, name, defaultValue, validation, register, icon, placeholder, errors, hideErrorMessage, }) => (_jsxs(_Fragment, { children: [_jsx(Textbox, { type: "text", ...{ defaultValue, disabled, placeholder, icon }, ...register(name, { ...validation }), invalid: errors[name] }), errors[name] && !hideErrorMessage && _jsx(ErrorMessage, { message: errors[name].message })] }));
|
|
8
|
+
export const InputEmail = ({ disabled, name, defaultValue, validation, register, icon, placeholder, errors, hideErrorMessage, }) => (_jsxs(_Fragment, { children: [_jsx(Textbox, { type: "email", required: !!validation?.required, ...{ defaultValue, disabled, placeholder, icon }, ...register(name, { ...validation }), invalid: errors[name] }), errors[name] && !hideErrorMessage && _jsx(ErrorMessage, { message: errors[name].message })] }));
|
|
9
|
+
export const InputURL = ({ disabled, name, defaultValue, validation, register, icon, placeholder, errors, hideErrorMessage, }) => (_jsxs(_Fragment, { children: [_jsx(Textbox, { type: "url", ...{ defaultValue, disabled, placeholder, icon }, ...register(name, { ...validation }), invalid: errors[name] }), errors[name] && !hideErrorMessage && _jsx(ErrorMessage, { message: errors[name].message })] }));
|
|
10
|
+
export const InputNumber = ({ disabled, name, defaultValue, validation, register, icon, placeholder, errors, hideErrorMessage, }) => (_jsxs(_Fragment, { children: [_jsx(Textbox, { type: "number", ...{ defaultValue, disabled, placeholder, icon }, ...register(name, { ...validation, valueAsNumber: true }), invalid: errors[name] }), errors[name] && !hideErrorMessage && _jsx(ErrorMessage, { message: errors[name].message })] }));
|
|
11
|
+
export const InputFloat = ({ disabled, name, defaultValue, validation, register, icon, placeholder, errors, hideErrorMessage, }) => (_jsxs(_Fragment, { children: [_jsx(Textbox, { type: "number", step: ".01", ...{ disabled, placeholder, icon, defaultValue }, ...register(name, { ...validation, valueAsNumber: true }), invalid: errors[name] }), errors[name] && !hideErrorMessage && _jsx(ErrorMessage, { message: errors[name].message })] }));
|
|
12
|
+
export const InputFile = ({ disabled, name, accept, defaultValue, validation, register, }) => (_jsx("input", { className: "denhaag-Textbox__input", type: "file", ...{ defaultValue, disabled, accept }, ...register(name, { ...validation }) }));
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { Control, FieldValues } from "react-hook-form";
|
|
3
2
|
import { MenuPlacement } from "react-select";
|
|
4
3
|
import { IReactHookFormProps } from "../types";
|
|
@@ -15,8 +14,9 @@ interface ISelectProps {
|
|
|
15
14
|
isClearable?: boolean;
|
|
16
15
|
hideErrorMessage?: boolean;
|
|
17
16
|
menuPlacement?: MenuPlacement;
|
|
17
|
+
placeholder?: string;
|
|
18
18
|
}
|
|
19
|
-
export declare const SelectMultiple: ({ id, name, options, errors, control, validation, defaultValue, disabled, hideErrorMessage, menuPlacement, }: ISelectProps & IReactHookFormProps) => JSX.Element;
|
|
20
|
-
export declare const SelectCreate: ({ id, name, options, errors, control, validation, defaultValue, disabled, hideErrorMessage, menuPlacement, }: ISelectProps & IReactHookFormProps) => JSX.Element;
|
|
21
|
-
export declare const SelectSingle: ({ id, name, options, errors, control, validation, isClearable, defaultValue, disabled, hideErrorMessage, menuPlacement, }: ISelectProps & IReactHookFormProps) => JSX.Element;
|
|
19
|
+
export declare const SelectMultiple: ({ id, name, options, errors, control, validation, defaultValue, disabled, hideErrorMessage, menuPlacement, placeholder, }: ISelectProps & IReactHookFormProps) => JSX.Element;
|
|
20
|
+
export declare const SelectCreate: ({ id, name, options, errors, control, validation, defaultValue, disabled, hideErrorMessage, menuPlacement, placeholder, }: ISelectProps & IReactHookFormProps) => JSX.Element;
|
|
21
|
+
export declare const SelectSingle: ({ id, name, options, errors, control, validation, isClearable, defaultValue, disabled, hideErrorMessage, menuPlacement, placeholder, }: ISelectProps & IReactHookFormProps) => JSX.Element;
|
|
22
22
|
export {};
|
|
@@ -5,18 +5,18 @@ import ReactSelect from "react-select";
|
|
|
5
5
|
import CreatableSelect from "react-select/creatable";
|
|
6
6
|
import clsx from "clsx";
|
|
7
7
|
import { ErrorMessage } from "../errorMessage/ErrorMessage";
|
|
8
|
-
export const SelectMultiple = ({ id, name, options, errors, control, validation, defaultValue, disabled, hideErrorMessage, menuPlacement, }) => {
|
|
8
|
+
export const SelectMultiple = ({ id, name, options, errors, control, validation, defaultValue, disabled, hideErrorMessage, menuPlacement, placeholder, }) => {
|
|
9
9
|
return (_jsx(Controller, { ...{ control, name, defaultValue }, rules: validation, render: ({ field: { onChange, value } }) => {
|
|
10
|
-
return (_jsxs(_Fragment, { children: [_jsx(ReactSelect, { inputId: id, value: value ?? "", className: clsx(styles.select, errors[name] && styles.error), isMulti: true, isDisabled: disabled, ...{ options, onChange, errors }, menuPortalTarget: document.body, menuPlacement: menuPlacement, styles: { menuPortal: (base) => ({ ...base, zIndex: 100 }) }, placeholder: disabled ? "Disabled..." : "Select one or more options..." }), errors[name] && !hideErrorMessage && _jsx(ErrorMessage, { message: errors[name].message })] }));
|
|
10
|
+
return (_jsxs(_Fragment, { children: [_jsx(ReactSelect, { inputId: id, value: value ?? "", className: clsx(styles.select, errors[name] && styles.error), isMulti: true, isDisabled: disabled, ...{ options, onChange, errors }, menuPortalTarget: document.body, menuPlacement: menuPlacement, styles: { menuPortal: (base) => ({ ...base, zIndex: 100 }) }, placeholder: disabled ? "Disabled..." : placeholder ?? "Select one or more options..." }), errors[name] && !hideErrorMessage && _jsx(ErrorMessage, { message: errors[name].message })] }));
|
|
11
11
|
} }));
|
|
12
12
|
};
|
|
13
|
-
export const SelectCreate = ({ id, name, options, errors, control, validation, defaultValue, disabled, hideErrorMessage, menuPlacement, }) => {
|
|
13
|
+
export const SelectCreate = ({ id, name, options, errors, control, validation, defaultValue, disabled, hideErrorMessage, menuPlacement, placeholder, }) => {
|
|
14
14
|
return (_jsx(Controller, { ...{ control, name, defaultValue }, rules: validation, render: ({ field: { onChange, value } }) => {
|
|
15
|
-
return (_jsxs(_Fragment, { children: [_jsx(CreatableSelect, { inputId: id, value: value ?? "", placeholder: disabled ? "Disabled..." : "Select
|
|
15
|
+
return (_jsxs(_Fragment, { children: [_jsx(CreatableSelect, { inputId: id, value: value ?? "", placeholder: disabled ? "Disabled..." : placeholder ?? "Select one or more options...", className: clsx(styles.select, errors[name] && styles.error), isMulti: true, isDisabled: disabled, ...{ options, onChange, errors }, menuPortalTarget: document.body, menuPlacement: menuPlacement, styles: { menuPortal: (base) => ({ ...base, zIndex: 100 }) } }), errors[name] && !hideErrorMessage && _jsx(ErrorMessage, { message: errors[name].message })] }));
|
|
16
16
|
} }));
|
|
17
17
|
};
|
|
18
|
-
export const SelectSingle = ({ id, name, options, errors, control, validation, isClearable, defaultValue, disabled, hideErrorMessage, menuPlacement, }) => {
|
|
18
|
+
export const SelectSingle = ({ id, name, options, errors, control, validation, isClearable, defaultValue, disabled, hideErrorMessage, menuPlacement, placeholder, }) => {
|
|
19
19
|
return (_jsx(Controller, { ...{ control, name, defaultValue }, rules: validation, render: ({ field: { onChange, value } }) => {
|
|
20
|
-
return (_jsxs(_Fragment, { children: [_jsx(ReactSelect, { inputId: id, value: value ?? "", className: clsx(styles.select, errors[name] && styles.error), isDisabled: disabled, ...{ options, onChange, errors, isClearable }, menuPortalTarget: document.body, menuPlacement: menuPlacement, styles: { menuPortal: (base) => ({ ...base, zIndex: 100 }) }, placeholder: disabled ? "Disabled..." : "Select
|
|
20
|
+
return (_jsxs(_Fragment, { children: [_jsx(ReactSelect, { inputId: id, value: value ?? "", className: clsx(styles.select, errors[name] && styles.error), isDisabled: disabled, ...{ options, onChange, errors, isClearable }, menuPortalTarget: document.body, menuPlacement: menuPlacement, styles: { menuPortal: (base) => ({ ...base, zIndex: 100 }) }, placeholder: disabled ? "Disabled..." : placeholder ?? "Select one or more options..." }), errors[name] && !hideErrorMessage && _jsx(ErrorMessage, { message: errors[name].message })] }));
|
|
21
21
|
} }));
|
|
22
22
|
};
|
|
@@ -1,22 +1,27 @@
|
|
|
1
1
|
:root {
|
|
2
|
+
--conduction-input-select-padding-block-start: var(--skeleton-size-xs);
|
|
3
|
+
--conduction-input-select-padding-block-end: var(--skeleton-size-xs);
|
|
4
|
+
--conduction-input-select-border-radius: var(--skeleton-border-radius-md);
|
|
5
|
+
--conduction-input-select-background-color: var(--skeleton-color-white);
|
|
2
6
|
--conduction-input-select-border: 1px solid var(--skeleton-color-grey-3);
|
|
3
7
|
--conduction-input-select-border-focus: 2px dashed var(--skeleton-color-grey-5);
|
|
8
|
+
--conduction-input-select-invalid-border-color: var(
|
|
9
|
+
--utrecht-textbox-invalid-border-color,
|
|
10
|
+
var(--utrecht-form-input-invalid-border-color, var(--utrecht-textbox-border-color, var(--utrecht-form-input-border-color)))
|
|
11
|
+
);
|
|
4
12
|
}
|
|
5
13
|
|
|
6
14
|
.select > div {
|
|
7
|
-
background-color: var(--
|
|
15
|
+
background-color: var(--conduction-input-select-background-color);
|
|
8
16
|
border: var(--conduction-input-select-border);
|
|
9
|
-
border-radius: var(--
|
|
17
|
+
border-radius: var(--conduction-input-select-border-radius);
|
|
10
18
|
box-sizing: border-box;
|
|
11
|
-
padding-block-start: var(--
|
|
12
|
-
padding-block-end: var(--
|
|
19
|
+
padding-block-start: var(--conduction-input-select-padding-block-start);
|
|
20
|
+
padding-block-end: var(--conduction-input-select-padding-block-end);
|
|
13
21
|
}
|
|
14
22
|
|
|
15
23
|
.select.error > div {
|
|
16
|
-
border-color: var(
|
|
17
|
-
--utrecht-textbox-invalid-border-color,
|
|
18
|
-
var(--utrecht-form-input-invalid-border-color, var(--utrecht-textbox-border-color, var(--utrecht-form-input-border-color)))
|
|
19
|
-
);
|
|
24
|
+
border-color: var(--conduction-input-select-invalid-border-color);
|
|
20
25
|
}
|
|
21
26
|
|
|
22
27
|
.select .select > div:focus-within {
|
|
@@ -34,5 +39,5 @@
|
|
|
34
39
|
right: calc(var(--skeleton-size-2xs) * -1);
|
|
35
40
|
top: calc(var(--skeleton-size-2xs) * -1);
|
|
36
41
|
border: var(--conduction-input-select-border-focus);
|
|
37
|
-
border-radius: var(--
|
|
42
|
+
border-radius: var(--conduction-input-select-border-radius);
|
|
38
43
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { TextArea } from "@gemeente-denhaag/textarea";
|
|
3
2
|
import { ErrorMessage } from "./errorMessage/ErrorMessage";
|
|
4
|
-
|
|
3
|
+
import { Textarea as UtrechtTextarea } from "@utrecht/component-library-react/dist/css-module";
|
|
4
|
+
export const Textarea = ({ name, validation, register, errors, disabled, defaultValue, hideErrorMessage, }) => (_jsxs(_Fragment, { children: [_jsx(UtrechtTextarea, { ...register(name, { ...validation }), ...{ disabled, defaultValue }, invalid: errors[name] }), errors[name] && !hideErrorMessage && _jsx(ErrorMessage, { message: errors[name].message })] }));
|
package/lib/index.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { DownloadCard, HorizontalImageCard, ImageAndDetailsCard, RichContentCard, DetailsCard, InfoCard } from "./components/card";
|
|
3
2
|
import { Container } from "./components/container/Container";
|
|
4
3
|
import { Breadcrumbs } from "./components/denhaag-wrappers/breadcrumbs/Breadcrumbs";
|
package/package.json
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import {
|
|
2
|
+
import { Textbox } from "@utrecht/component-library-react/dist/css-module";
|
|
3
3
|
import { IReactHookFormProps } from "./types";
|
|
4
|
-
import { faEyeSlash, faEye } from "@fortawesome/free-solid-svg-icons";
|
|
5
|
-
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
|
|
6
4
|
import { ErrorMessage } from "./errorMessage/ErrorMessage";
|
|
7
5
|
|
|
8
6
|
export interface IInputProps {
|
|
@@ -23,20 +21,13 @@ export const InputPassword: React.FC<IInputProps & IReactHookFormProps> = ({
|
|
|
23
21
|
errors,
|
|
24
22
|
hideErrorMessage,
|
|
25
23
|
}) => {
|
|
26
|
-
const [showPassword, setShowPassword] = React.useState<boolean>(false);
|
|
27
|
-
|
|
28
24
|
return (
|
|
29
25
|
<>
|
|
30
|
-
<
|
|
31
|
-
type=
|
|
26
|
+
<Textbox
|
|
27
|
+
type="password"
|
|
32
28
|
{...{ disabled, placeholder }}
|
|
33
29
|
{...register(name, { ...validation })}
|
|
34
30
|
invalid={errors[name]}
|
|
35
|
-
icon={
|
|
36
|
-
<span onClick={() => setShowPassword(!showPassword)}>
|
|
37
|
-
{showPassword ? <FontAwesomeIcon icon={faEye} /> : <FontAwesomeIcon icon={faEyeSlash} />}
|
|
38
|
-
</span>
|
|
39
|
-
}
|
|
40
31
|
/>
|
|
41
32
|
{errors[name] && !hideErrorMessage && <ErrorMessage message={errors[name].message} />}
|
|
42
33
|
</>
|
|
@@ -55,7 +46,7 @@ export const InputText: React.FC<IInputProps & IReactHookFormProps> = ({
|
|
|
55
46
|
hideErrorMessage,
|
|
56
47
|
}) => (
|
|
57
48
|
<>
|
|
58
|
-
<
|
|
49
|
+
<Textbox
|
|
59
50
|
type="text"
|
|
60
51
|
{...{ defaultValue, disabled, placeholder, icon }}
|
|
61
52
|
{...register(name, { ...validation })}
|
|
@@ -77,7 +68,7 @@ export const InputEmail: React.FC<IInputProps & IReactHookFormProps> = ({
|
|
|
77
68
|
hideErrorMessage,
|
|
78
69
|
}) => (
|
|
79
70
|
<>
|
|
80
|
-
<
|
|
71
|
+
<Textbox
|
|
81
72
|
type="email"
|
|
82
73
|
required={!!validation?.required}
|
|
83
74
|
{...{ defaultValue, disabled, placeholder, icon }}
|
|
@@ -100,7 +91,7 @@ export const InputURL: React.FC<IInputProps & IReactHookFormProps> = ({
|
|
|
100
91
|
hideErrorMessage,
|
|
101
92
|
}) => (
|
|
102
93
|
<>
|
|
103
|
-
<
|
|
94
|
+
<Textbox
|
|
104
95
|
type="url"
|
|
105
96
|
{...{ defaultValue, disabled, placeholder, icon }}
|
|
106
97
|
{...register(name, { ...validation })}
|
|
@@ -122,7 +113,7 @@ export const InputNumber: React.FC<IInputProps & IReactHookFormProps> = ({
|
|
|
122
113
|
hideErrorMessage,
|
|
123
114
|
}) => (
|
|
124
115
|
<>
|
|
125
|
-
<
|
|
116
|
+
<Textbox
|
|
126
117
|
type="number"
|
|
127
118
|
{...{ defaultValue, disabled, placeholder, icon }}
|
|
128
119
|
{...register(name, { ...validation, valueAsNumber: true })}
|
|
@@ -144,7 +135,7 @@ export const InputFloat: React.FC<IInputProps & IReactHookFormProps> = ({
|
|
|
144
135
|
hideErrorMessage,
|
|
145
136
|
}) => (
|
|
146
137
|
<>
|
|
147
|
-
<
|
|
138
|
+
<Textbox
|
|
148
139
|
type="number"
|
|
149
140
|
step=".01"
|
|
150
141
|
{...{ disabled, placeholder, icon, defaultValue }}
|
|
@@ -168,7 +159,7 @@ export const InputFile: React.FC<IInputFileProps & IInputProps & IReactHookFormP
|
|
|
168
159
|
register,
|
|
169
160
|
}) => (
|
|
170
161
|
<input
|
|
171
|
-
className="denhaag-
|
|
162
|
+
className="denhaag-Textbox__input"
|
|
172
163
|
type="file"
|
|
173
164
|
{...{ defaultValue, disabled, accept }}
|
|
174
165
|
{...register(name, { ...validation })}
|
|
@@ -1,22 +1,27 @@
|
|
|
1
1
|
:root {
|
|
2
|
+
--conduction-input-select-padding-block-start: var(--skeleton-size-xs);
|
|
3
|
+
--conduction-input-select-padding-block-end: var(--skeleton-size-xs);
|
|
4
|
+
--conduction-input-select-border-radius: var(--skeleton-border-radius-md);
|
|
5
|
+
--conduction-input-select-background-color: var(--skeleton-color-white);
|
|
2
6
|
--conduction-input-select-border: 1px solid var(--skeleton-color-grey-3);
|
|
3
7
|
--conduction-input-select-border-focus: 2px dashed var(--skeleton-color-grey-5);
|
|
8
|
+
--conduction-input-select-invalid-border-color: var(
|
|
9
|
+
--utrecht-textbox-invalid-border-color,
|
|
10
|
+
var(--utrecht-form-input-invalid-border-color, var(--utrecht-textbox-border-color, var(--utrecht-form-input-border-color)))
|
|
11
|
+
);
|
|
4
12
|
}
|
|
5
13
|
|
|
6
14
|
.select > div {
|
|
7
|
-
background-color: var(--
|
|
15
|
+
background-color: var(--conduction-input-select-background-color);
|
|
8
16
|
border: var(--conduction-input-select-border);
|
|
9
|
-
border-radius: var(--
|
|
17
|
+
border-radius: var(--conduction-input-select-border-radius);
|
|
10
18
|
box-sizing: border-box;
|
|
11
|
-
padding-block-start: var(--
|
|
12
|
-
padding-block-end: var(--
|
|
19
|
+
padding-block-start: var(--conduction-input-select-padding-block-start);
|
|
20
|
+
padding-block-end: var(--conduction-input-select-padding-block-end);
|
|
13
21
|
}
|
|
14
22
|
|
|
15
23
|
.select.error > div {
|
|
16
|
-
border-color: var(
|
|
17
|
-
--utrecht-textbox-invalid-border-color,
|
|
18
|
-
var(--utrecht-form-input-invalid-border-color, var(--utrecht-textbox-border-color, var(--utrecht-form-input-border-color)))
|
|
19
|
-
);
|
|
24
|
+
border-color: var(--conduction-input-select-invalid-border-color);
|
|
20
25
|
}
|
|
21
26
|
|
|
22
27
|
.select .select > div:focus-within {
|
|
@@ -34,5 +39,5 @@
|
|
|
34
39
|
right: calc(var(--skeleton-size-2xs) * -1);
|
|
35
40
|
top: calc(var(--skeleton-size-2xs) * -1);
|
|
36
41
|
border: var(--conduction-input-select-border-focus);
|
|
37
|
-
border-radius: var(--
|
|
42
|
+
border-radius: var(--conduction-input-select-border-radius);
|
|
38
43
|
}
|
|
@@ -17,6 +17,7 @@ interface ISelectProps {
|
|
|
17
17
|
isClearable?: boolean;
|
|
18
18
|
hideErrorMessage?: boolean;
|
|
19
19
|
menuPlacement?: MenuPlacement;
|
|
20
|
+
placeholder?: string;
|
|
20
21
|
}
|
|
21
22
|
|
|
22
23
|
export const SelectMultiple = ({
|
|
@@ -30,6 +31,7 @@ export const SelectMultiple = ({
|
|
|
30
31
|
disabled,
|
|
31
32
|
hideErrorMessage,
|
|
32
33
|
menuPlacement,
|
|
34
|
+
placeholder,
|
|
33
35
|
}: ISelectProps & IReactHookFormProps): JSX.Element => {
|
|
34
36
|
return (
|
|
35
37
|
<Controller
|
|
@@ -48,7 +50,7 @@ export const SelectMultiple = ({
|
|
|
48
50
|
menuPortalTarget={document.body}
|
|
49
51
|
menuPlacement={menuPlacement}
|
|
50
52
|
styles={{ menuPortal: (base) => ({ ...base, zIndex: 100 }) }}
|
|
51
|
-
placeholder={disabled ? "Disabled..." : "Select one or more options..."}
|
|
53
|
+
placeholder={disabled ? "Disabled..." : placeholder ?? "Select one or more options..."}
|
|
52
54
|
/>
|
|
53
55
|
{errors[name] && !hideErrorMessage && <ErrorMessage message={errors[name].message} />}
|
|
54
56
|
</>
|
|
@@ -69,6 +71,7 @@ export const SelectCreate = ({
|
|
|
69
71
|
disabled,
|
|
70
72
|
hideErrorMessage,
|
|
71
73
|
menuPlacement,
|
|
74
|
+
placeholder,
|
|
72
75
|
}: ISelectProps & IReactHookFormProps): JSX.Element => {
|
|
73
76
|
return (
|
|
74
77
|
<Controller
|
|
@@ -80,7 +83,7 @@ export const SelectCreate = ({
|
|
|
80
83
|
<CreatableSelect
|
|
81
84
|
inputId={id}
|
|
82
85
|
value={value ?? ""}
|
|
83
|
-
placeholder={disabled ? "Disabled..." : "Select
|
|
86
|
+
placeholder={disabled ? "Disabled..." : placeholder ?? "Select one or more options..."}
|
|
84
87
|
className={clsx(styles.select, errors[name] && styles.error)}
|
|
85
88
|
isMulti
|
|
86
89
|
isDisabled={disabled}
|
|
@@ -109,6 +112,7 @@ export const SelectSingle = ({
|
|
|
109
112
|
disabled,
|
|
110
113
|
hideErrorMessage,
|
|
111
114
|
menuPlacement,
|
|
115
|
+
placeholder,
|
|
112
116
|
}: ISelectProps & IReactHookFormProps): JSX.Element => {
|
|
113
117
|
return (
|
|
114
118
|
<Controller
|
|
@@ -126,7 +130,7 @@ export const SelectSingle = ({
|
|
|
126
130
|
menuPortalTarget={document.body}
|
|
127
131
|
menuPlacement={menuPlacement}
|
|
128
132
|
styles={{ menuPortal: (base) => ({ ...base, zIndex: 100 }) }}
|
|
129
|
-
placeholder={disabled ? "Disabled..." : "Select
|
|
133
|
+
placeholder={disabled ? "Disabled..." : placeholder ?? "Select one or more options..."}
|
|
130
134
|
/>
|
|
131
135
|
{errors[name] && !hideErrorMessage && <ErrorMessage message={errors[name].message} />}
|
|
132
136
|
</>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { TextArea } from "@gemeente-denhaag/textarea";
|
|
2
1
|
import { IReactHookFormProps } from "./types";
|
|
3
2
|
import { ErrorMessage } from "./errorMessage/ErrorMessage";
|
|
3
|
+
import { Textarea as UtrechtTextarea } from "@utrecht/component-library-react/dist/css-module";
|
|
4
4
|
|
|
5
5
|
export interface ITextAreaProps {
|
|
6
6
|
name: string;
|
|
@@ -19,7 +19,7 @@ export const Textarea = ({
|
|
|
19
19
|
hideErrorMessage,
|
|
20
20
|
}: ITextAreaProps & IReactHookFormProps): JSX.Element => (
|
|
21
21
|
<>
|
|
22
|
-
<
|
|
22
|
+
<UtrechtTextarea {...register(name, { ...validation })} {...{ disabled, defaultValue }} invalid={errors[name]} />
|
|
23
23
|
{errors[name] && !hideErrorMessage && <ErrorMessage message={errors[name].message} />}
|
|
24
24
|
</>
|
|
25
25
|
);
|