@conduction/components 2.0.2 → 2.0.4

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.
Files changed (166) hide show
  1. package/.github/workflows/npm-publish.yml +39 -39
  2. package/.prettierrc +30 -30
  3. package/README.md +15 -13
  4. package/lib/components/card/detailsCard/DetailsCard.d.ts +14 -14
  5. package/lib/components/card/detailsCard/DetailsCard.js +10 -10
  6. package/lib/components/card/detailsCard/DetailsCard.module.css +51 -51
  7. package/lib/components/card/downloadCard/DownloadCard.d.ts +10 -10
  8. package/lib/components/card/downloadCard/DownloadCard.js +8 -8
  9. package/lib/components/card/downloadCard/DownloadCard.module.css +27 -27
  10. package/lib/components/card/horizontalImageCard/HorizontalImageCard.d.ts +13 -13
  11. package/lib/components/card/horizontalImageCard/HorizontalImageCard.js +9 -9
  12. package/lib/components/card/horizontalImageCard/HorizontalImageCard.module.css +34 -34
  13. package/lib/components/card/imageAndDetailsCard/ImageAndDetailsCard.d.ts +14 -14
  14. package/lib/components/card/imageAndDetailsCard/ImageAndDetailsCard.js +9 -9
  15. package/lib/components/card/imageAndDetailsCard/ImageAndDetailsCard.module.css +63 -63
  16. package/lib/components/card/index.d.ts +7 -7
  17. package/lib/components/card/index.js +7 -7
  18. package/lib/components/card/infoCard/InfoCard.d.ts +8 -7
  19. package/lib/components/card/infoCard/InfoCard.js +6 -5
  20. package/lib/components/card/infoCard/InfoCard.module.css +26 -26
  21. package/lib/components/card/richContentCard/RichContentCard.d.ts +19 -19
  22. package/lib/components/card/richContentCard/RichContentCard.js +15 -15
  23. package/lib/components/card/richContentCard/RichContentCard.module.css +93 -93
  24. package/lib/components/container/Container.d.ts +6 -6
  25. package/lib/components/container/Container.js +4 -4
  26. package/lib/components/container/Container.module.css +9 -9
  27. package/lib/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.css +222 -222
  28. package/lib/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.d.ts +17 -17
  29. package/lib/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.js +20 -20
  30. package/lib/components/denhaag-wrappers/pagination/Pagination.css +120 -120
  31. package/lib/components/denhaag-wrappers/pagination/Pagination.d.ts +9 -9
  32. package/lib/components/denhaag-wrappers/pagination/Pagination.js +15 -15
  33. package/lib/components/editableTableRow/EditableTableRow.d.ts +14 -14
  34. package/lib/components/editableTableRow/EditableTableRow.js +31 -31
  35. package/lib/components/editableTableRow/EditableTableRow.module.css +25 -25
  36. package/lib/components/formFields/checkbox.d.ts +7 -7
  37. package/lib/components/formFields/checkbox.js +3 -3
  38. package/lib/components/formFields/index.d.ts +6 -6
  39. package/lib/components/formFields/index.js +6 -6
  40. package/lib/components/formFields/input.d.ts +19 -19
  41. package/lib/components/formFields/input.js +13 -13
  42. package/lib/components/formFields/radio.d.ts +9 -9
  43. package/lib/components/formFields/radio.js +3 -3
  44. package/lib/components/formFields/select/select.d.ts +17 -17
  45. package/lib/components/formFields/select/select.js +14 -14
  46. package/lib/components/formFields/select/select.module.css +35 -35
  47. package/lib/components/formFields/textarea.d.ts +8 -8
  48. package/lib/components/formFields/textarea.js +3 -3
  49. package/lib/components/formFields/types.d.ts +6 -6
  50. package/lib/components/formFields/types.js +1 -1
  51. package/lib/components/imageDivider/ImageDivider.d.ts +7 -7
  52. package/lib/components/imageDivider/ImageDivider.js +6 -6
  53. package/lib/components/imageDivider/imageDivider.module.css +5 -5
  54. package/lib/components/logo/Logo.d.ts +8 -8
  55. package/lib/components/logo/Logo.js +10 -10
  56. package/lib/components/logo/Logo.module.css +15 -15
  57. package/lib/components/metaIcon/MetaIcon.d.ts +7 -7
  58. package/lib/components/metaIcon/MetaIcon.js +3 -3
  59. package/lib/components/metaIcon/MetaIcon.module.css +29 -29
  60. package/lib/components/modals/NotificationModal.d.ts +21 -0
  61. package/lib/components/modals/NotificationModal.js +34 -0
  62. package/lib/components/modals/NotificationModal.module.css +56 -0
  63. package/lib/components/notificationPopUp/{NotificationPopUp.module.css → NotificationPopUP.module.css} +61 -61
  64. package/lib/components/notificationPopUp/NotificationPopUp.d.ts +22 -22
  65. package/lib/components/notificationPopUp/NotificationPopUp.js +31 -31
  66. package/lib/components/privateRoute/PrivateRoute.d.ts +6 -6
  67. package/lib/components/privateRoute/PrivateRoute.js +15 -15
  68. package/lib/components/quoteWrapper/QuoteWrapper.d.ts +7 -7
  69. package/lib/components/quoteWrapper/QuoteWrapper.js +5 -5
  70. package/lib/components/quoteWrapper/QuoteWrapper.module.css +12 -12
  71. package/lib/components/statusSteps/StatusSteps.d.ts +13 -13
  72. package/lib/components/statusSteps/StatusSteps.js +5 -5
  73. package/lib/components/tag/Tag.d.ts +6 -6
  74. package/lib/components/tag/Tag.js +3 -3
  75. package/lib/components/tag/Tag.module.css +20 -20
  76. package/lib/components/topNav/TopNav.d.ts +12 -0
  77. package/lib/components/topNav/TopNav.js +10 -0
  78. package/lib/components/topNav/TopNav.module.css +71 -0
  79. package/lib/components/topNav/index.d.ts +3 -3
  80. package/lib/components/topNav/index.js +3 -3
  81. package/lib/components/topNav/primaryTopNav/PrimaryTopNav.d.ts +17 -17
  82. package/lib/components/topNav/primaryTopNav/PrimaryTopNav.js +7 -7
  83. package/lib/components/topNav/primaryTopNav/PrimaryTopNav.module.css +60 -60
  84. package/lib/components/topNav/secondaryTopNav/SecondaryTopNav.d.ts +11 -11
  85. package/lib/components/topNav/secondaryTopNav/SecondaryTopNav.js +7 -7
  86. package/lib/components/topNav/secondaryTopNav/SecondaryTopNav.module.css +43 -43
  87. package/lib/index.d.ts +24 -24
  88. package/lib/index.js +17 -17
  89. package/lib/pages/index.d.ts +3 -0
  90. package/lib/pages/index.js +5 -0
  91. package/lib/templates/landing/LandingTemplate.d.ts +2 -0
  92. package/lib/templates/landing/LandingTemplate.js +6 -0
  93. package/lib/templates/landing/LandingTemplate.module.css +17 -0
  94. package/lib/templates/testing/TestingTemplate.d.ts +2 -0
  95. package/lib/templates/testing/TestingTemplate.js +6 -0
  96. package/lib/templates/testing/TestingTemplate.module.css +0 -0
  97. package/package.json +42 -42
  98. package/src/components/card/detailsCard/DetailsCard.module.css +51 -51
  99. package/src/components/card/detailsCard/DetailsCard.tsx +56 -56
  100. package/src/components/card/downloadCard/DownloadCard.js +10 -10
  101. package/src/components/card/downloadCard/DownloadCard.module.css +27 -27
  102. package/src/components/card/downloadCard/DownloadCard.tsx +31 -31
  103. package/src/components/card/horizontalImageCard/HorizontalImageCard.js +9 -9
  104. package/src/components/card/horizontalImageCard/HorizontalImageCard.module.css +34 -34
  105. package/src/components/card/horizontalImageCard/HorizontalImageCard.tsx +37 -37
  106. package/src/components/card/imageAndDetailsCard/ImageAndDetailsCard.js +9 -9
  107. package/src/components/card/imageAndDetailsCard/ImageAndDetailsCard.module.css +63 -63
  108. package/src/components/card/imageAndDetailsCard/ImageAndDetailsCard.tsx +49 -49
  109. package/src/components/card/index.js +5 -5
  110. package/src/components/card/index.tsx +8 -8
  111. package/src/components/card/infoCard/InfoCard.module.css +26 -26
  112. package/src/components/card/infoCard/InfoCard.tsx +19 -17
  113. package/src/components/card/richContentCard/RichContentCard.js +17 -17
  114. package/src/components/card/richContentCard/RichContentCard.module.css +93 -93
  115. package/src/components/card/richContentCard/RichContentCard.tsx +98 -98
  116. package/src/components/container/Container.js +3 -3
  117. package/src/components/container/Container.module.css +9 -9
  118. package/src/components/container/Container.tsx +11 -11
  119. package/src/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.css +222 -222
  120. package/src/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.js +20 -20
  121. package/src/components/denhaag-wrappers/breadcrumbs/Breadcrumbs.tsx +89 -89
  122. package/src/components/denhaag-wrappers/pagination/Pagination.css +120 -120
  123. package/src/components/denhaag-wrappers/pagination/Pagination.tsx +112 -112
  124. package/src/components/editableTableRow/EditableTableRow.js +34 -34
  125. package/src/components/editableTableRow/EditableTableRow.module.css +25 -25
  126. package/src/components/editableTableRow/EditableTableRow.tsx +138 -138
  127. package/src/components/formFields/checkbox.js +3 -3
  128. package/src/components/formFields/checkbox.tsx +14 -14
  129. package/src/components/formFields/index.js +4 -4
  130. package/src/components/formFields/index.tsx +19 -19
  131. package/src/components/formFields/input.js +12 -12
  132. package/src/components/formFields/input.tsx +123 -123
  133. package/src/components/formFields/radio.tsx +21 -21
  134. package/src/components/formFields/select/select.module.css +35 -35
  135. package/src/components/formFields/select/select.tsx +63 -63
  136. package/src/components/formFields/textarea.js +3 -3
  137. package/src/components/formFields/textarea.tsx +13 -13
  138. package/src/components/formFields/types.js +1 -1
  139. package/src/components/formFields/types.ts +7 -7
  140. package/src/components/imageDivider/ImageDivider.js +6 -6
  141. package/src/components/imageDivider/ImageDivider.tsx +12 -12
  142. package/src/components/imageDivider/imageDivider.module.css +5 -5
  143. package/src/components/logo/Logo.js +10 -10
  144. package/src/components/logo/Logo.module.css +15 -15
  145. package/src/components/logo/Logo.tsx +25 -25
  146. package/src/components/metaIcon/MetaIcon.js +3 -3
  147. package/src/components/metaIcon/MetaIcon.module.css +29 -29
  148. package/src/components/metaIcon/MetaIcon.tsx +18 -18
  149. package/src/components/notificationPopUp/NotificationPopUp.module.css +61 -61
  150. package/src/components/notificationPopUp/NotificationPopUp.tsx +82 -82
  151. package/src/components/privateRoute/PrivateRoute.js +15 -15
  152. package/src/components/privateRoute/PrivateRoute.tsx +22 -22
  153. package/src/components/quoteWrapper/QuoteWrapper.module.css +12 -12
  154. package/src/components/quoteWrapper/QuoteWrapper.tsx +15 -15
  155. package/src/components/statusSteps/StatusSteps.js +5 -5
  156. package/src/components/statusSteps/StatusSteps.tsx +54 -54
  157. package/src/components/tag/Tag.module.css +20 -20
  158. package/src/components/tag/Tag.tsx +8 -8
  159. package/src/components/topNav/index.ts +4 -4
  160. package/src/components/topNav/primaryTopNav/PrimaryTopNav.module.css +60 -60
  161. package/src/components/topNav/primaryTopNav/PrimaryTopNav.tsx +52 -52
  162. package/src/components/topNav/secondaryTopNav/SecondaryTopNav.module.css +43 -43
  163. package/src/components/topNav/secondaryTopNav/SecondaryTopNav.tsx +27 -27
  164. package/src/custom.d.ts +4 -4
  165. package/src/index.js +14 -14
  166. package/src/index.ts +73 -73
@@ -1,54 +1,54 @@
1
- import * as React from "react";
2
- import {
3
- Step,
4
- StepExpandedIcon,
5
- StepHeader,
6
- StepHeading,
7
- StepList,
8
- StepMarker,
9
- StepSection,
10
- SubStep,
11
- SubStepHeading,
12
- SubStepList,
13
- SubStepMarker,
14
- } from "@gemeente-denhaag/process-steps";
15
-
16
- interface IStatusStep {
17
- title: string;
18
- checked?: boolean;
19
- current?: boolean;
20
- expanded?: boolean;
21
- subSteps?: string[];
22
- }
23
-
24
- interface StatusStepsProps {
25
- steps: IStatusStep[];
26
- }
27
-
28
- export const StatusSteps: React.FC<StatusStepsProps> = ({ steps }) => {
29
- return (
30
- <StepList>
31
- {steps.map(({ title, checked, current, expanded, subSteps }, idx) => (
32
- <Step key={idx} {...{ checked, current, expanded }}>
33
- <StepSection>
34
- <StepHeader>
35
- <StepMarker>{idx + 1}</StepMarker>
36
- <StepHeading>{title}</StepHeading>
37
- {subSteps && <StepExpandedIcon />}
38
- </StepHeader>
39
- </StepSection>
40
- {subSteps && (
41
- <SubStepList>
42
- {subSteps.map((subStep: string) => (
43
- <SubStep key={idx}>
44
- <SubStepMarker />
45
- <SubStepHeading>{subStep}</SubStepHeading>
46
- </SubStep>
47
- ))}
48
- </SubStepList>
49
- )}
50
- </Step>
51
- ))}
52
- </StepList>
53
- );
54
- };
1
+ import * as React from "react";
2
+ import {
3
+ Step,
4
+ StepExpandedIcon,
5
+ StepHeader,
6
+ StepHeading,
7
+ StepList,
8
+ StepMarker,
9
+ StepSection,
10
+ SubStep,
11
+ SubStepHeading,
12
+ SubStepList,
13
+ SubStepMarker,
14
+ } from "@gemeente-denhaag/process-steps";
15
+
16
+ interface IStatusStep {
17
+ title: string;
18
+ checked?: boolean;
19
+ current?: boolean;
20
+ expanded?: boolean;
21
+ subSteps?: string[];
22
+ }
23
+
24
+ interface StatusStepsProps {
25
+ steps: IStatusStep[];
26
+ }
27
+
28
+ export const StatusSteps: React.FC<StatusStepsProps> = ({ steps }) => {
29
+ return (
30
+ <StepList>
31
+ {steps.map(({ title, checked, current, expanded, subSteps }, idx) => (
32
+ <Step key={idx} {...{ checked, current, expanded }}>
33
+ <StepSection>
34
+ <StepHeader>
35
+ <StepMarker>{idx + 1}</StepMarker>
36
+ <StepHeading>{title}</StepHeading>
37
+ {subSteps && <StepExpandedIcon />}
38
+ </StepHeader>
39
+ </StepSection>
40
+ {subSteps && (
41
+ <SubStepList>
42
+ {subSteps.map((subStep: string) => (
43
+ <SubStep key={idx}>
44
+ <SubStepMarker />
45
+ <SubStepHeading>{subStep}</SubStepHeading>
46
+ </SubStep>
47
+ ))}
48
+ </SubStepList>
49
+ )}
50
+ </Step>
51
+ ))}
52
+ </StepList>
53
+ );
54
+ };
@@ -1,20 +1,20 @@
1
- :root {
2
- --conduction-tag-font-size: var(--skeleton-font-size-sm);
3
- --conduction-tag-color: var(--skeleton-black);
4
- --conduction-tag-backgrond-color: var(--skeleton-color-grey-1);
5
- --conduction-tag-border-radius: var(--skeleton-border-radius-md);
6
- --conduction-tag-padding: var(--skeleton-size-xs);
7
- }
8
-
9
- .tag {
10
- display: inline-block;
11
- width: fit-content;
12
- font-size: var(--conduction-tag-font-size);
13
- color: var(--conduction-tag-color);
14
- background-color: var(--conduction-tag-backgrond-color);
15
- border-radius: var(--conduction-tag-border-radius);
16
- padding-inline-start: var(--conduction-tag-padding);
17
- padding-inline-end: var(--conduction-tag-padding);
18
- padding-block-start: var(--conduction-tag-padding);
19
- padding-block-end: var(--conduction-tag-padding);
20
- }
1
+ :root {
2
+ --conduction-tag-font-size: var(--skeleton-font-size-sm);
3
+ --conduction-tag-color: var(--skeleton-black);
4
+ --conduction-tag-backgrond-color: var(--skeleton-color-grey-1);
5
+ --conduction-tag-border-radius: var(--skeleton-border-radius-md);
6
+ --conduction-tag-padding: var(--skeleton-size-xs);
7
+ }
8
+
9
+ .tag {
10
+ display: inline-block;
11
+ width: fit-content;
12
+ font-size: var(--conduction-tag-font-size);
13
+ color: var(--conduction-tag-color);
14
+ background-color: var(--conduction-tag-backgrond-color);
15
+ border-radius: var(--conduction-tag-border-radius);
16
+ padding-inline-start: var(--conduction-tag-padding);
17
+ padding-inline-end: var(--conduction-tag-padding);
18
+ padding-block-start: var(--conduction-tag-padding);
19
+ padding-block-end: var(--conduction-tag-padding);
20
+ }
@@ -1,8 +1,8 @@
1
- import * as React from "react";
2
- import * as styles from "./Tag.module.css";
3
-
4
- interface TagProps {
5
- tag: string;
6
- }
7
-
8
- export const Tag: React.FC<TagProps> = ({ tag }) => <span className={styles.tag}>{tag}</span>;
1
+ import * as React from "react";
2
+ import * as styles from "./Tag.module.css";
3
+
4
+ interface TagProps {
5
+ tag: string;
6
+ }
7
+
8
+ export const Tag: React.FC<TagProps> = ({ tag }) => <span className={styles.tag}>{tag}</span>;
@@ -1,4 +1,4 @@
1
- import { PrimaryTopNav } from "./primaryTopNav/PrimaryTopNav";
2
- import { SecondaryTopNav } from "./secondaryTopNav/SecondaryTopNav";
3
-
4
- export { PrimaryTopNav, SecondaryTopNav };
1
+ import { PrimaryTopNav } from "./primaryTopNav/PrimaryTopNav";
2
+ import { SecondaryTopNav } from "./secondaryTopNav/SecondaryTopNav";
3
+
4
+ export { PrimaryTopNav, SecondaryTopNav };
@@ -1,60 +1,60 @@
1
- :root {
2
- --conduction-primary-top-nav-item-padding: var(--skeleton-size-md);
3
- --conduction-primary-top-nav-color: var(--skeleton-color-white);
4
- --conduction-primary-top-nav-background-color: var(--skeleton-color-secondary-3);
5
- --conduction-primary-top-nav-background-color-hover: var(--skeleton-color-secondary-5);
6
- --conduction-primary-top-nav-dropdown-border-radius: var(--skeleton-border-radius-md);
7
- }
8
-
9
- .primary:hover {
10
- cursor: pointer;
11
- }
12
-
13
- .ul {
14
- margin: unset;
15
- display: flex;
16
- padding-inline-start: unset;
17
- align-items: center;
18
- }
19
-
20
- .li {
21
- list-style-type: none;
22
- display: block;
23
- position: relative;
24
- }
25
-
26
- .primary {
27
- font-weight: 500;
28
- width: fit-content;
29
- background-color: var(--conduction-primary-top-nav-background-color);
30
- }
31
-
32
- .primary .link {
33
- display: block;
34
- color: var(--conduction-primary-top-nav-color);
35
- padding-inline-start: var(--conduction-primary-top-nav-item-padding);
36
- padding-inline-end: var(--conduction-primary-top-nav-item-padding);
37
- padding-block-start: var(--conduction-primary-top-nav-item-padding);
38
- padding-block-end: var(--conduction-primary-top-nav-item-padding);
39
- }
40
-
41
- .primary .li:hover {
42
- background-color: var(--conduction-primary-top-nav-background-color-hover);
43
- }
44
-
45
- .primary .li:hover .dropdown {
46
- display: block;
47
- z-index: 1;
48
- }
49
-
50
- .dropdown {
51
- left: 0;
52
- padding: 0;
53
- width: 100%;
54
- display: none;
55
- position: absolute;
56
- list-style-type: none;
57
- background-color: var(--conduction-primary-top-nav-background-color);
58
- border-bottom-right-radius: var(--conduction-primary-top-nav-dropdown-border-radius);
59
- border-bottom-left-radius: var(--conduction-primary-top-nav-dropdown-border-radius);
60
- }
1
+ :root {
2
+ --conduction-primary-top-nav-item-padding: var(--skeleton-size-md);
3
+ --conduction-primary-top-nav-color: var(--skeleton-color-white);
4
+ --conduction-primary-top-nav-background-color: var(--skeleton-color-secondary-3);
5
+ --conduction-primary-top-nav-background-color-hover: var(--skeleton-color-secondary-5);
6
+ --conduction-primary-top-nav-dropdown-border-radius: var(--skeleton-border-radius-md);
7
+ }
8
+
9
+ .primary:hover {
10
+ cursor: pointer;
11
+ }
12
+
13
+ .ul {
14
+ margin: unset;
15
+ display: flex;
16
+ padding-inline-start: unset;
17
+ align-items: center;
18
+ }
19
+
20
+ .li {
21
+ list-style-type: none;
22
+ display: block;
23
+ position: relative;
24
+ }
25
+
26
+ .primary {
27
+ font-weight: 500;
28
+ width: fit-content;
29
+ background-color: var(--conduction-primary-top-nav-background-color);
30
+ }
31
+
32
+ .primary .link {
33
+ display: block;
34
+ color: var(--conduction-primary-top-nav-color);
35
+ padding-inline-start: var(--conduction-primary-top-nav-item-padding);
36
+ padding-inline-end: var(--conduction-primary-top-nav-item-padding);
37
+ padding-block-start: var(--conduction-primary-top-nav-item-padding);
38
+ padding-block-end: var(--conduction-primary-top-nav-item-padding);
39
+ }
40
+
41
+ .primary .li:hover {
42
+ background-color: var(--conduction-primary-top-nav-background-color-hover);
43
+ }
44
+
45
+ .primary .li:hover .dropdown {
46
+ display: block;
47
+ z-index: 1;
48
+ }
49
+
50
+ .dropdown {
51
+ left: 0;
52
+ padding: 0;
53
+ width: 100%;
54
+ display: none;
55
+ position: absolute;
56
+ list-style-type: none;
57
+ background-color: var(--conduction-primary-top-nav-background-color);
58
+ border-bottom-right-radius: var(--conduction-primary-top-nav-dropdown-border-radius);
59
+ border-bottom-left-radius: var(--conduction-primary-top-nav-dropdown-border-radius);
60
+ }
@@ -1,52 +1,52 @@
1
- import * as React from "react";
2
- import { Link } from "@gemeente-denhaag/components-react";
3
- import * as styles from "./PrimaryTopNav.module.css";
4
- import clsx from "clsx";
5
-
6
- interface ITopNavItem {
7
- label: string;
8
- icon?: JSX.Element;
9
- handleClick?: () => any;
10
- subItems?: {
11
- label: string;
12
- icon?: JSX.Element;
13
- handleClick?: () => any;
14
- }[];
15
- }
16
-
17
- export interface TopNavProps {
18
- items: ITopNavItem[];
19
- layoutClassName?: string;
20
- }
21
-
22
- export const PrimaryTopNav: React.FC<TopNavProps> = ({ items, layoutClassName }) => {
23
- return (
24
- <div className={clsx(styles.primary, layoutClassName && layoutClassName)}>
25
- <nav className={styles.primary}>
26
- <ul className={styles.ul}>
27
- {items.map(({ label, icon, handleClick, subItems }, idx) => (
28
- <li className={styles.li} key={idx}>
29
- <div onClick={handleClick}>
30
- <Link className={styles.link} icon={icon} iconAlign="start">
31
- {label}
32
- </Link>
33
- </div>
34
-
35
- {subItems && (
36
- <ul className={styles.dropdown}>
37
- {subItems.map(({ label, icon, handleClick }, idx) => (
38
- <li key={idx} className={styles.li} onClick={handleClick}>
39
- <Link className={styles.link} icon={icon} iconAlign="start">
40
- {label}
41
- </Link>
42
- </li>
43
- ))}
44
- </ul>
45
- )}
46
- </li>
47
- ))}
48
- </ul>
49
- </nav>
50
- </div>
51
- );
52
- };
1
+ import * as React from "react";
2
+ import { Link } from "@gemeente-denhaag/components-react";
3
+ import * as styles from "./PrimaryTopNav.module.css";
4
+ import clsx from "clsx";
5
+
6
+ interface ITopNavItem {
7
+ label: string;
8
+ icon?: JSX.Element;
9
+ handleClick?: () => any;
10
+ subItems?: {
11
+ label: string;
12
+ icon?: JSX.Element;
13
+ handleClick?: () => any;
14
+ }[];
15
+ }
16
+
17
+ export interface TopNavProps {
18
+ items: ITopNavItem[];
19
+ layoutClassName?: string;
20
+ }
21
+
22
+ export const PrimaryTopNav: React.FC<TopNavProps> = ({ items, layoutClassName }) => {
23
+ return (
24
+ <div className={clsx(styles.primary, layoutClassName && layoutClassName)}>
25
+ <nav className={styles.primary}>
26
+ <ul className={styles.ul}>
27
+ {items.map(({ label, icon, handleClick, subItems }, idx) => (
28
+ <li className={styles.li} key={idx}>
29
+ <div onClick={handleClick}>
30
+ <Link className={styles.link} icon={icon} iconAlign="start">
31
+ {label}
32
+ </Link>
33
+ </div>
34
+
35
+ {subItems && (
36
+ <ul className={styles.dropdown}>
37
+ {subItems.map(({ label, icon, handleClick }, idx) => (
38
+ <li key={idx} className={styles.li} onClick={handleClick}>
39
+ <Link className={styles.link} icon={icon} iconAlign="start">
40
+ {label}
41
+ </Link>
42
+ </li>
43
+ ))}
44
+ </ul>
45
+ )}
46
+ </li>
47
+ ))}
48
+ </ul>
49
+ </nav>
50
+ </div>
51
+ );
52
+ };
@@ -1,43 +1,43 @@
1
- :root {
2
- --conduction-secondary-top-nav-item-padding: var(--skeleton-size-md);
3
- --conduction-secondary-top-nav-font-size: var(--skeleton-font-size-md);
4
- --conduction-secondary-top-nav-color: var(--skeleton-color-white);
5
- --conduction-secondary-top-nav-background-color: var(--skeleton-color-secondary-5);
6
- --conduction-secondary-top-nav-background-color-hover: var(--skeleton-color-secondary-3);
7
- --conduction-secondary-top-nav-font-weight: var(--skeleton-font-weight-light);
8
- }
9
-
10
- .secondary:hover {
11
- cursor: pointer;
12
- }
13
-
14
- .ul {
15
- margin: unset;
16
- display: flex;
17
- padding-inline-start: unset;
18
- align-items: center;
19
- }
20
-
21
- .li {
22
- list-style-type: none;
23
- display: block;
24
- padding-inline-start: var(--conduction-secondary-top-nav-item-padding);
25
- padding-inline-end: var(--conduction-secondary-top-nav-item-padding);
26
- padding-block-start: var(--conduction-secondary-top-nav-item-padding);
27
- padding-block-end: var(--conduction-secondary-top-nav-item-padding);
28
- }
29
-
30
- .secondary {
31
- font-weight: var(--conduction-secondary-top-nav-font-weight);
32
- width: fit-content;
33
- font-size: var(--conduction-secondary-top-nav-font-size);
34
- background-color: var(--conduction-secondary-top-nav-background-color);
35
- }
36
-
37
- .secondary .link {
38
- color: var(--conduction-secondary-top-nav-color);
39
- }
40
-
41
- .secondary .li:hover {
42
- background-color: var(--conduction-secondary-top-nav-background-color-hover);
43
- }
1
+ :root {
2
+ --conduction-secondary-top-nav-item-padding: var(--skeleton-size-md);
3
+ --conduction-secondary-top-nav-font-size: var(--skeleton-font-size-md);
4
+ --conduction-secondary-top-nav-color: var(--skeleton-color-white);
5
+ --conduction-secondary-top-nav-background-color: var(--skeleton-color-secondary-5);
6
+ --conduction-secondary-top-nav-background-color-hover: var(--skeleton-color-secondary-3);
7
+ --conduction-secondary-top-nav-font-weight: var(--skeleton-font-weight-light);
8
+ }
9
+
10
+ .secondary:hover {
11
+ cursor: pointer;
12
+ }
13
+
14
+ .ul {
15
+ margin: unset;
16
+ display: flex;
17
+ padding-inline-start: unset;
18
+ align-items: center;
19
+ }
20
+
21
+ .li {
22
+ list-style-type: none;
23
+ display: block;
24
+ padding-inline-start: var(--conduction-secondary-top-nav-item-padding);
25
+ padding-inline-end: var(--conduction-secondary-top-nav-item-padding);
26
+ padding-block-start: var(--conduction-secondary-top-nav-item-padding);
27
+ padding-block-end: var(--conduction-secondary-top-nav-item-padding);
28
+ }
29
+
30
+ .secondary {
31
+ font-weight: var(--conduction-secondary-top-nav-font-weight);
32
+ width: fit-content;
33
+ font-size: var(--conduction-secondary-top-nav-font-size);
34
+ background-color: var(--conduction-secondary-top-nav-background-color);
35
+ }
36
+
37
+ .secondary .link {
38
+ color: var(--conduction-secondary-top-nav-color);
39
+ }
40
+
41
+ .secondary .li:hover {
42
+ background-color: var(--conduction-secondary-top-nav-background-color-hover);
43
+ }
@@ -1,27 +1,27 @@
1
- import * as React from "react";
2
- import * as styles from "./SecondaryTopNav.module.css";
3
- import { Link } from "@gemeente-denhaag/components-react";
4
- import clsx from "clsx";
5
-
6
- interface TopNavProps {
7
- items: { label: string; icon?: JSX.Element; handleClick: () => any }[];
8
- layoutClassName?: string;
9
- }
10
-
11
- export const SecondaryTopNav: React.FC<TopNavProps> = ({ items, layoutClassName }) => {
12
- return (
13
- <div className={clsx(styles.secondary, layoutClassName && layoutClassName)}>
14
- <nav>
15
- <ul className={styles.ul}>
16
- {items.map(({ label, icon, handleClick }, idx) => (
17
- <li className={styles.li} key={idx} onClick={handleClick}>
18
- <Link className={styles.link} icon={icon} iconAlign="start">
19
- {label}
20
- </Link>
21
- </li>
22
- ))}
23
- </ul>
24
- </nav>
25
- </div>
26
- );
27
- };
1
+ import * as React from "react";
2
+ import * as styles from "./SecondaryTopNav.module.css";
3
+ import { Link } from "@gemeente-denhaag/components-react";
4
+ import clsx from "clsx";
5
+
6
+ interface TopNavProps {
7
+ items: { label: string; icon?: JSX.Element; handleClick: () => any }[];
8
+ layoutClassName?: string;
9
+ }
10
+
11
+ export const SecondaryTopNav: React.FC<TopNavProps> = ({ items, layoutClassName }) => {
12
+ return (
13
+ <div className={clsx(styles.secondary, layoutClassName && layoutClassName)}>
14
+ <nav>
15
+ <ul className={styles.ul}>
16
+ {items.map(({ label, icon, handleClick }, idx) => (
17
+ <li className={styles.li} key={idx} onClick={handleClick}>
18
+ <Link className={styles.link} icon={icon} iconAlign="start">
19
+ {label}
20
+ </Link>
21
+ </li>
22
+ ))}
23
+ </ul>
24
+ </nav>
25
+ </div>
26
+ );
27
+ };
package/src/custom.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- declare module "*.svg";
2
- declare module "*.jpg";
3
- declare module "*.png";
4
- declare module "*.module.css";
1
+ declare module "*.svg";
2
+ declare module "*.jpg";
3
+ declare module "*.png";
4
+ declare module "*.module.css";
package/src/index.js CHANGED
@@ -1,14 +1,14 @@
1
- export * from "./components/card";
2
- export * from "./components/casesTable/CasesTable";
3
- export * from "./components/container/Container";
4
- export * from "./components/denhaag-wrappers/breadcrumbs/Breadcrumbs";
5
- export * from "./components/editableTableRow/EditableTableRow";
6
- export * from "./components/formFields";
7
- export * from "./components/imageDivider/ImageDivider";
8
- export * from "./components/logo/Logo";
9
- export * from "./components/messageForm/MessageForm";
10
- export * from "./components/messagesTable/MessagesTable";
11
- export * from "./components/metaIcon/MetaIcon";
12
- export * from "./components/privateRoute/PrivateRoute";
13
- export * from "./components/statusSteps/StatusSteps";
14
- export * from "./components/topNav/TopNav";
1
+ export * from "./components/card";
2
+ export * from "./components/casesTable/CasesTable";
3
+ export * from "./components/container/Container";
4
+ export * from "./components/denhaag-wrappers/breadcrumbs/Breadcrumbs";
5
+ export * from "./components/editableTableRow/EditableTableRow";
6
+ export * from "./components/formFields";
7
+ export * from "./components/imageDivider/ImageDivider";
8
+ export * from "./components/logo/Logo";
9
+ export * from "./components/messageForm/MessageForm";
10
+ export * from "./components/messagesTable/MessagesTable";
11
+ export * from "./components/metaIcon/MetaIcon";
12
+ export * from "./components/privateRoute/PrivateRoute";
13
+ export * from "./components/statusSteps/StatusSteps";
14
+ export * from "./components/topNav/TopNav";