@digigov/css 2.0.0-7d9a8d86 → 2.0.0-834daea4

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 (135) 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 +11 -11
  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 +2 -19
  15. package/src/components/admin-layout.css +6 -15
  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.native.css +28 -0
  32. package/src/components/details.common.css +26 -0
  33. package/src/components/details.css +6 -9
  34. package/src/components/details.native.css +26 -0
  35. package/src/components/drawer.css +18 -1
  36. package/src/components/dropdown.common.css +23 -0
  37. package/src/components/dropdown.css +37 -31
  38. package/src/components/dropdown.native.css +28 -0
  39. package/src/components/fillable.css +1 -1
  40. package/src/components/filter.css +35 -6
  41. package/src/components/form.common.css +82 -0
  42. package/src/components/form.css +57 -29
  43. package/src/components/form.native.css +133 -0
  44. package/src/components/header.common.css +36 -0
  45. package/src/components/header.css +29 -20
  46. package/src/components/header.native.css +34 -0
  47. package/src/components/hidden.css +11 -11
  48. package/src/components/index.css +34 -31
  49. package/src/components/kitchensink.css +2 -2
  50. package/src/components/layout.common.css +36 -0
  51. package/src/components/layout.css +13 -12
  52. package/src/components/layout.native.css +39 -0
  53. package/src/components/loader.common.css +7 -0
  54. package/src/components/loader.css +3 -1
  55. package/src/components/loader.native.css +5 -0
  56. package/src/components/masthead.css +1 -1
  57. package/src/components/misc.css +24 -0
  58. package/src/components/modal.common.css +17 -0
  59. package/src/components/modal.css +28 -15
  60. package/src/components/modal.native.css +18 -0
  61. package/src/components/nav.common.css +22 -0
  62. package/src/components/nav.css +8 -7
  63. package/src/components/nav.native.css +41 -0
  64. package/src/components/notification-banner.common.css +46 -0
  65. package/src/components/notification-banner.css +8 -6
  66. package/src/components/notification-banner.native.css +42 -0
  67. package/src/components/pagination.css +19 -3
  68. package/src/components/panel.common.css +30 -0
  69. package/src/components/panel.css +6 -15
  70. package/src/components/panel.native.css +20 -0
  71. package/src/components/phase-banner.common.css +23 -0
  72. package/src/components/phase-banner.css +7 -6
  73. package/src/components/phase-banner.native.css +31 -0
  74. package/src/components/postcss.config.js +7 -6
  75. package/src/components/radios.common.css +16 -0
  76. package/src/components/radios.css +5 -11
  77. package/src/components/radios.native.css +24 -0
  78. package/src/components/skeleton.css +85 -0
  79. package/src/components/stack.common.css +67 -0
  80. package/src/components/stack.css +23 -21
  81. package/src/components/stack.native.css +68 -0
  82. package/src/components/stepnav.css +2 -3
  83. package/src/components/summary-list.common.css +92 -0
  84. package/src/components/summary-list.css +86 -15
  85. package/src/components/summary-list.native.css +93 -0
  86. package/src/components/svg-icons.common.css +56 -0
  87. package/src/components/svg-icons.css +1 -1
  88. package/src/components/svg-icons.native.css +55 -0
  89. package/src/components/table.css +13 -11
  90. package/src/components/tabs.css +45 -62
  91. package/src/components/task-list.css +12 -7
  92. package/src/components/test.css +7 -0
  93. package/src/components/timeline.css +16 -15
  94. package/src/components/typography.common.css +135 -0
  95. package/src/components/typography.css +35 -94
  96. package/src/components/typography.native.css +97 -0
  97. package/src/components/warning-text.common.css +23 -0
  98. package/src/components/warning-text.css +5 -2
  99. package/src/components/warning-text.native.css +22 -0
  100. package/src/index.native.css +23 -0
  101. package/src/utilities/gap.css +141 -0
  102. package/src/utilities/index.css +6 -1655
  103. package/src/utilities/index.native.css +6 -0
  104. package/src/utilities/layout.css +231 -0
  105. package/src/utilities/layout.native.css +278 -0
  106. package/src/utilities/margin.css +4299 -0
  107. package/src/utilities/padding.css +4299 -0
  108. package/src/utilities/postcss.config.js +7 -6
  109. package/src/utilities/print.css +11 -0
  110. package/src/utilities/utilities.css +3 -1660
  111. package/tailwind.config.js +102 -104
  112. package/theming.js +121 -0
  113. package/defaultTheme/accordion.json +0 -16
  114. package/defaultTheme/back-to-top.json +0 -27
  115. package/defaultTheme/brandConfig.json +0 -145
  116. package/defaultTheme/breadcrumbs.json +0 -8
  117. package/defaultTheme/button.json +0 -90
  118. package/defaultTheme/card.json +0 -23
  119. package/defaultTheme/form.json +0 -30
  120. package/defaultTheme/globals.json +0 -81
  121. package/defaultTheme/index.js +0 -27
  122. package/defaultTheme/layout.json +0 -55
  123. package/defaultTheme/misc.json +0 -68
  124. package/defaultTheme/panel.json +0 -48
  125. package/defaultTheme/phase-banner.json +0 -8
  126. package/defaultTheme/radios.json +0 -8
  127. package/defaultTheme/summary-list.json +0 -8
  128. package/defaultTheme/typography.json +0 -295
  129. package/src/pages/admin-filtering-data.js +0 -160
  130. package/src/pages/admin.js +0 -61
  131. package/src/pages/dropdown.js +0 -249
  132. package/src/pages/form.js +0 -400
  133. package/src/pages/pagination.js +0 -124
  134. package/src/pages/table.js +0 -308
  135. package/themes.plugin.js +0 -148
@@ -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-4 md:mb-8 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,6 +1,7 @@
1
+ @import './card.common.css';
2
+
1
3
  .ds-card {
2
- @apply mb-7 text-base-content;
3
- border-radius: var(--card-border-radius);
4
+ @apply util-card;
4
5
  &.ds-card--dense,
5
6
  .ds-dense & {
6
7
  @apply mb-5;
@@ -9,7 +10,7 @@
9
10
  }
10
11
  }
11
12
  &.ds-card--border {
12
- @apply border-2 border-base-content p-6;
13
+ @apply util-card--border;
13
14
  &.ds-card--border-light {
14
15
  @apply border;
15
16
  }
@@ -19,7 +20,7 @@
19
20
  }
20
21
  }
21
22
  &.ds-card--border-top {
22
- @apply border-t border-base-300 pt-4;
23
+ @apply util-card--border-top;
23
24
  &.ds-card--border-dark {
24
25
  @apply border-t-3;
25
26
  }
@@ -29,8 +30,7 @@
29
30
  }
30
31
  }
31
32
  &.ds-card--divider {
32
- --card-border-radius: 0;
33
- @apply border-b border-base-300 pb-4 mb-4;
33
+ @apply util-card--divider;
34
34
  }
35
35
  &.ds-card--cta {
36
36
  .ds-card__body {
@@ -54,30 +54,35 @@
54
54
  }
55
55
  }
56
56
  &.ds-card--border-light {
57
- @apply border-base-300;
57
+ @apply util-card--border-light;
58
58
  }
59
59
  &.ds-card--border-dark {
60
- @apply border-base-content;
60
+ @apply util-card--border-dark;
61
61
  }
62
62
  &.ds-card--full-height {
63
63
  @apply h-full;
64
64
  }
65
65
  }
66
66
  .ds-card__body {
67
- @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;
68
74
  }
69
75
  .ds-card__heading {
70
- @apply md:text-2xl text-xl font-bold;
76
+ @apply util-card__heading-text;
71
77
  word-break: break-word;
72
78
  }
73
79
  .ds-card__content {
74
- @apply text-base;
75
80
  word-break: break-word;
76
- font-size: var(--card__text-font-size);
77
- line-height: var(--card__text-line-height);
81
+ font-size: var(--card__content-font-size);
82
+ line-height: var(--card__content-line-height);
78
83
  }
79
84
  .ds-card__action {
80
- @apply flex flex-wrap items-center gap-y-4 mt-auto;
85
+ @apply util-card__action;
81
86
  }
82
87
  @media print {
83
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,28 @@
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
+
14
+ .ds-checkboxes__input--checked {
15
+ @apply util-checkboxes__input__after text-black;
16
+ top: 8;
17
+ left: 5;
18
+ }
19
+
20
+ .ds-checkboxes__input__wrapper--focus {
21
+ border-width: 4px;
22
+ border-color: var(--color-focus);
23
+ }
24
+ .ds-checkboxes__label__text {
25
+ font-size: var(--label-font-size);
26
+ line-height: 2rem;
27
+ letter-spacing: 0rem;
28
+ }
@@ -0,0 +1,127 @@
1
+ /* stylelint-disable digigov/enforce-class-selector-namespace */
2
+ .ds-code-block__container {
3
+ @apply mb-4 md:mb-8 p-4 bg-base-200 border border-base-300 w-full overflow-x-auto relative;
4
+ max-height: 95vh; /* experimental to see if it's disturbing */
5
+ & > pre {
6
+ @apply bg-transparent p-0 m-0;
7
+ font: inherit;
8
+ color: inherit;
9
+ }
10
+ }
11
+ .ds-code-block__header {
12
+ @apply sticky left-0 flex mb-0.5 items-start;
13
+
14
+ &.ds-code-block__header--start {
15
+ @apply justify-start;
16
+ }
17
+ &.ds-code-block__header--space-between {
18
+ @apply justify-between;
19
+ }
20
+ &.ds-code-block__header--end {
21
+ @apply justify-end;
22
+ }
23
+ }
24
+ .ds-code-block__content {
25
+ @apply text-sm sm:text-base;
26
+ }
27
+ .ds-code--line-number {
28
+ @apply inline-block text-right pointer-events-none select-none pr-0.5 w-6 text-base-500;
29
+ }
30
+ .ds-code--highlighted-line {
31
+ background-color: rgba(var(--color-orange-100-rgb), 0.3);
32
+ }
33
+
34
+ /* copied styles from 'highlight.js/styles/github.css' */
35
+ .ds-code--doctag,
36
+ .ds-code--keyword,
37
+ .ds-code--meta .ds-code--keyword,
38
+ .ds-code--template-tag,
39
+ .ds-code--template-variable,
40
+ .ds-code--type,
41
+ .ds-code--variable.language_ {
42
+ /* prettylights-syntax-keyword */
43
+ color: var(--color-red-300);
44
+ }
45
+ .ds-code--title,
46
+ .ds-code--title.class_,
47
+ .ds-code--title.class_.inherited__,
48
+ .ds-code--title.function_ {
49
+ /* prettylights-syntax-entity */
50
+ color: var(--color-purple-400);
51
+ }
52
+ .ds-code--attr,
53
+ .ds-code--attribute,
54
+ .ds-code--literal,
55
+ .ds-code--meta,
56
+ .ds-code--number,
57
+ .ds-code--operator,
58
+ .ds-code--variable,
59
+ .ds-code--selector-attr,
60
+ .ds-code--selector-class,
61
+ .ds-code--selector-id {
62
+ /* prettylights-syntax-constant */
63
+ color: var(--color-green-400);
64
+ }
65
+ .ds-code--regexp,
66
+ .ds-code--string,
67
+ .ds-code--meta .ds-code--string {
68
+ /* prettylights-syntax-string */
69
+ color: var(--color-blue-600);
70
+ }
71
+ .ds-code--built_in,
72
+ .ds-code--symbol {
73
+ /* prettylights-syntax-variable */
74
+ color: var(--color-orange-500);
75
+ }
76
+ .ds-code--comment,
77
+ .ds-code--code,
78
+ .ds-code--formula {
79
+ /* prettylights-syntax-comment */
80
+ @apply text-base-600;
81
+ }
82
+ .ds-code--name,
83
+ .ds-code--quote,
84
+ .ds-code--selector-tag,
85
+ .ds-code--selector-pseudo {
86
+ /* prettylights-syntax-entity-tag */
87
+ color: var(--color-green-400);
88
+ }
89
+ .ds-code--subst {
90
+ /* prettylights-syntax-storage-modifier-import */
91
+ @apply text-base-900;
92
+ }
93
+ .ds-code--section {
94
+ /* prettylights-syntax-markup-heading */
95
+ @apply font-bold;
96
+ color: var(--color-blue-500);
97
+ }
98
+ .ds-code--bullet {
99
+ /* prettylights-syntax-markup-list */
100
+ color: var(--color-orange-600);
101
+ }
102
+ .ds-code--emphasis {
103
+ /* prettylights-syntax-markup-italic */
104
+ @apply italic text-base-900;
105
+ }
106
+ .ds-code--strong {
107
+ /* prettylights-syntax-markup-bold */
108
+ @apply font-bold text-base-900;
109
+ }
110
+ .ds-code--addition {
111
+ /* prettylights-syntax-markup-inserted */
112
+ color: var(--color-green-500);
113
+ background-color: rgba(var(--color-green-100-rgb), 0.3);
114
+ }
115
+ .ds-code--deletion {
116
+ /* prettylights-syntax-markup-deleted */
117
+ color: var(--color-red-500);
118
+ background-color: rgba(var(--color-red-100-rgb), 0.3);
119
+ }
120
+ .ds-code--char.escape_,
121
+ .ds-code--link,
122
+ .ds-code--params,
123
+ .ds-code--property,
124
+ .ds-code--punctuation,
125
+ .ds-code--tag {
126
+ /* purposely ignored */
127
+ }
@@ -0,0 +1,28 @@
1
+ /* stylelint-disable digigov/enforce-class-selector-namespace */
2
+
3
+ .ds-copy-to-clipboard {
4
+ @apply flex z-10;
5
+ }
6
+ .ds-copy-to-clipboard--hidden {
7
+ @apply hidden w-0 h-0;
8
+ }
9
+ .ds-copy-to-clipboard__before {
10
+ /* stylelint-disable-next-line plugin/no-react-native-incompatible-css */
11
+ @apply w-4 h-4 border-t-8 border-l-8 border-success transform rotate-45
12
+ absolute bottom-1;
13
+ left: 50%;
14
+ }
15
+ .ds-copy-to-clipboard__message {
16
+ @apply bg-success w-full mb-4
17
+ absolute -top-4;
18
+ }
19
+ .ds-copy-to-clipboard__message__text {
20
+ @apply p-2 flex-1 text-center text-white py-3 px-4;
21
+ }
22
+ .ds-copy-to-clipboard__tooltip {
23
+ }
24
+ .ds-copy-to-clipboard__banner {
25
+ }
26
+ .ds-copy-to-clipboard__message--dense {
27
+ @apply py-2 px-4;
28
+ }
@@ -0,0 +1,26 @@
1
+ @tailwind utilities;
2
+
3
+ @layer utilities {
4
+ .util-details {
5
+ @apply mb-4 md:mb-8;
6
+ }
7
+ .util-details-text {
8
+ @apply md:text-lg;
9
+ font-size: var(--details-font-size);
10
+ line-height: var(--details-line-height);
11
+ }
12
+ .util-details__summary {
13
+ @apply mb-0;
14
+ }
15
+ .util-details__summary-text {
16
+ @apply underline;
17
+ }
18
+ .util-details__summary--lg-text {
19
+ @apply font-semibold;
20
+ font-size: var(--details__summary--lg-font-size);
21
+ line-height: var(--details__summary--lg-line-height);
22
+ }
23
+ .util-details__content {
24
+ @apply border-l-2 border-base-500 py-2 px-4 mt-4;
25
+ }
26
+ }
@@ -1,11 +1,10 @@
1
+ @import './details.common.css';
2
+
1
3
  .ds-details {
2
- @apply md:text-lg;
3
- @apply md:mb-8 mb-4;
4
- font-size: var(--details-font-size);
5
- line-height: var(--details-line-height);
4
+ @apply util-details util-details-text;
6
5
  }
7
6
  .ds-details__summary {
8
- @apply mb-0 underline cursor-pointer w-fit;
7
+ @apply util-details__summary util-details__summary-text cursor-pointer w-fit;
9
8
  &:hover {
10
9
  text-decoration-thickness: 2px;
11
10
  }
@@ -20,13 +19,11 @@
20
19
  @apply outline-none;
21
20
  }
22
21
  &.ds-details__summary--lg {
23
- @apply font-semibold;
24
- font-size: var(--details__summary--lg-font-size);
25
- line-height: var(--details__summary--lg-line-height);
22
+ @apply util-details__summary--lg-text;
26
23
  }
27
24
  }
28
25
  .ds-details__content {
29
- @apply border-l-2 border-base-500 py-2 px-4 mt-4;
26
+ @apply util-details__content;
30
27
  > *:last-child {
31
28
  @apply mb-0;
32
29
  }
@@ -0,0 +1,26 @@
1
+ @import './details.common.css';
2
+
3
+ .ds-details {
4
+ @apply util-details;
5
+ }
6
+ .ds-details__text {
7
+ @apply util-details-text;
8
+ }
9
+ .ds-details__summary {
10
+ @apply util-details__summary;
11
+ }
12
+ .ds-details__summary--focus {
13
+ background-color: var(--color-focus);
14
+ box-shadow:
15
+ 0 -2px var(--color-focus),
16
+ 0 4px var(--color-base-content);
17
+ }
18
+ .ds-details__summary__text {
19
+ @apply util-details__summary-text;
20
+ }
21
+ .ds-details__summary--lg__text {
22
+ @apply util-details__summary--lg-text;
23
+ }
24
+ .ds-details__content {
25
+ @apply util-details__content;
26
+ }
@@ -1,3 +1,20 @@
1
+ .ds-drawer-container {
2
+ @apply justify-center items-center content-center
3
+ left-0 top-0 w-full h-full overflow-auto
4
+ flex fixed z-50 bg-opacity-50 bg-base-700;
5
+ &.ds-drawer-container--relative-sm {
6
+ @apply sm:bg-transparent sm:z-0 sm:relative sm:block;
7
+ }
8
+ &.ds-drawer-container--relative-md {
9
+ @apply md:bg-transparent md:z-0 md:relative md:block;
10
+ }
11
+ &.ds-drawer-container--relative-lg {
12
+ @apply lg:bg-transparent lg:z-0 lg:relative lg:block;
13
+ }
14
+ &.ds-drawer-container--closed {
15
+ @apply hidden;
16
+ }
17
+ }
1
18
  .ds-drawer {
2
19
  @apply border border-base-300 bg-base-100 p-4
3
20
  h-full max-h-screen min-h-screen overflow-y-scroll w-4/5 max-w-md flex flex-col
@@ -36,7 +53,7 @@
36
53
  }
37
54
  }
38
55
  .ds-drawer__heading {
39
- @apply p-0 mb-4 flex justify-between align-baseline;
56
+ @apply p-0 mb-2 md:mb-4 flex justify-between align-baseline;
40
57
  .ds--drawer__close-icon {
41
58
  @apply m-0;
42
59
  }
@@ -0,0 +1,23 @@
1
+ @tailwind utilities;
2
+
3
+ @layer utilities {
4
+ .util-dropdown {
5
+ @apply relative;
6
+ }
7
+ .util-dropdown--right {
8
+ @apply right-0 mr-0 ml-4;
9
+ }
10
+ .util-dropdown__content {
11
+ @apply border-base-400 bg-base-100
12
+ max-w-xs min-w-full absolute transition z-3 mr-4 mt-0 md:-mt-4;
13
+ box-shadow:
14
+ 0 2px 8px rgba(var(--color-base-900-rgb), 0.3),
15
+ 0 -2px 0 var(--color-base-500);
16
+ }
17
+ .util-dropdown__content--full-width {
18
+ @apply min-w-full;
19
+ }
20
+ .util-dropdown__content--scrollable {
21
+ @apply max-h-64 md:max-h-96;
22
+ }
23
+ }
@@ -1,5 +1,7 @@
1
+ @import './dropdown.common.css';
2
+
1
3
  .ds-dropdown {
2
- @apply w-fit relative;
4
+ @apply util-dropdown w-fit;
3
5
  &.ds-dropdown--up {
4
6
  .ds-dropdown__content {
5
7
  @apply mb-4 border border-b-0 bottom-full;
@@ -13,7 +15,7 @@
13
15
  }
14
16
  &.ds-dropdown--right {
15
17
  .ds-dropdown__content {
16
- @apply right-0 mr-0 ml-4;
18
+ @apply util-dropdown--right;
17
19
  }
18
20
  }
19
21
  &.ds-dropdown--disabled {
@@ -30,36 +32,35 @@
30
32
  @apply p-2;
31
33
  }
32
34
  }
33
- .ds-dropdown__button {
34
- @apply w-fit print:text-base-content;
35
- &::marker {
36
- font-size: 0;
37
- }
38
- &::-webkit-details-marker {
39
- display: none;
40
- }
35
+ }
36
+ .ds-dropdown__button {
37
+ @apply w-fit print:text-base-content;
38
+ &::marker {
39
+ font-size: 0;
40
+ }
41
+ &::-webkit-details-marker {
42
+ display: none;
41
43
  }
42
- .ds-dropdown__button.ds-link + .ds-dropdown__content {
43
- @apply mt-4 print:text-base-content;
44
+ }
45
+ .ds-dropdown__button.ds-link + .ds-dropdown__content {
46
+ @apply mt-4 print:text-base-content;
47
+ }
48
+ .ds-btn-group .ds-btn + .ds-dropdown__content {
49
+ @apply mt-4;
50
+ }
51
+ .ds-dropdown__content {
52
+ @apply util-dropdown__content border p-4 border-t-0 w-max;
53
+ -webkit-box-box-shadow:
54
+ 0 2px 8px rgba(var(--color-base-900-rgb), 0.3),
55
+ 0 -2px 0 var(--color-base-500);
56
+ &.ds-dropdown__content--full-width {
57
+ @apply util-dropdown__content--full-width;
44
58
  }
45
- .ds-btn-group .ds-btn + .ds-dropdown__content {
46
- @apply mt-4;
59
+ &.ds-dropdown__content--scrollable {
60
+ @apply overflow-y-auto util-dropdown__content--scrollable;
47
61
  }
48
- .ds-dropdown__content {
49
- @apply border border-base-400 p-4 bg-base-100 border-t-0
50
- max-w-xs w-max min-w-full absolute transition z-3 mr-4 -mt-4;
51
- -webkit-box-box-shadow:
52
- 0 2px 8px rgba(var(--color-base-900-rgb), 0.3),
53
- 0 -2px 0 var(--color-base-500);
54
- box-shadow:
55
- 0 2px 8px rgba(var(--color-base-900-rgb), 0.3),
56
- 0 -2px 0 var(--color-base-500);
57
- &.ds-dropdown__content--full-width {
58
- @apply min-w-full;
59
- }
60
- *:last-child {
61
- @apply mb-0;
62
- }
62
+ *:last-child {
63
+ @apply mb-0;
63
64
  }
64
65
  }
65
66
 
@@ -108,8 +109,7 @@
108
109
  }
109
110
  }
110
111
  .ds-svg-icon {
111
- @apply w-5 h-6 md:h-8;
112
- @apply print:hidden;
112
+ @apply w-5 h-6 md:h-8 min-w-4 print:hidden;
113
113
  }
114
114
  }
115
115
  .ds-dropdown__content {
@@ -121,6 +121,12 @@
121
121
  }
122
122
  > .ds-nav__list {
123
123
  @apply w-auto -mx-4 flex-col;
124
+ &:nth-child(1) {
125
+ @apply -mt-4;
126
+ }
127
+ &:last-child {
128
+ @apply -mb-4 !important;
129
+ }
124
130
  .ds-nav__list-item {
125
131
  @apply border-b border-base-300 py-2 px-4;
126
132
  &:last-child {