@aotearoan/neon 22.5.2 → 23.0.0

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 (50) hide show
  1. package/dist/components/feedback/alert/container/NeonAlertContainer.vue.cjs.js +1 -1
  2. package/dist/components/feedback/alert/container/NeonAlertContainer.vue.cjs.js.map +1 -1
  3. package/dist/components/feedback/alert/container/NeonAlertContainer.vue.es.js +30 -29
  4. package/dist/components/feedback/alert/container/NeonAlertContainer.vue.es.js.map +1 -1
  5. package/dist/components/layout/card-list/NeonCardList.vue.cjs.js +1 -1
  6. package/dist/components/layout/card-list/NeonCardList.vue.cjs.js.map +1 -1
  7. package/dist/components/layout/card-list/NeonCardList.vue.es.js +8 -6
  8. package/dist/components/layout/card-list/NeonCardList.vue.es.js.map +1 -1
  9. package/dist/components/navigation/link/NeonLink.cjs.js +1 -1
  10. package/dist/components/navigation/link/NeonLink.cjs.js.map +1 -1
  11. package/dist/components/navigation/link/NeonLink.es.js +6 -6
  12. package/dist/components/navigation/link/NeonLink.es.js.map +1 -1
  13. package/dist/components/navigation/tree-menu/NeonTreeMenu.vue.cjs.js +1 -1
  14. package/dist/components/navigation/tree-menu/NeonTreeMenu.vue.cjs.js.map +1 -1
  15. package/dist/components/navigation/tree-menu/NeonTreeMenu.vue.es.js +8 -7
  16. package/dist/components/navigation/tree-menu/NeonTreeMenu.vue.es.js.map +1 -1
  17. package/dist/components/presentation/image-carousel/NeonImageCarousel.vue.cjs.js +1 -1
  18. package/dist/components/presentation/image-carousel/NeonImageCarousel.vue.cjs.js.map +1 -1
  19. package/dist/components/presentation/image-carousel/NeonImageCarousel.vue.es.js +1 -0
  20. package/dist/components/presentation/image-carousel/NeonImageCarousel.vue.es.js.map +1 -1
  21. package/dist/components/user-input/button/NeonButton.vue.cjs.js +1 -1
  22. package/dist/components/user-input/button/NeonButton.vue.cjs.js.map +1 -1
  23. package/dist/components/user-input/button/NeonButton.vue.es.js +1 -0
  24. package/dist/components/user-input/button/NeonButton.vue.es.js.map +1 -1
  25. package/dist/components/user-input/filter-list/NeonFilterList.vue.cjs.js +1 -1
  26. package/dist/components/user-input/filter-list/NeonFilterList.vue.cjs.js.map +1 -1
  27. package/dist/components/user-input/filter-list/NeonFilterList.vue.es.js +1 -0
  28. package/dist/components/user-input/filter-list/NeonFilterList.vue.es.js.map +1 -1
  29. package/dist/src/common/models/NeonAlertMessage.d.ts +4 -0
  30. package/dist/src/components/feedback/alert/NeonAlert.d.ts +8 -0
  31. package/dist/src/components/feedback/dialog/NeonDialog.d.ts +24 -8
  32. package/dist/src/components/feedback/note/NeonNote.d.ts +8 -8
  33. package/dist/src/components/layout/card-list/NeonCardList.d.ts +8 -2
  34. package/dist/src/components/navigation/link/NeonLink.d.ts +4 -4
  35. package/dist/src/components/presentation/badge/NeonBadge.d.ts +6 -2
  36. package/dist/src/components/presentation/dropdown/NeonDropdown.d.ts +2 -6
  37. package/dist/src/components/user-input/filter-list/NeonFilterList.d.ts +6 -0
  38. package/dist/src/components/user-input/number/NeonNumber.d.ts +12 -4
  39. package/dist/src/components/user-input/search/NeonSearch.d.ts +6 -24
  40. package/package.json +1 -1
  41. package/src/sass/components/_action-menu.scss +1 -0
  42. package/src/sass/components/_alert-container.scss +45 -48
  43. package/src/sass/components/_button.scss +10 -3
  44. package/src/sass/components/_card-list.scss +0 -11
  45. package/src/sass/components/_link.scss +36 -52
  46. package/src/sass/components/_tabs.scss +2 -24
  47. package/src/sass/components/_toast-container.scss +15 -23
  48. package/src/sass/global/_base-html.scss +2 -30
  49. package/src/sass/includes/_outline.scss +6 -6
  50. package/src/sass/variables.scss +74 -34
@@ -1420,10 +1420,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
1420
1420
  };
1421
1421
  }>, {
1422
1422
  neonLink: import("vue").Ref<HTMLAnchorElement | null, HTMLAnchorElement | null>;
1423
- routerUrl: import("vue").ComputedRef<string | undefined>; /**
1424
- * The HTML autocomplete mode as specified <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values">here</a>.
1425
- * NOTE: No enum is provided in Neon as some values can be used in combination, please refer to the full list of values in the preceding link.
1426
- */
1423
+ routerUrl: import("vue").ComputedRef<string | undefined>;
1427
1424
  sanitizedAttributes: import("vue").ComputedRef<{
1428
1425
  [x: string]: unknown;
1429
1426
  }>;
@@ -2244,10 +2241,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
2244
2241
  };
2245
2242
  }>, {
2246
2243
  neonLink: import("vue").Ref<HTMLAnchorElement | null, HTMLAnchorElement | null>;
2247
- routerUrl: import("vue").ComputedRef<string | undefined>; /**
2248
- * The HTML autocomplete mode as specified <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values">here</a>.
2249
- * NOTE: No enum is provided in Neon as some values can be used in combination, please refer to the full list of values in the preceding link.
2250
- */
2244
+ routerUrl: import("vue").ComputedRef<string | undefined>;
2251
2245
  sanitizedAttributes: import("vue").ComputedRef<{
2252
2246
  [x: string]: unknown;
2253
2247
  }>;
@@ -3830,10 +3824,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
3830
3824
  };
3831
3825
  }>, {
3832
3826
  neonLink: import("vue").Ref<HTMLAnchorElement | null, HTMLAnchorElement | null>;
3833
- routerUrl: import("vue").ComputedRef<string | undefined>; /**
3834
- * The HTML autocomplete mode as specified <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values">here</a>.
3835
- * NOTE: No enum is provided in Neon as some values can be used in combination, please refer to the full list of values in the preceding link.
3836
- */
3827
+ routerUrl: import("vue").ComputedRef<string | undefined>;
3837
3828
  sanitizedAttributes: import("vue").ComputedRef<{
3838
3829
  [x: string]: unknown;
3839
3830
  }>;
@@ -4654,10 +4645,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4654
4645
  };
4655
4646
  }>, {
4656
4647
  neonLink: import("vue").Ref<HTMLAnchorElement | null, HTMLAnchorElement | null>;
4657
- routerUrl: import("vue").ComputedRef<string | undefined>; /**
4658
- * The HTML autocomplete mode as specified <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values">here</a>.
4659
- * NOTE: No enum is provided in Neon as some values can be used in combination, please refer to the full list of values in the preceding link.
4660
- */
4648
+ routerUrl: import("vue").ComputedRef<string | undefined>;
4661
4649
  sanitizedAttributes: import("vue").ComputedRef<{
4662
4650
  [x: string]: unknown;
4663
4651
  }>;
@@ -7164,10 +7152,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
7164
7152
  };
7165
7153
  }>, {
7166
7154
  neonLink: import("vue").Ref<HTMLAnchorElement | null, HTMLAnchorElement | null>;
7167
- routerUrl: import("vue").ComputedRef<string | undefined>; /**
7168
- * The HTML autocomplete mode as specified <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values">here</a>.
7169
- * NOTE: No enum is provided in Neon as some values can be used in combination, please refer to the full list of values in the preceding link.
7170
- */
7155
+ routerUrl: import("vue").ComputedRef<string | undefined>;
7171
7156
  sanitizedAttributes: import("vue").ComputedRef<{
7172
7157
  [x: string]: unknown;
7173
7158
  }>;
@@ -7988,10 +7973,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
7988
7973
  };
7989
7974
  }>, {
7990
7975
  neonLink: import("vue").Ref<HTMLAnchorElement | null, HTMLAnchorElement | null>;
7991
- routerUrl: import("vue").ComputedRef<string | undefined>; /**
7992
- * The HTML autocomplete mode as specified <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values">here</a>.
7993
- * NOTE: No enum is provided in Neon as some values can be used in combination, please refer to the full list of values in the preceding link.
7994
- */
7976
+ routerUrl: import("vue").ComputedRef<string | undefined>;
7995
7977
  sanitizedAttributes: import("vue").ComputedRef<{
7996
7978
  [x: string]: unknown;
7997
7979
  }>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aotearoan/neon",
3
3
  "description": "Neon is a lightweight design library of Vue 3 components with minimal dependencies.",
4
- "version": "22.5.2",
4
+ "version": "23.0.0",
5
5
  "main": "./dist/neon.cjs.js",
6
6
  "module": "./dist/neon.es.js",
7
7
  "types": "./dist/src/neon.d.ts",
@@ -13,6 +13,7 @@
13
13
  font-weight: var(--neon-font-weight-normal);
14
14
  user-select: none;
15
15
  max-width: none;
16
+ width: 100%;
16
17
  justify-content: space-between;
17
18
 
18
19
  &:not(.neon-action-menu__link--selected):not(.neon-action-menu__link--disabled) {
@@ -2,7 +2,6 @@
2
2
  @use '../includes/layout';
3
3
  @use '../includes/responsive';
4
4
  @use '../includes/scrollbars';
5
- @use '../includes/outline';
6
5
  @use '../includes/svg';
7
6
 
8
7
  @mixin alert-container {
@@ -13,7 +12,7 @@
13
12
  pointer-events: none;
14
13
  touch-action: none;
15
14
  width: var(--neon-width-alert);
16
- max-width: var(--neon-width-alert);
15
+ max-width: min(var(--neon-width-alert), 100%);
17
16
 
18
17
  @include layout.max-height(100);
19
18
 
@@ -60,17 +59,20 @@
60
59
  }
61
60
 
62
61
  &__message {
62
+ --neon-rgb-link: var(--neon-rgb-inverse);
63
63
  pointer-events: visible;
64
64
  touch-action: auto;
65
65
  height: 100%;
66
66
  min-height: var(--neon-space-80);
67
67
  margin: var(--neon-space-4);
68
+ padding: var(--neon-padding-alert);
68
69
  border-radius: var(--neon-border-radius-alert);
69
70
  display: flex;
70
71
  flex-direction: row;
71
- justify-content: flex-start;
72
+ gap: var(--neon-gap-alert);
73
+ justify-content: center;
74
+ align-items: center;
72
75
  position: relative;
73
- font-size: var(--neon-font-size-m);
74
76
  box-shadow: var(--neon-box-shadow-alert);
75
77
  overflow: hidden;
76
78
 
@@ -79,99 +81,94 @@
79
81
 
80
82
  &.neon-alert__message--#{$color} {
81
83
  background-color: var(--neon-background-color-alert-#{$color});
82
- @include svg.color-with-svg(rgb($alert-rgb));
84
+ @include svg.color-with-svg(var(--neon-color-alert-#{$color}));
83
85
  color: var(--neon-color-inverse);
84
86
 
85
- &:focus-within:not(.neon-alert__message--with-actions) {
86
- @include outline.box-shadow-outline($alert-rgb);
87
- }
88
-
89
87
  .neon-alert__title {
90
- color: rgb(var(--neon-rgb-alert-#{$color}));
88
+ color: var(--neon-color-alert-#{$color});
91
89
  }
92
90
 
93
91
  .neon-alert__actions {
94
- border-left: var(--neon-border-width-alert) var(--neon-border-style) rgba($alert-rgb, var(--neon-border-opacity-alert-action));
95
-
96
92
  .neon-alert__action {
97
93
  transition: all var(--neon-animation-speed-fast) ease-in-out;
98
- color: rgba($alert-rgb, 0.5);
94
+ color: var(--neon-color-alert-#{$color});
99
95
 
100
96
  &:focus,
101
97
  &:hover {
102
- color: rgb($alert-rgb);
98
+ color: var(--neon-color-alert-#{$color});
103
99
  text-decoration: none;
104
- background-color: rgba($alert-rgb, 0.125);
100
+ background-color: var(--neon-background-color-alert-#{$color});
105
101
  }
106
102
  }
107
103
  }
108
-
109
- .neon-alert__action + .neon-alert__action {
110
- border-top: var(--neon-border-width-alert) var(--neon-border-style) rgba($alert-rgb, var(--neon-border-opacity-alert-action));
111
- }
112
104
  }
113
105
  }
114
106
 
115
- &--dismissable:not(.neon-alert__message--with-actions) {
107
+ &--dismissible:not(.neon-alert__message--with-actions) {
116
108
  cursor: pointer;
117
109
  }
118
110
 
119
- .neon-icon {
120
- min-width: var(--neon-space-32);
121
- width: var(--neon-space-32);
122
- min-height: var(--neon-space-32);
123
- height: var(--neon-space-32);
124
- margin: var(--neon-space-8) var(--neon-space-8) var(--neon-space-8) var(--neon-space-12);
111
+ &-icon {
112
+ min-width: var(--neon-size-alert-icon);
113
+ width: var(--neon-size-alert-icon);
114
+ min-height: var(--neon-size-alert-icon);
115
+ height: var(--neon-size-alert-icon);
125
116
  align-self: center;
126
117
  }
127
118
  }
128
119
 
129
120
  &__title {
130
- line-height: var(--neon-line-height-one);
131
- font-size: var(--neon-font-size-m);
132
- font-weight: var(--neon-font-weight-semi-bold);
133
- font-family: var(--neon-font-family-heading);
134
- letter-spacing: var(--neon-letter-spacing-m);
121
+ line-height: var(--neon-line-height-alert-title);
122
+ font-size: var(--neon-font-size-alert-title);
123
+ font-weight: var(--neon-font-weight-alert-title);
124
+ font-family: var(--neon-font-family-alert-title);
125
+ letter-spacing: var(--neon-letter-spacing-alert-title);
126
+ }
127
+
128
+ &__close {
129
+ min-width: var(--neon-size-alert-close-icon);
130
+ width: var(--neon-size-alert-close-icon);
131
+ min-height: var(--neon-size-alert-close-icon);
132
+ height: var(--neon-size-alert-close-icon);
133
+ outline: none;
134
+ cursor: pointer;
135
135
  }
136
136
 
137
137
  &__body {
138
- font-size: var(--neon-font-size-s);
138
+ line-height: var(--neon-line-height-alert-body);
139
+ font-size: var(--neon-font-size-alert-body);
140
+ font-weight: var(--neon-font-weight-alert-body);
141
+ font-family: var(--neon-font-family-alert-body);
142
+ letter-spacing: var(--neon-letter-spacing-alert-body);
139
143
  }
140
144
 
141
145
  .neon-alert__actions {
142
- margin-left: var(--neon-space-8);
146
+ flex-direction: row;
143
147
 
144
148
  .neon-alert__action {
145
149
  padding: var(--neon-space-8);
146
- font-size: var(--neon-font-size-xs);
150
+ font-size: var(--neon-font-size-alert-action);
147
151
  text-transform: uppercase;
148
- letter-spacing: var(--neon-letter-spacing-m);
152
+ letter-spacing: var(--neon-letter-spacing-alert-action);
149
153
  height: 100%;
150
154
  display: flex;
151
155
  align-items: center;
152
- width: var(--neon-width-alert-action);
153
156
  justify-content: center;
154
- font-weight: var(--neon-font-weight-semi-bold);
155
-
156
- &:focus {
157
- border-radius: 0;
158
-
159
- &:first-child {
160
- border-top-right-radius: calc(2 * var(--neon-border-radius));
161
- }
157
+ font-weight: var(--neon-font-weight-alert-action);
162
158
 
163
- &:last-child {
164
- border-bottom-right-radius: calc(2 * var(--neon-border-radius));
159
+ &:focus-visible {
160
+ .neon-alert__action-label {
161
+ outline: none;
162
+ text-decoration: underline;
165
163
  }
166
164
  }
167
165
  }
168
166
  }
169
167
 
170
168
  &__content {
171
- padding-top: var(--neon-space-8);
172
- padding-bottom: var(--neon-space-8);
173
169
  justify-content: center;
174
170
  flex: 1 1 auto;
171
+ gap: var(--neon-space-4);
175
172
  outline: none;
176
173
  }
177
174
  }
@@ -190,6 +190,7 @@
190
190
  margin-left: 0;
191
191
  margin-right: 0;
192
192
  cursor: pointer;
193
+ text-decoration: none;
193
194
  font-family: var(--neon-font-family-body);
194
195
 
195
196
  &--s {
@@ -290,13 +291,19 @@
290
291
  &--#{$color} {
291
292
  &.neon-button--solid:not(.neon-button--disabled) {
292
293
  @if ($color == 'inverse') {
293
- color: var(--neon-color-solid-button-inverse);
294
+ .neon-button__label {
295
+ color: var(--neon-color-solid-button-inverse);
296
+ }
294
297
  @include svg.color-with-svg(var(--neon-color-solid-button-inverse));
295
298
  } @else if ($color == 'low-contrast') {
296
- color: var(--neon-color-solid-button-inverse);
299
+ .neon-button__label {
300
+ color: var(--neon-color-solid-button-inverse);
301
+ }
297
302
  @include svg.color-with-svg(var(--neon-color-solid-button-inverse));
298
303
  } @else {
299
- color: var(--neon-color-solid-button);
304
+ .neon-button__label {
305
+ color: var(--neon-color-solid-button);
306
+ }
300
307
  @include svg.color-with-svg(var(--neon-color-solid-button));
301
308
  }
302
309
 
@@ -24,17 +24,6 @@
24
24
  .neon-link {
25
25
  width: 100%;
26
26
  min-width: 100%;
27
-
28
- &::after {
29
- display: none;
30
- }
31
-
32
- &:hover,
33
- &:focus {
34
- &::after {
35
- display: none;
36
- }
37
- }
38
27
  }
39
28
  }
40
29
 
@@ -1,24 +1,19 @@
1
1
  @use '../includes/outline';
2
2
 
3
- %neon-link-no-style {
3
+ @mixin neon-link-style {
4
4
  cursor: pointer;
5
- text-decoration: none;
5
+ position: relative;
6
+ align-items: center;
6
7
 
7
8
  &:not(.neon-button) {
9
+ display: inline-flex;
8
10
  width: fit-content;
9
11
 
10
- &:hover:not(:active) {
11
- text-decoration: none;
12
- }
13
- }
14
- }
15
-
16
- a[href]:not(.neon-link--no-style) {
17
- @extend %neon-link-no-style;
18
-
19
- &:not(.neon-button) {
20
12
  color: var(--neon-color-link);
21
13
  transition: color ease-in-out var(--neon-animation-speed-fast);
14
+ text-decoration: underline;
15
+ text-underline-offset: var(--neon-text-underline-offset-link);
16
+ text-decoration-thickness: var(--neon-text-decoration-thickness-link);
22
17
  opacity: 1;
23
18
 
24
19
  &:visited {
@@ -28,53 +23,42 @@ a[href]:not(.neon-link--no-style) {
28
23
  &:active,
29
24
  &:hover {
30
25
  color: var(--neon-color-link-hover);
26
+ text-decoration-thickness: var(--neon-text-decoration-thickness-link-hover);
31
27
  }
32
- }
33
- }
34
-
35
- @mixin link {
36
- .neon-link {
37
- position: relative;
38
- display: inline-flex;
39
- cursor: pointer;
40
- align-items: center;
41
-
42
- @include outline.focus-outline-styles(var(--neon-rgb-link));
43
-
44
- &:not(.neon-link--no-style) {
45
- @extend %neon-link-no-style;
46
-
47
- &:not(.neon-button) {
48
- color: var(--neon-color-link);
49
- transition: color ease-in-out var(--neon-animation-speed-fast);
50
- opacity: 1;
51
-
52
- &:visited {
53
- color: var(--neon-color-link-visited);
54
- }
55
28
 
56
- &:active,
57
- &:hover {
58
- color: var(--neon-color-link-hover);
59
- }
29
+ &:focus-visible {
30
+ &:not(.neon-link--no-style) {
31
+ outline: none;
32
+ text-decoration: none;
33
+ background-color: var(--neon-color-link);
34
+ color: var(--neon-color-inverse);
60
35
  }
61
36
  }
37
+ }
62
38
 
63
- &--outline-text {
64
- &:after {
65
- height: var(--neon-border-width-link);
66
- background-color: var(--neon-color-link);
67
- }
39
+ &.neon-link--no-style {
40
+ text-decoration: none;
68
41
 
69
- &:hover {
70
- color: var(--neon-color-link-hover);
42
+ &,
43
+ &:visited,
44
+ &:active,
45
+ &:hover {
46
+ color: inherit;
47
+ }
71
48
 
72
- &:after {
73
- background-color: var(--neon-color-link-hover);
74
- height: var(--neon-border-width-link-hover);
75
- }
76
- }
49
+ &.neon-link {
50
+ @include outline.focus-outline-styles(var(--neon-rgb-link));
77
51
  }
52
+ }
53
+ }
54
+
55
+ a[href] {
56
+ @include neon-link-style;
57
+ }
58
+
59
+ @mixin link {
60
+ .neon-link {
61
+ @include neon-link-style;
78
62
 
79
63
  &__external-indicator {
80
64
  width: var(--neon-font-size-s);
@@ -96,7 +80,7 @@ a[href]:not(.neon-link--no-style) {
96
80
  }
97
81
 
98
82
  &:hover,
99
- &:focus {
83
+ &:focus-visible {
100
84
  &:after {
101
85
  width: calc(100% - 4.5 * var(--neon-space-4));
102
86
  }
@@ -32,12 +32,6 @@
32
32
  background-color: $tab-hover-color;
33
33
  }
34
34
  }
35
-
36
- .neon-tab {
37
- &:focus-visible:before {
38
- background-color: $tab-hover-color;
39
- }
40
- }
41
35
  }
42
36
  }
43
37
 
@@ -49,8 +43,8 @@
49
43
  }
50
44
 
51
45
  .neon-tabs__menu-item {
52
- --neon-border-width-link: 0rem;
53
- --neon-border-width-link-hover: 0rem;
46
+ --neon-text-decoration-thickness-link: 0rem;
47
+ --neon-text-decoration-thickness-link-hover: 0rem;
54
48
 
55
49
  text-decoration: none;
56
50
  position: relative;
@@ -197,24 +191,8 @@
197
191
  display: flex;
198
192
  }
199
193
 
200
- &:before {
201
- content: '';
202
- position: absolute;
203
- top: var(--neon-base-space);
204
- right: 0;
205
- width: calc(2 * var(--neon-base-space));
206
- height: calc(2 * var(--neon-base-space));
207
- border-radius: var(--neon-border-radius);
208
- display: flex;
209
- transition: all var(--neon-animation-speed-fast) ease-in-out;
210
- }
211
-
212
194
  &:focus-visible {
213
195
  outline: none;
214
-
215
- &:before {
216
- background-color: var(--neon-color-low-contrast);
217
- }
218
196
  }
219
197
  }
220
198
 
@@ -22,57 +22,49 @@
22
22
  .neon-toast__message {
23
23
  pointer-events: visible;
24
24
  touch-action: auto;
25
- height: var(--neon-size-l);
26
25
  min-width: var(--neon-width-toast);
27
26
  margin: var(--neon-space-4);
28
27
  overflow: hidden;
29
- border-radius: calc(2 * var(--neon-border-radius));
28
+ border-radius: var(--neon-border-radius-toast);
30
29
  display: flex;
31
30
  flex-direction: row;
31
+ gap: var(--neon-gap-toast);
32
32
  align-items: center;
33
33
  justify-content: space-between;
34
34
  position: relative;
35
- padding: var(--neon-space-12) calc(3.5 * var(--neon-space-4));
35
+ padding: var(--neon-padding-toast);
36
36
  box-shadow: var(--neon-box-shadow-alert);
37
37
 
38
38
  @each $color in palettes.$alert-colors {
39
- $alert-background-rgb: var(--neon-rgb-#{$color});
40
-
41
39
  &.neon-toast__message--#{$color} {
42
- background-color: rgb($alert-background-rgb);
40
+ background-color: var(--neon-background-color-toast-#{$color});
43
41
  @include svg.color-with-svg(var(--neon-color-toast-#{$color}));
44
42
 
45
43
  &:focus-within {
46
- @include outline.box-shadow-outline($alert-background-rgb);
44
+ @include outline.box-shadow-outline(var(--neon-rgb-#{$color}));
47
45
  }
48
46
  }
49
47
  }
50
48
 
51
- &--dismissable {
49
+ &--dismissible {
52
50
  cursor: pointer;
53
51
  }
54
52
 
55
53
  .neon-toast__close {
56
- min-width: var(--neon-font-size-l);
57
- width: var(--neon-font-size-l);
58
- min-height: var(--neon-font-size-l);
59
- height: var(--neon-font-size-l);
60
- margin-left: calc(3.5 * var(--neon-space-4));
61
- opacity: 0.5;
54
+ min-width: var(--neon-size-toast-close-icon);
55
+ width: var(--neon-size-toast-close-icon);
56
+ min-height: var(--neon-size-toast-close-icon);
57
+ height: var(--neon-size-toast-close-icon);
62
58
  outline: none;
63
59
  }
64
-
65
- &:hover {
66
- .neon-toast__close {
67
- opacity: 1;
68
- }
69
- }
70
60
  }
71
61
 
72
62
  .neon-toast__title {
73
- line-height: var(--neon-line-height-one);
74
- font-size: var(--neon-font-size-m);
75
- font-weight: var(--neon-font-weight-normal);
63
+ line-height: var(--neon-line-height-toast);
64
+ font-size: var(--neon-font-size-toast);
65
+ font-weight: var(--neon-font-weight-toast);
66
+ font-family: var(--neon-font-family-toast);
67
+ letter-spacing: var(--neon-letter-spacing-toast);
76
68
  }
77
69
  }
78
70
  }
@@ -34,41 +34,13 @@
34
34
 
35
35
  ol {
36
36
  padding: 0;
37
- list-style: none;
38
- counter-reset: li;
39
37
  display: flex;
40
38
  flex-direction: column;
39
+ gap: var(--neon-space-16);
41
40
 
42
41
  > li {
43
- counter-increment: li;
44
42
  max-width: var(--neon-max-paragraph-width);
45
- margin-left: var(--neon-space-32);
46
-
47
- &::before {
48
- display: inline-flex;
49
- content: counter(li);
50
- margin-right: var(--neon-space-16);
51
- width: var(--neon-space-24);
52
- justify-content: flex-start;
53
- font-variant: tabular-nums;
54
- color: var(--neon-color-neutral);
55
- position: absolute;
56
- left: var(--neon-space-24);
57
- }
58
- }
59
-
60
- > li:nth-child(1),
61
- > li:nth-child(2),
62
- > li:nth-child(3),
63
- > li:nth-child(4),
64
- > li:nth-child(5),
65
- > li:nth-child(6),
66
- > li:nth-child(7),
67
- > li:nth-child(8),
68
- > li:nth-child(9) {
69
- &::before {
70
- content: "0" counter(li);
71
- }
43
+ margin-left: var(--neon-space-16);
72
44
  }
73
45
  }
74
46
 
@@ -12,7 +12,7 @@
12
12
  font-weight: var(--neon-font-weight-semi-bold);
13
13
  position: absolute;
14
14
  left: 0;
15
- bottom: var(--neon-border-bottom-offset-link);
15
+ bottom: var(--neon-text-underline-offset-link);
16
16
  width: 100%;
17
17
  height: var(--neon-border-width-outline);
18
18
  display: flex;
@@ -21,7 +21,7 @@
21
21
  transition: background-color var(--neon-animation-speed-slow) ease-in-out, color var(--neon-animation-speed-slow) ease-in-out;
22
22
  }
23
23
 
24
- &:focus {
24
+ &:focus-visible {
25
25
  color: rgb($outline-rgb);
26
26
 
27
27
  &:after {
@@ -33,7 +33,7 @@
33
33
 
34
34
  @mixin focus-border-outline($outline-rgb) {
35
35
  &--outline-border {
36
- &:focus {
36
+ &:focus-visible {
37
37
  @include box-shadow-outline($outline-rgb);
38
38
  }
39
39
  }
@@ -57,7 +57,7 @@
57
57
  background-color: transparent;
58
58
  }
59
59
 
60
- &:focus {
60
+ &:focus-visible {
61
61
  &:before {
62
62
  width: var(--neon-space-8);
63
63
  height: var(--neon-space-8);
@@ -72,14 +72,14 @@
72
72
  &--outline-background {
73
73
  transition: all var(--neon-animation-speed-fast) ease-in-out;
74
74
 
75
- &:focus {
75
+ &:focus-visible {
76
76
  background-color: rgba($outline-rgb, 0.125);
77
77
  }
78
78
  }
79
79
  }
80
80
 
81
81
  @mixin focus-outline-styles($outline-rgb) {
82
- &:focus {
82
+ &:focus-visible {
83
83
  outline: none;
84
84
  }
85
85