@conduction/components 2.0.30 → 2.0.32
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/.github/workflows/npm-publish.yml +39 -39
- package/.prettierrc +30 -30
- package/README.md +64 -60
- package/lib/components/badgeCounter/BadgeCounter.d.ts +8 -8
- package/lib/components/badgeCounter/BadgeCounter.js +4 -4
- package/lib/components/badgeCounter/BadgeCounter.module.css +27 -27
- package/lib/components/card/detailsCard/DetailsCard.d.ts +14 -14
- package/lib/components/card/detailsCard/DetailsCard.js +10 -10
- package/lib/components/card/detailsCard/DetailsCard.module.css +51 -51
- package/lib/components/card/downloadCard/DownloadCard.d.ts +11 -11
- package/lib/components/card/downloadCard/DownloadCard.js +8 -8
- package/lib/components/card/downloadCard/DownloadCard.module.css +27 -27
- package/lib/components/card/horizontalImageCard/HorizontalImageCard.d.ts +13 -13
- package/lib/components/card/horizontalImageCard/HorizontalImageCard.js +9 -9
- package/lib/components/card/horizontalImageCard/HorizontalImageCard.module.css +34 -34
- package/lib/components/card/imageAndDetailsCard/ImageAndDetailsCard.d.ts +14 -14
- package/lib/components/card/imageAndDetailsCard/ImageAndDetailsCard.js +9 -9
- package/lib/components/card/imageAndDetailsCard/ImageAndDetailsCard.module.css +63 -63
- package/lib/components/card/index.d.ts +7 -7
- package/lib/components/card/index.js +7 -7
- package/lib/components/card/infoCard/InfoCard.d.ts +8 -8
- package/lib/components/card/infoCard/InfoCard.js +6 -6
- package/lib/components/card/infoCard/InfoCard.module.css +26 -26
- package/lib/components/card/richContentCard/RichContentCard.d.ts +19 -19
- package/lib/components/card/richContentCard/RichContentCard.js +15 -15
- package/lib/components/card/richContentCard/RichContentCard.module.css +93 -93
- package/lib/components/codeBlock/CodeBlock.d.ts +6 -6
- package/lib/components/codeBlock/CodeBlock.js +3 -3
- package/lib/components/codeBlock/CodeBlock.module.css +6 -6
- package/lib/components/container/Container.d.ts +6 -6
- package/lib/components/container/Container.js +4 -4
- package/lib/components/container/Container.module.css +9 -9
- package/lib/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.css +222 -222
- package/lib/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.d.ts +17 -17
- package/lib/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.js +20 -20
- package/lib/components/denhaag-wrappers/pagination/Pagination.css +120 -120
- package/lib/components/denhaag-wrappers/pagination/Pagination.d.ts +9 -9
- package/lib/components/denhaag-wrappers/pagination/Pagination.js +15 -15
- package/lib/components/editableTableRow/EditableTableRow.d.ts +14 -14
- package/lib/components/editableTableRow/EditableTableRow.js +31 -31
- package/lib/components/editableTableRow/EditableTableRow.module.css +25 -25
- package/lib/components/formFields/checkbox.d.ts +9 -9
- package/lib/components/formFields/checkbox.js +3 -3
- package/lib/components/formFields/createKeyValue/CreateKeyValue.d.ts +17 -17
- package/lib/components/formFields/createKeyValue/CreateKeyValue.js +31 -31
- package/lib/components/formFields/createKeyValue/CreateKeyValue.module.css +43 -43
- package/lib/components/formFields/index.d.ts +7 -7
- package/lib/components/formFields/index.js +7 -7
- package/lib/components/formFields/input.d.ts +22 -22
- package/lib/components/formFields/input.js +16 -16
- package/lib/components/formFields/radio.d.ts +9 -9
- package/lib/components/formFields/radio.js +3 -3
- package/lib/components/formFields/select/select.d.ts +18 -18
- package/lib/components/formFields/select/select.js +21 -21
- package/lib/components/formFields/select/select.module.css +38 -38
- package/lib/components/formFields/textarea.d.ts +8 -8
- package/lib/components/formFields/textarea.js +3 -3
- package/lib/components/formFields/types.d.ts +6 -6
- package/lib/components/formFields/types.js +1 -1
- package/lib/components/imageDivider/ImageDivider.d.ts +7 -7
- package/lib/components/imageDivider/ImageDivider.js +6 -6
- package/lib/components/imageDivider/imageDivider.module.css +5 -5
- package/lib/components/logo/Logo.d.ts +8 -8
- package/lib/components/logo/Logo.js +10 -10
- package/lib/components/logo/Logo.module.css +15 -15
- package/lib/components/metaIcon/MetaIcon.d.ts +7 -7
- package/lib/components/metaIcon/MetaIcon.js +3 -3
- package/lib/components/metaIcon/MetaIcon.module.css +29 -29
- package/lib/components/notificationPopUp/NotificationPopUp.d.ts +24 -24
- package/lib/components/notificationPopUp/NotificationPopUp.js +31 -31
- package/lib/components/notificationPopUp/NotificationPopUp.module.css +61 -61
- package/lib/components/privateRoute/PrivateRoute.d.ts +6 -6
- package/lib/components/privateRoute/PrivateRoute.js +15 -15
- package/lib/components/quoteWrapper/QuoteWrapper.d.ts +7 -7
- package/lib/components/quoteWrapper/QuoteWrapper.js +5 -5
- package/lib/components/quoteWrapper/QuoteWrapper.module.css +12 -12
- package/lib/components/statusSteps/StatusSteps.d.ts +13 -13
- package/lib/components/statusSteps/StatusSteps.js +5 -5
- package/lib/components/tag/Tag.d.ts +10 -10
- package/lib/components/tag/Tag.js +6 -6
- package/lib/components/tag/Tag.module.css +44 -44
- package/lib/components/toolTip/ToolTip.d.ts +9 -9
- package/lib/components/toolTip/ToolTip.js +7 -7
- package/lib/components/toolTip/ToolTip.module.css +4 -4
- package/lib/components/topNav/index.d.ts +3 -3
- package/lib/components/topNav/index.js +3 -3
- package/lib/components/topNav/primaryTopNav/PrimaryTopNav.d.ts +20 -20
- package/lib/components/topNav/primaryTopNav/PrimaryTopNav.js +17 -17
- package/lib/components/topNav/primaryTopNav/PrimaryTopNav.module.css +140 -139
- package/lib/components/topNav/secondaryTopNav/SecondaryTopNav.d.ts +12 -12
- package/lib/components/topNav/secondaryTopNav/SecondaryTopNav.js +7 -7
- package/lib/components/topNav/secondaryTopNav/SecondaryTopNav.module.css +63 -63
- package/lib/index.d.ts +27 -27
- package/lib/index.js +20 -20
- package/package.json +46 -46
- package/src/components/badgeCounter/BadgeCounter.module.css +27 -27
- package/src/components/badgeCounter/BadgeCounter.tsx +16 -16
- package/src/components/card/detailsCard/DetailsCard.module.css +51 -51
- package/src/components/card/detailsCard/DetailsCard.tsx +56 -56
- package/src/components/card/downloadCard/DownloadCard.js +10 -10
- package/src/components/card/downloadCard/DownloadCard.module.css +27 -27
- package/src/components/card/downloadCard/DownloadCard.tsx +40 -40
- package/src/components/card/horizontalImageCard/HorizontalImageCard.js +9 -9
- package/src/components/card/horizontalImageCard/HorizontalImageCard.module.css +34 -34
- package/src/components/card/horizontalImageCard/HorizontalImageCard.tsx +37 -37
- package/src/components/card/imageAndDetailsCard/ImageAndDetailsCard.js +9 -9
- package/src/components/card/imageAndDetailsCard/ImageAndDetailsCard.module.css +63 -63
- package/src/components/card/imageAndDetailsCard/ImageAndDetailsCard.tsx +49 -49
- package/src/components/card/index.js +5 -5
- package/src/components/card/index.tsx +8 -8
- package/src/components/card/infoCard/InfoCard.module.css +26 -26
- package/src/components/card/infoCard/InfoCard.tsx +19 -19
- package/src/components/card/richContentCard/RichContentCard.js +17 -17
- package/src/components/card/richContentCard/RichContentCard.module.css +93 -93
- package/src/components/card/richContentCard/RichContentCard.tsx +98 -98
- package/src/components/codeBlock/CodeBlock.module.css +6 -6
- package/src/components/codeBlock/CodeBlock.tsx +8 -8
- package/src/components/container/Container.js +3 -3
- package/src/components/container/Container.module.css +9 -9
- package/src/components/container/Container.tsx +11 -11
- package/src/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.css +222 -222
- package/src/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.js +20 -20
- package/src/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.tsx +89 -89
- package/src/components/denhaag-wrappers/pagination/Pagination.css +120 -120
- package/src/components/denhaag-wrappers/pagination/Pagination.tsx +112 -112
- package/src/components/editableTableRow/EditableTableRow.js +34 -34
- package/src/components/editableTableRow/EditableTableRow.module.css +25 -25
- package/src/components/editableTableRow/EditableTableRow.tsx +138 -138
- package/src/components/formFields/checkbox.js +3 -3
- package/src/components/formFields/checkbox.tsx +30 -30
- package/src/components/formFields/createKeyValue/CreateKeyValue.module.css +43 -43
- package/src/components/formFields/createKeyValue/CreateKeyValue.tsx +125 -125
- package/src/components/formFields/index.js +4 -4
- package/src/components/formFields/index.tsx +32 -32
- package/src/components/formFields/input.js +12 -12
- package/src/components/formFields/input.tsx +176 -176
- package/src/components/formFields/radio.tsx +21 -21
- package/src/components/formFields/select/select.module.css +38 -38
- package/src/components/formFields/select/select.tsx +105 -105
- package/src/components/formFields/textarea.js +3 -3
- package/src/components/formFields/textarea.tsx +17 -17
- package/src/components/formFields/types.js +1 -1
- package/src/components/formFields/types.ts +7 -7
- package/src/components/imageDivider/ImageDivider.js +6 -6
- package/src/components/imageDivider/ImageDivider.tsx +12 -12
- package/src/components/imageDivider/imageDivider.module.css +5 -5
- package/src/components/logo/Logo.js +10 -10
- package/src/components/logo/Logo.module.css +15 -15
- package/src/components/logo/Logo.tsx +25 -25
- package/src/components/metaIcon/MetaIcon.js +3 -3
- package/src/components/metaIcon/MetaIcon.module.css +29 -29
- package/src/components/metaIcon/MetaIcon.tsx +18 -18
- package/src/components/notificationPopUp/NotificationPopUp.module.css +61 -61
- package/src/components/notificationPopUp/NotificationPopUp.tsx +87 -87
- package/src/components/privateRoute/PrivateRoute.js +15 -15
- package/src/components/privateRoute/PrivateRoute.tsx +22 -22
- package/src/components/quoteWrapper/QuoteWrapper.module.css +12 -12
- package/src/components/quoteWrapper/QuoteWrapper.tsx +15 -15
- package/src/components/statusSteps/StatusSteps.js +5 -5
- package/src/components/statusSteps/StatusSteps.tsx +54 -54
- package/src/components/tag/Tag.module.css +44 -44
- package/src/components/tag/Tag.tsx +37 -37
- package/src/components/toolTip/ToolTip.module.css +4 -4
- package/src/components/toolTip/ToolTip.tsx +24 -24
- package/src/components/topNav/index.ts +4 -4
- package/src/components/topNav/primaryTopNav/PrimaryTopNav.module.css +140 -139
- package/src/components/topNav/primaryTopNav/PrimaryTopNav.tsx +81 -79
- package/src/components/topNav/secondaryTopNav/SecondaryTopNav.module.css +63 -63
- package/src/components/topNav/secondaryTopNav/SecondaryTopNav.tsx +27 -27
- package/src/custom.d.ts +4 -4
- package/src/index.js +14 -14
- package/src/index.ts +79 -79
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
:root {
|
|
2
|
-
--conduction-badge-counter-color: hsl(0 0% 0%);
|
|
3
|
-
--conduction-badge-counter-background-color: var(--skeleton-color-grey-1);
|
|
4
|
-
--conduction-badge-counter-height: var(--skeleton-size-md);
|
|
5
|
-
--conduction-badge-counter-width: var(--skeleton-size-md);
|
|
6
|
-
--conduction-badge-counter-font-size: var(--skeleton-font-size-xs);
|
|
7
|
-
--conduction-badge-counter-max-number-font-size: var(--skeleton-font-size-2xs);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
.content {
|
|
11
|
-
display: flex;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
.badge {
|
|
15
|
-
height: var(--conduction-badge-counter-height);
|
|
16
|
-
width: var(--conduction-badge-counter-width);
|
|
17
|
-
border-radius: 50%;
|
|
18
|
-
font-size: var(--conduction-badge-counter-font-size);
|
|
19
|
-
display: flex;
|
|
20
|
-
align-items: center;
|
|
21
|
-
justify-content: space-around;
|
|
22
|
-
background-color: var(--conduction-badge-counter-background-color);
|
|
23
|
-
color: var(--conduction-badge-counter-color);
|
|
24
|
-
}
|
|
25
|
-
.maxNumber {
|
|
26
|
-
font-size: var(--conduction-badge-counter-max-number-font-size);
|
|
27
|
-
}
|
|
1
|
+
:root {
|
|
2
|
+
--conduction-badge-counter-color: hsl(0 0% 0%);
|
|
3
|
+
--conduction-badge-counter-background-color: var(--skeleton-color-grey-1);
|
|
4
|
+
--conduction-badge-counter-height: var(--skeleton-size-md);
|
|
5
|
+
--conduction-badge-counter-width: var(--skeleton-size-md);
|
|
6
|
+
--conduction-badge-counter-font-size: var(--skeleton-font-size-xs);
|
|
7
|
+
--conduction-badge-counter-max-number-font-size: var(--skeleton-font-size-2xs);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.content {
|
|
11
|
+
display: flex;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.badge {
|
|
15
|
+
height: var(--conduction-badge-counter-height);
|
|
16
|
+
width: var(--conduction-badge-counter-width);
|
|
17
|
+
border-radius: 50%;
|
|
18
|
+
font-size: var(--conduction-badge-counter-font-size);
|
|
19
|
+
display: flex;
|
|
20
|
+
align-items: center;
|
|
21
|
+
justify-content: space-around;
|
|
22
|
+
background-color: var(--conduction-badge-counter-background-color);
|
|
23
|
+
color: var(--conduction-badge-counter-color);
|
|
24
|
+
}
|
|
25
|
+
.maxNumber {
|
|
26
|
+
font-size: var(--conduction-badge-counter-max-number-font-size);
|
|
27
|
+
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import * as styles from "./BadgeCounter.module.css";
|
|
3
|
-
import clsx from "clsx";
|
|
4
|
-
|
|
5
|
-
interface BadgeCounterProps {
|
|
6
|
-
number: string;
|
|
7
|
-
children: React.ReactNode;
|
|
8
|
-
layoutClassName?: string;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export const BadgeCounter: React.FC<BadgeCounterProps> = ({ number, children, layoutClassName }) => (
|
|
12
|
-
<div className={styles.content}>
|
|
13
|
-
{children}
|
|
14
|
-
<span className={clsx([layoutClassName && layoutClassName], styles.badge)}>{number}</span>
|
|
15
|
-
</div>
|
|
16
|
-
);
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as styles from "./BadgeCounter.module.css";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
|
|
5
|
+
interface BadgeCounterProps {
|
|
6
|
+
number: string;
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
layoutClassName?: string;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const BadgeCounter: React.FC<BadgeCounterProps> = ({ number, children, layoutClassName }) => (
|
|
12
|
+
<div className={styles.content}>
|
|
13
|
+
{children}
|
|
14
|
+
<span className={clsx([layoutClassName && layoutClassName], styles.badge)}>{number}</span>
|
|
15
|
+
</div>
|
|
16
|
+
);
|
|
@@ -1,51 +1,51 @@
|
|
|
1
|
-
:root {
|
|
2
|
-
--conduction-details-card-border: 1px solid var(--skeleton-color-grey-2);
|
|
3
|
-
--conduction-details-card-introduction-lines-clamp: 3;
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
.container {
|
|
7
|
-
cursor: pointer;
|
|
8
|
-
overflow: hidden;
|
|
9
|
-
border-radius: var(--skeleton-border-radius-md);
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
.content {
|
|
13
|
-
display: flex;
|
|
14
|
-
flex-direction: column;
|
|
15
|
-
padding-inline-start: var(--skeleton-size-md);
|
|
16
|
-
padding-inline-end: var(--skeleton-size-md);
|
|
17
|
-
padding-block-start: var(--skeleton-size-md);
|
|
18
|
-
padding-block-end: var(--skeleton-size-md);
|
|
19
|
-
border: var(--conduction-details-card-border);
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
.content > *:not(:last-child) {
|
|
23
|
-
margin-block-end: var(--skeleton-size-md);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
.title {
|
|
27
|
-
font-size: var(--skeleton-font-size-xl);
|
|
28
|
-
font-weight: var(--skeleton-font-weight-bold);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
.subHeader {
|
|
32
|
-
color: var(--skeleton-color-grey-3);
|
|
33
|
-
font-size: var(--skeleton-font-size-sm);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
.tags > *:not(:last-child) {
|
|
37
|
-
margin-inline-end: var(--skeleton-size-sm);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
.introduction {
|
|
41
|
-
overflow: hidden;
|
|
42
|
-
text-overflow: ellipsis;
|
|
43
|
-
display: -webkit-box;
|
|
44
|
-
-webkit-line-clamp: var(--conduction-details-card-introduction-lines-clamp);
|
|
45
|
-
-webkit-box-orient: vertical;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
.link {
|
|
49
|
-
display: flex;
|
|
50
|
-
justify-content: flex-end;
|
|
51
|
-
}
|
|
1
|
+
:root {
|
|
2
|
+
--conduction-details-card-border: 1px solid var(--skeleton-color-grey-2);
|
|
3
|
+
--conduction-details-card-introduction-lines-clamp: 3;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.container {
|
|
7
|
+
cursor: pointer;
|
|
8
|
+
overflow: hidden;
|
|
9
|
+
border-radius: var(--skeleton-border-radius-md);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.content {
|
|
13
|
+
display: flex;
|
|
14
|
+
flex-direction: column;
|
|
15
|
+
padding-inline-start: var(--skeleton-size-md);
|
|
16
|
+
padding-inline-end: var(--skeleton-size-md);
|
|
17
|
+
padding-block-start: var(--skeleton-size-md);
|
|
18
|
+
padding-block-end: var(--skeleton-size-md);
|
|
19
|
+
border: var(--conduction-details-card-border);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.content > *:not(:last-child) {
|
|
23
|
+
margin-block-end: var(--skeleton-size-md);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.title {
|
|
27
|
+
font-size: var(--skeleton-font-size-xl);
|
|
28
|
+
font-weight: var(--skeleton-font-weight-bold);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.subHeader {
|
|
32
|
+
color: var(--skeleton-color-grey-3);
|
|
33
|
+
font-size: var(--skeleton-font-size-sm);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.tags > *:not(:last-child) {
|
|
37
|
+
margin-inline-end: var(--skeleton-size-sm);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.introduction {
|
|
41
|
+
overflow: hidden;
|
|
42
|
+
text-overflow: ellipsis;
|
|
43
|
+
display: -webkit-box;
|
|
44
|
+
-webkit-line-clamp: var(--conduction-details-card-introduction-lines-clamp);
|
|
45
|
+
-webkit-box-orient: vertical;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.link {
|
|
49
|
+
display: flex;
|
|
50
|
+
justify-content: flex-end;
|
|
51
|
+
}
|
|
@@ -1,56 +1,56 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import * as styles from "./DetailsCard.module.css";
|
|
3
|
-
import clsx from "clsx";
|
|
4
|
-
import { Link } from "@gemeente-denhaag/components-react";
|
|
5
|
-
import { navigate } from "gatsby";
|
|
6
|
-
import { ArrowRightIcon } from "@gemeente-denhaag/icons";
|
|
7
|
-
import { Tag } from "../../tag/Tag";
|
|
8
|
-
|
|
9
|
-
interface DetailsCardProps {
|
|
10
|
-
title: string;
|
|
11
|
-
introduction?: string;
|
|
12
|
-
link: {
|
|
13
|
-
href: string;
|
|
14
|
-
label: string;
|
|
15
|
-
};
|
|
16
|
-
tags?: string[];
|
|
17
|
-
subHeader?: string;
|
|
18
|
-
layoutClassName?: string;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export const DetailsCard: React.FC<DetailsCardProps> = ({
|
|
22
|
-
title,
|
|
23
|
-
subHeader,
|
|
24
|
-
introduction,
|
|
25
|
-
link,
|
|
26
|
-
tags,
|
|
27
|
-
layoutClassName,
|
|
28
|
-
}) => {
|
|
29
|
-
return (
|
|
30
|
-
<div className={clsx(styles.container, [layoutClassName && layoutClassName])} onClick={() => navigate(link.href)}>
|
|
31
|
-
<div className={styles.content}>
|
|
32
|
-
<div>
|
|
33
|
-
<div className={styles.title}>{title}</div>
|
|
34
|
-
|
|
35
|
-
<span className={styles.subHeader}>{subHeader}</span>
|
|
36
|
-
</div>
|
|
37
|
-
|
|
38
|
-
{tags && (
|
|
39
|
-
<div className={styles.tags}>
|
|
40
|
-
{tags.map((tag, idx) => (
|
|
41
|
-
<Tag key={idx} label={tag} />
|
|
42
|
-
))}
|
|
43
|
-
</div>
|
|
44
|
-
)}
|
|
45
|
-
|
|
46
|
-
<div className={styles.introduction}>{introduction}</div>
|
|
47
|
-
|
|
48
|
-
<div className={styles.link}>
|
|
49
|
-
<Link icon={<ArrowRightIcon />} iconAlign="start">
|
|
50
|
-
{link.label}
|
|
51
|
-
</Link>
|
|
52
|
-
</div>
|
|
53
|
-
</div>
|
|
54
|
-
</div>
|
|
55
|
-
);
|
|
56
|
-
};
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as styles from "./DetailsCard.module.css";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
import { Link } from "@gemeente-denhaag/components-react";
|
|
5
|
+
import { navigate } from "gatsby";
|
|
6
|
+
import { ArrowRightIcon } from "@gemeente-denhaag/icons";
|
|
7
|
+
import { Tag } from "../../tag/Tag";
|
|
8
|
+
|
|
9
|
+
interface DetailsCardProps {
|
|
10
|
+
title: string;
|
|
11
|
+
introduction?: string;
|
|
12
|
+
link: {
|
|
13
|
+
href: string;
|
|
14
|
+
label: string;
|
|
15
|
+
};
|
|
16
|
+
tags?: string[];
|
|
17
|
+
subHeader?: string;
|
|
18
|
+
layoutClassName?: string;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export const DetailsCard: React.FC<DetailsCardProps> = ({
|
|
22
|
+
title,
|
|
23
|
+
subHeader,
|
|
24
|
+
introduction,
|
|
25
|
+
link,
|
|
26
|
+
tags,
|
|
27
|
+
layoutClassName,
|
|
28
|
+
}) => {
|
|
29
|
+
return (
|
|
30
|
+
<div className={clsx(styles.container, [layoutClassName && layoutClassName])} onClick={() => navigate(link.href)}>
|
|
31
|
+
<div className={styles.content}>
|
|
32
|
+
<div>
|
|
33
|
+
<div className={styles.title}>{title}</div>
|
|
34
|
+
|
|
35
|
+
<span className={styles.subHeader}>{subHeader}</span>
|
|
36
|
+
</div>
|
|
37
|
+
|
|
38
|
+
{tags && (
|
|
39
|
+
<div className={styles.tags}>
|
|
40
|
+
{tags.map((tag, idx) => (
|
|
41
|
+
<Tag key={idx} label={tag} />
|
|
42
|
+
))}
|
|
43
|
+
</div>
|
|
44
|
+
)}
|
|
45
|
+
|
|
46
|
+
<div className={styles.introduction}>{introduction}</div>
|
|
47
|
+
|
|
48
|
+
<div className={styles.link}>
|
|
49
|
+
<Link icon={<ArrowRightIcon />} iconAlign="start">
|
|
50
|
+
{link.label}
|
|
51
|
+
</Link>
|
|
52
|
+
</div>
|
|
53
|
+
</div>
|
|
54
|
+
</div>
|
|
55
|
+
);
|
|
56
|
+
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import * as styles from "./DownloadCard.module.css";
|
|
3
|
-
import { DownloadIcon } from "@gemeente-denhaag/icons";
|
|
4
|
-
import { Link } from "@gemeente-denhaag/components-react";
|
|
5
|
-
import clsx from "clsx";
|
|
6
|
-
import { useTranslation } from "react-i18next";
|
|
7
|
-
export const DownloadCard = ({ icon, label, sizeKb, layoutClassName }) => {
|
|
8
|
-
const { t } = useTranslation();
|
|
9
|
-
return (_jsxs("div", { className: clsx(styles.container, [layoutClassName && layoutClassName]), children: [_jsxs("div", { className: styles.content, children: [_jsx("div", { className: styles.icon, children: icon }), _jsxs("div", { children: [label, " (", sizeKb, "kb)"] })] }), _jsx(Link, { icon: _jsx(DownloadIcon, {}), iconAlign: "start", children: t("Download") })] }));
|
|
10
|
-
};
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as styles from "./DownloadCard.module.css";
|
|
3
|
+
import { DownloadIcon } from "@gemeente-denhaag/icons";
|
|
4
|
+
import { Link } from "@gemeente-denhaag/components-react";
|
|
5
|
+
import clsx from "clsx";
|
|
6
|
+
import { useTranslation } from "react-i18next";
|
|
7
|
+
export const DownloadCard = ({ icon, label, sizeKb, layoutClassName }) => {
|
|
8
|
+
const { t } = useTranslation();
|
|
9
|
+
return (_jsxs("div", { className: clsx(styles.container, [layoutClassName && layoutClassName]), children: [_jsxs("div", { className: styles.content, children: [_jsx("div", { className: styles.icon, children: icon }), _jsxs("div", { children: [label, " (", sizeKb, "kb)"] })] }), _jsx(Link, { icon: _jsx(DownloadIcon, {}), iconAlign: "start", children: t("Download") })] }));
|
|
10
|
+
};
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
:root {
|
|
2
|
-
--conduction-download-card-border: 1px solid var(--skeleton-color-grey-2);
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
.container {
|
|
6
|
-
display: flex;
|
|
7
|
-
align-items: center;
|
|
8
|
-
justify-content: space-between;
|
|
9
|
-
border: var(--conduction-download-card-border);
|
|
10
|
-
border-radius: var(--skeleton-border-radius-md);
|
|
11
|
-
padding-inline-end: var(--skeleton-size-sm);
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
.content {
|
|
15
|
-
display: flex;
|
|
16
|
-
align-items: center;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
.content > *:not(:last-child) {
|
|
20
|
-
margin-inline-end: var(--skeleton-size-sm);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
.icon {
|
|
24
|
-
padding-inline: var(--skeleton-size-sm);
|
|
25
|
-
padding-block: var(--skeleton-size-sm);
|
|
26
|
-
background-color: var(--skeleton-color-grey-1);
|
|
27
|
-
}
|
|
1
|
+
:root {
|
|
2
|
+
--conduction-download-card-border: 1px solid var(--skeleton-color-grey-2);
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.container {
|
|
6
|
+
display: flex;
|
|
7
|
+
align-items: center;
|
|
8
|
+
justify-content: space-between;
|
|
9
|
+
border: var(--conduction-download-card-border);
|
|
10
|
+
border-radius: var(--skeleton-border-radius-md);
|
|
11
|
+
padding-inline-end: var(--skeleton-size-sm);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.content {
|
|
15
|
+
display: flex;
|
|
16
|
+
align-items: center;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.content > *:not(:last-child) {
|
|
20
|
+
margin-inline-end: var(--skeleton-size-sm);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.icon {
|
|
24
|
+
padding-inline: var(--skeleton-size-sm);
|
|
25
|
+
padding-block: var(--skeleton-size-sm);
|
|
26
|
+
background-color: var(--skeleton-color-grey-1);
|
|
27
|
+
}
|
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import * as styles from "./DownloadCard.module.css";
|
|
3
|
-
import { DownloadIcon } from "@gemeente-denhaag/icons";
|
|
4
|
-
import { Link } from "@gemeente-denhaag/components-react";
|
|
5
|
-
import clsx from "clsx";
|
|
6
|
-
|
|
7
|
-
interface DownloadCardProps {
|
|
8
|
-
icon: JSX.Element;
|
|
9
|
-
label: string;
|
|
10
|
-
sizeKb: string;
|
|
11
|
-
downloadLabel: string;
|
|
12
|
-
layoutClassName?: string;
|
|
13
|
-
handleClick: () => any;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export const DownloadCard: React.FC<DownloadCardProps> = ({
|
|
17
|
-
icon,
|
|
18
|
-
label,
|
|
19
|
-
sizeKb,
|
|
20
|
-
layoutClassName,
|
|
21
|
-
downloadLabel,
|
|
22
|
-
handleClick,
|
|
23
|
-
}) => {
|
|
24
|
-
return (
|
|
25
|
-
<div className={clsx(styles.container, [layoutClassName && layoutClassName])}>
|
|
26
|
-
<div className={styles.content}>
|
|
27
|
-
<div className={styles.icon}>{icon}</div>
|
|
28
|
-
|
|
29
|
-
<div>
|
|
30
|
-
{label} ({sizeKb}kb)
|
|
31
|
-
</div>
|
|
32
|
-
</div>
|
|
33
|
-
<div onClick={handleClick}>
|
|
34
|
-
<Link icon={<DownloadIcon />} iconAlign="start">
|
|
35
|
-
{downloadLabel}
|
|
36
|
-
</Link>
|
|
37
|
-
</div>
|
|
38
|
-
</div>
|
|
39
|
-
);
|
|
40
|
-
};
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as styles from "./DownloadCard.module.css";
|
|
3
|
+
import { DownloadIcon } from "@gemeente-denhaag/icons";
|
|
4
|
+
import { Link } from "@gemeente-denhaag/components-react";
|
|
5
|
+
import clsx from "clsx";
|
|
6
|
+
|
|
7
|
+
interface DownloadCardProps {
|
|
8
|
+
icon: JSX.Element;
|
|
9
|
+
label: string;
|
|
10
|
+
sizeKb: string;
|
|
11
|
+
downloadLabel: string;
|
|
12
|
+
layoutClassName?: string;
|
|
13
|
+
handleClick: () => any;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export const DownloadCard: React.FC<DownloadCardProps> = ({
|
|
17
|
+
icon,
|
|
18
|
+
label,
|
|
19
|
+
sizeKb,
|
|
20
|
+
layoutClassName,
|
|
21
|
+
downloadLabel,
|
|
22
|
+
handleClick,
|
|
23
|
+
}) => {
|
|
24
|
+
return (
|
|
25
|
+
<div className={clsx(styles.container, [layoutClassName && layoutClassName])}>
|
|
26
|
+
<div className={styles.content}>
|
|
27
|
+
<div className={styles.icon}>{icon}</div>
|
|
28
|
+
|
|
29
|
+
<div>
|
|
30
|
+
{label} ({sizeKb}kb)
|
|
31
|
+
</div>
|
|
32
|
+
</div>
|
|
33
|
+
<div onClick={handleClick}>
|
|
34
|
+
<Link icon={<DownloadIcon />} iconAlign="start">
|
|
35
|
+
{downloadLabel}
|
|
36
|
+
</Link>
|
|
37
|
+
</div>
|
|
38
|
+
</div>
|
|
39
|
+
);
|
|
40
|
+
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import * as styles from "./HorizontalImageCard.module.css";
|
|
3
|
-
import clsx from "clsx";
|
|
4
|
-
import { Link } from "@gemeente-denhaag/components-react";
|
|
5
|
-
import { navigate } from "gatsby";
|
|
6
|
-
import { ExternalLinkIcon, ArrowRightIcon } from "@gemeente-denhaag/icons";
|
|
7
|
-
export const HorizontalImageCard = ({ title, layoutClassName, external, link, iconOrImage, }) => {
|
|
8
|
-
return (_jsxs("div", { className: clsx(styles.container, [layoutClassName && layoutClassName]), onClick: () => navigate(link.href), children: [_jsx("div", { className: styles.imageOrIconContainer, children: iconOrImage }), _jsxs("div", { className: styles.link, children: [_jsx("div", { className: styles.title, children: title }), _jsx(Link, { icon: external ? _jsx(ExternalLinkIcon, {}) : _jsx(ArrowRightIcon, {}), iconAlign: "start", children: link.label })] })] }));
|
|
9
|
-
};
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as styles from "./HorizontalImageCard.module.css";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
import { Link } from "@gemeente-denhaag/components-react";
|
|
5
|
+
import { navigate } from "gatsby";
|
|
6
|
+
import { ExternalLinkIcon, ArrowRightIcon } from "@gemeente-denhaag/icons";
|
|
7
|
+
export const HorizontalImageCard = ({ title, layoutClassName, external, link, iconOrImage, }) => {
|
|
8
|
+
return (_jsxs("div", { className: clsx(styles.container, [layoutClassName && layoutClassName]), onClick: () => navigate(link.href), children: [_jsx("div", { className: styles.imageOrIconContainer, children: iconOrImage }), _jsxs("div", { className: styles.link, children: [_jsx("div", { className: styles.title, children: title }), _jsx(Link, { icon: external ? _jsx(ExternalLinkIcon, {}) : _jsx(ArrowRightIcon, {}), iconAlign: "start", children: link.label })] })] }));
|
|
9
|
+
};
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
:root {
|
|
2
|
-
--conduction-horizontal-image-card-image-size: 52px;
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
.container {
|
|
6
|
-
display: flex;
|
|
7
|
-
align-items: center;
|
|
8
|
-
cursor: pointer;
|
|
9
|
-
background-color: var(--skeleton-color-grey-1);
|
|
10
|
-
border-radius: var(--skeleton-border-radius-md);
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
.link {
|
|
14
|
-
display: flex;
|
|
15
|
-
flex-direction: column;
|
|
16
|
-
padding-block-start: var(--skeleton-size-lg);
|
|
17
|
-
padding-block-end: var(--skeleton-size-lg);
|
|
18
|
-
padding-inline-end: var(--skeleton-size-lg);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
.imageOrIconContainer > :first-child {
|
|
22
|
-
width: var(--conduction-horizontal-image-card-image-size);
|
|
23
|
-
height: var(--conduction-horizontal-image-card-image-size);
|
|
24
|
-
|
|
25
|
-
padding-inline-start: var(--skeleton-size-md);
|
|
26
|
-
padding-inline-end: var(--skeleton-size-md);
|
|
27
|
-
padding-block-start: var(--skeleton-size-md);
|
|
28
|
-
padding-block-end: var(--skeleton-size-md);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
.title {
|
|
32
|
-
font-weight: var(--skeleton-font-weight-bold);
|
|
33
|
-
font-size: var(--skeleton-font-size-xl);
|
|
34
|
-
}
|
|
1
|
+
:root {
|
|
2
|
+
--conduction-horizontal-image-card-image-size: 52px;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.container {
|
|
6
|
+
display: flex;
|
|
7
|
+
align-items: center;
|
|
8
|
+
cursor: pointer;
|
|
9
|
+
background-color: var(--skeleton-color-grey-1);
|
|
10
|
+
border-radius: var(--skeleton-border-radius-md);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.link {
|
|
14
|
+
display: flex;
|
|
15
|
+
flex-direction: column;
|
|
16
|
+
padding-block-start: var(--skeleton-size-lg);
|
|
17
|
+
padding-block-end: var(--skeleton-size-lg);
|
|
18
|
+
padding-inline-end: var(--skeleton-size-lg);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.imageOrIconContainer > :first-child {
|
|
22
|
+
width: var(--conduction-horizontal-image-card-image-size);
|
|
23
|
+
height: var(--conduction-horizontal-image-card-image-size);
|
|
24
|
+
|
|
25
|
+
padding-inline-start: var(--skeleton-size-md);
|
|
26
|
+
padding-inline-end: var(--skeleton-size-md);
|
|
27
|
+
padding-block-start: var(--skeleton-size-md);
|
|
28
|
+
padding-block-end: var(--skeleton-size-md);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.title {
|
|
32
|
+
font-weight: var(--skeleton-font-weight-bold);
|
|
33
|
+
font-size: var(--skeleton-font-size-xl);
|
|
34
|
+
}
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import * as styles from "./HorizontalImageCard.module.css";
|
|
3
|
-
import clsx from "clsx";
|
|
4
|
-
import { Link } from "@gemeente-denhaag/components-react";
|
|
5
|
-
import { navigate } from "gatsby";
|
|
6
|
-
import { ExternalLinkIcon, ArrowRightIcon } from "@gemeente-denhaag/icons";
|
|
7
|
-
|
|
8
|
-
interface HorizontalImageCardProps {
|
|
9
|
-
iconOrImage: JSX.Element;
|
|
10
|
-
title: string;
|
|
11
|
-
link: {
|
|
12
|
-
label: string;
|
|
13
|
-
href: string;
|
|
14
|
-
};
|
|
15
|
-
layoutClassName?: string;
|
|
16
|
-
external?: boolean;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export const HorizontalImageCard: React.FC<HorizontalImageCardProps> = ({
|
|
20
|
-
title,
|
|
21
|
-
layoutClassName,
|
|
22
|
-
external,
|
|
23
|
-
link,
|
|
24
|
-
iconOrImage,
|
|
25
|
-
}) => {
|
|
26
|
-
return (
|
|
27
|
-
<div className={clsx(styles.container, [layoutClassName && layoutClassName])} onClick={() => navigate(link.href)}>
|
|
28
|
-
<div className={styles.imageOrIconContainer}>{iconOrImage}</div>
|
|
29
|
-
<div className={styles.link}>
|
|
30
|
-
<div className={styles.title}>{title}</div>
|
|
31
|
-
<Link icon={external ? <ExternalLinkIcon /> : <ArrowRightIcon />} iconAlign="start">
|
|
32
|
-
{link.label}
|
|
33
|
-
</Link>
|
|
34
|
-
</div>
|
|
35
|
-
</div>
|
|
36
|
-
);
|
|
37
|
-
};
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as styles from "./HorizontalImageCard.module.css";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
import { Link } from "@gemeente-denhaag/components-react";
|
|
5
|
+
import { navigate } from "gatsby";
|
|
6
|
+
import { ExternalLinkIcon, ArrowRightIcon } from "@gemeente-denhaag/icons";
|
|
7
|
+
|
|
8
|
+
interface HorizontalImageCardProps {
|
|
9
|
+
iconOrImage: JSX.Element;
|
|
10
|
+
title: string;
|
|
11
|
+
link: {
|
|
12
|
+
label: string;
|
|
13
|
+
href: string;
|
|
14
|
+
};
|
|
15
|
+
layoutClassName?: string;
|
|
16
|
+
external?: boolean;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export const HorizontalImageCard: React.FC<HorizontalImageCardProps> = ({
|
|
20
|
+
title,
|
|
21
|
+
layoutClassName,
|
|
22
|
+
external,
|
|
23
|
+
link,
|
|
24
|
+
iconOrImage,
|
|
25
|
+
}) => {
|
|
26
|
+
return (
|
|
27
|
+
<div className={clsx(styles.container, [layoutClassName && layoutClassName])} onClick={() => navigate(link.href)}>
|
|
28
|
+
<div className={styles.imageOrIconContainer}>{iconOrImage}</div>
|
|
29
|
+
<div className={styles.link}>
|
|
30
|
+
<div className={styles.title}>{title}</div>
|
|
31
|
+
<Link icon={external ? <ExternalLinkIcon /> : <ArrowRightIcon />} iconAlign="start">
|
|
32
|
+
{link.label}
|
|
33
|
+
</Link>
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
);
|
|
37
|
+
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import * as styles from "./ImageAndDetailsCard.module.css";
|
|
3
|
-
import clsx from "clsx";
|
|
4
|
-
import { Link } from "@gemeente-denhaag/components-react";
|
|
5
|
-
import { navigate } from "gatsby";
|
|
6
|
-
import { ArrowRightIcon } from "@gemeente-denhaag/icons";
|
|
7
|
-
export const ImageAndDetailsCard = ({ image, title, subHeader, introduction, link, layoutClassName, }) => {
|
|
8
|
-
return (_jsxs("div", { className: clsx(styles.container, [layoutClassName && layoutClassName]), onClick: () => navigate(link.href), children: [_jsx("div", { className: styles.image, children: image }), _jsxs("div", { className: styles.content, children: [_jsxs("div", { children: [_jsx("div", { className: styles.title, children: title }), _jsx("span", { className: styles.subHeader, children: subHeader })] }), _jsx("div", { className: styles.introduction, children: introduction }), _jsx("div", { className: styles.link, children: _jsx(Link, { icon: _jsx(ArrowRightIcon, {}), iconAlign: "start", children: link.label }) })] })] }));
|
|
9
|
-
};
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as styles from "./ImageAndDetailsCard.module.css";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
import { Link } from "@gemeente-denhaag/components-react";
|
|
5
|
+
import { navigate } from "gatsby";
|
|
6
|
+
import { ArrowRightIcon } from "@gemeente-denhaag/icons";
|
|
7
|
+
export const ImageAndDetailsCard = ({ image, title, subHeader, introduction, link, layoutClassName, }) => {
|
|
8
|
+
return (_jsxs("div", { className: clsx(styles.container, [layoutClassName && layoutClassName]), onClick: () => navigate(link.href), children: [_jsx("div", { className: styles.image, children: image }), _jsxs("div", { className: styles.content, children: [_jsxs("div", { children: [_jsx("div", { className: styles.title, children: title }), _jsx("span", { className: styles.subHeader, children: subHeader })] }), _jsx("div", { className: styles.introduction, children: introduction }), _jsx("div", { className: styles.link, children: _jsx(Link, { icon: _jsx(ArrowRightIcon, {}), iconAlign: "start", children: link.label }) })] })] }));
|
|
9
|
+
};
|