@jjlmoya/utils-drones 1.4.0 → 1.6.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.
@@ -1,370 +0,0 @@
1
- .flight-calculator-ui {
2
- --dft-accent: #f97316;
3
- --dft-accent-glow: rgba(249, 115, 22, 0.15);
4
- --dft-bg: #fff;
5
- --dft-bg-muted: #f5f5f5;
6
- --dft-bg-surface: #eee;
7
- --dft-bg-overlay: #f0f0f0;
8
- --dft-text: #1a1a1a;
9
- --dft-text-muted: #4a4a4a;
10
- --dft-text-dim: #707070;
11
- --dft-border: #d0d0d0;
12
- --dft-border-light: #e8e8e8;
13
- --dft-shadow: 0 30px 60px rgba(0, 0, 0, 0.08);
14
- --dft-success: #15803d;
15
- --dft-success-bg: #dcfce7;
16
- --dft-warning: #a16207;
17
- --dft-warning-bg: #fef9c3;
18
- --dft-danger: #b91c1c;
19
- --dft-danger-bg: #fee2e2;
20
-
21
- width: 100%;
22
- max-width: 1100px;
23
- margin: 0 auto;
24
- }
25
-
26
- [data-theme="dark"] .flight-calculator-ui,
27
- .theme-dark .flight-calculator-ui {
28
- --dft-bg: #1a1a1a;
29
- --dft-bg-muted: #2d2d2d;
30
- --dft-bg-surface: #3a3a3a;
31
- --dft-bg-overlay: #292929;
32
- --dft-text: #f5f5f5;
33
- --dft-text-muted: #b0b0b0;
34
- --dft-text-dim: #888;
35
- --dft-border: #4a4a4a;
36
- --dft-border-light: #525252;
37
- --dft-shadow: 0 30px 60px rgba(0, 0, 0, 0.08);
38
- --dft-success: #4ade80;
39
- --dft-success-bg: rgba(21, 128, 61, 0.15);
40
- --dft-warning: #facc15;
41
- --dft-warning-bg: rgba(161, 98, 7, 0.15);
42
- --dft-danger: #f87171;
43
- --dft-danger-bg: rgba(185, 28, 28, 0.15);
44
- }
45
-
46
- .flight-calculator-ui .tech-mega-card {
47
- background: var(--dft-bg);
48
- backdrop-filter: blur(20px);
49
- border: 1px solid var(--dft-border);
50
- border-radius: 32px;
51
- box-shadow: var(--dft-shadow);
52
- overflow: hidden;
53
- }
54
-
55
- .flight-calculator-ui .card-grid {
56
- display: grid;
57
- grid-template-columns: 380px 1fr;
58
- }
59
-
60
- .flight-calculator-ui .config-sidebar {
61
- padding: 2.5rem;
62
- background: var(--dft-bg-overlay);
63
- display: flex;
64
- flex-direction: column;
65
- gap: 2.5rem;
66
- border-right: 1px solid var(--dft-border-light);
67
- }
68
-
69
- [data-theme="dark"] .flight-calculator-ui .config-sidebar,
70
- .theme-dark .flight-calculator-ui .config-sidebar {
71
- background: var(--dft-bg-surface);
72
- border-right-color: var(--dft-border-light);
73
- }
74
-
75
- .flight-calculator-ui .main-display {
76
- padding: 2.5rem;
77
- display: flex;
78
- flex-direction: column;
79
- gap: 2.5rem;
80
- background: var(--dft-bg);
81
- }
82
-
83
- [data-theme="dark"] .flight-calculator-ui .main-display,
84
- .theme-dark .flight-calculator-ui .main-display {
85
- background: var(--dft-bg);
86
- }
87
-
88
- .flight-calculator-ui .divider {
89
- height: 1px;
90
- width: 100%;
91
- background: linear-gradient(90deg, transparent, var(--dft-border-light), transparent);
92
- }
93
-
94
- [data-theme="dark"] .flight-calculator-ui .divider,
95
- .theme-dark .flight-calculator-ui .divider {
96
- background: linear-gradient(90deg, transparent, var(--dft-border-light), transparent);
97
- }
98
-
99
- .flight-calculator-ui .tech-section {
100
- display: flex;
101
- flex-direction: column;
102
- gap: 1.5rem;
103
- }
104
-
105
- .flight-calculator-ui .section-title {
106
- font-size: 0.95rem;
107
- font-weight: 800;
108
- color: var(--dft-text);
109
- text-transform: uppercase;
110
- letter-spacing: 0.05em;
111
- margin: 0;
112
- }
113
-
114
- .flight-calculator-ui .input-group {
115
- display: flex;
116
- flex-direction: column;
117
- gap: 0.75rem;
118
- }
119
-
120
- .flight-calculator-ui .label-row {
121
- display: flex;
122
- justify-content: space-between;
123
- align-items: center;
124
- }
125
-
126
- .flight-calculator-ui .input-group label {
127
- font-size: 0.85rem;
128
- font-weight: 700;
129
- color: var(--dft-text-muted);
130
- }
131
-
132
- .flight-calculator-ui .value-badge {
133
- padding: 0.25rem 0.75rem;
134
- background: var(--dft-accent-glow);
135
- border-radius: 12px;
136
- color: var(--dft-accent);
137
- font-weight: 800;
138
- font-size: 0.9rem;
139
- }
140
-
141
- .flight-calculator-ui .tech-slider {
142
- width: 100%;
143
- height: 6px;
144
- appearance: none;
145
- background: var(--dft-border);
146
- border-radius: 3px;
147
- outline: none;
148
- }
149
-
150
- .flight-calculator-ui .tech-slider::-webkit-slider-thumb {
151
- appearance: none;
152
- width: 18px;
153
- height: 18px;
154
- background: var(--dft-accent);
155
- border: 3px solid var(--dft-bg);
156
- border-radius: 50%;
157
- cursor: pointer;
158
- }
159
-
160
- .flight-calculator-ui .tech-slider::-moz-range-thumb {
161
- width: 18px;
162
- height: 18px;
163
- background: var(--dft-accent);
164
- border: 3px solid var(--dft-bg);
165
- border-radius: 50%;
166
- cursor: pointer;
167
- }
168
-
169
- .flight-calculator-ui .tech-select {
170
- width: 100%;
171
- padding: 0.75rem;
172
- background: var(--dft-bg-surface);
173
- border: 1px solid var(--dft-border);
174
- border-radius: 12px;
175
- font-weight: 600;
176
- color: var(--dft-text);
177
- }
178
-
179
- .flight-calculator-ui .tech-input {
180
- width: 100%;
181
- padding: 0.75rem;
182
- background: var(--dft-bg-surface);
183
- border: 1px solid var(--dft-border);
184
- border-radius: 12px;
185
- font-weight: 600;
186
- color: var(--dft-text);
187
- }
188
-
189
- .flight-calculator-ui .presets {
190
- display: flex;
191
- gap: 0.5rem;
192
- flex-wrap: wrap;
193
- }
194
-
195
- .flight-calculator-ui .preset-btn {
196
- padding: 0.35rem 0.65rem;
197
- background: var(--dft-bg-surface);
198
- border: none;
199
- border-radius: 8px;
200
- font-size: 0.75rem;
201
- font-weight: 700;
202
- color: var(--dft-text-muted);
203
- cursor: pointer;
204
- transition: all 0.2s;
205
- }
206
-
207
- .flight-calculator-ui .preset-btn:hover {
208
- background: var(--dft-border);
209
- color: var(--dft-text);
210
- }
211
-
212
- .flight-calculator-ui .hint {
213
- font-size: 0.75rem;
214
- color: var(--dft-text-dim);
215
- }
216
-
217
- .flight-calculator-ui .dashboard-section {
218
- display: flex;
219
- flex-direction: column;
220
- align-items: center;
221
- gap: 2rem;
222
- }
223
-
224
- .flight-calculator-ui .main-result {
225
- display: flex;
226
- justify-content: center;
227
- }
228
-
229
- .flight-calculator-ui .radial-container {
230
- position: relative;
231
- width: 240px;
232
- height: 240px;
233
- display: flex;
234
- justify-content: center;
235
- align-items: center;
236
- }
237
-
238
- .flight-calculator-ui .radial-svg {
239
- transform: rotate(-90deg);
240
- width: 100%;
241
- height: 100%;
242
- }
243
-
244
- .flight-calculator-ui .bg-circle {
245
- fill: none;
246
- stroke: var(--dft-bg-surface);
247
- stroke-width: 8;
248
- }
249
-
250
- .flight-calculator-ui .fg-circle {
251
- fill: none;
252
- stroke: var(--dft-accent);
253
- stroke-width: 8;
254
- stroke-linecap: round;
255
- stroke-dasharray: 283;
256
- stroke-dashoffset: 0;
257
- transition: stroke-dashoffset 0.8s cubic-bezier(0.4, 0, 0.2, 1);
258
- }
259
-
260
- .flight-calculator-ui .result-text {
261
- position: absolute;
262
- display: flex;
263
- flex-direction: column;
264
- align-items: center;
265
- gap: 0.25rem;
266
- }
267
-
268
- .flight-calculator-ui .time-primary {
269
- font-size: 4.5rem;
270
- font-weight: 950;
271
- color: var(--dft-text);
272
- letter-spacing: -0.05em;
273
- line-height: 1;
274
- }
275
-
276
- .flight-calculator-ui .time-label {
277
- font-size: 0.9rem;
278
- font-weight: 800;
279
- color: var(--dft-text-muted);
280
- text-transform: uppercase;
281
- letter-spacing: 0.1em;
282
- }
283
-
284
- .flight-calculator-ui .secondary-stats {
285
- display: grid;
286
- grid-template-columns: repeat(3, 1fr);
287
- gap: 1.5rem;
288
- width: 100%;
289
- }
290
-
291
- .flight-calculator-ui .stat-box {
292
- display: flex;
293
- flex-direction: column;
294
- align-items: center;
295
- gap: 0.25rem;
296
- padding: 1.25rem;
297
- background: var(--dft-bg-overlay);
298
- border: 1px solid var(--dft-border-light);
299
- border-radius: 20px;
300
- }
301
-
302
- [data-theme="dark"] .flight-calculator-ui .stat-box,
303
- .theme-dark .flight-calculator-ui .stat-box {
304
- background: var(--dft-bg-muted);
305
- border-color: var(--dft-border);
306
- }
307
-
308
- .flight-calculator-ui .stat-label {
309
- font-size: 0.7rem;
310
- font-weight: 700;
311
- color: var(--dft-text-dim);
312
- text-transform: uppercase;
313
- text-align: center;
314
- }
315
-
316
- .flight-calculator-ui .stat-value {
317
- font-size: 1.2rem;
318
- font-weight: 900;
319
- color: var(--dft-text);
320
- }
321
-
322
- .flight-calculator-ui .chart-header {
323
- display: flex;
324
- justify-content: space-between;
325
- align-items: center;
326
- margin-bottom: 1rem;
327
- }
328
-
329
- .flight-calculator-ui .chart-subtitle {
330
- font-size: 0.85rem;
331
- font-weight: 600;
332
- color: var(--dft-text-muted);
333
- }
334
-
335
- .flight-calculator-ui .chart-body {
336
- position: relative;
337
- height: 300px;
338
- width: 100%;
339
- }
340
-
341
- @media (max-width: 992px) {
342
- .flight-calculator-ui .card-grid {
343
- grid-template-columns: 1fr;
344
- }
345
-
346
- .flight-calculator-ui .config-sidebar {
347
- border-right: none;
348
- border-bottom: 1px solid var(--dft-border-light);
349
- }
350
-
351
- [data-theme="dark"] .flight-calculator-ui .config-sidebar,
352
- .theme-dark .flight-calculator-ui .config-sidebar {
353
- border-bottom-color: var(--dft-border-light);
354
- }
355
- }
356
-
357
- @media (max-width: 600px) {
358
- .flight-calculator-ui .secondary-stats {
359
- grid-template-columns: 1fr;
360
- }
361
-
362
- .flight-calculator-ui .radial-container {
363
- width: 200px;
364
- height: 200px;
365
- }
366
-
367
- .flight-calculator-ui .time-primary {
368
- font-size: 3.5rem;
369
- }
370
- }
@@ -1,301 +0,0 @@
1
- .gps-converter-ui {
2
- --gps-accent: #0ea5e9;
3
- --gps-accent-glow: rgba(14, 165, 233, 0.15);
4
- --gps-bg: #fff;
5
- --gps-bg-muted: #f5f5f5;
6
- --gps-bg-surface: #eee;
7
- --gps-bg-overlay: #f0f0f0;
8
- --gps-text: #1a1a1a;
9
- --gps-text-muted: #4a4a4a;
10
- --gps-text-dim: #707070;
11
- --gps-border: #d0d0d0;
12
- --gps-border-light: #e8e8e8;
13
- --gps-shadow: 0 30px 60px rgba(0, 0, 0, 0.08);
14
- --gps-danger: #ef4444;
15
- --gps-danger-bg: rgba(239, 68, 68, 0.1);
16
-
17
- width: 100%;
18
- max-width: 1100px;
19
- margin: 0 auto;
20
- }
21
-
22
- [data-theme="dark"] .gps-converter-ui,
23
- .theme-dark .gps-converter-ui {
24
- --gps-bg: #1a1a1a;
25
- --gps-bg-muted: #2d2d2d;
26
- --gps-bg-surface: #3a3a3a;
27
- --gps-bg-overlay: #292929;
28
- --gps-text: #f5f5f5;
29
- --gps-text-muted: #b0b0b0;
30
- --gps-text-dim: #888;
31
- --gps-border: #4a4a4a;
32
- --gps-border-light: #525252;
33
- --gps-shadow: 0 30px 60px rgba(0, 0, 0, 0.08);
34
- }
35
-
36
- .gps-converter-ui .tech-mega-card {
37
- background: var(--gps-bg);
38
- backdrop-filter: blur(20px);
39
- border: 1px solid var(--gps-border);
40
- border-radius: 32px;
41
- box-shadow: var(--gps-shadow);
42
- overflow: hidden;
43
- }
44
-
45
- .gps-converter-ui .card-grid {
46
- display: grid;
47
- grid-template-columns: 420px 1fr;
48
- }
49
-
50
- .gps-converter-ui .config-sidebar {
51
- padding: 2rem;
52
- background: var(--gps-bg-overlay);
53
- display: flex;
54
- flex-direction: column;
55
- gap: 2rem;
56
- border-right: 1px solid var(--gps-border-light);
57
- }
58
-
59
- [data-theme="dark"] .gps-converter-ui .config-sidebar,
60
- .theme-dark .gps-converter-ui .config-sidebar {
61
- background: var(--gps-bg-surface);
62
- border-right-color: var(--gps-border-light);
63
- }
64
-
65
- .gps-converter-ui .main-display {
66
- padding: 2rem;
67
- display: flex;
68
- flex-direction: column;
69
- gap: 2rem;
70
- background: var(--gps-bg);
71
- }
72
-
73
- .gps-converter-ui .tech-section {
74
- display: flex;
75
- flex-direction: column;
76
- gap: 1.5rem;
77
- }
78
-
79
- .gps-converter-ui .section-title {
80
- font-size: 0.9rem;
81
- font-weight: 800;
82
- color: var(--gps-text);
83
- text-transform: uppercase;
84
- letter-spacing: 0.05em;
85
- margin: 0;
86
- }
87
-
88
- .gps-converter-ui .divider {
89
- height: 1px;
90
- width: 100%;
91
- background: linear-gradient(90deg, transparent, var(--gps-border-light), transparent);
92
- }
93
-
94
- .gps-converter-ui .compact-inputs {
95
- display: grid;
96
- grid-template-columns: 1fr 1fr;
97
- gap: 1rem;
98
- }
99
-
100
- .gps-converter-ui .input-block {
101
- display: flex;
102
- flex-direction: column;
103
- gap: 0.5rem;
104
- }
105
-
106
- .gps-converter-ui .field-label {
107
- font-size: 0.75rem;
108
- font-weight: 700;
109
- color: var(--gps-text-muted);
110
- text-transform: uppercase;
111
- }
112
-
113
- .gps-converter-ui .tech-input {
114
- width: 100%;
115
- padding: 0.75rem;
116
- background: var(--gps-bg-surface);
117
- border: 1px solid var(--gps-border);
118
- border-radius: 12px;
119
- font-weight: 600;
120
- color: var(--gps-text);
121
- }
122
-
123
- .gps-converter-ui .mode-switch {
124
- display: flex;
125
- background: var(--gps-bg-surface);
126
- padding: 0.3rem;
127
- border-radius: 14px;
128
- }
129
-
130
- .gps-converter-ui .mode-btn {
131
- flex: 1;
132
- padding: 0.6rem;
133
- border-radius: 10px;
134
- border: none;
135
- background: transparent;
136
- font-size: 0.8rem;
137
- font-weight: 700;
138
- color: var(--gps-text-muted);
139
- cursor: pointer;
140
- transition: all 0.2s;
141
- }
142
-
143
- .gps-converter-ui .mode-btn.active {
144
- background: var(--gps-bg);
145
- color: var(--gps-accent);
146
- box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
147
- }
148
-
149
- .gps-converter-ui .map-container {
150
- width: 100%;
151
- height: 350px;
152
- border-radius: 20px;
153
- overflow: hidden;
154
- background: var(--gps-bg-surface);
155
- border: 1px solid var(--gps-border-light);
156
- }
157
-
158
- .gps-converter-ui .results-area {
159
- display: grid;
160
- grid-template-columns: 1fr 1fr;
161
- gap: 1.5rem;
162
- }
163
-
164
- .gps-converter-ui .result-box {
165
- background: var(--gps-bg-overlay);
166
- border: 1px solid var(--gps-border-light);
167
- border-radius: 20px;
168
- padding: 1.5rem;
169
- display: flex;
170
- flex-direction: column;
171
- gap: 0.75rem;
172
- }
173
-
174
- .gps-converter-ui .res-header {
175
- display: flex;
176
- justify-content: space-between;
177
- align-items: center;
178
- }
179
-
180
- .gps-converter-ui .res-label {
181
- font-size: 0.7rem;
182
- font-weight: 700;
183
- color: var(--gps-text-dim);
184
- text-transform: uppercase;
185
- }
186
-
187
- .gps-converter-ui .copy-btn {
188
- background: transparent;
189
- border: 1px solid var(--gps-border);
190
- color: var(--gps-text-muted);
191
- padding: 0.3rem 0.6rem;
192
- border-radius: 8px;
193
- font-size: 0.7rem;
194
- font-weight: 700;
195
- cursor: pointer;
196
- display: flex;
197
- align-items: center;
198
- gap: 0.4rem;
199
- transition: all 0.2s;
200
- }
201
-
202
- .gps-converter-ui .copy-btn:hover {
203
- background: var(--gps-accent);
204
- color: white;
205
- border-color: var(--gps-accent);
206
- }
207
-
208
- .gps-converter-ui .val-display {
209
- font-size: 1.35rem;
210
- font-weight: 800;
211
- color: var(--gps-text);
212
- }
213
-
214
- .gps-converter-ui .history-list {
215
- display: flex;
216
- flex-direction: column;
217
- gap: 0.5rem;
218
- }
219
-
220
- .gps-converter-ui .history-item {
221
- padding: 0.75rem 1rem;
222
- background: var(--gps-bg-surface);
223
- border-radius: 12px;
224
- display: flex;
225
- justify-content: space-between;
226
- align-items: center;
227
- transition: all 0.2s;
228
- }
229
-
230
- .gps-converter-ui .history-item:hover {
231
- background: var(--gps-border);
232
- }
233
-
234
- .gps-converter-ui .hist-info {
235
- display: flex;
236
- flex-direction: column;
237
- gap: 0.1rem;
238
- cursor: pointer;
239
- flex: 1;
240
- }
241
-
242
- .gps-converter-ui .hist-coords {
243
- font-size: 0.85rem;
244
- font-weight: 700;
245
- color: var(--gps-text);
246
- }
247
-
248
- .gps-converter-ui .hist-time {
249
- font-size: 0.65rem;
250
- color: var(--gps-text-dim);
251
- text-transform: uppercase;
252
- font-weight: 600;
253
- }
254
-
255
- .gps-converter-ui .hist-actions {
256
- display: flex;
257
- gap: 0.5rem;
258
- }
259
-
260
- .gps-converter-ui .action-btn {
261
- background: transparent;
262
- border: none;
263
- padding: 0.4rem;
264
- border-radius: 8px;
265
- color: var(--gps-text-dim);
266
- cursor: pointer;
267
- display: flex;
268
- align-items: center;
269
- justify-content: center;
270
- transition: all 0.2s;
271
- }
272
-
273
- .gps-converter-ui .load-btn:hover {
274
- color: var(--gps-accent);
275
- background: var(--gps-accent-glow);
276
- }
277
-
278
- .gps-converter-ui .delete-btn:hover {
279
- color: var(--gps-danger);
280
- background: var(--gps-danger-bg);
281
- }
282
-
283
- @media (max-width: 992px) {
284
- .gps-converter-ui .card-grid {
285
- grid-template-columns: 1fr;
286
- }
287
-
288
- .gps-converter-ui .config-sidebar {
289
- border-right: none;
290
- border-bottom: 1px solid var(--gps-border-light);
291
- }
292
-
293
- [data-theme="dark"] .gps-converter-ui .config-sidebar,
294
- .theme-dark .gps-converter-ui .config-sidebar {
295
- border-bottom-color: var(--gps-border-light);
296
- }
297
-
298
- .gps-converter-ui .results-area {
299
- grid-template-columns: 1fr;
300
- }
301
- }