@dsn-starter-kit/components-react 1.0.1 → 2.0.0

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 (69) hide show
  1. package/README.md +1 -1
  2. package/dist/ActionGroup/ActionGroup.css +62 -22
  3. package/dist/ActionGroup/ActionGroup.d.ts +10 -2
  4. package/dist/ActionGroup/ActionGroup.d.ts.map +1 -1
  5. package/dist/ActionGroup/ActionGroup.js +20 -2
  6. package/dist/ActionGroup/ActionGroup.js.map +1 -1
  7. package/dist/Alert/Alert.css +25 -11
  8. package/dist/Alert/Alert.d.ts +14 -0
  9. package/dist/Alert/Alert.d.ts.map +1 -1
  10. package/dist/Alert/Alert.js +14 -2
  11. package/dist/Alert/Alert.js.map +1 -1
  12. package/dist/BreakoutSection/BreakoutSection.css +4 -0
  13. package/dist/Details/Details.css +14 -0
  14. package/dist/DotBadge/DotBadge.css +13 -0
  15. package/dist/File/File.css +16 -0
  16. package/dist/Grid/Grid.css +2 -2
  17. package/dist/HeadingGroup/HeadingGroup.css +5 -0
  18. package/dist/HeadingGroup/HeadingGroup.d.ts +23 -0
  19. package/dist/HeadingGroup/HeadingGroup.d.ts.map +1 -0
  20. package/dist/HeadingGroup/HeadingGroup.js +12 -0
  21. package/dist/HeadingGroup/HeadingGroup.js.map +1 -0
  22. package/dist/HeadingGroup/index.d.ts +3 -0
  23. package/dist/HeadingGroup/index.d.ts.map +1 -0
  24. package/dist/HeadingGroup/index.js +2 -0
  25. package/dist/HeadingGroup/index.js.map +1 -0
  26. package/dist/Hero/Hero.css +642 -0
  27. package/dist/Note/Note.css +22 -14
  28. package/dist/Note/Note.d.ts +18 -3
  29. package/dist/Note/Note.d.ts.map +1 -1
  30. package/dist/Note/Note.js +18 -5
  31. package/dist/Note/Note.js.map +1 -1
  32. package/dist/PageBody/PageBody.css +30 -0
  33. package/dist/PageFooter/PageFooter.css +0 -1
  34. package/dist/PageHeader/PageHeader.css +13 -0
  35. package/dist/PreHeading/PreHeading.css +10 -0
  36. package/dist/PreHeading/PreHeading.d.ts +8 -0
  37. package/dist/PreHeading/PreHeading.d.ts.map +1 -0
  38. package/dist/PreHeading/PreHeading.js +9 -0
  39. package/dist/PreHeading/PreHeading.js.map +1 -0
  40. package/dist/PreHeading/index.d.ts +3 -0
  41. package/dist/PreHeading/index.d.ts.map +1 -0
  42. package/dist/PreHeading/index.js +2 -0
  43. package/dist/PreHeading/index.js.map +1 -0
  44. package/dist/ProgressBar/ProgressBar.css +14 -0
  45. package/dist/ProgressBar/ProgressBar.d.ts +7 -2
  46. package/dist/ProgressBar/ProgressBar.d.ts.map +1 -1
  47. package/dist/ProgressBar/ProgressBar.js +2 -2
  48. package/dist/ProgressBar/ProgressBar.js.map +1 -1
  49. package/dist/Radio/Radio.css +36 -0
  50. package/dist/SearchInput/SearchInput.css +8 -0
  51. package/dist/Select/Select.css +8 -0
  52. package/dist/SkipLink/SkipLink.d.ts +1 -1
  53. package/dist/SkipLink/SkipLink.js +1 -1
  54. package/dist/Spinner/Spinner.css +17 -0
  55. package/dist/TableOfContents/TableOfContents.css +75 -0
  56. package/dist/TableOfContents/TableOfContents.d.ts +61 -0
  57. package/dist/TableOfContents/TableOfContents.d.ts.map +1 -0
  58. package/dist/TableOfContents/TableOfContents.js +32 -0
  59. package/dist/TableOfContents/TableOfContents.js.map +1 -0
  60. package/dist/TableOfContents/index.d.ts +3 -0
  61. package/dist/TableOfContents/index.d.ts.map +1 -0
  62. package/dist/TableOfContents/index.js +2 -0
  63. package/dist/TableOfContents/index.js.map +1 -0
  64. package/dist/index.css +1019 -50
  65. package/dist/index.d.ts +3 -0
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +3 -0
  68. package/dist/index.js.map +1 -1
  69. package/package.json +3 -3
@@ -0,0 +1,61 @@
1
+ import React from 'react';
2
+ import { type HeadingLevel } from '../Heading';
3
+ import './TableOfContents.css';
4
+ export type TableOfContentsAppearance = 'framed' | 'plain';
5
+ export interface TableOfContentsItem {
6
+ /**
7
+ * Anchor target — moet overeenkomen met het `id` van de bijbehorende H2 op de pagina
8
+ */
9
+ id: string;
10
+ /**
11
+ * Zichtbare linktekst
12
+ */
13
+ label: string;
14
+ }
15
+ export interface TableOfContentsProps extends React.HTMLAttributes<HTMLElement> {
16
+ /**
17
+ * Zichtbare heading-tekst
18
+ * @default 'Op deze pagina'
19
+ */
20
+ heading?: string;
21
+ /**
22
+ * Semantisch heading-niveau
23
+ * @default 2
24
+ */
25
+ headingLevel?: HeadingLevel;
26
+ /**
27
+ * Visuele weergave:
28
+ * - `'framed'` — accent-1 achtergrond + linkerborder, heading als heading-3 (voor gebruik inline in de content-flow)
29
+ * - `'plain'` — geen kader, heading als heading-5 (voor gebruik in een losstaande kolom)
30
+ * @default 'framed'
31
+ */
32
+ appearance?: TableOfContentsAppearance;
33
+ /**
34
+ * Secties waarnaar gelinkt wordt — alleen H2's horen hierin opgenomen te worden
35
+ */
36
+ items: TableOfContentsItem[];
37
+ /**
38
+ * Additional CSS class names
39
+ */
40
+ className?: string;
41
+ }
42
+ /**
43
+ * TableOfContents component
44
+ * Inhoudsopgave met ankerlinks naar de H2-secties op de huidige pagina.
45
+ *
46
+ * @example
47
+ * ```tsx
48
+ * // Framed (default) — inline in de content-flow
49
+ * <TableOfContents
50
+ * items={[
51
+ * { id: 'sectie-1', label: 'Sectie 1' },
52
+ * { id: 'sectie-2', label: 'Sectie 2' },
53
+ * ]}
54
+ * />
55
+ *
56
+ * // Plain — in een losstaande kolom naast de hoofdinhoud
57
+ * <TableOfContents appearance="plain" items={items} />
58
+ * ```
59
+ */
60
+ export declare const TableOfContents: React.ForwardRefExoticComponent<TableOfContentsProps & React.RefAttributes<HTMLElement>>;
61
+ //# sourceMappingURL=TableOfContents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableOfContents.d.ts","sourceRoot":"","sources":["../../src/TableOfContents/TableOfContents.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgB,MAAM,OAAO,CAAC;AAErC,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAGxD,OAAO,uBAAuB,CAAC;AAE/B,MAAM,MAAM,yBAAyB,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE3D,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oBAAqB,SAAQ,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC;IAC7E;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,yBAAyB,CAAC;IAEvC;;OAEG;IACH,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAE7B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,eAAe,0FAgD3B,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import React, { useId } from 'react';
3
+ import { classNames } from '@dsn-starter-kit/core';
4
+ import { Heading } from '../Heading';
5
+ import { Link } from '../Link';
6
+ import { UnorderedList } from '../UnorderedList';
7
+ import './TableOfContents.css';
8
+ /**
9
+ * TableOfContents component
10
+ * Inhoudsopgave met ankerlinks naar de H2-secties op de huidige pagina.
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * // Framed (default) — inline in de content-flow
15
+ * <TableOfContents
16
+ * items={[
17
+ * { id: 'sectie-1', label: 'Sectie 1' },
18
+ * { id: 'sectie-2', label: 'Sectie 2' },
19
+ * ]}
20
+ * />
21
+ *
22
+ * // Plain — in een losstaande kolom naast de hoofdinhoud
23
+ * <TableOfContents appearance="plain" items={items} />
24
+ * ```
25
+ */
26
+ export const TableOfContents = React.forwardRef(({ heading = 'Op deze pagina', headingLevel = 2, appearance = 'framed', items, className, ...props }, ref) => {
27
+ const headingId = useId();
28
+ const classes = classNames('dsn-table-of-contents', appearance === 'plain' && 'dsn-table-of-contents--plain', className);
29
+ return (_jsxs("nav", { ref: ref, className: classes, "aria-labelledby": headingId, ...props, children: [_jsx(Heading, { level: headingLevel, appearance: appearance === 'plain' ? 'heading-5' : 'heading-3', className: "dsn-table-of-contents__heading", id: headingId, children: heading }), _jsx(UnorderedList, { children: items.map((item) => (_jsx("li", { children: _jsx(Link, { href: `#${item.id}`, children: item.label }) }, item.id))) })] }));
30
+ });
31
+ TableOfContents.displayName = 'TableOfContents';
32
+ //# sourceMappingURL=TableOfContents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableOfContents.js","sourceRoot":"","sources":["../../src/TableOfContents/TableOfContents.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAqB,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,uBAAuB,CAAC;AAgD/B;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,CAI7C,CACE,EACE,OAAO,GAAG,gBAAgB,EAC1B,YAAY,GAAG,CAAC,EAChB,UAAU,GAAG,QAAQ,EACrB,KAAK,EACL,SAAS,EACT,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,SAAS,GAAG,KAAK,EAAE,CAAC;IAE1B,MAAM,OAAO,GAAG,UAAU,CACxB,uBAAuB,EACvB,UAAU,KAAK,OAAO,IAAI,8BAA8B,EACxD,SAAS,CACV,CAAC;IAEF,OAAO,CACL,eACE,GAAG,EAAE,GAA6B,EAClC,SAAS,EAAE,OAAO,qBACD,SAAS,KACtB,KAAK,aAET,KAAC,OAAO,IACN,KAAK,EAAE,YAAY,EACnB,UAAU,EAAE,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAC9D,SAAS,EAAC,gCAAgC,EAC1C,EAAE,EAAE,SAAS,YAEZ,OAAO,GACA,EACV,KAAC,aAAa,cACX,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,uBACE,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,IAAI,CAAC,EAAE,EAAE,YAAG,IAAI,CAAC,KAAK,GAAQ,IADvC,IAAI,CAAC,EAAE,CAEX,CACN,CAAC,GACY,IACZ,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,CAAC,WAAW,GAAG,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { TableOfContents } from './TableOfContents';
2
+ export type { TableOfContentsProps, TableOfContentsAppearance, TableOfContentsItem, } from './TableOfContents';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/TableOfContents/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EACV,oBAAoB,EACpB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { TableOfContents } from './TableOfContents';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/TableOfContents/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}