@lumx/core 2.0.3 → 2.1.0-alpha-css-test2

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 (37) hide show
  1. package/css/_retro-compat-v2.css +117 -0
  2. package/css/design-tokens.css +768 -92
  3. package/css/material.css +56 -57
  4. package/js/constants/design-tokens.js +3406 -414
  5. package/js/constants/design-tokens.min.js +1 -1
  6. package/js/constants/design-tokens.min.js.map +1 -1
  7. package/js/constants/design-tokens.ts +3386 -394
  8. package/lumx.css +1 -1
  9. package/lumx.min.css +1 -1
  10. package/package.json +2 -2
  11. package/scss/_design-tokens.scss +1670 -224
  12. package/scss/_retro-compat-v2.scss +95 -0
  13. package/scss/components/button/_index.scss +6 -42
  14. package/scss/components/button/_mixins.scss +144 -29
  15. package/scss/components/checkbox/_mixins.scss +9 -9
  16. package/scss/components/chip/_index.scss +2 -2
  17. package/scss/components/chip/_mixins.scss +2 -2
  18. package/scss/components/image-block/_index.scss +4 -5
  19. package/scss/components/input-helper/_mixins.scss +3 -3
  20. package/scss/components/input-label/_mixins.scss +3 -3
  21. package/scss/components/progress/_index.scss +2 -2
  22. package/scss/components/radio-button/_mixins.scss +12 -12
  23. package/scss/components/select/_index.scss +99 -10
  24. package/scss/components/select/_mixins.scss +6 -1
  25. package/scss/components/skeleton/_index.scss +2 -2
  26. package/scss/components/switch/_mixins.scss +15 -15
  27. package/scss/components/tabs/_index.scss +27 -55
  28. package/scss/components/tabs/_mixins.scss +66 -31
  29. package/scss/components/text-field/_index.scss +114 -9
  30. package/scss/components/text-field/_mixins.scss +42 -66
  31. package/scss/components/user-block/_index.scss +2 -9
  32. package/scss/core/base/_variables.scss +1 -0
  33. package/scss/core/state/_mixins.scss +11 -7
  34. package/scss/core/typography/_index.scss +9 -2
  35. package/scss/core/typography/_mixins.scss +13 -4
  36. package/scss/core/typography/_variables.scss +2 -1
  37. package/scss/lumx.scss +4 -0
@@ -0,0 +1,95 @@
1
+ /**
2
+ * List of deprecated v2 variables that have been removed or renamed.
3
+ * Warning: These will be removed in the next major version.
4
+ */
5
+ $lumx-button-font-weight: $lumx-typography-font-weight-bold;
6
+ $lumx-button-text-transform: $lumx-material-button-text-transform;
7
+ $lumx-button-variant-icon-border-radius: 50%;
8
+ $lumx-button-size-m-font-size: $lumx-typography-custom-button-size-m-font-size;
9
+ $lumx-button-size-s-font-size: $lumx-typography-custom-button-size-s-font-size;
10
+ $lumx-checkbox-wrapper-size: $lumx-material-checkbox-wrapper-size;
11
+ $lumx-checkbox-control-size: $lumx-material-checkbox-control-size;
12
+ $lumx-chip-size-m-height: $lumx-material-chip-size-m-height;
13
+ $lumx-chip-size-m-border-radius: $lumx-material-chip-size-m-border-radius;
14
+ $lumx-chip-size-m-padding-vertical: $lumx-material-chip-size-m-padding-vertical;
15
+ $lumx-chip-size-s-height: $lumx-material-chip-size-s-height;
16
+ $lumx-chip-size-s-border-radius: $lumx-material-chip-size-s-border-radius;
17
+ $lumx-chip-size-s-padding-vertical: $lumx-material-chip-size-s-padding-vertical;
18
+ $lumx-input-helper-font-size: $lumx-material-input-helper-font-size;
19
+ $lumx-input-helper-font-weight: $lumx-material-input-helper-font-weight;
20
+ $lumx-input-helper-line-height: $lumx-material-input-helper-line-height;
21
+ $lumx-input-label-font-size: $lumx-material-input-label-font-size;
22
+ $lumx-input-label-font-weight: $lumx-material-input-label-font-weight;
23
+ $lumx-input-label-line-height: $lumx-material-input-label-line-height;
24
+ $lumx-radio-button-wrapper-size: $lumx-material-radio-button-wrapper-size;
25
+ $lumx-radio-button-control-size: $lumx-material-radio-button-control-size;
26
+ $lumx-radio-button-indicator-size: $lumx-material-radio-button-indicator-size;
27
+ $lumx-switch-wrapper-width: $lumx-material-switch-wrapper-width;
28
+ $lumx-switch-wrapper-height: $lumx-material-switch-wrapper-height;
29
+ $lumx-switch-control-width: $lumx-material-switch-control-width;
30
+ $lumx-switch-control-height: $lumx-material-switch-control-height;
31
+ $lumx-switch-indicator-size: $lumx-material-switch-indicator-size;
32
+ $lumx-switch-indicator-offset: $lumx-material-switch-indicator-offset;
33
+ $lumx-text-field-padding-top: $lumx-material-text-field-padding-top;
34
+ $lumx-text-field-padding-bottom: $lumx-material-text-field-padding-bottom;
35
+ $lumx-text-field-header-margin-bottom: $lumx-material-text-field-header-wrapper-margin-bottom;
36
+ $lumx-text-field-label-font-size: $lumx-material-text-field-header-label-font-size;
37
+ $lumx-text-field-label-font-weight: $lumx-material-text-field-header-label-font-weight;
38
+ $lumx-text-field-label-line-height: $lumx-material-text-field-header-label-line-height;
39
+ $lumx-text-field-wrapper-min-height: $lumx-text-field-input-min-height;
40
+ $lumx-text-field-wrapper-border-radius: $lumx-text-field-input-border-radius;
41
+ $lumx-text-field-wrapper-padding-vertical: $lumx-spacing-unit-tiny;
42
+ $lumx-text-field-wrapper-padding-horizontal: $lumx-text-field-input-padding-horizontal;
43
+ $lumx-text-field-state-default-border-top-width: $lumx-text-field-state-default-input-border-top-width;
44
+ $lumx-text-field-state-default-border-right-width: $lumx-text-field-state-default-input-border-right-width;
45
+ $lumx-text-field-state-default-border-bottom-width: $lumx-text-field-state-default-input-border-bottom-width;
46
+ $lumx-text-field-state-default-border-left-width: $lumx-text-field-state-default-input-border-left-width;
47
+ $lumx-text-field-state-default-theme-light-background-color: $lumx-text-field-state-default-theme-light-input-background-color;
48
+ $lumx-text-field-state-default-theme-light-border-color: $lumx-text-field-state-default-theme-light-input-border-color;
49
+ $lumx-text-field-state-default-theme-dark-background-color: $lumx-text-field-state-default-theme-dark-input-background-color;
50
+ $lumx-text-field-state-default-theme-dark-border-color: $lumx-text-field-state-default-theme-dark-input-border-color;
51
+ $lumx-text-field-state-hover-theme-light-background-color: $lumx-text-field-state-hover-theme-light-input-background-color;
52
+ $lumx-text-field-state-hover-theme-dark-background-color: $lumx-text-field-state-hover-theme-dark-input-background-color;
53
+ $lumx-text-field-state-focus-border-top-width: $lumx-text-field-state-focus-input-border-top-width;
54
+ $lumx-text-field-state-focus-border-right-width: $lumx-text-field-state-focus-input-border-right-width;
55
+ $lumx-text-field-state-focus-border-bottom-width: $lumx-text-field-state-focus-input-border-bottom-width;
56
+ $lumx-text-field-state-focus-border-left-width: $lumx-text-field-state-focus-input-border-left-width;
57
+ $lumx-text-field-state-focus-theme-light-background-color: $lumx-text-field-state-focus-theme-light-input-background-color;
58
+ $lumx-text-field-state-focus-theme-light-border-color: $lumx-text-field-state-focus-theme-light-input-border-color;
59
+ $lumx-text-field-state-focus-theme-dark-background-color: $lumx-text-field-state-focus-theme-dark-input-background-color;
60
+ $lumx-text-field-state-focus-theme-dark-border-color: $lumx-text-field-state-focus-theme-dark-input-border-color;
61
+ $lumx-text-field-input-icon-size: $lumx-size-xs;
62
+ $lumx-text-field-input-font-size: $lumx-material-text-field-input-content-font-size;
63
+ $lumx-text-field-input-font-weight: $lumx-material-text-field-input-content-font-weight;
64
+ $lumx-text-field-input-line-height: $lumx-material-text-field-input-content-line-height;
65
+ $lumx-text-field-input-validity-size: $lumx-size-xxs;
66
+ $lumx-text-field-input-clear-size: $lumx-size-s;
67
+ $lumx-progress-bounce: $lumx-material-progress-bounce;
68
+ $lumx-progress-rotate: $lumx-material-progress-rotate;
69
+ $lumx-typography-style-display1-font-size: $lumx-typography-interface-display1-font-size;
70
+ $lumx-typography-style-display1-font-weight: $lumx-typography-interface-display1-font-weight;
71
+ $lumx-typography-style-display1-line-height: $lumx-typography-interface-display1-line-height;
72
+ $lumx-typography-style-headline-font-size: $lumx-typography-interface-headline-font-size;
73
+ $lumx-typography-style-headline-font-weight: $lumx-typography-interface-headline-font-weight;
74
+ $lumx-typography-style-headline-line-height: $lumx-typography-interface-headline-line-height;
75
+ $lumx-typography-style-title-font-size: $lumx-typography-interface-title-font-size;
76
+ $lumx-typography-style-title-font-weight: $lumx-typography-interface-title-font-weight;
77
+ $lumx-typography-style-title-line-height: $lumx-typography-interface-title-line-height;
78
+ $lumx-typography-style-subtitle2-font-size: $lumx-typography-interface-subtitle2-font-size;
79
+ $lumx-typography-style-subtitle2-font-weight: $lumx-typography-interface-subtitle2-font-weight;
80
+ $lumx-typography-style-subtitle2-line-height: $lumx-typography-interface-subtitle2-line-height;
81
+ $lumx-typography-style-subtitle1-font-size: $lumx-typography-interface-subtitle1-font-size;
82
+ $lumx-typography-style-subtitle1-font-weight: $lumx-typography-interface-subtitle1-font-weight;
83
+ $lumx-typography-style-subtitle1-line-height: $lumx-typography-interface-subtitle1-line-height;
84
+ $lumx-typography-style-body2-font-size: $lumx-typography-interface-body2-font-size;
85
+ $lumx-typography-style-body2-font-weight: $lumx-typography-interface-body2-font-weight;
86
+ $lumx-typography-style-body2-line-height: $lumx-typography-interface-body2-line-height;
87
+ $lumx-typography-style-body1-font-size: $lumx-typography-interface-body1-font-size;
88
+ $lumx-typography-style-body1-font-weight: $lumx-typography-interface-body1-font-weight;
89
+ $lumx-typography-style-body1-line-height: $lumx-typography-interface-body1-line-height;
90
+ $lumx-typography-style-caption-font-size: $lumx-typography-interface-caption-font-size;
91
+ $lumx-typography-style-caption-font-weight: $lumx-typography-interface-caption-font-weight;
92
+ $lumx-typography-style-caption-line-height: $lumx-typography-interface-caption-line-height;
93
+ $lumx-typography-style-overline-font-size: $lumx-typography-interface-overline-font-size;
94
+ $lumx-typography-style-overline-font-weight: $lumx-typography-interface-overline-font-weight;
95
+ $lumx-typography-style-overline-line-height: $lumx-typography-interface-overline-line-height;
@@ -3,7 +3,6 @@
3
3
  ========================================================================== */
4
4
 
5
5
  .#{$lumx-base-prefix}-button {
6
- @include lumx-state-transition;
7
6
  @include lumx-button-base;
8
7
 
9
8
  .#{$lumx-base-prefix}-badge {
@@ -72,32 +71,6 @@
72
71
  }
73
72
  }
74
73
 
75
- /* Button reduced spacing
76
- ========================================================================== */
77
-
78
- .#{$lumx-base-prefix}-button--variant-button.#{$lumx-base-prefix}-button--emphasis-high,
79
- .#{$lumx-base-prefix}-button--variant-button.#{$lumx-base-prefix}-button--emphasis-medium {
80
- &.#{$lumx-base-prefix}-button--size-m {
81
- &.#{$lumx-base-prefix}-button--has-left-icon {
82
- @include lumx-button-reduced-spacing(lumx-base-const('size', 'M'), lumx-base-const('position', 'LEFT'));
83
- }
84
-
85
- &.#{$lumx-base-prefix}-button--has-right-icon {
86
- @include lumx-button-reduced-spacing(lumx-base-const('size', 'M'), lumx-base-const('position', 'RIGHT'));
87
- }
88
- }
89
-
90
- &.#{$lumx-base-prefix}-button--size-s {
91
- &.#{$lumx-base-prefix}-button--has-left-icon {
92
- @include lumx-button-reduced-spacing(lumx-base-const('size', 'S'), lumx-base-const('position', 'LEFT'));
93
- }
94
-
95
- &.#{$lumx-base-prefix}-button--has-right-icon {
96
- @include lumx-button-reduced-spacing(lumx-base-const('size', 'S'), lumx-base-const('position', 'RIGHT'));
97
- }
98
- }
99
- }
100
-
101
74
  /* Button colors
102
75
  ========================================================================== */
103
76
 
@@ -121,26 +94,17 @@
121
94
 
122
95
  @each $key, $color in $lumx-color-palette {
123
96
  .#{$lumx-base-prefix}-button--color-#{$key} {
124
- &.#{$lumx-base-prefix}-button--emphasis-medium {
97
+ &:not(.#{$lumx-base-prefix}-button--is-selected).#{$lumx-base-prefix}-button--emphasis-medium {
125
98
  @include lumx-button-color(lumx-base-const('emphasis', 'MEDIUM'), $key);
126
99
  }
127
100
 
128
- &.#{$lumx-base-prefix}-button--emphasis-low {
101
+ &:not(.#{$lumx-base-prefix}-button--is-selected).#{$lumx-base-prefix}-button--emphasis-low {
129
102
  @include lumx-button-color(lumx-base-const('emphasis', 'LOW'), $key);
130
103
  }
131
- }
132
- }
133
104
 
134
- /* Toggle button
135
- ========================================================================== */
136
-
137
- .#{$lumx-base-prefix}-button--is-selected {
138
- &.#{$lumx-base-prefix}-button--color-dark {
139
- @include lumx-button-is-selected(lumx-base-const('theme', 'LIGHT'));
140
- }
141
-
142
- &.#{$lumx-base-prefix}-button--color-light {
143
- @include lumx-button-is-selected(lumx-base-const('theme', 'DARK'));
105
+ &.#{$lumx-base-prefix}-button--is-selected {
106
+ @include lumx-button-color(lumx-base-const('emphasis', 'SELECTED'), $key);
107
+ }
144
108
  }
145
109
  }
146
110
 
@@ -153,7 +117,7 @@
153
117
  }
154
118
 
155
119
  &--variant-icon {
156
- border-radius: var(--lumx-button-variant-icon-border-radius);
120
+ border-radius: var(--lumx-material-button-variant-icon-border-radius, var(--lumx-button-border-radius));
157
121
  }
158
122
 
159
123
  &--color-light {
@@ -9,60 +9,169 @@
9
9
  background-color: transparent;
10
10
  outline: none;
11
11
  text-decoration: none;
12
+ transition-duration: $lumx-state-transition-duration;
13
+ transition-property: padding, border-radius, background-color, color;
12
14
  user-select: none;
13
15
  vertical-align: top;
14
16
 
15
17
  &:hover {
16
18
  cursor: pointer;
17
19
  }
20
+
21
+ &::before {
22
+ transition-duration: $lumx-state-transition-duration;
23
+ transition-property: border-radius, border-width, border-color;
24
+ }
18
25
  }
19
26
 
20
27
  @mixin lumx-button-size($emphasis, $variant, $size) {
21
- height: map-get($lumx-sizes, $size);
28
+ @if $size == lumx-base-const('size', 'M') {
29
+ height: var(--lumx-button-height);
30
+ } @else if $size == lumx-base-const('size', 'S') {
31
+ height: calc(var(--lumx-button-height) / 1.5);
32
+ }
22
33
 
23
34
  @if $variant == 'button' {
24
- border-radius: var(--lumx-border-radius);
35
+ border-radius: var(--lumx-button-border-radius);
36
+ } @else if $variant == 'icon' {
37
+ @if $size == lumx-base-const('size', 'M') {
38
+ width: var(--lumx-button-height);
39
+ } @else if $size == lumx-base-const('size', 'S') {
40
+ width: calc(var(--lumx-button-height) / 1.5);
41
+ }
42
+
43
+ border-radius: var(--lumx-material-button-variant-icon-border-radius, var(--lumx-button-border-radius));
44
+ }
25
45
 
26
- @if $emphasis == lumx-base-const('emphasis', 'HIGH') or $emphasis == lumx-base-const('emphasis', 'MEDIUM') {
46
+ &::before {
47
+ position: absolute;
48
+ top: 0;
49
+ right: 0;
50
+ bottom: 0;
51
+ left: 0;
52
+ border-width: var(--lumx-button-#{$emphasis}-state-default-border-width);
53
+ border-style: solid;
54
+ content: '';
55
+ pointer-events: none;
56
+
57
+ @if $variant == 'button' {
58
+ border-radius: var(--lumx-button-border-radius);
59
+ } @else if $variant == 'icon' {
60
+ border-radius: var(--lumx-material-button-variant-icon-border-radius, var(--lumx-button-border-radius));
61
+ }
62
+ }
63
+
64
+ @if $variant == 'button' {
65
+ @if $size == lumx-base-const('size', 'M') {
66
+ padding: 0 var(--lumx-button-#{$emphasis}-state-default-padding-horizontal);
67
+ } @else if $size == lumx-base-const('size', 'S') {
68
+ padding: 0 calc(var(--lumx-button-#{$emphasis}-state-default-padding-horizontal) / 1.5);
69
+ }
70
+ }
71
+
72
+ &:hover {
73
+ @if $variant == 'button' {
27
74
  @if $size == lumx-base-const('size', 'M') {
28
- padding: 0 $lumx-spacing-unit * 2;
75
+ padding: 0 var(--lumx-button-#{$emphasis}-state-hover-padding-horizontal);
29
76
  } @else if $size == lumx-base-const('size', 'S') {
30
- padding: 0 $lumx-spacing-unit * 1.5;
77
+ padding: 0 calc(var(--lumx-button-#{$emphasis}-state-hover-padding-horizontal) / 1.5);
31
78
  }
32
- } @else if $emphasis == lumx-base-const('emphasis', 'LOW') {
33
- padding: 0 $lumx-spacing-unit;
34
79
  }
35
- } @else if $variant == 'icon' {
36
- width: map-get($lumx-sizes, $size);
37
- border-radius: var(--lumx-button-variant-icon-border-radius);
80
+
81
+ &::before {
82
+ border-width: var(--lumx-button-#{$emphasis}-state-hover-border-width);
83
+ }
38
84
  }
39
- }
40
85
 
41
- @mixin lumx-button-reduced-spacing($size, $icon-position) {
42
- @if $size == lumx-base-const('size', 'M') {
43
- @if $icon-position == lumx-base-const('position', 'LEFT') {
44
- padding-left: $lumx-spacing-unit * 1.5;
45
- } @else if $icon-position == lumx-base-const('position', 'RIGHT') {
46
- padding-right: $lumx-spacing-unit * 1.5;
86
+ &:active {
87
+ @if $variant == 'button' {
88
+ @if $size == lumx-base-const('size', 'M') {
89
+ padding: 0 var(--lumx-button-#{$emphasis}-state-active-padding-horizontal);
90
+ } @else if $size == lumx-base-const('size', 'S') {
91
+ padding: 0 calc(var(--lumx-button-#{$emphasis}-state-active-padding-horizontal) / 1.5);
92
+ }
47
93
  }
48
- } @else if $size == lumx-base-const('size', 'S') {
49
- @if $icon-position == lumx-base-const('position', 'LEFT') {
50
- padding-left: $lumx-spacing-unit;
51
- } @else if $icon-position == lumx-base-const('position', 'RIGHT') {
52
- padding-right: $lumx-spacing-unit;
94
+
95
+ &::before {
96
+ border-width: var(--lumx-button-#{$emphasis}-state-active-border-width);
53
97
  }
54
98
  }
55
99
  }
56
100
 
57
101
  @mixin lumx-button-color($emphasis, $color, $theme: null) {
58
- @include lumx-state(lumx-base-const('state', 'DEFAULT'), $emphasis, $color, $theme);
102
+ @if $color == 'primary' and $emphasis == lumx-base-const('emphasis', 'HIGH') {
103
+ background-color: var(--lumx-button-#{$emphasis}-state-default-#{$theme}-background-color);
104
+ color: var(--lumx-button-#{$emphasis}-state-default-#{$theme}-color);
105
+ } @else if $color == 'dark' and $emphasis != lumx-base-const('emphasis', 'HIGH') {
106
+ background-color: var(--lumx-button-#{$emphasis}-state-default-theme-light-background-color);
107
+ color: var(--lumx-button-#{$emphasis}-state-default-theme-light-color);
108
+ } @else if $color == 'light' and $emphasis != lumx-base-const('emphasis', 'HIGH') {
109
+ background-color: var(--lumx-button-#{$emphasis}-state-default-theme-dark-background-color);
110
+ color: var(--lumx-button-#{$emphasis}-state-default-theme-dark-color);
111
+ } @else {
112
+ @include lumx-state(lumx-base-const('state', 'DEFAULT'), $emphasis, $color, $theme);
113
+ }
114
+
115
+ &::before {
116
+ @if $color == 'primary' and $emphasis == lumx-base-const('emphasis', 'HIGH') {
117
+ border-color: var(--lumx-button-#{$emphasis}-state-default-#{$theme}-border-color);
118
+ } @else if $color == 'dark' and $emphasis != lumx-base-const('emphasis', 'HIGH') {
119
+ border-color: var(--lumx-button-#{$emphasis}-state-default-theme-light-border-color);
120
+ } @else if $color == 'light' and $emphasis != lumx-base-const('emphasis', 'HIGH') {
121
+ border-color: var(--lumx-button-#{$emphasis}-state-default-theme-dark-border-color);
122
+ } @else {
123
+ border-color: transparent;
124
+ }
125
+ }
59
126
 
60
127
  &:hover {
61
- @include lumx-state(lumx-base-const('state', 'HOVER'), $emphasis, $color, $theme);
128
+ @if $color == 'primary' and $emphasis == lumx-base-const('emphasis', 'HIGH') {
129
+ background-color: var(--lumx-button-#{$emphasis}-state-hover-#{$theme}-background-color);
130
+ color: var(--lumx-button-#{$emphasis}-state-hover-#{$theme}-color);
131
+ } @else if $color == 'dark' and $emphasis != lumx-base-const('emphasis', 'HIGH') {
132
+ background-color: var(--lumx-button-#{$emphasis}-state-hover-theme-light-background-color);
133
+ color: var(--lumx-button-#{$emphasis}-state-hover-theme-light-color);
134
+ } @else if $color == 'light' and $emphasis != lumx-base-const('emphasis', 'HIGH') {
135
+ background-color: var(--lumx-button-#{$emphasis}-state-hover-theme-dark-background-color);
136
+ color: var(--lumx-button-#{$emphasis}-state-hover-theme-dark-color);
137
+ } @else {
138
+ @include lumx-state(lumx-base-const('state', 'HOVER'), $emphasis, $color, $theme);
139
+ }
140
+
141
+ &::before {
142
+ @if $color == 'primary' and $emphasis == lumx-base-const('emphasis', 'HIGH') {
143
+ border-color: var(--lumx-button-#{$emphasis}-state-hover-#{$theme}-border-color);
144
+ } @else if $color == 'dark' and $emphasis != lumx-base-const('emphasis', 'HIGH') {
145
+ border-color: var(--lumx-button-#{$emphasis}-state-hover-theme-light-border-color);
146
+ } @else if $color == 'light' and $emphasis != lumx-base-const('emphasis', 'HIGH') {
147
+ border-color: var(--lumx-button-#{$emphasis}-state-hover-theme-dark-border-color);
148
+ }
149
+ }
62
150
  }
63
151
 
64
152
  &:active {
65
- @include lumx-state(lumx-base-const('state', 'ACTIVE'), $emphasis, $color, $theme);
153
+ @if $color == 'primary' and $emphasis == lumx-base-const('emphasis', 'HIGH') {
154
+ background-color: var(--lumx-button-#{$emphasis}-state-active-#{$theme}-background-color);
155
+ color: var(--lumx-button-#{$emphasis}-state-active-#{$theme}-color);
156
+ } @else if $color == 'dark' and $emphasis != lumx-base-const('emphasis', 'HIGH') {
157
+ background-color: var(--lumx-button-#{$emphasis}-state-active-theme-light-background-color);
158
+ color: var(--lumx-button-#{$emphasis}-state-active-theme-light-color);
159
+ } @else if $color == 'light' and $emphasis != lumx-base-const('emphasis', 'HIGH') {
160
+ background-color: var(--lumx-button-#{$emphasis}-state-active-theme-dark-background-color);
161
+ color: var(--lumx-button-#{$emphasis}-state-active-theme-dark-color);
162
+ } @else {
163
+ @include lumx-state(lumx-base-const('state', 'ACTIVE'), $emphasis, $color, $theme);
164
+ }
165
+
166
+ &::before {
167
+ @if $color == 'primary' and $emphasis == lumx-base-const('emphasis', 'HIGH') {
168
+ border-color: var(--lumx-button-#{$emphasis}-state-active-#{$theme}-border-color);
169
+ } @else if $color == 'dark' and $emphasis != lumx-base-const('emphasis', 'HIGH') {
170
+ border-color: var(--lumx-button-#{$emphasis}-state-active-theme-light-border-color);
171
+ } @else if $color == 'light' and $emphasis != lumx-base-const('emphasis', 'HIGH') {
172
+ border-color: var(--lumx-button-#{$emphasis}-state-active-theme-dark-border-color);
173
+ }
174
+ }
66
175
  }
67
176
 
68
177
  &[data-focus-visible-added] {
@@ -136,9 +245,15 @@
136
245
  }
137
246
 
138
247
  @mixin lumx-button-text($size) {
139
- font-size: var(--lumx-button-size-#{$size}-font-size);
140
- font-weight: var(--lumx-button-font-weight);
141
- line-height: map-get($lumx-sizes, $size);
248
+ font-family: var(--lumx-typography-custom-button-size-#{$size}-font-family);
249
+ font-size: var(--lumx-typography-custom-button-size-#{$size}-font-size);
250
+ font-weight: var(--lumx-typography-custom-button-size-#{$size}-font-weight);
142
251
  pointer-events: none;
143
- text-transform: var(--lumx-button-text-transform);
252
+ text-transform: var(--lumx-material-button-text-transform);
253
+
254
+ @if $size == lumx-base-const('size', 'M') {
255
+ line-height: var(--lumx-button-height);
256
+ } @else if $size == lumx-base-const('size', 'S') {
257
+ line-height: calc(var(--lumx-button-height) / 1.5);
258
+ }
144
259
  }
@@ -1,7 +1,7 @@
1
1
  @mixin lumx-checkbox-input-wrapper() {
2
2
  position: relative;
3
- width: var(--lumx-checkbox-wrapper-size);
4
- height: var(--lumx-checkbox-wrapper-size);
3
+ width: var(--lumx-material-checkbox-wrapper-size);
4
+ height: var(--lumx-material-checkbox-wrapper-size);
5
5
  }
6
6
 
7
7
  @mixin lumx-checkbox-input-native() {
@@ -9,8 +9,8 @@
9
9
  z-index: 4;
10
10
  top: 0;
11
11
  left: 0;
12
- width: var(--lumx-checkbox-wrapper-size);
13
- height: var(--lumx-checkbox-wrapper-size);
12
+ width: var(--lumx-material-checkbox-wrapper-size);
13
+ height: var(--lumx-material-checkbox-wrapper-size);
14
14
  padding: 0;
15
15
  margin: 0;
16
16
  opacity: 0;
@@ -19,10 +19,10 @@
19
19
  @mixin lumx-checkbox-placeholder() {
20
20
  position: absolute;
21
21
  z-index: 1;
22
- top: calc(calc(var(--lumx-checkbox-wrapper-size) - var(--lumx-checkbox-control-size)) / 2);
23
- left: calc(calc(var(--lumx-checkbox-wrapper-size) - var(--lumx-checkbox-control-size)) / 2);
24
- width: var(--lumx-checkbox-control-size);
25
- height: var(--lumx-checkbox-control-size);
22
+ top: calc((var(--lumx-material-checkbox-wrapper-size) - var(--lumx-material-checkbox-control-size)) / 2);
23
+ left: calc((var(--lumx-material-checkbox-wrapper-size) - var(--lumx-material-checkbox-control-size)) / 2);
24
+ width: var(--lumx-material-checkbox-control-size);
25
+ height: var(--lumx-material-checkbox-control-size);
26
26
  border-radius: 2px;
27
27
  }
28
28
 
@@ -57,7 +57,7 @@
57
57
  align-items: center;
58
58
  justify-content: center;
59
59
  border-radius: 2px;
60
- font-size: var(--lumx-checkbox-control-size);
60
+ font-size: var(--lumx-material-checkbox-control-size);
61
61
  }
62
62
 
63
63
  @mixin lumx-checkbox-input-indicator-status($status) {
@@ -32,7 +32,7 @@
32
32
  .#{$lumx-base-prefix}-chip--size-m {
33
33
  @include lumx-chip-size(lumx-base-const('size', 'M'));
34
34
 
35
- padding: 0 var(--lumx-chip-size-m-padding-vertical);
35
+ padding: 0 var(--lumx-material-chip-size-m-padding-vertical);
36
36
 
37
37
  &.#{$lumx-base-prefix}-chip--has-before {
38
38
  padding-left: $lumx-spacing-unit * 1.5;
@@ -46,7 +46,7 @@
46
46
  .#{$lumx-base-prefix}-chip--size-s {
47
47
  @include lumx-chip-size(lumx-base-const('size', 'S'));
48
48
 
49
- padding: 0 var(--lumx-chip-size-s-padding-vertical);
49
+ padding: 0 var(--lumx-material-chip-size-s-padding-vertical);
50
50
 
51
51
  &.#{$lumx-base-prefix}-chip--has-before {
52
52
  padding-left: $lumx-spacing-unit;
@@ -11,8 +11,8 @@
11
11
  }
12
12
 
13
13
  @mixin lumx-chip-size($size) {
14
- height: var(--lumx-chip-size-#{$size}-height);
15
- border-radius: var(--lumx-chip-size-#{$size}-border-radius);
14
+ height: var(--lumx-material-chip-size-#{$size}-height);
15
+ border-radius: var(--lumx-material-chip-size-#{$size}-border-radius);
16
16
  }
17
17
 
18
18
  @mixin lumx-chip-before() {
@@ -63,12 +63,9 @@
63
63
  }
64
64
  }
65
65
 
66
- &__title,
67
- &__description {
68
- @include lumx-typography('body1');
69
- }
70
-
71
66
  &__title {
67
+ @include lumx-typography('subtitle1');
68
+
72
69
  #{$self}--theme-light & {
73
70
  color: lumx-color-variant('dark', 'N');
74
71
  }
@@ -79,6 +76,8 @@
79
76
  }
80
77
 
81
78
  &__description {
79
+ @include lumx-typography('body1');
80
+
82
81
  #{$self}--theme-light & {
83
82
  color: lumx-color-variant('dark', 'L2');
84
83
  }
@@ -1,8 +1,8 @@
1
1
  @mixin lumx-input-helper($theme) {
2
2
  display: block;
3
- font-size: var(--lumx-input-helper-font-size);
4
- font-weight: var(--lumx-input-helper-font-weight);
5
- line-height: var(--lumx-input-helper-line-height);
3
+ font-size: var(--lumx-material-input-helper-font-size);
4
+ font-weight: var(--lumx-material-input-helper-font-weight);
5
+ line-height: var(--lumx-material-input-helper-line-height);
6
6
 
7
7
  @if $theme == lumx-base-const('theme', 'LIGHT') {
8
8
  color: lumx-color-variant('dark', 'L2');
@@ -1,8 +1,8 @@
1
1
  @mixin lumx-input-label($theme) {
2
2
  display: block;
3
- font-size: var(--lumx-input-label-font-size);
4
- font-weight: var(--lumx-input-label-font-weight);
5
- line-height: var(--lumx-input-label-line-height);
3
+ font-size: var(--lumx-material-input-label-font-size);
4
+ font-weight: var(--lumx-material-input-label-font-weight);
5
+ line-height: var(--lumx-material-input-label-line-height);
6
6
 
7
7
  @if $theme == lumx-base-const('theme', 'LIGHT') {
8
8
  color: lumx-color-variant('dark', 'N');
@@ -22,7 +22,7 @@
22
22
  position: absolute;
23
23
  top: 0;
24
24
  left: 0;
25
- display: var(--lumx-progress-bounce);
25
+ display: var(--lumx-material-progress-bounce);
26
26
  width: 100%;
27
27
  height: 100%;
28
28
  animation: lumx-progress-bounce 2s infinite ease-in-out;
@@ -49,7 +49,7 @@
49
49
  right: 0;
50
50
  bottom: 0;
51
51
  left: 0;
52
- display: var(--lumx-progress-rotate);
52
+ display: var(--lumx-material-progress-rotate);
53
53
  width: $lumx-progress-circular-size;
54
54
  height: $lumx-progress-circular-size;
55
55
  margin: auto;
@@ -1,7 +1,7 @@
1
1
  @mixin lumx-radio-button-input-wrapper() {
2
2
  position: relative;
3
- width: var(--lumx-radio-button-wrapper-size);
4
- height: var(--lumx-radio-button-wrapper-size);
3
+ width: var(--lumx-material-radio-button-wrapper-size);
4
+ height: var(--lumx-material-radio-button-wrapper-size);
5
5
  }
6
6
 
7
7
  @mixin lumx-radio-button-input-native() {
@@ -9,8 +9,8 @@
9
9
  z-index: 4;
10
10
  top: 0;
11
11
  left: 0;
12
- width: var(--lumx-radio-button-wrapper-size);
13
- height: var(--lumx-radio-button-wrapper-size);
12
+ width: var(--lumx-material-radio-button-wrapper-size);
13
+ height: var(--lumx-material-radio-button-wrapper-size);
14
14
  padding: 0;
15
15
  margin: 0;
16
16
  opacity: 0;
@@ -19,10 +19,10 @@
19
19
  @mixin lumx-radio-button-placeholder() {
20
20
  position: absolute;
21
21
  z-index: 1;
22
- top: calc(calc(var(--lumx-radio-button-wrapper-size) - var(--lumx-radio-button-control-size)) / 2);
23
- left: calc(calc(var(--lumx-radio-button-wrapper-size) - var(--lumx-radio-button-control-size)) / 2);
24
- width: var(--lumx-radio-button-control-size);
25
- height: var(--lumx-radio-button-control-size);
22
+ top: calc((var(--lumx-material-radio-button-wrapper-size) - var(--lumx-material-radio-button-control-size)) / 2);
23
+ left: calc((var(--lumx-material-radio-button-wrapper-size) - var(--lumx-material-radio-button-control-size)) / 2);
24
+ width: var(--lumx-material-radio-button-control-size);
25
+ height: var(--lumx-material-radio-button-control-size);
26
26
  border-radius: 50%;
27
27
  }
28
28
 
@@ -57,11 +57,11 @@
57
57
  @mixin lumx-radio-button-input-indicator() {
58
58
  position: absolute;
59
59
  z-index: 3;
60
- top: calc(calc(var(--lumx-radio-button-control-size) - var(--lumx-radio-button-indicator-size)) / 2);
61
- left: calc(calc(var(--lumx-radio-button-control-size) - var(--lumx-radio-button-indicator-size)) / 2);
60
+ top: calc((var(--lumx-material-radio-button-control-size) - var(--lumx-material-radio-button-indicator-size)) / 2);
61
+ left: calc((var(--lumx-material-radio-button-control-size) - var(--lumx-material-radio-button-indicator-size)) / 2);
62
62
  display: flex;
63
- width: var(--lumx-radio-button-indicator-size);
64
- height: var(--lumx-radio-button-indicator-size);
63
+ width: var(--lumx-material-radio-button-indicator-size);
64
+ height: var(--lumx-material-radio-button-indicator-size);
65
65
  align-items: center;
66
66
  justify-content: center;
67
67
  border-radius: 50%;