testcafe 1.20.2-alpha.1 → 2.0.0-rc.3

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 (231) hide show
  1. package/lib/api/request-hooks/assert-type.js +2 -2
  2. package/lib/api/request-hooks/hook.js +2 -2
  3. package/lib/api/request-hooks/request-logger.js +2 -2
  4. package/lib/api/skip-js-errors/index.js +62 -0
  5. package/lib/api/structure/base-unit.js +2 -2
  6. package/lib/api/structure/fixture.js +13 -13
  7. package/lib/api/structure/test.js +18 -17
  8. package/lib/api/structure/testing-unit.js +26 -16
  9. package/lib/api/test-controller/assertion.js +5 -5
  10. package/lib/api/test-controller/execution-context.js +2 -2
  11. package/lib/api/test-controller/index.js +33 -30
  12. package/lib/api/test-controller/proxy.js +2 -2
  13. package/lib/api/test-page-url.js +4 -4
  14. package/lib/api/test-run-tracker.js +2 -2
  15. package/lib/api/wrap-test-function.js +3 -3
  16. package/lib/assertions/executor.js +4 -4
  17. package/lib/assertions/get-fn.js +3 -3
  18. package/lib/browser/connection/gateway.js +18 -18
  19. package/lib/browser/connection/get-hints.js +8 -8
  20. package/lib/browser/connection/index.js +11 -11
  21. package/lib/browser/connection/remotes-queue.js +4 -4
  22. package/lib/browser/provider/built-in/dedicated/base.js +6 -6
  23. package/lib/browser/provider/built-in/dedicated/chrome/cdp-client/index.js +10 -10
  24. package/lib/browser/provider/built-in/dedicated/chrome/config.js +17 -17
  25. package/lib/browser/provider/built-in/dedicated/chrome/create-temp-profile.js +4 -4
  26. package/lib/browser/provider/built-in/dedicated/chrome/index.js +6 -6
  27. package/lib/browser/provider/built-in/dedicated/chrome/local-chrome.js +6 -6
  28. package/lib/browser/provider/built-in/dedicated/chrome/runtime-info.js +4 -4
  29. package/lib/browser/provider/built-in/dedicated/edge/runtime-info.js +2 -2
  30. package/lib/browser/provider/built-in/dedicated/firefox/config.js +8 -8
  31. package/lib/browser/provider/built-in/dedicated/firefox/create-temp-profile.js +3 -3
  32. package/lib/browser/provider/built-in/dedicated/firefox/index.js +5 -5
  33. package/lib/browser/provider/built-in/dedicated/firefox/local-firefox.js +2 -2
  34. package/lib/browser/provider/built-in/dedicated/firefox/marionette-client/index.js +7 -7
  35. package/lib/browser/provider/built-in/dedicated/firefox/runtime-info.js +3 -3
  36. package/lib/browser/provider/built-in/path.js +2 -2
  37. package/lib/browser/provider/built-in/remote.js +3 -3
  38. package/lib/browser/provider/index.js +5 -5
  39. package/lib/browser/provider/plugin-host.js +5 -6
  40. package/lib/browser/provider/pool.js +4 -4
  41. package/lib/browser/provider/utils/argument-parsing.js +3 -3
  42. package/lib/browser/provider/utils/browser-starter.js +2 -2
  43. package/lib/cli/argument-parser/index.js +52 -41
  44. package/lib/cli/argument-parser/parse-utils.js +2 -2
  45. package/lib/cli/authentication-helper.js +3 -3
  46. package/lib/cli/cli.js +8 -8
  47. package/lib/cli/correct-browsers-and-sources.js +2 -2
  48. package/lib/cli/index.js +2 -2
  49. package/lib/cli/log.js +3 -3
  50. package/lib/cli/remotes-wizard.js +3 -3
  51. package/lib/client/automation/index.js +120 -34
  52. package/lib/client/automation/index.min.js +1 -1
  53. package/lib/client/browser/idle-page/index.js +321 -317
  54. package/lib/client/browser/service-worker.js +244 -290
  55. package/lib/client/core/deps/hammerhead.js +12 -4
  56. package/lib/client/core/index.js +145 -55
  57. package/lib/client/core/index.min.js +1 -1
  58. package/lib/client/core/utils/dom.js +33 -28
  59. package/lib/client/core/utils/position.js +18 -14
  60. package/lib/client/core/utils/style.js +8 -4
  61. package/lib/client/driver/command-executors/client-functions/selector-executor/filter.js +5 -5
  62. package/lib/client/driver/command-executors/client-functions/selector-executor/utils.js +3 -3
  63. package/lib/client/driver/deps/hammerhead.js +12 -4
  64. package/lib/client/driver/deps/testcafe-core.js +12 -4
  65. package/lib/client/driver/deps/testcafe-ui.js +12 -4
  66. package/lib/client/driver/index.js +654 -630
  67. package/lib/client/driver/index.min.js +1 -1
  68. package/lib/client/driver/status.js +2 -2
  69. package/lib/client/ui/index.js +10 -8
  70. package/lib/client/ui/index.min.js +1 -1
  71. package/lib/client-functions/builder-symbol.js +1 -2
  72. package/lib/client-functions/client-function-builder.js +12 -12
  73. package/lib/client-functions/replicator.js +2 -2
  74. package/lib/client-functions/selector-api-execution-mode.js +2 -2
  75. package/lib/client-functions/selectors/add-api.js +48 -48
  76. package/lib/client-functions/selectors/selector-builder.js +17 -17
  77. package/lib/compiler/compile-client-function.js +6 -6
  78. package/lib/compiler/index.js +9 -9
  79. package/lib/compiler/test-file/api-based.js +8 -8
  80. package/lib/compiler/test-file/base.js +6 -6
  81. package/lib/compiler/test-file/exportble-lib-path.js +2 -2
  82. package/lib/compiler/test-file/formats/coffeescript/compiler.js +2 -2
  83. package/lib/compiler/test-file/formats/coffeescript/get-test-list.js +2 -2
  84. package/lib/compiler/test-file/formats/es-next/compiler.js +4 -4
  85. package/lib/compiler/test-file/formats/es-next/get-test-list.js +4 -4
  86. package/lib/compiler/test-file/formats/raw.js +2 -2
  87. package/lib/compiler/test-file/formats/typescript/compiler.js +11 -11
  88. package/lib/compiler/test-file/formats/typescript/get-test-list.js +3 -3
  89. package/lib/compiler/test-file/test-file-parser-base.js +3 -3
  90. package/lib/configuration/configuration-base.js +15 -15
  91. package/lib/configuration/interfaces.js +1 -1
  92. package/lib/configuration/skip-js-errors-option-names.js +11 -0
  93. package/lib/configuration/testcafe-configuration.js +21 -16
  94. package/lib/configuration/types.js +1 -1
  95. package/lib/configuration/typescript-configuration.js +4 -4
  96. package/lib/custom-client-scripts/assert-type.js +2 -2
  97. package/lib/custom-client-scripts/client-script.js +6 -6
  98. package/lib/custom-client-scripts/get-code.js +2 -2
  99. package/lib/custom-client-scripts/routing.js +3 -3
  100. package/lib/custom-client-scripts/utils.js +3 -3
  101. package/lib/dashboard/connector.js +4 -4
  102. package/lib/dashboard/get-default-project-link.js +2 -2
  103. package/lib/dashboard/index.js +26 -26
  104. package/lib/errors/create-stack-filter.js +2 -2
  105. package/lib/errors/error-list.js +2 -2
  106. package/lib/errors/get-callsite.js +2 -2
  107. package/lib/errors/is-internal-stack-frame.js +5 -5
  108. package/lib/errors/process-test-fn-error.js +2 -2
  109. package/lib/errors/runtime/index.js +10 -10
  110. package/lib/errors/runtime/templates.js +5 -2
  111. package/lib/errors/runtime/type-assertions.js +6 -6
  112. package/lib/errors/stack-cleaning-hook.js +2 -2
  113. package/lib/errors/test-run/formattable-adapter.js +7 -7
  114. package/lib/errors/test-run/index.js +25 -5
  115. package/lib/errors/test-run/render-error-template/index.js +6 -6
  116. package/lib/errors/test-run/render-error-template/utils.js +2 -2
  117. package/lib/errors/test-run/templates.js +40 -31
  118. package/lib/errors/test-run/utils.js +7 -7
  119. package/lib/errors/types.js +5 -1
  120. package/lib/index.js +1 -1
  121. package/lib/live/file-watcher/index.js +2 -2
  122. package/lib/live/keyboard-observer.js +3 -3
  123. package/lib/live/test-run-controller.js +3 -3
  124. package/lib/live/test-run.js +3 -2
  125. package/lib/live/test-runner.js +2 -2
  126. package/lib/load-assets.js +2 -2
  127. package/lib/notifications/add-rendered-warning.js +4 -4
  128. package/lib/notifications/debug-logger.js +6 -6
  129. package/lib/notifications/deprecated.js +2 -2
  130. package/lib/notifications/information-message.js +4 -3
  131. package/lib/proxyless/resource-injector.js +4 -4
  132. package/lib/reporter/command/command-formatter.js +4 -4
  133. package/lib/reporter/index.js +10 -10
  134. package/lib/reporter/plugin-host.js +7 -7
  135. package/lib/role/index.js +8 -8
  136. package/lib/role/role.js +2 -2
  137. package/lib/runner/bootstrapper.js +20 -20
  138. package/lib/runner/browser-job.js +3 -3
  139. package/lib/runner/browser-set.js +12 -12
  140. package/lib/runner/fixture-hook-controller.js +5 -5
  141. package/lib/runner/index.js +43 -33
  142. package/lib/runner/task/index.js +10 -6
  143. package/lib/runner/test-run-hook-controller.js +5 -5
  144. package/lib/runner/tested-app.js +7 -7
  145. package/lib/screenshots/capturer.js +17 -17
  146. package/lib/screenshots/crop.js +8 -8
  147. package/lib/screenshots/index.js +6 -10
  148. package/lib/screenshots/utils.js +4 -4
  149. package/lib/services/compiler/host.js +8 -8
  150. package/lib/services/compiler/service.js +13 -13
  151. package/lib/services/compiler/test-run-proxy.js +8 -8
  152. package/lib/services/serialization/replicator/transforms/callsite-record-transform.js +2 -2
  153. package/lib/services/serialization/replicator/transforms/command-base-trasform/command-constructors.js +2 -1
  154. package/lib/services/serialization/replicator/transforms/command-base-trasform/index.js +3 -3
  155. package/lib/services/serialization/replicator/transforms/raw-command-callsite-record-transform.js +2 -2
  156. package/lib/services/serialization/test-structure.js +4 -4
  157. package/lib/services/utils/ipc/interfaces.js +1 -3
  158. package/lib/services/utils/ipc/io.js +3 -3
  159. package/lib/services/utils/ipc/message.js +2 -2
  160. package/lib/services/utils/ipc/proxy.js +4 -4
  161. package/lib/services/utils/ipc/transport.js +2 -2
  162. package/lib/shared/errors/index.js +9 -2
  163. package/lib/shared/errors/selector-error-ctor-callback.js +7 -3
  164. package/lib/test-run/bookmark.js +1 -1
  165. package/lib/test-run/browser-manipulation-queue.js +3 -3
  166. package/lib/test-run/commands/actions.js +66 -46
  167. package/lib/test-run/commands/assertion.js +3 -3
  168. package/lib/test-run/commands/base.js +2 -2
  169. package/lib/test-run/commands/browser-manipulation.js +8 -8
  170. package/lib/test-run/commands/observation.js +4 -4
  171. package/lib/test-run/commands/options.js +27 -12
  172. package/lib/test-run/commands/type.js +2 -1
  173. package/lib/test-run/commands/utils.js +3 -2
  174. package/lib/test-run/commands/validations/argument.js +19 -10
  175. package/lib/test-run/commands/validations/factories.js +10 -2
  176. package/lib/test-run/commands/validations/initializers.js +4 -4
  177. package/lib/test-run/debug-log.js +4 -4
  178. package/lib/test-run/execute-js-expression/index.js +4 -4
  179. package/lib/test-run/index.js +48 -41
  180. package/lib/test-run/request/create-request-options.js +9 -9
  181. package/lib/test-run/request/process-response-data.js +2 -2
  182. package/lib/test-run/request/send.js +5 -5
  183. package/lib/testcafe.js +8 -4
  184. package/lib/utils/check-file-path.js +2 -2
  185. package/lib/utils/check-url.js +2 -2
  186. package/lib/utils/correct-file-path.js +4 -4
  187. package/lib/utils/delegated-api.js +1 -1
  188. package/lib/utils/detect-ffmpeg.js +3 -3
  189. package/lib/utils/diff/colors.js +2 -2
  190. package/lib/utils/diff/index.js +11 -7
  191. package/lib/utils/diff/util.js +5 -5
  192. package/lib/utils/diff.js +4 -4
  193. package/lib/utils/escape-user-agent.js +2 -2
  194. package/lib/utils/execute-fn-with-timeout.js +2 -2
  195. package/lib/utils/get-browser.js +2 -2
  196. package/lib/utils/get-filter-fn.js +4 -4
  197. package/lib/utils/get-options/base.js +2 -2
  198. package/lib/utils/get-options/compiler.js +2 -2
  199. package/lib/utils/get-options/dashboard.js +2 -2
  200. package/lib/utils/get-options/get-assertion-timeout.js +1 -1
  201. package/lib/utils/get-options/index.js +4 -2
  202. package/lib/utils/get-options/meta.js +2 -2
  203. package/lib/utils/get-options/quarantine.js +8 -6
  204. package/lib/utils/get-options/screenshot.js +2 -2
  205. package/lib/utils/get-options/skip-js-errors.js +35 -0
  206. package/lib/utils/get-options/ssl.js +6 -6
  207. package/lib/utils/get-options/video.js +2 -2
  208. package/lib/utils/is-password-input.js +1 -1
  209. package/lib/utils/log-entry.js +2 -2
  210. package/lib/utils/make-reg-exp.js +19 -6
  211. package/lib/utils/moment-loader.js +2 -2
  212. package/lib/utils/parse-file-list.js +7 -7
  213. package/lib/utils/path-pattern.js +4 -4
  214. package/lib/utils/prepare-reporters.js +2 -2
  215. package/lib/utils/prerender-callsite.js +6 -6
  216. package/lib/utils/process.js +7 -7
  217. package/lib/utils/promisified-functions.js +14 -14
  218. package/lib/utils/raw-command-callsite-record.js +2 -2
  219. package/lib/utils/resolve-path-relatively-cwd.js +2 -2
  220. package/lib/utils/string.js +3 -3
  221. package/lib/utils/temp-directory/cleanup-process/index.js +6 -6
  222. package/lib/utils/temp-directory/cleanup-process/worker.js +4 -4
  223. package/lib/utils/temp-directory/index.js +6 -6
  224. package/lib/utils/temp-directory/lockfile.js +2 -2
  225. package/lib/video-recorder/process.js +6 -6
  226. package/lib/video-recorder/recorder.js +9 -9
  227. package/lib/video-recorder/test-run-video-recorder.js +2 -2
  228. package/package.json +8 -7
  229. package/ts-defs/index.d.ts +46 -7
  230. package/ts-defs/selectors.d.ts +39 -0
  231. package/ts-defs/testcafe-scripts.d.ts +39 -0
@@ -42,13 +42,13 @@ function getUrl(url, base) {
42
42
  return resolveRelativeUrl(url, base);
43
43
  }
44
44
  else if (isAbsolute(url))
45
- return url_1.pathToFileURL(url).toString();
45
+ return (0, url_1.pathToFileURL)(url).toString();
46
46
  return ensureProtocol(url);
47
47
  }
48
48
  exports.getUrl = getUrl;
49
49
  function prepareBaseUrl(url) {
50
- url = path_1.join(url, '/');
51
- return isAbsolute(url) ? url_1.pathToFileURL(url) : new url_1.URL(url);
50
+ url = (0, path_1.join)(url, '/');
51
+ return isAbsolute(url) ? (0, url_1.pathToFileURL)(url) : new url_1.URL(url);
52
52
  }
53
53
  exports.prepareBaseUrl = prepareBaseUrl;
54
54
  function assertPageUrl(url, callsiteName) {
@@ -73,4 +73,4 @@ function assertRoleUrl(url, callsiteName) {
73
73
  throw new runtime_1.APIError(callsiteName, types_1.RUNTIME_ERRORS.roleInitializedWithRelativeUrl);
74
74
  }
75
75
  exports.assertRoleUrl = assertRoleUrl;
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1wYWdlLXVybC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvdGVzdC1wYWdlLXVybC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSw2QkFBeUM7QUFDekMsMERBQTJCO0FBQzNCLCtDQUE2QztBQUM3QywyQ0FBaUQ7QUFDakQsNkRBQXlEO0FBQ3pELCtCQUE0QjtBQUU1QixNQUFNLFdBQVcsR0FBYSxxQkFBcUIsQ0FBQztBQUNwRCxNQUFNLHFCQUFxQixHQUFHLGlCQUFpQixDQUFDO0FBQ2hELE1BQU0sb0JBQW9CLEdBQUksT0FBTyxDQUFDO0FBQ3RDLE1BQU0sZ0JBQWdCLEdBQVEsU0FBUyxDQUFDO0FBQ3hDLE1BQU0sb0JBQW9CLEdBQUksV0FBVyxDQUFDO0FBQzFDLE1BQU0sZ0JBQWdCLEdBQVEsYUFBYSxDQUFDO0FBRTVDLFNBQWdCLFVBQVUsQ0FBRSxHQUFXO0lBQ25DLE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3RDLENBQUM7QUFGRCxnQ0FFQztBQUVELFNBQVMsVUFBVSxDQUFFLEdBQVc7SUFDNUIsb0VBQW9FO0lBQ3BFLE9BQU8sbUJBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ2hGLENBQUM7QUFFRCxTQUFnQixrQkFBa0IsQ0FBRSxJQUFZLEVBQUUsSUFBUztJQUN2RCxNQUFNLEdBQUcsR0FBRyxJQUFJLFNBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFaEMsT0FBTyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7QUFDMUIsQ0FBQztBQUpELGdEQUlDO0FBRUQsU0FBUyxjQUFjLENBQUUsR0FBVztJQUNoQyxJQUFJLHFCQUFxQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLEtBQUssd0NBQWtCO1FBQzdELE9BQU8sR0FBRyxDQUFDO0lBRWYsTUFBTSxRQUFRLEdBQUcsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUV0RSxPQUFPLFFBQVEsR0FBRyxHQUFHLENBQUM7QUFDMUIsQ0FBQztBQUVELFNBQWdCLE1BQU0sQ0FBRSxHQUFXLEVBQUUsSUFBVTtJQUMzQyxJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNqQixJQUFJLENBQUMsSUFBSTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLENBQUMsQ0FBQztRQUV6RCxPQUFPLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztLQUN4QztTQUVJLElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQztRQUNwQixPQUFPLG1CQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7SUFFekMsT0FBTyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDL0IsQ0FBQztBQVpELHdCQVlDO0FBRUQsU0FBZ0IsY0FBYyxDQUFFLEdBQVc7SUFDdkMsR0FBRyxHQUFHLFdBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDckIsT0FBTyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLG1CQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksU0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFIRCx3Q0FHQztBQUVELFNBQWdCLGFBQWEsQ0FBRSxHQUFXLEVBQUUsWUFBb0I7SUFDNUQsY0FBYyxDQUFDLEdBQUcsRUFBRSxZQUFZLEVBQUUsZUFBZSxDQUFDLENBQUM7QUFDdkQsQ0FBQztBQUZELHNDQUVDO0FBRUQsU0FBUyxjQUFjLENBQUUsR0FBVyxFQUFFLFlBQW9CLEVBQUUsSUFBWTtJQUNwRSxNQUFNLFFBQVEsR0FBaUIsR0FBRyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxNQUFNLHNCQUFzQixHQUFHLFFBQVEsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1RSxNQUFNLGlCQUFpQixHQUFRLG1CQUFFLENBQUMsR0FBRyxJQUFJLG9CQUFvQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUV4RSxJQUFJLHNCQUFzQixJQUFJLENBQUMsaUJBQWlCLElBQUksR0FBRyxLQUFLLHdDQUFrQjtRQUMxRSxNQUFNLElBQUksa0JBQVEsQ0FBQyxZQUFZLEVBQUUsc0JBQWMsQ0FBQyxzQkFBc0IsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxRQUFRLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDMUgsQ0FBQztBQUVELFNBQWdCLGFBQWEsQ0FBRSxHQUFXLEVBQUUsWUFBb0I7SUFDNUQsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQ2YsTUFBTSxJQUFJLGtCQUFRLENBQUMsWUFBWSxFQUFFLHNCQUFjLENBQUMsZUFBZSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBRTFFLGNBQWMsQ0FBQyxHQUFHLEVBQUUsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQ2xELENBQUM7QUFMRCxzQ0FLQztBQUVELFNBQWdCLGFBQWEsQ0FBRSxHQUFXLEVBQUUsWUFBb0I7SUFDNUQsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQ2YsTUFBTSxJQUFJLGtCQUFRLENBQUMsWUFBWSxFQUFFLHNCQUFjLENBQUMsOEJBQThCLENBQUMsQ0FBQztBQUN4RixDQUFDO0FBSEQsc0NBR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVUkwsIHBhdGhUb0ZpbGVVUkwgfSBmcm9tICd1cmwnO1xuaW1wb3J0IE9TIGZyb20gJ29zLWZhbWlseSc7XG5pbXBvcnQgeyBBUElFcnJvciB9IGZyb20gJy4uL2Vycm9ycy9ydW50aW1lJztcbmltcG9ydCB7IFJVTlRJTUVfRVJST1JTIH0gZnJvbSAnLi4vZXJyb3JzL3R5cGVzJztcbmltcG9ydCB7IFNQRUNJQUxfQkxBTktfUEFHRSB9IGZyb20gJ3Rlc3RjYWZlLWhhbW1lcmhlYWQnO1xuaW1wb3J0IHsgam9pbiB9IGZyb20gJ3BhdGgnO1xuXG5jb25zdCBQUk9UT0NPTF9SRSAgICAgICAgICAgPSAvXihbXFx3LV0rPykoPz06XFwvXFwvKS87XG5jb25zdCBTVVBQT1JURURfUFJPVE9DT0xfUkUgPSAvXihodHRwcz98ZmlsZSk6LztcbmNvbnN0IElNUExJQ0lUX1BST1RPQ09MX1JFICA9IC9eXFwvXFwvLztcbmNvbnN0IEFCU09MVVRFX1BBVEhfUkUgICAgICA9IC9eXFwvW14vXS87XG5jb25zdCBXSU5fQUJTT0xVVEVfUEFUSF9SRSAgPSAvXlxcdzpbL1xcXFxdLztcbmNvbnN0IFJFTEFUSVZFX1BBVEhfUkUgICAgICA9IC9eXFwuXFwuP1svXFxcXF0vO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNSZWxhdGl2ZSAodXJsOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gUkVMQVRJVkVfUEFUSF9SRS50ZXN0KHVybCk7XG59XG5cbmZ1bmN0aW9uIGlzQWJzb2x1dGUgKHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgLy8gTk9URTogcGF0aC5pc0Fic29sdXRlIHRyZWF0cyB0aGUgJy8vZXhhbXBsZS5jb20nIHBhdGggYXMgYWJzb2x1dGVcbiAgICByZXR1cm4gT1Mud2luID8gV0lOX0FCU09MVVRFX1BBVEhfUkUudGVzdCh1cmwpIDogQUJTT0xVVEVfUEFUSF9SRS50ZXN0KHVybCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlUmVsYXRpdmVVcmwgKHBhdGg6IHN0cmluZywgYmFzZTogVVJMKTogc3RyaW5nIHtcbiAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHBhdGgsIGJhc2UpO1xuXG4gICAgcmV0dXJuIHVybC50b1N0cmluZygpO1xufVxuXG5mdW5jdGlvbiBlbnN1cmVQcm90b2NvbCAodXJsOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmIChTVVBQT1JURURfUFJPVE9DT0xfUkUudGVzdCh1cmwpIHx8IHVybCA9PT0gU1BFQ0lBTF9CTEFOS19QQUdFKVxuICAgICAgICByZXR1cm4gdXJsO1xuXG4gICAgY29uc3QgcHJvdG9jb2wgPSBJTVBMSUNJVF9QUk9UT0NPTF9SRS50ZXN0KHVybCkgPyAnaHR0cDonIDogJ2h0dHA6Ly8nO1xuXG4gICAgcmV0dXJuIHByb3RvY29sICsgdXJsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VXJsICh1cmw6IHN0cmluZywgYmFzZT86IFVSTCk6IHN0cmluZyB7XG4gICAgaWYgKGlzUmVsYXRpdmUodXJsKSkge1xuICAgICAgICBpZiAoIWJhc2UpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1JlbGF0aXZlIHVybHMgcmVxdWlyZSBhIGJhc2UgcGF0aCcpO1xuXG4gICAgICAgIHJldHVybiByZXNvbHZlUmVsYXRpdmVVcmwodXJsLCBiYXNlKTtcbiAgICB9XG5cbiAgICBlbHNlIGlmIChpc0Fic29sdXRlKHVybCkpXG4gICAgICAgIHJldHVybiBwYXRoVG9GaWxlVVJMKHVybCkudG9TdHJpbmcoKTtcblxuICAgIHJldHVybiBlbnN1cmVQcm90b2NvbCh1cmwpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJlcGFyZUJhc2VVcmwgKHVybDogc3RyaW5nKTogVVJMIHtcbiAgICB1cmwgPSBqb2luKHVybCwgJy8nKTtcbiAgICByZXR1cm4gaXNBYnNvbHV0ZSh1cmwpID8gcGF0aFRvRmlsZVVSTCh1cmwpIDogbmV3IFVSTCh1cmwpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0UGFnZVVybCAodXJsOiBzdHJpbmcsIGNhbGxzaXRlTmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgYXNzZXJ0UHJvdG9jb2wodXJsLCBjYWxsc2l0ZU5hbWUsICd0ZXN0IHBhZ2UgVVJMJyk7XG59XG5cbmZ1bmN0aW9uIGFzc2VydFByb3RvY29sICh1cmw6IHN0cmluZywgY2FsbHNpdGVOYW1lOiBzdHJpbmcsIHdoYXQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHByb3RvY29sICAgICAgICAgICAgICAgPSB1cmwubWF0Y2goUFJPVE9DT0xfUkUpO1xuICAgIGNvbnN0IGhhc1Vuc3VwcG9ydGVkUHJvdG9jb2wgPSBwcm90b2NvbCAmJiAhU1VQUE9SVEVEX1BST1RPQ09MX1JFLnRlc3QodXJsKTtcbiAgICBjb25zdCBpc1dpbkFic29sdXRlUGF0aCAgICAgID0gT1Mud2luICYmIFdJTl9BQlNPTFVURV9QQVRIX1JFLnRlc3QodXJsKTtcblxuICAgIGlmIChoYXNVbnN1cHBvcnRlZFByb3RvY29sICYmICFpc1dpbkFic29sdXRlUGF0aCAmJiB1cmwgIT09IFNQRUNJQUxfQkxBTktfUEFHRSlcbiAgICAgICAgdGhyb3cgbmV3IEFQSUVycm9yKGNhbGxzaXRlTmFtZSwgUlVOVElNRV9FUlJPUlMudW5zdXBwb3J0ZWRVcmxQcm90b2NvbCwgd2hhdCwgdXJsLCB3aGF0LCBwcm90b2NvbCAmJiBwcm90b2NvbFswXSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRCYXNlVXJsICh1cmw6IHN0cmluZywgY2FsbHNpdGVOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoaXNSZWxhdGl2ZSh1cmwpKVxuICAgICAgICB0aHJvdyBuZXcgQVBJRXJyb3IoY2FsbHNpdGVOYW1lLCBSVU5USU1FX0VSUk9SUy5yZWxhdGl2ZUJhc2VVcmwsIHVybCk7XG5cbiAgICBhc3NlcnRQcm90b2NvbCh1cmwsIGNhbGxzaXRlTmFtZSwgJ2Jhc2UgVVJMJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRSb2xlVXJsICh1cmw6IHN0cmluZywgY2FsbHNpdGVOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoaXNSZWxhdGl2ZSh1cmwpKVxuICAgICAgICB0aHJvdyBuZXcgQVBJRXJyb3IoY2FsbHNpdGVOYW1lLCBSVU5USU1FX0VSUk9SUy5yb2xlSW5pdGlhbGl6ZWRXaXRoUmVsYXRpdmVVcmwpO1xufVxuIl19
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1wYWdlLXVybC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvdGVzdC1wYWdlLXVybC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSw2QkFBeUM7QUFDekMsMERBQTJCO0FBQzNCLCtDQUE2QztBQUM3QywyQ0FBaUQ7QUFDakQsNkRBQXlEO0FBQ3pELCtCQUE0QjtBQUU1QixNQUFNLFdBQVcsR0FBYSxxQkFBcUIsQ0FBQztBQUNwRCxNQUFNLHFCQUFxQixHQUFHLGlCQUFpQixDQUFDO0FBQ2hELE1BQU0sb0JBQW9CLEdBQUksT0FBTyxDQUFDO0FBQ3RDLE1BQU0sZ0JBQWdCLEdBQVEsU0FBUyxDQUFDO0FBQ3hDLE1BQU0sb0JBQW9CLEdBQUksV0FBVyxDQUFDO0FBQzFDLE1BQU0sZ0JBQWdCLEdBQVEsYUFBYSxDQUFDO0FBRTVDLFNBQWdCLFVBQVUsQ0FBRSxHQUFXO0lBQ25DLE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3RDLENBQUM7QUFGRCxnQ0FFQztBQUVELFNBQVMsVUFBVSxDQUFFLEdBQVc7SUFDNUIsb0VBQW9FO0lBQ3BFLE9BQU8sbUJBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ2hGLENBQUM7QUFFRCxTQUFnQixrQkFBa0IsQ0FBRSxJQUFZLEVBQUUsSUFBUztJQUN2RCxNQUFNLEdBQUcsR0FBRyxJQUFJLFNBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFaEMsT0FBTyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7QUFDMUIsQ0FBQztBQUpELGdEQUlDO0FBRUQsU0FBUyxjQUFjLENBQUUsR0FBVztJQUNoQyxJQUFJLHFCQUFxQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLEtBQUssd0NBQWtCO1FBQzdELE9BQU8sR0FBRyxDQUFDO0lBRWYsTUFBTSxRQUFRLEdBQUcsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUV0RSxPQUFPLFFBQVEsR0FBRyxHQUFHLENBQUM7QUFDMUIsQ0FBQztBQUVELFNBQWdCLE1BQU0sQ0FBRSxHQUFXLEVBQUUsSUFBVTtJQUMzQyxJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNqQixJQUFJLENBQUMsSUFBSTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLENBQUMsQ0FBQztRQUV6RCxPQUFPLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztLQUN4QztTQUVJLElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQztRQUNwQixPQUFPLElBQUEsbUJBQWEsRUFBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUV6QyxPQUFPLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUMvQixDQUFDO0FBWkQsd0JBWUM7QUFFRCxTQUFnQixjQUFjLENBQUUsR0FBVztJQUN2QyxHQUFHLEdBQUcsSUFBQSxXQUFJLEVBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCLE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFBLG1CQUFhLEVBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksU0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFIRCx3Q0FHQztBQUVELFNBQWdCLGFBQWEsQ0FBRSxHQUFXLEVBQUUsWUFBb0I7SUFDNUQsY0FBYyxDQUFDLEdBQUcsRUFBRSxZQUFZLEVBQUUsZUFBZSxDQUFDLENBQUM7QUFDdkQsQ0FBQztBQUZELHNDQUVDO0FBRUQsU0FBUyxjQUFjLENBQUUsR0FBVyxFQUFFLFlBQW9CLEVBQUUsSUFBWTtJQUNwRSxNQUFNLFFBQVEsR0FBaUIsR0FBRyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxNQUFNLHNCQUFzQixHQUFHLFFBQVEsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1RSxNQUFNLGlCQUFpQixHQUFRLG1CQUFFLENBQUMsR0FBRyxJQUFJLG9CQUFvQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUV4RSxJQUFJLHNCQUFzQixJQUFJLENBQUMsaUJBQWlCLElBQUksR0FBRyxLQUFLLHdDQUFrQjtRQUMxRSxNQUFNLElBQUksa0JBQVEsQ0FBQyxZQUFZLEVBQUUsc0JBQWMsQ0FBQyxzQkFBc0IsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxRQUFRLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDMUgsQ0FBQztBQUVELFNBQWdCLGFBQWEsQ0FBRSxHQUFXLEVBQUUsWUFBb0I7SUFDNUQsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQ2YsTUFBTSxJQUFJLGtCQUFRLENBQUMsWUFBWSxFQUFFLHNCQUFjLENBQUMsZUFBZSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBRTFFLGNBQWMsQ0FBQyxHQUFHLEVBQUUsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQ2xELENBQUM7QUFMRCxzQ0FLQztBQUVELFNBQWdCLGFBQWEsQ0FBRSxHQUFXLEVBQUUsWUFBb0I7SUFDNUQsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQ2YsTUFBTSxJQUFJLGtCQUFRLENBQUMsWUFBWSxFQUFFLHNCQUFjLENBQUMsOEJBQThCLENBQUMsQ0FBQztBQUN4RixDQUFDO0FBSEQsc0NBR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVUkwsIHBhdGhUb0ZpbGVVUkwgfSBmcm9tICd1cmwnO1xuaW1wb3J0IE9TIGZyb20gJ29zLWZhbWlseSc7XG5pbXBvcnQgeyBBUElFcnJvciB9IGZyb20gJy4uL2Vycm9ycy9ydW50aW1lJztcbmltcG9ydCB7IFJVTlRJTUVfRVJST1JTIH0gZnJvbSAnLi4vZXJyb3JzL3R5cGVzJztcbmltcG9ydCB7IFNQRUNJQUxfQkxBTktfUEFHRSB9IGZyb20gJ3Rlc3RjYWZlLWhhbW1lcmhlYWQnO1xuaW1wb3J0IHsgam9pbiB9IGZyb20gJ3BhdGgnO1xuXG5jb25zdCBQUk9UT0NPTF9SRSAgICAgICAgICAgPSAvXihbXFx3LV0rPykoPz06XFwvXFwvKS87XG5jb25zdCBTVVBQT1JURURfUFJPVE9DT0xfUkUgPSAvXihodHRwcz98ZmlsZSk6LztcbmNvbnN0IElNUExJQ0lUX1BST1RPQ09MX1JFICA9IC9eXFwvXFwvLztcbmNvbnN0IEFCU09MVVRFX1BBVEhfUkUgICAgICA9IC9eXFwvW14vXS87XG5jb25zdCBXSU5fQUJTT0xVVEVfUEFUSF9SRSAgPSAvXlxcdzpbL1xcXFxdLztcbmNvbnN0IFJFTEFUSVZFX1BBVEhfUkUgICAgICA9IC9eXFwuXFwuP1svXFxcXF0vO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNSZWxhdGl2ZSAodXJsOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gUkVMQVRJVkVfUEFUSF9SRS50ZXN0KHVybCk7XG59XG5cbmZ1bmN0aW9uIGlzQWJzb2x1dGUgKHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgLy8gTk9URTogcGF0aC5pc0Fic29sdXRlIHRyZWF0cyB0aGUgJy8vZXhhbXBsZS5jb20nIHBhdGggYXMgYWJzb2x1dGVcbiAgICByZXR1cm4gT1Mud2luID8gV0lOX0FCU09MVVRFX1BBVEhfUkUudGVzdCh1cmwpIDogQUJTT0xVVEVfUEFUSF9SRS50ZXN0KHVybCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlUmVsYXRpdmVVcmwgKHBhdGg6IHN0cmluZywgYmFzZTogVVJMKTogc3RyaW5nIHtcbiAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHBhdGgsIGJhc2UpO1xuXG4gICAgcmV0dXJuIHVybC50b1N0cmluZygpO1xufVxuXG5mdW5jdGlvbiBlbnN1cmVQcm90b2NvbCAodXJsOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmIChTVVBQT1JURURfUFJPVE9DT0xfUkUudGVzdCh1cmwpIHx8IHVybCA9PT0gU1BFQ0lBTF9CTEFOS19QQUdFKVxuICAgICAgICByZXR1cm4gdXJsO1xuXG4gICAgY29uc3QgcHJvdG9jb2wgPSBJTVBMSUNJVF9QUk9UT0NPTF9SRS50ZXN0KHVybCkgPyAnaHR0cDonIDogJ2h0dHA6Ly8nO1xuXG4gICAgcmV0dXJuIHByb3RvY29sICsgdXJsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VXJsICh1cmw6IHN0cmluZywgYmFzZT86IFVSTCk6IHN0cmluZyB7XG4gICAgaWYgKGlzUmVsYXRpdmUodXJsKSkge1xuICAgICAgICBpZiAoIWJhc2UpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1JlbGF0aXZlIHVybHMgcmVxdWlyZSBhIGJhc2UgcGF0aCcpO1xuXG4gICAgICAgIHJldHVybiByZXNvbHZlUmVsYXRpdmVVcmwodXJsLCBiYXNlKTtcbiAgICB9XG5cbiAgICBlbHNlIGlmIChpc0Fic29sdXRlKHVybCkpXG4gICAgICAgIHJldHVybiBwYXRoVG9GaWxlVVJMKHVybCkudG9TdHJpbmcoKTtcblxuICAgIHJldHVybiBlbnN1cmVQcm90b2NvbCh1cmwpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJlcGFyZUJhc2VVcmwgKHVybDogc3RyaW5nKTogVVJMIHtcbiAgICB1cmwgPSBqb2luKHVybCwgJy8nKTtcbiAgICByZXR1cm4gaXNBYnNvbHV0ZSh1cmwpID8gcGF0aFRvRmlsZVVSTCh1cmwpIDogbmV3IFVSTCh1cmwpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0UGFnZVVybCAodXJsOiBzdHJpbmcsIGNhbGxzaXRlTmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgYXNzZXJ0UHJvdG9jb2wodXJsLCBjYWxsc2l0ZU5hbWUsICd0ZXN0IHBhZ2UgVVJMJyk7XG59XG5cbmZ1bmN0aW9uIGFzc2VydFByb3RvY29sICh1cmw6IHN0cmluZywgY2FsbHNpdGVOYW1lOiBzdHJpbmcsIHdoYXQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHByb3RvY29sICAgICAgICAgICAgICAgPSB1cmwubWF0Y2goUFJPVE9DT0xfUkUpO1xuICAgIGNvbnN0IGhhc1Vuc3VwcG9ydGVkUHJvdG9jb2wgPSBwcm90b2NvbCAmJiAhU1VQUE9SVEVEX1BST1RPQ09MX1JFLnRlc3QodXJsKTtcbiAgICBjb25zdCBpc1dpbkFic29sdXRlUGF0aCAgICAgID0gT1Mud2luICYmIFdJTl9BQlNPTFVURV9QQVRIX1JFLnRlc3QodXJsKTtcblxuICAgIGlmIChoYXNVbnN1cHBvcnRlZFByb3RvY29sICYmICFpc1dpbkFic29sdXRlUGF0aCAmJiB1cmwgIT09IFNQRUNJQUxfQkxBTktfUEFHRSlcbiAgICAgICAgdGhyb3cgbmV3IEFQSUVycm9yKGNhbGxzaXRlTmFtZSwgUlVOVElNRV9FUlJPUlMudW5zdXBwb3J0ZWRVcmxQcm90b2NvbCwgd2hhdCwgdXJsLCB3aGF0LCBwcm90b2NvbCAmJiBwcm90b2NvbFswXSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRCYXNlVXJsICh1cmw6IHN0cmluZywgY2FsbHNpdGVOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoaXNSZWxhdGl2ZSh1cmwpKVxuICAgICAgICB0aHJvdyBuZXcgQVBJRXJyb3IoY2FsbHNpdGVOYW1lLCBSVU5USU1FX0VSUk9SUy5yZWxhdGl2ZUJhc2VVcmwsIHVybCk7XG5cbiAgICBhc3NlcnRQcm90b2NvbCh1cmwsIGNhbGxzaXRlTmFtZSwgJ2Jhc2UgVVJMJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRSb2xlVXJsICh1cmw6IHN0cmluZywgY2FsbHNpdGVOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoaXNSZWxhdGl2ZSh1cmwpKVxuICAgICAgICB0aHJvdyBuZXcgQVBJRXJyb3IoY2FsbHNpdGVOYW1lLCBSVU5USU1FX0VSUk9SUy5yb2xlSW5pdGlhbGl6ZWRXaXRoUmVsYXRpdmVVcmwpO1xufVxuIl19
@@ -31,7 +31,7 @@ class TestRunTracker extends events_1.EventEmitter {
31
31
  // NOTE: increase stack capacity to seek deep stack entries
32
32
  const savedLimit = Error.stackTraceLimit;
33
33
  Error.stackTraceLimit = STACK_CAPACITY;
34
- const frames = callsite_1.default();
34
+ const frames = (0, callsite_1.default)();
35
35
  Error.stackTraceLimit = savedLimit;
36
36
  return frames;
37
37
  }
@@ -96,4 +96,4 @@ class TestRunTracker extends events_1.EventEmitter {
96
96
  // Tracker
97
97
  exports.default = new TestRunTracker();
98
98
  module.exports = exports.default;
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1ydW4tdHJhY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvdGVzdC1ydW4tdHJhY2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHdEQUFzQztBQUN0QyxtQ0FBc0M7QUFJdEMsTUFBTSxnQkFBZ0IsR0FBRyxzQ0FBc0MsQ0FBQztBQUNoRSxNQUFNLGNBQWMsR0FBSyxJQUFJLENBQUM7QUFFOUIsTUFBTSxjQUFlLFNBQVEscUJBQVk7SUFJckM7UUFDSSxLQUFLLEVBQUUsQ0FBQztRQUVSLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTyxtQ0FBbUMsQ0FBRSxjQUF3QixFQUFFLGdCQUF3QjtRQUMzRixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFFckIsT0FBTztZQUNILE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBRWhELElBQUksU0FBUyxFQUFFO2dCQUNYLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDLEVBQUUsRUFBRTtvQkFDdkMsSUFBSSxPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxVQUFVO3dCQUNsQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLDJCQUEyQixDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDbkY7YUFDSjtZQUVELGFBQWE7WUFDYixPQUFPLGNBQWMsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQztJQUNOLENBQUM7SUFFTyxlQUFlO1FBQ25CLDJEQUEyRDtRQUMzRCxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDO1FBRXpDLEtBQUssQ0FB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QUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDakgsQ0FBQztJQUVNLG1CQUFtQixDQUFFLEVBQVU7UUFDbEMsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7Q0FDSjtBQUVELFVBQVU7QUFDVixrQkFBZSxJQUFJLGNBQWMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGdldFN0YWNrRnJhbWVzIGZyb20gJ2NhbGxzaXRlJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJ2V2ZW50cyc7XG5pbXBvcnQgVGVzdFJ1biBmcm9tICcuLi90ZXN0LXJ1bic7XG5pbXBvcnQgVGVzdFJ1blByb3h5IGZyb20gJy4uL3NlcnZpY2VzL2NvbXBpbGVyL3Rlc3QtcnVuLXByb3h5JztcblxuY29uc3QgVFJBQ0tJTkdfTUFSS19SRSA9IC9eXFwkXFwkdGVzdGNhZmVfdGVzdF9ydW5cXCRcXCQoXFxTKylcXCRcXCQkLztcbmNvbnN0IFNUQUNLX0NBUEFDSVRZICAgPSA1MDAwO1xuXG5jbGFzcyBUZXN0UnVuVHJhY2tlciBleHRlbmRzIEV2ZW50RW1pdHRlciB7XG4gICAgcHJpdmF0ZSBlbmFibGVkOiBib29sZWFuO1xuICAgIHB1YmxpYyBhY3RpdmVUZXN0UnVuczogeyBbaWQ6IHN0cmluZ106IFRlc3RSdW4gfCBUZXN0UnVuUHJveHkgfTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvciAoKSB7XG4gICAgICAgIHN1cGVyKCk7XG5cbiAgICAgICAgdGhpcy5lbmFibGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuYWN0aXZlVGVzdFJ1bnMgPSB7fTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9jcmVhdGVDb250ZXh0U3dpdGNoaW5nRnVuY3Rpb25Ib29rIChjdHhTd2l0Y2hpbmdGbjogRnVuY3Rpb24sIHBhdGNoZWRBcmdzQ291bnQ6IG51bWJlcik6IGFueSB7XG4gICAgICAgIGNvbnN0IHRyYWNrZXIgPSB0aGlzO1xuXG4gICAgICAgIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBjb25zdCB0ZXN0UnVuSWQgPSB0cmFja2VyLmdldENvbnRleHRUZXN0UnVuSWQoKTtcblxuICAgICAgICAgICAgaWYgKHRlc3RSdW5JZCkge1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGF0Y2hlZEFyZ3NDb3VudDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgYXJndW1lbnRzW2ldID09PSAnZnVuY3Rpb24nKVxuICAgICAgICAgICAgICAgICAgICAgICAgYXJndW1lbnRzW2ldID0gdHJhY2tlci5hZGRUcmFja2luZ01hcmtlclRvRnVuY3Rpb24odGVzdFJ1bklkLCBhcmd1bWVudHNbaV0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgcmV0dXJuIGN0eFN3aXRjaGluZ0ZuLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZ2V0U3RhY2tGcmFtZXMgKCk6IGdldFN0YWNrRnJhbWVzLkNhbGxTaXRlW10ge1xuICAgICAgICAvLyBOT1RFOiBpbmNyZWFzZSBzdGFjayBjYXBhY2l0eSB0byBzZWVrIGRlZXAgc3RhY2sgZW50cmllc1xuICAgICAgICBjb25zdCBzYXZlZExpbWl0ID0gRXJyb3Iuc3RhY2tUcmFjZUxpbWl0O1xuXG4gICAgICAgIEVycm9yLnN0YWNrVHJhY2VMaW1pdCA9IFNUQUNLX0NBUEFDSVRZO1xuXG4gICAgICAgIGNvbnN0IGZyYW1lcyA9IGdldFN0YWNrRnJhbWVzKCk7XG5cbiAgICAgICAgRXJyb3Iuc3RhY2tUcmFjZUxpbWl0ID0gc2F2ZWRMaW1pdDtcblxuICAgICAgICByZXR1cm4gZnJhbWVzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRNYXJrZWRGbk5hbWUgKHRlc3RSdW5JZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAkJHRlc3RjYWZlX3Rlc3RfcnVuJCQke3Rlc3RSdW5JZH0kJGA7XG4gICAgfVxuXG4gICAgcHVibGljIGVuc3VyZUVuYWJsZWQgKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZW5hYmxlZCkge1xuICAgICAgICAgICAgZ2xvYmFsLnNldFRpbWVvdXQgICA9IHRoaXMuX2NyZWF0ZUNvbnRleHRTd2l0Y2hpbmdGdW5jdGlvbkhvb2soZ2xvYmFsLnNldFRpbWVvdXQsIDEpO1xuICAgICAgICAgICAgZ2xvYmFsLnNldEludGVydmFsICA9IHRoaXMuX2NyZWF0ZUNvbnRleHRTd2l0Y2hpbmdGdW5jdGlvbkhvb2soZ2xvYmFsLnNldEludGVydmFsLCAxKTtcbiAgICAgICAgICAgIGdsb2JhbC5zZXRJbW1lZGlhdGUgPSB0aGlzLl9jcmVhdGVDb250ZXh0U3dpdGNoaW5nRnVuY3Rpb25Ib29rKGdsb2JhbC5zZXRJbW1lZGlhdGUsIDEpO1xuICAgICAgICAgICAgcHJvY2Vzcy5uZXh0VGljayAgICA9IHRoaXMuX2NyZWF0ZUNvbnRleHRTd2l0Y2hpbmdGdW5jdGlvbkhvb2socHJvY2Vzcy5uZXh0VGljaywgMSk7XG5cbiAgICAgICAgICAgIGdsb2JhbC5Qcm9taXNlLnByb3RvdHlwZS50aGVuICA9IHRoaXMuX2NyZWF0ZUNvbnRleHRTd2l0Y2hpbmdGdW5jdGlvbkhvb2soZ2xvYmFsLlByb21pc2UucHJvdG90eXBlLnRoZW4sIDIpO1xuICAgICAgICAgICAgZ2xvYmFsLlByb21pc2UucHJvdG90eXBlLmNhdGNoID0gdGhpcy5fY3JlYXRlQ29udGV4dFN3aXRjaGluZ0Z1bmN0aW9uSG9vayhnbG9iYWwuUHJvbWlzZS5wcm90b3R5cGUuY2F0Y2gsIDEpO1xuXG4gICAgICAgICAgICB0aGlzLmVuYWJsZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFkZFRyYWNraW5nTWFya2VyVG9GdW5jdGlvbiAodGVzdFJ1bklkOiBzdHJpbmcsIGZuOiBGdW5jdGlvbik6IEZ1bmN0aW9uIHtcbiAgICAgICAgY29uc3QgbWFya2VyRmFjdG9yeUJvZHkgPSBgXG4gICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24gJHt0aGlzLmdldE1hcmtlZEZuTmFtZSh0ZXN0UnVuSWQpfSAoKSB7XG4gICAgICAgICAgICAgICAgc3dpdGNoIChhcmd1bWVudHMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgMDogcmV0dXJuIGZuLmNhbGwodGhpcyk7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgMTogcmV0dXJuIGZuLmNhbGwodGhpcywgYXJndW1lbnRzWzBdKTtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAyOiByZXR1cm4gZm4uY2FsbCh0aGlzLCBhcmd1bWVudHNbMF0sIGFyZ3VtZW50c1sxXSk7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgMzogcmV0dXJuIGZuLmNhbGwodGhpcywgYXJndW1lbnRzWzBdLCBhcmd1bWVudHNbMV0sIGFyZ3VtZW50c1syXSk7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgNDogcmV0dXJuIGZuLmNhbGwodGhpcywgYXJndW1lbnRzWzBdLCBhcmd1bWVudHNbMV0sIGFyZ3VtZW50c1syXSwgYXJndW1lbnRzWzNdKTtcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDogcmV0dXJuIGZuLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcbiAgICAgICAgYDtcblxuICAgICAgICByZXR1cm4gbmV3IEZ1bmN0aW9uKCdmbicsIG1hcmtlckZhY3RvcnlCb2R5KShmbik7XG4gICAgfVxuXG4gICAgcHVibGljIGdldENvbnRleHRUZXN0UnVuSWQgKCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBjb25zdCBmcmFtZXMgPSB0aGlzLl9nZXRTdGFja0ZyYW1lcygpO1xuXG4gICAgICAgIC8vIE9QVElNSVpBVElPTjogd2Ugc3RhcnQgdHJhdmVyc2luZyBmcm9tIHRoZSBib3R0b20gb2YgdGhlIHN0YWNrLFxuICAgICAgICAvLyBiZWNhdXNlIHdlJ2xsIG1vcmUgbGlrZWx5IGVuY291bnRlciBhIG1hcmtlciB0aGVyZS5cbiAgICAgICAgLy8gQXN5bmMvYXdhaXQgYW5kIFByb21pc2UgbWFjaGluZXJ5IGV4ZWN1dGVzIGxvdHMgb2YgaW50cmluc2ljc1xuICAgICAgICAvLyBvbiB0aW1lcnMgKHdoZXJlIHdlIGhhdmUgYSBtYXJrZXIpLiBBbmQsIHNpbmNlIGEgdGltZXIgaW5pdGlhdGVzIGEgbmV3XG4gICAgICAgIC8vIHN0YWNrLCB0aGUgbWFya2VyIHdpbGwgYmUgYXQgdGhlIHZlcnkgYm90dG9tIG9mIGl0LlxuICAgICAgICBmb3IgKGxldCBpID0gZnJhbWVzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgICAgICAgICBjb25zdCBmbk5hbWUgPSBmcmFtZXNbaV0uZ2V0RnVuY3Rpb25OYW1lKCk7XG4gICAgICAgICAgICBjb25zdCBtYXRjaCAgPSBmbk5hbWUgJiYgZm5OYW1lLm1hdGNoKFRSQUNLSU5HX01BUktfUkUpO1xuXG4gICAgICAgICAgICBpZiAobWF0Y2gpXG4gICAgICAgICAgICAgICAgcmV0dXJuIG1hdGNoWzFdO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcHVibGljIHJlc29sdmVDb250ZXh0VGVzdFJ1biAoKTogVGVzdFJ1biB8IFRlc3RSdW5Qcm94eSB8IG51bGwge1xuICAgICAgICBjb25zdCB0ZXN0UnVuSWQgPSB0aGlzLmdldENvbnRleHRUZXN0UnVuSWQoKTtcblxuICAgICAgICBpZiAodGVzdFJ1bklkKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWN0aXZlVGVzdFJ1bnNbdGVzdFJ1bklkXTtcblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkQWN0aXZlVGVzdFJ1biAodGVzdFJ1bjogVGVzdFJ1biB8IFRlc3RSdW5Qcm94eSk6IHZvaWQge1xuICAgICAgICB0aGlzLmFjdGl2ZVRlc3RSdW5zW3Rlc3RSdW4uaWRdID0gdGVzdFJ1bjtcblxuICAgICAgICB0ZXN0UnVuLm9uQW55KChldmVudE5hbWU6IHN0cmluZywgZXZlbnREYXRhOiB1bmtub3duKSA9PiB0aGlzLmVtaXQoZXZlbnROYW1lLCB7IHRlc3RSdW4sIGRhdGE6IGV2ZW50RGF0YSB9KSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlbW92ZUFjdGl2ZVRlc3RSdW4gKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgZGVsZXRlIHRoaXMuYWN0aXZlVGVzdFJ1bnNbaWRdO1xuICAgIH1cbn1cblxuLy8gVHJhY2tlclxuZXhwb3J0IGRlZmF1bHQgbmV3IFRlc3RSdW5UcmFja2VyKCk7XG4iXX0=
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1ydW4tdHJhY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvdGVzdC1ydW4tdHJhY2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHdEQUFzQztBQUN0QyxtQ0FBc0M7QUFJdEMsTUFBTSxnQkFBZ0IsR0FBRyxzQ0FBc0MsQ0FBQztBQUNoRSxNQUFNLGNBQWMsR0FBSyxJQUFJLENBQUM7QUFFOUIsTUFBTSxjQUFlLFNBQVEscUJBQVk7SUFJckM7UUFDSSxLQUFLLEVBQUUsQ0FBQztRQUVSLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTyxtQ0FBbUMsQ0FBRSxjQUF3QixFQUFFLGdCQUF3QjtRQUMzRixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFFckIsT0FBTztZQUNILE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBRWhELElBQUksU0FBUyxFQUFFO2dCQUNYLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDLEVBQUUsRUFBRTtvQkFDdkMsSUFBSSxPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxVQUFVO3dCQUNsQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLDJCQUEyQixDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDbkY7YUFDSjtZQUVELGFBQWE7WUFDYixPQUFPLGNBQWMsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQztJQUNOLENBQUM7SUFFTyxlQUFlO1FBQ25CLDJEQUEyRDtRQUMzRCxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDO1FBRXpDLEtBQUssQ0FB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QUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNqSCxDQUFDO0lBRU0sbUJBQW1CLENBQUUsRUFBVTtRQUNsQyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbkMsQ0FBQztDQUNKO0FBRUQsVUFBVTtBQUNWLGtCQUFlLElBQUksY0FBYyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZ2V0U3RhY2tGcmFtZXMgZnJvbSAnY2FsbHNpdGUnO1xuaW1wb3J0IHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnZXZlbnRzJztcbmltcG9ydCBUZXN0UnVuIGZyb20gJy4uL3Rlc3QtcnVuJztcbmltcG9ydCBUZXN0UnVuUHJveHkgZnJvbSAnLi4vc2VydmljZXMvY29tcGlsZXIvdGVzdC1ydW4tcHJveHknO1xuXG5jb25zdCBUUkFDS0lOR19NQVJLX1JFID0gL15cXCRcXCR0ZXN0Y2FmZV90ZXN0X3J1blxcJFxcJChcXFMrKVxcJFxcJCQvO1xuY29uc3QgU1RBQ0tfQ0FQQUNJVFkgICA9IDUwMDA7XG5cbmNsYXNzIFRlc3RSdW5UcmFja2VyIGV4dGVuZHMgRXZlbnRFbWl0dGVyIHtcbiAgICBwcml2YXRlIGVuYWJsZWQ6IGJvb2xlYW47XG4gICAgcHVibGljIGFjdGl2ZVRlc3RSdW5zOiB7IFtpZDogc3RyaW5nXTogVGVzdFJ1biB8IFRlc3RSdW5Qcm94eSB9O1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yICgpIHtcbiAgICAgICAgc3VwZXIoKTtcblxuICAgICAgICB0aGlzLmVuYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5hY3RpdmVUZXN0UnVucyA9IHt9O1xuICAgIH1cblxuICAgIHByaXZhdGUgX2NyZWF0ZUNvbnRleHRTd2l0Y2hpbmdGdW5jdGlvbkhvb2sgKGN0eFN3aXRjaGluZ0ZuOiBGdW5jdGlvbiwgcGF0Y2hlZEFyZ3NDb3VudDogbnVtYmVyKTogYW55IHtcbiAgICAgICAgY29uc3QgdHJhY2tlciA9IHRoaXM7XG5cbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIGNvbnN0IHRlc3RSdW5JZCA9IHRyYWNrZXIuZ2V0Q29udGV4dFRlc3RSdW5JZCgpO1xuXG4gICAgICAgICAgICBpZiAodGVzdFJ1bklkKSB7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXRjaGVkQXJnc0NvdW50OyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBhcmd1bWVudHNbaV0gPT09ICdmdW5jdGlvbicpXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmd1bWVudHNbaV0gPSB0cmFja2VyLmFkZFRyYWNraW5nTWFya2VyVG9GdW5jdGlvbih0ZXN0UnVuSWQsIGFyZ3VtZW50c1tpXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICByZXR1cm4gY3R4U3dpdGNoaW5nRm4uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9nZXRTdGFja0ZyYW1lcyAoKTogZ2V0U3RhY2tGcmFtZXMuQ2FsbFNpdGVbXSB7XG4gICAgICAgIC8vIE5PVEU6IGluY3JlYXNlIHN0YWNrIGNhcGFjaXR5IHRvIHNlZWsgZGVlcCBzdGFjayBlbnRyaWVzXG4gICAgICAgIGNvbnN0IHNhdmVkTGltaXQgPSBFcnJvci5zdGFja1RyYWNlTGltaXQ7XG5cbiAgICAgICAgRXJyb3Iuc3RhY2tUcmFjZUxpbWl0ID0gU1RBQ0tfQ0FQQUNJVFk7XG5cbiAgICAgICAgY29uc3QgZnJhbWVzID0gZ2V0U3RhY2tGcmFtZXMoKTtcblxuICAgICAgICBFcnJvci5zdGFja1RyYWNlTGltaXQgPSBzYXZlZExpbWl0O1xuXG4gICAgICAgIHJldHVybiBmcmFtZXM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldE1hcmtlZEZuTmFtZSAodGVzdFJ1bklkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYCQkdGVzdGNhZmVfdGVzdF9ydW4kJCR7dGVzdFJ1bklkfSQkYDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZW5zdXJlRW5hYmxlZCAoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5lbmFibGVkKSB7XG4gICAgICAgICAgICBnbG9iYWwuc2V0VGltZW91dCAgID0gdGhpcy5fY3JlYXRlQ29udGV4dFN3aXRjaGluZ0Z1bmN0aW9uSG9vayhnbG9iYWwuc2V0VGltZW91dCwgMSk7XG4gICAgICAgICAgICBnbG9iYWwuc2V0SW50ZXJ2YWwgID0gdGhpcy5fY3JlYXRlQ29udGV4dFN3aXRjaGluZ0Z1bmN0aW9uSG9vayhnbG9iYWwuc2V0SW50ZXJ2YWwsIDEpO1xuICAgICAgICAgICAgZ2xvYmFsLnNldEltbWVkaWF0ZSA9IHRoaXMuX2NyZWF0ZUNvbnRleHRTd2l0Y2hpbmdGdW5jdGlvbkhvb2soZ2xvYmFsLnNldEltbWVkaWF0ZSwgMSk7XG4gICAgICAgICAgICBwcm9jZXNzLm5leHRUaWNrICAgID0gdGhpcy5fY3JlYXRlQ29udGV4dFN3aXRjaGluZ0Z1bmN0aW9uSG9vayhwcm9jZXNzLm5leHRUaWNrLCAxKTtcblxuICAgICAgICAgICAgZ2xvYmFsLlByb21pc2UucHJvdG90eXBlLnRoZW4gID0gdGhpcy5fY3JlYXRlQ29udGV4dFN3aXRjaGluZ0Z1bmN0aW9uSG9vayhnbG9iYWwuUHJvbWlzZS5wcm90b3R5cGUudGhlbiwgMik7XG4gICAgICAgICAgICBnbG9iYWwuUHJvbWlzZS5wcm90b3R5cGUuY2F0Y2ggPSB0aGlzLl9jcmVhdGVDb250ZXh0U3dpdGNoaW5nRnVuY3Rpb25Ib29rKGdsb2JhbC5Qcm9taXNlLnByb3RvdHlwZS5jYXRjaCwgMSk7XG5cbiAgICAgICAgICAgIHRoaXMuZW5hYmxlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkVHJhY2tpbmdNYXJrZXJUb0Z1bmN0aW9uICh0ZXN0UnVuSWQ6IHN0cmluZywgZm46IEZ1bmN0aW9uKTogRnVuY3Rpb24ge1xuICAgICAgICBjb25zdCBtYXJrZXJGYWN0b3J5Qm9keSA9IGBcbiAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbiAke3RoaXMuZ2V0TWFya2VkRm5OYW1lKHRlc3RSdW5JZCl9ICgpIHtcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGFyZ3VtZW50cy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAwOiByZXR1cm4gZm4uY2FsbCh0aGlzKTtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAxOiByZXR1cm4gZm4uY2FsbCh0aGlzLCBhcmd1bWVudHNbMF0pO1xuICAgICAgICAgICAgICAgICAgICBjYXNlIDI6IHJldHVybiBmbi5jYWxsKHRoaXMsIGFyZ3VtZW50c1swXSwgYXJndW1lbnRzWzFdKTtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAzOiByZXR1cm4gZm4uY2FsbCh0aGlzLCBhcmd1bWVudHNbMF0sIGFyZ3VtZW50c1sxXSwgYXJndW1lbnRzWzJdKTtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSA0OiByZXR1cm4gZm4uY2FsbCh0aGlzLCBhcmd1bWVudHNbMF0sIGFyZ3VtZW50c1sxXSwgYXJndW1lbnRzWzJdLCBhcmd1bWVudHNbM10pO1xuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OiByZXR1cm4gZm4uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuICAgICAgICBgO1xuXG4gICAgICAgIHJldHVybiBuZXcgRnVuY3Rpb24oJ2ZuJywgbWFya2VyRmFjdG9yeUJvZHkpKGZuKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29udGV4dFRlc3RSdW5JZCAoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IGZyYW1lcyA9IHRoaXMuX2dldFN0YWNrRnJhbWVzKCk7XG5cbiAgICAgICAgLy8gT1BUSU1JWkFUSU9OOiB3ZSBzdGFydCB0cmF2ZXJzaW5nIGZyb20gdGhlIGJvdHRvbSBvZiB0aGUgc3RhY2ssXG4gICAgICAgIC8vIGJlY2F1c2Ugd2UnbGwgbW9yZSBsaWtlbHkgZW5jb3VudGVyIGEgbWFya2VyIHRoZXJlLlxuICAgICAgICAvLyBBc3luYy9hd2FpdCBhbmQgUHJvbWlzZSBtYWNoaW5lcnkgZXhlY3V0ZXMgbG90cyBvZiBpbnRyaW5zaWNzXG4gICAgICAgIC8vIG9uIHRpbWVycyAod2hlcmUgd2UgaGF2ZSBhIG1hcmtlcikuIEFuZCwgc2luY2UgYSB0aW1lciBpbml0aWF0ZXMgYSBuZXdcbiAgICAgICAgLy8gc3RhY2ssIHRoZSBtYXJrZXIgd2lsbCBiZSBhdCB0aGUgdmVyeSBib3R0b20gb2YgaXQuXG4gICAgICAgIGZvciAobGV0IGkgPSBmcmFtZXMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgICAgICAgIGNvbnN0IGZuTmFtZSA9IGZyYW1lc1tpXS5nZXRGdW5jdGlvbk5hbWUoKTtcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoICA9IGZuTmFtZSAmJiBmbk5hbWUubWF0Y2goVFJBQ0tJTkdfTUFSS19SRSk7XG5cbiAgICAgICAgICAgIGlmIChtYXRjaClcbiAgICAgICAgICAgICAgICByZXR1cm4gbWF0Y2hbMV07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzb2x2ZUNvbnRleHRUZXN0UnVuICgpOiBUZXN0UnVuIHwgVGVzdFJ1blByb3h5IHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHRlc3RSdW5JZCA9IHRoaXMuZ2V0Q29udGV4dFRlc3RSdW5JZCgpO1xuXG4gICAgICAgIGlmICh0ZXN0UnVuSWQpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5hY3RpdmVUZXN0UnVuc1t0ZXN0UnVuSWRdO1xuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGRBY3RpdmVUZXN0UnVuICh0ZXN0UnVuOiBUZXN0UnVuIHwgVGVzdFJ1blByb3h5KTogdm9pZCB7XG4gICAgICAgIHRoaXMuYWN0aXZlVGVzdFJ1bnNbdGVzdFJ1bi5pZF0gPSB0ZXN0UnVuO1xuXG4gICAgICAgIHRlc3RSdW4ub25BbnkoKGV2ZW50TmFtZTogc3RyaW5nLCBldmVudERhdGE6IHVua25vd24pID0+IHRoaXMuZW1pdChldmVudE5hbWUsIHsgdGVzdFJ1biwgZGF0YTogZXZlbnREYXRhIH0pKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlQWN0aXZlVGVzdFJ1biAoaWQ6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBkZWxldGUgdGhpcy5hY3RpdmVUZXN0UnVuc1tpZF07XG4gICAgfVxufVxuXG4vLyBUcmFja2VyXG5leHBvcnQgZGVmYXVsdCBuZXcgVGVzdFJ1blRyYWNrZXIoKTtcbiJdfQ==
@@ -16,7 +16,7 @@ function wrapTestFunction(fn) {
16
16
  const markeredfn = test_run_tracker_1.default.addTrackingMarkerToFunction(testRun.id, fn);
17
17
  function addWarnings(callsiteSet, message) {
18
18
  callsiteSet.forEach(callsite => {
19
- add_rendered_warning_1.default(testRun.warningLog, message, callsite);
19
+ (0, add_rendered_warning_1.default)(testRun.warningLog, message, callsite);
20
20
  callsiteSet.delete(callsite);
21
21
  });
22
22
  }
@@ -37,7 +37,7 @@ function wrapTestFunction(fn) {
37
37
  }
38
38
  if (!errList.hasUncaughtErrorsInTestCode) {
39
39
  for (const { callsite, actionId } of testRun.observedCallsites.awaitedSnapshotWarnings.values())
40
- add_rendered_warning_1.default(testRun.warningLog, { message: warning_message_1.default.excessiveAwaitInAssertion, actionId }, callsite);
40
+ (0, add_rendered_warning_1.default)(testRun.warningLog, { message: warning_message_1.default.excessiveAwaitInAssertion, actionId }, callsite);
41
41
  addWarnings(testRun.observedCallsites.unawaitedSnapshotCallsites, warning_message_1.default.missingAwaitOnSnapshotProperty);
42
42
  addErrors(testRun.observedCallsites.callsitesWithoutAwait, test_run_1.MissingAwaitError);
43
43
  }
@@ -48,4 +48,4 @@ function wrapTestFunction(fn) {
48
48
  }
49
49
  exports.default = wrapTestFunction;
50
50
  module.exports = exports.default;
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JhcC10ZXN0LWZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS93cmFwLXRlc3QtZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx3RUFBK0M7QUFDL0MsMEVBQWdEO0FBRWhELHNFQUFxRDtBQUNyRCxpREFBdUQ7QUFDdkQsaUdBQXVFO0FBQ3ZFLHVGQUFnRTtBQUVoRSxTQUF3QixnQkFBZ0IsQ0FBRSxFQUFZO0lBQ2xELE9BQU8sS0FBSyxFQUFFLE9BQWdCLEVBQUUsRUFBRTtRQUM5QixJQUFJLE1BQU0sR0FBUyxJQUFJLENBQUM7UUFDeEIsTUFBTSxPQUFPLEdBQU0sSUFBSSxvQkFBaUIsRUFBRSxDQUFDO1FBQzNDLE1BQU0sVUFBVSxHQUFHLDBCQUFjLENBQUMsMkJBQTJCLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUU5RSxTQUFTLFdBQVcsQ0FBRSxXQUFxQyxFQUFFLE9BQWU7WUFDeEUsV0FBVyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDM0IsOEJBQWtCLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQzFELFdBQVcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDakMsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO1FBRUQsU0FBUyxTQUFTLENBQUUsV0FBcUMsRUFBRSxVQUFlO1lBQ3RFLFdBQVcsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQzNCLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDM0MsV0FBVyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNqQyxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7UUFFRCxPQUFPLENBQUMsVUFBVSxHQUFHLElBQUkseUJBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVqRCxPQUFPLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFbEMsMEJBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUUvQixJQUFJO1lBQ0EsTUFBTSxHQUFHLE1BQU0sVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUNqRDtRQUNELE9BQU8sR0FBRyxFQUFFO1lBQ1IsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUN6QjtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsMkJBQTJCLEVBQUU7WUFDdEMsS0FBSyxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLEVBQUU7Z0JBQzNGLDhCQUFrQixDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsRUFBRSxPQUFPLEVBQUUseUJBQWdCLENBQUMseUJBQXlCLEVBQUUsUUFBUSxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFFeEgsV0FBVyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQywwQkFBMEIsRUFBRSx5QkFBZ0IsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1lBQ25ILFNBQVMsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMscUJBQXFCLEVBQUUsNEJBQWlCLENBQUMsQ0FBQztTQUNqRjtRQUVELElBQUksT0FBTyxDQUFDLFNBQVM7WUFDakIsTUFBTSxPQUFPLENBQUM7UUFFbEIsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQyxDQUFDO0FBQ04sQ0FBQztBQTlDRCxtQ0E4Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVGVzdENvbnRyb2xsZXIgZnJvbSAnLi90ZXN0LWNvbnRyb2xsZXInO1xuaW1wb3J0IHRlc3RSdW5UcmFja2VyIGZyb20gJy4vdGVzdC1ydW4tdHJhY2tlcic7XG5pbXBvcnQgVGVzdFJ1biBmcm9tICcuLi90ZXN0LXJ1bic7XG5pbXBvcnQgVGVzdENhZmVFcnJvckxpc3QgZnJvbSAnLi4vZXJyb3JzL2Vycm9yLWxpc3QnO1xuaW1wb3J0IHsgTWlzc2luZ0F3YWl0RXJyb3IgfSBmcm9tICcuLi9lcnJvcnMvdGVzdC1ydW4nO1xuaW1wb3J0IGFkZFJlbmRlcmVkV2FybmluZyBmcm9tICcuLi9ub3RpZmljYXRpb25zL2FkZC1yZW5kZXJlZC13YXJuaW5nJztcbmltcG9ydCBXQVJOSU5HX01FU1NBR0VTIGZyb20gJy4uL25vdGlmaWNhdGlvbnMvd2FybmluZy1tZXNzYWdlJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd3JhcFRlc3RGdW5jdGlvbiAoZm46IEZ1bmN0aW9uKTogRnVuY3Rpb24ge1xuICAgIHJldHVybiBhc3luYyAodGVzdFJ1bjogVGVzdFJ1bikgPT4ge1xuICAgICAgICBsZXQgcmVzdWx0ICAgICAgID0gbnVsbDtcbiAgICAgICAgY29uc3QgZXJyTGlzdCAgICA9IG5ldyBUZXN0Q2FmZUVycm9yTGlzdCgpO1xuICAgICAgICBjb25zdCBtYXJrZXJlZGZuID0gdGVzdFJ1blRyYWNrZXIuYWRkVHJhY2tpbmdNYXJrZXJUb0Z1bmN0aW9uKHRlc3RSdW4uaWQsIGZuKTtcblxuICAgICAgICBmdW5jdGlvbiBhZGRXYXJuaW5ncyAoY2FsbHNpdGVTZXQ6IFNldDxSZWNvcmQ8c3RyaW5nLCBhbnk+PiwgbWVzc2FnZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgICAgICBjYWxsc2l0ZVNldC5mb3JFYWNoKGNhbGxzaXRlID0+IHtcbiAgICAgICAgICAgICAgICBhZGRSZW5kZXJlZFdhcm5pbmcodGVzdFJ1bi53YXJuaW5nTG9nLCBtZXNzYWdlLCBjYWxsc2l0ZSk7XG4gICAgICAgICAgICAgICAgY2FsbHNpdGVTZXQuZGVsZXRlKGNhbGxzaXRlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gYWRkRXJyb3JzIChjYWxsc2l0ZVNldDogU2V0PFJlY29yZDxzdHJpbmcsIGFueT4+LCBFcnJvckNsYXNzOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgICAgIGNhbGxzaXRlU2V0LmZvckVhY2goY2FsbHNpdGUgPT4ge1xuICAgICAgICAgICAgICAgIGVyckxpc3QuYWRkRXJyb3IobmV3IEVycm9yQ2xhc3MoY2FsbHNpdGUpKTtcbiAgICAgICAgICAgICAgICBjYWxsc2l0ZVNldC5kZWxldGUoY2FsbHNpdGUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB0ZXN0UnVuLmNvbnRyb2xsZXIgPSBuZXcgVGVzdENvbnRyb2xsZXIodGVzdFJ1bik7XG5cbiAgICAgICAgdGVzdFJ1bi5vYnNlcnZlZENhbGxzaXRlcy5jbGVhcigpO1xuXG4gICAgICAgIHRlc3RSdW5UcmFja2VyLmVuc3VyZUVuYWJsZWQoKTtcblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmVzdWx0ID0gYXdhaXQgbWFya2VyZWRmbih0ZXN0UnVuLmNvbnRyb2xsZXIpO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIGVyckxpc3QuYWRkRXJyb3IoZXJyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghZXJyTGlzdC5oYXNVbmNhdWdodEVycm9yc0luVGVzdENvZGUpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgeyBjYWxsc2l0ZSwgYWN0aW9uSWQgfSBvZiB0ZXN0UnVuLm9ic2VydmVkQ2FsbHNpdGVzLmF3YWl0ZWRTbmFwc2hvdFdhcm5pbmdzLnZhbHVlcygpKVxuICAgICAgICAgICAgICAgIGFkZFJlbmRlcmVkV2FybmluZyh0ZXN0UnVuLndhcm5pbmdMb2csIHsgbWVzc2FnZTogV0FSTklOR19NRVNTQUdFUy5leGNlc3NpdmVBd2FpdEluQXNzZXJ0aW9uLCBhY3Rpb25JZCB9LCBjYWxsc2l0ZSk7XG5cbiAgICAgICAgICAgIGFkZFdhcm5pbmdzKHRlc3RSdW4ub2JzZXJ2ZWRDYWxsc2l0ZXMudW5hd2FpdGVkU25hcHNob3RDYWxsc2l0ZXMsIFdBUk5JTkdfTUVTU0FHRVMubWlzc2luZ0F3YWl0T25TbmFwc2hvdFByb3BlcnR5KTtcbiAgICAgICAgICAgIGFkZEVycm9ycyh0ZXN0UnVuLm9ic2VydmVkQ2FsbHNpdGVzLmNhbGxzaXRlc1dpdGhvdXRBd2FpdCwgTWlzc2luZ0F3YWl0RXJyb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGVyckxpc3QuaGFzRXJyb3JzKVxuICAgICAgICAgICAgdGhyb3cgZXJyTGlzdDtcblxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH07XG59XG4iXX0=
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JhcC10ZXN0LWZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS93cmFwLXRlc3QtZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx3RUFBK0M7QUFDL0MsMEVBQWdEO0FBRWhELHNFQUFxRDtBQUNyRCxpREFBdUQ7QUFDdkQsaUdBQXVFO0FBQ3ZFLHVGQUFnRTtBQUVoRSxTQUF3QixnQkFBZ0IsQ0FBRSxFQUFZO0lBQ2xELE9BQU8sS0FBSyxFQUFFLE9BQWdCLEVBQUUsRUFBRTtRQUM5QixJQUFJLE1BQU0sR0FBUyxJQUFJLENBQUM7UUFDeEIsTUFBTSxPQUFPLEdBQU0sSUFBSSxvQkFBaUIsRUFBRSxDQUFDO1FBQzNDLE1BQU0sVUFBVSxHQUFHLDBCQUFjLENBQUMsMkJBQTJCLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUU5RSxTQUFTLFdBQVcsQ0FBRSxXQUFxQyxFQUFFLE9BQWU7WUFDeEUsV0FBVyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDM0IsSUFBQSw4QkFBa0IsRUFBQyxPQUFPLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDMUQsV0FBVyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNqQyxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7UUFFRCxTQUFTLFNBQVMsQ0FBRSxXQUFxQyxFQUFFLFVBQWU7WUFDdEUsV0FBVyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDM0IsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO2dCQUMzQyxXQUFXLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2pDLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztRQUVELE9BQU8sQ0FBQyxVQUFVLEdBQUcsSUFBSSx5QkFBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWpELE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUVsQywwQkFBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRS9CLElBQUk7WUFDQSxNQUFNLEdBQUcsTUFBTSxVQUFVLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ2pEO1FBQ0QsT0FBTyxHQUFHLEVBQUU7WUFDUixPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3pCO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQywyQkFBMkIsRUFBRTtZQUN0QyxLQUFLLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLElBQUksT0FBTyxDQUFDLGlCQUFpQixDQUFDLHVCQUF1QixDQUFDLE1BQU0sRUFBRTtnQkFDM0YsSUFBQSw4QkFBa0IsRUFBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEVBQUUsT0FBTyxFQUFFLHlCQUFnQixDQUFDLHlCQUF5QixFQUFFLFFBQVEsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBRXhILFdBQVcsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsMEJBQTBCLEVBQUUseUJBQWdCLENBQUMsOEJBQThCLENBQUMsQ0FBQztZQUNuSCxTQUFTLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLHFCQUFxQixFQUFFLDRCQUFpQixDQUFDLENBQUM7U0FDakY7UUFFRCxJQUFJLE9BQU8sQ0FBQyxTQUFTO1lBQ2pCLE1BQU0sT0FBTyxDQUFDO1FBRWxCLE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUMsQ0FBQztBQUNOLENBQUM7QUE5Q0QsbUNBOENDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFRlc3RDb250cm9sbGVyIGZyb20gJy4vdGVzdC1jb250cm9sbGVyJztcbmltcG9ydCB0ZXN0UnVuVHJhY2tlciBmcm9tICcuL3Rlc3QtcnVuLXRyYWNrZXInO1xuaW1wb3J0IFRlc3RSdW4gZnJvbSAnLi4vdGVzdC1ydW4nO1xuaW1wb3J0IFRlc3RDYWZlRXJyb3JMaXN0IGZyb20gJy4uL2Vycm9ycy9lcnJvci1saXN0JztcbmltcG9ydCB7IE1pc3NpbmdBd2FpdEVycm9yIH0gZnJvbSAnLi4vZXJyb3JzL3Rlc3QtcnVuJztcbmltcG9ydCBhZGRSZW5kZXJlZFdhcm5pbmcgZnJvbSAnLi4vbm90aWZpY2F0aW9ucy9hZGQtcmVuZGVyZWQtd2FybmluZyc7XG5pbXBvcnQgV0FSTklOR19NRVNTQUdFUyBmcm9tICcuLi9ub3RpZmljYXRpb25zL3dhcm5pbmctbWVzc2FnZSc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHdyYXBUZXN0RnVuY3Rpb24gKGZuOiBGdW5jdGlvbik6IEZ1bmN0aW9uIHtcbiAgICByZXR1cm4gYXN5bmMgKHRlc3RSdW46IFRlc3RSdW4pID0+IHtcbiAgICAgICAgbGV0IHJlc3VsdCAgICAgICA9IG51bGw7XG4gICAgICAgIGNvbnN0IGVyckxpc3QgICAgPSBuZXcgVGVzdENhZmVFcnJvckxpc3QoKTtcbiAgICAgICAgY29uc3QgbWFya2VyZWRmbiA9IHRlc3RSdW5UcmFja2VyLmFkZFRyYWNraW5nTWFya2VyVG9GdW5jdGlvbih0ZXN0UnVuLmlkLCBmbik7XG5cbiAgICAgICAgZnVuY3Rpb24gYWRkV2FybmluZ3MgKGNhbGxzaXRlU2V0OiBTZXQ8UmVjb3JkPHN0cmluZywgYW55Pj4sIG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICAgICAgY2FsbHNpdGVTZXQuZm9yRWFjaChjYWxsc2l0ZSA9PiB7XG4gICAgICAgICAgICAgICAgYWRkUmVuZGVyZWRXYXJuaW5nKHRlc3RSdW4ud2FybmluZ0xvZywgbWVzc2FnZSwgY2FsbHNpdGUpO1xuICAgICAgICAgICAgICAgIGNhbGxzaXRlU2V0LmRlbGV0ZShjYWxsc2l0ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGFkZEVycm9ycyAoY2FsbHNpdGVTZXQ6IFNldDxSZWNvcmQ8c3RyaW5nLCBhbnk+PiwgRXJyb3JDbGFzczogYW55KTogdm9pZCB7XG4gICAgICAgICAgICBjYWxsc2l0ZVNldC5mb3JFYWNoKGNhbGxzaXRlID0+IHtcbiAgICAgICAgICAgICAgICBlcnJMaXN0LmFkZEVycm9yKG5ldyBFcnJvckNsYXNzKGNhbGxzaXRlKSk7XG4gICAgICAgICAgICAgICAgY2FsbHNpdGVTZXQuZGVsZXRlKGNhbGxzaXRlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgdGVzdFJ1bi5jb250cm9sbGVyID0gbmV3IFRlc3RDb250cm9sbGVyKHRlc3RSdW4pO1xuXG4gICAgICAgIHRlc3RSdW4ub2JzZXJ2ZWRDYWxsc2l0ZXMuY2xlYXIoKTtcblxuICAgICAgICB0ZXN0UnVuVHJhY2tlci5lbnN1cmVFbmFibGVkKCk7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IG1hcmtlcmVkZm4odGVzdFJ1bi5jb250cm9sbGVyKTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICBlcnJMaXN0LmFkZEVycm9yKGVycik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWVyckxpc3QuaGFzVW5jYXVnaHRFcnJvcnNJblRlc3RDb2RlKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHsgY2FsbHNpdGUsIGFjdGlvbklkIH0gb2YgdGVzdFJ1bi5vYnNlcnZlZENhbGxzaXRlcy5hd2FpdGVkU25hcHNob3RXYXJuaW5ncy52YWx1ZXMoKSlcbiAgICAgICAgICAgICAgICBhZGRSZW5kZXJlZFdhcm5pbmcodGVzdFJ1bi53YXJuaW5nTG9nLCB7IG1lc3NhZ2U6IFdBUk5JTkdfTUVTU0FHRVMuZXhjZXNzaXZlQXdhaXRJbkFzc2VydGlvbiwgYWN0aW9uSWQgfSwgY2FsbHNpdGUpO1xuXG4gICAgICAgICAgICBhZGRXYXJuaW5ncyh0ZXN0UnVuLm9ic2VydmVkQ2FsbHNpdGVzLnVuYXdhaXRlZFNuYXBzaG90Q2FsbHNpdGVzLCBXQVJOSU5HX01FU1NBR0VTLm1pc3NpbmdBd2FpdE9uU25hcHNob3RQcm9wZXJ0eSk7XG4gICAgICAgICAgICBhZGRFcnJvcnModGVzdFJ1bi5vYnNlcnZlZENhbGxzaXRlcy5jYWxsc2l0ZXNXaXRob3V0QXdhaXQsIE1pc3NpbmdBd2FpdEVycm9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChlcnJMaXN0Lmhhc0Vycm9ycylcbiAgICAgICAgICAgIHRocm93IGVyckxpc3Q7XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9O1xufVxuIl19
@@ -21,7 +21,7 @@ class AssertionExecutor extends events_1.EventEmitter {
21
21
  this.startTime = null;
22
22
  this.passed = false;
23
23
  this.inRetry = false;
24
- const fn = get_fn_1.default(this.command);
24
+ const fn = (0, get_fn_1.default)(this.command);
25
25
  const actualCommand = this.command.actual;
26
26
  if (actualCommand instanceof re_executable_promise_1.default)
27
27
  this.fn = this._wrapFunction(fn);
@@ -31,7 +31,7 @@ class AssertionExecutor extends events_1.EventEmitter {
31
31
  this.fn = fn;
32
32
  }
33
33
  _isPromise(val) {
34
- return thennable_1.isThennable(val) ||
34
+ return (0, thennable_1.isThennable)(val) ||
35
35
  val === Symbol.for(marker_2.PROMISE_MARKER_DESCRIPTION);
36
36
  }
37
37
  _getTimeLeft() {
@@ -57,7 +57,7 @@ class AssertionExecutor extends events_1.EventEmitter {
57
57
  this._onExecutionFinished();
58
58
  throw err;
59
59
  }
60
- await delay_1.default(ASSERTION_DELAY);
60
+ await (0, delay_1.default)(ASSERTION_DELAY);
61
61
  this.inRetry = true;
62
62
  this.emit('start-assertion-retries', this._getTimeLeft());
63
63
  }
@@ -86,4 +86,4 @@ class AssertionExecutor extends events_1.EventEmitter {
86
86
  }
87
87
  exports.default = AssertionExecutor;
88
88
  module.exports = exports.default;
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXNzZXJ0aW9ucy9leGVjdXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG1DQUFzQztBQUN0QywyREFBbUM7QUFDbkMsa0RBQWlEO0FBQ2pELGlEQUFtRztBQUNuRywyRkFBaUU7QUFDakUsc0RBQTZCO0FBRzdCLDZHQUErSDtBQUMvSCw0R0FBNkg7QUFFN0gsTUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDO0FBRTVCLE1BQXFCLGlCQUFrQixTQUFRLHFCQUFZO0lBU3ZELFlBQW9CLE9BQXlCLEVBQUUsT0FBZSxFQUFFLFFBQXdCO1FBQ3BGLEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLE9BQU8sR0FBSSxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBSSxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFFekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBTSxLQUFLLENBQUM7UUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBSyxLQUFLLENBQUM7UUFFdkIsTUFBTSxFQUFFLEdBQWMsZ0JBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFFMUMsSUFBSSxhQUFhLFlBQVksK0JBQW1CO1lBQzVDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQzthQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMscUJBQXFCLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7WUFDbEYsTUFBTSxJQUFJLHlDQUE4QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzs7WUFFeEQsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVPLFVBQVUsQ0FBRSxHQUFZO1FBQzVCLE9BQU8sdUJBQVcsQ0FBQyxHQUFHLENBQUM7WUFDbkIsR0FBRyxLQUFLLE1BQU0sQ0FBQyxHQUFHLENBQUMsbUNBQTBCLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU8sWUFBWTtRQUNoQixNQUFNLGFBQWEsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFJLElBQUksQ0FBQyxTQUFvQixDQUFDLENBQUMseURBQXlEO1FBRWxJLE9BQU8sSUFBSSxDQUFDLE9BQU8sR0FBRyxhQUFhLENBQUM7SUFDeEMsQ0FBQztJQUVPLG9CQUFvQjtRQUN4QixJQUFJLElBQUksQ0FBQyxPQUFPO1lBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVPLGFBQWEsQ0FBRSxFQUFZO1FBQy9CLE9BQU8sS0FBSyxJQUFJLEVBQUU7WUFDZCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQTZCLENBQUM7WUFFakUsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLE1BQU0sYUFBYSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUV2RCxJQUFJO29CQUNBLEVBQUUsRUFBRSxDQUFDO29CQUNMLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO29CQUNuQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztpQkFDL0I7Z0JBRUQsT0FBTyxHQUFHLEVBQUU7b0JBQ1IsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxFQUFFO3dCQUMxQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQzt3QkFDNUIsTUFBTSxHQUFHLENBQUM7cUJBQ2I7b0JBRUQsTUFBTSxlQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7b0JBRTdCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO29CQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLHlCQUF5QixFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO2lCQUM3RDthQUNKO1FBQ0wsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVPLFlBQVk7UUFDaEIsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxNQUFNLENBQUMsR0FBRyxDQUFDLG9DQUEyQixDQUFDO1lBQy9ELE9BQU87UUFFWCxJQUFJLENBQUMsSUFBSSxDQUFDLCtCQUErQixFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFTSxLQUFLLENBQUMsR0FBRztRQUNaLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVwQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFdEMsSUFBSTtZQUNBLE1BQU0sSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1NBQ25CO1FBRUQsT0FBTyxHQUFHLEVBQUU7WUFDUixJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLElBQUksR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEtBQUssZ0JBQWdCO2dCQUMxRSxNQUFNLElBQUksd0NBQTZCLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUVoRSxJQUFJLEdBQUcsQ0FBQyxlQUFlO2dCQUNuQixHQUFHLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7WUFFakMsTUFBTSxHQUFHLENBQUM7U0FDYjtJQUNMLENBQUM7Q0FDSjtBQXJHRCxvQ0FxR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdldmVudHMnO1xuaW1wb3J0IGRlbGF5IGZyb20gJy4uL3V0aWxzL2RlbGF5JztcbmltcG9ydCB7IGlzVGhlbm5hYmxlIH0gZnJvbSAnLi4vdXRpbHMvdGhlbm5hYmxlJztcbmltcG9ydCB7IEV4dGVybmFsQXNzZXJ0aW9uTGlicmFyeUVycm9yLCBBc3NlcnRpb25VbmF3YWl0ZWRQcm9taXNlRXJyb3IgfSBmcm9tICcuLi9lcnJvcnMvdGVzdC1ydW4nO1xuaW1wb3J0IFJlRXhlY3V0YWJsZVByb21pc2UgZnJvbSAnLi4vdXRpbHMvcmUtZXhlY3V0YWJsZS1wcm9taXNlJztcbmltcG9ydCBnZXRGbiBmcm9tICcuL2dldC1mbic7XG5pbXBvcnQgeyBBc3NlcnRpb25Db21tYW5kIH0gZnJvbSAnLi4vdGVzdC1ydW4vY29tbWFuZHMvYXNzZXJ0aW9uJztcbmltcG9ydCB7IENhbGxzaXRlUmVjb3JkIH0gZnJvbSAnY2FsbHNpdGUtcmVjb3JkJztcbmltcG9ydCB7IEZVTkNUSU9OX01BUktFUl9ERVNDUklQVElPTiB9IGZyb20gJy4uL3NlcnZpY2VzL3NlcmlhbGl6YXRpb24vcmVwbGljYXRvci90cmFuc2Zvcm1zL2Z1bmN0aW9uLW1hcmtlci10cmFuc2Zvcm0vbWFya2VyJztcbmltcG9ydCB7IFBST01JU0VfTUFSS0VSX0RFU0NSSVBUSU9OIH0gZnJvbSAnLi4vc2VydmljZXMvc2VyaWFsaXphdGlvbi9yZXBsaWNhdG9yL3RyYW5zZm9ybXMvcHJvbWlzZS1tYXJrZXItdHJhbnNmb3JtL21hcmtlcic7XG5cbmNvbnN0IEFTU0VSVElPTl9ERUxBWSA9IDIwMDtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQXNzZXJ0aW9uRXhlY3V0b3IgZXh0ZW5kcyBFdmVudEVtaXR0ZXIge1xuICAgIHB1YmxpYyByZWFkb25seSBjb21tYW5kOiBBc3NlcnRpb25Db21tYW5kO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdGltZW91dDogbnVtYmVyO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2FsbHNpdGU6IENhbGxzaXRlUmVjb3JkO1xuICAgIHByaXZhdGUgc3RhcnRUaW1lOiBudW1iZXIgfCBudWxsO1xuICAgIHByaXZhdGUgcGFzc2VkOiBib29sZWFuO1xuICAgIHByaXZhdGUgaW5SZXRyeTogYm9vbGVhbjtcbiAgICBwdWJsaWMgZm46IEZ1bmN0aW9uO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yIChjb21tYW5kOiBBc3NlcnRpb25Db21tYW5kLCB0aW1lb3V0OiBudW1iZXIsIGNhbGxzaXRlOiBDYWxsc2l0ZVJlY29yZCkge1xuICAgICAgICBzdXBlcigpO1xuXG4gICAgICAgIHRoaXMuY29tbWFuZCAgPSBjb21tYW5kO1xuICAgICAgICB0aGlzLnRpbWVvdXQgID0gdGltZW91dDtcbiAgICAgICAgdGhpcy5jYWxsc2l0ZSA9IGNhbGxzaXRlO1xuXG4gICAgICAgIHRoaXMuc3RhcnRUaW1lID0gbnVsbDtcbiAgICAgICAgdGhpcy5wYXNzZWQgICAgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pblJldHJ5ICAgPSBmYWxzZTtcblxuICAgICAgICBjb25zdCBmbiAgICAgICAgICAgID0gZ2V0Rm4odGhpcy5jb21tYW5kKTtcbiAgICAgICAgY29uc3QgYWN0dWFsQ29tbWFuZCA9IHRoaXMuY29tbWFuZC5hY3R1YWw7XG5cbiAgICAgICAgaWYgKGFjdHVhbENvbW1hbmQgaW5zdGFuY2VvZiBSZUV4ZWN1dGFibGVQcm9taXNlKVxuICAgICAgICAgICAgdGhpcy5mbiA9IHRoaXMuX3dyYXBGdW5jdGlvbihmbik7XG4gICAgICAgIGVsc2UgaWYgKCF0aGlzLmNvbW1hbmQub3B0aW9ucy5hbGxvd1VuYXdhaXRlZFByb21pc2UgJiYgdGhpcy5faXNQcm9taXNlKGFjdHVhbENvbW1hbmQpKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEFzc2VydGlvblVuYXdhaXRlZFByb21pc2VFcnJvcih0aGlzLmNhbGxzaXRlKTtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgdGhpcy5mbiA9IGZuO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2lzUHJvbWlzZSAodmFsOiB1bmtub3duKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBpc1RoZW5uYWJsZSh2YWwpIHx8XG4gICAgICAgICAgICB2YWwgPT09IFN5bWJvbC5mb3IoUFJPTUlTRV9NQVJLRVJfREVTQ1JJUFRJT04pO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2dldFRpbWVMZWZ0ICgpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBleGVjdXRpb25UaW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCkgLSAodGhpcy5zdGFydFRpbWUgYXMgbnVtYmVyKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXh0cmEtcGFyZW5zXG5cbiAgICAgICAgcmV0dXJuIHRoaXMudGltZW91dCAtIGV4ZWN1dGlvblRpbWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfb25FeGVjdXRpb25GaW5pc2hlZCAoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmluUmV0cnkpXG4gICAgICAgICAgICB0aGlzLmVtaXQoJ2VuZC1hc3NlcnRpb24tcmV0cmllcycsIHRoaXMucGFzc2VkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF93cmFwRnVuY3Rpb24gKGZuOiBGdW5jdGlvbik6IEZ1bmN0aW9uIHtcbiAgICAgICAgcmV0dXJuIGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdFByb21pc2UgPSB0aGlzLmNvbW1hbmQuYWN0dWFsIGFzIFJlRXhlY3V0YWJsZVByb21pc2U7XG5cbiAgICAgICAgICAgIHdoaWxlICghdGhpcy5wYXNzZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbW1hbmQuYWN0dWFsID0gYXdhaXQgcmVzdWx0UHJvbWlzZS5fcmVFeGVjdXRlKCk7XG5cbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBmbigpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhc3NlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX29uRXhlY3V0aW9uRmluaXNoZWQoKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLl9nZXRUaW1lTGVmdCgpIDw9IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX29uRXhlY3V0aW9uRmluaXNoZWQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IGVycjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IGRlbGF5KEFTU0VSVElPTl9ERUxBWSk7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pblJldHJ5ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbWl0KCdzdGFydC1hc3NlcnRpb24tcmV0cmllcycsIHRoaXMuX2dldFRpbWVMZWZ0KCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9vbkJlZm9yZVJ1biAoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmNvbW1hbmQuYWN0dWFsICE9PSBTeW1ib2wuZm9yKEZVTkNUSU9OX01BUktFUl9ERVNDUklQVElPTikpXG4gICAgICAgICAgICByZXR1cm47XG5cbiAgICAgICAgdGhpcy5lbWl0KCdub24tc2VyaWFsaXphYmxlLWFjdHVhbC12YWx1ZScsIHRoaXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBydW4gKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICB0aGlzLl9vbkJlZm9yZVJ1bigpO1xuXG4gICAgICAgIHRoaXMuc3RhcnRUaW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuZm4oKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIGlmIChlcnIubmFtZSA9PT0gJ0Fzc2VydGlvbkVycm9yJyB8fCBlcnIuY29uc3RydWN0b3IubmFtZSA9PT0gJ0Fzc2VydGlvbkVycm9yJylcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXh0ZXJuYWxBc3NlcnRpb25MaWJyYXJ5RXJyb3IoZXJyLCB0aGlzLmNhbGxzaXRlKTtcblxuICAgICAgICAgICAgaWYgKGVyci5pc1Rlc3RDYWZlRXJyb3IpXG4gICAgICAgICAgICAgICAgZXJyLmNhbGxzaXRlID0gdGhpcy5jYWxsc2l0ZTtcblxuICAgICAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXNzZXJ0aW9ucy9leGVjdXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG1DQUFzQztBQUN0QywyREFBbUM7QUFDbkMsa0RBQWlEO0FBQ2pELGlEQUFtRztBQUNuRywyRkFBaUU7QUFDakUsc0RBQTZCO0FBRzdCLDZHQUErSDtBQUMvSCw0R0FBNkg7QUFFN0gsTUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDO0FBRTVCLE1BQXFCLGlCQUFrQixTQUFRLHFCQUFZO0lBU3ZELFlBQW9CLE9BQXlCLEVBQUUsT0FBZSxFQUFFLFFBQXdCO1FBQ3BGLEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLE9BQU8sR0FBSSxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBSSxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFFekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBTSxLQUFLLENBQUM7UUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBSyxLQUFLLENBQUM7UUFFdkIsTUFBTSxFQUFFLEdBQWMsSUFBQSxnQkFBSyxFQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMxQyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUUxQyxJQUFJLGFBQWEsWUFBWSwrQkFBbUI7WUFDNUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztZQUNsRixNQUFNLElBQUkseUNBQThCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDOztZQUV4RCxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU8sVUFBVSxDQUFFLEdBQVk7UUFDNUIsT0FBTyxJQUFBLHVCQUFXLEVBQUMsR0FBRyxDQUFDO1lBQ25CLEdBQUcsS0FBSyxNQUFNLENBQUMsR0FBRyxDQUFDLG1DQUEwQixDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLFlBQVk7UUFDaEIsTUFBTSxhQUFhLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBSSxJQUFJLENBQUMsU0FBb0IsQ0FBQyxDQUFDLHlEQUF5RDtRQUVsSSxPQUFPLElBQUksQ0FBQyxPQUFPLEdBQUcsYUFBYSxDQUFDO0lBQ3hDLENBQUM7SUFFTyxvQkFBb0I7UUFDeEIsSUFBSSxJQUFJLENBQUMsT0FBTztZQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFTyxhQUFhLENBQUUsRUFBWTtRQUMvQixPQUFPLEtBQUssSUFBSSxFQUFFO1lBQ2QsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUE2QixDQUFDO1lBRWpFLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxNQUFNLGFBQWEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFFdkQsSUFBSTtvQkFDQSxFQUFFLEVBQUUsQ0FBQztvQkFDTCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztvQkFDbkIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7aUJBQy9CO2dCQUVELE9BQU8sR0FBRyxFQUFFO29CQUNSLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsRUFBRTt3QkFDMUIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7d0JBQzVCLE1BQU0sR0FBRyxDQUFDO3FCQUNiO29CQUVELE1BQU0sSUFBQSxlQUFLLEVBQUMsZUFBZSxDQUFDLENBQUM7b0JBRTdCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO29CQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLHlCQUF5QixFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO2lCQUM3RDthQUNKO1FBQ0wsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVPLFlBQVk7UUFDaEIsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxNQUFNLENBQUMsR0FBRyxDQUFDLG9DQUEyQixDQUFDO1lBQy9ELE9BQU87UUFFWCxJQUFJLENBQUMsSUFBSSxDQUFDLCtCQUErQixFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFTSxLQUFLLENBQUMsR0FBRztRQUNaLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVwQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFdEMsSUFBSTtZQUNBLE1BQU0sSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1NBQ25CO1FBRUQsT0FBTyxHQUFRLEVBQUU7WUFDYixJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLElBQUksR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEtBQUssZ0JBQWdCO2dCQUMxRSxNQUFNLElBQUksd0NBQTZCLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUVoRSxJQUFJLEdBQUcsQ0FBQyxlQUFlO2dCQUNuQixHQUFHLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7WUFFakMsTUFBTSxHQUFHLENBQUM7U0FDYjtJQUNMLENBQUM7Q0FDSjtBQXJHRCxvQ0FxR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdldmVudHMnO1xuaW1wb3J0IGRlbGF5IGZyb20gJy4uL3V0aWxzL2RlbGF5JztcbmltcG9ydCB7IGlzVGhlbm5hYmxlIH0gZnJvbSAnLi4vdXRpbHMvdGhlbm5hYmxlJztcbmltcG9ydCB7IEV4dGVybmFsQXNzZXJ0aW9uTGlicmFyeUVycm9yLCBBc3NlcnRpb25VbmF3YWl0ZWRQcm9taXNlRXJyb3IgfSBmcm9tICcuLi9lcnJvcnMvdGVzdC1ydW4nO1xuaW1wb3J0IFJlRXhlY3V0YWJsZVByb21pc2UgZnJvbSAnLi4vdXRpbHMvcmUtZXhlY3V0YWJsZS1wcm9taXNlJztcbmltcG9ydCBnZXRGbiBmcm9tICcuL2dldC1mbic7XG5pbXBvcnQgeyBBc3NlcnRpb25Db21tYW5kIH0gZnJvbSAnLi4vdGVzdC1ydW4vY29tbWFuZHMvYXNzZXJ0aW9uJztcbmltcG9ydCB7IENhbGxzaXRlUmVjb3JkIH0gZnJvbSAnY2FsbHNpdGUtcmVjb3JkJztcbmltcG9ydCB7IEZVTkNUSU9OX01BUktFUl9ERVNDUklQVElPTiB9IGZyb20gJy4uL3NlcnZpY2VzL3NlcmlhbGl6YXRpb24vcmVwbGljYXRvci90cmFuc2Zvcm1zL2Z1bmN0aW9uLW1hcmtlci10cmFuc2Zvcm0vbWFya2VyJztcbmltcG9ydCB7IFBST01JU0VfTUFSS0VSX0RFU0NSSVBUSU9OIH0gZnJvbSAnLi4vc2VydmljZXMvc2VyaWFsaXphdGlvbi9yZXBsaWNhdG9yL3RyYW5zZm9ybXMvcHJvbWlzZS1tYXJrZXItdHJhbnNmb3JtL21hcmtlcic7XG5cbmNvbnN0IEFTU0VSVElPTl9ERUxBWSA9IDIwMDtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQXNzZXJ0aW9uRXhlY3V0b3IgZXh0ZW5kcyBFdmVudEVtaXR0ZXIge1xuICAgIHB1YmxpYyByZWFkb25seSBjb21tYW5kOiBBc3NlcnRpb25Db21tYW5kO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdGltZW91dDogbnVtYmVyO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2FsbHNpdGU6IENhbGxzaXRlUmVjb3JkO1xuICAgIHByaXZhdGUgc3RhcnRUaW1lOiBudW1iZXIgfCBudWxsO1xuICAgIHByaXZhdGUgcGFzc2VkOiBib29sZWFuO1xuICAgIHByaXZhdGUgaW5SZXRyeTogYm9vbGVhbjtcbiAgICBwdWJsaWMgZm46IEZ1bmN0aW9uO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yIChjb21tYW5kOiBBc3NlcnRpb25Db21tYW5kLCB0aW1lb3V0OiBudW1iZXIsIGNhbGxzaXRlOiBDYWxsc2l0ZVJlY29yZCkge1xuICAgICAgICBzdXBlcigpO1xuXG4gICAgICAgIHRoaXMuY29tbWFuZCAgPSBjb21tYW5kO1xuICAgICAgICB0aGlzLnRpbWVvdXQgID0gdGltZW91dDtcbiAgICAgICAgdGhpcy5jYWxsc2l0ZSA9IGNhbGxzaXRlO1xuXG4gICAgICAgIHRoaXMuc3RhcnRUaW1lID0gbnVsbDtcbiAgICAgICAgdGhpcy5wYXNzZWQgICAgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pblJldHJ5ICAgPSBmYWxzZTtcblxuICAgICAgICBjb25zdCBmbiAgICAgICAgICAgID0gZ2V0Rm4odGhpcy5jb21tYW5kKTtcbiAgICAgICAgY29uc3QgYWN0dWFsQ29tbWFuZCA9IHRoaXMuY29tbWFuZC5hY3R1YWw7XG5cbiAgICAgICAgaWYgKGFjdHVhbENvbW1hbmQgaW5zdGFuY2VvZiBSZUV4ZWN1dGFibGVQcm9taXNlKVxuICAgICAgICAgICAgdGhpcy5mbiA9IHRoaXMuX3dyYXBGdW5jdGlvbihmbik7XG4gICAgICAgIGVsc2UgaWYgKCF0aGlzLmNvbW1hbmQub3B0aW9ucy5hbGxvd1VuYXdhaXRlZFByb21pc2UgJiYgdGhpcy5faXNQcm9taXNlKGFjdHVhbENvbW1hbmQpKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEFzc2VydGlvblVuYXdhaXRlZFByb21pc2VFcnJvcih0aGlzLmNhbGxzaXRlKTtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgdGhpcy5mbiA9IGZuO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2lzUHJvbWlzZSAodmFsOiB1bmtub3duKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBpc1RoZW5uYWJsZSh2YWwpIHx8XG4gICAgICAgICAgICB2YWwgPT09IFN5bWJvbC5mb3IoUFJPTUlTRV9NQVJLRVJfREVTQ1JJUFRJT04pO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2dldFRpbWVMZWZ0ICgpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBleGVjdXRpb25UaW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCkgLSAodGhpcy5zdGFydFRpbWUgYXMgbnVtYmVyKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXh0cmEtcGFyZW5zXG5cbiAgICAgICAgcmV0dXJuIHRoaXMudGltZW91dCAtIGV4ZWN1dGlvblRpbWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfb25FeGVjdXRpb25GaW5pc2hlZCAoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmluUmV0cnkpXG4gICAgICAgICAgICB0aGlzLmVtaXQoJ2VuZC1hc3NlcnRpb24tcmV0cmllcycsIHRoaXMucGFzc2VkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF93cmFwRnVuY3Rpb24gKGZuOiBGdW5jdGlvbik6IEZ1bmN0aW9uIHtcbiAgICAgICAgcmV0dXJuIGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdFByb21pc2UgPSB0aGlzLmNvbW1hbmQuYWN0dWFsIGFzIFJlRXhlY3V0YWJsZVByb21pc2U7XG5cbiAgICAgICAgICAgIHdoaWxlICghdGhpcy5wYXNzZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbW1hbmQuYWN0dWFsID0gYXdhaXQgcmVzdWx0UHJvbWlzZS5fcmVFeGVjdXRlKCk7XG5cbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBmbigpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhc3NlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX29uRXhlY3V0aW9uRmluaXNoZWQoKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLl9nZXRUaW1lTGVmdCgpIDw9IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX29uRXhlY3V0aW9uRmluaXNoZWQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IGVycjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IGRlbGF5KEFTU0VSVElPTl9ERUxBWSk7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pblJldHJ5ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbWl0KCdzdGFydC1hc3NlcnRpb24tcmV0cmllcycsIHRoaXMuX2dldFRpbWVMZWZ0KCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9vbkJlZm9yZVJ1biAoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmNvbW1hbmQuYWN0dWFsICE9PSBTeW1ib2wuZm9yKEZVTkNUSU9OX01BUktFUl9ERVNDUklQVElPTikpXG4gICAgICAgICAgICByZXR1cm47XG5cbiAgICAgICAgdGhpcy5lbWl0KCdub24tc2VyaWFsaXphYmxlLWFjdHVhbC12YWx1ZScsIHRoaXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBydW4gKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICB0aGlzLl9vbkJlZm9yZVJ1bigpO1xuXG4gICAgICAgIHRoaXMuc3RhcnRUaW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuZm4oKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNhdGNoIChlcnI6IGFueSkge1xuICAgICAgICAgICAgaWYgKGVyci5uYW1lID09PSAnQXNzZXJ0aW9uRXJyb3InIHx8IGVyci5jb25zdHJ1Y3Rvci5uYW1lID09PSAnQXNzZXJ0aW9uRXJyb3InKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFeHRlcm5hbEFzc2VydGlvbkxpYnJhcnlFcnJvcihlcnIsIHRoaXMuY2FsbHNpdGUpO1xuXG4gICAgICAgICAgICBpZiAoZXJyLmlzVGVzdENhZmVFcnJvcilcbiAgICAgICAgICAgICAgICBlcnIuY2FsbHNpdGUgPSB0aGlzLmNhbGxzaXRlO1xuXG4gICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -32,9 +32,9 @@ function getFn(command) {
32
32
  case type_1.default.lte:
33
33
  return () => chai_1.assert.isAtMost(command.actual, command.expected, command.message);
34
34
  case type_1.default.within:
35
- return () => chai_1.expect(command.actual).to.be.within(command.expected, command.expected2, command.message);
35
+ return () => (0, chai_1.expect)(command.actual).to.be.within(command.expected, command.expected2, command.message);
36
36
  case type_1.default.notWithin:
37
- return () => chai_1.expect(command.actual).not.to.be.within(command.expected, command.expected2, command.message);
37
+ return () => (0, chai_1.expect)(command.actual).not.to.be.within(command.expected, command.expected2, command.message);
38
38
  case type_1.default.match:
39
39
  return () => chai_1.assert.match(command.actual, command.expected, command.message);
40
40
  case type_1.default.notMatch:
@@ -45,4 +45,4 @@ function getFn(command) {
45
45
  }
46
46
  exports.default = getFn;
47
47
  module.exports = exports.default;
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWZuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Fzc2VydGlvbnMvZ2V0LWZuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0JBQXNDO0FBQ3RDLGtEQUFvQztBQUdwQyxTQUF3QixLQUFLLENBQUUsT0FBeUI7SUFDcEQsUUFBUSxPQUFPLENBQUMsYUFBYSxFQUFFO1FBQzNCLEtBQUssY0FBYyxDQUFDLEdBQUc7WUFDbkIsT0FBTyxHQUFHLEVBQUUsQ0FBQyxhQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFckYsS0FBSyxjQUFjLENBQUMsTUFBTTtZQUN0QixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV4RixLQUFLLGNBQWMsQ0FBQyxFQUFFO1lBQ2xCLE9BQU8sR0FBRyxFQUFFLENBQUMsYUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU5RCxLQUFLLGNBQWMsQ0FBQyxLQUFLO1lBQ3JCLE9BQU8sR0FBRyxFQUFFLENBQUMsYUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVqRSxLQUFLLGNBQWMsQ0FBQyxRQUFRO1lBQ3hCLE9BQU8sR0FBRyxFQUFFLENBQUMsYUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBZ0IsRUFBRSxPQUFPLENBQUMsUUFBa0IsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFdkcsS0FBSyxjQUFjLENBQUMsV0FBVztZQUMzQixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE1BQWdCLEVBQUUsT0FBTyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFaEcsS0FBSyxjQUFjLENBQUMsTUFBTTtZQUN0QixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsUUFBa0IsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFNUYsS0FBSyxjQUFjLENBQUMsU0FBUztZQUN6QixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsUUFBa0IsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFL0YsS0FBSyxjQUFjLENBQUMsRUFBRTtZQUNsQixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQWdCLEVBQUUsT0FBTyxDQUFDLFFBQWtCLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXZHLEtBQUssY0FBYyxDQUFDLEdBQUc7WUFDbkIsT0FBTyxHQUFHLEVBQUUsQ0FBQyxhQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFnQixFQUFFLE9BQU8sQ0FBQyxRQUFrQixFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV6RyxLQUFLLGNBQWMsQ0FBQyxFQUFFO1lBQ2xCLE9BQU8sR0FBRyxFQUFFLENBQUMsYUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBZ0IsRUFBRSxPQUFPLENBQUMsUUFBa0IsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFdkcsS0FBSyxjQUFjLENBQUMsR0FBRztZQUNuQixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQWdCLEVBQUUsT0FBTyxDQUFDLFFBQWtCLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXhHLEtBQUssY0FBYyxDQUFDLE1BQU07WUFDdEIsT0FBTyxHQUFHLEVBQUUsQ0FBQyxhQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFrQixFQUFFLE9BQU8sQ0FBQyxTQUFtQixFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUvSCxLQUFLLGNBQWMsQ0FBQyxTQUFTO1lBQ3pCLE9BQU8sR0FBRyxFQUFFLENBQUMsYUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQWtCLEVBQUUsT0FBTyxDQUFDLFNBQW1CLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRW5JLEtBQUssY0FBYyxDQUFDLEtBQUs7WUFDckIsT0FBTyxHQUFHLEVBQUUsQ0FBQyxhQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFnQixFQUFFLE9BQU8sQ0FBQyxRQUFrQixFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVyRyxLQUFLLGNBQWMsQ0FBQyxRQUFRO1lBQ3hCLE9BQU8sR0FBRyxFQUFFLENBQUMsYUFBTSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxRQUFrQixFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU5RjtZQUNJLE9BQU8sR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDM0I7QUFDTCxDQUFDO0FBckRELHdCQXFEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFzc2VydCwgZXhwZWN0IH0gZnJvbSAnY2hhaSc7XG5pbXBvcnQgQVNTRVJUSU9OX1RZUEUgZnJvbSAnLi90eXBlJztcbmltcG9ydCB7IEFzc2VydGlvbkNvbW1hbmQgfSBmcm9tICcuLi90ZXN0LXJ1bi9jb21tYW5kcy9hc3NlcnRpb24nO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRGbiAoY29tbWFuZDogQXNzZXJ0aW9uQ29tbWFuZCk6IEZ1bmN0aW9uIHtcbiAgICBzd2l0Y2ggKGNvbW1hbmQuYXNzZXJ0aW9uVHlwZSkge1xuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLmVxbDpcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBhc3NlcnQuZGVlcEVxdWFsKGNvbW1hbmQuYWN0dWFsLCBjb21tYW5kLmV4cGVjdGVkLCBjb21tYW5kLm1lc3NhZ2UpO1xuXG4gICAgICAgIGNhc2UgQVNTRVJUSU9OX1RZUEUubm90RXFsOlxuICAgICAgICAgICAgcmV0dXJuICgpID0+IGFzc2VydC5ub3REZWVwRXF1YWwoY29tbWFuZC5hY3R1YWwsIGNvbW1hbmQuZXhwZWN0ZWQsIGNvbW1hbmQubWVzc2FnZSk7XG5cbiAgICAgICAgY2FzZSBBU1NFUlRJT05fVFlQRS5vazpcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBhc3NlcnQuaXNPayhjb21tYW5kLmFjdHVhbCwgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLm5vdE9rOlxuICAgICAgICAgICAgcmV0dXJuICgpID0+IGFzc2VydC5pc05vdE9rKGNvbW1hbmQuYWN0dWFsLCBjb21tYW5kLm1lc3NhZ2UpO1xuXG4gICAgICAgIGNhc2UgQVNTRVJUSU9OX1RZUEUuY29udGFpbnM6XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gYXNzZXJ0LmluY2x1ZGUoY29tbWFuZC5hY3R1YWwgYXMgc3RyaW5nLCBjb21tYW5kLmV4cGVjdGVkIGFzIHN0cmluZywgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLm5vdENvbnRhaW5zOlxuICAgICAgICAgICAgcmV0dXJuICgpID0+IGFzc2VydC5ub3RJbmNsdWRlKGNvbW1hbmQuYWN0dWFsIGFzIHN0cmluZywgY29tbWFuZC5leHBlY3RlZCwgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLnR5cGVPZjpcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBhc3NlcnQudHlwZU9mKGNvbW1hbmQuYWN0dWFsLCBjb21tYW5kLmV4cGVjdGVkIGFzIHN0cmluZywgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLm5vdFR5cGVPZjpcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBhc3NlcnQubm90VHlwZU9mKGNvbW1hbmQuYWN0dWFsLCBjb21tYW5kLmV4cGVjdGVkIGFzIHN0cmluZywgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLmd0OlxuICAgICAgICAgICAgcmV0dXJuICgpID0+IGFzc2VydC5pc0Fib3ZlKGNvbW1hbmQuYWN0dWFsIGFzIG51bWJlciwgY29tbWFuZC5leHBlY3RlZCBhcyBudW1iZXIsIGNvbW1hbmQubWVzc2FnZSk7XG5cbiAgICAgICAgY2FzZSBBU1NFUlRJT05fVFlQRS5ndGU6XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gYXNzZXJ0LmlzQXRMZWFzdChjb21tYW5kLmFjdHVhbCBhcyBudW1iZXIsIGNvbW1hbmQuZXhwZWN0ZWQgYXMgbnVtYmVyLCBjb21tYW5kLm1lc3NhZ2UpO1xuXG4gICAgICAgIGNhc2UgQVNTRVJUSU9OX1RZUEUubHQ6XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gYXNzZXJ0LmlzQmVsb3coY29tbWFuZC5hY3R1YWwgYXMgbnVtYmVyLCBjb21tYW5kLmV4cGVjdGVkIGFzIG51bWJlciwgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLmx0ZTpcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBhc3NlcnQuaXNBdE1vc3QoY29tbWFuZC5hY3R1YWwgYXMgbnVtYmVyLCBjb21tYW5kLmV4cGVjdGVkIGFzIG51bWJlciwgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLndpdGhpbjpcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBleHBlY3QoY29tbWFuZC5hY3R1YWwpLnRvLmJlLndpdGhpbihjb21tYW5kLmV4cGVjdGVkIGFzIG51bWJlciwgY29tbWFuZC5leHBlY3RlZDIgYXMgbnVtYmVyLCBjb21tYW5kLm1lc3NhZ2UpO1xuXG4gICAgICAgIGNhc2UgQVNTRVJUSU9OX1RZUEUubm90V2l0aGluOlxuICAgICAgICAgICAgcmV0dXJuICgpID0+IGV4cGVjdChjb21tYW5kLmFjdHVhbCkubm90LnRvLmJlLndpdGhpbihjb21tYW5kLmV4cGVjdGVkIGFzIG51bWJlciwgY29tbWFuZC5leHBlY3RlZDIgYXMgbnVtYmVyLCBjb21tYW5kLm1lc3NhZ2UpO1xuXG4gICAgICAgIGNhc2UgQVNTRVJUSU9OX1RZUEUubWF0Y2g6XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gYXNzZXJ0Lm1hdGNoKGNvbW1hbmQuYWN0dWFsIGFzIHN0cmluZywgY29tbWFuZC5leHBlY3RlZCBhcyBSZWdFeHAsIGNvbW1hbmQubWVzc2FnZSk7XG5cbiAgICAgICAgY2FzZSBBU1NFUlRJT05fVFlQRS5ub3RNYXRjaDpcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBhc3NlcnQubm90TWF0Y2goY29tbWFuZC5hY3R1YWwsIGNvbW1hbmQuZXhwZWN0ZWQgYXMgUmVnRXhwLCBjb21tYW5kLm1lc3NhZ2UpO1xuXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gdm9pZCAwO1xuICAgIH1cbn1cbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWZuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Fzc2VydGlvbnMvZ2V0LWZuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0JBQXNDO0FBQ3RDLGtEQUFvQztBQUdwQyxTQUF3QixLQUFLLENBQUUsT0FBeUI7SUFDcEQsUUFBUSxPQUFPLENBQUMsYUFBYSxFQUFFO1FBQzNCLEtBQUssY0FBYyxDQUFDLEdBQUc7WUFDbkIsT0FBTyxHQUFHLEVBQUUsQ0FBQyxhQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFckYsS0FBSyxjQUFjLENBQUMsTUFBTTtZQUN0QixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV4RixLQUFLLGNBQWMsQ0FBQyxFQUFFO1lBQ2xCLE9BQU8sR0FBRyxFQUFFLENBQUMsYUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU5RCxLQUFLLGNBQWMsQ0FBQyxLQUFLO1lBQ3JCLE9BQU8sR0FBRyxFQUFFLENBQUMsYUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVqRSxLQUFLLGNBQWMsQ0FBQyxRQUFRO1lBQ3hCLE9BQU8sR0FBRyxFQUFFLENBQUMsYUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBZ0IsRUFBRSxPQUFPLENBQUMsUUFBa0IsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFdkcsS0FBSyxjQUFjLENBQUMsV0FBVztZQUMzQixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE1BQWdCLEVBQUUsT0FBTyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFaEcsS0FBSyxjQUFjLENBQUMsTUFBTTtZQUN0QixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsUUFBa0IsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFNUYsS0FBSyxjQUFjLENBQUMsU0FBUztZQUN6QixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsUUFBa0IsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFL0YsS0FBSyxjQUFjLENBQUMsRUFBRTtZQUNsQixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQWdCLEVBQUUsT0FBTyxDQUFDLFFBQWtCLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXZHLEtBQUssY0FBYyxDQUFDLEdBQUc7WUFDbkIsT0FBTyxHQUFHLEVBQUUsQ0FBQyxhQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFnQixFQUFFLE9BQU8sQ0FBQyxRQUFrQixFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV6RyxLQUFLLGNBQWMsQ0FBQyxFQUFFO1lBQ2xCLE9BQU8sR0FBRyxFQUFFLENBQUMsYUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBZ0IsRUFBRSxPQUFPLENBQUMsUUFBa0IsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFdkcsS0FBSyxjQUFjLENBQUMsR0FBRztZQUNuQixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQWdCLEVBQUUsT0FBTyxDQUFDLFFBQWtCLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXhHLEtBQUssY0FBYyxDQUFDLE1BQU07WUFDdEIsT0FBTyxHQUFHLEVBQUUsQ0FBQyxJQUFBLGFBQU0sRUFBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQWtCLEVBQUUsT0FBTyxDQUFDLFNBQW1CLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRS9ILEtBQUssY0FBYyxDQUFDLFNBQVM7WUFDekIsT0FBTyxHQUFHLEVBQUUsQ0FBQyxJQUFBLGFBQU0sRUFBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFrQixFQUFFLE9BQU8sQ0FBQyxTQUFtQixFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVuSSxLQUFLLGNBQWMsQ0FBQyxLQUFLO1lBQ3JCLE9BQU8sR0FBRyxFQUFFLENBQUMsYUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBZ0IsRUFBRSxPQUFPLENBQUMsUUFBa0IsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFckcsS0FBSyxjQUFjLENBQUMsUUFBUTtZQUN4QixPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsUUFBa0IsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFOUY7WUFDSSxPQUFPLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQzNCO0FBQ0wsQ0FBQztBQXJERCx3QkFxREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhc3NlcnQsIGV4cGVjdCB9IGZyb20gJ2NoYWknO1xuaW1wb3J0IEFTU0VSVElPTl9UWVBFIGZyb20gJy4vdHlwZSc7XG5pbXBvcnQgeyBBc3NlcnRpb25Db21tYW5kIH0gZnJvbSAnLi4vdGVzdC1ydW4vY29tbWFuZHMvYXNzZXJ0aW9uJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0Rm4gKGNvbW1hbmQ6IEFzc2VydGlvbkNvbW1hbmQpOiBGdW5jdGlvbiB7XG4gICAgc3dpdGNoIChjb21tYW5kLmFzc2VydGlvblR5cGUpIHtcbiAgICAgICAgY2FzZSBBU1NFUlRJT05fVFlQRS5lcWw6XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gYXNzZXJ0LmRlZXBFcXVhbChjb21tYW5kLmFjdHVhbCwgY29tbWFuZC5leHBlY3RlZCwgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLm5vdEVxbDpcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBhc3NlcnQubm90RGVlcEVxdWFsKGNvbW1hbmQuYWN0dWFsLCBjb21tYW5kLmV4cGVjdGVkLCBjb21tYW5kLm1lc3NhZ2UpO1xuXG4gICAgICAgIGNhc2UgQVNTRVJUSU9OX1RZUEUub2s6XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gYXNzZXJ0LmlzT2soY29tbWFuZC5hY3R1YWwsIGNvbW1hbmQubWVzc2FnZSk7XG5cbiAgICAgICAgY2FzZSBBU1NFUlRJT05fVFlQRS5ub3RPazpcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBhc3NlcnQuaXNOb3RPayhjb21tYW5kLmFjdHVhbCwgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLmNvbnRhaW5zOlxuICAgICAgICAgICAgcmV0dXJuICgpID0+IGFzc2VydC5pbmNsdWRlKGNvbW1hbmQuYWN0dWFsIGFzIHN0cmluZywgY29tbWFuZC5leHBlY3RlZCBhcyBzdHJpbmcsIGNvbW1hbmQubWVzc2FnZSk7XG5cbiAgICAgICAgY2FzZSBBU1NFUlRJT05fVFlQRS5ub3RDb250YWluczpcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBhc3NlcnQubm90SW5jbHVkZShjb21tYW5kLmFjdHVhbCBhcyBzdHJpbmcsIGNvbW1hbmQuZXhwZWN0ZWQsIGNvbW1hbmQubWVzc2FnZSk7XG5cbiAgICAgICAgY2FzZSBBU1NFUlRJT05fVFlQRS50eXBlT2Y6XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gYXNzZXJ0LnR5cGVPZihjb21tYW5kLmFjdHVhbCwgY29tbWFuZC5leHBlY3RlZCBhcyBzdHJpbmcsIGNvbW1hbmQubWVzc2FnZSk7XG5cbiAgICAgICAgY2FzZSBBU1NFUlRJT05fVFlQRS5ub3RUeXBlT2Y6XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gYXNzZXJ0Lm5vdFR5cGVPZihjb21tYW5kLmFjdHVhbCwgY29tbWFuZC5leHBlY3RlZCBhcyBzdHJpbmcsIGNvbW1hbmQubWVzc2FnZSk7XG5cbiAgICAgICAgY2FzZSBBU1NFUlRJT05fVFlQRS5ndDpcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBhc3NlcnQuaXNBYm92ZShjb21tYW5kLmFjdHVhbCBhcyBudW1iZXIsIGNvbW1hbmQuZXhwZWN0ZWQgYXMgbnVtYmVyLCBjb21tYW5kLm1lc3NhZ2UpO1xuXG4gICAgICAgIGNhc2UgQVNTRVJUSU9OX1RZUEUuZ3RlOlxuICAgICAgICAgICAgcmV0dXJuICgpID0+IGFzc2VydC5pc0F0TGVhc3QoY29tbWFuZC5hY3R1YWwgYXMgbnVtYmVyLCBjb21tYW5kLmV4cGVjdGVkIGFzIG51bWJlciwgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLmx0OlxuICAgICAgICAgICAgcmV0dXJuICgpID0+IGFzc2VydC5pc0JlbG93KGNvbW1hbmQuYWN0dWFsIGFzIG51bWJlciwgY29tbWFuZC5leHBlY3RlZCBhcyBudW1iZXIsIGNvbW1hbmQubWVzc2FnZSk7XG5cbiAgICAgICAgY2FzZSBBU1NFUlRJT05fVFlQRS5sdGU6XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gYXNzZXJ0LmlzQXRNb3N0KGNvbW1hbmQuYWN0dWFsIGFzIG51bWJlciwgY29tbWFuZC5leHBlY3RlZCBhcyBudW1iZXIsIGNvbW1hbmQubWVzc2FnZSk7XG5cbiAgICAgICAgY2FzZSBBU1NFUlRJT05fVFlQRS53aXRoaW46XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gZXhwZWN0KGNvbW1hbmQuYWN0dWFsKS50by5iZS53aXRoaW4oY29tbWFuZC5leHBlY3RlZCBhcyBudW1iZXIsIGNvbW1hbmQuZXhwZWN0ZWQyIGFzIG51bWJlciwgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLm5vdFdpdGhpbjpcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBleHBlY3QoY29tbWFuZC5hY3R1YWwpLm5vdC50by5iZS53aXRoaW4oY29tbWFuZC5leHBlY3RlZCBhcyBudW1iZXIsIGNvbW1hbmQuZXhwZWN0ZWQyIGFzIG51bWJlciwgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBjYXNlIEFTU0VSVElPTl9UWVBFLm1hdGNoOlxuICAgICAgICAgICAgcmV0dXJuICgpID0+IGFzc2VydC5tYXRjaChjb21tYW5kLmFjdHVhbCBhcyBzdHJpbmcsIGNvbW1hbmQuZXhwZWN0ZWQgYXMgUmVnRXhwLCBjb21tYW5kLm1lc3NhZ2UpO1xuXG4gICAgICAgIGNhc2UgQVNTRVJUSU9OX1RZUEUubm90TWF0Y2g6XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gYXNzZXJ0Lm5vdE1hdGNoKGNvbW1hbmQuYWN0dWFsLCBjb21tYW5kLmV4cGVjdGVkIGFzIFJlZ0V4cCwgY29tbWFuZC5tZXNzYWdlKTtcblxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuICgpID0+IHZvaWQgMDtcbiAgICB9XG59XG4iXX0=
@@ -22,17 +22,17 @@ class BrowserConnectionGateway {
22
22
  // @ts-ignore Need to improve typings of the 'testcafe-hammerhead' module
23
23
  proxy[method](url, (req, res, serverInfo, params) => {
24
24
  const connection = this._connections[params.id];
25
- http_1.preventCaching(res);
25
+ (0, http_1.preventCaching)(res);
26
26
  if (shouldAcceptCrossOrigin)
27
- testcafe_hammerhead_1.acceptCrossOrigin(res);
27
+ (0, testcafe_hammerhead_1.acceptCrossOrigin)(res);
28
28
  if (connection)
29
29
  handler(req, res, connection);
30
30
  else
31
- http_1.respond404(res);
31
+ (0, http_1.respond404)(res);
32
32
  });
33
33
  }
34
34
  _registerRoutes(proxy) {
35
- const { idlePageScript, idlePageStyle, idlePageLogo, serviceWorkerScript, } = load_assets_1.default();
35
+ const { idlePageScript, idlePageStyle, idlePageLogo, serviceWorkerScript, } = (0, load_assets_1.default)();
36
36
  this._dispatch('/browser/connect/{id}', proxy, BrowserConnectionGateway._onConnection);
37
37
  this._dispatch('/browser/heartbeat/{id}', proxy, BrowserConnectionGateway._onHeartbeat, 'GET', this.proxyless);
38
38
  this._dispatch('/browser/idle/{id}', proxy, BrowserConnectionGateway._onIdle);
@@ -54,7 +54,7 @@ class BrowserConnectionGateway {
54
54
  // Helpers
55
55
  static _ensureConnectionReady(res, connection) {
56
56
  if (!connection.isReady()) {
57
- http_1.respond500(res, 'The connection is not ready yet.');
57
+ (0, http_1.respond500)(res, 'The connection is not ready yet.');
58
58
  return false;
59
59
  }
60
60
  return true;
@@ -71,17 +71,17 @@ class BrowserConnectionGateway {
71
71
  // Route handlers
72
72
  static async _onConnection(req, res, connection) {
73
73
  if (connection.isReady())
74
- http_1.respond500(res, 'The connection is already established.');
74
+ (0, http_1.respond500)(res, 'The connection is already established.');
75
75
  else {
76
76
  const userAgent = req.headers['user-agent'];
77
77
  await connection.establish(userAgent);
78
- http_1.redirect(res, connection.idleUrl);
78
+ (0, http_1.redirect)(res, connection.idleUrl);
79
79
  }
80
80
  }
81
81
  static _onHeartbeat(req, res, connection) {
82
82
  if (BrowserConnectionGateway._ensureConnectionReady(res, connection)) {
83
83
  const status = connection.heartbeat();
84
- http_1.respondWithJSON(res, status);
84
+ (0, http_1.respondWithJSON)(res, status);
85
85
  }
86
86
  }
87
87
  static _onIdle(req, res, connection) {
@@ -91,7 +91,7 @@ class BrowserConnectionGateway {
91
91
  static async _onIdleForced(req, res, connection) {
92
92
  if (BrowserConnectionGateway._ensureConnectionReady(res, connection)) {
93
93
  const status = await connection.getStatus(true);
94
- http_1.redirect(res, status.url);
94
+ (0, http_1.redirect)(res, status.url);
95
95
  }
96
96
  }
97
97
  static async _onStatusRequest(req, res, connection) {
@@ -103,13 +103,13 @@ class BrowserConnectionGateway {
103
103
  static async _onStatusRequestCore(req, res, connection, isTestDone) {
104
104
  if (BrowserConnectionGateway._ensureConnectionReady(res, connection)) {
105
105
  const status = await connection.getStatus(isTestDone);
106
- http_1.respondWithJSON(res, status);
106
+ (0, http_1.respondWithJSON)(res, status);
107
107
  }
108
108
  }
109
109
  static _onInitScriptRequest(req, res, connection) {
110
110
  if (BrowserConnectionGateway._ensureConnectionReady(res, connection)) {
111
111
  const script = connection.getInitScript();
112
- http_1.respondWithJSON(res, script);
112
+ (0, http_1.respondWithJSON)(res, script);
113
113
  }
114
114
  }
115
115
  static _onInitScriptResponse(req, res, connection) {
@@ -122,7 +122,7 @@ class BrowserConnectionGateway {
122
122
  }
123
123
  static _onGetActiveWindowIdRequest(req, res, connection) {
124
124
  if (BrowserConnectionGateway._ensureConnectionReady(res, connection)) {
125
- http_1.respondWithJSON(res, {
125
+ (0, http_1.respondWithJSON)(res, {
126
126
  activeWindowId: connection.activeWindowId,
127
127
  });
128
128
  }
@@ -132,7 +132,7 @@ class BrowserConnectionGateway {
132
132
  BrowserConnectionGateway._fetchRequestData(req, data => {
133
133
  const parsedData = JSON.parse(data);
134
134
  connection.activeWindowId = parsedData.windowId;
135
- http_1.respondWithJSON(res);
135
+ (0, http_1.respondWithJSON)(res);
136
136
  });
137
137
  }
138
138
  }
@@ -140,17 +140,17 @@ class BrowserConnectionGateway {
140
140
  if (BrowserConnectionGateway._ensureConnectionReady(res, connection)) {
141
141
  connection.provider.closeBrowserChildWindow(connection.id)
142
142
  .then(() => {
143
- http_1.respondWithJSON(res);
143
+ (0, http_1.respondWithJSON)(res);
144
144
  });
145
145
  }
146
146
  }
147
147
  async _connectNextRemoteBrowser(req, res) {
148
- http_1.preventCaching(res);
148
+ (0, http_1.preventCaching)(res);
149
149
  const remoteConnection = await this._remotesQueue.shift();
150
150
  if (remoteConnection)
151
- http_1.redirect(res, remoteConnection.url);
151
+ (0, http_1.redirect)(res, remoteConnection.url);
152
152
  else
153
- http_1.respond500(res, 'There are no available _connections to establish.');
153
+ (0, http_1.respond500)(res, 'There are no available _connections to establish.');
154
154
  }
155
155
  // API
156
156
  startServingConnection(connection) {
@@ -170,4 +170,4 @@ class BrowserConnectionGateway {
170
170
  }
171
171
  exports.default = BrowserConnectionGateway;
172
172
  module.exports = exports.default;
173
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2F0ZXdheS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9icm93c2VyL2Nvbm5lY3Rpb24vZ2F0ZXdheS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG9FQUEyQztBQUMzQywyQ0FNMEI7QUFFMUIsb0VBQTJDO0FBQzNDLDZEQUErRDtBQUkvRCxzRUFBOEM7QUFHOUMsTUFBcUIsd0JBQXdCO0lBUXpDLFlBQW9CLEtBQVksRUFBRSxPQUF3RDtRQVBsRixpQkFBWSxHQUFrQyxFQUFFLENBQUM7UUFRckQsSUFBSSxDQUFDLGFBQWEsR0FBSyxJQUFJLHVCQUFZLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsVUFBVSxHQUFRLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxjQUFjLEdBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQztRQUM5QyxJQUFJLENBQUMsU0FBUyxHQUFTLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDekMsSUFBSSxDQUFDLEtBQUssR0FBYSxLQUFLLENBQUM7UUFFN0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRU8sU0FBUyxDQUFFLEdBQVcsRUFBRSxLQUFZLEVBQUUsT0FBaUIsRUFBRSxNQUFNLEdBQUcsS0FBSyxFQUFFLHVCQUFpQztRQUM5Ryx5RUFBeUU7UUFDekUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQW9CLEVBQUUsR0FBbUIsRUFBRSxVQUFVLEVBQUUsTUFBMEIsRUFBRSxFQUFFO1lBQ3JHLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBRWhELHFCQUFjLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFcEIsSUFBSSx1QkFBdUI7Z0JBQ3ZCLHVDQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBRTNC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QUcsRUFBRSxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQzs7WUFFcEMsaUJBQVUsQ0FBQyxHQUFHLEVBQUUsbURBQW1ELENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQsTUFBTTtJQUNDLHNCQUFzQixDQUFFLFVBQTZCO1FBQ3hELElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztRQUU5QyxJQUFJLFVBQVUsQ0FBQyxXQUFXLENBQUMsWUFBWSxLQUFLLFFBQVE7WUFDaEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVNLHFCQUFxQixDQUFFLFVBQTZCO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFeEMsSUFBSSxVQUFVLENBQUMsV0FBVyxDQUFDLFlBQVksS0FBSyxRQUFRO1lBQ2hELElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTSxLQUFLLENBQUMsS0FBSztRQUNkLEtBQUssTUFBTSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVk7WUFDOUIsTUFBTSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzVDLENBQUM7Q0FDSjtBQXRORCwyQ0FzTkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbG9hZEFzc2V0cyBmcm9tICcuLi8uLi9sb2FkLWFzc2V0cyc7XG5pbXBvcnQge1xuICAgIHJlc3BvbmQ0MDQsXG4gICAgcmVzcG9uZDUwMCxcbiAgICByZXNwb25kV2l0aEpTT04sXG4gICAgcmVkaXJlY3QsXG4gICAgcHJldmVudENhY2hpbmcsXG59IGZyb20gJy4uLy4uL3V0aWxzL2h0dHAnO1xuXG5pbXBvcnQgUmVtb3Rlc1F1ZXVlIGZyb20gJy4vcmVtb3Rlcy1xdWV1ZSc7XG5pbXBvcnQgeyBQcm94eSwgYWNjZXB0Q3Jvc3NPcmlnaW4gfSBmcm9tICd0ZXN0Y2FmZS1oYW1tZXJoZWFkJztcbmltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tICcuLi8uLi9jb25maWd1cmF0aW9uL2ludGVyZmFjZXMnO1xuaW1wb3J0IEJyb3dzZXJDb25uZWN0aW9uIGZyb20gJy4vaW5kZXgnO1xuaW1wb3J0IHsgSW5jb21pbmdNZXNzYWdlLCBTZXJ2ZXJSZXNwb25zZSB9IGZyb20gJ2h0dHAnO1xuaW1wb3J0IFNFUlZJQ0VfUk9VVEVTIGZyb20gJy4vc2VydmljZS1yb3V0ZXMnO1xuXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheSB7XG4gICAgcHJpdmF0ZSBfY29ubmVjdGlvbnM6IERpY3Rpb25hcnk8QnJvd3NlckNvbm5lY3Rpb24+ID0ge307XG4gICAgcHJpdmF0ZSBfcmVtb3Rlc1F1ZXVlOiBSZW1vdGVzUXVldWU7XG4gICAgcHVibGljIHJlYWRvbmx5IGNvbm5lY3RVcmw6IHN0cmluZztcbiAgICBwdWJsaWMgcmV0cnlUZXN0UGFnZXM6IGJvb2xlYW47XG4gICAgcHJpdmF0ZSByZWFkb25seSBwcm94eWxlc3M6IGJvb2xlYW47XG4gICAgcHVibGljIHJlYWRvbmx5IHByb3h5OiBQcm94eTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvciAocHJveHk6IFByb3h5LCBvcHRpb25zOiB7IHJldHJ5VGVzdFBhZ2VzOiBib29sZWFuOyBwcm94eWxlc3M6IGJvb2xlYW4gfSkge1xuICAgICAgICB0aGlzLl9yZW1vdGVzUXVldWUgICA9IG5ldyBSZW1vdGVzUXVldWUoKTtcbiAgICAgICAgdGhpcy5jb25uZWN0VXJsICAgICAgPSBwcm94eS5yZXNvbHZlUmVsYXRpdmVTZXJ2aWNlVXJsKCcvYnJvd3Nlci9jb25uZWN0Jyk7XG4gICAgICAgIHRoaXMucmV0cnlUZXN0UGFnZXMgID0gb3B0aW9ucy5yZXRyeVRlc3RQYWdlcztcbiAgICAgICAgdGhpcy5wcm94eWxlc3MgICAgICAgPSBvcHRpb25zLnByb3h5bGVzcztcbiAgICAgICAgdGhpcy5wcm94eSAgICAgICAgICAgPSBwcm94eTtcblxuICAgICAgICB0aGlzLl9yZWdpc3RlclJvdXRlcyhwcm94eSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZGlzcGF0Y2ggKHVybDogc3RyaW5nLCBwcm94eTogUHJveHksIGhhbmRsZXI6IEZ1bmN0aW9uLCBtZXRob2QgPSAnR0VUJywgc2hvdWxkQWNjZXB0Q3Jvc3NPcmlnaW4/OiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmUgTmVlZCB0byBpbXByb3ZlIHR5cGluZ3Mgb2YgdGhlICd0ZXN0Y2FmZS1oYW1tZXJoZWFkJyBtb2R1bGVcbiAgICAgICAgcHJveHlbbWV0aG9kXSh1cmwsIChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSwgc2VydmVySW5mbywgcGFyYW1zOiBEaWN0aW9uYXJ5PHN0cmluZz4pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbm5lY3Rpb24gPSB0aGlzLl9jb25uZWN0aW9uc1twYXJhbXMuaWRdO1xuXG4gICAgICAgICAgICBwcmV2ZW50Q2FjaGluZyhyZXMpO1xuXG4gICAgICAgICAgICBpZiAoc2hvdWxkQWNjZXB0Q3Jvc3NPcmlnaW4pXG4gICAgICAgICAgICAgICAgYWNjZXB0Q3Jvc3NPcmlnaW4ocmVzKTtcblxuICAgICAgICAgICAgaWYgKGNvbm5lY3Rpb24pXG4gICAgICAgICAgICAgICAgaGFuZGxlcihyZXEsIHJlcywgY29ubmVjdGlvbik7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgcmVzcG9uZDQwNChyZXMpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9yZWdpc3RlclJvdXRlcyAocHJveHk6IFByb3h5KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgIGlkbGVQYWdlU2NyaXB0LFxuICAgICAgICAgICAgaWRsZVBhZ2VTdHlsZSxcbiAgICAgICAgICAgIGlkbGVQYWdlTG9nbyxcbiAgICAgICAgICAgIHNlcnZpY2VXb3JrZXJTY3JpcHQsXG4gICAgICAgIH0gPSBsb2FkQXNzZXRzKCk7XG5cbiAgICAgICAgdGhpcy5fZGlzcGF0Y2goJy9icm93c2VyL2Nvbm5lY3Qve2lkfScsIHByb3h5LCBCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX29uQ29ubmVjdGlvbik7XG4gICAgICAgIHRoaXMuX2Rpc3BhdGNoKCcvYnJvd3Nlci9oZWFydGJlYXQve2lkfScsIHByb3h5LCBCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX29uSGVhcnRiZWF0LCAnR0VUJywgdGhpcy5wcm94eWxlc3MpO1xuICAgICAgICB0aGlzLl9kaXNwYXRjaCgnL2Jyb3dzZXIvaWRsZS97aWR9JywgcHJveHksIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fb25JZGxlKTtcbiAgICAgICAgdGhpcy5fZGlzcGF0Y2goJy9icm93c2VyL2lkbGUtZm9yY2VkL3tpZH0nLCBwcm94eSwgQnJvd3NlckNvbm5lY3Rpb25HYXRld2F5Ll9vbklkbGVGb3JjZWQpO1xuICAgICAgICB0aGlzLl9kaXNwYXRjaCgnL2Jyb3dzZXIvc3RhdHVzL3tpZH0nLCBwcm94eSwgQnJvd3NlckNvbm5lY3Rpb25HYXRld2F5Ll9vblN0YXR1c1JlcXVlc3QpO1xuICAgICAgICB0aGlzLl9kaXNwYXRjaCgnL2Jyb3dzZXIvc3RhdHVzLWRvbmUve2lkfScsIHByb3h5LCBCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX29uU3RhdHVzUmVxdWVzdE9uVGVzdERvbmUsICdHRVQnLCB0aGlzLnByb3h5bGVzcyk7XG4gICAgICAgIHRoaXMuX2Rpc3BhdGNoKCcvYnJvd3Nlci9pbml0LXNjcmlwdC97aWR9JywgcHJveHksIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fb25Jbml0U2NyaXB0UmVxdWVzdCk7XG4gICAgICAgIHRoaXMuX2Rpc3BhdGNoKCcvYnJvd3Nlci9pbml0LXNjcmlwdC97aWR9JywgcHJveHksIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fb25Jbml0U2NyaXB0UmVzcG9uc2UsICdQT1NUJyk7XG4gICAgICAgIHRoaXMuX2Rpc3BhdGNoKCcvYnJvd3Nlci9hY3RpdmUtd2luZG93LWlkL3tpZH0nLCBwcm94eSwgQnJvd3NlckNvbm5lY3Rpb25HYXRld2F5Ll9vbkdldEFjdGl2ZVdpbmRvd0lkUmVxdWVzdCk7XG4gICAgICAgIHRoaXMuX2Rpc3BhdGNoKCcvYnJvd3Nlci9hY3RpdmUtd2luZG93LWlkL3tpZH0nLCBwcm94eSwgQnJvd3NlckNvbm5lY3Rpb25HYXRld2F5Ll9vblNldEFjdGl2ZVdpbmRvd0lkUmVxdWVzdCwgJ1BPU1QnKTtcbiAgICAgICAgdGhpcy5fZGlzcGF0Y2goJy9icm93c2VyL2Nsb3NlLXdpbmRvdy97aWR9JywgcHJveHksIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fb25DbG9zZVdpbmRvd1JlcXVlc3QsICdQT1NUJyk7XG5cblxuICAgICAgICBwcm94eS5HRVQoU0VSVklDRV9ST1VURVMuY29ubmVjdCwgKHJlcTogSW5jb21pbmdNZXNzYWdlLCByZXM6IFNlcnZlclJlc3BvbnNlKSA9PiB0aGlzLl9jb25uZWN0TmV4dFJlbW90ZUJyb3dzZXIocmVxLCByZXMpKTtcbiAgICAgICAgcHJveHkuR0VUKFNFUlZJQ0VfUk9VVEVTLmNvbm5lY3RXaXRoVHJhaWxpbmdTbGFzaCwgKHJlcTogSW5jb21pbmdNZXNzYWdlLCByZXM6IFNlcnZlclJlc3BvbnNlKSA9PiB0aGlzLl9jb25uZWN0TmV4dFJlbW90ZUJyb3dzZXIocmVxLCByZXMpKTtcblxuICAgICAgICBwcm94eS5HRVQoU0VSVklDRV9ST1VURVMuc2VydmljZVdvcmtlciwgeyBjb250ZW50OiBzZXJ2aWNlV29ya2VyU2NyaXB0LCBjb250ZW50VHlwZTogJ2FwcGxpY2F0aW9uL3gtamF2YXNjcmlwdCcgfSk7XG4gICAgICAgIHByb3h5LkdFVChTRVJWSUNFX1JPVVRFUy5hc3NldHMuaW5kZXgsIHsgY29udGVudDogaWRsZVBhZ2VTY3JpcHQsIGNvbnRlbnRUeXBlOiAnYXBwbGljYXRpb24veC1qYXZhc2NyaXB0JyB9KTtcbiAgICAgICAgcHJveHkuR0VUKFNFUlZJQ0VfUk9VVEVTLmFzc2V0cy5zdHlsZXMsIHsgY29udGVudDogaWRsZVBhZ2VTdHlsZSwgY29udGVudFR5cGU6ICd0ZXh0L2NzcycgfSk7XG4gICAgICAgIHByb3h5LkdFVChTRVJWSUNFX1JPVVRFUy5hc3NldHMubG9nbywgeyBjb250ZW50OiBpZGxlUGFnZUxvZ28sIGNvbnRlbnRUeXBlOiAnaW1hZ2Uvc3ZnK3htbCcgfSk7XG4gICAgfVxuXG4gICAgLy8gSGVscGVyc1xuICAgIHByaXZhdGUgc3RhdGljIF9lbnN1cmVDb25uZWN0aW9uUmVhZHkgKHJlczogU2VydmVyUmVzcG9uc2UsIGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghY29ubmVjdGlvbi5pc1JlYWR5KCkpIHtcbiAgICAgICAgICAgIHJlc3BvbmQ1MDAocmVzLCAnVGhlIGNvbm5lY3Rpb24gaXMgbm90IHJlYWR5IHlldC4nKTtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIF9mZXRjaFJlcXVlc3REYXRhIChyZXE6IEluY29taW5nTWVzc2FnZSwgY2FsbGJhY2s6IChkYXRhOiBzdHJpbmcpID0+IHZvaWQpOiB2b2lkIHtcbiAgICAgICAgbGV0IGRhdGEgPSAnJztcblxuICAgICAgICByZXEub24oJ2RhdGEnLCBjaHVuayA9PiB7XG4gICAgICAgICAgICBkYXRhICs9IGNodW5rO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXEub24oJ2VuZCcsICgpID0+IHtcbiAgICAgICAgICAgIGNhbGxiYWNrKGRhdGEudG9TdHJpbmcoKSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIFJvdXRlIGhhbmRsZXJzXG4gICAgcHJpdmF0ZSBzdGF0aWMgYXN5bmMgX29uQ29ubmVjdGlvbiAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIHJlczogU2VydmVyUmVzcG9uc2UsIGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmIChjb25uZWN0aW9uLmlzUmVhZHkoKSlcbiAgICAgICAgICAgIHJlc3BvbmQ1MDAocmVzLCAnVGhlIGNvbm5lY3Rpb24gaXMgYWxyZWFkeSBlc3RhYmxpc2hlZC4nKTtcblxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHVzZXJBZ2VudCA9IHJlcS5oZWFkZXJzWyd1c2VyLWFnZW50J10gYXMgc3RyaW5nO1xuXG4gICAgICAgICAgICBhd2FpdCBjb25uZWN0aW9uLmVzdGFibGlzaCh1c2VyQWdlbnQpO1xuICAgICAgICAgICAgcmVkaXJlY3QocmVzLCBjb25uZWN0aW9uLmlkbGVVcmwpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgX29uSGVhcnRiZWF0IChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSwgY29ubmVjdGlvbjogQnJvd3NlckNvbm5lY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgaWYgKEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fZW5zdXJlQ29ubmVjdGlvblJlYWR5KHJlcywgY29ubmVjdGlvbikpIHtcbiAgICAgICAgICAgIGNvbnN0IHN0YXR1cyA9IGNvbm5lY3Rpb24uaGVhcnRiZWF0KCk7XG5cbiAgICAgICAgICAgIHJlc3BvbmRXaXRoSlNPTihyZXMsIHN0YXR1cyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBfb25JZGxlIChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSwgY29ubmVjdGlvbjogQnJvd3NlckNvbm5lY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgaWYgKEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fZW5zdXJlQ29ubmVjdGlvblJlYWR5KHJlcywgY29ubmVjdGlvbikpXG4gICAgICAgICAgICByZXMuZW5kKGNvbm5lY3Rpb24ucmVuZGVySWRsZVBhZ2UoKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgYXN5bmMgX29uSWRsZUZvcmNlZCAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIHJlczogU2VydmVyUmVzcG9uc2UsIGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmIChCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX2Vuc3VyZUNvbm5lY3Rpb25SZWFkeShyZXMsIGNvbm5lY3Rpb24pKSB7XG4gICAgICAgICAgICBjb25zdCBzdGF0dXMgPSBhd2FpdCBjb25uZWN0aW9uLmdldFN0YXR1cyh0cnVlKTtcblxuICAgICAgICAgICAgcmVkaXJlY3QocmVzLCBzdGF0dXMudXJsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGFzeW5jIF9vblN0YXR1c1JlcXVlc3QgKHJlcTogSW5jb21pbmdNZXNzYWdlLCByZXM6IFNlcnZlclJlc3BvbnNlLCBjb25uZWN0aW9uOiBCcm93c2VyQ29ubmVjdGlvbik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICByZXR1cm4gQnJvd3NlckNvbm5lY3Rpb25HYXRld2F5Ll9vblN0YXR1c1JlcXVlc3RDb3JlKHJlcSwgcmVzLCBjb25uZWN0aW9uLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgYXN5bmMgX29uU3RhdHVzUmVxdWVzdE9uVGVzdERvbmUgKHJlcTogSW5jb21pbmdNZXNzYWdlLCByZXM6IFNlcnZlclJlc3BvbnNlLCBjb25uZWN0aW9uOiBCcm93c2VyQ29ubmVjdGlvbik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICByZXR1cm4gQnJvd3NlckNvbm5lY3Rpb25HYXRld2F5Ll9vblN0YXR1c1JlcXVlc3RDb3JlKHJlcSwgcmVzLCBjb25uZWN0aW9uLCB0cnVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBhc3luYyBfb25TdGF0dXNSZXF1ZXN0Q29yZSAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIHJlczogU2VydmVyUmVzcG9uc2UsIGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uLCBpc1Rlc3REb25lOiBib29sZWFuKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmIChCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX2Vuc3VyZUNvbm5lY3Rpb25SZWFkeShyZXMsIGNvbm5lY3Rpb24pKSB7XG4gICAgICAgICAgICBjb25zdCBzdGF0dXMgPSBhd2FpdCBjb25uZWN0aW9uLmdldFN0YXR1cyhpc1Rlc3REb25lKTtcblxuICAgICAgICAgICAgcmVzcG9uZFdpdGhKU09OKHJlcywgc3RhdHVzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIF9vbkluaXRTY3JpcHRSZXF1ZXN0IChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSwgY29ubmVjdGlvbjogQnJvd3NlckNvbm5lY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgaWYgKEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fZW5zdXJlQ29ubmVjdGlvblJlYWR5KHJlcywgY29ubmVjdGlvbikpIHtcbiAgICAgICAgICAgIGNvbnN0IHNjcmlwdCA9IGNvbm5lY3Rpb24uZ2V0SW5pdFNjcmlwdCgpO1xuXG4gICAgICAgICAgICByZXNwb25kV2l0aEpTT04ocmVzLCBzY3JpcHQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgX29uSW5pdFNjcmlwdFJlc3BvbnNlIChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSwgY29ubmVjdGlvbjogQnJvd3NlckNvbm5lY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgaWYgKEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fZW5zdXJlQ29ubmVjdGlvblJlYWR5KHJlcywgY29ubmVjdGlvbikpIHtcbiAgICAgICAgICAgIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fZmV0Y2hSZXF1ZXN0RGF0YShyZXEsIGRhdGEgPT4ge1xuICAgICAgICAgICAgICAgIGNvbm5lY3Rpb24uaGFuZGxlSW5pdFNjcmlwdFJlc3VsdChkYXRhKTtcblxuICAgICAgICAgICAgICAgIHJlcy5lbmQoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgX29uR2V0QWN0aXZlV2luZG93SWRSZXF1ZXN0IChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSwgY29ubmVjdGlvbjogQnJvd3NlckNvbm5lY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgaWYgKEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fZW5zdXJlQ29ubmVjdGlvblJlYWR5KHJlcywgY29ubmVjdGlvbikpIHtcbiAgICAgICAgICAgIHJlc3BvbmRXaXRoSlNPTihyZXMsIHtcbiAgICAgICAgICAgICAgICBhY3RpdmVXaW5kb3dJZDogY29ubmVjdGlvbi5hY3RpdmVXaW5kb3dJZCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgX29uU2V0QWN0aXZlV2luZG93SWRSZXF1ZXN0IChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSwgY29ubmVjdGlvbjogQnJvd3NlckNvbm5lY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgaWYgKEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fZW5zdXJlQ29ubmVjdGlvblJlYWR5KHJlcywgY29ubmVjdGlvbikpIHtcbiAgICAgICAgICAgIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fZmV0Y2hSZXF1ZXN0RGF0YShyZXEsIGRhdGEgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhcnNlZERhdGEgPSBKU09OLnBhcnNlKGRhdGEpO1xuXG4gICAgICAgICAgICAgICAgY29ubmVjdGlvbi5hY3RpdmVXaW5kb3dJZCA9IHBhcnNlZERhdGEud2luZG93SWQ7XG5cbiAgICAgICAgICAgICAgICByZXNwb25kV2l0aEpTT04ocmVzKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgX29uQ2xvc2VXaW5kb3dSZXF1ZXN0IChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSwgY29ubmVjdGlvbjogQnJvd3NlckNvbm5lY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgaWYgKEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fZW5zdXJlQ29ubmVjdGlvblJlYWR5KHJlcywgY29ubmVjdGlvbikpIHtcbiAgICAgICAgICAgIGNvbm5lY3Rpb24ucHJvdmlkZXIuY2xvc2VCcm93c2VyQ2hpbGRXaW5kb3coY29ubmVjdGlvbi5pZClcbiAgICAgICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbmRXaXRoSlNPTihyZXMpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBfY29ubmVjdE5leHRSZW1vdGVCcm93c2VyIChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBwcmV2ZW50Q2FjaGluZyhyZXMpO1xuXG4gICAgICAgIGNvbnN0IHJlbW90ZUNvbm5lY3Rpb24gPSBhd2FpdCB0aGlzLl9yZW1vdGVzUXVldWUuc2hpZnQoKTtcblxuICAgICAgICBpZiAocmVtb3RlQ29ubmVjdGlvbilcbiAgICAgICAgICAgIHJlZGlyZWN0KHJlcywgcmVtb3RlQ29ubmVjdGlvbi51cmwpO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICByZXNwb25kNTAwKHJlcywgJ1RoZXJlIGFyZSBubyBhdmFpbGFibGUgX2Nvbm5lY3Rpb25zIHRvIGVzdGFibGlzaC4nKTtcbiAgICB9XG5cbiAgICAvLyBBUElcbiAgICBwdWJsaWMgc3RhcnRTZXJ2aW5nQ29ubmVjdGlvbiAoY29ubmVjdGlvbjogQnJvd3NlckNvbm5lY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY29ubmVjdGlvbnNbY29ubmVjdGlvbi5pZF0gPSBjb25uZWN0aW9uO1xuXG4gICAgICAgIGlmIChjb25uZWN0aW9uLmJyb3dzZXJJbmZvLnByb3ZpZGVyTmFtZSA9PT0gJ3JlbW90ZScpXG4gICAgICAgICAgICB0aGlzLl9yZW1vdGVzUXVldWUuYWRkKGNvbm5lY3Rpb24pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdG9wU2VydmluZ0Nvbm5lY3Rpb24gKGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uKTogdm9pZCB7XG4gICAgICAgIGRlbGV0ZSB0aGlzLl9jb25uZWN0aW9uc1tjb25uZWN0aW9uLmlkXTtcblxuICAgICAgICBpZiAoY29ubmVjdGlvbi5icm93c2VySW5mby5wcm92aWRlck5hbWUgPT09ICdyZW1vdGUnKVxuICAgICAgICAgICAgdGhpcy5fcmVtb3Rlc1F1ZXVlLnJlbW92ZShjb25uZWN0aW9uKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgY2xvc2UgKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBmb3IgKGNvbnN0IGlkIGluIHRoaXMuX2Nvbm5lY3Rpb25zKVxuICAgICAgICAgICAgYXdhaXQgdGhpcy5fY29ubmVjdGlvbnNbaWRdLmNsb3NlKCk7XG4gICAgfVxufVxuXG4iXX0=
173
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2F0ZXdheS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9icm93c2VyL2Nvbm5lY3Rpb24vZ2F0ZXdheS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG9FQUEyQztBQUMzQywyQ0FNMEI7QUFFMUIsb0VBQTJDO0FBQzNDLDZEQUErRDtBQUkvRCxzRUFBOEM7QUFHOUMsTUFBcUIsd0JBQXdCO0lBUXpDLFlBQW9CLEtBQVksRUFBRSxPQUF3RDtRQVBsRixpQkFBWSxHQUFrQyxFQUFFLENBQUM7UUFRckQsSUFBSSxDQUFDLGFBQWEsR0FBSyxJQUFJLHVCQUFZLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsVUFBVSxHQUFRLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxjQUFjLEdBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQztRQUM5QyxJQUFJLENBQUMsU0FBUyxHQUFTLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDekMsSUFBSSxDQUFDLEtBQUssR0FBYSxLQUFLLENBQUM7UUFFN0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRU8sU0FBUyxDQUFFLEdBQVcsRUFBRSxLQUFZLEVBQUUsT0FBaUIsRUFBRSxNQUFNLEdBQUcsS0FBSyxFQUFFLHVCQUFpQztRQUM5Ryx5RUFBeUU7UUFDekUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQW9CLEVBQUUsR0FBbUIsRUFBRSxVQUFVLEVBQUUsTUFBMEIsRUFBRSxFQUFFO1lBQ3JHLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBRWhELElBQUEscUJBQWMsRUFBQyxHQUFHLENBQUMsQ0FBQztZQUVwQixJQUFJLHVCQUF1QjtnQkFDdkIsSUFBQSx1Q0FBaUIsRUFBQyxHQUFHLENBQUMs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QUFNLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFMUQsSUFBSSxnQkFBZ0I7WUFDaEIsSUFBQSxlQUFRLEVBQUMsR0FBRyxFQUFFLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDOztZQUVwQyxJQUFBLGlCQUFVLEVBQUMsR0FBRyxFQUFFLG1EQUFtRCxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELE1BQU07SUFDQyxzQkFBc0IsQ0FBRSxVQUE2QjtRQUN4RCxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7UUFFOUMsSUFBSSxVQUFVLENBQUMsV0FBVyxDQUFDLFlBQVksS0FBSyxRQUFRO1lBQ2hELElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFTSxxQkFBcUIsQ0FBRSxVQUE2QjtRQUN2RCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRXhDLElBQUksVUFBVSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEtBQUssUUFBUTtZQUNoRCxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU0sS0FBSyxDQUFDLEtBQUs7UUFDZCxLQUFLLE1BQU0sRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZO1lBQzlCLE1BQU0sSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0NBQ0o7QUF0TkQsMkNBc05DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGxvYWRBc3NldHMgZnJvbSAnLi4vLi4vbG9hZC1hc3NldHMnO1xuaW1wb3J0IHtcbiAgICByZXNwb25kNDA0LFxuICAgIHJlc3BvbmQ1MDAsXG4gICAgcmVzcG9uZFdpdGhKU09OLFxuICAgIHJlZGlyZWN0LFxuICAgIHByZXZlbnRDYWNoaW5nLFxufSBmcm9tICcuLi8uLi91dGlscy9odHRwJztcblxuaW1wb3J0IFJlbW90ZXNRdWV1ZSBmcm9tICcuL3JlbW90ZXMtcXVldWUnO1xuaW1wb3J0IHsgUHJveHksIGFjY2VwdENyb3NzT3JpZ2luIH0gZnJvbSAndGVzdGNhZmUtaGFtbWVyaGVhZCc7XG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbi9pbnRlcmZhY2VzJztcbmltcG9ydCBCcm93c2VyQ29ubmVjdGlvbiBmcm9tICcuL2luZGV4JztcbmltcG9ydCB7IEluY29taW5nTWVzc2FnZSwgU2VydmVyUmVzcG9uc2UgfSBmcm9tICdodHRwJztcbmltcG9ydCBTRVJWSUNFX1JPVVRFUyBmcm9tICcuL3NlcnZpY2Utcm91dGVzJztcblxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkge1xuICAgIHByaXZhdGUgX2Nvbm5lY3Rpb25zOiBEaWN0aW9uYXJ5PEJyb3dzZXJDb25uZWN0aW9uPiA9IHt9O1xuICAgIHByaXZhdGUgX3JlbW90ZXNRdWV1ZTogUmVtb3Rlc1F1ZXVlO1xuICAgIHB1YmxpYyByZWFkb25seSBjb25uZWN0VXJsOiBzdHJpbmc7XG4gICAgcHVibGljIHJldHJ5VGVzdFBhZ2VzOiBib29sZWFuO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJveHlsZXNzOiBib29sZWFuO1xuICAgIHB1YmxpYyByZWFkb25seSBwcm94eTogUHJveHk7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IgKHByb3h5OiBQcm94eSwgb3B0aW9uczogeyByZXRyeVRlc3RQYWdlczogYm9vbGVhbjsgcHJveHlsZXNzOiBib29sZWFuIH0pIHtcbiAgICAgICAgdGhpcy5fcmVtb3Rlc1F1ZXVlICAgPSBuZXcgUmVtb3Rlc1F1ZXVlKCk7XG4gICAgICAgIHRoaXMuY29ubmVjdFVybCAgICAgID0gcHJveHkucmVzb2x2ZVJlbGF0aXZlU2VydmljZVVybCgnL2Jyb3dzZXIvY29ubmVjdCcpO1xuICAgICAgICB0aGlzLnJldHJ5VGVzdFBhZ2VzICA9IG9wdGlvbnMucmV0cnlUZXN0UGFnZXM7XG4gICAgICAgIHRoaXMucHJveHlsZXNzICAgICAgID0gb3B0aW9ucy5wcm94eWxlc3M7XG4gICAgICAgIHRoaXMucHJveHkgICAgICAgICAgID0gcHJveHk7XG5cbiAgICAgICAgdGhpcy5fcmVnaXN0ZXJSb3V0ZXMocHJveHkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2Rpc3BhdGNoICh1cmw6IHN0cmluZywgcHJveHk6IFByb3h5LCBoYW5kbGVyOiBGdW5jdGlvbiwgbWV0aG9kID0gJ0dFVCcsIHNob3VsZEFjY2VwdENyb3NzT3JpZ2luPzogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICAvLyBAdHMtaWdub3JlIE5lZWQgdG8gaW1wcm92ZSB0eXBpbmdzIG9mIHRoZSAndGVzdGNhZmUtaGFtbWVyaGVhZCcgbW9kdWxlXG4gICAgICAgIHByb3h5W21ldGhvZF0odXJsLCAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIHJlczogU2VydmVyUmVzcG9uc2UsIHNlcnZlckluZm8sIHBhcmFtczogRGljdGlvbmFyeTxzdHJpbmc+KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb25uZWN0aW9uID0gdGhpcy5fY29ubmVjdGlvbnNbcGFyYW1zLmlkXTtcblxuICAgICAgICAgICAgcHJldmVudENhY2hpbmcocmVzKTtcblxuICAgICAgICAgICAgaWYgKHNob3VsZEFjY2VwdENyb3NzT3JpZ2luKVxuICAgICAgICAgICAgICAgIGFjY2VwdENyb3NzT3JpZ2luKHJlcyk7XG5cbiAgICAgICAgICAgIGlmIChjb25uZWN0aW9uKVxuICAgICAgICAgICAgICAgIGhhbmRsZXIocmVxLCByZXMsIGNvbm5lY3Rpb24pO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIHJlc3BvbmQ0MDQocmVzKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfcmVnaXN0ZXJSb3V0ZXMgKHByb3h5OiBQcm94eSk6IHZvaWQge1xuICAgICAgICBjb25zdCB7XG4gICAgICAgICAgICBpZGxlUGFnZVNjcmlwdCxcbiAgICAgICAgICAgIGlkbGVQYWdlU3R5bGUsXG4gICAgICAgICAgICBpZGxlUGFnZUxvZ28sXG4gICAgICAgICAgICBzZXJ2aWNlV29ya2VyU2NyaXB0LFxuICAgICAgICB9ID0gbG9hZEFzc2V0cygpO1xuXG4gICAgICAgIHRoaXMuX2Rpc3BhdGNoKCcvYnJvd3Nlci9jb25uZWN0L3tpZH0nLCBwcm94eSwgQnJvd3NlckNvbm5lY3Rpb25HYXRld2F5Ll9vbkNvbm5lY3Rpb24pO1xuICAgICAgICB0aGlzLl9kaXNwYXRjaCgnL2Jyb3dzZXIvaGVhcnRiZWF0L3tpZH0nLCBwcm94eSwgQnJvd3NlckNvbm5lY3Rpb25HYXRld2F5Ll9vbkhlYXJ0YmVhdCwgJ0dFVCcsIHRoaXMucHJveHlsZXNzKTtcbiAgICAgICAgdGhpcy5fZGlzcGF0Y2goJy9icm93c2VyL2lkbGUve2lkfScsIHByb3h5LCBCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX29uSWRsZSk7XG4gICAgICAgIHRoaXMuX2Rpc3BhdGNoKCcvYnJvd3Nlci9pZGxlLWZvcmNlZC97aWR9JywgcHJveHksIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fb25JZGxlRm9yY2VkKTtcbiAgICAgICAgdGhpcy5fZGlzcGF0Y2goJy9icm93c2VyL3N0YXR1cy97aWR9JywgcHJveHksIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fb25TdGF0dXNSZXF1ZXN0KTtcbiAgICAgICAgdGhpcy5fZGlzcGF0Y2goJy9icm93c2VyL3N0YXR1cy1kb25lL3tpZH0nLCBwcm94eSwgQnJvd3NlckNvbm5lY3Rpb25HYXRld2F5Ll9vblN0YXR1c1JlcXVlc3RPblRlc3REb25lLCAnR0VUJywgdGhpcy5wcm94eWxlc3MpO1xuICAgICAgICB0aGlzLl9kaXNwYXRjaCgnL2Jyb3dzZXIvaW5pdC1zY3JpcHQve2lkfScsIHByb3h5LCBCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX29uSW5pdFNjcmlwdFJlcXVlc3QpO1xuICAgICAgICB0aGlzLl9kaXNwYXRjaCgnL2Jyb3dzZXIvaW5pdC1zY3JpcHQve2lkfScsIHByb3h5LCBCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX29uSW5pdFNjcmlwdFJlc3BvbnNlLCAnUE9TVCcpO1xuICAgICAgICB0aGlzLl9kaXNwYXRjaCgnL2Jyb3dzZXIvYWN0aXZlLXdpbmRvdy1pZC97aWR9JywgcHJveHksIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fb25HZXRBY3RpdmVXaW5kb3dJZFJlcXVlc3QpO1xuICAgICAgICB0aGlzLl9kaXNwYXRjaCgnL2Jyb3dzZXIvYWN0aXZlLXdpbmRvdy1pZC97aWR9JywgcHJveHksIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fb25TZXRBY3RpdmVXaW5kb3dJZFJlcXVlc3QsICdQT1NUJyk7XG4gICAgICAgIHRoaXMuX2Rpc3BhdGNoKCcvYnJvd3Nlci9jbG9zZS13aW5kb3cve2lkfScsIHByb3h5LCBCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX29uQ2xvc2VXaW5kb3dSZXF1ZXN0LCAnUE9TVCcpO1xuXG5cbiAgICAgICAgcHJveHkuR0VUKFNFUlZJQ0VfUk9VVEVTLmNvbm5lY3QsIChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSkgPT4gdGhpcy5fY29ubmVjdE5leHRSZW1vdGVCcm93c2VyKHJlcSwgcmVzKSk7XG4gICAgICAgIHByb3h5LkdFVChTRVJWSUNFX1JPVVRFUy5jb25uZWN0V2l0aFRyYWlsaW5nU2xhc2gsIChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSkgPT4gdGhpcy5fY29ubmVjdE5leHRSZW1vdGVCcm93c2VyKHJlcSwgcmVzKSk7XG5cbiAgICAgICAgcHJveHkuR0VUKFNFUlZJQ0VfUk9VVEVTLnNlcnZpY2VXb3JrZXIsIHsgY29udGVudDogc2VydmljZVdvcmtlclNjcmlwdCwgY29udGVudFR5cGU6ICdhcHBsaWNhdGlvbi94LWphdmFzY3JpcHQnIH0pO1xuICAgICAgICBwcm94eS5HRVQoU0VSVklDRV9ST1VURVMuYXNzZXRzLmluZGV4LCB7IGNvbnRlbnQ6IGlkbGVQYWdlU2NyaXB0LCBjb250ZW50VHlwZTogJ2FwcGxpY2F0aW9uL3gtamF2YXNjcmlwdCcgfSk7XG4gICAgICAgIHByb3h5LkdFVChTRVJWSUNFX1JPVVRFUy5hc3NldHMuc3R5bGVzLCB7IGNvbnRlbnQ6IGlkbGVQYWdlU3R5bGUsIGNvbnRlbnRUeXBlOiAndGV4dC9jc3MnIH0pO1xuICAgICAgICBwcm94eS5HRVQoU0VSVklDRV9ST1VURVMuYXNzZXRzLmxvZ28sIHsgY29udGVudDogaWRsZVBhZ2VMb2dvLCBjb250ZW50VHlwZTogJ2ltYWdlL3N2Zyt4bWwnIH0pO1xuICAgIH1cblxuICAgIC8vIEhlbHBlcnNcbiAgICBwcml2YXRlIHN0YXRpYyBfZW5zdXJlQ29ubmVjdGlvblJlYWR5IChyZXM6IFNlcnZlclJlc3BvbnNlLCBjb25uZWN0aW9uOiBCcm93c2VyQ29ubmVjdGlvbik6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIWNvbm5lY3Rpb24uaXNSZWFkeSgpKSB7XG4gICAgICAgICAgICByZXNwb25kNTAwKHJlcywgJ1RoZSBjb25uZWN0aW9uIGlzIG5vdCByZWFkeSB5ZXQuJyk7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBfZmV0Y2hSZXF1ZXN0RGF0YSAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIGNhbGxiYWNrOiAoZGF0YTogc3RyaW5nKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIGxldCBkYXRhID0gJyc7XG5cbiAgICAgICAgcmVxLm9uKCdkYXRhJywgY2h1bmsgPT4ge1xuICAgICAgICAgICAgZGF0YSArPSBjaHVuaztcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmVxLm9uKCdlbmQnLCAoKSA9PiB7XG4gICAgICAgICAgICBjYWxsYmFjayhkYXRhLnRvU3RyaW5nKCkpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBSb3V0ZSBoYW5kbGVyc1xuICAgIHByaXZhdGUgc3RhdGljIGFzeW5jIF9vbkNvbm5lY3Rpb24gKHJlcTogSW5jb21pbmdNZXNzYWdlLCByZXM6IFNlcnZlclJlc3BvbnNlLCBjb25uZWN0aW9uOiBCcm93c2VyQ29ubmVjdGlvbik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBpZiAoY29ubmVjdGlvbi5pc1JlYWR5KCkpXG4gICAgICAgICAgICByZXNwb25kNTAwKHJlcywgJ1RoZSBjb25uZWN0aW9uIGlzIGFscmVhZHkgZXN0YWJsaXNoZWQuJyk7XG5cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCB1c2VyQWdlbnQgPSByZXEuaGVhZGVyc1sndXNlci1hZ2VudCddIGFzIHN0cmluZztcblxuICAgICAgICAgICAgYXdhaXQgY29ubmVjdGlvbi5lc3RhYmxpc2godXNlckFnZW50KTtcbiAgICAgICAgICAgIHJlZGlyZWN0KHJlcywgY29ubmVjdGlvbi5pZGxlVXJsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIF9vbkhlYXJ0YmVhdCAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIHJlczogU2VydmVyUmVzcG9uc2UsIGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uKTogdm9pZCB7XG4gICAgICAgIGlmIChCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX2Vuc3VyZUNvbm5lY3Rpb25SZWFkeShyZXMsIGNvbm5lY3Rpb24pKSB7XG4gICAgICAgICAgICBjb25zdCBzdGF0dXMgPSBjb25uZWN0aW9uLmhlYXJ0YmVhdCgpO1xuXG4gICAgICAgICAgICByZXNwb25kV2l0aEpTT04ocmVzLCBzdGF0dXMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgX29uSWRsZSAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIHJlczogU2VydmVyUmVzcG9uc2UsIGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uKTogdm9pZCB7XG4gICAgICAgIGlmIChCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX2Vuc3VyZUNvbm5lY3Rpb25SZWFkeShyZXMsIGNvbm5lY3Rpb24pKVxuICAgICAgICAgICAgcmVzLmVuZChjb25uZWN0aW9uLnJlbmRlcklkbGVQYWdlKCkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGFzeW5jIF9vbklkbGVGb3JjZWQgKHJlcTogSW5jb21pbmdNZXNzYWdlLCByZXM6IFNlcnZlclJlc3BvbnNlLCBjb25uZWN0aW9uOiBCcm93c2VyQ29ubmVjdGlvbik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBpZiAoQnJvd3NlckNvbm5lY3Rpb25HYXRld2F5Ll9lbnN1cmVDb25uZWN0aW9uUmVhZHkocmVzLCBjb25uZWN0aW9uKSkge1xuICAgICAgICAgICAgY29uc3Qgc3RhdHVzID0gYXdhaXQgY29ubmVjdGlvbi5nZXRTdGF0dXModHJ1ZSk7XG5cbiAgICAgICAgICAgIHJlZGlyZWN0KHJlcywgc3RhdHVzLnVybCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBhc3luYyBfb25TdGF0dXNSZXF1ZXN0IChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSwgY29ubmVjdGlvbjogQnJvd3NlckNvbm5lY3Rpb24pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fb25TdGF0dXNSZXF1ZXN0Q29yZShyZXEsIHJlcywgY29ubmVjdGlvbiwgZmFsc2UpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGFzeW5jIF9vblN0YXR1c1JlcXVlc3RPblRlc3REb25lIChyZXE6IEluY29taW5nTWVzc2FnZSwgcmVzOiBTZXJ2ZXJSZXNwb25zZSwgY29ubmVjdGlvbjogQnJvd3NlckNvbm5lY3Rpb24pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIEJyb3dzZXJDb25uZWN0aW9uR2F0ZXdheS5fb25TdGF0dXNSZXF1ZXN0Q29yZShyZXEsIHJlcywgY29ubmVjdGlvbiwgdHJ1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgYXN5bmMgX29uU3RhdHVzUmVxdWVzdENvcmUgKHJlcTogSW5jb21pbmdNZXNzYWdlLCByZXM6IFNlcnZlclJlc3BvbnNlLCBjb25uZWN0aW9uOiBCcm93c2VyQ29ubmVjdGlvbiwgaXNUZXN0RG9uZTogYm9vbGVhbik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBpZiAoQnJvd3NlckNvbm5lY3Rpb25HYXRld2F5Ll9lbnN1cmVDb25uZWN0aW9uUmVhZHkocmVzLCBjb25uZWN0aW9uKSkge1xuICAgICAgICAgICAgY29uc3Qgc3RhdHVzID0gYXdhaXQgY29ubmVjdGlvbi5nZXRTdGF0dXMoaXNUZXN0RG9uZSk7XG5cbiAgICAgICAgICAgIHJlc3BvbmRXaXRoSlNPTihyZXMsIHN0YXR1cyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBfb25Jbml0U2NyaXB0UmVxdWVzdCAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIHJlczogU2VydmVyUmVzcG9uc2UsIGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uKTogdm9pZCB7XG4gICAgICAgIGlmIChCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX2Vuc3VyZUNvbm5lY3Rpb25SZWFkeShyZXMsIGNvbm5lY3Rpb24pKSB7XG4gICAgICAgICAgICBjb25zdCBzY3JpcHQgPSBjb25uZWN0aW9uLmdldEluaXRTY3JpcHQoKTtcblxuICAgICAgICAgICAgcmVzcG9uZFdpdGhKU09OKHJlcywgc2NyaXB0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIF9vbkluaXRTY3JpcHRSZXNwb25zZSAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIHJlczogU2VydmVyUmVzcG9uc2UsIGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uKTogdm9pZCB7XG4gICAgICAgIGlmIChCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX2Vuc3VyZUNvbm5lY3Rpb25SZWFkeShyZXMsIGNvbm5lY3Rpb24pKSB7XG4gICAgICAgICAgICBCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX2ZldGNoUmVxdWVzdERhdGEocmVxLCBkYXRhID0+IHtcbiAgICAgICAgICAgICAgICBjb25uZWN0aW9uLmhhbmRsZUluaXRTY3JpcHRSZXN1bHQoZGF0YSk7XG5cbiAgICAgICAgICAgICAgICByZXMuZW5kKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIF9vbkdldEFjdGl2ZVdpbmRvd0lkUmVxdWVzdCAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIHJlczogU2VydmVyUmVzcG9uc2UsIGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uKTogdm9pZCB7XG4gICAgICAgIGlmIChCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX2Vuc3VyZUNvbm5lY3Rpb25SZWFkeShyZXMsIGNvbm5lY3Rpb24pKSB7XG4gICAgICAgICAgICByZXNwb25kV2l0aEpTT04ocmVzLCB7XG4gICAgICAgICAgICAgICAgYWN0aXZlV2luZG93SWQ6IGNvbm5lY3Rpb24uYWN0aXZlV2luZG93SWQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIF9vblNldEFjdGl2ZVdpbmRvd0lkUmVxdWVzdCAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIHJlczogU2VydmVyUmVzcG9uc2UsIGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uKTogdm9pZCB7XG4gICAgICAgIGlmIChCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX2Vuc3VyZUNvbm5lY3Rpb25SZWFkeShyZXMsIGNvbm5lY3Rpb24pKSB7XG4gICAgICAgICAgICBCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX2ZldGNoUmVxdWVzdERhdGEocmVxLCBkYXRhID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBwYXJzZWREYXRhID0gSlNPTi5wYXJzZShkYXRhKTtcblxuICAgICAgICAgICAgICAgIGNvbm5lY3Rpb24uYWN0aXZlV2luZG93SWQgPSBwYXJzZWREYXRhLndpbmRvd0lkO1xuXG4gICAgICAgICAgICAgICAgcmVzcG9uZFdpdGhKU09OKHJlcyk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIF9vbkNsb3NlV2luZG93UmVxdWVzdCAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIHJlczogU2VydmVyUmVzcG9uc2UsIGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uKTogdm9pZCB7XG4gICAgICAgIGlmIChCcm93c2VyQ29ubmVjdGlvbkdhdGV3YXkuX2Vuc3VyZUNvbm5lY3Rpb25SZWFkeShyZXMsIGNvbm5lY3Rpb24pKSB7XG4gICAgICAgICAgICBjb25uZWN0aW9uLnByb3ZpZGVyLmNsb3NlQnJvd3NlckNoaWxkV2luZG93KGNvbm5lY3Rpb24uaWQpXG4gICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXNwb25kV2l0aEpTT04ocmVzKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgX2Nvbm5lY3ROZXh0UmVtb3RlQnJvd3NlciAocmVxOiBJbmNvbWluZ01lc3NhZ2UsIHJlczogU2VydmVyUmVzcG9uc2UpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcHJldmVudENhY2hpbmcocmVzKTtcblxuICAgICAgICBjb25zdCByZW1vdGVDb25uZWN0aW9uID0gYXdhaXQgdGhpcy5fcmVtb3Rlc1F1ZXVlLnNoaWZ0KCk7XG5cbiAgICAgICAgaWYgKHJlbW90ZUNvbm5lY3Rpb24pXG4gICAgICAgICAgICByZWRpcmVjdChyZXMsIHJlbW90ZUNvbm5lY3Rpb24udXJsKTtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgcmVzcG9uZDUwMChyZXMsICdUaGVyZSBhcmUgbm8gYXZhaWxhYmxlIF9jb25uZWN0aW9ucyB0byBlc3RhYmxpc2guJyk7XG4gICAgfVxuXG4gICAgLy8gQVBJXG4gICAgcHVibGljIHN0YXJ0U2VydmluZ0Nvbm5lY3Rpb24gKGNvbm5lY3Rpb246IEJyb3dzZXJDb25uZWN0aW9uKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2Nvbm5lY3Rpb25zW2Nvbm5lY3Rpb24uaWRdID0gY29ubmVjdGlvbjtcblxuICAgICAgICBpZiAoY29ubmVjdGlvbi5icm93c2VySW5mby5wcm92aWRlck5hbWUgPT09ICdyZW1vdGUnKVxuICAgICAgICAgICAgdGhpcy5fcmVtb3Rlc1F1ZXVlLmFkZChjb25uZWN0aW9uKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RvcFNlcnZpbmdDb25uZWN0aW9uIChjb25uZWN0aW9uOiBCcm93c2VyQ29ubmVjdGlvbik6IHZvaWQge1xuICAgICAgICBkZWxldGUgdGhpcy5fY29ubmVjdGlvbnNbY29ubmVjdGlvbi5pZF07XG5cbiAgICAgICAgaWYgKGNvbm5lY3Rpb24uYnJvd3NlckluZm8ucHJvdmlkZXJOYW1lID09PSAncmVtb3RlJylcbiAgICAgICAgICAgIHRoaXMuX3JlbW90ZXNRdWV1ZS5yZW1vdmUoY29ubmVjdGlvbik7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGNsb3NlICgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgZm9yIChjb25zdCBpZCBpbiB0aGlzLl9jb25uZWN0aW9ucylcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuX2Nvbm5lY3Rpb25zW2lkXS5jbG9zZSgpO1xuICAgIH1cbn1cblxuIl19
@@ -13,23 +13,23 @@ const templates_1 = __importDefault(require("../../errors/runtime/templates"));
13
13
  const CONCURRENCY_FACTOR_UPPERBOUND = 3;
14
14
  function getUsedTimeoutMsg(browserInitTimeout) {
15
15
  if (browserInitTimeout) {
16
- const browserInitTimeoutStr = humanize_duration_1.default(browserInitTimeout);
16
+ const browserInitTimeoutStr = (0, humanize_duration_1.default)(browserInitTimeout);
17
17
  return `${browserInitTimeoutStr} for all browsers`;
18
18
  }
19
- const localInitTimeoutStr = humanize_duration_1.default(browser_connection_timeouts_1.LOCAL_BROWSER_INIT_TIMEOUT);
20
- const remoteInitTimeoutStr = humanize_duration_1.default(browser_connection_timeouts_1.REMOTE_BROWSER_INIT_TIMEOUT);
19
+ const localInitTimeoutStr = (0, humanize_duration_1.default)(browser_connection_timeouts_1.LOCAL_BROWSER_INIT_TIMEOUT);
20
+ const remoteInitTimeoutStr = (0, humanize_duration_1.default)(browser_connection_timeouts_1.REMOTE_BROWSER_INIT_TIMEOUT);
21
21
  return `${localInitTimeoutStr} for local browsers and ${remoteInitTimeoutStr} for remote browsers`;
22
22
  }
23
23
  function getHints(connections, opts) {
24
- const warningsFromConnections = lodash_1.uniq(lodash_1.flattenDeep(connections.map(bc => bc.warningLog.messages)));
24
+ const warningsFromConnections = (0, lodash_1.uniq)((0, lodash_1.flattenDeep)(connections.map(bc => bc.warningLog.messages)));
25
25
  const warningsFromBootstrapper = opts.warningLog.messages;
26
26
  const hints = [...warningsFromConnections, ...warningsFromBootstrapper];
27
27
  if (opts.concurrency > CONCURRENCY_FACTOR_UPPERBOUND)
28
- hints.push(render_template_1.default(templates_1.default[error_hints_1.default.TooHighConcurrencyFactor], opts.concurrency));
29
- hints.push(render_template_1.default(templates_1.default[error_hints_1.default.UseBrowserInitOption], getUsedTimeoutMsg(opts.browserInitTimeout)));
30
- hints.push(render_template_1.default(templates_1.default[error_hints_1.default.RestErrorCauses]));
28
+ hints.push((0, render_template_1.default)(templates_1.default[error_hints_1.default.TooHighConcurrencyFactor], opts.concurrency));
29
+ hints.push((0, render_template_1.default)(templates_1.default[error_hints_1.default.UseBrowserInitOption], getUsedTimeoutMsg(opts.browserInitTimeout)));
30
+ hints.push((0, render_template_1.default)(templates_1.default[error_hints_1.default.RestErrorCauses]));
31
31
  return hints;
32
32
  }
33
33
  exports.default = getHints;
34
34
  module.exports = exports.default;
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWhpbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Jyb3dzZXIvY29ubmVjdGlvbi9nZXQtaGludHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxtQ0FBMkM7QUFDM0MsMEVBQWlEO0FBR2pELGdFQUF1RDtBQUN2RCx5RkFBa0g7QUFDbEgsa0ZBQXlEO0FBQ3pELCtFQUF1RDtBQUV2RCxxR0FBcUc7QUFDckcsTUFBTSw2QkFBNkIsR0FBRyxDQUFDLENBQUM7QUFFeEMsU0FBUyxpQkFBaUIsQ0FBRSxrQkFBMkI7SUFDbkQsSUFBSSxrQkFBa0IsRUFBRTtRQUNwQixNQUFNLHFCQUFxQixHQUFHLDJCQUFnQixDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFbkUsT0FBTyxHQUFHLHFCQUFxQixtQkFBbUIsQ0FBQztLQUN0RDtJQUVELE1BQU0sbUJBQW1CLEdBQUksMkJBQWdCLENBQUMsd0RBQTBCLENBQUMsQ0FBQztJQUMxRSxNQUFNLG9CQUFvQixHQUFHLDJCQUFnQixDQUFDLHlEQUEyQixDQUFDLENBQUM7SUFFM0UsT0FBTyxHQUFHLG1CQUFtQiwyQkFBMkIsb0JBQW9CLHNCQUFzQixDQUFDO0FBQ3ZHLENBQUM7QUFFRCxTQUF3QixRQUFRLENBQUUsV0FBZ0MsRUFBRSxJQUF1QjtJQUN2RixNQUFNLHVCQUF1QixHQUFJLGFBQUksQ0FBQyxvQkFBVyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsRyxNQUFNLHdCQUF3QixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDO0lBRTFELE1BQU0sS0FBSyxHQUFHLENBQUUsR0FBRyx1QkFBdUIsRUFBRSxHQUFHLHdCQUF3QixDQUFFLENBQUM7SUFFMUUsSUFBSSxJQUFJLENBQUMsV0FBVyxHQUFHLDZCQUE2QjtRQUNoRCxLQUFLLENBQUMsSUFBSSxDQUFDLHlCQUFjLENBQUMsbUJBQVMsQ0FBQyxxQkFBMEIsQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBRWpILEtBQUssQ0FBQyxJQUFJLENBQUMseUJBQWMsQ0FDckIsbUJBQVMsQ0FBQyxxQkFBMEIsQ0FBQyxvQkFBb0IsQ0FBQyxFQUMxRCxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FDN0MsQ0FBQyxDQUFDO0lBRUgsS0FBSyxDQUFDLElBQUksQ0FBQyx5QkFBYyxDQUFDLG1CQUFTLENBQUMscUJBQTBCLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWxGLE9BQU8sS0FBSyxDQUFDO0FBQ2pCLENBQUM7QUFqQkQsMkJBaUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmxhdHRlbkRlZXAsIHVuaXEgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IGh1bWFuaXplRHVyYXRpb24gZnJvbSAnaHVtYW5pemUtZHVyYXRpb24nO1xuaW1wb3J0IHsgQnJvd3NlclNldE9wdGlvbnMgfSBmcm9tICcuLi8uLi9ydW5uZXIvaW50ZXJmYWNlcyc7XG5pbXBvcnQgQnJvd3NlckNvbm5lY3Rpb24gZnJvbSAnLi8nO1xuaW1wb3J0IEJyb3dzZXJDb25uZWN0aW9uRXJyb3JIaW50IGZyb20gJy4vZXJyb3ItaGludHMnO1xuaW1wb3J0IHsgTE9DQUxfQlJPV1NFUl9JTklUX1RJTUVPVVQsIFJFTU9URV9CUk9XU0VSX0lOSVRfVElNRU9VVCB9IGZyb20gJy4uLy4uL3V0aWxzL2Jyb3dzZXItY29ubmVjdGlvbi10aW1lb3V0cyc7XG5pbXBvcnQgcmVuZGVyVGVtcGxhdGUgZnJvbSAnLi4vLi4vdXRpbHMvcmVuZGVyLXRlbXBsYXRlJztcbmltcG9ydCBURU1QTEFURVMgZnJvbSAnLi4vLi4vZXJyb3JzL3J1bnRpbWUvdGVtcGxhdGVzJztcblxuLy8gTk9URTogaGludCBhYm91dCB0b28gaGlnaCBjb25jdXJyZW5jeSBmYWN0b3Igd2lsbCBiZSBhZGRlZCB0byB0aGUgZXJyb3IgYWZ0ZXIgZXhjZWVkaW5nIHRoaXMgdmFsdWVcbmNvbnN0IENPTkNVUlJFTkNZX0ZBQ1RPUl9VUFBFUkJPVU5EID0gMztcblxuZnVuY3Rpb24gZ2V0VXNlZFRpbWVvdXRNc2cgKGJyb3dzZXJJbml0VGltZW91dD86IG51bWJlcik6IHN0cmluZyB7XG4gICAgaWYgKGJyb3dzZXJJbml0VGltZW91dCkge1xuICAgICAgICBjb25zdCBicm93c2VySW5pdFRpbWVvdXRTdHIgPSBodW1hbml6ZUR1cmF0aW9uKGJyb3dzZXJJbml0VGltZW91dCk7XG5cbiAgICAgICAgcmV0dXJuIGAke2Jyb3dzZXJJbml0VGltZW91dFN0cn0gZm9yIGFsbCBicm93c2Vyc2A7XG4gICAgfVxuXG4gICAgY29uc3QgbG9jYWxJbml0VGltZW91dFN0ciAgPSBodW1hbml6ZUR1cmF0aW9uKExPQ0FMX0JST1dTRVJfSU5JVF9USU1FT1VUKTtcbiAgICBjb25zdCByZW1vdGVJbml0VGltZW91dFN0ciA9IGh1bWFuaXplRHVyYXRpb24oUkVNT1RFX0JST1dTRVJfSU5JVF9USU1FT1VUKTtcblxuICAgIHJldHVybiBgJHtsb2NhbEluaXRUaW1lb3V0U3RyfSBmb3IgbG9jYWwgYnJvd3NlcnMgYW5kICR7cmVtb3RlSW5pdFRpbWVvdXRTdHJ9IGZvciByZW1vdGUgYnJvd3NlcnNgO1xufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRIaW50cyAoY29ubmVjdGlvbnM6IEJyb3dzZXJDb25uZWN0aW9uW10sIG9wdHM6IEJyb3dzZXJTZXRPcHRpb25zKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IHdhcm5pbmdzRnJvbUNvbm5lY3Rpb25zICA9IHVuaXEoZmxhdHRlbkRlZXAoY29ubmVjdGlvbnMubWFwKGJjID0+IGJjLndhcm5pbmdMb2cubWVzc2FnZXMpKSk7XG4gICAgY29uc3Qgd2FybmluZ3NGcm9tQm9vdHN0cmFwcGVyID0gb3B0cy53YXJuaW5nTG9nLm1lc3NhZ2VzO1xuXG4gICAgY29uc3QgaGludHMgPSBbIC4uLndhcm5pbmdzRnJvbUNvbm5lY3Rpb25zLCAuLi53YXJuaW5nc0Zyb21Cb290c3RyYXBwZXIgXTtcblxuICAgIGlmIChvcHRzLmNvbmN1cnJlbmN5ID4gQ09OQ1VSUkVOQ1lfRkFDVE9SX1VQUEVSQk9VTkQpXG4gICAgICAgIGhpbnRzLnB1c2gocmVuZGVyVGVtcGxhdGUoVEVNUExBVEVTW0Jyb3dzZXJDb25uZWN0aW9uRXJyb3JIaW50LlRvb0hpZ2hDb25jdXJyZW5jeUZhY3Rvcl0sIG9wdHMuY29uY3VycmVuY3kpKTtcblxuICAgIGhpbnRzLnB1c2gocmVuZGVyVGVtcGxhdGUoXG4gICAgICAgIFRFTVBMQVRFU1tCcm93c2VyQ29ubmVjdGlvbkVycm9ySGludC5Vc2VCcm93c2VySW5pdE9wdGlvbl0sXG4gICAgICAgIGdldFVzZWRUaW1lb3V0TXNnKG9wdHMuYnJvd3NlckluaXRUaW1lb3V0KVxuICAgICkpO1xuXG4gICAgaGludHMucHVzaChyZW5kZXJUZW1wbGF0ZShURU1QTEFURVNbQnJvd3NlckNvbm5lY3Rpb25FcnJvckhpbnQuUmVzdEVycm9yQ2F1c2VzXSkpO1xuXG4gICAgcmV0dXJuIGhpbnRzO1xufVxuIl19
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWhpbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Jyb3dzZXIvY29ubmVjdGlvbi9nZXQtaGludHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxtQ0FBMkM7QUFDM0MsMEVBQWlEO0FBR2pELGdFQUF1RDtBQUN2RCx5RkFBa0g7QUFDbEgsa0ZBQXlEO0FBQ3pELCtFQUF1RDtBQUV2RCxxR0FBcUc7QUFDckcsTUFBTSw2QkFBNkIsR0FBRyxDQUFDLENBQUM7QUFFeEMsU0FBUyxpQkFBaUIsQ0FBRSxrQkFBMkI7SUFDbkQsSUFBSSxrQkFBa0IsRUFBRTtRQUNwQixNQUFNLHFCQUFxQixHQUFHLElBQUEsMkJBQWdCLEVBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUVuRSxPQUFPLEdBQUcscUJBQXFCLG1CQUFtQixDQUFDO0tBQ3REO0lBRUQsTUFBTSxtQkFBbUIsR0FBSSxJQUFBLDJCQUFnQixFQUFDLHdEQUEwQixDQUFDLENBQUM7SUFDMUUsTUFBTSxvQkFBb0IsR0FBRyxJQUFBLDJCQUFnQixFQUFDLHlEQUEyQixDQUFDLENBQUM7SUFFM0UsT0FBTyxHQUFHLG1CQUFtQiwyQkFBMkIsb0JBQW9CLHNCQUFzQixDQUFDO0FBQ3ZHLENBQUM7QUFFRCxTQUF3QixRQUFRLENBQUUsV0FBZ0MsRUFBRSxJQUF1QjtJQUN2RixNQUFNLHVCQUF1QixHQUFJLElBQUEsYUFBSSxFQUFDLElBQUEsb0JBQVcsRUFBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEcsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQztJQUUxRCxNQUFNLEtBQUssR0FBRyxDQUFFLEdBQUcsdUJBQXVCLEVBQUUsR0FBRyx3QkFBd0IsQ0FBRSxDQUFDO0lBRTFFLElBQUksSUFBSSxDQUFDLFdBQVcsR0FBRyw2QkFBNkI7UUFDaEQsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFBLHlCQUFjLEVBQUMsbUJBQVMsQ0FBQyxxQkFBMEIsQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBRWpILEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBQSx5QkFBYyxFQUNyQixtQkFBUyxDQUFDLHFCQUEwQixDQUFDLG9CQUFvQixDQUFDLEVBQzFELGlCQUFpQixDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUM3QyxDQUFDLENBQUM7SUFFSCxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUEseUJBQWMsRUFBQyxtQkFBUyxDQUFDLHFCQUEwQixDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVsRixPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDO0FBakJELDJCQWlCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZsYXR0ZW5EZWVwLCB1bmlxIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBodW1hbml6ZUR1cmF0aW9uIGZyb20gJ2h1bWFuaXplLWR1cmF0aW9uJztcbmltcG9ydCB7IEJyb3dzZXJTZXRPcHRpb25zIH0gZnJvbSAnLi4vLi4vcnVubmVyL2ludGVyZmFjZXMnO1xuaW1wb3J0IEJyb3dzZXJDb25uZWN0aW9uIGZyb20gJy4vJztcbmltcG9ydCBCcm93c2VyQ29ubmVjdGlvbkVycm9ySGludCBmcm9tICcuL2Vycm9yLWhpbnRzJztcbmltcG9ydCB7IExPQ0FMX0JST1dTRVJfSU5JVF9USU1FT1VULCBSRU1PVEVfQlJPV1NFUl9JTklUX1RJTUVPVVQgfSBmcm9tICcuLi8uLi91dGlscy9icm93c2VyLWNvbm5lY3Rpb24tdGltZW91dHMnO1xuaW1wb3J0IHJlbmRlclRlbXBsYXRlIGZyb20gJy4uLy4uL3V0aWxzL3JlbmRlci10ZW1wbGF0ZSc7XG5pbXBvcnQgVEVNUExBVEVTIGZyb20gJy4uLy4uL2Vycm9ycy9ydW50aW1lL3RlbXBsYXRlcyc7XG5cbi8vIE5PVEU6IGhpbnQgYWJvdXQgdG9vIGhpZ2ggY29uY3VycmVuY3kgZmFjdG9yIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGVycm9yIGFmdGVyIGV4Y2VlZGluZyB0aGlzIHZhbHVlXG5jb25zdCBDT05DVVJSRU5DWV9GQUNUT1JfVVBQRVJCT1VORCA9IDM7XG5cbmZ1bmN0aW9uIGdldFVzZWRUaW1lb3V0TXNnIChicm93c2VySW5pdFRpbWVvdXQ/OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGlmIChicm93c2VySW5pdFRpbWVvdXQpIHtcbiAgICAgICAgY29uc3QgYnJvd3NlckluaXRUaW1lb3V0U3RyID0gaHVtYW5pemVEdXJhdGlvbihicm93c2VySW5pdFRpbWVvdXQpO1xuXG4gICAgICAgIHJldHVybiBgJHticm93c2VySW5pdFRpbWVvdXRTdHJ9IGZvciBhbGwgYnJvd3NlcnNgO1xuICAgIH1cblxuICAgIGNvbnN0IGxvY2FsSW5pdFRpbWVvdXRTdHIgID0gaHVtYW5pemVEdXJhdGlvbihMT0NBTF9CUk9XU0VSX0lOSVRfVElNRU9VVCk7XG4gICAgY29uc3QgcmVtb3RlSW5pdFRpbWVvdXRTdHIgPSBodW1hbml6ZUR1cmF0aW9uKFJFTU9URV9CUk9XU0VSX0lOSVRfVElNRU9VVCk7XG5cbiAgICByZXR1cm4gYCR7bG9jYWxJbml0VGltZW91dFN0cn0gZm9yIGxvY2FsIGJyb3dzZXJzIGFuZCAke3JlbW90ZUluaXRUaW1lb3V0U3RyfSBmb3IgcmVtb3RlIGJyb3dzZXJzYDtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0SGludHMgKGNvbm5lY3Rpb25zOiBCcm93c2VyQ29ubmVjdGlvbltdLCBvcHRzOiBCcm93c2VyU2V0T3B0aW9ucyk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCB3YXJuaW5nc0Zyb21Db25uZWN0aW9ucyAgPSB1bmlxKGZsYXR0ZW5EZWVwKGNvbm5lY3Rpb25zLm1hcChiYyA9PiBiYy53YXJuaW5nTG9nLm1lc3NhZ2VzKSkpO1xuICAgIGNvbnN0IHdhcm5pbmdzRnJvbUJvb3RzdHJhcHBlciA9IG9wdHMud2FybmluZ0xvZy5tZXNzYWdlcztcblxuICAgIGNvbnN0IGhpbnRzID0gWyAuLi53YXJuaW5nc0Zyb21Db25uZWN0aW9ucywgLi4ud2FybmluZ3NGcm9tQm9vdHN0cmFwcGVyIF07XG5cbiAgICBpZiAob3B0cy5jb25jdXJyZW5jeSA+IENPTkNVUlJFTkNZX0ZBQ1RPUl9VUFBFUkJPVU5EKVxuICAgICAgICBoaW50cy5wdXNoKHJlbmRlclRlbXBsYXRlKFRFTVBMQVRFU1tCcm93c2VyQ29ubmVjdGlvbkVycm9ySGludC5Ub29IaWdoQ29uY3VycmVuY3lGYWN0b3JdLCBvcHRzLmNvbmN1cnJlbmN5KSk7XG5cbiAgICBoaW50cy5wdXNoKHJlbmRlclRlbXBsYXRlKFxuICAgICAgICBURU1QTEFURVNbQnJvd3NlckNvbm5lY3Rpb25FcnJvckhpbnQuVXNlQnJvd3NlckluaXRPcHRpb25dLFxuICAgICAgICBnZXRVc2VkVGltZW91dE1zZyhvcHRzLmJyb3dzZXJJbml0VGltZW91dClcbiAgICApKTtcblxuICAgIGhpbnRzLnB1c2gocmVuZGVyVGVtcGxhdGUoVEVNUExBVEVTW0Jyb3dzZXJDb25uZWN0aW9uRXJyb3JIaW50LlJlc3RFcnJvckNhdXNlc10pKTtcblxuICAgIHJldHVybiBoaW50cztcbn1cbiJdfQ==