material 0.9.24 → 0.9.26

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 (127) hide show
  1. package/.editorconfig +36 -0
  2. package/.zed/README.md +64 -0
  3. package/.zed/settings.json +42 -0
  4. package/CONTRIBUTING.md +125 -0
  5. package/bun.lock +615 -0
  6. package/eslint.config.js +63 -0
  7. package/index.d.ts +77 -0
  8. package/package.json +1 -1
  9. package/src/module/extract.js +31 -30
  10. package/src/module/request.js +22 -2
  11. package/src/skin/material/base/body.scss +83 -0
  12. package/src/skin/material/base/{elevation.sass → elevation.scss} +76 -50
  13. package/src/skin/material/base/{grid.sass → grid.scss} +44 -32
  14. package/src/skin/material/base/typo.scss +133 -0
  15. package/src/skin/material/button/action.scss +124 -0
  16. package/src/skin/material/button/button.scss +245 -0
  17. package/src/skin/material/button/file.scss +27 -0
  18. package/src/skin/material/button/floating.scss +160 -0
  19. package/src/skin/material/button/raised.scss +145 -0
  20. package/src/skin/material/button/stroked.scss +102 -0
  21. package/src/skin/material/component/component.scss +11 -0
  22. package/src/skin/material/component/divider.scss +22 -0
  23. package/src/skin/material/component/image.scss +9 -0
  24. package/src/skin/material/component/label.scss +4 -0
  25. package/src/skin/material/component/navigation.scss +15 -0
  26. package/src/skin/material/component/progress.scss +176 -0
  27. package/src/skin/material/component/subheader.scss +5 -0
  28. package/src/skin/material/component/text.scss +101 -0
  29. package/src/skin/material/container/appbar.scss +215 -0
  30. package/src/skin/material/container/banner.scss +44 -0
  31. package/src/skin/material/container/card.scss +23 -0
  32. package/src/skin/material/container/container.scss +2 -0
  33. package/src/skin/material/container/dialog.scss +196 -0
  34. package/src/skin/material/container/drawer.scss +185 -0
  35. package/src/skin/material/container/menu.scss +69 -0
  36. package/src/skin/material/container/snackbar.scss +21 -0
  37. package/src/skin/material/container/tabs.scss +94 -0
  38. package/src/skin/material/container/toolbar.scss +207 -0
  39. package/src/skin/material/control/button.scss +172 -0
  40. package/src/skin/material/control/checkbox.scss +134 -0
  41. package/src/skin/material/control/colorpicker.scss +220 -0
  42. package/src/skin/material/control/menu.scss +25 -0
  43. package/src/skin/material/control/progress.scss +174 -0
  44. package/src/skin/material/control/search.scss +50 -0
  45. package/src/skin/material/control/selecter.scss +152 -0
  46. package/src/skin/material/control/selector.scss +46 -0
  47. package/src/skin/material/control/slider.scss +221 -0
  48. package/src/skin/material/control/snackbar.scss +77 -0
  49. package/src/skin/material/control/switch.scss +349 -0
  50. package/src/skin/material/control/switcher.scss +48 -0
  51. package/src/skin/material/control/textfield.scss +159 -0
  52. package/src/skin/material/control/tooltip.scss +42 -0
  53. package/src/skin/material/layout/layout.scss +92 -0
  54. package/src/skin/material/layout/resizer.scss +97 -0
  55. package/src/skin/material/material.scss +67 -0
  56. package/src/skin/material/module/ripple.scss +11 -0
  57. package/src/skin/material/theme/{default.sass → default.scss} +18 -17
  58. package/src/skin/material/theme/ocean.scss +30 -0
  59. package/src/skin/material/theme/theme.scss +4 -0
  60. package/src/skin/material/view/calendar.scss +219 -0
  61. package/src/skin/material/view/form.scss +21 -0
  62. package/src/skin/material/view/grid.scss +134 -0
  63. package/src/skin/material/view/list.scss +107 -0
  64. package/src/skin/material/view/listview.scss +221 -0
  65. package/src/skin/material/view/map.scss +8 -0
  66. package/src/skin/material/view/page.scss +5 -0
  67. package/src/skin/material/view/tabview-bak.scss +49 -0
  68. package/src/skin/material/view/tabview.scss +65 -0
  69. package/src/skin/material/view/tree.scss +85 -0
  70. package/src/skin/material/view/{view.sass → view.scss} +1 -0
  71. package/src/skin/material/base/body.sass +0 -55
  72. package/src/skin/material/base/typo.sass +0 -107
  73. package/src/skin/material/button/action.sass +0 -89
  74. package/src/skin/material/button/button.sass +0 -183
  75. package/src/skin/material/button/file.sass +0 -24
  76. package/src/skin/material/button/floating.sass +0 -113
  77. package/src/skin/material/button/raised.sass +0 -101
  78. package/src/skin/material/button/stroked.sass +0 -71
  79. package/src/skin/material/component/component.sass +0 -7
  80. package/src/skin/material/component/divider.sass +0 -17
  81. package/src/skin/material/component/image.sass +0 -6
  82. package/src/skin/material/component/label.sass +0 -2
  83. package/src/skin/material/component/navigation.sass +0 -13
  84. package/src/skin/material/component/progress.sass +0 -138
  85. package/src/skin/material/component/subheader.sass +0 -3
  86. package/src/skin/material/component/text.sass +0 -85
  87. package/src/skin/material/container/appbar.sass +0 -167
  88. package/src/skin/material/container/banner.sass +0 -38
  89. package/src/skin/material/container/card.sass +0 -19
  90. package/src/skin/material/container/dialog.sass +0 -172
  91. package/src/skin/material/container/drawer.sass +0 -159
  92. package/src/skin/material/container/menu.sass +0 -58
  93. package/src/skin/material/container/snackbar.sass +0 -18
  94. package/src/skin/material/container/tabs.sass +0 -75
  95. package/src/skin/material/container/toolbar.sass +0 -161
  96. package/src/skin/material/control/button.sass +0 -135
  97. package/src/skin/material/control/checkbox.sass +0 -105
  98. package/src/skin/material/control/colorpicker.sass +0 -188
  99. package/src/skin/material/control/dialog.sass +0 -0
  100. package/src/skin/material/control/menu.sass +0 -18
  101. package/src/skin/material/control/progress.sass +0 -136
  102. package/src/skin/material/control/search.sass +0 -40
  103. package/src/skin/material/control/selecter.sass +0 -131
  104. package/src/skin/material/control/selector.sass +0 -38
  105. package/src/skin/material/control/slider.sass +0 -181
  106. package/src/skin/material/control/snackbar.sass +0 -65
  107. package/src/skin/material/control/switch.sass +0 -284
  108. package/src/skin/material/control/switcher.sass +0 -41
  109. package/src/skin/material/control/textfield.sass +0 -126
  110. package/src/skin/material/control/tooltip.sass +0 -36
  111. package/src/skin/material/layout/layout.sass +0 -69
  112. package/src/skin/material/layout/resizer.sass +0 -69
  113. package/src/skin/material/material.sass +0 -66
  114. package/src/skin/material/module/ripple.sass +0 -9
  115. package/src/skin/material/theme/ocean.sass +0 -29
  116. package/src/skin/material/theme/theme.sass +0 -3
  117. package/src/skin/material/view/calendar.sass +0 -193
  118. package/src/skin/material/view/form.sass +0 -15
  119. package/src/skin/material/view/grid.sass +0 -116
  120. package/src/skin/material/view/list.sass +0 -87
  121. package/src/skin/material/view/listview.sass +0 -195
  122. package/src/skin/material/view/map.sass +0 -6
  123. package/src/skin/material/view/page.sass +0 -4
  124. package/src/skin/material/view/tabview-bak.sass +0 -40
  125. package/src/skin/material/view/tabview.sass +0 -55
  126. package/src/skin/material/view/tree.sass +0 -73
  127. /package/src/skin/material/{container/container.sass → control/dialog.scss} +0 -0
@@ -0,0 +1,221 @@
1
+ .material-slider {
2
+ display: block;
3
+ position: relative;
4
+ padding-top: 0;
5
+ padding-bottom: 16px;
6
+ margin-right: 8px;
7
+ vertical-align: top;
8
+ display: flex;
9
+ flex-direction: column;
10
+ flex-wrap: nowrap;
11
+
12
+ //overflow: hidden;
13
+ //border-bottom: 1px solid rgba(100, 100, 100, 0.1);
14
+ input {
15
+ position: absolute;
16
+ left: -10000px;
17
+
18
+ }
19
+ .slider-label {
20
+ flex: 1;
21
+ order: 1;
22
+ cursor: default;
23
+ padding: 16px 0;
24
+ margin: 0px 2px 0px 0;
25
+ overflow: hidden;
26
+
27
+ }
28
+ .slider-control {
29
+ order: 3;
30
+ position: relative;
31
+ cursor: pointer;
32
+ width: 100%;
33
+ height: 48px;
34
+ padding: 0 8px;
35
+
36
+ .slider-track {
37
+ position: absolute;
38
+ z-index: 1;
39
+ cursor: pointer;
40
+ position: relative;
41
+ display: block;
42
+ height: 48px;
43
+ padding: 0;
44
+
45
+ //background-color: rgba(34, 31, 31, .26);
46
+ transition: .3s;
47
+
48
+ }
49
+ .slider-canvas {
50
+ position: absolute;
51
+ top: 0;
52
+ left: 0;
53
+
54
+ }
55
+ .slider-track-value {
56
+ position: absolute;
57
+ width: 0;
58
+ top: 50%;
59
+ z-index: 2;
60
+ cursor: pointer;
61
+ display: block;
62
+ height: 2px;
63
+ padding: 0;
64
+ background-color: #4054B2;
65
+ border-radius: 7px;
66
+
67
+ }
68
+ .slider-marker {
69
+ opacity: 0;
70
+ transform: scale(0.1) translateY(60px);
71
+ text-align: center;
72
+ font-size: 9px;
73
+ color: white;
74
+ position: absolute;
75
+ width: 32px;
76
+ height: 32px;
77
+ top: -17px;
78
+ z-index: 2;
79
+ cursor: pointer;
80
+ margin: auto;
81
+ border-radius: 50%;
82
+ transition: .2s;
83
+
84
+ .slider-pin {
85
+ fill: $secondary-color;
86
+
87
+ }
88
+ }
89
+ .slider-knob {
90
+ z-index: 3;
91
+ cursor: pointer;
92
+ position: absolute;
93
+ top: 50%;
94
+ left: 0px;
95
+ display: block;
96
+ height: 12px;
97
+ width: 12px;
98
+ margin: 0;
99
+ transform: translateY(-5px);
100
+ border-radius: 50%;
101
+ background-color: white;
102
+ border: 2px solid rgba(241, 241, 241, 100);
103
+
104
+ //box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.24), 0 0 2px 0 rgba(0, 0, 0, 0.12);
105
+ transition: .2s;
106
+
107
+ &.notnull {
108
+ background-color: #4054B2;
109
+ border: 2px solid #4054B2;
110
+
111
+ }
112
+ &:active {
113
+ background-color: #4054B2;
114
+ border: 2px solid #4054B2;
115
+
116
+ }
117
+ &:hover {
118
+ /* empty */
119
+ }
120
+ // background-color: #4054B2;
121
+ // border: 2px solid #4054B2;
122
+
123
+ }
124
+ &.dragging {
125
+ .slider-knob {
126
+ top: 50%;
127
+ background-color: white;
128
+ border: 2px solid rgba(241, 241, 241, 100);
129
+
130
+ //box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.24), 0 0 2px 0 rgba(0, 0, 0, 0.12);
131
+ transition: none;
132
+ transform: scale(1.5) translateY(-4px);
133
+
134
+ &.notnull {
135
+ background-color: #4054B2;
136
+ border: 2px solid #4054B2;
137
+
138
+ }
139
+ }
140
+ }
141
+ }
142
+ &.is-checked {
143
+ .slider-track {
144
+ background-color: rgba(0, 150, 136, 0.5);
145
+
146
+ .slider-knob {
147
+ background-color: rgba(0, 150, 136, 1);
148
+ left: 15px;
149
+
150
+ }
151
+ }
152
+ }
153
+ &.is-disabled {
154
+ .slider-label {
155
+ opacity: .5;
156
+
157
+ }
158
+ .slider-control {
159
+ .slider-track {
160
+ .slider-knob {
161
+ background-color: #BDBDBD;
162
+ border: 2px solid white;
163
+
164
+ }
165
+ .slider-track-value {
166
+ background-color: #BDBDBD;
167
+
168
+ }
169
+ }
170
+ order: 3;
171
+ cursor: pointer;
172
+
173
+ // .slider-track
174
+
175
+ // .slider-knob
176
+
177
+ }
178
+ }
179
+ &.is-focused {
180
+ .slider-control {
181
+ .slider-knob {
182
+ height: 18px;
183
+ width: 18px;
184
+ border: 32px solid rgba(0, 0, 0, 0.05);
185
+
186
+ }
187
+ }
188
+ }
189
+ &.type-discrete {
190
+ .slider-control {
191
+ &.dragging {
192
+ .slider-marker {
193
+ opacity: 1;
194
+ transform: scale(1) translateY(0);
195
+ display: block;
196
+ transition: none;
197
+
198
+ }
199
+ .slider-knob {
200
+ opacity: 0;
201
+ transform: scale(0.2);
202
+ display: block;
203
+ transition: .2s;
204
+
205
+ }
206
+ }
207
+ }
208
+ }
209
+ }
210
+ .dark-mode {
211
+ .material-slider {
212
+ .slider-control {
213
+ .slider-track {
214
+ .slider-tarck-value {
215
+ background-color: #5C5C5C;
216
+
217
+ }
218
+ }
219
+ }
220
+ }
221
+ }
@@ -0,0 +1,77 @@
1
+ $width: 500px;
2
+
3
+ .snackbars {
4
+ position: absolute;
5
+ z-index: 300;
6
+ display: flex;
7
+ width: $width;
8
+ flex-direction: column;
9
+ background-color: rgba(0,0,0,.1);
10
+ bottom: 160px;
11
+ width: 100%;
12
+ .snackbar {
13
+ overflow: hidden;
14
+ display: flex;
15
+ opacity: 0;
16
+ height: 2px;
17
+ flex-direction: row;
18
+ padding: 0;
19
+ margin: 2px;
20
+ background-color: #322F35;
21
+ border-radius: 4px;
22
+ box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
23
+ transition: 225ms opacity cubic-bezier(.4,0,.2,1), 225ms height cubic-bezier(.4,0,.2,1), 225ms padding cubic-bezier(.4,0,.2,1);
24
+ &.show {
25
+ opacity: 1;
26
+ padding: 8px;
27
+ height: initial;
28
+ transition: 225ms opacity cubic-bezier(.4,0,.2,1), 225ms height cubic-bezier(.4,0,.2,1), 225ms padding cubic-bezier(.4,0,.2,1);
29
+ }
30
+ .text {
31
+ line-height: 2em;
32
+ padding-left: 8px;
33
+ flex: 1;
34
+ color: rgba(255,255,255,.87);
35
+ }
36
+ button.action {
37
+ flex:none;
38
+ display: none;
39
+ color: green;
40
+ .show {
41
+ display: inline-block;
42
+ }
43
+ }
44
+ .close {
45
+ flex: none;
46
+ display: none;
47
+ width: 24px;
48
+ height: 24px;
49
+ min-width: 24px;
50
+ background-image: url('../../theme/common/icon/dark/close.svg');
51
+ background-color: transparent;
52
+ &:hover, &:active {
53
+ background-color: transparent;
54
+ }
55
+ &.show {
56
+ display: inline-block;
57
+
58
+
59
+ }
60
+ }
61
+ }
62
+ }
63
+ @media only screen and (min-width: $desktop_switch) {
64
+ .snackbars {
65
+ left: 50%;
66
+ bottom: 200px;
67
+ margin-left: calc(-$width / 2);
68
+ width: $width;
69
+ transition: 195ms bottom cubic-bezier(0.4, 0, 0.2, 1);
70
+ &.up {
71
+ bottom: 500px;
72
+ transition: 225ms bottom cubic-bezier(0.4, 0, 0.2, 1);
73
+
74
+
75
+ }
76
+ }
77
+ }
@@ -0,0 +1,349 @@
1
+ .switch {
2
+ display: block;
3
+ position: relative;
4
+ padding-top: 0;
5
+ padding-bottom: 0;
6
+ margin-right: 16px;
7
+ vertical-align: top;
8
+ display: flex;
9
+ flew-direction: horizontal;
10
+ flex-wrap: nowrap;
11
+
12
+ //overflow: hidden;
13
+ //border-bottom: 1px solid rgba(100, 100, 100, 0.1);
14
+ input {
15
+ position: absolute;
16
+ left: -10000px;
17
+
18
+ &:active {
19
+ /* empty */
20
+ }
21
+ //background-color: #D6E5E4;
22
+ //transition: .1s;
23
+
24
+ }
25
+ .switch-label {
26
+ flex: 1;
27
+ order: 2;
28
+ cursor: default;
29
+ font-size: 1rem;
30
+ line-height: 1.2rem;
31
+ padding: 14px 0;
32
+ margin: 0px 2px 0px 16px;
33
+ overflow: hidden;
34
+
35
+ }
36
+ .switch-control {
37
+ order: 1;
38
+ cursor: pointer;
39
+ width: 48px;
40
+ height: 48px;
41
+ padding: 17px 7px;
42
+ border-radius: 50%;
43
+ transition: .3s;
44
+
45
+ .switch-track {
46
+ cursor: pointer;
47
+ position: relative;
48
+ display: block;
49
+ height: 14px;
50
+ padding: 2px;
51
+ background-color: rgba(34, 31, 31, 0.26);
52
+ border-radius: 7px;
53
+ transition: 0.2s cubic-bezier(0.46, 0, 0.24, 1);
54
+
55
+ .switch-knob {
56
+ cursor: pointer;
57
+ position: absolute;
58
+ top: -3px;
59
+ left: -2px;
60
+ display: block;
61
+ height: 20px;
62
+ width: 20px;
63
+ margin: 0;
64
+ border-radius: 50%;
65
+ background-color: rgba(241, 241, 241, 1);
66
+ box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.24), 0 0 2px 0 rgba(0, 0, 0, 0.12);
67
+ transition: 0.2s cubic-bezier(0.46, 0, 0.24, 1);
68
+
69
+ &::after {
70
+ position: absolute;
71
+ top: -14px;
72
+ left: -14px;
73
+ width: 48px;
74
+ height: 48px;
75
+
76
+ // -webkit-transform: scale(0);
77
+ // transform: scale(0);
78
+ // -webkit-transition: background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 90ms cubic-bezier(0.4, 0, 0.2, 1);
79
+ // transition: background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 90ms cubic-bezier(0.4, 0, 0.2, 1);
80
+ // transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1);
81
+ // transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 90ms cubic-bezier(0.4, 0, 0.2, 1);
82
+ border-radius: 24px;
83
+ content: "";
84
+
85
+ //opacity: .2;
86
+ transition: .2s;
87
+
88
+ }
89
+ }
90
+ }
91
+ }
92
+ &.is-checked {
93
+ .switch-track {
94
+ background-color: rgba($secondary-color, .3);
95
+
96
+ .switch-knob {
97
+ background-color: $secondary-color;
98
+ left: 15px;
99
+
100
+ }
101
+ }
102
+ }
103
+ &.is-focused {
104
+ .switch-track {
105
+ .switch-knob {
106
+ &::after {
107
+ transition: .2s;
108
+ position: absolute;
109
+ top: -14px;
110
+ left: -14px;
111
+ width: 48px;
112
+ height: 48px;
113
+ border-radius: 24px;
114
+ background-color: rgba(0, 0, 0, 0.05);
115
+ content: "";
116
+
117
+ }
118
+ }
119
+ }
120
+ }
121
+ &.is-disabled {
122
+ .switch-label {
123
+ opacity: .5;
124
+
125
+ }
126
+ .switch-control {
127
+ order: 3;
128
+ cursor: pointer;
129
+ width: 48px;
130
+ height: 48px;
131
+ padding: 17px 7px;
132
+
133
+ //border-radius: 50%;
134
+ //transition: .1s;
135
+ .switch-track {
136
+ background-color: rgba(34, 31, 31, 0.1);
137
+
138
+ .switch-knob {
139
+ background-color: rgb(189, 189, 189);
140
+ box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.12), 0 0 1px 0 rgba(0, 0, 0, 0.06);
141
+
142
+ }
143
+ }
144
+ }
145
+ }
146
+ }
147
+ .dark-mode {
148
+ .material-switch {
149
+ .switch-control {
150
+ .switch-track {
151
+ background-color: rgba(255, 255, 255, 0.5);
152
+
153
+ }
154
+ }
155
+ &.is-checked {
156
+ .switch-track {
157
+ background-color: rgba($secondary-color, .3);
158
+
159
+ }
160
+ }
161
+ &.is-focused {
162
+ .switch-control {
163
+ .switch-track {
164
+ .switch-knob {
165
+ &::after {
166
+ background-color: rgba(255, 255, 255, 0.05);
167
+
168
+
169
+ }
170
+ }
171
+ }
172
+ }
173
+ }
174
+ }
175
+ }
176
+ .material-switch {
177
+ display: block;
178
+ position: relative;
179
+ padding-top: 0;
180
+ padding-bottom: 0;
181
+ margin-right: 16px;
182
+ vertical-align: top;
183
+ display: flex;
184
+ flew-direction: horizontal;
185
+ flex-wrap: nowrap;
186
+
187
+ //overflow: hidden;
188
+ //border-bottom: 1px solid rgba(100, 100, 100, 0.1);
189
+ input {
190
+ position: absolute;
191
+ left: -10000px;
192
+
193
+ &:active {
194
+ /* empty */
195
+ }
196
+ //background-color: #D6E5E4;
197
+ //transition: .1s;
198
+
199
+ }
200
+ .switch-label {
201
+ flex: 1;
202
+ order: 2;
203
+ cursor: default;
204
+ font-size: 1rem;
205
+ line-height: 1.2rem;
206
+ padding: 14px 0;
207
+ margin: 0px 2px 0px 16px;
208
+ overflow: hidden;
209
+
210
+ }
211
+ .switch-control {
212
+ order: 1;
213
+ cursor: pointer;
214
+ width: 48px;
215
+ height: 48px;
216
+ padding: 17px 7px;
217
+ border-radius: 50%;
218
+ transition: .3s;
219
+
220
+ .switch-track {
221
+ cursor: pointer;
222
+ position: relative;
223
+ display: block;
224
+ height: 14px;
225
+ padding: 2px;
226
+ background-color: rgba(34, 31, 31, 0.26);
227
+ border-radius: 7px;
228
+ transition: 0.2s cubic-bezier(0.46, 0, 0.24, 1);
229
+
230
+ .switch-knob {
231
+ cursor: pointer;
232
+ position: absolute;
233
+ top: -3px;
234
+ left: -2px;
235
+ display: block;
236
+ height: 20px;
237
+ width: 20px;
238
+ margin: 0;
239
+ border-radius: 50%;
240
+ background-color: rgba(241, 241, 241, 1);
241
+ box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.24), 0 0 2px 0 rgba(0, 0, 0, 0.12);
242
+ transition: 0.2s cubic-bezier(0.46, 0, 0.24, 1);
243
+
244
+ &::after {
245
+ position: absolute;
246
+ top: -14px;
247
+ left: -14px;
248
+ width: 48px;
249
+ height: 48px;
250
+
251
+ // -webkit-transform: scale(0);
252
+ // transform: scale(0);
253
+ // -webkit-transition: background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 90ms cubic-bezier(0.4, 0, 0.2, 1);
254
+ // transition: background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 90ms cubic-bezier(0.4, 0, 0.2, 1);
255
+ // transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1);
256
+ // transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 90ms cubic-bezier(0.4, 0, 0.2, 1);
257
+ border-radius: 24px;
258
+ content: "";
259
+
260
+ //opacity: .2;
261
+ transition: .2s;
262
+
263
+ }
264
+ }
265
+ }
266
+ }
267
+ &.is-checked {
268
+ .switch-track {
269
+ background-color: rgba($secondary-color, .3);
270
+
271
+ .switch-knob {
272
+ background-color: $secondary-color;
273
+ left: 15px;
274
+
275
+ }
276
+ }
277
+ }
278
+ &.is-focused {
279
+ .switch-track {
280
+ .switch-knob {
281
+ &::after {
282
+ transition: .2s;
283
+ position: absolute;
284
+ top: -14px;
285
+ left: -14px;
286
+ width: 48px;
287
+ height: 48px;
288
+ border-radius: 24px;
289
+ background-color: rgba(0, 0, 0, 0.05);
290
+ content: "";
291
+
292
+ }
293
+ }
294
+ }
295
+ }
296
+ &.is-disabled {
297
+ .switch-label {
298
+ opacity: .5;
299
+
300
+ }
301
+ .switch-control {
302
+ order: 3;
303
+ cursor: pointer;
304
+ width: 48px;
305
+ height: 48px;
306
+ padding: 17px 7px;
307
+
308
+ //border-radius: 50%;
309
+ //transition: .1s;
310
+ .switch-track {
311
+ background-color: rgba(34, 31, 31, 0.1);
312
+
313
+ .switch-knob {
314
+ background-color: rgb(189, 189, 189);
315
+ box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.12), 0 0 1px 0 rgba(0, 0, 0, 0.06);
316
+
317
+ }
318
+ }
319
+ }
320
+ }
321
+ }
322
+ .dark-mode {
323
+ .material-switch {
324
+ .switch-control {
325
+ .switch-track {
326
+ background-color: rgba(255, 255, 255, 0.5);
327
+
328
+ }
329
+ }
330
+ &.is-checked {
331
+ .switch-track {
332
+ background-color: rgba($secondary-color, .3);
333
+
334
+ }
335
+ }
336
+ &.is-focused {
337
+ .switch-control {
338
+ .switch-track {
339
+ .switch-knob {
340
+ &::after {
341
+ background-color: rgba(255, 255, 255, 0.05);
342
+
343
+ }
344
+ }
345
+ }
346
+ }
347
+ }
348
+ }
349
+ }
@@ -0,0 +1,48 @@
1
+ .switcher {
2
+
3
+ position: relative;
4
+ margin-right: 16px;
5
+ padding-top: 8px;
6
+ margin-bottom: 8px;
7
+ vertical-align: top;
8
+ label {
9
+ display: block;
10
+ color: rgba(0,0,0,.4);
11
+ font-size: 0.7em;
12
+ font-weight: 600;
13
+ text-transform: uppercase;
14
+ margin-bottom: 3px;
15
+ }
16
+ ul {
17
+ user-select: none;
18
+ display: inline-block;
19
+ list-style: none;
20
+ padding: 0;
21
+ height: 40px;
22
+ margin: 0;
23
+ padding: 5px;
24
+ border-radius: 20px;
25
+ background-color: rgba(0, 0, 0, 0.03);
26
+ li {
27
+ cursor: pointer;
28
+ font-size: .8em;
29
+ font-weight: 600;
30
+ padding: 8px 16px 7px;
31
+ display: inline-block;
32
+ border-radius: 16px;
33
+ &.selected {
34
+ //color: rgba(255,255,255, 1)
35
+ // background-color: #4891F4
36
+ background-color: white;
37
+ box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.24), 0 0 2px 0 rgba(0, 0, 0, 0.12);
38
+ }
39
+ &.preselected {
40
+ //color: rgba(255,255,255, 1)
41
+ // background-color: #4891F4
42
+ background-color: white;
43
+ box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.24), 0 0 2px 0 rgba(0, 0, 0, 0.12);
44
+
45
+ }
46
+ }
47
+ }
48
+ }