react-ui-basics 0.0.205 → 0.0.207

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