@digigov/css 2.0.0-4be8f7cc → 2.0.0-6452adf3

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 (130) hide show
  1. package/dist/base/index.css +1 -1
  2. package/dist/base.js +1 -1
  3. package/dist/components.js +1 -1
  4. package/dist/digigov.css +3 -3
  5. package/dist/utilities/index.css +1 -1
  6. package/dist/utilities.js +1 -1
  7. package/index.js +99 -69
  8. package/package.json +12 -12
  9. package/postcss.config.js +4 -3
  10. package/src/base/index.css +1 -0
  11. package/src/base/postcss.config.js +11 -10
  12. package/src/base/tailwind.config.js +4 -11
  13. package/src/components/accordion.css +5 -1
  14. package/src/components/admin-header.css +1 -19
  15. package/src/components/admin-layout.css +4 -6
  16. package/src/components/autocomplete.css +1 -1
  17. package/src/components/blockquote.common.css +14 -0
  18. package/src/components/blockquote.css +9 -0
  19. package/src/components/blockquote.native.css +11 -0
  20. package/src/components/breadcrumbs.css +9 -2
  21. package/src/components/button.common.css +62 -0
  22. package/src/components/button.css +13 -28
  23. package/src/components/button.native.css +55 -0
  24. package/src/components/card.common.css +33 -0
  25. package/src/components/card.css +19 -14
  26. package/src/components/card.native.css +29 -0
  27. package/src/components/checkboxes.common.css +16 -0
  28. package/src/components/checkboxes.css +6 -8
  29. package/src/components/checkboxes.native.css +28 -0
  30. package/src/components/code.css +127 -0
  31. package/src/components/copy-to-clipboard.css +1 -1
  32. package/src/components/copy-to-clipboard.native.css +28 -0
  33. package/src/components/details.common.css +26 -0
  34. package/src/components/details.css +6 -9
  35. package/src/components/details.native.css +26 -0
  36. package/src/components/drawer.css +24 -4
  37. package/src/components/dropdown.common.css +23 -0
  38. package/src/components/dropdown.css +7 -9
  39. package/src/components/dropdown.native.css +28 -0
  40. package/src/components/fillable.css +1 -1
  41. package/src/components/filter.css +75 -26
  42. package/src/components/form.common.css +82 -0
  43. package/src/components/form.css +56 -28
  44. package/src/components/form.native.css +133 -0
  45. package/src/components/header.common.css +36 -0
  46. package/src/components/header.css +24 -15
  47. package/src/components/header.native.css +34 -0
  48. package/src/components/hidden.css +11 -11
  49. package/src/components/index.css +2 -0
  50. package/src/components/kitchensink.css +2 -2
  51. package/src/components/layout.common.css +36 -0
  52. package/src/components/layout.css +13 -12
  53. package/src/components/layout.native.css +39 -0
  54. package/src/components/loader.common.css +7 -0
  55. package/src/components/loader.css +3 -1
  56. package/src/components/loader.native.css +5 -0
  57. package/src/components/masthead.css +1 -1
  58. package/src/components/misc.css +24 -0
  59. package/src/components/modal.common.css +17 -0
  60. package/src/components/modal.css +28 -15
  61. package/src/components/modal.native.css +18 -0
  62. package/src/components/nav.common.css +22 -0
  63. package/src/components/nav.css +8 -7
  64. package/src/components/nav.native.css +41 -0
  65. package/src/components/notification-banner.common.css +46 -0
  66. package/src/components/notification-banner.css +8 -6
  67. package/src/components/notification-banner.native.css +42 -0
  68. package/src/components/pagination.css +19 -3
  69. package/src/components/panel.common.css +30 -0
  70. package/src/components/panel.css +6 -15
  71. package/src/components/panel.native.css +20 -0
  72. package/src/components/phase-banner.common.css +23 -0
  73. package/src/components/phase-banner.css +7 -6
  74. package/src/components/phase-banner.native.css +31 -0
  75. package/src/components/postcss.config.js +7 -6
  76. package/src/components/radios.common.css +16 -0
  77. package/src/components/radios.css +5 -11
  78. package/src/components/radios.native.css +24 -0
  79. package/src/components/skeleton.css +20 -3
  80. package/src/components/stack.common.css +67 -0
  81. package/src/components/stack.css +23 -21
  82. package/src/components/stack.native.css +68 -0
  83. package/src/components/stepnav.css +2 -3
  84. package/src/components/summary-list.common.css +92 -0
  85. package/src/components/summary-list.css +86 -15
  86. package/src/components/summary-list.native.css +93 -0
  87. package/src/components/svg-icons.common.css +56 -0
  88. package/src/components/svg-icons.css +1 -1
  89. package/src/components/svg-icons.native.css +55 -0
  90. package/src/components/table.css +13 -8
  91. package/src/components/tabs.css +45 -62
  92. package/src/components/task-list.css +12 -7
  93. package/src/components/test.css +7 -0
  94. package/src/components/timeline.css +16 -15
  95. package/src/components/typography.common.css +135 -0
  96. package/src/components/typography.css +34 -94
  97. package/src/components/typography.native.css +97 -0
  98. package/src/components/warning-text.common.css +23 -0
  99. package/src/components/warning-text.css +5 -2
  100. package/src/components/warning-text.native.css +22 -0
  101. package/src/index.native.css +23 -0
  102. package/src/utilities/gap.css +141 -0
  103. package/src/utilities/index.css +6 -1655
  104. package/src/utilities/index.native.css +6 -0
  105. package/src/utilities/layout.css +231 -0
  106. package/src/utilities/layout.native.css +278 -0
  107. package/src/utilities/margin.css +4299 -0
  108. package/src/utilities/padding.css +4299 -0
  109. package/src/utilities/postcss.config.js +7 -6
  110. package/src/utilities/print.css +11 -0
  111. package/src/utilities/utilities.css +3 -1660
  112. package/tailwind.config.js +102 -105
  113. package/theming.js +121 -0
  114. package/defaultTheme/accordion.json +0 -16
  115. package/defaultTheme/back-to-top.json +0 -27
  116. package/defaultTheme/brandConfig.json +0 -145
  117. package/defaultTheme/breadcrumbs.json +0 -8
  118. package/defaultTheme/button.json +0 -90
  119. package/defaultTheme/card.json +0 -23
  120. package/defaultTheme/form.json +0 -30
  121. package/defaultTheme/globals.json +0 -81
  122. package/defaultTheme/index.js +0 -27
  123. package/defaultTheme/layout.json +0 -55
  124. package/defaultTheme/misc.json +0 -68
  125. package/defaultTheme/panel.json +0 -48
  126. package/defaultTheme/phase-banner.json +0 -8
  127. package/defaultTheme/radios.json +0 -8
  128. package/defaultTheme/summary-list.json +0 -8
  129. package/defaultTheme/typography.json +0 -295
  130. package/themes.plugin.js +0 -148
package/index.js CHANGED
@@ -1,66 +1,92 @@
1
- const path = require("path");
1
+ const path = require('path');
2
2
 
3
- var digigovCssInfo = require(path.join(__dirname,'./package.json'))
4
- const digigovTailwindConfig = require(path.join(__dirname,'./tailwind.config.js'));
3
+ var digigovCssInfo = require(path.join(__dirname, './package.json'));
4
+ const digigovTailwindConfig = require(
5
+ path.join(__dirname, './tailwind.config.js')
6
+ );
5
7
 
6
- const base = require(path.join(__dirname,'./dist/base'))
7
- const utilities = require(path.join(__dirname,'./dist/utilities'))
8
- const components = require(path.join(__dirname,'./dist/components'))
8
+ const getThemeBaseStyle = require(path.join(__dirname, './theming.js'));
9
9
 
10
- const mainFunction = ({ addBase, addComponents, addUtilities, config }) => {
11
- let digigovCssIncludedItems = []
12
- let logs = false
13
- if (config('digigovCss.logs') != false) {
14
- logs = true
15
- }
16
- if (logs) {
17
- console.log()
18
- console.log('\x1b[35m%s\x1b[0m', '🌼 Digigov CSS components ' + digigovCssInfo.version, '\x1b[0m', digigovCssInfo.homepage)
19
- console.group()
20
- }
10
+ const base = require(path.join(__dirname, './dist/base'));
11
+ const utilities = require(path.join(__dirname, './dist/utilities'));
12
+ const components = require(path.join(__dirname, './dist/components'));
21
13
 
22
- // inject @base style
23
- if (config('digigovCss.base') != false) {
24
- addBase(base)
25
- digigovCssIncludedItems.push('base')
26
- }
14
+ /**
15
+ * Load Digigov CSS styles and add them to the base tailwindcss styles.
16
+ *
17
+ * Optionally, you can provide additional options for loading a custom theme.
18
+ *
19
+ * @param {object} [options={}]
20
+ * @param {string} [options.customTheme] - Custom theme package name or file path.
21
+ * @param {boolean} [options.eject] - Whether to ignore the default Digigov CSS base styles.
22
+ */
23
+ function mainFunction(options = {}) {
24
+ return function ({ addBase, addComponents, addUtilities, config }) {
25
+ let digigovCssIncludedItems = [];
26
+ let logs = false;
27
+ if (config('digigovCss.logs') != false) {
28
+ logs = true;
29
+ }
30
+ if (logs) {
31
+ console.log();
32
+ console.log(
33
+ '\x1b[35m%s\x1b[0m',
34
+ '🌼 Digigov CSS components ' + digigovCssInfo.version,
35
+ '\x1b[0m',
36
+ digigovCssInfo.homepage
37
+ );
38
+ console.group();
39
+ }
27
40
 
28
- // inject components
29
- let classNames = [];
30
- let mediaQueries = [];
31
- // split compiled components in two different sectors
32
- // to load them in the correct order, since media queries
33
- // should be always after the main CSS rules
34
- Object.keys(components).forEach(selector => {
35
- // checking if selectors are media queries
36
- if (selector.startsWith('@media')) {
37
- mediaQueries.push({[selector]: components[selector]});
38
- // ... or just regular css rules
39
- } else {
40
- classNames.push({[selector]: components[selector]});
41
- }
42
- });
43
- if (config('digigovCss.components') != false) {
44
- // this order is important for loading CSS rules and media queries
45
- // consistently, since the keys in js objects are not ordered and
46
- // sometimes order can be different. By spreading them in sequence
47
- // we fix this bug
48
- addComponents([
49
- ...classNames,
50
- ...mediaQueries,
51
- ])
52
- digigovCssIncludedItems.push('components')
53
- }
41
+ // inject @base style
42
+ if (config('digigovCss.base') != false) {
43
+ const themeBaseStyle = getThemeBaseStyle({
44
+ eject: options.eject,
45
+ theme: options.customTheme,
46
+ debug: logs,
47
+ });
48
+ addBase({ ...base, ...themeBaseStyle });
49
+ digigovCssIncludedItems.push('base');
50
+ }
54
51
 
55
- // inject @utilities style needed by components
56
- if (config('digigovCss.utils') != false) {
57
- addUtilities(utilities)
58
- digigovCssIncludedItems.push('utilities')
59
- }
60
- if (logs) {
61
- console.log('\x1b[32m%s\x1b[0m', '✔︎ Including:', '\x1b[0m', '' + digigovCssIncludedItems.join(', '));
62
- if (isTailwindInstalled === false) {
63
- console.log(`\n\x1b[33;1m! warning\x1b[0m - unable to require \x1b[36mtailwindcss/plugin\x1b[0m
52
+ // inject components
53
+ let classNames = [];
54
+ let mediaQueries = [];
55
+ // split compiled components in two different sectors
56
+ // to load them in the correct order, since media queries
57
+ // should be always after the main CSS rules
58
+ Object.keys(components).forEach((selector) => {
59
+ // checking if selectors are media queries
60
+ if (selector.startsWith('@media')) {
61
+ mediaQueries.push({ [selector]: components[selector] });
62
+ // ... or just regular css rules
63
+ } else {
64
+ classNames.push({ [selector]: components[selector] });
65
+ }
66
+ });
67
+ if (config('digigovCss.components') != false) {
68
+ // this order is important for loading CSS rules and media queries
69
+ // consistently, since the keys in js objects are not ordered and
70
+ // sometimes order can be different. By spreading them in sequence
71
+ // we fix this bug
72
+ addComponents([...classNames, ...mediaQueries]);
73
+ digigovCssIncludedItems.push('components');
74
+ }
75
+
76
+ // inject @utilities style needed by components
77
+ if (config('digigovCss.utils') != false) {
78
+ addUtilities(utilities);
79
+ digigovCssIncludedItems.push('utilities');
80
+ }
81
+ if (logs) {
82
+ console.log(
83
+ '\x1b[32m%s\x1b[0m',
84
+ '🛠️ Including functions:',
85
+ '\x1b[0m',
86
+ '' + digigovCssIncludedItems.join(', ')
87
+ );
88
+ if (isTailwindInstalled === false) {
89
+ console.log(`\n\x1b[33;1m! warning\x1b[0m - unable to require \x1b[36mtailwindcss/plugin\x1b[0m
64
90
  Digigov CSS color are now only available for Digigov CSS components.
65
91
  If you want to use DigigovCSS color as utility classes (like 'bg-primary')
66
92
  you need to add this to your \x1b[36mtailwind.config.js\x1b[0m file:
@@ -73,25 +99,29 @@ you need to add this to your \x1b[36mtailwind.config.js\x1b[0m file:
73
99
  },\x1b[0m
74
100
  \x1b[36m}\x1b[0m
75
101
  ───────────────────────────────────────
76
- `)
77
- }
78
- console.log()
79
- console.groupEnd()
80
- }
102
+ `);
103
+ }
104
+ console.log();
105
+ console.groupEnd();
106
+ }
107
+ };
81
108
  }
82
109
 
83
110
  // check if tailwindcss package exists
84
111
  let isTailwindInstalled = false;
85
112
  try {
86
- require.resolve('tailwindcss/plugin')
87
- isTailwindInstalled = true
113
+ require.resolve('tailwindcss/plugin');
114
+ isTailwindInstalled = true;
88
115
  } catch (er) {
89
- isTailwindInstalled = false
116
+ isTailwindInstalled = false;
90
117
  }
91
118
  if (isTailwindInstalled !== false) {
92
- module.exports = require("tailwindcss/plugin")(
93
- mainFunction, digigovTailwindConfig
94
- );
119
+ module.exports = require('tailwindcss/plugin').withOptions(
120
+ mainFunction,
121
+ function (options) {
122
+ return { ...digigovTailwindConfig, ...options };
123
+ }
124
+ );
95
125
  } else {
96
- module.exports = mainFunction;
126
+ module.exports = mainFunction;
97
127
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digigov/css",
3
- "version": "2.0.0-4be8f7cc",
3
+ "version": "2.0.0-6452adf3",
4
4
  "description": "Digigov CSS - Tailwind CSS Components",
5
5
  "author": "GRNET Devs <devs@lists.grnet.gr>",
6
6
  "license": "BSD-2-Clause",
@@ -27,7 +27,7 @@
27
27
  "defaultTheme",
28
28
  "src",
29
29
  "colors",
30
- "themes.plugin.js",
30
+ "theming.js",
31
31
  "postcss.config.js",
32
32
  "tailwind.config.js",
33
33
  "screens.json"
@@ -39,32 +39,32 @@
39
39
  ]
40
40
  },
41
41
  "devDependencies": {
42
- "@digigov/cli": "1.1.0",
42
+ "@digigov/cli": "2.0.0-6452adf3",
43
43
  "autoprefixer": "10.4.16",
44
- "cssnano": "4.1.10",
45
- "postcss": "8.4.4",
46
44
  "postcss-cli": "8.3.0",
47
45
  "postcss-import": "13.0.0",
48
46
  "prejss-cli": "0.3.3",
49
47
  "rtlcss": "3.0.0",
50
48
  "tailwindcss": "3.3.5",
51
49
  "nodemon": "2.0.7",
52
- "next": "10.0.9",
53
- "@digigov/postcss-banner": "1.0.4",
54
- "@digigov/cli-build-tailwind": "1.0.1",
50
+ "next": "13.1.1",
51
+ "@digigov/postcss-banner": "1.0.5-6452adf3",
52
+ "@digigov/cli-build-tailwind": "2.0.0-6452adf3",
55
53
  "rimraf": "3.0.2",
56
54
  "publint": "0.1.8",
57
55
  "stylelint": "15.11.0",
58
- "stylelint-plugin-digigov": "1.1.0-4be8f7cc",
56
+ "stylelint-plugin-digigov": "1.1.0-6452adf3",
59
57
  "prettier": "3.2.5"
60
58
  },
61
59
  "dependencies": {
60
+ "@digigov/theme-default": "1.0.0-6452adf3",
62
61
  "@fontsource/roboto": "4.4.0",
62
+ "cssnano": "4.1.10",
63
63
  "publint": "0.1.8",
64
- "@adobe/leonardo-contrast-colors": "1.0.0-alpha.13",
65
- "polished": "4.2.2",
64
+ "postcss": "8.4.4",
66
65
  "postcss-js": "4.0.0",
67
- "postcss-load-config": "3.1.4"
66
+ "postcss-load-config": "3.1.4",
67
+ "postcss-sort-media-queries": "5.2.0"
68
68
  },
69
69
  "scripts": {
70
70
  "preutilities": "DIGIGOV_CSS_BUILD=TRUE postcss --config src/utilities src/utilities/index.css --base src --dir dist",
package/postcss.config.js CHANGED
@@ -1,13 +1,14 @@
1
1
  /** @type {import('postcss-load-config').Config} */
2
2
  const config = {
3
3
  plugins: {
4
- "postcss-import": {},
5
- "tailwindcss/nesting": {},
4
+ 'postcss-import': {},
5
+ 'tailwindcss/nesting': {},
6
6
  tailwindcss: {},
7
7
  autoprefixer: {},
8
+ 'postcss-sort-media-queries': {},
8
9
  cssnano: {
9
10
  preset: [
10
- "default",
11
+ 'default',
11
12
  {
12
13
  mergeRules: false,
13
14
  },
@@ -1,4 +1,5 @@
1
1
  @import 'tailwindcss/base';
2
+
2
3
  :root {
3
4
  accent-color: var(--color-accent);
4
5
  }
@@ -1,27 +1,28 @@
1
- const changeLog = require("../../CHANGELOG.json");
1
+ const changeLog = require('../../CHANGELOG.json');
2
2
  const entries = changeLog.entries.sort(
3
- (a, b) => new Date(b.date) - new Date(a.date),
3
+ (a, b) => new Date(b.date) - new Date(a.date)
4
4
  );
5
5
  const version = entries[0].version;
6
6
  const date = entries[0].date;
7
- const cssDate = new Date(date).toLocaleDateString("si-LK"); //yyyy-MM-dd
7
+ const cssDate = new Date(date).toLocaleDateString('si-LK'); //yyyy-MM-dd
8
8
 
9
9
  /** @type {import('postcss-load-config').Config} */
10
10
  const config = {
11
11
  plugins: [
12
- require("postcss-import"),
13
- require("tailwindcss/nesting"),
14
- require("tailwindcss")("./src/base/tailwind.config.js"),
15
- require("autoprefixer"),
16
- require("cssnano")({
12
+ require('postcss-import'),
13
+ require('tailwindcss/nesting'),
14
+ require('tailwindcss')('./src/base/tailwind.config.js'),
15
+ require('autoprefixer'),
16
+ require('postcss-sort-media-queries'),
17
+ require('cssnano')({
17
18
  preset: [
18
- "default",
19
+ 'default',
19
20
  {
20
21
  mergeRules: false,
21
22
  },
22
23
  ],
23
24
  }),
24
- require("@digigov/postcss-banner")({
25
+ require('@digigov/postcss-banner')({
25
26
  banner: `@digigov/css: ${version}\n\nAuthor: grnet-devs\nDate: ${cssDate}`,
26
27
  inline: false,
27
28
  important: true,
@@ -1,21 +1,14 @@
1
- const plugin = require("tailwindcss/plugin");
2
- const themesPlugin = require("../../themes.plugin");
3
- const tailwindConfig = require("../../tailwind.config");
1
+ const tailwindConfig = require('../../tailwind.config');
4
2
 
5
3
  /** @type {import('tailwindcss').Config} */
6
4
  module.exports = {
7
5
  ...tailwindConfig,
8
6
  content: {
9
7
  files: [
10
- "./*.css",
11
- "../../dist/components/*.css",
12
- "../../dist/utilities/*.css",
8
+ './*.css',
9
+ '../../dist/components/*.css',
10
+ '../../dist/utilities/*.css',
13
11
  ],
14
12
  relative: true,
15
13
  },
16
- themes: {
17
- light: require.resolve("../../../../themes/govgr-light"),
18
- dark: require.resolve("../../../../themes/govgr-dark"),
19
- },
20
- plugins: [plugin(themesPlugin)],
21
14
  };
@@ -1,4 +1,5 @@
1
1
  .ds-accordion {
2
+ @apply mb-4 md:mb-8;
2
3
  &.ds-accordion--no-border {
3
4
  .ds-accordion__section {
4
5
  @apply border-0 !important;
@@ -122,7 +123,10 @@
122
123
 
123
124
  .ds-accordion__section-summary {
124
125
  .ds-hint {
125
- @apply mb-0 mt-1;
126
+ @apply mb-0;
127
+ }
128
+ > *[class^="ds-"]:not(:last-child) {
129
+ @apply mb-1;
126
130
  }
127
131
  }
128
132
  .ds-accordion__section-heading {
@@ -1,10 +1,7 @@
1
1
  .ds-admin-header {
2
- @apply bg-primary print:bg-white border-b-8 print:border-b-2 border-tertiary;
3
- border-bottom-style: solid;
4
2
  }
5
3
  .ds-admin-header__content {
6
- @apply px-4 py-2 mx-auto max-w-full w-full flex justify-between items-center
7
- flex-wrap sm:flex-nowrap print:px-0 gap-3;
4
+ @apply max-w-full !important;
8
5
  }
9
6
 
10
7
  /* overrides */
@@ -16,19 +13,4 @@
16
13
  .ds-dropdown__button.ds-link {
17
14
  @apply text-lg text-white focus:text-base-content print:text-base-800 text-right;
18
15
  }
19
- .ds-link {
20
- &:hover {
21
- .ds-svg-icon {
22
- fill: var(--color-white);
23
- }
24
- }
25
- &:focus {
26
- .ds-svg-icon {
27
- fill: var(--color-link-active);
28
- }
29
- }
30
- .ds-svg-icon {
31
- fill: var(--color-white);
32
- }
33
- }
34
16
  }
@@ -1,7 +1,4 @@
1
- .ds-admin-layout-wrapper {
2
- display: flex;
3
- flex-flow: column wrap;
4
- min-height: 100vh;
1
+ .ds-admin-layout {
5
2
  }
6
3
  .ds-admin-top-section {
7
4
  &.ds-admin-top-section--secondary {
@@ -12,8 +9,9 @@
12
9
  }
13
10
  }
14
11
  .ds-admin-main {
15
- @apply lg:col-span-8 md:col-span-7;
16
12
  }
17
13
  .ds-admin-aside {
18
- @apply lg:col-span-4 md:col-span-5 print:order-1;
14
+ &.ds-aside {
15
+ @apply block;
16
+ }
19
17
  }
@@ -78,7 +78,7 @@
78
78
  }
79
79
 
80
80
  .ds-autocomplete__menu {
81
- @apply block max-h-96 w-full m-0 p-0 overflow-x-hidden
81
+ @apply block max-h-64 md:max-h-96 w-full m-0 p-0 overflow-x-hidden
82
82
  border-2 border-t-0 border-base-content bg-base-100
83
83
  absolute left-0 top-full z-50 shadow-xl;
84
84
  &.ds-autocomplete__menu--hidden {
@@ -0,0 +1,14 @@
1
+ @tailwind utilities;
2
+
3
+ @layer utilities {
4
+ .util-blockquote {
5
+ @apply mb-4 md:mb-8 p-4 border-l-8 border-base-500 text-base-content;
6
+ }
7
+ .util-blockquote-text {
8
+ font-size: var(--blockquote-font-size);
9
+ line-height: var(--blockquote-line-height);
10
+ }
11
+ .util-blockquote--dense {
12
+ @apply mb-3 md:mb-6 p-3 border-l-6;
13
+ }
14
+ }
@@ -0,0 +1,9 @@
1
+ @import './blockquote.common.css';
2
+
3
+ .ds-blockquote {
4
+ @apply util-blockquote util-blockquote-text;
5
+ &.ds-blockquote--dense,
6
+ .ds-dense & {
7
+ @apply util-blockquote--dense;
8
+ }
9
+ }
@@ -0,0 +1,11 @@
1
+ @import './blockquote.common.css';
2
+
3
+ .ds-blockquote {
4
+ @apply util-blockquote;
5
+ }
6
+ .ds-blockquote__text {
7
+ @apply util-blockquote-text;
8
+ }
9
+ .ds-blockquote--dense {
10
+ @apply util-blockquote--dense;
11
+ }
@@ -1,5 +1,5 @@
1
1
  .ds-breadcrumbs {
2
- @apply block font-normal text-base-content mt-4 mb-2;
2
+ @apply block font-normal text-base-content mb-2 md:mb-4;
3
3
  }
4
4
  .ds-breadcrumbs__list {
5
5
  @apply block m-0 p-0 list-none;
@@ -12,8 +12,12 @@
12
12
  .ds-breadcrumbs__list-item {
13
13
  @apply inline-block relative mb-1 ml-2 pl-4 float-left;
14
14
  font-size: var(--breadcrumbs__list-item-font-size);
15
+ &[aria-current='page'] {
16
+ @apply font-semibold;
17
+ }
15
18
  &::before {
16
- @apply block absolute top-2 bottom-0 left-0 md:w-3 md:h-3 w-2 h-2 mx-auto my-0 bg-contain bg-no-repeat bg-center;
19
+ @apply block absolute top-2 bottom-0 left-0 md:w-3 md:h-3 w-2 h-2 mx-auto my-0
20
+ bg-contain bg-no-repeat bg-center;
17
21
  content: '';
18
22
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' aria-hidden='true'> <path d='M8.5,2L6.1,4.3l7.6,7.7l-7.6,7.6L8.5,22l10-10L8.5,2z' /> </svg>");
19
23
  }
@@ -47,4 +51,7 @@
47
51
  text-decoration: none;
48
52
  outline: none;
49
53
  }
54
+ &.ds-breadcrumbs__link--inactive {
55
+ @apply no-underline;
56
+ }
50
57
  }
@@ -0,0 +1,62 @@
1
+ /* stylelint-disable declaration-block-no-redundant-longhand-properties */
2
+ /* stylelint-disable digigov/nest-related-rules */
3
+ /* stylelint-disable digigov/enforce-class-selector-namespace */
4
+ @tailwind utilities;
5
+
6
+ @layer utilities {
7
+ .util-btn {
8
+ @apply m-0 mb-4 md:mb-8 flex items-center gap-x-3;
9
+ border-radius: var(--btn-border-radius);
10
+ padding-right: var(--btn-padding-x);
11
+ padding-left: var(--btn-padding-x);
12
+ padding-top: var(--btn-padding-y);
13
+ padding-bottom: var(--btn-padding-y);
14
+ }
15
+ .util-btn-text {
16
+ @apply text-white font-medium no-underline;
17
+ font-size: var(--btn-font-size);
18
+ letter-spacing: var(--letter-spacing-wide);
19
+ color: var(--color-base-100);
20
+ }
21
+ .util-btn-primary {
22
+ /* @apply print:border-2 print:border-success print:shadow-none; */
23
+ box-shadow: var(--btn-primary-box-shadow);
24
+ background-color: var(--btn-primary-background-color);
25
+ }
26
+ .util-btn-primary-text {
27
+ color: var(--btn-primary-color);
28
+ }
29
+ .util-btn-secondary {
30
+ /* @apply print:border-2 print:border-base-700 print:shadow-none; */
31
+ box-shadow: var(--btn-secondary-box-shadow);
32
+ background-color: var(--btn-secondary-background-color);
33
+ }
34
+ .util-btn-secondary-text {
35
+ color: var(--btn-secondary-color) !important;
36
+ }
37
+ .util-btn-warning {
38
+ /* @apply print:border-2 print:border-error print:shadow-none; */
39
+ box-shadow: var(--btn-warning-box-shadow);
40
+ background-color: var(--btn-warning-background-color);
41
+ }
42
+ .util-btn-warning-text {
43
+ color: var(--btn-warning-color);
44
+ }
45
+
46
+ .util-btn--dense {
47
+ --btn-padding-y: 0.375rem;
48
+ --btn-padding-x: 0.75rem;
49
+ @apply min-h-6;
50
+ }
51
+ .util-btn--disabled {
52
+ opacity: 0.5;
53
+ }
54
+ .util-btn--disabled-text {
55
+ @apply print:text-base-400;
56
+ }
57
+ .util-btn-cta {
58
+ }
59
+ .util-btn-cta-text {
60
+ font-size: var(--btn-cta-font-size);
61
+ }
62
+ }
@@ -1,14 +1,9 @@
1
+ @import './button.common.css';
1
2
  .ds-btn,
2
3
  .ds-btn[type='submit'],
3
4
  .ds-btn[type='button'],
4
5
  .ds-btn[type='reset'] {
5
- @apply no-underline font-medium cursor-pointer
6
- m-0 mb-8 w-max min-h-10 md:min-h-12
7
- flex gap-x-3 items-center;
8
- border-radius: var(--btn-border-radius);
9
- padding: var(--btn-padding);
10
- letter-spacing: var(--btn-letter-spacing);
11
- font-size: var(--btn-font-size);
6
+ @apply util-btn util-btn-text min-h-10 md:min-h-12 w-max cursor-pointer;
12
7
  &:focus {
13
8
  box-shadow:
14
9
  0 0 0 2px var(--color-white),
@@ -18,10 +13,10 @@
18
13
  &:focus-within {
19
14
  @apply outline-none;
20
15
  }
16
+
21
17
  &.ds-btn--dense,
22
18
  .ds-dense & {
23
- --btn-padding: 0.375rem 0.75rem;
24
- @apply min-h-8;
19
+ @apply util-btn--dense;
25
20
  &:focus {
26
21
  box-shadow:
27
22
  0 0 0 2px var(--color-white),
@@ -34,12 +29,9 @@
34
29
  .ds-btn-primary[type='submit'],
35
30
  .ds-btn-primary[type='button'],
36
31
  .ds-btn-primary[type='reset'] {
37
- @apply hover:no-underline
38
- print:border-2 print:border-success print:shadow-none;
39
- box-shadow: var(--btn-primary-box-shadow);
40
- background-color: var(--btn-primary-background-color);
41
- color: var(--btn-primary-color);
32
+ @apply util-btn-primary util-btn-primary-text;
42
33
  &:hover {
34
+ @apply no-underline;
43
35
  background-color: var(--btn-primary-background-color-hover);
44
36
  color: var(--btn-primary-color-hover);
45
37
  }
@@ -48,8 +40,7 @@
48
40
  }
49
41
  }
50
42
  .ds-btn-cta {
51
- @apply py-4 print:pr-2;
52
- font-size: var(--btn-cta-font-size);
43
+ @apply py-4 print:pr-2 mb-8 util-btn-cta-text;
53
44
  &.ds-btn--dense,
54
45
  .ds-dense & {
55
46
  @apply py-3 px-4;
@@ -59,12 +50,9 @@
59
50
  .ds-btn-secondary[type='submit'],
60
51
  .ds-btn-secondary[type='button'],
61
52
  .ds-btn-secondary[type='reset'] {
62
- @apply hover:no-underline
63
- print:border-2 print:border-base-700 print:shadow-none;
64
- box-shadow: var(--btn-secondary-box-shadow);
65
- background-color: var(--btn-secondary-background-color);
66
- color: var(--btn-secondary-color);
53
+ @apply util-btn-secondary util-btn-secondary-text;
67
54
  &:hover {
55
+ @apply no-underline;
68
56
  background-color: var(--btn-secondary-background-color-hover);
69
57
  color: var(--btn-secondary-color-hover);
70
58
  }
@@ -76,12 +64,9 @@
76
64
  .ds-btn-warning[type='submit'],
77
65
  .ds-btn-warning[type='button'],
78
66
  .ds-btn-warning[type='reset'] {
79
- @apply hover:no-underline
80
- print:border-2 print:border-error print:shadow-none;
81
- box-shadow: var(--btn-warning-box-shadow);
82
- background-color: var(--btn-warning-background-color);
83
- color: var(--btn-warning-color);
67
+ @apply util-btn-warning util-btn-warning-text;
84
68
  &:hover {
69
+ @apply no-underline;
85
70
  background-color: var(--btn-warning-background-color-hover);
86
71
  color: var(--btn-warning-color-hover);
87
72
  }
@@ -91,9 +76,8 @@
91
76
  }
92
77
  }
93
78
  .ds-btn--disabled {
94
- @apply opacity-50 hover:bg-opacity-50
95
- print:text-base-400 print:border-opacity-50;
96
79
  @apply cursor-not-allowed !important;
80
+ @apply util-btn--disabled util-btn--disabled-text;
97
81
  }
98
82
  .ds-close-btn {
99
83
  @apply flex flex-nowrap text-right w-max float-right items-center;
@@ -110,6 +94,7 @@
110
94
  .ds-svg-icon {
111
95
  fill: var(--btn-primary-color);
112
96
  }
97
+ /* stylelint-disable-next-line digigov/nest-related-rules */
113
98
  .ds-svg-icon--more-vert {
114
99
  @apply h-6 w-6 md:h-8 md:w-8;
115
100
  }