appium-mcp 0.0.1 → 1.1.5

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 (589) hide show
  1. package/.github/workflows/ci.yml +37 -0
  2. package/.github/workflows/pr-title.yml +15 -0
  3. package/.github/workflows/publish.yml +31 -0
  4. package/.gitmodules +9 -0
  5. package/.prettierignore +29 -0
  6. package/.prettierrc +10 -0
  7. package/.releaserc +37 -0
  8. package/CHANGELOG.md +43 -0
  9. package/LICENSE +21 -0
  10. package/README.md +153 -0
  11. package/dist/devicemanager/adb-manager.d.ts +71 -0
  12. package/dist/devicemanager/adb-manager.js +140 -0
  13. package/dist/devicemanager/adb-manager.js.map +1 -0
  14. package/dist/devicemanager/ios-manager.d.ts +58 -0
  15. package/dist/devicemanager/ios-manager.js +122 -0
  16. package/dist/devicemanager/ios-manager.js.map +1 -0
  17. package/dist/index.d.ts +2 -0
  18. package/dist/index.js +40 -0
  19. package/dist/index.js.map +1 -0
  20. package/dist/locators/element-filter.d.ts +13 -0
  21. package/dist/locators/element-filter.js +79 -0
  22. package/dist/locators/element-filter.js.map +1 -0
  23. package/dist/locators/generate-all-locators.d.ts +21 -0
  24. package/dist/locators/generate-all-locators.js +72 -0
  25. package/dist/locators/generate-all-locators.js.map +1 -0
  26. package/dist/locators/locator-generation.d.ts +36 -0
  27. package/dist/locators/locator-generation.js +501 -0
  28. package/dist/locators/locator-generation.js.map +1 -0
  29. package/dist/locators/logger.d.ts +5 -0
  30. package/dist/locators/logger.js +9 -0
  31. package/dist/locators/logger.js.map +1 -0
  32. package/dist/locators/source-parsing.d.ts +43 -0
  33. package/dist/locators/source-parsing.js +100 -0
  34. package/dist/locators/source-parsing.js.map +1 -0
  35. package/dist/resources/index.d.ts +1 -0
  36. package/dist/resources/index.js +7 -0
  37. package/dist/resources/index.js.map +1 -0
  38. package/dist/resources/java/template.d.ts +4 -0
  39. package/dist/resources/java/template.js +82 -0
  40. package/dist/resources/java/template.js.map +1 -0
  41. package/dist/schema.d.ts +2 -0
  42. package/dist/schema.js +5 -0
  43. package/dist/schema.js.map +1 -0
  44. package/dist/scripts/simple-index-documentation.d.ts +20 -0
  45. package/dist/scripts/simple-index-documentation.js +77 -0
  46. package/dist/scripts/simple-index-documentation.js.map +1 -0
  47. package/dist/scripts/simple-query-documentation.d.ts +12 -0
  48. package/dist/scripts/simple-query-documentation.js +52 -0
  49. package/dist/scripts/simple-query-documentation.js.map +1 -0
  50. package/dist/server.d.ts +3 -0
  51. package/dist/server.js +37 -0
  52. package/dist/server.js.map +1 -0
  53. package/dist/tests/__mocks__/@appium/support.d.ts +21 -0
  54. package/dist/tests/__mocks__/@appium/support.js +30 -0
  55. package/dist/tests/__mocks__/@appium/support.js.map +1 -0
  56. package/dist/tests/generate-all-locators.test.d.ts +1 -0
  57. package/dist/tests/generate-all-locators.test.js +140 -0
  58. package/dist/tests/generate-all-locators.test.js.map +1 -0
  59. package/dist/tests/test-setup-wda.d.ts +1 -0
  60. package/dist/tests/test-setup-wda.js +202 -0
  61. package/dist/tests/test-setup-wda.js.map +1 -0
  62. package/dist/tools/answer-appium.d.ts +1 -0
  63. package/dist/tools/answer-appium.js +71 -0
  64. package/dist/tools/answer-appium.js.map +1 -0
  65. package/dist/tools/boot-simulator.d.ts +1 -0
  66. package/dist/tools/boot-simulator.js +71 -0
  67. package/dist/tools/boot-simulator.js.map +1 -0
  68. package/dist/tools/create-session.d.ts +1 -0
  69. package/dist/tools/create-session.js +192 -0
  70. package/dist/tools/create-session.js.map +1 -0
  71. package/dist/tools/delete-session.d.ts +1 -0
  72. package/dist/tools/delete-session.js +47 -0
  73. package/dist/tools/delete-session.js.map +1 -0
  74. package/dist/tools/documentation/index.d.ts +28 -0
  75. package/dist/tools/documentation/index.js +63 -0
  76. package/dist/tools/documentation/index.js.map +1 -0
  77. package/dist/tools/documentation/reasoning-rag.d.ts +88 -0
  78. package/dist/tools/documentation/reasoning-rag.js +281 -0
  79. package/dist/tools/documentation/reasoning-rag.js.map +1 -0
  80. package/dist/tools/documentation/sentence-transformers-embeddings.d.ts +34 -0
  81. package/dist/tools/documentation/sentence-transformers-embeddings.js +111 -0
  82. package/dist/tools/documentation/sentence-transformers-embeddings.js.map +1 -0
  83. package/dist/tools/documentation/simple-pdf-indexer.d.ts +45 -0
  84. package/dist/tools/documentation/simple-pdf-indexer.js +402 -0
  85. package/dist/tools/documentation/simple-pdf-indexer.js.map +1 -0
  86. package/dist/tools/documentation/uploads/documents.json +1 -0
  87. package/dist/tools/generate-tests.d.ts +2 -0
  88. package/dist/tools/generate-tests.js +46 -0
  89. package/dist/tools/generate-tests.js.map +1 -0
  90. package/dist/tools/index.d.ts +16 -0
  91. package/dist/tools/index.js +114 -0
  92. package/dist/tools/index.js.map +1 -0
  93. package/dist/tools/install-wda.d.ts +1 -0
  94. package/dist/tools/install-wda.js +219 -0
  95. package/dist/tools/install-wda.js.map +1 -0
  96. package/dist/tools/interactions/activate-app.d.ts +2 -0
  97. package/dist/tools/interactions/activate-app.js +44 -0
  98. package/dist/tools/interactions/activate-app.js.map +1 -0
  99. package/dist/tools/interactions/click.d.ts +2 -0
  100. package/dist/tools/interactions/click.js +45 -0
  101. package/dist/tools/interactions/click.js.map +1 -0
  102. package/dist/tools/interactions/double-tap.d.ts +2 -0
  103. package/dist/tools/interactions/double-tap.js +81 -0
  104. package/dist/tools/interactions/double-tap.js.map +1 -0
  105. package/dist/tools/interactions/find.d.ts +13 -0
  106. package/dist/tools/interactions/find.js +55 -0
  107. package/dist/tools/interactions/find.js.map +1 -0
  108. package/dist/tools/interactions/get-page-source.d.ts +2 -0
  109. package/dist/tools/interactions/get-page-source.js +48 -0
  110. package/dist/tools/interactions/get-page-source.js.map +1 -0
  111. package/dist/tools/interactions/get-text.d.ts +2 -0
  112. package/dist/tools/interactions/get-text.js +45 -0
  113. package/dist/tools/interactions/get-text.js.map +1 -0
  114. package/dist/tools/interactions/install-app.d.ts +2 -0
  115. package/dist/tools/interactions/install-app.js +43 -0
  116. package/dist/tools/interactions/install-app.js.map +1 -0
  117. package/dist/tools/interactions/list-apps.d.ts +2 -0
  118. package/dist/tools/interactions/list-apps.js +59 -0
  119. package/dist/tools/interactions/list-apps.js.map +1 -0
  120. package/dist/tools/interactions/screenshot.d.ts +2 -0
  121. package/dist/tools/interactions/screenshot.js +49 -0
  122. package/dist/tools/interactions/screenshot.js.map +1 -0
  123. package/dist/tools/interactions/set-value.d.ts +2 -0
  124. package/dist/tools/interactions/set-value.js +46 -0
  125. package/dist/tools/interactions/set-value.js.map +1 -0
  126. package/dist/tools/interactions/terminate-app.d.ts +2 -0
  127. package/dist/tools/interactions/terminate-app.js +45 -0
  128. package/dist/tools/interactions/terminate-app.js.map +1 -0
  129. package/dist/tools/interactions/uninstall-app.d.ts +2 -0
  130. package/dist/tools/interactions/uninstall-app.js +45 -0
  131. package/dist/tools/interactions/uninstall-app.js.map +1 -0
  132. package/dist/tools/locators.d.ts +1 -0
  133. package/dist/tools/locators.js +71 -0
  134. package/dist/tools/locators.js.map +1 -0
  135. package/dist/tools/scroll-to-element.d.ts +1 -0
  136. package/dist/tools/scroll-to-element.js +155 -0
  137. package/dist/tools/scroll-to-element.js.map +1 -0
  138. package/dist/tools/scroll.d.ts +1 -0
  139. package/dist/tools/scroll.js +91 -0
  140. package/dist/tools/scroll.js.map +1 -0
  141. package/dist/tools/select-device.d.ts +5 -0
  142. package/dist/tools/select-device.js +222 -0
  143. package/dist/tools/select-device.js.map +1 -0
  144. package/dist/tools/select-platform.d.ts +1 -0
  145. package/dist/tools/select-platform.js +195 -0
  146. package/dist/tools/select-platform.js.map +1 -0
  147. package/dist/tools/session-store.d.ts +7 -0
  148. package/dist/tools/session-store.js +64 -0
  149. package/dist/tools/session-store.js.map +1 -0
  150. package/dist/tools/setup-wda.d.ts +1 -0
  151. package/dist/tools/setup-wda.js +177 -0
  152. package/dist/tools/setup-wda.js.map +1 -0
  153. package/docs/CONTRIBUTING.md +424 -0
  154. package/eslint.config.js +49 -0
  155. package/examples/android-gmail.md +7 -0
  156. package/examples/android-todo-app.md +9 -0
  157. package/jest.config.js +23 -0
  158. package/package.json +71 -6
  159. package/scripts/setup-submodules-sparse.sh +53 -0
  160. package/scripts/update-submodules.sh +14 -0
  161. package/src/devicemanager/adb-manager.ts +164 -0
  162. package/src/devicemanager/ios-manager.ts +145 -0
  163. package/src/index.ts +47 -0
  164. package/src/locators/element-filter.ts +134 -0
  165. package/src/locators/generate-all-locators.ts +149 -0
  166. package/src/locators/locator-generation.ts +657 -0
  167. package/src/locators/logger.ts +11 -0
  168. package/src/locators/source-parsing.ts +149 -0
  169. package/src/resources/caps.json +697 -0
  170. package/src/resources/index.ts +7 -0
  171. package/src/resources/java/template.ts +83 -0
  172. package/src/resources/submodules/appium/.github/PULL_REQUEST_TEMPLATE.md +28 -0
  173. package/src/resources/submodules/appium/CHANGELOG.md +45 -0
  174. package/src/resources/submodules/appium/CONDUCT.md +48 -0
  175. package/src/resources/submodules/appium/GOVERNANCE.md +185 -0
  176. package/src/resources/submodules/appium/IDEAS.md +16 -0
  177. package/src/resources/submodules/appium/README.md +221 -0
  178. package/src/resources/submodules/appium/ROADMAP.md +30 -0
  179. package/src/resources/submodules/appium/SPONSORS.md +3 -0
  180. package/src/resources/submodules/appium/docs/README.md +6 -0
  181. package/src/resources/submodules/appium/docs/payout.md +35 -0
  182. package/src/resources/submodules/appium/packages/appium/CHANGELOG.md +1437 -0
  183. package/src/resources/submodules/appium/packages/appium/README.md +221 -0
  184. package/src/resources/submodules/appium/packages/appium/docs/en/blog/index.md +2 -0
  185. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-appiumconf2024.md +45 -0
  186. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-browserstack-as-strategic-partner.md +46 -0
  187. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-headspin-as-development-partner.md +47 -0
  188. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-lambdatest-as-strategic-partner.md +42 -0
  189. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-sauce-labs-as-strategic-partner.md +36 -0
  190. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-sponsorship-program.md +48 -0
  191. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/appium3.md +40 -0
  192. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/hello-world.md +15 -0
  193. package/src/resources/submodules/appium/packages/appium/docs/en/contributing/index.md +150 -0
  194. package/src/resources/submodules/appium/packages/appium/docs/en/developing/build-docs.md +86 -0
  195. package/src/resources/submodules/appium/packages/appium/docs/en/developing/build-doctor-checks.md +141 -0
  196. package/src/resources/submodules/appium/packages/appium/docs/en/developing/build-drivers.md +860 -0
  197. package/src/resources/submodules/appium/packages/appium/docs/en/developing/build-plugins.md +514 -0
  198. package/src/resources/submodules/appium/packages/appium/docs/en/developing/config-system.md +451 -0
  199. package/src/resources/submodules/appium/packages/appium/docs/en/developing/index.md +18 -0
  200. package/src/resources/submodules/appium/packages/appium/docs/en/developing/sensitive.md +49 -0
  201. package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/clients.md +132 -0
  202. package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/drivers.md +207 -0
  203. package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/index.md +45 -0
  204. package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/plugins.md +138 -0
  205. package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/tools.md +83 -0
  206. package/src/resources/submodules/appium/packages/appium/docs/en/guides/branch-testing.md +57 -0
  207. package/src/resources/submodules/appium/packages/appium/docs/en/guides/caching.md +76 -0
  208. package/src/resources/submodules/appium/packages/appium/docs/en/guides/caps.md +275 -0
  209. package/src/resources/submodules/appium/packages/appium/docs/en/guides/config.md +98 -0
  210. package/src/resources/submodules/appium/packages/appium/docs/en/guides/context.md +44 -0
  211. package/src/resources/submodules/appium/packages/appium/docs/en/guides/event-timing.md +73 -0
  212. package/src/resources/submodules/appium/packages/appium/docs/en/guides/execute-methods.md +122 -0
  213. package/src/resources/submodules/appium/packages/appium/docs/en/guides/grid.md +166 -0
  214. package/src/resources/submodules/appium/packages/appium/docs/en/guides/headers.md +17 -0
  215. package/src/resources/submodules/appium/packages/appium/docs/en/guides/log-filters.md +86 -0
  216. package/src/resources/submodules/appium/packages/appium/docs/en/guides/managing-exts.md +87 -0
  217. package/src/resources/submodules/appium/packages/appium/docs/en/guides/migrating-1-to-2.md +368 -0
  218. package/src/resources/submodules/appium/packages/appium/docs/en/guides/migrating-2-to-3.md +464 -0
  219. package/src/resources/submodules/appium/packages/appium/docs/en/guides/security.md +89 -0
  220. package/src/resources/submodules/appium/packages/appium/docs/en/guides/settings.md +68 -0
  221. package/src/resources/submodules/appium/packages/appium/docs/en/guides/tls.md +42 -0
  222. package/src/resources/submodules/appium/packages/appium/docs/en/index.md +59 -0
  223. package/src/resources/submodules/appium/packages/appium/docs/en/intro/appium.md +202 -0
  224. package/src/resources/submodules/appium/packages/appium/docs/en/intro/clients.md +127 -0
  225. package/src/resources/submodules/appium/packages/appium/docs/en/intro/drivers.md +188 -0
  226. package/src/resources/submodules/appium/packages/appium/docs/en/intro/history.md +196 -0
  227. package/src/resources/submodules/appium/packages/appium/docs/en/intro/index.md +39 -0
  228. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/index.md +29 -0
  229. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/install.md +50 -0
  230. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/next-steps.md +23 -0
  231. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/requirements.md +29 -0
  232. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-dotnet.md +105 -0
  233. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-java.md +23 -0
  234. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-js.md +75 -0
  235. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-py.md +60 -0
  236. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-rb.md +83 -0
  237. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/uiauto2-driver.md +144 -0
  238. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/appium.md +394 -0
  239. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/bidi.md +70 -0
  240. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/index.md +30 -0
  241. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/jsonwp.md +214 -0
  242. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/mjsonwp.md +151 -0
  243. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/others.md +671 -0
  244. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/plugins.md +289 -0
  245. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/webdriver.md +1114 -0
  246. package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/env-vars.md +31 -0
  247. package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/extensions.md +239 -0
  248. package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/index.md +35 -0
  249. package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/server.md +76 -0
  250. package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/setup.md +76 -0
  251. package/src/resources/submodules/appium/packages/appium/docs/en/reference/index.md +25 -0
  252. package/src/resources/submodules/appium/packages/appium/docs/en/resources/index.md +28 -0
  253. package/src/resources/submodules/appium/packages/appium/docs/en/sponsors/index.md +64 -0
  254. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/index.md +2 -0
  255. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-appiumconf2024.md +45 -0
  256. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-browserstack-as-strategic-partner.md +46 -0
  257. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-headspin-as-development-partner.md +47 -0
  258. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-lambdatest-as-strategic-partner.md +41 -0
  259. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-sauce-labs-as-strategic-partner.md +36 -0
  260. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-sponsorship-program.md +48 -0
  261. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/appium3.md +40 -0
  262. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/hello-world.md +15 -0
  263. package/src/resources/submodules/appium/packages/appium/docs/ja/contributing/index.md +158 -0
  264. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/build-docs.md +86 -0
  265. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/build-doctor-checks.md +141 -0
  266. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/build-drivers.md +866 -0
  267. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/build-plugins.md +520 -0
  268. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/config-system.md +468 -0
  269. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/index.md +18 -0
  270. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/sensitive.md +49 -0
  271. package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/clients.md +143 -0
  272. package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/drivers.md +219 -0
  273. package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/index.md +45 -0
  274. package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/plugins.md +140 -0
  275. package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/tools.md +87 -0
  276. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/branch-testing.md +57 -0
  277. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/caching.md +78 -0
  278. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/caps.md +259 -0
  279. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/config.md +102 -0
  280. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/context.md +44 -0
  281. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/event-timing.md +75 -0
  282. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/execute-methods.md +142 -0
  283. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/grid.md +166 -0
  284. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/headers.md +17 -0
  285. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/log-filters.md +86 -0
  286. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/managing-exts.md +89 -0
  287. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/migrating-1-to-2.md +402 -0
  288. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/migrating-2-to-3.md +458 -0
  289. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/security.md +89 -0
  290. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/settings.md +70 -0
  291. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/tls.md +43 -0
  292. package/src/resources/submodules/appium/packages/appium/docs/ja/index.md +55 -0
  293. package/src/resources/submodules/appium/packages/appium/docs/ja/intro/appium.md +191 -0
  294. package/src/resources/submodules/appium/packages/appium/docs/ja/intro/clients.md +139 -0
  295. package/src/resources/submodules/appium/packages/appium/docs/ja/intro/drivers.md +188 -0
  296. package/src/resources/submodules/appium/packages/appium/docs/ja/intro/history.md +196 -0
  297. package/src/resources/submodules/appium/packages/appium/docs/ja/intro/index.md +39 -0
  298. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/index.md +23 -0
  299. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/install.md +47 -0
  300. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/next-steps.md +19 -0
  301. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/requirements.md +29 -0
  302. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-dotnet.md +107 -0
  303. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-java.md +23 -0
  304. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-js.md +77 -0
  305. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-py.md +63 -0
  306. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-rb.md +85 -0
  307. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/uiauto2-driver.md +148 -0
  308. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/appium.md +395 -0
  309. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/bidi.md +71 -0
  310. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/index.md +30 -0
  311. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/jsonwp.md +215 -0
  312. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/mjsonwp.md +152 -0
  313. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/others.md +672 -0
  314. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/plugins.md +291 -0
  315. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/webdriver.md +1114 -0
  316. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/env-vars.md +31 -0
  317. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/extensions.md +240 -0
  318. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/index.md +35 -0
  319. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/server.md +76 -0
  320. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/setup.md +78 -0
  321. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/index.md +25 -0
  322. package/src/resources/submodules/appium/packages/appium/docs/ja/resources/index.md +28 -0
  323. package/src/resources/submodules/appium/packages/appium/docs/ja/sponsors/index.md +61 -0
  324. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/appium-logo-horiz-white.png +0 -0
  325. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/appium-logo-horiz.png +0 -0
  326. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/appium-logo-white.png +0 -0
  327. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/appium-logo.png +0 -0
  328. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-browserstack-dark.png +0 -0
  329. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-browserstack-light.png +0 -0
  330. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-lambdatest-dark.png +0 -0
  331. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-lambdatest-light.png +0 -0
  332. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-sauce.png +0 -0
  333. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/index.md +2 -0
  334. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-appiumconf2024.md +45 -0
  335. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-browserstack-as-strategic-partner.md +46 -0
  336. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-headspin-as-development-partner.md +47 -0
  337. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-lambdatest-as-strategic-partner.md +41 -0
  338. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-sauce-labs-as-strategic-partner.md +36 -0
  339. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-sponsorship-program.md +48 -0
  340. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/appium3.md +40 -0
  341. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/hello-world.md +15 -0
  342. package/src/resources/submodules/appium/packages/appium/docs/zh/contributing/index.md +132 -0
  343. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/build-docs.md +86 -0
  344. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/build-doctor-checks.md +141 -0
  345. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/build-drivers.md +866 -0
  346. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/build-plugins.md +520 -0
  347. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/config-system.md +468 -0
  348. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/index.md +18 -0
  349. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/sensitive.md +49 -0
  350. package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/clients.md +143 -0
  351. package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/drivers.md +219 -0
  352. package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/index.md +45 -0
  353. package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/plugins.md +140 -0
  354. package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/tools.md +87 -0
  355. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/branch-testing.md +57 -0
  356. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/caching.md +78 -0
  357. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/caps.md +284 -0
  358. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/config.md +102 -0
  359. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/context.md +44 -0
  360. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/event-timing.md +75 -0
  361. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/execute-methods.md +142 -0
  362. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/grid.md +166 -0
  363. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/headers.md +17 -0
  364. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/log-filters.md +86 -0
  365. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/managing-exts.md +89 -0
  366. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/migrating-1-to-2.md +410 -0
  367. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/migrating-2-to-3.md +459 -0
  368. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/security.md +89 -0
  369. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/settings.md +70 -0
  370. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/tls.md +43 -0
  371. package/src/resources/submodules/appium/packages/appium/docs/zh/index.md +54 -0
  372. package/src/resources/submodules/appium/packages/appium/docs/zh/intro/appium.md +200 -0
  373. package/src/resources/submodules/appium/packages/appium/docs/zh/intro/clients.md +139 -0
  374. package/src/resources/submodules/appium/packages/appium/docs/zh/intro/drivers.md +188 -0
  375. package/src/resources/submodules/appium/packages/appium/docs/zh/intro/history.md +196 -0
  376. package/src/resources/submodules/appium/packages/appium/docs/zh/intro/index.md +39 -0
  377. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/index.md +23 -0
  378. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/install.md +47 -0
  379. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/next-steps.md +19 -0
  380. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/requirements.md +21 -0
  381. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-dotnet.md +99 -0
  382. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-java.md +20 -0
  383. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-js.md +62 -0
  384. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-py.md +57 -0
  385. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-rb.md +80 -0
  386. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/uiauto2-driver.md +148 -0
  387. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/appium.md +395 -0
  388. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/bidi.md +71 -0
  389. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/index.md +30 -0
  390. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/jsonwp.md +215 -0
  391. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/mjsonwp.md +152 -0
  392. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/others.md +672 -0
  393. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/plugins.md +291 -0
  394. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/webdriver.md +1114 -0
  395. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/env-vars.md +31 -0
  396. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/extensions.md +240 -0
  397. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/index.md +35 -0
  398. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/server.md +76 -0
  399. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/setup.md +78 -0
  400. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/index.md +25 -0
  401. package/src/resources/submodules/appium/packages/appium/docs/zh/resources/index.md +28 -0
  402. package/src/resources/submodules/appium/packages/appium/docs/zh/sponsors/index.md +61 -0
  403. package/src/resources/submodules/appium/packages/appium/types/manifest/README.md +30 -0
  404. package/src/resources/submodules/appium/packages/base-driver/CHANGELOG.md +1131 -0
  405. package/src/resources/submodules/appium/packages/base-driver/README.md +15 -0
  406. package/src/resources/submodules/appium/packages/base-driver/docs/mjsonwp/errors.md +82 -0
  407. package/src/resources/submodules/appium/packages/base-driver/docs/mjsonwp/protocol-methods.md +182 -0
  408. package/src/resources/submodules/appium/packages/base-driver/static/appium.png +0 -0
  409. package/src/resources/submodules/appium/packages/base-plugin/CHANGELOG.md +672 -0
  410. package/src/resources/submodules/appium/packages/base-plugin/README.md +15 -0
  411. package/src/resources/submodules/appium/packages/docutils/CHANGELOG.md +948 -0
  412. package/src/resources/submodules/appium/packages/docutils/README.md +27 -0
  413. package/src/resources/submodules/appium/packages/driver-test-support/CHANGELOG.md +717 -0
  414. package/src/resources/submodules/appium/packages/driver-test-support/README.md +112 -0
  415. package/src/resources/submodules/appium/packages/eslint-config-appium-ts/CHANGELOG.md +168 -0
  416. package/src/resources/submodules/appium/packages/eslint-config-appium-ts/README.md +33 -0
  417. package/src/resources/submodules/appium/packages/execute-driver-plugin/CHANGELOG.md +603 -0
  418. package/src/resources/submodules/appium/packages/execute-driver-plugin/README.md +42 -0
  419. package/src/resources/submodules/appium/packages/fake-driver/CHANGELOG.md +545 -0
  420. package/src/resources/submodules/appium/packages/fake-driver/README.md +7 -0
  421. package/src/resources/submodules/appium/packages/fake-driver/lib/screen.png +0 -0
  422. package/src/resources/submodules/appium/packages/fake-plugin/CHANGELOG.md +683 -0
  423. package/src/resources/submodules/appium/packages/fake-plugin/README.md +7 -0
  424. package/src/resources/submodules/appium/packages/images-plugin/CHANGELOG.md +602 -0
  425. package/src/resources/submodules/appium/packages/images-plugin/README.md +27 -0
  426. package/src/resources/submodules/appium/packages/images-plugin/docs/find-by-image.md +65 -0
  427. package/src/resources/submodules/appium/packages/images-plugin/docs/image-comparison.md +203 -0
  428. package/src/resources/submodules/appium/packages/images-plugin/test/fixtures/appstore.png +0 -0
  429. package/src/resources/submodules/appium/packages/images-plugin/test/fixtures/img1.png +0 -0
  430. package/src/resources/submodules/appium/packages/images-plugin/test/fixtures/img2.png +0 -0
  431. package/src/resources/submodules/appium/packages/images-plugin/test/fixtures/img2_part.png +0 -0
  432. package/src/resources/submodules/appium/packages/logger/CHANGELOG.md +162 -0
  433. package/src/resources/submodules/appium/packages/logger/README.md +31 -0
  434. package/src/resources/submodules/appium/packages/opencv/CHANGELOG.md +384 -0
  435. package/src/resources/submodules/appium/packages/opencv/README.md +68 -0
  436. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/appium-diagram.jpg +0 -0
  437. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/cc1.png +0 -0
  438. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/cc2.png +0 -0
  439. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/cc_rotated.png +0 -0
  440. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/findwaldo.jpg +0 -0
  441. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/number5.png +0 -0
  442. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/waldo.jpg +0 -0
  443. package/src/resources/submodules/appium/packages/plugin-test-support/CHANGELOG.md +539 -0
  444. package/src/resources/submodules/appium/packages/plugin-test-support/README.md +49 -0
  445. package/src/resources/submodules/appium/packages/relaxed-caps-plugin/CHANGELOG.md +154 -0
  446. package/src/resources/submodules/appium/packages/relaxed-caps-plugin/README.md +35 -0
  447. package/src/resources/submodules/appium/packages/schema/CHANGELOG.md +271 -0
  448. package/src/resources/submodules/appium/packages/schema/README.md +50 -0
  449. package/src/resources/submodules/appium/packages/storage-plugin/CHANGELOG.md +73 -0
  450. package/src/resources/submodules/appium/packages/storage-plugin/README.md +83 -0
  451. package/src/resources/submodules/appium/packages/strongbox/CHANGELOG.md +94 -0
  452. package/src/resources/submodules/appium/packages/strongbox/README.md +96 -0
  453. package/src/resources/submodules/appium/packages/support/CHANGELOG.md +1054 -0
  454. package/src/resources/submodules/appium/packages/support/README.md +161 -0
  455. package/src/resources/submodules/appium/packages/test-support/CHANGELOG.md +712 -0
  456. package/src/resources/submodules/appium/packages/test-support/README.md +61 -0
  457. package/src/resources/submodules/appium/packages/tsconfig/CHANGELOG.md +131 -0
  458. package/src/resources/submodules/appium/packages/tsconfig/README.md +19 -0
  459. package/src/resources/submodules/appium/packages/types/CHANGELOG.md +793 -0
  460. package/src/resources/submodules/appium/packages/types/README.md +21 -0
  461. package/src/resources/submodules/appium/packages/universal-xml-plugin/CHANGELOG.md +435 -0
  462. package/src/resources/submodules/appium/packages/universal-xml-plugin/README.md +53 -0
  463. package/src/resources/submodules/appium/renovate/README.md +63 -0
  464. package/src/resources/submodules/appium-uiautomator2-driver/CHANGELOG.md +1204 -0
  465. package/src/resources/submodules/appium-uiautomator2-driver/README.md +2077 -0
  466. package/src/resources/submodules/appium-uiautomator2-driver/docs/actions.md +72 -0
  467. package/src/resources/submodules/appium-uiautomator2-driver/docs/activity-startup.md +47 -0
  468. package/src/resources/submodules/appium-uiautomator2-driver/docs/android-appbundle.md +69 -0
  469. package/src/resources/submodules/appium-uiautomator2-driver/docs/android-mobile-gestures.md +352 -0
  470. package/src/resources/submodules/appium-uiautomator2-driver/docs/bidi.md +50 -0
  471. package/src/resources/submodules/appium-uiautomator2-driver/docs/capability-sets.md +136 -0
  472. package/src/resources/submodules/appium-uiautomator2-driver/docs/scheduled-actions.md +155 -0
  473. package/src/resources/submodules/appium-uiautomator2-driver/docs/uiautomator-uiselector.md +51 -0
  474. package/src/resources/submodules/appium-uiautomator2-driver/docs/unlock/main.md +95 -0
  475. package/src/resources/submodules/appium-uiautomator2-driver/docs/unlock/screen1.png +0 -0
  476. package/src/resources/submodules/appium-uiautomator2-driver/docs/unlock/screen2.png +0 -0
  477. package/src/resources/submodules/appium-uiautomator2-driver/test/functional/assets/checkered-squares.png +0 -0
  478. package/src/resources/submodules/appium-uiautomator2-driver/test/functional/assets/start-button.png +0 -0
  479. package/src/resources/submodules/appium-uiautomator2-driver/test/functional/assets/stop-button.png +0 -0
  480. package/src/resources/submodules/appium-xcuitest-driver/.github/ISSUE_TEMPLATE.md +4 -0
  481. package/src/resources/submodules/appium-xcuitest-driver/CHANGELOG.md +2594 -0
  482. package/src/resources/submodules/appium-xcuitest-driver/README.md +55 -0
  483. package/src/resources/submodules/appium-xcuitest-driver/docs/assets/images/appium-logo-white.png +0 -0
  484. package/src/resources/submodules/appium-xcuitest-driver/docs/assets/images/appium-logo.png +0 -0
  485. package/src/resources/submodules/appium-xcuitest-driver/docs/assets/images/appium-plus-xctest.png +0 -0
  486. package/src/resources/submodules/appium-xcuitest-driver/docs/contributing.md +45 -0
  487. package/src/resources/submodules/appium-xcuitest-driver/docs/endpoints-wda.md +61 -0
  488. package/src/resources/submodules/appium-xcuitest-driver/docs/endpoints.md +98 -0
  489. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/assets/images/ios-xctest-file-movement/keynote.png +0 -0
  490. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/assets/images/ios-xctest-file-movement/on_my_iphone.png +0 -0
  491. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/assets/images/ios-xctest-file-movement/top_files.png +0 -0
  492. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/attach-to-running-wda.md +43 -0
  493. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/audio-capture.md +78 -0
  494. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/capability-sets.md +169 -0
  495. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/ci-setup.md +47 -0
  496. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/clipboard.md +47 -0
  497. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/elements-lookup-troubleshooting.md +158 -0
  498. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/file-transfer.md +147 -0
  499. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/gestures.md +52 -0
  500. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/hybrid.md +137 -0
  501. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/input-events.md +67 -0
  502. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/install-certificate.md +19 -0
  503. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/multiple-xcode-versions.md +37 -0
  504. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/parallel-tests.md +39 -0
  505. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/run-prebuilt-wda.md +135 -0
  506. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/run-preinstalled-wda.md +178 -0
  507. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/touch-id.md +33 -0
  508. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/troubleshooting.md +191 -0
  509. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/tvos.md +114 -0
  510. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/wda-custom-server.md +283 -0
  511. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/wda-slowness.md +231 -0
  512. package/src/resources/submodules/appium-xcuitest-driver/docs/index.md +36 -0
  513. package/src/resources/submodules/appium-xcuitest-driver/docs/installation/index.md +137 -0
  514. package/src/resources/submodules/appium-xcuitest-driver/docs/overview.md +19 -0
  515. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/check-prov-prof.png +0 -0
  516. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/create-new-project.png +0 -0
  517. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/create-single-page.png +0 -0
  518. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/no-prov-prof.png +0 -0
  519. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/project-prov-prof.png +0 -0
  520. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/set-up-bundle.png +0 -0
  521. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/untrusted-dev.png +0 -0
  522. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/xcode-bundle-id.png +0 -0
  523. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/xcode-config.png +0 -0
  524. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/xcode-facebook-fail.png +0 -0
  525. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/xcode-facebook-succeed.png +0 -0
  526. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/index.md +51 -0
  527. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/prov-profile-basic-auto.md +49 -0
  528. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/prov-profile-basic-manual.md +40 -0
  529. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/prov-profile-full-manual.md +50 -0
  530. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/prov-profile-generic-manual.md +49 -0
  531. package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/real-device-config.md +100 -0
  532. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/assets/images/useXctestrunFile.png +0 -0
  533. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/bidi.md +75 -0
  534. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/capabilities.md +165 -0
  535. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/commands.md +490 -0
  536. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/element-attributes.md +27 -0
  537. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/execute-methods.md +2206 -0
  538. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/ios-predicate.md +196 -0
  539. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/locator-strategies.md +19 -0
  540. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/scripts.md +29 -0
  541. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/security-flags.md +22 -0
  542. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/server-args.md +16 -0
  543. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/settings.md +49 -0
  544. package/src/resources/submodules/appium-xcuitest-driver/test/assets/TestApp-iphonesimulator.app/Default-568h@2x.png +0 -0
  545. package/src/resources/submodules/appium-xcuitest-driver/test/assets/test.png +0 -0
  546. package/src/schema.ts +5 -0
  547. package/src/scripts/simple-index-documentation.ts +93 -0
  548. package/src/scripts/simple-query-documentation.ts +61 -0
  549. package/src/server.ts +40 -0
  550. package/src/tests/README.md +83 -0
  551. package/src/tests/__mocks__/@appium/support.ts +31 -0
  552. package/src/tests/generate-all-locators.test.ts +179 -0
  553. package/src/tests/test-setup-wda.ts +247 -0
  554. package/src/tools/README.md +171 -0
  555. package/src/tools/answer-appium.ts +75 -0
  556. package/src/tools/boot-simulator.ts +87 -0
  557. package/src/tools/create-session.ts +270 -0
  558. package/src/tools/delete-session.ts +46 -0
  559. package/src/tools/documentation/index.ts +97 -0
  560. package/src/tools/documentation/reasoning-rag.ts +434 -0
  561. package/src/tools/documentation/sentence-transformers-embeddings.ts +142 -0
  562. package/src/tools/documentation/simple-pdf-indexer.ts +509 -0
  563. package/src/tools/documentation/uploads/documents.json +1 -0
  564. package/src/tools/generate-tests.ts +50 -0
  565. package/src/tools/index.ts +135 -0
  566. package/src/tools/install-wda.ts +277 -0
  567. package/src/tools/interactions/activate-app.ts +46 -0
  568. package/src/tools/interactions/click.ts +47 -0
  569. package/src/tools/interactions/double-tap.ts +87 -0
  570. package/src/tools/interactions/find.ts +58 -0
  571. package/src/tools/interactions/get-page-source.ts +52 -0
  572. package/src/tools/interactions/get-text.ts +47 -0
  573. package/src/tools/interactions/install-app.ts +45 -0
  574. package/src/tools/interactions/list-apps.ts +65 -0
  575. package/src/tools/interactions/screenshot.ts +56 -0
  576. package/src/tools/interactions/set-value.ts +48 -0
  577. package/src/tools/interactions/terminate-app.ts +47 -0
  578. package/src/tools/interactions/uninstall-app.ts +47 -0
  579. package/src/tools/locators.ts +83 -0
  580. package/src/tools/scroll-to-element.ts +188 -0
  581. package/src/tools/scroll.ts +97 -0
  582. package/src/tools/select-device.ts +298 -0
  583. package/src/tools/select-platform.ts +243 -0
  584. package/src/tools/session-store.ts +72 -0
  585. package/src/tools/setup-wda.ts +218 -0
  586. package/src/types/appium-ios-device.d.ts +8 -0
  587. package/src/types/appium-xcuitest-driver.d.ts +5 -0
  588. package/tsconfig.json +23 -0
  589. package/index.js +0 -0
@@ -0,0 +1,7 @@
1
+ // Export all resources
2
+ import javaTemplatesResource from './java/template.js';
3
+
4
+ export default function registerResources(server: any) {
5
+ javaTemplatesResource(server);
6
+ console.log('All resources registered');
7
+ }
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Resource for Java template files
3
+ */
4
+ export default function javaTemplatesResource(server: any) {
5
+ server.addResource({
6
+ uri: 'generate://code-with-locators',
7
+ name: 'Generate Code With Locators',
8
+ description: `Generate code for the current page with locators which was retrieved from generate_locators tool.
9
+ The code should be generated in the same priorty order as the locators were generated.
10
+ For iOS the priority order is:
11
+ 'id',
12
+ 'accessibility id',
13
+ '-ios predicate string',
14
+ '-ios class chain',
15
+ 'xpath',
16
+ 'class name',
17
+ For Android the priority order is:
18
+ 'id',
19
+ 'accessibility id',
20
+ 'xpath',
21
+ '-android uiautomator',
22
+ 'class name',
23
+ which follows the page factory pattern. Dont not strictly create test cases, just generate the code for locators.`,
24
+ mimeType: 'text/plain',
25
+ async load() {
26
+ // Return all content directly without templates object
27
+ return {
28
+ message:
29
+ 'Java templates for mobile automation, use this and generate code for the current page',
30
+ instruction:
31
+ 'Use these templates to generate code for the current page',
32
+ text: `
33
+ package templates;
34
+
35
+ import io.appium.java_client.AppiumDriver;
36
+ import io.appium.java_client.pagefactory.AndroidFindBy;
37
+ import io.appium.java_client.pagefactory.AppiumFieldDecorator;
38
+ import io.appium.java_client.pagefactory.iOSXCUITFindBy;
39
+ import org.openqa.selenium.WebElement;
40
+ import org.openqa.selenium.support.PageFactory;
41
+
42
+ import java.time.Duration;
43
+
44
+ /**
45
+ * This class demonstrates using PageFactory with Appium for cross-platform
46
+ * mobile app locators using @AndroidFindBy and @iOSXCUITFindBy annotations.
47
+ * Example:
48
+ */
49
+ public class locators {
50
+
51
+ // ========== LOGIN SCREEN ELEMENTS ==========
52
+
53
+ /**
54
+ * Username input field
55
+ * - Android: accessibility id = "username_input"
56
+ * - iOS: accessibility id = "username_input"
57
+ */
58
+ @AndroidFindBy(accessibility = "username_input")
59
+ @iOSXCUITFindBy(accessibility = "username_input")
60
+
61
+
62
+ public WebElement usernameField;
63
+
64
+ @iOSXCUITFindBy(iOSNsPredicate = "name = 'IntegerB'")
65
+ private WebElement textField2;
66
+
67
+ @iOSXCUITFindBy(iOSClassChain = "XCUIElementTypeWindow/*/XCUIElementTypeTextField[2]")
68
+ private WebElement secondTextField;
69
+
70
+ /**
71
+ * Constructor that initializes the PageFactory
72
+ *
73
+ * @param driver AppiumDriver instance
74
+ */
75
+ public locators(AppiumDriver driver) {
76
+ PageFactory.initElements(new AppiumFieldDecorator(driver, Duration.ofSeconds(10)), this);
77
+ }
78
+ }
79
+ `,
80
+ };
81
+ },
82
+ });
83
+ }
@@ -0,0 +1,28 @@
1
+ ## Proposed changes
2
+
3
+ Describe the big picture of your changes here to communicate to the maintainers why we should accept this pull request. If it fixes a bug or resolves a feature request, be sure to link to that issue.
4
+
5
+ ## Types of changes
6
+
7
+ What types of changes does your code introduce to Appium?
8
+ _Put an `x` in the boxes that apply_
9
+
10
+ - [ ] Bugfix (non-breaking change which fixes an issue)
11
+ - [ ] New feature (non-breaking change which adds functionality)
12
+ - [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
13
+ - [ ] Documentation Update (if none of the other choices apply)
14
+
15
+ ## Checklist
16
+
17
+ _Put an `x` in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code._
18
+
19
+ - [ ] I have read the [Contributing Guide](https://appium.io/docs/en/latest/contributing/)
20
+ - [ ] I have signed the CLA
21
+ - [ ] Lint and unit tests pass locally with my changes
22
+ - [ ] I have added tests that prove my fix is effective or that my feature works
23
+ - [ ] I have added the necessary documentation (if appropriate)
24
+ - [ ] Any dependent changes have been merged and published in downstream modules
25
+
26
+ ## Further comments
27
+
28
+ If this is a relatively large or complex change, kick off the discussion by explaining why you chose the solution you did and what alternatives you considered, etc...
@@ -0,0 +1,45 @@
1
+ # Aggregate Changelog
2
+
3
+ The Appium monorepo contains many different modules and supports a variety of drivers, plugins and clients,
4
+ most of which have their own changelogs. Links to these individual changelogs are aggregated here.
5
+
6
+ ## Main Appium Module
7
+
8
+ * ### [Appium Changelog](packages/appium/CHANGELOG.md)
9
+ * [Appium 1.x Changelog](https://github.com/appium/appium/blob/1.x/CHANGELOG.md)
10
+
11
+ ## Drivers / Clients
12
+ Refer to the [Appium Ecosystem](https://appium.io/docs/en/latest/ecosystem/) page for links
13
+ to driver/client documentation
14
+
15
+ ## Plugins
16
+ * [execute-driver-plugin](packages/execute-driver-plugin/CHANGELOG.md)
17
+ * [images-plugin](packages/images-plugin/CHANGELOG.md)
18
+ * [relaxed-caps-plugin](packages/relaxed-caps-plugin/CHANGELOG.md)
19
+ * [storage-plugin](packages/storage-plugin/CHANGELOG.md)
20
+ * [universal-xml-plugin](packages/universal-xml-plugin/CHANGELOG.md)
21
+
22
+ ## Other Modules
23
+ * [base-driver](packages/base-driver/CHANGELOG.md)
24
+ * [base-plugin](packages/base-plugin/CHANGELOG.md)
25
+ * [docutils](packages/docutils/CHANGELOG.md)
26
+ * [driver-test-support](packages/driver-test-support/CHANGELOG.md)
27
+ * [eslint-config-appium-ts](packages/eslint-config-appium-ts/CHANGELOG.md)
28
+ * [fake-driver](packages/fake-driver/CHANGELOG.md)
29
+ * [fake-plugin](packages/fake-plugin/CHANGELOG.md)
30
+ * [logger](packages/logger/CHANGELOG.md)
31
+ * [opencv](packages/opencv/CHANGELOG.md)
32
+ * [plugin-test-support](packages/plugin-test-support/CHANGELOG.md)
33
+ * [schema](packages/schema/CHANGELOG.md)
34
+ * [strongbox](packages/strongbox/CHANGELOG.md)
35
+ * [support](packages/support/CHANGELOG.md)
36
+ * [test-support](packages/test-support/CHANGELOG.md)
37
+ * [tsconfig](packages/tsconfig/CHANGELOG.md)
38
+ * [types](packages/types/CHANGELOG.md)
39
+
40
+ ## Removed Modules
41
+ The changelog links used for these modules lead to the last version of their changelog file.
42
+ * [doctor](https://github.com/appium/appium/blob/8daf5e123ac14c8325acf504fb33eb28e1a3dd78/packages/doctor/CHANGELOG.md) ([removal PR](https://github.com/appium/appium/pull/20805))
43
+ * [eslint-config-appium](https://github.com/appium/appium/blob/4b3a8c2197a587ec5a2606b662e4e7667a7852cb/packages/eslint-config-appium/CHANGELOG.md) ([removal PR](https://github.com/appium/appium/pull/20856))
44
+ * [gulp-plugins](https://github.com/appium/appium/blob/0823f0b60e40395cd1dc3b72cfa3c0092bc81302/packages/gulp-plugins/CHANGELOG.md) ([removal PR](https://github.com/appium/appium/pull/17943))
45
+ * [typedoc-plugin-appium](https://github.com/appium/appium/blob/d6204b6902074210943d7bbbf72d139b9b170a20/packages/typedoc-plugin-appium/CHANGELOG.md) ([removal PR](https://github.com/appium/appium/pull/19465))
@@ -0,0 +1,48 @@
1
+ ## Code of Conduct
2
+
3
+ ### What is this code of conduct for?
4
+
5
+ Appium is a piece of technology, but **the core of the Appium community is the people in it**. As such, we are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, gender identity and expression, sexual orientation, ability, physical appearance, body size, race, age, socioeconomic status, religion (or lack thereof), or other marginalized aspect of community members. We expect all members of the Appium community to abide by this Code of Conduct whenever interacting in Appium venues (pull requests, GitHub issues, 1-1 or group chat, meetups, conferences, etc...)
6
+
7
+ ### Examples of inappropriate behavior
8
+
9
+ Because we come from a variety of backgrounds, we don't want to assume that everyone has the same assumptions about what is and isn't appropriate. Here are some examples of inappropriate behavior that are incompatible with our community's ethos:
10
+
11
+ * Spamming, trolling, intentionally disrupting conversations, or irrelevant solicitation or advertisement
12
+ * Making demeaning or discriminatory comments
13
+ * Making negative assumptions about someone's background, abilities, or intentions
14
+ * Harassing or stalking individuals (online or in person)
15
+ * Giving someone unwelcome sexual attention or making unwelcome physical contact (in the case of an IRL event)
16
+ * Sharing sexual images or using sexually explicit language
17
+
18
+ In general: treat others how you would like to be treated, were you in their place. Don't be a jerk. _Do_ ask questions. _Do_ keep conflicts productively focused on technical issues. _Do_ think before you speak; remember that what is perceived as a funny witticism in your group of friends might be hurtful or reinforce hurtful stereotypes in the context of our diverse online community. _Do_ remember that we are all people, not robots, and all equally deserving of sensitivity and respect. (If and when robots join our community, let's treat them with respect too!)
19
+
20
+
21
+ ### What will organizers do about inappropriate behavior?
22
+
23
+ If we notice you doing or saying something inappropriate, an organizer will explain why it's inappropriate and ask you to stop. We won't demonize or vilify you. But please do stop the inappropriate behavior so we can get back to writing and discussing code in a safe environment. If you have philosophical disagreements about what's actually inappropriate, please take them to a separate public or private conversation with an Appium maintainer so we don't turn pull requests into an ethics debate.
24
+
25
+ If you keep doing unacceptable things, we'll likely ban you, report you to GitHub, or take other appropriate action.
26
+
27
+ ### What if I see or am subject to what feels like inappropriate behavior?
28
+
29
+ Let us know! Please notify a community organizer as soon as possible. Full contact information is listed in the [Contact Info](#contact-info) section of this document. All communications will be kept strictly confidential, unless otherwise required by law. No issue will be considered too inconsequential or unimportant for us to have a conversation about.
30
+
31
+ ### Contact Info
32
+
33
+ If you need to report an incident, please contact any of the following organizers directly:
34
+
35
+ * Isaac Murchie [email](mailto:isaac@saucelabs.com) [twitter](https://twitter.com/imurchie)
36
+ * Jonathan Lipps [email](mailto:jlipps@saucelabs.com) [twitter](https://twitter.com/jlipps)
37
+
38
+ ### Credit, License, and Attribution
39
+
40
+ This Code of Conduct is distributed under a [Creative Commons Attribution-ShareAlike license](http://creativecommons.org/licenses/by-sa/3.0/).
41
+
42
+ It's inspired among other things by:
43
+ * [Citizen Code of Conduct](http://citizencodeofconduct.org/)
44
+ * [npmjs](https://www.npmjs.com/policies/conduct)
45
+ * [Geek Feminism](http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Policy)
46
+ * [Ashe Dryden](http://www.ashedryden.com/blog/codes-of-conduct-101-faq)
47
+ * [Model View Culture](https://modelviewculture.com/issues/events)
48
+ * [Open Source & Feelings](http://osfeels.com/conduct).
@@ -0,0 +1,185 @@
1
+ # Appium Project Governance
2
+
3
+ The Appium Project wants as much as possible to operate using procedures that
4
+ are fair, open, inviting, and ultimately good for the community. For that
5
+ reason we find it valuable to codify some of the ways that the Project goes
6
+ about its day-to-day business. We want to make sure that no matter who you are,
7
+ you have the opportunity to contribute to Appium. We want to make sure that no
8
+ one corporation can exert undue influence on the community or hold the Project
9
+ hostage. And likewise we want to make sure that corporations which benefit from
10
+ Appium are also incentivized to give back.
11
+
12
+ ### The Technical Committee
13
+
14
+ The project is officially led by a Technical Committee (TC), currently
15
+ consisting of:
16
+
17
+ * [@jlipps](https://github.com/jlipps)
18
+ * [@mykola-mokhnach](https://github.com/mykola-mokhnach)
19
+ * [@eglitise](https://github.com/eglitise)
20
+ * [@KazuCocoa](https://github.com/KazuCocoa)
21
+
22
+ They all represent different companies and different types of contribution to
23
+ the Appium Project. The TC is responsible for high-level decisions (like
24
+ establishing a feature roadmap, accepting sponsorship, organizing conferences,
25
+ etc...), adjudicating conflicts between members of the community, and making
26
+ changes to the project's governance processes.
27
+
28
+ * Membership in the TC is granted by unanimous vote of current TC members.
29
+ * TC members can step down at any time.
30
+ * No more than 1/3 (or 2, whichever is higher) of TC members may belong to the same company.
31
+ * Changes to project governance require unanimous vote of the TC.
32
+
33
+ ### Project Committers
34
+
35
+ Most of the project maintenance is handled by committers, community members who
36
+ have been granted commit access to the Appium organization on GitHub. The
37
+ responsibilities of committers include: reviewing and merging pull requests,
38
+ walking through changes with developers, weighing in on architectural issues,
39
+ and so on.
40
+
41
+ * Any two TC members can decide to make someone a project committer, providing that person has shown an appropriate understanding of the Appium codebase through prior contributions of code.
42
+ * In general any committer can review and merge a PR. In general committers should only merge code they are qualified to review, which might entail pinging another committer who has greater ownership over a specific code area.
43
+ * Debates between committers about whether code should be merged should happen in GitHub pull requests.
44
+ * Proposals for large changes to the project's code (architectural changes, etc...) should be brought forward as a GitHub issue (with the label `Proposal`), and all committers should be pinged so they can weigh in on the discussion if desired. Substantial changes, whether in proposal stage or in pull request stage should be signed off on by 1 TC member and at least 2 other committers. To assist in the discussion, a small proof of concept can be undertaken on a subset of the Appium ecosystem and raised as a strawman PR, to give flesh to the proposal and make discussion more helpfully concrete.
45
+ * In general disputes about code should be resolved by discussion, not votes. If there is substantial disagreement, aim for consensus. If that is not possible, committers can bring the dispute to the TC for a vote, with the outcome determined by a majority.
46
+ * Any committer can decide to close a PR or issue if they determine the change doesn't suit the project.
47
+ * Appium has a large ecosystem of repositories. Some are 'core' in the sense of being central subpackages with a lot of traffic like `appium/appium` or `appium/appium-ios-driver`. Others are 'peripheral' in the sense of receiving few changes, being maintained by 1 person or no one, etc..., like `appium/ruby_lib` or `appium/appium_thor` For 'core' repos, committers should not merge their own code straightaway. Like all contributors they should open a PR and get a +1 from another committer. For 'peripheral' repos for which they are the sole maintainer or for which they have a good understanding, it is obtuse to insist on another contributor's +1 and this rule should be relaxed in that case. In sum: use good judgment and don't ram code through without a review when you can help it.
48
+
49
+ The current committers are (along with their primary areas(s) of ownership or maintenance):
50
+
51
+ * [@dan-maor](https://github.com/Dan-Maor) - XCUITest driver and iOS internals
52
+ * [@dor-bl](https://github.com/Dor-bl) - DotNet client
53
+ * [@eglitise](https://github.com/eglitise) - Appium server, Inspector
54
+ * [@jlipps](https://github.com/jlipps) - Appium server, Inspector
55
+ * [@kazucocoa](https://github.com/KazuCocoa) - all Appium projects
56
+ * [@laolubenson](https://github.com/laolubenson) - DotNet client
57
+ * [@mwakizaka](https://github.com/mwakizaka) - XCUITest driver
58
+ * [@mykola-mokhnach](https://github.com/mykola-mokhnach) - all Appium projects
59
+ * [@rerorero](https://github.com/rerorero) - XCUITest/UIA2 driver
60
+ * [@saikrishna321](https://github.com/saikrishna321) - Java client
61
+ * [@srinivasantarget](https://github.com/SrinivasanTarget) - Java client
62
+ * [@tomriddly](https://github.com/tomriddly) - appium-ios-device
63
+ * [@valfirst](https://github.com/valfirst) - Java client
64
+
65
+ See [Emeritus Contributors](#emeritus-contributors) below for a list of people who formerly made
66
+ significant contributions to the project but are no longer actively committing.
67
+
68
+ ### Other Contributors
69
+
70
+ Other, less formal, kinds of contribution are outlined in our [Contributing Guide](https://appium.io/docs/en/latest/contributing/).
71
+ We also very much appreciate those who spend their valuable time assisting with the [Appium forums](https://discuss.appium.io).
72
+ Current high-level forum contributors and mods include:
73
+
74
+ * [aleksei](https://discuss.appium.io/u/aleksei/summary)
75
+ * [wreed](https://discuss.appium.io/u/wreed/summary)
76
+
77
+ ### Sponsorship
78
+
79
+ The Appium project welcomes the sponsorship of individuals and organizations. There are two types
80
+ of sponsorship: those related to contributions of Appium maintenance and leadership, and those
81
+ related to contributions of funds. Both are extremely important to the ongoing health of the
82
+ project. Financial sponsorship is mediated through our [OpenCollective page](https://opencollective.com/appium).
83
+ Sponsorship tiers and benefits are described below:
84
+
85
+ - **Development Partners**: The primary need of any open source project is for sustained maintenance and contributorship. Companies that officially sponsor such development with dedicated employee time are recognized as Development Partners, and receive the same benefits as the highest tier of financial sponsorship. To be considered a Development Partner, a company must devote at least 50% of a full-time employee's time to Appium maintenance. This means that the contributors designated by the company must have been appointed as "committers" in good standing of one or more core Appium repositories. (See above for a description of how to become a committer).
86
+ - **Strategic Partners**: Representing the highest tier of ongoing financial support for the project, Strategic Partners are what make our compensation scheme for contributors possible, and we thank them for their significant investment into the project! More than financial contribution, Strategic Partners help elevate Appium's position in the industry through marketing and evangelism efforts, and partner with the Appium team to help make Appium better. Along with the Development Partners, Strategic Partners have their logos displayed prominently on our website, and have the ability to link to their Appium-related products in a few relevant places in our documentation.
87
+ - **Gold, Silver, and Bronze Sponsors**: these sponsorship levels correspond to different amounts of recurring financial contribution that generously support our contributor compensation scheme. Sponsors at these levels also have the opportunity to display their logo on our website.
88
+ - **Backers**: individuals who benefit from the Appium project can also donate on a one-time or recurring basis, at any amount, and will be recognized as Backers for their contribution!
89
+
90
+ To become a sponsor at one of these levels, follow the process indicated at the [OpenCollective
91
+ page](https://opencollective.com/appium).
92
+
93
+ ### Compensation Scheme
94
+
95
+ With funds received through sponsorship, the Appium project wants to incentivize contributions of
96
+ code, documentation efforts, maintenance, and project leadership. We have developed a scheme
97
+ (inspired by one developed at the [WebdriverIO](https://github.com/webdriverio/webdriverio)
98
+ project) for disbursing funds on a monthly basis to those who contribute to the project, as well as
99
+ some other "upstream" open source projects.
100
+
101
+ Each month, 15% of sponsorship funds received will be donated to upstream projects, based on the
102
+ discretion of the current TC. At this point, no attempt will be made to formalize quantitative
103
+ notions of relevance. If you manage a project upstream of Appium and would like to be considered as
104
+ part of this donation group, give us a shout!
105
+
106
+ Of the remaining 85% of sponsorship funds, 70% (roughly 60% of the original total) will go to
107
+ project Committers (i.e., those in a role of maintenance), and 30% (roughly 25% of the original
108
+ total) will go to Contributors (i.e., those making one-off or periodic contributions). The way that
109
+ Committers and Contributors are paid for their efforts differs.
110
+
111
+ For Committers, each Committer will keep a monthly time sheet of hours contributed to the project.
112
+ At the end of each month, the hours tracked from all Committers will be totalled, and then the
113
+ Committer-allocated funds will be disbursed (via OpenCollective) on a pro rata basis. Within this
114
+ scheme, Committers agree not to submit hours worked as part of their employment with a Development
115
+ Partner (since this is part of the "sponsorship" contribution of the Development Partner).
116
+
117
+ For Contributors, when they make contributions which are successfully merged into the project,
118
+ a Committer can discretionarily assign a "value tier" to the contribution. The "value tiers" and
119
+ corresponding payouts are as follows:
120
+
121
+ - XS: a trivial change (e.g. a typo change or applying of an automatically suggested security
122
+ patch). \$0.
123
+ - S: a small but useful change. \$25.
124
+ - M: a medium-small or slightly more complex change. \$50.
125
+ - L: a very valuable or sizable change. \$100.
126
+ - XL: a massive change or set of changes. \$500.
127
+
128
+ At the end of each month, Committers will total up the number of changes receiving potential
129
+ payout. If the total amount of funds allocated for Contributor payout exceeds the total amount to
130
+ be paid, then each Contributor will receive an OpenCollective link to claim their funds. If not
131
+ enough funds exist to cover all payouts, then the payout amounts will be scaled down in a pro rata
132
+ fashion.
133
+
134
+ The scope for Committer or Contributor payouts is work completed within any "core" Appium
135
+ repository (i.e., those officially maintained by the Appium team, residing within the Appium
136
+ organization on GitHub, under `https://github.com/appium`).
137
+
138
+ Some disclaimers: Payments will happen exclusively via OpenCollective. Recipients of funds are
139
+ responsible for maintaining their OpenCollective account in a fashion where funds can be disbursed,
140
+ and are responsible for any and all tax, financial, or legal consequences of receiving money in
141
+ this way. Receipt of funds from this scheme holds the Appium project and the OpenJS Foundation free
142
+ of any claim or obligation. While this document exists to clearly and publicly lay out the terms
143
+ under which payments are generally made, the TC retains the right to grant or withhold funding on
144
+ a discretionary of special basis. Basically, this scheme is run at the project's discretion, and is
145
+ not a public service. Making contributions to the project under this scheme does not obligate the
146
+ project to pay you for such work, or otherwise compensate you in any way.
147
+
148
+ ### Raising Issues Related to Governance
149
+
150
+ This governance model necessarily leaves many situations unspecified. If
151
+ questions arise as to how a given situation should proceed according to the
152
+ overall goals of the project, the best thing to do is to open a GitHub issue
153
+ and ping the TC members.
154
+
155
+ ### Emeritus Contributors
156
+
157
+ * [@aluedeke](https://github.com/aluedeke)
158
+ * [@astro03](https://github.com/Astro03)
159
+ * [@bayandin](https://github.com/bayandin)
160
+ * [@boneskull](https://github.com/boneskull)
161
+ * [@bootstraponline](https://github.com/bootstraponline)
162
+ * [@dandoveralba](https://github.com/dandoveralba)
163
+ * [@ddkjin](https://github.com/ddkjin)
164
+ * [@drpy](https://github.com/drpy)
165
+ * [@dylanLacey](https://github.com/DylanLacey)
166
+ * [@filmaj](https://github.com/filmaj)
167
+ * [@gempesaw](https://github.com/gempesaw)
168
+ * [@hugs](https://github.com/hugs)
169
+ * [@imurchie](https://github.com/imurchie)
170
+ * [@jamieEdge](https://github.com/JamieEdge)
171
+ * [@jdeff](https://github.com/jdeff)
172
+ * [@jonahss](https://github.com/Jonahss)
173
+ * [@maudineormsby](https://github.com/maudineormsby)
174
+ * [@moizjv](https://github.com/moizjv)
175
+ * [@peepa](https://github.com/peepa)
176
+ * [@penguinho](https://github.com/penguinho)
177
+ * [@sbonebrake](https://github.com/sbonebrake)
178
+ * [@scottdixon](https://github.com/scottdixon)
179
+ * [@sebv](https://github.com/sebv)
180
+ * [@sravanmedarapu](https://github.com/sravanmedarapu)
181
+ * [@stuartbrussell-intuit](https://github.com/stuartbrussell-intuit)
182
+ * [@tikhomirovSergey](https://github.com/TikhomirovSergey)
183
+ * [@titusfortner](https://github.com/titusfortner)
184
+ * [@vgrigoruk](https://github.com/vgrigoruk)
185
+ * [@vmaxim](https://github.com/vmaxim)
@@ -0,0 +1,16 @@
1
+ Google Summer of Code Ideas
2
+ =====
3
+
4
+ Appium is excited to participate as a [Google Summer of Code](https://summerofcode.withgoogle.com/) sponsor project. Here's a fun list of ideas that a Summer of Code student participant can use as a foundation for thinking about what to contribute to Appium!
5
+
6
+ |Idea|Description|
7
+ |----|-----------|
8
+ |Apple tvOS Support|Our users have been asking for an Appium driver for Apple tvOS apps. Is this possible? We're not entirely sure! Why not be awesome and build it?|
9
+ |Test App revamp|Appium uses a number of poorly-designed mobile applications in its own testing. We have to use a variety of apps because we need to test that Appium can automate all the various controls and platform features that mobile vendors provide. Really what we need is one cross-platform app (or one app per platform) that exhibit all and only the features we need to test. This would be a fun project to build some mobile apps used for testing and also demoing Appium at events and in training videos, etc...|
10
+ |Tooling and Performance|We haven't instrumented Appium with very many performance metrics, and don't really know if we're missing some low-hanging fruit in terms of performance. Maybe you can help us do that?|
11
+ |Babel|We have a lot of repos, and they're all on a really old version of Babel. They all need to stay in sync. How can we make this situation better, and upgrade to the latest and greatest?|
12
+ |Unity3d Driver|Historically, Appium hasn't been great at automating games. We don't have any particular support for the frameworks used to create games. Unity is a popular one, for example. What if we could write an Appium driver that talked to an embedded process in a test version of a Unity game, that allowed us to find and interact with 3d elements? It would be amazing! You can also be amazing and lead Appium into this new world.|
13
+ |Testing the Internet of Things|Appium's architecture makes it dead simple to integrate drivers for automating new technologies. What about _really_ new technologies like IoT devices? Help to redefine the semantics of the WebDriver protocol for use with IoT, and build a driver for an IoT device to prove it out.|
14
+ |Driver for X|Have an idea of something else Appium could automate that it doesn't already? Build a driver for it! This would involve some awesome Node.js code, plus whatever else is needed to integrate with the platform you have in mind.|
15
+
16
+ Hopefully this gives you some ideas of fun projects that would be substantial and long-lasting contributions to the Appium community.
@@ -0,0 +1,221 @@
1
+ <p align="center">
2
+ <a href="https://appium.io/">
3
+ <img alt="Appium" src="https://raw.githubusercontent.com/appium/appium/master/packages/appium/docs/overrides/assets/images/appium-logo-horiz.png" width="500">
4
+ </a>
5
+ </p>
6
+ <p align="center">
7
+ Cross-platform test automation for native, hybrid, mobile web and desktop apps.
8
+ </p>
9
+
10
+ <div align="center">
11
+
12
+ [![NPM version](https://badge.fury.io/js/appium.svg)](https://npmjs.org/package/appium)
13
+ [![Monthly Downloads](https://img.shields.io/npm/dm/appium.svg)](https://npmjs.org/package/appium)
14
+ [![FOSSA Status](https://app.fossa.io/api/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fappium%2Fappium.svg?type=shield)](https://app.fossa.io/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fappium%2Fappium?ref=badge_shield)
15
+ [![StandWithUkraine](https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/badges/StandWithUkraine.svg)](https://github.com/vshymanskyy/StandWithUkraine/)
16
+ [![CeasefireInGaza](https://img.shields.io/badge/Ceasefire_Now-%F0%9F%87%B5%F0%9F%87%B8-red?style=flat)](https://www.unrwa.org/)
17
+
18
+ </div>
19
+
20
+ ***
21
+
22
+ <p align="center"><b>
23
+ <a href="https://appium.io">Documentation</a> |
24
+ <a href="https://appium.io/docs/en/latest/intro/">Get Started</a> |
25
+ <a href="https://appium.io/docs/en/latest/ecosystem/">Ecosystem</a> |
26
+ <a href="https://github.com/appium/appium/blob/master/packages/appium/CHANGELOG.md">Changelog</a> |
27
+ <a href="https://appium.io/docs/en/latest/contributing/">Contributing Guide</a> |
28
+ <a href="https://discuss.appium.io">Discussion Forum</a>
29
+ </b></p>
30
+
31
+ ***
32
+
33
+ Appium is an open-source automation framework that provides
34
+ [WebDriver](https://www.w3.org/TR/webdriver/)-based automation possibilities for a wide range of
35
+ different mobile, desktop and IoT platforms. Appium is modular and extensible, and supports multiple
36
+ programming languages, which means there is an entire ecosystem of related software:
37
+ * [__Drivers__](#drivers) add support for automating specific platforms
38
+ * [__Clients__](#clients) allow writing Appium tests in your programming language of choice
39
+ * [__Plugins__](#plugins) allow to further extend Appium functionality
40
+
41
+ ## Upgrading From Older Versions
42
+
43
+ The Appium team only provides support for the most recent version of Appium. If you wish to upgrade from
44
+ an older major Appium version, please refer to the migration guides:
45
+
46
+ * [Appium v2 to v3](https://appium.io/docs/en/latest/guides/migrating-2-to-3/)
47
+ * [Appium v1 to v2](https://appium.io/docs/en/latest/guides/migrating-1-to-2/)
48
+
49
+ ## Installation
50
+
51
+ Appium can be installed using `npm` (other package managers are not currently supported). Please
52
+ check the [installation docs](http://appium.io/docs/en/latest/quickstart/install/) for the
53
+ system requirements and further information.
54
+
55
+ If upgrading from Appium 1, make sure Appium 1 is fully uninstalled (`npm uninstall -g appium`).
56
+ Unexpected errors might appear if this has not been done.
57
+
58
+ ```bash
59
+ npm i -g appium
60
+ ```
61
+
62
+ Note that this will only install the core Appium server, which cannot automate anything on its own.
63
+ Please install [drivers](#drivers) for your target platforms in order to automate them.
64
+
65
+ ## Drivers
66
+
67
+ Appium supports app automation across a variety of platforms, like iOS, Android, macOS, Windows,
68
+ and more. Each platform is supported by one or more "drivers", which know how to automate that
69
+ particular platform. You can find a full list of officially-supported and third-party drivers in
70
+ [Appium Ecosystem's Drivers page](http://appium.io/docs/en/latest/ecosystem/drivers/).
71
+
72
+ Driver management is done using [Appium's Extension command-line interface](http://appium.io/docs/en/latest/cli/extensions/):
73
+
74
+ ```bash
75
+ # Install an official driver from npm (see documentation for a list of such drivers)
76
+ appium driver install <driver-name>
77
+ # Install any driver from npm
78
+ appium driver install --source=npm <driver-name>
79
+ # See documentation for installation from other sources
80
+
81
+ # List already installed drivers
82
+ appium driver list --installed
83
+ # Update a driver (it must be already installed)
84
+ # This will NOT update the major version, in order to prevent breaking changes
85
+ appium driver update <driver-name>
86
+ # Update a driver to the most recent version (may include breaking changes)
87
+ appium driver update <driver-name> --unsafe
88
+ # Uninstall a driver (it won't last forever, will it?)
89
+ appium driver uninstall <driver-name>
90
+ ```
91
+
92
+ ## Clients
93
+
94
+ Client libraries enable writing Appium tests in different programming languages. There are
95
+ officially-supported clients for Java, Python, Ruby, and .NET C#, as well as third-party clients
96
+ for other languages. You can find a full list of clients in
97
+ [Appium Ecosystem's Clients page](http://appium.io/docs/en/latest/ecosystem/clients/).
98
+
99
+ ## Plugins
100
+
101
+ Plugins allow you to extend server functionality without changing the server code. The main
102
+ difference between drivers and plugins is that the latter must be explicitly enabled on
103
+ Appium server startup (all installed drivers are enabled by default):
104
+
105
+ ```bash
106
+ appium --use-plugins=<plugin-name>
107
+ ```
108
+
109
+ You can find a full list of officially-supported and third-party plugins in
110
+ [Appium Ecosystem's Plugins page](http://appium.io/docs/en/latest/ecosystem/plugins/).
111
+
112
+ Similarly to drivers, plugin management is also done using
113
+ [Appium's Extension command-line interface](http://appium.io/docs/en/latest/cli/extensions/):
114
+
115
+ ```bash
116
+ # Install an official plugin from npm (see documentation for a list of such plugins)
117
+ appium plugin install <plugin-name>
118
+ # Install any plugin from npm
119
+ appium plugin install --source=npm <plugin-name>
120
+ # See documentation for installation from other sources
121
+
122
+ # List already installed plugins
123
+ appium plugin list --installed
124
+ # Update a plugin (it must be already installed)
125
+ # This will NOT update the major version, in order to prevent breaking changes
126
+ appium plugin update <plugin-name>
127
+ # Update a plugin to the most recent version (may include breaking changes)
128
+ appium plugin update <plugin-name> --unsafe
129
+ # Uninstall a plugin
130
+ appium plugin uninstall <plugin-name>
131
+ ```
132
+
133
+ ## Server Command Line Interface
134
+
135
+ In order to start sending commands to the Appium server, it must be running on the URL and port
136
+ where your client library expects it to listen. [Appium's command-line interface](http://appium.io/docs/en/latest/cli/server/)
137
+ is used to launch and configure the server:
138
+
139
+ ```bash
140
+ # Start the server on the default host (0.0.0.0) and port (4723)
141
+ appium server
142
+ # You can also omit the 'server' subcommand
143
+ appium
144
+ # Start the server on the given host, port and use a custom base path prefix (the default prefix is '/')
145
+ appium --address 127.0.0.1 --port 9000 --base-path /wd/hub
146
+ ```
147
+
148
+ Appium supports execution of parallel server processes, as well as parallel driver sessions within a
149
+ single server process. Refer the corresponding driver documentations regarding which mode is optimal
150
+ for the particular driver or whether it supports parallel sessions.
151
+
152
+ ## Why Appium?
153
+
154
+ 1. You usually don't have to recompile your app or modify it in any way, due to the use of standard
155
+ automation APIs on all platforms.
156
+ 2. You can write tests with your favorite dev tools using any WebDriver-compatible language such as
157
+ Java, Python, Ruby and C#. There are also third party client implementations for other languages.
158
+ 3. You can use any testing framework.
159
+ 4. Some drivers like `xcuitest` and `uiautomator2` have built-in mobile web and hybrid app support.
160
+ Within the same script, you can switch seamlessly between native app automation and webview
161
+ automation, all using the WebDriver model that's already the standard for web automation.
162
+ 5. You can run your automated tests locally and in a cloud. There are multiple cloud providers that
163
+ support various Appium drivers (mostly targeting iOS and Android mobile automation).
164
+ 6. [Appium Inspector](https://github.com/appium/appium-inspector) can be used to visually inspect
165
+ the page source of applications across different platforms, facilitating easier test development.
166
+
167
+ Investing in the [WebDriver](https://w3c.github.io/webdriver/webdriver-spec.html) protocol means you
168
+ are betting on a single, free, and open protocol for testing that has become a web standard. Don't
169
+ lock yourself into a proprietary stack.
170
+
171
+ For example, if you use Apple's XCUITest library without Appium, you can only write tests using
172
+ Obj-C/Swift, and you can only run tests through Xcode. Similarly, with Google's UiAutomator or
173
+ Espresso, you can only write tests in Java/Kotlin. Appium opens up the possibility of true
174
+ cross-platform native app automation, for mobile and beyond!
175
+
176
+ If you are looking for a more comprehensive description of what this is all about, please read our
177
+ documentation on [How Does Appium Work?](https://appium.io/docs/en/latest/intro/appium/).
178
+
179
+ ## Sponsors
180
+
181
+ Appium has a [Sponsorship Program](GOVERNANCE.md#sponsorship)! If you or your company uses Appium
182
+ and wants to give back financially to the project, we use these funds to [encourage development and
183
+ contributions](GOVERNANCE.md#compensation-scheme), as well as support other open source projects we
184
+ rely on. [Become a sponsor](https://opencollective.com/appium) via our OpenCollective page.
185
+
186
+ ### Development and Strategic Partners
187
+
188
+ Appium is incredibly grateful to our Development and Strategic Partners for their sustained
189
+ contribution of project development and leadership!
190
+
191
+ <p align="center">
192
+ <a href="https://www.browserstack.com/browserstack-appium?utm_campaigncode=701OW00000AoUTQYA3&utm_medium=partnered&utm_source=appium">
193
+ <picture>
194
+ <source srcset="packages/appium/docs/overrides/assets/images/sponsor-logo-browserstack-dark.png" media="(prefers-color-scheme: dark)"/>
195
+ <source srcset="packages/appium/docs/overrides/assets/images/sponsor-logo-browserstack-light.png" media="(prefers-color-scheme: light)"/>
196
+ <img src="packages/appium/docs/overrides/assets/images/sponsor-logo-browserstack-dark.png" width="300" alt="Browserstack"/>
197
+ </picture>
198
+ </a>
199
+ </p>
200
+
201
+ <p align="center">
202
+ <a href="https://lambdatest.com/?utm_source=appium.io&utm_medium=organic&utm_campaign=june_25&utm_term=sk&utm_content=webpage">
203
+ <picture>
204
+ <source srcset="packages/appium/docs/overrides/assets/images/sponsor-logo-lambdatest-dark.png" media="(prefers-color-scheme: dark)"/>
205
+ <source srcset="packages/appium/docs/overrides/assets/images/sponsor-logo-lambdatest-light.png" media="(prefers-color-scheme: light)"/>
206
+ <img src="packages/appium/docs/overrides/assets/images/sponsor-logo-lambdatest-dark.png" width="300" alt="LambdaTest"/>
207
+ </picture>
208
+ </a>
209
+ </p>
210
+
211
+ ### Other Sponsors
212
+
213
+ A full list of sponsors is available at our [Sponsors page](https://appium.io/docs/en/latest/sponsors/).
214
+
215
+ ## License
216
+
217
+ [Apache-2.0](./LICENSE)
218
+
219
+ [![FOSSA Status](https://app.fossa.io/api/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fappium%2Fappium.svg?type=large)](https://app.fossa.io/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fappium%2Fappium?ref=badge_large)
220
+
221
+ `@appium/logger` package is under [ISC](./packages/logger/LICENSE) License.