@digigov/css 2.0.0-cbc56209 → 2.0.0-fec6f1f7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digigov/css",
3
- "version": "2.0.0-cbc56209",
3
+ "version": "2.0.0-fec6f1f7",
4
4
  "description": "Digigov CSS - Tailwind CSS Components",
5
5
  "author": "GRNET Devs <devs@lists.grnet.gr>",
6
6
  "license": "BSD-2-Clause",
@@ -55,7 +55,7 @@
55
55
  "rimraf": "3.0.2",
56
56
  "publint": "0.1.8",
57
57
  "stylelint": "15.11.0",
58
- "stylelint-plugin-digigov": "1.0.0",
58
+ "stylelint-plugin-digigov": "1.1.0-fec6f1f7",
59
59
  "prettier": "3.2.5"
60
60
  },
61
61
  "dependencies": {
@@ -57,9 +57,12 @@
57
57
  }
58
58
  }
59
59
  .ds-accordion__section-summary {
60
- @apply py-4 pr-8 hover:bg-base-200 transition ease-in-out cursor-pointer;
61
- @apply mb-0;
60
+ @apply py-4 pr-8 mb-0 transition ease-in-out cursor-pointer;
61
+ background: var(--accordion__section-summary-background);
62
62
  list-style: none;
63
+ &:hover {
64
+ background: var(--accordion__section-summary-background-hover);
65
+ }
63
66
  &::-webkit-details-marker {
64
67
  @apply hidden;
65
68
  }
@@ -3,7 +3,8 @@
3
3
  border-bottom-style: solid;
4
4
  }
5
5
  .ds-admin-header__content {
6
- @apply px-4 py-2 mx-auto max-w-full w-full flex justify-between items-center;
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;
7
8
  }
8
9
 
9
10
  /* overrides */
@@ -13,7 +14,7 @@
13
14
  @apply print:hidden;
14
15
  }
15
16
  .ds-dropdown__button.ds-link {
16
- @apply text-lg text-white focus:text-base-content print:text-base-800;
17
+ @apply text-lg text-white focus:text-base-content print:text-base-800 text-right;
17
18
  }
18
19
  .ds-link {
19
20
  &:hover {
@@ -1,13 +1,11 @@
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;
8
- clip: 'rect(0 0 0 0)';
9
- margin-bottom: '-1px';
10
- margin-right: '-1px';
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
+ clip: "rect(0 0 0 0)";
11
9
  }
12
10
  .ds-autocomplete__hint {
13
11
  @apply absolute text-base-400;
@@ -19,40 +17,76 @@
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;
24
+ -webkit-box-shadow: inset 0 0 0 2px;
29
25
  box-shadow: inset 0 0 0 2px;
30
26
  }
31
- &.ds-autocomplete__input--show-all-values {
32
- @apply cursor-text;
33
- }
34
27
  }
35
- .ds-autocomplete__dropdown-arrow-down {
36
- @apply inline-block absolute right-2 top-4 w-6 h-6 cursor-pointer;
28
+ .ds-autocomplete__container > .ds-svg-icon {
29
+ @apply inline-block absolute right-2 top-3;
30
+ pointer-events: none;
37
31
  }
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;
32
+ .ds-autocomplete__multi-input-container > .ds-link {
33
+ @apply inline-block absolute right-2 top-4;
34
+ .ds-svg-icon {
35
+ @apply ml-0 fill-base-content;
42
36
  }
43
- &.ds-autocomplete__menu--overlay {
44
- @apply absolute w-full left-0 top-full z-50 shadow-xl;
37
+ }
38
+ .ds-autocomplete__multi-input-container {
39
+ @apply w-full p-2 pr-8 border-2 border-base-content bg-base-100
40
+ flex gap-2 flex-wrap items-center;
41
+ min-height: 52px;
42
+ text-indent: 2px;
43
+ &:focus,
44
+ &.ds-autocomplete__multi-input-container--focused {
45
+ outline: 4px solid var(--color-focus);
46
+ outline-offset: 0;
47
+ -webkit-box-shadow: inset 0 0 0 2px;
48
+ box-shadow: inset 0 0 0 2px;
45
49
  }
46
- &.ds-autocomplete__menu--visible {
47
- @apply block;
50
+ &:not(.ds-autocomplete__multi-input-container--focused) {
51
+ &.ds-autocomplete__multi-input-container--1 {
52
+ .ds-chip + .ds-chip {
53
+ @apply hidden;
54
+ }
55
+ }
56
+ &.ds-autocomplete__multi-input-container--2 {
57
+ .ds-chip + .ds-chip + .ds-chip {
58
+ @apply hidden;
59
+ }
60
+ }
61
+ &.ds-autocomplete__multi-input-container--3 {
62
+ .ds-chip + .ds-chip + .ds-chip + .ds-chip {
63
+ @apply hidden;
64
+ }
65
+ }
48
66
  }
67
+ }
68
+ .ds-autocomplete__multi-input {
69
+ @apply flex-1 w-full focus:border-0 focus:outline-0 bg-base-100;
70
+ }
71
+ .ds-autocomplete__multi-btn {
72
+ @apply absolute bottom-0 right-0 m-2;
73
+ margin: 4px 2px;
74
+ height: 44px;
75
+ .ds-svg-icon {
76
+ @apply mx-2 !important;
77
+ }
78
+ }
79
+
80
+ .ds-autocomplete__menu {
81
+ @apply block max-h-96 w-full m-0 p-0 overflow-x-hidden
82
+ border-2 border-t-0 border-base-content bg-base-100
83
+ absolute left-0 top-full z-50 shadow-xl;
49
84
  &.ds-autocomplete__menu--hidden {
50
85
  @apply hidden;
51
86
  }
52
87
  }
53
88
  .ds-autocomplete__option {
54
- @apply cursor-pointer block relative p-2;
55
- border-bottom: solid var(--color-base-400);
89
+ @apply cursor-pointer block relative p-2 border-b-base-400;
56
90
  border-width: 1px 0;
57
91
  &.ds-autocomplete__option--odd {
58
92
  @apply bg-base-300;
@@ -74,12 +108,24 @@
74
108
  }
75
109
  .ds-autocomplete__option > * {
76
110
  @apply pointer-events-none;
111
+ &:first-of-type,
112
+ &:last-of-type {
113
+ @apply border-t-0;
114
+ }
115
+ }
116
+ .ds-autocomplete__option--odd {
117
+ @apply bg-base-300;
118
+ }
119
+ .ds-autocomplete__option--focused,
120
+ .ds-autocomplete__option:hover {
121
+ @apply bg-info text-white outline-none border-tertiary;
77
122
  }
78
- .ds-autocomplete__option:first-of-type {
79
- @apply border-t-0;
123
+ .ds-autocomplete__option--no-results {
124
+ @apply text-current cursor-not-allowed;
80
125
  }
81
- .ds-autocomplete__option:last-of-type {
82
- @apply border-t-0;
126
+ .ds-autocomplete__option--empty {
127
+ @apply cursor-default hover:border-base-400;
128
+ @apply bg-base-100 text-base-content !important;
83
129
  }
84
130
  .ds-autocomplete__hint,
85
131
  .ds-autocomplete__option {
@@ -36,7 +36,7 @@
36
36
  .ds-btn-primary[type='reset'] {
37
37
  @apply hover:no-underline
38
38
  print:border-2 print:border-success print:shadow-none;
39
- box-shadow: 0 2px 0 var(--color-base-content);
39
+ box-shadow: var(--btn-primary-box-shadow);
40
40
  background-color: var(--btn-primary-background-color);
41
41
  color: var(--btn-primary-color);
42
42
  &:hover {
@@ -61,7 +61,7 @@
61
61
  .ds-btn-secondary[type='reset'] {
62
62
  @apply hover:no-underline
63
63
  print:border-2 print:border-base-700 print:shadow-none;
64
- box-shadow: 0 2px 0 var(--color-base-500);
64
+ box-shadow: var(--btn-secondary-box-shadow);
65
65
  background-color: var(--btn-secondary-background-color);
66
66
  color: var(--btn-secondary-color);
67
67
  &:hover {
@@ -78,7 +78,7 @@
78
78
  .ds-btn-warning[type='reset'] {
79
79
  @apply hover:no-underline
80
80
  print:border-2 print:border-error print:shadow-none;
81
- box-shadow: 0 2px 0 var(--color-base-content);
81
+ box-shadow: var(--btn-warning-box-shadow);
82
82
  background-color: var(--btn-warning-background-color);
83
83
  color: var(--btn-warning-color);
84
84
  &:hover {
@@ -95,10 +95,6 @@
95
95
  print:text-base-400 print:border-opacity-50;
96
96
  @apply cursor-not-allowed !important;
97
97
  }
98
- .ds-svg-icon--caret {
99
- @apply w-4 h-4 inline-block;
100
- fill: var(--color-base-content);
101
- }
102
98
  .ds-close-btn {
103
99
  @apply flex flex-nowrap text-right w-max float-right items-center;
104
100
  }
@@ -110,7 +106,14 @@
110
106
  @apply h-4 w-4 inline transition-all;
111
107
  }
112
108
  }
113
- .ds-btn-primary,
109
+ .ds-btn-primary {
110
+ .ds-svg-icon {
111
+ fill: var(--btn-primary-color);
112
+ }
113
+ .ds-svg-icon--more-vert {
114
+ @apply h-6 w-6 md:h-8 md:w-8;
115
+ }
116
+ }
114
117
  .ds-btn-warning {
115
118
  .ds-svg-icon {
116
119
  fill: var(--color-white);
@@ -121,11 +124,11 @@
121
124
  }
122
125
  .ds-btn-cta {
123
126
  &:hover {
124
- .ds-svg-icon--chevron {
127
+ .ds-svg-icon {
125
128
  @apply ml-4 mr-0;
126
129
  }
127
130
  }
128
- .ds-svg-icon--chevron {
131
+ .ds-svg-icon {
129
132
  @apply w-5 h-5 inline-block ml-2 mr-2 transition-all;
130
133
  }
131
134
  }
@@ -1,5 +1,6 @@
1
1
  .ds-card {
2
2
  @apply mb-7 text-base-content;
3
+ border-radius: var(--card-border-radius);
3
4
  &.ds-card--dense,
4
5
  .ds-dense & {
5
6
  @apply mb-5;
@@ -28,6 +29,7 @@
28
29
  }
29
30
  }
30
31
  &.ds-card--divider {
32
+ --card-border-radius: 0;
31
33
  @apply border-b border-base-300 pb-4 mb-4;
32
34
  }
33
35
  &.ds-card--cta {
@@ -1,5 +1,5 @@
1
1
  .ds-chips {
2
- @apply flex flex-wrap list-none gap-2;
2
+ @apply flex flex-wrap list-none gap-2 items-center;
3
3
  &.ds-chips--horizontal {
4
4
  @apply md:flex md:flex-row md:flex-wrap;
5
5
  }
@@ -35,6 +35,9 @@
35
35
  &::marker {
36
36
  font-size: 0;
37
37
  }
38
+ &::-webkit-details-marker {
39
+ display: none;
40
+ }
38
41
  }
39
42
  .ds-dropdown__button.ds-link + .ds-dropdown__content {
40
43
  @apply mt-4 print:text-base-content;
@@ -54,6 +57,9 @@
54
57
  &.ds-dropdown__content--full-width {
55
58
  @apply min-w-full;
56
59
  }
60
+ &.ds-dropdown__content--scrollable {
61
+ @apply overflow-y-auto max-h-96;
62
+ }
57
63
  *:last-child {
58
64
  @apply mb-0;
59
65
  }
@@ -105,8 +111,7 @@
105
111
  }
106
112
  }
107
113
  .ds-svg-icon {
108
- @apply w-5 h-6 md:h-8;
109
- @apply print:hidden;
114
+ @apply w-5 h-6 md:h-8 min-w-4 print:hidden;
110
115
  }
111
116
  }
112
117
  .ds-dropdown__content {
@@ -118,6 +123,12 @@
118
123
  }
119
124
  > .ds-nav__list {
120
125
  @apply w-auto -mx-4 flex-col;
126
+ &:nth-child(1) {
127
+ @apply -mt-4;
128
+ }
129
+ &:last-child {
130
+ @apply -mb-4 !important;
131
+ }
121
132
  .ds-nav__list-item {
122
133
  @apply border-b border-base-300 py-2 px-4;
123
134
  &:last-child {
@@ -61,10 +61,7 @@
61
61
  }
62
62
  .ds-input__search-btn {
63
63
  @apply shadow-none !important;
64
- @apply border-b-2 border-base-content rounded-none
65
- px-4 py-2 w-min m-0 ml-3
66
- flex gap-2
67
- hover:bg-success-hover active:bg-success-hover hover:no-underline;
64
+ @apply px-4 py-2 w-min m-0 ml-3 flex gap-2;
68
65
  }
69
66
  .ds-search {
70
67
  @apply flex w-full max-w-3xl;
@@ -1,6 +1,9 @@
1
1
  .ds-footer {
2
- @apply border-0 border-solid font-normal text-base py-4 md:py-8
3
- border-t-4 border-tertiary text-base-800 bg-base-200 w-full
2
+ border: var(--footer-border);
3
+ border-width: var(--footer-border-width);
4
+ background-color: var(--footer-background-color);
5
+ color: var(--footer-color);
6
+ @apply font-normal text-base py-4 md:py-8 w-full
4
7
  print:py-2 print:bg-white print:border-t-2;
5
8
  }
6
9
  .ds-footer__info {
@@ -40,12 +43,15 @@
40
43
  }
41
44
  }
42
45
  .ds-footer__link {
43
- @apply underline;
46
+ text-decoration: var(--footer__link-text-decoration);
47
+
44
48
  &:hover {
49
+ text-decoration: var(--footer__link-text-decoration-hover);
45
50
  text-decoration-thickness: 2px;
46
- color: var(--color-base-800);
51
+ color:var(--footer__link-color-hover);
47
52
  }
48
53
  &:focus {
54
+ color:var(--footer__link-color-focus);
49
55
  background-color: var(--color-focus) !important;
50
56
  box-shadow:
51
57
  0 -2px var(--color-focus),
@@ -94,6 +100,11 @@
94
100
  @apply print:hidden;
95
101
  }
96
102
  .ds-link {
103
+ --link-color:var(--color-footer);
104
+ @apply print:text-base-content;
105
+ }
106
+ .ds-body {
107
+ --body-color:var(--color-footer);
97
108
  @apply print:text-base-content;
98
109
  }
99
110
  }
@@ -30,6 +30,12 @@
30
30
  line-height: var(--label-line-height);
31
31
  letter-spacing: var(--label-letter-spacing);
32
32
  }
33
+ .ds-input {
34
+ border-radius: var(--input-border-radius);
35
+ }
36
+ .ds-textarea {
37
+ border-radius: var(--textarea-border-radius);
38
+ }
33
39
  .ds-input,
34
40
  .ds-select,
35
41
  .ds-textarea {
@@ -76,6 +82,7 @@
76
82
  @apply flex flex-wrap gap-y-2;
77
83
  }
78
84
  .ds-select {
85
+ border-radius: var(--select-border-radius);
79
86
  @apply w-auto max-w-full;
80
87
  }
81
88
  .ds-select__option {
@@ -1,14 +1,19 @@
1
1
  .ds-header {
2
- @apply relative bg-primary border-b-8 print:border-b-2 border-tertiary print:bg-white;
3
- border-bottom-style: solid;
2
+ @apply relative border-b-8 print:border-b-2 border-tertiary print:bg-white;
3
+ background: var(--header-background);
4
+ border: var(--header-border);
5
+ border-width: var(--header-border-width);
4
6
  }
5
7
  .ds-header__content {
6
- @apply px-4 py-2 mx-auto max-w-5xl w-full flex justify-between items-center
8
+ @apply px-4 py-2 mx-auto max-w-5xl w-full flex justify-between items-center flex-wrap sm:flex-nowrap
7
9
  print:px-0 gap-3;
8
10
  }
9
11
  .ds-header__section {
10
12
  @apply flex justify-start flex-wrap items-center gap-x-4 gap-y-2
11
13
  print:gap-1;
14
+ &:last-child:not(:first-child) {
15
+ @apply flex-1 justify-end sm:flex-none sm:justify-start;
16
+ }
12
17
  }
13
18
  .ds-header__logo {
14
19
  @apply h-12 print:hidden;
@@ -27,11 +32,13 @@
27
32
  text-decoration: none;
28
33
  }
29
34
  .ds-header__title {
30
- @apply text-white font-bold text-2xl leading-10 tracking-wide no-underline
35
+ @apply font-bold text-2xl leading-10 tracking-wide no-underline
31
36
  w-auto align-middle hover:no-underline
32
37
  print:text-base-content;
38
+ color: var(--header__title-color);
33
39
  &:hover {
34
- @apply text-white;
40
+ /* @apply text-white; */
41
+ color: var(--header__title-color-hover);
35
42
  }
36
43
  &:focus {
37
44
  text-decoration: none;
@@ -50,7 +57,8 @@
50
57
  .ds-header__section {
51
58
  > .ds-link,
52
59
  > .ds-dropdown .ds-dropdown__button.ds-link {
53
- @apply text-white focus:text-link-active print:text-base-content;
60
+ @apply focus:text-link-active print:text-base-content;
61
+ color: var(--color-header-text);
54
62
  }
55
63
  }
56
64
  .ds-dropdown {
@@ -62,7 +70,7 @@
62
70
  .ds-link {
63
71
  &:hover {
64
72
  .ds-svg-icon {
65
- fill: var(--color-white);
73
+ fill: var(--color-header-text-hover);
66
74
  }
67
75
  }
68
76
  &:focus {
@@ -75,7 +83,8 @@
75
83
  }
76
84
  }
77
85
  .ds-phase-banner__text {
78
- @apply text-white print:text-base-content;
86
+ @apply print:text-base-content;
87
+ color: var(--color-header-text);
79
88
  }
80
89
  }
81
90
  .ds-header__section {
@@ -88,12 +97,12 @@
88
97
  .ds-header__section {
89
98
  > .ds-svg-icon--burger {
90
99
  @apply float-right focus:bg-focus;
91
- fill: var(--color-white);
100
+ fill: var(--color-header-text);
92
101
  }
93
102
  > .ds-close-btn {
94
103
  @apply sm:hidden;
95
104
  .ds-svg-icon--close {
96
- fill: var(--color-link) !important;
105
+ fill: var(--color-header-text) !important;
97
106
  }
98
107
  }
99
108
  > .ds-nav__list {
@@ -101,16 +110,16 @@
101
110
  > .ds-nav__list-item-link,
102
111
  > .ds-nav__list-item-btn {
103
112
  &:not(:focus) {
104
- @apply text-white;
113
+ color: var(--color-header-text);
105
114
  }
106
115
  }
107
116
  > .ds-nav__list-item-link--active,
108
117
  > .ds-nav__list-item-btn--active {
109
118
  &:not(:focus) {
110
- @apply text-white !important;
119
+ color: var(--color-header-text) !important;
111
120
  }
112
121
  .ds-svg-icon {
113
- fill: var(--color-white);
122
+ fill: var(--color-header-text);
114
123
  }
115
124
  }
116
125
  }
@@ -29,11 +29,11 @@
29
29
  stroke-miterlimit: 10;
30
30
  stroke-width: 42px;
31
31
  &.ds-circular-progress__circle--1 {
32
- stroke: var(--color-secondary);
32
+ stroke: var(--circular-progress__circle--1-stroke);
33
33
  }
34
34
  &.ds-circular-progress__circle--2 {
35
35
  --full-length: 470;
36
- stroke: var(--color-primary);
36
+ stroke: var(--circular-progress__circle--2-stroke);
37
37
  stroke-dasharray: var(--full-length);
38
38
  stroke-dashoffset: 0;
39
39
  animation: dash 4s ease-in-out 0s forwards infinite;
@@ -1,5 +1,6 @@
1
1
  .ds-notification-banner {
2
2
  @apply border-5 mb-6 md:mb-8 font-normal print:bg-white;
3
+ border-radius: var(--notification-banner-border-radius);
3
4
  &.ds-notification-banner--dense,
4
5
  .ds-dense & {
5
6
  @apply border-4 mb-4 md:mb-5;
@@ -2,6 +2,7 @@
2
2
  @apply box-border mb-4 p-8 border-5 border-transparent text-center
3
3
  print:p-4 text-white
4
4
  print:border-4 print:text-base-content print:bg-white;
5
+ border-radius: var(--panel-border-radius);
5
6
  &.ds-panel--success {
6
7
  @apply bg-success print:border-success;
7
8
  }
@@ -95,14 +95,14 @@
95
95
  @apply block;
96
96
  }
97
97
  .ds-table__cell[data-label]::before {
98
- @apply block font-semibold;
98
+ @apply block font-semibold mb-2;
99
99
  content: attr(data-label);
100
100
  }
101
101
  }
102
102
  &.ds-table--stacked-sm {
103
103
  @media (min-width: 640px) {
104
104
  .ds-table__cell[data-label]::before {
105
- content: none;
105
+ content: none !important;
106
106
  }
107
107
  }
108
108
  .ds-table__header,
@@ -121,14 +121,14 @@
121
121
  @apply block sm:table-cell;
122
122
  }
123
123
  .ds-table__cell[data-label]::before {
124
- @apply block font-semibold;
124
+ @apply block font-semibold mb-2;
125
125
  content: attr(data-label);
126
126
  }
127
127
  }
128
128
  &.ds-table--stacked-md {
129
129
  @media (min-width: 768px) {
130
130
  .ds-table__cell[data-label]::before {
131
- content: none;
131
+ content: none !important;
132
132
  }
133
133
  }
134
134
  .ds-table__header,
@@ -147,7 +147,7 @@
147
147
  @apply block md:table-cell;
148
148
  }
149
149
  .ds-table__cell[data-label]::before {
150
- @apply block font-semibold;
150
+ @apply block font-semibold mb-2;
151
151
  content: attr(data-label);
152
152
  }
153
153
  }
@@ -258,9 +258,6 @@
258
258
  }
259
259
  }
260
260
  .ds-table__header {
261
- .ds-dropdown__content {
262
- @apply py-0;
263
- }
264
261
  .ds-dropdown__button:not(:focus) {
265
262
  @apply no-underline font-bold text-base-content !important;
266
263
  }
@@ -75,6 +75,7 @@
75
75
  .ds-tabs__panel {
76
76
  @apply bg-base-100 md:hidden block md:px-4 py-4 pt-8 md:border md:border-base-400 mb-0
77
77
  print:block print:border-0 print:py-3;
78
+ border-radius: var(--tabs__panel-border-radius);
78
79
  &.ds-tabs__panel--visible {
79
80
  @apply block;
80
81
  }
@@ -130,6 +130,7 @@ module.exports = {
130
130
  fit: "fit-content",
131
131
  },
132
132
  minWidth: {
133
+ 4: "1rem",
133
134
  10: "2.5rem",
134
135
  32: "8rem",
135
136
  52: "13rem",
@@ -1,8 +0,0 @@
1
- {
2
- "footer__copyright": {
3
- "font-size": {
4
- "xs": "var(--text-sm)",
5
- "md": "var(--text-base)"
6
- }
7
- }
8
- }