pokeedex 0.1.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 (591) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/main.yml +30 -0
  3. data/.gitignore +13 -0
  4. data/.standard.yml +9 -0
  5. data/CHANGELOG.md +5 -0
  6. data/CODE_OF_CONDUCT.md +132 -0
  7. data/Gemfile +14 -0
  8. data/Gemfile.lock +125 -0
  9. data/LICENSE.txt +21 -0
  10. data/README.md +154 -0
  11. data/Rakefile +20 -0
  12. data/bin/pokeedex +85 -0
  13. data/lib/pokeedex/configuration.rb +47 -0
  14. data/lib/pokeedex/database.rb +42 -0
  15. data/lib/pokeedex/db/migrations/001_create_pokemons.rb +26 -0
  16. data/lib/pokeedex/exceptions.rb +15 -0
  17. data/lib/pokeedex/pokemon/base.rb +16 -0
  18. data/lib/pokeedex/pokemon/decorators/base.rb +112 -0
  19. data/lib/pokeedex/pokemon/model/base.rb +43 -0
  20. data/lib/pokeedex/pokemon/scrapper/base.rb +34 -0
  21. data/lib/pokeedex/pokemon/scrapper/fetchers/base.rb +123 -0
  22. data/lib/pokeedex/pokemon/scrapper/parsers/base.rb +205 -0
  23. data/lib/pokeedex/pokemon/scrapper/pokedex.rb +50 -0
  24. data/lib/pokeedex/pokemon/searcher/base.rb +59 -0
  25. data/lib/pokeedex/version.rb +5 -0
  26. data/lib/pokeedex.rb +55 -0
  27. data/node_modules/.bin/playwright +1 -0
  28. data/node_modules/.bin/playwright-core +1 -0
  29. data/node_modules/.yarn-integrity +22 -0
  30. data/node_modules/@playwright/test/LICENSE +202 -0
  31. data/node_modules/@playwright/test/NOTICE +5 -0
  32. data/node_modules/@playwright/test/README.md +169 -0
  33. data/node_modules/@playwright/test/cli.js +19 -0
  34. data/node_modules/@playwright/test/index.d.ts +18 -0
  35. data/node_modules/@playwright/test/index.js +17 -0
  36. data/node_modules/@playwright/test/index.mjs +18 -0
  37. data/node_modules/@playwright/test/node_modules/.bin/playwright +1 -0
  38. data/node_modules/@playwright/test/package.json +35 -0
  39. data/node_modules/@playwright/test/reporter.d.ts +17 -0
  40. data/node_modules/@playwright/test/reporter.js +17 -0
  41. data/node_modules/@playwright/test/reporter.mjs +17 -0
  42. data/node_modules/@types/node/LICENSE +21 -0
  43. data/node_modules/@types/node/README.md +15 -0
  44. data/node_modules/@types/node/assert/strict.d.ts +8 -0
  45. data/node_modules/@types/node/assert.d.ts +1040 -0
  46. data/node_modules/@types/node/async_hooks.d.ts +541 -0
  47. data/node_modules/@types/node/buffer.d.ts +2300 -0
  48. data/node_modules/@types/node/child_process.d.ts +1544 -0
  49. data/node_modules/@types/node/cluster.d.ts +578 -0
  50. data/node_modules/@types/node/console.d.ts +452 -0
  51. data/node_modules/@types/node/constants.d.ts +19 -0
  52. data/node_modules/@types/node/crypto.d.ts +4451 -0
  53. data/node_modules/@types/node/dgram.d.ts +596 -0
  54. data/node_modules/@types/node/diagnostics_channel.d.ts +554 -0
  55. data/node_modules/@types/node/dns/promises.d.ts +476 -0
  56. data/node_modules/@types/node/dns.d.ts +865 -0
  57. data/node_modules/@types/node/dom-events.d.ts +124 -0
  58. data/node_modules/@types/node/domain.d.ts +170 -0
  59. data/node_modules/@types/node/events.d.ts +931 -0
  60. data/node_modules/@types/node/fs/promises.d.ts +1264 -0
  61. data/node_modules/@types/node/fs.d.ts +4390 -0
  62. data/node_modules/@types/node/globals.d.ts +611 -0
  63. data/node_modules/@types/node/globals.global.d.ts +1 -0
  64. data/node_modules/@types/node/http.d.ts +1921 -0
  65. data/node_modules/@types/node/http2.d.ts +2555 -0
  66. data/node_modules/@types/node/https.d.ts +544 -0
  67. data/node_modules/@types/node/index.d.ts +90 -0
  68. data/node_modules/@types/node/inspector.d.ts +3966 -0
  69. data/node_modules/@types/node/module.d.ts +301 -0
  70. data/node_modules/@types/node/net.d.ts +995 -0
  71. data/node_modules/@types/node/os.d.ts +495 -0
  72. data/node_modules/@types/node/package.json +217 -0
  73. data/node_modules/@types/node/path.d.ts +200 -0
  74. data/node_modules/@types/node/perf_hooks.d.ts +941 -0
  75. data/node_modules/@types/node/process.d.ts +1912 -0
  76. data/node_modules/@types/node/punycode.d.ts +117 -0
  77. data/node_modules/@types/node/querystring.d.ts +153 -0
  78. data/node_modules/@types/node/readline/promises.d.ts +150 -0
  79. data/node_modules/@types/node/readline.d.ts +540 -0
  80. data/node_modules/@types/node/repl.d.ts +430 -0
  81. data/node_modules/@types/node/sea.d.ts +153 -0
  82. data/node_modules/@types/node/sqlite.d.ts +213 -0
  83. data/node_modules/@types/node/stream/consumers.d.ts +12 -0
  84. data/node_modules/@types/node/stream/promises.d.ts +83 -0
  85. data/node_modules/@types/node/stream/web.d.ts +606 -0
  86. data/node_modules/@types/node/stream.d.ts +1726 -0
  87. data/node_modules/@types/node/string_decoder.d.ts +67 -0
  88. data/node_modules/@types/node/test.d.ts +2098 -0
  89. data/node_modules/@types/node/timers/promises.d.ts +97 -0
  90. data/node_modules/@types/node/timers.d.ts +240 -0
  91. data/node_modules/@types/node/tls.d.ts +1220 -0
  92. data/node_modules/@types/node/trace_events.d.ts +197 -0
  93. data/node_modules/@types/node/tty.d.ts +208 -0
  94. data/node_modules/@types/node/url.d.ts +969 -0
  95. data/node_modules/@types/node/util.d.ts +2301 -0
  96. data/node_modules/@types/node/v8.d.ts +808 -0
  97. data/node_modules/@types/node/vm.d.ts +922 -0
  98. data/node_modules/@types/node/wasi.d.ts +181 -0
  99. data/node_modules/@types/node/worker_threads.d.ts +712 -0
  100. data/node_modules/@types/node/zlib.d.ts +539 -0
  101. data/node_modules/fsevents/LICENSE +22 -0
  102. data/node_modules/fsevents/README.md +83 -0
  103. data/node_modules/fsevents/fsevents.d.ts +46 -0
  104. data/node_modules/fsevents/fsevents.js +82 -0
  105. data/node_modules/fsevents/fsevents.node +0 -0
  106. data/node_modules/fsevents/package.json +62 -0
  107. data/node_modules/playwright/.eslintrc.js +6 -0
  108. data/node_modules/playwright/LICENSE +202 -0
  109. data/node_modules/playwright/NOTICE +5 -0
  110. data/node_modules/playwright/README.md +169 -0
  111. data/node_modules/playwright/ThirdPartyNotices.txt +4356 -0
  112. data/node_modules/playwright/cli.js +19 -0
  113. data/node_modules/playwright/index.d.ts +17 -0
  114. data/node_modules/playwright/index.js +17 -0
  115. data/node_modules/playwright/index.mjs +18 -0
  116. data/node_modules/playwright/jsx-runtime.js +41 -0
  117. data/node_modules/playwright/jsx-runtime.mjs +21 -0
  118. data/node_modules/playwright/lib/common/config.js +256 -0
  119. data/node_modules/playwright/lib/common/configLoader.js +321 -0
  120. data/node_modules/playwright/lib/common/esmLoaderHost.js +93 -0
  121. data/node_modules/playwright/lib/common/expectBundle.js +27 -0
  122. data/node_modules/playwright/lib/common/expectBundleImpl.js +389 -0
  123. data/node_modules/playwright/lib/common/fixtures.js +323 -0
  124. data/node_modules/playwright/lib/common/globals.js +48 -0
  125. data/node_modules/playwright/lib/common/ipc.js +48 -0
  126. data/node_modules/playwright/lib/common/poolBuilder.js +79 -0
  127. data/node_modules/playwright/lib/common/process.js +140 -0
  128. data/node_modules/playwright/lib/common/suiteUtils.js +133 -0
  129. data/node_modules/playwright/lib/common/test.js +311 -0
  130. data/node_modules/playwright/lib/common/testLoader.js +102 -0
  131. data/node_modules/playwright/lib/common/testType.js +284 -0
  132. data/node_modules/playwright/lib/fsWatcher.js +69 -0
  133. data/node_modules/playwright/lib/index.js +888 -0
  134. data/node_modules/playwright/lib/internalsForTest.js +28 -0
  135. data/node_modules/playwright/lib/isomorphic/events.js +72 -0
  136. data/node_modules/playwright/lib/isomorphic/folders.js +25 -0
  137. data/node_modules/playwright/lib/isomorphic/stringInternPool.js +58 -0
  138. data/node_modules/playwright/lib/isomorphic/teleReceiver.js +504 -0
  139. data/node_modules/playwright/lib/isomorphic/teleSuiteUpdater.js +149 -0
  140. data/node_modules/playwright/lib/isomorphic/testServerConnection.js +210 -0
  141. data/node_modules/playwright/lib/isomorphic/testServerInterface.js +5 -0
  142. data/node_modules/playwright/lib/isomorphic/testTree.js +272 -0
  143. data/node_modules/playwright/lib/loader/loaderMain.js +58 -0
  144. data/node_modules/playwright/lib/matchers/expect.js +297 -0
  145. data/node_modules/playwright/lib/matchers/matcherHint.js +50 -0
  146. data/node_modules/playwright/lib/matchers/matchers.js +449 -0
  147. data/node_modules/playwright/lib/matchers/toBeTruthy.js +55 -0
  148. data/node_modules/playwright/lib/matchers/toEqual.js +57 -0
  149. data/node_modules/playwright/lib/matchers/toMatchSnapshot.js +383 -0
  150. data/node_modules/playwright/lib/matchers/toMatchText.js +76 -0
  151. data/node_modules/playwright/lib/plugins/gitCommitInfoPlugin.js +78 -0
  152. data/node_modules/playwright/lib/plugins/index.js +19 -0
  153. data/node_modules/playwright/lib/plugins/webServerPlugin.js +187 -0
  154. data/node_modules/playwright/lib/program.js +346 -0
  155. data/node_modules/playwright/lib/reporters/base.js +553 -0
  156. data/node_modules/playwright/lib/reporters/blob.js +133 -0
  157. data/node_modules/playwright/lib/reporters/dot.js +82 -0
  158. data/node_modules/playwright/lib/reporters/empty.js +42 -0
  159. data/node_modules/playwright/lib/reporters/github.js +115 -0
  160. data/node_modules/playwright/lib/reporters/html.js +623 -0
  161. data/node_modules/playwright/lib/reporters/internalReporter.js +123 -0
  162. data/node_modules/playwright/lib/reporters/json.js +243 -0
  163. data/node_modules/playwright/lib/reporters/junit.js +233 -0
  164. data/node_modules/playwright/lib/reporters/line.js +108 -0
  165. data/node_modules/playwright/lib/reporters/list.js +222 -0
  166. data/node_modules/playwright/lib/reporters/markdown.js +76 -0
  167. data/node_modules/playwright/lib/reporters/merge.js +477 -0
  168. data/node_modules/playwright/lib/reporters/multiplexer.js +90 -0
  169. data/node_modules/playwright/lib/reporters/reporterV2.js +118 -0
  170. data/node_modules/playwright/lib/reporters/teleEmitter.js +268 -0
  171. data/node_modules/playwright/lib/reporters/versions/blobV1.js +5 -0
  172. data/node_modules/playwright/lib/runner/dispatcher.js +532 -0
  173. data/node_modules/playwright/lib/runner/failureTracker.js +60 -0
  174. data/node_modules/playwright/lib/runner/loadUtils.js +308 -0
  175. data/node_modules/playwright/lib/runner/loaderHost.js +85 -0
  176. data/node_modules/playwright/lib/runner/processHost.js +175 -0
  177. data/node_modules/playwright/lib/runner/projectUtils.js +203 -0
  178. data/node_modules/playwright/lib/runner/reporters.js +151 -0
  179. data/node_modules/playwright/lib/runner/runner.js +179 -0
  180. data/node_modules/playwright/lib/runner/sigIntWatcher.js +100 -0
  181. data/node_modules/playwright/lib/runner/taskRunner.js +147 -0
  182. data/node_modules/playwright/lib/runner/tasks.js +407 -0
  183. data/node_modules/playwright/lib/runner/testGroups.js +136 -0
  184. data/node_modules/playwright/lib/runner/testServer.js +605 -0
  185. data/node_modules/playwright/lib/runner/uiModeReporter.js +31 -0
  186. data/node_modules/playwright/lib/runner/vcs.js +55 -0
  187. data/node_modules/playwright/lib/runner/watchMode.js +398 -0
  188. data/node_modules/playwright/lib/runner/workerHost.js +85 -0
  189. data/node_modules/playwright/lib/third_party/tsconfig-loader.js +134 -0
  190. data/node_modules/playwright/lib/transform/babelBundle.js +28 -0
  191. data/node_modules/playwright/lib/transform/babelBundleImpl.js +2032 -0
  192. data/node_modules/playwright/lib/transform/compilationCache.js +254 -0
  193. data/node_modules/playwright/lib/transform/esmLoader.js +117 -0
  194. data/node_modules/playwright/lib/transform/esmUtils.js +32 -0
  195. data/node_modules/playwright/lib/transform/portTransport.js +81 -0
  196. data/node_modules/playwright/lib/transform/transform.js +267 -0
  197. data/node_modules/playwright/lib/util.js +356 -0
  198. data/node_modules/playwright/lib/utilsBundle.js +28 -0
  199. data/node_modules/playwright/lib/utilsBundleImpl.js +102 -0
  200. data/node_modules/playwright/lib/worker/fixtureRunner.js +279 -0
  201. data/node_modules/playwright/lib/worker/testInfo.js +397 -0
  202. data/node_modules/playwright/lib/worker/testTracing.js +314 -0
  203. data/node_modules/playwright/lib/worker/timeoutManager.js +153 -0
  204. data/node_modules/playwright/lib/worker/workerMain.js +637 -0
  205. data/node_modules/playwright/node_modules/.bin/playwright-core +1 -0
  206. data/node_modules/playwright/package.json +66 -0
  207. data/node_modules/playwright/test.d.ts +18 -0
  208. data/node_modules/playwright/test.js +24 -0
  209. data/node_modules/playwright/test.mjs +33 -0
  210. data/node_modules/playwright/types/test.d.ts +8444 -0
  211. data/node_modules/playwright/types/testReporter.d.ts +749 -0
  212. data/node_modules/playwright-core/LICENSE +202 -0
  213. data/node_modules/playwright-core/NOTICE +5 -0
  214. data/node_modules/playwright-core/README.md +3 -0
  215. data/node_modules/playwright-core/ThirdPartyNotices.txt +1548 -0
  216. data/node_modules/playwright-core/bin/PrintDeps.exe +0 -0
  217. data/node_modules/playwright-core/bin/README.md +2 -0
  218. data/node_modules/playwright-core/bin/install_media_pack.ps1 +5 -0
  219. data/node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh +40 -0
  220. data/node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh +13 -0
  221. data/node_modules/playwright-core/bin/reinstall_chrome_beta_win.ps1 +24 -0
  222. data/node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh +40 -0
  223. data/node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh +12 -0
  224. data/node_modules/playwright-core/bin/reinstall_chrome_stable_win.ps1 +24 -0
  225. data/node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh +40 -0
  226. data/node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh +11 -0
  227. data/node_modules/playwright-core/bin/reinstall_msedge_beta_win.ps1 +23 -0
  228. data/node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh +40 -0
  229. data/node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh +11 -0
  230. data/node_modules/playwright-core/bin/reinstall_msedge_dev_win.ps1 +23 -0
  231. data/node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh +40 -0
  232. data/node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh +11 -0
  233. data/node_modules/playwright-core/bin/reinstall_msedge_stable_win.ps1 +24 -0
  234. data/node_modules/playwright-core/browsers.json +53 -0
  235. data/node_modules/playwright-core/cli.js +18 -0
  236. data/node_modules/playwright-core/index.d.ts +17 -0
  237. data/node_modules/playwright-core/index.js +33 -0
  238. data/node_modules/playwright-core/index.mjs +28 -0
  239. data/node_modules/playwright-core/lib/androidServerImpl.js +69 -0
  240. data/node_modules/playwright-core/lib/browserServerImpl.js +92 -0
  241. data/node_modules/playwright-core/lib/cli/driver.js +95 -0
  242. data/node_modules/playwright-core/lib/cli/program.js +577 -0
  243. data/node_modules/playwright-core/lib/cli/programWithTestStub.js +67 -0
  244. data/node_modules/playwright-core/lib/client/accessibility.js +50 -0
  245. data/node_modules/playwright-core/lib/client/android.js +473 -0
  246. data/node_modules/playwright-core/lib/client/api.js +279 -0
  247. data/node_modules/playwright-core/lib/client/artifact.js +79 -0
  248. data/node_modules/playwright-core/lib/client/browser.js +145 -0
  249. data/node_modules/playwright-core/lib/client/browserContext.js +541 -0
  250. data/node_modules/playwright-core/lib/client/browserType.js +241 -0
  251. data/node_modules/playwright-core/lib/client/cdpSession.js +53 -0
  252. data/node_modules/playwright-core/lib/client/channelOwner.js +231 -0
  253. data/node_modules/playwright-core/lib/client/clientHelper.js +57 -0
  254. data/node_modules/playwright-core/lib/client/clientInstrumentation.js +50 -0
  255. data/node_modules/playwright-core/lib/client/clock.js +68 -0
  256. data/node_modules/playwright-core/lib/client/connection.js +330 -0
  257. data/node_modules/playwright-core/lib/client/consoleMessage.js +55 -0
  258. data/node_modules/playwright-core/lib/client/coverage.js +41 -0
  259. data/node_modules/playwright-core/lib/client/dialog.js +57 -0
  260. data/node_modules/playwright-core/lib/client/download.js +62 -0
  261. data/node_modules/playwright-core/lib/client/electron.js +135 -0
  262. data/node_modules/playwright-core/lib/client/elementHandle.js +321 -0
  263. data/node_modules/playwright-core/lib/client/errors.js +77 -0
  264. data/node_modules/playwright-core/lib/client/eventEmitter.js +314 -0
  265. data/node_modules/playwright-core/lib/client/events.js +94 -0
  266. data/node_modules/playwright-core/lib/client/fetch.js +396 -0
  267. data/node_modules/playwright-core/lib/client/fileChooser.js +45 -0
  268. data/node_modules/playwright-core/lib/client/frame.js +504 -0
  269. data/node_modules/playwright-core/lib/client/harRouter.js +99 -0
  270. data/node_modules/playwright-core/lib/client/input.js +111 -0
  271. data/node_modules/playwright-core/lib/client/jsHandle.js +129 -0
  272. data/node_modules/playwright-core/lib/client/jsonPipe.js +35 -0
  273. data/node_modules/playwright-core/lib/client/localUtils.js +35 -0
  274. data/node_modules/playwright-core/lib/client/locator.js +441 -0
  275. data/node_modules/playwright-core/lib/client/network.js +604 -0
  276. data/node_modules/playwright-core/lib/client/page.js +725 -0
  277. data/node_modules/playwright-core/lib/client/playwright.js +77 -0
  278. data/node_modules/playwright-core/lib/client/selectors.js +67 -0
  279. data/node_modules/playwright-core/lib/client/stream.js +54 -0
  280. data/node_modules/playwright-core/lib/client/tracing.js +138 -0
  281. data/node_modules/playwright-core/lib/client/types.js +24 -0
  282. data/node_modules/playwright-core/lib/client/video.js +51 -0
  283. data/node_modules/playwright-core/lib/client/waiter.js +158 -0
  284. data/node_modules/playwright-core/lib/client/webError.js +37 -0
  285. data/node_modules/playwright-core/lib/client/worker.js +71 -0
  286. data/node_modules/playwright-core/lib/client/writableStream.js +54 -0
  287. data/node_modules/playwright-core/lib/common/socksProxy.js +569 -0
  288. data/node_modules/playwright-core/lib/common/timeoutSettings.js +73 -0
  289. data/node_modules/playwright-core/lib/common/types.js +5 -0
  290. data/node_modules/playwright-core/lib/generated/clockSource.js +7 -0
  291. data/node_modules/playwright-core/lib/generated/consoleApiSource.js +7 -0
  292. data/node_modules/playwright-core/lib/generated/injectedScriptSource.js +7 -0
  293. data/node_modules/playwright-core/lib/generated/recorderSource.js +7 -0
  294. data/node_modules/playwright-core/lib/generated/utilityScriptSource.js +7 -0
  295. data/node_modules/playwright-core/lib/image_tools/colorUtils.js +98 -0
  296. data/node_modules/playwright-core/lib/image_tools/compare.js +108 -0
  297. data/node_modules/playwright-core/lib/image_tools/imageChannel.js +70 -0
  298. data/node_modules/playwright-core/lib/image_tools/stats.js +102 -0
  299. data/node_modules/playwright-core/lib/inProcessFactory.js +54 -0
  300. data/node_modules/playwright-core/lib/inprocess.js +20 -0
  301. data/node_modules/playwright-core/lib/outofprocess.js +67 -0
  302. data/node_modules/playwright-core/lib/protocol/debug.js +27 -0
  303. data/node_modules/playwright-core/lib/protocol/serializers.js +173 -0
  304. data/node_modules/playwright-core/lib/protocol/transport.js +82 -0
  305. data/node_modules/playwright-core/lib/protocol/validator.js +2694 -0
  306. data/node_modules/playwright-core/lib/protocol/validatorPrimitives.js +139 -0
  307. data/node_modules/playwright-core/lib/remote/playwrightConnection.js +274 -0
  308. data/node_modules/playwright-core/lib/remote/playwrightServer.js +110 -0
  309. data/node_modules/playwright-core/lib/server/accessibility.js +62 -0
  310. data/node_modules/playwright-core/lib/server/android/android.js +441 -0
  311. data/node_modules/playwright-core/lib/server/android/backendAdb.js +172 -0
  312. data/node_modules/playwright-core/lib/server/artifact.js +104 -0
  313. data/node_modules/playwright-core/lib/server/bidi/bidiBrowser.js +296 -0
  314. data/node_modules/playwright-core/lib/server/bidi/bidiConnection.js +206 -0
  315. data/node_modules/playwright-core/lib/server/bidi/bidiExecutionContext.js +162 -0
  316. data/node_modules/playwright-core/lib/server/bidi/bidiFirefox.js +110 -0
  317. data/node_modules/playwright-core/lib/server/bidi/bidiInput.js +174 -0
  318. data/node_modules/playwright-core/lib/server/bidi/bidiNetworkManager.js +304 -0
  319. data/node_modules/playwright-core/lib/server/bidi/bidiPage.js +456 -0
  320. data/node_modules/playwright-core/lib/server/bidi/third_party/bidiDeserializer.js +93 -0
  321. data/node_modules/playwright-core/lib/server/bidi/third_party/bidiKeyboard.js +238 -0
  322. data/node_modules/playwright-core/lib/server/bidi/third_party/bidiProtocol.js +139 -0
  323. data/node_modules/playwright-core/lib/server/bidi/third_party/bidiSerializer.js +144 -0
  324. data/node_modules/playwright-core/lib/server/browser.js +137 -0
  325. data/node_modules/playwright-core/lib/server/browserContext.js +684 -0
  326. data/node_modules/playwright-core/lib/server/browserType.js +307 -0
  327. data/node_modules/playwright-core/lib/server/chromium/appIcon.png +0 -0
  328. data/node_modules/playwright-core/lib/server/chromium/chromium.js +362 -0
  329. data/node_modules/playwright-core/lib/server/chromium/chromiumSwitches.js +44 -0
  330. data/node_modules/playwright-core/lib/server/chromium/crAccessibility.js +237 -0
  331. data/node_modules/playwright-core/lib/server/chromium/crBrowser.js +515 -0
  332. data/node_modules/playwright-core/lib/server/chromium/crConnection.js +228 -0
  333. data/node_modules/playwright-core/lib/server/chromium/crCoverage.js +246 -0
  334. data/node_modules/playwright-core/lib/server/chromium/crDevTools.js +104 -0
  335. data/node_modules/playwright-core/lib/server/chromium/crDragDrop.js +143 -0
  336. data/node_modules/playwright-core/lib/server/chromium/crExecutionContext.js +156 -0
  337. data/node_modules/playwright-core/lib/server/chromium/crInput.js +171 -0
  338. data/node_modules/playwright-core/lib/server/chromium/crNetworkManager.js +767 -0
  339. data/node_modules/playwright-core/lib/server/chromium/crPage.js +1128 -0
  340. data/node_modules/playwright-core/lib/server/chromium/crPdf.js +153 -0
  341. data/node_modules/playwright-core/lib/server/chromium/crProtocolHelper.js +133 -0
  342. data/node_modules/playwright-core/lib/server/chromium/crServiceWorker.js +112 -0
  343. data/node_modules/playwright-core/lib/server/chromium/defaultFontFamilies.js +145 -0
  344. data/node_modules/playwright-core/lib/server/chromium/videoRecorder.js +155 -0
  345. data/node_modules/playwright-core/lib/server/clock.js +125 -0
  346. data/node_modules/playwright-core/lib/server/codegen/csharp.js +299 -0
  347. data/node_modules/playwright-core/lib/server/codegen/java.js +235 -0
  348. data/node_modules/playwright-core/lib/server/codegen/javascript.js +223 -0
  349. data/node_modules/playwright-core/lib/server/codegen/jsonl.js +47 -0
  350. data/node_modules/playwright-core/lib/server/codegen/language.js +76 -0
  351. data/node_modules/playwright-core/lib/server/codegen/languages.js +30 -0
  352. data/node_modules/playwright-core/lib/server/codegen/python.js +265 -0
  353. data/node_modules/playwright-core/lib/server/codegen/types.js +5 -0
  354. data/node_modules/playwright-core/lib/server/console.js +57 -0
  355. data/node_modules/playwright-core/lib/server/cookieStore.js +112 -0
  356. data/node_modules/playwright-core/lib/server/debugController.js +234 -0
  357. data/node_modules/playwright-core/lib/server/debugger.js +132 -0
  358. data/node_modules/playwright-core/lib/server/deviceDescriptors.js +26 -0
  359. data/node_modules/playwright-core/lib/server/deviceDescriptorsSource.json +1669 -0
  360. data/node_modules/playwright-core/lib/server/dialog.js +70 -0
  361. data/node_modules/playwright-core/lib/server/dispatchers/androidDispatcher.js +193 -0
  362. data/node_modules/playwright-core/lib/server/dispatchers/artifactDispatcher.js +118 -0
  363. data/node_modules/playwright-core/lib/server/dispatchers/browserContextDispatcher.js +351 -0
  364. data/node_modules/playwright-core/lib/server/dispatchers/browserDispatcher.js +170 -0
  365. data/node_modules/playwright-core/lib/server/dispatchers/browserTypeDispatcher.js +55 -0
  366. data/node_modules/playwright-core/lib/server/dispatchers/cdpSessionDispatcher.js +48 -0
  367. data/node_modules/playwright-core/lib/server/dispatchers/debugControllerDispatcher.js +103 -0
  368. data/node_modules/playwright-core/lib/server/dispatchers/dialogDispatcher.js +44 -0
  369. data/node_modules/playwright-core/lib/server/dispatchers/dispatcher.js +395 -0
  370. data/node_modules/playwright-core/lib/server/dispatchers/electronDispatcher.js +93 -0
  371. data/node_modules/playwright-core/lib/server/dispatchers/elementHandlerDispatcher.js +228 -0
  372. data/node_modules/playwright-core/lib/server/dispatchers/frameDispatcher.js +286 -0
  373. data/node_modules/playwright-core/lib/server/dispatchers/jsHandleDispatcher.js +102 -0
  374. data/node_modules/playwright-core/lib/server/dispatchers/jsonPipeDispatcher.js +59 -0
  375. data/node_modules/playwright-core/lib/server/dispatchers/localUtilsDispatcher.js +413 -0
  376. data/node_modules/playwright-core/lib/server/dispatchers/networkDispatchers.js +221 -0
  377. data/node_modules/playwright-core/lib/server/dispatchers/pageDispatcher.js +358 -0
  378. data/node_modules/playwright-core/lib/server/dispatchers/playwrightDispatcher.js +106 -0
  379. data/node_modules/playwright-core/lib/server/dispatchers/selectorsDispatcher.js +36 -0
  380. data/node_modules/playwright-core/lib/server/dispatchers/streamDispatcher.js +62 -0
  381. data/node_modules/playwright-core/lib/server/dispatchers/tracingDispatcher.js +54 -0
  382. data/node_modules/playwright-core/lib/server/dispatchers/writableStreamDispatcher.js +58 -0
  383. data/node_modules/playwright-core/lib/server/dom.js +845 -0
  384. data/node_modules/playwright-core/lib/server/download.js +53 -0
  385. data/node_modules/playwright-core/lib/server/electron/electron.js +296 -0
  386. data/node_modules/playwright-core/lib/server/electron/loader.js +57 -0
  387. data/node_modules/playwright-core/lib/server/errors.js +68 -0
  388. data/node_modules/playwright-core/lib/server/fetch.js +660 -0
  389. data/node_modules/playwright-core/lib/server/fileChooser.js +42 -0
  390. data/node_modules/playwright-core/lib/server/fileUploadUtils.js +75 -0
  391. data/node_modules/playwright-core/lib/server/firefox/ffAccessibility.js +216 -0
  392. data/node_modules/playwright-core/lib/server/firefox/ffBrowser.js +458 -0
  393. data/node_modules/playwright-core/lib/server/firefox/ffConnection.js +168 -0
  394. data/node_modules/playwright-core/lib/server/firefox/ffExecutionContext.js +138 -0
  395. data/node_modules/playwright-core/lib/server/firefox/ffInput.js +150 -0
  396. data/node_modules/playwright-core/lib/server/firefox/ffNetworkManager.js +233 -0
  397. data/node_modules/playwright-core/lib/server/firefox/ffPage.js +556 -0
  398. data/node_modules/playwright-core/lib/server/firefox/firefox.js +110 -0
  399. data/node_modules/playwright-core/lib/server/formData.js +75 -0
  400. data/node_modules/playwright-core/lib/server/frameSelectors.js +171 -0
  401. data/node_modules/playwright-core/lib/server/frames.js +1654 -0
  402. data/node_modules/playwright-core/lib/server/har/harRecorder.js +139 -0
  403. data/node_modules/playwright-core/lib/server/har/harTracer.js +531 -0
  404. data/node_modules/playwright-core/lib/server/helper.js +103 -0
  405. data/node_modules/playwright-core/lib/server/index.js +114 -0
  406. data/node_modules/playwright-core/lib/server/input.js +311 -0
  407. data/node_modules/playwright-core/lib/server/instrumentation.js +70 -0
  408. data/node_modules/playwright-core/lib/server/isomorphic/utilityScriptSerializers.js +226 -0
  409. data/node_modules/playwright-core/lib/server/javascript.js +306 -0
  410. data/node_modules/playwright-core/lib/server/launchApp.js +91 -0
  411. data/node_modules/playwright-core/lib/server/macEditingCommands.js +139 -0
  412. data/node_modules/playwright-core/lib/server/network.js +617 -0
  413. data/node_modules/playwright-core/lib/server/page.js +825 -0
  414. data/node_modules/playwright-core/lib/server/pipeTransport.js +85 -0
  415. data/node_modules/playwright-core/lib/server/playwright.js +85 -0
  416. data/node_modules/playwright-core/lib/server/progress.js +102 -0
  417. data/node_modules/playwright-core/lib/server/protocolError.js +49 -0
  418. data/node_modules/playwright-core/lib/server/recorder/contextRecorder.js +316 -0
  419. data/node_modules/playwright-core/lib/server/recorder/recorderActions.js +5 -0
  420. data/node_modules/playwright-core/lib/server/recorder/recorderApp.js +190 -0
  421. data/node_modules/playwright-core/lib/server/recorder/recorderCollection.js +127 -0
  422. data/node_modules/playwright-core/lib/server/recorder/recorderRunner.js +177 -0
  423. data/node_modules/playwright-core/lib/server/recorder/recorderUtils.js +71 -0
  424. data/node_modules/playwright-core/lib/server/recorder/throttledFile.js +46 -0
  425. data/node_modules/playwright-core/lib/server/recorder.js +324 -0
  426. data/node_modules/playwright-core/lib/server/registry/browserFetcher.js +168 -0
  427. data/node_modules/playwright-core/lib/server/registry/dependencies.js +322 -0
  428. data/node_modules/playwright-core/lib/server/registry/index.js +924 -0
  429. data/node_modules/playwright-core/lib/server/registry/nativeDeps.js +490 -0
  430. data/node_modules/playwright-core/lib/server/registry/oopDownloadBrowserMain.js +138 -0
  431. data/node_modules/playwright-core/lib/server/screenshotter.js +348 -0
  432. data/node_modules/playwright-core/lib/server/selectors.js +73 -0
  433. data/node_modules/playwright-core/lib/server/socksClientCertificatesInterceptor.js +328 -0
  434. data/node_modules/playwright-core/lib/server/socksInterceptor.js +100 -0
  435. data/node_modules/playwright-core/lib/server/trace/recorder/snapshotter.js +171 -0
  436. data/node_modules/playwright-core/lib/server/trace/recorder/snapshotterInjected.js +493 -0
  437. data/node_modules/playwright-core/lib/server/trace/recorder/tracing.js +486 -0
  438. data/node_modules/playwright-core/lib/server/trace/test/inMemorySnapshotter.js +93 -0
  439. data/node_modules/playwright-core/lib/server/trace/viewer/traceViewer.js +216 -0
  440. data/node_modules/playwright-core/lib/server/transport.js +191 -0
  441. data/node_modules/playwright-core/lib/server/types.js +24 -0
  442. data/node_modules/playwright-core/lib/server/usKeyboardLayout.js +555 -0
  443. data/node_modules/playwright-core/lib/server/webkit/webkit.js +87 -0
  444. data/node_modules/playwright-core/lib/server/webkit/wkAccessibility.js +194 -0
  445. data/node_modules/playwright-core/lib/server/webkit/wkBrowser.js +328 -0
  446. data/node_modules/playwright-core/lib/server/webkit/wkConnection.js +173 -0
  447. data/node_modules/playwright-core/lib/server/webkit/wkExecutionContext.js +146 -0
  448. data/node_modules/playwright-core/lib/server/webkit/wkInput.js +169 -0
  449. data/node_modules/playwright-core/lib/server/webkit/wkInterceptableRequest.js +162 -0
  450. data/node_modules/playwright-core/lib/server/webkit/wkPage.js +1216 -0
  451. data/node_modules/playwright-core/lib/server/webkit/wkProvisionalPage.js +94 -0
  452. data/node_modules/playwright-core/lib/server/webkit/wkWorkers.js +104 -0
  453. data/node_modules/playwright-core/lib/third_party/diff_match_patch.js +2222 -0
  454. data/node_modules/playwright-core/lib/third_party/pixelmatch.js +255 -0
  455. data/node_modules/playwright-core/lib/utils/ascii.js +31 -0
  456. data/node_modules/playwright-core/lib/utils/comparators.js +171 -0
  457. data/node_modules/playwright-core/lib/utils/crypto.js +174 -0
  458. data/node_modules/playwright-core/lib/utils/debug.js +46 -0
  459. data/node_modules/playwright-core/lib/utils/debugLogger.js +91 -0
  460. data/node_modules/playwright-core/lib/utils/env.js +49 -0
  461. data/node_modules/playwright-core/lib/utils/eventsHelper.js +38 -0
  462. data/node_modules/playwright-core/lib/utils/expectUtils.js +33 -0
  463. data/node_modules/playwright-core/lib/utils/fileUtils.js +205 -0
  464. data/node_modules/playwright-core/lib/utils/happy-eyeballs.js +181 -0
  465. data/node_modules/playwright-core/lib/utils/headers.js +52 -0
  466. data/node_modules/playwright-core/lib/utils/hostPlatform.js +133 -0
  467. data/node_modules/playwright-core/lib/utils/httpServer.js +236 -0
  468. data/node_modules/playwright-core/lib/utils/index.js +368 -0
  469. data/node_modules/playwright-core/lib/utils/isomorphic/cssParser.js +250 -0
  470. data/node_modules/playwright-core/lib/utils/isomorphic/cssTokenizer.js +979 -0
  471. data/node_modules/playwright-core/lib/utils/isomorphic/locatorGenerators.js +651 -0
  472. data/node_modules/playwright-core/lib/utils/isomorphic/locatorParser.js +179 -0
  473. data/node_modules/playwright-core/lib/utils/isomorphic/locatorUtils.js +62 -0
  474. data/node_modules/playwright-core/lib/utils/isomorphic/mimeType.js +29 -0
  475. data/node_modules/playwright-core/lib/utils/isomorphic/selectorParser.js +397 -0
  476. data/node_modules/playwright-core/lib/utils/isomorphic/stringUtils.js +139 -0
  477. data/node_modules/playwright-core/lib/utils/isomorphic/traceUtils.js +39 -0
  478. data/node_modules/playwright-core/lib/utils/isomorphic/urlMatch.js +120 -0
  479. data/node_modules/playwright-core/lib/utils/linuxUtils.js +78 -0
  480. data/node_modules/playwright-core/lib/utils/manualPromise.js +109 -0
  481. data/node_modules/playwright-core/lib/utils/multimap.js +75 -0
  482. data/node_modules/playwright-core/lib/utils/network.js +160 -0
  483. data/node_modules/playwright-core/lib/utils/processLauncher.js +248 -0
  484. data/node_modules/playwright-core/lib/utils/profiler.js +53 -0
  485. data/node_modules/playwright-core/lib/utils/rtti.js +44 -0
  486. data/node_modules/playwright-core/lib/utils/semaphore.js +51 -0
  487. data/node_modules/playwright-core/lib/utils/spawnAsync.js +45 -0
  488. data/node_modules/playwright-core/lib/utils/stackTrace.js +121 -0
  489. data/node_modules/playwright-core/lib/utils/task.js +58 -0
  490. data/node_modules/playwright-core/lib/utils/time.js +37 -0
  491. data/node_modules/playwright-core/lib/utils/timeoutRunner.js +66 -0
  492. data/node_modules/playwright-core/lib/utils/traceUtils.js +44 -0
  493. data/node_modules/playwright-core/lib/utils/userAgent.js +105 -0
  494. data/node_modules/playwright-core/lib/utils/wsServer.js +127 -0
  495. data/node_modules/playwright-core/lib/utils/zipFile.js +75 -0
  496. data/node_modules/playwright-core/lib/utils/zones.js +62 -0
  497. data/node_modules/playwright-core/lib/utilsBundle.js +82 -0
  498. data/node_modules/playwright-core/lib/utilsBundleImpl/index.js +53 -0
  499. data/node_modules/playwright-core/lib/utilsBundleImpl/xdg-open +1066 -0
  500. data/node_modules/playwright-core/lib/vite/htmlReport/index.html +66 -0
  501. data/node_modules/playwright-core/lib/vite/recorder/assets/codeMirrorModule-aW6Vz3gf.js +24 -0
  502. data/node_modules/playwright-core/lib/vite/recorder/assets/codeMirrorModule-ez37Vkbh.css +1 -0
  503. data/node_modules/playwright-core/lib/vite/recorder/assets/codicon-DCmgc-ay.ttf +0 -0
  504. data/node_modules/playwright-core/lib/vite/recorder/assets/index-B-MT5gKo.css +1 -0
  505. data/node_modules/playwright-core/lib/vite/recorder/assets/index-DCpXOVIh.js +47 -0
  506. data/node_modules/playwright-core/lib/vite/recorder/index.html +29 -0
  507. data/node_modules/playwright-core/lib/vite/recorder/playwright-logo.svg +9 -0
  508. data/node_modules/playwright-core/lib/vite/traceViewer/assets/codeMirrorModule-eFKCUIu2.js +24 -0
  509. data/node_modules/playwright-core/lib/vite/traceViewer/assets/testServerConnection-DeE2kSzz.js +1 -0
  510. data/node_modules/playwright-core/lib/vite/traceViewer/assets/workbench-D0cirtfA.js +72 -0
  511. data/node_modules/playwright-core/lib/vite/traceViewer/assets/xtermModule-BeNbaIVa.js +9 -0
  512. data/node_modules/playwright-core/lib/vite/traceViewer/codeMirrorModule.ez37Vkbh.css +1 -0
  513. data/node_modules/playwright-core/lib/vite/traceViewer/codicon.DCmgc-ay.ttf +0 -0
  514. data/node_modules/playwright-core/lib/vite/traceViewer/embedded.BkuvsLJp.js +2 -0
  515. data/node_modules/playwright-core/lib/vite/traceViewer/embedded.html +16 -0
  516. data/node_modules/playwright-core/lib/vite/traceViewer/embedded.w7WN2u1R.css +1 -0
  517. data/node_modules/playwright-core/lib/vite/traceViewer/index.C968kAiC.js +2 -0
  518. data/node_modules/playwright-core/lib/vite/traceViewer/index.CrbWWHbf.css +1 -0
  519. data/node_modules/playwright-core/lib/vite/traceViewer/index.html +27 -0
  520. data/node_modules/playwright-core/lib/vite/traceViewer/playwright-logo.svg +9 -0
  521. data/node_modules/playwright-core/lib/vite/traceViewer/snapshot.html +21 -0
  522. data/node_modules/playwright-core/lib/vite/traceViewer/sw.bundle.js +3 -0
  523. data/node_modules/playwright-core/lib/vite/traceViewer/uiMode.BkFnr4V0.js +10 -0
  524. data/node_modules/playwright-core/lib/vite/traceViewer/uiMode.D3cNFP6u.css +1 -0
  525. data/node_modules/playwright-core/lib/vite/traceViewer/uiMode.html +18 -0
  526. data/node_modules/playwright-core/lib/vite/traceViewer/workbench.DjbIuxix.css +1 -0
  527. data/node_modules/playwright-core/lib/vite/traceViewer/xtermModule.DSXBckUd.css +32 -0
  528. data/node_modules/playwright-core/lib/zipBundle.js +25 -0
  529. data/node_modules/playwright-core/lib/zipBundleImpl.js +5 -0
  530. data/node_modules/playwright-core/package.json +44 -0
  531. data/node_modules/playwright-core/types/protocol.d.ts +21500 -0
  532. data/node_modules/playwright-core/types/structs.d.ts +45 -0
  533. data/node_modules/playwright-core/types/types.d.ts +21431 -0
  534. data/node_modules/undici-types/LICENSE +21 -0
  535. data/node_modules/undici-types/README.md +6 -0
  536. data/node_modules/undici-types/agent.d.ts +31 -0
  537. data/node_modules/undici-types/api.d.ts +43 -0
  538. data/node_modules/undici-types/balanced-pool.d.ts +29 -0
  539. data/node_modules/undici-types/cache.d.ts +36 -0
  540. data/node_modules/undici-types/client.d.ts +108 -0
  541. data/node_modules/undici-types/connector.d.ts +34 -0
  542. data/node_modules/undici-types/content-type.d.ts +21 -0
  543. data/node_modules/undici-types/cookies.d.ts +28 -0
  544. data/node_modules/undici-types/diagnostics-channel.d.ts +66 -0
  545. data/node_modules/undici-types/dispatcher.d.ts +255 -0
  546. data/node_modules/undici-types/env-http-proxy-agent.d.ts +21 -0
  547. data/node_modules/undici-types/errors.d.ts +149 -0
  548. data/node_modules/undici-types/eventsource.d.ts +63 -0
  549. data/node_modules/undici-types/fetch.d.ts +209 -0
  550. data/node_modules/undici-types/file.d.ts +39 -0
  551. data/node_modules/undici-types/filereader.d.ts +54 -0
  552. data/node_modules/undici-types/formdata.d.ts +108 -0
  553. data/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  554. data/node_modules/undici-types/global-origin.d.ts +7 -0
  555. data/node_modules/undici-types/handlers.d.ts +15 -0
  556. data/node_modules/undici-types/header.d.ts +4 -0
  557. data/node_modules/undici-types/index.d.ts +71 -0
  558. data/node_modules/undici-types/interceptors.d.ts +15 -0
  559. data/node_modules/undici-types/mock-agent.d.ts +50 -0
  560. data/node_modules/undici-types/mock-client.d.ts +25 -0
  561. data/node_modules/undici-types/mock-errors.d.ts +12 -0
  562. data/node_modules/undici-types/mock-interceptor.d.ts +93 -0
  563. data/node_modules/undici-types/mock-pool.d.ts +25 -0
  564. data/node_modules/undici-types/package.json +55 -0
  565. data/node_modules/undici-types/patch.d.ts +71 -0
  566. data/node_modules/undici-types/pool-stats.d.ts +19 -0
  567. data/node_modules/undici-types/pool.d.ts +39 -0
  568. data/node_modules/undici-types/proxy-agent.d.ts +28 -0
  569. data/node_modules/undici-types/readable.d.ts +60 -0
  570. data/node_modules/undici-types/retry-agent.d.ts +8 -0
  571. data/node_modules/undici-types/retry-handler.d.ts +116 -0
  572. data/node_modules/undici-types/util.d.ts +18 -0
  573. data/node_modules/undici-types/webidl.d.ts +222 -0
  574. data/node_modules/undici-types/websocket.d.ts +152 -0
  575. data/pokeedex.gemspec +32 -0
  576. data/spec/fixtures/pokemon_com/responses/GET-200-bulbasaur.html +2262 -0
  577. data/spec/fixtures/pokemon_com/responses/GET-404-not-found.html +808 -0
  578. data/spec/pokeedex/configuration_spec.rb +37 -0
  579. data/spec/pokeedex/database_spec.rb +21 -0
  580. data/spec/pokeedex/exceptions_spec.rb +11 -0
  581. data/spec/pokeedex/pokemon/base_spec.rb +15 -0
  582. data/spec/pokeedex/pokemon/decorators/base_spec.rb +63 -0
  583. data/spec/pokeedex/pokemon/model/base_spec.rb +36 -0
  584. data/spec/pokeedex/pokemon/scrapper/fetchers/base_spec.rb +36 -0
  585. data/spec/pokeedex/pokemon/scrapper/parsers/base_spec.rb +49 -0
  586. data/spec/pokeedex/pokemon/scrapper/pokedex_spec.rb +71 -0
  587. data/spec/pokeedex/pokemon/searcher/base.rb +81 -0
  588. data/spec/pokeedex_spec.rb +7 -0
  589. data/spec/spec_helper.rb +42 -0
  590. data/yarn.lock +41 -0
  591. metadata +731 -0
@@ -0,0 +1,398 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.runWatchModeLoop = runWatchModeLoop;
7
+ var _readline = _interopRequireDefault(require("readline"));
8
+ var _path = _interopRequireDefault(require("path"));
9
+ var _utils = require("playwright-core/lib/utils");
10
+ var _utilsBundle = require("playwright-core/lib/utilsBundle");
11
+ var _utilsBundle2 = require("../utilsBundle");
12
+ var _base = require("../reporters/base");
13
+ var _playwrightServer = require("playwright-core/lib/remote/playwrightServer");
14
+ var _testServer = require("./testServer");
15
+ var _stream = require("stream");
16
+ var _testServerConnection = require("../isomorphic/testServerConnection");
17
+ var _teleSuiteUpdater = require("../isomorphic/teleSuiteUpdater");
18
+ var _configLoader = require("../common/configLoader");
19
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
+ /**
21
+ * Copyright Microsoft Corporation. All rights reserved.
22
+ *
23
+ * Licensed under the Apache License, Version 2.0 (the "License");
24
+ * you may not use this file except in compliance with the License.
25
+ * You may obtain a copy of the License at
26
+ *
27
+ * http://www.apache.org/licenses/LICENSE-2.0
28
+ *
29
+ * Unless required by applicable law or agreed to in writing, software
30
+ * distributed under the License is distributed on an "AS IS" BASIS,
31
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
32
+ * See the License for the specific language governing permissions and
33
+ * limitations under the License.
34
+ */
35
+
36
+ class InMemoryTransport extends _stream.EventEmitter {
37
+ constructor(send) {
38
+ super();
39
+ this._send = void 0;
40
+ this._send = send;
41
+ }
42
+ close() {
43
+ this.emit('close');
44
+ }
45
+ onclose(listener) {
46
+ this.on('close', listener);
47
+ }
48
+ onerror(listener) {
49
+ // no-op to fulfil the interface, the user of InMemoryTransport doesn't emit any errors.
50
+ }
51
+ onmessage(listener) {
52
+ this.on('message', listener);
53
+ }
54
+ onopen(listener) {
55
+ this.on('open', listener);
56
+ }
57
+ send(data) {
58
+ this._send(data);
59
+ }
60
+ }
61
+ async function runWatchModeLoop(configLocation, initialOptions) {
62
+ if ((0, _configLoader.restartWithExperimentalTsEsm)(undefined, true)) return 'restarted';
63
+ const options = {
64
+ ...initialOptions
65
+ };
66
+ const testServerDispatcher = new _testServer.TestServerDispatcher(configLocation);
67
+ const transport = new InMemoryTransport(async data => {
68
+ const {
69
+ id,
70
+ method,
71
+ params
72
+ } = JSON.parse(data);
73
+ try {
74
+ const result = await testServerDispatcher.transport.dispatch(method, params);
75
+ transport.emit('message', JSON.stringify({
76
+ id,
77
+ result
78
+ }));
79
+ } catch (e) {
80
+ transport.emit('message', JSON.stringify({
81
+ id,
82
+ error: String(e)
83
+ }));
84
+ }
85
+ });
86
+ testServerDispatcher.transport.sendEvent = (method, params) => {
87
+ transport.emit('message', JSON.stringify({
88
+ method,
89
+ params
90
+ }));
91
+ };
92
+ const testServerConnection = new _testServerConnection.TestServerConnection(transport);
93
+ transport.emit('open');
94
+ const teleSuiteUpdater = new _teleSuiteUpdater.TeleSuiteUpdater({
95
+ pathSeparator: _path.default.sep,
96
+ onUpdate() {}
97
+ });
98
+ const dirtyTestIds = new Set();
99
+ let onDirtyTests = new _utils.ManualPromise();
100
+ let queue = Promise.resolve();
101
+ const changedFiles = new Set();
102
+ testServerConnection.onTestFilesChanged(({
103
+ testFiles
104
+ }) => {
105
+ testFiles.forEach(file => changedFiles.add(file));
106
+ queue = queue.then(async () => {
107
+ var _onDirtyTests$resolve, _onDirtyTests;
108
+ if (changedFiles.size === 0) return;
109
+ const {
110
+ report
111
+ } = await testServerConnection.listTests({
112
+ locations: options.files,
113
+ projects: options.projects,
114
+ grep: options.grep
115
+ });
116
+ teleSuiteUpdater.processListReport(report);
117
+ for (const test of teleSuiteUpdater.rootSuite.allTests()) {
118
+ if (changedFiles.has(test.location.file)) dirtyTestIds.add(test.id);
119
+ }
120
+ changedFiles.clear();
121
+ if (dirtyTestIds.size > 0) (_onDirtyTests$resolve = (_onDirtyTests = onDirtyTests).resolve) === null || _onDirtyTests$resolve === void 0 || _onDirtyTests$resolve.call(_onDirtyTests);
122
+ });
123
+ });
124
+ testServerConnection.onReport(report => teleSuiteUpdater.processTestReportEvent(report));
125
+ await testServerConnection.initialize({
126
+ interceptStdio: false,
127
+ watchTestDirs: true
128
+ });
129
+ await testServerConnection.runGlobalSetup({});
130
+ const {
131
+ report
132
+ } = await testServerConnection.listTests({
133
+ locations: options.files,
134
+ projects: options.projects,
135
+ grep: options.grep
136
+ });
137
+ teleSuiteUpdater.processListReport(report);
138
+ let lastRun = {
139
+ type: 'regular'
140
+ };
141
+ let result = 'passed';
142
+
143
+ // Enter the watch loop.
144
+ await runTests(options, testServerConnection);
145
+ while (true) {
146
+ printPrompt();
147
+ const readCommandPromise = readCommand();
148
+ await Promise.race([onDirtyTests, readCommandPromise]);
149
+ if (!readCommandPromise.isDone()) readCommandPromise.resolve('changed');
150
+ const command = await readCommandPromise;
151
+ if (command === 'changed') {
152
+ onDirtyTests = new _utils.ManualPromise();
153
+ const testIds = [...dirtyTestIds];
154
+ dirtyTestIds.clear();
155
+ await runTests(options, testServerConnection, {
156
+ testIds,
157
+ title: 'files changed'
158
+ });
159
+ lastRun = {
160
+ type: 'changed',
161
+ dirtyTestIds: testIds
162
+ };
163
+ continue;
164
+ }
165
+ if (command === 'run') {
166
+ // All means reset filters.
167
+ await runTests(options, testServerConnection);
168
+ lastRun = {
169
+ type: 'regular'
170
+ };
171
+ continue;
172
+ }
173
+ if (command === 'project') {
174
+ const {
175
+ selectedProjects
176
+ } = await _utilsBundle2.enquirer.prompt({
177
+ type: 'multiselect',
178
+ name: 'selectedProjects',
179
+ message: 'Select projects',
180
+ choices: teleSuiteUpdater.rootSuite.suites.map(s => s.title)
181
+ }).catch(() => ({
182
+ selectedProjects: null
183
+ }));
184
+ if (!selectedProjects) continue;
185
+ options.projects = selectedProjects.length ? selectedProjects : undefined;
186
+ await runTests(options, testServerConnection);
187
+ lastRun = {
188
+ type: 'regular'
189
+ };
190
+ continue;
191
+ }
192
+ if (command === 'file') {
193
+ const {
194
+ filePattern
195
+ } = await _utilsBundle2.enquirer.prompt({
196
+ type: 'text',
197
+ name: 'filePattern',
198
+ message: 'Input filename pattern (regex)'
199
+ }).catch(() => ({
200
+ filePattern: null
201
+ }));
202
+ if (filePattern === null) continue;
203
+ if (filePattern.trim()) options.files = filePattern.split(' ');else options.files = undefined;
204
+ await runTests(options, testServerConnection);
205
+ lastRun = {
206
+ type: 'regular'
207
+ };
208
+ continue;
209
+ }
210
+ if (command === 'grep') {
211
+ const {
212
+ testPattern
213
+ } = await _utilsBundle2.enquirer.prompt({
214
+ type: 'text',
215
+ name: 'testPattern',
216
+ message: 'Input test name pattern (regex)'
217
+ }).catch(() => ({
218
+ testPattern: null
219
+ }));
220
+ if (testPattern === null) continue;
221
+ if (testPattern.trim()) options.grep = testPattern;else options.grep = undefined;
222
+ await runTests(options, testServerConnection);
223
+ lastRun = {
224
+ type: 'regular'
225
+ };
226
+ continue;
227
+ }
228
+ if (command === 'failed') {
229
+ const failedTestIds = teleSuiteUpdater.rootSuite.allTests().filter(t => !t.ok()).map(t => t.id);
230
+ await runTests({}, testServerConnection, {
231
+ title: 'running failed tests',
232
+ testIds: failedTestIds
233
+ });
234
+ lastRun = {
235
+ type: 'failed',
236
+ failedTestIds
237
+ };
238
+ continue;
239
+ }
240
+ if (command === 'repeat') {
241
+ if (lastRun.type === 'regular') {
242
+ await runTests(options, testServerConnection, {
243
+ title: 're-running tests'
244
+ });
245
+ continue;
246
+ } else if (lastRun.type === 'changed') {
247
+ await runTests(options, testServerConnection, {
248
+ title: 're-running tests',
249
+ testIds: lastRun.dirtyTestIds
250
+ });
251
+ } else if (lastRun.type === 'failed') {
252
+ await runTests({}, testServerConnection, {
253
+ title: 're-running tests',
254
+ testIds: lastRun.failedTestIds
255
+ });
256
+ }
257
+ continue;
258
+ }
259
+ if (command === 'toggle-show-browser') {
260
+ await toggleShowBrowser();
261
+ continue;
262
+ }
263
+ if (command === 'exit') break;
264
+ if (command === 'interrupted') {
265
+ result = 'interrupted';
266
+ break;
267
+ }
268
+ }
269
+ const teardown = await testServerConnection.runGlobalTeardown({});
270
+ return result === 'passed' ? teardown.status : result;
271
+ }
272
+ async function runTests(watchOptions, testServerConnection, options) {
273
+ printConfiguration(watchOptions, options === null || options === void 0 ? void 0 : options.title);
274
+ await testServerConnection.runTests({
275
+ grep: watchOptions.grep,
276
+ testIds: options === null || options === void 0 ? void 0 : options.testIds,
277
+ locations: watchOptions === null || watchOptions === void 0 ? void 0 : watchOptions.files,
278
+ projects: watchOptions.projects,
279
+ connectWsEndpoint,
280
+ reuseContext: connectWsEndpoint ? true : undefined,
281
+ workers: connectWsEndpoint ? 1 : undefined,
282
+ headed: connectWsEndpoint ? true : undefined
283
+ });
284
+ }
285
+ function readCommand() {
286
+ const result = new _utils.ManualPromise();
287
+ const rl = _readline.default.createInterface({
288
+ input: process.stdin,
289
+ escapeCodeTimeout: 50
290
+ });
291
+ _readline.default.emitKeypressEvents(process.stdin, rl);
292
+ if (process.stdin.isTTY) process.stdin.setRawMode(true);
293
+ const handler = (text, key) => {
294
+ if (text === '\x03' || text === '\x1B' || key && key.name === 'escape' || key && key.ctrl && key.name === 'c') {
295
+ result.resolve('interrupted');
296
+ return;
297
+ }
298
+ if (process.platform !== 'win32' && key && key.ctrl && key.name === 'z') {
299
+ process.kill(process.ppid, 'SIGTSTP');
300
+ process.kill(process.pid, 'SIGTSTP');
301
+ }
302
+ const name = key === null || key === void 0 ? void 0 : key.name;
303
+ if (name === 'q') {
304
+ result.resolve('exit');
305
+ return;
306
+ }
307
+ if (name === 'h') {
308
+ process.stdout.write(`${(0, _base.separator)()}
309
+ Run tests
310
+ ${_utilsBundle.colors.bold('enter')} ${_utilsBundle.colors.dim('run tests')}
311
+ ${_utilsBundle.colors.bold('f')} ${_utilsBundle.colors.dim('run failed tests')}
312
+ ${_utilsBundle.colors.bold('r')} ${_utilsBundle.colors.dim('repeat last run')}
313
+ ${_utilsBundle.colors.bold('q')} ${_utilsBundle.colors.dim('quit')}
314
+
315
+ Change settings
316
+ ${_utilsBundle.colors.bold('c')} ${_utilsBundle.colors.dim('set project')}
317
+ ${_utilsBundle.colors.bold('p')} ${_utilsBundle.colors.dim('set file filter')}
318
+ ${_utilsBundle.colors.bold('t')} ${_utilsBundle.colors.dim('set title filter')}
319
+ ${_utilsBundle.colors.bold('s')} ${_utilsBundle.colors.dim('toggle show & reuse the browser')}
320
+ `);
321
+ return;
322
+ }
323
+ switch (name) {
324
+ case 'return':
325
+ result.resolve('run');
326
+ break;
327
+ case 'r':
328
+ result.resolve('repeat');
329
+ break;
330
+ case 'c':
331
+ result.resolve('project');
332
+ break;
333
+ case 'p':
334
+ result.resolve('file');
335
+ break;
336
+ case 't':
337
+ result.resolve('grep');
338
+ break;
339
+ case 'f':
340
+ result.resolve('failed');
341
+ break;
342
+ case 's':
343
+ result.resolve('toggle-show-browser');
344
+ break;
345
+ }
346
+ };
347
+ process.stdin.on('keypress', handler);
348
+ void result.finally(() => {
349
+ process.stdin.off('keypress', handler);
350
+ rl.close();
351
+ if (process.stdin.isTTY) process.stdin.setRawMode(false);
352
+ });
353
+ return result;
354
+ }
355
+ let showBrowserServer;
356
+ let connectWsEndpoint = undefined;
357
+ let seq = 0;
358
+ function printConfiguration(options, title) {
359
+ const packageManagerCommand = (0, _utils.getPackageManagerExecCommand)();
360
+ const tokens = [];
361
+ tokens.push(`${packageManagerCommand} playwright test`);
362
+ if (options.projects) tokens.push(...options.projects.map(p => _utilsBundle.colors.blue(`--project ${p}`)));
363
+ if (options.grep) tokens.push(_utilsBundle.colors.red(`--grep ${options.grep}`));
364
+ if (options.files) tokens.push(...options.files.map(a => _utilsBundle.colors.bold(a)));
365
+ if (title) tokens.push(_utilsBundle.colors.dim(`(${title})`));
366
+ if (seq) tokens.push(_utilsBundle.colors.dim(`#${seq}`));
367
+ ++seq;
368
+ const lines = [];
369
+ const sep = (0, _base.separator)();
370
+ lines.push('\x1Bc' + sep);
371
+ lines.push(`${tokens.join(' ')}`);
372
+ lines.push(`${_utilsBundle.colors.dim('Show & reuse browser:')} ${_utilsBundle.colors.bold(showBrowserServer ? 'on' : 'off')}`);
373
+ process.stdout.write(lines.join('\n'));
374
+ }
375
+ function printPrompt() {
376
+ const sep = (0, _base.separator)();
377
+ process.stdout.write(`
378
+ ${sep}
379
+ ${_utilsBundle.colors.dim('Waiting for file changes. Press')} ${_utilsBundle.colors.bold('enter')} ${_utilsBundle.colors.dim('to run tests')}, ${_utilsBundle.colors.bold('q')} ${_utilsBundle.colors.dim('to quit or')} ${_utilsBundle.colors.bold('h')} ${_utilsBundle.colors.dim('for more options.')}
380
+ `);
381
+ }
382
+ async function toggleShowBrowser() {
383
+ if (!showBrowserServer) {
384
+ showBrowserServer = new _playwrightServer.PlaywrightServer({
385
+ mode: 'extension',
386
+ path: '/' + (0, _utils.createGuid)(),
387
+ maxConnections: 1
388
+ });
389
+ connectWsEndpoint = await showBrowserServer.listen();
390
+ process.stdout.write(`${_utilsBundle.colors.dim('Show & reuse browser:')} ${_utilsBundle.colors.bold('on')}\n`);
391
+ } else {
392
+ var _showBrowserServer;
393
+ await ((_showBrowserServer = showBrowserServer) === null || _showBrowserServer === void 0 ? void 0 : _showBrowserServer.close());
394
+ showBrowserServer = undefined;
395
+ connectWsEndpoint = undefined;
396
+ process.stdout.write(`${_utilsBundle.colors.dim('Show & reuse browser:')} ${_utilsBundle.colors.bold('off')}\n`);
397
+ }
398
+ }
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.WorkerHost = void 0;
7
+ var _fs = _interopRequireDefault(require("fs"));
8
+ var _path = _interopRequireDefault(require("path"));
9
+ var _ipc = require("../common/ipc");
10
+ var _processHost = require("./processHost");
11
+ var _folders = require("../isomorphic/folders");
12
+ var _utils = require("playwright-core/lib/utils");
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ /**
15
+ * Copyright Microsoft Corporation. All rights reserved.
16
+ *
17
+ * Licensed under the Apache License, Version 2.0 (the "License");
18
+ * you may not use this file except in compliance with the License.
19
+ * You may obtain a copy of the License at
20
+ *
21
+ * http://www.apache.org/licenses/LICENSE-2.0
22
+ *
23
+ * Unless required by applicable law or agreed to in writing, software
24
+ * distributed under the License is distributed on an "AS IS" BASIS,
25
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
26
+ * See the License for the specific language governing permissions and
27
+ * limitations under the License.
28
+ */
29
+
30
+ let lastWorkerIndex = 0;
31
+ class WorkerHost extends _processHost.ProcessHost {
32
+ constructor(testGroup, parallelIndex, config, extraEnv, outputDir) {
33
+ const workerIndex = lastWorkerIndex++;
34
+ super(require.resolve('../worker/workerMain.js'), `worker-${workerIndex}`, {
35
+ ...extraEnv,
36
+ FORCE_COLOR: '1',
37
+ DEBUG_COLORS: '1'
38
+ });
39
+ this.parallelIndex = void 0;
40
+ this.workerIndex = void 0;
41
+ this._hash = void 0;
42
+ this._params = void 0;
43
+ this._didFail = false;
44
+ this.workerIndex = workerIndex;
45
+ this.parallelIndex = parallelIndex;
46
+ this._hash = testGroup.workerHash;
47
+ this._params = {
48
+ workerIndex: this.workerIndex,
49
+ parallelIndex,
50
+ repeatEachIndex: testGroup.repeatEachIndex,
51
+ projectId: testGroup.projectId,
52
+ config,
53
+ artifactsDir: _path.default.join(outputDir, (0, _folders.artifactsFolderName)(workerIndex))
54
+ };
55
+ }
56
+ async start() {
57
+ await _fs.default.promises.mkdir(this._params.artifactsDir, {
58
+ recursive: true
59
+ });
60
+ return await this.startRunner(this._params, {
61
+ onStdOut: chunk => this.emit('stdOut', (0, _ipc.stdioChunkToParams)(chunk)),
62
+ onStdErr: chunk => this.emit('stdErr', (0, _ipc.stdioChunkToParams)(chunk))
63
+ });
64
+ }
65
+ async onExit() {
66
+ await (0, _utils.removeFolders)([this._params.artifactsDir]);
67
+ }
68
+ async stop(didFail) {
69
+ if (didFail) this._didFail = true;
70
+ await super.stop();
71
+ }
72
+ runTestGroup(runPayload) {
73
+ this.sendMessageNoReply({
74
+ method: 'runTestGroup',
75
+ params: runPayload
76
+ });
77
+ }
78
+ hash() {
79
+ return this._hash;
80
+ }
81
+ didFail() {
82
+ return this._didFail;
83
+ }
84
+ }
85
+ exports.WorkerHost = WorkerHost;
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.tsConfigLoader = tsConfigLoader;
7
+ exports.walkForTsConfig = walkForTsConfig;
8
+ var path = _interopRequireWildcard(require("path"));
9
+ var fs = _interopRequireWildcard(require("fs"));
10
+ var _utilsBundle = require("../utilsBundle");
11
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
12
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
13
+ /**
14
+ * The MIT License (MIT)
15
+ *
16
+ * Copyright (c) 2016 Jonas Kello
17
+ *
18
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
19
+ * of this software and associated documentation files (the "Software"), to deal
20
+ * in the Software without restriction, including without limitation the rights
21
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
22
+ * copies of the Software, and to permit persons to whom the Software is
23
+ * furnished to do so, subject to the following conditions:
24
+ *
25
+ * The above copyright notice and this permission notice shall be included in all
26
+ * copies or substantial portions of the Software.
27
+ *
28
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
29
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
30
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
31
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
32
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
33
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
34
+ * SOFTWARE.
35
+ */
36
+
37
+ /* eslint-disable */
38
+
39
+ /**
40
+ * Typing for the parts of tsconfig that we care about
41
+ */
42
+
43
+ function tsConfigLoader(tsconfigPathOrDirecotry) {
44
+ const configPath = resolveConfigPath(tsconfigPathOrDirecotry);
45
+ if (!configPath) return [];
46
+ const references = [];
47
+ const config = loadTsConfig(configPath, references);
48
+ return [config, ...references];
49
+ }
50
+ function resolveConfigPath(tsconfigPathOrDirecotry) {
51
+ if (fs.statSync(tsconfigPathOrDirecotry).isFile()) {
52
+ return path.resolve(tsconfigPathOrDirecotry);
53
+ }
54
+ const configAbsolutePath = walkForTsConfig(tsconfigPathOrDirecotry);
55
+ return configAbsolutePath ? path.resolve(configAbsolutePath) : undefined;
56
+ }
57
+ function walkForTsConfig(directory, existsSync = fs.existsSync) {
58
+ const tsconfigPath = path.join(directory, "./tsconfig.json");
59
+ if (existsSync(tsconfigPath)) {
60
+ return tsconfigPath;
61
+ }
62
+ const jsconfigPath = path.join(directory, "./jsconfig.json");
63
+ if (existsSync(jsconfigPath)) {
64
+ return jsconfigPath;
65
+ }
66
+ const parentDirectory = path.join(directory, "../");
67
+
68
+ // If we reached the top
69
+ if (directory === parentDirectory) {
70
+ return undefined;
71
+ }
72
+ return walkForTsConfig(parentDirectory, existsSync);
73
+ }
74
+ function resolveConfigFile(baseConfigFile, referencedConfigFile) {
75
+ if (!referencedConfigFile.endsWith('.json')) referencedConfigFile += '.json';
76
+ const currentDir = path.dirname(baseConfigFile);
77
+ let resolvedConfigFile = path.resolve(currentDir, referencedConfigFile);
78
+ // TODO: I don't see how this makes sense, delete in the next minor release.
79
+ if (referencedConfigFile.includes('/') && referencedConfigFile.includes('.') && !fs.existsSync(resolvedConfigFile)) resolvedConfigFile = path.join(currentDir, 'node_modules', referencedConfigFile);
80
+ return resolvedConfigFile;
81
+ }
82
+ function loadTsConfig(configFilePath, references, visited = new Map()) {
83
+ var _parsedConfig$compile, _parsedConfig$compile2, _parsedConfig$compile3;
84
+ if (visited.has(configFilePath)) return visited.get(configFilePath);
85
+ let result = {
86
+ tsConfigPath: configFilePath
87
+ };
88
+ // Retain result instance below, so that caching works.
89
+ visited.set(configFilePath, result);
90
+ if (!fs.existsSync(configFilePath)) return result;
91
+ const configString = fs.readFileSync(configFilePath, 'utf-8');
92
+ const cleanedJson = StripBom(configString);
93
+ const parsedConfig = _utilsBundle.json5.parse(cleanedJson);
94
+ const extendsArray = Array.isArray(parsedConfig.extends) ? parsedConfig.extends : parsedConfig.extends ? [parsedConfig.extends] : [];
95
+ for (const extendedConfig of extendsArray) {
96
+ const extendedConfigPath = resolveConfigFile(configFilePath, extendedConfig);
97
+ const base = loadTsConfig(extendedConfigPath, references, visited);
98
+ // Retain result instance, so that caching works.
99
+ Object.assign(result, base, {
100
+ tsConfigPath: configFilePath
101
+ });
102
+ }
103
+ if (((_parsedConfig$compile = parsedConfig.compilerOptions) === null || _parsedConfig$compile === void 0 ? void 0 : _parsedConfig$compile.allowJs) !== undefined) result.allowJs = parsedConfig.compilerOptions.allowJs;
104
+ if (((_parsedConfig$compile2 = parsedConfig.compilerOptions) === null || _parsedConfig$compile2 === void 0 ? void 0 : _parsedConfig$compile2.paths) !== undefined) {
105
+ // We must store pathsBasePath from the config that defines "paths" and later resolve
106
+ // based on this absolute path, when no "baseUrl" is specified. See tsc for reference:
107
+ // https://github.com/microsoft/TypeScript/blob/353ccb7688351ae33ccf6e0acb913aa30621eaf4/src/compiler/commandLineParser.ts#L3129
108
+ // https://github.com/microsoft/TypeScript/blob/353ccb7688351ae33ccf6e0acb913aa30621eaf4/src/compiler/moduleSpecifiers.ts#L510
109
+ result.paths = {
110
+ mapping: parsedConfig.compilerOptions.paths,
111
+ pathsBasePath: path.dirname(configFilePath)
112
+ };
113
+ }
114
+ if (((_parsedConfig$compile3 = parsedConfig.compilerOptions) === null || _parsedConfig$compile3 === void 0 ? void 0 : _parsedConfig$compile3.baseUrl) !== undefined) {
115
+ // Follow tsc and resolve all relative file paths in the config right away.
116
+ // This way it is safe to inherit paths between the configs.
117
+ result.absoluteBaseUrl = path.resolve(path.dirname(configFilePath), parsedConfig.compilerOptions.baseUrl);
118
+ }
119
+ for (const ref of parsedConfig.references || []) references.push(loadTsConfig(resolveConfigFile(configFilePath, ref.path), references, visited));
120
+ if (path.basename(configFilePath) === 'jsconfig.json' && result.allowJs === undefined) result.allowJs = true;
121
+ return result;
122
+ }
123
+ function StripBom(string) {
124
+ if (typeof string !== 'string') {
125
+ throw new TypeError(`Expected a string, got ${typeof string}`);
126
+ }
127
+
128
+ // Catches EFBBBF (UTF-8 BOM) because the buffer-to-string
129
+ // conversion translates it to FEFF (UTF-16 BOM).
130
+ if (string.charCodeAt(0) === 0xFEFF) {
131
+ return string.slice(1);
132
+ }
133
+ return string;
134
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.types = exports.traverse = exports.parse = exports.declare = exports.codeFrameColumns = exports.babelTransform = void 0;
7
+ /**
8
+ * Copyright (c) Microsoft Corporation.
9
+ *
10
+ * Licensed under the Apache License, Version 2.0 (the "License");
11
+ * you may not use this file except in compliance with the License.
12
+ * You may obtain a copy of the License at
13
+ *
14
+ * http://www.apache.org/licenses/LICENSE-2.0
15
+ *
16
+ * Unless required by applicable law or agreed to in writing, software
17
+ * distributed under the License is distributed on an "AS IS" BASIS,
18
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
+ * See the License for the specific language governing permissions and
20
+ * limitations under the License.
21
+ */
22
+
23
+ const codeFrameColumns = exports.codeFrameColumns = require('./babelBundleImpl').codeFrameColumns;
24
+ const declare = exports.declare = require('./babelBundleImpl').declare;
25
+ const types = exports.types = require('./babelBundleImpl').types;
26
+ const parse = exports.parse = require('./babelBundleImpl').parse;
27
+ const traverse = exports.traverse = require('./babelBundleImpl').traverse;
28
+ const babelTransform = exports.babelTransform = require('./babelBundleImpl').babelTransform;