appium-android-driver 5.14.7 → 6.0.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.
Files changed (192) hide show
  1. package/build/index.d.ts +282 -0
  2. package/build/index.d.ts.map +1 -0
  3. package/build/index.js.map +1 -0
  4. package/build/lib/commands/actions.d.ts +6 -224
  5. package/build/lib/commands/actions.d.ts.map +1 -1
  6. package/build/lib/commands/actions.js +306 -405
  7. package/build/lib/commands/actions.js.map +1 -1
  8. package/build/lib/commands/alert.d.ts +7 -9
  9. package/build/lib/commands/alert.d.ts.map +1 -1
  10. package/build/lib/commands/alert.js +24 -18
  11. package/build/lib/commands/alert.js.map +1 -1
  12. package/build/lib/commands/app-management.d.ts +7 -313
  13. package/build/lib/commands/app-management.d.ts.map +1 -1
  14. package/build/lib/commands/app-management.js +135 -293
  15. package/build/lib/commands/app-management.js.map +1 -1
  16. package/build/lib/commands/context.d.ts +8 -92
  17. package/build/lib/commands/context.d.ts.map +1 -1
  18. package/build/lib/commands/context.js +381 -439
  19. package/build/lib/commands/context.js.map +1 -1
  20. package/build/lib/commands/element.d.ts +8 -35
  21. package/build/lib/commands/element.d.ts.map +1 -1
  22. package/build/lib/commands/element.js +153 -136
  23. package/build/lib/commands/element.js.map +1 -1
  24. package/build/lib/commands/emu-console.d.ts +6 -48
  25. package/build/lib/commands/emu-console.d.ts.map +1 -1
  26. package/build/lib/commands/emu-console.js +19 -34
  27. package/build/lib/commands/emu-console.js.map +1 -1
  28. package/build/lib/commands/execute.d.ts +6 -5
  29. package/build/lib/commands/execute.d.ts.map +1 -1
  30. package/build/lib/commands/execute.js +77 -66
  31. package/build/lib/commands/execute.js.map +1 -1
  32. package/build/lib/commands/file-actions.d.ts +7 -128
  33. package/build/lib/commands/file-actions.d.ts.map +1 -1
  34. package/build/lib/commands/file-actions.js +183 -219
  35. package/build/lib/commands/file-actions.js.map +1 -1
  36. package/build/lib/commands/find.d.ts +8 -12
  37. package/build/lib/commands/find.d.ts.map +1 -1
  38. package/build/lib/commands/find.js +19 -23
  39. package/build/lib/commands/find.js.map +1 -1
  40. package/build/lib/commands/general.d.ts +9 -132
  41. package/build/lib/commands/general.d.ts.map +1 -1
  42. package/build/lib/commands/general.js +281 -312
  43. package/build/lib/commands/general.js.map +1 -1
  44. package/build/lib/commands/ime.d.ts +7 -10
  45. package/build/lib/commands/ime.d.ts.map +1 -1
  46. package/build/lib/commands/ime.js +47 -35
  47. package/build/lib/commands/ime.js.map +1 -1
  48. package/build/lib/commands/index.d.ts +27 -2
  49. package/build/lib/commands/index.d.ts.map +1 -1
  50. package/build/lib/commands/index.js +41 -19
  51. package/build/lib/commands/index.js.map +1 -1
  52. package/build/lib/commands/intent.d.ts +7 -417
  53. package/build/lib/commands/intent.d.ts.map +1 -1
  54. package/build/lib/commands/intent.js +104 -216
  55. package/build/lib/commands/intent.js.map +1 -1
  56. package/build/lib/commands/keyboard.d.ts +6 -5
  57. package/build/lib/commands/keyboard.d.ts.map +1 -1
  58. package/build/lib/commands/keyboard.js +16 -8
  59. package/build/lib/commands/keyboard.js.map +1 -1
  60. package/build/lib/commands/log.d.ts +7 -44
  61. package/build/lib/commands/log.d.ts.map +1 -1
  62. package/build/lib/commands/log.js +146 -108
  63. package/build/lib/commands/log.js.map +1 -1
  64. package/build/lib/commands/media-projection.d.ts +7 -143
  65. package/build/lib/commands/media-projection.d.ts.map +1 -1
  66. package/build/lib/commands/media-projection.js +113 -140
  67. package/build/lib/commands/media-projection.js.map +1 -1
  68. package/build/lib/commands/mixins.d.ts +740 -0
  69. package/build/lib/commands/mixins.d.ts.map +1 -0
  70. package/build/lib/commands/mixins.js +19 -0
  71. package/build/lib/commands/mixins.js.map +1 -0
  72. package/build/lib/commands/network.d.ts +7 -138
  73. package/build/lib/commands/network.d.ts.map +1 -1
  74. package/build/lib/commands/network.js +212 -254
  75. package/build/lib/commands/network.js.map +1 -1
  76. package/build/lib/commands/performance.d.ts +24 -70
  77. package/build/lib/commands/performance.d.ts.map +1 -1
  78. package/build/lib/commands/performance.js +144 -100
  79. package/build/lib/commands/performance.js.map +1 -1
  80. package/build/lib/commands/permissions.d.ts +8 -92
  81. package/build/lib/commands/permissions.d.ts.map +1 -1
  82. package/build/lib/commands/permissions.js +75 -87
  83. package/build/lib/commands/permissions.js.map +1 -1
  84. package/build/lib/commands/recordscreen.d.ts +7 -193
  85. package/build/lib/commands/recordscreen.d.ts.map +1 -1
  86. package/build/lib/commands/recordscreen.js +151 -182
  87. package/build/lib/commands/recordscreen.js.map +1 -1
  88. package/build/lib/commands/shell.d.ts +7 -7
  89. package/build/lib/commands/shell.d.ts.map +1 -1
  90. package/build/lib/commands/shell.js +40 -33
  91. package/build/lib/commands/shell.js.map +1 -1
  92. package/build/lib/commands/streamscreen.d.ts +9 -103
  93. package/build/lib/commands/streamscreen.d.ts.map +1 -1
  94. package/build/lib/commands/streamscreen.js +261 -218
  95. package/build/lib/commands/streamscreen.js.map +1 -1
  96. package/build/lib/commands/system-bars.d.ts +22 -90
  97. package/build/lib/commands/system-bars.d.ts.map +1 -1
  98. package/build/lib/commands/system-bars.js +76 -74
  99. package/build/lib/commands/system-bars.js.map +1 -1
  100. package/build/lib/commands/touch.d.ts +10 -29
  101. package/build/lib/commands/touch.d.ts.map +1 -1
  102. package/build/lib/commands/touch.js +301 -285
  103. package/build/lib/commands/touch.js.map +1 -1
  104. package/build/lib/commands/types.d.ts +978 -0
  105. package/build/lib/commands/types.d.ts.map +1 -0
  106. package/build/lib/commands/types.js +3 -0
  107. package/build/lib/commands/types.js.map +1 -0
  108. package/build/lib/constraints.d.ts +291 -0
  109. package/build/lib/constraints.d.ts.map +1 -0
  110. package/build/lib/constraints.js +300 -0
  111. package/build/lib/constraints.js.map +1 -0
  112. package/build/lib/driver.d.ts +68 -37
  113. package/build/lib/driver.d.ts.map +1 -1
  114. package/build/lib/driver.js +123 -80
  115. package/build/lib/driver.js.map +1 -1
  116. package/build/lib/helpers/android.d.ts +164 -0
  117. package/build/lib/helpers/android.d.ts.map +1 -0
  118. package/build/lib/helpers/android.js +819 -0
  119. package/build/lib/helpers/android.js.map +1 -0
  120. package/build/lib/helpers/index.d.ts +7 -0
  121. package/build/lib/helpers/index.d.ts.map +1 -0
  122. package/build/lib/helpers/index.js +29 -0
  123. package/build/lib/helpers/index.js.map +1 -0
  124. package/build/lib/helpers/types.d.ts +121 -0
  125. package/build/lib/helpers/types.d.ts.map +1 -0
  126. package/build/lib/helpers/types.js +3 -0
  127. package/build/lib/helpers/types.js.map +1 -0
  128. package/build/lib/helpers/unlock.d.ts +32 -0
  129. package/build/lib/helpers/unlock.d.ts.map +1 -0
  130. package/build/lib/helpers/unlock.js +273 -0
  131. package/build/lib/helpers/unlock.js.map +1 -0
  132. package/build/lib/helpers/webview.d.ts +74 -0
  133. package/build/lib/helpers/webview.d.ts.map +1 -0
  134. package/build/lib/helpers/webview.js +421 -0
  135. package/build/lib/helpers/webview.js.map +1 -0
  136. package/build/lib/index.d.ts +9 -0
  137. package/build/lib/index.d.ts.map +1 -0
  138. package/build/lib/index.js +37 -0
  139. package/build/lib/index.js.map +1 -0
  140. package/build/lib/method-map.d.ts +0 -8
  141. package/build/lib/method-map.d.ts.map +1 -1
  142. package/build/lib/method-map.js +63 -74
  143. package/build/lib/method-map.js.map +1 -1
  144. package/build/lib/stubs.d.ts +0 -1
  145. package/build/lib/stubs.d.ts.map +1 -1
  146. package/build/lib/stubs.js +1 -0
  147. package/build/lib/stubs.js.map +1 -1
  148. package/build/lib/utils.d.ts +1 -1
  149. package/build/lib/utils.d.ts.map +1 -1
  150. package/lib/commands/actions.js +351 -464
  151. package/lib/commands/alert.js +27 -17
  152. package/lib/commands/app-management.js +156 -314
  153. package/lib/commands/context.js +457 -441
  154. package/lib/commands/element.js +201 -157
  155. package/lib/commands/emu-console.js +25 -45
  156. package/lib/commands/execute.js +106 -90
  157. package/lib/commands/file-actions.js +222 -240
  158. package/lib/commands/find.ts +103 -0
  159. package/lib/commands/general.js +327 -339
  160. package/lib/commands/ime.js +50 -34
  161. package/lib/commands/{index.js → index.ts} +20 -24
  162. package/lib/commands/intent.js +108 -249
  163. package/lib/commands/keyboard.js +20 -8
  164. package/lib/commands/log.js +172 -116
  165. package/lib/commands/media-projection.js +134 -161
  166. package/lib/commands/mixins.ts +966 -0
  167. package/lib/commands/network.js +252 -281
  168. package/lib/commands/performance.js +203 -132
  169. package/lib/commands/permissions.js +108 -109
  170. package/lib/commands/recordscreen.js +212 -209
  171. package/lib/commands/shell.js +51 -40
  172. package/lib/commands/streamscreen.js +355 -289
  173. package/lib/commands/system-bars.js +92 -83
  174. package/lib/commands/touch.js +357 -294
  175. package/lib/commands/types.ts +1097 -0
  176. package/lib/{desired-caps.js → constraints.ts} +106 -103
  177. package/lib/{driver.js → driver.ts} +278 -132
  178. package/lib/helpers/android.ts +1143 -0
  179. package/lib/helpers/index.ts +6 -0
  180. package/lib/helpers/types.ts +134 -0
  181. package/lib/helpers/unlock.ts +329 -0
  182. package/lib/helpers/webview.ts +582 -0
  183. package/lib/index.ts +18 -0
  184. package/lib/method-map.js +87 -98
  185. package/lib/stubs.ts +0 -1
  186. package/package.json +27 -20
  187. package/index.js +0 -24
  188. package/lib/android-helpers.js +0 -983
  189. package/lib/commands/coverage.js +0 -18
  190. package/lib/commands/find.js +0 -82
  191. package/lib/unlock-helpers.js +0 -278
  192. package/lib/webview-helpers.js +0 -602
@@ -0,0 +1 @@
1
+ {"version":3,"file":"android.js","sourceRoot":"","sources":["../../../lib/helpers/android.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export { default as WebviewHelpers } from './webview';
2
+ export * from './webview';
3
+ export * from './unlock';
4
+ export * from './types';
5
+ export { default as AndroidHelpers } from './android';
6
+ export * from './android';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,IAAI,cAAc,EAAC,MAAM,WAAW,CAAC;AACpD,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,OAAO,EAAC,OAAO,IAAI,cAAc,EAAC,MAAM,WAAW,CAAC;AACpD,cAAc,WAAW,CAAC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.AndroidHelpers = exports.WebviewHelpers = void 0;
21
+ var webview_1 = require("./webview");
22
+ Object.defineProperty(exports, "WebviewHelpers", { enumerable: true, get: function () { return __importDefault(webview_1).default; } });
23
+ __exportStar(require("./webview"), exports);
24
+ __exportStar(require("./unlock"), exports);
25
+ __exportStar(require("./types"), exports);
26
+ var android_1 = require("./android");
27
+ Object.defineProperty(exports, "AndroidHelpers", { enumerable: true, get: function () { return __importDefault(android_1).default; } });
28
+ __exportStar(require("./android"), exports);
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,qCAAoD;AAA5C,0HAAA,OAAO,OAAkB;AACjC,4CAA0B;AAC1B,2CAAyB;AACzB,0CAAwB;AACxB,qCAAoD;AAA5C,0HAAA,OAAO,OAAkB;AACjC,4CAA0B"}
@@ -0,0 +1,121 @@
1
+ import type { ADB } from 'appium-adb';
2
+ import { AndroidDriverCaps } from '../driver';
3
+ import { StringRecord } from '@appium/types';
4
+ export interface WebviewProc {
5
+ /**
6
+ * The webview process name (as returned by getPotentialWebviewProcs)
7
+ */
8
+ proc: string;
9
+ /**
10
+ * The actual webview context name
11
+ */
12
+ webview: string;
13
+ }
14
+ export interface DetailCollectionOptions {
15
+ /**
16
+ * The starting port to use for webview page presence check (if not the default of 9222).
17
+ */
18
+ webviewDevtoolsPort?: number | null;
19
+ /**
20
+ * Whether to check for webview pages presence
21
+ */
22
+ ensureWebviewsHavePages?: boolean | null;
23
+ /**
24
+ * Whether to collect web view details and send them to Chromedriver constructor, so it could
25
+ * select a binary more precisely based on this info.
26
+ */
27
+ enableWebviewDetailsCollection?: boolean | null;
28
+ }
29
+ export interface WebviewProps {
30
+ /**
31
+ * The name of the Devtools Unix socket
32
+ */
33
+ proc: string;
34
+ /**
35
+ * The web view alias. Looks like `WEBVIEW_` prefix plus PID or package name
36
+ */
37
+ webview: string;
38
+ /**
39
+ * Webview information as it is retrieved by /json/version CDP endpoint
40
+ */
41
+ info?: object | null;
42
+ /**
43
+ * Webview pages list as it is retrieved by /json/list CDP endpoint
44
+ */
45
+ pages?: object[] | null;
46
+ }
47
+ export interface GetWebviewsOpts {
48
+ /**
49
+ * device socket name
50
+ */
51
+ androidDeviceSocket?: string | null;
52
+ /**
53
+ * whether to check for webview page presence
54
+ */
55
+ ensureWebviewsHavePages?: boolean | null;
56
+ /**
57
+ * port to use for webview page presence check.
58
+ */
59
+ webviewDevtoolsPort?: number | null;
60
+ /**
61
+ * whether to collect web view details and send them to Chromedriver constructor, so it could select a binary more precisely based on this info.
62
+ */
63
+ enableWebviewDetailsCollection?: boolean | null;
64
+ /**
65
+ * @privateRemarks This is referenced but was not previously declared
66
+ */
67
+ isChromeSession?: boolean;
68
+ }
69
+ export interface ProcessInfo {
70
+ /**
71
+ * The process name
72
+ */
73
+ name: string;
74
+ /**
75
+ * The process id (if could be retrieved)
76
+ */
77
+ id?: string | null;
78
+ }
79
+ export interface WebViewDetails {
80
+ /**
81
+ * Web view process details
82
+ */
83
+ process?: ProcessInfo | null;
84
+ /**
85
+ * Web view details as returned by /json/version CDP endpoint
86
+ * @example
87
+ * {
88
+ * "Browser": "Chrome/72.0.3601.0",
89
+ * "Protocol-Version": "1.3",
90
+ * "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3601.0 Safari/537.36",
91
+ * "V8-Version": "7.2.233",
92
+ * "WebKit-Version": "537.36 (@cfede9db1d154de0468cb0538479f34c0755a0f4)",
93
+ * "webSocketDebuggerUrl": "ws://localhost:9222/devtools/browser/b0b8a4fb-bb17-4359-9533-a8d9f3908bd8"
94
+ * }
95
+ */
96
+ info?: StringRecord;
97
+ }
98
+ /**
99
+ * @deprecated
100
+ */
101
+ export type TADB = ADB;
102
+ /**
103
+ * XXX Placeholder for ADB options
104
+ */
105
+ export type TADBOptions = any;
106
+ export interface FastUnlockOptions {
107
+ credential: string;
108
+ /**
109
+ * @privateRemarks FIXME: narrow this type to whatever `appium-adb` expects
110
+ */
111
+ credentialType: string;
112
+ }
113
+ /**
114
+ * XXX May be wrong
115
+ */
116
+ export interface ADBDeviceInfo {
117
+ udid: string;
118
+ emPort: number | false;
119
+ }
120
+ export type ADBLaunchInfo = Pick<AndroidDriverCaps, 'appPackage' | 'appWaitActivity' | 'appActivity' | 'appWaitPackage'>;
121
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../lib/helpers/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAE3C,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzC;;;OAGG;IACH,8BAA8B,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CACjD;AAED,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzC;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC;;OAEG;IACH,8BAA8B,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAChD;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7B;;;;;;;;;;;OAWG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,GAAG,CAAC;AAEvB;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC;AAE9B,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC;CACxB;AAED,MAAM,MAAM,aAAa,GAAG,IAAI,CAC9B,iBAAiB,EACjB,YAAY,GAAG,iBAAiB,GAAG,aAAa,GAAG,gBAAgB,CACpE,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../lib/helpers/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Unlocking helpers
3
+ * @module
4
+ */
5
+ import type { Capabilities, Position } from '@appium/types';
6
+ import type { AndroidDriver } from '../driver';
7
+ import type { AndroidDriverConstraints } from '../constraints';
8
+ import type { FastUnlockOptions } from './types';
9
+ import ADB from 'appium-adb';
10
+ import { TouchAction } from '../commands/types';
11
+ declare const PIN_UNLOCK = "pin";
12
+ declare const PIN_UNLOCK_KEY_EVENT = "pinWithKeyEvent";
13
+ declare const PASSWORD_UNLOCK = "password";
14
+ declare const PATTERN_UNLOCK = "pattern";
15
+ declare const FINGERPRINT_UNLOCK = "fingerprint";
16
+ interface UnlockHelpers {
17
+ validateUnlockCapabilities: <C extends AndroidDriverConstraints>(caps: Capabilities<C>) => Capabilities<C>;
18
+ fastUnlock(adb: ADB, opts: FastUnlockOptions): Promise<void>;
19
+ encodePassword(key: string): string;
20
+ stringKeyToArr(key: any): string[];
21
+ fingerprintUnlock<C extends AndroidDriverConstraints>(adb: ADB, driver: AndroidDriver, capabilities: Capabilities<C>): Promise<void>;
22
+ pinUnlock<C extends AndroidDriverConstraints>(adb: ADB, driver: AndroidDriver, capabilities: Capabilities<C>): Promise<void>;
23
+ pinUnlockWithKeyEvent<C extends AndroidDriverConstraints>(adb: ADB, driver: AndroidDriver, capabilities: Capabilities<C>): Promise<void>;
24
+ passwordUnlock<C extends AndroidDriverConstraints>(adb: ADB, driver: AndroidDriver, capabilities: Capabilities<C>): Promise<void>;
25
+ getPatternKeyPosition(key: number, initPos: Position, piece: number): Position;
26
+ getPatternActions(keys: string[] | number[], initPos: Position, piece: number): TouchAction[];
27
+ patternUnlock<C extends AndroidDriverConstraints>(adb: ADB, driver: AndroidDriver, capabilities: Capabilities<C>): Promise<void>;
28
+ }
29
+ declare const UnlockHelpers: UnlockHelpers;
30
+ export { FINGERPRINT_UNLOCK, PASSWORD_UNLOCK, PATTERN_UNLOCK, PIN_UNLOCK, PIN_UNLOCK_KEY_EVENT };
31
+ export default UnlockHelpers;
32
+ //# sourceMappingURL=unlock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unlock.d.ts","sourceRoot":"","sources":["../../../lib/helpers/unlock.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAC,YAAY,EAAE,QAAQ,EAAe,MAAM,eAAe,CAAC;AAGxE,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,gBAAgB,CAAC;AAE7D,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAC/C,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAE9C,QAAA,MAAM,UAAU,QAAQ,CAAC;AACzB,QAAA,MAAM,oBAAoB,oBAAoB,CAAC;AAC/C,QAAA,MAAM,eAAe,aAAa,CAAC;AACnC,QAAA,MAAM,cAAc,YAAY,CAAC;AACjC,QAAA,MAAM,kBAAkB,gBAAgB,CAAC;AAazC,UAAU,aAAa;IACrB,0BAA0B,EAAE,CAAC,CAAC,SAAS,wBAAwB,EAC7D,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,KAClB,YAAY,CAAC,CAAC,CAAC,CAAC;IACrB,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACpC,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE,CAAC;IACnC,iBAAiB,CAAC,CAAC,SAAS,wBAAwB,EAClD,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,SAAS,CAAC,CAAC,SAAS,wBAAwB,EAC1C,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,qBAAqB,CAAC,CAAC,SAAS,wBAAwB,EACtD,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,cAAc,CAAC,CAAC,SAAS,wBAAwB,EAC/C,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC/E,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW,EAAE,CAAC;IAC9F,aAAa,CAAC,CAAC,SAAS,wBAAwB,EAC9C,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CAAC;CAClB;AA0BD,QAAA,MAAM,aAAa,EAAE,aAwOpB,CAAC;AAEF,OAAO,EAAC,kBAAkB,EAAE,eAAe,EAAE,cAAc,EAAE,UAAU,EAAE,oBAAoB,EAAC,CAAC;AAC/F,eAAe,aAAa,CAAC"}
@@ -0,0 +1,273 @@
1
+ "use strict";
2
+ /**
3
+ * Unlocking helpers
4
+ * @module
5
+ */
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.PIN_UNLOCK_KEY_EVENT = exports.PIN_UNLOCK = exports.PATTERN_UNLOCK = exports.PASSWORD_UNLOCK = exports.FINGERPRINT_UNLOCK = void 0;
11
+ const support_1 = require("@appium/support");
12
+ const asyncbox_1 = require("asyncbox");
13
+ const lodash_1 = __importDefault(require("lodash"));
14
+ const logger_1 = __importDefault(require("../logger"));
15
+ const PIN_UNLOCK = 'pin';
16
+ exports.PIN_UNLOCK = PIN_UNLOCK;
17
+ const PIN_UNLOCK_KEY_EVENT = 'pinWithKeyEvent';
18
+ exports.PIN_UNLOCK_KEY_EVENT = PIN_UNLOCK_KEY_EVENT;
19
+ const PASSWORD_UNLOCK = 'password';
20
+ exports.PASSWORD_UNLOCK = PASSWORD_UNLOCK;
21
+ const PATTERN_UNLOCK = 'pattern';
22
+ exports.PATTERN_UNLOCK = PATTERN_UNLOCK;
23
+ const FINGERPRINT_UNLOCK = 'fingerprint';
24
+ exports.FINGERPRINT_UNLOCK = FINGERPRINT_UNLOCK;
25
+ const UNLOCK_TYPES = [
26
+ PIN_UNLOCK,
27
+ PIN_UNLOCK_KEY_EVENT,
28
+ PASSWORD_UNLOCK,
29
+ PATTERN_UNLOCK,
30
+ FINGERPRINT_UNLOCK,
31
+ ];
32
+ const KEYCODE_NUMPAD_ENTER = 66;
33
+ const UNLOCK_WAIT_TIME = 100;
34
+ const INPUT_KEYS_WAIT_TIME = 100;
35
+ const NUMBER_ZERO_KEYCODE = 7;
36
+ function isNonEmptyString(value) {
37
+ return typeof value === 'string' && value !== '';
38
+ }
39
+ /**
40
+ * Wait for the display to be unlocked.
41
+ * Some devices automatically accept typed 'pin' and 'password' code
42
+ * without pressing the Enter key. But some devices need it.
43
+ * This method waits a few seconds first for such automatic acceptance case.
44
+ * If the device is still locked, then this method will try to send
45
+ * the enter key code.
46
+ *
47
+ * @param adb The instance of ADB
48
+ */
49
+ async function waitForUnlock(adb) {
50
+ await (0, asyncbox_1.sleep)(UNLOCK_WAIT_TIME);
51
+ if (!(await adb.isScreenLocked())) {
52
+ return;
53
+ }
54
+ await adb.keyevent(KEYCODE_NUMPAD_ENTER);
55
+ await (0, asyncbox_1.sleep)(UNLOCK_WAIT_TIME);
56
+ }
57
+ const UnlockHelpers = {
58
+ validateUnlockCapabilities(caps) {
59
+ const { unlockKey, unlockType } = (caps ?? {});
60
+ if (!isNonEmptyString(unlockType)) {
61
+ throw new Error('A non-empty unlock key value must be provided');
62
+ }
63
+ if ([PIN_UNLOCK, PIN_UNLOCK_KEY_EVENT, FINGERPRINT_UNLOCK].includes(unlockType)) {
64
+ if (!/^[0-9]+$/.test(lodash_1.default.trim(unlockKey))) {
65
+ throw new Error(`Unlock key value '${unlockKey}' must only consist of digits`);
66
+ }
67
+ }
68
+ else if (unlockType === PATTERN_UNLOCK) {
69
+ if (!/^[1-9]{2,9}$/.test(lodash_1.default.trim(unlockKey))) {
70
+ throw new Error(`Unlock key value '${unlockKey}' must only include from two to nine digits in range 1..9`);
71
+ }
72
+ if (/([1-9]).*?\1/.test(lodash_1.default.trim(unlockKey))) {
73
+ throw new Error(`Unlock key value '${unlockKey}' must define a valid pattern where repeats are not allowed`);
74
+ }
75
+ }
76
+ else if (unlockType === PASSWORD_UNLOCK) {
77
+ // Dont trim password key, you can use blank spaces in your android password
78
+ // ¯\_(ツ)_/¯
79
+ if (!/.{4,}/g.test(String(unlockKey))) {
80
+ throw new Error(`The minimum allowed length of unlock key value '${unlockKey}' is 4 characters`);
81
+ }
82
+ }
83
+ else {
84
+ throw new Error(`Invalid unlock type '${unlockType}'. ` +
85
+ `Only the following unlock types are supported: ${UNLOCK_TYPES}`);
86
+ }
87
+ return caps;
88
+ },
89
+ async fastUnlock(adb, opts) {
90
+ const { credential, credentialType } = opts;
91
+ logger_1.default.info(`Unlocking the device via ADB using ${credentialType} credential '${credential}'`);
92
+ const wasLockEnabled = await adb.isLockEnabled();
93
+ if (wasLockEnabled) {
94
+ await adb.clearLockCredential(credential);
95
+ // not sure why, but the device's screen still remains locked
96
+ // if a preliminary wake up cycle has not been performed
97
+ await adb.cycleWakeUp();
98
+ }
99
+ else {
100
+ logger_1.default.info('No active lock has been detected. Proceeding to the keyguard dismissal');
101
+ }
102
+ try {
103
+ await adb.dismissKeyguard();
104
+ }
105
+ finally {
106
+ if (wasLockEnabled) {
107
+ await adb.setLockCredential(credentialType, credential);
108
+ }
109
+ }
110
+ },
111
+ encodePassword(key) {
112
+ return `${key}`.replace(/\s/gi, '%s');
113
+ },
114
+ stringKeyToArr(key) {
115
+ return `${key}`.trim().replace(/\s+/g, '').split(/\s*/);
116
+ },
117
+ async fingerprintUnlock(adb, driver, capabilities) {
118
+ if ((await adb.getApiLevel()) < 23) {
119
+ throw new Error('Fingerprint unlock only works for Android 6+ emulators');
120
+ }
121
+ await adb.fingerprint(String(capabilities.unlockKey));
122
+ await (0, asyncbox_1.sleep)(UNLOCK_WAIT_TIME);
123
+ },
124
+ async pinUnlock(adb, driver, capabilities) {
125
+ logger_1.default.info(`Trying to unlock device using pin ${capabilities.unlockKey}`);
126
+ await adb.dismissKeyguard();
127
+ const keys = this.stringKeyToArr(capabilities.unlockKey);
128
+ if ((await adb.getApiLevel()) >= 21) {
129
+ const els = await driver.findElOrEls('id', 'com.android.systemui:id/digit_text', true);
130
+ if (lodash_1.default.isEmpty(els)) {
131
+ // fallback to pin with key event
132
+ return await this.pinUnlockWithKeyEvent(adb, driver, capabilities);
133
+ }
134
+ const pins = {};
135
+ for (const el of els) {
136
+ const text = await driver.getAttribute('text', support_1.util.unwrapElement(el));
137
+ pins[text] = el;
138
+ }
139
+ for (const pin of keys) {
140
+ const el = pins[pin];
141
+ await driver.click(support_1.util.unwrapElement(el));
142
+ }
143
+ }
144
+ else {
145
+ for (const pin of keys) {
146
+ const el = await driver.findElOrEls('id', `com.android.keyguard:id/key${pin}`, false);
147
+ if (el === null) {
148
+ // fallback to pin with key event
149
+ return await this.pinUnlockWithKeyEvent(adb, driver, capabilities);
150
+ }
151
+ await driver.click(support_1.util.unwrapElement(el));
152
+ }
153
+ }
154
+ await waitForUnlock(adb);
155
+ },
156
+ async pinUnlockWithKeyEvent(adb, driver, capabilities) {
157
+ logger_1.default.info(`Trying to unlock device using pin with keycode ${capabilities.unlockKey}`);
158
+ await adb.dismissKeyguard();
159
+ const keys = this.stringKeyToArr(capabilities.unlockKey);
160
+ // Some device does not have system key ids like 'com.android.keyguard:id/key'
161
+ // Then, sending keyevents are more reliable to unlock the screen.
162
+ for (const pin of keys) {
163
+ // 'pin' is number (0-9) in string.
164
+ // Number '0' is keycode '7'. number '9' is keycode '16'.
165
+ await adb.shell(['input', 'keyevent', String(parseInt(pin, 10) + NUMBER_ZERO_KEYCODE)]);
166
+ }
167
+ await waitForUnlock(adb);
168
+ },
169
+ async passwordUnlock(adb, driver, capabilities) {
170
+ const { unlockKey } = capabilities;
171
+ logger_1.default.info(`Trying to unlock device using password ${unlockKey}`);
172
+ await adb.dismissKeyguard();
173
+ // Replace blank spaces with %s
174
+ const key = this.encodePassword(unlockKey);
175
+ // Why adb ? It was less flaky
176
+ await adb.shell(['input', 'text', key]);
177
+ // Why sleeps ? Avoid some flakyness waiting for the input to receive the keys
178
+ await (0, asyncbox_1.sleep)(INPUT_KEYS_WAIT_TIME);
179
+ await adb.shell(['input', 'keyevent', String(KEYCODE_NUMPAD_ENTER)]);
180
+ // Waits a bit for the device to be unlocked
181
+ await waitForUnlock(adb);
182
+ },
183
+ getPatternKeyPosition(key, initPos, piece) {
184
+ /*
185
+ How the math works:
186
+ We have 9 buttons divided in 3 columns and 3 rows inside the lockPatternView,
187
+ every button has a position on the screen corresponding to the lockPatternView since
188
+ it is the parent view right at the middle of each column or row.
189
+ */
190
+ const cols = 3;
191
+ const pins = 9;
192
+ const xPos = (key, x, piece) => Math.round(x + (key % cols || cols) * piece - piece / 2);
193
+ const yPos = (key, y, piece) => Math.round(y + (Math.ceil((key % pins || pins) / cols) * piece - piece / 2));
194
+ return {
195
+ x: xPos(key, initPos.x, piece),
196
+ y: yPos(key, initPos.y, piece),
197
+ };
198
+ },
199
+ getPatternActions(keys, initPos, piece) {
200
+ const actions = [];
201
+ keys = keys.map((key) => (lodash_1.default.isString(key) ? lodash_1.default.parseInt(key) : key));
202
+ let lastPos;
203
+ for (const key of keys) {
204
+ const keyPos = UnlockHelpers.getPatternKeyPosition(key, initPos, piece);
205
+ if (key === keys[0]) {
206
+ actions.push({ action: 'press', options: { element: undefined, x: keyPos.x, y: keyPos.y } });
207
+ lastPos = keyPos;
208
+ continue;
209
+ }
210
+ const moveTo = { x: 0, y: 0 };
211
+ const diffX = keyPos.x - lastPos.x;
212
+ if (diffX > 0) {
213
+ moveTo.x = piece;
214
+ if (Math.abs(diffX) > piece) {
215
+ moveTo.x += piece;
216
+ }
217
+ }
218
+ else if (diffX < 0) {
219
+ moveTo.x = -1 * piece;
220
+ if (Math.abs(diffX) > piece) {
221
+ moveTo.x -= piece;
222
+ }
223
+ }
224
+ const diffY = keyPos.y - lastPos.y;
225
+ if (diffY > 0) {
226
+ moveTo.y = piece;
227
+ if (Math.abs(diffY) > piece) {
228
+ moveTo.y += piece;
229
+ }
230
+ }
231
+ else if (diffY < 0) {
232
+ moveTo.y = -1 * piece;
233
+ if (Math.abs(diffY) > piece) {
234
+ moveTo.y -= piece;
235
+ }
236
+ }
237
+ actions.push({
238
+ action: 'moveTo',
239
+ options: { element: undefined, x: moveTo.x + lastPos.x, y: moveTo.y + lastPos.y },
240
+ });
241
+ lastPos = keyPos;
242
+ }
243
+ actions.push({ action: 'release' });
244
+ return actions;
245
+ },
246
+ async patternUnlock(adb, driver, capabilities) {
247
+ const { unlockKey } = capabilities;
248
+ logger_1.default.info(`Trying to unlock device using pattern ${unlockKey}`);
249
+ await adb.dismissKeyguard();
250
+ const keys = this.stringKeyToArr(unlockKey);
251
+ /* We set the device pattern buttons as number of a regular phone
252
+ * | • • • | | 1 2 3 |
253
+ * | • • • | --> | 4 5 6 |
254
+ * | • • • | | 7 8 9 |
255
+
256
+ The pattern view buttons are not seeing by the uiautomator since they are
257
+ included inside a FrameLayout, so we are going to try clicking on the buttons
258
+ using the parent view bounds and math.
259
+ */
260
+ const apiLevel = await adb.getApiLevel();
261
+ const el = await driver.findElOrEls('id', `com.android.${apiLevel >= 21 ? 'systemui' : 'keyguard'}:id/lockPatternView`, false);
262
+ const initPos = await driver.getLocation(support_1.util.unwrapElement(el));
263
+ const size = await driver.getSize(support_1.util.unwrapElement(el));
264
+ // Get actions to perform
265
+ const actions = UnlockHelpers.getPatternActions(keys, initPos, size.width / 3);
266
+ // Perform gesture
267
+ await driver.performTouch(actions);
268
+ // Waits a bit for the device to be unlocked
269
+ await (0, asyncbox_1.sleep)(UNLOCK_WAIT_TIME);
270
+ },
271
+ };
272
+ exports.default = UnlockHelpers;
273
+ //# sourceMappingURL=unlock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unlock.js","sourceRoot":"","sources":["../../../lib/helpers/unlock.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Webview-related helper functions
3
+ * @module
4
+ */
5
+ import type { WebviewsMapping } from '../commands/types';
6
+ import type { GetWebviewsOpts, WebViewDetails } from './types';
7
+ import type { ADB } from 'appium-adb';
8
+ declare const NATIVE_WIN = "NATIVE_APP";
9
+ declare const WEBVIEW_WIN = "WEBVIEW";
10
+ declare const CHROMIUM_WIN = "CHROMIUM";
11
+ declare const WEBVIEW_BASE = "WEBVIEW_";
12
+ export declare const DEVTOOLS_SOCKET_PATTERN: RegExp;
13
+ declare const KNOWN_CHROME_PACKAGE_NAMES: string[];
14
+ interface WebviewHelpers {
15
+ /**
16
+ * Take a webview name like WEBVIEW_4296 and use 'adb shell ps' to figure out
17
+ * which app package is associated with that webview. One of the reasons we
18
+ * want to do this is to make sure we're listing webviews for the actual AUT,
19
+ * not some other running app
20
+ *
21
+ * @param adb - an ADB instance
22
+ * @param webview - a webview process name
23
+ *
24
+ * @returns {Promise<string>} - the package name of the app running the webview
25
+ * @throws {Error} If there was a failure while retrieving the process name
26
+ */
27
+ procFromWebview: (adb: ADB, webview: string) => Promise<string>;
28
+ /**
29
+ * Parse webview names for getContexts
30
+ *
31
+ * @param webviewsMapping See note on getWebViewsMapping
32
+ * @param opts See note on getWebViewsMapping
33
+ * @returns a list of webview names
34
+ */
35
+ parseWebviewNames: (webviewsMapping: WebviewsMapping[], opts?: GetWebviewsOpts) => string[];
36
+ /**
37
+ * Get a list of available webviews mapping by introspecting processes with adb,
38
+ * where webviews are listed. It's possible to pass in a 'deviceSocket' arg, which
39
+ * limits the webview possibilities to the one running on the Chromium devtools
40
+ * socket we're interested in (see note on webviewsFromProcs). We can also
41
+ * direct this method to verify whether a particular webview process actually
42
+ * has any pages (if a process exists but no pages are found, Chromedriver will
43
+ * not actually be able to connect to it, so this serves as a guard for that
44
+ * strange failure mode). The strategy for checking whether any pages are
45
+ * active involves sending a request to the remote debug server on the device,
46
+ * hence it is also possible to specify the port on the host machine which
47
+ * should be used for this communication.
48
+ *
49
+ * @param adb - an ADB instance
50
+ */
51
+ getWebViewsMapping: (adb: ADB, opts?: GetWebviewsOpts) => Promise<WebviewsMapping[]>;
52
+ /**
53
+ * Retrieves web view details previously cached by `getWebviews` call
54
+ *
55
+ * @param adb ADB instance
56
+ * @param webview The name of the web view
57
+ * @returns Either `undefined` or the recent web view details
58
+ */
59
+ getWebviewDetails: (adb: ADB, webview: string) => WebViewDetails | undefined;
60
+ /**
61
+ * Create Chrome driver capabilities based on the provided
62
+ * Appium capabilities
63
+ *
64
+ * @param opts User-provided capabilities object
65
+ * @param deviceId The identifier of the Android device under test
66
+ * @returns The capabilities object.
67
+ * @see {@link https://chromedriver.chromium.org/capabilities Chromedriver docs} for more details
68
+ */
69
+ createChromedriverCaps: (opts: any, deviceId: string, webViewDetails?: WebViewDetails | null) => object;
70
+ }
71
+ declare const WebviewHelpers: WebviewHelpers;
72
+ export { CHROMIUM_WIN, KNOWN_CHROME_PACKAGE_NAMES, NATIVE_WIN, WEBVIEW_BASE, WEBVIEW_WIN };
73
+ export default WebviewHelpers;
74
+ //# sourceMappingURL=webview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webview.d.ts","sourceRoot":"","sources":["../../../lib/helpers/webview.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAWH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAGvD,OAAO,KAAK,EAEV,eAAe,EACf,cAAc,EAGf,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,YAAY,CAAC;AAEpC,QAAA,MAAM,UAAU,eAAe,CAAC;AAChC,QAAA,MAAM,WAAW,YAAY,CAAC;AAC9B,QAAA,MAAM,YAAY,aAAa,CAAC;AAChC,QAAA,MAAM,YAAY,aAAoB,CAAC;AAGvC,eAAO,MAAM,uBAAuB,QAAgD,CAAC;AAIrF,QAAA,MAAM,0BAA0B,UAK/B,CAAC;AAYF,UAAU,cAAc;IACtB;;;;;;;;;;;OAWG;IACH,eAAe,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAEhE;;;;;;OAMG;IACH,iBAAiB,EAAE,CAAC,eAAe,EAAE,eAAe,EAAE,EAAE,IAAI,CAAC,EAAE,eAAe,KAAK,MAAM,EAAE,CAAC;IAE5F;;;;;;;;;;;;;;OAcG;IACH,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,eAAe,KAAK,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAErF;;;;;;OAMG;IACH,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,KAAK,cAAc,GAAG,SAAS,CAAC;IAE7E;;;;;;;;OAQG;IAEH,sBAAsB,EAAE,CACtB,IAAI,EAAE,GAAG,EACT,QAAQ,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,cAAc,GAAG,IAAI,KACnC,MAAM,CAAC;CACb;AA2PD,QAAA,MAAM,cAAc,EAAE,cAiNrB,CAAC;AAEF,OAAO,EAAC,YAAY,EAAE,0BAA0B,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,CAAC;AACzF,eAAe,cAAc,CAAC"}