@conduction/components 2.1.33 → 2.1.35
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/cardWrapper/CardWrapper.d.ts +3 -0
- package/lib/components/card/cardWrapper/CardWrapper.js +6 -0
- package/lib/components/card/cardWrapper/CardWrapper.module.css +32 -0
- package/lib/components/card/index.d.ts +2 -1
- package/lib/components/card/index.js +2 -1
- package/lib/components/formFields/input.js +8 -12
- package/lib/components/formFields/select/select.module.css +43 -38
- package/lib/components/formFields/textarea.js +2 -2
- package/package.json +1 -1
- package/src/components/card/cardWrapper/CardWrapper.module.css +32 -0
- package/src/components/card/cardWrapper/CardWrapper.tsx +9 -0
- package/src/components/card/index.tsx +2 -1
- package/src/components/formFields/input.tsx +9 -18
- package/src/components/formFields/select/select.module.css +43 -38
- 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.35: Added CardWrapper.
|
|
8
|
+
- 2.1.34: Refactor Den Haag textbox and textarea to Utrecht; add Single Select design tokens.
|
|
7
9
|
- 2.1.33: Added optional placeholder to all select elements.
|
|
8
10
|
- 2.1.32: Add inline-padding to container, remove redundant (breaking and unused) components, up React version.
|
|
9
11
|
- 2.1.31: Removed Den Haag implementations which hold shapeRendering warnings.
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as styles from "./CardWrapper.module.css";
|
|
3
|
+
export const CardWrapper = (props) => {
|
|
4
|
+
const _props = { ...props, className: `${props.className} ${styles.container}` };
|
|
5
|
+
return _jsx("div", { ..._props, children: props.children });
|
|
6
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--conduction-card-wrapper-background-color: #ffffff;
|
|
3
|
+
/* --conduction-card-wrapper-border-color: unset; */
|
|
4
|
+
/* --conduction-card-wrapper-border-width: unset; */
|
|
5
|
+
/* --conduction-card-wrapper-border-style: unset; */
|
|
6
|
+
--conduction-card-wrapper-border-radius: 16px;
|
|
7
|
+
--conduction-card-wrapper-color: #000000;
|
|
8
|
+
/* --conduction-card-wrapper-background-color-hover: unset; */
|
|
9
|
+
--conduction-card-wrapper-padding-inline-end: 18px;
|
|
10
|
+
--conduction-card-wrapper-padding-inline-start: 18px;
|
|
11
|
+
--conduction-card-wrapper-padding-block-end: 18px;
|
|
12
|
+
--conduction-card-wrapper-padding-block-start: 18px;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.container {
|
|
16
|
+
padding-inline-start: var(--conduction-card-wrapper-padding-inline-start);
|
|
17
|
+
padding-inline-end: var(--conduction-card-wrapper-padding-inline-end);
|
|
18
|
+
padding-block-start: var(--conduction-card-wrapper-padding-block-start);
|
|
19
|
+
padding-block-end: var(--conduction-card-wrapper-padding-block-end);
|
|
20
|
+
|
|
21
|
+
color: var(--conduction-card-wrapper-color);
|
|
22
|
+
background-color: var(--conduction-card-wrapper-background-color);
|
|
23
|
+
|
|
24
|
+
border-radius: var(--conduction-card-wrapper-border-radius);
|
|
25
|
+
border-width: var(--conduction-card-wrapper-border-width);
|
|
26
|
+
border: var(--conduction-card-wrapper-border-width) var(--conduction-card-wrapper-border-style) var(--conduction-card-wrapper-border-color);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.container:hover {
|
|
30
|
+
background-color: var(--conduction-card-wrapper-hover-background-color, var(--conduction-card-wrapper-background-color));
|
|
31
|
+
cursor: pointer;
|
|
32
|
+
}
|
|
@@ -4,4 +4,5 @@ import { ImageAndDetailsCard } from "./imageAndDetailsCard/ImageAndDetailsCard";
|
|
|
4
4
|
import { RichContentCard } from "./richContentCard/RichContentCard";
|
|
5
5
|
import { DetailsCard } from "./detailsCard/DetailsCard";
|
|
6
6
|
import { InfoCard } from "./infoCard/InfoCard";
|
|
7
|
-
|
|
7
|
+
import { CardWrapper } from "./cardWrapper/CardWrapper";
|
|
8
|
+
export { DownloadCard, HorizontalImageCard, ImageAndDetailsCard, RichContentCard, DetailsCard, InfoCard, CardWrapper };
|
|
@@ -4,4 +4,5 @@ import { ImageAndDetailsCard } from "./imageAndDetailsCard/ImageAndDetailsCard";
|
|
|
4
4
|
import { RichContentCard } from "./richContentCard/RichContentCard";
|
|
5
5
|
import { DetailsCard } from "./detailsCard/DetailsCard";
|
|
6
6
|
import { InfoCard } from "./infoCard/InfoCard";
|
|
7
|
-
|
|
7
|
+
import { CardWrapper } from "./cardWrapper/CardWrapper";
|
|
8
|
+
export { DownloadCard, HorizontalImageCard, ImageAndDetailsCard, RichContentCard, DetailsCard, InfoCard, CardWrapper };
|
|
@@ -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,38 +1,43 @@
|
|
|
1
|
-
:root {
|
|
2
|
-
--conduction-input-select-
|
|
3
|
-
--conduction-input-select-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
border
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
);
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
.select > div:focus-within
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
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);
|
|
6
|
+
--conduction-input-select-border: 1px solid var(--skeleton-color-grey-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
|
+
);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.select > div {
|
|
15
|
+
background-color: var(--conduction-input-select-background-color);
|
|
16
|
+
border: var(--conduction-input-select-border);
|
|
17
|
+
border-radius: var(--conduction-input-select-border-radius);
|
|
18
|
+
box-sizing: border-box;
|
|
19
|
+
padding-block-start: var(--conduction-input-select-padding-block-start);
|
|
20
|
+
padding-block-end: var(--conduction-input-select-padding-block-end);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.select.error > div {
|
|
24
|
+
border-color: var(--conduction-input-select-invalid-border-color);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.select .select > div:focus-within {
|
|
28
|
+
outline: none;
|
|
29
|
+
box-shadow: none;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.select > div:focus-within::after {
|
|
33
|
+
content: "";
|
|
34
|
+
display: block;
|
|
35
|
+
position: absolute;
|
|
36
|
+
pointer-events: none;
|
|
37
|
+
bottom: calc(var(--skeleton-size-2xs) * -1);
|
|
38
|
+
left: calc(var(--skeleton-size-2xs) * -1);
|
|
39
|
+
right: calc(var(--skeleton-size-2xs) * -1);
|
|
40
|
+
top: calc(var(--skeleton-size-2xs) * -1);
|
|
41
|
+
border: var(--conduction-input-select-border-focus);
|
|
42
|
+
border-radius: var(--conduction-input-select-border-radius);
|
|
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/package.json
CHANGED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--conduction-card-wrapper-background-color: #ffffff;
|
|
3
|
+
/* --conduction-card-wrapper-border-color: unset; */
|
|
4
|
+
/* --conduction-card-wrapper-border-width: unset; */
|
|
5
|
+
/* --conduction-card-wrapper-border-style: unset; */
|
|
6
|
+
--conduction-card-wrapper-border-radius: 16px;
|
|
7
|
+
--conduction-card-wrapper-color: #000000;
|
|
8
|
+
/* --conduction-card-wrapper-background-color-hover: unset; */
|
|
9
|
+
--conduction-card-wrapper-padding-inline-end: 18px;
|
|
10
|
+
--conduction-card-wrapper-padding-inline-start: 18px;
|
|
11
|
+
--conduction-card-wrapper-padding-block-end: 18px;
|
|
12
|
+
--conduction-card-wrapper-padding-block-start: 18px;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.container {
|
|
16
|
+
padding-inline-start: var(--conduction-card-wrapper-padding-inline-start);
|
|
17
|
+
padding-inline-end: var(--conduction-card-wrapper-padding-inline-end);
|
|
18
|
+
padding-block-start: var(--conduction-card-wrapper-padding-block-start);
|
|
19
|
+
padding-block-end: var(--conduction-card-wrapper-padding-block-end);
|
|
20
|
+
|
|
21
|
+
color: var(--conduction-card-wrapper-color);
|
|
22
|
+
background-color: var(--conduction-card-wrapper-background-color);
|
|
23
|
+
|
|
24
|
+
border-radius: var(--conduction-card-wrapper-border-radius);
|
|
25
|
+
border-width: var(--conduction-card-wrapper-border-width);
|
|
26
|
+
border: var(--conduction-card-wrapper-border-width) var(--conduction-card-wrapper-border-style) var(--conduction-card-wrapper-border-color);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.container:hover {
|
|
30
|
+
background-color: var(--conduction-card-wrapper-hover-background-color, var(--conduction-card-wrapper-background-color));
|
|
31
|
+
cursor: pointer;
|
|
32
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as styles from "./CardWrapper.module.css";
|
|
3
|
+
import { HTMLAttributes } from "react";
|
|
4
|
+
|
|
5
|
+
export const CardWrapper = (props: React.HTMLAttributes<HTMLDivElement>): JSX.Element => {
|
|
6
|
+
const _props = { ...props, className: `${props.className} ${styles.container}` };
|
|
7
|
+
|
|
8
|
+
return <div {..._props}>{props.children}</div>;
|
|
9
|
+
};
|
|
@@ -4,5 +4,6 @@ import { ImageAndDetailsCard } from "./imageAndDetailsCard/ImageAndDetailsCard";
|
|
|
4
4
|
import { RichContentCard } from "./richContentCard/RichContentCard";
|
|
5
5
|
import { DetailsCard } from "./detailsCard/DetailsCard";
|
|
6
6
|
import { InfoCard } from "./infoCard/InfoCard";
|
|
7
|
+
import { CardWrapper } from "./cardWrapper/CardWrapper";
|
|
7
8
|
|
|
8
|
-
export { DownloadCard, HorizontalImageCard, ImageAndDetailsCard, RichContentCard, DetailsCard, InfoCard };
|
|
9
|
+
export { DownloadCard, HorizontalImageCard, ImageAndDetailsCard, RichContentCard, DetailsCard, InfoCard, CardWrapper };
|
|
@@ -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,38 +1,43 @@
|
|
|
1
|
-
:root {
|
|
2
|
-
--conduction-input-select-
|
|
3
|
-
--conduction-input-select-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
border
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
);
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
.select > div:focus-within
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
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);
|
|
6
|
+
--conduction-input-select-border: 1px solid var(--skeleton-color-grey-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
|
+
);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.select > div {
|
|
15
|
+
background-color: var(--conduction-input-select-background-color);
|
|
16
|
+
border: var(--conduction-input-select-border);
|
|
17
|
+
border-radius: var(--conduction-input-select-border-radius);
|
|
18
|
+
box-sizing: border-box;
|
|
19
|
+
padding-block-start: var(--conduction-input-select-padding-block-start);
|
|
20
|
+
padding-block-end: var(--conduction-input-select-padding-block-end);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.select.error > div {
|
|
24
|
+
border-color: var(--conduction-input-select-invalid-border-color);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.select .select > div:focus-within {
|
|
28
|
+
outline: none;
|
|
29
|
+
box-shadow: none;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.select > div:focus-within::after {
|
|
33
|
+
content: "";
|
|
34
|
+
display: block;
|
|
35
|
+
position: absolute;
|
|
36
|
+
pointer-events: none;
|
|
37
|
+
bottom: calc(var(--skeleton-size-2xs) * -1);
|
|
38
|
+
left: calc(var(--skeleton-size-2xs) * -1);
|
|
39
|
+
right: calc(var(--skeleton-size-2xs) * -1);
|
|
40
|
+
top: calc(var(--skeleton-size-2xs) * -1);
|
|
41
|
+
border: var(--conduction-input-select-border-focus);
|
|
42
|
+
border-radius: var(--conduction-input-select-border-radius);
|
|
43
|
+
}
|
|
@@ -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
|
);
|