@angular-devkit/build-angular 17.0.0-next.7 → 17.0.0-next.8

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 (81) hide show
  1. package/package.json +6 -6
  2. package/src/builders/application/build-action.d.ts +2 -0
  3. package/src/builders/application/build-action.js +6 -3
  4. package/src/builders/application/execute-build.js +32 -17
  5. package/src/builders/application/i18n.js +5 -4
  6. package/src/builders/application/index.d.ts +3 -3
  7. package/src/builders/application/index.js +7 -6
  8. package/src/builders/application/options.d.ts +6 -0
  9. package/src/builders/application/options.js +4 -2
  10. package/src/builders/browser-esbuild/builder-status-warnings.js +1 -4
  11. package/src/builders/browser-esbuild/index.d.ts +2 -2
  12. package/src/builders/browser-esbuild/index.js +45 -3
  13. package/src/builders/dev-server/builder.js +2 -2
  14. package/src/builders/dev-server/load-proxy-config.js +3 -2
  15. package/src/builders/dev-server/options.d.ts +1 -1
  16. package/src/builders/dev-server/options.js +4 -3
  17. package/src/builders/dev-server/schema.d.ts +8 -1
  18. package/src/builders/dev-server/schema.js +1 -1
  19. package/src/builders/dev-server/schema.json +7 -1
  20. package/src/builders/dev-server/vite-server.d.ts +2 -1
  21. package/src/builders/dev-server/vite-server.js +21 -5
  22. package/src/builders/dev-server/webpack-server.js +2 -2
  23. package/src/builders/extract-i18n/application-extraction.js +3 -3
  24. package/src/builders/extract-i18n/builder.js +4 -3
  25. package/src/builders/extract-i18n/options.d.ts +1 -1
  26. package/src/builders/extract-i18n/options.js +4 -3
  27. package/src/builders/extract-i18n/schema.d.ts +8 -1
  28. package/src/builders/extract-i18n/schema.js +1 -1
  29. package/src/builders/extract-i18n/schema.json +7 -1
  30. package/src/builders/extract-i18n/webpack-extraction.js +2 -2
  31. package/src/builders/jest/index.js +2 -2
  32. package/src/builders/protractor/index.js +2 -2
  33. package/src/tools/esbuild/angular/compilation-state.d.ts +15 -0
  34. package/src/tools/esbuild/angular/compilation-state.js +43 -0
  35. package/src/tools/esbuild/angular/compiler-plugin.d.ts +2 -12
  36. package/src/tools/esbuild/angular/compiler-plugin.js +34 -52
  37. package/src/tools/esbuild/angular/component-stylesheets.d.ts +47 -0
  38. package/src/tools/esbuild/angular/component-stylesheets.js +147 -0
  39. package/src/tools/esbuild/angular/jit-plugin-callbacks.d.ts +2 -5
  40. package/src/tools/esbuild/angular/jit-plugin-callbacks.js +11 -6
  41. package/src/tools/esbuild/angular/source-file-cache.d.ts +19 -0
  42. package/src/tools/esbuild/angular/source-file-cache.js +67 -0
  43. package/src/tools/esbuild/angular/uri.d.ts +1 -1
  44. package/src/tools/esbuild/application-code-bundle.d.ts +1 -1
  45. package/src/tools/esbuild/application-code-bundle.js +61 -6
  46. package/src/tools/esbuild/budget-stats.d.ts +19 -0
  47. package/src/tools/esbuild/budget-stats.js +55 -0
  48. package/src/tools/esbuild/bundler-context.d.ts +12 -1
  49. package/src/tools/esbuild/bundler-context.js +29 -3
  50. package/src/tools/esbuild/bundler-execution-result.d.ts +9 -6
  51. package/src/tools/esbuild/bundler-execution-result.js +6 -3
  52. package/src/tools/esbuild/compiler-plugin-options.d.ts +2 -1
  53. package/src/tools/esbuild/compiler-plugin-options.js +2 -1
  54. package/src/tools/esbuild/global-styles.js +2 -1
  55. package/src/tools/esbuild/i18n-inliner.d.ts +3 -3
  56. package/src/tools/esbuild/i18n-inliner.js +12 -3
  57. package/src/tools/esbuild/index-html-generator.d.ts +2 -3
  58. package/src/tools/esbuild/index-html-generator.js +5 -2
  59. package/src/tools/esbuild/stylesheets/bundle-options.d.ts +2 -24
  60. package/src/tools/esbuild/stylesheets/bundle-options.js +3 -105
  61. package/src/tools/esbuild/utils.d.ts +12 -6
  62. package/src/tools/esbuild/utils.js +85 -32
  63. package/src/utils/build-options.d.ts +1 -1
  64. package/src/utils/build-options.js +1 -1
  65. package/src/utils/bundle-calculator.d.ts +16 -3
  66. package/src/utils/bundle-calculator.js +21 -10
  67. package/src/utils/server-rendering/{esm-in-memory-file-loader.d.ts → esm-in-memory-loader/loader-hooks.d.ts} +1 -0
  68. package/src/utils/server-rendering/esm-in-memory-loader/loader-hooks.js +82 -0
  69. package/src/utils/server-rendering/esm-in-memory-loader/node-18-utils.d.ts +10 -0
  70. package/src/utils/server-rendering/esm-in-memory-loader/node-18-utils.js +39 -0
  71. package/src/utils/server-rendering/esm-in-memory-loader/register-hooks.d.ts +8 -0
  72. package/src/utils/server-rendering/esm-in-memory-loader/register-hooks.js +16 -0
  73. package/src/utils/server-rendering/prerender.d.ts +2 -2
  74. package/src/utils/server-rendering/prerender.js +10 -18
  75. package/src/utils/server-rendering/render-worker.d.ts +1 -1
  76. package/src/utils/server-rendering/render-worker.js +1 -1
  77. package/src/utils/server-rendering/routes-extractor-worker.d.ts +1 -1
  78. package/src/utils/server-rendering/routes-extractor-worker.js +1 -1
  79. package/src/utils/service-worker.d.ts +2 -2
  80. package/src/utils/service-worker.js +5 -2
  81. package/src/utils/server-rendering/esm-in-memory-file-loader.js +0 -76
@@ -57,7 +57,8 @@ async function execute(options, context, transforms) {
57
57
  // The package is a peer dependency and might not be present
58
58
  let localizeToolsModule;
59
59
  try {
60
- localizeToolsModule = await (0, load_esm_1.loadEsmModule)('@angular/localize/tools');
60
+ localizeToolsModule =
61
+ await (0, load_esm_1.loadEsmModule)('@angular/localize/tools');
61
62
  }
62
63
  catch {
63
64
  return {
@@ -68,7 +69,7 @@ async function execute(options, context, transforms) {
68
69
  }
69
70
  // Normalize options
70
71
  const normalizedOptions = await (0, options_1.normalizeOptions)(context, projectName, options);
71
- const builderName = await context.getBuilderNameForTarget(normalizedOptions.browserTarget);
72
+ const builderName = await context.getBuilderNameForTarget(normalizedOptions.buildTarget);
72
73
  // Extract messages based on configured builder
73
74
  let extractionResult;
74
75
  if (builderName === '@angular-devkit/build-angular:application' ||
@@ -149,4 +150,4 @@ async function createSerializer(localizeToolsModule, format, sourceLocale, baseP
149
150
  return new ArbTranslationSerializer(sourceLocale, basePath, fileSystem);
150
151
  }
151
152
  }
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL2J1aWxkZXJzL2V4dHJhY3QtaTE4bi9idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBSUgsc0RBQXlCO0FBQ3pCLDBEQUE2QjtBQUc3QixtREFBcUQ7QUFDckQseURBQStEO0FBQy9ELGlEQUFxRTtBQUNyRSx1Q0FBNkM7QUFDN0MscUNBQXVFO0FBRXZFOztHQUVHO0FBQ0ksS0FBSyxVQUFVLE9BQU8sQ0FDM0IsT0FBa0MsRUFDbEMsT0FBdUIsRUFDdkIsVUFFQztJQUVELHFEQUFxRDtJQUNyRCxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQztJQUM1QyxJQUFJLENBQUMsV0FBVyxFQUFFO1FBQ2hCLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLCtEQUErRCxDQUFDLENBQUM7UUFFdEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQztLQUMzQjtJQUVELHlCQUF5QjtJQUN6QixJQUFBLHdDQUE4QixFQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUV0RCxxQ0FBcUM7SUFDckMsNERBQTREO0lBQzVELElBQUksbUJBQW1CLENBQUM7SUFDeEIsSUFBSTtRQUNGLG1CQUFtQixHQUFHLE1BQU0sSUFBQSx3QkFBYSxFQUN2Qyx5QkFBeUIsQ0FDMUIsQ0FBQztLQUNIO0lBQUMsTUFBTTtRQUNOLE9BQU87WUFDTCxPQUFPLEVBQUUsS0FBSztZQUNkLEtBQUssRUFDSCwyREFBMkQ7Z0JBQzNELHNEQUFzRDtTQUN6RCxDQUFDO0tBQ0g7SUFFRCxvQkFBb0I7SUFDcEIsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLElBQUEsMEJB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QUMsR0FBRztZQUNiLE1BQU0sVUFBVSxHQUFHO2dCQUNqQixRQUFRLENBQUMsSUFBWSxFQUFFLEVBQVU7b0JBQy9CLE9BQU8sbUJBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNqQyxDQUFDO2FBQ0YsQ0FBQztZQUVGLDhEQUE4RDtZQUM5RCxPQUFPLElBQUksd0JBQXdCLENBQUMsWUFBWSxFQUFFLFFBQWUsRUFBRSxVQUFpQixDQUFDLENBQUM7S0FDekY7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB0eXBlIHsgRGlhZ25vc3RpY3MgfSBmcm9tICdAYW5ndWxhci9sb2NhbGl6ZS90b29scyc7XG5pbXBvcnQgdHlwZSB7IEJ1aWxkZXJDb250ZXh0LCBCdWlsZGVyT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L2FyY2hpdGVjdCc7XG5pbXBvcnQgZnMgZnJvbSAnbm9kZTpmcyc7XG5pbXBvcnQgcGF0aCBmcm9tICdub2RlOnBhdGgnO1xuaW1wb3J0IHR5cGUgd2VicGFjayBmcm9tICd3ZWJwYWNrJztcbmltcG9ydCB0eXBlIHsgRXhlY3V0aW9uVHJhbnNmb3JtZXIgfSBmcm9tICcuLi8uLi90cmFuc2Zvcm1zJztcbmltcG9ydCB7IGxvYWRFc21Nb2R1bGUgfSBmcm9tICcuLi8uLi91dGlscy9sb2FkLWVzbSc7XG5pbXBvcnQgeyBwdXJnZVN0YWxlQnVpbGRDYWNoZSB9IGZyb20gJy4uLy4uL3V0aWxzL3B1cmdlLWNhY2hlJztcbmltcG9ydCB7IGFzc2VydENvbXBhdGlibGVBbmd1bGFyVmVyc2lvbiB9IGZyb20gJy4uLy4uL3V0aWxzL3ZlcnNpb24nO1xuaW1wb3J0IHsgbm9ybWFsaXplT3B0aW9ucyB9IGZyb20gJy4vb3B0aW9ucyc7XG5pbXBvcnQgeyBTY2hlbWEgYXMgRXh0cmFjdEkxOG5CdWlsZGVyT3B0aW9ucywgRm9ybWF0IH0gZnJvbSAnLi9zY2hlbWEnO1xuXG4vKipcbiAqIEBleHBlcmltZW50YWwgRGlyZWN0IHVzYWdlIG9mIHRoaXMgZnVuY3Rpb24gaXMgY29uc2lkZXJlZCBleHBlcmltZW50YWwuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBleGVjdXRlKFxuICBvcHRpb25zOiBFeHRyYWN0STE4bkJ1aWxkZXJPcHRpb25zLFxuICBjb250ZXh0OiBCdWlsZGVyQ29udGV4dCxcbiAgdHJhbnNmb3Jtcz86IHtcbiAgICB3ZWJwYWNrQ29uZmlndXJhdGlvbj86IEV4ZWN1dGlvblRyYW5zZm9ybWVyPHdlYnBhY2suQ29uZmlndXJhdGlvbj47XG4gIH0sXG4pOiBQcm9taXNlPEJ1aWxkZXJPdXRwdXQ+IHtcbiAgLy8gRGV0ZXJtaW5lIHByb2plY3QgbmFtZSBmcm9tIGJ1aWxkZXIgY29udGV4dCB0YXJnZXRcbiAgY29uc3QgcHJvamVjdE5hbWUgPSBjb250ZXh0LnRhcmdldD8ucHJvamVjdDtcbiAgaWYgKCFwcm9qZWN0TmFtZSkge1xuICAgIGNvbnRleHQubG9nZ2VyLmVycm9yKGBUaGUgJ2V4dHJhY3QtaTE4bicgYnVpbGRlciByZXF1aXJlcyBhIHRhcmdldCB0byBiZSBzcGVjaWZpZWQuYCk7XG5cbiAgICByZXR1cm4geyBzdWNjZXNzOiBmYWxzZSB9O1xuICB9XG5cbiAgLy8gQ2hlY2sgQW5ndWxhciB2ZXJzaW9uLlxuICBhc3NlcnRDb21wYXRpYmxlQW5ndWxhclZlcnNpb24oY29udGV4dC53b3Jrc3BhY2VSb290KTtcblxuICAvLyBMb2FkIHRoZSBBbmd1bGFyIGxvY2FsaXplIHBhY2thZ2UuXG4gIC8vIFRoZSBwYWNrYWdlIGlzIGEgcGVlciBkZXBlbmRlbmN5IGFuZCBtaWdodCBub3QgYmUgcHJlc2VudFxuICBsZXQgbG9jYWxpemVUb29sc01vZHVsZTtcbiAgdHJ5IHtcbiAgICBsb2NhbGl6ZVRvb2xzTW9kdWxlID0gYXdhaXQgbG9hZEVzbU1vZHVsZTx0eXBlb2YgaW1wb3J0KCdAYW5ndWxhci9sb2NhbGl6ZS90b29scycpPihcbiAgICAgICdAYW5ndWxhci9sb2NhbGl6ZS90b29scycsXG4gICAgKTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN1Y2Nlc3M6IGZhbHNlLFxuICAgICAgZXJyb3I6XG4gICAgICAgIGBpMThuIGV4dHJhY3Rpb24gcmVxdWlyZXMgdGhlICdAYW5ndWxhci9sb2NhbGl6ZScgcGFja2FnZS5gICtcbiAgICAgICAgYCBZb3UgY2FuIGFkZCBpdCBieSB1c2luZyAnbmcgYWRkIEBhbmd1bGFyL2xvY2FsaXplJy5gLFxuICAgIH07XG4gIH1cblxuICAvLyBOb3JtYWxpemUgb3B0aW9uc1xuICBjb25zdCBub3JtYWxpemVkT3B0aW9ucyA9IGF3YWl0IG5vcm1hbGl6ZU9wdGlvbnMoY29udGV4dCwgcHJvamVjdE5hbWUsIG9wdGlvbnMpO1xuICBjb25zdCBidWlsZGVyTmFtZSA9IGF3YWl0IGNvbnRleHQuZ2V0QnVpbGRlck5hbWVGb3JUYXJnZXQobm9ybWFsaXplZE9wdGlvbnMuYnJvd3NlclRhcmdldCk7XG5cbiAgLy8gRXh0cmFjdCBtZXNzYWdlcyBiYXNlZCBvbiBjb25maWd1cmVkIGJ1aWxkZXJcbiAgbGV0IGV4dHJhY3Rpb25SZXN1bHQ7XG4gIGlmIChcbiAgICBidWlsZGVyTmFtZSA9PT0gJ0Bhbmd1bGFyLWRldmtpdC9idWlsZC1hbmd1bGFyOmFwcGxpY2F0aW9uJyB8fFxuICAgIGJ1aWxkZXJOYW1lID09PSAnQGFuZ3VsYXItZGV2a2l0L2J1aWxkLWFuZ3VsYXI6YnJvd3Nlci1lc2J1aWxkJ1xuICApIHtcbiAgICBjb25zdCB7IGV4dHJhY3RNZXNzYWdlcyB9ID0gYXdhaXQgaW1wb3J0KCcuL2FwcGxpY2F0aW9uLWV4dHJhY3Rpb24nKTtcbiAgICBleHRyYWN0aW9uUmVzdWx0ID0gYXdhaXQgZXh0cmFjdE1lc3NhZ2VzKFxuICAgICAgbm9ybWFsaXplZE9wdGlvbnMsXG4gICAgICBidWlsZGVyTmFtZSxcbiAgICAgIGNvbnRleHQsXG4gICAgICBsb2NhbGl6ZVRvb2xzTW9kdWxlLk1lc3NhZ2VFeHRyYWN0b3IsXG4gICAgKTtcbiAgfSBlbHNlIHtcbiAgICAvLyBQdXJnZSBvbGQgYnVpbGQgZGlzayBjYWNoZS5cbiAgICAvLyBPdGhlciBidWlsZCBzeXN0ZW1zIGhhbmRsZSBzdGFsZSBjYWNoZSBwdXJnaW5nIGRpcmVjdGx5LlxuICAgIGF3YWl0IHB1cmdlU3RhbGVCdWlsZENhY2hlKGNvbnRleHQpO1xuXG4gICAgY29uc3QgeyBleHRyYWN0TWVzc2FnZXMgfSA9IGF3YWl0IGltcG9ydCgnLi93ZWJwYWNrLWV4dHJhY3Rpb24nKTtcbiAgICBleHRyYWN0aW9uUmVzdWx0ID0gYXdhaXQgZXh0cmFjdE1lc3NhZ2VzKG5vcm1hbGl6ZWRPcHRpb25zLCBidWlsZGVyTmFtZSwgY29udGV4dCwgdHJhbnNmb3Jtcyk7XG4gIH1cblxuICAvLyBSZXR1cm4gdGhlIGJ1aWxkZXIgcmVzdWx0IGlmIGl0IGZhaWxlZFxuICBpZiAoIWV4dHJhY3Rpb25SZXN1bHQuYnVpbGRlclJlc3VsdC5zdWNjZXNzKSB7XG4gICAgcmV0dXJuIGV4dHJhY3Rpb25SZXN1bHQuYnVpbGRlclJlc3VsdDtcbiAgfVxuXG4gIC8vIFBlcmZvcm0gZHVwbGljYXRlIG1lc3NhZ2UgY2hlY2tzXG4gIGNvbnN0IHsgY2hlY2tEdXBsaWNhdGVNZXNzYWdlcyB9ID0gbG9jYWxpemVUb29sc01vZHVsZTtcblxuICAvLyBUaGUgZmlsZXN5c3RlbSBpcyB1c2VkIHRvIGNyZWF0ZSBhIHJlbGF0aXZlIHBhdGggZm9yIGVhY2ggZmlsZVxuICAvLyBmcm9tIHRoZSBiYXNlUGF0aC4gIFRoaXMgcmVsYXRpdmUgcGF0aCBpcyB0aGVuIHVzZWQgaW4gdGhlIGVycm9yIG1lc3NhZ2UuXG4gIGNvbnN0IGNoZWNrRmlsZVN5c3RlbSA9IHtcbiAgICByZWxhdGl2ZShmcm9tOiBzdHJpbmcsIHRvOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHBhdGgucmVsYXRpdmUoZnJvbSwgdG8pO1xuICAgIH0sXG4gIH07XG4gIGNvbnN0IGRpYWdub3N0aWNzID0gY2hlY2tEdXBsaWNhdGVNZXNzYWdlcyhcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGNoZWNrRmlsZVN5c3RlbSBhcyBhbnksXG4gICAgZXh0cmFjdGlvblJlc3VsdC5tZXNzYWdlcyxcbiAgICAnd2FybmluZycsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBleHRyYWN0aW9uUmVzdWx0LmJhc2VQYXRoIGFzIGFueSxcbiAgKTtcbiAgaWYgKGRpYWdub3N0aWNzLm1lc3NhZ2VzLmxlbmd0aCA+IDApIHtcbiAgICBjb250ZXh0LmxvZ2dlci53YXJuKGRpYWdub3N0aWNzLmZvcm1hdERpYWdub3N0aWNzKCcnKSk7XG4gIH1cblxuICAvLyBTZXJpYWxpemUgYWxsIGV4dHJhY3RlZCBtZXNzYWdlc1xuICBjb25zdCBzZXJpYWxpemVyID0gYXdhaXQgY3JlYXRlU2VyaWFsaXplcihcbiAgICBsb2NhbGl6ZVRvb2xzTW9kdWxlLFxuICAgIG5vcm1hbGl6ZWRPcHRpb25zLmZvcm1hdCxcbiAgICBub3JtYWxpemVkT3B0aW9ucy5pMThuT3B0aW9ucy5zb3VyY2VMb2NhbGUsXG4gICAgZXh0cmFjdGlvblJlc3VsdC5iYXNlUGF0aCxcbiAgICBleHRyYWN0aW9uUmVzdWx0LnVzZUxlZ2FjeUlkcyxcbiAgICBkaWFnbm9zdGljcyxcbiAgKTtcbiAgY29uc3QgY29udGVudCA9IHNlcmlhbGl6ZXIuc2VyaWFsaXplKGV4dHJhY3Rpb25SZXN1bHQubWVzc2FnZXMpO1xuXG4gIC8vIEVuc3VyZSBkaXJlY3RvcnkgZXhpc3RzXG4gIGNvbnN0IG91dHB1dFBhdGggPSBwYXRoLmRpcm5hbWUobm9ybWFsaXplZE9wdGlvbnMub3V0RmlsZSk7XG4gIGlmICghZnMuZXhpc3RzU3luYyhvdXRwdXRQYXRoKSkge1xuICAgIGZzLm1rZGlyU3luYyhvdXRwdXRQYXRoLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgfVxuXG4gIC8vIFdyaXRlIHRyYW5zbGF0aW9uIGZpbGVcbiAgZnMud3JpdGVGaWxlU3luYyhub3JtYWxpemVkT3B0aW9ucy5vdXRGaWxlLCBjb250ZW50KTtcblxuICBpZiAobm9ybWFsaXplZE9wdGlvbnMucHJvZ3Jlc3MpIHtcbiAgICBjb250ZXh0LmxvZ2dlci5pbmZvKGBFeHRyYWN0aW9uIENvbXBsZXRlLiAoTWVzc2FnZXM6ICR7ZXh0cmFjdGlvblJlc3VsdC5tZXNzYWdlcy5sZW5ndGh9KWApO1xuICB9XG5cbiAgcmV0dXJuIHsgc3VjY2VzczogdHJ1ZSwgb3V0cHV0UGF0aDogbm9ybWFsaXplZE9wdGlvbnMub3V0RmlsZSB9O1xufVxuXG5hc3luYyBmdW5jdGlvbiBjcmVhdGVTZXJpYWxpemVyKFxuICBsb2NhbGl6ZVRvb2xzTW9kdWxlOiB0eXBlb2YgaW1wb3J0KCdAYW5ndWxhci9sb2NhbGl6ZS90b29scycpLFxuICBmb3JtYXQ6IEZvcm1hdCxcbiAgc291cmNlTG9jYWxlOiBzdHJpbmcsXG4gIGJhc2VQYXRoOiBzdHJpbmcsXG4gIHVzZUxlZ2FjeUlkczogYm9vbGVhbixcbiAgZGlhZ25vc3RpY3M6IERpYWdub3N0aWNzLFxuKSB7XG4gIGNvbnN0IHtcbiAgICBYbWJUcmFuc2xhdGlvblNlcmlhbGl6ZXIsXG4gICAgTGVnYWN5TWVzc2FnZUlkTWlncmF0aW9uU2VyaWFsaXplcixcbiAgICBBcmJUcmFuc2xhdGlvblNlcmlhbGl6ZXIsXG4gICAgWGxpZmYxVHJhbnNsYXRpb25TZXJpYWxpemVyLFxuICAgIFhsaWZmMlRyYW5zbGF0aW9uU2VyaWFsaXplcixcbiAgICBTaW1wbGVKc29uVHJhbnNsYXRpb25TZXJpYWxpemVyLFxuICB9ID0gbG9jYWxpemVUb29sc01vZHVsZTtcblxuICBzd2l0Y2ggKGZvcm1hdCkge1xuICAgIGNhc2UgRm9ybWF0LlhtYjpcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICByZXR1cm4gbmV3IFhtYlRyYW5zbGF0aW9uU2VyaWFsaXplcihiYXNlUGF0aCBhcyBhbnksIHVzZUxlZ2FjeUlkcyk7XG4gICAgY2FzZSBGb3JtYXQuWGxmOlxuICAgIGNhc2UgRm9ybWF0LlhsaWY6XG4gICAgY2FzZSBGb3JtYXQuWGxpZmY6XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgcmV0dXJuIG5ldyBYbGlmZjFUcmFuc2xhdGlvblNlcmlhbGl6ZXIoc291cmNlTG9jYWxlLCBiYXNlUGF0aCBhcyBhbnksIHVzZUxlZ2FjeUlkcywge30pO1xuICAgIGNhc2UgRm9ybWF0LlhsZjI6XG4gICAgY2FzZSBGb3JtYXQuWGxpZmYyOlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgIHJldHVybiBuZXcgWGxpZmYyVHJhbnNsYXRpb25TZXJpYWxpemVyKHNvdXJjZUxvY2FsZSwgYmFzZVBhdGggYXMgYW55LCB1c2VMZWdhY3lJZHMsIHt9KTtcbiAgICBjYXNlIEZvcm1hdC5Kc29uOlxuICAgICAgcmV0dXJuIG5ldyBTaW1wbGVKc29uVHJhbnNsYXRpb25TZXJpYWxpemVyKHNvdXJjZUxvY2FsZSk7XG4gICAgY2FzZSBGb3JtYXQuTGVnYWN5TWlncmF0ZTpcbiAgICAgIHJldHVybiBuZXcgTGVnYWN5TWVzc2FnZUlkTWlncmF0aW9uU2VyaWFsaXplcihkaWFnbm9zdGljcyk7XG4gICAgY2FzZSBGb3JtYXQuQXJiOlxuICAgICAgY29uc3QgZmlsZVN5c3RlbSA9IHtcbiAgICAgICAgcmVsYXRpdmUoZnJvbTogc3RyaW5nLCB0bzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgICByZXR1cm4gcGF0aC5yZWxhdGl2ZShmcm9tLCB0byk7XG4gICAgICAgIH0sXG4gICAgICB9O1xuXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgcmV0dXJuIG5ldyBBcmJUcmFuc2xhdGlvblNlcmlhbGl6ZXIoc291cmNlTG9jYWxlLCBiYXNlUGF0aCBhcyBhbnksIGZpbGVTeXN0ZW0gYXMgYW55KTtcbiAgfVxufVxuIl19
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL2J1aWxkZXJzL2V4dHJhY3QtaTE4bi9idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBSUgsc0RBQXlCO0FBQ3pCLDBEQUE2QjtBQUc3QixtREFBcUQ7QUFDckQseURBQStEO0FBQy9ELGlEQUFxRTtBQUNyRSx1Q0FBNkM7QUFDN0MscUNBQXVFO0FBRXZFOztHQUVHO0FBQ0ksS0FBSyxVQUFVLE9BQU8sQ0FDM0IsT0FBa0MsRUFDbEMsT0FBdUIsRUFDdkIsVUFFQztJQUVELHFEQUFxRDtJQUNyRCxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQztJQUM1QyxJQUFJLENBQUMsV0FBVyxFQUFFO1FBQ2hCLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLCtEQUErRCxDQUFDLENBQUM7UUFFdEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQztLQUMzQjtJQUVELHlCQUF5QjtJQUN6QixJQUFBLHdDQUE4QixFQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUV0RCxxQ0FBcUM7SUFDckMsNERBQTREO0lBQzVELElBQUksbUJBQW1CLENBQUM7SUFDeEIsSUFBSTtRQUNGLG1CQUFtQjtZQUNqQixNQUFNLElBQUEsd0JBQWEsRUFBMkMseUJBQXlCLENBQUMsQ0FBQztLQUM1RjtJQUFDLE1BQU07UUFDTixPQUFPO1lBQ0wsT0FBTyxFQUFFLEtBQUs7WUFDZCxLQUFLLEVBQ0gsMkRBQTJEO2dCQUMzRCxzREFBc0Q7U0FDekQsQ0FBQztLQUNIO0lBRUQsb0JBQW9CO0lBQ3BCLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxJQUFBLDBC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QUFDLEdBQUc7WUFDYixNQUFNLFVBQVUsR0FBRztnQkFDakIsUUFBUSxDQUFDLElBQVksRUFBRSxFQUFVO29CQUMvQixPQUFPLG1CQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDakMsQ0FBQzthQUNGLENBQUM7WUFFRiw4REFBOEQ7WUFDOUQsT0FBTyxJQUFJLHdCQUF3QixDQUFDLFlBQVksRUFBRSxRQUFlLEVBQUUsVUFBaUIsQ0FBQyxDQUFDO0tBQ3pGO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgdHlwZSB7IERpYWdub3N0aWNzIH0gZnJvbSAnQGFuZ3VsYXIvbG9jYWxpemUvdG9vbHMnO1xuaW1wb3J0IHR5cGUgeyBCdWlsZGVyQ29udGV4dCwgQnVpbGRlck91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9hcmNoaXRlY3QnO1xuaW1wb3J0IGZzIGZyb20gJ25vZGU6ZnMnO1xuaW1wb3J0IHBhdGggZnJvbSAnbm9kZTpwYXRoJztcbmltcG9ydCB0eXBlIHdlYnBhY2sgZnJvbSAnd2VicGFjayc7XG5pbXBvcnQgdHlwZSB7IEV4ZWN1dGlvblRyYW5zZm9ybWVyIH0gZnJvbSAnLi4vLi4vdHJhbnNmb3Jtcyc7XG5pbXBvcnQgeyBsb2FkRXNtTW9kdWxlIH0gZnJvbSAnLi4vLi4vdXRpbHMvbG9hZC1lc20nO1xuaW1wb3J0IHsgcHVyZ2VTdGFsZUJ1aWxkQ2FjaGUgfSBmcm9tICcuLi8uLi91dGlscy9wdXJnZS1jYWNoZSc7XG5pbXBvcnQgeyBhc3NlcnRDb21wYXRpYmxlQW5ndWxhclZlcnNpb24gfSBmcm9tICcuLi8uLi91dGlscy92ZXJzaW9uJztcbmltcG9ydCB7IG5vcm1hbGl6ZU9wdGlvbnMgfSBmcm9tICcuL29wdGlvbnMnO1xuaW1wb3J0IHsgU2NoZW1hIGFzIEV4dHJhY3RJMThuQnVpbGRlck9wdGlvbnMsIEZvcm1hdCB9IGZyb20gJy4vc2NoZW1hJztcblxuLyoqXG4gKiBAZXhwZXJpbWVudGFsIERpcmVjdCB1c2FnZSBvZiB0aGlzIGZ1bmN0aW9uIGlzIGNvbnNpZGVyZWQgZXhwZXJpbWVudGFsLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZXhlY3V0ZShcbiAgb3B0aW9uczogRXh0cmFjdEkxOG5CdWlsZGVyT3B0aW9ucyxcbiAgY29udGV4dDogQnVpbGRlckNvbnRleHQsXG4gIHRyYW5zZm9ybXM/OiB7XG4gICAgd2VicGFja0NvbmZpZ3VyYXRpb24/OiBFeGVjdXRpb25UcmFuc2Zvcm1lcjx3ZWJwYWNrLkNvbmZpZ3VyYXRpb24+O1xuICB9LFxuKTogUHJvbWlzZTxCdWlsZGVyT3V0cHV0PiB7XG4gIC8vIERldGVybWluZSBwcm9qZWN0IG5hbWUgZnJvbSBidWlsZGVyIGNvbnRleHQgdGFyZ2V0XG4gIGNvbnN0IHByb2plY3ROYW1lID0gY29udGV4dC50YXJnZXQ/LnByb2plY3Q7XG4gIGlmICghcHJvamVjdE5hbWUpIHtcbiAgICBjb250ZXh0LmxvZ2dlci5lcnJvcihgVGhlICdleHRyYWN0LWkxOG4nIGJ1aWxkZXIgcmVxdWlyZXMgYSB0YXJnZXQgdG8gYmUgc3BlY2lmaWVkLmApO1xuXG4gICAgcmV0dXJuIHsgc3VjY2VzczogZmFsc2UgfTtcbiAgfVxuXG4gIC8vIENoZWNrIEFuZ3VsYXIgdmVyc2lvbi5cbiAgYXNzZXJ0Q29tcGF0aWJsZUFuZ3VsYXJWZXJzaW9uKGNvbnRleHQud29ya3NwYWNlUm9vdCk7XG5cbiAgLy8gTG9hZCB0aGUgQW5ndWxhciBsb2NhbGl6ZSBwYWNrYWdlLlxuICAvLyBUaGUgcGFja2FnZSBpcyBhIHBlZXIgZGVwZW5kZW5jeSBhbmQgbWlnaHQgbm90IGJlIHByZXNlbnRcbiAgbGV0IGxvY2FsaXplVG9vbHNNb2R1bGU7XG4gIHRyeSB7XG4gICAgbG9jYWxpemVUb29sc01vZHVsZSA9XG4gICAgICBhd2FpdCBsb2FkRXNtTW9kdWxlPHR5cGVvZiBpbXBvcnQoJ0Bhbmd1bGFyL2xvY2FsaXplL3Rvb2xzJyk+KCdAYW5ndWxhci9sb2NhbGl6ZS90b29scycpO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4ge1xuICAgICAgc3VjY2VzczogZmFsc2UsXG4gICAgICBlcnJvcjpcbiAgICAgICAgYGkxOG4gZXh0cmFjdGlvbiByZXF1aXJlcyB0aGUgJ0Bhbmd1bGFyL2xvY2FsaXplJyBwYWNrYWdlLmAgK1xuICAgICAgICBgIFlvdSBjYW4gYWRkIGl0IGJ5IHVzaW5nICduZyBhZGQgQGFuZ3VsYXIvbG9jYWxpemUnLmAsXG4gICAgfTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBvcHRpb25zXG4gIGNvbnN0IG5vcm1hbGl6ZWRPcHRpb25zID0gYXdhaXQgbm9ybWFsaXplT3B0aW9ucyhjb250ZXh0LCBwcm9qZWN0TmFtZSwgb3B0aW9ucyk7XG4gIGNvbnN0IGJ1aWxkZXJOYW1lID0gYXdhaXQgY29udGV4dC5nZXRCdWlsZGVyTmFtZUZvclRhcmdldChub3JtYWxpemVkT3B0aW9ucy5idWlsZFRhcmdldCk7XG5cbiAgLy8gRXh0cmFjdCBtZXNzYWdlcyBiYXNlZCBvbiBjb25maWd1cmVkIGJ1aWxkZXJcbiAgbGV0IGV4dHJhY3Rpb25SZXN1bHQ7XG4gIGlmIChcbiAgICBidWlsZGVyTmFtZSA9PT0gJ0Bhbmd1bGFyLWRldmtpdC9idWlsZC1hbmd1bGFyOmFwcGxpY2F0aW9uJyB8fFxuICAgIGJ1aWxkZXJOYW1lID09PSAnQGFuZ3VsYXItZGV2a2l0L2J1aWxkLWFuZ3VsYXI6YnJvd3Nlci1lc2J1aWxkJ1xuICApIHtcbiAgICBjb25zdCB7IGV4dHJhY3RNZXNzYWdlcyB9ID0gYXdhaXQgaW1wb3J0KCcuL2FwcGxpY2F0aW9uLWV4dHJhY3Rpb24nKTtcbiAgICBleHRyYWN0aW9uUmVzdWx0ID0gYXdhaXQgZXh0cmFjdE1lc3NhZ2VzKFxuICAgICAgbm9ybWFsaXplZE9wdGlvbnMsXG4gICAgICBidWlsZGVyTmFtZSxcbiAgICAgIGNvbnRleHQsXG4gICAgICBsb2NhbGl6ZVRvb2xzTW9kdWxlLk1lc3NhZ2VFeHRyYWN0b3IsXG4gICAgKTtcbiAgfSBlbHNlIHtcbiAgICAvLyBQdXJnZSBvbGQgYnVpbGQgZGlzayBjYWNoZS5cbiAgICAvLyBPdGhlciBidWlsZCBzeXN0ZW1zIGhhbmRsZSBzdGFsZSBjYWNoZSBwdXJnaW5nIGRpcmVjdGx5LlxuICAgIGF3YWl0IHB1cmdlU3RhbGVCdWlsZENhY2hlKGNvbnRleHQpO1xuXG4gICAgY29uc3QgeyBleHRyYWN0TWVzc2FnZXMgfSA9IGF3YWl0IGltcG9ydCgnLi93ZWJwYWNrLWV4dHJhY3Rpb24nKTtcbiAgICBleHRyYWN0aW9uUmVzdWx0ID0gYXdhaXQgZXh0cmFjdE1lc3NhZ2VzKG5vcm1hbGl6ZWRPcHRpb25zLCBidWlsZGVyTmFtZSwgY29udGV4dCwgdHJhbnNmb3Jtcyk7XG4gIH1cblxuICAvLyBSZXR1cm4gdGhlIGJ1aWxkZXIgcmVzdWx0IGlmIGl0IGZhaWxlZFxuICBpZiAoIWV4dHJhY3Rpb25SZXN1bHQuYnVpbGRlclJlc3VsdC5zdWNjZXNzKSB7XG4gICAgcmV0dXJuIGV4dHJhY3Rpb25SZXN1bHQuYnVpbGRlclJlc3VsdDtcbiAgfVxuXG4gIC8vIFBlcmZvcm0gZHVwbGljYXRlIG1lc3NhZ2UgY2hlY2tzXG4gIGNvbnN0IHsgY2hlY2tEdXBsaWNhdGVNZXNzYWdlcyB9ID0gbG9jYWxpemVUb29sc01vZHVsZTtcblxuICAvLyBUaGUgZmlsZXN5c3RlbSBpcyB1c2VkIHRvIGNyZWF0ZSBhIHJlbGF0aXZlIHBhdGggZm9yIGVhY2ggZmlsZVxuICAvLyBmcm9tIHRoZSBiYXNlUGF0aC4gIFRoaXMgcmVsYXRpdmUgcGF0aCBpcyB0aGVuIHVzZWQgaW4gdGhlIGVycm9yIG1lc3NhZ2UuXG4gIGNvbnN0IGNoZWNrRmlsZVN5c3RlbSA9IHtcbiAgICByZWxhdGl2ZShmcm9tOiBzdHJpbmcsIHRvOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHBhdGgucmVsYXRpdmUoZnJvbSwgdG8pO1xuICAgIH0sXG4gIH07XG4gIGNvbnN0IGRpYWdub3N0aWNzID0gY2hlY2tEdXBsaWNhdGVNZXNzYWdlcyhcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGNoZWNrRmlsZVN5c3RlbSBhcyBhbnksXG4gICAgZXh0cmFjdGlvblJlc3VsdC5tZXNzYWdlcyxcbiAgICAnd2FybmluZycsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBleHRyYWN0aW9uUmVzdWx0LmJhc2VQYXRoIGFzIGFueSxcbiAgKTtcbiAgaWYgKGRpYWdub3N0aWNzLm1lc3NhZ2VzLmxlbmd0aCA+IDApIHtcbiAgICBjb250ZXh0LmxvZ2dlci53YXJuKGRpYWdub3N0aWNzLmZvcm1hdERpYWdub3N0aWNzKCcnKSk7XG4gIH1cblxuICAvLyBTZXJpYWxpemUgYWxsIGV4dHJhY3RlZCBtZXNzYWdlc1xuICBjb25zdCBzZXJpYWxpemVyID0gYXdhaXQgY3JlYXRlU2VyaWFsaXplcihcbiAgICBsb2NhbGl6ZVRvb2xzTW9kdWxlLFxuICAgIG5vcm1hbGl6ZWRPcHRpb25zLmZvcm1hdCxcbiAgICBub3JtYWxpemVkT3B0aW9ucy5pMThuT3B0aW9ucy5zb3VyY2VMb2NhbGUsXG4gICAgZXh0cmFjdGlvblJlc3VsdC5iYXNlUGF0aCxcbiAgICBleHRyYWN0aW9uUmVzdWx0LnVzZUxlZ2FjeUlkcyxcbiAgICBkaWFnbm9zdGljcyxcbiAgKTtcbiAgY29uc3QgY29udGVudCA9IHNlcmlhbGl6ZXIuc2VyaWFsaXplKGV4dHJhY3Rpb25SZXN1bHQubWVzc2FnZXMpO1xuXG4gIC8vIEVuc3VyZSBkaXJlY3RvcnkgZXhpc3RzXG4gIGNvbnN0IG91dHB1dFBhdGggPSBwYXRoLmRpcm5hbWUobm9ybWFsaXplZE9wdGlvbnMub3V0RmlsZSk7XG4gIGlmICghZnMuZXhpc3RzU3luYyhvdXRwdXRQYXRoKSkge1xuICAgIGZzLm1rZGlyU3luYyhvdXRwdXRQYXRoLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgfVxuXG4gIC8vIFdyaXRlIHRyYW5zbGF0aW9uIGZpbGVcbiAgZnMud3JpdGVGaWxlU3luYyhub3JtYWxpemVkT3B0aW9ucy5vdXRGaWxlLCBjb250ZW50KTtcblxuICBpZiAobm9ybWFsaXplZE9wdGlvbnMucHJvZ3Jlc3MpIHtcbiAgICBjb250ZXh0LmxvZ2dlci5pbmZvKGBFeHRyYWN0aW9uIENvbXBsZXRlLiAoTWVzc2FnZXM6ICR7ZXh0cmFjdGlvblJlc3VsdC5tZXNzYWdlcy5sZW5ndGh9KWApO1xuICB9XG5cbiAgcmV0dXJuIHsgc3VjY2VzczogdHJ1ZSwgb3V0cHV0UGF0aDogbm9ybWFsaXplZE9wdGlvbnMub3V0RmlsZSB9O1xufVxuXG5hc3luYyBmdW5jdGlvbiBjcmVhdGVTZXJpYWxpemVyKFxuICBsb2NhbGl6ZVRvb2xzTW9kdWxlOiB0eXBlb2YgaW1wb3J0KCdAYW5ndWxhci9sb2NhbGl6ZS90b29scycpLFxuICBmb3JtYXQ6IEZvcm1hdCxcbiAgc291cmNlTG9jYWxlOiBzdHJpbmcsXG4gIGJhc2VQYXRoOiBzdHJpbmcsXG4gIHVzZUxlZ2FjeUlkczogYm9vbGVhbixcbiAgZGlhZ25vc3RpY3M6IERpYWdub3N0aWNzLFxuKSB7XG4gIGNvbnN0IHtcbiAgICBYbWJUcmFuc2xhdGlvblNlcmlhbGl6ZXIsXG4gICAgTGVnYWN5TWVzc2FnZUlkTWlncmF0aW9uU2VyaWFsaXplcixcbiAgICBBcmJUcmFuc2xhdGlvblNlcmlhbGl6ZXIsXG4gICAgWGxpZmYxVHJhbnNsYXRpb25TZXJpYWxpemVyLFxuICAgIFhsaWZmMlRyYW5zbGF0aW9uU2VyaWFsaXplcixcbiAgICBTaW1wbGVKc29uVHJhbnNsYXRpb25TZXJpYWxpemVyLFxuICB9ID0gbG9jYWxpemVUb29sc01vZHVsZTtcblxuICBzd2l0Y2ggKGZvcm1hdCkge1xuICAgIGNhc2UgRm9ybWF0LlhtYjpcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICByZXR1cm4gbmV3IFhtYlRyYW5zbGF0aW9uU2VyaWFsaXplcihiYXNlUGF0aCBhcyBhbnksIHVzZUxlZ2FjeUlkcyk7XG4gICAgY2FzZSBGb3JtYXQuWGxmOlxuICAgIGNhc2UgRm9ybWF0LlhsaWY6XG4gICAgY2FzZSBGb3JtYXQuWGxpZmY6XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgcmV0dXJuIG5ldyBYbGlmZjFUcmFuc2xhdGlvblNlcmlhbGl6ZXIoc291cmNlTG9jYWxlLCBiYXNlUGF0aCBhcyBhbnksIHVzZUxlZ2FjeUlkcywge30pO1xuICAgIGNhc2UgRm9ybWF0LlhsZjI6XG4gICAgY2FzZSBGb3JtYXQuWGxpZmYyOlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgIHJldHVybiBuZXcgWGxpZmYyVHJhbnNsYXRpb25TZXJpYWxpemVyKHNvdXJjZUxvY2FsZSwgYmFzZVBhdGggYXMgYW55LCB1c2VMZWdhY3lJZHMsIHt9KTtcbiAgICBjYXNlIEZvcm1hdC5Kc29uOlxuICAgICAgcmV0dXJuIG5ldyBTaW1wbGVKc29uVHJhbnNsYXRpb25TZXJpYWxpemVyKHNvdXJjZUxvY2FsZSk7XG4gICAgY2FzZSBGb3JtYXQuTGVnYWN5TWlncmF0ZTpcbiAgICAgIHJldHVybiBuZXcgTGVnYWN5TWVzc2FnZUlkTWlncmF0aW9uU2VyaWFsaXplcihkaWFnbm9zdGljcyk7XG4gICAgY2FzZSBGb3JtYXQuQXJiOlxuICAgICAgY29uc3QgZmlsZVN5c3RlbSA9IHtcbiAgICAgICAgcmVsYXRpdmUoZnJvbTogc3RyaW5nLCB0bzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgICByZXR1cm4gcGF0aC5yZWxhdGl2ZShmcm9tLCB0byk7XG4gICAgICAgIH0sXG4gICAgICB9O1xuXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgcmV0dXJuIG5ldyBBcmJUcmFuc2xhdGlvblNlcmlhbGl6ZXIoc291cmNlTG9jYWxlLCBiYXNlUGF0aCBhcyBhbnksIGZpbGVTeXN0ZW0gYXMgYW55KTtcbiAgfVxufVxuIl19
@@ -21,7 +21,7 @@ export type NormalizedExtractI18nOptions = Awaited<ReturnType<typeof normalizeOp
21
21
  export declare function normalizeOptions(context: BuilderContext, projectName: string, options: ExtractI18nOptions): Promise<{
22
22
  workspaceRoot: string;
23
23
  projectRoot: string;
24
- browserTarget: import("@angular-devkit/architect").Target;
24
+ buildTarget: import("@angular-devkit/architect").Target;
25
25
  i18nOptions: import("../../utils/i18n-options").I18nOptions;
26
26
  format: Format.Arb | Format.Json | Format.LegacyMigrate | Format.Xliff | Format.Xliff2 | Format.Xmb;
27
27
  outFile: string;
@@ -30,7 +30,8 @@ async function normalizeOptions(context, projectName, options) {
30
30
  const workspaceRoot = context.workspaceRoot;
31
31
  const projectMetadata = await context.getProjectMetadata(projectName);
32
32
  const projectRoot = node_path_1.default.join(workspaceRoot, projectMetadata.root ?? '');
33
- const browserTarget = (0, architect_1.targetFromTargetString)(options.browserTarget);
33
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
34
+ const buildTarget = (0, architect_1.targetFromTargetString)(options.buildTarget ?? options.browserTarget);
34
35
  const i18nOptions = (0, i18n_options_1.createI18nOptions)(projectMetadata);
35
36
  // Normalize xliff format extensions
36
37
  let format = options.format;
@@ -55,7 +56,7 @@ async function normalizeOptions(context, projectName, options) {
55
56
  return {
56
57
  workspaceRoot,
57
58
  projectRoot,
58
- browserTarget,
59
+ buildTarget,
59
60
  i18nOptions,
60
61
  format,
61
62
  outFile,
@@ -79,4 +80,4 @@ function getDefaultOutFile(format) {
79
80
  (0, node_assert_1.fail)(`Invalid Format enum value: ${format}`);
80
81
  }
81
82
  }
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL2J1aWxkZXJzL2V4dHJhY3QtaTE4bi9vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7OztBQUVILHlEQUFtRjtBQUNuRiw2Q0FBbUM7QUFDbkMsMERBQTZCO0FBQzdCLDJEQUE2RDtBQUM3RCxxQ0FBZ0U7QUFJaEU7Ozs7Ozs7OztHQVNHO0FBQ0ksS0FBSyxVQUFVLGdCQUFnQixDQUNwQyxPQUF1QixFQUN2QixXQUFtQixFQUNuQixPQUEyQjtJQUUzQixNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDO0lBQzVDLE1BQU0sZUFBZSxHQUFHLE1BQU0sT0FBTyxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RFLE1BQU0sV0FBVyxHQUFHLG1CQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRyxlQUFlLENBQUMsSUFBMkIsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUVqRyxNQUFNLGFBQWEsR0FBRyxJQUFBLGtDQUFzQixFQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUVwRSxNQUFNLFdBQVcsR0FBRyxJQUFBLGdDQUFpQixFQUFDLGVBQWUsQ0FBQyxDQUFDO0lBRXZELG9DQUFvQztJQUNwQyxJQUFJLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO0lBQzVCLFFBQVEsTUFBTSxFQUFFO1FBQ2QsS0FBSyxTQUFTLENBQUM7UUFDZiwyQkFBMkI7UUFDM0IsS0FBSyxlQUFNLENBQUMsR0FBRyxDQUFDO1FBQ2hCLEtBQUssZUFBTSxDQUFDLElBQUksQ0FBQztRQUNqQixLQUFLLGVBQU0sQ0FBQyxLQUFLO1lBQ2YsTUFBTSxHQUFHLGVBQU0sQ0FBQyxLQUFLLENBQUM7WUFDdEIsTUFBTTtRQUNSLEtBQUssZUFBTSxDQUFDLElBQUksQ0FBQztRQUNqQixLQUFLLGVBQU0sQ0FBQyxNQUFNO1lBQ2hCLE1BQU0sR0FBRyxlQUFNLENBQUMsTUFBTSxDQUFDO1lBQ3ZCLE1BQU07S0FDVDtJQUVELElBQUksT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0QsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFO1FBQ3RCLE9BQU8sR0FBRyxtQkFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0tBQ2xEO0lBQ0QsT0FBTyxHQUFHLG1CQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFFdkQsT0FBTztRQUNMLGFBQWE7UUFDYixXQUFXO1FBQ1gsYUFBYTtRQUNiLFdBQVc7UUFDWCxNQUFNO1FBQ04sT0FBTztRQUNQLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUk7S0FDbkMsQ0FBQztBQUNKLENBQUM7QUE1Q0QsNENBNENDO0FBRUQsU0FBUyxpQkFBaUIsQ0FBQyxNQUFjO0lBQ3ZDLFFBQVEsTUFBTSxFQUFFO1FBQ2QsS0FBSyxlQUFNLENBQUMsR0FBRztZQUNiLE9BQU8sY0FBYyxDQUFDO1FBQ3hCLEtBQUssZUFBTSxDQUFDLEtBQUssQ0FBQztRQUNsQixLQUFLLGVBQU0sQ0FBQyxNQUFNO1lBQ2hCLE9BQU8sY0FBYyxDQUFDO1FBQ3hCLEtBQUssZUFBTSxDQUFDLElBQUksQ0FBQztRQUNqQixLQUFLLGVBQU0sQ0FBQyxhQUFhO1lBQ3ZCLE9BQU8sZUFBZSxDQUFDO1FBQ3pCLEtBQUssZUFBTSxDQUFDLEdBQUc7WUFDYixPQUFPLGNBQWMsQ0FBQztRQUN4QjtZQUNFLElBQUEsa0JBQUksRUFBQyw4QkFBOEIsTUFBaUIsRUFBRSxDQUFDLENBQUM7S0FDM0Q7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7IEJ1aWxkZXJDb250ZXh0LCB0YXJnZXRGcm9tVGFyZ2V0U3RyaW5nIH0gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L2FyY2hpdGVjdCc7XG5pbXBvcnQgeyBmYWlsIH0gZnJvbSAnbm9kZTphc3NlcnQnO1xuaW1wb3J0IHBhdGggZnJvbSAnbm9kZTpwYXRoJztcbmltcG9ydCB7IGNyZWF0ZUkxOG5PcHRpb25zIH0gZnJvbSAnLi4vLi4vdXRpbHMvaTE4bi1vcHRpb25zJztcbmltcG9ydCB7IFNjaGVtYSBhcyBFeHRyYWN0STE4bk9wdGlvbnMsIEZvcm1hdCB9IGZyb20gJy4vc2NoZW1hJztcblxuZXhwb3J0IHR5cGUgTm9ybWFsaXplZEV4dHJhY3RJMThuT3B0aW9ucyA9IEF3YWl0ZWQ8UmV0dXJuVHlwZTx0eXBlb2Ygbm9ybWFsaXplT3B0aW9ucz4+O1xuXG4vKipcbiAqIE5vcm1hbGl6ZSB0aGUgdXNlciBwcm92aWRlZCBvcHRpb25zIGJ5IGNyZWF0aW5nIGZ1bGwgcGF0aHMgZm9yIGFsbCBwYXRoIGJhc2VkIG9wdGlvbnNcbiAqIGFuZCBjb252ZXJ0aW5nIG11bHRpLWZvcm0gb3B0aW9ucyBpbnRvIGEgc2luZ2xlIGZvcm0gdGhhdCBjYW4gYmUgZGlyZWN0bHkgdXNlZFxuICogYnkgdGhlIGJ1aWxkIHByb2Nlc3MuXG4gKlxuICogQHBhcmFtIGNvbnRleHQgVGhlIGNvbnRleHQgZm9yIGN1cnJlbnQgYnVpbGRlciBleGVjdXRpb24uXG4gKiBAcGFyYW0gcHJvamVjdE5hbWUgVGhlIG5hbWUgb2YgdGhlIHByb2plY3QgZm9yIHRoZSBjdXJyZW50IGV4ZWN1dGlvbi5cbiAqIEBwYXJhbSBvcHRpb25zIEFuIG9iamVjdCBjb250YWluaW5nIHRoZSBvcHRpb25zIHRvIHVzZSBmb3IgdGhlIGJ1aWxkLlxuICogQHJldHVybnMgQW4gb2JqZWN0IGNvbnRhaW5pbmcgbm9ybWFsaXplZCBvcHRpb25zIHJlcXVpcmVkIHRvIHBlcmZvcm0gdGhlIGJ1aWxkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbm9ybWFsaXplT3B0aW9ucyhcbiAgY29udGV4dDogQnVpbGRlckNvbnRleHQsXG4gIHByb2plY3ROYW1lOiBzdHJpbmcsXG4gIG9wdGlvbnM6IEV4dHJhY3RJMThuT3B0aW9ucyxcbikge1xuICBjb25zdCB3b3Jrc3BhY2VSb290ID0gY29udGV4dC53b3Jrc3BhY2VSb290O1xuICBjb25zdCBwcm9qZWN0TWV0YWRhdGEgPSBhd2FpdCBjb250ZXh0LmdldFByb2plY3RNZXRhZGF0YShwcm9qZWN0TmFtZSk7XG4gIGNvbnN0IHByb2plY3RSb290ID0gcGF0aC5qb2luKHdvcmtzcGFjZVJvb3QsIChwcm9qZWN0TWV0YWRhdGEucm9vdCBhcyBzdHJpbmcgfCB1bmRlZmluZWQpID8/ICcnKTtcblxuICBjb25zdCBicm93c2VyVGFyZ2V0ID0gdGFyZ2V0RnJvbVRhcmdldFN0cmluZyhvcHRpb25zLmJyb3dzZXJUYXJnZXQpO1xuXG4gIGNvbnN0IGkxOG5PcHRpb25zID0gY3JlYXRlSTE4bk9wdGlvbnMocHJvamVjdE1ldGFkYXRhKTtcblxuICAvLyBOb3JtYWxpemUgeGxpZmYgZm9ybWF0IGV4dGVuc2lvbnNcbiAgbGV0IGZvcm1hdCA9IG9wdGlvbnMuZm9ybWF0O1xuICBzd2l0Y2ggKGZvcm1hdCkge1xuICAgIGNhc2UgdW5kZWZpbmVkOlxuICAgIC8vIERlZmF1bHQgZm9ybWF0IGlzIHhsaWZmMVxuICAgIGNhc2UgRm9ybWF0LlhsZjpcbiAgICBjYXNlIEZvcm1hdC5YbGlmOlxuICAgIGNhc2UgRm9ybWF0LlhsaWZmOlxuICAgICAgZm9ybWF0ID0gRm9ybWF0LlhsaWZmO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBGb3JtYXQuWGxmMjpcbiAgICBjYXNlIEZvcm1hdC5YbGlmZjI6XG4gICAgICBmb3JtYXQgPSBGb3JtYXQuWGxpZmYyO1xuICAgICAgYnJlYWs7XG4gIH1cblxuICBsZXQgb3V0RmlsZSA9IG9wdGlvbnMub3V0RmlsZSB8fCBnZXREZWZhdWx0T3V0RmlsZShmb3JtYXQpO1xuICBpZiAob3B0aW9ucy5vdXRwdXRQYXRoKSB7XG4gICAgb3V0RmlsZSA9IHBhdGguam9pbihvcHRpb25zLm91dHB1dFBhdGgsIG91dEZpbGUpO1xuICB9XG4gIG91dEZpbGUgPSBwYXRoLnJlc29sdmUoY29udGV4dC53b3Jrc3BhY2VSb290LCBvdXRGaWxlKTtcblxuICByZXR1cm4ge1xuICAgIHdvcmtzcGFjZVJvb3QsXG4gICAgcHJvamVjdFJvb3QsXG4gICAgYnJvd3NlclRhcmdldCxcbiAgICBpMThuT3B0aW9ucyxcbiAgICBmb3JtYXQsXG4gICAgb3V0RmlsZSxcbiAgICBwcm9ncmVzczogb3B0aW9ucy5wcm9ncmVzcyA/PyB0cnVlLFxuICB9O1xufVxuXG5mdW5jdGlvbiBnZXREZWZhdWx0T3V0RmlsZShmb3JtYXQ6IEZvcm1hdCkge1xuICBzd2l0Y2ggKGZvcm1hdCkge1xuICAgIGNhc2UgRm9ybWF0LlhtYjpcbiAgICAgIHJldHVybiAnbWVzc2FnZXMueG1iJztcbiAgICBjYXNlIEZvcm1hdC5YbGlmZjpcbiAgICBjYXNlIEZvcm1hdC5YbGlmZjI6XG4gICAgICByZXR1cm4gJ21lc3NhZ2VzLnhsZic7XG4gICAgY2FzZSBGb3JtYXQuSnNvbjpcbiAgICBjYXNlIEZvcm1hdC5MZWdhY3lNaWdyYXRlOlxuICAgICAgcmV0dXJuICdtZXNzYWdlcy5qc29uJztcbiAgICBjYXNlIEZvcm1hdC5BcmI6XG4gICAgICByZXR1cm4gJ21lc3NhZ2VzLmFyYic7XG4gICAgZGVmYXVsdDpcbiAgICAgIGZhaWwoYEludmFsaWQgRm9ybWF0IGVudW0gdmFsdWU6ICR7Zm9ybWF0IGFzIHVua25vd259YCk7XG4gIH1cbn1cbiJdfQ==
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXJfZGV2a2l0L2J1aWxkX2FuZ3VsYXIvc3JjL2J1aWxkZXJzL2V4dHJhY3QtaTE4bi9vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7OztBQUVILHlEQUFtRjtBQUNuRiw2Q0FBbUM7QUFDbkMsMERBQTZCO0FBQzdCLDJEQUE2RDtBQUM3RCxxQ0FBZ0U7QUFJaEU7Ozs7Ozs7OztHQVNHO0FBQ0ksS0FBSyxVQUFVLGdCQUFnQixDQUNwQyxPQUF1QixFQUN2QixXQUFtQixFQUNuQixPQUEyQjtJQUUzQixNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDO0lBQzVDLE1BQU0sZUFBZSxHQUFHLE1BQU0sT0FBTyxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RFLE1BQU0sV0FBVyxHQUFHLG1CQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRyxlQUFlLENBQUMsSUFBMkIsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUVqRyxvRUFBb0U7SUFDcEUsTUFBTSxXQUFXLEdBQUcsSUFBQSxrQ0FBc0IsRUFBQyxPQUFPLENBQUMsV0FBVyxJQUFJLE9BQU8sQ0FBQyxhQUFjLENBQUMsQ0FBQztJQUUxRixNQUFNLFdBQVcsR0FBRyxJQUFBLGdDQUFpQixFQUFDLGVBQWUsQ0FBQyxDQUFDO0lBRXZELG9DQUFvQztJQUNwQyxJQUFJLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO0lBQzVCLFFBQVEsTUFBTSxFQUFFO1FBQ2QsS0FBSyxTQUFTLENBQUM7UUFDZiwyQkFBMkI7UUFDM0IsS0FBSyxlQUFNLENBQUMsR0FBRyxDQUFDO1FBQ2hCLEtBQUssZUFBTSxDQUFDLElBQUksQ0FBQztRQUNqQixLQUFLLGVBQU0sQ0FBQyxLQUFLO1lBQ2YsTUFBTSxHQUFHLGVBQU0sQ0FBQyxLQUFLLENBQUM7WUFDdEIsTUFBTTtRQUNSLEtBQUssZUFBTSxDQUFDLElBQUksQ0FBQztRQUNqQixLQUFLLGVBQU0sQ0FBQyxNQUFNO1lBQ2hCLE1BQU0sR0FBRyxlQUFNLENBQUMsTUFBTSxDQUFDO1lBQ3ZCLE1BQU07S0FDVDtJQUVELElBQUksT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0QsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFO1FBQ3RCLE9BQU8sR0FBRyxtQkFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0tBQ2xEO0lBQ0QsT0FBTyxHQUFHLG1CQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFFdkQsT0FBTztRQUNMLGFBQWE7UUFDYixXQUFXO1FBQ1gsV0FBVztRQUNYLFdBQVc7UUFDWCxNQUFNO1FBQ04sT0FBTztRQUNQLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUk7S0FDbkMsQ0FBQztBQUNKLENBQUM7QUE3Q0QsNENBNkNDO0FBRUQsU0FBUyxpQkFBaUIsQ0FBQyxNQUFjO0lBQ3ZDLFFBQVEsTUFBTSxFQUFFO1FBQ2QsS0FBSyxlQUFNLENBQUMsR0FBRztZQUNiLE9BQU8sY0FBYyxDQUFDO1FBQ3hCLEtBQUssZUFBTSxDQUFDLEtBQUssQ0FBQztRQUNsQixLQUFLLGVBQU0sQ0FBQyxNQUFNO1lBQ2hCLE9BQU8sY0FBYyxDQUFDO1FBQ3hCLEtBQUssZUFBTSxDQUFDLElBQUksQ0FBQztRQUNqQixLQUFLLGVBQU0sQ0FBQyxhQUFhO1lBQ3ZCLE9BQU8sZUFBZSxDQUFDO1FBQ3pCLEtBQUssZUFBTSxDQUFDLEdBQUc7WUFDYixPQUFPLGNBQWMsQ0FBQztRQUN4QjtZQUNFLElBQUEsa0JBQUksRUFBQyw4QkFBOEIsTUFBaUIsRUFBRSxDQUFDLENBQUM7S0FDM0Q7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7IEJ1aWxkZXJDb250ZXh0LCB0YXJnZXRGcm9tVGFyZ2V0U3RyaW5nIH0gZnJvbSAnQGFuZ3VsYXItZGV2a2l0L2FyY2hpdGVjdCc7XG5pbXBvcnQgeyBmYWlsIH0gZnJvbSAnbm9kZTphc3NlcnQnO1xuaW1wb3J0IHBhdGggZnJvbSAnbm9kZTpwYXRoJztcbmltcG9ydCB7IGNyZWF0ZUkxOG5PcHRpb25zIH0gZnJvbSAnLi4vLi4vdXRpbHMvaTE4bi1vcHRpb25zJztcbmltcG9ydCB7IFNjaGVtYSBhcyBFeHRyYWN0STE4bk9wdGlvbnMsIEZvcm1hdCB9IGZyb20gJy4vc2NoZW1hJztcblxuZXhwb3J0IHR5cGUgTm9ybWFsaXplZEV4dHJhY3RJMThuT3B0aW9ucyA9IEF3YWl0ZWQ8UmV0dXJuVHlwZTx0eXBlb2Ygbm9ybWFsaXplT3B0aW9ucz4+O1xuXG4vKipcbiAqIE5vcm1hbGl6ZSB0aGUgdXNlciBwcm92aWRlZCBvcHRpb25zIGJ5IGNyZWF0aW5nIGZ1bGwgcGF0aHMgZm9yIGFsbCBwYXRoIGJhc2VkIG9wdGlvbnNcbiAqIGFuZCBjb252ZXJ0aW5nIG11bHRpLWZvcm0gb3B0aW9ucyBpbnRvIGEgc2luZ2xlIGZvcm0gdGhhdCBjYW4gYmUgZGlyZWN0bHkgdXNlZFxuICogYnkgdGhlIGJ1aWxkIHByb2Nlc3MuXG4gKlxuICogQHBhcmFtIGNvbnRleHQgVGhlIGNvbnRleHQgZm9yIGN1cnJlbnQgYnVpbGRlciBleGVjdXRpb24uXG4gKiBAcGFyYW0gcHJvamVjdE5hbWUgVGhlIG5hbWUgb2YgdGhlIHByb2plY3QgZm9yIHRoZSBjdXJyZW50IGV4ZWN1dGlvbi5cbiAqIEBwYXJhbSBvcHRpb25zIEFuIG9iamVjdCBjb250YWluaW5nIHRoZSBvcHRpb25zIHRvIHVzZSBmb3IgdGhlIGJ1aWxkLlxuICogQHJldHVybnMgQW4gb2JqZWN0IGNvbnRhaW5pbmcgbm9ybWFsaXplZCBvcHRpb25zIHJlcXVpcmVkIHRvIHBlcmZvcm0gdGhlIGJ1aWxkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbm9ybWFsaXplT3B0aW9ucyhcbiAgY29udGV4dDogQnVpbGRlckNvbnRleHQsXG4gIHByb2plY3ROYW1lOiBzdHJpbmcsXG4gIG9wdGlvbnM6IEV4dHJhY3RJMThuT3B0aW9ucyxcbikge1xuICBjb25zdCB3b3Jrc3BhY2VSb290ID0gY29udGV4dC53b3Jrc3BhY2VSb290O1xuICBjb25zdCBwcm9qZWN0TWV0YWRhdGEgPSBhd2FpdCBjb250ZXh0LmdldFByb2plY3RNZXRhZGF0YShwcm9qZWN0TmFtZSk7XG4gIGNvbnN0IHByb2plY3RSb290ID0gcGF0aC5qb2luKHdvcmtzcGFjZVJvb3QsIChwcm9qZWN0TWV0YWRhdGEucm9vdCBhcyBzdHJpbmcgfCB1bmRlZmluZWQpID8/ICcnKTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICBjb25zdCBidWlsZFRhcmdldCA9IHRhcmdldEZyb21UYXJnZXRTdHJpbmcob3B0aW9ucy5idWlsZFRhcmdldCA/PyBvcHRpb25zLmJyb3dzZXJUYXJnZXQhKTtcblxuICBjb25zdCBpMThuT3B0aW9ucyA9IGNyZWF0ZUkxOG5PcHRpb25zKHByb2plY3RNZXRhZGF0YSk7XG5cbiAgLy8gTm9ybWFsaXplIHhsaWZmIGZvcm1hdCBleHRlbnNpb25zXG4gIGxldCBmb3JtYXQgPSBvcHRpb25zLmZvcm1hdDtcbiAgc3dpdGNoIChmb3JtYXQpIHtcbiAgICBjYXNlIHVuZGVmaW5lZDpcbiAgICAvLyBEZWZhdWx0IGZvcm1hdCBpcyB4bGlmZjFcbiAgICBjYXNlIEZvcm1hdC5YbGY6XG4gICAgY2FzZSBGb3JtYXQuWGxpZjpcbiAgICBjYXNlIEZvcm1hdC5YbGlmZjpcbiAgICAgIGZvcm1hdCA9IEZvcm1hdC5YbGlmZjtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgRm9ybWF0LlhsZjI6XG4gICAgY2FzZSBGb3JtYXQuWGxpZmYyOlxuICAgICAgZm9ybWF0ID0gRm9ybWF0LlhsaWZmMjtcbiAgICAgIGJyZWFrO1xuICB9XG5cbiAgbGV0IG91dEZpbGUgPSBvcHRpb25zLm91dEZpbGUgfHwgZ2V0RGVmYXVsdE91dEZpbGUoZm9ybWF0KTtcbiAgaWYgKG9wdGlvbnMub3V0cHV0UGF0aCkge1xuICAgIG91dEZpbGUgPSBwYXRoLmpvaW4ob3B0aW9ucy5vdXRwdXRQYXRoLCBvdXRGaWxlKTtcbiAgfVxuICBvdXRGaWxlID0gcGF0aC5yZXNvbHZlKGNvbnRleHQud29ya3NwYWNlUm9vdCwgb3V0RmlsZSk7XG5cbiAgcmV0dXJuIHtcbiAgICB3b3Jrc3BhY2VSb290LFxuICAgIHByb2plY3RSb290LFxuICAgIGJ1aWxkVGFyZ2V0LFxuICAgIGkxOG5PcHRpb25zLFxuICAgIGZvcm1hdCxcbiAgICBvdXRGaWxlLFxuICAgIHByb2dyZXNzOiBvcHRpb25zLnByb2dyZXNzID8/IHRydWUsXG4gIH07XG59XG5cbmZ1bmN0aW9uIGdldERlZmF1bHRPdXRGaWxlKGZvcm1hdDogRm9ybWF0KSB7XG4gIHN3aXRjaCAoZm9ybWF0KSB7XG4gICAgY2FzZSBGb3JtYXQuWG1iOlxuICAgICAgcmV0dXJuICdtZXNzYWdlcy54bWInO1xuICAgIGNhc2UgRm9ybWF0LlhsaWZmOlxuICAgIGNhc2UgRm9ybWF0LlhsaWZmMjpcbiAgICAgIHJldHVybiAnbWVzc2FnZXMueGxmJztcbiAgICBjYXNlIEZvcm1hdC5Kc29uOlxuICAgIGNhc2UgRm9ybWF0LkxlZ2FjeU1pZ3JhdGU6XG4gICAgICByZXR1cm4gJ21lc3NhZ2VzLmpzb24nO1xuICAgIGNhc2UgRm9ybWF0LkFyYjpcbiAgICAgIHJldHVybiAnbWVzc2FnZXMuYXJiJztcbiAgICBkZWZhdWx0OlxuICAgICAgZmFpbChgSW52YWxpZCBGb3JtYXQgZW51bSB2YWx1ZTogJHtmb3JtYXQgYXMgdW5rbm93bn1gKTtcbiAgfVxufVxuIl19
@@ -6,8 +6,15 @@ export interface Schema {
6
6
  * A browser builder target to extract i18n messages in the format of
7
7
  * `project:target[:configuration]`. You can also pass in more than one configuration name
8
8
  * as a comma-separated list. Example: `project:target:production,staging`.
9
+ * @deprecated Use 'buildTarget' instead.
9
10
  */
10
- browserTarget: string;
11
+ browserTarget?: string;
12
+ /**
13
+ * A builder target to extract i18n messages in the format of
14
+ * `project:target[:configuration]`. You can also pass in more than one configuration name
15
+ * as a comma-separated list. Example: `project:target:production,staging`.
16
+ */
17
+ buildTarget?: string;
11
18
  /**
12
19
  * Output format for the generated file.
13
20
  */
@@ -18,4 +18,4 @@ var Format;
18
18
  Format["Xliff2"] = "xliff2";
19
19
  Format["Xmb"] = "xmb";
20
20
  })(Format || (exports.Format = Format = {}));
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhcl9kZXZraXQvYnVpbGRfYW5ndWxhci9zcmMvYnVpbGRlcnMvZXh0cmFjdC1pMThuL3NjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsbUZBQW1GO0FBQ25GLG9GQUFvRjs7O0FBOEJwRjs7R0FFRztBQUNILElBQVksTUFVWDtBQVZELFdBQVksTUFBTTtJQUNkLHFCQUFXLENBQUE7SUFDWCx1QkFBYSxDQUFBO0lBQ2IsMENBQWdDLENBQUE7SUFDaEMscUJBQVcsQ0FBQTtJQUNYLHVCQUFhLENBQUE7SUFDYix1QkFBYSxDQUFBO0lBQ2IseUJBQWUsQ0FBQTtJQUNmLDJCQUFpQixDQUFBO0lBQ2pCLHFCQUFXLENBQUE7QUFDZixDQUFDLEVBVlcsTUFBTSxzQkFBTixNQUFNLFFBVWpCIiwic291cmNlc0NvbnRlbnQiOlsiXG4vLyBUSElTIEZJTEUgSVMgQVVUT01BVElDQUxMWSBHRU5FUkFURUQuIFRPIFVQREFURSBUSElTIEZJTEUgWU9VIE5FRUQgVE8gQ0hBTkdFIFRIRVxuLy8gQ09SUkVTUE9ORElORyBKU09OIFNDSEVNQSBGSUxFLCBUSEVOIFJVTiBkZXZraXQtYWRtaW4gYnVpbGQgKG9yIGJhemVsIGJ1aWxkIC4uLikuXG5cbi8qKlxuICogRXh0cmFjdCBpMThuIHRhcmdldCBvcHRpb25zIGZvciBCdWlsZCBGYWNhZGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2NoZW1hIHtcbiAgICAvKipcbiAgICAgKiBBIGJyb3dzZXIgYnVpbGRlciB0YXJnZXQgdG8gZXh0cmFjdCBpMThuIG1lc3NhZ2VzIGluIHRoZSBmb3JtYXQgb2ZcbiAgICAgKiBgcHJvamVjdDp0YXJnZXRbOmNvbmZpZ3VyYXRpb25dYC4gWW91IGNhbiBhbHNvIHBhc3MgaW4gbW9yZSB0aGFuIG9uZSBjb25maWd1cmF0aW9uIG5hbWVcbiAgICAgKiBhcyBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LiBFeGFtcGxlOiBgcHJvamVjdDp0YXJnZXQ6cHJvZHVjdGlvbixzdGFnaW5nYC5cbiAgICAgKi9cbiAgICBicm93c2VyVGFyZ2V0OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogT3V0cHV0IGZvcm1hdCBmb3IgdGhlIGdlbmVyYXRlZCBmaWxlLlxuICAgICAqL1xuICAgIGZvcm1hdD86IEZvcm1hdDtcbiAgICAvKipcbiAgICAgKiBOYW1lIG9mIHRoZSBmaWxlIHRvIG91dHB1dC5cbiAgICAgKi9cbiAgICBvdXRGaWxlPzogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIFBhdGggd2hlcmUgb3V0cHV0IHdpbGwgYmUgcGxhY2VkLlxuICAgICAqL1xuICAgIG91dHB1dFBhdGg/OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogTG9nIHByb2dyZXNzIHRvIHRoZSBjb25zb2xlLlxuICAgICAqL1xuICAgIHByb2dyZXNzPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBPdXRwdXQgZm9ybWF0IGZvciB0aGUgZ2VuZXJhdGVkIGZpbGUuXG4gKi9cbmV4cG9ydCBlbnVtIEZvcm1hdCB7XG4gICAgQXJiID0gXCJhcmJcIixcbiAgICBKc29uID0gXCJqc29uXCIsXG4gICAgTGVnYWN5TWlncmF0ZSA9IFwibGVnYWN5LW1pZ3JhdGVcIixcbiAgICBYbGYgPSBcInhsZlwiLFxuICAgIFhsZjIgPSBcInhsZjJcIixcbiAgICBYbGlmID0gXCJ4bGlmXCIsXG4gICAgWGxpZmYgPSBcInhsaWZmXCIsXG4gICAgWGxpZmYyID0gXCJ4bGlmZjJcIixcbiAgICBYbWIgPSBcInhtYlwiLFxufVxuIl19
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhcl9kZXZraXQvYnVpbGRfYW5ndWxhci9zcmMvYnVpbGRlcnMvZXh0cmFjdC1pMThuL3NjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsbUZBQW1GO0FBQ25GLG9GQUFvRjs7O0FBcUNwRjs7R0FFRztBQUNILElBQVksTUFVWDtBQVZELFdBQVksTUFBTTtJQUNkLHFCQUFXLENBQUE7SUFDWCx1QkFBYSxDQUFBO0lBQ2IsMENBQWdDLENBQUE7SUFDaEMscUJBQVcsQ0FBQTtJQUNYLHVCQUFhLENBQUE7SUFDYix1QkFBYSxDQUFBO0lBQ2IseUJBQWUsQ0FBQTtJQUNmLDJCQUFpQixDQUFBO0lBQ2pCLHFCQUFXLENBQUE7QUFDZixDQUFDLEVBVlcsTUFBTSxzQkFBTixNQUFNLFFBVWpCIiwic291cmNlc0NvbnRlbnQiOlsiXG4vLyBUSElTIEZJTEUgSVMgQVVUT01BVElDQUxMWSBHRU5FUkFURUQuIFRPIFVQREFURSBUSElTIEZJTEUgWU9VIE5FRUQgVE8gQ0hBTkdFIFRIRVxuLy8gQ09SUkVTUE9ORElORyBKU09OIFNDSEVNQSBGSUxFLCBUSEVOIFJVTiBkZXZraXQtYWRtaW4gYnVpbGQgKG9yIGJhemVsIGJ1aWxkIC4uLikuXG5cbi8qKlxuICogRXh0cmFjdCBpMThuIHRhcmdldCBvcHRpb25zIGZvciBCdWlsZCBGYWNhZGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2NoZW1hIHtcbiAgICAvKipcbiAgICAgKiBBIGJyb3dzZXIgYnVpbGRlciB0YXJnZXQgdG8gZXh0cmFjdCBpMThuIG1lc3NhZ2VzIGluIHRoZSBmb3JtYXQgb2ZcbiAgICAgKiBgcHJvamVjdDp0YXJnZXRbOmNvbmZpZ3VyYXRpb25dYC4gWW91IGNhbiBhbHNvIHBhc3MgaW4gbW9yZSB0aGFuIG9uZSBjb25maWd1cmF0aW9uIG5hbWVcbiAgICAgKiBhcyBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LiBFeGFtcGxlOiBgcHJvamVjdDp0YXJnZXQ6cHJvZHVjdGlvbixzdGFnaW5nYC5cbiAgICAgKiBAZGVwcmVjYXRlZCBVc2UgJ2J1aWxkVGFyZ2V0JyBpbnN0ZWFkLlxuICAgICAqL1xuICAgIGJyb3dzZXJUYXJnZXQ/OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogQSBidWlsZGVyIHRhcmdldCB0byBleHRyYWN0IGkxOG4gbWVzc2FnZXMgaW4gdGhlIGZvcm1hdCBvZlxuICAgICAqIGBwcm9qZWN0OnRhcmdldFs6Y29uZmlndXJhdGlvbl1gLiBZb3UgY2FuIGFsc28gcGFzcyBpbiBtb3JlIHRoYW4gb25lIGNvbmZpZ3VyYXRpb24gbmFtZVxuICAgICAqIGFzIGEgY29tbWEtc2VwYXJhdGVkIGxpc3QuIEV4YW1wbGU6IGBwcm9qZWN0OnRhcmdldDpwcm9kdWN0aW9uLHN0YWdpbmdgLlxuICAgICAqL1xuICAgIGJ1aWxkVGFyZ2V0Pzogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIE91dHB1dCBmb3JtYXQgZm9yIHRoZSBnZW5lcmF0ZWQgZmlsZS5cbiAgICAgKi9cbiAgICBmb3JtYXQ/OiBGb3JtYXQ7XG4gICAgLyoqXG4gICAgICogTmFtZSBvZiB0aGUgZmlsZSB0byBvdXRwdXQuXG4gICAgICovXG4gICAgb3V0RmlsZT86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBQYXRoIHdoZXJlIG91dHB1dCB3aWxsIGJlIHBsYWNlZC5cbiAgICAgKi9cbiAgICBvdXRwdXRQYXRoPzogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIExvZyBwcm9ncmVzcyB0byB0aGUgY29uc29sZS5cbiAgICAgKi9cbiAgICBwcm9ncmVzcz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogT3V0cHV0IGZvcm1hdCBmb3IgdGhlIGdlbmVyYXRlZCBmaWxlLlxuICovXG5leHBvcnQgZW51bSBGb3JtYXQge1xuICAgIEFyYiA9IFwiYXJiXCIsXG4gICAgSnNvbiA9IFwianNvblwiLFxuICAgIExlZ2FjeU1pZ3JhdGUgPSBcImxlZ2FjeS1taWdyYXRlXCIsXG4gICAgWGxmID0gXCJ4bGZcIixcbiAgICBYbGYyID0gXCJ4bGYyXCIsXG4gICAgWGxpZiA9IFwieGxpZlwiLFxuICAgIFhsaWZmID0gXCJ4bGlmZlwiLFxuICAgIFhsaWZmMiA9IFwieGxpZmYyXCIsXG4gICAgWG1iID0gXCJ4bWJcIixcbn1cbiJdfQ==
@@ -7,6 +7,12 @@
7
7
  "browserTarget": {
8
8
  "type": "string",
9
9
  "description": "A browser builder target to extract i18n messages in the format of `project:target[:configuration]`. You can also pass in more than one configuration name as a comma-separated list. Example: `project:target:production,staging`.",
10
+ "pattern": "^[^:\\s]+:[^:\\s]+(:[^\\s]+)?$",
11
+ "x-deprecated": "Use 'buildTarget' instead."
12
+ },
13
+ "buildTarget": {
14
+ "type": "string",
15
+ "description": "A builder target to extract i18n messages in the format of `project:target[:configuration]`. You can also pass in more than one configuration name as a comma-separated list. Example: `project:target:production,staging`.",
10
16
  "pattern": "^[^:\\s]+:[^:\\s]+(:[^\\s]+)?$"
11
17
  },
12
18
  "format": {
@@ -30,5 +36,5 @@
30
36
  }
31
37
  },
32
38
  "additionalProperties": false,
33
- "required": ["browserTarget"]
39
+ "anyOf": [{ "required": ["buildTarget"] }, { "required": ["browserTarget"] }]
34
40
  }
@@ -26,7 +26,7 @@ class NoEmitPlugin {
26
26
  async function extractMessages(options, builderName, context, transforms = {}) {
27
27
  const messages = [];
28
28
  let useLegacyIds = true;
29
- const browserOptions = await context.validateOptions(await context.getTargetOptions(options.browserTarget), builderName);
29
+ const browserOptions = await context.validateOptions(await context.getTargetOptions(options.buildTarget), builderName);
30
30
  const builderOptions = {
31
31
  ...browserOptions,
32
32
  optimization: false,
@@ -97,4 +97,4 @@ async function extractMessages(options, builderName, context, transforms = {}) {
97
97
  };
98
98
  }
99
99
  exports.extractMessages = extractMessages;
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2VicGFjay1leHRyYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhcl9kZXZraXQvYnVpbGRfYW5ndWxhci9zcmMvYnVpbGRlcnMvZXh0cmFjdC1pMThuL3dlYnBhY2stZXh0cmFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7Ozs7QUFJSCxpRUFBd0U7QUFDeEUsK0JBQXFDO0FBQ3JDLHNEQUFzRDtBQUN0RCx5REFBOEQ7QUFDOUQsMkRBQStFO0FBRS9FLCtFQUE2RjtBQUM3Riw4Q0FBMEQ7QUFHMUQsTUFBTSxZQUFZO0lBQ2hCLEtBQUssQ0FBQyxRQUEwQjtRQUM5QixRQUFRLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEUsQ0FBQztDQUNGO0FBRU0sS0FBSyxVQUFVLGVBQWUsQ0FDbkMsT0FBcUMsRUFDckMsV0FBbUIsRUFDbkIsT0FBdUIsRUFDdkIsYUFFSSxFQUFFO0lBT04sTUFBTSxRQUFRLEdBQXNCLEVBQUUsQ0FBQztJQUN2QyxJQUFJLFlBQVksR0FBRyxJQUFJLENBQUM7SUFFeEIsTUFBTSxjQUFjLEdBQUcsTUFBTSxPQUFPLENBQUMsZUFBZSxDQUNsRCxNQUFNLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQ3JELFdBQVcsQ0FDWixDQUFDO0lBRUYsTUFBTSxjQUFjLEdBQUc7UUFDckIsR0FBRyxjQUFjO1FBQ2pCLFlBQVksRUFBRSxLQUFLO1FBQ25CLFNBQVMsRUFBRTtZQUNULE9BQU8sRUFBRSxJQUFJO1lBQ2IsTUFBTSxFQUFFLEtBQUs7WUFDYixNQUFNLEVBQUUsSUFBSTtTQUNiO1FBQ0QsY0FBYyxFQUFFLEtBQUs7UUFDckIsR0FBRyxFQUFFLElBQUk7UUFDVCxRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVE7UUFDMUIsT0FBTyxFQUFFLEVBQUU7UUFDWCxNQUFNLEVBQUUsRUFBRTtRQUNWLE9BQU8sRUFBRSxFQUFFO1FBQ1gsTUFBTSxFQUFFLEVBQUU7UUFDVixnQkFBZ0IsRUFBRSxLQUFLO1FBQ3ZCLGVBQWUsRUFBRSxLQUFLO1FBQ3RCLG9CQUFvQixFQUFFLEtBQUs7UUFDM0IsYUFBYSxFQUFFLHNCQUFhLENBQUMsSUFBSTtRQUNqQyxXQUFXLEVBQUUsSUFBSTtRQUNqQiwyQkFBMkIsRUFBRSxTQUFTO0tBQ2xCLENBQUM7SUFDdkIsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sSUFBQSxnRUFBdUMsRUFDOUQsY0FBYyxFQUNkLE9BQU8sRUFDUCxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ04seURBQXlEO1FBQ3pELFlBQVksR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQywrQkFBK0IsSUFBSSxJQUFJLENBQUM7UUFFNUUsTUFBTSxRQUFRLEdBQStDO1lBQzNELEVBQUUsT0FBTyxFQUFFLENBQUMsSUFBSSxZQUFZLEVBQUUsQ0FBQyxFQUFFO1lBQ2pDLElBQUEseUJBQWUsRUFBQyxHQUFHLENBQUM7U0FDckIsQ0FBQztRQUVGLDZDQUE2QztRQUM3QyxRQUFRLENBQUMsT0FBTyxDQUFDO1lBQ2YsTUFBTSxFQUFFO2dCQUNOLEtBQUssRUFBRTtvQkFDTDt3QkFDRSxJQUFJLEVBQUUsaUJBQWlCO3dCQUN2QixNQUFNLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQzt3QkFDL0MsT0FBTyxFQUFFOzRCQUNQLGNBQWMsRUFBRSxDQUFDLFlBQStCLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFZLENBQUM7eUJBQ3BGO3FCQUNGO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCw2Q0FBNkM7UUFDN0MsUUFBUSxDQUFDLElBQUksQ0FBQztZQUNaLE1BQU0sRUFBRTtnQkFDTixLQUFLLEVBQUU7b0JBQ0w7d0JBQ0UsSUFBSSxFQUFFLHlCQUF5Qjt3QkFDL0IsTUFBTSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUM7cUJBQzFDO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBQ0QsNERBQTREO0lBQzVELEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLENBQ2pDLENBQUM7SUFFRixNQUFNLGFBQWEsR0FBRyxNQUFNLElBQUEsb0JBQWEsRUFDdkMsSUFBQSwwQkFBVSxFQUFDLENBQUMsTUFBTSxVQUFVLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLE1BQU0sRUFBRSxPQUFPLEVBQUU7UUFDaEYsT0FBTyxFQUFFLElBQUEsb0NBQTRCLEVBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDckUsY0FBYyxFQUFFLGlCQUFPO0tBQ3hCLENBQUMsQ0FDSCxDQUFDO0lBRUYsT0FBTztRQUNMLGFBQWE7UUFDYixRQUFRLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsV0FBVztRQUMvQyxRQUFRO1FBQ1IsWUFBWTtLQUNiLENBQUM7QUFDSixDQUFDO0FBckdELDBDQXFHQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgdHlwZSB7IMm1UGFyc2VkTWVzc2FnZSBhcyBMb2NhbGl6ZU1lc3NhZ2UgfSBmcm9tICdAYW5ndWxhci9sb2NhbGl6ZSc7XG5pbXBvcnQgeyBCdWlsZGVyQ29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9hcmNoaXRlY3QnO1xuaW1wb3J0IHsgQnVpbGRSZXN1bHQsIHJ1bldlYnBhY2sgfSBmcm9tICdAYW5ndWxhci1kZXZraXQvYnVpbGQtd2VicGFjayc7XG5pbXBvcnQgeyBsYXN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgd2VicGFjaywgeyB0eXBlIENvbmZpZ3VyYXRpb24gfSBmcm9tICd3ZWJwYWNrJztcbmltcG9ydCB7IGdldENvbW1vbkNvbmZpZyB9IGZyb20gJy4uLy4uL3Rvb2xzL3dlYnBhY2svY29uZmlncyc7XG5pbXBvcnQgeyBjcmVhdGVXZWJwYWNrTG9nZ2luZ0NhbGxiYWNrIH0gZnJvbSAnLi4vLi4vdG9vbHMvd2VicGFjay91dGlscy9zdGF0cyc7XG5pbXBvcnQgeyBFeGVjdXRpb25UcmFuc2Zvcm1lciB9IGZyb20gJy4uLy4uL3RyYW5zZm9ybXMnO1xuaW1wb3J0IHsgZ2VuZXJhdGVCcm93c2VyV2VicGFja0NvbmZpZ0Zyb21Db250ZXh0IH0gZnJvbSAnLi4vLi4vdXRpbHMvd2VicGFjay1icm93c2VyLWNvbmZpZyc7XG5pbXBvcnQgeyBPdXRwdXRIYXNoaW5nLCBTY2hlbWEgfSBmcm9tICcuLi9icm93c2VyL3NjaGVtYSc7XG5pbXBvcnQgeyBOb3JtYWxpemVkRXh0cmFjdEkxOG5PcHRpb25zIH0gZnJvbSAnLi9vcHRpb25zJztcblxuY2xhc3MgTm9FbWl0UGx1Z2luIHtcbiAgYXBwbHkoY29tcGlsZXI6IHdlYnBhY2suQ29tcGlsZXIpOiB2b2lkIHtcbiAgICBjb21waWxlci5ob29rcy5zaG91bGRFbWl0LnRhcCgnYW5ndWxhci1uby1lbWl0JywgKCkgPT4gZmFsc2UpO1xuICB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBleHRyYWN0TWVzc2FnZXMoXG4gIG9wdGlvbnM6IE5vcm1hbGl6ZWRFeHRyYWN0STE4bk9wdGlvbnMsXG4gIGJ1aWxkZXJOYW1lOiBzdHJpbmcsXG4gIGNvbnRleHQ6IEJ1aWxkZXJDb250ZXh0LFxuICB0cmFuc2Zvcm1zOiB7XG4gICAgd2VicGFja0NvbmZpZ3VyYXRpb24/OiBFeGVjdXRpb25UcmFuc2Zvcm1lcjx3ZWJwYWNrLkNvbmZpZ3VyYXRpb24+O1xuICB9ID0ge30sXG4pOiBQcm9taXNlPHtcbiAgYnVpbGRlclJlc3VsdDogQnVpbGRSZXN1bHQ7XG4gIGJhc2VQYXRoOiBzdHJpbmc7XG4gIG1lc3NhZ2VzOiBMb2NhbGl6ZU1lc3NhZ2VbXTtcbiAgdXNlTGVnYWN5SWRzOiBib29sZWFuO1xufT4ge1xuICBjb25zdCBtZXNzYWdlczogTG9jYWxpemVNZXNzYWdlW10gPSBbXTtcbiAgbGV0IHVzZUxlZ2FjeUlkcyA9IHRydWU7XG5cbiAgY29uc3QgYnJvd3Nlck9wdGlvbnMgPSBhd2FpdCBjb250ZXh0LnZhbGlkYXRlT3B0aW9ucyhcbiAgICBhd2FpdCBjb250ZXh0LmdldFRhcmdldE9wdGlvbnMob3B0aW9ucy5icm93c2VyVGFyZ2V0KSxcbiAgICBidWlsZGVyTmFtZSxcbiAgKTtcblxuICBjb25zdCBidWlsZGVyT3B0aW9ucyA9IHtcbiAgICAuLi5icm93c2VyT3B0aW9ucyxcbiAgICBvcHRpbWl6YXRpb246IGZhbHNlLFxuICAgIHNvdXJjZU1hcDoge1xuICAgICAgc2NyaXB0czogdHJ1ZSxcbiAgICAgIHN0eWxlczogZmFsc2UsXG4gICAgICB2ZW5kb3I6IHRydWUsXG4gICAgfSxcbiAgICBidWlsZE9wdGltaXplcjogZmFsc2UsXG4gICAgYW90OiB0cnVlLFxuICAgIHByb2dyZXNzOiBvcHRpb25zLnByb2dyZXNzLFxuICAgIGJ1ZGdldHM6IFtdLFxuICAgIGFzc2V0czogW10sXG4gICAgc2NyaXB0czogW10sXG4gICAgc3R5bGVzOiBbXSxcbiAgICBkZWxldGVPdXRwdXRQYXRoOiBmYWxzZSxcbiAgICBleHRyYWN0TGljZW5zZXM6IGZhbHNlLFxuICAgIHN1YnJlc291cmNlSW50ZWdyaXR5OiBmYWxzZSxcbiAgICBvdXRwdXRIYXNoaW5nOiBPdXRwdXRIYXNoaW5nLk5vbmUsXG4gICAgbmFtZWRDaHVua3M6IHRydWUsXG4gICAgYWxsb3dlZENvbW1vbkpzRGVwZW5kZW5jaWVzOiB1bmRlZmluZWQsXG4gIH0gYXMgdW5rbm93biBhcyBTY2hlbWE7XG4gIGNvbnN0IHsgY29uZmlnIH0gPSBhd2FpdCBnZW5lcmF0ZUJyb3dzZXJXZWJwYWNrQ29uZmlnRnJvbUNvbnRleHQoXG4gICAgYnVpbGRlck9wdGlvbnMsXG4gICAgY29udGV4dCxcbiAgICAod2NvKSA9PiB7XG4gICAgICAvLyBEZWZhdWx0IHZhbHVlIGZvciBsZWdhY3kgbWVzc2FnZSBpZHMgaXMgY3VycmVudGx5IHRydWVcbiAgICAgIHVzZUxlZ2FjeUlkcyA9IHdjby50c0NvbmZpZy5vcHRpb25zLmVuYWJsZUkxOG5MZWdhY3lNZXNzYWdlSWRGb3JtYXQgPz8gdHJ1ZTtcblxuICAgICAgY29uc3QgcGFydGlhbHM6IChQcm9taXNlPENvbmZpZ3VyYXRpb24+IHwgQ29uZmlndXJhdGlvbilbXSA9IFtcbiAgICAgICAgeyBwbHVnaW5zOiBbbmV3IE5vRW1pdFBsdWdpbigpXSB9LFxuICAgICAgICBnZXRDb21tb25Db25maWcod2NvKSxcbiAgICAgIF07XG5cbiAgICAgIC8vIEFkZCBJdnkgYXBwbGljYXRpb24gZmlsZSBleHRyYWN0b3Igc3VwcG9ydFxuICAgICAgcGFydGlhbHMudW5zaGlmdCh7XG4gICAgICAgIG1vZHVsZToge1xuICAgICAgICAgIHJ1bGVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRlc3Q6IC9cXC5bY21dP1t0al1zeD8kLyxcbiAgICAgICAgICAgICAgbG9hZGVyOiByZXF1aXJlLnJlc29sdmUoJy4vaXZ5LWV4dHJhY3QtbG9hZGVyJyksXG4gICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICBtZXNzYWdlSGFuZGxlcjogKGZpbGVNZXNzYWdlczogTG9jYWxpemVNZXNzYWdlW10pID0+IG1lc3NhZ2VzLnB1c2goLi4uZmlsZU1lc3NhZ2VzKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICAvLyBSZXBsYWNlIGFsbCBzdHlsZXNoZWV0cyB3aXRoIGVtcHR5IGNvbnRlbnRcbiAgICAgIHBhcnRpYWxzLnB1c2goe1xuICAgICAgICBtb2R1bGU6IHtcbiAgICAgICAgICBydWxlczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0ZXN0OiAvXFwuKGNzc3xzY3NzfHNhc3N8bGVzcykkLyxcbiAgICAgICAgICAgICAgbG9hZGVyOiByZXF1aXJlLnJlc29sdmUoJy4vZW1wdHktbG9hZGVyJyksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIHBhcnRpYWxzO1xuICAgIH0sXG4gICAgLy8gRHVyaW5nIGV4dHJhY3Rpb24gd2UgZG9uJ3QgbmVlZCBzcGVjaWZpYyBicm93c2VyIHN1cHBvcnQuXG4gICAgeyBzdXBwb3J0ZWRCcm93c2VyczogdW5kZWZpbmVkIH0sXG4gICk7XG5cbiAgY29uc3QgYnVpbGRlclJlc3VsdCA9IGF3YWl0IGxhc3RWYWx1ZUZyb20oXG4gICAgcnVuV2VicGFjaygoYXdhaXQgdHJhbnNmb3Jtcz8ud2VicGFja0NvbmZpZ3VyYXRpb24/Lihjb25maWcpKSB8fCBjb25maWcsIGNvbnRleHQsIHtcbiAgICAgIGxvZ2dpbmc6IGNyZWF0ZVdlYnBhY2tMb2dnaW5nQ2FsbGJhY2soYnVpbGRlck9wdGlvbnMsIGNvbnRleHQubG9nZ2VyKSxcbiAgICAgIHdlYnBhY2tGYWN0b3J5OiB3ZWJwYWNrLFxuICAgIH0pLFxuICApO1xuXG4gIHJldHVybiB7XG4gICAgYnVpbGRlclJlc3VsdCxcbiAgICBiYXNlUGF0aDogY29uZmlnLmNvbnRleHQgfHwgb3B0aW9ucy5wcm9qZWN0Um9vdCxcbiAgICBtZXNzYWdlcyxcbiAgICB1c2VMZWdhY3lJZHMsXG4gIH07XG59XG4iXX0=
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2VicGFjay1leHRyYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhcl9kZXZraXQvYnVpbGRfYW5ndWxhci9zcmMvYnVpbGRlcnMvZXh0cmFjdC1pMThuL3dlYnBhY2stZXh0cmFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7OztHQU1HOzs7Ozs7QUFJSCxpRUFBd0U7QUFDeEUsK0JBQXFDO0FBQ3JDLHNEQUFzRDtBQUN0RCx5REFBOEQ7QUFDOUQsMkRBQStFO0FBRS9FLCtFQUE2RjtBQUM3Riw4Q0FBMEQ7QUFHMUQsTUFBTSxZQUFZO0lBQ2hCLEtBQUssQ0FBQyxRQUEwQjtRQUM5QixRQUFRLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEUsQ0FBQztDQUNGO0FBRU0sS0FBSyxVQUFVLGVBQWUsQ0FDbkMsT0FBcUMsRUFDckMsV0FBbUIsRUFDbkIsT0FBdUIsRUFDdkIsYUFFSSxFQUFFO0lBT04sTUFBTSxRQUFRLEdBQXNCLEVBQUUsQ0FBQztJQUN2QyxJQUFJLFlBQVksR0FBRyxJQUFJLENBQUM7SUFFeEIsTUFBTSxjQUFjLEdBQUcsTUFBTSxPQUFPLENBQUMsZUFBZSxDQUNsRCxNQUFNLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEVBQ25ELFdBQVcsQ0FDWixDQUFDO0lBRUYsTUFBTSxjQUFjLEdBQUc7UUFDckIsR0FBRyxjQUFjO1FBQ2pCLFlBQVksRUFBRSxLQUFLO1FBQ25CLFNBQVMsRUFBRTtZQUNULE9BQU8sRUFBRSxJQUFJO1lBQ2IsTUFBTSxFQUFFLEtBQUs7WUFDYixNQUFNLEVBQUUsSUFBSTtTQUNiO1FBQ0QsY0FBYyxFQUFFLEtBQUs7UUFDckIsR0FBRyxFQUFFLElBQUk7UUFDVCxRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVE7UUFDMUIsT0FBTyxFQUFFLEVBQUU7UUFDWCxNQUFNLEVBQUUsRUFBRTtRQUNWLE9BQU8sRUFBRSxFQUFFO1FBQ1gsTUFBTSxFQUFFLEVBQUU7UUFDVixnQkFBZ0IsRUFBRSxLQUFLO1FBQ3ZCLGVBQWUsRUFBRSxLQUFLO1FBQ3RCLG9CQUFvQixFQUFFLEtBQUs7UUFDM0IsYUFBYSxFQUFFLHNCQUFhLENBQUMsSUFBSTtRQUNqQyxXQUFXLEVBQUUsSUFBSTtRQUNqQiwyQkFBMkIsRUFBRSxTQUFTO0tBQ2xCLENBQUM7SUFDdkIsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sSUFBQSxnRUFBdUMsRUFDOUQsY0FBYyxFQUNkLE9BQU8sRUFDUCxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ04seURBQXlEO1FBQ3pELFlBQVksR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQywrQkFBK0IsSUFBSSxJQUFJLENBQUM7UUFFNUUsTUFBTSxRQUFRLEdBQStDO1lBQzNELEVBQUUsT0FBTyxFQUFFLENBQUMsSUFBSSxZQUFZLEVBQUUsQ0FBQyxFQUFFO1lBQ2pDLElBQUEseUJBQWUsRUFBQyxHQUFHLENBQUM7U0FDckIsQ0FBQztRQUVGLDZDQUE2QztRQUM3QyxRQUFRLENBQUMsT0FBTyxDQUFDO1lBQ2YsTUFBTSxFQUFFO2dCQUNOLEtBQUssRUFBRTtvQkFDTDt3QkFDRSxJQUFJLEVBQUUsaUJBQWlCO3dCQUN2QixNQUFNLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQzt3QkFDL0MsT0FBTyxFQUFFOzRCQUNQLGNBQWMsRUFBRSxDQUFDLFlBQStCLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFZLENBQUM7eUJBQ3BGO3FCQUNGO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCw2Q0FBNkM7UUFDN0MsUUFBUSxDQUFDLElBQUksQ0FBQztZQUNaLE1BQU0sRUFBRTtnQkFDTixLQUFLLEVBQUU7b0JBQ0w7d0JBQ0UsSUFBSSxFQUFFLHlCQUF5Qjt3QkFDL0IsTUFBTSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUM7cUJBQzFDO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBQ0QsNERBQTREO0lBQzVELEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLENBQ2pDLENBQUM7SUFFRixNQUFNLGFBQWEsR0FBRyxNQUFNLElBQUEsb0JBQWEsRUFDdkMsSUFBQSwwQkFBVSxFQUFDLENBQUMsTUFBTSxVQUFVLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLE1BQU0sRUFBRSxPQUFPLEVBQUU7UUFDaEYsT0FBTyxFQUFFLElBQUEsb0NBQTRCLEVBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDckUsY0FBYyxFQUFFLGlCQUFPO0tBQ3hCLENBQUMsQ0FDSCxDQUFDO0lBRUYsT0FBTztRQUNMLGFBQWE7UUFDYixRQUFRLEVBQUUsTUFBTSxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsV0FBVztRQUMvQyxRQUFRO1FBQ1IsWUFBWTtLQUNiLENBQUM7QUFDSixDQUFDO0FBckdELDBDQXFHQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgdHlwZSB7IMm1UGFyc2VkTWVzc2FnZSBhcyBMb2NhbGl6ZU1lc3NhZ2UgfSBmcm9tICdAYW5ndWxhci9sb2NhbGl6ZSc7XG5pbXBvcnQgeyBCdWlsZGVyQ29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9hcmNoaXRlY3QnO1xuaW1wb3J0IHsgQnVpbGRSZXN1bHQsIHJ1bldlYnBhY2sgfSBmcm9tICdAYW5ndWxhci1kZXZraXQvYnVpbGQtd2VicGFjayc7XG5pbXBvcnQgeyBsYXN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgd2VicGFjaywgeyB0eXBlIENvbmZpZ3VyYXRpb24gfSBmcm9tICd3ZWJwYWNrJztcbmltcG9ydCB7IGdldENvbW1vbkNvbmZpZyB9IGZyb20gJy4uLy4uL3Rvb2xzL3dlYnBhY2svY29uZmlncyc7XG5pbXBvcnQgeyBjcmVhdGVXZWJwYWNrTG9nZ2luZ0NhbGxiYWNrIH0gZnJvbSAnLi4vLi4vdG9vbHMvd2VicGFjay91dGlscy9zdGF0cyc7XG5pbXBvcnQgeyBFeGVjdXRpb25UcmFuc2Zvcm1lciB9IGZyb20gJy4uLy4uL3RyYW5zZm9ybXMnO1xuaW1wb3J0IHsgZ2VuZXJhdGVCcm93c2VyV2VicGFja0NvbmZpZ0Zyb21Db250ZXh0IH0gZnJvbSAnLi4vLi4vdXRpbHMvd2VicGFjay1icm93c2VyLWNvbmZpZyc7XG5pbXBvcnQgeyBPdXRwdXRIYXNoaW5nLCBTY2hlbWEgfSBmcm9tICcuLi9icm93c2VyL3NjaGVtYSc7XG5pbXBvcnQgeyBOb3JtYWxpemVkRXh0cmFjdEkxOG5PcHRpb25zIH0gZnJvbSAnLi9vcHRpb25zJztcblxuY2xhc3MgTm9FbWl0UGx1Z2luIHtcbiAgYXBwbHkoY29tcGlsZXI6IHdlYnBhY2suQ29tcGlsZXIpOiB2b2lkIHtcbiAgICBjb21waWxlci5ob29rcy5zaG91bGRFbWl0LnRhcCgnYW5ndWxhci1uby1lbWl0JywgKCkgPT4gZmFsc2UpO1xuICB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBleHRyYWN0TWVzc2FnZXMoXG4gIG9wdGlvbnM6IE5vcm1hbGl6ZWRFeHRyYWN0STE4bk9wdGlvbnMsXG4gIGJ1aWxkZXJOYW1lOiBzdHJpbmcsXG4gIGNvbnRleHQ6IEJ1aWxkZXJDb250ZXh0LFxuICB0cmFuc2Zvcm1zOiB7XG4gICAgd2VicGFja0NvbmZpZ3VyYXRpb24/OiBFeGVjdXRpb25UcmFuc2Zvcm1lcjx3ZWJwYWNrLkNvbmZpZ3VyYXRpb24+O1xuICB9ID0ge30sXG4pOiBQcm9taXNlPHtcbiAgYnVpbGRlclJlc3VsdDogQnVpbGRSZXN1bHQ7XG4gIGJhc2VQYXRoOiBzdHJpbmc7XG4gIG1lc3NhZ2VzOiBMb2NhbGl6ZU1lc3NhZ2VbXTtcbiAgdXNlTGVnYWN5SWRzOiBib29sZWFuO1xufT4ge1xuICBjb25zdCBtZXNzYWdlczogTG9jYWxpemVNZXNzYWdlW10gPSBbXTtcbiAgbGV0IHVzZUxlZ2FjeUlkcyA9IHRydWU7XG5cbiAgY29uc3QgYnJvd3Nlck9wdGlvbnMgPSBhd2FpdCBjb250ZXh0LnZhbGlkYXRlT3B0aW9ucyhcbiAgICBhd2FpdCBjb250ZXh0LmdldFRhcmdldE9wdGlvbnMob3B0aW9ucy5idWlsZFRhcmdldCksXG4gICAgYnVpbGRlck5hbWUsXG4gICk7XG5cbiAgY29uc3QgYnVpbGRlck9wdGlvbnMgPSB7XG4gICAgLi4uYnJvd3Nlck9wdGlvbnMsXG4gICAgb3B0aW1pemF0aW9uOiBmYWxzZSxcbiAgICBzb3VyY2VNYXA6IHtcbiAgICAgIHNjcmlwdHM6IHRydWUsXG4gICAgICBzdHlsZXM6IGZhbHNlLFxuICAgICAgdmVuZG9yOiB0cnVlLFxuICAgIH0sXG4gICAgYnVpbGRPcHRpbWl6ZXI6IGZhbHNlLFxuICAgIGFvdDogdHJ1ZSxcbiAgICBwcm9ncmVzczogb3B0aW9ucy5wcm9ncmVzcyxcbiAgICBidWRnZXRzOiBbXSxcbiAgICBhc3NldHM6IFtdLFxuICAgIHNjcmlwdHM6IFtdLFxuICAgIHN0eWxlczogW10sXG4gICAgZGVsZXRlT3V0cHV0UGF0aDogZmFsc2UsXG4gICAgZXh0cmFjdExpY2Vuc2VzOiBmYWxzZSxcbiAgICBzdWJyZXNvdXJjZUludGVncml0eTogZmFsc2UsXG4gICAgb3V0cHV0SGFzaGluZzogT3V0cHV0SGFzaGluZy5Ob25lLFxuICAgIG5hbWVkQ2h1bmtzOiB0cnVlLFxuICAgIGFsbG93ZWRDb21tb25Kc0RlcGVuZGVuY2llczogdW5kZWZpbmVkLFxuICB9IGFzIHVua25vd24gYXMgU2NoZW1hO1xuICBjb25zdCB7IGNvbmZpZyB9ID0gYXdhaXQgZ2VuZXJhdGVCcm93c2VyV2VicGFja0NvbmZpZ0Zyb21Db250ZXh0KFxuICAgIGJ1aWxkZXJPcHRpb25zLFxuICAgIGNvbnRleHQsXG4gICAgKHdjbykgPT4ge1xuICAgICAgLy8gRGVmYXVsdCB2YWx1ZSBmb3IgbGVnYWN5IG1lc3NhZ2UgaWRzIGlzIGN1cnJlbnRseSB0cnVlXG4gICAgICB1c2VMZWdhY3lJZHMgPSB3Y28udHNDb25maWcub3B0aW9ucy5lbmFibGVJMThuTGVnYWN5TWVzc2FnZUlkRm9ybWF0ID8/IHRydWU7XG5cbiAgICAgIGNvbnN0IHBhcnRpYWxzOiAoUHJvbWlzZTxDb25maWd1cmF0aW9uPiB8IENvbmZpZ3VyYXRpb24pW10gPSBbXG4gICAgICAgIHsgcGx1Z2luczogW25ldyBOb0VtaXRQbHVnaW4oKV0gfSxcbiAgICAgICAgZ2V0Q29tbW9uQ29uZmlnKHdjbyksXG4gICAgICBdO1xuXG4gICAgICAvLyBBZGQgSXZ5IGFwcGxpY2F0aW9uIGZpbGUgZXh0cmFjdG9yIHN1cHBvcnRcbiAgICAgIHBhcnRpYWxzLnVuc2hpZnQoe1xuICAgICAgICBtb2R1bGU6IHtcbiAgICAgICAgICBydWxlczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0ZXN0OiAvXFwuW2NtXT9bdGpdc3g/JC8sXG4gICAgICAgICAgICAgIGxvYWRlcjogcmVxdWlyZS5yZXNvbHZlKCcuL2l2eS1leHRyYWN0LWxvYWRlcicpLFxuICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgbWVzc2FnZUhhbmRsZXI6IChmaWxlTWVzc2FnZXM6IExvY2FsaXplTWVzc2FnZVtdKSA9PiBtZXNzYWdlcy5wdXNoKC4uLmZpbGVNZXNzYWdlcyksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgLy8gUmVwbGFjZSBhbGwgc3R5bGVzaGVldHMgd2l0aCBlbXB0eSBjb250ZW50XG4gICAgICBwYXJ0aWFscy5wdXNoKHtcbiAgICAgICAgbW9kdWxlOiB7XG4gICAgICAgICAgcnVsZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdGVzdDogL1xcLihjc3N8c2Nzc3xzYXNzfGxlc3MpJC8sXG4gICAgICAgICAgICAgIGxvYWRlcjogcmVxdWlyZS5yZXNvbHZlKCcuL2VtcHR5LWxvYWRlcicpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIHJldHVybiBwYXJ0aWFscztcbiAgICB9LFxuICAgIC8vIER1cmluZyBleHRyYWN0aW9uIHdlIGRvbid0IG5lZWQgc3BlY2lmaWMgYnJvd3NlciBzdXBwb3J0LlxuICAgIHsgc3VwcG9ydGVkQnJvd3NlcnM6IHVuZGVmaW5lZCB9LFxuICApO1xuXG4gIGNvbnN0IGJ1aWxkZXJSZXN1bHQgPSBhd2FpdCBsYXN0VmFsdWVGcm9tKFxuICAgIHJ1bldlYnBhY2soKGF3YWl0IHRyYW5zZm9ybXM/LndlYnBhY2tDb25maWd1cmF0aW9uPy4oY29uZmlnKSkgfHwgY29uZmlnLCBjb250ZXh0LCB7XG4gICAgICBsb2dnaW5nOiBjcmVhdGVXZWJwYWNrTG9nZ2luZ0NhbGxiYWNrKGJ1aWxkZXJPcHRpb25zLCBjb250ZXh0LmxvZ2dlciksXG4gICAgICB3ZWJwYWNrRmFjdG9yeTogd2VicGFjayxcbiAgICB9KSxcbiAgKTtcblxuICByZXR1cm4ge1xuICAgIGJ1aWxkZXJSZXN1bHQsXG4gICAgYmFzZVBhdGg6IGNvbmZpZy5jb250ZXh0IHx8IG9wdGlvbnMucHJvamVjdFJvb3QsXG4gICAgbWVzc2FnZXMsXG4gICAgdXNlTGVnYWN5SWRzLFxuICB9O1xufVxuIl19
@@ -93,7 +93,7 @@ exports.default = (0, architect_1.createBuilder)(async (schema, context) => {
93
93
  const jestProc = execFile(process.execPath, [
94
94
  '--experimental-vm-modules',
95
95
  jest,
96
- `--rootDir="${testOut}"`,
96
+ `--rootDir="${path.join(testOut, 'browser')}"`,
97
97
  '--testEnvironment=jsdom',
98
98
  // TODO(dgp1130): Enable cache once we have a mechanism for properly clearing / disabling it.
99
99
  '--no-cache',
@@ -158,4 +158,4 @@ function resolveModule(module) {
158
158
  return undefined;
159
159
  }
160
160
  }
161
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy9idWlsZGVycy9qZXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCx5REFBeUY7QUFDekYsaURBQXVEO0FBQ3ZELDJDQUE2QjtBQUM3QiwrQkFBaUM7QUFDakMsNkNBQTJDO0FBQzNDLGdEQUEwRDtBQUUxRCxzREFBMEQ7QUFDMUQsdUNBQTZDO0FBRTdDLDZDQUE2QztBQUU3QyxNQUFNLFFBQVEsR0FBRyxJQUFBLGdCQUFTLEVBQUMsd0JBQVUsQ0FBQyxDQUFDO0FBRXZDLG9EQUFvRDtBQUNwRCxrQkFBZSxJQUFBLHlCQUFhLEVBQzFCLEtBQUssRUFBRSxNQUF5QixFQUFFLE9BQXVCLEVBQTBCLEVBQUU7SUFDbkYsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ2pCLG9GQUFvRixDQUNyRixDQUFDO0lBRUYsTUFBTSxPQUFPLEdBQUcsSUFBQSwwQkFBZ0IsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUN6QyxNQUFNLE9BQU8sR0FBRyxlQUFlLENBQUMsQ0FBQyx5Q0FBeUM7SUFFMUUsNERBQTREO0lBQzVELHFJQUFxSTtJQUNySSxnRUFBZ0U7SUFDaEUsTUFBTSxJQUFJLEdBQUcsYUFBYSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzVDLElBQUksQ0FBQyxJQUFJLEVBQUU7UUFDVCxPQUFPO1lBQ0wsT0FBTyxFQUFFLEtBQUs7WUFDZCxvRUFBb0U7WUFDcEUsS0FBSyxFQUNILG1HQUFtRztTQUN0RyxDQUFDO0tBQ0g7SUFFRCxpREFBaUQ7SUFDakQsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFDNUQsSUFBSSxDQUFDLFdBQVcsRUFBRTtRQUNoQixP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O0tBQ2hCO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCx3RUFBd0U7UUFDeEUsbURBQW1EO1FBQ25ELE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7S0FDM0I7SUFFRCxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO0FBQzNCLENBQUMsQ0FDRixDQUFDO0FBRUYsS0FBSyxVQUFVLEtBQUssQ0FDbEIsT0FBdUIsRUFDdkIsT0FBMEM7SUFFMUMsSUFBSTtRQUNGLElBQUksS0FBSyxFQUFFLE1BQU0sQ0FBQyxJQUFJLElBQUEsc0NBQXdCLEVBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxFQUFFO1lBQ2hFLCtEQUErRDtTQUNoRTtRQUVELE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDMUI7SUFBQyxPQUFPLEdBQUcsRUFBRTtRQUNaLE9BQU87WUFDTCxPQUFPLEVBQUUsS0FBSztZQUNkLEtBQUssRUFBRyxHQUFhLENBQUMsT0FBTztTQUM5QixDQUFDO0tBQ0g7QUFDSCxDQUFDO0FBRUQsb0RBQW9EO0FBQ3BELFNBQVMsYUFBYSxDQUFDLE1BQWM7SUFDbkMsSUFBSTtRQUNGLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztLQUNoQztJQUFDLE1BQU07UUFDTixPQUFPLFNBQVMsQ0FBQztLQUNsQjtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHsgQnVpbGRlckNvbnRleHQsIEJ1aWxkZXJPdXRwdXQsIGNyZWF0ZUJ1aWxkZXIgfSBmcm9tICdAYW5ndWxhci1kZXZraXQvYXJjaGl0ZWN0JztcbmltcG9ydCB7IGV4ZWNGaWxlIGFzIGV4ZWNGaWxlQ2IgfSBmcm9tICdjaGlsZF9wcm9jZXNzJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBwcm9taXNpZnkgfSBmcm9tICd1dGlsJztcbmltcG9ydCB7IGNvbG9ycyB9IGZyb20gJy4uLy4uL3V0aWxzL2NvbG9yJztcbmltcG9ydCB7IGJ1aWxkQXBwbGljYXRpb25JbnRlcm5hbCB9IGZyb20gJy4uL2FwcGxpY2F0aW9uJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uQnVpbGRlckludGVybmFsT3B0aW9ucyB9IGZyb20gJy4uL2FwcGxpY2F0aW9uL29wdGlvbnMnO1xuaW1wb3J0IHsgT3V0cHV0SGFzaGluZyB9IGZyb20gJy4uL2Jyb3dzZXItZXNidWlsZC9zY2hlbWEnO1xuaW1wb3J0IHsgbm9ybWFsaXplT3B0aW9ucyB9IGZyb20gJy4vb3B0aW9ucyc7XG5pbXBvcnQgeyBTY2hlbWEgYXMgSmVzdEJ1aWxkZXJTY2hlbWEgfSBmcm9tICcuL3NjaGVtYSc7XG5pbXBvcnQgeyBmaW5kVGVzdEZpbGVzIH0gZnJvbSAnLi90ZXN0LWZpbGVzJztcblxuY29uc3QgZXhlY0ZpbGUgPSBwcm9taXNpZnkoZXhlY0ZpbGVDYik7XG5cbi8qKiBNYWluIGV4ZWN1dGlvbiBmdW5jdGlvbiBmb3IgdGhlIEplc3QgYnVpbGRlci4gKi9cbmV4cG9ydCBkZWZhdWx0IGNyZWF0ZUJ1aWxkZXIoXG4gIGFzeW5jIChzY2hlbWE6IEplc3RCdWlsZGVyU2NoZW1hLCBjb250ZXh0OiBCdWlsZGVyQ29udGV4dCk6IFByb21pc2U8QnVpbGRlck91dHB1dD4gPT4ge1xuICAgIGNvbnRleHQubG9nZ2VyLndhcm4oXG4gICAgICAnTk9URTogVGhlIEplc3QgYnVpbGRlciBpcyBjdXJyZW50bHkgRVhQRVJJTUVOVEFMIGFuZCBub3QgcmVhZHkgZm9yIHByb2R1Y3Rpb24gdXNlLicsXG4gICAgKTtcblxuICAgIGNvbnN0IG9wdGlvbnMgPSBub3JtYWxpemVPcHRpb25zKHNjaGVtYSk7XG4gICAgY29uc3QgdGVzdE91dCA9ICdkaXN0L3Rlc3Qtb3V0JzsgLy8gVE9ETyhkZ3AxMTMwKTogSGlkZSBpbiB0ZW1wIGRpcmVjdG9yeS5cblxuICAgIC8vIFZlcmlmeSBKZXN0IGluc3RhbGxhdGlvbiBhbmQgZ2V0IHRoZSBwYXRoIHRvIGl0J3MgYmluYXJ5LlxuICAgIC8vIFdlIG5lZWQgdG8gYG5vZGVfbW9kdWxlcy8uYmluL2plc3RgLCBidXQgdGhlcmUgaXMgbm8gbWVhbnMgdG8gcmVzb2x2ZSB0aGF0IGRpcmVjdGx5LiBGb3J0dW5hdGVseSBKZXN0J3MgYHBhY2thZ2UuanNvbmAgZXhwb3J0cyB0aGVcbiAgICAvLyBzYW1lIGZpbGUgYXQgYGJpbi9qZXN0YCwgc28gd2UgY2FuIGp1c3QgcmVzb2x2ZSB0aGF0IGluc3RlYWQuXG4gICAgY29uc3QgamVzdCA9IHJlc29sdmVNb2R1bGUoJ2plc3QvYmluL2plc3QnKTtcbiAgICBpZiAoIWplc3QpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHN1Y2Nlc3M6IGZhbHNlLFxuICAgICAgICAvLyBUT0RPKGRncDExMzApOiBEaXNwbGF5IGEgbW9yZSBhY2N1cmF0ZSBtZXNzYWdlIGZvciBub24tTlBNIHVzZXJzLlxuICAgICAgICBlcnJvcjpcbiAgICAgICAgICAnSmVzdCBpcyBub3QgaW5zdGFsbGVkLCBtb3N0IGxpa2VseSB5b3UgbmVlZCB0byBydW4gYG5wbSBpbnN0YWxsIGplc3QgLS1zYXZlLWRldmAgaW4geW91ciBwcm9qZWN0LicsXG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIFZlcmlmeSB0aGF0IEpTRG9tIGlzIGluc3RhbGxlZCBpbiB0aGUgcHJvamVjdC5cbiAgICBjb25zdCBlbnZpcm9ubWVudCA9IHJlc29sdmVNb2R1bGUoJ2plc3QtZW52aXJvbm1lbnQtanNkb20nKTtcbiAgICBpZiAoIWVudmlyb25tZW50KSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzdWNjZXNzOiBmYWxzZSxcbiAgICAgICAgLy8gVE9ETyhkZ3AxMTMwKTogRGlzcGxheSBhIG1vcmUgYWNjdXJhdGUgbWVzc2FnZSBmb3Igbm9uLU5QTSB1c2Vycy5cbiAgICAgICAgZXJyb3I6XG4gICAgICAgICAgJ2BqZXN0LWVudmlyb25tZW50LWpzZG9tYCBpcyBub3QgaW5zdGFsbGVkLiBJbnN0YWxsIGl0IHdpdGggYG5wbSBpbnN0YWxsIGplc3QtZW52aXJvbm1lbnQtanNkb20gLS1zYXZlLWRldmAuJyxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgLy8gQnVpbGQgYWxsIHRoZSB0ZXN0IGZpbGVzLlxuICAgIGNvbnN0IHRlc3RGaWxlcyA9IGF3YWl0IGZpbmRUZXN0RmlsZXMob3B0aW9ucywgY29udGV4dC53b3Jrc3BhY2VSb290KTtcbiAgICBjb25zdCBqZXN0R2xvYmFsID0gcGF0aC5qb2luKF9fZGlybmFtZSwgJ2plc3QtZ2xvYmFsLm1qcycpO1xuICAgIGNvbnN0IGluaXRUZXN0QmVkID0gcGF0aC5qb2luKF9fZGlybmFtZSwgJ2luaXQtdGVzdC1iZWQubWpzJyk7XG4gICAgY29uc3QgYnVpbGRSZXN1bHQgPSBhd2FpdCBidWlsZChjb250ZXh0LCB7XG4gICAgICAvLyBCdWlsZCBhbGwgdGhlIHRlc3QgZmlsZXMgYW5kIGFsc28gdGhlIGBqZXN0LWdsb2JhbGAgYW5kIGBpbml0LXRlc3QtYmVkYCBzY3JpcHRzLlxuICAgICAgZW50cnlQb2ludHM6IG5ldyBTZXQoWy4uLnRlc3RGaWxlcywgamVzdEdsb2JhbCwgaW5pdFRlc3RCZWRdKSxcbiAgICAgIHRzQ29uZmlnOiBvcHRpb25zLnRzQ29uZmlnLFxuICAgICAgcG9seWZpbGxzOiBvcHRpb25zLnBvbHlmaWxscyA/PyBbJ3pvbmUuanMnLCAnem9uZS5qcy90ZXN0aW5nJ10sXG4gICAgICBvdXRwdXRQYXRoOiB0ZXN0T3V0LFxuICAgICAgYW90OiBmYWxzZSxcbiAgICAgIGluZGV4OiBmYWxzZSxcbiAgICAgIG91dHB1dEhhc2hpbmc6IE91dHB1dEhhc2hpbmcuTm9uZSxcbiAgICAgIG91dEV4dGVuc2lvbjogJ21qcycsIC8vIEZvcmNlIG5hdGl2ZSBFU00uXG4gICAgICBvcHRpbWl6YXRpb246IGZhbHNlLFxuICAgICAgc291cmNlTWFwOiB7XG4gICAgICAgIHNjcmlwdHM6IHRydWUsXG4gICAgICAgIHN0eWxlczogZmFsc2UsXG4gICAgICAgIHZlbmRvcjogZmFsc2UsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIGlmICghYnVpbGRSZXN1bHQuc3VjY2Vzcykge1xuICAgICAgcmV0dXJuIGJ1aWxkUmVzdWx0O1xuICAgIH1cblxuICAgIC8vIEV4ZWN1dGUgSmVzdCBvbiB0aGUgYnVpbHQgb3V0cHV0IGRpcmVjdG9yeS5cbiAgICBjb25zdCBqZXN0UHJvYyA9IGV4ZWNGaWxlKHByb2Nlc3MuZXhlY1BhdGgsIFtcbiAgICAgICctLWV4cGVyaW1lbnRhbC12bS1tb2R1bGVzJyxcbiAgICAgIGplc3QsXG5cbiAgICAgIGAtLXJvb3REaXI9XCIke3Rlc3RPdXR9XCJgLFxuICAgICAgJy0tdGVzdEVudmlyb25tZW50PWpzZG9tJyxcblxuICAgICAgLy8gVE9ETyhkZ3AxMTMwKTogRW5hYmxlIGNhY2hlIG9uY2Ugd2UgaGF2ZSBhIG1lY2hhbmlzbSBmb3IgcHJvcGVybHkgY2xlYXJpbmcgLyBkaXNhYmxpbmcgaXQuXG4gICAgICAnLS1uby1jYWNoZScsXG5cbiAgICAgIC8vIFJ1biBiYXNpY2FsbHkgYWxsIGZpbGVzIGluIHRoZSBvdXRwdXQgZGlyZWN0b3J5LCBhbnkgZXhjbHVkZWQgZmlsZXMgd2VyZSBhbHJlYWR5IGRyb3BwZWQgYnkgdGhlIGJ1aWxkLlxuICAgICAgYC0tdGVzdE1hdGNoPVwiPHJvb3REaXI+LyoqLyoubWpzXCJgLFxuXG4gICAgICAvLyBMb2FkIHBvbHlmaWxscyBhbmQgaW5pdGlhbGl6ZSB0aGUgZW52aXJvbm1lbnQgYmVmb3JlIGV4ZWN1dGluZyBlYWNoIHRlc3QgZmlsZS5cbiAgICAgIC8vIElNUE9SVEFOVDogT3JkZXIgbWF0dGVycyBoZXJlLlxuICAgICAgLy8gRmlyc3QsIHdlIGV4ZWN1dGUgYGplc3QtZ2xvYmFsLm1qc2AgdG8gaW5pdGlhbGl6ZSB0aGUgYGplc3RgIGdsb2JhbCB2YXJpYWJsZS5cbiAgICAgIC8vIFNlY29uZCwgd2UgZXhlY3V0ZSB1c2VyIHBvbHlmaWxscywgaW5jbHVkaW5nIGB6b25lLmpzYCBhbmQgYHpvbmUuanMvdGVzdGluZ2AuIFRoaXMgaXMgZGVwZW5kZW50IG9uIHRoZSBKZXN0IGdsb2JhbCBzbyBpdCBjYW4gcGF0Y2hcbiAgICAgIC8vIHRoZSBlbnZpcm9ubWVudCBmb3IgZmFrZSBhc3luYyB0byB3b3JrIGNvcnJlY3RseS5cbiAgICAgIC8vIFRoaXJkLCB3ZSBpbml0aWFsaXplIGBUZXN0QmVkYC4gVGhpcyBpcyBkZXBlbmRlbnQgb24gZmFrZSBhc3luYyBiZWluZyBzZXQgdXAgY29ycmVjdGx5IGJlZm9yZWhhbmQuXG4gICAgICBgLS1zZXR1cEZpbGVzQWZ0ZXJFbnY9XCI8cm9vdERpcj4vamVzdC1nbG9iYWwubWpzXCJgLFxuICAgICAgLi4uKG9wdGlvbnMucG9seWZpbGxzID8gW2AtLXNldHVwRmlsZXNBZnRlckVudj1cIjxyb290RGlyPi9wb2x5ZmlsbHMubWpzXCJgXSA6IFtdKSxcbiAgICAgIGAtLXNldHVwRmlsZXNBZnRlckVudj1cIjxyb290RGlyPi9pbml0LXRlc3QtYmVkLm1qc1wiYCxcblxuICAgICAgLy8gRG9uJ3QgcnVuIGFueSBpbmZyYXN0cnVjdHVyZSBmaWxlcyBhcyB0ZXN0cywgdGhleSBhcmUgbWFudWFsbHkgbG9hZGVkIHdoZXJlIG5lZWRlZC5cbiAgICAgIGAtLXRlc3RQYXRoSWdub3JlUGF0dGVybnM9XCI8cm9vdERpcj4vamVzdC1nbG9iYWxcXFxcLm1qc1wiYCxcbiAgICAgIC4uLihvcHRpb25zLnBvbHlmaWxscyA/IFtgLS10ZXN0UGF0aElnbm9yZVBhdHRlcm5zPVwiPHJvb3REaXI+L3BvbHlmaWxsc1xcXFwubWpzXCJgXSA6IFtdKSxcbiAgICAgIGAtLXRlc3RQYXRoSWdub3JlUGF0dGVybnM9XCI8cm9vdERpcj4vaW5pdC10ZXN0LWJlZFxcXFwubWpzXCJgLFxuXG4gICAgICAvLyBTa2lwIHNoYXJlZCBjaHVua3MsIGFzIHRoZXkgYXJlIG5vdCBlbnRyeSBwb2ludHMgdG8gdGVzdHMuXG4gICAgICBgLS10ZXN0UGF0aElnbm9yZVBhdHRlcm5zPVwiPHJvb3REaXI+L2NodW5rLS4qXFxcXC5tanNcImAsXG5cbiAgICAgIC8vIE9wdGlvbmFsbHkgZW5hYmxlIGNvbG9yLlxuICAgICAgLi4uKGNvbG9ycy5lbmFibGVkID8gWyctLWNvbG9ycyddIDogW10pLFxuICAgIF0pO1xuXG4gICAgLy8gU3RyZWFtIHRlc3Qgb3V0cHV0IHRvIHRoZSB0ZXJtaW5hbC5cbiAgICBqZXN0UHJvYy5jaGlsZC5zdGRvdXQ/Lm9uKCdkYXRhJywgKGNodW5rKSA9PiB7XG4gICAgICBjb250ZXh0LmxvZ2dlci5pbmZvKGNodW5rKTtcbiAgICB9KTtcbiAgICBqZXN0UHJvYy5jaGlsZC5zdGRlcnI/Lm9uKCdkYXRhJywgKGNodW5rKSA9PiB7XG4gICAgICAvLyBXcml0ZSB0byBzdGRlcnIgZGlyZWN0bHkgaW5zdGVhZCBvZiBgY29udGV4dC5sb2dnZXIuZXJyb3IoY2h1bmspYCBiZWNhdXNlIHRoZSBsb2dnZXIgd2lsbCBvdmVyd3JpdGUgSmVzdCdzIGNvbG9yaW5nIGluZm9ybWF0aW9uLlxuICAgICAgcHJvY2Vzcy5zdGRlcnIud3JpdGUoY2h1bmspO1xuICAgIH0pO1xuXG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGplc3RQcm9jO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAvLyBObyBuZWVkIHRvIHByb3BhZ2F0ZSBlcnJvciBtZXNzYWdlLCBhbHJlYWR5IHBpcGVkIHRvIHRlcm1pbmFsIG91dHB1dC5cbiAgICAgIC8vIFRPRE8oZGdwMTEzMCk6IEhhbmRsZSBwcm9jZXNzIHNwYXduaW5nIGZhaWx1cmVzLlxuICAgICAgcmV0dXJuIHsgc3VjY2VzczogZmFsc2UgfTtcbiAgICB9XG5cbiAgICByZXR1cm4geyBzdWNjZXNzOiB0cnVlIH07XG4gIH0sXG4pO1xuXG5hc3luYyBmdW5jdGlvbiBidWlsZChcbiAgY29udGV4dDogQnVpbGRlckNvbnRleHQsXG4gIG9wdGlvbnM6IEFwcGxpY2F0aW9uQnVpbGRlckludGVybmFsT3B0aW9ucyxcbik6IFByb21pc2U8QnVpbGRlck91dHB1dD4ge1xuICB0cnkge1xuICAgIGZvciBhd2FpdCAoY29uc3QgXyBvZiBidWlsZEFwcGxpY2F0aW9uSW50ZXJuYWwob3B0aW9ucywgY29udGV4dCkpIHtcbiAgICAgIC8vIE5vdGhpbmcgdG8gZG8gZm9yIGVhY2ggZXZlbnQsIGp1c3Qgd2FpdCBmb3IgdGhlIHdob2xlIGJ1aWxkLlxuICAgIH1cblxuICAgIHJldHVybiB7IHN1Y2Nlc3M6IHRydWUgfTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN1Y2Nlc3M6IGZhbHNlLFxuICAgICAgZXJyb3I6IChlcnIgYXMgRXJyb3IpLm1lc3NhZ2UsXG4gICAgfTtcbiAgfVxufVxuXG4vKiogU2FmZWx5IHJlc29sdmVzIHRoZSBnaXZlbiBOb2RlIG1vZHVsZSBzdHJpbmcuICovXG5mdW5jdGlvbiByZXNvbHZlTW9kdWxlKG1vZHVsZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gcmVxdWlyZS5yZXNvbHZlKG1vZHVsZSk7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cbiJdfQ==
161
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy9idWlsZGVycy9qZXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCx5REFBeUY7QUFDekYsaURBQXVEO0FBQ3ZELDJDQUE2QjtBQUM3QiwrQkFBaUM7QUFDakMsNkNBQTJDO0FBQzNDLGdEQUEwRDtBQUUxRCxzREFBMEQ7QUFDMUQsdUNBQTZDO0FBRTdDLDZDQUE2QztBQUU3QyxNQUFNLFFBQVEsR0FBRyxJQUFBLGdCQUFTLEVBQUMsd0JBQVUsQ0FBQyxDQUFDO0FBRXZDLG9EQUFvRDtBQUNwRCxrQkFBZSxJQUFBLHlCQUFhLEVBQzFCLEtBQUssRUFBRSxNQUF5QixFQUFFLE9BQXVCLEVBQTBCLEVBQUU7SUFDbkYsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ2pCLG9GQUFvRixDQUNyRixDQUFDO0lBRUYsTUFBTSxPQUFPLEdBQUcsSUFBQSwwQkFBZ0IsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUN6QyxNQUFNLE9BQU8sR0FBRyxlQUFlLENBQUMsQ0FBQyx5Q0FBeUM7SUFFMUUsNERBQTREO0lBQzVELHFJQUFxSTtJQUNySSxnRUFBZ0U7SUFDaEUsTUFBTSxJQUFJLEdBQUcsYUFBYSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzVDLElBQUksQ0FBQyxJQUFJLEVBQUU7UUFDVCxPQUFPO1lBQ0wsT0FBTyxFQUFFLEtBQUs7WUFDZCxvRUFBb0U7WUFDcEUsS0FBSyxFQUNILG1HQUFtRztTQUN0RyxDQUFDO0tBQ0g7SUFFRCxpREFBaUQ7SUFDakQsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFDNUQsSUFBSSxDQUFDLFdBQVcsRUFBRTtRQUNoQixP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LENBQUM7SUFFSCxJQUFJO1FBQ0YsTUFBTSxRQUFRLENBQUM7S0FDaEI7SUFBQyxPQUFPLEtBQUssRUFBRTtRQUNkLHdFQUF3RTtRQUN4RSxtREFBbUQ7UUFDbkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQztLQUMzQjtJQUVELE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7QUFDM0IsQ0FBQyxDQUNGLENBQUM7QUFFRixLQUFLLFVBQVUsS0FBSyxDQUNsQixPQUF1QixFQUN2QixPQUEwQztJQUUxQyxJQUFJO1FBQ0YsSUFBSSxLQUFLLEVBQUUsTUFBTSxDQUFDLElBQUksSUFBQSxzQ0FBd0IsRUFBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEVBQUU7WUFDaEUsK0RBQStEO1NBQ2hFO1FBRUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztLQUMxQjtJQUFDLE9BQU8sR0FBRyxFQUFFO1FBQ1osT0FBTztZQUNMLE9BQU8sRUFBRSxLQUFLO1lBQ2QsS0FBSyxFQUFHLEdBQWEsQ0FBQyxPQUFPO1NBQzlCLENBQUM7S0FDSDtBQUNILENBQUM7QUFFRCxvREFBb0Q7QUFDcEQsU0FBUyxhQUFhLENBQUMsTUFBYztJQUNuQyxJQUFJO1FBQ0YsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBQ2hDO0lBQUMsTUFBTTtRQUNOLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgeyBCdWlsZGVyQ29udGV4dCwgQnVpbGRlck91dHB1dCwgY3JlYXRlQnVpbGRlciB9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9hcmNoaXRlY3QnO1xuaW1wb3J0IHsgZXhlY0ZpbGUgYXMgZXhlY0ZpbGVDYiB9IGZyb20gJ2NoaWxkX3Byb2Nlc3MnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IHByb21pc2lmeSB9IGZyb20gJ3V0aWwnO1xuaW1wb3J0IHsgY29sb3JzIH0gZnJvbSAnLi4vLi4vdXRpbHMvY29sb3InO1xuaW1wb3J0IHsgYnVpbGRBcHBsaWNhdGlvbkludGVybmFsIH0gZnJvbSAnLi4vYXBwbGljYXRpb24nO1xuaW1wb3J0IHsgQXBwbGljYXRpb25CdWlsZGVySW50ZXJuYWxPcHRpb25zIH0gZnJvbSAnLi4vYXBwbGljYXRpb24vb3B0aW9ucyc7XG5pbXBvcnQgeyBPdXRwdXRIYXNoaW5nIH0gZnJvbSAnLi4vYnJvd3Nlci1lc2J1aWxkL3NjaGVtYSc7XG5pbXBvcnQgeyBub3JtYWxpemVPcHRpb25zIH0gZnJvbSAnLi9vcHRpb25zJztcbmltcG9ydCB7IFNjaGVtYSBhcyBKZXN0QnVpbGRlclNjaGVtYSB9IGZyb20gJy4vc2NoZW1hJztcbmltcG9ydCB7IGZpbmRUZXN0RmlsZXMgfSBmcm9tICcuL3Rlc3QtZmlsZXMnO1xuXG5jb25zdCBleGVjRmlsZSA9IHByb21pc2lmeShleGVjRmlsZUNiKTtcblxuLyoqIE1haW4gZXhlY3V0aW9uIGZ1bmN0aW9uIGZvciB0aGUgSmVzdCBidWlsZGVyLiAqL1xuZXhwb3J0IGRlZmF1bHQgY3JlYXRlQnVpbGRlcihcbiAgYXN5bmMgKHNjaGVtYTogSmVzdEJ1aWxkZXJTY2hlbWEsIGNvbnRleHQ6IEJ1aWxkZXJDb250ZXh0KTogUHJvbWlzZTxCdWlsZGVyT3V0cHV0PiA9PiB7XG4gICAgY29udGV4dC5sb2dnZXIud2FybihcbiAgICAgICdOT1RFOiBUaGUgSmVzdCBidWlsZGVyIGlzIGN1cnJlbnRseSBFWFBFUklNRU5UQUwgYW5kIG5vdCByZWFkeSBmb3IgcHJvZHVjdGlvbiB1c2UuJyxcbiAgICApO1xuXG4gICAgY29uc3Qgb3B0aW9ucyA9IG5vcm1hbGl6ZU9wdGlvbnMoc2NoZW1hKTtcbiAgICBjb25zdCB0ZXN0T3V0ID0gJ2Rpc3QvdGVzdC1vdXQnOyAvLyBUT0RPKGRncDExMzApOiBIaWRlIGluIHRlbXAgZGlyZWN0b3J5LlxuXG4gICAgLy8gVmVyaWZ5IEplc3QgaW5zdGFsbGF0aW9uIGFuZCBnZXQgdGhlIHBhdGggdG8gaXQncyBiaW5hcnkuXG4gICAgLy8gV2UgbmVlZCB0byBgbm9kZV9tb2R1bGVzLy5iaW4vamVzdGAsIGJ1dCB0aGVyZSBpcyBubyBtZWFucyB0byByZXNvbHZlIHRoYXQgZGlyZWN0bHkuIEZvcnR1bmF0ZWx5IEplc3QncyBgcGFja2FnZS5qc29uYCBleHBvcnRzIHRoZVxuICAgIC8vIHNhbWUgZmlsZSBhdCBgYmluL2plc3RgLCBzbyB3ZSBjYW4ganVzdCByZXNvbHZlIHRoYXQgaW5zdGVhZC5cbiAgICBjb25zdCBqZXN0ID0gcmVzb2x2ZU1vZHVsZSgnamVzdC9iaW4vamVzdCcpO1xuICAgIGlmICghamVzdCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc3VjY2VzczogZmFsc2UsXG4gICAgICAgIC8vIFRPRE8oZGdwMTEzMCk6IERpc3BsYXkgYSBtb3JlIGFjY3VyYXRlIG1lc3NhZ2UgZm9yIG5vbi1OUE0gdXNlcnMuXG4gICAgICAgIGVycm9yOlxuICAgICAgICAgICdKZXN0IGlzIG5vdCBpbnN0YWxsZWQsIG1vc3QgbGlrZWx5IHlvdSBuZWVkIHRvIHJ1biBgbnBtIGluc3RhbGwgamVzdCAtLXNhdmUtZGV2YCBpbiB5b3VyIHByb2plY3QuJyxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgLy8gVmVyaWZ5IHRoYXQgSlNEb20gaXMgaW5zdGFsbGVkIGluIHRoZSBwcm9qZWN0LlxuICAgIGNvbnN0IGVudmlyb25tZW50ID0gcmVzb2x2ZU1vZHVsZSgnamVzdC1lbnZpcm9ubWVudC1qc2RvbScpO1xuICAgIGlmICghZW52aXJvbm1lbnQpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHN1Y2Nlc3M6IGZhbHNlLFxuICAgICAgICAvLyBUT0RPKGRncDExMzApOiBEaXNwbGF5IGEgbW9yZSBhY2N1cmF0ZSBtZXNzYWdlIGZvciBub24tTlBNIHVzZXJzLlxuICAgICAgICBlcnJvcjpcbiAgICAgICAgICAnYGplc3QtZW52aXJvbm1lbnQtanNkb21gIGlzIG5vdCBpbnN0YWxsZWQuIEluc3RhbGwgaXQgd2l0aCBgbnBtIGluc3RhbGwgamVzdC1lbnZpcm9ubWVudC1qc2RvbSAtLXNhdmUtZGV2YC4nLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICAvLyBCdWlsZCBhbGwgdGhlIHRlc3QgZmlsZXMuXG4gICAgY29uc3QgdGVzdEZpbGVzID0gYXdhaXQgZmluZFRlc3RGaWxlcyhvcHRpb25zLCBjb250ZXh0LndvcmtzcGFjZVJvb3QpO1xuICAgIGNvbnN0IGplc3RHbG9iYWwgPSBwYXRoLmpvaW4oX19kaXJuYW1lLCAnamVzdC1nbG9iYWwubWpzJyk7XG4gICAgY29uc3QgaW5pdFRlc3RCZWQgPSBwYXRoLmpvaW4oX19kaXJuYW1lLCAnaW5pdC10ZXN0LWJlZC5tanMnKTtcbiAgICBjb25zdCBidWlsZFJlc3VsdCA9IGF3YWl0IGJ1aWxkKGNvbnRleHQsIHtcbiAgICAgIC8vIEJ1aWxkIGFsbCB0aGUgdGVzdCBmaWxlcyBhbmQgYWxzbyB0aGUgYGplc3QtZ2xvYmFsYCBhbmQgYGluaXQtdGVzdC1iZWRgIHNjcmlwdHMuXG4gICAgICBlbnRyeVBvaW50czogbmV3IFNldChbLi4udGVzdEZpbGVzLCBqZXN0R2xvYmFsLCBpbml0VGVzdEJlZF0pLFxuICAgICAgdHNDb25maWc6IG9wdGlvbnMudHNDb25maWcsXG4gICAgICBwb2x5ZmlsbHM6IG9wdGlvbnMucG9seWZpbGxzID8/IFsnem9uZS5qcycsICd6b25lLmpzL3Rlc3RpbmcnXSxcbiAgICAgIG91dHB1dFBhdGg6IHRlc3RPdXQsXG4gICAgICBhb3Q6IGZhbHNlLFxuICAgICAgaW5kZXg6IGZhbHNlLFxuICAgICAgb3V0cHV0SGFzaGluZzogT3V0cHV0SGFzaGluZy5Ob25lLFxuICAgICAgb3V0RXh0ZW5zaW9uOiAnbWpzJywgLy8gRm9yY2UgbmF0aXZlIEVTTS5cbiAgICAgIG9wdGltaXphdGlvbjogZmFsc2UsXG4gICAgICBzb3VyY2VNYXA6IHtcbiAgICAgICAgc2NyaXB0czogdHJ1ZSxcbiAgICAgICAgc3R5bGVzOiBmYWxzZSxcbiAgICAgICAgdmVuZG9yOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgaWYgKCFidWlsZFJlc3VsdC5zdWNjZXNzKSB7XG4gICAgICByZXR1cm4gYnVpbGRSZXN1bHQ7XG4gICAgfVxuXG4gICAgLy8gRXhlY3V0ZSBKZXN0IG9uIHRoZSBidWlsdCBvdXRwdXQgZGlyZWN0b3J5LlxuICAgIGNvbnN0IGplc3RQcm9jID0gZXhlY0ZpbGUocHJvY2Vzcy5leGVjUGF0aCwgW1xuICAgICAgJy0tZXhwZXJpbWVudGFsLXZtLW1vZHVsZXMnLFxuICAgICAgamVzdCxcblxuICAgICAgYC0tcm9vdERpcj1cIiR7cGF0aC5qb2luKHRlc3RPdXQsICdicm93c2VyJyl9XCJgLFxuICAgICAgJy0tdGVzdEVudmlyb25tZW50PWpzZG9tJyxcblxuICAgICAgLy8gVE9ETyhkZ3AxMTMwKTogRW5hYmxlIGNhY2hlIG9uY2Ugd2UgaGF2ZSBhIG1lY2hhbmlzbSBmb3IgcHJvcGVybHkgY2xlYXJpbmcgLyBkaXNhYmxpbmcgaXQuXG4gICAgICAnLS1uby1jYWNoZScsXG5cbiAgICAgIC8vIFJ1biBiYXNpY2FsbHkgYWxsIGZpbGVzIGluIHRoZSBvdXRwdXQgZGlyZWN0b3J5LCBhbnkgZXhjbHVkZWQgZmlsZXMgd2VyZSBhbHJlYWR5IGRyb3BwZWQgYnkgdGhlIGJ1aWxkLlxuICAgICAgYC0tdGVzdE1hdGNoPVwiPHJvb3REaXI+LyoqLyoubWpzXCJgLFxuXG4gICAgICAvLyBMb2FkIHBvbHlmaWxscyBhbmQgaW5pdGlhbGl6ZSB0aGUgZW52aXJvbm1lbnQgYmVmb3JlIGV4ZWN1dGluZyBlYWNoIHRlc3QgZmlsZS5cbiAgICAgIC8vIElNUE9SVEFOVDogT3JkZXIgbWF0dGVycyBoZXJlLlxuICAgICAgLy8gRmlyc3QsIHdlIGV4ZWN1dGUgYGplc3QtZ2xvYmFsLm1qc2AgdG8gaW5pdGlhbGl6ZSB0aGUgYGplc3RgIGdsb2JhbCB2YXJpYWJsZS5cbiAgICAgIC8vIFNlY29uZCwgd2UgZXhlY3V0ZSB1c2VyIHBvbHlmaWxscywgaW5jbHVkaW5nIGB6b25lLmpzYCBhbmQgYHpvbmUuanMvdGVzdGluZ2AuIFRoaXMgaXMgZGVwZW5kZW50IG9uIHRoZSBKZXN0IGdsb2JhbCBzbyBpdCBjYW4gcGF0Y2hcbiAgICAgIC8vIHRoZSBlbnZpcm9ubWVudCBmb3IgZmFrZSBhc3luYyB0byB3b3JrIGNvcnJlY3RseS5cbiAgICAgIC8vIFRoaXJkLCB3ZSBpbml0aWFsaXplIGBUZXN0QmVkYC4gVGhpcyBpcyBkZXBlbmRlbnQgb24gZmFrZSBhc3luYyBiZWluZyBzZXQgdXAgY29ycmVjdGx5IGJlZm9yZWhhbmQuXG4gICAgICBgLS1zZXR1cEZpbGVzQWZ0ZXJFbnY9XCI8cm9vdERpcj4vamVzdC1nbG9iYWwubWpzXCJgLFxuICAgICAgLi4uKG9wdGlvbnMucG9seWZpbGxzID8gW2AtLXNldHVwRmlsZXNBZnRlckVudj1cIjxyb290RGlyPi9wb2x5ZmlsbHMubWpzXCJgXSA6IFtdKSxcbiAgICAgIGAtLXNldHVwRmlsZXNBZnRlckVudj1cIjxyb290RGlyPi9pbml0LXRlc3QtYmVkLm1qc1wiYCxcblxuICAgICAgLy8gRG9uJ3QgcnVuIGFueSBpbmZyYXN0cnVjdHVyZSBmaWxlcyBhcyB0ZXN0cywgdGhleSBhcmUgbWFudWFsbHkgbG9hZGVkIHdoZXJlIG5lZWRlZC5cbiAgICAgIGAtLXRlc3RQYXRoSWdub3JlUGF0dGVybnM9XCI8cm9vdERpcj4vamVzdC1nbG9iYWxcXFxcLm1qc1wiYCxcbiAgICAgIC4uLihvcHRpb25zLnBvbHlmaWxscyA/IFtgLS10ZXN0UGF0aElnbm9yZVBhdHRlcm5zPVwiPHJvb3REaXI+L3BvbHlmaWxsc1xcXFwubWpzXCJgXSA6IFtdKSxcbiAgICAgIGAtLXRlc3RQYXRoSWdub3JlUGF0dGVybnM9XCI8cm9vdERpcj4vaW5pdC10ZXN0LWJlZFxcXFwubWpzXCJgLFxuXG4gICAgICAvLyBTa2lwIHNoYXJlZCBjaHVua3MsIGFzIHRoZXkgYXJlIG5vdCBlbnRyeSBwb2ludHMgdG8gdGVzdHMuXG4gICAgICBgLS10ZXN0UGF0aElnbm9yZVBhdHRlcm5zPVwiPHJvb3REaXI+L2NodW5rLS4qXFxcXC5tanNcImAsXG5cbiAgICAgIC8vIE9wdGlvbmFsbHkgZW5hYmxlIGNvbG9yLlxuICAgICAgLi4uKGNvbG9ycy5lbmFibGVkID8gWyctLWNvbG9ycyddIDogW10pLFxuICAgIF0pO1xuXG4gICAgLy8gU3RyZWFtIHRlc3Qgb3V0cHV0IHRvIHRoZSB0ZXJtaW5hbC5cbiAgICBqZXN0UHJvYy5jaGlsZC5zdGRvdXQ/Lm9uKCdkYXRhJywgKGNodW5rKSA9PiB7XG4gICAgICBjb250ZXh0LmxvZ2dlci5pbmZvKGNodW5rKTtcbiAgICB9KTtcbiAgICBqZXN0UHJvYy5jaGlsZC5zdGRlcnI/Lm9uKCdkYXRhJywgKGNodW5rKSA9PiB7XG4gICAgICAvLyBXcml0ZSB0byBzdGRlcnIgZGlyZWN0bHkgaW5zdGVhZCBvZiBgY29udGV4dC5sb2dnZXIuZXJyb3IoY2h1bmspYCBiZWNhdXNlIHRoZSBsb2dnZXIgd2lsbCBvdmVyd3JpdGUgSmVzdCdzIGNvbG9yaW5nIGluZm9ybWF0aW9uLlxuICAgICAgcHJvY2Vzcy5zdGRlcnIud3JpdGUoY2h1bmspO1xuICAgIH0pO1xuXG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGplc3RQcm9jO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAvLyBObyBuZWVkIHRvIHByb3BhZ2F0ZSBlcnJvciBtZXNzYWdlLCBhbHJlYWR5IHBpcGVkIHRvIHRlcm1pbmFsIG91dHB1dC5cbiAgICAgIC8vIFRPRE8oZGdwMTEzMCk6IEhhbmRsZSBwcm9jZXNzIHNwYXduaW5nIGZhaWx1cmVzLlxuICAgICAgcmV0dXJuIHsgc3VjY2VzczogZmFsc2UgfTtcbiAgICB9XG5cbiAgICByZXR1cm4geyBzdWNjZXNzOiB0cnVlIH07XG4gIH0sXG4pO1xuXG5hc3luYyBmdW5jdGlvbiBidWlsZChcbiAgY29udGV4dDogQnVpbGRlckNvbnRleHQsXG4gIG9wdGlvbnM6IEFwcGxpY2F0aW9uQnVpbGRlckludGVybmFsT3B0aW9ucyxcbik6IFByb21pc2U8QnVpbGRlck91dHB1dD4ge1xuICB0cnkge1xuICAgIGZvciBhd2FpdCAoY29uc3QgXyBvZiBidWlsZEFwcGxpY2F0aW9uSW50ZXJuYWwob3B0aW9ucywgY29udGV4dCkpIHtcbiAgICAgIC8vIE5vdGhpbmcgdG8gZG8gZm9yIGVhY2ggZXZlbnQsIGp1c3Qgd2FpdCBmb3IgdGhlIHdob2xlIGJ1aWxkLlxuICAgIH1cblxuICAgIHJldHVybiB7IHN1Y2Nlc3M6IHRydWUgfTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN1Y2Nlc3M6IGZhbHNlLFxuICAgICAgZXJyb3I6IChlcnIgYXMgRXJyb3IpLm1lc3NhZ2UsXG4gICAgfTtcbiAgfVxufVxuXG4vKiogU2FmZWx5IHJlc29sdmVzIHRoZSBnaXZlbiBOb2RlIG1vZHVsZSBzdHJpbmcuICovXG5mdW5jdGlvbiByZXNvbHZlTW9kdWxlKG1vZHVsZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gcmVxdWlyZS5yZXNvbHZlKG1vZHVsZSk7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cbiJdfQ==
@@ -89,7 +89,7 @@ async function updateWebdriver() {
89
89
  * @experimental Direct usage of this function is considered experimental.
90
90
  */
91
91
  async function execute(options, context) {
92
- context.logger.warn('Protractor has been deprecated including its support in the Angular CLI. For additional information and alternatives, please see https://github.com/angular/protractor/issues/5502.');
92
+ context.logger.warn('Protractor has reached end-of-life and is no longer supported by the Angular team. The `protractor` builder will be removed in a future Angular major version. For additional information and alternatives, please see https://blog.angular.io/protractor-deprecation-update-august-2023-2beac7402ce0.');
93
93
  // ensure that only one of these options is used
94
94
  if (options.devServerTarget && options.baseUrl) {
95
95
  throw new Error(core_1.tags.stripIndents `
@@ -165,4 +165,4 @@ async function execute(options, context) {
165
165
  }
166
166
  exports.execute = execute;
167
167
  exports.default = (0, architect_1.createBuilder)(execute);
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy9idWlsZGVycy9wcm90cmFjdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgseURBS21DO0FBQ25DLCtDQUFrRDtBQUNsRCwrQkFBK0I7QUFDL0IseUNBQTJCO0FBQzNCLHVDQUF3RDtBQUN4RCw2Q0FBa0Q7QUFXbEQsU0FBUyxhQUFhLENBQUMsSUFBWSxFQUFFLE9BQWlDO0lBQ3BFLE1BQU0sMEJBQTBCLEdBQWlFO1FBQy9GLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztRQUN4QixLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUztRQUN4RSxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7UUFDcEIsZUFBZSxFQUFFO1lBQ2YsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVTtTQUMvQjtLQUNGLENBQUM7SUFFRixxRkFBcUY7SUFDckYsMERBQTBEO0lBQzFELG9EQUFvRDtJQUNwRCxPQUFPLElBQUEsaUNBQXlCLEVBQUMsSUFBSSxFQUFFLDJCQUEyQixFQUFFLE1BQU0sRUFBRTtRQUMxRSxJQUFBLGNBQU8sRUFBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDO1FBQ3ZDLDBCQUEwQjtLQUMzQixDQUFDLENBQUMsU0FBUyxFQUE0QixDQUFDO0FBQzNDLENBQUM7QUFFRCxLQUFLLFVBQVUsZUFBZTtJQUM1QiwrRUFBK0U7SUFDL0UsTUFBTSxtQkFBbUIsR0FBRyx5Q0FBeUMsQ0FB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QUVELE9BQU8sTUFBTSxhQUFhLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLEdBQUcsT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7S0FDNUU7SUFBQyxNQUFNO1FBQ04sT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQztLQUMzQjtZQUFTO1FBQ1IsTUFBTSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDdEI7QUFDSCxDQUFDO0FBbkZELDBCQW1GQztBQUVELGtCQUFlLElBQUEseUJBQWEsRUFBMkIsT0FBTyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtcbiAgQnVpbGRlckNvbnRleHQsXG4gIEJ1aWxkZXJPdXRwdXQsXG4gIGNyZWF0ZUJ1aWxkZXIsXG4gIHRhcmdldEZyb21UYXJnZXRTdHJpbmcsXG59IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9hcmNoaXRlY3QnO1xuaW1wb3J0IHsganNvbiwgdGFncyB9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9jb3JlJztcbmltcG9ydCB7IHJlc29sdmUgfSBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIHVybCBmcm9tICd1cmwnO1xuaW1wb3J0IHsgcnVuTW9kdWxlQXNPYnNlcnZhYmxlRm9yayB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IGFzc2VydElzRXJyb3IgfSBmcm9tICcuLi8uLi91dGlscy9lcnJvcic7XG5pbXBvcnQgeyBEZXZTZXJ2ZXJCdWlsZGVyT3B0aW9ucyB9IGZyb20gJy4uL2Rldi1zZXJ2ZXIvaW5kZXgnO1xuaW1wb3J0IHsgU2NoZW1hIGFzIFByb3RyYWN0b3JCdWlsZGVyT3B0aW9ucyB9IGZyb20gJy4vc2NoZW1hJztcblxuaW50ZXJmYWNlIEphc21pbmVOb2RlT3B0cyB7XG4gIGphc21pbmVOb2RlT3B0czoge1xuICAgIGdyZXA/OiBzdHJpbmc7XG4gICAgaW52ZXJ0R3JlcD86IGJvb2xlYW47XG4gIH07XG59XG5cbmZ1bmN0aW9uIHJ1blByb3RyYWN0b3Iocm9vdDogc3RyaW5nLCBvcHRpb25zOiBQcm90cmFjdG9yQnVpbGRlck9wdGlvbnMpOiBQcm9taXNlPEJ1aWxkZXJPdXRwdXQ+IHtcbiAgY29uc3QgYWRkaXRpb25hbFByb3RyYWN0b3JDb25maWc6IFBhcnRpYWw8UHJvdHJhY3RvckJ1aWxkZXJPcHRpb25zPiAmIFBhcnRpYWw8SmFzbWluZU5vZGVPcHRzPiA9IHtcbiAgICBiYXNlVXJsOiBvcHRpb25zLmJhc2VVcmwsXG4gICAgc3BlY3M6IG9wdGlvbnMuc3BlY3MgJiYgb3B0aW9ucy5zcGVjcy5sZW5ndGggPyBvcHRpb25zLnNwZWNzIDogdW5kZWZpbmVkLFxuICAgIHN1aXRlOiBvcHRpb25zLnN1aXRlLFxuICAgIGphc21pbmVOb2RlT3B0czoge1xuICAgICAgZ3JlcDogb3B0aW9ucy5ncmVwLFxuICAgICAgaW52ZXJ0R3JlcDogb3B0aW9ucy5pbnZlcnRHcmVwLFxuICAgIH0sXG4gIH07XG5cbiAgLy8gVE9ETzogUHJvdHJhY3RvciBtYW5hZ2VzIHByb2Nlc3MuZXhpdCBpdHNlbGYsIHNvIHRoaXMgdGFyZ2V0IHdpbGwgYWxsd2F5cyBxdWl0IHRoZVxuICAvLyBwcm9jZXNzLiBUbyB3b3JrIGFyb3VuZCB0aGlzIHdlIHJ1biBpdCBpbiBhIHN1YnByb2Nlc3MuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL3Byb3RyYWN0b3IvaXNzdWVzLzQxNjBcbiAgcmV0dXJuIHJ1bk1vZHVsZUFzT2JzZXJ2YWJsZUZvcmsocm9vdCwgJ3Byb3RyYWN0b3IvYnVpbHQvbGF1bmNoZXInLCAnaW5pdCcsIFtcbiAgICByZXNvbHZlKHJvb3QsIG9wdGlvbnMucHJvdHJhY3RvckNvbmZpZyksXG4gICAgYWRkaXRpb25hbFByb3RyYWN0b3JDb25maWcsXG4gIF0pLnRvUHJvbWlzZSgpIGFzIFByb21pc2U8QnVpbGRlck91dHB1dD47XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHVwZGF0ZVdlYmRyaXZlcigpIHtcbiAgLy8gVGhlIHdlYmRyaXZlci1tYW5hZ2VyIHVwZGF0ZSBjb21tYW5kIGNhbiBvbmx5IGJlIGFjY2Vzc2VkIHZpYSBhIGRlZXAgaW1wb3J0LlxuICBjb25zdCB3ZWJkcml2ZXJEZWVwSW1wb3J0ID0gJ3dlYmRyaXZlci1tYW5hZ2VyL2J1aWx0L2xpYi9jbWRzL3VwZGF0ZSc7XG5cbiAgbGV0IHBhdGg7XG4gIHRyeSB7XG4gICAgY29uc3QgcHJvdHJhY3RvclBhdGggPSByZXF1aXJlLnJlc29sdmUoJ3Byb3RyYWN0b3InKTtcblxuICAgIHBhdGggPSByZXF1aXJlLnJlc29sdmUod2ViZHJpdmVyRGVlcEltcG9ydCwgeyBwYXRoczogW3Byb3RyYWN0b3JQYXRoXSB9KTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBhc3NlcnRJc0Vycm9yKGVycm9yKTtcbiAgICBpZiAoZXJyb3IuY29kZSAhPT0gJ01PRFVMRV9OT1RfRk9VTkQnKSB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gIH1cblxuICBpZiAoIXBhdGgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IodGFncy5zdHJpcEluZGVudHNgXG4gICAgICBDYW5ub3QgYXV0b21hdGljYWxseSBmaW5kIHdlYmRyaXZlci1tYW5hZ2VyIHRvIHVwZGF0ZS5cbiAgICAgIFVwZGF0ZSB3ZWJkcml2ZXItbWFuYWdlciBtYW51YWxseSBhbmQgcnVuICduZyBlMmUgLS1uby13ZWJkcml2ZXItdXBkYXRlJyBpbnN0ZWFkLlxuICAgIGApO1xuICB9XG5cbiAgY29uc3Qgd2ViZHJpdmVyVXBkYXRlID0gYXdhaXQgaW1wb3J0KHBhdGgpO1xuICAvLyBjb25zdCB3ZWJkcml2ZXJVcGRhdGUgPSBhd2FpdCBpbXBvcnQocGF0aCkgYXMgdHlwZW9mIGltcG9ydCAoJ3dlYmRyaXZlci1tYW5hZ2VyL2J1aWx0L2xpYi9jbWRzL3VwZGF0ZScpO1xuXG4gIC8vIHJ1biBgd2ViZHJpdmVyLW1hbmFnZXIgdXBkYXRlIC0tc3RhbmRhbG9uZSBmYWxzZSAtLWdlY2tvIGZhbHNlIC0tcXVpZXRgXG4gIC8vIGlmIHlvdSBjaGFuZ2UgdGhpcywgdXBkYXRlIHRoZSBjb21tYW5kIGNvbW1lbnQgaW4gcHJldiBsaW5lXG4gIHJldHVybiB3ZWJkcml2ZXJVcGRhdGUucHJvZ3JhbS5ydW4oe1xuICAgIHN0YW5kYWxvbmU6IGZhbHNlLFxuICAgIGdlY2tvOiBmYWxzZSxcbiAgICBxdWlldDogdHJ1ZSxcbiAgfSBhcyB1bmtub3duIGFzIEpTT04pO1xufVxuXG5leHBvcnQgeyBQcm90cmFjdG9yQnVpbGRlck9wdGlvbnMgfTtcblxuLyoqXG4gKiBAZXhwZXJpbWVudGFsIERpcmVjdCB1c2FnZSBvZiB0aGlzIGZ1bmN0aW9uIGlzIGNvbnNpZGVyZWQgZXhwZXJpbWVudGFsLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZXhlY3V0ZShcbiAgb3B0aW9uczogUHJvdHJhY3RvckJ1aWxkZXJPcHRpb25zLFxuICBjb250ZXh0OiBCdWlsZGVyQ29udGV4dCxcbik6IFByb21pc2U8QnVpbGRlck91dHB1dD4ge1xuICBjb250ZXh0LmxvZ2dlci53YXJuKFxuICAgICdQcm90cmFjdG9yIGhhcyBiZWVuIGRlcHJlY2F0ZWQgaW5jbHVkaW5nIGl0cyBzdXBwb3J0IGluIHRoZSBBbmd1bGFyIENMSS4gRm9yIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gYW5kIGFsdGVybmF0aXZlcywgcGxlYXNlIHNlZSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9wcm90cmFjdG9yL2lzc3Vlcy81NTAyLicsXG4gICk7XG5cbiAgLy8gZW5zdXJlIHRoYXQgb25seSBvbmUgb2YgdGhlc2Ugb3B0aW9ucyBpcyB1c2VkXG4gIGlmIChvcHRpb25zLmRldlNlcnZlclRhcmdldCAmJiBvcHRpb25zLmJhc2VVcmwpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IodGFncy5zdHJpcEluZGVudHNgXG4gICAgVGhlICdiYXNlVXJsJyBvcHRpb24gY2Fubm90IGJlIHVzZWQgd2l0aCAnZGV2U2VydmVyVGFyZ2V0Jy5cbiAgICBXaGVuIHByZXNlbnQsICdkZXZTZXJ2ZXJUYXJnZXQnIHdpbGwgYmUgdXNlZCB0byBhdXRvbWF0aWNhbGx5IHNldHVwICdiYXNlVXJsJyBmb3IgUHJvdHJhY3Rvci5cbiAgICBgKTtcbiAgfVxuXG4gIGlmIChvcHRpb25zLndlYmRyaXZlclVwZGF0ZSkge1xuICAgIGF3YWl0IHVwZGF0ZVdlYmRyaXZlcigpO1xuICB9XG5cbiAgbGV0IGJhc2VVcmwgPSBvcHRpb25zLmJhc2VVcmw7XG4gIGxldCBzZXJ2ZXI7XG5cbiAgdHJ5IHtcbiAgICBpZiAob3B0aW9ucy5kZXZTZXJ2ZXJUYXJnZXQpIHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IHRhcmdldEZyb21UYXJnZXRTdHJpbmcob3B0aW9ucy5kZXZTZXJ2ZXJUYXJnZXQpO1xuICAgICAgY29uc3Qgc2VydmVyT3B0aW9ucyA9IGF3YWl0IGNvbnRleHQuZ2V0VGFyZ2V0T3B0aW9ucyh0YXJnZXQpO1xuXG4gICAgICBjb25zdCBvdmVycmlkZXMgPSB7XG4gICAgICAgIHdhdGNoOiBmYWxzZSxcbiAgICAgICAgbGl2ZVJlbG9hZDogZmFsc2UsXG4gICAgICB9IGFzIERldlNlcnZlckJ1aWxkZXJPcHRpb25zICYganNvbi5Kc29uT2JqZWN0O1xuXG4gICAgICBpZiAob3B0aW9ucy5ob3N0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgb3ZlcnJpZGVzLmhvc3QgPSBvcHRpb25zLmhvc3Q7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzZXJ2ZXJPcHRpb25zLmhvc3QgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIG9wdGlvbnMuaG9zdCA9IHNlcnZlck9wdGlvbnMuaG9zdDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9wdGlvbnMuaG9zdCA9IG92ZXJyaWRlcy5ob3N0ID0gJ2xvY2FsaG9zdCc7XG4gICAgICB9XG5cbiAgICAgIGlmIChvcHRpb25zLnBvcnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBvdmVycmlkZXMucG9ydCA9IG9wdGlvbnMucG9ydDtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHNlcnZlck9wdGlvbnMucG9ydCA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgb3B0aW9ucy5wb3J0ID0gc2VydmVyT3B0aW9ucy5wb3J0O1xuICAgICAgfVxuXG4gICAgICBzZXJ2ZXIgPSBhd2FpdCBjb250ZXh0LnNjaGVkdWxlVGFyZ2V0KHRhcmdldCwgb3ZlcnJpZGVzKTtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHNlcnZlci5yZXN1bHQ7XG4gICAgICBpZiAoIXJlc3VsdC5zdWNjZXNzKSB7XG4gICAgICAgIHJldHVybiB7IHN1Y2Nlc3M6IGZhbHNlIH07XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2Ygc2VydmVyT3B0aW9ucy5wdWJsaWNIb3N0ID09PSAnc3RyaW5nJykge1xuICAgICAgICBsZXQgcHVibGljSG9zdCA9IHNlcnZlck9wdGlvbnMucHVibGljSG9zdDtcbiAgICAgICAgaWYgKCEvXlxcdys6XFwvXFwvLy50ZXN0KHB1YmxpY0hvc3QpKSB7XG4gICAgICAgICAgcHVibGljSG9zdCA9IGAke3NlcnZlck9wdGlvbnMuc3NsID8gJ2h0dHBzJyA6ICdodHRwJ306Ly8ke3B1YmxpY0hvc3R9YDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjbGllbnRVcmwgPSB1cmwucGFyc2UocHVibGljSG9zdCk7XG4gICAgICAgIGJhc2VVcmwgPSB1cmwuZm9ybWF0KGNsaWVudFVybCk7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiByZXN1bHQuYmFzZVVybCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgYmFzZVVybCA9IHJlc3VsdC5iYXNlVXJsO1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcmVzdWx0LnBvcnQgPT09ICdudW1iZXInKSB7XG4gICAgICAgIGJhc2VVcmwgPSB1cmwuZm9ybWF0KHtcbiAgICAgICAgICBwcm90b2NvbDogc2VydmVyT3B0aW9ucy5zc2wgPyAnaHR0cHMnIDogJ2h0dHAnLFxuICAgICAgICAgIGhvc3RuYW1lOiBvcHRpb25zLmhvc3QsXG4gICAgICAgICAgcG9ydDogcmVzdWx0LnBvcnQudG9TdHJpbmcoKSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGlrZSB0aGUgYmFzZVVybCBpbiBwcm90cmFjdG9yIGNvbmZpZyBmaWxlIHdoZW4gdXNpbmcgdGhlIEFQSSB3ZSBuZWVkIHRvIGFkZFxuICAgIC8vIGEgdHJhaWxpbmcgc2xhc2ggd2hlbiBwcm92aWRlIHRvIHRoZSBiYXNlVXJsLlxuICAgIGlmIChiYXNlVXJsICYmICFiYXNlVXJsLmVuZHNXaXRoKCcvJykpIHtcbiAgICAgIGJhc2VVcmwgKz0gJy8nO1xuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCBydW5Qcm90cmFjdG9yKGNvbnRleHQud29ya3NwYWNlUm9vdCwgeyAuLi5vcHRpb25zLCBiYXNlVXJsIH0pO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4geyBzdWNjZXNzOiBmYWxzZSB9O1xuICB9IGZpbmFsbHkge1xuICAgIGF3YWl0IHNlcnZlcj8uc3RvcCgpO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNyZWF0ZUJ1aWxkZXI8UHJvdHJhY3RvckJ1aWxkZXJPcHRpb25zPihleGVjdXRlKTtcbiJdfQ==
168
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy9idWlsZGVycy9wcm90cmFjdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgseURBS21DO0FBQ25DLCtDQUFrRDtBQUNsRCwrQkFBK0I7QUFDL0IseUNBQTJCO0FBQzNCLHVDQUF3RDtBQUN4RCw2Q0FBa0Q7QUFXbEQsU0FBUyxhQUFhLENBQUMsSUFBWSxFQUFFLE9BQWlDO0lBQ3BFLE1BQU0sMEJBQTBCLEdBQWlFO1FBQy9GLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztRQUN4QixLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUztRQUN4RSxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7UUFDcEIsZUFBZSxFQUFFO1lBQ2YsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVTtTQUMvQjtLQUNGLENBQUM7SUFFRixxRkFBcUY7SUFDckYsMERBQTBEO0lBQzFELG9EQUFvRDtJQUNwRCxPQUFPLElBQUEsaUNBQXlCLEVBQUMsSUFBSSxFQUFFLDJCQUEyQixFQUFFLE1BQU0sRUFBRTtRQUMxRSxJQUFBLGNBQU8sRUFBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDO1FBQ3ZDLDBCQUEwQjtLQUMzQixDQUFDLENBQUMsU0FBUyxFQUE0QixDQUFDO0FBQzNDLENBQUM7QUFFRCxLQUFLLFVBQVUsZUFBZTtJQUM1QiwrRUFBK0U7SUFDL0UsTUFBTSxtQkFBbUIsR0FBRyx5Q0FBeUMsQ0FB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QUVELE9BQU8sTUFBTSxhQUFhLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLEdBQUcsT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7S0FDNUU7SUFBQyxNQUFNO1FBQ04sT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQztLQUMzQjtZQUFTO1FBQ1IsTUFBTSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDdEI7QUFDSCxDQUFDO0FBbkZELDBCQW1GQztBQUVELGtCQUFlLElBQUEseUJBQWEsRUFBMkIsT0FBTyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtcbiAgQnVpbGRlckNvbnRleHQsXG4gIEJ1aWxkZXJPdXRwdXQsXG4gIGNyZWF0ZUJ1aWxkZXIsXG4gIHRhcmdldEZyb21UYXJnZXRTdHJpbmcsXG59IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9hcmNoaXRlY3QnO1xuaW1wb3J0IHsganNvbiwgdGFncyB9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9jb3JlJztcbmltcG9ydCB7IHJlc29sdmUgfSBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIHVybCBmcm9tICd1cmwnO1xuaW1wb3J0IHsgcnVuTW9kdWxlQXNPYnNlcnZhYmxlRm9yayB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IGFzc2VydElzRXJyb3IgfSBmcm9tICcuLi8uLi91dGlscy9lcnJvcic7XG5pbXBvcnQgeyBEZXZTZXJ2ZXJCdWlsZGVyT3B0aW9ucyB9IGZyb20gJy4uL2Rldi1zZXJ2ZXIvaW5kZXgnO1xuaW1wb3J0IHsgU2NoZW1hIGFzIFByb3RyYWN0b3JCdWlsZGVyT3B0aW9ucyB9IGZyb20gJy4vc2NoZW1hJztcblxuaW50ZXJmYWNlIEphc21pbmVOb2RlT3B0cyB7XG4gIGphc21pbmVOb2RlT3B0czoge1xuICAgIGdyZXA/OiBzdHJpbmc7XG4gICAgaW52ZXJ0R3JlcD86IGJvb2xlYW47XG4gIH07XG59XG5cbmZ1bmN0aW9uIHJ1blByb3RyYWN0b3Iocm9vdDogc3RyaW5nLCBvcHRpb25zOiBQcm90cmFjdG9yQnVpbGRlck9wdGlvbnMpOiBQcm9taXNlPEJ1aWxkZXJPdXRwdXQ+IHtcbiAgY29uc3QgYWRkaXRpb25hbFByb3RyYWN0b3JDb25maWc6IFBhcnRpYWw8UHJvdHJhY3RvckJ1aWxkZXJPcHRpb25zPiAmIFBhcnRpYWw8SmFzbWluZU5vZGVPcHRzPiA9IHtcbiAgICBiYXNlVXJsOiBvcHRpb25zLmJhc2VVcmwsXG4gICAgc3BlY3M6IG9wdGlvbnMuc3BlY3MgJiYgb3B0aW9ucy5zcGVjcy5sZW5ndGggPyBvcHRpb25zLnNwZWNzIDogdW5kZWZpbmVkLFxuICAgIHN1aXRlOiBvcHRpb25zLnN1aXRlLFxuICAgIGphc21pbmVOb2RlT3B0czoge1xuICAgICAgZ3JlcDogb3B0aW9ucy5ncmVwLFxuICAgICAgaW52ZXJ0R3JlcDogb3B0aW9ucy5pbnZlcnRHcmVwLFxuICAgIH0sXG4gIH07XG5cbiAgLy8gVE9ETzogUHJvdHJhY3RvciBtYW5hZ2VzIHByb2Nlc3MuZXhpdCBpdHNlbGYsIHNvIHRoaXMgdGFyZ2V0IHdpbGwgYWxsd2F5cyBxdWl0IHRoZVxuICAvLyBwcm9jZXNzLiBUbyB3b3JrIGFyb3VuZCB0aGlzIHdlIHJ1biBpdCBpbiBhIHN1YnByb2Nlc3MuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL3Byb3RyYWN0b3IvaXNzdWVzLzQxNjBcbiAgcmV0dXJuIHJ1bk1vZHVsZUFzT2JzZXJ2YWJsZUZvcmsocm9vdCwgJ3Byb3RyYWN0b3IvYnVpbHQvbGF1bmNoZXInLCAnaW5pdCcsIFtcbiAgICByZXNvbHZlKHJvb3QsIG9wdGlvbnMucHJvdHJhY3RvckNvbmZpZyksXG4gICAgYWRkaXRpb25hbFByb3RyYWN0b3JDb25maWcsXG4gIF0pLnRvUHJvbWlzZSgpIGFzIFByb21pc2U8QnVpbGRlck91dHB1dD47XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHVwZGF0ZVdlYmRyaXZlcigpIHtcbiAgLy8gVGhlIHdlYmRyaXZlci1tYW5hZ2VyIHVwZGF0ZSBjb21tYW5kIGNhbiBvbmx5IGJlIGFjY2Vzc2VkIHZpYSBhIGRlZXAgaW1wb3J0LlxuICBjb25zdCB3ZWJkcml2ZXJEZWVwSW1wb3J0ID0gJ3dlYmRyaXZlci1tYW5hZ2VyL2J1aWx0L2xpYi9jbWRzL3VwZGF0ZSc7XG5cbiAgbGV0IHBhdGg7XG4gIHRyeSB7XG4gICAgY29uc3QgcHJvdHJhY3RvclBhdGggPSByZXF1aXJlLnJlc29sdmUoJ3Byb3RyYWN0b3InKTtcblxuICAgIHBhdGggPSByZXF1aXJlLnJlc29sdmUod2ViZHJpdmVyRGVlcEltcG9ydCwgeyBwYXRoczogW3Byb3RyYWN0b3JQYXRoXSB9KTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBhc3NlcnRJc0Vycm9yKGVycm9yKTtcbiAgICBpZiAoZXJyb3IuY29kZSAhPT0gJ01PRFVMRV9OT1RfRk9VTkQnKSB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gIH1cblxuICBpZiAoIXBhdGgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IodGFncy5zdHJpcEluZGVudHNgXG4gICAgICBDYW5ub3QgYXV0b21hdGljYWxseSBmaW5kIHdlYmRyaXZlci1tYW5hZ2VyIHRvIHVwZGF0ZS5cbiAgICAgIFVwZGF0ZSB3ZWJkcml2ZXItbWFuYWdlciBtYW51YWxseSBhbmQgcnVuICduZyBlMmUgLS1uby13ZWJkcml2ZXItdXBkYXRlJyBpbnN0ZWFkLlxuICAgIGApO1xuICB9XG5cbiAgY29uc3Qgd2ViZHJpdmVyVXBkYXRlID0gYXdhaXQgaW1wb3J0KHBhdGgpO1xuICAvLyBjb25zdCB3ZWJkcml2ZXJVcGRhdGUgPSBhd2FpdCBpbXBvcnQocGF0aCkgYXMgdHlwZW9mIGltcG9ydCAoJ3dlYmRyaXZlci1tYW5hZ2VyL2J1aWx0L2xpYi9jbWRzL3VwZGF0ZScpO1xuXG4gIC8vIHJ1biBgd2ViZHJpdmVyLW1hbmFnZXIgdXBkYXRlIC0tc3RhbmRhbG9uZSBmYWxzZSAtLWdlY2tvIGZhbHNlIC0tcXVpZXRgXG4gIC8vIGlmIHlvdSBjaGFuZ2UgdGhpcywgdXBkYXRlIHRoZSBjb21tYW5kIGNvbW1lbnQgaW4gcHJldiBsaW5lXG4gIHJldHVybiB3ZWJkcml2ZXJVcGRhdGUucHJvZ3JhbS5ydW4oe1xuICAgIHN0YW5kYWxvbmU6IGZhbHNlLFxuICAgIGdlY2tvOiBmYWxzZSxcbiAgICBxdWlldDogdHJ1ZSxcbiAgfSBhcyB1bmtub3duIGFzIEpTT04pO1xufVxuXG5leHBvcnQgeyBQcm90cmFjdG9yQnVpbGRlck9wdGlvbnMgfTtcblxuLyoqXG4gKiBAZXhwZXJpbWVudGFsIERpcmVjdCB1c2FnZSBvZiB0aGlzIGZ1bmN0aW9uIGlzIGNvbnNpZGVyZWQgZXhwZXJpbWVudGFsLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZXhlY3V0ZShcbiAgb3B0aW9uczogUHJvdHJhY3RvckJ1aWxkZXJPcHRpb25zLFxuICBjb250ZXh0OiBCdWlsZGVyQ29udGV4dCxcbik6IFByb21pc2U8QnVpbGRlck91dHB1dD4ge1xuICBjb250ZXh0LmxvZ2dlci53YXJuKFxuICAgICdQcm90cmFjdG9yIGhhcyByZWFjaGVkIGVuZC1vZi1saWZlIGFuZCBpcyBubyBsb25nZXIgc3VwcG9ydGVkIGJ5IHRoZSBBbmd1bGFyIHRlYW0uIFRoZSBgcHJvdHJhY3RvcmAgYnVpbGRlciB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgQW5ndWxhciBtYWpvciB2ZXJzaW9uLiBGb3IgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiBhbmQgYWx0ZXJuYXRpdmVzLCBwbGVhc2Ugc2VlIGh0dHBzOi8vYmxvZy5hbmd1bGFyLmlvL3Byb3RyYWN0b3ItZGVwcmVjYXRpb24tdXBkYXRlLWF1Z3VzdC0yMDIzLTJiZWFjNzQwMmNlMC4nLFxuICApO1xuXG4gIC8vIGVuc3VyZSB0aGF0IG9ubHkgb25lIG9mIHRoZXNlIG9wdGlvbnMgaXMgdXNlZFxuICBpZiAob3B0aW9ucy5kZXZTZXJ2ZXJUYXJnZXQgJiYgb3B0aW9ucy5iYXNlVXJsKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKHRhZ3Muc3RyaXBJbmRlbnRzYFxuICAgIFRoZSAnYmFzZVVybCcgb3B0aW9uIGNhbm5vdCBiZSB1c2VkIHdpdGggJ2RldlNlcnZlclRhcmdldCcuXG4gICAgV2hlbiBwcmVzZW50LCAnZGV2U2VydmVyVGFyZ2V0JyB3aWxsIGJlIHVzZWQgdG8gYXV0b21hdGljYWxseSBzZXR1cCAnYmFzZVVybCcgZm9yIFByb3RyYWN0b3IuXG4gICAgYCk7XG4gIH1cblxuICBpZiAob3B0aW9ucy53ZWJkcml2ZXJVcGRhdGUpIHtcbiAgICBhd2FpdCB1cGRhdGVXZWJkcml2ZXIoKTtcbiAgfVxuXG4gIGxldCBiYXNlVXJsID0gb3B0aW9ucy5iYXNlVXJsO1xuICBsZXQgc2VydmVyO1xuXG4gIHRyeSB7XG4gICAgaWYgKG9wdGlvbnMuZGV2U2VydmVyVGFyZ2V0KSB7XG4gICAgICBjb25zdCB0YXJnZXQgPSB0YXJnZXRGcm9tVGFyZ2V0U3RyaW5nKG9wdGlvbnMuZGV2U2VydmVyVGFyZ2V0KTtcbiAgICAgIGNvbnN0IHNlcnZlck9wdGlvbnMgPSBhd2FpdCBjb250ZXh0LmdldFRhcmdldE9wdGlvbnModGFyZ2V0KTtcblxuICAgICAgY29uc3Qgb3ZlcnJpZGVzID0ge1xuICAgICAgICB3YXRjaDogZmFsc2UsXG4gICAgICAgIGxpdmVSZWxvYWQ6IGZhbHNlLFxuICAgICAgfSBhcyBEZXZTZXJ2ZXJCdWlsZGVyT3B0aW9ucyAmIGpzb24uSnNvbk9iamVjdDtcblxuICAgICAgaWYgKG9wdGlvbnMuaG9zdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIG92ZXJyaWRlcy5ob3N0ID0gb3B0aW9ucy5ob3N0O1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2Ygc2VydmVyT3B0aW9ucy5ob3N0ID09PSAnc3RyaW5nJykge1xuICAgICAgICBvcHRpb25zLmhvc3QgPSBzZXJ2ZXJPcHRpb25zLmhvc3Q7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvcHRpb25zLmhvc3QgPSBvdmVycmlkZXMuaG9zdCA9ICdsb2NhbGhvc3QnO1xuICAgICAgfVxuXG4gICAgICBpZiAob3B0aW9ucy5wb3J0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgb3ZlcnJpZGVzLnBvcnQgPSBvcHRpb25zLnBvcnQ7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzZXJ2ZXJPcHRpb25zLnBvcnQgPT09ICdudW1iZXInKSB7XG4gICAgICAgIG9wdGlvbnMucG9ydCA9IHNlcnZlck9wdGlvbnMucG9ydDtcbiAgICAgIH1cblxuICAgICAgc2VydmVyID0gYXdhaXQgY29udGV4dC5zY2hlZHVsZVRhcmdldCh0YXJnZXQsIG92ZXJyaWRlcyk7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBzZXJ2ZXIucmVzdWx0O1xuICAgICAgaWYgKCFyZXN1bHQuc3VjY2Vzcykge1xuICAgICAgICByZXR1cm4geyBzdWNjZXNzOiBmYWxzZSB9O1xuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIHNlcnZlck9wdGlvbnMucHVibGljSG9zdCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgbGV0IHB1YmxpY0hvc3QgPSBzZXJ2ZXJPcHRpb25zLnB1YmxpY0hvc3Q7XG4gICAgICAgIGlmICghL15cXHcrOlxcL1xcLy8udGVzdChwdWJsaWNIb3N0KSkge1xuICAgICAgICAgIHB1YmxpY0hvc3QgPSBgJHtzZXJ2ZXJPcHRpb25zLnNzbCA/ICdodHRwcycgOiAnaHR0cCd9Oi8vJHtwdWJsaWNIb3N0fWA7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY2xpZW50VXJsID0gdXJsLnBhcnNlKHB1YmxpY0hvc3QpO1xuICAgICAgICBiYXNlVXJsID0gdXJsLmZvcm1hdChjbGllbnRVcmwpO1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcmVzdWx0LmJhc2VVcmwgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGJhc2VVcmwgPSByZXN1bHQuYmFzZVVybDtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHJlc3VsdC5wb3J0ID09PSAnbnVtYmVyJykge1xuICAgICAgICBiYXNlVXJsID0gdXJsLmZvcm1hdCh7XG4gICAgICAgICAgcHJvdG9jb2w6IHNlcnZlck9wdGlvbnMuc3NsID8gJ2h0dHBzJyA6ICdodHRwJyxcbiAgICAgICAgICBob3N0bmFtZTogb3B0aW9ucy5ob3N0LFxuICAgICAgICAgIHBvcnQ6IHJlc3VsdC5wb3J0LnRvU3RyaW5nKCksXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIExpa2UgdGhlIGJhc2VVcmwgaW4gcHJvdHJhY3RvciBjb25maWcgZmlsZSB3aGVuIHVzaW5nIHRoZSBBUEkgd2UgbmVlZCB0byBhZGRcbiAgICAvLyBhIHRyYWlsaW5nIHNsYXNoIHdoZW4gcHJvdmlkZSB0byB0aGUgYmFzZVVybC5cbiAgICBpZiAoYmFzZVVybCAmJiAhYmFzZVVybC5lbmRzV2l0aCgnLycpKSB7XG4gICAgICBiYXNlVXJsICs9ICcvJztcbiAgICB9XG5cbiAgICByZXR1cm4gYXdhaXQgcnVuUHJvdHJhY3Rvcihjb250ZXh0LndvcmtzcGFjZVJvb3QsIHsgLi4ub3B0aW9ucywgYmFzZVVybCB9KTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHsgc3VjY2VzczogZmFsc2UgfTtcbiAgfSBmaW5hbGx5IHtcbiAgICBhd2FpdCBzZXJ2ZXI/LnN0b3AoKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBjcmVhdGVCdWlsZGVyPFByb3RyYWN0b3JCdWlsZGVyT3B0aW9ucz4oZXhlY3V0ZSk7XG4iXX0=
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ export declare class SharedTSCompilationState {
9
+ #private;
10
+ get waitUntilReady(): Promise<void>;
11
+ markAsReady(): void;
12
+ markAsInProgress(): void;
13
+ dispose(): void;
14
+ }
15
+ export declare function getSharedCompilationState(): SharedTSCompilationState;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ /**
3
+ * @license
4
+ * Copyright Google LLC All Rights Reserved.
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://angular.io/license
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.getSharedCompilationState = exports.SharedTSCompilationState = void 0;
11
+ class SharedTSCompilationState {
12
+ #pendingCompilation = true;
13
+ #resolveCompilationReady;
14
+ #compilationReadyPromise;
15
+ get waitUntilReady() {
16
+ if (!this.#pendingCompilation) {
17
+ return Promise.resolve();
18
+ }
19
+ this.#compilationReadyPromise ??= new Promise((resolve) => {
20
+ this.#resolveCompilationReady = resolve;
21
+ });
22
+ return this.#compilationReadyPromise;
23
+ }
24
+ markAsReady() {
25
+ this.#resolveCompilationReady?.();
26
+ this.#compilationReadyPromise = undefined;
27
+ this.#pendingCompilation = false;
28
+ }
29
+ markAsInProgress() {
30
+ this.#pendingCompilation = true;
31
+ }
32
+ dispose() {
33
+ this.markAsReady();
34
+ globalSharedCompilationState = undefined;
35
+ }
36
+ }
37
+ exports.SharedTSCompilationState = SharedTSCompilationState;
38
+ let globalSharedCompilationState;
39
+ function getSharedCompilationState() {
40
+ return (globalSharedCompilationState ??= new SharedTSCompilationState());
41
+ }
42
+ exports.getSharedCompilationState = getSharedCompilationState;
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGlsYXRpb24tc3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyX2RldmtpdC9idWlsZF9hbmd1bGFyL3NyYy90b29scy9lc2J1aWxkL2FuZ3VsYXIvY29tcGlsYXRpb24tc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7R0FNRzs7O0FBRUgsTUFBYSx3QkFBd0I7SUFDbkMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO0lBQzNCLHdCQUF3QixDQUEyQjtJQUNuRCx3QkFBd0IsQ0FBNEI7SUFFcEQsSUFBSSxjQUFjO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDN0IsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDMUI7UUFFRCxJQUFJLENBQUMsd0JBQXdCLEtBQUssSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUN4RCxJQUFJLENBQUMsd0JBQXdCLEdBQUcsT0FBTyxDQUFDO1FBQzFDLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUM7SUFDdkMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsd0JBQXdCLEVBQUUsRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxTQUFTLENBQUM7UUFDMUMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQztJQUNuQyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztJQUNsQyxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQiw0QkFBNEIsR0FBRyxTQUFTLENBQUM7SUFDM0MsQ0FBQztDQUNGO0FBL0JELDREQStCQztBQUVELElBQUksNEJBQWtFLENBQUM7QUFFdkUsU0FBZ0IseUJBQXlCO0lBQ3ZDLE9BQU8sQ0FBQyw0QkFBNEIsS0FBSyxJQUFJLHdCQUF3QixFQUFFLENBQUMsQ0FBQztBQUMzRSxDQUFDO0FBRkQsOERBRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuZXhwb3J0IGNsYXNzIFNoYXJlZFRTQ29tcGlsYXRpb25TdGF0ZSB7XG4gICNwZW5kaW5nQ29tcGlsYXRpb24gPSB0cnVlO1xuICAjcmVzb2x2ZUNvbXBpbGF0aW9uUmVhZHk6ICgoKSA9PiB2b2lkKSB8IHVuZGVmaW5lZDtcbiAgI2NvbXBpbGF0aW9uUmVhZHlQcm9taXNlOiBQcm9taXNlPHZvaWQ+IHwgdW5kZWZpbmVkO1xuXG4gIGdldCB3YWl0VW50aWxSZWFkeSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoIXRoaXMuI3BlbmRpbmdDb21waWxhdGlvbikge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgIH1cblxuICAgIHRoaXMuI2NvbXBpbGF0aW9uUmVhZHlQcm9taXNlID8/PSBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgdGhpcy4jcmVzb2x2ZUNvbXBpbGF0aW9uUmVhZHkgPSByZXNvbHZlO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHRoaXMuI2NvbXBpbGF0aW9uUmVhZHlQcm9taXNlO1xuICB9XG5cbiAgbWFya0FzUmVhZHkoKTogdm9pZCB7XG4gICAgdGhpcy4jcmVzb2x2ZUNvbXBpbGF0aW9uUmVhZHk/LigpO1xuICAgIHRoaXMuI2NvbXBpbGF0aW9uUmVhZHlQcm9taXNlID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuI3BlbmRpbmdDb21waWxhdGlvbiA9IGZhbHNlO1xuICB9XG5cbiAgbWFya0FzSW5Qcm9ncmVzcygpOiB2b2lkIHtcbiAgICB0aGlzLiNwZW5kaW5nQ29tcGlsYXRpb24gPSB0cnVlO1xuICB9XG5cbiAgZGlzcG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLm1hcmtBc1JlYWR5KCk7XG4gICAgZ2xvYmFsU2hhcmVkQ29tcGlsYXRpb25TdGF0ZSA9IHVuZGVmaW5lZDtcbiAgfVxufVxuXG5sZXQgZ2xvYmFsU2hhcmVkQ29tcGlsYXRpb25TdGF0ZTogU2hhcmVkVFNDb21waWxhdGlvblN0YXRlIHwgdW5kZWZpbmVkO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2hhcmVkQ29tcGlsYXRpb25TdGF0ZSgpOiBTaGFyZWRUU0NvbXBpbGF0aW9uU3RhdGUge1xuICByZXR1cm4gKGdsb2JhbFNoYXJlZENvbXBpbGF0aW9uU3RhdGUgPz89IG5ldyBTaGFyZWRUU0NvbXBpbGF0aW9uU3RhdGUoKSk7XG59XG4iXX0=
@@ -6,19 +6,9 @@
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
8
  import type { Plugin } from 'esbuild';
9
- import ts from 'typescript';
10
- import { LoadResultCache, MemoryLoadResultCache } from '../load-result-cache';
9
+ import { LoadResultCache } from '../load-result-cache';
11
10
  import { BundleStylesheetOptions } from '../stylesheets/bundle-options';
12
- export declare class SourceFileCache extends Map<string, ts.SourceFile> {
13
- readonly persistentCachePath?: string | undefined;
14
- readonly modifiedFiles: Set<string>;
15
- readonly babelFileCache: Map<string, Uint8Array>;
16
- readonly typeScriptFileCache: Map<string, string | Uint8Array>;
17
- readonly loadResultCache: MemoryLoadResultCache;
18
- referencedFiles?: readonly string[];
19
- constructor(persistentCachePath?: string | undefined);
20
- invalidate(files: Iterable<string>): void;
21
- }
11
+ import { SourceFileCache } from './source-file-cache';
22
12
  export interface CompilerPluginOptions {
23
13
  sourcemap: boolean;
24
14
  tsconfig: string;