@mtvh/mtvh-design-system 0.0.3 → 0.0.5

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 (36) hide show
  1. package/README.md +15 -2
  2. package/assets/scss/app.scss +38 -0
  3. package/assets/scss/base/_all.scss +4 -0
  4. package/assets/scss/base/_functions.scss +38 -0
  5. package/assets/scss/base/_global.scss +25 -0
  6. package/assets/scss/base/_mixins.scss +171 -0
  7. package/assets/scss/base/_print.scss +55 -0
  8. package/assets/scss/common/_custom.scss +63 -0
  9. package/assets/scss/common/_variables-custom.scss +0 -0
  10. package/assets/scss/common/_variables-overrides.scss +0 -0
  11. package/assets/scss/components/_all.scss +5 -0
  12. package/assets/scss/components/_breadcrumb.scss +60 -0
  13. package/assets/scss/components/_button.scss +209 -0
  14. package/assets/scss/components/_content-block.scss +239 -0
  15. package/assets/scss/components/_form.scss +10 -0
  16. package/assets/scss/components/_link.scss +92 -0
  17. package/assets/scss/config/_all.scss +5 -0
  18. package/assets/scss/config/_font.scss +8 -0
  19. package/assets/scss/config/_map-amends.scss +5 -0
  20. package/assets/scss/config/_map-list.scss +114 -0
  21. package/assets/scss/config/_palette.scss +51 -0
  22. package/assets/scss/config/_theme.scss +23 -0
  23. package/assets/scss/config/_variables.scss +159 -0
  24. package/assets/scss/core/_all.scss +2 -0
  25. package/assets/scss/core/iconography/_icon.scss +32 -0
  26. package/assets/scss/core/typography/_typography.scss +107 -0
  27. package/assets/scss/forms/_form-check.scss +48 -0
  28. package/assets/scss/forms/_form-control.scss +38 -0
  29. package/assets/scss/forms/_formio.scss +36 -0
  30. package/assets/scss/forms/_labels.scss +4 -0
  31. package/assets/scss/forms/_validation.scss +22 -0
  32. package/assets/scss/mtvh.scss +68 -0
  33. package/dist/js/app.min.js +9 -0
  34. package/dist/mtvh.min.css +1 -1
  35. package/package.json +6 -8
  36. package/public/js/app.js +5194 -0
package/README.md CHANGED
@@ -26,7 +26,7 @@ See more from https://decapcms.org/docs/beta-features/
26
26
  ```
27
27
  npm install @mtvh/mtvh-design-system
28
28
  ```
29
-
29
+ #### All styles
30
30
  To import all styles as a single package you need to add following snippet to your main SCSS file:
31
31
  ```
32
32
  @import '/node_modules/@mtvh/mtvh-design-system/dist/mtvh.min.css';
@@ -35,5 +35,18 @@ Alternatively, you could include the css inside the footer/head tag depending on
35
35
  ```
36
36
  <link type="text/css" rel="stylesheet" href="dist/mtvh.min.css">
37
37
  ```
38
+ #### Core and selected components
39
+ Our core library includes the design system's base theme, typography, mixins and helper functions.
40
+ Once you imported it, you can take full advantage of our variables and helpers.
41
+ To import core library you need to add following snippet at the start of your main SASS file:
42
+ ```
43
+ @import "node_modules/@mtvh/mtvh-design-system/assets/scss/mtvh";
44
+ ```
45
+
38
46
  #### Adding fonts and images assets
39
- The css uses the fonts and icons following the relative path, ie `./` you would need to store the font and images folder relatively to the css.
47
+ The css uses the fonts and icons using a default path as below. You can amend the prefix by customize via the following variable
48
+ ```
49
+ $font-path: "./fonts/";
50
+ $asset-icon-path: "./images/icons/";
51
+ ```
52
+ * Please note the font files is downloadable from mtvh-design-system git repo NOT npm
@@ -0,0 +1,38 @@
1
+ @import "mtvh";
2
+
3
+ // 2. Include any default variable overrides here
4
+ @import "common/colors";
5
+ @import "common/variables-overrides";
6
+ @import "common/variables-custom";
7
+
8
+ // 8. Add additional custom code here, BS function not used in mtvh moved here, to minimise the css
9
+
10
+
11
+ // 8. Add additional custom code here
12
+ @import "common/global";
13
+ @import "common/syntax";
14
+ @import "common/dark";
15
+ @import "components/alerts";
16
+ @import "components/buttons";
17
+ @import "components/callouts";
18
+ @import "components/expressive-code";
19
+ @import "components/code";
20
+ @import "components/comments";
21
+ @import "components/details";
22
+ @import "components/forms";
23
+ @import "components/images";
24
+ @import "components/mermaid";
25
+ @import "components/modals";
26
+ @import "components/search";
27
+ @import "components/section-nav";
28
+ @import "components/tables";
29
+ @import "components/tabs";
30
+ @import "layouts/footer";
31
+ @import "layouts/header";
32
+ @import "layouts/pages";
33
+ @import "layouts/posts";
34
+ @import "layouts/sidebar";
35
+
36
+
37
+ // 9. Custom styles
38
+ @import "common/custom";
@@ -0,0 +1,4 @@
1
+ @import 'global';
2
+ @import 'functions';
3
+ @import 'mixins';
4
+ @import 'print';
@@ -0,0 +1,38 @@
1
+ @function rem($value) {
2
+ @if (unitless($value)) {
3
+ $value: $value * 1px;
4
+ }
5
+
6
+ @return calc( $value / $mtvh-base-font-size * 1rem);
7
+ }
8
+
9
+
10
+ @function str-replace( $string, $search, $replace: '' ) {
11
+
12
+ $index: str-index( $string, $search );
13
+ @if $index {
14
+ @return str-slice( $string, 1, $index - 1 ) + $replace + str-replace( str-slice( $string, $index + str-length( $search ) ), $search, $replace);
15
+ }
16
+
17
+ @return $string;
18
+ }
19
+
20
+ @function encode-color($string) {
21
+ @if type-of($string) == 'color' {
22
+ $hex: str-slice(ie-hex-str($string), 4);
23
+ $string: unquote("#{$hex}");
24
+ }
25
+
26
+ $string: '%23' + $string;
27
+ @return $string;
28
+ }
29
+
30
+ @function get-icon( $icon, $color: #fff ) {
31
+
32
+ $icon: map-get( $icons, $icon );
33
+ $placeholder: '%%COLOR%%';
34
+
35
+ $data-uri: str-replace( url( $data-svg-prefix + $icon ), $placeholder, $color );
36
+
37
+ @return str-replace( $data-uri, '#', '%23' );
38
+ }
@@ -0,0 +1,25 @@
1
+ html {
2
+ font-size: 100%;
3
+ line-height: var(--mtvh-line-height);
4
+ box-sizing: border-box;
5
+ }
6
+ body {
7
+ margin: 0;
8
+ padding: 0;
9
+ border: 0;
10
+ -webkit-font-smoothing: antialiased;
11
+ -moz-osx-font-smoothing: grayscale;
12
+ font-size: 100%;
13
+ line-height: var(--mtvh-line-height);
14
+ box-sizing: border-box;
15
+ }
16
+
17
+ *,
18
+ *::before,
19
+ *::after {
20
+ box-sizing: inherit;
21
+ }
22
+
23
+ .mtvh-layout {
24
+ background-color: var(--mtvh-grey-01);
25
+ }
@@ -0,0 +1,171 @@
1
+ @mixin animate-default() {
2
+ -webkit-transition: transform 0.3s ease-out;
3
+ -moz-transition: transform 0.3s ease-out;
4
+ -ms-transition: transform 0.3s ease-out;
5
+ -o-transition: transform 0.3s ease-out;
6
+ transition: transform 0.3s ease-in;
7
+ }
8
+
9
+ @mixin hover-animate( $position : 'left', $rotate : '') {
10
+
11
+ @if $position == 'right' {
12
+ &:hover:not(.disabled) {
13
+ &:after {
14
+ -webkit-transform: translateX(4px);
15
+ -moz-transform: translateX(4px);
16
+ -ms-transform: translateX(4px);
17
+ -o-transform: translateX(4px);
18
+ transform: translateX(4px);
19
+ }
20
+ }
21
+ } @else {
22
+ &:hover:not(.disabled) {
23
+ &:before{
24
+ -webkit-transform: translateX(-4px);
25
+ -moz-transform: translateX(-4px);
26
+ -ms-transform: translateX(-4px);
27
+ -o-transform: translateX(-4px);
28
+ transform: translateX(-4px);
29
+ }
30
+ }
31
+ }
32
+
33
+ }
34
+
35
+ @mixin icon-transform($direction) {
36
+ //default is a right
37
+ -webkit-mask-repeat: no-repeat;
38
+ mask-repeat: no-repeat;
39
+ content:' ';
40
+ opacity: 1;
41
+ display: inline-block;
42
+ vertical-align: middle;
43
+ background-repeat: no-repeat;
44
+ margin-top: -.125rem;
45
+ @if $direction == 'right' {
46
+ margin-left: $button-icon-spacing;
47
+ }
48
+ @else {
49
+ margin-right: $button-icon-spacing;
50
+ }
51
+ }
52
+
53
+ // arrow direction: left, right, up, down, Default: right
54
+ // arrow position: left, right
55
+ @mixin mtvh-icon($icon : '', $color :'', $hover-color :'', $active-color :'', $border-color :'', $position : 'left', $direction : 'right', $width : 20px, $height: 20px, $svg-path : null) {
56
+
57
+ @if $border-color != '' {
58
+ $border-color: $color;
59
+ }
60
+ @if $hover-color == '' {
61
+ $hover-color: $color;
62
+ }
63
+ @if $active-color == '' {
64
+ $active-color: $color;
65
+ }
66
+ &:before, &:after {
67
+ height: $height;
68
+ width: $width;
69
+ }
70
+
71
+ text-decoration: none;
72
+ @if $position == 'right' {
73
+
74
+ &:after {
75
+
76
+
77
+ @include animate-default;
78
+ @include icon-transform($direction);
79
+
80
+ @if $svg-path {
81
+ background-image: url($svg-path);
82
+ } @else {
83
+ -webkit-mask: get-icon($icon);
84
+ mask: get-icon($icon);
85
+ background-color: currentColor;
86
+ }
87
+ }
88
+
89
+ @if $svg-path == '' {
90
+ &:hover:not(.disabled) {
91
+ &:after {
92
+ background-color: currentColor;
93
+ }
94
+ }
95
+ &:focus, &:active {
96
+
97
+ &:after {
98
+ background-color: currentColor;
99
+ }
100
+ }
101
+ }
102
+ } @else { //position is left
103
+
104
+ &:before{ ;
105
+ @include animate-default;
106
+ @include icon-transform('left');
107
+ @if $svg-path {
108
+ background-image: url($svg-path);
109
+ } @else {
110
+ -webkit-mask: get-icon($icon);
111
+ mask: get-icon($icon);
112
+ background-color: currentColor
113
+ }
114
+
115
+ }
116
+
117
+ @if $svg-path == '' {
118
+ &:hover:not(.disabled) {
119
+ &:before {
120
+ background-color: currentColor;
121
+ }
122
+ }
123
+
124
+ &:focus, &:active {
125
+ &:before {
126
+ background-color: currentColor;
127
+ }
128
+ }
129
+ }
130
+ }
131
+
132
+ &.base {
133
+ &:before, &:after {
134
+ mask-size: auto 9px;
135
+ mask-repeat: no-repeat;
136
+ -webkit-mask-size: auto 9px;
137
+ -webkit-mask-repeat: no-repeat;
138
+ }
139
+ }
140
+ }
141
+
142
+ @mixin icon-size ($width,$height) {
143
+ &:before, &:after {
144
+ mask-size: $width $height;
145
+ width: $width;
146
+ height: $height;
147
+ background-size: 100%;
148
+ }
149
+ }
150
+
151
+
152
+ @mixin form-invalid-text() {
153
+ color: var(--mtvh-red-04);
154
+ font-size: $font-size-sm;
155
+ font-weight: bold;
156
+ padding-left: $mtvh-spacing-6;
157
+ position: relative;
158
+ display: flex;
159
+ gap: $mtvh-spacing-3;
160
+ &:before {
161
+ content: '';
162
+ -webkit-mask: get-icon('error',$danger);
163
+ mask: get-icon('error',$danger);
164
+ background-color: currentColor;
165
+ mask-repeat: no-repeat;
166
+ -webkit-mask-repeat: no-repeat;
167
+ margin-left: -$mtvh-spacing-6;
168
+ padding-right: $icon-size-scale-sm;
169
+ margin-top: $mtvh-spacing-2;
170
+ }
171
+ }
@@ -0,0 +1,55 @@
1
+ /* stylelint-disable declaration-no-important, selector-no-qualifying-type */
2
+ @media print {
3
+ *,
4
+ *::before,
5
+ *::after {
6
+ background: transparent !important;
7
+ color: var(--mtvh-black) !important;
8
+ box-shadow: none !important;
9
+ text-shadow: none !important;
10
+ }
11
+
12
+ a,
13
+ a:visited {
14
+ text-decoration: underline;
15
+ }
16
+
17
+ a[href]::after {
18
+ content: ' (' attr(href) ')';
19
+ }
20
+
21
+ abbr[title]::after {
22
+ content: ' (' attr(title) ')';
23
+ }
24
+
25
+ a[href^='#']::after,
26
+ a[href^='javascript:']::after {
27
+ content: '';
28
+ }
29
+
30
+ pre {
31
+ white-space: pre-wrap !important;
32
+ }
33
+
34
+ thead {
35
+ display: table-header-group;
36
+ }
37
+
38
+ tr,
39
+ img {
40
+ page-break-inside: avoid;
41
+ }
42
+
43
+ p,
44
+ h2,
45
+ h3 {
46
+ orphans: 3;
47
+ widows: 3;
48
+ }
49
+
50
+ h2,
51
+ h3 {
52
+ page-break-after: avoid;
53
+ }
54
+ }
55
+ /* stylelint-enable declaration-no-important, selector-no-qualifying-type */
@@ -0,0 +1,63 @@
1
+ // Put your custom SCSS for dork (documentation) code here
2
+ .expressive-code {
3
+ position: relative;
4
+ .copy {
5
+ button {
6
+ opacity: 1;
7
+ }
8
+ }
9
+ }
10
+ .section-nav li a, .page-links a
11
+ {
12
+ font-weight: unset;
13
+ }
14
+ .section-nav li.active a, #toc a.active
15
+ {
16
+ font-weight: bold;
17
+ }
18
+ #toc a.active {
19
+ color: #00385E !important;
20
+ }
21
+
22
+ .table-icons
23
+ {
24
+ td {
25
+ vertical-align: middle;
26
+ .center {
27
+ text-align: center;
28
+ }
29
+ }
30
+
31
+ .expressive-code {
32
+ margin: 0;
33
+ }
34
+ }
35
+
36
+
37
+ .mtvh-content-block {
38
+
39
+ h6,
40
+ .h6,
41
+ h5,
42
+ .h5,
43
+ h4,
44
+ .h4,
45
+ h3,
46
+ .h3,
47
+ h2,
48
+ .h2,
49
+ h1,
50
+ .h1 {
51
+ margin-top: 0px;
52
+ }
53
+ }
54
+
55
+ .mx-auto {
56
+ margin-right: auto !important;
57
+ margin-left: auto !important
58
+ }
59
+ .stretched-link {
60
+ &:after {
61
+ position: unset;
62
+ }
63
+ }
File without changes
File without changes
@@ -0,0 +1,5 @@
1
+ @import 'button';
2
+ @import 'content-block';
3
+ @import 'form';
4
+ @import 'link';
5
+ @import 'breadcrumb';
@@ -0,0 +1,60 @@
1
+ .breadcrumb {
2
+
3
+ -webkit-overflow-scrolling: touch;
4
+ flex-wrap: unset;
5
+ overflow-x: auto;
6
+ white-space: nowrap;
7
+ scroll-behavior: smooth;
8
+ -webkit-overflow-scrolling: touch;
9
+
10
+ &::-webkit-scrollbar {
11
+ display: none;
12
+ }
13
+
14
+
15
+ @include media-breakpoint-down('md') {
16
+
17
+ &:before {
18
+ content: " ";
19
+ height: 32px;
20
+ position: absolute;
21
+ top: 0;
22
+ width: 100%;
23
+ }
24
+ &:after {
25
+ position: absolute;
26
+ right: 0;
27
+ height: 32px;
28
+ width: 20%;
29
+ content: ' ';
30
+
31
+ background: linear-gradient(to left, var(--mtvh-grey-01), rgba(255,255,255,0));
32
+ }
33
+ }
34
+
35
+ .active {
36
+ font-weight: bold;
37
+ --mtvh-breadcrumb-item-active-color: var(--mtvh-black);
38
+ }
39
+ a {
40
+ color: var(--mtvh-black);
41
+ text-decoration: none;
42
+ font-weight: normal;
43
+
44
+ &:hover {
45
+ text-decoration: underline;
46
+ }
47
+ }
48
+ }
49
+
50
+
51
+ .breadcrumb-item {
52
+ border:1px solid transparent;
53
+ margin-bottom: 0;
54
+
55
+ + .breadcrumb-item {
56
+ &::before {
57
+ float:unset;
58
+ }
59
+ }
60
+ }
@@ -0,0 +1,209 @@
1
+ $mtvh-buttons: (
2
+ primary: (
3
+ text-color: var(--mtvh-white),
4
+ text-color-hover: var(--mtvh-white),
5
+ text-color-disabled: var(--mtvh-white),
6
+ text-color-active: var(--mtvh-white),
7
+ background: var(--mtvh-blue-04),
8
+ background-hover: var(--mtvh-blue-05),
9
+ background-focus: var(--mtvh-blue-05),
10
+ background-active: var(--mtvh-blue-06),
11
+ background-disabled: var(--mtvh-grey-06),
12
+ border: transparent,
13
+ border-hover: transparent,
14
+ border-active: var(--mtvh-blue-06),
15
+ border-color-disabled: var(--mtvh-grey-06),
16
+ outline-color: var(--mtvh-blue-03)
17
+ ),
18
+ light: (
19
+ text-color: var(--mtvh-blue-04),
20
+ text-color-hover: var(--mtvh-blue-05),
21
+ text-color-active: var(--mtvh-blue-06),
22
+ text-color-focus: var(--mtvh-blue-05),
23
+ text-color-disabled: var(--mtvh-black),
24
+ background: var(--mtvh-white),
25
+ background-hover: var(--mtvh-grey-01),
26
+ background-active: var(--mtvh-grey-02),
27
+ background-focus: var(--mtvh-grey-01),
28
+ background-disabled: var(--mtvh-grey-05),
29
+ border: transparent,
30
+ border-active: transparent,
31
+ border-color-disabled: var(--mtvh-grey-05)
32
+
33
+ ),
34
+ outline-primary: (
35
+
36
+ text-color: var(--mtvh-blue-04),
37
+ text-color-hover: var(--mtvh-blue-05),
38
+ text-color-active: var(--mtvh-blue-06),
39
+ text-color-focus: var(--mtvh-blue-05),
40
+ text-color-disabled: var(--mtvh-grey-06),
41
+ background: transparent,
42
+ background-hover: transparent,
43
+ background-focus: transparent,
44
+ background-disabled: transparent,
45
+ background-active: transparent,
46
+ border: var(--mtvh-blue-04),
47
+ border-hover: var(--mtvh-blue-05),
48
+ border-focus: var(--mtvh-blue-05),
49
+ border-active: var(--mtvh-blue-06),
50
+ border-color-disabled: var(--mtvh-grey-06)
51
+ ),
52
+ outline-light: (
53
+ text-color: var(--mtvh-white),
54
+ text-color-hover: var(--mtvh-grey-04),
55
+ text-color-focus: var(--mtvh-grey-04),
56
+ text-color-active: var(--mtvh-grey-05),
57
+ text-color-disabled: var(--mtvh-grey-05),
58
+ background: transparent,
59
+ background-hover: transparent,
60
+ background-focus: transparent,
61
+ background-disabled: transparent,
62
+ border: var(--mtvh-white),
63
+ border-hover: var(--mtvh-grey-04),
64
+ border-focus: var(--mtvh-grey-04),
65
+ border-active: var(--mtvh-grey-05),
66
+ border-color-disabled: var(--mtvh-grey-05)
67
+ ),
68
+ purple: (
69
+ text-color: var(--mtvh-white),
70
+ text-color-hover: var(--mtvh-white),
71
+ text-color-focus: var(--mtvh-white),
72
+ background: var(--mtvh-purple-04),
73
+ background-hover: var(--mtvh-purple-05),
74
+ background-focus: var(--mtvh-purple-05),
75
+ background-active: var(--mtvh-purple-06),
76
+ border: transparent,
77
+ border-hover: transparent,
78
+ border-radius: 6px
79
+ ),
80
+ danger: (
81
+ text-color: var(--mtvh-white),
82
+ text-color-hover: var(--mtvh-white),
83
+ text-color-disabled: var(--mtvh-white),
84
+ background: var(--mtvh-red-04),
85
+ background-hover: var(--mtvh-red-05),
86
+ background-focus: var(--mtvh-red-05),
87
+ background-active: var(--mtvh-red-06),
88
+ background-disabled: var(--mtvh-grey-06),
89
+ border: transparent,
90
+ border-hover: transparent,
91
+ border-active: transparent,
92
+ border-color-disabled: transparent
93
+ ),
94
+ outline-danger: (
95
+ text-color: var(--mtvh-red-04),
96
+ text-color-hover: var(--mtvh-red-05),
97
+ text-color-active: var(--mtvh-red-06),
98
+ text-color-focus: var(--mtvh-red-05),
99
+ text-color-disabled: var(--mtvh-grey-06),
100
+ background: var(--mtvh-white),
101
+ background-hover: var(--mtvh-white),
102
+ background-focus: var(--mtvh-white),
103
+ background-disabled: var(--mtvh-white),
104
+ border: var(--mtvh-red-04),
105
+ border-hover: var(--mtvh-red-05),
106
+ background-active: var(--mtvh-white),
107
+ border-focus: var(--mtvh-red-05),
108
+ border-active: var(--mtvh-red-06),
109
+ border-color-disabled: var(--mtvh-grey-06)
110
+ ),
111
+
112
+ );
113
+
114
+ .btn, .mtvh-btn {
115
+
116
+ font-weight: $btn-font-weight;
117
+ box-shadow: none;
118
+
119
+ &:focus-visible {
120
+ box-shadow: none;
121
+ outline: solid var(--mtvh-btn-outline-border) var(--mtvh-btn-outline-color);
122
+ outline-offset: 0;
123
+ outline-offset: var(--mtvh-btn-outline-border);
124
+ text-decoration: none;
125
+ }
126
+ &:focus:not(:focus-visible) {
127
+ outline: 0;
128
+ }
129
+ &:hover {
130
+ text-decoration: none;
131
+ }
132
+ }
133
+
134
+ .mtvh-btn {
135
+ min-height: 2.5rem;
136
+ min-width: var(--mtvh-btn-min-width);
137
+ border-radius: $btn-border-radius;
138
+ border: $btn-border-width solid transparent;
139
+ white-space: normal;
140
+ font-size: $btn-font-size;
141
+ line-height: var(--mtvh-btn-line-height);
142
+ text-decoration: none;
143
+ -webkit-font-smoothing: antialiased;
144
+ -webkit-appearance: none;
145
+ display: inline-block;
146
+ text-align: center;
147
+ padding: $btn-padding-y $btn-padding-x;
148
+ transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
149
+
150
+ }
151
+
152
+ .mtvh-btn, .btn {
153
+
154
+ @each $color, $property-map in $mtvh-buttons {
155
+
156
+
157
+ &-#{$color} {
158
+
159
+ color: map-get($property-map, text-color);
160
+ background-color: map-get($property-map, background);
161
+ border-color: map-get($property-map, border);
162
+ border-radius: map-get($property-map, border-radius);
163
+
164
+ &:visited {
165
+ color: map-get($property-map, text-color);
166
+ }
167
+
168
+ &:hover {
169
+ color: map-get($property-map, text-color-hover);
170
+ background-color: map-get($property-map, background-hover);
171
+ border-color: map-get($property-map, border-hover);
172
+ }
173
+
174
+ &:focus {
175
+ color: map-get($property-map, text-color-focus);
176
+ background-color: map-get($property-map, background-focus);
177
+
178
+ @if map-get($property-map, border-focus) {
179
+ border-color: map-get($property-map, border-focus);
180
+ }
181
+
182
+ }
183
+
184
+ &:active:not(:disabled):not(.disabled) {
185
+ background-color: map-get($property-map, background-active);
186
+ @if map-get($property-map, text-color-active) {
187
+ color: map-get($property-map, text-color-active);
188
+ border-color: map-get($property-map, border-active);
189
+ }
190
+ }
191
+
192
+ &:disabled,
193
+ &.disabled {
194
+ pointer-events: none;
195
+ @if map-get($property-map, text-color-disabled) {
196
+ color: map-get($property-map, text-color-disabled);
197
+ background-color: map-get($property-map, background-disabled);
198
+ border-color: map-get($property-map, border-color-disabled);
199
+ }
200
+ else {
201
+ color: var(--mtvh-btn-disabled-color);
202
+ background-color: var(--mtvh-btn-disabled-bg);
203
+ border-color: var(--mtvh-btn-disabled-border-color);
204
+ }
205
+ }
206
+ }
207
+ }
208
+ }
209
+