@testgorilla/tgo-typing-test 2.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/fesm2022/testgorilla-tgo-typing-test.mjs +4691 -0
  2. package/fesm2022/testgorilla-tgo-typing-test.mjs.map +1 -0
  3. package/lib/components/tgo-typing-replay-input/tgo-typing-replay-input.component.d.ts +14 -0
  4. package/lib/components/tgo-typing-test/tgo-typing-test.component.d.ts +54 -0
  5. package/lib/helpers/config.d.ts +98 -0
  6. package/lib/helpers/constants/default-config.d.ts +3 -0
  7. package/lib/helpers/controllers/input-controller.d.ts +16 -0
  8. package/lib/helpers/controllers/quotes-controller.d.ts +20 -0
  9. package/lib/helpers/observables/config-event.d.ts +5 -0
  10. package/lib/helpers/observables/timer-event.d.ts +4 -0
  11. package/lib/helpers/states/active-page.d.ts +2 -0
  12. package/lib/helpers/states/composition.d.ts +10 -0
  13. package/lib/helpers/states/page-transition.d.ts +2 -0
  14. package/lib/helpers/states/slow-timer.d.ts +3 -0
  15. package/lib/helpers/states/test-active.d.ts +2 -0
  16. package/lib/helpers/states/time.d.ts +3 -0
  17. package/lib/helpers/test/caps-warning.d.ts +5 -0
  18. package/lib/helpers/test/caret.d.ts +11 -0
  19. package/lib/helpers/test/custom-text.d.ts +16 -0
  20. package/lib/helpers/test/english-punctuation.d.ts +3 -0
  21. package/lib/helpers/test/focus.d.ts +7 -0
  22. package/lib/helpers/test/manual-restart-tracker.d.ts +3 -0
  23. package/lib/helpers/test/out-of-focus.d.ts +4 -0
  24. package/lib/helpers/test/replay.d.ts +20 -0
  25. package/lib/helpers/test/test-input.d.ts +86 -0
  26. package/lib/helpers/test/test-logic.d.ts +25 -0
  27. package/lib/helpers/test/test-state.d.ts +7 -0
  28. package/lib/helpers/test/test-stats.d.ts +92 -0
  29. package/lib/helpers/test/test-timer.d.ts +6 -0
  30. package/lib/helpers/test/test-ui.d.ts +27 -0
  31. package/lib/helpers/test/test-words.d.ts +23 -0
  32. package/lib/helpers/test/timer-progress.d.ts +3 -0
  33. package/lib/helpers/test/weak-spot.d.ts +3 -0
  34. package/lib/helpers/test/wordset.d.ts +7 -0
  35. package/lib/utils/misc.d.ts +80 -0
  36. package/package.json +17 -4
  37. package/.eslintrc.json +0 -46
  38. package/jest.config.ts +0 -21
  39. package/ng-package.json +0 -15
  40. package/project.json +0 -36
  41. package/src/lib/components/tgo-typing-replay-input/tgo-typing-replay-input.component.html +0 -30
  42. package/src/lib/components/tgo-typing-replay-input/tgo-typing-replay-input.component.spec.ts +0 -250
  43. package/src/lib/components/tgo-typing-replay-input/tgo-typing-replay-input.component.ts +0 -47
  44. package/src/lib/components/tgo-typing-test/tgo-typing-test.component.html +0 -72
  45. package/src/lib/components/tgo-typing-test/tgo-typing-test.component.spec.ts +0 -699
  46. package/src/lib/components/tgo-typing-test/tgo-typing-test.component.ts +0 -287
  47. package/src/lib/helpers/config.ts +0 -28
  48. package/src/lib/helpers/constants/default-config.ts +0 -103
  49. package/src/lib/helpers/controllers/input-controller.ts +0 -710
  50. package/src/lib/helpers/controllers/quotes-controller.ts +0 -183
  51. package/src/lib/helpers/observables/banner-event.ts +0 -18
  52. package/src/lib/helpers/observables/config-event.ts +0 -31
  53. package/src/lib/helpers/observables/timer-event.ts +0 -18
  54. package/src/lib/helpers/states/active-page.ts +0 -9
  55. package/src/lib/helpers/states/composition.ts +0 -29
  56. package/src/lib/helpers/states/page-transition.ts +0 -9
  57. package/src/lib/helpers/states/slow-timer.ts +0 -16
  58. package/src/lib/helpers/states/test-active.ts +0 -9
  59. package/src/lib/helpers/states/time.ts +0 -13
  60. package/src/lib/helpers/test/caps-warning.ts +0 -50
  61. package/src/lib/helpers/test/caret.ts +0 -92
  62. package/src/lib/helpers/test/custom-text.ts +0 -73
  63. package/src/lib/helpers/test/english-punctuation.ts +0 -38
  64. package/src/lib/helpers/test/focus.ts +0 -39
  65. package/src/lib/helpers/test/manual-restart-tracker.ts +0 -13
  66. package/src/lib/helpers/test/out-of-focus.ts +0 -19
  67. package/src/lib/helpers/test/replay.ts +0 -265
  68. package/src/lib/helpers/test/test-input.ts +0 -320
  69. package/src/lib/helpers/test/test-logic.ts +0 -1039
  70. package/src/lib/helpers/test/test-state.ts +0 -17
  71. package/src/lib/helpers/test/test-stats.ts +0 -442
  72. package/src/lib/helpers/test/test-timer.ts +0 -209
  73. package/src/lib/helpers/test/test-ui.ts +0 -370
  74. package/src/lib/helpers/test/test-words.ts +0 -72
  75. package/src/lib/helpers/test/timer-progress.ts +0 -16
  76. package/src/lib/helpers/test/tts.ts +0 -42
  77. package/src/lib/helpers/test/weak-spot.ts +0 -74
  78. package/src/lib/helpers/test/wordset.ts +0 -109
  79. package/src/lib/styles/animations.scss +0 -101
  80. package/src/lib/styles/caret.scss +0 -108
  81. package/src/lib/styles/core.scss +0 -498
  82. package/src/lib/styles/index.scss +0 -19
  83. package/src/lib/styles/inputs.scss +0 -290
  84. package/src/lib/styles/popups.scss +0 -1311
  85. package/src/lib/styles/test.scss +0 -1008
  86. package/src/lib/styles/z_media-queries.scss +0 -848
  87. package/src/lib/types/types.d.ts +0 -731
  88. package/src/lib/utils/misc.ts +0 -776
  89. package/src/test-setup.ts +0 -20
  90. package/tsconfig.json +0 -16
  91. package/tsconfig.lib.json +0 -14
  92. package/tsconfig.lib.prod.json +0 -9
  93. package/tsconfig.spec.json +0 -11
  94. /package/{src/assets → assets}/typing-test-languages/english.json +0 -0
  95. /package/{src/assets → assets}/typing-test-languages/english_punctuation.json +0 -0
  96. /package/{src/assets → assets}/typing-test-languages/quotes/english_version_1.json +0 -0
  97. /package/{src/assets → assets}/typing-test-languages/quotes/english_version_2.json +0 -0
  98. /package/{src/assets → assets}/typing-test-languages/quotes/filtered_sources.json +0 -0
  99. /package/{src/index.ts → index.d.ts} +0 -0
@@ -1,1311 +0,0 @@
1
- .popupWrapper {
2
- width: 100%;
3
- height: 100%;
4
- background: rgba(0, 0, 0, 0.75);
5
- position: fixed;
6
- left: 0;
7
- top: 0;
8
- z-index: 1000;
9
- display: grid;
10
- justify-content: center;
11
- align-items: center;
12
- padding: 2rem 0;
13
- }
14
-
15
- #customTextPopupWrapper {
16
- #customTextPopup {
17
- background: $--bg-color;
18
- border-radius: $--roundness;
19
- padding: 2rem;
20
- display: grid;
21
- gap: 1rem;
22
- width: 60vw;
23
-
24
- .buttonsTop {
25
- display: grid;
26
- grid-template-columns: 1fr 1fr 1fr;
27
- gap: 1rem;
28
- }
29
-
30
- .savedTexts {
31
- display: grid;
32
- gap: 0.5rem;
33
- .title {
34
- color: $--sub-color;
35
- }
36
- .buttons {
37
- display: grid;
38
- grid-template-columns: 1fr 1fr;
39
- gap: 1rem;
40
- }
41
- }
42
-
43
- textarea {
44
- background: $--sub-alt-color;
45
- padding: 1rem;
46
- color: $--main-color;
47
- border: none;
48
- outline: none;
49
- font-size: 1rem;
50
- font-family: $--font;
51
- width: 100%;
52
- border-radius: $--roundness;
53
- resize: vertical;
54
- height: 200px;
55
- color: $--text-color;
56
- overflow-x: hidden;
57
- overflow-y: scroll;
58
- }
59
-
60
- .inputs {
61
- display: grid;
62
- grid-template-columns: 1fr 1fr;
63
- gap: 1rem;
64
- align-items: center;
65
- justify-items: left;
66
- }
67
-
68
- .randomInputFields {
69
- display: grid;
70
- grid-template-columns: 1fr auto 1fr;
71
- text-align: center;
72
- align-items: center;
73
- width: 100%;
74
- gap: 1rem;
75
- }
76
- }
77
- }
78
-
79
- #savedTextsPopupWrapper {
80
- #savedTextsPopup {
81
- color: $--sub-color;
82
- background: $--bg-color;
83
- border-radius: $--roundness;
84
- padding: 2rem;
85
- display: grid;
86
- gap: 1rem;
87
- width: 400px;
88
- max-height: 80vh;
89
- overflow: auto;
90
-
91
- .title {
92
- font-size: 1.5rem;
93
- color: $--sub-color;
94
- }
95
-
96
- .list {
97
- display: grid;
98
- gap: 1rem;
99
- .savedText {
100
- display: grid;
101
- gap: 0.5rem;
102
- grid-template-columns: 1fr 3rem;
103
- .button .fas {
104
- pointer-events: none;
105
- }
106
- }
107
- }
108
- }
109
- }
110
-
111
- #wordFilterPopupWrapper {
112
- #wordFilterPopup {
113
- color: $--sub-color;
114
- background: $--bg-color;
115
- border-radius: $--roundness;
116
- padding: 2rem;
117
- display: grid;
118
- gap: 1rem;
119
- width: 400px;
120
-
121
- input {
122
- width: 100%;
123
- }
124
-
125
- .group {
126
- display: grid;
127
- gap: 0.5rem;
128
- }
129
-
130
- .lengthgrid {
131
- display: grid;
132
- grid-template-columns: 1fr 1fr;
133
- grid-template-rows: auto 1fr;
134
- column-gap: 1rem;
135
- }
136
-
137
- .tip {
138
- color: $--sub-color;
139
- font-size: 0.8rem;
140
- }
141
-
142
- .loadingIndicator {
143
- justify-self: center;
144
- }
145
- }
146
- }
147
-
148
- #quoteRatePopupWrapper {
149
- #quoteRatePopup {
150
- color: $--sub-color;
151
- background: $--bg-color;
152
- border-radius: $--roundness;
153
- padding: 2rem;
154
- display: grid;
155
- gap: 2rem;
156
- width: 800px;
157
-
158
- display: grid;
159
- grid-template-areas: "warning warning warning" "spacer2 spacer2 spacer2" "ratingStats ratingStats submitButton" "spacer spacer spacer" "quote quote quote";
160
- grid-template-columns: auto 1fr;
161
-
162
- color: $--text-color;
163
-
164
- .warning {
165
- grid-area: warning;
166
- span {
167
- color: $--error-color;
168
- }
169
- }
170
- .spacer,
171
- .spacer2 {
172
- grid-area: spacer;
173
- width: 100%;
174
- height: 0.1rem;
175
- border-radius: $--roundness;
176
- background: $--sub-color;
177
- opacity: 0.25;
178
- }
179
-
180
- .spacer2 {
181
- grid-area: spacer2;
182
- }
183
-
184
- .submitButton {
185
- font-size: 2rem;
186
- grid-area: submitButton;
187
- color: $--sub-color;
188
- &:hover {
189
- color: $--text-color;
190
- }
191
- }
192
-
193
- .top {
194
- color: $--sub-color;
195
- font-size: 0.8rem;
196
- }
197
-
198
- .ratingStats {
199
- display: grid;
200
- grid-template-columns: 1fr 1fr 1fr;
201
- gap: 1rem;
202
- grid-area: ratingStats;
203
- .top {
204
- font-size: 1rem;
205
- }
206
- .val {
207
- font-size: 2.25rem;
208
- }
209
- }
210
-
211
- .quote {
212
- display: grid;
213
- grid-area: quote;
214
- gap: 1rem;
215
- grid-template-areas:
216
- "text text text"
217
- "id length source";
218
- grid-template-columns: 1fr 1fr 3fr;
219
- .text {
220
- grid-area: text;
221
- }
222
- .id {
223
- grid-area: id;
224
- }
225
- .length {
226
- grid-area: length;
227
- }
228
- .source {
229
- grid-area: source;
230
- }
231
- }
232
-
233
- .stars {
234
- display: grid;
235
- color: $--sub-color;
236
- font-size: 2rem;
237
- grid-template-columns: auto auto auto auto auto;
238
- justify-content: flex-start;
239
- align-items: center;
240
- cursor: pointer;
241
- }
242
- .star {
243
- transition: 0.125s;
244
- }
245
- i {
246
- pointer-events: none;
247
- }
248
- .star.active {
249
- color: $--text-color;
250
- }
251
- }
252
- }
253
-
254
- #simplePopupWrapper {
255
- #simplePopup {
256
- background: $--bg-color;
257
- border-radius: $--roundness;
258
- padding: 2rem;
259
- display: grid;
260
- gap: 1rem;
261
- width: 400px;
262
-
263
- .title {
264
- font-size: 1.5rem;
265
- color: $--sub-color;
266
- }
267
-
268
- .inputs {
269
- display: grid;
270
- gap: 1rem;
271
- }
272
-
273
- .text {
274
- font-size: 1rem;
275
- color: $--text-color;
276
- }
277
- }
278
- }
279
-
280
- #mobileTestConfigPopupWrapper {
281
- #mobileTestConfigPopup {
282
- background: $--bg-color;
283
- border-radius: $--roundness;
284
- padding: 1rem;
285
- display: grid;
286
- gap: 1rem;
287
- width: calc(100vw - 2rem);
288
- max-width: 400px;
289
-
290
- .title {
291
- font-size: 1.5rem;
292
- color: $--sub-color;
293
- }
294
-
295
- .inputs {
296
- display: grid;
297
- gap: 1rem;
298
- }
299
-
300
- .text {
301
- font-size: 1rem;
302
- color: $--text-color;
303
- }
304
-
305
- .group {
306
- display: grid;
307
- gap: 0.5rem;
308
- }
309
- }
310
- }
311
-
312
- #customWordAmountPopupWrapper,
313
- #customTestDurationPopupWrapper,
314
- #practiseWordsPopupWrapper,
315
- #pbTablesPopupWrapper {
316
- #customWordAmountPopup,
317
- #customTestDurationPopup,
318
- #practiseWordsPopup,
319
- #pbTablesPopup {
320
- background: $--bg-color;
321
- border-radius: $--roundness;
322
- padding: 2rem;
323
- display: grid;
324
- gap: 1rem;
325
- width: 400px;
326
-
327
- .title {
328
- font-size: 1.5rem;
329
- color: $--sub-color;
330
- }
331
-
332
- .tip {
333
- font-size: 0.75rem;
334
- color: $--sub-color;
335
- }
336
-
337
- .text {
338
- font-size: 1rem;
339
- color: $--text-color;
340
- }
341
- }
342
-
343
- #customTestDurationPopup {
344
- .preview {
345
- font-size: 0.75rem;
346
- color: $--sub-color;
347
- }
348
- }
349
- }
350
-
351
- #googleSignUpPopup {
352
- background: $--bg-color;
353
- border-radius: $--roundness;
354
- padding: 2rem;
355
- display: grid;
356
- gap: 1rem;
357
- width: 400px;
358
- .title {
359
- font-size: 1.5rem;
360
- color: $--sub-color;
361
- }
362
- .inputAndIndicator {
363
- input {
364
- width: 100%;
365
- }
366
- position: relative;
367
- .checkStatus {
368
- width: 2.25rem;
369
- height: 2.25rem;
370
- position: absolute;
371
- right: 0;
372
- top: 0;
373
- display: grid;
374
- grid-template-columns: 2.25rem;
375
- grid-template-rows: 2.25rem;
376
- place-items: center center;
377
- cursor: pointer;
378
-
379
- .checking,
380
- .available,
381
- .unavailable,
382
- .taken {
383
- grid-column: 1/2;
384
- grid-row: 1/2;
385
- }
386
- .checking {
387
- color: $--sub-color;
388
- }
389
- .available {
390
- color: $--main-color;
391
- }
392
- .unavailable,
393
- .taken {
394
- color: $--error-color;
395
- }
396
- }
397
- }
398
- }
399
-
400
- #shareTestSettingsPopup {
401
- background: $--bg-color;
402
- border-radius: $--roundness;
403
- padding: 2rem;
404
- display: grid;
405
- gap: 1rem;
406
- width: 500px;
407
- .title {
408
- font-size: 1.5rem;
409
- color: $--sub-color;
410
- }
411
- .subgroup {
412
- padding-left: 2rem;
413
- }
414
- .tooLongWarning {
415
- font-size: 0.75rem;
416
- color: $--error-color;
417
- }
418
- }
419
- #cookiePopupWrapper {
420
- .extensionMessage {
421
- position: fixed;
422
- right: 2rem;
423
- bottom: 2rem;
424
- padding: 1rem;
425
- width: 465px;
426
- font-size: 0.75rem;
427
- }
428
- #cookiePopup {
429
- position: fixed;
430
- right: 2rem;
431
- bottom: 2rem;
432
- background: $--bg-color;
433
- border-radius: $--roundness;
434
- padding: 2rem;
435
- display: grid;
436
- gap: 1rem;
437
- width: 465px;
438
- z-index: 100000001;
439
- user-select: none;
440
- .main {
441
- display: grid;
442
- gap: 1rem;
443
- }
444
- .title {
445
- font-size: 1.5rem;
446
- color: $--sub-color;
447
- }
448
- .buttons {
449
- margin-top: 0.25rem;
450
- display: grid;
451
- grid-auto-flow: column;
452
- gap: 1rem;
453
- grid-template-columns: 1fr 2.25rem;
454
- }
455
- .settings {
456
- display: grid;
457
- gap: 1rem;
458
- .customTextCheckbox {
459
- background: $--sub-color;
460
- }
461
- .cookie label {
462
- display: grid;
463
- gap: 0 1rem;
464
- grid-template-columns: 1fr min-content;
465
- grid-template-areas:
466
- "title check"
467
- "description check";
468
- .title {
469
- grid-area: title;
470
- font-size: 1.25rem;
471
- }
472
- .description {
473
- grid-area: description;
474
- }
475
- .customTextCheckbox {
476
- place-self: center;
477
- grid-area: check;
478
- }
479
- }
480
- .cookie.ads label {
481
- grid-template-columns: 1fr;
482
- grid-template-areas:
483
- "title"
484
- "description";
485
- a {
486
- margin-top: 0.25rem;
487
- }
488
- }
489
- }
490
- }
491
- }
492
-
493
- #videoAdPopupWrapper {
494
- display: flex;
495
- padding: 2rem;
496
- #videoAdPopup {
497
- background: $--bg-color;
498
- border-radius: $--roundness;
499
- padding: 2rem;
500
- display: grid;
501
- gap: 1rem;
502
- width: 100%;
503
- max-width: 1000px;
504
- aspect-ratio: 16/9;
505
- display: grid;
506
- grid-template-areas: "middle";
507
- .preloader {
508
- grid-area: middle;
509
- display: grid;
510
- place-items: center center;
511
- gap: 1rem;
512
- font-size: 2rem;
513
- color: $--main-color;
514
- height: max-content;
515
- align-self: center;
516
- }
517
- .video {
518
- grid-area: middle;
519
- }
520
- }
521
- }
522
-
523
- #pbTablesPopupWrapper #pbTablesPopup {
524
- .title {
525
- color: $--text-color;
526
- }
527
- min-width: 50rem;
528
- max-height: calc(100vh - 10rem);
529
- overflow-y: scroll;
530
- table {
531
- border-spacing: 0;
532
- border-collapse: collapse;
533
- color: $--text-color;
534
-
535
- td {
536
- padding: 0.5rem 0.5rem;
537
- }
538
-
539
- thead {
540
- color: $--sub-color;
541
- font-size: 0.75rem;
542
- }
543
-
544
- tbody tr:nth-child(odd) td {
545
- background: $--sub-alt-color;
546
- }
547
-
548
- td.infoIcons span {
549
- margin: 0 0.1rem;
550
- }
551
- .miniResultChartButton {
552
- opacity: 0.25;
553
- transition: 0.25s;
554
- cursor: pointer;
555
- &:hover {
556
- opacity: 1;
557
- }
558
- }
559
- .sub {
560
- opacity: 0.5;
561
- }
562
- td {
563
- text-align: right;
564
- }
565
- td:nth-child(6),
566
- td:nth-child(7) {
567
- text-align: center;
568
- }
569
- tbody td:nth-child(1) {
570
- font-size: 1.5rem;
571
- }
572
- }
573
- }
574
-
575
- #customThemeShareWrapper {
576
- #customThemeShare {
577
- width: 50vw;
578
- background: $--bg-color;
579
- border-radius: $--roundness;
580
- padding: 2rem;
581
- display: grid;
582
- gap: 1rem;
583
- overflow-y: scroll;
584
- }
585
- }
586
-
587
- #quoteSearchPopupWrapper {
588
- .highlight {
589
- color: $--main-color;
590
- }
591
-
592
- #quoteSearchPopup {
593
- background: $--bg-color;
594
- border-radius: $--roundness;
595
- padding: 2rem;
596
- display: grid;
597
- gap: 1rem;
598
- width: 80vw;
599
- max-width: 1000px;
600
- height: 80vh;
601
- grid-template-rows: auto auto auto 1fr;
602
-
603
- #quoteSearchTop {
604
- display: flex;
605
- justify-content: space-between;
606
-
607
- .title {
608
- font-size: 1.5rem;
609
- color: $--sub-color;
610
- }
611
-
612
- .buttons {
613
- width: 33%;
614
- display: grid;
615
- gap: 0.5rem;
616
- .button {
617
- width: 100%;
618
- }
619
- }
620
- }
621
-
622
- #quoteSearchControlsWrapper {
623
- display: grid;
624
- grid-template-columns: 1.5fr 1fr max-content;
625
- gap: 1rem;
626
-
627
- #searchBox {
628
- width: 100%;
629
- }
630
-
631
- #toggleShowFavorites {
632
- height: 100%;
633
- display: flex;
634
- align-items: center;
635
- justify-content: center;
636
- padding: 0.4rem 1rem;
637
- }
638
- }
639
-
640
- #extraResults {
641
- text-align: center;
642
- color: $--sub-color;
643
- }
644
- #quoteSearchResults {
645
- display: grid;
646
- gap: 0.5rem;
647
- height: auto;
648
- overflow-y: scroll;
649
- align-content: baseline;
650
-
651
- .searchResult {
652
- display: grid;
653
- grid-template-columns: 1fr 1fr 3fr 0fr 0fr;
654
- grid-template-areas:
655
- "text text text text text"
656
- "id len source report favorite";
657
- grid-auto-rows: auto;
658
- width: 100%;
659
- gap: 0.5rem;
660
- transition: 0.25s;
661
- padding: 1rem;
662
- box-sizing: border-box;
663
- user-select: none;
664
- cursor: pointer;
665
- height: min-content;
666
-
667
- .text {
668
- grid-area: text;
669
- overflow: visible;
670
- color: $--text-color;
671
- }
672
- .id {
673
- grid-area: id;
674
- font-size: 0.8rem;
675
- color: $--sub-color;
676
- }
677
- .length {
678
- grid-area: len;
679
- font-size: 0.8rem;
680
- color: $--sub-color;
681
- }
682
- .source {
683
- grid-area: source;
684
- font-size: 0.8rem;
685
- color: $--sub-color;
686
- }
687
- .resultChevron {
688
- grid-area: chevron;
689
- display: flex;
690
- align-items: center;
691
- justify-items: center;
692
- color: $--sub-color;
693
- font-size: 2rem;
694
- }
695
- .report {
696
- grid-area: report;
697
- color: $--sub-color;
698
- transition: 0.25s;
699
- &:hover {
700
- color: $--text-color;
701
- }
702
- }
703
- .favorite {
704
- grid-area: favorite;
705
- color: $--sub-color;
706
- transition: 0.25s;
707
- &:hover {
708
- color: $--text-color;
709
- }
710
- }
711
- .sub {
712
- opacity: 0.5;
713
- }
714
- }
715
- .searchResult:hover {
716
- background: $--sub-alt-color;
717
- border-radius: 5px;
718
- }
719
- }
720
- }
721
- }
722
- #settingsImportWrapper {
723
- #settingsImport {
724
- width: 50vw;
725
- background: $--bg-color;
726
- border-radius: $--roundness;
727
- padding: 2rem;
728
- display: grid;
729
- gap: 1rem;
730
- overflow-y: scroll;
731
- }
732
- }
733
-
734
- #quoteSubmitPopup {
735
- background: $--bg-color;
736
- border-radius: $--roundness;
737
- padding: 2rem;
738
- display: grid;
739
- gap: 1rem;
740
- width: 1000px;
741
- grid-template-rows: auto auto auto auto auto auto auto auto auto;
742
- height: 100%;
743
- max-height: 40rem;
744
- overflow-y: scroll;
745
-
746
- label {
747
- color: $--sub-color;
748
- margin-bottom: -1rem;
749
- }
750
-
751
- .title {
752
- font-size: 1.5rem;
753
- color: $--sub-color;
754
- }
755
- textarea {
756
- resize: vertical;
757
- width: 100%;
758
- padding: 10px;
759
- line-height: 1.2rem;
760
- min-height: 5rem;
761
- }
762
- .characterCount {
763
- position: absolute;
764
- top: -1.25rem;
765
- right: 0.25rem;
766
- color: $--sub-color;
767
- user-select: none;
768
- &.red {
769
- color: $--error-color;
770
- }
771
- }
772
- }
773
-
774
- #apeKeysPopup {
775
- background: $--bg-color;
776
- border-radius: $--roundness;
777
- padding: 2rem;
778
- display: grid;
779
- gap: 1rem;
780
- width: 1000px;
781
- max-width: calc(100vw - 4rem);
782
- min-height: 18rem;
783
- overflow-y: scroll;
784
- grid-template-rows: max-content auto;
785
- align-items: baseline;
786
- gap: 1rem;
787
-
788
- .top {
789
- display: grid;
790
- grid-template-columns: 1fr auto;
791
- .title {
792
- font-size: 1.5rem;
793
- color: $--sub-color;
794
- }
795
- .button {
796
- padding: 0.4rem 2rem;
797
- }
798
- }
799
-
800
- .textButton {
801
- justify-content: center;
802
- }
803
-
804
- .keyButtons {
805
- display: grid;
806
- grid-auto-flow: column;
807
- gap: 1rem;
808
- .button {
809
- width: 3rem;
810
- }
811
- }
812
-
813
- table {
814
- width: 100%;
815
- border-spacing: 0;
816
- border-collapse: collapse;
817
-
818
- tr td:first-child {
819
- text-align: center;
820
- }
821
-
822
- tr.me {
823
- td {
824
- color: $--main-color;
825
- }
826
- }
827
-
828
- td {
829
- padding: 0.5rem 0.5rem;
830
- }
831
-
832
- thead {
833
- color: $--sub-color;
834
- font-size: 0.75rem;
835
-
836
- td {
837
- padding: 0.5rem;
838
- background: $--bg-color;
839
- position: -webkit-sticky;
840
- position: sticky;
841
- top: 0;
842
- z-index: 99;
843
- }
844
- }
845
-
846
- tbody {
847
- color: $--text-color;
848
-
849
- tr:nth-child(odd) td {
850
- background: $--sub-alt-color;
851
- }
852
- }
853
-
854
- tfoot {
855
- td {
856
- padding: 1rem 0.5rem;
857
- position: -webkit-sticky;
858
- position: sticky;
859
- bottom: -5px;
860
- background: $--bg-color;
861
- color: $--main-color;
862
- z-index: 4;
863
- }
864
- }
865
-
866
- tr {
867
- td:first-child {
868
- padding-left: 1rem;
869
- }
870
- td:last-child {
871
- padding-right: 1rem;
872
- }
873
- }
874
- }
875
- }
876
-
877
- #quoteApprovePopup {
878
- background: $--bg-color;
879
- border-radius: $--roundness;
880
- padding: 2rem;
881
- display: grid;
882
- gap: 1rem;
883
- width: 1000px;
884
- height: 80vh;
885
- grid-template-rows: auto 1fr;
886
-
887
- .top {
888
- display: flex;
889
- justify-content: space-between;
890
- .title {
891
- font-size: 1.5rem;
892
- color: $--sub-color;
893
- }
894
- .button {
895
- width: 33%;
896
- }
897
- }
898
-
899
- .quotes {
900
- display: grid;
901
- gap: 1rem;
902
- height: auto;
903
- overflow-y: scroll;
904
- align-content: baseline;
905
-
906
- .quote {
907
- display: grid;
908
- grid-template-columns: 1fr auto;
909
- grid-auto-rows: auto 2rem;
910
- width: 100%;
911
- gap: 1rem;
912
- transition: 0.25s;
913
- box-sizing: border-box;
914
- user-select: none;
915
- height: min-content;
916
- margin-bottom: 1rem;
917
-
918
- .text {
919
- grid-column: 1/2;
920
- grid-row: 1/2;
921
- overflow: visible;
922
- color: $--text-color;
923
- resize: vertical;
924
- min-height: 4rem;
925
- }
926
- .source {
927
- grid-column: 1/2;
928
- grid-row: 2/3;
929
- color: $--text-color;
930
- }
931
- .buttons {
932
- display: flex;
933
- flex-direction: column;
934
- justify-content: center;
935
- margin-right: 1rem;
936
- grid-column: 2/3;
937
- grid-row: 1/4;
938
- color: $--sub-color;
939
- }
940
-
941
- .bottom {
942
- display: flex;
943
- justify-content: space-around;
944
- color: $--sub-color;
945
- .length.red {
946
- color: $--error-color;
947
- }
948
- }
949
-
950
- .sub {
951
- opacity: 0.5;
952
- }
953
- }
954
- .searchResult:hover {
955
- background: $--sub-alt-color;
956
- border-radius: 5px;
957
- }
958
- }
959
- }
960
-
961
- #quoteReportPopupWrapper {
962
- #quoteReportPopup {
963
- background: $--bg-color;
964
- border-radius: $--roundness;
965
- padding: 2rem;
966
- display: grid;
967
- gap: 1rem;
968
- grid-template-rows: auto auto auto auto auto auto auto auto auto;
969
- height: auto;
970
- max-height: 40rem;
971
- overflow-y: scroll;
972
- width: calc(100% - 4rem);
973
- margin-left: 2rem;
974
- max-width: 800px;
975
-
976
- label {
977
- color: $--sub-color;
978
- margin-bottom: -1rem;
979
- }
980
-
981
- .quote {
982
- font-size: 1.5rem;
983
- }
984
-
985
- .title {
986
- font-size: 1.5rem;
987
- color: $--sub-color;
988
- }
989
-
990
- textarea {
991
- resize: vertical;
992
- width: 100%;
993
- padding: 10px;
994
- line-height: 1.2rem;
995
- min-height: 5rem;
996
- }
997
-
998
- .characterCount {
999
- position: absolute;
1000
- top: -1.25rem;
1001
- right: 0.25rem;
1002
- color: $--sub-color;
1003
- user-select: none;
1004
- &.red {
1005
- color: $--error-color;
1006
- }
1007
- }
1008
- }
1009
- }
1010
-
1011
- #resultEditTagsPanelWrapper {
1012
- #resultEditTagsPanel {
1013
- background: $--bg-color;
1014
- border-radius: $--roundness;
1015
- padding: 2rem;
1016
- display: grid;
1017
- gap: 1rem;
1018
- overflow-y: scroll;
1019
- width: 500px;
1020
-
1021
- .buttons {
1022
- display: grid;
1023
- gap: 1rem;
1024
- grid-template-columns: 1fr 1fr 1fr;
1025
- }
1026
- }
1027
- }
1028
-
1029
- #versionHistoryWrapper {
1030
- width: 100%;
1031
- height: 100%;
1032
- background: rgba(0, 0, 0, 0.75);
1033
- position: fixed;
1034
- left: 0;
1035
- top: 0;
1036
- z-index: 1000;
1037
- display: grid;
1038
- justify-content: center;
1039
- align-items: start;
1040
- padding: 5rem 0;
1041
-
1042
- #versionHistory {
1043
- width: 75vw;
1044
- height: 100%;
1045
- background: $--bg-color;
1046
- border-radius: $--roundness;
1047
- padding: 2rem;
1048
- display: grid;
1049
- gap: 1rem;
1050
- @extend .ffscroll;
1051
- overflow-y: scroll;
1052
-
1053
- .tip {
1054
- text-align: center;
1055
- color: $--sub-color;
1056
- }
1057
-
1058
- .releases {
1059
- display: grid;
1060
- gap: 4rem;
1061
-
1062
- .release {
1063
- display: grid;
1064
- grid-template-areas:
1065
- "title date"
1066
- "body body";
1067
-
1068
- .title {
1069
- grid-area: title;
1070
- font-size: 2rem;
1071
- color: $--sub-color;
1072
- }
1073
-
1074
- .date {
1075
- grid-area: date;
1076
- text-align: right;
1077
- color: $--sub-color;
1078
- align-self: center;
1079
- }
1080
-
1081
- .body {
1082
- grid-area: body;
1083
- color: $--text-color;
1084
- }
1085
-
1086
- &:last-child {
1087
- margin-bottom: 2rem;
1088
- }
1089
- }
1090
- }
1091
- }
1092
- }
1093
-
1094
- #supportMeWrapper {
1095
- #supportMe {
1096
- width: 900px;
1097
- overflow-y: scroll;
1098
- max-height: 100%;
1099
- background: $--bg-color;
1100
- border-radius: $--roundness;
1101
- padding: 2rem;
1102
- display: grid;
1103
- grid-template-rows: auto auto auto;
1104
- gap: 1rem;
1105
- @extend .ffscroll;
1106
-
1107
- .title {
1108
- font-size: 1.5rem;
1109
- color: $--sub-color;
1110
- }
1111
-
1112
- .text {
1113
- color: $--text-color;
1114
- }
1115
-
1116
- .subtext {
1117
- color: $--sub-color;
1118
- font-size: 0.75rem;
1119
- }
1120
-
1121
- .buttons {
1122
- display: grid;
1123
- grid-template-columns: 1fr 1fr 1fr;
1124
- gap: 1rem;
1125
-
1126
- .button {
1127
- display: block;
1128
- width: 100%;
1129
- height: 100%;
1130
- padding: 1rem 0;
1131
- display: grid;
1132
- gap: 1rem;
1133
- text-decoration: none;
1134
- .text {
1135
- transition: 0.25s;
1136
- }
1137
- &:hover .text {
1138
- color: $--bg-color;
1139
- }
1140
- .icon {
1141
- font-size: 3rem;
1142
- line-height: 3rem;
1143
- }
1144
- }
1145
- }
1146
- }
1147
- }
1148
-
1149
- #contactPopupWrapper {
1150
- #contactPopup {
1151
- overflow-y: scroll;
1152
- max-height: 100%;
1153
- background: $--bg-color;
1154
- border-radius: $--roundness;
1155
- padding: 2rem;
1156
- display: grid;
1157
- grid-template-rows: auto auto auto;
1158
- gap: 1rem;
1159
- @extend .ffscroll;
1160
- margin: 0 2rem;
1161
- max-width: 900px;
1162
-
1163
- .title {
1164
- font-size: 1.5rem;
1165
- line-height: 2rem;
1166
- color: $--sub-color;
1167
- }
1168
-
1169
- .text {
1170
- color: $--text-color;
1171
- span {
1172
- color: $--error-color;
1173
- }
1174
- }
1175
-
1176
- .subtext {
1177
- color: $--sub-color;
1178
- font-size: 0.75rem;
1179
- grid-area: subtext;
1180
- }
1181
-
1182
- .buttons {
1183
- display: grid;
1184
- gap: 1rem;
1185
- grid-template-columns: 1fr 1fr;
1186
-
1187
- .button {
1188
- display: block;
1189
- width: 100%;
1190
- height: 100%;
1191
- padding: 1rem 0;
1192
- display: grid;
1193
- text-decoration: none;
1194
- grid-template-areas: "icon textgroup";
1195
- grid-template-columns: auto 1fr;
1196
- text-align: left;
1197
- align-items: center;
1198
- .textGroup {
1199
- grid-area: textgroup;
1200
- }
1201
- .text {
1202
- font-size: 1.5rem;
1203
- line-height: 2rem;
1204
- transition: 0.25s;
1205
- }
1206
- &:hover .text {
1207
- color: $--bg-color;
1208
- }
1209
- .icon {
1210
- grid-area: icon;
1211
- font-size: 2rem;
1212
- line-height: 2rem;
1213
- padding: 0 1rem;
1214
- }
1215
- }
1216
- }
1217
- }
1218
- }
1219
-
1220
- #presetWrapper {
1221
- #presetEdit {
1222
- .title {
1223
- font-size: 1.5rem;
1224
- color: $--sub-color;
1225
- }
1226
- background: $--bg-color;
1227
- border-radius: $--roundness;
1228
- padding: 2rem;
1229
- display: grid;
1230
- gap: 1rem;
1231
- overflow-y: scroll;
1232
- }
1233
- }
1234
-
1235
- #tagsWrapper,
1236
- #newResultFilterPresetPopupWrapper,
1237
- #editProfilePopupWrapper {
1238
- #tagsEdit,
1239
- #newResultFilterPresetPopup,
1240
- #editProfilePopup {
1241
- max-height: 90vh;
1242
- background: $--bg-color;
1243
- border-radius: $--roundness;
1244
- padding: 2rem;
1245
- display: grid;
1246
- gap: 1rem;
1247
- overflow-y: scroll;
1248
- .title {
1249
- font-size: 1.5rem;
1250
- color: $--sub-color;
1251
- }
1252
- }
1253
- }
1254
-
1255
- #editProfilePopup {
1256
- width: 100%;
1257
- max-width: 600px;
1258
- label {
1259
- color: $--sub-color;
1260
- }
1261
- input {
1262
- width: 100%;
1263
- }
1264
- textarea {
1265
- resize: vertical;
1266
- width: 100%;
1267
- padding: 10px;
1268
- line-height: 1.2rem;
1269
- min-height: 5rem;
1270
- max-height: 10rem;
1271
- }
1272
-
1273
- .socialURL {
1274
- display: flex;
1275
- }
1276
-
1277
- .socialURL > p {
1278
- margin-block: 0.5rem;
1279
- margin-inline-end: 0.5rem;
1280
- }
1281
-
1282
- .badgeSelectionContainer {
1283
- display: flex;
1284
- flex-wrap: wrap;
1285
- }
1286
-
1287
- .badgeSelectionItem {
1288
- margin-bottom: 0.5rem;
1289
- width: max-content;
1290
- opacity: 25%;
1291
- cursor: pointer;
1292
- margin-right: 0.5rem;
1293
- margin-bottom: 0.5rem;
1294
- }
1295
-
1296
- .badgeSelectionItem.selected,
1297
- .badgeSelectionItem:hover {
1298
- opacity: 100%;
1299
- }
1300
- }
1301
-
1302
- #customThemesWrapper {
1303
- #customThemesEdit {
1304
- background: $--bg-color;
1305
- border-radius: $--roundness;
1306
- padding: 2rem;
1307
- display: grid;
1308
- gap: 1rem;
1309
- overflow-y: scroll;
1310
- }
1311
- }