appium-desktop-driver 1.4.1 → 1.4.2

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/docs/style.css ADDED
@@ -0,0 +1,706 @@
1
+ /* ============================================================
2
+ Reset & Custom Properties
3
+ ============================================================ */
4
+ *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
5
+
6
+ :root {
7
+ --bg: #ffffff;
8
+ --bg-card: #f8fafb;
9
+ --bg-code: #f1f5f7;
10
+ --border: #e2e8ee;
11
+ --accent: #3ecfb2;
12
+ --accent-dim: #2baf96;
13
+ --text: #111827;
14
+ --text-muted: #6b7280;
15
+ --radius: 8px;
16
+ --font-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
17
+ --font-code: 'JetBrains Mono', 'Cascadia Code', 'Consolas', monospace;
18
+ --max-width: 1100px;
19
+ }
20
+
21
+ html { scroll-behavior: smooth; }
22
+
23
+ body {
24
+ background: var(--bg);
25
+ color: var(--text);
26
+ font-family: var(--font-body);
27
+ font-size: 16px;
28
+ line-height: 1.7;
29
+ }
30
+
31
+ a { color: var(--accent); text-decoration: none; }
32
+ a:hover { text-decoration: underline; }
33
+
34
+ /* ============================================================
35
+ Layout Helpers
36
+ ============================================================ */
37
+ .container {
38
+ max-width: var(--max-width);
39
+ margin: 0 auto;
40
+ padding: 0 24px;
41
+ }
42
+
43
+ section { padding: 80px 0; }
44
+ section + section { border-top: 1px solid var(--border); }
45
+ section:nth-child(even) { background: var(--bg-card); }
46
+
47
+ h1, h2, h3 { line-height: 1.25; }
48
+ h2 { font-size: 2rem; margin-bottom: 12px; }
49
+ h3 { font-size: 1.25rem; margin-bottom: 8px; }
50
+
51
+ .section-label {
52
+ font-size: 0.75rem;
53
+ font-weight: 600;
54
+ letter-spacing: 0.12em;
55
+ text-transform: uppercase;
56
+ color: var(--accent);
57
+ margin-bottom: 12px;
58
+ }
59
+
60
+ .section-intro {
61
+ color: var(--text-muted);
62
+ max-width: 640px;
63
+ margin-bottom: 40px;
64
+ }
65
+
66
+ /* ============================================================
67
+ Nav
68
+ ============================================================ */
69
+ nav {
70
+ position: sticky;
71
+ top: 0;
72
+ z-index: 100;
73
+ background: rgba(255,255,255,0.92);
74
+ backdrop-filter: blur(8px);
75
+ border-bottom: 1px solid var(--border);
76
+ box-shadow: 0 1px 3px rgba(0,0,0,0.06);
77
+ }
78
+
79
+ .nav-inner {
80
+ display: flex;
81
+ align-items: center;
82
+ justify-content: space-between;
83
+ height: 56px;
84
+ max-width: var(--max-width);
85
+ margin: 0 auto;
86
+ padding: 0 24px;
87
+ }
88
+
89
+ .nav-brand {
90
+ font-weight: 700;
91
+ font-size: 0.95rem;
92
+ color: var(--text);
93
+ display: flex;
94
+ align-items: center;
95
+ gap: 8px;
96
+ }
97
+
98
+ .nav-brand span { color: var(--accent); }
99
+
100
+ .nav-logo {
101
+ height: 26px;
102
+ width: auto;
103
+ border-radius: 5px;
104
+ display: block;
105
+ }
106
+
107
+ .nav-links {
108
+ display: flex;
109
+ gap: 24px;
110
+ list-style: none;
111
+ }
112
+
113
+ .nav-links a {
114
+ color: var(--text-muted);
115
+ font-size: 0.875rem;
116
+ transition: color 0.15s;
117
+ }
118
+ .nav-links a:hover { color: var(--text); text-decoration: none; }
119
+
120
+ /* ============================================================
121
+ Hero
122
+ ============================================================ */
123
+ #hero {
124
+ padding: 100px 0 80px;
125
+ border-top: none;
126
+ }
127
+
128
+ .hero-eyebrow {
129
+ display: inline-flex;
130
+ align-items: center;
131
+ gap: 8px;
132
+ font-size: 0.8rem;
133
+ font-weight: 600;
134
+ letter-spacing: 0.1em;
135
+ text-transform: uppercase;
136
+ color: var(--accent-dim);
137
+ background: rgba(62,207,178,0.1);
138
+ border: 1px solid rgba(62,207,178,0.3);
139
+ border-radius: 100px;
140
+ padding: 4px 12px;
141
+ margin-bottom: 24px;
142
+ }
143
+
144
+ .hero-eyebrow::before {
145
+ content: '';
146
+ width: 6px; height: 6px;
147
+ border-radius: 50%;
148
+ background: var(--accent-dim);
149
+ }
150
+
151
+ #hero h1 {
152
+ font-size: clamp(2.4rem, 5vw, 3.8rem);
153
+ font-weight: 800;
154
+ letter-spacing: -0.02em;
155
+ margin-bottom: 16px;
156
+ max-width: 800px;
157
+ }
158
+
159
+ #hero h1 .accent { color: var(--accent); }
160
+
161
+ .hero-pitch {
162
+ font-size: 1.15rem;
163
+ color: var(--text-muted);
164
+ max-width: 620px;
165
+ margin-bottom: 24px;
166
+ }
167
+
168
+ .hero-install-row {
169
+ display: flex;
170
+ align-items: center;
171
+ gap: 16px;
172
+ flex-wrap: wrap;
173
+ margin-bottom: 32px;
174
+ }
175
+
176
+ .hero-install {
177
+ position: relative;
178
+ background: var(--bg-code);
179
+ border: 1px solid var(--border);
180
+ border-radius: var(--radius);
181
+ padding: 14px 48px 14px 20px;
182
+ display: inline-block;
183
+ }
184
+
185
+ .hero-install-copy {
186
+ position: absolute;
187
+ top: 50%; right: 12px;
188
+ transform: translateY(-50%);
189
+ display: flex;
190
+ align-items: center;
191
+ justify-content: center;
192
+ width: 26px; height: 26px;
193
+ background: none;
194
+ border: 1px solid var(--border);
195
+ color: var(--text-muted);
196
+ border-radius: 4px;
197
+ cursor: pointer;
198
+ transition: background 0.15s, color 0.15s;
199
+ }
200
+ .hero-install-copy:hover { background: rgba(0,0,0,0.05); color: var(--text); }
201
+ .hero-install-copy.copied { color: #0f7a5c; }
202
+
203
+ .hero-install pre,
204
+ .hero-install pre code {
205
+ margin: 0;
206
+ padding: 0;
207
+ background: none;
208
+ border: none;
209
+ font-family: var(--font-code);
210
+ font-size: 0.875rem;
211
+ color: #0f7a5c;
212
+ }
213
+
214
+ .hero-actions {
215
+ display: flex;
216
+ align-items: center;
217
+ flex-wrap: wrap;
218
+ gap: 16px;
219
+ margin-bottom: 48px;
220
+ }
221
+
222
+ .install-block {
223
+ display: flex;
224
+ align-items: center;
225
+ background: var(--bg-code);
226
+ border: 1px solid var(--border);
227
+ border-radius: var(--radius);
228
+ overflow: hidden;
229
+ font-family: var(--font-code);
230
+ font-size: 0.85rem;
231
+ }
232
+
233
+ .install-block code {
234
+ padding: 10px 16px;
235
+ color: #0f7a5c;
236
+ }
237
+
238
+ .install-block .copy-btn {
239
+ padding: 10px 14px;
240
+ background: transparent;
241
+ border: none;
242
+ border-left: 1px solid var(--border);
243
+ color: var(--text-muted);
244
+ cursor: pointer;
245
+ font-size: 0.75rem;
246
+ font-family: var(--font-body);
247
+ transition: color 0.15s, background 0.15s;
248
+ white-space: nowrap;
249
+ }
250
+ .install-block .copy-btn:hover { background: #e8f4f1; color: var(--text); }
251
+
252
+ .btn-primary {
253
+ display: inline-flex;
254
+ align-items: center;
255
+ gap: 8px;
256
+ background: var(--accent);
257
+ color: #fff;
258
+ padding: 10px 20px;
259
+ border-radius: var(--radius);
260
+ font-weight: 600;
261
+ font-size: 0.9rem;
262
+ transition: background 0.15s;
263
+ }
264
+ .btn-primary:hover { background: var(--accent-dim); text-decoration: none; }
265
+
266
+ .badges {
267
+ display: flex;
268
+ flex-wrap: wrap;
269
+ gap: 8px;
270
+ }
271
+
272
+ .badge {
273
+ font-size: 0.75rem;
274
+ font-weight: 600;
275
+ padding: 3px 10px;
276
+ border-radius: 100px;
277
+ border: 1px solid var(--border);
278
+ color: var(--text-muted);
279
+ background: var(--bg-card);
280
+ }
281
+
282
+ /* ============================================================
283
+ Video sections
284
+ ============================================================ */
285
+ .video-outer {
286
+ max-width: 860px;
287
+ }
288
+
289
+ .video-wrapper {
290
+ position: relative;
291
+ padding-top: 56.25%;
292
+ border-radius: var(--radius);
293
+ overflow: hidden;
294
+ border: 1px solid var(--border);
295
+ background: var(--bg-card);
296
+ }
297
+
298
+ .video-wrapper iframe,
299
+ .video-wrapper video {
300
+ position: absolute;
301
+ inset: 0;
302
+ width: 100%; height: 100%;
303
+ border: none;
304
+ object-fit: contain;
305
+ }
306
+
307
+ .video-placeholder-box {
308
+ position: absolute;
309
+ inset: 0;
310
+ display: flex;
311
+ flex-direction: column;
312
+ align-items: center;
313
+ justify-content: center;
314
+ gap: 12px;
315
+ color: var(--text-muted);
316
+ font-size: 0.9rem;
317
+ }
318
+
319
+ .video-placeholder-box .play-icon {
320
+ width: 56px; height: 56px;
321
+ border: 2px solid var(--border);
322
+ border-radius: 50%;
323
+ display: flex; align-items: center; justify-content: center;
324
+ color: var(--text-muted);
325
+ }
326
+
327
+ /* ============================================================
328
+ Comparison table (Why Not WinAppDriver)
329
+ ============================================================ */
330
+ .comparison-table {
331
+ width: 100%;
332
+ border-collapse: collapse;
333
+ font-size: 0.9rem;
334
+ }
335
+
336
+ .comparison-table th {
337
+ text-align: left;
338
+ padding: 12px 16px;
339
+ background: var(--bg-card);
340
+ border-bottom: 2px solid var(--border);
341
+ color: var(--text-muted);
342
+ font-weight: 600;
343
+ font-size: 0.8rem;
344
+ text-transform: uppercase;
345
+ letter-spacing: 0.08em;
346
+ }
347
+
348
+ .comparison-table td {
349
+ padding: 14px 16px;
350
+ border-bottom: 1px solid var(--border);
351
+ vertical-align: top;
352
+ }
353
+
354
+ .comparison-table tr:last-child td { border-bottom: none; }
355
+
356
+ .comparison-table td:first-child { color: var(--text-muted); }
357
+ .comparison-table td:last-child { color: var(--text); }
358
+
359
+ .check { color: #2baf96; font-weight: 700; margin-right: 6px; }
360
+ .cross { color: #e05252; font-weight: 700; margin-right: 6px; }
361
+
362
+ /* ============================================================
363
+ App type chips
364
+ ============================================================ */
365
+ .app-chips {
366
+ display: flex;
367
+ flex-wrap: wrap;
368
+ gap: 12px;
369
+ }
370
+
371
+ .app-chip {
372
+ display: flex;
373
+ align-items: center;
374
+ gap: 10px;
375
+ background: #fff;
376
+ border: 1px solid var(--border);
377
+ border-radius: var(--radius);
378
+ padding: 12px 20px;
379
+ font-weight: 600;
380
+ font-size: 0.9rem;
381
+ box-shadow: 0 1px 3px rgba(0,0,0,0.05);
382
+ }
383
+
384
+ .app-chip .chip-icon {
385
+ font-size: 1.25rem;
386
+ }
387
+
388
+ /* ============================================================
389
+ Feature cards
390
+ ============================================================ */
391
+ .feature-grid {
392
+ display: grid;
393
+ grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
394
+ gap: 20px;
395
+ }
396
+
397
+ .feature-card {
398
+ background: #fff;
399
+ border: 1px solid var(--border);
400
+ border-radius: var(--radius);
401
+ padding: 24px;
402
+ transition: border-color 0.2s, box-shadow 0.2s;
403
+ box-shadow: 0 1px 4px rgba(0,0,0,0.05);
404
+ }
405
+
406
+ .feature-card:hover { border-color: var(--accent); box-shadow: 0 4px 12px rgba(62,207,178,0.12); }
407
+
408
+ .feature-icon {
409
+ font-size: 1.75rem;
410
+ margin-bottom: 14px;
411
+ }
412
+
413
+ .feature-card h3 { margin-bottom: 8px; }
414
+ .feature-card p { color: var(--text-muted); font-size: 0.9rem; }
415
+
416
+ /* ============================================================
417
+ Tables (generic)
418
+ ============================================================ */
419
+ .data-table-wrap { overflow-x: auto; }
420
+
421
+ .data-table {
422
+ width: 100%;
423
+ border-collapse: collapse;
424
+ font-size: 0.875rem;
425
+ }
426
+
427
+ .data-table th {
428
+ text-align: left;
429
+ padding: 10px 14px;
430
+ background: var(--bg-card);
431
+ border-bottom: 2px solid var(--border);
432
+ color: var(--text-muted);
433
+ font-size: 0.78rem;
434
+ font-weight: 600;
435
+ text-transform: uppercase;
436
+ letter-spacing: 0.08em;
437
+ white-space: nowrap;
438
+ }
439
+
440
+ .data-table td {
441
+ padding: 10px 14px;
442
+ border-bottom: 1px solid var(--border);
443
+ vertical-align: top;
444
+ }
445
+
446
+ .data-table tr:last-child td { border-bottom: none; }
447
+
448
+ .data-table code {
449
+ font-family: var(--font-code);
450
+ font-size: 0.82rem;
451
+ background: var(--bg-code);
452
+ border: 1px solid var(--border);
453
+ padding: 1px 6px;
454
+ border-radius: 4px;
455
+ color: #0f7a5c;
456
+ white-space: nowrap;
457
+ }
458
+
459
+ /* ============================================================
460
+ MCP Steps
461
+ ============================================================ */
462
+ .mcp-steps {
463
+ display: grid;
464
+ grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
465
+ gap: 20px;
466
+ margin-bottom: 48px;
467
+ }
468
+
469
+ .mcp-step {
470
+ background: #fff;
471
+ border: 1px solid var(--border);
472
+ border-radius: var(--radius);
473
+ padding: 24px;
474
+ position: relative;
475
+ box-shadow: 0 1px 4px rgba(0,0,0,0.05);
476
+ }
477
+
478
+ .step-num {
479
+ display: inline-flex;
480
+ align-items: center;
481
+ justify-content: center;
482
+ width: 32px; height: 32px;
483
+ background: rgba(62,207,178,0.12);
484
+ border: 1px solid rgba(62,207,178,0.35);
485
+ color: var(--accent-dim);
486
+ border-radius: 50%;
487
+ font-weight: 700;
488
+ font-size: 0.85rem;
489
+ margin-bottom: 14px;
490
+ }
491
+
492
+ .mcp-step p { color: var(--text-muted); font-size: 0.9rem; }
493
+
494
+ /* MCP tool group table rows */
495
+ .mcp-group-table td:first-child { white-space: nowrap; font-weight: 600; color: var(--accent); }
496
+
497
+ /* ============================================================
498
+ Code blocks
499
+ ============================================================ */
500
+ .code-block-wrap {
501
+ position: relative;
502
+ background: var(--bg-code);
503
+ border: 1px solid var(--border);
504
+ border-radius: var(--radius);
505
+ overflow: hidden;
506
+ box-shadow: 0 1px 3px rgba(0,0,0,0.05);
507
+ }
508
+
509
+ .code-block-wrap pre {
510
+ margin: 0;
511
+ padding: 20px;
512
+ overflow-x: auto;
513
+ font-size: 0.85rem;
514
+ line-height: 1.6;
515
+ }
516
+
517
+ .code-block-wrap .copy-btn {
518
+ position: absolute;
519
+ top: 44px; right: 10px;
520
+ display: flex;
521
+ align-items: center;
522
+ justify-content: center;
523
+ width: 28px; height: 28px;
524
+ background: rgba(255,255,255,0.8);
525
+ border: 1px solid var(--border);
526
+ color: var(--text-muted);
527
+ border-radius: 4px;
528
+ cursor: pointer;
529
+ transition: background 0.15s, color 0.15s;
530
+ }
531
+ .code-block-wrap .copy-btn:hover { background: #fff; color: var(--text); }
532
+ .code-block-wrap .copy-btn.copied { color: #0f7a5c; }
533
+
534
+ /* Language tabs */
535
+ .lang-tabs {
536
+ display: flex;
537
+ gap: 0;
538
+ border-bottom: 1px solid var(--border);
539
+ background: rgba(0,0,0,0.02);
540
+ overflow-x: auto;
541
+ }
542
+
543
+ .lang-tab {
544
+ padding: 8px 18px;
545
+ font-size: 0.82rem;
546
+ font-weight: 600;
547
+ color: var(--text-muted);
548
+ cursor: pointer;
549
+ border-bottom: 2px solid transparent;
550
+ white-space: nowrap;
551
+ transition: color 0.15s, border-color 0.15s;
552
+ background: none;
553
+ border-top: none;
554
+ border-left: none;
555
+ border-right: none;
556
+ font-family: var(--font-body);
557
+ }
558
+
559
+ .lang-tab[data-active] {
560
+ color: var(--accent);
561
+ border-bottom-color: var(--accent);
562
+ }
563
+
564
+ .tabbed-code { position: relative; }
565
+
566
+ .tabbed-code pre { display: none; }
567
+ .tabbed-code pre[data-active] { display: block; }
568
+
569
+ /* ============================================================
570
+ executeScript groups
571
+ ============================================================ */
572
+ .ext-groups {
573
+ display: grid;
574
+ grid-template-columns: repeat(2, 1fr);
575
+ gap: 20px;
576
+ }
577
+
578
+ .ext-group {
579
+ background: #fff;
580
+ border: 1px solid var(--border);
581
+ border-radius: var(--radius);
582
+ padding: 20px;
583
+ box-shadow: 0 1px 4px rgba(0,0,0,0.05);
584
+ }
585
+
586
+ .ext-group h3 {
587
+ font-size: 0.85rem;
588
+ font-weight: 700;
589
+ text-transform: uppercase;
590
+ letter-spacing: 0.08em;
591
+ color: var(--accent);
592
+ margin-bottom: 12px;
593
+ }
594
+
595
+ .ext-group ul {
596
+ list-style: none;
597
+ display: flex;
598
+ flex-direction: column;
599
+ gap: 6px;
600
+ }
601
+
602
+ .ext-group li {
603
+ font-size: 0.85rem;
604
+ color: var(--text-muted);
605
+ }
606
+
607
+ .ext-group li code {
608
+ font-family: var(--font-code);
609
+ font-size: 0.8rem;
610
+ color: #0f7a5c;
611
+ background: rgba(62,207,178,0.1);
612
+ padding: 1px 5px;
613
+ border-radius: 3px;
614
+ }
615
+
616
+ /* ============================================================
617
+ Install section
618
+ ============================================================ */
619
+ .install-steps {
620
+ display: flex;
621
+ flex-direction: column;
622
+ gap: 20px;
623
+ max-width: 720px;
624
+ }
625
+
626
+ .req-list {
627
+ list-style: none;
628
+ display: flex;
629
+ flex-direction: column;
630
+ gap: 8px;
631
+ }
632
+
633
+ .req-list li {
634
+ display: flex;
635
+ align-items: center;
636
+ gap: 10px;
637
+ font-size: 0.9rem;
638
+ color: var(--text-muted);
639
+ }
640
+
641
+ .req-list li::before {
642
+ content: '✓';
643
+ color: #2baf96;
644
+ font-weight: 700;
645
+ flex-shrink: 0;
646
+ }
647
+
648
+ /* ============================================================
649
+ Footer
650
+ ============================================================ */
651
+ footer {
652
+ border-top: 1px solid var(--border);
653
+ padding: 40px 0;
654
+ color: var(--text-muted);
655
+ font-size: 0.875rem;
656
+ }
657
+
658
+ .footer-inner {
659
+ max-width: var(--max-width);
660
+ margin: 0 auto;
661
+ padding: 0 24px;
662
+ display: flex;
663
+ flex-wrap: wrap;
664
+ justify-content: space-between;
665
+ align-items: center;
666
+ gap: 16px;
667
+ }
668
+
669
+ .footer-links {
670
+ display: flex;
671
+ flex-wrap: wrap;
672
+ gap: 20px;
673
+ list-style: none;
674
+ }
675
+
676
+ .footer-links a { color: var(--text-muted); transition: color 0.15s; }
677
+ .footer-links a:hover { color: var(--text); text-decoration: none; }
678
+
679
+ .footer-logo {
680
+ height: 20px;
681
+ width: auto;
682
+ border-radius: 3px;
683
+ vertical-align: middle;
684
+ margin: 0 2px;
685
+ display: inline-block;
686
+ }
687
+
688
+ /* ============================================================
689
+ Utilities
690
+ ============================================================ */
691
+ .mt-4 { margin-top: 16px; }
692
+ .mt-8 { margin-top: 32px; }
693
+ .mt-12 { margin-top: 48px; }
694
+
695
+ /* ============================================================
696
+ Responsive
697
+ ============================================================ */
698
+ @media (max-width: 640px) {
699
+ nav .nav-links { display: none; }
700
+ #hero h1 { font-size: 2rem; }
701
+ .install-block code { font-size: 0.75rem; }
702
+ .feature-grid { grid-template-columns: 1fr; }
703
+ .mcp-steps { grid-template-columns: 1fr; }
704
+ .ext-groups { grid-template-columns: 1fr; }
705
+
706
+ }
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "appium-desktop-driver",
3
- "version": "1.4.1",
3
+ "version": "1.4.2",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "appium-desktop-driver",
9
- "version": "1.4.1",
9
+ "version": "1.4.2",
10
10
  "license": "Apache-2.0",
11
11
  "dependencies": {
12
12
  "@appium/base-driver": "^10.1.0",
@@ -2875,9 +2875,9 @@
2875
2875
  }
2876
2876
  },
2877
2877
  "node_modules/glob/node_modules/brace-expansion": {
2878
- "version": "5.0.4",
2879
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.4.tgz",
2880
- "integrity": "sha512-h+DEnpVvxmfVefa4jFbCf5HdH5YMDXRsmKflpf1pILZWRFlTbJpxeU55nJl4Smt5HQaGzg1o6RHFPJaOqnmBDg==",
2878
+ "version": "5.0.5",
2879
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.5.tgz",
2880
+ "integrity": "sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==",
2881
2881
  "license": "MIT",
2882
2882
  "dependencies": {
2883
2883
  "balanced-match": "^4.0.2"