@rijkshuisstijl-community/components-css 1.0.0-alpha.9 → 1.0.0-alpha.90
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/dist/index.css +22 -0
- package/index.scss +50 -0
- package/package.json +21 -11
- package/src/accordion/index.scss +68 -0
- package/src/action-group/index.scss +11 -0
- package/src/alert/index.scss +27 -0
- package/src/article/index.scss +1 -0
- package/src/badgecounter/index.scss +3 -0
- package/src/blockquote/_mixin.scss +85 -0
- package/src/blockquote/index.scss +41 -0
- package/src/breadcrumb-nav/index.scss +28 -0
- package/src/button/_mixin.scss +36 -0
- package/src/button/index.scss +18 -0
- package/src/card/_mixin.scss +174 -0
- package/src/card/index.scss +108 -0
- package/src/checkbox/_mixin.scss +103 -0
- package/src/checkbox/index.scss +34 -0
- package/src/code-input/_mixin.scss +26 -0
- package/src/code-input/index.scss +13 -0
- package/src/dot-badge/_mixin.scss +12 -0
- package/src/dot-badge/index.scss +9 -0
- package/src/figure/index.scss +18 -0
- package/src/file-input/index.scss +63 -0
- package/src/footer/index.scss +71 -0
- package/src/form/index.scss +18 -0
- package/src/form-field/index.scss +13 -0
- package/src/form-field-error-message/index.scss +15 -0
- package/src/form-field-radio-option/index.scss +21 -0
- package/src/hero/_mixin.scss +103 -0
- package/src/hero/index.scss +81 -0
- package/src/link/_mixin.scss +38 -0
- package/src/link/index.scss +44 -0
- package/src/link-list/index.scss +16 -0
- package/src/link-list-card/index.scss +10 -0
- package/src/logo/_mixin.scss +58 -0
- package/src/logo/index.scss +31 -0
- package/src/message-list/_mixin.scss +85 -0
- package/src/message-list/index.scss +41 -0
- package/src/navbar/index.scss +90 -0
- package/src/navigation-list/_mixin.scss +94 -0
- package/src/navigation-list/index.scss +43 -0
- package/src/ordered-list/index.scss +18 -0
- package/src/pre-heading/index.scss +22 -0
- package/src/radio/index.scss +27 -0
- package/src/radio-group/_mixin.scss +12 -0
- package/src/radio-group/index.scss +10 -0
- package/src/select/index.scss +16 -0
- package/src/separator/index.scss +14 -0
- package/src/side-nav/index.scss +52 -0
- package/src/skip-link/_mixin.scss +13 -0
- package/src/skip-link/index.scss +43 -0
- package/src/table/index.scss +56 -0
- package/src/textarea/index.scss +8 -0
- package/src/textbox/index.scss +6 -0
- package/src/toggletip/_mixin.scss +59 -0
- package/src/toggletip/index.scss +48 -0
- package/src/unordered-list/index.scss +27 -0
- package/src/visually-hidden/_mixin.scss +19 -0
- package/src/visually-hidden/index.scss +5 -0
- package/src/wrapper/_mixin.scss +1819 -0
- package/src/wrapper/createSpacingCSS.js +69 -0
- package/src/wrapper/index.scss +43 -0
- package/src/wrapper/spacing-matrix.json +1406 -0
- package/vite.config.js +18 -0
- package/button/README.md +0 -3
- package/button/index.scss +0 -16
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
const spacingMatrix = JSON.parse(fs.readFileSync('./src/wrapper/spacing-matrix.json'));
|
|
4
|
+
|
|
5
|
+
const spaceMap = {
|
|
6
|
+
NVT: undefined,
|
|
7
|
+
Onbekenden: 'stranger',
|
|
8
|
+
Kennissen: 'acquaintance',
|
|
9
|
+
Vrienden: 'friend',
|
|
10
|
+
Besties: 'best-friend',
|
|
11
|
+
Kind: 'confidant',
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
const getSpacings = (spacingMatrix) => {
|
|
15
|
+
return spacingMatrix
|
|
16
|
+
.map((spacing) => {
|
|
17
|
+
const entries = Object.entries(spacing);
|
|
18
|
+
const [, component] = entries.shift();
|
|
19
|
+
return entries
|
|
20
|
+
.map(([sibling, space]) => {
|
|
21
|
+
const spacing = spaceMap[space];
|
|
22
|
+
return spacing && { component, sibling, spacing };
|
|
23
|
+
})
|
|
24
|
+
.filter(Boolean);
|
|
25
|
+
})
|
|
26
|
+
.filter((arr) => arr.length);
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
const getSpacingMixins = (components) =>
|
|
30
|
+
components.map((mixinGroup) => {
|
|
31
|
+
const componentName = mixinGroup[0].component;
|
|
32
|
+
|
|
33
|
+
const mixins = mixinGroup.map(
|
|
34
|
+
({ component, sibling, spacing }) =>
|
|
35
|
+
`.${component}:has(+ .${sibling}) {
|
|
36
|
+
--${component}-margin-block-end: var(--utrecht-rich-text-${spacing}-margin-block-end);
|
|
37
|
+
}`,
|
|
38
|
+
);
|
|
39
|
+
return `@mixin ${componentName} {
|
|
40
|
+
.${componentName}:first-child {
|
|
41
|
+
--${componentName}-margin-block-start: 0;
|
|
42
|
+
}
|
|
43
|
+
${mixins.join(';\n')}
|
|
44
|
+
}`;
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
const getRichTextStyles = (components) => `
|
|
48
|
+
/**
|
|
49
|
+
* @license EUPL-1.2
|
|
50
|
+
* Copyright (c) 2024-2025 Gemeente Utrecht
|
|
51
|
+
* Copyright (c) 2024-2025 Frameless B.V.
|
|
52
|
+
*/
|
|
53
|
+
|
|
54
|
+
@import "./mixin";
|
|
55
|
+
|
|
56
|
+
.rhc-margin-block-end-wrapper {
|
|
57
|
+
--utrecht-space-around: 1;
|
|
58
|
+
${components.map((mixinGroup) => `@include ${mixinGroup[0].component}`).join(';\n')}
|
|
59
|
+
}`;
|
|
60
|
+
|
|
61
|
+
const spacings = getSpacings(spacingMatrix);
|
|
62
|
+
|
|
63
|
+
fs.writeFileSync(path.resolve('./src/wrapper/_mixin.scss'), getSpacingMixins(spacings).join('\n'), {
|
|
64
|
+
override: true,
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
fs.writeFileSync(path.resolve('./src/wrapper/index.scss'), getRichTextStyles(spacings), {
|
|
68
|
+
override: true,
|
|
69
|
+
});
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license EUPL-1.2
|
|
3
|
+
* Copyright (c) 2024-2025 Gemeente Utrecht
|
|
4
|
+
* Copyright (c) 2024-2025 Frameless B.V.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
@import "./mixin";
|
|
8
|
+
|
|
9
|
+
.rhc-margin-block-end-wrapper {
|
|
10
|
+
--utrecht-space-around: 1;
|
|
11
|
+
@include utrecht-heading-1;
|
|
12
|
+
@include utrecht-heading-2;
|
|
13
|
+
@include utrecht-heading-3;
|
|
14
|
+
@include utrecht-heading-4;
|
|
15
|
+
@include utrecht-heading-5;
|
|
16
|
+
@include utrecht-heading-6;
|
|
17
|
+
@include utrecht-accordion;
|
|
18
|
+
@include utrecht-alert;
|
|
19
|
+
@include utrecht-badge-list;
|
|
20
|
+
@include utrecht-blockquote;
|
|
21
|
+
@include utrecht-breadcrumb-nav;
|
|
22
|
+
@include utrecht-button;
|
|
23
|
+
@include utrecht-button-group;
|
|
24
|
+
@include utrecht-data-list;
|
|
25
|
+
@include utrecht-figure;
|
|
26
|
+
@include utrecht-form-field;
|
|
27
|
+
@include utrecht-form-field-description;
|
|
28
|
+
@include utrecht-form-field-error-message;
|
|
29
|
+
@include utrecht-form-label;
|
|
30
|
+
@include utrecht-img;
|
|
31
|
+
@include utrecht-link;
|
|
32
|
+
@include utrecht-ordered-list;
|
|
33
|
+
@include utrecht-pagination;
|
|
34
|
+
@include utrecht-paragraph;
|
|
35
|
+
@include utrecht-select;
|
|
36
|
+
@include utrecht-separator;
|
|
37
|
+
@include utrecht-sidenav;
|
|
38
|
+
@include utrecht-badge-status;
|
|
39
|
+
@include utrecht-table;
|
|
40
|
+
@include utrecht-textarea;
|
|
41
|
+
@include utrecht-textbox;
|
|
42
|
+
@include utrecht-unordered-list;
|
|
43
|
+
}
|