@analogjs/vitest-angular 2.0.0-beta.1 → 2.0.0-beta.11

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@analogjs/vitest-angular",
3
- "version": "2.0.0-beta.1",
3
+ "version": "2.0.0-beta.11",
4
4
  "description": "Vitest Builder for Angular",
5
5
  "type": "module",
6
6
  "author": "Brandon Roberts <robertsbt@gmail.com>",
@@ -36,7 +36,7 @@
36
36
  "peerDependencies": {
37
37
  "@analogjs/vite-plugin-angular": "*",
38
38
  "@angular-devkit/architect": ">=0.1500.0 < 0.2100.0",
39
- "vitest": "^1.3.1 || ^2.0.0 || ^3.0.0"
39
+ "vitest": "^1.3.1 || ^2.0.0 || ^3.0.0 || ^4.0.0"
40
40
  },
41
41
  "ng-update": {
42
42
  "packageGroup": [
@@ -158,4 +158,4 @@ function generateEntryPoints({ projectRoot, testFiles, context, angularVersion,
158
158
  }));
159
159
  }
160
160
  export default createBuilder(vitestApplicationBuilder);
161
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidml0ZXN0LmltcGwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy92aXRlc3QtYW5ndWxhci9zcmMvbGliL2J1aWxkZXJzL2J1aWxkL3ZpdGVzdC5pbXBsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQU03QixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFdkQsTUFBTSxDQUFOLElBQVksVUFLWDtBQUxELFdBQVksVUFBVTtJQUNwQixpREFBTyxDQUFBO0lBQ1AsMkNBQUksQ0FBQTtJQUNKLHlEQUFXLENBQUE7SUFDWCxpRUFBZSxDQUFBO0FBQ2pCLENBQUMsRUFMVyxVQUFVLEtBQVYsVUFBVSxRQUtyQjtBQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsR0FBRyxNQUFNLENBQUM7QUFFaEQsS0FBSyxTQUFTLENBQUMsQ0FBQyx3QkFBd0IsQ0FDdEMsT0FBcUIsRUFDckIsT0FBWTtJQUVaLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDO0lBQzdCLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsTUFBTSxDQUFDO0lBRS9CLE1BQU0sRUFBRSx3QkFBd0IsRUFBRSxjQUFjLEVBQUUsR0FDaEQsTUFBTSwyQkFBMkIsRUFBRSxDQUFDO0lBQ3RDLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxNQUFPLFFBQVEsQ0FDckMsOEJBQThCLENBQy9CLEVBQTRDLENBQUM7SUFFOUMsTUFBTSxhQUFhLEdBQUcsTUFBTSxP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RSxDQUFDO1lBQzVCLFVBQVUsR0FBRyxHQUFHLFlBQVksSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUN6QyxFQUFFLE1BQU0sQ0FBQztRQUNYLENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXJCLE9BQU8sQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDaEMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFFRCxlQUFlLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQnVpbGRlciB9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9hcmNoaXRlY3QnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB0eXBlIHsgVml0ZXN0IH0gZnJvbSAndml0ZXN0L25vZGUnO1xuaW1wb3J0IHR5cGUgeyBQbHVnaW4gfSBmcm9tICd2aXRlJztcbmltcG9ydCB0eXBlIHsgVXNlckNvbmZpZyBhcyBWaXRlc3RDb25maWcgfSBmcm9tICd2aXRlc3Qvbm9kZSc7XG5cbmltcG9ydCB7IFZpdGVzdFNjaGVtYSB9IGZyb20gJy4vc2NoZW1hJztcbmltcG9ydCB7IGNyZWF0ZUFuZ3VsYXJNZW1vcnlQbHVnaW4gfSBmcm9tICcuL3BsdWdpbnMvYW5ndWxhci1tZW1vcnktcGx1Z2luJztcbmltcG9ydCB7IGVzYnVpbGREb3dubGV2ZWxQbHVnaW4gfSBmcm9tICcuL3BsdWdpbnMvZXNidWlsZC1kb3dubGV2ZWwtcGx1Z2luJztcbmltcG9ydCB7IGdldEJ1aWxkQXBwbGljYXRpb25GdW5jdGlvbiB9IGZyb20gJy4vZGV2a2l0JztcblxuZXhwb3J0IGVudW0gUmVzdWx0S2luZCB7XG4gIEZhaWx1cmUsXG4gIEZ1bGwsXG4gIEluY3JlbWVudGFsLFxuICBDb21wb25lbnRVcGRhdGUsXG59XG5cbnByb2Nlc3MuZW52WydWSVRFX0NKU19JR05PUkVfV0FSTklORyddID0gJ3RydWUnO1xuXG5hc3luYyBmdW5jdGlvbiogdml0ZXN0QXBwbGljYXRpb25CdWlsZGVyKFxuICBvcHRpb25zOiBWaXRlc3RTY2hlbWEsXG4gIGNvbnRleHQ6IGFueSxcbik6IEFzeW5jSXRlcmFibGU8eyBzdWNjZXNzOiBib29sZWFuIH0+IHtcbiAgcHJvY2Vzcy5lbnZbJ1RFU1QnXSA9ICd0cnVlJztcbiAgcHJvY2Vzcy5lbnZbJ1ZJVEVTVCddID0gJ3RydWUnO1xuXG4gIGNvbnN0IHsgYnVpbGRBcHBsaWNhdGlvbkludGVybmFsLCBhbmd1bGFyVmVyc2lvbiB9ID1cbiAgICBhd2FpdCBnZXRCdWlsZEFwcGxpY2F0aW9uRnVuY3Rpb24oKTtcbiAgY29uc3QgeyBzdGFydFZpdGVzdCB9ID0gYXdhaXQgKEZ1bmN0aW9uKFxuICAgICdyZXR1cm4gaW1wb3J0KFwidml0ZXN0L25vZGVcIiknLFxuICApKCkgYXMgUHJvbWlzZTx0eXBlb2YgaW1wb3J0KCd2aXRlc3Qvbm9kZScpPik7XG5cbiAgY29uc3QgcHJvamVjdENvbmZpZyA9IGF3YWl0IGNvbnRleHQuZ2V0UHJvamVjdE1ldGFkYXRhKGNvbnRleHQudGFyZ2V0KTtcbiAgY29uc3QgZXh0cmFBcmdzID0gYXdhaXQgZ2V0RXh0cmFBcmdzKG9wdGlvbnMpO1xuICBjb25zdCB3b3Jrc3BhY2VSb290ID0gY29udGV4dC53b3Jrc3BhY2VSb290O1xuICBjb25zdCBwcm9qZWN0Um9vdCA9IHByb2plY3RDb25maWdbJ3Jvb3QnXTtcbiAgY29uc3Qgc2V0dXBGaWxlID0gcGF0aC5yZWxhdGl2ZShwcm9qZWN0Um9vdCwgb3B0aW9ucy5zZXR1cEZpbGUpO1xuXG4gIGNvbnN0IGNvbmZpZzogVml0ZXN0Q29uZmlnID0ge1xuICAgIHJvb3Q6IGAke3Byb2plY3RSb290IHx8ICcuJ31gLFxuICAgIHdhdGNoOiBvcHRpb25zLndhdGNoID09PSB0cnVlLFxuICAgIGNvbmZpZzogb3B0aW9ucy5jb25maWdGaWxlLFxuICAgIHNldHVwRmlsZXM6IFtzZXR1cEZpbGVdLFxuICAgIGdsb2JhbHM6IHRydWUsXG4gICAgcG9vbDogJ3ZtVGhyZWFkcycsXG4gICAgcmVwb3J0ZXJzOiBbJ2RlZmF1bHQnXSxcbiAgICBlbnZpcm9ubWVudDogJ2pzZG9tJyxcbiAgICBleGNsdWRlOiBvcHRpb25zPy5leGNsdWRlIHx8IFtdLFxuICAgIC4uLmV4dHJhQXJncyxcbiAgfTtcblxuICBjb25zdCBpbmNsdWRlczogc3RyaW5nW10gPSBmaW5kSW5jbHVkZXMoe1xuICAgIHdvcmtzcGFjZVJvb3QsXG4gICAgcHJvamVjdFJvb3QsXG4gICAgaW5jbHVkZTogb3B0aW9ucy5pbmNsdWRlLFxuICAgIGV4Y2x1ZGU6IG9wdGlvbnMuZXhjbHVkZSB8fCBbXSxcbiAgfSk7XG5cbiAgY29uc3QgdGVzdEZpbGVzID0gW1xuICAgIHBhdGgucmVsYXRpdmUod29ya3NwYWNlUm9vdCwgb3B0aW9ucy5zZXR1cEZpbGUpLFxuICAgIC4uLmluY2x1ZGVzLm1hcCgoaW5jKSA9PiBwYXRoLnJlbGF0aXZlKHdvcmtzcGFjZVJvb3QsIGluYykpLFxuICBdO1xuXG4gIGNvbnN0IGVudHJ5UG9pbnRzID0gZ2VuZXJhdGVFbnRyeVBvaW50cyh7XG4gICAgcHJvamVjdFJvb3Q6IHByb2plY3RSb290LFxuICAgIHRlc3RGaWxlcyxcbiAgICBjb250ZXh0LFxuICAgIGFuZ3VsYXJWZXJzaW9uLFxuICB9KTtcblxuICBjb25zdCBvdXRwdXRGaWxlcyA9IG5ldyBNYXAoKTtcblxuICBjb25zdCB2aXRlQ29uZmlnOiBhbnkgPSB7XG4gICAgcGx1Z2luczogW1xuICAgICAgKGF3YWl0IGNyZWF0ZUFuZ3VsYXJNZW1vcnlQbHVnaW4oe1xuICAgICAgICBhbmd1bGFyVmVyc2lvbixcbiAgICAgICAgd29ya3NwYWNlUm9vdCxcbiAgICAgICAgb3V0cHV0RmlsZXMsXG4gICAgICB9KSkgYXMgUGx1Z2luLFxuICAgICAgYXdhaXQgZXNidWlsZERvd25sZXZlbFBsdWdpbigpLFxuICAgIF0sXG4gIH07XG5cbiAgbGV0IHNlcnZlcjogVml0ZXN0IHwgdW5kZWZpbmVkO1xuICBmb3IgYXdhaXQgKGNvbnN0IGJ1aWxkT3V0cHV0IG9mIGJ1aWxkQXBwbGljYXRpb25JbnRlcm5hbChcbiAgICB7XG4gICAgICBhb3Q6IGZhbHNlLFxuICAgICAgaW5kZXg6IGZhbHNlLFxuICAgICAgcHJvZ3Jlc3M6IGZhbHNlLFxuICAgICAgcHJlcmVuZGVyOiBmYWxzZSxcbiAgICAgIG9wdGltaXphdGlvbjogZmFsc2UsXG4gICAgICBvdXRwdXRQYXRoOiBgLmFuZ3VsYXIvLnZpdGVzdC8ke3Byb2plY3RDb25maWdbJ25hbWUnXX1gLFxuICAgICAgb3V0RXh0ZW5zaW9uOiAnbWpzJyxcbiAgICAgIG91dHB1dEhhc2hpbmc6IDIsIC8vIE5vbmVcbiAgICAgIHRzQ29uZmlnOiBwYXRoLnJlbGF0aXZlKHdvcmtzcGFjZVJvb3QsIG9wdGlvbnMudHNDb25maWcpLFxuICAgICAgd2F0Y2g6IG9wdGlvbnMud2F0Y2ggPT09IHRydWUsXG4gICAgICBlbnRyeVBvaW50cyxcbiAgICAgIGFsbG93ZWRDb21tb25Kc0RlcGVuZGVuY2llczogWydAYW5hbG9nanMvdml0ZXN0LWFuZ3VsYXIvc2V0dXAtem9uZSddLFxuICAgICAgc291cmNlTWFwOiB7XG4gICAgICAgIHNjcmlwdHM6IHRydWUsXG4gICAgICAgIHN0eWxlczogZmFsc2UsXG4gICAgICAgIHZlbmRvcjogZmFsc2UsXG4gICAgICB9LFxuICAgIH0sXG4gICAgY29udGV4dCxcbiAgKSkge1xuICAgIGlmIChidWlsZE91dHB1dC5raW5kID09PSBSZXN1bHRLaW5kLkZhaWx1cmUpIHtcbiAgICAgIHJldHVybiB7IHN1Y2Nlc3M6IGZhbHNlIH07XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIGJ1aWxkT3V0cHV0LmtpbmQgPT09IFJlc3VsdEtpbmQuSW5jcmVtZW50YWwgfHxcbiAgICAgIGJ1aWxkT3V0cHV0LmtpbmQgPT09IFJlc3VsdEtpbmQuRnVsbFxuICAgICkge1xuICAgICAgaWYgKGJ1aWxkT3V0cHV0LmtpbmQgPT09IFJlc3VsdEtpbmQuRnVsbCkge1xuICAgICAgICBvdXRwdXRGaWxlcy5jbGVhcigpO1xuICAgICAgICBPYmplY3Qua2V5cyhidWlsZE91dHB1dC5maWxlcykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgb3V0cHV0RmlsZXMuc2V0KGtleSwgYnVpbGRPdXRwdXQuZmlsZXNba2V5XSk7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgT2JqZWN0LmtleXMoYnVpbGRPdXRwdXQuZmlsZXMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgIG91dHB1dEZpbGVzLnNldChrZXksIGJ1aWxkT3V0cHV0LmZpbGVzW2tleV0pO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy53YXRjaCkge1xuICAgICAgaWYgKCFzZXJ2ZXIpIHtcbiAgICAgICAgc2VydmVyID0gYXdhaXQgc3RhcnRWaXRlc3QoJ3Rlc3QnLCBbXSwgY29uZmlnLCB2aXRlQ29uZmlnKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGF3YWl0IHNlcnZlci5zdGFydChbXSk7XG4gICAgICB9XG5cbiAgICAgIHlpZWxkIHsgc3VjY2VzczogdHJ1ZSB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBzZXJ2ZXIgPSBhd2FpdCBzdGFydFZpdGVzdCgndGVzdCcsIFtdLCBjb25maWcsIHZpdGVDb25maWcpO1xuXG4gICAgICBjb25zdCBzdWNjZXNzID0gc2VydmVyPy5zdGF0ZS5nZXRDb3VudE9mRmFpbGVkVGVzdHMoKSA9PT0gMDtcblxuICAgICAgeWllbGQgeyBzdWNjZXNzIH07XG4gICAgfVxuICB9XG5cbiAgeWllbGQgeyBzdWNjZXNzOiB0cnVlIH07XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRFeHRyYUFyZ3MoXG4gIG9wdGlvbnM6IFZpdGVzdFNjaGVtYSxcbik6IFByb21pc2U8UmVjb3JkPHN0cmluZywgYW55Pj4ge1xuICAvLyBzdXBwb3J0IHBhc3NpbmcgZXh0cmEgYXJncyB0byBWaXRlc3QgQ0xJXG4gIGNvbnN0IHNjaGVtYSA9IGF3YWl0IGltcG9ydCgnLi9zY2hlbWEuanNvbicsIHsgd2l0aDogeyB0eXBlOiAnanNvbicgfSB9KTtcbiAgY29uc3QgZXh0cmFBcmdzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XG4gIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKG9wdGlvbnMpKSB7XG4gICAgaWYgKCEoc2NoZW1hIGFzIGFueSkuZGVmYXVsdC5wcm9wZXJ0aWVzW2tleV0pIHtcbiAgICAgIGV4dHJhQXJnc1trZXldID0gKG9wdGlvbnMgYXMgYW55KVtrZXldO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBleHRyYUFyZ3M7XG59XG5cbmZ1bmN0aW9uIGZpbmRJbmNsdWRlcyhvcHRpb25zOiB7XG4gIHdvcmtzcGFjZVJvb3Q6IHN0cmluZztcbiAgcHJvamVjdFJvb3Q6IHN0cmluZztcbiAgaW5jbHVkZTogc3RyaW5nW107XG4gIGV4Y2x1ZGU6IHN0cmluZ1tdO1xufSkge1xuICBjb25zdCBmZyA9IHJlcXVpcmUoJ2Zhc3QtZ2xvYicpO1xuICBjb25zdCB7IG5vcm1hbGl6ZVBhdGggfSA9IHJlcXVpcmUoJ3ZpdGUnKTtcblxuICBjb25zdCBwcm9qZWN0Um9vdCA9IG5vcm1hbGl6ZVBhdGgoXG4gICAgcGF0aC5yZXNvbHZlKG9wdGlvbnMud29ya3NwYWNlUm9vdCwgb3B0aW9ucy5wcm9qZWN0Um9vdCksXG4gICk7XG4gIGNvbnN0IGdsb2JzID0gWy4uLm9wdGlvbnMuaW5jbHVkZS5tYXAoKGdsb2IpID0+IGAke3Byb2plY3RSb290fS8ke2dsb2J9YCldO1xuXG4gIHJldHVybiBmZy5zeW5jKGdsb2JzLCB7XG4gICAgZG90OiB0cnVlLFxuICAgIGlnbm9yZTogb3B0aW9ucy5leGNsdWRlLFxuICB9KTtcbn1cblxuZnVuY3Rpb24gZ2VuZXJhdGVFbnRyeVBvaW50cyh7XG4gIHByb2plY3RSb290LFxuICB0ZXN0RmlsZXMsXG4gIGNvbnRleHQsXG4gIGFuZ3VsYXJWZXJzaW9uLFxufToge1xuICBwcm9qZWN0Um9vdDogc3RyaW5nO1xuICB0ZXN0RmlsZXM6IHN0cmluZ1tdO1xuICBjb250ZXh0OiBhbnk7XG4gIGFuZ3VsYXJWZXJzaW9uOiBudW1iZXI7XG59KSB7XG4gIGlmIChhbmd1bGFyVmVyc2lvbiA8IDE5KSB7XG4gICAgcmV0dXJuIHRlc3RGaWxlcztcbiAgfVxuXG4gIGNvbnN0IHNlZW4gPSBuZXcgU2V0KCk7XG5cbiAgcmV0dXJuIG5ldyBNYXAoXG4gICAgQXJyYXkuZnJvbSh0ZXN0RmlsZXMsICh0ZXN0RmlsZSkgPT4ge1xuICAgICAgY29uc3QgcmVsYXRpdmVQYXRoID0gcGF0aFxuICAgICAgICAucmVsYXRpdmUoXG4gICAgICAgICAgdGVzdEZpbGUuc3RhcnRzV2l0aChwcm9qZWN0Um9vdClcbiAgICAgICAgICAgID8gcHJvamVjdFJvb3RcbiAgICAgICAgICAgIDogY29udGV4dC53b3Jrc3BhY2VSb290LFxuICAgICAgICAgIHRlc3RGaWxlLFxuICAgICAgICApXG4gICAgICAgIC5yZXBsYWNlKC9eWy4vXSsvLCAnXycpXG4gICAgICAgIC5yZXBsYWNlKC9cXC8vZywgJy0nKTtcblxuICAgICAgbGV0IHVuaXF1ZU5hbWUgPSBgc3BlYy0ke3BhdGguYmFzZW5hbWUoXG4gICAgICAgIHJlbGF0aXZlUGF0aCxcbiAgICAgICAgcGF0aC5leHRuYW1lKHJlbGF0aXZlUGF0aCksXG4gICAgICApfWA7XG4gICAgICBsZXQgc3VmZml4ID0gMjtcbiAgICAgIHdoaWxlIChzZWVuLmhhcyh1bmlxdWVOYW1lKSkge1xuICAgICAgICB1bmlxdWVOYW1lID0gYCR7cmVsYXRpdmVQYXRofS0ke3N1ZmZpeH1gO1xuICAgICAgICArK3N1ZmZpeDtcbiAgICAgIH1cbiAgICAgIHNlZW4uYWRkKHVuaXF1ZU5hbWUpO1xuXG4gICAgICByZXR1cm4gW3VuaXF1ZU5hbWUsIHRlc3RGaWxlXTtcbiAgICB9KSxcbiAgKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY3JlYXRlQnVpbGRlcih2aXRlc3RBcHBsaWNhdGlvbkJ1aWxkZXIpIGFzIHVua25vd247XG4iXX0=
161
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidml0ZXN0LmltcGwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy92aXRlc3QtYW5ndWxhci9zcmMvbGliL2J1aWxkZXJzL2J1aWxkL3ZpdGVzdC5pbXBsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQU03QixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFdkQsTUFBTSxDQUFOLElBQVksVUFLWDtBQUxELFdBQVksVUFBVTtJQUNwQixpREFBTyxDQUFBO0lBQ1AsMkNBQUksQ0FBQTtJQUNKLHlEQUFXLENBQUE7SUFDWCxpRUFBZSxDQUFBO0FBQ2pCLENBQUMsRUFMVyxVQUFVLEtBQVYsVUFBVSxRQUtyQjtBQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsR0FBRyxNQUFNLENBQUM7QUFFaEQsS0FBSyxTQUFTLENBQUMsQ0FBQyx3QkFBd0IsQ0FDdEMsT0FBcUIsRUFDckIsT0FBWTtJQUVaLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDO0lBQzdCLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsTUFBTSxDQUFDO0lBRS9CLE1BQU0sRUFBRSx3QkFBd0IsRUFBRSxjQUFjLEVBQUUsR0FDaEQsTUFBTSwyQkFBMkIsRUFBRSxDQUFDO0lBQ3RDLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxNQUFPLFFBQVEsQ0FDckMsOEJBQThCLENBQy9CLEVBQTRDLENBQUM7SUFFOUMsTUFBTSxhQUFhLEdBQUcsTUFBTSxP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RSxDQUFDO1lBQzVCLFVBQVUsR0FBRyxHQUFHLFlBQVksSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUN6QyxFQUFFLE1BQU0sQ0FBQztRQUNYLENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXJCLE9BQU8sQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDaEMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFFRCxlQUFlLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQnVpbGRlciB9IGZyb20gJ0Bhbmd1bGFyLWRldmtpdC9hcmNoaXRlY3QnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB0eXBlIHsgVml0ZXN0IH0gZnJvbSAndml0ZXN0L25vZGUnO1xuaW1wb3J0IHR5cGUgeyBQbHVnaW4gfSBmcm9tICd2aXRlJztcbmltcG9ydCB0eXBlIHsgVGVzdFVzZXJDb25maWcgYXMgVml0ZXN0Q29uZmlnIH0gZnJvbSAndml0ZXN0L25vZGUnO1xuXG5pbXBvcnQgeyBWaXRlc3RTY2hlbWEgfSBmcm9tICcuL3NjaGVtYSc7XG5pbXBvcnQgeyBjcmVhdGVBbmd1bGFyTWVtb3J5UGx1Z2luIH0gZnJvbSAnLi9wbHVnaW5zL2FuZ3VsYXItbWVtb3J5LXBsdWdpbic7XG5pbXBvcnQgeyBlc2J1aWxkRG93bmxldmVsUGx1Z2luIH0gZnJvbSAnLi9wbHVnaW5zL2VzYnVpbGQtZG93bmxldmVsLXBsdWdpbic7XG5pbXBvcnQgeyBnZXRCdWlsZEFwcGxpY2F0aW9uRnVuY3Rpb24gfSBmcm9tICcuL2RldmtpdCc7XG5cbmV4cG9ydCBlbnVtIFJlc3VsdEtpbmQge1xuICBGYWlsdXJlLFxuICBGdWxsLFxuICBJbmNyZW1lbnRhbCxcbiAgQ29tcG9uZW50VXBkYXRlLFxufVxuXG5wcm9jZXNzLmVudlsnVklURV9DSlNfSUdOT1JFX1dBUk5JTkcnXSA9ICd0cnVlJztcblxuYXN5bmMgZnVuY3Rpb24qIHZpdGVzdEFwcGxpY2F0aW9uQnVpbGRlcihcbiAgb3B0aW9uczogVml0ZXN0U2NoZW1hLFxuICBjb250ZXh0OiBhbnksXG4pOiBBc3luY0l0ZXJhYmxlPHsgc3VjY2VzczogYm9vbGVhbiB9PiB7XG4gIHByb2Nlc3MuZW52WydURVNUJ10gPSAndHJ1ZSc7XG4gIHByb2Nlc3MuZW52WydWSVRFU1QnXSA9ICd0cnVlJztcblxuICBjb25zdCB7IGJ1aWxkQXBwbGljYXRpb25JbnRlcm5hbCwgYW5ndWxhclZlcnNpb24gfSA9XG4gICAgYXdhaXQgZ2V0QnVpbGRBcHBsaWNhdGlvbkZ1bmN0aW9uKCk7XG4gIGNvbnN0IHsgc3RhcnRWaXRlc3QgfSA9IGF3YWl0IChGdW5jdGlvbihcbiAgICAncmV0dXJuIGltcG9ydChcInZpdGVzdC9ub2RlXCIpJyxcbiAgKSgpIGFzIFByb21pc2U8dHlwZW9mIGltcG9ydCgndml0ZXN0L25vZGUnKT4pO1xuXG4gIGNvbnN0IHByb2plY3RDb25maWcgPSBhd2FpdCBjb250ZXh0LmdldFByb2plY3RNZXRhZGF0YShjb250ZXh0LnRhcmdldCk7XG4gIGNvbnN0IGV4dHJhQXJncyA9IGF3YWl0IGdldEV4dHJhQXJncyhvcHRpb25zKTtcbiAgY29uc3Qgd29ya3NwYWNlUm9vdCA9IGNvbnRleHQud29ya3NwYWNlUm9vdDtcbiAgY29uc3QgcHJvamVjdFJvb3QgPSBwcm9qZWN0Q29uZmlnWydyb290J107XG4gIGNvbnN0IHNldHVwRmlsZSA9IHBhdGgucmVsYXRpdmUocHJvamVjdFJvb3QsIG9wdGlvbnMuc2V0dXBGaWxlKTtcblxuICBjb25zdCBjb25maWc6IFZpdGVzdENvbmZpZyA9IHtcbiAgICByb290OiBgJHtwcm9qZWN0Um9vdCB8fCAnLid9YCxcbiAgICB3YXRjaDogb3B0aW9ucy53YXRjaCA9PT0gdHJ1ZSxcbiAgICBjb25maWc6IG9wdGlvbnMuY29uZmlnRmlsZSxcbiAgICBzZXR1cEZpbGVzOiBbc2V0dXBGaWxlXSxcbiAgICBnbG9iYWxzOiB0cnVlLFxuICAgIHBvb2w6ICd2bVRocmVhZHMnLFxuICAgIHJlcG9ydGVyczogWydkZWZhdWx0J10sXG4gICAgZW52aXJvbm1lbnQ6ICdqc2RvbScsXG4gICAgZXhjbHVkZTogb3B0aW9ucz8uZXhjbHVkZSB8fCBbXSxcbiAgICAuLi5leHRyYUFyZ3MsXG4gIH07XG5cbiAgY29uc3QgaW5jbHVkZXM6IHN0cmluZ1tdID0gZmluZEluY2x1ZGVzKHtcbiAgICB3b3Jrc3BhY2VSb290LFxuICAgIHByb2plY3RSb290LFxuICAgIGluY2x1ZGU6IG9wdGlvbnMuaW5jbHVkZSxcbiAgICBleGNsdWRlOiBvcHRpb25zLmV4Y2x1ZGUgfHwgW10sXG4gIH0pO1xuXG4gIGNvbnN0IHRlc3RGaWxlcyA9IFtcbiAgICBwYXRoLnJlbGF0aXZlKHdvcmtzcGFjZVJvb3QsIG9wdGlvbnMuc2V0dXBGaWxlKSxcbiAgICAuLi5pbmNsdWRlcy5tYXAoKGluYykgPT4gcGF0aC5yZWxhdGl2ZSh3b3Jrc3BhY2VSb290LCBpbmMpKSxcbiAgXTtcblxuICBjb25zdCBlbnRyeVBvaW50cyA9IGdlbmVyYXRlRW50cnlQb2ludHMoe1xuICAgIHByb2plY3RSb290OiBwcm9qZWN0Um9vdCxcbiAgICB0ZXN0RmlsZXMsXG4gICAgY29udGV4dCxcbiAgICBhbmd1bGFyVmVyc2lvbixcbiAgfSk7XG5cbiAgY29uc3Qgb3V0cHV0RmlsZXMgPSBuZXcgTWFwKCk7XG5cbiAgY29uc3Qgdml0ZUNvbmZpZzogYW55ID0ge1xuICAgIHBsdWdpbnM6IFtcbiAgICAgIChhd2FpdCBjcmVhdGVBbmd1bGFyTWVtb3J5UGx1Z2luKHtcbiAgICAgICAgYW5ndWxhclZlcnNpb24sXG4gICAgICAgIHdvcmtzcGFjZVJvb3QsXG4gICAgICAgIG91dHB1dEZpbGVzLFxuICAgICAgfSkpIGFzIFBsdWdpbixcbiAgICAgIGF3YWl0IGVzYnVpbGREb3dubGV2ZWxQbHVnaW4oKSxcbiAgICBdLFxuICB9O1xuXG4gIGxldCBzZXJ2ZXI6IFZpdGVzdCB8IHVuZGVmaW5lZDtcbiAgZm9yIGF3YWl0IChjb25zdCBidWlsZE91dHB1dCBvZiBidWlsZEFwcGxpY2F0aW9uSW50ZXJuYWwoXG4gICAge1xuICAgICAgYW90OiBmYWxzZSxcbiAgICAgIGluZGV4OiBmYWxzZSxcbiAgICAgIHByb2dyZXNzOiBmYWxzZSxcbiAgICAgIHByZXJlbmRlcjogZmFsc2UsXG4gICAgICBvcHRpbWl6YXRpb246IGZhbHNlLFxuICAgICAgb3V0cHV0UGF0aDogYC5hbmd1bGFyLy52aXRlc3QvJHtwcm9qZWN0Q29uZmlnWyduYW1lJ119YCxcbiAgICAgIG91dEV4dGVuc2lvbjogJ21qcycsXG4gICAgICBvdXRwdXRIYXNoaW5nOiAyLCAvLyBOb25lXG4gICAgICB0c0NvbmZpZzogcGF0aC5yZWxhdGl2ZSh3b3Jrc3BhY2VSb290LCBvcHRpb25zLnRzQ29uZmlnKSxcbiAgICAgIHdhdGNoOiBvcHRpb25zLndhdGNoID09PSB0cnVlLFxuICAgICAgZW50cnlQb2ludHMsXG4gICAgICBhbGxvd2VkQ29tbW9uSnNEZXBlbmRlbmNpZXM6IFsnQGFuYWxvZ2pzL3ZpdGVzdC1hbmd1bGFyL3NldHVwLXpvbmUnXSxcbiAgICAgIHNvdXJjZU1hcDoge1xuICAgICAgICBzY3JpcHRzOiB0cnVlLFxuICAgICAgICBzdHlsZXM6IGZhbHNlLFxuICAgICAgICB2ZW5kb3I6IGZhbHNlLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGNvbnRleHQsXG4gICkpIHtcbiAgICBpZiAoYnVpbGRPdXRwdXQua2luZCA9PT0gUmVzdWx0S2luZC5GYWlsdXJlKSB7XG4gICAgICByZXR1cm4geyBzdWNjZXNzOiBmYWxzZSB9O1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICBidWlsZE91dHB1dC5raW5kID09PSBSZXN1bHRLaW5kLkluY3JlbWVudGFsIHx8XG4gICAgICBidWlsZE91dHB1dC5raW5kID09PSBSZXN1bHRLaW5kLkZ1bGxcbiAgICApIHtcbiAgICAgIGlmIChidWlsZE91dHB1dC5raW5kID09PSBSZXN1bHRLaW5kLkZ1bGwpIHtcbiAgICAgICAgb3V0cHV0RmlsZXMuY2xlYXIoKTtcbiAgICAgICAgT2JqZWN0LmtleXMoYnVpbGRPdXRwdXQuZmlsZXMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgIG91dHB1dEZpbGVzLnNldChrZXksIGJ1aWxkT3V0cHV0LmZpbGVzW2tleV0pO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIE9iamVjdC5rZXlzKGJ1aWxkT3V0cHV0LmZpbGVzKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgICBvdXRwdXRGaWxlcy5zZXQoa2V5LCBidWlsZE91dHB1dC5maWxlc1trZXldKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMud2F0Y2gpIHtcbiAgICAgIGlmICghc2VydmVyKSB7XG4gICAgICAgIHNlcnZlciA9IGF3YWl0IHN0YXJ0Vml0ZXN0KCd0ZXN0JywgW10sIGNvbmZpZywgdml0ZUNvbmZpZyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhd2FpdCBzZXJ2ZXIuc3RhcnQoW10pO1xuICAgICAgfVxuXG4gICAgICB5aWVsZCB7IHN1Y2Nlc3M6IHRydWUgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgc2VydmVyID0gYXdhaXQgc3RhcnRWaXRlc3QoJ3Rlc3QnLCBbXSwgY29uZmlnLCB2aXRlQ29uZmlnKTtcblxuICAgICAgY29uc3Qgc3VjY2VzcyA9IHNlcnZlcj8uc3RhdGUuZ2V0Q291bnRPZkZhaWxlZFRlc3RzKCkgPT09IDA7XG5cbiAgICAgIHlpZWxkIHsgc3VjY2VzcyB9O1xuICAgIH1cbiAgfVxuXG4gIHlpZWxkIHsgc3VjY2VzczogdHJ1ZSB9O1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RXh0cmFBcmdzKFxuICBvcHRpb25zOiBWaXRlc3RTY2hlbWEsXG4pOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIGFueT4+IHtcbiAgLy8gc3VwcG9ydCBwYXNzaW5nIGV4dHJhIGFyZ3MgdG8gVml0ZXN0IENMSVxuICBjb25zdCBzY2hlbWEgPSBhd2FpdCBpbXBvcnQoJy4vc2NoZW1hLmpzb24nLCB7IHdpdGg6IHsgdHlwZTogJ2pzb24nIH0gfSk7XG4gIGNvbnN0IGV4dHJhQXJnczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhvcHRpb25zKSkge1xuICAgIGlmICghKHNjaGVtYSBhcyBhbnkpLmRlZmF1bHQucHJvcGVydGllc1trZXldKSB7XG4gICAgICBleHRyYUFyZ3Nba2V5XSA9IChvcHRpb25zIGFzIGFueSlba2V5XTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZXh0cmFBcmdzO1xufVxuXG5mdW5jdGlvbiBmaW5kSW5jbHVkZXMob3B0aW9uczoge1xuICB3b3Jrc3BhY2VSb290OiBzdHJpbmc7XG4gIHByb2plY3RSb290OiBzdHJpbmc7XG4gIGluY2x1ZGU6IHN0cmluZ1tdO1xuICBleGNsdWRlOiBzdHJpbmdbXTtcbn0pIHtcbiAgY29uc3QgZmcgPSByZXF1aXJlKCdmYXN0LWdsb2InKTtcbiAgY29uc3QgeyBub3JtYWxpemVQYXRoIH0gPSByZXF1aXJlKCd2aXRlJyk7XG5cbiAgY29uc3QgcHJvamVjdFJvb3QgPSBub3JtYWxpemVQYXRoKFxuICAgIHBhdGgucmVzb2x2ZShvcHRpb25zLndvcmtzcGFjZVJvb3QsIG9wdGlvbnMucHJvamVjdFJvb3QpLFxuICApO1xuICBjb25zdCBnbG9icyA9IFsuLi5vcHRpb25zLmluY2x1ZGUubWFwKChnbG9iKSA9PiBgJHtwcm9qZWN0Um9vdH0vJHtnbG9ifWApXTtcblxuICByZXR1cm4gZmcuc3luYyhnbG9icywge1xuICAgIGRvdDogdHJ1ZSxcbiAgICBpZ25vcmU6IG9wdGlvbnMuZXhjbHVkZSxcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGdlbmVyYXRlRW50cnlQb2ludHMoe1xuICBwcm9qZWN0Um9vdCxcbiAgdGVzdEZpbGVzLFxuICBjb250ZXh0LFxuICBhbmd1bGFyVmVyc2lvbixcbn06IHtcbiAgcHJvamVjdFJvb3Q6IHN0cmluZztcbiAgdGVzdEZpbGVzOiBzdHJpbmdbXTtcbiAgY29udGV4dDogYW55O1xuICBhbmd1bGFyVmVyc2lvbjogbnVtYmVyO1xufSkge1xuICBpZiAoYW5ndWxhclZlcnNpb24gPCAxOSkge1xuICAgIHJldHVybiB0ZXN0RmlsZXM7XG4gIH1cblxuICBjb25zdCBzZWVuID0gbmV3IFNldCgpO1xuXG4gIHJldHVybiBuZXcgTWFwKFxuICAgIEFycmF5LmZyb20odGVzdEZpbGVzLCAodGVzdEZpbGUpID0+IHtcbiAgICAgIGNvbnN0IHJlbGF0aXZlUGF0aCA9IHBhdGhcbiAgICAgICAgLnJlbGF0aXZlKFxuICAgICAgICAgIHRlc3RGaWxlLnN0YXJ0c1dpdGgocHJvamVjdFJvb3QpXG4gICAgICAgICAgICA/IHByb2plY3RSb290XG4gICAgICAgICAgICA6IGNvbnRleHQud29ya3NwYWNlUm9vdCxcbiAgICAgICAgICB0ZXN0RmlsZSxcbiAgICAgICAgKVxuICAgICAgICAucmVwbGFjZSgvXlsuL10rLywgJ18nKVxuICAgICAgICAucmVwbGFjZSgvXFwvL2csICctJyk7XG5cbiAgICAgIGxldCB1bmlxdWVOYW1lID0gYHNwZWMtJHtwYXRoLmJhc2VuYW1lKFxuICAgICAgICByZWxhdGl2ZVBhdGgsXG4gICAgICAgIHBhdGguZXh0bmFtZShyZWxhdGl2ZVBhdGgpLFxuICAgICAgKX1gO1xuICAgICAgbGV0IHN1ZmZpeCA9IDI7XG4gICAgICB3aGlsZSAoc2Vlbi5oYXModW5pcXVlTmFtZSkpIHtcbiAgICAgICAgdW5pcXVlTmFtZSA9IGAke3JlbGF0aXZlUGF0aH0tJHtzdWZmaXh9YDtcbiAgICAgICAgKytzdWZmaXg7XG4gICAgICB9XG4gICAgICBzZWVuLmFkZCh1bmlxdWVOYW1lKTtcblxuICAgICAgcmV0dXJuIFt1bmlxdWVOYW1lLCB0ZXN0RmlsZV07XG4gICAgfSksXG4gICk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNyZWF0ZUJ1aWxkZXIodml0ZXN0QXBwbGljYXRpb25CdWlsZGVyKSBhcyB1bmtub3duO1xuIl19