react-ui-basics 0.0.182 → 0.0.184

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.
package/bundle.css CHANGED
@@ -1,600 +1,656 @@
1
- .animated {
2
- transition: opacity 250ms ease;
3
- opacity: 0;
1
+ .AutocompleteSelect {
2
+ display: inline-flex;
3
+ flex-flow: column;
4
+ justify-content: center;
5
+ position: relative;
6
+ min-width: 250px;
7
+ min-height: 36px;
8
+ user-select: none;
4
9
  }
5
10
 
6
- .animated.mounting, .animated.mounted {
7
- opacity: 1;
11
+ @keyframes clockwise {
12
+ 0% {
13
+ -webkit-transform: rotate(-90deg);
14
+ }
15
+ 100% {
16
+ -webkit-transform: translateX(0px);
17
+ }
8
18
  }
9
-
10
- .CircleProgress {
11
- width: 48px;
12
- height: 48px;
19
+ @keyframes anticlockwise {
20
+ 0% {
21
+ -webkit-transform: rotate(90deg);
22
+ }
23
+ 100% {
24
+ -webkit-transform: translateX(0px);
25
+ }
13
26
  }
14
-
15
- .CircleProgress .line {
16
- stroke-width: 2px;
17
- stroke: black;
18
- stroke-linecap: square;
19
- fill: none;
20
- transition: stroke-dashoffset 0.2s ease;
27
+ .AutocompleteSelect > .input {
28
+ width: 100%;
21
29
  }
22
30
 
23
- .FilteredList {
24
- max-height: 250px;
25
- position: relative;
31
+ .AutocompleteSelect .Scrollable {
32
+ padding-right: 0;
33
+ min-width: 100%;
26
34
  }
27
35
 
28
- .FilteredList.popup {
29
- padding: 0;
30
- visibility: hidden;
31
- position: absolute;
32
- background: white;
33
- z-index: 4;
34
- box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
35
- transition: all 0.2s ease-out;
36
- top: calc(100% + 4px);
37
- opacity: 0;
38
- border-radius: 2px;
36
+ .AutocompleteSelect.inline-multiple > .label {
37
+ top: -12px;
39
38
  }
40
39
 
41
- .FilteredList.popup.visible {
42
- opacity: 1;
43
- visibility: visible;
40
+ .AutocompleteSelect.inline-multiple > .selected {
41
+ flex-flow: row wrap;
44
42
  }
45
43
 
46
- .FilteredList.inline {
47
- max-height: 225px;
48
- margin-top: 5px;
44
+ .AutocompleteSelect.multiple-mini-inline {
45
+ height: 42px;
49
46
  }
50
47
 
51
- .FilteredList .child {
52
- display: flex;
53
- flex-flow: row nowrap;
54
- align-items: center;
55
- white-space: nowrap;
56
- font-size: 14px;
57
- color: #222222;
58
- height: 30px;
59
- padding: 5px 10px;
60
- padding-right: 15px;
48
+ .AutocompleteSelect.multiple-mini-inline > .label {
61
49
  cursor: pointer;
62
- overflow: hidden;
63
- transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
64
- border-left: 5px solid #4AC263;
65
- padding-left: 15px;
66
- margin-left: -5px;
50
+ width: 100%;
51
+ margin-left: -10px;
52
+ padding: 10px;
53
+ box-sizing: border-box;
54
+ top: 0;
67
55
  }
68
56
 
69
- .FilteredList .child.hidden {
70
- height: 0 !important;
71
- padding: 0 !important;
57
+ .AutocompleteSelect.multiple-mini-inline > .label.active {
58
+ padding: 0 10px;
72
59
  }
73
60
 
74
- .FilteredList .child.selected {
75
- background-color: #F0F0F0;
76
- padding-left: 10px;
77
- margin-left: 0px;
61
+ .AutocompleteSelect.multiple-mini-inline > .selected {
62
+ width: 250px;
78
63
  }
79
64
 
80
- .FilteredList .child.active {
81
- background-color: #eeeeee;
65
+ .AutocompleteSelect.multiple-mini-inline > .input {
66
+ box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
67
+ position: absolute;
68
+ top: 38px;
69
+ z-index: 2;
70
+ background-color: white;
71
+ min-width: 130%;
82
72
  }
83
73
 
84
- .FilteredList .child {
85
- margin-top: 8px;
74
+ .AutocompleteSelect.multiple-mini-inline > .input .TextField {
75
+ padding-left: 10px;
76
+ padding-right: 10px;
77
+ width: 100%;
78
+ box-sizing: border-box;
86
79
  }
87
80
 
88
- .FilteredList .child.hidden {
89
- margin-top: 0;
81
+ .AutocompleteSelect.multiple-mini-inline > .input.hidden {
82
+ opacity: 0;
83
+ visibility: hidden;
90
84
  }
91
85
 
92
- .FilteredList .child:not(.hidden) ~ .child {
86
+ .AutocompleteSelect.multiple-mini-inline .FilteredList .child:first-child {
93
87
  margin-top: 0;
94
88
  }
95
89
 
96
- .FilteredList .child:not(.hidden) ~ .child:last-child {
97
- margin-bottom: 8px;
90
+ .AutocompleteSelect .TextField {
91
+ margin-top: 8px;
98
92
  }
99
93
 
100
- .FilteredList .child:not(.hidden):last-child {
101
- margin-bottom: 8px;
94
+ .AutocompleteSelect .TextField input {
95
+ font-size: 14px;
102
96
  }
103
97
 
104
- .ImageGallery {
105
- position: fixed;
106
- top: 0;
107
- left: 0;
108
- bottom: 0;
109
- right: 0;
110
- z-index: 1000;
111
- background-color: rgba(0, 0, 0, 0.01);
98
+ .AutocompleteSelect > .label {
99
+ position: absolute;
100
+ transition: all 0.2s ease;
101
+ font-family: Roboto, sans-serif;
102
+ font-size: 14px;
103
+ color: rgba(0, 0, 0, 0.5);
104
+ z-index: 1;
105
+ cursor: text;
112
106
  user-select: none;
107
+ left: 4px;
108
+ top: 12px;
113
109
  }
114
110
 
115
- .ImageGallery:focus {
116
- outline-width: 0px;
111
+ .AutocompleteSelect > .label.active {
112
+ font-size: 10px;
113
+ top: 2px;
117
114
  }
118
115
 
119
- .ImageGallery.animated {
120
- transition: background-color 0.25s ease;
121
- opacity: 1;
116
+ .AutocompleteSelect > .label.active .arrow {
117
+ border-width: 4px 4px 0 4px;
118
+ margin-bottom: 1px;
122
119
  }
123
120
 
124
- .ImageGallery.mounting, .ImageGallery.mounted {
125
- background-color: rgba(0, 0, 0, 0.8);
121
+ .AutocompleteSelect > .label .arrow {
122
+ width: 0;
123
+ height: 0;
124
+ border-style: solid;
125
+ border-width: 5px 5px 0 5px;
126
+ border-color: rgba(0, 0, 0, 0.5) transparent transparent transparent;
127
+ display: inline-block;
128
+ margin-left: 5px;
129
+ margin-bottom: 2px;
130
+ transition: all 0.2s ease;
126
131
  }
127
132
 
128
- .ImageGallery .image {
133
+ .AutocompleteSelect > .selected {
134
+ margin-top: 8px;
135
+ display: flex;
136
+ cursor: pointer;
137
+ }
138
+
139
+ .AutocompleteSelect > .selected > .reset {
140
+ min-width: 36px;
141
+ max-width: 36px;
129
142
  position: absolute;
130
- cursor: grab;
143
+ right: 0;
144
+ top: 0;
145
+ background-color: white;
131
146
  }
132
147
 
133
- .ImageGallery .image .counter {
134
- display: none;
148
+ .AutocompleteSelect > .selected > .reset .material-icons {
149
+ margin: 0;
150
+ color: #BFBFBF;
151
+ font-size: 20px;
135
152
  }
136
153
 
137
- .ImageGallery .image img {
138
- border-radius: 4px;
139
- max-width: 100%;
140
- min-width: 100%;
154
+ .AutocompleteSelect > .selected.nolabel {
155
+ margin-top: 0px;
156
+ border-bottom: 1px solid #e5e3e3;
141
157
  }
142
158
 
143
- .ImageGallery .image.animated {
144
- transition: top 0.25s ease, left 0.25s ease, width 0.25s ease, height 0.25s ease, opacity 0.25s ease;
145
- will-change: top, left, width, height, opacity;
159
+ .AutocompleteSelect > .selected.nolabel .DummyChild {
160
+ display: inline-flex;
161
+ align-items: center;
162
+ flex-grow: 1;
163
+ font-size: 16px;
164
+ margin: 0px 10px;
165
+ margin-bottom: 5px;
166
+ height: 19px;
146
167
  }
147
168
 
148
- .ImageGallery .image.animated.mounting, .ImageGallery .image.animated.mounted, .ImageGallery .image.animated.unmounting {
149
- opacity: 1;
169
+ .AutocompleteSelect > .selected.nolabel .arrow {
170
+ width: 0;
171
+ height: 0;
172
+ border-style: solid;
173
+ border-width: 5px 5px 0 5px;
174
+ border-color: rgba(0, 0, 0, 0.5) transparent transparent transparent;
175
+ display: inline-block;
176
+ transition: all 0.2s ease;
177
+ margin: 0px 17px 3px 5px;
150
178
  }
151
179
 
152
- .ImageGallery .image.zoomed {
153
- text-align: center;
180
+ .AutocompleteSelect > .selected.inline {
181
+ font-size: 14px;
182
+ font-family: Roboto, sans-serif;
183
+ color: #1e252d;
184
+ text-overflow: ellipsis;
185
+ white-space: nowrap;
154
186
  overflow: hidden;
187
+ display: flex;
188
+ align-items: center;
155
189
  }
156
190
 
157
- .ImageGallery .image.dragging {
158
- transition: none;
159
- cursor: move;
191
+ .AutocompleteSelect > .selected.clickable {
192
+ overflow: hidden;
193
+ cursor: pointer;
194
+ padding: 10px;
195
+ margin-left: -10px;
196
+ margin-right: -10px;
160
197
  }
161
198
 
162
- .ImageGallery .image .close {
163
- position: absolute;
164
- top: -18px;
165
- right: -18px;
199
+ .AutocompleteSelect.inlineSelected {
200
+ flex-flow: row wrap;
201
+ justify-content: flex-start;
166
202
  }
167
203
 
168
- .ImageGallery .image .spinner {
169
- position: absolute;
170
- top: 0;
171
- bottom: 0;
172
- left: 0;
173
- right: 0;
174
- background: rgba(0, 0, 0, 0.65);
175
- }
176
-
177
- .ImageGallery .image .spinner .SpinningProgress {
178
- position: absolute;
179
- top: 50%;
180
- left: 50%;
181
- margin-left: -24px;
182
- margin-top: -24px;
183
- }
184
-
185
- .ImageGallery .image .spinner .SpinningProgress .line {
186
- stroke: #2196F3;
187
- }
188
-
189
- .ImageGallery .Button.animated {
190
- transition: all 0.25s ease;
191
- opacity: 0;
192
- transform: scale(0);
204
+ .AutocompleteSelect.inlineSelected.hasSelected {
205
+ padding-top: 7px;
193
206
  }
194
207
 
195
- .ImageGallery .Button.animated.mounted, .ImageGallery .Button.animated.mounting {
196
- opacity: 1;
197
- transform: scale(1);
208
+ .AutocompleteSelect.inlineSelected > .label {
209
+ width: 100%;
210
+ height: 100%;
198
211
  }
199
212
 
200
- .ImageGallery .Button {
201
- color: white;
202
- background: rgba(0, 0, 0, 0.4);
213
+ .AutocompleteSelect.inlineSelected > .label.active {
214
+ z-index: 0;
203
215
  }
204
216
 
205
- .ImageGallery .Button:hover {
206
- background: rgba(0, 0, 0, 0.7);
217
+ .AutocompleteSelect.inlineSelected .input {
218
+ width: unset;
219
+ flex-basis: 50px;
220
+ flex-grow: 1;
207
221
  }
208
222
 
209
- .ImageGallery > .arrow {
210
- position: absolute;
211
- top: 50%;
212
- height: 76px;
213
- width: 76px;
214
- margin-top: -38px;
223
+ .AutocompleteSelect.inlineSelected .input::after {
224
+ content: attr(data-value);
225
+ visibility: hidden;
226
+ white-space: pre;
227
+ font: inherit;
228
+ min-width: 2px;
229
+ border: 0;
230
+ margin: 0;
231
+ outline: 0;
232
+ float: left;
233
+ display: inline-block;
234
+ margin-top: -24px;
235
+ font-size: 14px;
236
+ padding: 2px;
215
237
  }
216
238
 
217
- .ImageGallery > .arrow.left {
218
- left: 5%;
239
+ .AutocompleteSelect.inlineSelected > .value:nth-child(2) {
240
+ margin-top: 7px;
219
241
  }
220
242
 
221
- .ImageGallery > .arrow.right {
222
- right: 5%;
243
+ .AutocompleteSelect.inlineSelected > .value, .AutocompleteSelect > .selected > .value {
244
+ cursor: pointer;
245
+ margin: 5px 10px 5px 0px;
246
+ display: inline-flex;
247
+ flex-flow: row wrap;
248
+ height: 30px;
249
+ align-items: center;
250
+ background-color: #f0f0f0;
251
+ border-radius: 30px;
252
+ position: relative;
253
+ font-family: Roboto, sans-serif;
254
+ font-size: 14px;
255
+ color: #1e252d;
223
256
  }
224
257
 
225
- .ImageGallery > .arrow .material-icons {
226
- font-size: 40px;
258
+ .AutocompleteSelect.inlineSelected > .value .DummyChild, .AutocompleteSelect > .selected > .value .DummyChild {
259
+ padding-left: 35px;
260
+ padding-right: 10px;
227
261
  }
228
262
 
229
- .ImageGallery .counter {
263
+ .AutocompleteSelect.inlineSelected > .value .button, .AutocompleteSelect > .selected > .value .button {
264
+ cursor: pointer;
265
+ min-width: 30px;
266
+ width: 30px;
267
+ height: 30px;
268
+ opacity: 0;
230
269
  position: absolute;
231
- top: 10px;
232
- left: 10px;
270
+ top: 0px;
271
+ left: 0px;
272
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
273
+ background-color: deepskyblue;
233
274
  color: white;
234
- font-size: 13px;
275
+ border-radius: 30px;
276
+ display: flex;
277
+ flex-flow: row;
278
+ justify-content: center;
279
+ align-items: center;
280
+ animation: anticlockwise 0.15s linear;
235
281
  }
236
282
 
237
- .ImageGallery .previews {
238
- height: 80px;
239
- position: absolute;
240
- bottom: 15px;
241
- left: 50%;
242
- transform: translateX(-50%);
243
- padding: 0 45px;
283
+ .AutocompleteSelect.inlineSelected > .value .button .material-icons, .AutocompleteSelect > .selected > .value .button .material-icons {
284
+ font-size: 22px;
244
285
  }
245
286
 
246
- .ImageGallery .previews .viewport {
287
+ .AutocompleteSelect.inlineSelected > .value:hover .button, .AutocompleteSelect > .selected > .value:hover .button {
288
+ width: 30px;
289
+ height: 30px;
290
+ opacity: 1;
291
+ animation: clockwise 0.15s linear;
247
292
  overflow: hidden;
248
- position: relative;
249
- height: 100%;
250
- }
251
-
252
- .ImageGallery .previews .container {
253
- position: relative;
254
- display: flex;
255
- flex-flow: row nowrap;
256
- height: 100%;
257
- transition: left 0.25s ease;
293
+ position: absolute;
258
294
  }
259
295
 
260
- .ImageGallery .previews .preview {
296
+ .Button {
261
297
  position: relative;
262
- height: 100%;
263
- display: inline-block;
264
- width: 106.66px;
265
- overflow: hidden;
266
- margin-left: 12px;
267
- border-radius: 2px;
298
+ min-width: 64px;
299
+ min-height: 36px;
300
+ height: 24px;
301
+ margin: 0px;
302
+ padding: 0px 16px;
303
+ border: none;
304
+ outline: none;
305
+ font-size: 14px;
306
+ font-weight: 500;
307
+ letter-spacing: 1.25px;
308
+ background: #dfdfdf;
309
+ text-transform: uppercase;
310
+ font-family: Roboto, sans-serif;
311
+ -webkit-tap-highlight-color: transparent;
312
+ display: inline-flex;
313
+ justify-content: center;
314
+ align-items: center;
268
315
  cursor: pointer;
269
- box-sizing: border-box;
316
+ overflow: hidden;
317
+ user-select: none;
318
+ border-radius: 3px;
319
+ transition: all 0.2s ease;
270
320
  }
271
321
 
272
- .ImageGallery .previews .preview:first-child {
273
- margin-left: 0;
322
+ .Button.flat {
323
+ background-color: transparent;
274
324
  }
275
325
 
276
- .ImageGallery .previews .preview > .border {
277
- position: absolute;
278
- bottom: 0;
279
- width: 100%;
280
- height: 3px;
326
+ .Button.flat:hover {
327
+ background-color: rgba(0, 0, 0, 0.05);
281
328
  }
282
329
 
283
- .ImageGallery .previews .preview > .border .line {
284
- left: 50%;
285
- width: 0;
286
- height: 3px;
287
- min-height: 3px;
288
- background-color: #4AC263;
289
- transition: all 0.2s ease;
290
- position: absolute;
330
+ .Button.green {
331
+ background-color: #43a047;
332
+ color: white;
291
333
  }
292
334
 
293
- .ImageGallery .previews .preview:after {
294
- content: "";
295
- position: absolute;
296
- top: 0;
297
- right: 0;
298
- bottom: 0;
299
- left: 0;
300
- background: rgba(0, 0, 0, 0.35);
301
- transition: background 0.2s ease;
335
+ .Button.green:hover {
336
+ background-color: #3b8e3f;
302
337
  }
303
338
 
304
- .ImageGallery .previews .preview:hover:after {
305
- background: rgba(0, 0, 0, 0.1);
339
+ .Button.blue {
340
+ background-color: #039be5;
341
+ color: white;
306
342
  }
307
343
 
308
- .ImageGallery .previews .preview.selected .border .line {
309
- left: 0;
310
- width: 100%;
344
+ .Button.blue:hover {
345
+ background-color: #038acc;
311
346
  }
312
347
 
313
- .ImageGallery .previews .preview.selected:after {
314
- background: rgba(0, 0, 0, 0);
348
+ .Button.red {
349
+ background-color: #e53935;
350
+ color: white;
315
351
  }
316
352
 
317
- .ImageGallery .previews > .arrow {
318
- position: absolute;
319
- top: 50%;
320
- height: 30px;
321
- width: 30px;
322
- min-width: 30px;
323
- min-height: 30px;
324
- margin-top: -15px;
353
+ .Button.red:hover {
354
+ background-color: #e2231e;
325
355
  }
326
356
 
327
- .ImageGallery .previews > .arrow.left {
328
- left: 0;
357
+ .Button.black {
358
+ background-color: #1e252d;
359
+ color: white;
329
360
  }
330
361
 
331
- .ImageGallery .previews > .arrow.right {
332
- right: 0;
362
+ .Button.black:hover {
363
+ background-color: #14181e;
333
364
  }
334
365
 
335
- .ImageGallery .previews > .arrow .material-icons {
336
- font-size: 24px;
366
+ .Button.gray {
367
+ background: #D9D9D9;
368
+ color: #999999;
337
369
  }
338
370
 
339
- .FormUploadProgress {
340
- position: absolute;
341
- left: 0;
342
- right: 0;
343
- top: 0;
344
- bottom: 0;
345
- background-color: rgba(255, 255, 255, 0.6);
346
- z-index: 2;
371
+ .Button.gray:hover {
372
+ background-color: #cccccc;
347
373
  }
348
374
 
349
- .FormUploadProgress.animated.mounting, .FormUploadProgress.animated.mounted {
350
- transition-delay: 500ms;
375
+ .Button.small {
376
+ padding: 0px 8px;
377
+ min-height: 16px;
378
+ min-width: 16px;
351
379
  }
352
380
 
353
- .FormUploadProgress .wrapper {
354
- position: sticky;
355
- top: 40%;
356
- margin-top: 40%;
357
- margin-left: 50%;
358
- transform: translateX(-50%);
359
- display: flex;
360
- flex-flow: column;
361
- justify-content: center;
362
- align-items: center;
381
+ .Button > .material-icons {
382
+ margin-right: 10px;
363
383
  }
364
384
 
365
- .FormUploadProgress .wrapper .CircleProgress, .FormUploadProgress .wrapper .SpinningProgress {
366
- position: absolute;
367
- width: 107px;
368
- height: 107px;
369
- top: 0;
370
- left: 0;
385
+ .Button.round {
386
+ padding: 0px;
387
+ min-width: 36px;
388
+ border-radius: 50%;
371
389
  }
372
390
 
373
- .FormUploadProgress .wrapper .CircleProgress .line, .FormUploadProgress .wrapper .SpinningProgress .line {
374
- stroke: #2196F3;
391
+ .Button.round > .material-icons {
392
+ margin: 0px;
375
393
  }
376
394
 
377
- .FormUploadProgress .wrapper > .progress {
378
- width: 107px;
379
- height: 107px;
380
- min-height: 107px;
381
- display: flex;
382
- justify-content: center;
383
- align-items: center;
384
- box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
385
- border-radius: 50%;
386
- background: white;
387
- position: relative;
395
+ .Button .ripple {
396
+ position: absolute;
397
+ background: rgba(0, 0, 0, 0.1);
398
+ border-radius: 100%;
399
+ transform: scale(0);
400
+ pointer-events: none;
401
+ transition: opacity 0.2s ease-out;
388
402
  }
389
403
 
390
- .FormUploadProgress .wrapper > .progress > .value {
391
- display: inline-block;
392
- margin-top: 5px;
393
- font-weight: bold;
394
- line-height: 16px;
395
- font-size: 13px;
396
- text-align: center;
397
- color: #818181;
404
+ .Button .ripple.show {
405
+ animation: ripple 0.35s ease-out;
398
406
  }
399
407
 
400
- .FormUploadProgress .wrapper .cancel {
401
- min-width: 107px;
402
- margin-top: 20px;
403
- background-color: white;
404
- color: #F96B5C;
405
- box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
408
+ .Button:active .ripple.showed {
409
+ opacity: 1;
406
410
  }
407
411
 
408
- .Dropzone {
409
- position: relative;
412
+ .Button:focus .ripple.focused {
413
+ opacity: 1;
414
+ transition: opacity 0.2s ease-out, transform 0.2s ease-out;
415
+ transform: scale(1);
416
+ animation: resize 1.25s ease-out infinite;
417
+ animation-delay: 0.2s;
418
+ animation-direction: alternate;
410
419
  }
411
420
 
412
- .Dropzone > .overlay {
413
- position: absolute;
414
- left: 0;
415
- right: 0;
416
- top: 0;
417
- bottom: 0;
418
- background-color: #38ADC4;
419
- z-index: 1;
421
+ .Button .ripple.showed {
422
+ transform: scale(2);
420
423
  opacity: 0;
421
- transition: all 0.2s ease;
422
- transition-delay: 100ms;
423
- visibility: hidden;
424
- display: flex;
425
- justify-content: center;
426
- align-items: center;
427
424
  }
428
425
 
429
- .Dropzone > .overlay .drop {
430
- border-radius: 4px;
431
- border: 1px dashed #FFFFFF;
432
- position: absolute;
433
- top: 18px;
434
- left: 18px;
435
- right: 18px;
436
- bottom: 18px;
437
- display: flex;
438
- justify-content: center;
439
- align-items: center;
440
- font-weight: 500;
441
- font-size: 18px;
442
- color: #FFFFFF;
426
+ @keyframes ripple {
427
+ to {
428
+ transform: scale(2);
429
+ }
430
+ }
431
+ @keyframes resize {
432
+ to {
433
+ transform: scale(0.9);
434
+ }
435
+ }
436
+ .Button.raised {
437
+ transition: color 0.2s ease-out, background-color 0.2s ease-out, box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
443
438
  }
444
439
 
445
- .Dropzone.dragging > .overlay {
446
- opacity: 0.7;
447
- visibility: visible;
448
- transition-delay: 0s;
440
+ .Button.raised:hover {
441
+ box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.25);
449
442
  }
450
443
 
451
- .Dropzone.dragging > * {
452
- pointer-events: none;
444
+ .Button.raised:active {
445
+ box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.35);
453
446
  }
454
447
 
455
- .Dropzone > input.file {
456
- position: absolute;
457
- left: 0;
458
- right: 0;
459
- top: 0;
460
- bottom: 0;
461
- width: 100%;
462
- height: 100%;
463
- opacity: 0;
464
- cursor: pointer;
465
- z-index: 1;
448
+ .Button.disabled {
449
+ box-shadow: none;
450
+ background: #D9D9D9;
451
+ color: #999999;
466
452
  }
467
453
 
468
- .ModalMenu {
469
- position: absolute;
470
- top: 10px;
471
- right: 50px;
454
+ .Button.disabled:hover {
455
+ background-color: #cccccc;
472
456
  }
473
457
 
474
- .ModalMenu .material-icons {
475
- color: #818181;
458
+ .Button::-moz-focus-inner {
459
+ border: 0;
476
460
  }
477
461
 
478
- .ModalMenu .Button.animated {
479
- position: absolute;
480
- transition: opacity 150ms ease-in, right 200ms ease-in;
462
+ .animated {
463
+ transition: opacity 250ms ease;
481
464
  opacity: 0;
482
- right: 0;
483
- top: 0;
484
465
  }
485
466
 
486
- .ModalMenu .Button.animated.mounting, .ModalMenu .Button.animated.mounted {
467
+ .animated.mounting, .animated.mounted {
487
468
  opacity: 1;
488
469
  }
489
470
 
490
- .ModalMenu .Button.animated.unmounting {
491
- transition: opacity 100ms ease-out, right 200ms ease-out;
471
+ .CircleProgress {
472
+ width: 48px;
473
+ height: 48px;
492
474
  }
493
475
 
494
- .ModalMenu .Button.active {
495
- background: #EBEBEB;
476
+ .CircleProgress .line {
477
+ stroke-width: 2px;
478
+ stroke: black;
479
+ stroke-linecap: square;
480
+ fill: none;
481
+ transition: stroke-dashoffset 0.2s ease;
496
482
  }
497
483
 
498
- .ModalMenu .separator {
499
- height: 24px;
500
- width: 1px;
501
- background-color: #D9D9D9;
502
- margin-left: 4px;
484
+ .Checkbox {
485
+ position: relative;
486
+ white-space: pre;
503
487
  }
504
488
 
505
- .Scrollable {
506
- max-height: 250px;
507
- max-width: 250px;
508
- padding-right: 5px;
509
- position: relative;
510
- display: flex;
511
- flex-flow: column;
512
- align-items: stretch;
513
- overflow: hidden;
489
+ .Checkbox *, .Checkbox *:before, .Checkbox *:after {
490
+ box-sizing: border-box;
514
491
  }
515
492
 
516
- .Scrollable:hover > .scrollbar.auto {
517
- transition-delay: 0s;
518
- opacity: 1;
493
+ .Checkbox label {
494
+ font-family: Roboto, sans-serif;
495
+ font-size: 14px;
496
+ color: #1e252d;
497
+ cursor: pointer;
519
498
  }
520
499
 
521
- .Scrollable .viewport {
522
- overflow-y: scroll;
523
- overflow-x: scroll;
524
- max-height: 100%;
525
- scroll-behavior: smooth;
526
- scrollbar-width: none;
500
+ .Checkbox label:before, .Checkbox label:after {
501
+ content: "";
502
+ position: absolute;
503
+ left: 0;
504
+ top: 0;
527
505
  }
528
506
 
529
- .Scrollable .viewport::-webkit-scrollbar {
530
- display: none;
507
+ .Checkbox label:before {
508
+ width: 20px;
509
+ height: 20px;
510
+ background: #fff;
511
+ border: 2px solid #252525;
512
+ border-radius: 2px;
513
+ cursor: pointer;
514
+ transition: background 0.3s;
531
515
  }
532
516
 
533
- .Scrollable.without-scroll-horizontal {
534
- max-width: unset;
517
+ .Checkbox input[type=checkbox] {
518
+ outline: 0;
519
+ margin-right: 10px;
520
+ visibility: hidden;
535
521
  }
536
522
 
537
- .Scrollable.without-scroll {
538
- padding-right: 0;
539
- max-height: unset;
523
+ .Checkbox input[type=checkbox]:checked + label:before {
524
+ background: #4AC263;
525
+ border: none;
540
526
  }
541
527
 
542
- .Scrollable.without-scroll > .viewport {
543
- padding-right: 0;
544
- margin-right: 0;
528
+ .Checkbox input[type=checkbox]:checked + label:after {
529
+ transform: rotate(-45deg);
530
+ top: 6px;
531
+ left: 4px;
532
+ width: 12px;
533
+ height: 6px;
534
+ border: 2px solid #fff;
535
+ border-top-style: none;
536
+ border-right-style: none;
545
537
  }
546
538
 
547
- .Scrollable.without-scroll > .scrollbar {
548
- visibility: hidden;
539
+ .Checkbox input[type=checkbox]:disabled + label {
540
+ color: gray;
549
541
  }
550
542
 
551
- .Scrollable .scrollbar {
552
- position: absolute;
553
- right: 0px;
554
- top: 0px;
555
- width: 5px;
556
- transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
557
- transition-delay: 0.5s;
558
- z-index: 1;
543
+ .Checkbox input[type=checkbox]:disabled + label:before {
544
+ border-color: rgba(0, 0, 0, 0.26);
559
545
  }
560
546
 
561
- .Scrollable .scrollbar.auto, .Scrollable .scrollbar.hidden {
562
- opacity: 0;
547
+ .Checkbox input[type=checkbox]:disabled:checked + label:before {
548
+ background: rgba(0, 0, 0, 0.26);
563
549
  }
564
550
 
565
- .Scrollable .scrollbar .thumb {
566
- background-color: rgba(0, 0, 0, 0.3);
567
- width: 5px;
568
- position: absolute;
569
- right: 0px;
570
- top: 0px;
571
- user-select: none;
572
- will-change: top;
551
+ .FilteredList {
552
+ max-height: 250px;
553
+ position: relative;
554
+ }
555
+
556
+ .FilteredList.popup {
557
+ padding: 0;
558
+ visibility: hidden;
559
+ position: absolute;
560
+ background: white;
561
+ z-index: 4;
562
+ box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
563
+ transition: all 0.2s ease-out;
564
+ top: calc(100% + 4px);
565
+ opacity: 0;
573
566
  border-radius: 2px;
574
567
  }
575
568
 
576
- .Scrollable .scrollbar .thumb:hover {
577
- background-color: rgba(0, 0, 0, 0.5);
569
+ .FilteredList.popup.visible {
570
+ opacity: 1;
571
+ visibility: visible;
578
572
  }
579
573
 
580
- .Scrollable .scrollbar .thumb:active {
581
- background-color: rgba(0, 0, 0, 0.7);
574
+ .FilteredList.inline {
575
+ max-height: 225px;
576
+ margin-top: 5px;
582
577
  }
583
578
 
584
- .Scrollable .scrollbar.horizontal {
585
- left: 0px;
586
- right: 0px;
587
- height: 5px;
588
- bottom: 0;
589
- width: unset;
590
- top: unset;
579
+ .FilteredList .child {
580
+ display: flex;
581
+ flex-flow: row nowrap;
582
+ align-items: center;
583
+ white-space: nowrap;
584
+ font-size: 14px;
585
+ color: #222222;
586
+ height: 30px;
587
+ padding: 5px 10px;
588
+ padding-right: 15px;
589
+ cursor: pointer;
590
+ overflow: hidden;
591
+ transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
592
+ border-left: 5px solid #4AC263;
593
+ padding-left: 15px;
594
+ margin-left: -5px;
591
595
  }
592
596
 
593
- .Scrollable .scrollbar.horizontal .thumb {
594
- height: 5px;
595
- left: 0px;
596
- bottom: 0px;
597
- will-change: left;
597
+ .FilteredList .child.hidden {
598
+ height: 0 !important;
599
+ padding: 0 !important;
600
+ }
601
+
602
+ .FilteredList .child.selected {
603
+ background-color: #F0F0F0;
604
+ padding-left: 10px;
605
+ margin-left: 0px;
606
+ }
607
+
608
+ .FilteredList .child.active {
609
+ background-color: #eeeeee;
610
+ }
611
+
612
+ .FilteredList .child {
613
+ margin-top: 8px;
614
+ }
615
+
616
+ .FilteredList .child.hidden {
617
+ margin-top: 0;
618
+ }
619
+
620
+ .FilteredList .child:not(.hidden) ~ .child {
621
+ margin-top: 0;
622
+ }
623
+
624
+ .FilteredList .child:not(.hidden) ~ .child:last-child {
625
+ margin-bottom: 8px;
626
+ }
627
+
628
+ .FilteredList .child:not(.hidden):last-child {
629
+ margin-bottom: 8px;
630
+ }
631
+
632
+ .Button.FloatingActionButton {
633
+ position: absolute;
634
+ right: 16px;
635
+ bottom: 16px;
636
+ width: 56px;
637
+ height: 56px;
638
+ padding: 16px;
639
+ transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
640
+ }
641
+
642
+ .Button.FloatingActionButton.raised {
643
+ transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s ease-out, background-color 0.2s ease-out, box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
644
+ }
645
+
646
+ .Button.FloatingActionButton.mini {
647
+ width: 40px;
648
+ height: 40px;
649
+ padding: 8px;
650
+ }
651
+
652
+ .Button.FloatingActionButton.hidden {
653
+ bottom: -100px;
598
654
  }
599
655
 
600
656
  .DropFileInput {
@@ -624,1009 +680,953 @@
624
680
  margin-right: 10px;
625
681
  }
626
682
 
627
- .Snackbar {
628
- transform: translateX(-50%);
629
- overflow: hidden;
630
- background-color: #323232;
631
- padding: 14px 24px 14px 24px;
632
- color: #fff;
633
- min-width: 288px;
634
- max-width: 568px;
683
+ .ImageGallery {
635
684
  position: fixed;
636
- bottom: -50px;
637
- left: 50%;
638
- display: flex;
639
- flex-wrap: nowrap;
640
- align-items: center;
641
- opacity: 0;
642
- transition: bottom 0.25s ease, opacity 0.2s ease;
643
- border-radius: 4px;
644
- box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
645
- }
646
-
647
- .Snackbar.shown {
648
- bottom: 15px;
649
- opacity: 1;
685
+ top: 0;
686
+ left: 0;
687
+ bottom: 0;
688
+ right: 0;
689
+ z-index: 1000;
690
+ background-color: rgba(0, 0, 0, 0.01);
691
+ user-select: none;
650
692
  }
651
693
 
652
- .Snackbar .message {
653
- overflow: hidden;
654
- line-height: 1.2em;
655
- min-height: 1.2em;
656
- max-height: 2.4em;
657
- flex: 1;
694
+ .ImageGallery:focus {
695
+ outline-width: 0px;
658
696
  }
659
697
 
660
- .Snackbar .action {
661
- text-transform: uppercase;
662
- font-weight: bold;
663
- margin-left: 48px;
664
- color: #bf3727;
698
+ .ImageGallery.animated {
699
+ transition: background-color 0.25s ease;
700
+ opacity: 1;
665
701
  }
666
702
 
667
- .Snackbar .action a {
668
- text-decoration: none;
669
- color: #bf3727;
703
+ .ImageGallery.mounting, .ImageGallery.mounted {
704
+ background-color: rgba(0, 0, 0, 0.8);
670
705
  }
671
706
 
672
- .Modal {
673
- display: block;
674
- position: fixed;
675
- top: 0;
676
- left: 0;
677
- right: 0;
678
- bottom: 100%;
679
- overflow-y: scroll;
680
- transition: bottom 0ms linear;
681
- transition-delay: 0.2s;
707
+ .ImageGallery .image {
708
+ position: absolute;
709
+ cursor: grab;
682
710
  }
683
711
 
684
- .Modal.show {
685
- transition-delay: 0s;
686
- bottom: 0;
712
+ .ImageGallery .image .counter {
713
+ display: none;
687
714
  }
688
715
 
689
- .Modal > .overlay {
690
- position: fixed;
691
- top: 0;
692
- bottom: 100%;
693
- left: 0;
694
- right: 0;
695
- transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
696
- opacity: 0;
697
- background-color: black;
698
- pointer-events: none;
716
+ .ImageGallery .image img {
717
+ border-radius: 4px;
718
+ max-width: 100%;
719
+ min-width: 100%;
699
720
  }
700
721
 
701
- .Modal > .overlay.show {
702
- opacity: 0.5;
703
- bottom: 0;
722
+ .ImageGallery .image.animated {
723
+ transition: top 0.25s ease, left 0.25s ease, width 0.25s ease, height 0.25s ease, opacity 0.25s ease;
724
+ will-change: top, left, width, height, opacity;
704
725
  }
705
726
 
706
- .Modal > .content {
707
- left: 50%;
708
- top: 10vh;
709
- margin-bottom: 10vh;
710
- font-size: 16px;
711
- padding: 0;
712
- opacity: 0;
713
- transition: opacity 0.25s ease, transform 0.25s ease;
714
- transform: scaleY(0) translateY(-200px) translateX(-50%);
715
- transform-origin: top;
716
- position: absolute;
717
- border-radius: 2px;
718
- box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
727
+ .ImageGallery .image.animated.mounting, .ImageGallery .image.animated.mounted, .ImageGallery .image.animated.unmounting {
728
+ opacity: 1;
719
729
  }
720
730
 
721
- .Modal > .content.show {
722
- opacity: 1;
723
- transform: scaleY(1) translateY(0px) translateX(-50%);
731
+ .ImageGallery .image.zoomed {
732
+ text-align: center;
733
+ overflow: hidden;
724
734
  }
725
735
 
726
- .Modal > .content > .Scrollable {
727
- overflow: visible;
728
- max-height: 80vh;
736
+ .ImageGallery .image.dragging {
737
+ transition: none;
738
+ cursor: move;
729
739
  }
730
740
 
731
- .Modal > .content > .Scrollable > .viewport {
732
- min-width: 10px;
733
- min-height: 10px;
741
+ .ImageGallery .image .close {
742
+ position: absolute;
743
+ top: -18px;
744
+ right: -18px;
734
745
  }
735
746
 
736
- .Modal > .content > .Button.close {
737
- top: 10px;
738
- right: 10px;
747
+ .ImageGallery .image .spinner {
739
748
  position: absolute;
749
+ top: 0;
750
+ bottom: 0;
751
+ left: 0;
752
+ right: 0;
753
+ background: rgba(0, 0, 0, 0.65);
740
754
  }
741
755
 
742
- .Switch {
743
- display: inline-flex;
744
- padding-top: 5px;
756
+ .ImageGallery .image .spinner .SpinningProgress {
757
+ position: absolute;
758
+ top: 50%;
759
+ left: 50%;
760
+ margin-left: -24px;
761
+ margin-top: -24px;
745
762
  }
746
763
 
747
- .Switch .switch-input {
748
- display: none;
764
+ .ImageGallery .image .spinner .SpinningProgress .line {
765
+ stroke: #2196F3;
749
766
  }
750
767
 
751
- .Switch .switch-label {
752
- position: relative;
753
- display: inline-flex;
754
- align-items: center;
755
- min-width: 38px;
756
- height: 24px;
757
- cursor: pointer;
758
- font-weight: 500;
759
- text-align: left;
760
- user-select: none;
761
- margin: 0;
762
- padding: 0;
763
- padding-left: 44px;
764
- box-sizing: border-box;
765
- }
766
-
767
- .Switch .switch-label:before, .Switch .switch-label:after {
768
- content: "";
769
- box-sizing: border-box;
770
- position: absolute;
771
- margin: 0;
772
- outline: 0;
773
- top: 50%;
774
- transform: translate(0, -50%);
775
- transition: all 0.3s ease;
768
+ .ImageGallery .Button.animated {
769
+ transition: all 0.25s ease;
770
+ opacity: 0;
771
+ transform: scale(0);
776
772
  }
777
773
 
778
- .Switch .switch-label:before {
779
- left: 1px;
780
- width: 34px;
781
- height: 14px;
782
- background-color: #9E9E9E;
783
- border-radius: 8px;
774
+ .ImageGallery .Button.animated.mounted, .ImageGallery .Button.animated.mounting {
775
+ opacity: 1;
776
+ transform: scale(1);
784
777
  }
785
778
 
786
- .Switch .switch-label:after {
787
- left: 0;
788
- width: 20px;
789
- height: 20px;
790
- background-color: #FAFAFA;
791
- border-radius: 50%;
792
- box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.098), 0 1px 5px 0 rgba(0, 0, 0, 0.084);
779
+ .ImageGallery .Button {
780
+ color: white;
781
+ background: rgba(0, 0, 0, 0.4);
793
782
  }
794
783
 
795
- .Switch .switch-label .toggle--on {
796
- display: none;
784
+ .ImageGallery .Button:hover {
785
+ background: rgba(0, 0, 0, 0.7);
797
786
  }
798
787
 
799
- .Switch .switch-label .toggle--off {
800
- display: inline-block;
788
+ .ImageGallery > .arrow {
789
+ position: absolute;
790
+ top: 50%;
791
+ height: 76px;
792
+ width: 76px;
793
+ margin-top: -38px;
801
794
  }
802
795
 
803
- .Switch .switch-label .label {
804
- margin-right: 5px;
796
+ .ImageGallery > .arrow.left {
797
+ left: 5%;
805
798
  }
806
799
 
807
- .Switch .switch-input:checked + .switch-label:before {
808
- background-color: #A5D6A7;
800
+ .ImageGallery > .arrow.right {
801
+ right: 5%;
809
802
  }
810
803
 
811
- .Switch .switch-input:checked + .switch-label:after {
812
- background-color: #4CAF50;
813
- transform: translate(80%, -50%);
804
+ .ImageGallery > .arrow .material-icons {
805
+ font-size: 40px;
814
806
  }
815
807
 
816
- .Switch .switch-input:checked + .switch-label .toggle--on {
817
- display: inline-block;
808
+ .ImageGallery .counter {
809
+ position: absolute;
810
+ top: 10px;
811
+ left: 10px;
812
+ color: white;
813
+ font-size: 13px;
818
814
  }
819
815
 
820
- .Switch .switch-input:checked + .switch-label .toggle--off {
821
- display: none;
816
+ .ImageGallery .previews {
817
+ height: 80px;
818
+ position: absolute;
819
+ bottom: 15px;
820
+ left: 50%;
821
+ transform: translateX(-50%);
822
+ padding: 0 45px;
822
823
  }
823
824
 
824
- .Button {
825
- position: relative;
826
- min-width: 64px;
827
- min-height: 36px;
828
- height: 24px;
829
- margin: 0px;
830
- padding: 0px 16px;
831
- border: none;
832
- outline: none;
833
- font-size: 14px;
834
- font-weight: 500;
835
- letter-spacing: 1.25px;
836
- background: #dfdfdf;
837
- text-transform: uppercase;
838
- font-family: Roboto, sans-serif;
839
- -webkit-tap-highlight-color: transparent;
840
- display: inline-flex;
841
- justify-content: center;
842
- align-items: center;
843
- cursor: pointer;
825
+ .ImageGallery .previews .viewport {
844
826
  overflow: hidden;
845
- user-select: none;
846
- border-radius: 3px;
847
- transition: all 0.2s ease;
827
+ position: relative;
828
+ height: 100%;
848
829
  }
849
830
 
850
- .Button.flat {
851
- background-color: transparent;
831
+ .ImageGallery .previews .container {
832
+ position: relative;
833
+ display: flex;
834
+ flex-flow: row nowrap;
835
+ height: 100%;
836
+ transition: left 0.25s ease;
852
837
  }
853
838
 
854
- .Button.flat:hover {
855
- background-color: rgba(0, 0, 0, 0.05);
839
+ .ImageGallery .previews .preview {
840
+ position: relative;
841
+ height: 100%;
842
+ display: inline-block;
843
+ width: 106.66px;
844
+ overflow: hidden;
845
+ margin-left: 12px;
846
+ border-radius: 2px;
847
+ cursor: pointer;
848
+ box-sizing: border-box;
856
849
  }
857
850
 
858
- .Button.green {
859
- background-color: #43a047;
860
- color: white;
851
+ .ImageGallery .previews .preview:first-child {
852
+ margin-left: 0;
861
853
  }
862
854
 
863
- .Button.green:hover {
864
- background-color: #3b8e3f;
855
+ .ImageGallery .previews .preview > .border {
856
+ position: absolute;
857
+ bottom: 0;
858
+ width: 100%;
859
+ height: 3px;
865
860
  }
866
861
 
867
- .Button.blue {
868
- background-color: #039be5;
869
- color: white;
862
+ .ImageGallery .previews .preview > .border .line {
863
+ left: 50%;
864
+ width: 0;
865
+ height: 3px;
866
+ min-height: 3px;
867
+ background-color: #4AC263;
868
+ transition: all 0.2s ease;
869
+ position: absolute;
870
870
  }
871
871
 
872
- .Button.blue:hover {
873
- background-color: #038acc;
872
+ .ImageGallery .previews .preview:after {
873
+ content: "";
874
+ position: absolute;
875
+ top: 0;
876
+ right: 0;
877
+ bottom: 0;
878
+ left: 0;
879
+ background: rgba(0, 0, 0, 0.35);
880
+ transition: background 0.2s ease;
874
881
  }
875
882
 
876
- .Button.red {
877
- background-color: #e53935;
878
- color: white;
883
+ .ImageGallery .previews .preview:hover:after {
884
+ background: rgba(0, 0, 0, 0.1);
879
885
  }
880
886
 
881
- .Button.red:hover {
882
- background-color: #e2231e;
887
+ .ImageGallery .previews .preview.selected .border .line {
888
+ left: 0;
889
+ width: 100%;
883
890
  }
884
891
 
885
- .Button.black {
886
- background-color: #1e252d;
887
- color: white;
892
+ .ImageGallery .previews .preview.selected:after {
893
+ background: rgba(0, 0, 0, 0);
888
894
  }
889
895
 
890
- .Button.black:hover {
891
- background-color: #14181e;
896
+ .ImageGallery .previews > .arrow {
897
+ position: absolute;
898
+ top: 50%;
899
+ height: 30px;
900
+ width: 30px;
901
+ min-width: 30px;
902
+ min-height: 30px;
903
+ margin-top: -15px;
892
904
  }
893
905
 
894
- .Button.gray {
895
- background: #D9D9D9;
896
- color: #999999;
906
+ .ImageGallery .previews > .arrow.left {
907
+ left: 0;
897
908
  }
898
909
 
899
- .Button.gray:hover {
900
- background-color: #cccccc;
910
+ .ImageGallery .previews > .arrow.right {
911
+ right: 0;
901
912
  }
902
913
 
903
- .Button.small {
904
- padding: 0px 8px;
905
- min-height: 16px;
906
- min-width: 16px;
914
+ .ImageGallery .previews > .arrow .material-icons {
915
+ font-size: 24px;
907
916
  }
908
917
 
909
- .Button > .material-icons {
910
- margin-right: 10px;
918
+ .FormUploadProgress {
919
+ position: absolute;
920
+ left: 0;
921
+ right: 0;
922
+ top: 0;
923
+ bottom: 0;
924
+ background-color: rgba(255, 255, 255, 0.6);
925
+ z-index: 2;
911
926
  }
912
927
 
913
- .Button.round {
914
- padding: 0px;
915
- min-width: 36px;
916
- border-radius: 50%;
928
+ .FormUploadProgress.animated.mounting, .FormUploadProgress.animated.mounted {
929
+ transition-delay: 500ms;
917
930
  }
918
931
 
919
- .Button.round > .material-icons {
920
- margin: 0px;
932
+ .FormUploadProgress .wrapper {
933
+ position: sticky;
934
+ top: 40%;
935
+ margin-top: 40%;
936
+ margin-left: 50%;
937
+ transform: translateX(-50%);
938
+ display: flex;
939
+ flex-flow: column;
940
+ justify-content: center;
941
+ align-items: center;
921
942
  }
922
943
 
923
- .Button .ripple {
944
+ .FormUploadProgress .wrapper .CircleProgress, .FormUploadProgress .wrapper .SpinningProgress {
924
945
  position: absolute;
925
- background: rgba(0, 0, 0, 0.1);
926
- border-radius: 100%;
927
- transform: scale(0);
928
- pointer-events: none;
929
- transition: opacity 0.2s ease-out;
930
- }
931
-
932
- .Button .ripple.show {
933
- animation: ripple 0.35s ease-out;
946
+ width: 107px;
947
+ height: 107px;
948
+ top: 0;
949
+ left: 0;
934
950
  }
935
951
 
936
- .Button:active .ripple.showed {
937
- opacity: 1;
952
+ .FormUploadProgress .wrapper .CircleProgress .line, .FormUploadProgress .wrapper .SpinningProgress .line {
953
+ stroke: #2196F3;
938
954
  }
939
955
 
940
- .Button:focus .ripple.focused {
941
- opacity: 1;
942
- transition: opacity 0.2s ease-out, transform 0.2s ease-out;
943
- transform: scale(1);
944
- animation: resize 1.25s ease-out infinite;
945
- animation-delay: 0.2s;
946
- animation-direction: alternate;
947
- }
948
-
949
- .Button .ripple.showed {
950
- transform: scale(2);
951
- opacity: 0;
956
+ .FormUploadProgress .wrapper > .progress {
957
+ width: 107px;
958
+ height: 107px;
959
+ min-height: 107px;
960
+ display: flex;
961
+ justify-content: center;
962
+ align-items: center;
963
+ box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
964
+ border-radius: 50%;
965
+ background: white;
966
+ position: relative;
952
967
  }
953
968
 
954
- @keyframes ripple {
955
- to {
956
- transform: scale(2);
957
- }
958
- }
959
- @keyframes resize {
960
- to {
961
- transform: scale(0.9);
962
- }
963
- }
964
- .Button.raised {
965
- transition: color 0.2s ease-out, background-color 0.2s ease-out, box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
969
+ .FormUploadProgress .wrapper > .progress > .value {
970
+ display: inline-block;
971
+ margin-top: 5px;
972
+ font-weight: bold;
973
+ line-height: 16px;
974
+ font-size: 13px;
975
+ text-align: center;
976
+ color: #818181;
966
977
  }
967
978
 
968
- .Button.raised:hover {
969
- box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.25);
979
+ .FormUploadProgress .wrapper .cancel {
980
+ min-width: 107px;
981
+ margin-top: 20px;
982
+ background-color: white;
983
+ color: #F96B5C;
984
+ box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
970
985
  }
971
986
 
972
- .Button.raised:active {
973
- box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.35);
987
+ .Dropzone {
988
+ position: relative;
974
989
  }
975
990
 
976
- .Button.disabled {
977
- box-shadow: none;
978
- background: #D9D9D9;
979
- color: #999999;
991
+ .Dropzone > .overlay {
992
+ position: absolute;
993
+ left: 0;
994
+ right: 0;
995
+ top: 0;
996
+ bottom: 0;
997
+ background-color: #38ADC4;
998
+ z-index: 1;
999
+ opacity: 0;
1000
+ transition: all 0.2s ease;
1001
+ transition-delay: 100ms;
1002
+ visibility: hidden;
1003
+ display: flex;
1004
+ justify-content: center;
1005
+ align-items: center;
980
1006
  }
981
1007
 
982
- .Button.disabled:hover {
983
- background-color: #cccccc;
1008
+ .Dropzone > .overlay .drop {
1009
+ border-radius: 4px;
1010
+ border: 1px dashed #FFFFFF;
1011
+ position: absolute;
1012
+ top: 18px;
1013
+ left: 18px;
1014
+ right: 18px;
1015
+ bottom: 18px;
1016
+ display: flex;
1017
+ justify-content: center;
1018
+ align-items: center;
1019
+ font-weight: 500;
1020
+ font-size: 18px;
1021
+ color: #FFFFFF;
984
1022
  }
985
1023
 
986
- .Button::-moz-focus-inner {
987
- border: 0;
1024
+ .Dropzone.dragging > .overlay {
1025
+ opacity: 0.7;
1026
+ visibility: visible;
1027
+ transition-delay: 0s;
988
1028
  }
989
1029
 
990
- .TextField {
991
- position: relative;
992
- width: 100%;
1030
+ .Dropzone.dragging > * {
1031
+ pointer-events: none;
993
1032
  }
994
1033
 
995
- .TextField > label {
996
- font-family: Roboto, sans-serif;
997
- color: rgba(0, 0, 0, 0.3);
998
- font-size: 16px;
1034
+ .Dropzone > input.file {
999
1035
  position: absolute;
1000
- left: 0px;
1001
- top: 16px;
1002
- margin-top: -16px;
1003
- transition: all 0.2s ease;
1004
- user-select: none;
1005
- cursor: text;
1006
- }
1007
-
1008
- .TextField > input {
1009
- font-family: Roboto, sans-serif;
1010
- color: #1e252d;
1011
- height: 19px;
1012
- font-size: 16px;
1036
+ left: 0;
1037
+ right: 0;
1038
+ top: 0;
1039
+ bottom: 0;
1013
1040
  width: 100%;
1014
- border: 0px;
1015
- padding-bottom: 4px;
1016
- padding-top: 0;
1017
- outline-color: rgba(0, 0, 0, 0);
1018
- }
1019
-
1020
- .TextField > input:focus {
1021
- outline: none;
1041
+ height: 100%;
1042
+ opacity: 0;
1043
+ cursor: pointer;
1044
+ z-index: 1;
1022
1045
  }
1023
1046
 
1024
- .TextField > input:disabled {
1025
- color: gray;
1026
- background-color: white;
1047
+ .Modal {
1048
+ display: block;
1049
+ position: fixed;
1050
+ top: 0;
1051
+ left: 0;
1052
+ right: 0;
1053
+ bottom: 100%;
1054
+ overflow-y: scroll;
1055
+ transition: bottom 0ms linear;
1056
+ transition-delay: 0.2s;
1027
1057
  }
1028
1058
 
1029
- .TextField > input:disabled + .border {
1030
- height: 0px;
1031
- border-bottom: 2px dotted #e0e0e0;
1059
+ .Modal.show {
1060
+ transition-delay: 0s;
1061
+ bottom: 0;
1032
1062
  }
1033
1063
 
1034
- .TextField > input::placeholder {
1035
- font-family: Roboto, sans-serif;
1036
- color: rgba(0, 0, 0, 0.3);
1037
- opacity: 1;
1064
+ .Modal > .overlay {
1065
+ position: fixed;
1066
+ top: 0;
1067
+ bottom: 100%;
1068
+ left: 0;
1069
+ right: 0;
1070
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1071
+ opacity: 0;
1072
+ background-color: black;
1073
+ pointer-events: none;
1038
1074
  }
1039
1075
 
1040
- .TextField > .border {
1041
- border-bottom: 1px solid #e0e0e0;
1042
- height: 1px;
1043
- position: relative;
1076
+ .Modal > .overlay.show {
1077
+ opacity: 0.5;
1078
+ bottom: 0;
1044
1079
  }
1045
1080
 
1046
- .TextField > .border .line {
1081
+ .Modal > .content {
1047
1082
  left: 50%;
1048
- width: 0;
1049
- height: 2px;
1050
- min-height: 2px;
1051
- background-color: #00bcd4;
1052
- transition: all 0.2s ease;
1053
- position: absolute;
1054
- }
1055
-
1056
- .TextField > .error {
1057
- text-align: left;
1058
- font-size: 10px;
1059
- min-height: 0;
1060
- line-height: 14px;
1061
- color: #f44336;
1062
- visibility: hidden;
1083
+ top: 10vh;
1084
+ margin-bottom: 10vh;
1085
+ font-size: 16px;
1086
+ padding: 0;
1063
1087
  opacity: 0;
1064
- transition: all 0.2s ease;
1065
- }
1066
-
1067
- .TextField.focused > label, .TextField.withValue > label {
1068
- top: 4px;
1069
- font-size: 12px;
1070
- line-height: 14px;
1088
+ transition: opacity 0.25s ease, transform 0.25s ease;
1089
+ transform: scaleY(0) translateY(-200px) translateX(-50%);
1090
+ transform-origin: top;
1091
+ position: absolute;
1092
+ border-radius: 2px;
1093
+ box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
1071
1094
  }
1072
1095
 
1073
- .TextField.errored > .error {
1074
- visibility: visible;
1096
+ .Modal > .content.show {
1075
1097
  opacity: 1;
1098
+ transform: scaleY(1) translateY(0px) translateX(-50%);
1076
1099
  }
1077
1100
 
1078
- .TextField.errored > .border {
1079
- border-bottom-color: #f44336;
1080
- }
1081
-
1082
- .TextField.errored > label {
1083
- color: #f44336;
1101
+ .Modal > .content > .Scrollable {
1102
+ overflow: visible;
1103
+ max-height: 80vh;
1084
1104
  }
1085
1105
 
1086
- .TextField.focused > label {
1087
- color: #00bcd4;
1106
+ .Modal > .content > .Scrollable > .viewport {
1107
+ min-width: 10px;
1108
+ min-height: 10px;
1088
1109
  }
1089
1110
 
1090
- .TextField.focused > .border .line {
1091
- left: 0;
1092
- width: 100%;
1111
+ .Modal > .content > .Button.close {
1112
+ top: 10px;
1113
+ right: 10px;
1114
+ position: absolute;
1093
1115
  }
1094
1116
 
1095
- .TextField.disabled label, .TextField.disabled input {
1096
- cursor: not-allowed;
1117
+ .ModalMenu {
1118
+ position: absolute;
1119
+ top: 10px;
1120
+ right: 50px;
1097
1121
  }
1098
1122
 
1099
- .TextField.withLabel {
1100
- margin-top: 15px;
1123
+ .ModalMenu .material-icons {
1124
+ color: #818181;
1101
1125
  }
1102
1126
 
1103
- .TextField input::-webkit-contacts-auto-fill-button {
1104
- visibility: hidden;
1105
- display: none !important;
1106
- pointer-events: none;
1127
+ .ModalMenu .Button.animated {
1107
1128
  position: absolute;
1129
+ transition: opacity 150ms ease-in, right 200ms ease-in;
1130
+ opacity: 0;
1108
1131
  right: 0;
1132
+ top: 0;
1109
1133
  }
1110
-
1111
- .TextField input:-webkit-autofill {
1112
- -webkit-box-shadow: inset 0 0 0px 9999px white;
1113
- }
1114
-
1115
- @keyframes shake {
1116
- 0%, 100% {
1117
- transform: translateX(0);
1118
- }
1119
- 20%, 60% {
1120
- transform: translateX(-5px);
1121
- }
1122
- 40%, 80% {
1123
- transform: translateX(5px);
1124
- }
1125
- }
1126
- .TextField .shake {
1127
- animation-duration: 0.5s;
1128
- animation-fill-mode: both;
1129
- animation-timing-function: ease-in-out;
1130
- animation-name: shake;
1134
+
1135
+ .ModalMenu .Button.animated.mounting, .ModalMenu .Button.animated.mounted {
1136
+ opacity: 1;
1131
1137
  }
1132
1138
 
1133
- .Button.FloatingActionButton {
1134
- position: absolute;
1135
- right: 16px;
1136
- bottom: 16px;
1137
- width: 56px;
1138
- height: 56px;
1139
- padding: 16px;
1140
- transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1139
+ .ModalMenu .Button.animated.unmounting {
1140
+ transition: opacity 100ms ease-out, right 200ms ease-out;
1141
1141
  }
1142
1142
 
1143
- .Button.FloatingActionButton.raised {
1144
- transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s ease-out, background-color 0.2s ease-out, box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
1143
+ .ModalMenu .Button.active {
1144
+ background: #EBEBEB;
1145
1145
  }
1146
1146
 
1147
- .Button.FloatingActionButton.mini {
1148
- width: 40px;
1149
- height: 40px;
1150
- padding: 8px;
1147
+ .ModalMenu .separator {
1148
+ height: 24px;
1149
+ width: 1px;
1150
+ background-color: #D9D9D9;
1151
+ margin-left: 4px;
1151
1152
  }
1152
1153
 
1153
- .Button.FloatingActionButton.hidden {
1154
- bottom: -100px;
1154
+ .Scrollable {
1155
+ max-height: 250px;
1156
+ max-width: 250px;
1157
+ padding-right: 5px;
1158
+ position: relative;
1159
+ display: flex;
1160
+ flex-flow: column;
1161
+ align-items: stretch;
1162
+ overflow: hidden;
1155
1163
  }
1156
1164
 
1157
- .DNDContainer .DroppableList .Draggable {
1158
- transform: unset;
1159
- transition: unset;
1165
+ .Scrollable:hover > .scrollbar.auto {
1166
+ transition-delay: 0s;
1160
1167
  opacity: 1;
1161
1168
  }
1162
1169
 
1163
- .DNDContainer .DroppableList .Draggable.dragged {
1164
- transition: unset !important;
1170
+ .Scrollable .viewport {
1171
+ overflow-y: scroll;
1172
+ overflow-x: scroll;
1173
+ max-height: 100%;
1174
+ scroll-behavior: smooth;
1175
+ scrollbar-width: none;
1165
1176
  }
1166
1177
 
1167
- .DNDContainer .DroppableList.hover .Draggable {
1168
- transition: transform 0.2s ease-in;
1178
+ .Scrollable .viewport::-webkit-scrollbar {
1179
+ display: none;
1169
1180
  }
1170
1181
 
1171
- .DNDContainer .DroppableList.resetting .Draggable {
1172
- transition: transform 0.1s ease-in;
1182
+ .Scrollable.without-scroll-horizontal {
1183
+ max-width: unset;
1173
1184
  }
1174
1185
 
1175
- .SpinningProgress {
1176
- width: 48px;
1177
- height: 48px;
1178
- position: relative;
1179
- margin: 0 auto;
1186
+ .Scrollable.without-scroll {
1187
+ padding-right: 0;
1188
+ max-height: unset;
1180
1189
  }
1181
1190
 
1182
- .SpinningProgress:before {
1183
- content: "";
1184
- display: block;
1185
- padding-top: 100%;
1191
+ .Scrollable.without-scroll > .viewport {
1192
+ padding-right: 0;
1193
+ margin-right: 0;
1186
1194
  }
1187
1195
 
1188
- .SpinningProgress .circular {
1189
- animation: rotate 2s linear infinite;
1190
- height: 100%;
1191
- transform-origin: center center;
1192
- width: 100%;
1193
- position: absolute;
1194
- top: 0;
1195
- bottom: 0;
1196
- left: 0;
1197
- right: 0;
1198
- margin: auto;
1196
+ .Scrollable.without-scroll > .scrollbar {
1197
+ visibility: hidden;
1199
1198
  }
1200
1199
 
1201
- .SpinningProgress .line {
1202
- stroke: black;
1203
- stroke-width: 2px;
1204
- stroke-dasharray: 1, 96;
1205
- stroke-dashoffset: 0;
1206
- animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
1200
+ .Scrollable .scrollbar {
1201
+ position: absolute;
1202
+ right: 0px;
1203
+ top: 0px;
1204
+ width: 5px;
1205
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1206
+ transition-delay: 0.5s;
1207
+ z-index: 1;
1207
1208
  }
1208
1209
 
1209
- @keyframes rotate {
1210
- 100% {
1211
- transform: rotate(360deg);
1212
- }
1213
- }
1214
- @keyframes dash {
1215
- 0% {
1216
- stroke-dasharray: 1, 96;
1217
- stroke-dashoffset: 0;
1218
- }
1219
- 50% {
1220
- stroke-dasharray: 43, 96;
1221
- stroke-dashoffset: -17px;
1222
- }
1223
- 100% {
1224
- stroke-dasharray: 43, 96;
1225
- stroke-dashoffset: -53px;
1226
- }
1210
+ .Scrollable .scrollbar.auto, .Scrollable .scrollbar.hidden {
1211
+ opacity: 0;
1227
1212
  }
1228
- .AutocompleteSelect {
1229
- display: inline-flex;
1230
- flex-flow: column;
1231
- justify-content: center;
1232
- position: relative;
1233
- min-width: 250px;
1234
- min-height: 36px;
1213
+
1214
+ .Scrollable .scrollbar .thumb {
1215
+ background-color: rgba(0, 0, 0, 0.3);
1216
+ width: 5px;
1217
+ position: absolute;
1218
+ right: 0px;
1219
+ top: 0px;
1235
1220
  user-select: none;
1221
+ will-change: top;
1222
+ border-radius: 2px;
1236
1223
  }
1237
1224
 
1238
- @keyframes clockwise {
1239
- 0% {
1240
- -webkit-transform: rotate(-90deg);
1241
- }
1242
- 100% {
1243
- -webkit-transform: translateX(0px);
1244
- }
1225
+ .Scrollable .scrollbar .thumb:hover {
1226
+ background-color: rgba(0, 0, 0, 0.5);
1245
1227
  }
1246
- @keyframes anticlockwise {
1247
- 0% {
1248
- -webkit-transform: rotate(90deg);
1249
- }
1250
- 100% {
1251
- -webkit-transform: translateX(0px);
1252
- }
1228
+
1229
+ .Scrollable .scrollbar .thumb:active {
1230
+ background-color: rgba(0, 0, 0, 0.7);
1253
1231
  }
1254
- .AutocompleteSelect > .input {
1255
- width: 100%;
1232
+
1233
+ .Scrollable .scrollbar.horizontal {
1234
+ left: 0px;
1235
+ right: 0px;
1236
+ height: 5px;
1237
+ bottom: 0;
1238
+ width: unset;
1239
+ top: unset;
1256
1240
  }
1257
1241
 
1258
- .AutocompleteSelect .Scrollable {
1259
- padding-right: 0;
1260
- min-width: 100%;
1242
+ .Scrollable .scrollbar.horizontal .thumb {
1243
+ height: 5px;
1244
+ left: 0px;
1245
+ bottom: 0px;
1246
+ will-change: left;
1261
1247
  }
1262
1248
 
1263
- .AutocompleteSelect.inline-multiple > .label {
1264
- top: -12px;
1249
+ .DialogModal {
1250
+ overflow: hidden;
1265
1251
  }
1266
1252
 
1267
- .AutocompleteSelect.inline-multiple > .selected {
1268
- flex-flow: row wrap;
1253
+ .DialogModal .content {
1254
+ top: 20vh;
1269
1255
  }
1270
1256
 
1271
- .AutocompleteSelect.multiple-mini-inline {
1272
- height: 42px;
1257
+ .Dialog {
1258
+ background-color: white;
1259
+ min-width: 460px;
1260
+ max-width: 40vw;
1261
+ padding: 15px;
1273
1262
  }
1274
1263
 
1275
- .AutocompleteSelect.multiple-mini-inline > .label {
1276
- cursor: pointer;
1277
- width: 100%;
1278
- margin-left: -10px;
1279
- padding: 10px;
1280
- box-sizing: border-box;
1281
- top: 0;
1264
+ .Dialog .title {
1265
+ margin-bottom: 15px;
1266
+ padding: 20px 50px 0px 30px;
1267
+ font-size: 1.25rem;
1268
+ line-height: 2rem;
1269
+ font-weight: 400;
1270
+ letter-spacing: 0.0125em;
1282
1271
  }
1283
1272
 
1284
- .AutocompleteSelect.multiple-mini-inline > .label.active {
1285
- padding: 0 10px;
1273
+ .Dialog .description {
1274
+ color: rgba(0, 0, 0, 0.54);
1275
+ font-size: 1rem;
1276
+ line-height: 1.5rem;
1277
+ font-weight: 400;
1278
+ letter-spacing: 0.03125em;
1279
+ margin-top: 20px;
1280
+ padding: 0 24px 24px;
1286
1281
  }
1287
1282
 
1288
- .AutocompleteSelect.multiple-mini-inline > .selected {
1289
- width: 250px;
1283
+ .Dialog > div.row {
1284
+ margin-bottom: 15px;
1290
1285
  }
1291
1286
 
1292
- .AutocompleteSelect.multiple-mini-inline > .input {
1293
- box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
1294
- position: absolute;
1295
- top: 38px;
1296
- z-index: 2;
1297
- background-color: white;
1298
- min-width: 130%;
1287
+ .Dialog > div.row:last-child {
1288
+ margin-bottom: 0;
1299
1289
  }
1300
1290
 
1301
- .AutocompleteSelect.multiple-mini-inline > .input .TextField {
1302
- padding-left: 10px;
1303
- padding-right: 10px;
1304
- width: 100%;
1305
- box-sizing: border-box;
1291
+ .Switch {
1292
+ display: inline-flex;
1293
+ padding-top: 5px;
1306
1294
  }
1307
1295
 
1308
- .AutocompleteSelect.multiple-mini-inline > .input.hidden {
1309
- opacity: 0;
1310
- visibility: hidden;
1296
+ .Switch .switch-input {
1297
+ display: none;
1298
+ }
1299
+
1300
+ .Switch .switch-label {
1301
+ position: relative;
1302
+ display: inline-flex;
1303
+ align-items: center;
1304
+ min-width: 38px;
1305
+ height: 24px;
1306
+ cursor: pointer;
1307
+ font-weight: 500;
1308
+ text-align: left;
1309
+ user-select: none;
1310
+ margin: 0;
1311
+ padding: 0;
1312
+ padding-left: 44px;
1313
+ box-sizing: border-box;
1311
1314
  }
1312
1315
 
1313
- .AutocompleteSelect.multiple-mini-inline .FilteredList .child:first-child {
1314
- margin-top: 0;
1316
+ .Switch .switch-label:before, .Switch .switch-label:after {
1317
+ content: "";
1318
+ box-sizing: border-box;
1319
+ position: absolute;
1320
+ margin: 0;
1321
+ outline: 0;
1322
+ top: 50%;
1323
+ transform: translate(0, -50%);
1324
+ transition: all 0.3s ease;
1315
1325
  }
1316
1326
 
1317
- .AutocompleteSelect .TextField {
1318
- margin-top: 8px;
1327
+ .Switch .switch-label:before {
1328
+ left: 1px;
1329
+ width: 34px;
1330
+ height: 14px;
1331
+ background-color: #9E9E9E;
1332
+ border-radius: 8px;
1319
1333
  }
1320
1334
 
1321
- .AutocompleteSelect .TextField input {
1322
- font-size: 14px;
1335
+ .Switch .switch-label:after {
1336
+ left: 0;
1337
+ width: 20px;
1338
+ height: 20px;
1339
+ background-color: #FAFAFA;
1340
+ border-radius: 50%;
1341
+ box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.098), 0 1px 5px 0 rgba(0, 0, 0, 0.084);
1323
1342
  }
1324
1343
 
1325
- .AutocompleteSelect > .label {
1326
- position: absolute;
1327
- transition: all 0.2s ease;
1328
- font-family: Roboto, sans-serif;
1329
- font-size: 14px;
1330
- color: rgba(0, 0, 0, 0.5);
1331
- z-index: 1;
1332
- cursor: text;
1333
- user-select: none;
1334
- left: 4px;
1335
- top: 12px;
1344
+ .Switch .switch-label .toggle--on {
1345
+ display: none;
1336
1346
  }
1337
1347
 
1338
- .AutocompleteSelect > .label.active {
1339
- font-size: 10px;
1340
- top: 2px;
1348
+ .Switch .switch-label .toggle--off {
1349
+ display: inline-block;
1341
1350
  }
1342
1351
 
1343
- .AutocompleteSelect > .label.active .arrow {
1344
- border-width: 4px 4px 0 4px;
1345
- margin-bottom: 1px;
1352
+ .Switch .switch-label .label {
1353
+ margin-right: 5px;
1346
1354
  }
1347
1355
 
1348
- .AutocompleteSelect > .label .arrow {
1349
- width: 0;
1350
- height: 0;
1351
- border-style: solid;
1352
- border-width: 5px 5px 0 5px;
1353
- border-color: rgba(0, 0, 0, 0.5) transparent transparent transparent;
1354
- display: inline-block;
1355
- margin-left: 5px;
1356
- margin-bottom: 2px;
1357
- transition: all 0.2s ease;
1356
+ .Switch .switch-input:checked + .switch-label:before {
1357
+ background-color: #A5D6A7;
1358
1358
  }
1359
1359
 
1360
- .AutocompleteSelect > .selected {
1361
- margin-top: 8px;
1362
- display: flex;
1363
- cursor: pointer;
1360
+ .Switch .switch-input:checked + .switch-label:after {
1361
+ background-color: #4CAF50;
1362
+ transform: translate(80%, -50%);
1364
1363
  }
1365
1364
 
1366
- .AutocompleteSelect > .selected > .reset {
1367
- min-width: 36px;
1368
- max-width: 36px;
1369
- position: absolute;
1370
- right: 0;
1371
- top: 0;
1372
- background-color: white;
1365
+ .Switch .switch-input:checked + .switch-label .toggle--on {
1366
+ display: inline-block;
1373
1367
  }
1374
1368
 
1375
- .AutocompleteSelect > .selected > .reset .material-icons {
1376
- margin: 0;
1377
- color: #BFBFBF;
1378
- font-size: 20px;
1369
+ .Switch .switch-input:checked + .switch-label .toggle--off {
1370
+ display: none;
1379
1371
  }
1380
1372
 
1381
- .AutocompleteSelect > .selected.nolabel {
1382
- margin-top: 0px;
1383
- border-bottom: 1px solid #e5e3e3;
1373
+ .TextField {
1374
+ position: relative;
1375
+ width: 100%;
1384
1376
  }
1385
1377
 
1386
- .AutocompleteSelect > .selected.nolabel .DummyChild {
1387
- display: inline-flex;
1388
- align-items: center;
1389
- flex-grow: 1;
1378
+ .TextField > label {
1379
+ font-family: Roboto, sans-serif;
1380
+ color: rgba(0, 0, 0, 0.3);
1390
1381
  font-size: 16px;
1391
- margin: 0px 10px;
1392
- margin-bottom: 5px;
1393
- height: 19px;
1394
- }
1395
-
1396
- .AutocompleteSelect > .selected.nolabel .arrow {
1397
- width: 0;
1398
- height: 0;
1399
- border-style: solid;
1400
- border-width: 5px 5px 0 5px;
1401
- border-color: rgba(0, 0, 0, 0.5) transparent transparent transparent;
1402
- display: inline-block;
1382
+ position: absolute;
1383
+ left: 0px;
1384
+ top: 16px;
1385
+ margin-top: -16px;
1403
1386
  transition: all 0.2s ease;
1404
- margin: 0px 17px 3px 5px;
1387
+ user-select: none;
1388
+ cursor: text;
1405
1389
  }
1406
1390
 
1407
- .AutocompleteSelect > .selected.inline {
1408
- font-size: 14px;
1391
+ .TextField > input {
1409
1392
  font-family: Roboto, sans-serif;
1410
1393
  color: #1e252d;
1411
- text-overflow: ellipsis;
1412
- white-space: nowrap;
1413
- overflow: hidden;
1414
- display: flex;
1415
- align-items: center;
1394
+ height: 19px;
1395
+ font-size: 16px;
1396
+ width: 100%;
1397
+ border: 0px;
1398
+ padding-bottom: 4px;
1399
+ padding-top: 0;
1400
+ outline-color: rgba(0, 0, 0, 0);
1416
1401
  }
1417
1402
 
1418
- .AutocompleteSelect > .selected.clickable {
1419
- overflow: hidden;
1420
- cursor: pointer;
1421
- padding: 10px;
1422
- margin-left: -10px;
1423
- margin-right: -10px;
1403
+ .TextField > input:focus {
1404
+ outline: none;
1424
1405
  }
1425
1406
 
1426
- .AutocompleteSelect.inlineSelected {
1427
- flex-flow: row wrap;
1428
- justify-content: flex-start;
1407
+ .TextField > input:disabled {
1408
+ color: gray;
1409
+ background-color: white;
1429
1410
  }
1430
1411
 
1431
- .AutocompleteSelect.inlineSelected.hasSelected {
1432
- padding-top: 7px;
1412
+ .TextField > input:disabled + .border {
1413
+ height: 0px;
1414
+ border-bottom: 2px dotted #e0e0e0;
1433
1415
  }
1434
1416
 
1435
- .AutocompleteSelect.inlineSelected > .label {
1436
- width: 100%;
1437
- height: 100%;
1417
+ .TextField > input::placeholder {
1418
+ font-family: Roboto, sans-serif;
1419
+ color: rgba(0, 0, 0, 0.3);
1420
+ opacity: 1;
1438
1421
  }
1439
1422
 
1440
- .AutocompleteSelect.inlineSelected > .label.active {
1441
- z-index: 0;
1423
+ .TextField > .border {
1424
+ border-bottom: 1px solid #e0e0e0;
1425
+ height: 1px;
1426
+ position: relative;
1442
1427
  }
1443
1428
 
1444
- .AutocompleteSelect.inlineSelected .input {
1445
- width: unset;
1446
- flex-basis: 50px;
1447
- flex-grow: 1;
1429
+ .TextField > .border .line {
1430
+ left: 50%;
1431
+ width: 0;
1432
+ height: 2px;
1433
+ min-height: 2px;
1434
+ background-color: #00bcd4;
1435
+ transition: all 0.2s ease;
1436
+ position: absolute;
1448
1437
  }
1449
1438
 
1450
- .AutocompleteSelect.inlineSelected .input::after {
1451
- content: attr(data-value);
1439
+ .TextField > .error {
1440
+ text-align: left;
1441
+ font-size: 10px;
1442
+ min-height: 0;
1443
+ line-height: 14px;
1444
+ color: #f44336;
1452
1445
  visibility: hidden;
1453
- white-space: pre;
1454
- font: inherit;
1455
- min-width: 2px;
1456
- border: 0;
1457
- margin: 0;
1458
- outline: 0;
1459
- float: left;
1460
- display: inline-block;
1461
- margin-top: -24px;
1462
- font-size: 14px;
1463
- padding: 2px;
1446
+ opacity: 0;
1447
+ transition: all 0.2s ease;
1464
1448
  }
1465
1449
 
1466
- .AutocompleteSelect.inlineSelected > .value:nth-child(2) {
1467
- margin-top: 7px;
1450
+ .TextField.focused > label, .TextField.withValue > label {
1451
+ top: 4px;
1452
+ font-size: 12px;
1453
+ line-height: 14px;
1468
1454
  }
1469
1455
 
1470
- .AutocompleteSelect.inlineSelected > .value, .AutocompleteSelect > .selected > .value {
1471
- cursor: pointer;
1472
- margin: 5px 10px 5px 0px;
1473
- display: inline-flex;
1474
- flex-flow: row wrap;
1475
- height: 30px;
1476
- align-items: center;
1477
- background-color: #f0f0f0;
1478
- border-radius: 30px;
1479
- position: relative;
1480
- font-family: Roboto, sans-serif;
1481
- font-size: 14px;
1482
- color: #1e252d;
1456
+ .TextField.errored > .error {
1457
+ visibility: visible;
1458
+ opacity: 1;
1483
1459
  }
1484
1460
 
1485
- .AutocompleteSelect.inlineSelected > .value .DummyChild, .AutocompleteSelect > .selected > .value .DummyChild {
1486
- padding-left: 35px;
1487
- padding-right: 10px;
1461
+ .TextField.errored > .border {
1462
+ border-bottom-color: #f44336;
1488
1463
  }
1489
1464
 
1490
- .AutocompleteSelect.inlineSelected > .value .button, .AutocompleteSelect > .selected > .value .button {
1491
- cursor: pointer;
1492
- min-width: 30px;
1493
- width: 30px;
1494
- height: 30px;
1495
- opacity: 0;
1496
- position: absolute;
1497
- top: 0px;
1498
- left: 0px;
1499
- transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1500
- background-color: deepskyblue;
1501
- color: white;
1502
- border-radius: 30px;
1503
- display: flex;
1504
- flex-flow: row;
1505
- justify-content: center;
1506
- align-items: center;
1507
- animation: anticlockwise 0.15s linear;
1465
+ .TextField.errored > label {
1466
+ color: #f44336;
1467
+ }
1468
+
1469
+ .TextField.focused > label {
1470
+ color: #00bcd4;
1471
+ }
1472
+
1473
+ .TextField.focused > .border .line {
1474
+ left: 0;
1475
+ width: 100%;
1508
1476
  }
1509
1477
 
1510
- .AutocompleteSelect.inlineSelected > .value .button .material-icons, .AutocompleteSelect > .selected > .value .button .material-icons {
1511
- font-size: 22px;
1478
+ .TextField.disabled label, .TextField.disabled input {
1479
+ cursor: not-allowed;
1512
1480
  }
1513
1481
 
1514
- .AutocompleteSelect.inlineSelected > .value:hover .button, .AutocompleteSelect > .selected > .value:hover .button {
1515
- width: 30px;
1516
- height: 30px;
1517
- opacity: 1;
1518
- animation: clockwise 0.15s linear;
1519
- overflow: hidden;
1520
- position: absolute;
1482
+ .TextField.withLabel {
1483
+ margin-top: 15px;
1521
1484
  }
1522
1485
 
1523
- .Checkbox {
1524
- position: relative;
1525
- white-space: pre;
1486
+ .TextField input::-webkit-contacts-auto-fill-button {
1487
+ visibility: hidden;
1488
+ display: none !important;
1489
+ pointer-events: none;
1490
+ position: absolute;
1491
+ right: 0;
1526
1492
  }
1527
1493
 
1528
- .Checkbox *, .Checkbox *:before, .Checkbox *:after {
1529
- box-sizing: border-box;
1494
+ .TextField input:-webkit-autofill {
1495
+ -webkit-box-shadow: inset 0 0 0px 9999px white;
1530
1496
  }
1531
1497
 
1532
- .Checkbox label {
1533
- font-family: Roboto, sans-serif;
1534
- font-size: 14px;
1535
- color: #1e252d;
1536
- cursor: pointer;
1498
+ @keyframes shake {
1499
+ 0%, 100% {
1500
+ transform: translateX(0);
1501
+ }
1502
+ 20%, 60% {
1503
+ transform: translateX(-5px);
1504
+ }
1505
+ 40%, 80% {
1506
+ transform: translateX(5px);
1507
+ }
1537
1508
  }
1538
-
1539
- .Checkbox label:before, .Checkbox label:after {
1540
- content: "";
1541
- position: absolute;
1542
- left: 0;
1543
- top: 0;
1509
+ .TextField .shake {
1510
+ animation-duration: 0.5s;
1511
+ animation-fill-mode: both;
1512
+ animation-timing-function: ease-in-out;
1513
+ animation-name: shake;
1544
1514
  }
1545
1515
 
1546
- .Checkbox label:before {
1547
- width: 20px;
1548
- height: 20px;
1549
- background: #fff;
1550
- border: 2px solid #252525;
1551
- border-radius: 2px;
1552
- cursor: pointer;
1553
- transition: background 0.3s;
1516
+ .SpinningProgress {
1517
+ width: 48px;
1518
+ height: 48px;
1519
+ position: relative;
1520
+ margin: 0 auto;
1554
1521
  }
1555
1522
 
1556
- .Checkbox input[type=checkbox] {
1557
- outline: 0;
1558
- margin-right: 10px;
1559
- visibility: hidden;
1523
+ .SpinningProgress:before {
1524
+ content: "";
1525
+ display: block;
1526
+ padding-top: 100%;
1560
1527
  }
1561
1528
 
1562
- .Checkbox input[type=checkbox]:checked + label:before {
1563
- background: #4AC263;
1564
- border: none;
1529
+ .SpinningProgress .circular {
1530
+ animation: rotate 2s linear infinite;
1531
+ height: 100%;
1532
+ transform-origin: center center;
1533
+ width: 100%;
1534
+ position: absolute;
1535
+ top: 0;
1536
+ bottom: 0;
1537
+ left: 0;
1538
+ right: 0;
1539
+ margin: auto;
1565
1540
  }
1566
1541
 
1567
- .Checkbox input[type=checkbox]:checked + label:after {
1568
- transform: rotate(-45deg);
1569
- top: 6px;
1570
- left: 4px;
1571
- width: 12px;
1572
- height: 6px;
1573
- border: 2px solid #fff;
1574
- border-top-style: none;
1575
- border-right-style: none;
1542
+ .SpinningProgress .line {
1543
+ stroke: black;
1544
+ stroke-width: 2px;
1545
+ stroke-dasharray: 1, 96;
1546
+ stroke-dashoffset: 0;
1547
+ animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
1576
1548
  }
1577
1549
 
1578
- .Checkbox input[type=checkbox]:disabled + label {
1579
- color: gray;
1550
+ @keyframes rotate {
1551
+ 100% {
1552
+ transform: rotate(360deg);
1553
+ }
1580
1554
  }
1581
-
1582
- .Checkbox input[type=checkbox]:disabled + label:before {
1583
- border-color: rgba(0, 0, 0, 0.26);
1555
+ @keyframes dash {
1556
+ 0% {
1557
+ stroke-dasharray: 1, 96;
1558
+ stroke-dashoffset: 0;
1559
+ }
1560
+ 50% {
1561
+ stroke-dasharray: 43, 96;
1562
+ stroke-dashoffset: -17px;
1563
+ }
1564
+ 100% {
1565
+ stroke-dasharray: 43, 96;
1566
+ stroke-dashoffset: -53px;
1567
+ }
1568
+ }
1569
+ .Snackbar {
1570
+ transform: translateX(-50%);
1571
+ overflow: hidden;
1572
+ background-color: #323232;
1573
+ padding: 14px 24px 14px 24px;
1574
+ color: #fff;
1575
+ min-width: 288px;
1576
+ max-width: 568px;
1577
+ position: fixed;
1578
+ bottom: -50px;
1579
+ left: 50%;
1580
+ display: flex;
1581
+ flex-wrap: nowrap;
1582
+ align-items: center;
1583
+ opacity: 0;
1584
+ transition: bottom 0.25s ease, opacity 0.2s ease;
1585
+ border-radius: 4px;
1586
+ box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
1584
1587
  }
1585
1588
 
1586
- .Checkbox input[type=checkbox]:disabled:checked + label:before {
1587
- background: rgba(0, 0, 0, 0.26);
1589
+ .Snackbar.shown {
1590
+ bottom: 15px;
1591
+ opacity: 1;
1588
1592
  }
1589
1593
 
1590
- .DialogModal {
1594
+ .Snackbar .message {
1591
1595
  overflow: hidden;
1596
+ line-height: 1.2em;
1597
+ min-height: 1.2em;
1598
+ max-height: 2.4em;
1599
+ flex: 1;
1592
1600
  }
1593
1601
 
1594
- .DialogModal .content {
1595
- top: 20vh;
1602
+ .Snackbar .action {
1603
+ text-transform: uppercase;
1604
+ font-weight: bold;
1605
+ margin-left: 48px;
1606
+ color: #bf3727;
1596
1607
  }
1597
1608
 
1598
- .Dialog {
1599
- background-color: white;
1600
- min-width: 460px;
1601
- max-width: 40vw;
1602
- padding: 15px;
1609
+ .Snackbar .action a {
1610
+ text-decoration: none;
1611
+ color: #bf3727;
1603
1612
  }
1604
1613
 
1605
- .Dialog .title {
1606
- margin-bottom: 15px;
1607
- padding: 20px 50px 0px 30px;
1608
- font-size: 1.25rem;
1609
- line-height: 2rem;
1610
- font-weight: 400;
1611
- letter-spacing: 0.0125em;
1614
+ .DNDContainer .DroppableList .Draggable {
1615
+ transform: unset;
1616
+ transition: unset;
1617
+ opacity: 1;
1612
1618
  }
1613
1619
 
1614
- .Dialog .description {
1615
- color: rgba(0, 0, 0, 0.54);
1616
- font-size: 1rem;
1617
- line-height: 1.5rem;
1618
- font-weight: 400;
1619
- letter-spacing: 0.03125em;
1620
- margin-top: 20px;
1621
- padding: 0 24px 24px;
1620
+ .DNDContainer .DroppableList .Draggable.dragged {
1621
+ transition: unset !important;
1622
1622
  }
1623
1623
 
1624
- .Dialog > div.row {
1625
- margin-bottom: 15px;
1624
+ .DNDContainer .DroppableList.hover .Draggable {
1625
+ transition: transform 0.2s ease-in;
1626
1626
  }
1627
1627
 
1628
- .Dialog > div.row:last-child {
1629
- margin-bottom: 0;
1628
+ .DNDContainer .DroppableList.resetting .Draggable {
1629
+ transition: transform 0.1s ease-in;
1630
1630
  }
1631
1631
 
1632
1632
  .DNDContainer {
@@ -1661,31 +1661,6 @@
1661
1661
  pointer-events: none;
1662
1662
  }
1663
1663
 
1664
- .CalendarMonthView {
1665
- display: flex;
1666
- flex-flow: column nowrap;
1667
- height: 100%;
1668
- }
1669
-
1670
- .CalendarMonthView > .row {
1671
- display: flex;
1672
- flex-flow: row nowrap;
1673
- }
1674
-
1675
- .CalendarMonthView .days {
1676
- flex-grow: 1;
1677
- position: relative;
1678
- }
1679
-
1680
- .CalendarMonthView .day, .CalendarMonthView .header {
1681
- flex-grow: 1;
1682
- flex-basis: 1px;
1683
- }
1684
-
1685
- .CalendarMonthView .day {
1686
- height: 100%;
1687
- }
1688
-
1689
1664
  .DatePicker {
1690
1665
  position: relative;
1691
1666
  }
@@ -1800,12 +1775,29 @@
1800
1775
  background-color: #51adf6;
1801
1776
  }
1802
1777
 
1803
- .ScrollableTable .Scrollable .scrollbar {
1804
- top: 56px;
1778
+ .CalendarMonthView {
1779
+ display: flex;
1780
+ flex-flow: column nowrap;
1781
+ height: 100%;
1805
1782
  }
1806
1783
 
1807
- .ScrollableTable .Table {
1808
- position: static;
1784
+ .CalendarMonthView > .row {
1785
+ display: flex;
1786
+ flex-flow: row nowrap;
1787
+ }
1788
+
1789
+ .CalendarMonthView .days {
1790
+ flex-grow: 1;
1791
+ position: relative;
1792
+ }
1793
+
1794
+ .CalendarMonthView .day, .CalendarMonthView .header {
1795
+ flex-grow: 1;
1796
+ flex-basis: 1px;
1797
+ }
1798
+
1799
+ .CalendarMonthView .day {
1800
+ height: 100%;
1809
1801
  }
1810
1802
 
1811
1803
  .Table {
@@ -1920,4 +1912,12 @@
1920
1912
  height: 20px;
1921
1913
  padding: 0px;
1922
1914
  background-color: #f0f0f0;
1915
+ }
1916
+
1917
+ .ScrollableTable .Scrollable .scrollbar {
1918
+ top: 56px;
1919
+ }
1920
+
1921
+ .ScrollableTable .Table {
1922
+ position: static;
1923
1923
  }