@digigov/css 2.0.0-cbc56209 → 2.0.0-d2ffc726

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 (141) 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 +14 -14
  9. package/postcss.config.js +4 -3
  10. package/src/base/index.css +1 -0
  11. package/src/base/index.native.css +0 -0
  12. package/src/base/postcss.config.js +11 -10
  13. package/src/base/tailwind.config.js +4 -11
  14. package/src/components/accordion.common.css +29 -0
  15. package/src/components/accordion.css +37 -12
  16. package/src/components/accordion.native.css +27 -0
  17. package/src/components/admin-header.css +2 -19
  18. package/src/components/admin-layout.css +6 -15
  19. package/src/components/autocomplete.css +77 -29
  20. package/src/components/blockquote.common.css +14 -0
  21. package/src/components/blockquote.css +9 -0
  22. package/src/components/blockquote.native.css +14 -0
  23. package/src/components/breadcrumbs.css +9 -2
  24. package/src/components/button.common.css +62 -0
  25. package/src/components/button.css +23 -35
  26. package/src/components/button.native.css +55 -0
  27. package/src/components/card.common.css +33 -0
  28. package/src/components/card.css +20 -13
  29. package/src/components/card.native.css +29 -0
  30. package/src/components/checkboxes.common.css +16 -0
  31. package/src/components/checkboxes.css +6 -8
  32. package/src/components/checkboxes.native.css +27 -0
  33. package/src/components/chip.common.css +19 -0
  34. package/src/components/chip.css +5 -4
  35. package/src/components/chip.native.css +15 -0
  36. package/src/components/code.css +128 -0
  37. package/src/components/copy-to-clipboard.css +1 -1
  38. package/src/components/copy-to-clipboard.native.css +26 -0
  39. package/src/components/details.common.css +26 -0
  40. package/src/components/details.css +10 -9
  41. package/src/components/details.native.css +34 -0
  42. package/src/components/drawer.css +20 -3
  43. package/src/components/dropdown.common.css +23 -0
  44. package/src/components/dropdown.css +37 -28
  45. package/src/components/dropdown.native.css +27 -0
  46. package/src/components/filter.css +72 -26
  47. package/src/components/footer.css +16 -4
  48. package/src/components/form.common.css +81 -0
  49. package/src/components/form.css +71 -32
  50. package/src/components/form.native.css +182 -0
  51. package/src/components/header.common.css +35 -0
  52. package/src/components/header.css +40 -26
  53. package/src/components/header.native.css +29 -0
  54. package/src/components/hidden.css +11 -11
  55. package/src/components/index.css +34 -31
  56. package/src/components/kitchensink.css +2 -2
  57. package/src/components/layout.common.css +36 -0
  58. package/src/components/layout.css +12 -11
  59. package/src/components/layout.native.css +40 -0
  60. package/src/components/loader.common.css +7 -0
  61. package/src/components/loader.css +5 -3
  62. package/src/components/loader.native.css +5 -0
  63. package/src/components/masthead.css +1 -1
  64. package/src/components/misc.css +25 -1
  65. package/src/components/modal.common.css +16 -0
  66. package/src/components/modal.css +27 -14
  67. package/src/components/modal.native.css +18 -0
  68. package/src/components/nav.common.css +22 -0
  69. package/src/components/nav.css +8 -7
  70. package/src/components/nav.native.css +39 -0
  71. package/src/components/notification-banner.common.css +46 -0
  72. package/src/components/notification-banner.css +28 -7
  73. package/src/components/notification-banner.native.css +42 -0
  74. package/src/components/pagination.css +19 -3
  75. package/src/components/panel.common.css +30 -0
  76. package/src/components/panel.css +6 -14
  77. package/src/components/panel.native.css +26 -0
  78. package/src/components/phase-banner.common.css +23 -0
  79. package/src/components/phase-banner.css +7 -6
  80. package/src/components/phase-banner.native.css +30 -0
  81. package/src/components/postcss.config.js +7 -6
  82. package/src/components/radios.common.css +16 -0
  83. package/src/components/radios.css +5 -11
  84. package/src/components/radios.native.css +23 -0
  85. package/src/components/skeleton.common.css +20 -0
  86. package/src/components/skeleton.css +82 -0
  87. package/src/components/skeleton.native.css +53 -0
  88. package/src/components/stack.common.css +67 -0
  89. package/src/components/stack.css +25 -23
  90. package/src/components/stack.native.css +68 -0
  91. package/src/components/summary-list.common.css +102 -0
  92. package/src/components/summary-list.css +102 -19
  93. package/src/components/summary-list.native.css +97 -0
  94. package/src/components/svg-icons.common.css +56 -0
  95. package/src/components/svg-icons.css +1 -1
  96. package/src/components/svg-icons.native.css +54 -0
  97. package/src/components/table.css +60 -19
  98. package/src/components/tabs.css +44 -61
  99. package/src/components/test.css +7 -0
  100. package/src/components/typography.common.css +135 -0
  101. package/src/components/typography.css +48 -108
  102. package/src/components/typography.native.css +128 -0
  103. package/src/components/warning-text.common.css +23 -0
  104. package/src/components/warning-text.css +9 -7
  105. package/src/components/warning-text.native.css +22 -0
  106. package/src/index.native.css +26 -0
  107. package/src/utilities/gap.css +141 -0
  108. package/src/utilities/index.css +6 -1655
  109. package/src/utilities/index.native.css +6 -0
  110. package/src/utilities/layout.css +231 -0
  111. package/src/utilities/layout.native.css +278 -0
  112. package/src/utilities/margin.css +4299 -0
  113. package/src/utilities/padding.css +4299 -0
  114. package/src/utilities/postcss.config.js +7 -6
  115. package/src/utilities/print.css +11 -0
  116. package/src/utilities/utilities.css +3 -1661
  117. package/tailwind.config.js +102 -104
  118. package/theming.js +121 -0
  119. package/defaultTheme/accordion.json +0 -8
  120. package/defaultTheme/back-to-top.json +0 -27
  121. package/defaultTheme/brandConfig.json +0 -135
  122. package/defaultTheme/breadcrumbs.json +0 -8
  123. package/defaultTheme/button.json +0 -81
  124. package/defaultTheme/card.json +0 -12
  125. package/defaultTheme/footer.json +0 -8
  126. package/defaultTheme/form.json +0 -15
  127. package/defaultTheme/globals.json +0 -71
  128. package/defaultTheme/index.js +0 -27
  129. package/defaultTheme/misc.json +0 -48
  130. package/defaultTheme/panel.json +0 -43
  131. package/defaultTheme/phase-banner.json +0 -8
  132. package/defaultTheme/radios.json +0 -8
  133. package/defaultTheme/summary-list.json +0 -8
  134. package/defaultTheme/typography.json +0 -295
  135. package/src/pages/admin-filtering-data.js +0 -160
  136. package/src/pages/admin.js +0 -61
  137. package/src/pages/dropdown.js +0 -249
  138. package/src/pages/form.js +0 -400
  139. package/src/pages/pagination.js +0 -124
  140. package/src/pages/table.js +0 -308
  141. package/themes.plugin.js +0 -148
@@ -1,16 +1,14 @@
1
- .ds-autocomplete__wrapper {
1
+ .ds-autocomplete__container {
2
2
  @apply relative;
3
3
  }
4
4
  .ds-autocomplete__status {
5
5
  }
6
- .ds-autocomplete__status__wrapper {
7
- @apply border-0 h-px overflow-hidden absolute whitespace-nowrap p-0 w-px;
6
+ .ds-autocomplete__status__container {
7
+ @apply border-0 h-px overflow-hidden absolute whitespace-nowrap p-0 w-px -mb-px -mr-px;
8
8
  clip: 'rect(0 0 0 0)';
9
- margin-bottom: '-1px';
10
- margin-right: '-1px';
11
9
  }
12
10
  .ds-autocomplete__hint {
13
- @apply absolute text-base-400;
11
+ @apply h-full absolute text-base-400;
14
12
  }
15
13
  .ds-autocomplete__hint,
16
14
  .ds-autocomplete__input {
@@ -19,40 +17,78 @@
19
17
  box-sizing: border-box;
20
18
  }
21
19
  .ds-autocomplete__input {
22
- @apply relative bg-transparent;
23
- &.ds-autocomplete__input--default {
24
- @apply p-2;
25
- }
20
+ @apply relative bg-transparent cursor-pointer pr-8;
26
21
  &.ds-autocomplete__input--focused {
27
22
  outline: 4px solid var(--color-focus);
28
23
  outline-offset: 0;
29
24
  box-shadow: inset 0 0 0 2px;
30
25
  }
31
- &.ds-autocomplete__input--show-all-values {
32
- @apply cursor-text;
33
- }
34
26
  }
35
- .ds-autocomplete__dropdown-arrow-down {
36
- @apply inline-block absolute right-2 top-4 w-6 h-6 cursor-pointer;
27
+ .ds-autocomplete__container > .ds-svg-icon {
28
+ @apply inline-block absolute right-2 top-3;
29
+ pointer-events: none;
37
30
  }
38
- .ds-autocomplete__menu {
39
- @apply bg-base-100 m-0 max-h-96 overflow-x-hidden w-full p-0 border-2 border-t-0 border-base-content /* border-t-0 border-x-2 border-l-2 border-base-content */;
40
- &.ds-autocomplete__menu--inline {
41
- @apply relative;
31
+ .ds-autocomplete__multi-input-container > .ds-link {
32
+ @apply inline-block absolute right-2 top-4;
33
+ .ds-svg-icon {
34
+ @apply ml-0 fill-base-content;
35
+ }
36
+ }
37
+ .ds-autocomplete__multi-input-container {
38
+ @apply w-full p-2 pr-8 border-2 border-base-content bg-base-100
39
+ flex gap-2 flex-wrap items-center;
40
+ min-height: 52px;
41
+ text-indent: 2px;
42
+ &:focus,
43
+ &.ds-autocomplete__multi-input-container--focused {
44
+ outline: 4px solid var(--color-focus);
45
+ outline-offset: 0;
46
+ box-shadow: inset 0 0 0 2px;
47
+ }
48
+ &:not(.ds-autocomplete__multi-input-container--focused) {
49
+ &.ds-autocomplete__multi-input-container--1 {
50
+ .ds-chip + .ds-chip {
51
+ @apply hidden;
52
+ }
53
+ }
54
+ &.ds-autocomplete__multi-input-container--2 {
55
+ .ds-chip + .ds-chip + .ds-chip {
56
+ @apply hidden;
57
+ }
58
+ }
59
+ &.ds-autocomplete__multi-input-container--3 {
60
+ .ds-chip + .ds-chip + .ds-chip + .ds-chip {
61
+ @apply hidden;
62
+ }
63
+ }
42
64
  }
43
- &.ds-autocomplete__menu--overlay {
44
- @apply absolute w-full left-0 top-full z-50 shadow-xl;
65
+ .ds-autocomplete__hint,
66
+ .ds-autocomplete__input {
67
+ @apply h-full;
45
68
  }
46
- &.ds-autocomplete__menu--visible {
47
- @apply block;
69
+ }
70
+ .ds-autocomplete__multi-input {
71
+ @apply flex-1 w-full focus:border-0 focus:outline-0 bg-base-100;
72
+ }
73
+ .ds-autocomplete__multi-btn {
74
+ @apply absolute bottom-0 right-0 m-2;
75
+ margin: 4px 2px;
76
+ height: 44px;
77
+ .ds-svg-icon {
78
+ @apply mx-2 !important;
48
79
  }
80
+ }
81
+
82
+ .ds-autocomplete__menu {
83
+ @apply block max-h-64 md:max-h-96 w-full m-0 p-0 overflow-x-hidden
84
+ border-2 border-t-0 border-base-content bg-base-100
85
+ absolute left-0 top-full z-50 shadow-xl;
49
86
  &.ds-autocomplete__menu--hidden {
50
87
  @apply hidden;
51
88
  }
52
89
  }
53
90
  .ds-autocomplete__option {
54
- @apply cursor-pointer block relative p-2;
55
- border-bottom: solid var(--color-base-400);
91
+ @apply cursor-pointer block relative p-2 border-b-base-400;
56
92
  border-width: 1px 0;
57
93
  &.ds-autocomplete__option--odd {
58
94
  @apply bg-base-300;
@@ -74,12 +110,24 @@
74
110
  }
75
111
  .ds-autocomplete__option > * {
76
112
  @apply pointer-events-none;
113
+ &:first-of-type,
114
+ &:last-of-type {
115
+ @apply border-t-0;
116
+ }
117
+ }
118
+ .ds-autocomplete__option--odd {
119
+ @apply bg-base-300;
120
+ }
121
+ .ds-autocomplete__option--focused,
122
+ .ds-autocomplete__option:hover {
123
+ @apply bg-info text-white outline-none border-tertiary;
77
124
  }
78
- .ds-autocomplete__option:first-of-type {
79
- @apply border-t-0;
125
+ .ds-autocomplete__option--no-results {
126
+ @apply text-current cursor-not-allowed;
80
127
  }
81
- .ds-autocomplete__option:last-of-type {
82
- @apply border-t-0;
128
+ .ds-autocomplete__option--empty {
129
+ @apply cursor-default hover:border-base-400;
130
+ @apply bg-base-100 text-base-content !important;
83
131
  }
84
132
  .ds-autocomplete__hint,
85
133
  .ds-autocomplete__option {
@@ -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 mt-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,14 @@
1
+ @import './blockquote.common.css';
2
+
3
+ .ds-blockquote {
4
+ @apply util-blockquote;
5
+ }
6
+ .ds-blockquote__text {
7
+ @apply util-blockquote-text;
8
+ line-height: calc(
9
+ var(--blockquote-font-size) * var(--blockquote-line-height)
10
+ );
11
+ }
12
+ .ds-blockquote--dense {
13
+ @apply util-blockquote--dense;
14
+ }
@@ -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;
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-8 flex items-center;
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 gap-x-3 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: 0 2px 0 var(--color-base-content);
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 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: 0 2px 0 var(--color-base-500);
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: 0 2px 0 var(--color-base-content);
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,13 +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;
97
- }
98
- .ds-svg-icon--caret {
99
- @apply w-4 h-4 inline-block;
100
- fill: var(--color-base-content);
80
+ @apply util-btn--disabled util-btn--disabled-text;
101
81
  }
102
82
  .ds-close-btn {
103
83
  @apply flex flex-nowrap text-right w-max float-right items-center;
@@ -110,7 +90,15 @@
110
90
  @apply h-4 w-4 inline transition-all;
111
91
  }
112
92
  }
113
- .ds-btn-primary,
93
+ .ds-btn-primary {
94
+ .ds-svg-icon {
95
+ fill: var(--btn-primary-color);
96
+ }
97
+ /* stylelint-disable-next-line digigov/nest-related-rules */
98
+ .ds-svg-icon--more-vert {
99
+ @apply h-6 w-6 md:h-8 md:w-8;
100
+ }
101
+ }
114
102
  .ds-btn-warning {
115
103
  .ds-svg-icon {
116
104
  fill: var(--color-white);
@@ -121,11 +109,11 @@
121
109
  }
122
110
  .ds-btn-cta {
123
111
  &:hover {
124
- .ds-svg-icon--chevron {
112
+ .ds-svg-icon {
125
113
  @apply ml-4 mr-0;
126
114
  }
127
115
  }
128
- .ds-svg-icon--chevron {
116
+ .ds-svg-icon {
129
117
  @apply w-5 h-5 inline-block ml-2 mr-2 transition-all;
130
118
  }
131
119
  }
@@ -0,0 +1,55 @@
1
+ /* stylelint-disable declaration-block-no-redundant-longhand-properties */
2
+ /* stylelint-disable digigov/nest-related-rules */
3
+ @import './button.common.css';
4
+
5
+ .ds-btn {
6
+ @apply util-btn min-h-4 flex-row flex-nowrap justify-center;
7
+ border-bottom-width: var(--btn-border-bottom-width-native);
8
+ border-bottom-color: var(--btn-border-bottom-color-native);
9
+ padding-top: calc(1.5 * var(--btn-padding-y)) !important;
10
+ padding-bottom: calc(1.5 * var(--btn-padding-y)) !important;
11
+ }
12
+ .ds-btn__text {
13
+ @apply util-btn-text min-h-4 text-center;
14
+ }
15
+ .ds-btn--dense {
16
+ @apply min-h-6;
17
+ }
18
+ .ds-btn--dense__text {
19
+ @apply min-h-4;
20
+ }
21
+ .ds-btn--disabled {
22
+ @apply util-btn--disabled;
23
+ }
24
+ .ds-btn--disabled__text {
25
+ @apply util-btn--disabled-text;
26
+ }
27
+ .ds-btn-primary {
28
+ @apply util-btn-primary util-btn;
29
+ }
30
+ .ds-btn-primary__text {
31
+ @apply util-btn-primary-text;
32
+ }
33
+ .ds-btn-secondary {
34
+ @apply util-btn-secondary;
35
+ }
36
+ .ds-btn-secondary__text {
37
+ @apply util-btn-secondary-text;
38
+ }
39
+ .ds-btn-warning {
40
+ @apply util-btn-warning;
41
+ }
42
+ .ds-btn-warning__text {
43
+ @apply util-btn-warning-text;
44
+ }
45
+ .ds-btn-cta {
46
+ padding-top: calc(2.25 * var(--btn-padding-y)) !important;
47
+ padding-bottom: calc(2.25 * var(--btn-padding-y)) !important;
48
+ }
49
+
50
+ .ds-btn-cta__text {
51
+ @apply util-btn-cta-text;
52
+ }
53
+ .ds-btn-cta__icon {
54
+ fill: var(--color-white) !important;
55
+ }
@@ -0,0 +1,33 @@
1
+ @tailwind utilities;
2
+
3
+ @layer utilities {
4
+ .util-card {
5
+ @apply mb-7 text-base-content max-w-full bg-base-100;
6
+ border-radius: var(--card-border-radius);
7
+ }
8
+ .util-card--border {
9
+ @apply border-2 border-base-content p-6;
10
+ }
11
+ .util-card--border-top {
12
+ @apply border-t border-base-300 pt-4;
13
+ }
14
+ .util-card--border-light {
15
+ @apply border-base-300;
16
+ }
17
+ .util-card--border-dark {
18
+ @apply border-base-content;
19
+ }
20
+ .util-card--divider {
21
+ --card-border-radius: 0;
22
+ @apply border-b border-base-300 pb-4 mb-4;
23
+ }
24
+ .util-card__heading-text {
25
+ @apply md:text-2xl text-xl font-bold;
26
+ }
27
+ .util-card__body {
28
+ @apply flex flex-col gap-3 md:gap-4;
29
+ }
30
+ .util-card__action {
31
+ @apply flex flex-wrap items-center gap-y-4 mt-auto;
32
+ }
33
+ }
@@ -1,5 +1,7 @@
1
+ @import './card.common.css';
2
+
1
3
  .ds-card {
2
- @apply mb-7 text-base-content;
4
+ @apply util-card;
3
5
  &.ds-card--dense,
4
6
  .ds-dense & {
5
7
  @apply mb-5;
@@ -8,17 +10,17 @@
8
10
  }
9
11
  }
10
12
  &.ds-card--border {
11
- @apply border-2 border-base-content p-6;
13
+ @apply util-card--border;
12
14
  &.ds-card--border-light {
13
15
  @apply border;
14
16
  }
15
17
  &.ds-card--dense,
16
18
  .ds-dense & {
17
- @apply p-4 pt-3;
19
+ @apply py-2 px-2;
18
20
  }
19
21
  }
20
22
  &.ds-card--border-top {
21
- @apply border-t border-base-300 pt-4;
23
+ @apply util-card--border-top;
22
24
  &.ds-card--border-dark {
23
25
  @apply border-t-3;
24
26
  }
@@ -28,7 +30,7 @@
28
30
  }
29
31
  }
30
32
  &.ds-card--divider {
31
- @apply border-b border-base-300 pb-4 mb-4;
33
+ @apply util-card--divider;
32
34
  }
33
35
  &.ds-card--cta {
34
36
  .ds-card__body {
@@ -52,30 +54,35 @@
52
54
  }
53
55
  }
54
56
  &.ds-card--border-light {
55
- @apply border-base-300;
57
+ @apply util-card--border-light;
56
58
  }
57
59
  &.ds-card--border-dark {
58
- @apply border-base-content;
60
+ @apply util-card--border-dark;
59
61
  }
60
62
  &.ds-card--full-height {
61
63
  @apply h-full;
62
64
  }
63
65
  }
64
66
  .ds-card__body {
65
- @apply flex flex-col gap-3 md:gap-4 h-full;
67
+ @apply util-card__body h-full;
68
+ }
69
+ .ds-card__image {
70
+ @apply w-full h-40
71
+ /* @apply h-40 -mx-6 */
72
+ bg-base-200 bg-cover bg-top
73
+ border border-base-300;
66
74
  }
67
75
  .ds-card__heading {
68
- @apply md:text-2xl text-xl font-bold;
76
+ @apply util-card__heading-text;
69
77
  word-break: break-word;
70
78
  }
71
79
  .ds-card__content {
72
- @apply text-base;
73
80
  word-break: break-word;
74
- font-size: var(--card__text-font-size);
75
- line-height: var(--card__text-line-height);
81
+ font-size: var(--card__content-font-size);
82
+ line-height: var(--card__content-line-height);
76
83
  }
77
84
  .ds-card__action {
78
- @apply flex flex-wrap items-center gap-y-4 mt-auto;
85
+ @apply util-card__action;
79
86
  }
80
87
  @media print {
81
88
  /* When ds-card__action is empty at print, content at :after limits its height. */
@@ -0,0 +1,29 @@
1
+ @import './card.common.css';
2
+
3
+ .ds-card {
4
+ @apply util-card;
5
+ }
6
+ .ds-card--border {
7
+ @apply util-card--border;
8
+ }
9
+ .ds-card__body {
10
+ @apply util-card__body;
11
+ }
12
+ .ds-card__action {
13
+ @apply util-card__action;
14
+ }
15
+ .ds-card--border-top {
16
+ @apply util-card--border-top;
17
+ }
18
+ .ds-card--border-light {
19
+ @apply util-card--border-light;
20
+ }
21
+ .ds-card--border-dark {
22
+ @apply util-card--border-dark;
23
+ }
24
+ .ds-card--divider {
25
+ @apply util-card--divider;
26
+ }
27
+ .ds-card__heading__text {
28
+ @apply util-card__heading-text;
29
+ }
@@ -0,0 +1,16 @@
1
+ @tailwind utilities;
2
+
3
+ @layer utilities {
4
+ .util-checkboxes__item {
5
+ @apply relative mb-4 min-h-10;
6
+ }
7
+ .util-checkboxes__input {
8
+ @apply absolute z-1 left-0.5 -top-0.5 m-0 opacity-100 w-10 h-10;
9
+ }
10
+ .util-checkboxes__input__after {
11
+ @apply absolute border-b-5 border-l-5;
12
+ width: 23px;
13
+ height: 12px;
14
+ transform: rotate(-45deg);
15
+ }
16
+ }
@@ -1,3 +1,5 @@
1
+ @import './checkboxes.common.css';
2
+
1
3
  .ds-checkboxes {
2
4
  &.ds-checkboxes--dense,
3
5
  .ds-dense & {
@@ -34,7 +36,7 @@
34
36
  }
35
37
  }
36
38
  .ds-checkboxes__item {
37
- @apply block relative mb-4 pl-12 min-h-10;
39
+ @apply util-checkboxes__item block pl-12;
38
40
  &:last-child {
39
41
  @apply mb-0;
40
42
  }
@@ -43,8 +45,7 @@
43
45
  @apply inline-block py-1 px-2 cursor-pointer;
44
46
  }
45
47
  .ds-checkboxes__input {
46
- @apply absolute z-1 left-0.5 -top-0.5 m-0 opacity-100
47
- w-10 h-10 cursor-pointer;
48
+ @apply util-checkboxes__input cursor-pointer;
48
49
  &::before {
49
50
  @apply absolute top-0 left-0 w-10 h-10
50
51
  border-solid border-base-content border-2 bg-base-100 opacity-100;
@@ -52,14 +53,11 @@
52
53
  box-sizing: border-box;
53
54
  }
54
55
  &::after {
55
- @apply absolute bg-transparent opacity-0 box-border
56
- border-accent border-b-5 border-l-5 border-t-0 border-r-0;
56
+ @apply util-checkboxes__input__after bg-transparent opacity-0 box-border
57
+ border-accent border-t-0 border-r-0;
57
58
  content: '';
58
59
  top: 11px;
59
60
  left: 9px;
60
- width: 23px;
61
- height: 12px;
62
- transform: rotate(-45deg);
63
61
  }
64
62
  &:checked {
65
63
  &::after {
@@ -0,0 +1,27 @@
1
+ @import './checkboxes.common.css';
2
+
3
+ .ds-checkboxes__item {
4
+ @apply util-checkboxes__item;
5
+ }
6
+ .ds-checkboxes__label {
7
+ @apply pl-12;
8
+ }
9
+ .ds-checkboxes__input {
10
+ @apply util-checkboxes__input top-0 left-0 border-solid border-base-content border-2 bg-base-100;
11
+ }
12
+
13
+ .ds-checkboxes__input--checked {
14
+ @apply util-checkboxes__input__after text-black;
15
+ top: 8;
16
+ left: 5;
17
+ }
18
+
19
+ .ds-checkboxes__input__wrapper--focus {
20
+ border-width: 4px;
21
+ border-color: var(--color-focus);
22
+ }
23
+ .ds-checkboxes__label__text {
24
+ font-size: var(--label-font-size);
25
+ line-height: 2rem;
26
+ letter-spacing: 0;
27
+ }