@odx/ui 1.0.0-rc.8 → 1.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 (74) hide show
  1. package/README.md +3 -2
  2. package/ag-grid-theme.css +1 -0
  3. package/core-theme.css +1 -1
  4. package/package.json +4 -1
  5. package/scss/3rdparty/ag-grid/theme.scss +220 -0
  6. package/scss/abstract/_breakpoints.scss +12 -6
  7. package/scss/abstract/_dimensions.scss +2 -1
  8. package/scss/abstract/_motion.scss +3 -1
  9. package/scss/abstract/_typography.scss +9 -5
  10. package/scss/abstract/_utils.scss +9 -1
  11. package/scss/assets/fonts/PangeaText-MediumWeb.woff2 +0 -0
  12. package/scss/assets/fonts/PangeaText-RegularWeb.woff2 +0 -0
  13. package/scss/assets/fonts/PangeaText-SemiBoldWeb.woff2 +0 -0
  14. package/scss/assets/icons.css.hbs +23 -0
  15. package/scss/assets/images/logo.svg +6 -0
  16. package/scss/cdk/active-indicator.scss +1 -1
  17. package/scss/cdk/connected-overlay.scss +2 -2
  18. package/scss/components/action-group.component.scss +3 -3
  19. package/scss/components/area-header.component.scss +15 -11
  20. package/scss/components/avatar.component.scss +6 -1
  21. package/scss/components/badge.component.scss +7 -16
  22. package/scss/components/bar.component.scss +93 -0
  23. package/scss/components/breadcrumbs.component.scss +30 -0
  24. package/scss/components/button-group.component.scss +14 -10
  25. package/scss/components/button.component.scss +26 -4
  26. package/scss/components/card.component.scss +174 -0
  27. package/scss/components/checkbox.component.scss +1 -0
  28. package/scss/components/chip.component.scss +1 -0
  29. package/scss/components/content-box.component.scss +20 -16
  30. package/scss/components/dropdown.component.scss +3 -1
  31. package/scss/components/expandable-list-item.component.scss +66 -0
  32. package/scss/components/form-field.component.scss +31 -3
  33. package/scss/components/header.component.scss +9 -3
  34. package/scss/components/icon.component.scss +5 -10
  35. package/scss/components/launch-tile.component.scss +9 -8
  36. package/scss/components/link.component.scss +8 -0
  37. package/scss/components/list-item.component.scss +1 -1
  38. package/scss/components/loading-spinner.component.scss +14 -3
  39. package/scss/components/logo.component.scss +6 -1
  40. package/scss/components/main-menu-button.component.scss +4 -0
  41. package/scss/components/main-menu-item.component.scss +10 -1
  42. package/scss/components/main-menu.component.scss +15 -8
  43. package/scss/components/mainfilter-group.component.scss +141 -0
  44. package/scss/components/menu.component.scss +52 -0
  45. package/scss/components/modal.component.scss +72 -13
  46. package/scss/components/navigation-back.component.scss +23 -0
  47. package/scss/components/select.component.scss +9 -7
  48. package/scss/components/slider.component.scss +1 -0
  49. package/scss/components/spinbox.component.scss +4 -0
  50. package/scss/components/switch.component.scss +2 -1
  51. package/scss/components/tab-bar-item.component.scss +1 -1
  52. package/scss/components/tab-bar.component.scss +1 -1
  53. package/scss/components/toast-item.component.scss +77 -0
  54. package/scss/components/toast.component.scss +33 -0
  55. package/scss/components/toggle-button-group.component.scss +5 -3
  56. package/scss/components/toggle-button.component.scss +21 -13
  57. package/scss/components/tooltip.component.scss +3 -2
  58. package/scss/core.scss +14 -11
  59. package/scss/layout/_description-list.scss +2 -1
  60. package/scss/layout/_helpers.scss +2 -0
  61. package/scss/layout/_layout.scss +4 -0
  62. package/scss/layout/_typography.scss +6 -4
  63. package/scss/reset.scss +1 -0
  64. package/scss/skeleton/_skeleton.scss +49 -0
  65. package/scss/variables/_color-palettes-dark.scss +53 -0
  66. package/scss/variables/_color-palettes.scss +1 -1
  67. package/scss/variables/_colors-dark.scss +43 -0
  68. package/scss/variables/_colors.scss +9 -3
  69. package/scss/variables/_controls.scss +11 -1
  70. package/scss/variables/_index.scss +2 -0
  71. package/scss/variables/_typography.scss +2 -2
  72. package/scss/variables/_visuals.scss +10 -3
  73. package/core-icons.css +0 -43
  74. package/core-icons.woff2 +0 -0
@@ -0,0 +1,30 @@
1
+ @use 'sass:math';
2
+ @use '../abstract/dimensions';
3
+ @use '../abstract/utils';
4
+ @use '../abstract/typography';
5
+
6
+ .odx-breadcrumbs {
7
+ @include dimensions.padding-x(1);
8
+ @include dimensions.padding-y(math.div(12, 24));
9
+ @include utils.vertical-center-content();
10
+
11
+ flex-wrap: wrap;
12
+ gap: dimensions.get-size(math.div(8, 24));
13
+
14
+ .odx-link {
15
+ &:last-child {
16
+ @include typography.font-weight(bold);
17
+
18
+ color: var(--odx-c-text);
19
+ }
20
+
21
+ &:visited {
22
+ color: var(--odx-c-link);
23
+ }
24
+ }
25
+
26
+ .odx-icon {
27
+ color: var(--gray-500);
28
+ font-size: dimensions.get-size(math.div(12, 24));
29
+ }
30
+ }
@@ -4,6 +4,7 @@
4
4
  @mixin buttons-radius($vertical: false, $reversed: false) {
5
5
  $start: 'first';
6
6
  $end: 'last';
7
+
7
8
  @if $reversed {
8
9
  $start: 'last';
9
10
  $end: 'first';
@@ -12,28 +13,28 @@
12
13
  @if $vertical {
13
14
  margin: 0;
14
15
 
15
- &:#{$start}-child {
16
+ &:#{$start}-of-type {
16
17
  border-bottom-left-radius: 0;
17
18
  border-bottom-right-radius: 0;
18
19
  }
19
20
 
20
- &:#{$end}-child {
21
+ &:#{$end}-of-type {
21
22
  border-top-left-radius: 0;
22
23
  border-top-right-radius: 0;
23
24
  }
24
25
  } @else {
25
- &:#{$start}-child {
26
+ &:#{$start}-of-type {
26
27
  border-bottom-right-radius: 0;
27
28
  border-top-right-radius: 0;
28
29
  }
29
30
 
30
- &:#{$end}-child {
31
+ &:#{$end}-of-type {
31
32
  border-bottom-left-radius: 0;
32
33
  border-top-left-radius: 0;
33
34
  }
34
35
  }
35
36
 
36
- &:not(:first-child, :last-child) {
37
+ &:not(:first-of-type, :last-of-type) {
37
38
  border-radius: 0;
38
39
  }
39
40
  }
@@ -66,11 +67,11 @@
66
67
  justify-content: flex-start;
67
68
  }
68
69
 
69
- &:not(#{&}--vertical, #{&}--reverse) .odx-button {
70
+ &:not(#{&}--vertical, #{&}--reverse) > .odx-button {
70
71
  @include buttons-radius();
71
72
  }
72
73
 
73
- &:not(#{&}--vertical)#{&}--reverse .odx-button {
74
+ &:not(#{&}--vertical)#{&}--reverse > .odx-button {
74
75
  @include buttons-radius(false, true);
75
76
  }
76
77
 
@@ -79,19 +80,22 @@
79
80
 
80
81
  flex-direction: column;
81
82
 
82
- .odx-button {
83
+ > .odx-button {
83
84
  @include dimensions.height(math.div(35, 24));
84
85
  }
85
86
  }
86
87
 
87
88
  &:not(#{&}--reverse)#{&}--vertical {
88
- .odx-button {
89
+ > .odx-button {
89
90
  @include buttons-radius(true);
90
91
  }
91
92
  }
92
93
 
93
94
  &#{&}--reverse#{&}--vertical {
94
- .odx-button {
95
+ display: inline-flex;
96
+ flex-direction: column-reverse;
97
+
98
+ > .odx-button {
95
99
  @include buttons-radius(true, true);
96
100
  }
97
101
  }
@@ -1,9 +1,12 @@
1
+ @use 'sass:map';
1
2
  @use 'sass:math';
3
+ @use '../abstract/breakpoints';
2
4
  @use '../abstract/dimensions';
3
5
  @use '../abstract/motion';
4
6
  @use '../abstract/typography';
5
7
  @use '../abstract/utils';
6
8
  @use 'avatar.component' as avatar;
9
+ @use 'dropdown.component' as dropdown;
7
10
  @use 'icon.component';
8
11
 
9
12
  .odx-button {
@@ -19,7 +22,7 @@
19
22
  @include typography.font-weight(medium);
20
23
  @include utils.center-content(true);
21
24
  @include utils.interactive($with-background: false);
22
- @include utils.with-outline-bold;
25
+ @include utils.with-outline-bold();
23
26
 
24
27
  border-radius: var(--odx-v-border-radius-controls);
25
28
  min-width: dimensions.get-size(1.5);
@@ -42,12 +45,28 @@
42
45
  }
43
46
 
44
47
  > .odx-avatar {
45
- @include avatar.avatar-size(1.5, math.div(32, 24), 0, 1);
48
+ @include avatar.avatar-size(1.5, math.div(32, 24), -1, 1);
46
49
  @include dimensions.margin-x(-2 * $icon-margin);
47
50
  }
48
51
 
52
+ &[data-breakpoint]:has(> .odx-icon, > .odx-avatar) {
53
+ min-width: dimensions.get-size(1.5);
54
+ }
55
+
56
+ @each $breakpoint in breakpoints.get-breakpoint-names() {
57
+ @include breakpoints.down($breakpoint) {
58
+ &[data-breakpoint='#{$breakpoint}'] {
59
+ font-size: 0;
60
+
61
+ > .odx-icon {
62
+ @include dimensions.margin-x(-$icon-margin);
63
+ }
64
+ }
65
+ }
66
+ }
67
+
49
68
  &--highlight:focus-visible {
50
- outline-color: var(--blue-400);
69
+ outline-color: var(--odx-c-focus-outline-dark);
51
70
  }
52
71
 
53
72
  @each $variant in $variants {
@@ -59,6 +78,7 @@
59
78
  background-color: var(--odx-c-#{$variant}-hover);
60
79
  }
61
80
 
81
+ &#{dropdown.$dropdown-open-selector},
62
82
  &:active {
63
83
  background-color: var(--odx-c-#{$variant}-active);
64
84
  }
@@ -72,7 +92,7 @@
72
92
  }
73
93
 
74
94
  &--ghost {
75
- @include utils.with-outline;
95
+ @include utils.with-outline();
76
96
 
77
97
  background-color: transparent;
78
98
  color: var(--odx-c-link);
@@ -86,6 +106,7 @@
86
106
  color: var(--odx-c-link-active);
87
107
  }
88
108
 
109
+ &#{dropdown.$dropdown-open-selector},
89
110
  &:focus-visible,
90
111
  &:active {
91
112
  background-color: var(--odx-c-focus);
@@ -100,6 +121,7 @@
100
121
 
101
122
  &--small {
102
123
  $icon-margin: math.div(1, 8);
124
+
103
125
  @include dimensions.height(1);
104
126
  @include dimensions.padding-x(2 * $icon-margin);
105
127
  @include typography.font-size(-1);
@@ -0,0 +1,174 @@
1
+ @use 'sass:math';
2
+ @use '../abstract/breakpoints';
3
+ @use '../abstract/dimensions';
4
+ @use '../abstract/motion';
5
+ @use '../abstract/typography';
6
+ @use '../abstract/utils';
7
+
8
+ .odx-card {
9
+ $root: &;
10
+ $main-padding: dimensions.get-size(math.div(12, 24));
11
+
12
+ @include motion.transition(box-shadow outline-color, color);
13
+ @include utils.interactive(false);
14
+ @include utils.with-outline-bold();
15
+
16
+ background-color: var(--odx-c-background-content);
17
+ behavior: button;
18
+ border-radius: var(--odx-v-border-radius);
19
+ display: block;
20
+ padding: $main-padding;
21
+ position: relative;
22
+
23
+ &.is-disabled * {
24
+ color: var(--odx-c-text-disabled);
25
+ }
26
+
27
+ &__container {
28
+ display: flex;
29
+ gap: $main-padding;
30
+
31
+ #{$root}--default & {
32
+ flex-direction: column;
33
+ }
34
+
35
+ @include breakpoints.up(phone) {
36
+ #{$root}--launch-tile-centered & {
37
+ flex-direction: column;
38
+ }
39
+ }
40
+ }
41
+
42
+ &__content {
43
+ padding-right: dimensions.get-size(math.div(40, 24));
44
+ }
45
+
46
+ &--default {
47
+ #{$root}__title {
48
+ line-height: dimensions.get-size(math.div(36, 24));
49
+ padding-right: dimensions.get-size(math.div(36, 24));
50
+
51
+ @include typography.font-weight(medium);
52
+ }
53
+ }
54
+
55
+ &:focus-visible,
56
+ &:hover,
57
+ &:focus-within:has(:focus-visible) {
58
+ box-shadow: var(--odx-v-box-shadow-layer-1);
59
+ }
60
+
61
+ &--launch-tile,
62
+ &--launch-tile-centered {
63
+ #{$root}__container {
64
+ @include dimensions.padding-y(0.5);
65
+ @include dimensions.padding-x(math.div(8, 24));
66
+
67
+ gap: dimensions.get-size(math.div(16, 24));
68
+
69
+ @include breakpoints.up(phone) {
70
+ @include dimensions.padding(1, bottom);
71
+
72
+ gap: dimensions.get-size(1);
73
+ }
74
+ }
75
+
76
+ .odx-avatar {
77
+ @include dimensions.container(math.div(64, 24));
78
+ @include dimensions.margin-y(math.div(4, 24));
79
+
80
+ flex: 0 0 auto;
81
+
82
+ @include breakpoints.up(phone) {
83
+ @include dimensions.container(math.div(128, 24));
84
+
85
+ margin: dimensions.get-size(math.div(4, 24)) auto 0;
86
+ }
87
+ }
88
+
89
+ #{$root}__title {
90
+ @include typography.font-weight(medium);
91
+
92
+ display: block;
93
+ font-size: dimensions.get-size(math.div(20, 24));
94
+ line-height: dimensions.get-size(math.div(30, 24));
95
+
96
+ @include breakpoints.up(phone) {
97
+ @include dimensions.margin-y(math.div(9, 24));
98
+
99
+ font-size: dimensions.get-size(math.div(25, 24));
100
+ }
101
+ }
102
+
103
+ #{$root}__subtitle {
104
+ display: block;
105
+ }
106
+
107
+ #{$root}__content {
108
+ flex: 1;
109
+ }
110
+ }
111
+
112
+ @include breakpoints.up(phone) {
113
+ &__content {
114
+ padding-right: unset;
115
+ }
116
+
117
+ &__title,
118
+ &__subtitle {
119
+ #{$root}--launch-tile-centered & {
120
+ text-align: center;
121
+ }
122
+ }
123
+
124
+ &__container {
125
+ padding-right: unset;
126
+
127
+ #{$root}--launch-tile & {
128
+ @include dimensions.padding-y(1);
129
+ }
130
+ #{$root}--launch-tile-centered & {
131
+ gap: dimensions.get-size(math.div(16, 24));
132
+ }
133
+ }
134
+ }
135
+
136
+ &__footer {
137
+ @include dimensions.padding-x(0.5);
138
+
139
+ display: flex;
140
+ gap: dimensions.get-size(math.div(12, 24));
141
+ justify-content: flex-end;
142
+
143
+ #{$root}--default & {
144
+ display: block;
145
+ margin-top: $main-padding;
146
+ }
147
+
148
+ @include breakpoints.up(phone) {
149
+ #{$root}--launch-tile-centered & {
150
+ justify-content: center;
151
+ }
152
+
153
+ padding-bottom: dimensions.get-size(math.div(12, 24));
154
+ }
155
+
156
+ .odx-button {
157
+ margin: 0;
158
+ }
159
+ }
160
+
161
+ .odx-card-menu {
162
+ margin: 0;
163
+ position: absolute;
164
+ right: $main-padding;
165
+ top: $main-padding;
166
+ }
167
+
168
+ &.is-disabled {
169
+ .odx-avatar {
170
+ color: var(--odx-c-text-disabled);
171
+ filter: saturate(0);
172
+ }
173
+ }
174
+ }
@@ -57,6 +57,7 @@
57
57
 
58
58
  > .odx-icon {
59
59
  $checkmark-size: math.div(18, 24);
60
+
60
61
  @include dimensions.container($checkmark-size);
61
62
  @include motion.transition(opacity);
62
63
 
@@ -9,6 +9,7 @@ $variants: 'secondary', 'highlight', 'success', 'danger';
9
9
 
10
10
  .odx-chip {
11
11
  $root: &;
12
+
12
13
  @include typography.font-weight(medium);
13
14
  @include motion.transition(background-color color);
14
15
 
@@ -17,34 +17,38 @@
17
17
  }
18
18
 
19
19
  &__header {
20
- @include dimensions.padding(1, ('top', 'right', 'left'));
21
- @include breakpoints.down(phone) {
22
- @include dimensions.padding(0.5, ('top', 'right', 'left'));
20
+ @include dimensions.padding(0.5, ('top', 'right', 'left'));
21
+
22
+ @include breakpoints.up(phone) {
23
+ @include dimensions.padding(1, ('top', 'right', 'left'));
23
24
  }
24
25
  }
25
26
 
26
27
  &__footer {
27
- @include dimensions.padding(1, ('right', 'bottom', 'left'));
28
- @include breakpoints.down(phone) {
29
- @include dimensions.padding(0.5, ('right', 'bottom', 'left'));
28
+ @include dimensions.padding(0.5, ('right', 'bottom', 'left'));
29
+
30
+ @include breakpoints.up(phone) {
31
+ @include dimensions.padding(1, ('right', 'bottom', 'left'));
30
32
  }
31
33
  }
32
34
 
33
35
  &__content {
34
- @include dimensions.padding(1);
35
- @include breakpoints.down(phone) {
36
- @include dimensions.padding(0.5);
36
+ @include dimensions.padding(0.5);
37
+
38
+ @include breakpoints.up(phone) {
39
+ @include dimensions.padding(1);
37
40
  }
38
41
  }
39
42
 
40
- .odx-area-header ~ &__content {
41
- padding-top: 0;
42
- }
43
+ > .odx-area-header {
44
+ @include dimensions.padding(0.5, ('top', 'bottom'));
43
45
 
44
- .odx-area-header {
45
- @include dimensions.padding(1, ('top', 'bottom'));
46
- @include breakpoints.down(phone) {
47
- @include dimensions.padding(0.5, ('top', 'bottom'));
46
+ @include breakpoints.up(phone) {
47
+ @include dimensions.padding(1, ('top', 'bottom'));
48
48
  }
49
49
  }
50
+
51
+ & > .odx-area-header ~ &__content {
52
+ padding-top: 0;
53
+ }
50
54
  }
@@ -1,10 +1,12 @@
1
1
  @use 'sass:math';
2
2
  @use '../abstract/dimensions';
3
3
 
4
+ $dropdown-open-selector: '.odx-dropdown-host[aria-expanded="true"]';
5
+
4
6
  .odx-dropdown {
5
7
  background-color: var(--odx-c-background-content);
6
8
  border-radius: var(--odx-v-border-radius);
7
- box-shadow: var(--odx-v-backdrop-box-shadow-layer-2);
9
+ box-shadow: var(--odx-v-box-shadow-layer-2);
8
10
  display: block;
9
11
  min-height: inherit;
10
12
 
@@ -0,0 +1,66 @@
1
+ @use 'sass:math';
2
+ @use '../abstract/motion';
3
+ @use '../abstract/dimensions';
4
+
5
+ .odx-expandable-list-item {
6
+ $root: &;
7
+
8
+ position: relative;
9
+
10
+ &::before {
11
+ @include motion.transition(border-color);
12
+
13
+ border-bottom: 1px solid var(--gray-200);
14
+ content: '';
15
+ display: block;
16
+ position: absolute;
17
+ top: 0;
18
+ width: calc(100% - #{dimensions.get-size(math.div(14, 24))});
19
+ }
20
+
21
+ &:hover,
22
+ &:focus-visible,
23
+ &:first-child {
24
+ &::before {
25
+ border-bottom-color: transparent;
26
+ }
27
+ }
28
+
29
+ &--danger + &::before,
30
+ &--expanded + &::before,
31
+ &:hover + &::before {
32
+ border-color: transparent;
33
+ }
34
+
35
+ &--danger {
36
+ &::before {
37
+ border-bottom-color: transparent;
38
+ }
39
+ }
40
+
41
+ &--expanded {
42
+ &::before {
43
+ border-bottom-color: transparent;
44
+ }
45
+ }
46
+
47
+ &__content {
48
+ flex: 1;
49
+ }
50
+
51
+ &__expand-icon {
52
+ @include motion.transition(transform);
53
+
54
+ position: relative;
55
+
56
+ #{$root}--expanded & {
57
+ transform: scaleY(-1);
58
+ }
59
+ }
60
+
61
+ &__slot {
62
+ .odx-list-item__content {
63
+ @include dimensions.padding(math.div(36, 24), left);
64
+ }
65
+ }
66
+ }
@@ -8,7 +8,7 @@ $form-field-label-height: math.div(20, 24);
8
8
  $form-field-hint-height: math.div(16, 24);
9
9
  $form-field-inner-padding: math.div(8, 24);
10
10
 
11
- :root {
11
+ body {
12
12
  --odx-form-field-hint-color: var(--gray-500);
13
13
  }
14
14
 
@@ -108,7 +108,7 @@ $form-field-inner-padding: math.div(8, 24);
108
108
  left: 0;
109
109
  position: absolute;
110
110
  width: 100%;
111
- z-index: 1;
111
+ z-index: var(--odx-v-layer-1);
112
112
  }
113
113
 
114
114
  #{$control-selector} {
@@ -155,6 +155,19 @@ $form-field-inner-padding: math.div(8, 24);
155
155
  }
156
156
  }
157
157
 
158
+ #{$root}.has-warning & {
159
+ background-color: var(--odx-input-control-background-color-warning);
160
+ outline-color: var(--odx-input-control-outline-color-warning);
161
+
162
+ &:hover {
163
+ background-color: var(--odx-input-control-background-color-warning);
164
+ }
165
+
166
+ &::after {
167
+ background-color: var(--odx-input-control-color-warning);
168
+ }
169
+ }
170
+
158
171
  #{$root}.is-disabled &,
159
172
  #{$root}.is-readonly & {
160
173
  &::after {
@@ -168,7 +181,7 @@ $form-field-inner-padding: math.div(8, 24);
168
181
  outline-color: var(--odx-input-control-outline-color-disabled);
169
182
 
170
183
  #{$control-selector} {
171
- @include utils.non-interactive;
184
+ @include utils.non-interactive();
172
185
 
173
186
  &::placeholder {
174
187
  color: var(--odx-input-control-color-disabled);
@@ -192,6 +205,17 @@ $form-field-inner-padding: math.div(8, 24);
192
205
  color: var(--odx-form-field-hint-color);
193
206
  text-align: right;
194
207
  }
208
+
209
+ &--simple {
210
+ padding: 0;
211
+
212
+ @include dimensions.margin-y(0.25);
213
+
214
+ #{$root}__label,
215
+ #{$root}__info {
216
+ display: none;
217
+ }
218
+ }
195
219
  }
196
220
 
197
221
  .odx-form-field.is-readonly,
@@ -206,3 +230,7 @@ $form-field-inner-padding: math.div(8, 24);
206
230
  .odx-form-field-error {
207
231
  color: var(--odx-input-control-color-error);
208
232
  }
233
+
234
+ .odx-form-field.has-warning .odx-form-field-error {
235
+ color: var(--odx-input-control-color-warning);
236
+ }
@@ -1,4 +1,5 @@
1
1
  @use 'sass:math';
2
+ @use '../abstract/breakpoints';
2
3
  @use '../abstract/dimensions';
3
4
  @use '../abstract/utils';
4
5
  @use '../abstract/typography';
@@ -17,8 +18,8 @@
17
18
  margin-right: dimensions.get-size(0.5);
18
19
  }
19
20
 
20
- &__title,
21
- .odx-logo {
21
+ > .odx-logo,
22
+ &__title {
22
23
  margin-right: auto;
23
24
  }
24
25
 
@@ -34,7 +35,12 @@
34
35
  padding-right: dimensions.get-size(0.5);
35
36
  }
36
37
 
37
- &__title ~ .odx-logo {
38
+ &:has(.odx-title) > .odx-logo {
38
39
  display: none;
40
+ margin-right: dimensions.get-size(0.5);
41
+
42
+ @include breakpoints.up(tablet) {
43
+ display: block;
44
+ }
39
45
  }
40
46
  }
@@ -2,18 +2,14 @@
2
2
  @use '../abstract/dimensions';
3
3
  @use '../abstract/utils';
4
4
 
5
- $icon-sizes: (small math.div(2, 3) 1, large math.div(4, 3) 2);
5
+ $icon-sizes: (small math.div(16, 24) 1, large math.div(32, 24) 2, xlarge math.div(48, 24) 2);
6
6
 
7
7
  .odx-icon {
8
8
  @include dimensions.container(1);
9
9
  @include utils.center-content(true);
10
10
 
11
- direction: ltr;
11
+ flex: 0 0 auto;
12
12
  font-size: dimensions.get-size(1);
13
- text-rendering: auto;
14
- text-transform: none;
15
- user-select: none;
16
- white-space: nowrap;
17
13
 
18
14
  @each $size, $size_factor, $factor in $icon-sizes {
19
15
  &--#{$size} {
@@ -27,9 +23,8 @@ $icon-sizes: (small math.div(2, 3) 1, large math.div(4, 3) 2);
27
23
  @include dimensions.margin-y(0);
28
24
 
29
25
  font-size: inherit;
30
- height: auto;
31
- line-height: inherit;
32
- vertical-align: -0.15em;
33
- width: auto;
26
+ height: 0.8em;
27
+ line-height: 0.8em;
28
+ width: 0.8em;
34
29
  }
35
30
  }