@angular-devkit/build-angular 15.1.0-next.2 → 15.1.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (276) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +0 -0
  3. package/builders.json +0 -0
  4. package/package.json +27 -27
  5. package/plugins/karma.d.ts +0 -0
  6. package/plugins/karma.js +1 -0
  7. package/src/babel/babel-loader.d.ts +0 -0
  8. package/src/babel/plugins/adjust-static-class-members.d.ts +0 -0
  9. package/src/babel/plugins/adjust-static-class-members.js +1 -0
  10. package/src/babel/plugins/adjust-typescript-enums.d.ts +0 -0
  11. package/src/babel/plugins/adjust-typescript-enums.js +1 -0
  12. package/src/babel/plugins/elide-angular-metadata.d.ts +0 -0
  13. package/src/babel/plugins/elide-angular-metadata.js +1 -0
  14. package/src/babel/plugins/pure-toplevel-functions.d.ts +0 -0
  15. package/src/babel/plugins/pure-toplevel-functions.js +1 -0
  16. package/src/babel/presets/application.d.ts +1 -1
  17. package/src/babel/presets/application.js +2 -1
  18. package/src/babel/webpack-loader.d.ts +1 -1
  19. package/src/babel/webpack-loader.js +1 -0
  20. package/src/babel-bazel.d.ts +0 -0
  21. package/src/builders/app-shell/index.d.ts +1 -1
  22. package/src/builders/app-shell/index.js +1 -0
  23. package/src/builders/app-shell/render-worker.d.ts +0 -0
  24. package/src/builders/app-shell/render-worker.js +5 -2
  25. package/src/builders/app-shell/schema.d.ts +0 -0
  26. package/src/builders/app-shell/schema.js +1 -0
  27. package/src/builders/app-shell/schema.json +0 -0
  28. package/src/builders/browser/index.d.ts +2 -2
  29. package/src/builders/browser/index.js +1 -0
  30. package/src/builders/browser/schema.d.ts +10 -10
  31. package/src/builders/browser/schema.js +1 -0
  32. package/src/builders/browser/schema.json +0 -0
  33. package/src/builders/browser-esbuild/angular-compilation.d.ts +1 -1
  34. package/src/builders/browser-esbuild/angular-compilation.js +4 -3
  35. package/src/builders/browser-esbuild/angular-host.d.ts +2 -2
  36. package/src/builders/browser-esbuild/angular-host.js +1 -0
  37. package/src/builders/browser-esbuild/compiler-plugin.d.ts +3 -1
  38. package/src/builders/browser-esbuild/compiler-plugin.js +25 -12
  39. package/src/builders/browser-esbuild/css-resource-plugin.d.ts +0 -0
  40. package/src/builders/browser-esbuild/css-resource-plugin.js +1 -0
  41. package/src/builders/browser-esbuild/esbuild.d.ts +0 -0
  42. package/src/builders/browser-esbuild/esbuild.js +1 -0
  43. package/src/builders/browser-esbuild/experimental-warnings.d.ts +0 -0
  44. package/src/builders/browser-esbuild/experimental-warnings.js +4 -8
  45. package/src/builders/browser-esbuild/index.d.ts +1 -1
  46. package/src/builders/browser-esbuild/index.js +18 -2
  47. package/src/builders/browser-esbuild/javascript-transformer-worker.d.ts +0 -0
  48. package/src/builders/browser-esbuild/javascript-transformer-worker.js +2 -1
  49. package/src/builders/browser-esbuild/javascript-transformer.d.ts +0 -0
  50. package/src/builders/browser-esbuild/javascript-transformer.js +3 -2
  51. package/src/builders/browser-esbuild/options.d.ts +3 -1
  52. package/src/builders/browser-esbuild/options.js +4 -1
  53. package/src/builders/browser-esbuild/profiling.d.ts +0 -0
  54. package/src/builders/browser-esbuild/profiling.js +1 -0
  55. package/src/builders/browser-esbuild/sass-plugin.d.ts +5 -3
  56. package/src/builders/browser-esbuild/sass-plugin.js +88 -74
  57. package/src/builders/browser-esbuild/schema.d.ts +10 -10
  58. package/src/builders/browser-esbuild/schema.js +1 -0
  59. package/src/builders/browser-esbuild/schema.json +0 -0
  60. package/src/builders/browser-esbuild/stylesheets.d.ts +14 -25
  61. package/src/builders/browser-esbuild/stylesheets.js +62 -41
  62. package/src/builders/browser-esbuild/watcher.d.ts +0 -0
  63. package/src/builders/browser-esbuild/watcher.js +1 -0
  64. package/src/builders/dev-server/index.d.ts +3 -3
  65. package/src/builders/dev-server/index.js +1 -0
  66. package/src/builders/dev-server/schema.d.ts +0 -0
  67. package/src/builders/dev-server/schema.js +1 -0
  68. package/src/builders/dev-server/schema.json +0 -0
  69. package/src/builders/extract-i18n/empty-loader.d.ts +0 -0
  70. package/src/builders/extract-i18n/empty-loader.js +1 -0
  71. package/src/builders/extract-i18n/index.d.ts +2 -2
  72. package/src/builders/extract-i18n/index.js +2 -1
  73. package/src/builders/extract-i18n/ivy-extract-loader.d.ts +1 -1
  74. package/src/builders/extract-i18n/ivy-extract-loader.js +2 -1
  75. package/src/builders/extract-i18n/schema.d.ts +0 -0
  76. package/src/builders/extract-i18n/schema.js +1 -0
  77. package/src/builders/extract-i18n/schema.json +0 -0
  78. package/src/builders/karma/find-tests-plugin.d.ts +0 -0
  79. package/src/builders/karma/find-tests-plugin.js +3 -2
  80. package/src/builders/karma/index.d.ts +2 -2
  81. package/src/builders/karma/index.js +7 -7
  82. package/src/builders/karma/schema.d.ts +5 -5
  83. package/src/builders/karma/schema.js +1 -0
  84. package/src/builders/karma/schema.json +0 -0
  85. package/src/builders/ng-packagr/index.d.ts +1 -1
  86. package/src/builders/ng-packagr/index.js +1 -0
  87. package/src/builders/ng-packagr/schema.d.ts +0 -0
  88. package/src/builders/ng-packagr/schema.js +1 -0
  89. package/src/builders/ng-packagr/schema.json +0 -0
  90. package/src/builders/protractor/index.d.ts +1 -1
  91. package/src/builders/protractor/index.js +4 -2
  92. package/src/builders/protractor/schema.d.ts +0 -0
  93. package/src/builders/protractor/schema.js +1 -0
  94. package/src/builders/protractor/schema.json +0 -0
  95. package/src/builders/server/index.d.ts +2 -2
  96. package/src/builders/server/index.js +1 -0
  97. package/src/builders/server/platform-server-exports-loader.d.ts +0 -0
  98. package/src/builders/server/platform-server-exports-loader.js +1 -0
  99. package/src/builders/server/schema.d.ts +4 -4
  100. package/src/builders/server/schema.js +1 -0
  101. package/src/builders/server/schema.json +0 -0
  102. package/src/index.d.ts +0 -0
  103. package/src/index.js +1 -0
  104. package/src/sass/rebasing-importer.d.ts +0 -1
  105. package/src/sass/rebasing-importer.js +3 -2
  106. package/src/sass/sass-service-legacy.d.ts +1 -1
  107. package/src/sass/sass-service-legacy.js +2 -1
  108. package/src/sass/sass-service.d.ts +1 -1
  109. package/src/sass/sass-service.js +2 -1
  110. package/src/sass/worker-legacy.d.ts +0 -0
  111. package/src/sass/worker-legacy.js +1 -0
  112. package/src/sass/worker.d.ts +0 -0
  113. package/src/sass/worker.js +1 -0
  114. package/src/transforms.d.ts +1 -1
  115. package/src/transforms.js +1 -0
  116. package/src/typings.d.ts +0 -0
  117. package/src/utils/action-executor.d.ts +0 -0
  118. package/src/utils/action-executor.js +1 -0
  119. package/src/utils/build-options.d.ts +0 -0
  120. package/src/utils/build-options.js +1 -0
  121. package/src/utils/bundle-calculator.d.ts +0 -0
  122. package/src/utils/bundle-calculator.js +1 -0
  123. package/src/utils/check-port.d.ts +0 -0
  124. package/src/utils/check-port.js +1 -0
  125. package/src/utils/color.d.ts +0 -0
  126. package/src/utils/color.js +1 -0
  127. package/src/utils/copy-assets.d.ts +0 -0
  128. package/src/utils/copy-assets.js +1 -0
  129. package/src/utils/default-progress.d.ts +0 -0
  130. package/src/utils/default-progress.js +1 -0
  131. package/src/utils/delete-output-dir.d.ts +0 -0
  132. package/src/utils/delete-output-dir.js +1 -0
  133. package/src/utils/environment-options.d.ts +0 -0
  134. package/src/utils/environment-options.js +1 -0
  135. package/src/utils/error.d.ts +0 -0
  136. package/src/utils/error.js +1 -0
  137. package/src/utils/esbuild-targets.d.ts +0 -0
  138. package/src/utils/esbuild-targets.js +1 -0
  139. package/src/utils/i18n-inlining.d.ts +0 -0
  140. package/src/utils/i18n-inlining.js +2 -1
  141. package/src/utils/i18n-options.d.ts +0 -0
  142. package/src/utils/i18n-options.js +3 -2
  143. package/src/utils/index-file/augment-index-html.d.ts +3 -3
  144. package/src/utils/index-file/augment-index-html.js +2 -1
  145. package/src/utils/index-file/html-rewriting-stream.d.ts +0 -0
  146. package/src/utils/index-file/html-rewriting-stream.js +1 -0
  147. package/src/utils/index-file/index-html-generator.d.ts +1 -1
  148. package/src/utils/index-file/index-html-generator.js +1 -0
  149. package/src/utils/index-file/inline-critical-css.d.ts +0 -0
  150. package/src/utils/index-file/inline-critical-css.js +1 -0
  151. package/src/utils/index-file/inline-fonts.d.ts +0 -0
  152. package/src/utils/index-file/inline-fonts.js +1 -0
  153. package/src/utils/index.d.ts +0 -0
  154. package/src/utils/index.js +1 -0
  155. package/src/utils/load-esm.d.ts +0 -0
  156. package/src/utils/load-esm.js +1 -0
  157. package/src/utils/load-translations.d.ts +1 -1
  158. package/src/utils/load-translations.js +2 -1
  159. package/src/utils/normalize-asset-patterns.d.ts +0 -0
  160. package/src/utils/normalize-asset-patterns.js +2 -1
  161. package/src/utils/normalize-builder-schema.d.ts +1 -1
  162. package/src/utils/normalize-builder-schema.js +1 -0
  163. package/src/utils/normalize-cache.d.ts +0 -0
  164. package/src/utils/normalize-cache.js +1 -0
  165. package/src/utils/normalize-file-replacements.d.ts +0 -0
  166. package/src/utils/normalize-file-replacements.js +1 -0
  167. package/src/utils/normalize-optimization.d.ts +1 -1
  168. package/src/utils/normalize-optimization.js +1 -0
  169. package/src/utils/normalize-polyfills.d.ts +0 -0
  170. package/src/utils/normalize-polyfills.js +1 -0
  171. package/src/utils/normalize-source-maps.d.ts +0 -0
  172. package/src/utils/normalize-source-maps.js +1 -0
  173. package/src/utils/output-paths.d.ts +0 -0
  174. package/src/utils/output-paths.js +1 -0
  175. package/src/utils/package-chunk-sort.d.ts +1 -1
  176. package/src/utils/package-chunk-sort.js +1 -0
  177. package/src/utils/package-version.d.ts +0 -0
  178. package/src/utils/package-version.js +1 -0
  179. package/src/utils/process-bundle-bootstrap.js +0 -0
  180. package/src/utils/process-bundle.d.ts +3 -1
  181. package/src/utils/process-bundle.js +2 -1
  182. package/src/utils/purge-cache.d.ts +0 -0
  183. package/src/utils/purge-cache.js +1 -0
  184. package/src/utils/read-tsconfig.d.ts +0 -0
  185. package/src/utils/read-tsconfig.js +1 -0
  186. package/src/utils/run-module-as-observable-fork.d.ts +0 -0
  187. package/src/utils/run-module-as-observable-fork.js +1 -0
  188. package/src/utils/run-module-worker.js +0 -0
  189. package/src/utils/service-worker.d.ts +0 -1
  190. package/src/utils/service-worker.js +1 -0
  191. package/src/utils/spinner.d.ts +0 -0
  192. package/src/utils/spinner.js +1 -0
  193. package/src/utils/strip-bom.d.ts +0 -0
  194. package/src/utils/strip-bom.js +1 -0
  195. package/src/utils/supported-browsers.d.ts +0 -0
  196. package/src/utils/supported-browsers.js +1 -0
  197. package/src/utils/tty.d.ts +0 -0
  198. package/src/utils/tty.js +1 -0
  199. package/src/utils/url.d.ts +0 -0
  200. package/src/utils/url.js +1 -0
  201. package/src/utils/version.d.ts +0 -0
  202. package/src/utils/version.js +3 -2
  203. package/src/utils/webpack-browser-config.d.ts +2 -2
  204. package/src/utils/webpack-browser-config.js +1 -0
  205. package/src/utils/webpack-diagnostics.d.ts +0 -0
  206. package/src/utils/webpack-diagnostics.js +1 -0
  207. package/src/webpack/configs/common.d.ts +0 -0
  208. package/src/webpack/configs/common.js +1 -0
  209. package/src/webpack/configs/dev-server.d.ts +0 -0
  210. package/src/webpack/configs/dev-server.js +1 -0
  211. package/src/webpack/configs/index.d.ts +0 -0
  212. package/src/webpack/configs/index.js +1 -0
  213. package/src/webpack/configs/styles.d.ts +0 -0
  214. package/src/webpack/configs/styles.js +4 -2
  215. package/src/webpack/plugins/any-component-style-budget-checker.d.ts +0 -0
  216. package/src/webpack/plugins/any-component-style-budget-checker.js +1 -0
  217. package/src/webpack/plugins/builder-watch-plugin.d.ts +1 -1
  218. package/src/webpack/plugins/builder-watch-plugin.js +1 -0
  219. package/src/webpack/plugins/common-js-usage-warn-plugin.d.ts +0 -0
  220. package/src/webpack/plugins/common-js-usage-warn-plugin.js +1 -0
  221. package/src/webpack/plugins/css-optimizer-plugin.d.ts +0 -0
  222. package/src/webpack/plugins/css-optimizer-plugin.js +1 -0
  223. package/src/webpack/plugins/dedupe-module-resolve-plugin.d.ts +0 -0
  224. package/src/webpack/plugins/dedupe-module-resolve-plugin.js +1 -0
  225. package/src/webpack/plugins/devtools-ignore-plugin.d.ts +0 -0
  226. package/src/webpack/plugins/devtools-ignore-plugin.js +1 -0
  227. package/src/webpack/plugins/esbuild-executor.d.ts +0 -0
  228. package/src/webpack/plugins/esbuild-executor.js +3 -2
  229. package/src/webpack/plugins/hmr/hmr-accept.d.ts +0 -0
  230. package/src/webpack/plugins/hmr/hmr-accept.js +1 -0
  231. package/src/webpack/plugins/hmr/hmr-loader.d.ts +0 -0
  232. package/src/webpack/plugins/hmr/hmr-loader.js +1 -0
  233. package/src/webpack/plugins/index-html-webpack-plugin.d.ts +0 -0
  234. package/src/webpack/plugins/index-html-webpack-plugin.js +5 -4
  235. package/src/webpack/plugins/index.d.ts +0 -0
  236. package/src/webpack/plugins/index.js +1 -0
  237. package/src/webpack/plugins/javascript-optimizer-plugin.d.ts +0 -0
  238. package/src/webpack/plugins/javascript-optimizer-plugin.js +8 -1
  239. package/src/webpack/plugins/javascript-optimizer-worker.d.ts +6 -0
  240. package/src/webpack/plugins/javascript-optimizer-worker.js +41 -17
  241. package/src/webpack/plugins/json-stats-plugin.d.ts +0 -0
  242. package/src/webpack/plugins/json-stats-plugin.js +1 -0
  243. package/src/webpack/plugins/karma/karma-context.html +0 -0
  244. package/src/webpack/plugins/karma/karma-debug.html +0 -0
  245. package/src/webpack/plugins/karma/karma.d.ts +0 -0
  246. package/src/webpack/plugins/karma/karma.js +1 -0
  247. package/src/webpack/plugins/named-chunks-plugin.d.ts +0 -0
  248. package/src/webpack/plugins/named-chunks-plugin.js +1 -0
  249. package/src/webpack/plugins/occurrences-plugin.d.ts +0 -0
  250. package/src/webpack/plugins/occurrences-plugin.js +1 -0
  251. package/src/webpack/plugins/postcss-cli-resources.d.ts +0 -0
  252. package/src/webpack/plugins/postcss-cli-resources.js +2 -1
  253. package/src/webpack/plugins/progress-plugin.d.ts +0 -0
  254. package/src/webpack/plugins/progress-plugin.js +1 -0
  255. package/src/webpack/plugins/remove-hash-plugin.d.ts +0 -0
  256. package/src/webpack/plugins/remove-hash-plugin.js +1 -0
  257. package/src/webpack/plugins/scripts-webpack-plugin.d.ts +0 -0
  258. package/src/webpack/plugins/scripts-webpack-plugin.js +1 -0
  259. package/src/webpack/plugins/service-worker-plugin.d.ts +0 -0
  260. package/src/webpack/plugins/service-worker-plugin.js +1 -0
  261. package/src/webpack/plugins/styles-webpack-plugin.d.ts +0 -0
  262. package/src/webpack/plugins/styles-webpack-plugin.js +27 -24
  263. package/src/webpack/plugins/suppress-entry-chunks-webpack-plugin.d.ts +0 -0
  264. package/src/webpack/plugins/suppress-entry-chunks-webpack-plugin.js +1 -0
  265. package/src/webpack/plugins/transfer-size-plugin.d.ts +0 -0
  266. package/src/webpack/plugins/transfer-size-plugin.js +1 -0
  267. package/src/webpack/plugins/typescript.d.ts +0 -0
  268. package/src/webpack/plugins/typescript.js +1 -0
  269. package/src/webpack/plugins/watch-files-logs-plugin.d.ts +0 -0
  270. package/src/webpack/plugins/watch-files-logs-plugin.js +1 -0
  271. package/src/webpack/utils/async-chunks.d.ts +0 -0
  272. package/src/webpack/utils/async-chunks.js +1 -0
  273. package/src/webpack/utils/helpers.d.ts +2 -2
  274. package/src/webpack/utils/helpers.js +2 -1
  275. package/src/webpack/utils/stats.d.ts +1 -1
  276. package/src/webpack/utils/stats.js +1 -0
@@ -266,7 +266,7 @@ class RelativeUrlRebasingImporter extends UrlRebasingImporter {
266
266
  try {
267
267
  stylesheetPath = (0, node_url_1.fileURLToPath)(url);
268
268
  }
269
- catch {
269
+ catch (_b) {
270
270
  // Only file protocol URLs are supported by this importer
271
271
  return null;
272
272
  }
@@ -320,7 +320,7 @@ class RelativeUrlRebasingImporter extends UrlRebasingImporter {
320
320
  try {
321
321
  entries = (0, node_fs_1.readdirSync)(directory, { withFileTypes: true });
322
322
  }
323
- catch {
323
+ catch (_c) {
324
324
  return null;
325
325
  }
326
326
  foundDefaults = [];
@@ -444,3 +444,4 @@ function sassBindWorkaround(importer) {
444
444
  return importer;
445
445
  }
446
446
  exports.sassBindWorkaround = sassBindWorkaround;
447
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmViYXNpbmctaW1wb3J0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy9zYXNzL3JlYmFzaW5nLWltcG9ydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7OztBQUdILGdFQUF1QztBQUN2QyxxQ0FBb0Q7QUFDcEQseUNBQXVFO0FBQ3ZFLHVDQUF3RDtBQVl4RDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBZSxtQkFBbUI7SUFDaEM7Ozs7T0FJRztJQUNILFlBQ1UsY0FBc0IsRUFDdEIsZ0JBQTRDO1FBRDVDLG1CQUFjLEdBQWQsY0FBYyxDQUFRO1FBQ3RCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNEI7SUFDbkQsQ0FBQztJQUlKLElBQUksQ0FBQyxZQUFpQjtRQUNwQixNQUFNLGNBQWMsR0FBRyxJQUFBLHdCQUFhLEVBQUMsWUFBWSxDQUFDLENBQUM7UUFDbkQsTUFBTSxtQkFBbUIsR0FBRyxJQUFBLG1CQUFPLEVBQUMsY0FBYyxDQUFDLENBQUM7UUFDcEQsSUFBSSxRQUFRLEdBQUcsSUFBQSxzQkFBWSxFQUFDLGNBQWMsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVyRCxpQ0FBaUM7UUFDakMsSUFBSSxlQUFlLENBQUM7UUFDcEIsS0FBSyxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDdEQsNENBQTRDO1lBQzVDLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDL0MsU0FBUzthQUNWO1lBRUQsMkRBQTJEO1lBQzNELElBQUkscUNBQXFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNyRCxTQUFTO2FBQ1Y7WUFF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LEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFN0MsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQztBQUxELGdEQUtDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7IFJhd1NvdXJjZU1hcCB9IGZyb20gJ0BhbXBwcm9qZWN0L3JlbWFwcGluZyc7XG5pbXBvcnQgTWFnaWNTdHJpbmcgZnJvbSAnbWFnaWMtc3RyaW5nJztcbmltcG9ydCB7IHJlYWRGaWxlU3luYywgcmVhZGRpclN5bmMgfSBmcm9tICdub2RlOmZzJztcbmltcG9ydCB7IGJhc2VuYW1lLCBkaXJuYW1lLCBleHRuYW1lLCBqb2luLCByZWxhdGl2ZSB9IGZyb20gJ25vZGU6cGF0aCc7XG5pbXBvcnQgeyBmaWxlVVJMVG9QYXRoLCBwYXRoVG9GaWxlVVJMIH0gZnJvbSAnbm9kZTp1cmwnO1xuaW1wb3J0IHR5cGUgeyBGaWxlSW1wb3J0ZXIsIEltcG9ydGVyLCBJbXBvcnRlclJlc3VsdCwgU3ludGF4IH0gZnJvbSAnc2Fzcyc7XG5cbi8qKlxuICogQSBwcmVwcm9jZXNzZWQgY2FjaGUgZW50cnkgZm9yIHRoZSBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgd2l0aGluIGEgcHJldmlvdXNseSBzZWFyY2hlZFxuICogZGlyZWN0b3J5IHdoZW4gcGVyZm9ybWluZyBTYXNzIGltcG9ydCByZXNvbHV0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERpcmVjdG9yeUVudHJ5IHtcbiAgZmlsZXM6IFNldDxzdHJpbmc+O1xuICBkaXJlY3RvcmllczogU2V0PHN0cmluZz47XG59XG5cbi8qKlxuICogQSBTYXNzIEltcG9ydGVyIGJhc2UgY2xhc3MgdGhhdCBwcm92aWRlcyB0aGUgbG9hZCBsb2dpYyB0byByZWJhc2UgYWxsIGB1cmwoKWAgZnVuY3Rpb25zXG4gKiB3aXRoaW4gYSBzdHlsZXNoZWV0LiBUaGUgcmViYXNpbmcgd2lsbCBlbnN1cmUgdGhhdCB0aGUgVVJMcyBpbiB0aGUgb3V0cHV0IG9mIHRoZSBTYXNzIGNvbXBpbGVyXG4gKiByZWZsZWN0IHRoZSBmaW5hbCBmaWxlc3lzdGVtIGxvY2F0aW9uIG9mIHRoZSBvdXRwdXQgQ1NTIGZpbGUuXG4gKlxuICogVGhpcyBjbGFzcyBwcm92aWRlcyB0aGUgY29yZSBvZiB0aGUgcmViYXNpbmcgZnVuY3Rpb25hbGl0eS4gVG8gZW5zdXJlIHRoYXQgZWFjaCBmaWxlIGlzIHByb2Nlc3NlZFxuICogYnkgdGhpcyBpbXBvcnRlcidzIGxvYWQgaW1wbGVtZW50YXRpb24sIHRoZSBTYXNzIGNvbXBpbGVyIHJlcXVpcmVzIHRoZSBpbXBvcnRlcidzIGNhbm9uaWNhbGl6ZVxuICogZnVuY3Rpb24gdG8gcmV0dXJuIGEgbm9uLW51bGwgdmFsdWUgd2l0aCB0aGUgcmVzb2x2ZWQgbG9jYXRpb24gb2YgdGhlIHJlcXVlc3RlZCBzdHlsZXNoZWV0LlxuICogQ29uY3JldGUgaW1wbGVtZW50YXRpb25zIG9mIHRoaXMgY2xhc3MgbXVzdCBwcm92aWRlIHRoaXMgY2Fub25pY2FsaXplIGZ1bmN0aW9uYWxpdHkgZm9yIHJlYmFzaW5nXG4gKiB0byBiZSBlZmZlY3RpdmUuXG4gKi9cbmFic3RyYWN0IGNsYXNzIFVybFJlYmFzaW5nSW1wb3J0ZXIgaW1wbGVtZW50cyBJbXBvcnRlcjwnc3luYyc+IHtcbiAgLyoqXG4gICAqIEBwYXJhbSBlbnRyeURpcmVjdG9yeSBUaGUgZGlyZWN0b3J5IG9mIHRoZSBlbnRyeSBzdHlsZXNoZWV0IHRoYXQgd2FzIHBhc3NlZCB0byB0aGUgU2FzcyBjb21waWxlci5cbiAgICogQHBhcmFtIHJlYmFzZVNvdXJjZU1hcHMgV2hlbiBwcm92aWRlZCwgcmViYXNlZCBmaWxlcyB3aWxsIGhhdmUgYW4gaW50ZXJtZWRpYXRlIHNvdXJjZW1hcCBhZGRlZCB0byB0aGUgTWFwXG4gICAqIHdoaWNoIGNhbiBiZSB1c2VkIHRvIGdlbmVyYXRlIGEgZmluYWwgc291cmNlbWFwIHRoYXQgY29udGFpbnMgb3JpZ2luYWwgc291cmNlcy5cbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZW50cnlEaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBwcml2YXRlIHJlYmFzZVNvdXJjZU1hcHM/OiBNYXA8c3RyaW5nLCBSYXdTb3VyY2VNYXA+LFxuICApIHt9XG5cbiAgYWJzdHJhY3QgY2Fub25pY2FsaXplKHVybDogc3RyaW5nLCBvcHRpb25zOiB7IGZyb21JbXBvcnQ6IGJvb2xlYW4gfSk6IFVSTCB8IG51bGw7XG5cbiAgbG9hZChjYW5vbmljYWxVcmw6IFVSTCk6IEltcG9ydGVyUmVzdWx0IHwgbnVsbCB7XG4gICAgY29uc3Qgc3R5bGVzaGVldFBhdGggPSBmaWxlVVJMVG9QYXRoKGNhbm9uaWNhbFVybCk7XG4gICAgY29uc3Qgc3R5bGVzaGVldERpcmVjdG9yeSA9IGRpcm5hbWUoc3R5bGVzaGVldFBhdGgpO1xuICAgIGxldCBjb250ZW50cyA9IHJlYWRGaWxlU3luYyhzdHlsZXNoZWV0UGF0aCwgJ3V0Zi04Jyk7XG5cbiAgICAvLyBSZWJhc2UgYW55IFVSTHMgdGhhdCBhcmUgZm91bmRcbiAgICBsZXQgdXBkYXRlZENvbnRlbnRzO1xuICAgIGZvciAoY29uc3QgeyBzdGFydCwgZW5kLCB2YWx1ZSB9IG9mIGZpbmRVcmxzKGNvbnRlbnRzKSkge1xuICAgICAgLy8gU2tpcCBpZiB2YWx1ZSBpcyBlbXB0eSBvciBhIFNhc3MgdmFyaWFibGVcbiAgICAgIGlmICh2YWx1ZS5sZW5ndGggPT09IDAgfHwgdmFsdWUuc3RhcnRzV2l0aCgnJCcpKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICAvLyBTa2lwIGlmIHJvb3QtcmVsYXRpdmUsIGFic29sdXRlIG9yIHByb3RvY29sIHJlbGF0aXZlIHVybFxuICAgICAgaWYgKC9eKCg/Olxcdys6KT9cXC9cXC98ZGF0YTp8Y2hyb21lOnwjfFxcLykvLnRlc3QodmFsdWUpKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCByZWJhc2VkUGF0aCA9IHJlbGF0aXZlKHRoaXMuZW50cnlEaXJlY3RvcnksIGpvaW4oc3R5bGVzaGVldERpcmVjdG9yeSwgdmFsdWUpKTtcblxuICAgICAgLy8gTm9ybWFsaXplIHBhdGggc2VwYXJhdG9ycyBhbmQgZXNjYXBlIGNoYXJhY3RlcnNcbiAgICAgIC8vIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy91cmwjc3ludGF4XG4gICAgICBjb25zdCByZWJhc2VkVXJsID0gJy4vJyArIHJlYmFzZWRQYXRoLnJlcGxhY2UoL1xcXFwvZywgJy8nKS5yZXBsYWNlKC9bKClcXHMnXCJdL2csICdcXFxcJCYnKTtcblxuICAgICAgdXBkYXRlZENvbnRlbnRzID8/PSBuZXcgTWFnaWNTdHJpbmcoY29udGVudHMpO1xuICAgICAgdXBkYXRlZENvbnRlbnRzLnVwZGF0ZShzdGFydCwgZW5kLCByZWJhc2VkVXJsKTtcbiAgICB9XG5cbiAgICBpZiAodXBkYXRlZENvbnRlbnRzKSB7XG4gICAgICBjb250ZW50cyA9IHVwZGF0ZWRDb250ZW50cy50b1N0cmluZygpO1xuICAgICAgaWYgKHRoaXMucmViYXNlU291cmNlTWFwcykge1xuICAgICAgICAvLyBHZW5lcmF0ZSBhbiBpbnRlcm1lZGlhdGUgc291cmNlIG1hcCBmb3IgdGhlIHJlYmFzaW5nIGNoYW5nZXNcbiAgICAgICAgY29uc3QgbWFwID0gdXBkYXRlZENvbnRlbnRzLmdlbmVyYXRlTWFwKHtcbiAgICAgICAgICBoaXJlczogdHJ1ZSxcbiAgICAgICAgICBpbmNsdWRlQ29udGVudDogdHJ1ZSxcbiAgICAgICAgICBzb3VyY2U6IGNhbm9uaWNhbFVybC5ocmVmLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5yZWJhc2VTb3VyY2VNYXBzLnNldChjYW5vbmljYWxVcmwuaHJlZiwgbWFwIGFzIFJhd1NvdXJjZU1hcCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IHN5bnRheDogU3ludGF4IHwgdW5kZWZpbmVkO1xuICAgIHN3aXRjaCAoZXh0bmFtZShzdHlsZXNoZWV0UGF0aCkudG9Mb3dlckNhc2UoKSkge1xuICAgICAgY2FzZSAnY3NzJzpcbiAgICAgICAgc3ludGF4ID0gJ2Nzcyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnc2Fzcyc6XG4gICAgICAgIHN5bnRheCA9ICdpbmRlbnRlZCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgc3ludGF4ID0gJ3Njc3MnO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgY29udGVudHMsXG4gICAgICBzeW50YXgsXG4gICAgICBzb3VyY2VNYXBVcmw6IGNhbm9uaWNhbFVybCxcbiAgICB9O1xuICB9XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyBpZiBhIHVuaWNvZGUgY29kZSBwb2ludCBpcyBhIENTUyB3aGl0ZXNwYWNlIGNoYXJhY3Rlci5cbiAqIEBwYXJhbSBjb2RlIFRoZSB1bmljb2RlIGNvZGUgcG9pbnQgdG8gdGVzdC5cbiAqIEByZXR1cm5zIHRydWUsIGlmIHRoZSBjb2RlIHBvaW50IGlzIENTUyB3aGl0ZXNwYWNlOyBmYWxzZSwgb3RoZXJ3aXNlLlxuICovXG5mdW5jdGlvbiBpc1doaXRlc3BhY2UoY29kZTogbnVtYmVyKTogYm9vbGVhbiB7XG4gIC8vIEJhc2VkIG9uIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3Mtc3ludGF4LTMvI3doaXRlc3BhY2VcbiAgc3dpdGNoIChjb2RlKSB7XG4gICAgY2FzZSAweDAwMDk6IC8vIHRhYlxuICAgIGNhc2UgMHgwMDIwOiAvLyBzcGFjZVxuICAgIGNhc2UgMHgwMDBhOiAvLyBsaW5lIGZlZWRcbiAgICBjYXNlIDB4MDAwYzogLy8gZm9ybSBmZWVkXG4gICAgY2FzZSAweDAwMGQ6IC8vIGNhcnJpYWdlIHJldHVyblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIFNjYW5zIGEgQ1NTIG9yIFNhc3MgZmlsZSBhbmQgbG9jYXRlcyBhbGwgdmFsaWQgdXJsIGZ1bmN0aW9uIHZhbHVlcyBhcyBkZWZpbmVkIGJ5IHRoZSBDU1NcbiAqIHN5bnRheCBzcGVjaWZpY2F0aW9uLlxuICogQHBhcmFtIGNvbnRlbnRzIEEgc3RyaW5nIGNvbnRhaW5pbmcgYSBDU1Mgb3IgU2FzcyBmaWxlIHRvIHNjYW4uXG4gKiBAcmV0dXJucyBBbiBpdGVyYWJsZSB0aGF0IHlpZWxkcyBlYWNoIENTUyB1cmwgZnVuY3Rpb24gdmFsdWUgZm91bmQuXG4gKi9cbmZ1bmN0aW9uKiBmaW5kVXJscyhjb250ZW50czogc3RyaW5nKTogSXRlcmFibGU8eyBzdGFydDogbnVtYmVyOyBlbmQ6IG51bWJlcjsgdmFsdWU6IHN0cmluZyB9PiB7XG4gIGxldCBwb3MgPSAwO1xuICBsZXQgd2lkdGggPSAxO1xuICBsZXQgY3VycmVudCA9IC0xO1xuICBjb25zdCBuZXh0ID0gKCkgPT4ge1xuICAgIHBvcyArPSB3aWR0aDtcbiAgICBjdXJyZW50ID0gY29udGVudHMuY29kZVBvaW50QXQocG9zKSA/PyAtMTtcbiAgICB3aWR0aCA9IGN1cnJlbnQgPiAweGZmZmYgPyAyIDogMTtcblxuICAgIHJldHVybiBjdXJyZW50O1xuICB9O1xuXG4gIC8vIEJhc2VkIG9uIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3Mtc3ludGF4LTMvI2NvbnN1bWUtaWRlbnQtbGlrZS10b2tlblxuICB3aGlsZSAoKHBvcyA9IGNvbnRlbnRzLmluZGV4T2YoJ3VybCgnLCBwb3MpKSAhPT0gLTEpIHtcbiAgICAvLyBTZXQgdG8gcG9zaXRpb24gb2YgdGhlIChcbiAgICBwb3MgKz0gMztcbiAgICB3aWR0aCA9IDE7XG5cbiAgICAvLyBDb25zdW1lIGFsbCBsZWFkaW5nIHdoaXRlc3BhY2VcbiAgICB3aGlsZSAoaXNXaGl0ZXNwYWNlKG5leHQoKSkpIHtcbiAgICAgIC8qIGVtcHR5ICovXG4gICAgfVxuXG4gICAgLy8gSW5pdGlhbGl6ZSBVUkwgc3RhdGVcbiAgICBjb25zdCB1cmwgPSB7IHN0YXJ0OiBwb3MsIGVuZDogLTEsIHZhbHVlOiAnJyB9O1xuICAgIGxldCBjb21wbGV0ZSA9IGZhbHNlO1xuXG4gICAgLy8gSWYgXCIgb3IgJywgdGhlbiBjb25zdW1lIHRoZSB2YWx1ZSBhcyBhIHN0cmluZ1xuICAgIGlmIChjdXJyZW50ID09PSAweDAwMjIgfHwgY3VycmVudCA9PT0gMHgwMDI3KSB7XG4gICAgICBjb25zdCBlbmRpbmcgPSBjdXJyZW50O1xuICAgICAgLy8gQmFzZWQgb24gaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy1zeW50YXgtMy8jY29uc3VtZS1zdHJpbmctdG9rZW5cbiAgICAgIHdoaWxlICghY29tcGxldGUpIHtcbiAgICAgICAgc3dpdGNoIChuZXh0KCkpIHtcbiAgICAgICAgICBjYXNlIC0xOiAvLyBFT0ZcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICBjYXNlIDB4MDAwYTogLy8gbGluZSBmZWVkXG4gICAgICAgICAgY2FzZSAweDAwMGM6IC8vIGZvcm0gZmVlZFxuICAgICAgICAgIGNhc2UgMHgwMDBkOiAvLyBjYXJyaWFnZSByZXR1cm5cbiAgICAgICAgICAgIC8vIEludmFsaWRcbiAgICAgICAgICAgIGNvbXBsZXRlID0gdHJ1ZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgMHgwMDVjOiAvLyBcXCAtLSBjaGFyYWN0ZXIgZXNjYXBlXG4gICAgICAgICAgICAvLyBJZiBub3QgRU9GIG9yIG5ld2xpbmUsIGFkZCB0aGUgY2hhcmFjdGVyIGFmdGVyIHRoZSBlc2NhcGVcbiAgICAgICAgICAgIHN3aXRjaCAobmV4dCgpKSB7XG4gICAgICAgICAgICAgIGNhc2UgLTE6XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICBjYXNlIDB4MDAwYTogLy8gbGluZSBmZWVkXG4gICAgICAgICAgICAgIGNhc2UgMHgwMDBjOiAvLyBmb3JtIGZlZWRcbiAgICAgICAgICAgICAgY2FzZSAweDAwMGQ6IC8vIGNhcnJpYWdlIHJldHVyblxuICAgICAgICAgICAgICAgIC8vIFNraXAgd2hlbiBpbnNpZGUgYSBzdHJpbmdcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAvLyBUT0RPOiBIYW5kbGUgaGV4IGVzY2FwZSBjb2Rlc1xuICAgICAgICAgICAgICAgIHVybC52YWx1ZSArPSBTdHJpbmcuZnJvbUNvZGVQb2ludChjdXJyZW50KTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgZW5kaW5nOlxuICAgICAgICAgICAgLy8gRnVsbCBzdHJpbmcgcG9zaXRpb24gc2hvdWxkIGluY2x1ZGUgdGhlIHF1b3RlcyBmb3IgcmVwbGFjZW1lbnRcbiAgICAgICAgICAgIHVybC5lbmQgPSBwb3MgKyAxO1xuICAgICAgICAgICAgY29tcGxldGUgPSB0cnVlO1xuICAgICAgICAgICAgeWllbGQgdXJsO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHVybC52YWx1ZSArPSBTdHJpbmcuZnJvbUNvZGVQb2ludChjdXJyZW50KTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIG5leHQoKTtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIC8vIEJhc2VkIG9uIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3Mtc3ludGF4LTMvI2NvbnN1bWUtdXJsLXRva2VuXG4gICAgd2hpbGUgKCFjb21wbGV0ZSkge1xuICAgICAgc3dpdGNoIChjdXJyZW50KSB7XG4gICAgICAgIGNhc2UgLTE6IC8vIEVPRlxuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY2FzZSAweDAwMjI6IC8vIFwiXG4gICAgICAgIGNhc2UgMHgwMDI3OiAvLyAnXG4gICAgICAgIGNhc2UgMHgwMDI4OiAvLyAoXG4gICAgICAgICAgLy8gSW52YWxpZFxuICAgICAgICAgIGNvbXBsZXRlID0gdHJ1ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAweDAwMjk6IC8vIClcbiAgICAgICAgICAvLyBVUkwgaXMgdmFsaWQgYW5kIGNvbXBsZXRlXG4gICAgICAgICAgdXJsLmVuZCA9IHBvcztcbiAgICAgICAgICBjb21wbGV0ZSA9IHRydWU7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgMHgwMDVjOiAvLyBcXCAtLSBjaGFyYWN0ZXIgZXNjYXBlXG4gICAgICAgICAgLy8gSWYgbm90IEVPRiBvciBuZXdsaW5lLCBhZGQgdGhlIGNoYXJhY3RlciBhZnRlciB0aGUgZXNjYXBlXG4gICAgICAgICAgc3dpdGNoIChuZXh0KCkpIHtcbiAgICAgICAgICAgIGNhc2UgLTE6IC8vIEVPRlxuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBjYXNlIDB4MDAwYTogLy8gbGluZSBmZWVkXG4gICAgICAgICAgICBjYXNlIDB4MDAwYzogLy8gZm9ybSBmZWVkXG4gICAgICAgICAgICBjYXNlIDB4MDAwZDogLy8gY2FycmlhZ2UgcmV0dXJuXG4gICAgICAgICAgICAgIC8vIEludmFsaWRcbiAgICAgICAgICAgICAgY29tcGxldGUgPSB0cnVlO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgIC8vIFRPRE86IEhhbmRsZSBoZXggZXNjYXBlIGNvZGVzXG4gICAgICAgICAgICAgIHVybC52YWx1ZSArPSBTdHJpbmcuZnJvbUNvZGVQb2ludChjdXJyZW50KTtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGlmIChpc1doaXRlc3BhY2UoY3VycmVudCkpIHtcbiAgICAgICAgICAgIHdoaWxlIChpc1doaXRlc3BhY2UobmV4dCgpKSkge1xuICAgICAgICAgICAgICAvKiBlbXB0eSAqL1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gVW5lc2NhcGVkIHdoaXRlc3BhY2UgaXMgb25seSB2YWxpZCBiZWZvcmUgdGhlIGNsb3NpbmcgKVxuICAgICAgICAgICAgaWYgKGN1cnJlbnQgPT09IDB4MDAyOSkge1xuICAgICAgICAgICAgICAvLyBVUkwgaXMgdmFsaWRcbiAgICAgICAgICAgICAgdXJsLmVuZCA9IHBvcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbXBsZXRlID0gdHJ1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gQWRkIHRoZSBjaGFyYWN0ZXIgdG8gdGhlIHVybCB2YWx1ZVxuICAgICAgICAgICAgdXJsLnZhbHVlICs9IFN0cmluZy5mcm9tQ29kZVBvaW50KGN1cnJlbnQpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIG5leHQoKTtcbiAgICB9XG5cbiAgICAvLyBBbiBlbmQgcG9zaXRpb24gaW5kaWNhdGVzIGEgVVJMIHdhcyBmb3VuZFxuICAgIGlmICh1cmwuZW5kICE9PSAtMSkge1xuICAgICAgeWllbGQgdXJsO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFByb3ZpZGVzIHRoZSBTYXNzIGltcG9ydGVyIGxvZ2ljIHRvIHJlc29sdmUgcmVsYXRpdmUgc3R5bGVzaGVldCBpbXBvcnRzIHZpYSBib3RoIGltcG9ydCBhbmQgdXNlIHJ1bGVzXG4gKiBhbmQgYWxzbyByZWJhc2UgYW55IGB1cmwoKWAgZnVuY3Rpb24gdXNhZ2Ugd2l0aGluIHRob3NlIHN0eWxlc2hlZXRzLiBUaGUgcmViYXNpbmcgd2lsbCBlbnN1cmUgdGhhdFxuICogdGhlIFVSTHMgaW4gdGhlIG91dHB1dCBvZiB0aGUgU2FzcyBjb21waWxlciByZWZsZWN0IHRoZSBmaW5hbCBmaWxlc3lzdGVtIGxvY2F0aW9uIG9mIHRoZSBvdXRwdXQgQ1NTIGZpbGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBSZWxhdGl2ZVVybFJlYmFzaW5nSW1wb3J0ZXIgZXh0ZW5kcyBVcmxSZWJhc2luZ0ltcG9ydGVyIHtcbiAgY29uc3RydWN0b3IoXG4gICAgZW50cnlEaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBwcml2YXRlIGRpcmVjdG9yeUNhY2hlID0gbmV3IE1hcDxzdHJpbmcsIERpcmVjdG9yeUVudHJ5PigpLFxuICAgIHJlYmFzZVNvdXJjZU1hcHM/OiBNYXA8c3RyaW5nLCBSYXdTb3VyY2VNYXA+LFxuICApIHtcbiAgICBzdXBlcihlbnRyeURpcmVjdG9yeSwgcmViYXNlU291cmNlTWFwcyk7XG4gIH1cblxuICBjYW5vbmljYWxpemUodXJsOiBzdHJpbmcsIG9wdGlvbnM6IHsgZnJvbUltcG9ydDogYm9vbGVhbiB9KTogVVJMIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZUltcG9ydCh1cmwsIG9wdGlvbnMuZnJvbUltcG9ydCwgdHJ1ZSk7XG4gIH1cblxuICAvKipcbiAgICogQXR0ZW1wdHMgdG8gcmVzb2x2ZSBhIHByb3ZpZGVkIFVSTCB0byBhIHN0eWxlc2hlZXQgZmlsZSB1c2luZyB0aGUgU2FzcyBjb21waWxlcidzIHJlc29sdXRpb24gYWxnb3JpdGhtLlxuICAgKiBCYXNlZCBvbiBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9kYXJ0LXNhc3MvYmxvYi80NGQ2YmI2YWM3MmZlNmI5M2Y1YmZlYzM3MWExZmZmYjE4ZTZiNzZkL2xpYi9zcmMvaW1wb3J0ZXIvdXRpbHMuZGFydFxuICAgKiBAcGFyYW0gdXJsIFRoZSBmaWxlIHByb3RvY29sIFVSTCB0byByZXNvbHZlLlxuICAgKiBAcGFyYW0gZnJvbUltcG9ydCBJZiB0cnVlLCBVUkwgd2FzIGZyb20gYW4gaW1wb3J0IHJ1bGU7IG90aGVyd2lzZSBmcm9tIGEgdXNlIHJ1bGUuXG4gICAqIEBwYXJhbSBjaGVja0RpcmVjdG9yeSBJZiB0cnVlLCB0cnkgY2hlY2tpbmcgZm9yIGEgZGlyZWN0b3J5IHdpdGggdGhlIGJhc2UgbmFtZSBjb250YWluaW5nIGFuIGluZGV4IGZpbGUuXG4gICAqIEByZXR1cm5zIEEgZnVsbCByZXNvbHZlZCBVUkwgb2YgdGhlIHN0eWxlc2hlZXQgZmlsZSBvciBgbnVsbGAgaWYgbm90IGZvdW5kLlxuICAgKi9cbiAgcHJpdmF0ZSByZXNvbHZlSW1wb3J0KHVybDogc3RyaW5nLCBmcm9tSW1wb3J0OiBib29sZWFuLCBjaGVja0RpcmVjdG9yeTogYm9vbGVhbik6IFVSTCB8IG51bGwge1xuICAgIGxldCBzdHlsZXNoZWV0UGF0aDtcbiAgICB0cnkge1xuICAgICAgc3R5bGVzaGVldFBhdGggPSBmaWxlVVJMVG9QYXRoKHVybCk7XG4gICAgfSBjYXRjaCB7XG4gICAgICAvLyBPbmx5IGZpbGUgcHJvdG9jb2wgVVJMcyBhcmUgc3VwcG9ydGVkIGJ5IHRoaXMgaW1wb3J0ZXJcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IGRpcmVjdG9yeSA9IGRpcm5hbWUoc3R5bGVzaGVldFBhdGgpO1xuICAgIGNvbnN0IGV4dGVuc2lvbiA9IGV4dG5hbWUoc3R5bGVzaGVldFBhdGgpO1xuICAgIGNvbnN0IGhhc1N0eWxlRXh0ZW5zaW9uID1cbiAgICAgIGV4dGVuc2lvbiA9PT0gJy5zY3NzJyB8fCBleHRlbnNpb24gPT09ICcuc2FzcycgfHwgZXh0ZW5zaW9uID09PSAnLmNzcyc7XG4gICAgLy8gUmVtb3ZlIHRoZSBzdHlsZSBleHRlbnNpb24gaWYgcHJlc2VudCB0byBhbGxvdyBhZGRpbmcgdGhlIGAuaW1wb3J0YCBzdWZmaXhcbiAgICBjb25zdCBmaWxlbmFtZSA9IGJhc2VuYW1lKHN0eWxlc2hlZXRQYXRoLCBoYXNTdHlsZUV4dGVuc2lvbiA/IGV4dGVuc2lvbiA6IHVuZGVmaW5lZCk7XG5cbiAgICBjb25zdCBpbXBvcnRQb3RlbnRpYWxzID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gICAgY29uc3QgZGVmYXVsdFBvdGVudGlhbHMgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICAgIGlmIChoYXNTdHlsZUV4dGVuc2lvbikge1xuICAgICAgaWYgKGZyb21JbXBvcnQpIHtcbiAgICAgICAgaW1wb3J0UG90ZW50aWFscy5hZGQoZmlsZW5hbWUgKyAnLmltcG9ydCcgKyBleHRlbnNpb24pO1xuICAgICAgICBpbXBvcnRQb3RlbnRpYWxzLmFkZCgnXycgKyBmaWxlbmFtZSArICcuaW1wb3J0JyArIGV4dGVuc2lvbik7XG4gICAgICB9XG4gICAgICBkZWZhdWx0UG90ZW50aWFscy5hZGQoZmlsZW5hbWUgKyBleHRlbnNpb24pO1xuICAgICAgZGVmYXVsdFBvdGVudGlhbHMuYWRkKCdfJyArIGZpbGVuYW1lICsgZXh0ZW5zaW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGZyb21JbXBvcnQpIHtcbiAgICAgICAgaW1wb3J0UG90ZW50aWFscy5hZGQoZmlsZW5hbWUgKyAnLmltcG9ydC5zY3NzJyk7XG4gICAgICAgIGltcG9ydFBvdGVudGlhbHMuYWRkKGZpbGVuYW1lICsgJy5pbXBvcnQuc2FzcycpO1xuICAgICAgICBpbXBvcnRQb3RlbnRpYWxzLmFkZChmaWxlbmFtZSArICcuaW1wb3J0LmNzcycpO1xuICAgICAgICBpbXBvcnRQb3RlbnRpYWxzLmFkZCgnXycgKyBmaWxlbmFtZSArICcuaW1wb3J0LnNjc3MnKTtcbiAgICAgICAgaW1wb3J0UG90ZW50aWFscy5hZGQoJ18nICsgZmlsZW5hbWUgKyAnLmltcG9ydC5zYXNzJyk7XG4gICAgICAgIGltcG9ydFBvdGVudGlhbHMuYWRkKCdfJyArIGZpbGVuYW1lICsgJy5pbXBvcnQuY3NzJyk7XG4gICAgICB9XG4gICAgICBkZWZhdWx0UG90ZW50aWFscy5hZGQoZmlsZW5hbWUgKyAnLnNjc3MnKTtcbiAgICAgIGRlZmF1bHRQb3RlbnRpYWxzLmFkZChmaWxlbmFtZSArICcuc2FzcycpO1xuICAgICAgZGVmYXVsdFBvdGVudGlhbHMuYWRkKGZpbGVuYW1lICsgJy5jc3MnKTtcbiAgICAgIGRlZmF1bHRQb3RlbnRpYWxzLmFkZCgnXycgKyBmaWxlbmFtZSArICcuc2NzcycpO1xuICAgICAgZGVmYXVsdFBvdGVudGlhbHMuYWRkKCdfJyArIGZpbGVuYW1lICsgJy5zYXNzJyk7XG4gICAgICBkZWZhdWx0UG90ZW50aWFscy5hZGQoJ18nICsgZmlsZW5hbWUgKyAnLmNzcycpO1xuICAgIH1cblxuICAgIGxldCBmb3VuZERlZmF1bHRzO1xuICAgIGxldCBmb3VuZEltcG9ydHM7XG4gICAgbGV0IGhhc1BvdGVudGlhbEluZGV4ID0gZmFsc2U7XG5cbiAgICBsZXQgY2FjaGVkRW50cmllcyA9IHRoaXMuZGlyZWN0b3J5Q2FjaGUuZ2V0KGRpcmVjdG9yeSk7XG4gICAgaWYgKGNhY2hlZEVudHJpZXMpIHtcbiAgICAgIC8vIElmIHRoZXJlIGlzIGEgcHJlcHJvY2Vzc2VkIGNhY2hlIG9mIHRoZSBkaXJlY3RvcnksIHBlcmZvcm0gYW4gaW50ZXJzZWN0aW9uIG9mIHRoZSBwb3RlbnRpYWxzXG4gICAgICAvLyBhbmQgdGhlIGRpcmVjdG9yeSBmaWxlcy5cbiAgICAgIGNvbnN0IHsgZmlsZXMsIGRpcmVjdG9yaWVzIH0gPSBjYWNoZWRFbnRyaWVzO1xuICAgICAgZm91bmREZWZhdWx0cyA9IFsuLi5kZWZhdWx0UG90ZW50aWFsc10uZmlsdGVyKChwb3RlbnRpYWwpID0+IGZpbGVzLmhhcyhwb3RlbnRpYWwpKTtcbiAgICAgIGZvdW5kSW1wb3J0cyA9IFsuLi5pbXBvcnRQb3RlbnRpYWxzXS5maWx0ZXIoKHBvdGVudGlhbCkgPT4gZmlsZXMuaGFzKHBvdGVudGlhbCkpO1xuICAgICAgaGFzUG90ZW50aWFsSW5kZXggPSBjaGVja0RpcmVjdG9yeSAmJiAhaGFzU3R5bGVFeHRlbnNpb24gJiYgZGlyZWN0b3JpZXMuaGFzKGZpbGVuYW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gSWYgbm8gcHJlcHJvY2Vzc2VkIGNhY2hlIGV4aXN0cywgZ2V0IHRoZSBlbnRyaWVzIGZyb20gdGhlIGZpbGUgc3lzdGVtIGFuZCwgd2hpbGUgc2VhcmNoaW5nLFxuICAgICAgLy8gZ2VuZXJhdGUgdGhlIGNhY2hlIGZvciBsYXRlciByZXF1ZXN0cy5cbiAgICAgIGxldCBlbnRyaWVzO1xuICAgICAgdHJ5IHtcbiAgICAgICAgZW50cmllcyA9IHJlYWRkaXJTeW5jKGRpcmVjdG9yeSwgeyB3aXRoRmlsZVR5cGVzOiB0cnVlIH0pO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuXG4gICAgICBmb3VuZERlZmF1bHRzID0gW107XG4gICAgICBmb3VuZEltcG9ydHMgPSBbXTtcbiAgICAgIGNhY2hlZEVudHJpZXMgPSB7IGZpbGVzOiBuZXcgU2V0PHN0cmluZz4oKSwgZGlyZWN0b3JpZXM6IG5ldyBTZXQ8c3RyaW5nPigpIH07XG4gICAgICBmb3IgKGNvbnN0IGVudHJ5IG9mIGVudHJpZXMpIHtcbiAgICAgICAgY29uc3QgaXNEaXJlY3RvcnkgPSBlbnRyeS5pc0RpcmVjdG9yeSgpO1xuICAgICAgICBpZiAoaXNEaXJlY3RvcnkpIHtcbiAgICAgICAgICBjYWNoZWRFbnRyaWVzLmRpcmVjdG9yaWVzLmFkZChlbnRyeS5uYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJlY29yZCBpZiB0aGUgbmFtZSBzaG91bGQgYmUgY2hlY2tlZCBhcyBhIGRpcmVjdG9yeSB3aXRoIGFuIGluZGV4IGZpbGVcbiAgICAgICAgaWYgKGNoZWNrRGlyZWN0b3J5ICYmICFoYXNTdHlsZUV4dGVuc2lvbiAmJiBlbnRyeS5uYW1lID09PSBmaWxlbmFtZSAmJiBpc0RpcmVjdG9yeSkge1xuICAgICAgICAgIGhhc1BvdGVudGlhbEluZGV4ID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghZW50cnkuaXNGaWxlKCkpIHtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNhY2hlZEVudHJpZXMuZmlsZXMuYWRkKGVudHJ5Lm5hbWUpO1xuXG4gICAgICAgIGlmIChpbXBvcnRQb3RlbnRpYWxzLmhhcyhlbnRyeS5uYW1lKSkge1xuICAgICAgICAgIGZvdW5kSW1wb3J0cy5wdXNoKGVudHJ5Lm5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRlZmF1bHRQb3RlbnRpYWxzLmhhcyhlbnRyeS5uYW1lKSkge1xuICAgICAgICAgIGZvdW5kRGVmYXVsdHMucHVzaChlbnRyeS5uYW1lKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0aGlzLmRpcmVjdG9yeUNhY2hlLnNldChkaXJlY3RvcnksIGNhY2hlZEVudHJpZXMpO1xuICAgIH1cblxuICAgIC8vIGBmb3VuZEltcG9ydHNgIHdpbGwgb25seSBjb250YWluIGVsZW1lbnRzIGlmIGBvcHRpb25zLmZyb21JbXBvcnRgIGlzIHRydWVcbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLmNoZWNrRm91bmQoZm91bmRJbXBvcnRzKSA/PyB0aGlzLmNoZWNrRm91bmQoZm91bmREZWZhdWx0cyk7XG4gICAgaWYgKHJlc3VsdCAhPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHBhdGhUb0ZpbGVVUkwoam9pbihkaXJlY3RvcnksIHJlc3VsdCkpO1xuICAgIH1cblxuICAgIGlmIChoYXNQb3RlbnRpYWxJbmRleCkge1xuICAgICAgLy8gQ2hlY2sgZm9yIGluZGV4IGZpbGVzIHVzaW5nIGZpbGVuYW1lIGFzIGEgZGlyZWN0b3J5XG4gICAgICByZXR1cm4gdGhpcy5yZXNvbHZlSW1wb3J0KHVybCArICcvaW5kZXgnLCBmcm9tSW1wb3J0LCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGFuIGFycmF5IG9mIHBvdGVudGlhbCBzdHlsZXNoZWV0IGZpbGVzIHRvIGRldGVybWluZSBpZiB0aGVyZSBpcyBhIHZhbGlkXG4gICAqIHN0eWxlc2hlZXQgZmlsZS4gTW9yZSB0aGFuIG9uZSBkaXNjb3ZlcmVkIGZpbGUgbWF5IGluZGljYXRlIGFuIGVycm9yLlxuICAgKiBAcGFyYW0gZm91bmQgQW4gYXJyYXkgb2YgZGlzY292ZXJlZCBzdHlsZXNoZWV0IGZpbGVzLlxuICAgKiBAcmV0dXJucyBBIGZ1bGx5IHJlc29sdmVkIHBhdGggZm9yIGEgc3R5bGVzaGVldCBmaWxlIG9yIGBudWxsYCBpZiBub3QgZm91bmQuXG4gICAqIEB0aHJvd3MgSWYgdGhlcmUgYXJlIGFtYmlndW91cyBmaWxlcyBkaXNjb3ZlcmVkLlxuICAgKi9cbiAgcHJpdmF0ZSBjaGVja0ZvdW5kKGZvdW5kOiBzdHJpbmdbXSk6IHN0cmluZyB8IG51bGwge1xuICAgIGlmIChmb3VuZC5sZW5ndGggPT09IDApIHtcbiAgICAgIC8vIE5vdCBmb3VuZFxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgLy8gTW9yZSB0aGFuIG9uZSBmb3VuZCBmaWxlIG1heSBiZSBhbiBlcnJvclxuICAgIGlmIChmb3VuZC5sZW5ndGggPiAxKSB7XG4gICAgICAvLyBQcmVzZW5jZSBvZiBDU1MgZmlsZXMgYWxvbmdzaWRlIGEgU2FzcyBmaWxlIGRvZXMgbm90IGNhdXNlIGFuIGVycm9yXG4gICAgICBjb25zdCBmb3VuZFdpdGhvdXRDc3MgPSBmb3VuZC5maWx0ZXIoKGVsZW1lbnQpID0+IGV4dG5hbWUoZWxlbWVudCkgIT09ICcuY3NzJyk7XG4gICAgICAvLyBJZiB0aGUgbGVuZ3RoIGlzIHplcm8gdGhlbiB0aGVyZSBhcmUgdHdvIG9yIG1vcmUgY3NzIGZpbGVzXG4gICAgICAvLyBJZiB0aGUgbGVuZ3RoIGlzIG1vcmUgdGhhbiBvbmUgdGhhbiB0aGVyZSBhcmUgdHdvIG9yIG1vcmUgc2Fzcy9zY3NzIGZpbGVzXG4gICAgICBpZiAoZm91bmRXaXRob3V0Q3NzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FtYmlndW91cyBpbXBvcnQgZGV0ZWN0ZWQuJyk7XG4gICAgICB9XG5cbiAgICAgIC8vIFJldHVybiB0aGUgbm9uLUNTUyBmaWxlIChzYXNzL3Njc3MgZmlsZXMgaGF2ZSBwcmlvcml0eSlcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL2RhcnQtc2Fzcy9ibG9iLzQ0ZDZiYjZhYzcyZmU2YjkzZjViZmVjMzcxYTFmZmZiMThlNmI3NmQvbGliL3NyYy9pbXBvcnRlci91dGlscy5kYXJ0I0w0NC1MNDdcbiAgICAgIHJldHVybiBmb3VuZFdpdGhvdXRDc3NbMF07XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvdW5kWzBdO1xuICB9XG59XG5cbi8qKlxuICogUHJvdmlkZXMgdGhlIFNhc3MgaW1wb3J0ZXIgbG9naWMgdG8gcmVzb2x2ZSBtb2R1bGUgKG5wbSBwYWNrYWdlKSBzdHlsZXNoZWV0IGltcG9ydHMgdmlhIGJvdGggaW1wb3J0IGFuZFxuICogdXNlIHJ1bGVzIGFuZCBhbHNvIHJlYmFzZSBhbnkgYHVybCgpYCBmdW5jdGlvbiB1c2FnZSB3aXRoaW4gdGhvc2Ugc3R5bGVzaGVldHMuIFRoZSByZWJhc2luZyB3aWxsIGVuc3VyZSB0aGF0XG4gKiB0aGUgVVJMcyBpbiB0aGUgb3V0cHV0IG9mIHRoZSBTYXNzIGNvbXBpbGVyIHJlZmxlY3QgdGhlIGZpbmFsIGZpbGVzeXN0ZW0gbG9jYXRpb24gb2YgdGhlIG91dHB1dCBDU1MgZmlsZS5cbiAqL1xuZXhwb3J0IGNsYXNzIE1vZHVsZVVybFJlYmFzaW5nSW1wb3J0ZXIgZXh0ZW5kcyBSZWxhdGl2ZVVybFJlYmFzaW5nSW1wb3J0ZXIge1xuICBjb25zdHJ1Y3RvcihcbiAgICBlbnRyeURpcmVjdG9yeTogc3RyaW5nLFxuICAgIGRpcmVjdG9yeUNhY2hlOiBNYXA8c3RyaW5nLCBEaXJlY3RvcnlFbnRyeT4sXG4gICAgcmViYXNlU291cmNlTWFwczogTWFwPHN0cmluZywgUmF3U291cmNlTWFwPiB8IHVuZGVmaW5lZCxcbiAgICBwcml2YXRlIGZpbmRlcjogRmlsZUltcG9ydGVyPCdzeW5jJz5bJ2ZpbmRGaWxlVXJsJ10sXG4gICkge1xuICAgIHN1cGVyKGVudHJ5RGlyZWN0b3J5LCBkaXJlY3RvcnlDYWNoZSwgcmViYXNlU291cmNlTWFwcyk7XG4gIH1cblxuICBvdmVycmlkZSBjYW5vbmljYWxpemUodXJsOiBzdHJpbmcsIG9wdGlvbnM6IHsgZnJvbUltcG9ydDogYm9vbGVhbiB9KTogVVJMIHwgbnVsbCB7XG4gICAgaWYgKHVybC5zdGFydHNXaXRoKCdmaWxlOi8vJykpIHtcbiAgICAgIHJldHVybiBzdXBlci5jYW5vbmljYWxpemUodXJsLCBvcHRpb25zKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLmZpbmRlcih1cmwsIG9wdGlvbnMpO1xuXG4gICAgcmV0dXJuIHJlc3VsdCA/IHN1cGVyLmNhbm9uaWNhbGl6ZShyZXN1bHQuaHJlZiwgb3B0aW9ucykgOiBudWxsO1xuICB9XG59XG5cbi8qKlxuICogUHJvdmlkZXMgdGhlIFNhc3MgaW1wb3J0ZXIgbG9naWMgdG8gcmVzb2x2ZSBsb2FkIHBhdGhzIGxvY2F0ZWQgc3R5bGVzaGVldCBpbXBvcnRzIHZpYSBib3RoIGltcG9ydCBhbmRcbiAqIHVzZSBydWxlcyBhbmQgYWxzbyByZWJhc2UgYW55IGB1cmwoKWAgZnVuY3Rpb24gdXNhZ2Ugd2l0aGluIHRob3NlIHN0eWxlc2hlZXRzLiBUaGUgcmViYXNpbmcgd2lsbCBlbnN1cmUgdGhhdFxuICogdGhlIFVSTHMgaW4gdGhlIG91dHB1dCBvZiB0aGUgU2FzcyBjb21waWxlciByZWZsZWN0IHRoZSBmaW5hbCBmaWxlc3lzdGVtIGxvY2F0aW9uIG9mIHRoZSBvdXRwdXQgQ1NTIGZpbGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBMb2FkUGF0aHNVcmxSZWJhc2luZ0ltcG9ydGVyIGV4dGVuZHMgUmVsYXRpdmVVcmxSZWJhc2luZ0ltcG9ydGVyIHtcbiAgY29uc3RydWN0b3IoXG4gICAgZW50cnlEaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBkaXJlY3RvcnlDYWNoZTogTWFwPHN0cmluZywgRGlyZWN0b3J5RW50cnk+LFxuICAgIHJlYmFzZVNvdXJjZU1hcHM6IE1hcDxzdHJpbmcsIFJhd1NvdXJjZU1hcD4gfCB1bmRlZmluZWQsXG4gICAgcHJpdmF0ZSBsb2FkUGF0aHM6IEl0ZXJhYmxlPHN0cmluZz4sXG4gICkge1xuICAgIHN1cGVyKGVudHJ5RGlyZWN0b3J5LCBkaXJlY3RvcnlDYWNoZSwgcmViYXNlU291cmNlTWFwcyk7XG4gIH1cblxuICBvdmVycmlkZSBjYW5vbmljYWxpemUodXJsOiBzdHJpbmcsIG9wdGlvbnM6IHsgZnJvbUltcG9ydDogYm9vbGVhbiB9KTogVVJMIHwgbnVsbCB7XG4gICAgaWYgKHVybC5zdGFydHNXaXRoKCdmaWxlOi8vJykpIHtcbiAgICAgIHJldHVybiBzdXBlci5jYW5vbmljYWxpemUodXJsLCBvcHRpb25zKTtcbiAgICB9XG5cbiAgICBsZXQgcmVzdWx0ID0gbnVsbDtcbiAgICBmb3IgKGNvbnN0IGxvYWRQYXRoIG9mIHRoaXMubG9hZFBhdGhzKSB7XG4gICAgICByZXN1bHQgPSBzdXBlci5jYW5vbmljYWxpemUocGF0aFRvRmlsZVVSTChqb2luKGxvYWRQYXRoLCB1cmwpKS5ocmVmLCBvcHRpb25zKTtcbiAgICAgIGlmIChyZXN1bHQgIT09IG51bGwpIHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufVxuXG4vKipcbiAqIFdvcmthcm91bmQgZm9yIFNhc3Mgbm90IGNhbGxpbmcgaW5zdGFuY2UgbWV0aG9kcyB3aXRoIGB0aGlzYC5cbiAqIFRoZSBgY2Fub25pY2FsaXplYCBhbmQgYGxvYWRgIG1ldGhvZHMgd2lsbCBiZSBib3VuZCB0byB0aGUgY2xhc3MgaW5zdGFuY2UuXG4gKiBAcGFyYW0gaW1wb3J0ZXIgQSBTYXNzIGltcG9ydGVyIHRvIGJpbmQuXG4gKiBAcmV0dXJucyBUaGUgYm91bmQgU2FzcyBpbXBvcnRlci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNhc3NCaW5kV29ya2Fyb3VuZDxUIGV4dGVuZHMgSW1wb3J0ZXI+KGltcG9ydGVyOiBUKTogVCB7XG4gIGltcG9ydGVyLmNhbm9uaWNhbGl6ZSA9IGltcG9ydGVyLmNhbm9uaWNhbGl6ZS5iaW5kKGltcG9ydGVyKTtcbiAgaW1wb3J0ZXIubG9hZCA9IGltcG9ydGVyLmxvYWQuYmluZChpbXBvcnRlcik7XG5cbiAgcmV0dXJuIGltcG9ydGVyO1xufVxuIl19
@@ -9,7 +9,7 @@ import { LegacyResult as CompileResult, LegacyException as Exception, LegacyOpti
9
9
  /**
10
10
  * The callback type for the `dart-sass` asynchronous render function.
11
11
  */
12
- declare type RenderCallback = (error?: Exception, result?: CompileResult) => void;
12
+ type RenderCallback = (error?: Exception, result?: CompileResult) => void;
13
13
  /**
14
14
  * A Sass renderer implementation that provides an interface that can be used by Webpack's
15
15
  * `sass-loader`. The implementation uses a Worker thread to perform the Sass rendering
@@ -87,7 +87,7 @@ class SassLegacyWorkerImplementation {
87
87
  try {
88
88
  void worker.terminate();
89
89
  }
90
- catch { }
90
+ catch (_a) { }
91
91
  }
92
92
  this.requests.clear();
93
93
  }
@@ -173,3 +173,4 @@ class SassLegacyWorkerImplementation {
173
173
  }
174
174
  }
175
175
  exports.SassLegacyWorkerImplementation = SassLegacyWorkerImplementation;
176
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Fzcy1zZXJ2aWNlLWxlZ2FjeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL3Nhc3Mvc2Fzcy1zZXJ2aWNlLWxlZ2FjeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFFSCwrQkFBNEI7QUFVNUIsbURBQXdEO0FBQ3hELHNFQUEwRDtBQUUxRDs7R0FFRztBQUNILE1BQU0sa0JBQWtCLEdBQUcsZ0NBQVUsQ0FBQztBQTBCdEM7Ozs7O0dBS0c7QUFDSCxNQUFhLDhCQUE4QjtJQUEzQztRQUNtQixZQUFPLEdBQWEsRUFBRSxDQUFDO1FBQ3ZCLHFCQUFnQixHQUFhLEVBQUUsQ0FBQztRQUNoQyxhQUFRLEdBQUcsSUFBSSxHQUFHLEVBQXlCLENBQUM7UUFDNUMsZUFBVSxHQUFHLElBQUEsV0FBSSxFQUFDLFNBQVMsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO1FBQzVELGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxvQkFBZSxHQUFHLENBQUMsQ0FBQztJQTRMOUIsQ0FBQztJQTFMQzs7O09BR0c7SUFDSCxJQUFJLElBQUk7UUFDTixPQUFPLG1CQUFtQixDQUFDO0lBQzdCLENBQUM7SUFFRDs7T0FFRztJQUNILFVBQVU7UUFDUixNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLE9BQXlCLEVBQUUsUUFBd0I7UUFDeEQsd0dBQXdHO1FBQ3hHLDZGQUE2RjtRQUM3RixNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsR0FBRyxtQkFBbUIsRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUV4RSw4RkFBOEY7UUFDOUYsSUFBSSxTQUFTLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxN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QXdCLEVBQ3hCLFFBQXFGO1FBRXJGLE9BQU87WUFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNwQixXQUFXO1lBQ1gsUUFBUTtZQUNSLFNBQVMsRUFBRSxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO1NBQ3hFLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFsTUQsd0VBa01DIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7IGpvaW4gfSBmcm9tICdwYXRoJztcbmltcG9ydCB7XG4gIExlZ2FjeUFzeW5jSW1wb3J0ZXIgYXMgQXN5bmNJbXBvcnRlcixcbiAgTGVnYWN5UmVzdWx0IGFzIENvbXBpbGVSZXN1bHQsXG4gIExlZ2FjeUV4Y2VwdGlvbiBhcyBFeGNlcHRpb24sXG4gIExlZ2FjeUltcG9ydGVyUmVzdWx0IGFzIEltcG9ydGVyUmVzdWx0LFxuICBMZWdhY3lJbXBvcnRlclRoaXMgYXMgSW1wb3J0ZXJUaGlzLFxuICBMZWdhY3lPcHRpb25zIGFzIE9wdGlvbnMsXG4gIExlZ2FjeVN5bmNJbXBvcnRlciBhcyBTeW5jSW1wb3J0ZXIsXG59IGZyb20gJ3Nhc3MnO1xuaW1wb3J0IHsgTWVzc2FnZUNoYW5uZWwsIFdvcmtlciB9IGZyb20gJ3dvcmtlcl90aHJlYWRzJztcbmltcG9ydCB7IG1heFdvcmtlcnMgfSBmcm9tICcuLi91dGlscy9lbnZpcm9ubWVudC1vcHRpb25zJztcblxuLyoqXG4gKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgV29ya2VycyB0aGF0IHdpbGwgYmUgY3JlYXRlZCB0byBleGVjdXRlIHJlbmRlciByZXF1ZXN0cy5cbiAqL1xuY29uc3QgTUFYX1JFTkRFUl9XT1JLRVJTID0gbWF4V29ya2VycztcblxuLyoqXG4gKiBUaGUgY2FsbGJhY2sgdHlwZSBmb3IgdGhlIGBkYXJ0LXNhc3NgIGFzeW5jaHJvbm91cyByZW5kZXIgZnVuY3Rpb24uXG4gKi9cbnR5cGUgUmVuZGVyQ2FsbGJhY2sgPSAoZXJyb3I/OiBFeGNlcHRpb24sIHJlc3VsdD86IENvbXBpbGVSZXN1bHQpID0+IHZvaWQ7XG5cbi8qKlxuICogQW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGNvbnRleHR1YWwgaW5mb3JtYXRpb24gZm9yIGEgc3BlY2lmaWMgcmVuZGVyIHJlcXVlc3QuXG4gKi9cbmludGVyZmFjZSBSZW5kZXJSZXF1ZXN0IHtcbiAgaWQ6IG51bWJlcjtcbiAgd29ya2VySW5kZXg6IG51bWJlcjtcbiAgY2FsbGJhY2s6IFJlbmRlckNhbGxiYWNrO1xuICBpbXBvcnRlcnM/OiAoU3luY0ltcG9ydGVyIHwgQXN5bmNJbXBvcnRlcilbXTtcbn1cblxuLyoqXG4gKiBBIHJlc3BvbnNlIGZyb20gdGhlIFNhc3MgcmVuZGVyIFdvcmtlciBjb250YWluaW5nIHRoZSByZXN1bHQgb2YgdGhlIG9wZXJhdGlvbi5cbiAqL1xuaW50ZXJmYWNlIFJlbmRlclJlc3BvbnNlTWVzc2FnZSB7XG4gIGlkOiBudW1iZXI7XG4gIGVycm9yPzogRXhjZXB0aW9uO1xuICByZXN1bHQ/OiBDb21waWxlUmVzdWx0O1xufVxuXG4vKipcbiAqIEEgU2FzcyByZW5kZXJlciBpbXBsZW1lbnRhdGlvbiB0aGF0IHByb3ZpZGVzIGFuIGludGVyZmFjZSB0aGF0IGNhbiBiZSB1c2VkIGJ5IFdlYnBhY2snc1xuICogYHNhc3MtbG9hZGVyYC4gVGhlIGltcGxlbWVudGF0aW9uIHVzZXMgYSBXb3JrZXIgdGhyZWFkIHRvIHBlcmZvcm0gdGhlIFNhc3MgcmVuZGVyaW5nXG4gKiB3aXRoIHRoZSBgZGFydC1zYXNzYCBwYWNrYWdlLiAgVGhlIGBkYXJ0LXNhc3NgIHN5bmNocm9ub3VzIHJlbmRlciBmdW5jdGlvbiBpcyB1c2VkIHdpdGhpblxuICogdGhlIHdvcmtlciB3aGljaCBjYW4gYmUgdXAgdG8gdHdvIHRpbWVzIGZhc3RlciB0aGFuIHRoZSBhc3luY2hyb25vdXMgdmFyaWFudC5cbiAqL1xuZXhwb3J0IGNsYXNzIFNhc3NMZWdhY3lXb3JrZXJJbXBsZW1lbnRhdGlvbiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgd29ya2VyczogV29ya2VyW10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBhdmFpbGFibGVXb3JrZXJzOiBudW1iZXJbXSA9IFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IHJlcXVlc3RzID0gbmV3IE1hcDxudW1iZXIsIFJlbmRlclJlcXVlc3Q+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgd29ya2VyUGF0aCA9IGpvaW4oX19kaXJuYW1lLCAnLi93b3JrZXItbGVnYWN5LmpzJyk7XG4gIHByaXZhdGUgaWRDb3VudGVyID0gMTtcbiAgcHJpdmF0ZSBuZXh0V29ya2VySW5kZXggPSAwO1xuXG4gIC8qKlxuICAgKiBQcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgU2FzcyBpbXBsZW1lbnRhdGlvbi5cbiAgICogVGhpcyBtaW1pY3MgZW5vdWdoIG9mIHRoZSBgZGFydC1zYXNzYCB2YWx1ZSB0byBiZSB1c2VkIHdpdGggdGhlIGBzYXNzLWxvYWRlcmAuXG4gICAqL1xuICBnZXQgaW5mbygpOiBzdHJpbmcge1xuICAgIHJldHVybiAnZGFydC1zYXNzXFx0d29ya2VyJztcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgc3luY2hyb25vdXMgcmVuZGVyIGZ1bmN0aW9uIGlzIG5vdCB1c2VkIGJ5IHRoZSBgc2Fzcy1sb2FkZXJgLlxuICAgKi9cbiAgcmVuZGVyU3luYygpOiBuZXZlciB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdTYXNzIHJlbmRlclN5bmMgaXMgbm90IHN1cHBvcnRlZC4nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBc3luY2hyb25vdXNseSByZXF1ZXN0IGEgU2FzcyBzdHlsZXNoZWV0IHRvIGJlIHJlbmRlcmVyZWQuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBgZGFydC1zYXNzYCBvcHRpb25zIHRvIHVzZSB3aGVuIHJlbmRlcmluZyB0aGUgc3R5bGVzaGVldC5cbiAgICogQHBhcmFtIGNhbGxiYWNrIFRoZSBmdW5jdGlvbiB0byBleGVjdXRlIHdoZW4gdGhlIHJlbmRlcmluZyBpcyBjb21wbGV0ZS5cbiAgICovXG4gIHJlbmRlcihvcHRpb25zOiBPcHRpb25zPCdhc3luYyc+LCBjYWxsYmFjazogUmVuZGVyQ2FsbGJhY2spOiB2b2lkIHtcbiAgICAvLyBUaGUgYGZ1bmN0aW9uc2AsIGBsb2dnZXJgIGFuZCBgaW1wb3J0ZXJgIG9wdGlvbnMgYXJlIEphdmFTY3JpcHQgZnVuY3Rpb25zIHRoYXQgY2Fubm90IGJlIHRyYW5zZmVycmVkLlxuICAgIC8vIElmIGFueSBhZGRpdGlvbmFsIGZ1bmN0aW9uIG9wdGlvbnMgYXJlIGFkZGVkIGluIHRoZSBmdXR1cmUsIHRoZXkgbXVzdCBiZSBleGNsdWRlZCBhcyB3ZWxsLlxuICAgIGNvbnN0IHsgZnVuY3Rpb25zLCBpbXBvcnRlciwgbG9nZ2VyLCAuLi5zZXJpYWxpemFibGVPcHRpb25zIH0gPSBvcHRpb25zO1xuXG4gICAgLy8gVGhlIENMSSdzIGNvbmZpZ3VyYXRpb24gZG9lcyBub3QgdXNlIG9yIGV4cG9zZSB0aGUgYWJpbGl0eSB0byBkZWZpbmVkIGN1c3RvbSBTYXNzIGZ1bmN0aW9uc1xuICAgIGlmIChmdW5jdGlvbnMgJiYgT2JqZWN0LmtleXMoZnVuY3Rpb25zKS5sZW5ndGggPiAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Nhc3MgY3VzdG9tIGZ1bmN0aW9ucyBhcmUgbm90IHN1cHBvcnRlZC4nKTtcbiAgICB9XG5cbiAgICBsZXQgd29ya2VySW5kZXggPSB0aGlzLmF2YWlsYWJsZVdvcmtlcnMucG9wKCk7XG4gICAgaWYgKHdvcmtlckluZGV4ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmICh0aGlzLndvcmtlcnMubGVuZ3RoIDwgTUFYX1JFTkRFUl9XT1JLRVJTKSB7XG4gICAgICAgIHdvcmtlckluZGV4ID0gdGhpcy53b3JrZXJzLmxlbmd0aDtcbiAgICAgICAgdGhpcy53b3JrZXJzLnB1c2godGhpcy5jcmVhdGVXb3JrZXIoKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB3b3JrZXJJbmRleCA9IHRoaXMubmV4dFdvcmtlckluZGV4Kys7XG4gICAgICAgIGlmICh0aGlzLm5leHRXb3JrZXJJbmRleCA+PSB0aGlzLndvcmtlcnMubGVuZ3RoKSB7XG4gICAgICAgICAgdGhpcy5uZXh0V29ya2VySW5kZXggPSAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcmVxdWVzdCA9IHRoaXMuY3JlYXRlUmVxdWVzdCh3b3JrZXJJbmRleCwgY2FsbGJhY2ssIGltcG9ydGVyKTtcbiAgICB0aGlzLnJlcXVlc3RzLnNldChyZXF1ZXN0LmlkLCByZXF1ZXN0KTtcblxuICAgIHRoaXMud29ya2Vyc1t3b3JrZXJJbmRleF0ucG9zdE1lc3NhZ2Uoe1xuICAgICAgaWQ6IHJlcXVlc3QuaWQsXG4gICAgICBoYXNJbXBvcnRlcjogISFpbXBvcnRlcixcbiAgICAgIG9wdGlvbnM6IHNlcmlhbGl6YWJsZU9wdGlvbnMsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2h1dGRvd24gdGhlIFNhc3MgcmVuZGVyIHdvcmtlci5cbiAgICogRXhlY3V0aW5nIHRoaXMgbWV0aG9kIHdpbGwgc3RvcCBhbnkgcGVuZGluZyByZW5kZXIgcmVxdWVzdHMuXG4gICAqL1xuICBjbG9zZSgpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHdvcmtlciBvZiB0aGlzLndvcmtlcnMpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHZvaWQgd29ya2VyLnRlcm1pbmF0ZSgpO1xuICAgICAgfSBjYXRjaCB7fVxuICAgIH1cbiAgICB0aGlzLnJlcXVlc3RzLmNsZWFyKCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVdvcmtlcigpOiBXb3JrZXIge1xuICAgIGNvbnN0IHsgcG9ydDE6IG1haW5JbXBvcnRlclBvcnQsIHBvcnQyOiB3b3JrZXJJbXBvcnRlclBvcnQgfSA9IG5ldyBNZXNzYWdlQ2hhbm5lbCgpO1xuICAgIGNvbnN0IGltcG9ydGVyU2lnbmFsID0gbmV3IEludDMyQXJyYXkobmV3IFNoYXJlZEFycmF5QnVmZmVyKDQpKTtcblxuICAgIGNvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIodGhpcy53b3JrZXJQYXRoLCB7XG4gICAgICB3b3JrZXJEYXRhOiB7IHdvcmtlckltcG9ydGVyUG9ydCwgaW1wb3J0ZXJTaWduYWwgfSxcbiAgICAgIHRyYW5zZmVyTGlzdDogW3dvcmtlckltcG9ydGVyUG9ydF0sXG4gICAgfSk7XG5cbiAgICB3b3JrZXIub24oJ21lc3NhZ2UnLCAocmVzcG9uc2U6IFJlbmRlclJlc3BvbnNlTWVzc2FnZSkgPT4ge1xuICAgICAgY29uc3QgcmVxdWVzdCA9IHRoaXMucmVxdWVzdHMuZ2V0KHJlc3BvbnNlLmlkKTtcbiAgICAgIGlmICghcmVxdWVzdCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMucmVxdWVzdHMuZGVsZXRlKHJlc3BvbnNlLmlkKTtcbiAgICAgIHRoaXMuYXZhaWxhYmxlV29ya2Vycy5wdXNoKHJlcXVlc3Qud29ya2VySW5kZXgpO1xuXG4gICAgICBpZiAocmVzcG9uc2UucmVzdWx0KSB7XG4gICAgICAgIC8vIFRoZSByZXN1bHRzIGFyZSBleHBlY3RlZCB0byBiZSBOb2RlLmpzIGBCdWZmZXJgIG9iamVjdHMgYnV0IHdpbGwgZWFjaCBiZSB0cmFuc2ZlcnJlZCBhc1xuICAgICAgICAvLyBhIFVpbnQ4QXJyYXkgdGhhdCBkb2VzIG5vdCBoYXZlIHRoZSBleHBlY3RlZCBgdG9TdHJpbmdgIGJlaGF2aW9yIG9mIGEgYEJ1ZmZlcmAuXG4gICAgICAgIGNvbnN0IHsgY3NzLCBtYXAsIHN0YXRzIH0gPSByZXNwb25zZS5yZXN1bHQ7XG4gICAgICAgIGNvbnN0IHJlc3VsdDogQ29tcGlsZVJlc3VsdCA9IHtcbiAgICAgICAgICAvLyBUaGlzIGBCdWZmZXIuZnJvbWAgb3ZlcnJpZGUgd2lsbCB1c2UgdGhlIG1lbW9yeSBkaXJlY3RseSBhbmQgYXZvaWQgbWFraW5nIGEgY29weVxuICAgICAgICAgIGNzczogQnVmZmVyLmZyb20oY3NzLmJ1ZmZlciwgY3NzLmJ5dGVPZmZzZXQsIGNzcy5ieXRlTGVuZ3RoKSxcbiAgICAgICAgICBzdGF0cyxcbiAgICAgICAgfTtcbiAgICAgICAgaWYgKG1hcCkge1xuICAgICAgICAgIC8vIFRoaXMgYEJ1ZmZlci5mcm9tYCBvdmVycmlkZSB3aWxsIHVzZSB0aGUgbWVtb3J5IGRpcmVjdGx5IGFuZCBhdm9pZCBtYWtpbmcgYSBjb3B5XG4gICAgICAgICAgcmVzdWx0Lm1hcCA9IEJ1ZmZlci5mcm9tKG1hcC5idWZmZXIsIG1hcC5ieXRlT2Zmc2V0LCBtYXAuYnl0ZUxlbmd0aCk7XG4gICAgICAgIH1cbiAgICAgICAgcmVxdWVzdC5jYWxsYmFjayh1bmRlZmluZWQsIHJlc3VsdCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXF1ZXN0LmNhbGxiYWNrKHJlc3BvbnNlLmVycm9yKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIG1haW5JbXBvcnRlclBvcnQub24oXG4gICAgICAnbWVzc2FnZScsXG4gICAgICAoe1xuICAgICAgICBpZCxcbiAgICAgICAgdXJsLFxuICAgICAgICBwcmV2LFxuICAgICAgICBmcm9tSW1wb3J0LFxuICAgICAgfToge1xuICAgICAgICBpZDogbnVtYmVyO1xuICAgICAgICB1cmw6IHN0cmluZztcbiAgICAgICAgcHJldjogc3RyaW5nO1xuICAgICAgICBmcm9tSW1wb3J0OiBib29sZWFuO1xuICAgICAgfSkgPT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gdGhpcy5yZXF1ZXN0cy5nZXQoaWQpO1xuICAgICAgICBpZiAoIXJlcXVlc3Q/LmltcG9ydGVycykge1xuICAgICAgICAgIG1haW5JbXBvcnRlclBvcnQucG9zdE1lc3NhZ2UobnVsbCk7XG4gICAgICAgICAgQXRvbWljcy5zdG9yZShpbXBvcnRlclNpZ25hbCwgMCwgMSk7XG4gICAgICAgICAgQXRvbWljcy5ub3RpZnkoaW1wb3J0ZXJTaWduYWwsIDApO1xuXG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wcm9jZXNzSW1wb3J0ZXJzKHJlcXVlc3QuaW1wb3J0ZXJzLCB1cmwsIHByZXYsIGZyb21JbXBvcnQpXG4gICAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgbWFpbkltcG9ydGVyUG9ydC5wb3N0TWVzc2FnZShyZXN1bHQpO1xuICAgICAgICAgIH0pXG4gICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgbWFpbkltcG9ydGVyUG9ydC5wb3N0TWVzc2FnZShlcnJvcik7XG4gICAgICAgICAgfSlcbiAgICAgICAgICAuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgICBBdG9taWNzLnN0b3JlKGltcG9ydGVyU2lnbmFsLCAwLCAxKTtcbiAgICAgICAgICAgIEF0b21pY3Mubm90aWZ5KGltcG9ydGVyU2lnbmFsLCAwKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIG1haW5JbXBvcnRlclBvcnQudW5yZWYoKTtcblxuICAgIHJldHVybiB3b3JrZXI7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHByb2Nlc3NJbXBvcnRlcnMoXG4gICAgaW1wb3J0ZXJzOiBJdGVyYWJsZTxTeW5jSW1wb3J0ZXIgfCBBc3luY0ltcG9ydGVyPixcbiAgICB1cmw6IHN0cmluZyxcbiAgICBwcmV2OiBzdHJpbmcsXG4gICAgZnJvbUltcG9ydDogYm9vbGVhbixcbiAgKTogUHJvbWlzZTxJbXBvcnRlclJlc3VsdD4ge1xuICAgIGxldCByZXN1bHQgPSBudWxsO1xuICAgIGZvciAoY29uc3QgaW1wb3J0ZXIgb2YgaW1wb3J0ZXJzKSB7XG4gICAgICByZXN1bHQgPSBhd2FpdCBuZXcgUHJvbWlzZTxJbXBvcnRlclJlc3VsdD4oKHJlc29sdmUpID0+IHtcbiAgICAgICAgLy8gSW1wb3J0ZXJzIGNhbiBiZSBib3RoIHN5bmMgYW5kIGFzeW5jXG4gICAgICAgIGNvbnN0IGlubmVyUmVzdWx0ID0gKGltcG9ydGVyIGFzIEFzeW5jSW1wb3J0ZXIpLmNhbGwoXG4gICAgICAgICAgeyBmcm9tSW1wb3J0IH0gYXMgSW1wb3J0ZXJUaGlzLFxuICAgICAgICAgIHVybCxcbiAgICAgICAgICBwcmV2LFxuICAgICAgICAgIHJlc29sdmUsXG4gICAgICAgICk7XG4gICAgICAgIGlmIChpbm5lclJlc3VsdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgcmVzb2x2ZShpbm5lclJlc3VsdCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVJlcXVlc3QoXG4gICAgd29ya2VySW5kZXg6IG51bWJlcixcbiAgICBjYWxsYmFjazogUmVuZGVyQ2FsbGJhY2ssXG4gICAgaW1wb3J0ZXI6IFN5bmNJbXBvcnRlciB8IEFzeW5jSW1wb3J0ZXIgfCAoU3luY0ltcG9ydGVyIHwgQXN5bmNJbXBvcnRlcilbXSB8IHVuZGVmaW5lZCxcbiAgKTogUmVuZGVyUmVxdWVzdCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiB0aGlzLmlkQ291bnRlcisrLFxuICAgICAgd29ya2VySW5kZXgsXG4gICAgICBjYWxsYmFjayxcbiAgICAgIGltcG9ydGVyczogIWltcG9ydGVyIHx8IEFycmF5LmlzQXJyYXkoaW1wb3J0ZXIpID8gaW1wb3J0ZXIgOiBbaW1wb3J0ZXJdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -6,7 +6,7 @@
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
8
  import { CompileResult, FileImporter, StringOptionsWithImporter, StringOptionsWithoutImporter } from 'sass';
9
- declare type FileImporterOptions = Parameters<FileImporter['findFileUrl']>[1];
9
+ type FileImporterOptions = Parameters<FileImporter['findFileUrl']>[1];
10
10
  export interface FileImporterWithRequestContextOptions extends FileImporterOptions {
11
11
  /**
12
12
  * This is a custom option and is required as SASS does not provide context from which the file is being resolved.
@@ -114,7 +114,7 @@ class SassWorkerImplementation {
114
114
  try {
115
115
  void worker.terminate();
116
116
  }
117
- catch { }
117
+ catch (_a) { }
118
118
  }
119
119
  this.requests.clear();
120
120
  }
@@ -214,3 +214,4 @@ class SassWorkerImplementation {
214
214
  }
215
215
  }
216
216
  exports.SassWorkerImplementation = SassWorkerImplementation;
217
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Fzcy1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhcl9kZXZraXQvYnVpbGRfYW5ndWxhci9zcmMvc2Fzcy9zYXNzLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgseUNBQTBDO0FBQzFDLHVDQUF3RDtBQUN4RCw2REFBNkQ7QUFXN0Qsc0VBQTBEO0FBRTFEOztHQUVHO0FBQ0gsTUFBTSxrQkFBa0IsR0FBRyxnQ0FBVSxDQUFDO0FBdUR0Qzs7Ozs7R0FLRztBQUNILE1BQWEsd0JBQXdCO0lBUW5DLFlBQW9CLFNBQVMsS0FBSztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFQakIsWUFBTyxHQUFhLEVBQUUsQ0FBQztRQUN2QixxQkFBZ0IsR0FBYSxFQUFFLENBQUM7UUFDaEMsYUFBUSxHQUFHLElBQUksR0FBRyxFQUF5QixDQUFDO1FBQzVDLGVBQVUsR0FBRyxJQUFBLGdCQUFJLEVBQUMsU0FBUyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ3JELGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxvQkFBZSxHQUFHLENBQUMsQ0FBQztJQUVTLENBQUM7SUFFdEM7OztPQUdHO0lBQ0gsSUFBSSxJQUFJO1FBQ04sT0FBTyxtQkFBbUIsQ0FBQztJQUM3QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxhQUFhO1FBQ1gsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGtCQUFrQixDQUNoQixNQUFjLEVBQ2QsT0FBbUY7UUFFbkYsd0dBQXdHO1FBQ3hHLDZGQUE2RjtRQUM3RixNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLEdBQUcsbUJBQW1CLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFFOUUsOEZBQThGO1FBQzlGLElB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VyxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUN4RCxJQUFJLE1BQU0sRUFBRTtnQkFDVixPQUFPLElBQUEsd0JBQWEsRUFBQyxNQUFNLENBQUMsQ0FBQzthQUM5QjtTQUNGO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8sYUFBYSxDQUNuQixXQUFtQixFQUNuQixRQUF3QixFQUN4QixNQUEwQixFQUMxQixTQUFrQztRQUVsQyxPQUFPO1lBQ0wsRUFBRSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDcEIsV0FBVztZQUNYLFFBQVE7WUFDUixNQUFNO1lBQ04sU0FBUztTQUNWLENBQUM7SUFDSixDQUFDO0lBRU8sVUFBVSxDQUFDLEtBQWdCO1FBQ2pDLE9BQU8sY0FBYyxJQUFJLEtBQUssSUFBSSxNQUFNLElBQUksS0FBSyxDQUFDO0lBQ3BELENBQUM7Q0FDRjtBQXJPRCw0REFxT0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHsgZGlybmFtZSwgam9pbiB9IGZyb20gJ25vZGU6cGF0aCc7XG5pbXBvcnQgeyBmaWxlVVJMVG9QYXRoLCBwYXRoVG9GaWxlVVJMIH0gZnJvbSAnbm9kZTp1cmwnO1xuaW1wb3J0IHsgTWVzc2FnZUNoYW5uZWwsIFdvcmtlciB9IGZyb20gJ25vZGU6d29ya2VyX3RocmVhZHMnO1xuaW1wb3J0IHtcbiAgQ29tcGlsZVJlc3VsdCxcbiAgRXhjZXB0aW9uLFxuICBGaWxlSW1wb3J0ZXIsXG4gIEltcG9ydGVyLFxuICBMb2dnZXIsXG4gIFNvdXJjZVNwYW4sXG4gIFN0cmluZ09wdGlvbnNXaXRoSW1wb3J0ZXIsXG4gIFN0cmluZ09wdGlvbnNXaXRob3V0SW1wb3J0ZXIsXG59IGZyb20gJ3Nhc3MnO1xuaW1wb3J0IHsgbWF4V29ya2VycyB9IGZyb20gJy4uL3V0aWxzL2Vudmlyb25tZW50LW9wdGlvbnMnO1xuXG4vKipcbiAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBXb3JrZXJzIHRoYXQgd2lsbCBiZSBjcmVhdGVkIHRvIGV4ZWN1dGUgcmVuZGVyIHJlcXVlc3RzLlxuICovXG5jb25zdCBNQVhfUkVOREVSX1dPUktFUlMgPSBtYXhXb3JrZXJzO1xuXG4vKipcbiAqIFRoZSBjYWxsYmFjayB0eXBlIGZvciB0aGUgYGRhcnQtc2Fzc2AgYXN5bmNocm9ub3VzIHJlbmRlciBmdW5jdGlvbi5cbiAqL1xudHlwZSBSZW5kZXJDYWxsYmFjayA9IChlcnJvcj86IEV4Y2VwdGlvbiwgcmVzdWx0PzogQ29tcGlsZVJlc3VsdCkgPT4gdm9pZDtcblxudHlwZSBGaWxlSW1wb3J0ZXJPcHRpb25zID0gUGFyYW1ldGVyczxGaWxlSW1wb3J0ZXJbJ2ZpbmRGaWxlVXJsJ10+WzFdO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZpbGVJbXBvcnRlcldpdGhSZXF1ZXN0Q29udGV4dE9wdGlvbnMgZXh0ZW5kcyBGaWxlSW1wb3J0ZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoaXMgaXMgYSBjdXN0b20gb3B0aW9uIGFuZCBpcyByZXF1aXJlZCBhcyBTQVNTIGRvZXMgbm90IHByb3ZpZGUgY29udGV4dCBmcm9tIHdoaWNoIHRoZSBmaWxlIGlzIGJlaW5nIHJlc29sdmVkLlxuICAgKiBUaGlzIGJyZWFrcyBZYXJuIFBOUCBhcyB0cmFuc2l0aXZlIGRlcHMgY2Fubm90IGJlIHJlc29sdmVkIGZyb20gdGhlIHdvcmtzcGFjZSByb290LlxuICAgKlxuICAgKiBXb3JrYXJvdW5kIHVudGlsIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzMyNDcgaXMgYWRkcmVzc2VkLlxuICAgKi9cbiAgcHJldmlvdXNSZXNvbHZlZE1vZHVsZXM/OiBTZXQ8c3RyaW5nPjtcbn1cblxuLyoqXG4gKiBBbiBvYmplY3QgY29udGFpbmluZyB0aGUgY29udGV4dHVhbCBpbmZvcm1hdGlvbiBmb3IgYSBzcGVjaWZpYyByZW5kZXIgcmVxdWVzdC5cbiAqL1xuaW50ZXJmYWNlIFJlbmRlclJlcXVlc3Qge1xuICBpZDogbnVtYmVyO1xuICB3b3JrZXJJbmRleDogbnVtYmVyO1xuICBjYWxsYmFjazogUmVuZGVyQ2FsbGJhY2s7XG4gIGxvZ2dlcj86IExvZ2dlcjtcbiAgaW1wb3J0ZXJzPzogSW1wb3J0ZXJzW107XG4gIHByZXZpb3VzUmVzb2x2ZWRNb2R1bGVzPzogU2V0PHN0cmluZz47XG59XG5cbi8qKlxuICogQWxsIGF2YWlsYWJsZSBpbXBvcnRlciB0eXBlcy5cbiAqL1xudHlwZSBJbXBvcnRlcnMgPVxuICB8IEltcG9ydGVyPCdzeW5jJz5cbiAgfCBJbXBvcnRlcjwnYXN5bmMnPlxuICB8IEZpbGVJbXBvcnRlcjwnc3luYyc+XG4gIHwgRmlsZUltcG9ydGVyPCdhc3luYyc+O1xuXG4vKipcbiAqIEEgcmVzcG9uc2UgZnJvbSB0aGUgU2FzcyByZW5kZXIgV29ya2VyIGNvbnRhaW5pbmcgdGhlIHJlc3VsdCBvZiB0aGUgb3BlcmF0aW9uLlxuICovXG5pbnRlcmZhY2UgUmVuZGVyUmVzcG9uc2VNZXNzYWdlIHtcbiAgaWQ6IG51bWJlcjtcbiAgZXJyb3I/OiBFeGNlcHRpb247XG4gIHJlc3VsdD86IE9taXQ8Q29tcGlsZVJlc3VsdCwgJ2xvYWRlZFVybHMnPiAmIHsgbG9hZGVkVXJsczogc3RyaW5nW10gfTtcbiAgd2FybmluZ3M/OiB7XG4gICAgbWVzc2FnZTogc3RyaW5nO1xuICAgIGRlcHJlY2F0aW9uOiBib29sZWFuO1xuICAgIHN0YWNrPzogc3RyaW5nO1xuICAgIHNwYW4/OiBPbWl0PFNvdXJjZVNwYW4sICd1cmwnPiAmIHsgdXJsPzogc3RyaW5nIH07XG4gIH1bXTtcbn1cblxuLyoqXG4gKiBBIFNhc3MgcmVuZGVyZXIgaW1wbGVtZW50YXRpb24gdGhhdCBwcm92aWRlcyBhbiBpbnRlcmZhY2UgdGhhdCBjYW4gYmUgdXNlZCBieSBXZWJwYWNrJ3NcbiAqIGBzYXNzLWxvYWRlcmAuIFRoZSBpbXBsZW1lbnRhdGlvbiB1c2VzIGEgV29ya2VyIHRocmVhZCB0byBwZXJmb3JtIHRoZSBTYXNzIHJlbmRlcmluZ1xuICogd2l0aCB0aGUgYGRhcnQtc2Fzc2AgcGFja2FnZS4gIFRoZSBgZGFydC1zYXNzYCBzeW5jaHJvbm91cyByZW5kZXIgZnVuY3Rpb24gaXMgdXNlZCB3aXRoaW5cbiAqIHRoZSB3b3JrZXIgd2hpY2ggY2FuIGJlIHVwIHRvIHR3byB0aW1lcyBmYXN0ZXIgdGhhbiB0aGUgYXN5bmNocm9ub3VzIHZhcmlhbnQuXG4gKi9cbmV4cG9ydCBjbGFzcyBTYXNzV29ya2VySW1wbGVtZW50YXRpb24ge1xuICBwcml2YXRlIHJlYWRvbmx5IHdvcmtlcnM6IFdvcmtlcltdID0gW107XG4gIHByaXZhdGUgcmVhZG9ubHkgYXZhaWxhYmxlV29ya2VyczogbnVtYmVyW10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSByZXF1ZXN0cyA9IG5ldyBNYXA8bnVtYmVyLCBSZW5kZXJSZXF1ZXN0PigpO1xuICBwcml2YXRlIHJlYWRvbmx5IHdvcmtlclBhdGggPSBqb2luKF9fZGlybmFtZSwgJy4vd29ya2VyLmpzJyk7XG4gIHByaXZhdGUgaWRDb3VudGVyID0gMTtcbiAgcHJpdmF0ZSBuZXh0V29ya2VySW5kZXggPSAwO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmViYXNlID0gZmFsc2UpIHt9XG5cbiAgLyoqXG4gICAqIFByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IHRoZSBTYXNzIGltcGxlbWVudGF0aW9uLlxuICAgKiBUaGlzIG1pbWljcyBlbm91Z2ggb2YgdGhlIGBkYXJ0LXNhc3NgIHZhbHVlIHRvIGJlIHVzZWQgd2l0aCB0aGUgYHNhc3MtbG9hZGVyYC5cbiAgICovXG4gIGdldCBpbmZvKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdkYXJ0LXNhc3NcXHR3b3JrZXInO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzeW5jaHJvbm91cyByZW5kZXIgZnVuY3Rpb24gaXMgbm90IHVzZWQgYnkgdGhlIGBzYXNzLWxvYWRlcmAuXG4gICAqL1xuICBjb21waWxlU3RyaW5nKCk6IG5ldmVyIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1Nhc3MgY29tcGlsZVN0cmluZyBpcyBub3Qgc3VwcG9ydGVkLicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFzeW5jaHJvbm91c2x5IHJlcXVlc3QgYSBTYXNzIHN0eWxlc2hlZXQgdG8gYmUgcmVuZGVyZXJlZC5cbiAgICpcbiAgICogQHBhcmFtIHNvdXJjZSBUaGUgY29udGVudHMgdG8gY29tcGlsZS5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIGBkYXJ0LXNhc3NgIG9wdGlvbnMgdG8gdXNlIHdoZW4gcmVuZGVyaW5nIHRoZSBzdHlsZXNoZWV0LlxuICAgKi9cbiAgY29tcGlsZVN0cmluZ0FzeW5jKFxuICAgIHNvdXJjZTogc3RyaW5nLFxuICAgIG9wdGlvbnM6IFN0cmluZ09wdGlvbnNXaXRoSW1wb3J0ZXI8J2FzeW5jJz4gfCBTdHJpbmdPcHRpb25zV2l0aG91dEltcG9ydGVyPCdhc3luYyc+LFxuICApOiBQcm9taXNlPENvbXBpbGVSZXN1bHQ+IHtcbiAgICAvLyBUaGUgYGZ1bmN0aW9uc2AsIGBsb2dnZXJgIGFuZCBgaW1wb3J0ZXJgIG9wdGlvbnMgYXJlIEphdmFTY3JpcHQgZnVuY3Rpb25zIHRoYXQgY2Fubm90IGJlIHRyYW5zZmVycmVkLlxuICAgIC8vIElmIGFueSBhZGRpdGlvbmFsIGZ1bmN0aW9uIG9wdGlvbnMgYXJlIGFkZGVkIGluIHRoZSBmdXR1cmUsIHRoZXkgbXVzdCBiZSBleGNsdWRlZCBhcyB3ZWxsLlxuICAgIGNvbnN0IHsgZnVuY3Rpb25zLCBpbXBvcnRlcnMsIHVybCwgbG9nZ2VyLCAuLi5zZXJpYWxpemFibGVPcHRpb25zIH0gPSBvcHRpb25zO1xuXG4gICAgLy8gVGhlIENMSSdzIGNvbmZpZ3VyYXRpb24gZG9lcyBub3QgdXNlIG9yIGV4cG9zZSB0aGUgYWJpbGl0eSB0byBkZWZpbmVkIGN1c3RvbSBTYXNzIGZ1bmN0aW9uc1xuICAgIGlmIChmdW5jdGlvbnMgJiYgT2JqZWN0LmtleXMoZnVuY3Rpb25zKS5sZW5ndGggPiAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Nhc3MgY3VzdG9tIGZ1bmN0aW9ucyBhcmUgbm90IHN1cHBvcnRlZC4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IFByb21pc2U8Q29tcGlsZVJlc3VsdD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgbGV0IHdvcmtlckluZGV4ID0gdGhpcy5hdmFpbGFibGVXb3JrZXJzLnBvcCgpO1xuICAgICAgaWYgKHdvcmtlckluZGV4ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgaWYgKHRoaXMud29ya2Vycy5sZW5ndGggPCBNQVhfUkVOREVSX1dPUktFUlMpIHtcbiAgICAgICAgICB3b3JrZXJJbmRleCA9IHRoaXMud29ya2Vycy5sZW5ndGg7XG4gICAgICAgICAgdGhpcy53b3JrZXJzLnB1c2godGhpcy5jcmVhdGVXb3JrZXIoKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgd29ya2VySW5kZXggPSB0aGlzLm5leHRXb3JrZXJJbmRleCsrO1xuICAgICAgICAgIGlmICh0aGlzLm5leHRXb3JrZXJJbmRleCA+PSB0aGlzLndvcmtlcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLm5leHRXb3JrZXJJbmRleCA9IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGNhbGxiYWNrOiBSZW5kZXJDYWxsYmFjayA9IChlcnJvciwgcmVzdWx0KSA9PiB7XG4gICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgIGNvbnN0IHVybCA9IGVycm9yLnNwYW4/LnVybCBhcyBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgICAgICAgaWYgKHVybCkge1xuICAgICAgICAgICAgZXJyb3Iuc3Bhbi51cmwgPSBwYXRoVG9GaWxlVVJMKHVybCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmVqZWN0KGVycm9yKTtcblxuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcignTm8gcmVzdWx0LicpKTtcblxuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlc29sdmUocmVzdWx0KTtcbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IHJlcXVlc3QgPSB0aGlzLmNyZWF0ZVJlcXVlc3Qod29ya2VySW5kZXgsIGNhbGxiYWNrLCBsb2dnZXIsIGltcG9ydGVycyk7XG4gICAgICB0aGlzLnJlcXVlc3RzLnNldChyZXF1ZXN0LmlkLCByZXF1ZXN0KTtcblxuICAgICAgdGhpcy53b3JrZXJzW3dvcmtlckluZGV4XS5wb3N0TWVzc2FnZSh7XG4gICAgICAgIGlkOiByZXF1ZXN0LmlkLFxuICAgICAgICBzb3VyY2UsXG4gICAgICAgIGhhc0ltcG9ydGVyOiAhIWltcG9ydGVycz8ubGVuZ3RoLFxuICAgICAgICBoYXNMb2dnZXI6ICEhbG9nZ2VyLFxuICAgICAgICByZWJhc2U6IHRoaXMucmViYXNlLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgLi4uc2VyaWFsaXphYmxlT3B0aW9ucyxcbiAgICAgICAgICAvLyBVUkwgaXMgbm90IHNlcmlhbGl6YWJsZSBzbyB0byBjb252ZXJ0IHRvIHN0cmluZyBoZXJlIGFuZCBiYWNrIHRvIFVSTCBpbiB0aGUgd29ya2VyLlxuICAgICAgICAgIHVybDogdXJsID8gZmlsZVVSTFRvUGF0aCh1cmwpIDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2h1dGRvd24gdGhlIFNhc3MgcmVuZGVyIHdvcmtlci5cbiAgICogRXhlY3V0aW5nIHRoaXMgbWV0aG9kIHdpbGwgc3RvcCBhbnkgcGVuZGluZyByZW5kZXIgcmVxdWVzdHMuXG4gICAqL1xuICBjbG9zZSgpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHdvcmtlciBvZiB0aGlzLndvcmtlcnMpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHZvaWQgd29ya2VyLnRlcm1pbmF0ZSgpO1xuICAgICAgfSBjYXRjaCB7fVxuICAgIH1cbiAgICB0aGlzLnJlcXVlc3RzLmNsZWFyKCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVdvcmtlcigpOiBXb3JrZXIge1xuICAgIGNvbnN0IHsgcG9ydDE6IG1haW5JbXBvcnRlclBvcnQsIHBvcnQyOiB3b3JrZXJJbXBvcnRlclBvcnQgfSA9IG5ldyBNZXNzYWdlQ2hhbm5lbCgpO1xuICAgIGNvbnN0IGltcG9ydGVyU2lnbmFsID0gbmV3IEludDMyQXJyYXkobmV3IFNoYXJlZEFycmF5QnVmZmVyKDQpKTtcblxuICAgIGNvbnN0IHdvcmtlciA9IG5ldyBXb3JrZXIodGhpcy53b3JrZXJQYXRoLCB7XG4gICAgICB3b3JrZXJEYXRhOiB7IHdvcmtlckltcG9ydGVyUG9ydCwgaW1wb3J0ZXJTaWduYWwgfSxcbiAgICAgIHRyYW5zZmVyTGlzdDogW3dvcmtlckltcG9ydGVyUG9ydF0sXG4gICAgfSk7XG5cbiAgICB3b3JrZXIub24oJ21lc3NhZ2UnLCAocmVzcG9uc2U6IFJlbmRlclJlc3BvbnNlTWVzc2FnZSkgPT4ge1xuICAgICAgY29uc3QgcmVxdWVzdCA9IHRoaXMucmVxdWVzdHMuZ2V0KHJlc3BvbnNlLmlkKTtcbiAgICAgIGlmICghcmVxdWVzdCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMucmVxdWVzdHMuZGVsZXRlKHJlc3BvbnNlLmlkKTtcbiAgICAgIHRoaXMuYXZhaWxhYmxlV29ya2Vycy5wdXNoKHJlcXVlc3Qud29ya2VySW5kZXgpO1xuXG4gICAgICBpZiAocmVzcG9uc2Uud2FybmluZ3MgJiYgcmVxdWVzdC5sb2dnZXI/Lndhcm4pIHtcbiAgICAgICAgZm9yIChjb25zdCB7IG1lc3NhZ2UsIHNwYW4sIC4uLm9wdGlvbnMgfSBvZiByZXNwb25zZS53YXJuaW5ncykge1xuICAgICAgICAgIHJlcXVlc3QubG9nZ2VyLndhcm4obWVzc2FnZSwge1xuICAgICAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgICAgIHNwYW46IHNwYW4gJiYge1xuICAgICAgICAgICAgICAuLi5zcGFuLFxuICAgICAgICAgICAgICB1cmw6IHNwYW4udXJsID8gcGF0aFRvRmlsZVVSTChzcGFuLnVybCkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChyZXNwb25zZS5yZXN1bHQpIHtcbiAgICAgICAgcmVxdWVzdC5jYWxsYmFjayh1bmRlZmluZWQsIHtcbiAgICAgICAgICAuLi5yZXNwb25zZS5yZXN1bHQsXG4gICAgICAgICAgLy8gVVJMIGlzIG5vdCBzZXJpYWxpemFibGUgc28gaW4gdGhlIHdvcmtlciB3ZSBjb252ZXJ0IHRvIHN0cmluZyBhbmQgaGVyZSBiYWNrIHRvIFVSTC5cbiAgICAgICAgICBsb2FkZWRVcmxzOiByZXNwb25zZS5yZXN1bHQubG9hZGVkVXJscy5tYXAoKHApID0+IHBhdGhUb0ZpbGVVUkwocCkpLFxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlcXVlc3QuY2FsbGJhY2socmVzcG9uc2UuZXJyb3IpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgbWFpbkltcG9ydGVyUG9ydC5vbihcbiAgICAgICdtZXNzYWdlJyxcbiAgICAgICh7IGlkLCB1cmwsIG9wdGlvbnMgfTogeyBpZDogbnVtYmVyOyB1cmw6IHN0cmluZzsgb3B0aW9uczogRmlsZUltcG9ydGVyT3B0aW9ucyB9KSA9PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSB0aGlzLnJlcXVlc3RzLmdldChpZCk7XG4gICAgICAgIGlmICghcmVxdWVzdD8uaW1wb3J0ZXJzKSB7XG4gICAgICAgICAgbWFpbkltcG9ydGVyUG9ydC5wb3N0TWVzc2FnZShudWxsKTtcbiAgICAgICAgICBBdG9taWNzLnN0b3JlKGltcG9ydGVyU2lnbmFsLCAwLCAxKTtcbiAgICAgICAgICBBdG9taWNzLm5vdGlmeShpbXBvcnRlclNpZ25hbCwgMCk7XG5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnByb2Nlc3NJbXBvcnRlcnMocmVxdWVzdC5pbXBvcnRlcnMsIHVybCwge1xuICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgICAgcHJldmlvdXNSZXNvbHZlZE1vZHVsZXM6IHJlcXVlc3QucHJldmlvdXNSZXNvbHZlZE1vZHVsZXMsXG4gICAgICAgIH0pXG4gICAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICAgICAgICByZXF1ZXN0LnByZXZpb3VzUmVzb2x2ZWRNb2R1bGVzID8/PSBuZXcgU2V0KCk7XG4gICAgICAgICAgICAgIHJlcXVlc3QucHJldmlvdXNSZXNvbHZlZE1vZHVsZXMuYWRkKGRpcm5hbWUocmVzdWx0KSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIG1haW5JbXBvcnRlclBvcnQucG9zdE1lc3NhZ2UocmVzdWx0KTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICAgIG1haW5JbXBvcnRlclBvcnQucG9zdE1lc3NhZ2UoZXJyb3IpO1xuICAgICAgICAgIH0pXG4gICAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgICAgQXRvbWljcy5zdG9yZShpbXBvcnRlclNpZ25hbCwgMCwgMSk7XG4gICAgICAgICAgICBBdG9taWNzLm5vdGlmeShpbXBvcnRlclNpZ25hbCwgMCk7XG4gICAgICAgICAgfSk7XG4gICAgICB9LFxuICAgICk7XG5cbiAgICBtYWluSW1wb3J0ZXJQb3J0LnVucmVmKCk7XG5cbiAgICByZXR1cm4gd29ya2VyO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBwcm9jZXNzSW1wb3J0ZXJzKFxuICAgIGltcG9ydGVyczogSXRlcmFibGU8SW1wb3J0ZXJzPixcbiAgICB1cmw6IHN0cmluZyxcbiAgICBvcHRpb25zOiBGaWxlSW1wb3J0ZXJXaXRoUmVxdWVzdENvbnRleHRPcHRpb25zLFxuICApOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICBmb3IgKGNvbnN0IGltcG9ydGVyIG9mIGltcG9ydGVycykge1xuICAgICAgaWYgKHRoaXMuaXNJbXBvcnRlcihpbXBvcnRlcikpIHtcbiAgICAgICAgLy8gSW1wb3J0ZXJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdPbmx5IEZpbGUgSW1wb3J0ZXJzIGFyZSBzdXBwb3J0ZWQuJyk7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpbGUgaW1wb3J0ZXIgKENhbiBiZSBzeW5jIG9yIGF5bmMpLlxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgaW1wb3J0ZXIuZmluZEZpbGVVcmwodXJsLCBvcHRpb25zKTtcbiAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgcmV0dXJuIGZpbGVVUkxUb1BhdGgocmVzdWx0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlUmVxdWVzdChcbiAgICB3b3JrZXJJbmRleDogbnVtYmVyLFxuICAgIGNhbGxiYWNrOiBSZW5kZXJDYWxsYmFjayxcbiAgICBsb2dnZXI6IExvZ2dlciB8IHVuZGVmaW5lZCxcbiAgICBpbXBvcnRlcnM6IEltcG9ydGVyc1tdIHwgdW5kZWZpbmVkLFxuICApOiBSZW5kZXJSZXF1ZXN0IHtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IHRoaXMuaWRDb3VudGVyKyssXG4gICAgICB3b3JrZXJJbmRleCxcbiAgICAgIGNhbGxiYWNrLFxuICAgICAgbG9nZ2VyLFxuICAgICAgaW1wb3J0ZXJzLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGlzSW1wb3J0ZXIodmFsdWU6IEltcG9ydGVycyk6IHZhbHVlIGlzIEltcG9ydGVyIHtcbiAgICByZXR1cm4gJ2Nhbm9uaWNhbGl6ZScgaW4gdmFsdWUgJiYgJ2xvYWQnIGluIHZhbHVlO1xuICB9XG59XG4iXX0=
File without changes
@@ -42,3 +42,4 @@ worker_threads_1.parentPort.on('message', ({ id, hasImporter, options }) => {
42
42
  worker_threads_1.parentPort === null || worker_threads_1.parentPort === void 0 ? void 0 : worker_threads_1.parentPort.postMessage({ id, error: { formatted, file, line, column, message, stack } });
43
43
  }
44
44
  });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2VyLWxlZ2FjeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL3Nhc3Mvd29ya2VyLWxlZ2FjeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOztBQUVILCtCQUE0RTtBQUM1RSxtREFBMkY7QUFxQjNGLElBQUksQ0FBQywyQkFBVSxJQUFJLENBQUMsMkJBQVUsRUFBRTtJQUM5QixNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7Q0FDOUQ7QUFFRCw4RUFBOEU7QUFDOUUsTUFBTSxFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxHQUFHLDJCQUc5QyxDQUFDO0FBRUYsMkJBQVUsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBd0IsRUFBRSxFQUFFO0lBQzlFLElBQUk7UUFDRixJQUFJLFdBQVcsRUFBRTtZQUNmLG1GQUFtRjtZQUNuRixvREFBb0Q7WUFDcEQsb0ZBQW9GO1lBQ3BGLDJFQUEyRTtZQUMzRSwyRUFBMkU7WUFDM0UsT0FBTyxDQUFDLFFBQVEsR0FBRyxVQUFVLEdBQUcsRUFBRSxJQUFJOztnQkFDcEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNwQyxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsSUFBSSxDQUFDO2dCQUM1QixrQkFBa0IsQ0FBQyxXQUFXLENBQUMsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO2dCQUM5RCxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBRW5DLE9BQU8sTUFBQSxJQUFBLHFDQUFvQixFQUFDLGtCQUFrQixDQUFDLDBDQUFFLE9BQXlCLENBQUM7WUFDN0UsQ0FBQyxDQUFDO1NBQ0g7UUFFRCw0RkFBNEY7UUFDNUYsTUFBTSxNQUFNLEdBQUcsSUFBQSxpQkFBVSxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRW5DLDJCQUFVLGFBQVYsMkJBQVUsdUJBQVYsMkJBQVUsQ0FBRSxXQUFXLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUN4Qyw4REFBOEQ7S0FDL0Q7SUFBQyxPQUFPLEtBQVUsRUFBRTtRQUNuQiwrRkFBK0Y7UUFDL0YsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBQ2hFLDJCQUFVLGFBQVYsMkJBQVUsdUJBQVYsMkJBQVUsQ0FBRSxXQUFXLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7S0FDM0Y7QUFDSCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgeyBJbXBvcnRlclJlc3VsdCwgTGVnYWN5T3B0aW9ucyBhcyBPcHRpb25zLCByZW5kZXJTeW5jIH0gZnJvbSAnc2Fzcyc7XG5pbXBvcnQgeyBNZXNzYWdlUG9ydCwgcGFyZW50UG9ydCwgcmVjZWl2ZU1lc3NhZ2VPblBvcnQsIHdvcmtlckRhdGEgfSBmcm9tICd3b3JrZXJfdGhyZWFkcyc7XG5cbi8qKlxuICogQSByZXF1ZXN0IHRvIHJlbmRlciBhIFNhc3Mgc3R5bGVzaGVldCB1c2luZyB0aGUgc3VwcGxpZWQgb3B0aW9ucy5cbiAqL1xuaW50ZXJmYWNlIFJlbmRlclJlcXVlc3RNZXNzYWdlIHtcbiAgLyoqXG4gICAqIFRoZSB1bmlxdWUgcmVxdWVzdCBpZGVudGlmaWVyIHRoYXQgbGlua3MgdGhlIHJlbmRlciBhY3Rpb24gd2l0aCBhIGNhbGxiYWNrIGFuZCBvcHRpb25hbFxuICAgKiBpbXBvcnRlciBvbiB0aGUgbWFpbiB0aHJlYWQuXG4gICAqL1xuICBpZDogbnVtYmVyO1xuICAvKipcbiAgICogVGhlIFNhc3Mgb3B0aW9ucyB0byBwcm92aWRlIHRvIHRoZSBgZGFydC1zYXNzYCByZW5kZXIgZnVuY3Rpb24uXG4gICAqL1xuICBvcHRpb25zOiBPcHRpb25zPCdzeW5jJz47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhlIHJlcXVlc3QgaGFzIGEgY3VzdG9tIGltcG9ydGVyIGZ1bmN0aW9uIG9uIHRoZSBtYWluIHRocmVhZC5cbiAgICovXG4gIGhhc0ltcG9ydGVyOiBib29sZWFuO1xufVxuXG5pZiAoIXBhcmVudFBvcnQgfHwgIXdvcmtlckRhdGEpIHtcbiAgdGhyb3cgbmV3IEVycm9yKCdTYXNzIHdvcmtlciBtdXN0IGJlIGV4ZWN1dGVkIGFzIGEgV29ya2VyLicpO1xufVxuXG4vLyBUaGUgaW1wb3J0ZXIgdmFyaWFibGVzIGFyZSB1c2VkIHRvIHByb3h5IGltcG9ydCByZXF1ZXN0cyB0byB0aGUgbWFpbiB0aHJlYWRcbmNvbnN0IHsgd29ya2VySW1wb3J0ZXJQb3J0LCBpbXBvcnRlclNpZ25hbCB9ID0gd29ya2VyRGF0YSBhcyB7XG4gIHdvcmtlckltcG9ydGVyUG9ydDogTWVzc2FnZVBvcnQ7XG4gIGltcG9ydGVyU2lnbmFsOiBJbnQzMkFycmF5O1xufTtcblxucGFyZW50UG9ydC5vbignbWVzc2FnZScsICh7IGlkLCBoYXNJbXBvcnRlciwgb3B0aW9ucyB9OiBSZW5kZXJSZXF1ZXN0TWVzc2FnZSkgPT4ge1xuICB0cnkge1xuICAgIGlmIChoYXNJbXBvcnRlcikge1xuICAgICAgLy8gV2hlbiBhIGN1c3RvbSBpbXBvcnRlciBmdW5jdGlvbiBpcyBwcmVzZW50LCB0aGUgaW1wb3J0ZXIgcmVxdWVzdCBtdXN0IGJlIHByb3hpZWRcbiAgICAgIC8vIGJhY2sgdG8gdGhlIG1haW4gdGhyZWFkIHdoZXJlIGl0IGNhbiBiZSBleGVjdXRlZC5cbiAgICAgIC8vIFRoaXMgcHJvY2VzcyBtdXN0IGJlIHN5bmNocm9ub3VzIGZyb20gdGhlIHBlcnNwZWN0aXZlIG9mIGRhcnQtc2Fzcy4gVGhlIGBBdG9taWNzYFxuICAgICAgLy8gZnVuY3Rpb25zIGNvbWJpbmVkIHdpdGggdGhlIHNoYXJlZCBtZW1vcnkgYGltcG9ydFNpZ25hbGAgYW5kIHRoZSBOb2RlLmpzXG4gICAgICAvLyBgcmVjZWl2ZU1lc3NhZ2VPblBvcnRgIGZ1bmN0aW9uIGFyZSB1c2VkIHRvIGVuc3VyZSBzeW5jaHJvbm91cyBiZWhhdmlvci5cbiAgICAgIG9wdGlvbnMuaW1wb3J0ZXIgPSBmdW5jdGlvbiAodXJsLCBwcmV2KSB7XG4gICAgICAgIEF0b21pY3Muc3RvcmUoaW1wb3J0ZXJTaWduYWwsIDAsIDApO1xuICAgICAgICBjb25zdCB7IGZyb21JbXBvcnQgfSA9IHRoaXM7XG4gICAgICAgIHdvcmtlckltcG9ydGVyUG9ydC5wb3N0TWVzc2FnZSh7IGlkLCB1cmwsIHByZXYsIGZyb21JbXBvcnQgfSk7XG4gICAgICAgIEF0b21pY3Mud2FpdChpbXBvcnRlclNpZ25hbCwgMCwgMCk7XG5cbiAgICAgICAgcmV0dXJuIHJlY2VpdmVNZXNzYWdlT25Qb3J0KHdvcmtlckltcG9ydGVyUG9ydCk/Lm1lc3NhZ2UgYXMgSW1wb3J0ZXJSZXN1bHQ7XG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIFRoZSBzeW5jaHJvbm91cyBTYXNzIHJlbmRlciBmdW5jdGlvbiBjYW4gYmUgdXAgdG8gdHdvIHRpbWVzIGZhc3RlciB0aGFuIHRoZSBhc3luYyB2YXJpYW50XG4gICAgY29uc3QgcmVzdWx0ID0gcmVuZGVyU3luYyhvcHRpb25zKTtcblxuICAgIHBhcmVudFBvcnQ/LnBvc3RNZXNzYWdlKHsgaWQsIHJlc3VsdCB9KTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgLy8gTmVlZGVkIGJlY2F1c2UgVjggd2lsbCBvbmx5IHNlcmlhbGl6ZSB0aGUgbWVzc2FnZSBhbmQgc3RhY2sgcHJvcGVydGllcyBvZiBhbiBFcnJvciBpbnN0YW5jZS5cbiAgICBjb25zdCB7IGZvcm1hdHRlZCwgZmlsZSwgbGluZSwgY29sdW1uLCBtZXNzYWdlLCBzdGFjayB9ID0gZXJyb3I7XG4gICAgcGFyZW50UG9ydD8ucG9zdE1lc3NhZ2UoeyBpZCwgZXJyb3I6IHsgZm9ybWF0dGVkLCBmaWxlLCBsaW5lLCBjb2x1bW4sIG1lc3NhZ2UsIHN0YWNrIH0gfSk7XG4gIH1cbn0pO1xuIl19
File without changes
@@ -157,3 +157,4 @@ function convertSourceSpan(span) {
157
157
  url: span.url ? (0, node_url_1.fileURLToPath)(span.url) : undefined,
158
158
  };
159
159
  }
160
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhcl9kZXZraXQvYnVpbGRfYW5ndWxhci9zcmMvc2Fzcy93b3JrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7QUFFSCxzRUFBc0U7QUFDdEUseUNBQW9DO0FBQ3BDLHVDQUF3RDtBQUN4RCw2REFBZ0c7QUFDaEcsK0JBTWM7QUFDZCwyREFNNkI7QUFpQzdCLElBQUksQ0FBQyxnQ0FBVSxJQUFJLENBQUMsZ0NBQVUsRUFBRTtJQUM5QixNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7Q0FDOUQ7QUFFRCw4RUFBOEU7QUFDOUUsTUFBTSxFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSxHQUFHLGdDQUc5QyxDQUFDO0FBRUYsZ0NBQVUsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsT0FBNkIsRUFBRSxFQUFFOztJQUN6RCxJQUFJLENBQUMsZ0NBQVUsRUFBRTtRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsd0VBQXdFLENBQUMsQ0FBQztLQUMzRjtJQUVELE1BQU0sRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQztJQUN4RSxNQUFNLGNBQWMsR0FBRyxJQUFBLG1CQUFPLEVBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVDLElBQUksUUFPUyxDQUFDO0lBQ2QsSUFBSTtRQUNGLE1BQU0sY0FBYyxHQUFHLElBQUksR0FBRyxFQUEwQixDQUFDO1FBQ3pELE1BQU0sZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQXdCLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUN6RixJQUFJLFdBQVcsRUFBRTtZQUNmLG1G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QUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDckU7YUFBTTtZQUNMLGdDQUFVLENBQUMsV0FBVyxDQUFDO2dCQUNyQixFQUFFO2dCQUNGLFFBQVE7Z0JBQ1IsS0FBSyxFQUFFLEVBQUUsT0FBTyxFQUFFLGdDQUFnQyxFQUFFO2FBQ3JELENBQUMsQ0FBQztTQUNKO0tBQ0Y7QUFDSCxDQUFDLENBQUMsQ0FBQztBQUVIOzs7Ozs7OztHQVFHO0FBQ0gsU0FBUyxpQkFBaUIsQ0FBQyxJQUFnQjtJQUN6QyxPQUFPO1FBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1FBQ2YsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1FBQ3JCLEdBQUcsRUFBRTtZQUNILE1BQU0sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU07WUFDdkIsTUFBTSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTTtZQUN2QixJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJO1NBQ3BCO1FBQ0QsS0FBSyxFQUFFO1lBQ0wsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTTtZQUN6QixNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNO1lBQ3pCLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUk7U0FDdEI7UUFDRCxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBQSx3QkFBYSxFQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztLQUNwRCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgbWVyZ2VTb3VyY2VNYXBzLCB7IFJhd1NvdXJjZU1hcCB9IGZyb20gJ0BhbXBwcm9qZWN0L3JlbWFwcGluZyc7XG5pbXBvcnQgeyBkaXJuYW1lIH0gZnJvbSAnbm9kZTpwYXRoJztcbmltcG9ydCB7IGZpbGVVUkxUb1BhdGgsIHBhdGhUb0ZpbGVVUkwgfSBmcm9tICdub2RlOnVybCc7XG5pbXBvcnQgeyBNZXNzYWdlUG9ydCwgcGFyZW50UG9ydCwgcmVjZWl2ZU1lc3NhZ2VPblBvcnQsIHdvcmtlckRhdGEgfSBmcm9tICdub2RlOndvcmtlcl90aHJlYWRzJztcbmltcG9ydCB7XG4gIEV4Y2VwdGlvbixcbiAgRmlsZUltcG9ydGVyLFxuICBTb3VyY2VTcGFuLFxuICBTdHJpbmdPcHRpb25zV2l0aEltcG9ydGVyLFxuICBjb21waWxlU3RyaW5nLFxufSBmcm9tICdzYXNzJztcbmltcG9ydCB7XG4gIERpcmVjdG9yeUVudHJ5LFxuICBMb2FkUGF0aHNVcmxSZWJhc2luZ0ltcG9ydGVyLFxuICBNb2R1bGVVcmxSZWJhc2luZ0ltcG9ydGVyLFxuICBSZWxhdGl2ZVVybFJlYmFzaW5nSW1wb3J0ZXIsXG4gIHNhc3NCaW5kV29ya2Fyb3VuZCxcbn0gZnJvbSAnLi9yZWJhc2luZy1pbXBvcnRlcic7XG5cbi8qKlxuICogQSByZXF1ZXN0IHRvIHJlbmRlciBhIFNhc3Mgc3R5bGVzaGVldCB1c2luZyB0aGUgc3VwcGxpZWQgb3B0aW9ucy5cbiAqL1xuaW50ZXJmYWNlIFJlbmRlclJlcXVlc3RNZXNzYWdlIHtcbiAgLyoqXG4gICAqIFRoZSB1bmlxdWUgcmVxdWVzdCBpZGVudGlmaWVyIHRoYXQgbGlua3MgdGhlIHJlbmRlciBhY3Rpb24gd2l0aCBhIGNhbGxiYWNrIGFuZCBvcHRpb25hbFxuICAgKiBpbXBvcnRlciBvbiB0aGUgbWFpbiB0aHJlYWQuXG4gICAqL1xuICBpZDogbnVtYmVyO1xuICAvKipcbiAgICogVGhlIGNvbnRlbnRzIHRvIGNvbXBpbGUuXG4gICAqL1xuICBzb3VyY2U6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBTYXNzIG9wdGlvbnMgdG8gcHJvdmlkZSB0byB0aGUgYGRhcnQtc2Fzc2AgY29tcGlsZSBmdW5jdGlvbi5cbiAgICovXG4gIG9wdGlvbnM6IE9taXQ8U3RyaW5nT3B0aW9uc1dpdGhJbXBvcnRlcjwnc3luYyc+LCAndXJsJz4gJiB7IHVybDogc3RyaW5nIH07XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhlIHJlcXVlc3QgaGFzIGEgY3VzdG9tIGltcG9ydGVyIGZ1bmN0aW9uIG9uIHRoZSBtYWluIHRocmVhZC5cbiAgICovXG4gIGhhc0ltcG9ydGVyOiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoZSByZXF1ZXN0IGhhcyBhIGN1c3RvbSBsb2dnZXIgZm9yIHdhcm5pbmcgbWVzc2FnZXMuXG4gICAqL1xuICBoYXNMb2dnZXI6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgcGF0aHMgd2l0aGluIHVybCgpIENTUyBmdW5jdGlvbnMgc2hvdWxkIGJlIHJlYmFzZWQuXG4gICAqL1xuICByZWJhc2U6IGJvb2xlYW47XG59XG5cbmlmICghcGFyZW50UG9ydCB8fCAhd29ya2VyRGF0YSkge1xuICB0aHJvdyBuZXcgRXJyb3IoJ1Nhc3Mgd29ya2VyIG11c3QgYmUgZXhlY3V0ZWQgYXMgYSBXb3JrZXIuJyk7XG59XG5cbi8vIFRoZSBpbXBvcnRlciB2YXJpYWJsZXMgYXJlIHVzZWQgdG8gcHJveHkgaW1wb3J0IHJlcXVlc3RzIHRvIHRoZSBtYWluIHRocmVhZFxuY29uc3QgeyB3b3JrZXJJbXBvcnRlclBvcnQsIGltcG9ydGVyU2lnbmFsIH0gPSB3b3JrZXJEYXRhIGFzIHtcbiAgd29ya2VySW1wb3J0ZXJQb3J0OiBNZXNzYWdlUG9ydDtcbiAgaW1wb3J0ZXJTaWduYWw6IEludDMyQXJyYXk7XG59O1xuXG5wYXJlbnRQb3J0Lm9uKCdtZXNzYWdlJywgKG1lc3NhZ2U6IFJlbmRlclJlcXVlc3RNZXNzYWdlKSA9PiB7XG4gIGlmICghcGFyZW50UG9ydCkge1xuICAgIHRocm93IG5ldyBFcnJvcignXCJwYXJlbnRQb3J0XCIgaXMgbm90IGRlZmluZWQuIFNhc3Mgd29ya2VyIG11c3QgYmUgZXhlY3V0ZWQgYXMgYSBXb3JrZXIuJyk7XG4gIH1cblxuICBjb25zdCB7IGlkLCBoYXNJbXBvcnRlciwgaGFzTG9nZ2VyLCBzb3VyY2UsIG9wdGlvbnMsIHJlYmFzZSB9ID0gbWVzc2FnZTtcbiAgY29uc3QgZW50cnlEaXJlY3RvcnkgPSBkaXJuYW1lKG9wdGlvbnMudXJsKTtcbiAgbGV0IHdhcm5pbmdzOlxuICAgIHwge1xuICAgICAgICBtZXNzYWdlOiBzdHJpbmc7XG4gICAgICAgIGRlcHJlY2F0aW9uOiBib29sZWFuO1xuICAgICAgICBzdGFjaz86IHN0cmluZztcbiAgICAgICAgc3Bhbj86IE9taXQ8U291cmNlU3BhbiwgJ3VybCc+ICYgeyB1cmw/OiBzdHJpbmcgfTtcbiAgICAgIH1bXVxuICAgIHwgdW5kZWZpbmVkO1xuICB0cnkge1xuICAgIGNvbnN0IGRpcmVjdG9yeUNhY2hlID0gbmV3IE1hcDxzdHJpbmcsIERpcmVjdG9yeUVudHJ5PigpO1xuICAgIGNvbnN0IHJlYmFzZVNvdXJjZU1hcHMgPSBvcHRpb25zLnNvdXJjZU1hcCA/IG5ldyBNYXA8c3RyaW5nLCBSYXdTb3VyY2VNYXA+KCkgOiB1bmRlZmluZWQ7XG4gICAgaWYgKGhhc0ltcG9ydGVyKSB7XG4gICAgICAvLyBXaGVuIGEgY3VzdG9tIGltcG9ydGVyIGZ1bmN0aW9uIGlzIHByZXNlbnQsIHRoZSBpbXBvcnRlciByZXF1ZXN0IG11c3QgYmUgcHJveGllZFxuICAgICAgLy8gYmFjayB0byB0aGUgbWFpbiB0aHJlYWQgd2hlcmUgaXQgY2FuIGJlIGV4ZWN1dGVkLlxuICAgICAgLy8gVGhpcyBwcm9jZXNzIG11c3QgYmUgc3luY2hyb25vdXMgZnJvbSB0aGUgcGVyc3BlY3RpdmUgb2YgZGFydC1zYXNzLiBUaGUgYEF0b21pY3NgXG4gICAgICAvLyBmdW5jdGlvbnMgY29tYmluZWQgd2l0aCB0aGUgc2hhcmVkIG1lbW9yeSBgaW1wb3J0U2lnbmFsYCBhbmQgdGhlIE5vZGUuanNcbiAgICAgIC8vIGByZWNlaXZlTWVzc2FnZU9uUG9ydGAgZnVuY3Rpb24gYXJlIHVzZWQgdG8gZW5zdXJlIHN5bmNocm9ub3VzIGJlaGF2aW9yLlxuICAgICAgY29uc3QgcHJveHlJbXBvcnRlcjogRmlsZUltcG9ydGVyPCdzeW5jJz4gPSB7XG4gICAgICAgIGZpbmRGaWxlVXJsOiAodXJsLCBvcHRpb25zKSA9PiB7XG4gICAgICAgICAgQXRvbWljcy5zdG9yZShpbXBvcnRlclNpZ25hbCwgMCwgMCk7XG4gICAgICAgICAgd29ya2VySW1wb3J0ZXJQb3J0LnBvc3RNZXNzYWdlKHsgaWQsIHVybCwgb3B0aW9ucyB9KTtcbiAgICAgICAgICBBdG9taWNzLndhaXQoaW1wb3J0ZXJTaWduYWwsIDAsIDApO1xuXG4gICAgICAgICAgY29uc3QgcmVzdWx0ID0gcmVjZWl2ZU1lc3NhZ2VPblBvcnQod29ya2VySW1wb3J0ZXJQb3J0KT8ubWVzc2FnZSBhcyBzdHJpbmcgfCBudWxsO1xuXG4gICAgICAgICAgcmV0dXJuIHJlc3VsdCA/IHBhdGhUb0ZpbGVVUkwocmVzdWx0KSA6IG51bGw7XG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgICAgb3B0aW9ucy5pbXBvcnRlcnMgPSBbXG4gICAgICAgIHJlYmFzZVxuICAgICAgICAgID8gc2Fzc0JpbmRXb3JrYXJvdW5kKFxuICAgICAgICAgICAgICBuZXcgTW9kdWxlVXJsUmViYXNpbmdJbXBvcnRlcihcbiAgICAgICAgICAgICAgICBlbnRyeURpcmVjdG9yeSxcbiAgICAgICAgICAgICAgICBkaXJlY3RvcnlDYWNoZSxcbiAgICAgICAgICAgICAgICByZWJhc2VTb3VyY2VNYXBzLFxuICAgICAgICAgICAgICAgIHByb3h5SW1wb3J0ZXIuZmluZEZpbGVVcmwsXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICApXG4gICAgICAgICAgOiBwcm94eUltcG9ydGVyLFxuICAgICAgXTtcbiAgICB9XG5cbiAgICBpZiAocmViYXNlICYmIG9wdGlvbnMubG9hZFBhdGhzPy5sZW5ndGgpIHtcbiAgICAgIG9wdGlvbnMuaW1wb3J0ZXJzID8/PSBbXTtcbiAgICAgIG9wdGlvbnMuaW1wb3J0ZXJzLnB1c2goXG4gICAgICAgIHNhc3NCaW5kV29ya2Fyb3VuZChcbiAgICAgICAgICBuZXcgTG9hZFBhdGhzVXJsUmViYXNpbmdJbXBvcnRlcihcbiAgICAgICAgICAgIGVudHJ5RGlyZWN0b3J5LFxuICAgICAgICAgICAgZGlyZWN0b3J5Q2FjaGUsXG4gICAgICAgICAgICByZWJhc2VTb3VyY2VNYXBzLFxuICAgICAgICAgICAgb3B0aW9ucy5sb2FkUGF0aHMsXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgICBvcHRpb25zLmxvYWRQYXRocyA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBsZXQgcmVsYXRpdmVJbXBvcnRlcjtcbiAgICBpZiAocmViYXNlKSB7XG4gICAgICByZWxhdGl2ZUltcG9ydGVyID0gc2Fzc0JpbmRXb3JrYXJvdW5kKFxuICAgICAgICBuZXcgUmVsYXRpdmVVcmxSZWJhc2luZ0ltcG9ydGVyKGVudHJ5RGlyZWN0b3J5LCBkaXJlY3RvcnlDYWNoZSwgcmViYXNlU291cmNlTWFwcyksXG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIFRoZSBzeW5jaHJvbm91cyBTYXNzIHJlbmRlciBmdW5jdGlvbiBjYW4gYmUgdXAgdG8gdHdvIHRpbWVzIGZhc3RlciB0aGFuIHRoZSBhc3luYyB2YXJpYW50XG4gICAgY29uc3QgcmVzdWx0ID0gY29tcGlsZVN0cmluZyhzb3VyY2UsIHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAvLyBVUkwgaXMgbm90IHNlcmlhbGl6YWJsZSBzbyB0byBjb252ZXJ0IHRvIHN0cmluZyBpbiB0aGUgcGFyZW50IGFuZCBiYWNrIHRvIFVSTCBoZXJlLlxuICAgICAgdXJsOiBwYXRoVG9GaWxlVVJMKG9wdGlvbnMudXJsKSxcbiAgICAgIC8vIFRoZSBgaW1wb3J0ZXJgIG9wdGlvbiAoc2luZ3VsYXIpIGhhbmRsZXMgcmVsYXRpdmUgaW1wb3J0c1xuICAgICAgaW1wb3J0ZXI6IHJlbGF0aXZlSW1wb3J0ZXIsXG4gICAgICBsb2dnZXI6IGhhc0xvZ2dlclxuICAgICAgICA/IHtcbiAgICAgICAgICAgIHdhcm4obWVzc2FnZSwgeyBkZXByZWNhdGlvbiwgc3Bhbiwgc3RhY2sgfSkge1xuICAgICAgICAgICAgICB3YXJuaW5ncyA/Pz0gW107XG4gICAgICAgICAgICAgIHdhcm5pbmdzLnB1c2goe1xuICAgICAgICAgICAgICAgIG1lc3NhZ2UsXG4gICAgICAgICAgICAgICAgZGVwcmVjYXRpb24sXG4gICAgICAgICAgICAgICAgc3RhY2ssXG4gICAgICAgICAgICAgICAgc3Bhbjogc3BhbiAmJiBjb252ZXJ0U291cmNlU3BhbihzcGFuKSxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH1cbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgfSk7XG5cbiAgICBpZiAocmVzdWx0LnNvdXJjZU1hcCAmJiByZWJhc2VTb3VyY2VNYXBzPy5zaXplKSB7XG4gICAgICAvLyBNZXJnZSB0aGUgaW50ZXJtZWRpYXRlIHJlYmFzaW5nIHNvdXJjZSBtYXBzIGludG8gdGhlIGZpbmFsIFNhc3MgZ2VuZXJhdGVkIHNvdXJjZSBtYXAuXG4gICAgICAvLyBDYXN0aW5nIGlzIHJlcXVpcmVkIGR1ZSB0byBzbWFsbCBidXQgY29tcGF0aWJsZSBkaWZmZXJlbmNlcyBpbiB0eXBpbmdzIGJldHdlZW4gdGhlIHBhY2thZ2VzLlxuICAgICAgcmVzdWx0LnNvdXJjZU1hcCA9IG1lcmdlU291cmNlTWFwcyhcbiAgICAgICAgcmVzdWx0LnNvdXJjZU1hcCBhcyB1bmtub3duIGFzIFJhd1NvdXJjZU1hcCxcbiAgICAgICAgLy8gVG8gcHJldmVudCBhbiBpbmZpbml0ZSBsb29rdXAgbG9vcCwgc2tpcCBnZXR0aW5nIHRoZSBzb3VyY2Ugd2hlbiB0aGUgcmViYXNpbmcgc291cmNlIG1hcFxuICAgICAgICAvLyBpcyByZWZlcmVuY2luZyBpdHMgb3JpZ2luYWwgc2VsZi5cbiAgICAgICAgKGZpbGUsIGNvbnRleHQpID0+IChmaWxlICE9PSBjb250ZXh0LmltcG9ydGVyID8gcmViYXNlU291cmNlTWFwcy5nZXQoZmlsZSkgOiBudWxsKSxcbiAgICAgICkgYXMgdW5rbm93biBhcyB0eXBlb2YgcmVzdWx0LnNvdXJjZU1hcDtcbiAgICB9XG5cbiAgICBwYXJlbnRQb3J0LnBvc3RNZXNzYWdlKHtcbiAgICAgIGlkLFxuICAgICAgd2FybmluZ3MsXG4gICAgICByZXN1bHQ6IHtcbiAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAvLyBVUkwgaXMgbm90IHNlcmlhbGl6YWJsZSBzbyB0byBjb252ZXJ0IHRvIHN0cmluZyBoZXJlIGFuZCBiYWNrIHRvIFVSTCBpbiB0aGUgcGFyZW50LlxuICAgICAgICBsb2FkZWRVcmxzOiByZXN1bHQubG9hZGVkVXJscy5tYXAoKHApID0+IGZpbGVVUkxUb1BhdGgocCkpLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAvLyBOZWVkZWQgYmVjYXVzZSBWOCB3aWxsIG9ubHkgc2VyaWFsaXplIHRoZSBtZXNzYWdlIGFuZCBzdGFjayBwcm9wZXJ0aWVzIG9mIGFuIEVycm9yIGluc3RhbmNlLlxuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEV4Y2VwdGlvbikge1xuICAgICAgY29uc3QgeyBzcGFuLCBtZXNzYWdlLCBzdGFjaywgc2Fzc01lc3NhZ2UsIHNhc3NTdGFjayB9ID0gZXJyb3I7XG4gICAgICBwYXJlbnRQb3J0LnBvc3RNZXNzYWdlKHtcbiAgICAgICAgaWQsXG4gICAgICAgIHdhcm5pbmdzLFxuICAgICAgICBlcnJvcjoge1xuICAgICAgICAgIHNwYW46IGNvbnZlcnRTb3VyY2VTcGFuKHNwYW4pLFxuICAgICAgICAgIG1lc3NhZ2UsXG4gICAgICAgICAgc3RhY2ssXG4gICAgICAgICAgc2Fzc01lc3NhZ2UsXG4gICAgICAgICAgc2Fzc1N0YWNrLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICBjb25zdCB7IG1lc3NhZ2UsIHN0YWNrIH0gPSBlcnJvcjtcbiAgICAgIHBhcmVudFBvcnQucG9zdE1lc3NhZ2UoeyBpZCwgd2FybmluZ3MsIGVycm9yOiB7IG1lc3NhZ2UsIHN0YWNrIH0gfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcmVudFBvcnQucG9zdE1lc3NhZ2Uoe1xuICAgICAgICBpZCxcbiAgICAgICAgd2FybmluZ3MsXG4gICAgICAgIGVycm9yOiB7IG1lc3NhZ2U6ICdBbiB1bmtub3duIGVycm9yIGhhcyBvY2N1cnJlZC4nIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKipcbiAqIENvbnZlcnRzIGEgU2FzcyBTb3VyY2VTcGFuIG9iamVjdCBpbnRvIGEgc2VyaWFsaXphYmxlIGZvcm0uXG4gKiBUaGUgU291cmNlU3BhbiBvYmplY3QgY29udGFpbnMgYSBVUkwgcHJvcGVydHkgd2hpY2ggbXVzdCBiZSBjb252ZXJ0ZWQgaW50byBhIHN0cmluZy5cbiAqIEFsc28sIG1vc3Qgb2YgdGhlIGludGVyZmFjZSdzIHByb3BlcnRpZXMgYXJlIGdldCBhY2Nlc3NvcnMgYW5kIGFyZSBub3QgYXV0b21hdGljYWxseVxuICogc2VyaWFsaXplZCB3aGVuIHNlbnQgYmFjayBmcm9tIHRoZSB3b3JrZXIuXG4gKlxuICogQHBhcmFtIHNwYW4gVGhlIFNhc3MgU291cmNlU3BhbiBvYmplY3QgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIEEgc2VyaWFsaXphYmxlIGZvcm0gb2YgdGhlIFNvdXJjZVNwYW4gb2JqZWN0LlxuICovXG5mdW5jdGlvbiBjb252ZXJ0U291cmNlU3BhbihzcGFuOiBTb3VyY2VTcGFuKTogT21pdDxTb3VyY2VTcGFuLCAndXJsJz4gJiB7IHVybD86IHN0cmluZyB9IHtcbiAgcmV0dXJuIHtcbiAgICB0ZXh0OiBzcGFuLnRleHQsXG4gICAgY29udGV4dDogc3Bhbi5jb250ZXh0LFxuICAgIGVuZDoge1xuICAgICAgY29sdW1uOiBzcGFuLmVuZC5jb2x1bW4sXG4gICAgICBvZmZzZXQ6IHNwYW4uZW5kLm9mZnNldCxcbiAgICAgIGxpbmU6IHNwYW4uZW5kLmxpbmUsXG4gICAgfSxcbiAgICBzdGFydDoge1xuICAgICAgY29sdW1uOiBzcGFuLnN0YXJ0LmNvbHVtbixcbiAgICAgIG9mZnNldDogc3Bhbi5zdGFydC5vZmZzZXQsXG4gICAgICBsaW5lOiBzcGFuLnN0YXJ0LmxpbmUsXG4gICAgfSxcbiAgICB1cmw6IHNwYW4udXJsID8gZmlsZVVSTFRvUGF0aChzcGFuLnVybCkgOiB1bmRlZmluZWQsXG4gIH07XG59XG4iXX0=
@@ -5,4 +5,4 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- export declare type ExecutionTransformer<T> = (input: T) => T | Promise<T>;
8
+ export type ExecutionTransformer<T> = (input: T) => T | Promise<T>;
package/src/transforms.js CHANGED
@@ -7,3 +7,4 @@
7
7
  * found in the LICENSE file at https://angular.io/license
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3Jtcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL3RyYW5zZm9ybXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5leHBvcnQgdHlwZSBFeGVjdXRpb25UcmFuc2Zvcm1lcjxUPiA9IChpbnB1dDogVCkgPT4gVCB8IFByb21pc2U8VD47XG4iXX0=
package/src/typings.d.ts CHANGED
File without changes
File without changes
@@ -54,3 +54,4 @@ class BundleActionExecutor {
54
54
  }
55
55
  }
56
56
  exports.BundleActionExecutor = BundleActionExecutor;
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWV4ZWN1dG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhcl9kZXZraXQvYnVpbGRfYW5ndWxhci9zcmMvdXRpbHMvYWN0aW9uLWV4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7OztBQUVILHNEQUE4QjtBQUM5QiwrREFBbUQ7QUFJbkQsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0FBRXZELE1BQWEsb0JBQW9CO0lBRy9CLFlBQW9CLGFBQW9DO1FBQXBDLGtCQUFhLEdBQWIsYUFBYSxDQUF1QjtJQUFHLENBQUM7SUFFcEQsZ0JBQWdCO1FBQ3RCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7U0FDeEI7UUFFRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksaUJBQU8sQ0FBQztZQUM1QixRQUFRLEVBQUUsVUFBVTtZQUNwQixJQUFJLEVBQUUsZUFBZTtZQUNyQixVQUFVLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDOUIsVUFBVSxFQUFFLGdDQUFVO1NBQ3ZCLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsS0FBSyxDQUFDLE1BQU0sQ0FDVixNQUFxQjtRQUVyQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQWdDO1FBQ3hDLE9BQU8sb0JBQW9CLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFTyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsVUFBVSxDQUM5QixPQUFvQixFQUNwQixRQUFtQztRQUVuQyxNQUFNLFVBQVUsR0FBRyxJQUFJLEdBQUcsRUFBd0MsQ0FBQztRQUNuRSxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRTtZQUM1QixNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDbkMsVUFBVSxDQUFDLEdBQUcsQ0FDWixTQUFTLEVBQ1QsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FDaEQsQ0FBQztTQUNIO1FBRUQsT0FBTyxVQUFVLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRTtZQUMxQixNQUFNLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxHQUFHLE1BQU0sT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztZQUNwRSxVQUFVLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzdCLE1BQU0sTUFBTSxDQUFDO1NBQ2Q7SUFDSCxDQUFDO0lBRUQsSUFBSTs7UUFDRixLQUFLLENBQUEsTUFBQSxJQUFJLENBQUMsVUFBVSwwQ0FBRSxPQUFPLEVBQUUsQ0FBQSxDQUFDO0lBQ2xDLENBQUM7Q0FDRjtBQXJERCxvREFxREMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IFBpc2NpbmEgZnJvbSAncGlzY2luYSc7XG5pbXBvcnQgeyBtYXhXb3JrZXJzIH0gZnJvbSAnLi9lbnZpcm9ubWVudC1vcHRpb25zJztcbmltcG9ydCB7IEkxOG5PcHRpb25zIH0gZnJvbSAnLi9pMThuLW9wdGlvbnMnO1xuaW1wb3J0IHsgSW5saW5lT3B0aW9ucyB9IGZyb20gJy4vcHJvY2Vzcy1idW5kbGUnO1xuXG5jb25zdCB3b3JrZXJGaWxlID0gcmVxdWlyZS5yZXNvbHZlKCcuL3Byb2Nlc3MtYnVuZGxlJyk7XG5cbmV4cG9ydCBjbGFzcyBCdW5kbGVBY3Rpb25FeGVjdXRvciB7XG4gIHByaXZhdGUgd29ya2VyUG9vbD86IFBpc2NpbmE7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB3b3JrZXJPcHRpb25zOiB7IGkxOG46IEkxOG5PcHRpb25zIH0pIHt9XG5cbiAgcHJpdmF0ZSBlbnN1cmVXb3JrZXJQb29sKCk6IFBpc2NpbmEge1xuICAgIGlmICh0aGlzLndvcmtlclBvb2wpIHtcbiAgICAgIHJldHVybiB0aGlzLndvcmtlclBvb2w7XG4gICAgfVxuXG4gICAgdGhpcy53b3JrZXJQb29sID0gbmV3IFBpc2NpbmEoe1xuICAgICAgZmlsZW5hbWU6IHdvcmtlckZpbGUsXG4gICAgICBuYW1lOiAnaW5saW5lTG9jYWxlcycsXG4gICAgICB3b3JrZXJEYXRhOiB0aGlzLndvcmtlck9wdGlvbnMsXG4gICAgICBtYXhUaHJlYWRzOiBtYXhXb3JrZXJzLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHRoaXMud29ya2VyUG9vbDtcbiAgfVxuXG4gIGFzeW5jIGlubGluZShcbiAgICBhY3Rpb246IElubGluZU9wdGlvbnMsXG4gICk6IFByb21pc2U8eyBmaWxlOiBzdHJpbmc7IGRpYWdub3N0aWNzOiB7IHR5cGU6IHN0cmluZzsgbWVzc2FnZTogc3RyaW5nIH1bXTsgY291bnQ6IG51bWJlciB9PiB7XG4gICAgcmV0dXJuIHRoaXMuZW5zdXJlV29ya2VyUG9vbCgpLnJ1bihhY3Rpb24sIHsgbmFtZTogJ2lubGluZUxvY2FsZXMnIH0pO1xuICB9XG5cbiAgaW5saW5lQWxsKGFjdGlvbnM6IEl0ZXJhYmxlPElubGluZU9wdGlvbnM+KSB7XG4gICAgcmV0dXJuIEJ1bmRsZUFjdGlvbkV4ZWN1dG9yLmV4ZWN1dGVBbGwoYWN0aW9ucywgKGFjdGlvbikgPT4gdGhpcy5pbmxpbmUoYWN0aW9uKSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBhc3luYyAqZXhlY3V0ZUFsbDxJLCBPPihcbiAgICBhY3Rpb25zOiBJdGVyYWJsZTxJPixcbiAgICBleGVjdXRvcjogKGFjdGlvbjogSSkgPT4gUHJvbWlzZTxPPixcbiAgKTogQXN5bmNJdGVyYWJsZTxPPiB7XG4gICAgY29uc3QgZXhlY3V0aW9ucyA9IG5ldyBNYXA8UHJvbWlzZTxPPiwgUHJvbWlzZTxbUHJvbWlzZTxPPiwgT10+PigpO1xuICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIGFjdGlvbnMpIHtcbiAgICAgIGNvbnN0IGV4ZWN1dGlvbiA9IGV4ZWN1dG9yKGFjdGlvbik7XG4gICAgICBleGVjdXRpb25zLnNldChcbiAgICAgICAgZXhlY3V0aW9uLFxuICAgICAgICBleGVjdXRpb24udGhlbigocmVzdWx0KSA9PiBbZXhlY3V0aW9uLCByZXN1bHRdKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgd2hpbGUgKGV4ZWN1dGlvbnMuc2l6ZSA+IDApIHtcbiAgICAgIGNvbnN0IFtleGVjdXRpb24sIHJlc3VsdF0gPSBhd2FpdCBQcm9taXNlLnJhY2UoZXhlY3V0aW9ucy52YWx1ZXMoKSk7XG4gICAgICBleGVjdXRpb25zLmRlbGV0ZShleGVjdXRpb24pO1xuICAgICAgeWllbGQgcmVzdWx0O1xuICAgIH1cbiAgfVxuXG4gIHN0b3AoKTogdm9pZCB7XG4gICAgdm9pZCB0aGlzLndvcmtlclBvb2w/LmRlc3Ryb3koKTtcbiAgfVxufVxuIl19
File without changes
@@ -7,3 +7,4 @@
7
7
  * found in the LICENSE file at https://angular.io/license
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL3V0aWxzL2J1aWxkLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgeyBsb2dnaW5nIH0gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L2NvcmUnO1xuaW1wb3J0IHR5cGUgeyBQYXJzZWRDb25maWd1cmF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tcGlsZXItY2xpJztcbmltcG9ydCB7XG4gIEFzc2V0UGF0dGVybkNsYXNzLFxuICBCdWRnZXQsXG4gIENyb3NzT3JpZ2luLFxuICBJMThOVHJhbnNsYXRpb24sXG4gIEluZGV4VW5pb24sXG4gIElubGluZVN0eWxlTGFuZ3VhZ2UsXG4gIExvY2FsaXplLFxuICBPdXRwdXRIYXNoaW5nLFxuICBTY3JpcHRFbGVtZW50LFxuICBTb3VyY2VNYXBDbGFzcyxcbiAgU3R5bGVFbGVtZW50LFxufSBmcm9tICcuLi9idWlsZGVycy9icm93c2VyL3NjaGVtYSc7XG5pbXBvcnQgeyBTY2hlbWEgYXMgRGV2U2VydmVyU2NoZW1hIH0gZnJvbSAnLi4vYnVpbGRlcnMvZGV2LXNlcnZlci9zY2hlbWEnO1xuaW1wb3J0IHsgTm9ybWFsaXplZENhY2hlZE9wdGlvbnMgfSBmcm9tICcuL25vcm1hbGl6ZS1jYWNoZSc7XG5pbXBvcnQgeyBOb3JtYWxpemVkRmlsZVJlcGxhY2VtZW50IH0gZnJvbSAnLi9ub3JtYWxpemUtZmlsZS1yZXBsYWNlbWVudHMnO1xuaW1wb3J0IHsgTm9ybWFsaXplZE9wdGltaXphdGlvbk9wdGlvbnMgfSBmcm9tICcuL25vcm1hbGl6ZS1vcHRpbWl6YXRpb24nO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkT3B0aW9ucyB7XG4gIG9wdGltaXphdGlvbjogTm9ybWFsaXplZE9wdGltaXphdGlvbk9wdGlvbnM7XG4gIGVudmlyb25tZW50Pzogc3RyaW5nO1xuICBvdXRwdXRQYXRoOiBzdHJpbmc7XG4gIHJlc291cmNlc091dHB1dFBhdGg/OiBzdHJpbmc7XG4gIGFvdD86IGJvb2xlYW47XG4gIHNvdXJjZU1hcDogU291cmNlTWFwQ2xhc3M7XG4gIHZlbmRvckNodW5rPzogYm9vbGVhbjtcbiAgY29tbW9uQ2h1bms/OiBib29sZWFuO1xuICBiYXNlSHJlZj86IHN0cmluZztcbiAgZGVwbG95VXJsPzogc3RyaW5nO1xuICB2ZXJib3NlPzogYm9vbGVhbjtcbiAgcHJvZ3Jlc3M/OiBib29sZWFuO1xuICBsb2NhbGl6ZT86IExvY2FsaXplO1xuICBpMThuTWlzc2luZ1RyYW5zbGF0aW9uPzogSTE4TlRyYW5zbGF0aW9uO1xuICBleHRlcm5hbERlcGVuZGVuY2llcz86IHN0cmluZ1tdO1xuICB3YXRjaD86IGJvb2xlYW47XG4gIG91dHB1dEhhc2hpbmc/OiBPdXRwdXRIYXNoaW5nO1xuICBwb2xsPzogbnVtYmVyO1xuICBpbmRleD86IEluZGV4VW5pb247XG4gIGRlbGV0ZU91dHB1dFBhdGg/OiBib29sZWFuO1xuICBwcmVzZXJ2ZVN5bWxpbmtzPzogYm9vbGVhbjtcbiAgZXh0cmFjdExpY2Vuc2VzPzogYm9vbGVhbjtcbiAgYnVpbGRPcHRpbWl6ZXI/OiBib29sZWFuO1xuICBuYW1lZENodW5rcz86IGJvb2xlYW47XG4gIGNyb3NzT3JpZ2luPzogQ3Jvc3NPcmlnaW47XG4gIHN1YnJlc291cmNlSW50ZWdyaXR5PzogYm9vbGVhbjtcbiAgc2VydmljZVdvcmtlcj86IGJvb2xlYW47XG4gIHdlYldvcmtlclRzQ29uZmlnPzogc3RyaW5nO1xuICBzdGF0c0pzb246IGJvb2xlYW47XG4gIGhtcj86IGJvb2xlYW47XG4gIG1haW46IHN0cmluZztcbiAgcG9seWZpbGxzOiBzdHJpbmdbXTtcbiAgYnVkZ2V0czogQnVkZ2V0W107XG4gIGFzc2V0czogQXNzZXRQYXR0ZXJuQ2xhc3NbXTtcbiAgc2NyaXB0czogU2NyaXB0RWxlbWVudFtdO1xuICBzdHlsZXM6IFN0eWxlRWxlbWVudFtdO1xuICBzdHlsZVByZXByb2Nlc3Nvck9wdGlvbnM/OiB7IGluY2x1ZGVQYXRoczogc3RyaW5nW10gfTtcbiAgcGxhdGZvcm0/OiAnYnJvd3NlcicgfCAnc2VydmVyJztcbiAgZmlsZVJlcGxhY2VtZW50czogTm9ybWFsaXplZEZpbGVSZXBsYWNlbWVudFtdO1xuICBpbmxpbmVTdHlsZUxhbmd1YWdlPzogSW5saW5lU3R5bGVMYW5ndWFnZTtcbiAgYWxsb3dlZENvbW1vbkpzRGVwZW5kZW5jaWVzPzogc3RyaW5nW107XG4gIGNhY2hlOiBOb3JtYWxpemVkQ2FjaGVkT3B0aW9ucztcbiAgY29kZUNvdmVyYWdlPzogYm9vbGVhbjtcbiAgY29kZUNvdmVyYWdlRXhjbHVkZT86IHN0cmluZ1tdO1xuICBzdXBwb3J0ZWRCcm93c2Vycz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdlYnBhY2tEZXZTZXJ2ZXJPcHRpb25zXG4gIGV4dGVuZHMgQnVpbGRPcHRpb25zLFxuICAgIE9taXQ8RGV2U2VydmVyU2NoZW1hLCAnb3B0aW1pemF0aW9uJyB8ICdzb3VyY2VNYXAnIHwgJ2Jyb3dzZXJUYXJnZXQnPiB7fVxuXG5leHBvcnQgaW50ZXJmYWNlIFdlYnBhY2tDb25maWdPcHRpb25zPFQgPSBCdWlsZE9wdGlvbnM+IHtcbiAgcm9vdDogc3RyaW5nO1xuICBsb2dnZXI6IGxvZ2dpbmcuTG9nZ2VyO1xuICBwcm9qZWN0Um9vdDogc3RyaW5nO1xuICBzb3VyY2VSb290Pzogc3RyaW5nO1xuICBidWlsZE9wdGlvbnM6IFQ7XG4gIHRzQ29uZmlnOiBQYXJzZWRDb25maWd1cmF0aW9uO1xuICB0c0NvbmZpZ1BhdGg6IHN0cmluZztcbiAgcHJvamVjdE5hbWU6IHN0cmluZztcbn1cbiJdfQ==
File without changes
@@ -286,3 +286,4 @@ function* checkThresholds(thresholds, size, label) {
286
286
  }
287
287
  }
288
288
  exports.checkThresholds = checkThresholds;
289
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLWNhbGN1bGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy91dGlscy9idW5kbGUtY2FsY3VsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7QUFHSCx1REFBMEQ7QUFDMUQsa0RBQW9EO0FBYXBELElBQUssYUFHSjtBQUhELFdBQUssYUFBYTtJQUNoQixnQ0FBZSxDQUFBO0lBQ2YsZ0NBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSEksYUFBYSxLQUFiLGFBQWEsUUFHakI7QUFFRCxJQUFZLGlCQUdYO0FBSEQsV0FBWSxpQkFBaUI7SUFDM0Isd0NBQW1CLENBQUE7SUFDbkIsb0NBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSFcsaUJBQWlCLEdBQWpCLHlCQUFpQixLQUFqQix5QkFBaUIsUUFHNUI7QUFRRCxRQUFlLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFjO0lBQ2pELElBQUksTUFBTSxDQUFDLGNBQWMsRUFBRTtRQUN6QixNQUFNO1lBQ0osS0FBSyxFQUFFLGNBQWMsQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ2hFLElBQUksRUFBRSxhQUFhLENBQUMsR0FBRztZQUN2QixRQUFRLEVBQUUsaUJBQWlCLENBQUMsT0FBTztTQUNwQyxDQUFDO0tBQ0g7SUFFRCxJQUFJLE1BQU0sQ0FBQyxZQUFZLEVBQUU7UUFDdkIsTUFBTTtZQUNKLEtBQUssRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUM5RCxJQUFJLEVBQUUsYUFBYSxDQUFDLEdBQUc7WUFDdkIsUUFBUSxFQUFFLGlCQUFpQixDQUFDLEtBQUs7U0FDbEMsQ0FBQztLQUNIO0lBRUQsSUFBSSxNQUFN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QUFFLENBQUMsQ0FBQzthQUNoRjtTQUNGO0tBQ0Y7QUFDSCxDQUFDO0FBMUNELDBDQTBDQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgeyBTdGF0c0Fzc2V0LCBTdGF0c0NodW5rLCBTdGF0c0NvbXBpbGF0aW9uIH0gZnJvbSAnd2VicGFjayc7XG5pbXBvcnQgeyBCdWRnZXQsIFR5cGUgfSBmcm9tICcuLi9idWlsZGVycy9icm93c2VyL3NjaGVtYSc7XG5pbXBvcnQgeyBmb3JtYXRTaXplIH0gZnJvbSAnLi4vd2VicGFjay91dGlscy9zdGF0cyc7XG5cbmludGVyZmFjZSBTaXplIHtcbiAgc2l6ZTogbnVtYmVyO1xuICBsYWJlbD86IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFRocmVzaG9sZCB7XG4gIGxpbWl0OiBudW1iZXI7XG4gIHR5cGU6IFRocmVzaG9sZFR5cGU7XG4gIHNldmVyaXR5OiBUaHJlc2hvbGRTZXZlcml0eTtcbn1cblxuZW51bSBUaHJlc2hvbGRUeXBlIHtcbiAgTWF4ID0gJ21heGltdW0nLFxuICBNaW4gPSAnbWluaW11bScsXG59XG5cbmV4cG9ydCBlbnVtIFRocmVzaG9sZFNldmVyaXR5IHtcbiAgV2FybmluZyA9ICd3YXJuaW5nJyxcbiAgRXJyb3IgPSAnZXJyb3InLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1ZGdldENhbGN1bGF0b3JSZXN1bHQge1xuICBzZXZlcml0eTogVGhyZXNob2xkU2V2ZXJpdHk7XG4gIG1lc3NhZ2U6IHN0cmluZztcbiAgbGFiZWw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiogY2FsY3VsYXRlVGhyZXNob2xkcyhidWRnZXQ6IEJ1ZGdldCk6IEl0ZXJhYmxlSXRlcmF0b3I8VGhyZXNob2xkPiB7XG4gIGlmIChidWRnZXQubWF4aW11bVdhcm5pbmcpIHtcbiAgICB5aWVsZCB7XG4gICAgICBsaW1pdDogY2FsY3VsYXRlQnl0ZXMoYnVkZ2V0Lm1heGltdW1XYXJuaW5nLCBidWRnZXQuYmFzZWxpbmUsIDEpLFxuICAgICAgdHlwZTogVGhyZXNob2xkVHlwZS5NYXgsXG4gICAgICBzZXZlcml0eTogVGhyZXNob2xkU2V2ZXJpdHkuV2FybmluZyxcbiAgICB9O1xuICB9XG5cbiAgaWYgKGJ1ZGdldC5tYXhpbXVtRXJyb3IpIHtcbiAgICB5aWVsZCB7XG4gICAgICBsaW1pdDogY2FsY3VsYXRlQnl0ZXMoYnVkZ2V0Lm1heGltdW1FcnJvciwgYnVkZ2V0LmJhc2VsaW5lLCAxKSxcbiAgICAgIHR5cGU6IFRocmVzaG9sZFR5cGUuTWF4LFxuICAgICAgc2V2ZXJpdHk6IFRocmVzaG9sZFNldmVyaXR5LkVycm9yLFxuICAgIH07XG4gIH1cblxuICBpZiAoYnVkZ2V0Lm1pbmltdW1XYXJuaW5nKSB7XG4gICAgeWllbGQge1xuICAgICAgbGltaXQ6IGNhbGN1bGF0ZUJ5dGVzKGJ1ZGdldC5taW5pbXVtV2FybmluZywgYnVkZ2V0LmJhc2VsaW5lLCAtMSksXG4gICAgICB0eXBlOiBUaHJlc2hvbGRUeXBlLk1pbixcbiAgICAgIHNldmVyaXR5OiBUaHJlc2hvbGRTZXZlcml0eS5XYXJuaW5nLFxuICAgIH07XG4gIH1cblxuICBpZiAoYnVkZ2V0Lm1pbmltdW1FcnJvcikge1xuICAgIHlpZWxkIHtcbiAgICAgIGxpbWl0OiBjYWxjdWxhdGVCeXRlcyhidWRnZXQubWluaW11bUVycm9yLCBidWRnZXQuYmFzZWxpbmUsIC0xKSxcbiAgICAgIHR5cGU6IFRocmVzaG9sZFR5cGUuTWluLFxuICAgICAgc2V2ZXJpdHk6IFRocmVzaG9sZFNldmVyaXR5LkVycm9yLFxuICAgIH07XG4gIH1cblxuICBpZiAoYnVkZ2V0Lndhcm5pbmcpIHtcbiAgICB5aWVsZCB7XG4gICAgICBsaW1pdDogY2FsY3VsYXRlQnl0ZXMoYnVkZ2V0Lndhcm5pbmcsIGJ1ZGdldC5iYXNlbGluZSwgLTEpLFxuICAgICAgdHlwZTogVGhyZXNob2xkVHlwZS5NaW4sXG4gICAgICBzZXZlcml0eTogVGhyZXNob2xkU2V2ZXJpdHkuV2FybmluZyxcbiAgICB9O1xuXG4gICAgeWllbGQge1xuICAgICAgbGltaXQ6IGNhbGN1bGF0ZUJ5dGVzKGJ1ZGdldC53YXJuaW5nLCBidWRnZXQuYmFzZWxpbmUsIDEpLFxuICAgICAgdHlwZTogVGhyZXNob2xkVHlwZS5NYXgsXG4gICAgICBzZXZlcml0eTogVGhyZXNob2xkU2V2ZXJpdHkuV2FybmluZyxcbiAgICB9O1xuICB9XG5cbiAgaWYgKGJ1ZGdldC5lcnJvcikge1xuICAgIHlpZWxkIHtcbiAgICAgIGxpbWl0OiBjYWxjdWxhdGVCeXRlcyhidWRnZXQuZXJyb3IsIGJ1ZGdldC5iYXNlbGluZSwgLTEpLFxuICAgICAgdHlwZTogVGhyZXNob2xkVHlwZS5NaW4sXG4gICAgICBzZXZlcml0eTogVGhyZXNob2xkU2V2ZXJpdHkuRXJyb3IsXG4gICAgfTtcblxuICAgIHlpZWxkIHtcbiAgICAgIGxpbWl0OiBjYWxjdWxhdGVCeXRlcyhidWRnZXQuZXJyb3IsIGJ1ZGdldC5iYXNlbGluZSwgMSksXG4gICAgICB0eXBlOiBUaHJlc2hvbGRUeXBlLk1heCxcbiAgICAgIHNldmVyaXR5OiBUaHJlc2hvbGRTZXZlcml0eS5FcnJvcixcbiAgICB9O1xuICB9XG59XG5cbi8qKlxuICogQ2FsY3VsYXRlcyB0aGUgc2l6ZXMgZm9yIGJ1bmRsZXMgaW4gdGhlIGJ1ZGdldCB0eXBlIHByb3ZpZGVkLlxuICovXG5mdW5jdGlvbiBjYWxjdWxhdGVTaXplcyhidWRnZXQ6IEJ1ZGdldCwgc3RhdHM6IFN0YXRzQ29tcGlsYXRpb24pOiBTaXplW10ge1xuICBpZiAoYnVkZ2V0LnR5cGUgPT09IFR5cGUuQW55Q29tcG9uZW50U3R5bGUpIHtcbiAgICAvLyBDb21wb25lbnQgc3R5bGUgc2l6ZSBpbmZvcm1hdGlvbiBpcyBub3QgYXZhaWxhYmxlIHBvc3QtYnVpbGQsIHRoaXMgbXVzdFxuICAgIC8vIGJlIGNoZWNrZWQgbWlkLWJ1aWxkIHZpYSB0aGUgYEFueUNvbXBvbmVudFN0eWxlQnVkZ2V0Q2hlY2tlcmAgcGx1Z2luLlxuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICdDYW4gbm90IGNhbGN1bGF0ZSBzaXplIG9mIEFueUNvbXBvbmVudFN0eWxlLiBVc2UgYEFueUNvbXBvbmVudFN0eWxlQnVkZ2V0Q2hlY2tlcmAgaW5zdGVhZC4nLFxuICAgICk7XG4gIH1cblxuICB0eXBlIE5vbkNvbXBvbmVudFN0eWxlQnVkZ2V0VHlwZXMgPSBFeGNsdWRlPEJ1ZGdldFsndHlwZSddLCBUeXBlLkFueUNvbXBvbmVudFN0eWxlPjtcbiAgdHlwZSBDYWxjdWxhdG9yVHlwZXMgPSB7XG4gICAgbmV3IChidWRnZXQ6IEJ1ZGdldCwgY2h1bmtzOiBTdGF0c0NodW5rW10sIGFzc2V0czogU3RhdHNBc3NldFtdKTogQ2FsY3VsYXRvcjtcbiAgfTtcbiAgY29uc3QgY2FsY3VsYXRvck1hcDogUmVjb3JkPE5vbkNvbXBvbmVudFN0eWxlQnVkZ2V0VHlwZXMsIENhbGN1bGF0b3JUeXBlcz4gPSB7XG4gICAgYWxsOiBBbGxDYWxjdWxhdG9yLFxuICAgIGFsbFNjcmlwdDogQWxsU2NyaXB0Q2FsY3VsYXRvcixcbiAgICBhbnk6IEFueUNhbGN1bGF0b3IsXG4gICAgYW55U2NyaXB0OiBBbnlTY3JpcHRDYWxjdWxhdG9yLFxuICAgIGJ1bmRsZTogQnVuZGxlQ2FsY3VsYXRvcixcbiAgICBpbml0aWFsOiBJbml0aWFsQ2FsY3VsYXRvcixcbiAgfTtcblxuICBjb25zdCBjdG9yID0gY2FsY3VsYXRvck1hcFtidWRnZXQudHlwZV07XG4gIGNvbnN0IHsgY2h1bmtzLCBhc3NldHMgfSA9IHN0YXRzO1xuICBpZiAoIWNodW5rcykge1xuICAgIHRocm93IG5ldyBFcnJvcignV2VicGFjayBzdGF0cyBvdXRwdXQgZGlkIG5vdCBpbmNsdWRlIGNodW5rIGluZm9ybWF0aW9uLicpO1xuICB9XG4gIGlmICghYXNzZXRzKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdXZWJwYWNrIHN0YXRzIG91dHB1dCBkaWQgbm90IGluY2x1ZGUgYXNzZXQgaW5mb3JtYXRpb24uJyk7XG4gIH1cblxuICBjb25zdCBjYWxjdWxhdG9yID0gbmV3IGN0b3IoYnVkZ2V0LCBjaHVua3MsIGFzc2V0cyk7XG5cbiAgcmV0dXJuIGNhbGN1bGF0b3IuY2FsY3VsYXRlKCk7XG59XG5cbmFic3RyYWN0IGNsYXNzIENhbGN1bGF0b3Ige1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgYnVkZ2V0OiBCdWRnZXQsXG4gICAgcHJvdGVjdGVkIGNodW5rczogU3RhdHNDaHVua1tdLFxuICAgIHByb3RlY3RlZCBhc3NldHM6IFN0YXRzQXNzZXRbXSxcbiAgKSB7fVxuXG4gIGFic3RyYWN0IGNhbGN1bGF0ZSgpOiBTaXplW107XG5cbiAgLyoqIENhbGN1bGF0ZXMgdGhlIHNpemUgb2YgdGhlIGdpdmVuIGNodW5rIGZvciB0aGUgcHJvdmlkZWQgYnVpbGQgdHlwZS4gKi9cbiAgcHJvdGVjdGVkIGNhbGN1bGF0ZUNodW5rU2l6ZShjaHVuazogU3RhdHNDaHVuayk6IG51bWJlciB7XG4gICAgLy8gTm8gZGlmZmVyZW50aWFsIGJ1aWxkcywgZ2V0IHRoZSBjaHVuayBzaXplIGJ5IHN1bW1pbmcgaXRzIGFzc2V0cy5cbiAgICBpZiAoIWNodW5rLmZpbGVzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gY2h1bmsuZmlsZXNcbiAgICAgIC5maWx0ZXIoKGZpbGUpID0+ICFmaWxlLmVuZHNXaXRoKCcubWFwJykpXG4gICAgICAubWFwKChmaWxlKSA9PiB7XG4gICAgICAgIGNvbnN0IGFzc2V0ID0gdGhpcy5hc3NldHMuZmluZCgoYXNzZXQpID0+IGFzc2V0Lm5hbWUgPT09IGZpbGUpO1xuICAgICAgICBpZiAoIWFzc2V0KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgZmluZCBhc3NldCBmb3IgZmlsZTogJHtmaWxlfWApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGFzc2V0LnNpemU7XG4gICAgICB9KVxuICAgICAgLnJlZHVjZSgobCwgcikgPT4gbCArIHIsIDApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldEFzc2V0U2l6ZShhc3NldDogU3RhdHNBc3NldCk6IG51bWJlciB7XG4gICAgcmV0dXJuIGFzc2V0LnNpemU7XG4gIH1cbn1cblxuLyoqXG4gKiBBIG5hbWVkIGJ1bmRsZS5cbiAqL1xuY2xhc3MgQnVuZGxlQ2FsY3VsYXRvciBleHRlbmRzIENhbGN1bGF0b3Ige1xuICBjYWxjdWxhdGUoKSB7XG4gICAgY29uc3QgYnVkZ2V0TmFtZSA9IHRoaXMuYnVkZ2V0Lm5hbWU7XG4gICAgaWYgKCFidWRnZXROYW1lKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgY29uc3Qgc2l6ZSA9IHRoaXMuY2h1bmtzXG4gICAgICAuZmlsdGVyKChjaHVuaykgPT4gY2h1bms/Lm5hbWVzPy5pbmNsdWRlcyhidWRnZXROYW1lKSlcbiAgICAgIC5tYXAoKGNodW5rKSA9PiB0aGlzLmNhbGN1bGF0ZUNodW5rU2l6ZShjaHVuaykpXG4gICAgICAucmVkdWNlKChsLCByKSA9PiBsICsgciwgMCk7XG5cbiAgICByZXR1cm4gW3sgc2l6ZSwgbGFiZWw6IHRoaXMuYnVkZ2V0Lm5hbWUgfV07XG4gIH1cbn1cblxuLyoqXG4gKiBUaGUgc3VtIG9mIGFsbCBpbml0aWFsIGNodW5rcyAobWFya2VkIGFzIGluaXRpYWwpLlxuICovXG5jbGFzcyBJbml0aWFsQ2FsY3VsYXRvciBleHRlbmRzIENhbGN1bGF0b3Ige1xuICBjYWxjdWxhdGUoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6IGBidW5kbGUgaW5pdGlhbGAsXG4gICAgICAgIHNpemU6IHRoaXMuY2h1bmtzXG4gICAgICAgICAgLmZpbHRlcigoY2h1bmspID0+IGNodW5rLmluaXRpYWwpXG4gICAgICAgICAgLm1hcCgoY2h1bmspID0+IHRoaXMuY2FsY3VsYXRlQ2h1bmtTaXplKGNodW5rKSlcbiAgICAgICAgICAucmVkdWNlKChsLCByKSA9PiBsICsgciwgMCksXG4gICAgICB9LFxuICAgIF07XG4gIH1cbn1cblxuLyoqXG4gKiBUaGUgc3VtIG9mIGFsbCB0aGUgc2NyaXB0cyBwb3J0aW9ucy5cbiAqL1xuY2xhc3MgQWxsU2NyaXB0Q2FsY3VsYXRvciBleHRlbmRzIENhbGN1bGF0b3Ige1xuICBjYWxjdWxhdGUoKSB7XG4gICAgY29uc3Qgc2l6ZSA9IHRoaXMuYXNzZXRzXG4gICAgICAuZmlsdGVyKChhc3NldCkgPT4gYXNzZXQubmFtZS5lbmRzV2l0aCgnLmpzJykpXG4gICAgICAubWFwKChhc3NldCkgPT4gdGhpcy5nZXRBc3NldFNpemUoYXNzZXQpKVxuICAgICAgLnJlZHVjZSgodG90YWw6IG51bWJlciwgc2l6ZTogbnVtYmVyKSA9PiB0b3RhbCArIHNpemUsIDApO1xuXG4gICAgcmV0dXJuIFt7IHNpemUsIGxhYmVsOiAndG90YWwgc2NyaXB0cycgfV07XG4gIH1cbn1cblxuLyoqXG4gKiBBbGwgc2NyaXB0cyBhbmQgYXNzZXRzIGFkZGVkIHRvZ2V0aGVyLlxuICovXG5jbGFzcyBBbGxDYWxjdWxhdG9yIGV4dGVuZHMgQ2FsY3VsYXRvciB7XG4gIGNhbGN1bGF0ZSgpIHtcbiAgICBjb25zdCBzaXplID0gdGhpcy5hc3NldHNcbiAgICAgIC5maWx0ZXIoKGFzc2V0KSA9PiAhYXNzZXQubmFtZS5lbmRzV2l0aCgnLm1hcCcpKVxuICAgICAgLm1hcCgoYXNzZXQpID0+IHRoaXMuZ2V0QXNzZXRTaXplKGFzc2V0KSlcbiAgICAgIC5yZWR1Y2UoKHRvdGFsOiBudW1iZXIsIHNpemU6IG51bWJlcikgPT4gdG90YWwgKyBzaXplLCAwKTtcblxuICAgIHJldHVybiBbeyBzaXplLCBsYWJlbDogJ3RvdGFsJyB9XTtcbiAgfVxufVxuXG4vKipcbiAqIEFueSBzY3JpcHQsIGluZGl2aWR1YWxseS5cbiAqL1xuY2xhc3MgQW55U2NyaXB0Q2FsY3VsYXRvciBleHRlbmRzIENhbGN1bGF0b3Ige1xuICBjYWxjdWxhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXNzZXRzXG4gICAgICAuZmlsdGVyKChhc3NldCkgPT4gYXNzZXQubmFtZS5lbmRzV2l0aCgnLmpzJykpXG4gICAgICAubWFwKChhc3NldCkgPT4gKHtcbiAgICAgICAgc2l6ZTogdGhpcy5nZXRBc3NldFNpemUoYXNzZXQpLFxuICAgICAgICBsYWJlbDogYXNzZXQubmFtZSxcbiAgICAgIH0pKTtcbiAgfVxufVxuXG4vKipcbiAqIEFueSBzY3JpcHQgb3IgYXNzZXQgKGltYWdlcywgY3NzLCBldGMpLlxuICovXG5jbGFzcyBBbnlDYWxjdWxhdG9yIGV4dGVuZHMgQ2FsY3VsYXRvciB7XG4gIGNhbGN1bGF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5hc3NldHNcbiAgICAgIC5maWx0ZXIoKGFzc2V0KSA9PiAhYXNzZXQubmFtZS5lbmRzV2l0aCgnLm1hcCcpKVxuICAgICAgLm1hcCgoYXNzZXQpID0+ICh7XG4gICAgICAgIHNpemU6IHRoaXMuZ2V0QXNzZXRTaXplKGFzc2V0KSxcbiAgICAgICAgbGFiZWw6IGFzc2V0Lm5hbWUsXG4gICAgICB9KSk7XG4gIH1cbn1cblxuLyoqXG4gKiBDYWxjdWxhdGUgdGhlIGJ5dGVzIGdpdmVuIGEgc3RyaW5nIHZhbHVlLlxuICovXG5mdW5jdGlvbiBjYWxjdWxhdGVCeXRlcyhpbnB1dDogc3RyaW5nLCBiYXNlbGluZT86IHN0cmluZywgZmFjdG9yOiAxIHwgLTEgPSAxKTogbnVtYmVyIHtcbiAgY29uc3QgbWF0Y2hlcyA9IGlucHV0Lm1hdGNoKC9eXFxzKihcXGQrKD86XFwuXFxkKyk/KVxccyooJXwoPzpbbU1dfFtrS118W2dHXSk/W2JCXSk/XFxzKiQvKTtcbiAgaWYgKCFtYXRjaGVzKSB7XG4gICAgcmV0dXJuIE5hTjtcbiAgfVxuXG4gIGNvbnN0IGJhc2VsaW5lQnl0ZXMgPSAoYmFzZWxpbmUgJiYgY2FsY3VsYXRlQnl0ZXMoYmFzZWxpbmUpKSB8fCAwO1xuXG4gIGxldCB2YWx1ZSA9IE51bWJlcihtYXRjaGVzWzFdKTtcbiAgc3dpdGNoIChtYXRjaGVzWzJdICYmIG1hdGNoZXNbMl0udG9Mb3dlckNhc2UoKSkge1xuICAgIGNhc2UgJyUnOlxuICAgICAgdmFsdWUgPSAoYmFzZWxpbmVCeXRlcyAqIHZhbHVlKSAvIDEwMDtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ2tiJzpcbiAgICAgIHZhbHVlICo9IDEwMjQ7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdtYic6XG4gICAgICB2YWx1ZSAqPSAxMDI0ICogMTAyNDtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ2diJzpcbiAgICAgIHZhbHVlICo9IDEwMjQgKiAxMDI0ICogMTAyNDtcbiAgICAgIGJyZWFrO1xuICB9XG5cbiAgaWYgKGJhc2VsaW5lQnl0ZXMgPT09IDApIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICByZXR1cm4gYmFzZWxpbmVCeXRlcyArIHZhbHVlICogZmFjdG9yO1xufVxuXG5leHBvcnQgZnVuY3Rpb24qIGNoZWNrQnVkZ2V0cyhcbiAgYnVkZ2V0czogQnVkZ2V0W10sXG4gIHdlYnBhY2tTdGF0czogU3RhdHNDb21waWxhdGlvbixcbik6IEl0ZXJhYmxlSXRlcmF0b3I8QnVkZ2V0Q2FsY3VsYXRvclJlc3VsdD4ge1xuICAvLyBJZ25vcmUgQW55Q29tcG9uZW50U3R5bGUgYnVkZ2V0cyBhcyB0aGVzZSBhcmUgaGFuZGxlZCBpbiBgQW55Q29tcG9uZW50U3R5bGVCdWRnZXRDaGVja2VyYC5cbiAgY29uc3QgY29tcHV0YWJsZUJ1ZGdldHMgPSBidWRnZXRzLmZpbHRlcigoYnVkZ2V0KSA9PiBidWRnZXQudHlwZSAhPT0gVHlwZS5BbnlDb21wb25lbnRTdHlsZSk7XG5cbiAgZm9yIChjb25zdCBidWRnZXQgb2YgY29tcHV0YWJsZUJ1ZGdldHMpIHtcbiAgICBjb25zdCBzaXplcyA9IGNhbGN1bGF0ZVNpemVzKGJ1ZGdldCwgd2VicGFja1N0YXRzKTtcbiAgICBmb3IgKGNvbnN0IHsgc2l6ZSwgbGFiZWwgfSBvZiBzaXplcykge1xuICAgICAgeWllbGQqIGNoZWNrVGhyZXNob2xkcyhjYWxjdWxhdGVUaHJlc2hvbGRzKGJ1ZGdldCksIHNpemUsIGxhYmVsKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uKiBjaGVja1RocmVzaG9sZHMoXG4gIHRocmVzaG9sZHM6IEl0ZXJhYmxlSXRlcmF0b3I8VGhyZXNob2xkPixcbiAgc2l6ZTogbnVtYmVyLFxuICBsYWJlbD86IHN0cmluZyxcbik6IEl0ZXJhYmxlSXRlcmF0b3I8QnVkZ2V0Q2FsY3VsYXRvclJlc3VsdD4ge1xuICBmb3IgKGNvbnN0IHRocmVzaG9sZCBvZiB0aHJlc2hvbGRzKSB7XG4gICAgc3dpdGNoICh0aHJlc2hvbGQudHlwZSkge1xuICAgICAgY2FzZSBUaHJlc2hvbGRUeXBlLk1heDoge1xuICAgICAgICBpZiAoc2l6ZSA8PSB0aHJlc2hvbGQubGltaXQpIHtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHNpemVEaWZmZXJlbmNlID0gZm9ybWF0U2l6ZShzaXplIC0gdGhyZXNob2xkLmxpbWl0KTtcbiAgICAgICAgeWllbGQge1xuICAgICAgICAgIHNldmVyaXR5OiB0aHJlc2hvbGQuc2V2ZXJpdHksXG4gICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgbWVzc2FnZTogYCR7bGFiZWx9IGV4Y2VlZGVkIG1heGltdW0gYnVkZ2V0LiBCdWRnZXQgJHtmb3JtYXRTaXplKFxuICAgICAgICAgICAgdGhyZXNob2xkLmxpbWl0LFxuICAgICAgICAgICl9IHdhcyBub3QgbWV0IGJ5ICR7c2l6ZURpZmZlcmVuY2V9IHdpdGggYSB0b3RhbCBvZiAke2Zvcm1hdFNpemUoc2l6ZSl9LmAsXG4gICAgICAgIH07XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSBUaHJlc2hvbGRUeXBlLk1pbjoge1xuICAgICAgICBpZiAoc2l6ZSA+PSB0aHJlc2hvbGQubGltaXQpIHtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHNpemVEaWZmZXJlbmNlID0gZm9ybWF0U2l6ZSh0aHJlc2hvbGQubGltaXQgLSBzaXplKTtcbiAgICAgICAgeWllbGQge1xuICAgICAgICAgIHNldmVyaXR5OiB0aHJlc2hvbGQuc2V2ZXJpdHksXG4gICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgbWVzc2FnZTogYCR7bGFiZWx9IGZhaWxlZCB0byBtZWV0IG1pbmltdW0gYnVkZ2V0LiBCdWRnZXQgJHtmb3JtYXRTaXplKFxuICAgICAgICAgICAgdGhyZXNob2xkLmxpbWl0LFxuICAgICAgICAgICl9IHdhcyBub3QgbWV0IGJ5ICR7c2l6ZURpZmZlcmVuY2V9IHdpdGggYSB0b3RhbCBvZiAke2Zvcm1hdFNpemUoc2l6ZSl9LmAsXG4gICAgICAgIH07XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgZGVmYXVsdDoge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuZXhwZWN0ZWQgdGhyZXNob2xkIHR5cGU6ICR7VGhyZXNob2xkVHlwZVt0aHJlc2hvbGQudHlwZV19YCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
File without changes
@@ -68,3 +68,4 @@ async function checkPort(port, host) {
68
68
  });
69
69
  }
70
70
  exports.checkPort = checkPort;
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stcG9ydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL3V0aWxzL2NoZWNrLXBvcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCx5Q0FBMkI7QUFDM0IsK0JBQThCO0FBRTlCLFNBQVMsZ0JBQWdCLENBQUMsSUFBWTtJQUNwQyxPQUFPLElBQUksS0FBSyxDQUFDLFFBQVEsSUFBSSwrREFBK0QsQ0FBQyxDQUFDO0FBQ2hHLENBQUM7QUFFTSxLQUFLLFVBQVUsU0FBUyxDQUFDLElBQVksRUFBRSxJQUFZO0lBQ3hELElBQUksSUFBSSxLQUFLLENBQUMsRUFBRTtRQUNkLE9BQU8sQ0FBQyxDQUFDO0tBQ1Y7SUFFRCxPQUFPLElBQUksT0FBTyxDQUFTLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQzdDLE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVsQyxNQUFNO2FBQ0gsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQTBCLEVBQUUsRUFBRTtZQUM1QyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssWUFBWSxFQUFFO2dCQUM3QixNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBRVosT0FBTzthQUNSO1lBRUQsSUFBSSxDQUFDLFdBQUssRUFBRTtnQkFDVixNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFFL0IsT0FBTzthQUNSO1lBRUQsa0RBQU8sVUFBVSxJQUNkLElBQUksQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUNuQixNQUFNLENBQUM7Z0JBQ0wsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsSUFBSSxFQUFFLGNBQWM7Z0JBQ3BCLE9BQU8sRUFBRSxRQUFRLElBQUksOERBQThEO2dCQUNuRixPQUFPLEVBQUUsSUFBSTthQUNkLENBQUMsQ0FDSDtpQkFDQSxJQUFJLENBQ0gsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNqRixHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDckMsQ0FBQztRQUNOLENBQUMsQ0FBQzthQUNELElBQUksQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFO1lBQ3RCLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQixDQUFDLENBQUM7YUFDRCxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hCLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQTFDRCw4QkEwQ0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgbmV0IGZyb20gJ25ldCc7XG5pbXBvcnQgeyBpc1RUWSB9IGZyb20gJy4vdHR5JztcblxuZnVuY3Rpb24gY3JlYXRlSW5Vc2VFcnJvcihwb3J0OiBudW1iZXIpOiBFcnJvciB7XG4gIHJldHVybiBuZXcgRXJyb3IoYFBvcnQgJHtwb3J0fSBpcyBhbHJlYWR5IGluIHVzZS4gVXNlICctLXBvcnQnIHRvIHNwZWNpZnkgYSBkaWZmZXJlbnQgcG9ydC5gKTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNoZWNrUG9ydChwb3J0OiBudW1iZXIsIGhvc3Q6IHN0cmluZyk6IFByb21pc2U8bnVtYmVyPiB7XG4gIGlmIChwb3J0ID09PSAwKSB7XG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICByZXR1cm4gbmV3IFByb21pc2U8bnVtYmVyPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3Qgc2VydmVyID0gbmV0LmNyZWF0ZVNlcnZlcigpO1xuXG4gICAgc2VydmVyXG4gICAgICAub25jZSgnZXJyb3InLCAoZXJyOiBOb2RlSlMuRXJybm9FeGNlcHRpb24pID0+IHtcbiAgICAgICAgaWYgKGVyci5jb2RlICE9PSAnRUFERFJJTlVTRScpIHtcbiAgICAgICAgICByZWplY3QoZXJyKTtcblxuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghaXNUVFkpIHtcbiAgICAgICAgICByZWplY3QoY3JlYXRlSW5Vc2VFcnJvcihwb3J0KSk7XG5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpbXBvcnQoJ2lucXVpcmVyJylcbiAgICAgICAgICAudGhlbigoeyBwcm9tcHQgfSkgPT5cbiAgICAgICAgICAgIHByb21wdCh7XG4gICAgICAgICAgICAgIHR5cGU6ICdjb25maXJtJyxcbiAgICAgICAgICAgICAgbmFtZTogJ3VzZURpZmZlcmVudCcsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGBQb3J0ICR7cG9ydH0gaXMgYWxyZWFkeSBpbiB1c2UuXFxuV291bGQgeW91IGxpa2UgdG8gdXNlIGEgZGlmZmVyZW50IHBvcnQ/YCxcbiAgICAgICAgICAgICAgZGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIClcbiAgICAgICAgICAudGhlbihcbiAgICAgICAgICAgIChhbnN3ZXJzKSA9PiAoYW5zd2Vycy51c2VEaWZmZXJlbnQgPyByZXNvbHZlKDApIDogcmVqZWN0KGNyZWF0ZUluVXNlRXJyb3IocG9ydCkpKSxcbiAgICAgICAgICAgICgpID0+IHJlamVjdChjcmVhdGVJblVzZUVycm9yKHBvcnQpKSxcbiAgICAgICAgICApO1xuICAgICAgfSlcbiAgICAgIC5vbmNlKCdsaXN0ZW5pbmcnLCAoKSA9PiB7XG4gICAgICAgIHNlcnZlci5jbG9zZSgpO1xuICAgICAgICByZXNvbHZlKHBvcnQpO1xuICAgICAgfSlcbiAgICAgIC5saXN0ZW4ocG9ydCwgaG9zdCk7XG4gIH0pO1xufVxuIl19
File without changes
@@ -67,3 +67,4 @@ exports.removeColor = removeColor;
67
67
  const colors = ansiColors.create();
68
68
  exports.colors = colors;
69
69
  colors.enabled = supportColor();
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy91dGlscy9jb2xvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVILHdEQUEwQztBQUMxQyw2QkFBa0M7QUFFbEMsU0FBUyxZQUFZO0lBQ25CLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEtBQUssU0FBUyxFQUFFO1FBQ3pDLHVEQUF1RDtRQUN2RCxzQ0FBc0M7UUFDdEMsdUNBQXVDO1FBQ3ZDLCtDQUErQztRQUMvQyxnR0FBZ0c7UUFDaEcsNkdBQTZHO1FBQzdHLFFBQVEsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUU7WUFDL0IsS0FBSyxFQUFFLENBQUM7WUFDUixLQUFLLE1BQU0sQ0FBQztZQUNaLEtBQUssR0FBRyxDQUFDO1lBQ1QsS0FBSyxHQUFHLENBQUM7WUFDVCxLQUFLLEdBQUc7Z0JBQ04sT0FBTyxJQUFJLENBQUM7WUFDZDtnQkFDRSxPQUFPLEtBQUssQ0FBQztTQUNoQjtLQUNGO0lBRUQsSUFBSSxPQUFPLENBQUMsTUFBTSxZQUFZLGlCQUFXLEVBQUU7UUFDekMsT0FBTyxPQUFPLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQztLQUMzQztJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQUVELFNBQWdCLFdBQVcsQ0FBQyxJQUFZO0lBQ3RDLGtGQUFrRjtJQUNsRix1R0FBdUc7SUFDdkcsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDaEQsQ0FBQztBQUpELGtDQUlDO0FBRUQsNkZBQTZGO0FBQzdGLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztBQUcxQix3QkFBTTtBQUZmLE1BQU0sQ0FBQyxPQUFPLEdBQUcsWUFBWSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgYW5zaUNvbG9ycyBmcm9tICdhbnNpLWNvbG9ycyc7XG5pbXBvcnQgeyBXcml0ZVN0cmVhbSB9IGZyb20gJ3R0eSc7XG5cbmZ1bmN0aW9uIHN1cHBvcnRDb2xvcigpOiBib29sZWFuIHtcbiAgaWYgKHByb2Nlc3MuZW52LkZPUkNFX0NPTE9SICE9PSB1bmRlZmluZWQpIHtcbiAgICAvLyAyIGNvbG9yczogRk9SQ0VfQ09MT1IgPSAwIChEaXNhYmxlcyBjb2xvcnMpLCBkZXB0aCAxXG4gICAgLy8gMTYgY29sb3JzOiBGT1JDRV9DT0xPUiA9IDEsIGRlcHRoIDRcbiAgICAvLyAyNTYgY29sb3JzOiBGT1JDRV9DT0xPUiA9IDIsIGRlcHRoIDhcbiAgICAvLyAxNiw3NzcsMjE2IGNvbG9yczogRk9SQ0VfQ09MT1IgPSAzLCBkZXB0aCAxNlxuICAgIC8vIFNlZTogaHR0cHM6Ly9ub2RlanMub3JnL2Rpc3QvbGF0ZXN0LXYxMi54L2RvY3MvYXBpL3R0eS5odG1sI3R0eV93cml0ZXN0cmVhbV9nZXRjb2xvcmRlcHRoX2VudlxuICAgIC8vIGFuZCBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvYmxvYi9iOWYzNjA2MmQ3YjVjNTAzOTQ5OGU5OGQyZjJjMTgwZGNhMmE3MDY1L2xpYi9pbnRlcm5hbC90dHkuanMjTDEwNjtcbiAgICBzd2l0Y2ggKHByb2Nlc3MuZW52LkZPUkNFX0NPTE9SKSB7XG4gICAgICBjYXNlICcnOlxuICAgICAgY2FzZSAndHJ1ZSc6XG4gICAgICBjYXNlICcxJzpcbiAgICAgIGNhc2UgJzInOlxuICAgICAgY2FzZSAnMyc6XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIGlmIChwcm9jZXNzLnN0ZG91dCBpbnN0YW5jZW9mIFdyaXRlU3RyZWFtKSB7XG4gICAgcmV0dXJuIHByb2Nlc3Muc3Rkb3V0LmdldENvbG9yRGVwdGgoKSA+IDE7XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVDb2xvcih0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAvLyBUaGlzIGhhcyBiZWVuIGNyZWF0ZWQgYmVjYXVzZSB3aGVuIGNvbG9ycy5lbmFibGVkIGlzIGZhbHNlIHVuc3R5bGUgZG9lc24ndCB3b3JrXG4gIC8vIHNlZTogaHR0cHM6Ly9naXRodWIuY29tL2Rvb3diL2Fuc2ktY29sb3JzL2Jsb2IvYTQ3OTQzNjMzNjlkN2I0ZDE4NzJkMjQ4ZmM0M2ExMjc2MTY0MGQ4ZS9pbmRleC5qcyNMMzhcbiAgcmV0dXJuIHRleHQucmVwbGFjZShhbnNpQ29sb3JzLmFuc2lSZWdleCwgJycpO1xufVxuXG4vLyBDcmVhdGUgYSBzZXBhcmF0ZSBpbnN0YW5jZSB0byBwcmV2ZW50IHVuaW50ZW5kZWQgZ2xvYmFsIGNoYW5nZXMgdG8gdGhlIGNvbG9yIGNvbmZpZ3VyYXRpb25cbmNvbnN0IGNvbG9ycyA9IGFuc2lDb2xvcnMuY3JlYXRlKCk7XG5jb2xvcnMuZW5hYmxlZCA9IHN1cHBvcnRDb2xvcigpO1xuXG5leHBvcnQgeyBjb2xvcnMgfTtcbiJdfQ==
File without changes
@@ -74,3 +74,4 @@ async function copyAssets(entries, basePaths, root, changed) {
74
74
  }
75
75
  }
76
76
  exports.copyAssets = copyAssets;
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS1hc3NldHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy91dGlscy9jb3B5LWFzc2V0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVILHVDQUF5QjtBQUN6QixnREFBd0I7QUFDeEIsMkNBQTZCO0FBQzdCLCtCQUFpQztBQUVqQyxNQUFNLFdBQVcsR0FBRyxJQUFBLGdCQUFTLEVBQUMsY0FBSSxDQUFDLENBQUM7QUFFN0IsS0FBSyxVQUFVLFVBQVUsQ0FDOUIsT0FPRyxFQUNILFNBQTJCLEVBQzNCLElBQVksRUFDWixPQUFxQjtJQUVyQixNQUFNLGFBQWEsR0FBRyxDQUFDLFVBQVUsRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFFbkUsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLEVBQUU7UUFDM0IsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVDLE1BQU0sS0FBSyxHQUFHLE1BQU0sV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUU7WUFDMUMsR0FBRztZQUNILEdBQUcsRUFBRSxJQUFJO1lBQ1QsS0FBSyxFQUFFLElBQUk7WUFDWCxJQUFJLEVBQUUsR0FBRztZQUNULE9BQU8sRUFBRSxJQUFJO1lBQ2IsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhO1lBQ3pFLE1BQU0sRUFBRSxLQUFLLENBQUMsY0FBYztTQUM3QixDQUFDLENBQUM7UUFFSCxNQUFNLGVBQWUsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO1FBRTFDLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxFQUFFO1lBQ3hCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2pDLElBQUksT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDaEMsU0FBUzthQUNWO1lBRUQsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzVELEtBQUssTUFBTSxJQUFJLElBQUksU0FBUyxFQUFFO2dCQUM1QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUNyRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUMvQixJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDN0IsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7d0JBQ3ZCLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7cUJBQ3hDO29CQUNELGVBQWUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQzFCO2dCQUNELEVBQUUsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLENBQUM7YUFDM0Q7U0FDRjtLQUNGO0FBQ0gsQ0FBQztBQWpERCxnQ0FpREMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0IGdsb2IgZnJvbSAnZ2xvYic7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgcHJvbWlzaWZ5IH0gZnJvbSAndXRpbCc7XG5cbmNvbnN0IGdsb2JQcm9taXNlID0gcHJvbWlzaWZ5KGdsb2IpO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY29weUFzc2V0cyhcbiAgZW50cmllczoge1xuICAgIGdsb2I6IHN0cmluZztcbiAgICBpZ25vcmU/OiBzdHJpbmdbXTtcbiAgICBpbnB1dDogc3RyaW5nO1xuICAgIG91dHB1dDogc3RyaW5nO1xuICAgIGZsYXR0ZW4/OiBib29sZWFuO1xuICAgIGZvbGxvd1N5bWxpbmtzPzogYm9vbGVhbjtcbiAgfVtdLFxuICBiYXNlUGF0aHM6IEl0ZXJhYmxlPHN0cmluZz4sXG4gIHJvb3Q6IHN0cmluZyxcbiAgY2hhbmdlZD86IFNldDxzdHJpbmc+LFxuKSB7XG4gIGNvbnN0IGRlZmF1bHRJZ25vcmUgPSBbJy5naXRrZWVwJywgJyoqLy5EU19TdG9yZScsICcqKi9UaHVtYnMuZGInXTtcblxuICBmb3IgKGNvbnN0IGVudHJ5IG9mIGVudHJpZXMpIHtcbiAgICBjb25zdCBjd2QgPSBwYXRoLnJlc29sdmUocm9vdCwgZW50cnkuaW5wdXQpO1xuICAgIGNvbnN0IGZpbGVzID0gYXdhaXQgZ2xvYlByb21pc2UoZW50cnkuZ2xvYiwge1xuICAgICAgY3dkLFxuICAgICAgZG90OiB0cnVlLFxuICAgICAgbm9kaXI6IHRydWUsXG4gICAgICByb290OiBjd2QsXG4gICAgICBub21vdW50OiB0cnVlLFxuICAgICAgaWdub3JlOiBlbnRyeS5pZ25vcmUgPyBkZWZhdWx0SWdub3JlLmNvbmNhdChlbnRyeS5pZ25vcmUpIDogZGVmYXVsdElnbm9yZSxcbiAgICAgIGZvbGxvdzogZW50cnkuZm9sbG93U3ltbGlua3MsXG4gICAgfSk7XG5cbiAgICBjb25zdCBkaXJlY3RvcnlFeGlzdHMgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICAgIGZvciAoY29uc3QgZmlsZSBvZiBmaWxlcykge1xuICAgICAgY29uc3Qgc3JjID0gcGF0aC5qb2luKGN3ZCwgZmlsZSk7XG4gICAgICBpZiAoY2hhbmdlZCAmJiAhY2hhbmdlZC5oYXMoc3JjKSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZmlsZVBhdGggPSBlbnRyeS5mbGF0dGVuID8gcGF0aC5iYXNlbmFtZShmaWxlKSA6IGZpbGU7XG4gICAgICBmb3IgKGNvbnN0IGJhc2Ugb2YgYmFzZVBhdGhzKSB7XG4gICAgICAgIGNvbnN0IGRlc3QgPSBwYXRoLmpvaW4oYmFzZSwgZW50cnkub3V0cHV0LCBmaWxlUGF0aCk7XG4gICAgICAgIGNvbnN0IGRpciA9IHBhdGguZGlybmFtZShkZXN0KTtcbiAgICAgICAgaWYgKCFkaXJlY3RvcnlFeGlzdHMuaGFzKGRpcikpIHtcbiAgICAgICAgICBpZiAoIWZzLmV4aXN0c1N5bmMoZGlyKSkge1xuICAgICAgICAgICAgZnMubWtkaXJTeW5jKGRpciwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGRpcmVjdG9yeUV4aXN0cy5hZGQoZGlyKTtcbiAgICAgICAgfVxuICAgICAgICBmcy5jb3B5RmlsZVN5bmMoc3JjLCBkZXN0LCBmcy5jb25zdGFudHMuQ09QWUZJTEVfRklDTE9ORSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
File without changes
@@ -15,3 +15,4 @@ function defaultProgress(progress) {
15
15
  return progress;
16
16
  }
17
17
  exports.defaultProgress = defaultProgress;
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1wcm9ncmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL3V0aWxzL2RlZmF1bHQtcHJvZ3Jlc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsU0FBZ0IsZUFBZSxDQUFDLFFBQTZCO0lBQzNELElBQUksUUFBUSxLQUFLLFNBQVMsRUFBRTtRQUMxQixPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQztLQUN0QztJQUVELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUM7QUFORCwwQ0FNQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gZGVmYXVsdFByb2dyZXNzKHByb2dyZXNzOiBib29sZWFuIHwgdW5kZWZpbmVkKTogYm9vbGVhbiB7XG4gIGlmIChwcm9ncmVzcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHByb2Nlc3Muc3Rkb3V0LmlzVFRZID09PSB0cnVlO1xuICB9XG5cbiAgcmV0dXJuIHByb2dyZXNzO1xufVxuIl19
File without changes
@@ -44,3 +44,4 @@ function deleteOutputDir(root, outputPath) {
44
44
  fs.rmSync(resolvedOutputPath, { force: true, recursive: true, maxRetries: 3 });
45
45
  }
46
46
  exports.deleteOutputDir = deleteOutputDir;
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLW91dHB1dC1kaXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy91dGlscy9kZWxldGUtb3V0cHV0LWRpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVILHVDQUF5QjtBQUN6QiwrQkFBK0I7QUFFL0I7O0dBRUc7QUFDSCxTQUFnQixlQUFlLENBQUMsSUFBWSxFQUFFLFVBQWtCO0lBQzlELE1BQU0sa0JBQWtCLEdBQUcsSUFBQSxjQUFPLEVBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3JELElBQUksa0JBQWtCLEtBQUssSUFBSSxFQUFFO1FBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUMsaURBQWlELENBQUMsQ0FBQztLQUNwRTtJQUVELEVBQUUsQ0FBQyxNQUFNLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDakYsQ0FBQztBQVBELDBDQU9DIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcbmltcG9ydCB7IHJlc29sdmUgfSBmcm9tICdwYXRoJztcblxuLyoqXG4gKiBEZWxldGUgYW4gb3V0cHV0IGRpcmVjdG9yeSwgYnV0IGVycm9yIG91dCBpZiBpdCdzIHRoZSByb290IG9mIHRoZSBwcm9qZWN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVsZXRlT3V0cHV0RGlyKHJvb3Q6IHN0cmluZywgb3V0cHV0UGF0aDogc3RyaW5nKTogdm9pZCB7XG4gIGNvbnN0IHJlc29sdmVkT3V0cHV0UGF0aCA9IHJlc29sdmUocm9vdCwgb3V0cHV0UGF0aCk7XG4gIGlmIChyZXNvbHZlZE91dHB1dFBhdGggPT09IHJvb3QpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ091dHB1dCBwYXRoIE1VU1Qgbm90IGJlIHByb2plY3Qgcm9vdCBkaXJlY3RvcnkhJyk7XG4gIH1cblxuICBmcy5ybVN5bmMocmVzb2x2ZWRPdXRwdXRQYXRoLCB7IGZvcmNlOiB0cnVlLCByZWN1cnNpdmU6IHRydWUsIG1heFJldHJpZXM6IDMgfSk7XG59XG4iXX0=
File without changes
@@ -79,3 +79,4 @@ exports.useLegacySass = (() => {
79
79
  })();
80
80
  const debugPerfVariable = process.env['NG_BUILD_DEBUG_PERF'];
81
81
  exports.debugPerformance = isPresent(debugPerfVariable) && isEnabled(debugPerfVariable);
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL3V0aWxzL2Vudmlyb25tZW50LW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsbUNBQWlDO0FBRWpDLFNBQVMsVUFBVSxDQUFDLFFBQWdCO0lBQ2xDLE9BQU8sUUFBUSxLQUFLLEdBQUcsSUFBSSxRQUFRLENBQUMsV0FBVyxFQUFFLEtBQUssT0FBTyxDQUFDO0FBQ2hFLENBQUM7QUFFRCxTQUFTLFNBQVMsQ0FBQyxRQUFnQjtJQUNqQyxPQUFPLFFBQVEsS0FBSyxHQUFHLElBQUksUUFBUSxDQUFDLFdBQVcsRUFBRSxLQUFLLE1BQU0sQ0FBQztBQUMvRCxDQUFDO0FBRUQsU0FBUyxTQUFTLENBQUMsUUFBNEI7SUFDN0MsT0FBTyxPQUFPLFFBQVEsS0FBSyxRQUFRLElBQUksUUFBUSxLQUFLLEVBQUUsQ0FBQztBQUN6RCxDQUFDO0FBRUQsNEJBQTRCO0FBQzVCLE1BQU0scUJBQXFCLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0FBQ3JFLE1BQU0sYUFBYSxHQUFHLENBQUMsR0FBRyxFQUFFO0lBQzFCLElBQUksQ0FBQyxTQUFTLENBQUMscUJBQXFCLENBQUMsSUFBSSxVQUFVLENBQUMscUJBQXFCLENBQUMsRUFBRTtRQUMxRSxPQUFPO1lBQ0wsTUFBTSxFQUFFLElBQUk7WUFDWixNQUFNLEVBQUUsSUFBSTtZQUNaLFFBQVEsRUFBRSxLQUFLO1NBQ2hCLENBQUM7S0FDSDtJQUVELE1BQU0sVUFBVSxHQUFHO1FBQ2pCLE1BQU0sRUFBRSxLQUFLO1FBQ2IsTUFBTSxFQUFFLEtBQUs7UUFDYixRQUFRLEVBQUUsSUFBSTtLQUNmLENBQUM7SUFFRixJQUFJLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFO1FBQ3BDLE9BQU8sVUFBVSxDQUFDO0tBQ25CO0lBRUQsS0FBSyxNQUFNLElBQUksSUFBSSxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDbkQsUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDakMsS0FBSyxRQUFRO2dCQUNYLFVBQVUsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO2dCQUN6QixNQUFNO1lBQ1IsS0FBSyxRQUFRO2dCQUNYLFVBQVUsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO2dCQUN6QixNQUFNO1lBQ1IsS0FBSyxVQUFVO2dCQUNiLFVBQVUsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO2dCQUMzQixNQUFNO1NBQ1Q7S0FDRjtJQUVELE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFFTCxNQUFNLGNBQWMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFDekMsUUFBQSxXQUFXLEdBQUcsU0FBUyxDQUFDLGNBQWMsQ0FBQztJQUNsRCxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUMsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDO0FBRVosUUFBQSxjQUFjLEdBQUcsYUFBYSxDQUFDLFFBQVEsQ0FBQztBQUN4QyxRQUFBLFdBQVcsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDO0FBRWhEOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxrQkFBa0IsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7QUFDbEQsUUFBQSxVQUFVLEdBQUcsU0FBUyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUVsRixNQUFNLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsQ0FBQztBQUNsRCxRQUFBLGFBQWEsR0FBWSxDQUFDLEdBQUcsRUFBRTtJQUMxQyxJQUFJLENBQUMsU0FBUyxDQUFDLGtCQUFrQixDQUFDLEVBQUU7UUFDbEMsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUVELHNDQUFzQztJQUN0QyxPQUFPLENBQUMsSUFBSSxDQUNWLGNBQU0sQ0FBQyxNQUFNLENBQ1gsNkZBQTZGLENBQzlGLENBQ0YsQ0FBQztJQUVGLE9BQU8sU0FBUyxDQUFDLGtCQUFrQixDQUFDLENBQUM7QUFDdkMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUVMLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0FBQ2hELFFBQUEsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDLGlCQUFpQixDQUFDLElBQUksU0FBUyxDQUFDLGlCQUFpQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHsgY29sb3JzIH0gZnJvbSAnLi9jb2xvcic7XG5cbmZ1bmN0aW9uIGlzRGlzYWJsZWQodmFyaWFibGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gdmFyaWFibGUgPT09ICcwJyB8fCB2YXJpYWJsZS50b0xvd2VyQ2FzZSgpID09PSAnZmFsc2UnO1xufVxuXG5mdW5jdGlvbiBpc0VuYWJsZWQodmFyaWFibGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gdmFyaWFibGUgPT09ICcxJyB8fCB2YXJpYWJsZS50b0xvd2VyQ2FzZSgpID09PSAndHJ1ZSc7XG59XG5cbmZ1bmN0aW9uIGlzUHJlc2VudCh2YXJpYWJsZTogc3RyaW5nIHwgdW5kZWZpbmVkKTogdmFyaWFibGUgaXMgc3RyaW5nIHtcbiAgcmV0dXJuIHR5cGVvZiB2YXJpYWJsZSA9PT0gJ3N0cmluZycgJiYgdmFyaWFibGUgIT09ICcnO1xufVxuXG4vLyBPcHRpbWl6YXRpb24gYW5kIG1hbmdsaW5nXG5jb25zdCBkZWJ1Z09wdGltaXplVmFyaWFibGUgPSBwcm9jZXNzLmVudlsnTkdfQlVJTERfREVCVUdfT1BUSU1JWkUnXTtcbmNvbnN0IGRlYnVnT3B0aW1pemUgPSAoKCkgPT4ge1xuICBpZiAoIWlzUHJlc2VudChkZWJ1Z09wdGltaXplVmFyaWFibGUpIHx8IGlzRGlzYWJsZWQoZGVidWdPcHRpbWl6ZVZhcmlhYmxlKSkge1xuICAgIHJldHVybiB7XG4gICAgICBtYW5nbGU6IHRydWUsXG4gICAgICBtaW5pZnk6IHRydWUsXG4gICAgICBiZWF1dGlmeTogZmFsc2UsXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0IGRlYnVnVmFsdWUgPSB7XG4gICAgbWFuZ2xlOiBmYWxzZSxcbiAgICBtaW5pZnk6IGZhbHNlLFxuICAgIGJlYXV0aWZ5OiB0cnVlLFxuICB9O1xuXG4gIGlmIChpc0VuYWJsZWQoZGVidWdPcHRpbWl6ZVZhcmlhYmxlKSkge1xuICAgIHJldHVybiBkZWJ1Z1ZhbHVlO1xuICB9XG5cbiAgZm9yIChjb25zdCBwYXJ0IG9mIGRlYnVnT3B0aW1pemVWYXJpYWJsZS5zcGxpdCgnLCcpKSB7XG4gICAgc3dpdGNoIChwYXJ0LnRyaW0oKS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICBjYXNlICdtYW5nbGUnOlxuICAgICAgICBkZWJ1Z1ZhbHVlLm1hbmdsZSA9IHRydWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnbWluaWZ5JzpcbiAgICAgICAgZGVidWdWYWx1ZS5taW5pZnkgPSB0cnVlO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2JlYXV0aWZ5JzpcbiAgICAgICAgZGVidWdWYWx1ZS5iZWF1dGlmeSA9IHRydWU7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZWJ1Z1ZhbHVlO1xufSkoKTtcblxuY29uc3QgbWFuZ2xlVmFyaWFibGUgPSBwcm9jZXNzLmVudlsnTkdfQlVJTERfTUFOR0xFJ107XG5leHBvcnQgY29uc3QgYWxsb3dNYW5nbGUgPSBpc1ByZXNlbnQobWFuZ2xlVmFyaWFibGUpXG4gID8gIWlzRGlzYWJsZWQobWFuZ2xlVmFyaWFibGUpXG4gIDogZGVidWdPcHRpbWl6ZS5tYW5nbGU7XG5cbmV4cG9ydCBjb25zdCBzaG91bGRCZWF1dGlmeSA9IGRlYnVnT3B0aW1pemUuYmVhdXRpZnk7XG5leHBvcnQgY29uc3QgYWxsb3dNaW5pZnkgPSBkZWJ1Z09wdGltaXplLm1pbmlmeTtcblxuLyoqXG4gKiBTb21lIGVudmlyb25tZW50cywgbGlrZSBDaXJjbGVDSSB3aGljaCB1c2UgRG9ja2VyIHJlcG9ydCBhIG51bWJlciBvZiBDUFVzIGJ5IHRoZSBob3N0IGFuZCBub3QgdGhlIGNvdW50IG9mIGF2YWlsYWJsZS5cbiAqIFRoaXMgY2F1c2UgYEVycm9yOiBDYWxsIHJldHJpZXMgd2VyZSBleGNlZWRlZGAgZXJyb3JzIHdoZW4gdHJ5aW5nIHRvIHVzZSB0aGVtLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy9ub2RlL2lzc3Vlcy8yODc2MlxuICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vd2VicGFjay1jb250cmliL3RlcnNlci13ZWJwYWNrLXBsdWdpbi9pc3N1ZXMvMTQzXG4gKiBAc2VlIGh0dHBzOi8vaXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci1jbGkvaXNzdWVzLzE2ODYwI2lzc3VlY29tbWVudC01ODg4MjgwNzlcbiAqXG4gKi9cbmNvbnN0IG1heFdvcmtlcnNWYXJpYWJsZSA9IHByb2Nlc3MuZW52WydOR19CVUlMRF9NQVhfV09SS0VSUyddO1xuZXhwb3J0IGNvbnN0IG1heFdvcmtlcnMgPSBpc1ByZXNlbnQobWF4V29ya2Vyc1ZhcmlhYmxlKSA/ICttYXhXb3JrZXJzVmFyaWFibGUgOiA0O1xuXG5jb25zdCBsZWdhY3lTYXNzVmFyaWFibGUgPSBwcm9jZXNzLmVudlsnTkdfQlVJTERfTEVHQUNZX1NBU1MnXTtcbmV4cG9ydCBjb25zdCB1c2VMZWdhY3lTYXNzOiBib29sZWFuID0gKCgpID0+IHtcbiAgaWYgKCFpc1ByZXNlbnQobGVnYWN5U2Fzc1ZhcmlhYmxlKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gIGNvbnNvbGUud2FybihcbiAgICBjb2xvcnMueWVsbG93KFxuICAgICAgYFdhcm5pbmc6ICdOR19CVUlMRF9MRUdBQ1lfU0FTUycgZW52aXJvbm1lbnQgdmFyaWFibGUgc3VwcG9ydCB3aWxsIGJlIHJlbW92ZWQgaW4gdmVyc2lvbiAxNi5gLFxuICAgICksXG4gICk7XG5cbiAgcmV0dXJuIGlzRW5hYmxlZChsZWdhY3lTYXNzVmFyaWFibGUpO1xufSkoKTtcblxuY29uc3QgZGVidWdQZXJmVmFyaWFibGUgPSBwcm9jZXNzLmVudlsnTkdfQlVJTERfREVCVUdfUEVSRiddO1xuZXhwb3J0IGNvbnN0IGRlYnVnUGVyZm9ybWFuY2UgPSBpc1ByZXNlbnQoZGVidWdQZXJmVmFyaWFibGUpICYmIGlzRW5hYmxlZChkZWJ1Z1BlcmZWYXJpYWJsZSk7XG4iXX0=
File without changes
@@ -19,3 +19,4 @@ function assertIsError(value) {
19
19
  (0, assert_1.default)(isError, 'catch clause variable is not an Error instance');
20
20
  }
21
21
  exports.assertIsError = assertIsError;
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy91dGlscy9lcnJvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7Ozs7QUFFSCxvREFBNEI7QUFFNUIsU0FBZ0IsYUFBYSxDQUFDLEtBQWM7SUFDMUMsTUFBTSxPQUFPLEdBQ1gsS0FBSyxZQUFZLEtBQUs7UUFDdEIsZ0VBQWdFO1FBQ2hFLENBQUMsT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssSUFBSSxNQUFNLElBQUksS0FBSyxJQUFJLFNBQVMsSUFBSSxLQUFLLENBQUMsQ0FBQztJQUNoRixJQUFBLGdCQUFNLEVBQUMsT0FBTyxFQUFFLGdEQUFnRCxDQUFDLENBQUM7QUFDcEUsQ0FBQztBQU5ELHNDQU1DIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcblxuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydElzRXJyb3IodmFsdWU6IHVua25vd24pOiBhc3NlcnRzIHZhbHVlIGlzIEVycm9yICYgeyBjb2RlPzogc3RyaW5nIH0ge1xuICBjb25zdCBpc0Vycm9yID1cbiAgICB2YWx1ZSBpbnN0YW5jZW9mIEVycm9yIHx8XG4gICAgLy8gVGhlIGZvbGxvd2luZyBpcyBuZWVkaW5nIHRvIGlkZW50aWZ5IGVycm9ycyBjb21pbmcgZnJvbSBSeEpzLlxuICAgICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICYmICduYW1lJyBpbiB2YWx1ZSAmJiAnbWVzc2FnZScgaW4gdmFsdWUpO1xuICBhc3NlcnQoaXNFcnJvciwgJ2NhdGNoIGNsYXVzZSB2YXJpYWJsZSBpcyBub3QgYW4gRXJyb3IgaW5zdGFuY2UnKTtcbn1cbiJdfQ==
File without changes
@@ -52,3 +52,4 @@ function transformSupportedBrowsersToTargets(supportedBrowsers) {
52
52
  return transformed;
53
53
  }
54
54
  exports.transformSupportedBrowsersToTargets = transformSupportedBrowsersToTargets;
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNidWlsZC10YXJnZXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhcl9kZXZraXQvYnVpbGRfYW5ndWxhci9zcmMvdXRpbHMvZXNidWlsZC10YXJnZXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVIOzs7R0FHRztBQUNILFNBQWdCLG1DQUFtQyxDQUFDLGlCQUEyQjtJQUM3RSxNQUFNLFdBQVcsR0FBYSxFQUFFLENBQUM7SUFFakMsd0NBQXdDO0lBQ3hDLE1BQU0sd0JBQXdCLEdBQUcsSUFBSSxHQUFHLENBQUM7UUFDdkMsUUFBUTtRQUNSLE1BQU07UUFDTixTQUFTO1FBQ1QsSUFBSTtRQUNKLEtBQUs7UUFDTCxNQUFNO1FBQ04sT0FBTztRQUNQLFFBQVE7S0FDVCxDQUFDLENBQUM7SUFFSCxLQUFLLE1BQU0sT0FBTyxJQUFJLGlCQUFpQixFQUFFO1FBQ3ZDLElBQUksQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLEdBQUcsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUU5RCxpRkFBaUY7UUFDakYsSUFBSSxXQUFXLEtBQUssU0FBUyxFQUFFO1lBQzdCLFdBQVcsR0FBRyxLQUFLLENBQUM7U0FDckI7UUFFRCxnRkFBZ0Y7UUFDaEYsc0ZBQXNGO1FBQ3RGLENBQUMsT0FBTyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUUvQixJQUFJLHdCQUF3QixDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUM3QyxJQUFJLFdBQVcsS0FBSyxRQUFRLElBQUksT0FBTyxLQUFLLElBQUksRUFBRTtnQkFDaEQsMkZBQTJGO2dCQUMzRiwwRkFBMEY7Z0JBQzFGLE9BQU8sR0FBRyxLQUFLLENBQUM7YUFDakI7aUJBQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2pDLHdGQUF3RjtnQkFDeEYsMEZBQTBGO2dCQUMxRiwyRUFBMkU7Z0JBQzNFLE9BQU8sSUFBSSxJQUFJLENBQUM7YUFDakI7WUFFRCxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsQ0FBQztTQUN6QztLQUNGO0lBRUQsT0FBTyxXQUFXLENBQUM7QUFDckIsQ0FBQztBQTVDRCxrRkE0Q0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuLyoqXG4gKiBUcmFuc2Zvcm0gYnJvd3Nlcmxpc3RzIHJlc3VsdCB0byBlc2J1aWxkIHRhcmdldC5cbiAqIEBzZWUgaHR0cHM6Ly9lc2J1aWxkLmdpdGh1Yi5pby9hcGkvI3RhcmdldFxuICovXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtU3VwcG9ydGVkQnJvd3NlcnNUb1RhcmdldHMoc3VwcG9ydGVkQnJvd3NlcnM6IHN0cmluZ1tdKTogc3RyaW5nW10ge1xuICBjb25zdCB0cmFuc2Zvcm1lZDogc3RyaW5nW10gPSBbXTtcblxuICAvLyBodHRwczovL2VzYnVpbGQuZ2l0aHViLmlvL2FwaS8jdGFyZ2V0XG4gIGNvbnN0IGVzQnVpbGRTdXBwb3J0ZWRCcm93c2VycyA9IG5ldyBTZXQoW1xuICAgICdjaHJvbWUnLFxuICAgICdlZGdlJyxcbiAgICAnZmlyZWZveCcsXG4gICAgJ2llJyxcbiAgICAnaW9zJyxcbiAgICAnbm9kZScsXG4gICAgJ29wZXJhJyxcbiAgICAnc2FmYXJpJyxcbiAgXSk7XG5cbiAgZm9yIChjb25zdCBicm93c2VyIG9mIHN1cHBvcnRlZEJyb3dzZXJzKSB7XG4gICAgbGV0IFticm93c2VyTmFtZSwgdmVyc2lvbl0gPSBicm93c2VyLnRvTG93ZXJDYXNlKCkuc3BsaXQoJyAnKTtcblxuICAgIC8vIGJyb3dzZXJzbGlzdCB1c2VzIHRoZSBuYW1lIGBpb3Nfc2FmYCBmb3IgaU9TIFNhZmFyaSB3aGVyZWFzIGVzYnVpbGQgdXNlcyBgaW9zYFxuICAgIGlmIChicm93c2VyTmFtZSA9PT0gJ2lvc19zYWYnKSB7XG4gICAgICBicm93c2VyTmFtZSA9ICdpb3MnO1xuICAgIH1cblxuICAgIC8vIGJyb3dzZXJzbGlzdCB1c2VzIHJhbmdlcyBgMTUuMi0xNS4zYCB2ZXJzaW9ucyBidXQgb25seSB0aGUgbG93ZXN0IGlzIHJlcXVpcmVkXG4gICAgLy8gdG8gcGVyZm9ybSBtaW5pbXVtIHN1cHBvcnRlZCBmZWF0dXJlIGNoZWNrcy4gZXNidWlsZCBhbHNvIGV4cGVjdHMgYSBzaW5nbGUgdmVyc2lvbi5cbiAgICBbdmVyc2lvbl0gPSB2ZXJzaW9uLnNwbGl0KCctJyk7XG5cbiAgICBpZiAoZXNCdWlsZFN1cHBvcnRlZEJyb3dzZXJzLmhhcyhicm93c2VyTmFtZSkpIHtcbiAgICAgIGlmIChicm93c2VyTmFtZSA9PT0gJ3NhZmFyaScgJiYgdmVyc2lvbiA9PT0gJ1RQJykge1xuICAgICAgICAvLyBlc2J1aWxkIG9ubHkgc3VwcG9ydHMgbnVtZXJpYyB2ZXJzaW9ucyBzbyBgVFBgIGlzIGNvbnZlcnRlZCB0byBhIGhpZ2ggbnVtYmVyICg5OTkpIHNpbmNlXG4gICAgICAgIC8vIGEgVGVjaG5vbG9neSBQcmV2aWV3IChUUCkgb2YgU2FmYXJpIGlzIGFzc3VtZWQgdG8gc3VwcG9ydCBhbGwgY3VycmVudGx5IGtub3duIGZlYXR1cmVzLlxuICAgICAgICB2ZXJzaW9uID0gJzk5OSc7XG4gICAgICB9IGVsc2UgaWYgKCF2ZXJzaW9uLmluY2x1ZGVzKCcuJykpIHtcbiAgICAgICAgLy8gQSBsb25lIG1ham9yIHZlcnNpb24gaXMgY29uc2lkZXJlZCBieSBlc2J1aWxkIHRvIGluY2x1ZGUgYWxsIG1pbm9yIHZlcnNpb25zLiBIb3dldmVyLFxuICAgICAgICAvLyBicm93c2Vyc2xpc3QgZG9lcyBub3QgYW5kIGlzIGFsc28gaW5jb25zaXN0ZW50IGluIGl0cyBgLjBgIHZlcnNpb24gbmFtaW5nLiBGb3IgZXhhbXBsZSxcbiAgICAgICAgLy8gU2FmYXJpIDE1LjAgaXMgbmFtZWQgYHNhZmFyaSAxNWAgYnV0IFNhZmFyaSAxNi4wIGlzIG5hbWVkIGBzYWZhcmkgMTYuMGAuXG4gICAgICAgIHZlcnNpb24gKz0gJy4wJztcbiAgICAgIH1cblxuICAgICAgdHJhbnNmb3JtZWQucHVzaChicm93c2VyTmFtZSArIHZlcnNpb24pO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cmFuc2Zvcm1lZDtcbn1cbiJdfQ==
File without changes
@@ -52,7 +52,7 @@ function emittedFilesToInlineOptions(emittedFiles, scriptsEntryPointName, emitte
52
52
  code: fs.readFileSync(originalPath, 'utf8'),
53
53
  outputPath,
54
54
  missingTranslation,
55
- setLocale: emittedFile.name === 'main' || emittedFile.name === 'vendor',
55
+ setLocale: emittedFile.name === 'main',
56
56
  };
57
57
  originalFiles.push(originalPath);
58
58
  try {
@@ -119,3 +119,4 @@ async function i18nInlineEmittedFiles(context, emittedFiles, i18n, baseOutputPat
119
119
  return !hasErrors;
120
120
  }
121
121
  exports.i18nInlineEmittedFiles = i18nInlineEmittedFiles;
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi1pbmxpbmluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL3V0aWxzL2kxOG4taW5saW5pbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJSCx1Q0FBeUI7QUFDekIsMkNBQTZCO0FBQzdCLHVEQUF5RDtBQUN6RCwrQ0FBMkM7QUFDM0MsbUNBQXdDO0FBR3hDLHVDQUFvQztBQUVwQyxTQUFTLDJCQUEyQixDQUNsQyxZQUE0QixFQUM1QixxQkFBK0IsRUFDL0IsV0FBbUIsRUFDbkIsVUFBa0IsRUFDbEIsa0JBQThELEVBQzlELE9BQXVCO0lBRXZCLE1BQU0sT0FBTyxHQUFvQixFQUFFLENBQUM7SUFDcEMsTUFBTSxhQUFhLEdBQWEsRUFBRSxDQUFDO0lBQ25DLEtBQUssTUFBTSxXQUFXLElBQUksWUFBWSxFQUFFO1FBQ3RDLElBQ0UsV0FBVyxDQUFDLEtBQUs7WUFDakIsV0FBVyxDQUFDLFNBQVMsS0FBSyxLQUFLO1lBQy9CLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxxQkFBcUIsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQ3RFO1lBQ0EsU0FBUztTQUNWO1FBRUQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlELE1BQU0sTUFBTSxHQUFrQjtZQUM1QixRQUFRLEVBQUUsV0FBVyxDQUFDLElBQUk7WUFDMUIsSUFBSSxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQztZQUMzQyxVQUFVO1lBQ1Ysa0JBQWtCO1lBQ2xCLFNBQVMsRUFBRSxXQUFXLENBQUMsSUFBSSxLQUFLLE1BQU07U0FDdkMs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R0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRW5FLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7WUFBUztRQUNSLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztLQUNqQjtJQUVELElBQUksU0FBUyxFQUFFO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0tBQ3JEO1NBQU07UUFDTCxPQUFPLENBQUMsT0FBTyxDQUFDLHVDQUF1QyxDQUFDLENBQUM7S0FDMUQ7SUFFRCxPQUFPLENBQUMsU0FBUyxDQUFDO0FBQ3BCLENBQUM7QUFyRUQsd0RBcUVDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7IEJ1aWxkZXJDb250ZXh0IH0gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L2FyY2hpdGVjdCc7XG5pbXBvcnQgeyBFbWl0dGVkRmlsZXMgfSBmcm9tICdAYW5ndWxhci1kZXZraXQvYnVpbGQtd2VicGFjayc7XG5pbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgQnVuZGxlQWN0aW9uRXhlY3V0b3IgfSBmcm9tICcuL2FjdGlvbi1leGVjdXRvcic7XG5pbXBvcnQgeyBjb3B5QXNzZXRzIH0gZnJvbSAnLi9jb3B5LWFzc2V0cyc7XG5pbXBvcnQgeyBhc3NlcnRJc0Vycm9yIH0gZnJvbSAnLi9lcnJvcic7XG5pbXBvcnQgeyBJMThuT3B0aW9ucyB9IGZyb20gJy4vaTE4bi1vcHRpb25zJztcbmltcG9ydCB7IElubGluZU9wdGlvbnMgfSBmcm9tICcuL3Byb2Nlc3MtYnVuZGxlJztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICcuL3NwaW5uZXInO1xuXG5mdW5jdGlvbiBlbWl0dGVkRmlsZXNUb0lubGluZU9wdGlvbnMoXG4gIGVtaXR0ZWRGaWxlczogRW1pdHRlZEZpbGVzW10sXG4gIHNjcmlwdHNFbnRyeVBvaW50TmFtZTogc3RyaW5nW10sXG4gIGVtaXR0ZWRQYXRoOiBzdHJpbmcsXG4gIG91dHB1dFBhdGg6IHN0cmluZyxcbiAgbWlzc2luZ1RyYW5zbGF0aW9uOiAnZXJyb3InIHwgJ3dhcm5pbmcnIHwgJ2lnbm9yZScgfCB1bmRlZmluZWQsXG4gIGNvbnRleHQ6IEJ1aWxkZXJDb250ZXh0LFxuKTogeyBvcHRpb25zOiBJbmxpbmVPcHRpb25zW107IG9yaWdpbmFsRmlsZXM6IHN0cmluZ1tdIH0ge1xuICBjb25zdCBvcHRpb25zOiBJbmxpbmVPcHRpb25zW10gPSBbXTtcbiAgY29uc3Qgb3JpZ2luYWxGaWxlczogc3RyaW5nW10gPSBbXTtcbiAgZm9yIChjb25zdCBlbWl0dGVkRmlsZSBvZiBlbWl0dGVkRmlsZXMpIHtcbiAgICBpZiAoXG4gICAgICBlbWl0dGVkRmlsZS5hc3NldCB8fFxuICAgICAgZW1pdHRlZEZpbGUuZXh0ZW5zaW9uICE9PSAnLmpzJyB8fFxuICAgICAgKGVtaXR0ZWRGaWxlLm5hbWUgJiYgc2NyaXB0c0VudHJ5UG9pbnROYW1lLmluY2x1ZGVzKGVtaXR0ZWRGaWxlLm5hbWUpKVxuICAgICkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgY29uc3Qgb3JpZ2luYWxQYXRoID0gcGF0aC5qb2luKGVtaXR0ZWRQYXRoLCBlbWl0dGVkRmlsZS5maWxlKTtcbiAgICBjb25zdCBhY3Rpb246IElubGluZU9wdGlvbnMgPSB7XG4gICAgICBmaWxlbmFtZTogZW1pdHRlZEZpbGUuZmlsZSxcbiAgICAgIGNvZGU6IGZzLnJlYWRGaWxlU3luYyhvcmlnaW5hbFBhdGgsICd1dGY4JyksXG4gICAgICBvdXRwdXRQYXRoLFxuICAgICAgbWlzc2luZ1RyYW5zbGF0aW9uLFxuICAgICAgc2V0TG9jYWxlOiBlbWl0dGVkRmlsZS5uYW1lID09PSAnbWFpbicsXG4gICAgfTtcbiAgICBvcmlnaW5hbEZpbGVzLnB1c2gob3JpZ2luYWxQYXRoKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCBvcmlnaW5hbE1hcFBhdGggPSBvcmlnaW5hbFBhdGggKyAnLm1hcCc7XG4gICAgICBhY3Rpb24ubWFwID0gZnMucmVhZEZpbGVTeW5jKG9yaWdpbmFsTWFwUGF0aCwgJ3V0ZjgnKTtcbiAgICAgIG9yaWdpbmFsRmlsZXMucHVzaChvcmlnaW5hbE1hcFBhdGgpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgYXNzZXJ0SXNFcnJvcihlcnIpO1xuICAgICAgaWYgKGVyci5jb2RlICE9PSAnRU5PRU5UJykge1xuICAgICAgICB0aHJvdyBlcnI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29udGV4dC5sb2dnZXIuZGVidWcoYGkxOG4gZmlsZSBxdWV1ZWQgZm9yIHByb2Nlc3Npbmc6ICR7YWN0aW9uLmZpbGVuYW1lfWApO1xuXG4gICAgb3B0aW9ucy5wdXNoKGFjdGlvbik7XG4gIH1cblxuICByZXR1cm4geyBvcHRpb25zLCBvcmlnaW5hbEZpbGVzIH07XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpMThuSW5saW5lRW1pdHRlZEZpbGVzKFxuICBjb250ZXh0OiBCdWlsZGVyQ29udGV4dCxcbiAgZW1pdHRlZEZpbGVzOiBFbWl0dGVkRmlsZXNbXSxcbiAgaTE4bjogSTE4bk9wdGlvbnMsXG4gIGJhc2VPdXRwdXRQYXRoOiBzdHJpbmcsXG4gIG91dHB1dFBhdGhzOiBzdHJpbmdbXSxcbiAgc2NyaXB0c0VudHJ5UG9pbnROYW1lOiBzdHJpbmdbXSxcbiAgZW1pdHRlZFBhdGg6IHN0cmluZyxcbiAgbWlzc2luZ1RyYW5zbGF0aW9uOiAnZXJyb3InIHwgJ3dhcm5pbmcnIHwgJ2lnbm9yZScgfCB1bmRlZmluZWQsXG4pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgY29uc3QgZXhlY3V0b3IgPSBuZXcgQnVuZGxlQWN0aW9uRXhlY3V0b3IoeyBpMThuIH0pO1xuICBsZXQgaGFzRXJyb3JzID0gZmFsc2U7XG4gIGNvbnN0IHNwaW5uZXIgPSBuZXcgU3Bpbm5lcigpO1xuICBzcGlubmVyLnN0YXJ0KCdHZW5lcmF0aW5nIGxvY2FsaXplZCBidW5kbGVzLi4uJyk7XG5cbiAgdHJ5IHtcbiAgICBjb25zdCB7IG9wdGlvbnMsIG9yaWdpbmFsRmlsZXM6IHByb2Nlc3NlZEZpbGVzIH0gPSBlbWl0dGVkRmlsZXNUb0lubGluZU9wdGlvbnMoXG4gICAgICBlbWl0dGVkRmlsZXMsXG4gICAgICBzY3JpcHRzRW50cnlQb2ludE5hbWUsXG4gICAgICBlbWl0dGVkUGF0aCxcbiAgICAgIGJhc2VPdXRwdXRQYXRoLFxuICAgICAgbWlzc2luZ1RyYW5zbGF0aW9uLFxuICAgICAgY29udGV4dCxcbiAgICApO1xuXG4gICAgZm9yIGF3YWl0IChjb25zdCByZXN1bHQgb2YgZXhlY3V0b3IuaW5saW5lQWxsKG9wdGlvbnMpKSB7XG4gICAgICBjb250ZXh0LmxvZ2dlci5kZWJ1ZyhgaTE4biBmaWxlIHByb2Nlc3NlZDogJHtyZXN1bHQuZmlsZX1gKTtcblxuICAgICAgZm9yIChjb25zdCBkaWFnbm9zdGljIG9mIHJlc3VsdC5kaWFnbm9zdGljcykge1xuICAgICAgICBzcGlubmVyLnN0b3AoKTtcbiAgICAgICAgaWYgKGRpYWdub3N0aWMudHlwZSA9PT0gJ2Vycm9yJykge1xuICAgICAgICAgIGhhc0Vycm9ycyA9IHRydWU7XG4gICAgICAgICAgY29udGV4dC5sb2dnZXIuZXJyb3IoZGlhZ25vc3RpYy5tZXNzYWdlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb250ZXh0LmxvZ2dlci53YXJuKGRpYWdub3N0aWMubWVzc2FnZSk7XG4gICAgICAgIH1cbiAgICAgICAgc3Bpbm5lci5zdGFydCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvcHkgYW55IG5vbi1wcm9jZXNzZWQgZmlsZXMgaW50byB0aGUgb3V0cHV0IGxvY2F0aW9uc1xuICAgIGF3YWl0IGNvcHlBc3NldHMoXG4gICAgICBbXG4gICAgICAgIHtcbiAgICAgICAgICBnbG9iOiAnKiovKicsXG4gICAgICAgICAgaW5wdXQ6IGVtaXR0ZWRQYXRoLFxuICAgICAgICAgIG91dHB1dDogJycsXG4gICAgICAgICAgaWdub3JlOiBbLi4ucHJvY2Vzc2VkRmlsZXNdLm1hcCgoZikgPT4gcGF0aC5yZWxhdGl2ZShlbWl0dGVkUGF0aCwgZikpLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIG91dHB1dFBhdGhzLFxuICAgICAgJycsXG4gICAgKTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgYXNzZXJ0SXNFcnJvcihlcnIpO1xuICAgIHNwaW5uZXIuZmFpbCgnTG9jYWxpemVkIGJ1bmRsZSBnZW5lcmF0aW9uIGZhaWxlZDogJyArIGVyci5tZXNzYWdlKTtcblxuICAgIHJldHVybiBmYWxzZTtcbiAgfSBmaW5hbGx5IHtcbiAgICBleGVjdXRvci5zdG9wKCk7XG4gIH1cblxuICBpZiAoaGFzRXJyb3JzKSB7XG4gICAgc3Bpbm5lci5mYWlsKCdMb2NhbGl6ZWQgYnVuZGxlIGdlbmVyYXRpb24gZmFpbGVkLicpO1xuICB9IGVsc2Uge1xuICAgIHNwaW5uZXIuc3VjY2VlZCgnTG9jYWxpemVkIGJ1bmRsZSBnZW5lcmF0aW9uIGNvbXBsZXRlLicpO1xuICB9XG5cbiAgcmV0dXJuICFoYXNFcnJvcnM7XG59XG4iXX0=
File without changes