@jjlmoya/utils-sports 1.11.0 → 1.12.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jjlmoya/utils-sports",
3
- "version": "1.11.0",
3
+ "version": "1.12.0",
4
4
  "type": "module",
5
5
  "main": "./src/index.ts",
6
6
  "types": "./src/index.ts",
@@ -1,4 +1,4 @@
1
- :global(.gt-root) {
1
+ .gt-root {
2
2
  width: 100%;
3
3
  max-width: 520px;
4
4
  margin: 0 auto;
@@ -6,7 +6,7 @@
6
6
  box-sizing: border-box;
7
7
  }
8
8
 
9
- :global(.gt-card) {
9
+ .gt-card {
10
10
  background: var(--bg-surface);
11
11
  border: 1px solid var(--border-base);
12
12
  border-radius: 20px;
@@ -19,13 +19,13 @@
19
19
  box-sizing: border-box;
20
20
  }
21
21
 
22
- :global(.gt-header-row) {
22
+ .gt-header-row {
23
23
  display: flex;
24
24
  gap: 0.75rem;
25
25
  align-items: flex-end;
26
26
  }
27
27
 
28
- :global(.gt-field) {
28
+ .gt-field {
29
29
  flex: 1;
30
30
  display: flex;
31
31
  flex-direction: column;
@@ -33,7 +33,7 @@
33
33
  min-width: 0;
34
34
  }
35
35
 
36
- :global(.gt-field label) {
36
+ .gt-field label {
37
37
  display: flex;
38
38
  align-items: center;
39
39
  gap: 0.5rem;
@@ -44,13 +44,13 @@
44
44
  letter-spacing: 0.05em;
45
45
  }
46
46
 
47
- :global(.gt-icon-label) {
47
+ .gt-icon-label {
48
48
  width: 16px;
49
49
  height: 16px;
50
50
  color: var(--primary);
51
51
  }
52
52
 
53
- :global(.gt-select) {
53
+ .gt-select {
54
54
  width: 100%;
55
55
  padding: 0.6rem 2rem 0.6rem 0.75rem;
56
56
  background: var(--bg-page);
@@ -65,12 +65,12 @@
65
65
  text-overflow: ellipsis;
66
66
  }
67
67
 
68
- :global(.gt-select-box) {
68
+ .gt-select-box {
69
69
  position: relative;
70
70
  width: 100%;
71
71
  }
72
72
 
73
- :global(.gt-select-box::after) {
73
+ .gt-select-box::after {
74
74
  content: "\25BC";
75
75
  position: absolute;
76
76
  right: 0.75rem;
@@ -81,7 +81,7 @@
81
81
  pointer-events: none;
82
82
  }
83
83
 
84
- :global(.gt-btn-toggle) {
84
+ .gt-btn-toggle {
85
85
  background: var(--bg-page);
86
86
  border: 1px solid var(--border-base);
87
87
  border-radius: 10px;
@@ -96,12 +96,12 @@
96
96
  flex-shrink: 0;
97
97
  }
98
98
 
99
- :global(.gt-btn-toggle:hover) {
99
+ .gt-btn-toggle:hover {
100
100
  background: var(--primary-bg);
101
101
  transform: scale(1.05);
102
102
  }
103
103
 
104
- :global(.gt-custom-form) {
104
+ .gt-custom-form {
105
105
  margin-top: 1rem;
106
106
  padding: 1rem;
107
107
  background: var(--bg-page);
@@ -109,7 +109,7 @@
109
109
  border: 1px dashed var(--border-base);
110
110
  }
111
111
 
112
- :global(.gt-label-small) {
112
+ .gt-label-small {
113
113
  display: block;
114
114
  font-size: 0.65rem;
115
115
  font-weight: 700;
@@ -118,12 +118,12 @@
118
118
  text-transform: uppercase;
119
119
  }
120
120
 
121
- :global(.gt-custom-row) {
121
+ .gt-custom-row {
122
122
  display: flex;
123
123
  gap: 0.5rem;
124
124
  }
125
125
 
126
- :global(.gt-input-text) {
126
+ .gt-input-text {
127
127
  flex: 1;
128
128
  min-width: 0;
129
129
  padding: 0.5rem;
@@ -134,7 +134,7 @@
134
134
  font-size: 0.9rem;
135
135
  }
136
136
 
137
- :global(.gt-btn-secondary) {
137
+ .gt-btn-secondary {
138
138
  background: var(--bg-surface);
139
139
  border: 1px solid var(--border-base);
140
140
  color: var(--text-base);
@@ -145,7 +145,7 @@
145
145
  cursor: pointer;
146
146
  }
147
147
 
148
- :global(.gt-btn-icon) {
148
+ .gt-btn-icon {
149
149
  background: none;
150
150
  border: none;
151
151
  color: var(--text-muted);
@@ -154,14 +154,14 @@
154
154
  padding: 0 0.5rem;
155
155
  }
156
156
 
157
- :global(.gt-log-section) {
157
+ .gt-log-section {
158
158
  background: var(--primary-bg);
159
159
  padding: 1rem;
160
160
  border-radius: 14px;
161
161
  border: 1px solid var(--primary-soft);
162
162
  }
163
163
 
164
- :global(.gt-label-main) {
164
+ .gt-label-main {
165
165
  display: flex;
166
166
  align-items: center;
167
167
  gap: 0.5rem;
@@ -172,12 +172,12 @@
172
172
  text-transform: uppercase;
173
173
  }
174
174
 
175
- :global(.gt-log-row) {
175
+ .gt-log-row {
176
176
  display: flex;
177
177
  gap: 0.75rem;
178
178
  }
179
179
 
180
- :global(.gt-input-number) {
180
+ .gt-input-number {
181
181
  flex: 1;
182
182
  min-width: 0;
183
183
  padding: 0.75rem;
@@ -191,7 +191,7 @@
191
191
  outline: none;
192
192
  }
193
193
 
194
- :global(.gt-btn-primary) {
194
+ .gt-btn-primary {
195
195
  background: var(--primary);
196
196
  color: white;
197
197
  border: none;
@@ -204,7 +204,7 @@
204
204
  box-shadow: 0 4px 12px var(--primary-soft);
205
205
  }
206
206
 
207
- :global(.gt-timer-section) {
207
+ .gt-timer-section {
208
208
  background: var(--bg-page);
209
209
  border-radius: 16px;
210
210
  overflow: hidden;
@@ -212,7 +212,7 @@
212
212
  border: 1px solid var(--border-base);
213
213
  }
214
214
 
215
- :global(.gt-timer-container) {
215
+ .gt-timer-container {
216
216
  padding: 1rem;
217
217
  display: flex;
218
218
  justify-content: space-between;
@@ -220,32 +220,32 @@
220
220
  gap: 1.5rem;
221
221
  }
222
222
 
223
- :global(.gt-timer-main) {
223
+ .gt-timer-main {
224
224
  display: flex;
225
225
  flex-direction: column;
226
226
  align-items: center;
227
227
  min-width: 100px;
228
228
  }
229
229
 
230
- :global(.gt-timer-text) {
230
+ .gt-timer-text {
231
231
  font-size: 2rem;
232
232
  font-weight: 900;
233
233
  color: var(--text-muted);
234
234
  font-variant-numeric: tabular-nums;
235
235
  }
236
236
 
237
- :global(.gt-timer-text.gt-timer-active) {
237
+ .gt-timer-text.gt-timer-active {
238
238
  color: var(--primary);
239
239
  text-shadow: 0 0 15px var(--primary-soft);
240
240
  }
241
241
 
242
- :global(.gt-timer-actions) {
242
+ .gt-timer-actions {
243
243
  display: flex;
244
244
  gap: 0.75rem;
245
245
  margin-top: 0.5rem;
246
246
  }
247
247
 
248
- :global(.gt-btn-round) {
248
+ .gt-btn-round {
249
249
  width: 32px;
250
250
  height: 32px;
251
251
  border-radius: 50%;
@@ -259,25 +259,25 @@
259
259
  transition: all 0.2s ease;
260
260
  }
261
261
 
262
- :global(.gt-btn-round:hover) {
262
+ .gt-btn-round:hover {
263
263
  background: var(--bg-page);
264
264
  transform: scale(1.1);
265
265
  }
266
266
 
267
- :global(.gt-timer-presets) {
267
+ .gt-timer-presets {
268
268
  flex: 1;
269
269
  display: flex;
270
270
  flex-direction: column;
271
271
  gap: 0.5rem;
272
272
  }
273
273
 
274
- :global(.gt-presets-grid) {
274
+ .gt-presets-grid {
275
275
  display: grid;
276
276
  grid-template-columns: repeat(3, 1fr);
277
277
  gap: 0.4rem;
278
278
  }
279
279
 
280
- :global(.gt-preset-btn) {
280
+ .gt-preset-btn {
281
281
  background: var(--bg-surface);
282
282
  border: 1px solid var(--border-base);
283
283
  color: var(--text-base);
@@ -288,12 +288,12 @@
288
288
  cursor: pointer;
289
289
  }
290
290
 
291
- :global(.gt-custom-timer) {
291
+ .gt-custom-timer {
292
292
  display: flex;
293
293
  gap: 0.4rem;
294
294
  }
295
295
 
296
- :global(.gt-input-timer) {
296
+ .gt-input-timer {
297
297
  flex: 1;
298
298
  padding: 0.3rem;
299
299
  border-radius: 6px;
@@ -305,7 +305,7 @@
305
305
  min-width: 0;
306
306
  }
307
307
 
308
- :global(.gt-btn-ok) {
308
+ .gt-btn-ok {
309
309
  background: var(--primary);
310
310
  color: white;
311
311
  border: none;
@@ -316,27 +316,27 @@
316
316
  cursor: pointer;
317
317
  }
318
318
 
319
- :global(.gt-progress-bg) {
319
+ .gt-progress-bg {
320
320
  height: 4px;
321
321
  background: var(--border-base);
322
322
  width: 100%;
323
323
  }
324
324
 
325
- :global(.gt-progress-bar) {
325
+ .gt-progress-bar {
326
326
  height: 100%;
327
327
  background: var(--primary);
328
328
  width: 0%;
329
329
  transition: width 1s linear;
330
330
  }
331
331
 
332
- :global(.gt-dashboard) {
332
+ .gt-dashboard {
333
333
  display: flex;
334
334
  flex-direction: column;
335
335
  gap: 1rem;
336
336
  width: 100%;
337
337
  }
338
338
 
339
- :global(.gt-chart-wrapper) {
339
+ .gt-chart-wrapper {
340
340
  background: var(--bg-page);
341
341
  border-radius: 12px;
342
342
  padding: 0.75rem;
@@ -346,29 +346,29 @@
346
346
  min-width: 0;
347
347
  }
348
348
 
349
- :global(.gt-chart-box) {
349
+ .gt-chart-box {
350
350
  width: 100%;
351
351
  height: 100%;
352
352
  }
353
353
 
354
- :global(.gt-svg-chart) {
354
+ .gt-svg-chart {
355
355
  width: 100%;
356
356
  height: 100%;
357
357
  color: var(--primary);
358
358
  overflow: visible;
359
359
  }
360
360
 
361
- :global(.gt-path) {
361
+ .gt-path {
362
362
  filter: drop-shadow(0 0 4px var(--primary-soft));
363
363
  }
364
364
 
365
- :global(.gt-chart-dot) {
365
+ .gt-chart-dot {
366
366
  fill: var(--primary);
367
367
  stroke: var(--bg-page);
368
368
  stroke-width: 2;
369
369
  }
370
370
 
371
- :global(.gt-empty-state) {
371
+ .gt-empty-state {
372
372
  position: absolute;
373
373
  inset: 0;
374
374
  display: flex;
@@ -381,14 +381,14 @@
381
381
  letter-spacing: 0.1em;
382
382
  }
383
383
 
384
- :global(.gt-stats) {
384
+ .gt-stats {
385
385
  display: grid;
386
386
  grid-template-columns: 1fr 1fr;
387
387
  gap: 0.75rem;
388
388
  width: 100%;
389
389
  }
390
390
 
391
- :global(.gt-stat-item) {
391
+ .gt-stat-item {
392
392
  background: var(--bg-page);
393
393
  border: 1px solid var(--border-base);
394
394
  padding: 0.75rem;
@@ -397,7 +397,7 @@
397
397
  min-width: 0;
398
398
  }
399
399
 
400
- :global(.gt-stat-label) {
400
+ .gt-stat-label {
401
401
  display: block;
402
402
  font-size: 0.6rem;
403
403
  font-weight: 800;
@@ -406,26 +406,26 @@
406
406
  margin-bottom: 0.25rem;
407
407
  }
408
408
 
409
- :global(.gt-stat-val) {
409
+ .gt-stat-val {
410
410
  font-size: 1.1rem;
411
411
  font-weight: 900;
412
412
  color: var(--text-base);
413
413
  }
414
414
 
415
- :global(.gt-history) {
415
+ .gt-history {
416
416
  border-top: 1px solid var(--border-base);
417
417
  padding-top: 1rem;
418
418
  min-width: 0;
419
419
  }
420
420
 
421
- :global(.gt-history-header) {
421
+ .gt-history-header {
422
422
  display: flex;
423
423
  justify-content: space-between;
424
424
  align-items: center;
425
425
  margin-bottom: 0.75rem;
426
426
  }
427
427
 
428
- :global(.gt-history-title) {
428
+ .gt-history-title {
429
429
  display: flex;
430
430
  align-items: center;
431
431
  gap: 0.5rem;
@@ -437,12 +437,12 @@
437
437
  white-space: nowrap;
438
438
  }
439
439
 
440
- :global(.gt-history-actions) {
440
+ .gt-history-actions {
441
441
  display: flex;
442
442
  gap: 0.75rem;
443
443
  }
444
444
 
445
- :global(.gt-btn-text) {
445
+ .gt-btn-text {
446
446
  background: none;
447
447
  border: none;
448
448
  color: var(--text-muted);
@@ -454,17 +454,17 @@
454
454
  gap: 0.25rem;
455
455
  }
456
456
 
457
- :global(.gt-btn-text:hover) {
457
+ .gt-btn-text:hover {
458
458
  color: var(--primary);
459
459
  }
460
460
 
461
- :global(.gt-export-menu) {
461
+ .gt-export-menu {
462
462
  display: flex;
463
463
  gap: 0.5rem;
464
464
  margin-bottom: 0.75rem;
465
465
  }
466
466
 
467
- :global(.gt-export-item) {
467
+ .gt-export-item {
468
468
  background: var(--bg-page);
469
469
  border: 1px solid var(--border-base);
470
470
  color: var(--text-base);
@@ -475,13 +475,13 @@
475
475
  cursor: pointer;
476
476
  }
477
477
 
478
- :global(.gt-history-list) {
478
+ .gt-history-list {
479
479
  display: flex;
480
480
  flex-direction: column;
481
481
  gap: 0.5rem;
482
482
  }
483
483
 
484
- :global(.gt-history-item) {
484
+ .gt-history-item {
485
485
  display: flex;
486
486
  justify-content: space-between;
487
487
  align-items: center;
@@ -504,18 +504,18 @@
504
504
  }
505
505
  }
506
506
 
507
- :global(.gt-history-row) {
507
+ .gt-history-row {
508
508
  display: flex;
509
509
  align-items: center;
510
510
  gap: 1rem;
511
511
  }
512
512
 
513
- :global(.gt-history-weight) {
513
+ .gt-history-weight {
514
514
  color: var(--primary);
515
515
  font-weight: 800;
516
516
  }
517
517
 
518
- :global(.gt-btn-delete-log) {
518
+ .gt-btn-delete-log {
519
519
  background: none;
520
520
  border: none;
521
521
  color: var(--text-muted);
@@ -527,11 +527,11 @@
527
527
  justify-content: center;
528
528
  }
529
529
 
530
- :global(.gt-btn-delete-log:hover) {
530
+ .gt-btn-delete-log:hover {
531
531
  color: #ef4444;
532
532
  }
533
533
 
534
- :global(.gt-modal) {
534
+ .gt-modal {
535
535
  position: fixed;
536
536
  inset: 0;
537
537
  background: rgba(0, 0, 0, 0.6);
@@ -543,7 +543,7 @@
543
543
  padding: 1.5rem;
544
544
  }
545
545
 
546
- :global(.gt-modal-box) {
546
+ .gt-modal-box {
547
547
  background: var(--bg-surface);
548
548
  border: 1px solid var(--border-base);
549
549
  border-radius: 20px;
@@ -553,26 +553,26 @@
553
553
  text-align: center;
554
554
  }
555
555
 
556
- :global(.gt-modal-box h4) {
556
+ .gt-modal-box h4 {
557
557
  margin: 0 0 0.75rem;
558
558
  font-size: 1.1rem;
559
559
  font-weight: 900;
560
560
  color: var(--text-base);
561
561
  }
562
562
 
563
- :global(.gt-modal-box p) {
563
+ .gt-modal-box p {
564
564
  font-size: 0.85rem;
565
565
  color: var(--text-muted);
566
566
  margin: 0 0 1.5rem;
567
567
  line-height: 1.5;
568
568
  }
569
569
 
570
- :global(.gt-modal-btns) {
570
+ .gt-modal-btns {
571
571
  display: flex;
572
572
  gap: 0.75rem;
573
573
  }
574
574
 
575
- :global(.gt-btn-danger) {
575
+ .gt-btn-danger {
576
576
  flex: 1;
577
577
  background: #ef4444;
578
578
  color: white;
@@ -584,7 +584,7 @@
584
584
  cursor: pointer;
585
585
  }
586
586
 
587
- :global(.gt-btn-cancel) {
587
+ .gt-btn-cancel {
588
588
  flex: 1;
589
589
  background: var(--bg-page);
590
590
  border: 1px solid var(--border-base);
@@ -595,37 +595,37 @@
595
595
  cursor: pointer;
596
596
  }
597
597
 
598
- :global(.gt-icon-xs) {
598
+ .gt-icon-xs {
599
599
  width: 14px;
600
600
  height: 14px;
601
601
  }
602
602
 
603
- :global(.gt-icon-sm) {
603
+ .gt-icon-sm {
604
604
  width: 18px;
605
605
  height: 18px;
606
606
  }
607
607
 
608
- :global(.gt-icon-md) {
608
+ .gt-icon-md {
609
609
  width: 22px;
610
610
  height: 22px;
611
611
  }
612
612
 
613
- :global(.gt-hidden) {
613
+ .gt-hidden {
614
614
  display: none;
615
615
  }
616
- :global(.gt-option-highlight) {
616
+ .gt-option-highlight {
617
617
  color: var(--primary);
618
618
  font-weight: 800;
619
619
  }
620
620
 
621
621
  @media (min-width: 400px) {
622
- :global(.gt-dashboard) {
622
+ .gt-dashboard {
623
623
  flex-direction: column;
624
624
  }
625
- :global(.gt-chart-wrapper) {
625
+ .gt-chart-wrapper {
626
626
  height: 160px;
627
627
  }
628
- :global(.gt-stats) {
628
+ .gt-stats {
629
629
  display: grid;
630
630
  grid-template-columns: 1fr 1fr;
631
631
  width: 100%;
@@ -633,7 +633,7 @@
633
633
  }
634
634
  }
635
635
 
636
- :global(.gt-animate-in) {
636
+ .gt-animate-in {
637
637
  animation: gt-fade-up 0.5s ease-out;
638
638
  }
639
639
 
@@ -648,20 +648,20 @@
648
648
  }
649
649
  }
650
650
 
651
- :global(.theme-dark .gt-card) {
651
+ .theme-dark .gt-card {
652
652
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.5);
653
653
  }
654
654
 
655
- :global(.theme-dark .gt-select),
656
- :global(.theme-dark .gt-input-text),
657
- :global(.theme-dark .gt-input-number),
658
- :global(.theme-dark .gt-input-timer),
659
- :global(.theme-dark .gt-btn-toggle),
660
- :global(.theme-dark .gt-btn-round),
661
- :global(.theme-dark .gt-preset-btn),
662
- :global(.theme-dark .gt-export-item),
663
- :global(.theme-dark .gt-stat-item),
664
- :global(.theme-dark .gt-history-item) {
655
+ .theme-dark .gt-select,
656
+ .theme-dark .gt-input-text,
657
+ .theme-dark .gt-input-number,
658
+ .theme-dark .gt-input-timer,
659
+ .theme-dark .gt-btn-toggle,
660
+ .theme-dark .gt-btn-round,
661
+ .theme-dark .gt-preset-btn,
662
+ .theme-dark .gt-export-item,
663
+ .theme-dark .gt-stat-item,
664
+ .theme-dark .gt-history-item {
665
665
  background-color: var(--bg-page);
666
666
  border-color: rgba(255, 255, 255, 0.1);
667
667
  }