@dotglitch/ngx-common 1.0.21 → 1.0.23

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 (61) hide show
  1. package/assets/mat-icons.d.ts +5705 -0
  2. package/components/filemanager/file-grid/file-grid.component.d.ts +97 -0
  3. package/components/filemanager/filemanager.component.d.ts +206 -0
  4. package/components/filemanager/folder-rename/folder-rename.component.d.ts +18 -0
  5. package/components/filemanager/helpers.d.ts +5 -0
  6. package/components/filemanager/icon-resolver.d.ts +13 -0
  7. package/components/filemanager/textextensions.d.ts +3 -0
  8. package/components/filemanager/toolbar/breadcrumb/breadcrumb.component.d.ts +16 -0
  9. package/components/filemanager/toolbar/icon-button/icon-button.component.d.ts +11 -0
  10. package/components/filemanager/toolbar/toolbar.component.d.ts +30 -0
  11. package/components/filemanager/tree-view/tree-view.component.d.ts +21 -0
  12. package/components/tabulator/tabulator.component.d.ts +30 -0
  13. package/components/types.d.ts +16 -0
  14. package/components/vscode/ts-type-resolver/dependency-parser.d.ts +6 -0
  15. package/components/vscode/ts-type-resolver/dummy-source-cache.d.ts +7 -0
  16. package/components/vscode/ts-type-resolver/import-resolver.d.ts +28 -0
  17. package/components/vscode/ts-type-resolver/main.d.ts +22 -0
  18. package/components/vscode/ts-type-resolver/recursion-depth.d.ts +11 -0
  19. package/components/vscode/ts-type-resolver/types.d.ts +179 -0
  20. package/components/vscode/ts-type-resolver/unpkg-source-resolver.d.ts +5 -0
  21. package/components/vscode/ts-type-resolver/update-emitter.d.ts +2 -0
  22. package/components/vscode/vscode.component.d.ts +57 -0
  23. package/esm2020/assets/mat-icons.mjs +5705 -0
  24. package/esm2020/components/filemanager/file-grid/file-grid.component.mjs +672 -0
  25. package/esm2020/components/filemanager/filemanager.component.mjs +301 -0
  26. package/esm2020/components/filemanager/folder-rename/folder-rename.component.mjs +57 -0
  27. package/esm2020/components/filemanager/helpers.mjs +26 -0
  28. package/esm2020/components/filemanager/icon-resolver.mjs +155 -0
  29. package/esm2020/components/filemanager/textextensions.mjs +294 -0
  30. package/esm2020/components/filemanager/toolbar/breadcrumb/breadcrumb.component.mjs +26 -0
  31. package/esm2020/components/filemanager/toolbar/icon-button/icon-button.component.mjs +34 -0
  32. package/esm2020/components/filemanager/toolbar/toolbar.component.mjs +163 -0
  33. package/esm2020/components/filemanager/tree-view/tree-view.component.mjs +53 -0
  34. package/esm2020/components/lazy-loader/lazy-loader.module.mjs +3 -3
  35. package/esm2020/components/lazy-loader/lazy-loader.service.mjs +1 -1
  36. package/esm2020/components/menu/menu.component.mjs +3 -4
  37. package/esm2020/components/tabulator/tabulator.component.mjs +92 -0
  38. package/esm2020/components/types.mjs +3 -0
  39. package/esm2020/components/vscode/ts-type-resolver/dependency-parser.mjs +91 -0
  40. package/esm2020/components/vscode/ts-type-resolver/dummy-source-cache.mjs +15 -0
  41. package/esm2020/components/vscode/ts-type-resolver/import-resolver.mjs +311 -0
  42. package/esm2020/components/vscode/ts-type-resolver/main.mjs +112 -0
  43. package/esm2020/components/vscode/ts-type-resolver/recursion-depth.mjs +21 -0
  44. package/esm2020/components/vscode/ts-type-resolver/types.mjs +14 -0
  45. package/esm2020/components/vscode/ts-type-resolver/unpkg-source-resolver.mjs +21 -0
  46. package/esm2020/components/vscode/ts-type-resolver/update-emitter.mjs +37 -0
  47. package/esm2020/components/vscode/vscode.component.mjs +230 -0
  48. package/esm2020/directives/menu.directive.mjs +19 -18
  49. package/esm2020/public-api.mjs +6 -1
  50. package/esm2020/types/menu.mjs +1 -1
  51. package/fesm2015/dotglitch-ngx-common-folder-rename.component-d039534b.mjs +79 -0
  52. package/fesm2015/dotglitch-ngx-common-folder-rename.component-d039534b.mjs.map +1 -0
  53. package/fesm2015/dotglitch-ngx-common.mjs +8361 -28
  54. package/fesm2015/dotglitch-ngx-common.mjs.map +1 -1
  55. package/fesm2020/dotglitch-ngx-common-folder-rename.component-ba3ebd0a.mjs +78 -0
  56. package/fesm2020/dotglitch-ngx-common-folder-rename.component-ba3ebd0a.mjs.map +1 -0
  57. package/fesm2020/dotglitch-ngx-common.mjs +8330 -27
  58. package/fesm2020/dotglitch-ngx-common.mjs.map +1 -1
  59. package/package.json +6 -2
  60. package/public-api.d.ts +4 -0
  61. package/types/menu.d.ts +4 -0
@@ -0,0 +1,21 @@
1
+ export class RecursionDepth {
2
+ constructor(options, fileRecursionDepth = 0, packageRecursionDepth = 0) {
3
+ this.options = options;
4
+ this.fileRecursionDepth = fileRecursionDepth;
5
+ this.packageRecursionDepth = packageRecursionDepth;
6
+ }
7
+ nextPackage() {
8
+ return new RecursionDepth(this.options, this.fileRecursionDepth, this.packageRecursionDepth + 1);
9
+ }
10
+ nextFile() {
11
+ return new RecursionDepth(this.options, this.fileRecursionDepth + 1, this.packageRecursionDepth);
12
+ }
13
+ same() {
14
+ return new RecursionDepth(this.options, this.fileRecursionDepth, this.packageRecursionDepth);
15
+ }
16
+ shouldStop() {
17
+ return ((this.options.fileRecursionDepth > 0 && this.fileRecursionDepth >= this.options.fileRecursionDepth) ||
18
+ (this.options.packageRecursionDepth > 0 && this.packageRecursionDepth >= this.options.packageRecursionDepth));
19
+ }
20
+ }
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjdXJzaW9uLWRlcHRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9jb21wb25lbnRzL3ZzY29kZS90cy10eXBlLXJlc29sdmVyL3JlY3Vyc2lvbi1kZXB0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sY0FBYztJQUN2QixZQUFvQixPQUFnQixFQUFVLHFCQUFxQixDQUFDLEVBQVUsd0JBQXdCLENBQUM7UUFBbkYsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUFVLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBSTtRQUFVLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBSTtJQUFHLENBQUM7SUFFcEcsV0FBVztRQUNkLE9BQU8sSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3JHLENBQUM7SUFFTSxRQUFRO1FBQ1gsT0FBTyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDckcsQ0FBQztJQUVNLElBQUk7UUFDUCxPQUFPLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ2pHLENBQUM7SUFFTSxVQUFVO1FBQ2IsT0FBTyxDQUNILENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLGtCQUFrQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUM7WUFDbkcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLHFCQUFxQixHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMscUJBQXFCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUMvRyxDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgY2xhc3MgUmVjdXJzaW9uRGVwdGgge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgb3B0aW9uczogT3B0aW9ucywgcHJpdmF0ZSBmaWxlUmVjdXJzaW9uRGVwdGggPSAwLCBwcml2YXRlIHBhY2thZ2VSZWN1cnNpb25EZXB0aCA9IDApIHt9XG5cbiAgICBwdWJsaWMgbmV4dFBhY2thZ2UoKSB7XG4gICAgICAgIHJldHVybiBuZXcgUmVjdXJzaW9uRGVwdGgodGhpcy5vcHRpb25zLCB0aGlzLmZpbGVSZWN1cnNpb25EZXB0aCwgdGhpcy5wYWNrYWdlUmVjdXJzaW9uRGVwdGggKyAxKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmV4dEZpbGUoKSB7XG4gICAgICAgIHJldHVybiBuZXcgUmVjdXJzaW9uRGVwdGgodGhpcy5vcHRpb25zLCB0aGlzLmZpbGVSZWN1cnNpb25EZXB0aCArIDEsIHRoaXMucGFja2FnZVJlY3Vyc2lvbkRlcHRoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2FtZSgpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBSZWN1cnNpb25EZXB0aCh0aGlzLm9wdGlvbnMsIHRoaXMuZmlsZVJlY3Vyc2lvbkRlcHRoLCB0aGlzLnBhY2thZ2VSZWN1cnNpb25EZXB0aCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNob3VsZFN0b3AoKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAodGhpcy5vcHRpb25zLmZpbGVSZWN1cnNpb25EZXB0aCA+IDAgJiYgdGhpcy5maWxlUmVjdXJzaW9uRGVwdGggPj0gdGhpcy5vcHRpb25zLmZpbGVSZWN1cnNpb25EZXB0aCkgfHxcbiAgICAgICAgICAgICh0aGlzLm9wdGlvbnMucGFja2FnZVJlY3Vyc2lvbkRlcHRoID4gMCAmJiB0aGlzLnBhY2thZ2VSZWN1cnNpb25EZXB0aCA+PSB0aGlzLm9wdGlvbnMucGFja2FnZVJlY3Vyc2lvbkRlcHRoKVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,14 @@
1
+ import * as path from 'path-browserify';
2
+ export const importResourcePathToString = (p) => {
3
+ switch (p.kind) {
4
+ case 'package':
5
+ return path.join(p.packageName, p.importPath ?? '', 'package.json');
6
+ case 'relative':
7
+ return path.join(p.sourcePath, p.importPath);
8
+ case 'relative-in-package':
9
+ return path.join(p.packageName, p.sourcePath, p.importPath);
10
+ case 'bruteforce':
11
+ throw new Error("Not Implemented");
12
+ }
13
+ };
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2NvbXBvbmVudHMvdnNjb2RlL3RzLXR5cGUtcmVzb2x2ZXIvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLElBQUksTUFBTSxpQkFBaUIsQ0FBQztBQWtOeEMsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsQ0FBQyxDQUFxQixFQUFFLEVBQUU7SUFDaEUsUUFBUSxDQUFDLENBQUMsSUFBSSxFQUFFO1FBQ1osS0FBSyxTQUFTO1lBQ1YsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLFVBQVUsSUFBSSxFQUFFLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDeEUsS0FBSyxVQUFVO1lBQ1gsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pELEtBQUsscUJBQXFCO1lBQ3RCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hFLEtBQUssWUFBWTtZQUNiLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztLQUMxQztBQUNMLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlICogYXMgbW9uYWNvIGZyb20gJ21vbmFjby1lZGl0b3InO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoLWJyb3dzZXJpZnknO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNvdXJjZUNhY2hlIHtcbiAgICBpc0ZpbGVBdmFpbGFibGU/OiAodXJpOiBzdHJpbmcpID0+IFByb21pc2U8Ym9vbGVhbj47XG4gICAgc3RvcmVGaWxlOiAodXJpOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPjtcbiAgICBnZXRGaWxlOiAodXJpOiBzdHJpbmcpID0+IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPjtcbiAgICBjbGVhcjogKCkgPT4gUHJvbWlzZTx2b2lkPjtcbn1cblxuZXhwb3J0IHR5cGUgUHJvZ3Jlc3NVcGRhdGUgPVxuICAgIHwge1xuICAgICAgICB0eXBlOiAnQ29kZUNoYW5nZWQnO1xuICAgIH1cbiAgICB8IHtcbiAgICAgICAgdHlwZTogJ1Jlc29sdmVOZXdJbXBvcnRzJztcbiAgICB9XG4gICAgfCB7XG4gICAgICAgIHR5cGU6ICdMb29rZWRVcFR5cGVGaWxlJztcbiAgICAgICAgcGF0aDogc3RyaW5nO1xuICAgICAgICBzdWNjZXNzOiBib29sZWFuO1xuICAgIH1cbiAgICB8IHtcbiAgICAgICAgdHlwZTogJ0F0dGVtcHRlZExvb2tVcEZpbGUnO1xuICAgICAgICBwYXRoOiBzdHJpbmc7XG4gICAgICAgIHN1Y2Nlc3M6IGJvb2xlYW47XG4gICAgfVxuICAgIHwge1xuICAgICAgICB0eXBlOiAnTG9va2VkVXBQYWNrYWdlJztcbiAgICAgICAgcGFja2FnZTogc3RyaW5nO1xuICAgICAgICBkZWZpbml0ZWx5VHlwZWQ6IGJvb2xlYW47XG4gICAgICAgIHN1Y2Nlc3M6IGJvb2xlYW47XG4gICAgfVxuICAgIHwge1xuICAgICAgICB0eXBlOiAnTG9hZGVkRnJvbUNhY2hlJztcbiAgICAgICAgaW1wb3J0UGF0aDogc3RyaW5nO1xuICAgIH1cbiAgICB8IHtcbiAgICAgICAgdHlwZTogJ1N0b3JlZFRvQ2FjaGUnO1xuICAgICAgICBpbXBvcnRQYXRoOiBzdHJpbmc7XG4gICAgfTtcblxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgT3B0aW9ucyB7XG4gICAgLyoqXG4gICAgICogU2hhcmUgc291cmNlIGNhY2hlIGJldHdlZW4gbXVsdGlwbGUgZWRpdG9yIGluc3RhbmNlcyBieSBzdG9yaW5nXG4gICAgICogdGhlIGNhY2hlIGluIGEgc3RhdGljIHByb3BlcnR5LlxuICAgICAqXG4gICAgICogRGVmYXVsdHMgdG8gZmFsc2UuXG4gICAgICovXG4gICAgc2hhcmVDYWNoZTogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIE9ubHkgdXNlIHBhY2thZ2VzIHNwZWNpZmllZCBpbiB0aGUgYHZlcnNpb25zYCBwcm9wZXJ0eS5cbiAgICAgKlxuICAgICAqIERlZmF1bHRzIHRvIGZhbHNlLlxuICAgICAqL1xuICAgIG9ubHlTcGVjaWZpZWRQYWNrYWdlczogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIExvYWQgdHlwaW5ncyBmcm9tIHByZXNwZWNpZmllZCB2ZXJzaW9ucyB3aGVuIGluaXRpYWxpemluZy4gVmVyc2lvbnNcbiAgICAgKiBuZWVkIHRvIGJlIHNwZWNpZmllZCBpbiB0aGUgYGB2ZXJzaW9uc2BgIG9wdGlvbi5cbiAgICAgKlxuICAgICAqIERlZmF1bHRzIHRvIGZhbHNlLlxuICAgICAqL1xuICAgIHByZWxvYWRQYWNrYWdlczogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZXMgY29tcGlsZXIgb3B0aW9ucyB0byBkZWZhdWx0cyBzdWl0YWJsZSBmb3IgYXV0by1sb2FkZWRcbiAgICAgKiBkZWNsYXJhdGlvbnMsIHNwZWNpZmljYWxseSBieSBzZXR0aW5nIGBgbW9kdWxlUmVzb2x1dGlvbmBgIHRvXG4gICAgICogYGBOb2RlSnNgYCBhbmQgYGBhbGxvd1N5bnRoZXRpY0RlZmF1bHRJbXBvcnRzYGAgdG8gdHJ1ZS5cbiAgICAgKiBPdGhlciBvcHRpb25zIGFyZSBub3QgY2hhbmdlZC4gU2V0IHRoaXMgcHJvcGVydHkgdG8gdHJ1ZSB0b1xuICAgICAqIGRpc2FibGUgdGhpcyBiZWhhdmlvdXIuXG4gICAgICpcbiAgICAgKiBEZWZhdWx0cyB0byBmYWxzZS5cbiAgICAgKi9cbiAgICBkb250QWRhcHRFZGl0b3JPcHRpb25zOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQWZ0ZXIgdHlwaW5ncyB3ZXJlIHJlc29sdmVkIGFuZCBpbmplY3RlZCBpbnRvIG1vbmFjbywgYXV0by10eXBpbmdzXG4gICAgICogdXBkYXRlcyB0aGUgdmFsdWUgb2YgdGhlIGN1cnJlbnQgbW9kZWwgdG8gdHJpZ2dlciBhIHJlZnJlc2ggaW5cbiAgICAgKiBtb25hY28ncyB0eXBpbmcgbG9naWMsIHNvIHRoYXQgaXQgdXNlcyB0aGUgaW5qZWN0ZWQgdHlwaW5ncy5cbiAgICAgKi9cbiAgICBkb250UmVmcmVzaE1vZGVsVmFsdWVBZnRlclJlc29sdmVtZW50OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogUHJlc3BlY2lmaWVkIHBhY2thZ2UgdmVyc2lvbnMuIElmIGEgcGFja2FnZSBpcyBsb2FkZWQgd2hvc2VcbiAgICAgKiBuYW1lIGlzIHNwZWNpZmllZCBpbiB0aGlzIG9iamVjdCwgaXQgd2lsbCBsb2FkIHdpdGggdGhlIGV4YWN0XG4gICAgICogdmVyc2lvbiBzcGVjaWZpZWQgaW4gdGhlIG9iamVjdC5cbiAgICAgKlxuICAgICAqIEV4YW1wbGU6XG4gICAgICpcbiAgICAgKiBgYGBqc29uXG4gICAgICoge1xuICAgICAqICAgXCJAdHlwZXMvcmVhY3RcIjogXCIxNy4wLjBcIixcbiAgICAgKiAgIFwiY3NzdHlwZVwiOiBcIjMuMC41XCJcbiAgICAgKiB9XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBTZXR0aW5nIHRoZSBvcHRpb24gYGBvbmx5U3BlY2lmaWVkUGFja2FnZXNgYCB0byB0cnVlIG1ha2VzIHRoaXNcbiAgICAgKiBwcm9wZXJ0eSBhY3QgYXMgYSB3aGl0ZWxpc3QgZm9yIHBhY2thZ2VzLlxuICAgICAqXG4gICAgICogU2V0dGluZyB0aGUgb3B0aW9uIGBgcHJlbG9hZFBhY2thZ2VzYGAgbWFrZXMgdGhlIHBhY2thZ2VzIHNwZWNpZmllZFxuICAgICAqIGluIHRoaXMgcHJvcGVydHkgbG9hZCBkaXJlY3RseSBhZnRlciBpbml0aWFsaXppbmcgdGhlIGF1dG8tbG9hZGVyLlxuICAgICAqL1xuICAgIHZlcnNpb25zPzogeyBbcGFja2FnZU5hbWU6IHN0cmluZ106IHN0cmluZzsgfTtcblxuICAgIC8qKlxuICAgICAqIElmIGEgbmV3IHBhY2thZ2Ugd2FzIGxvYWRlZCwgaXRzIG5hbWUgYW5kIHZlcnNpb24gaXMgYWRkZWQgdG8gdGhlXG4gICAgICogdmVyc2lvbiBvYmplY3QsIGFuZCB0aGlzIG1ldGhvZCBpcyBjYWxsZWQgd2l0aCB0aGUgdXBkYXRlZCBvYmplY3QuXG4gICAgICogQHBhcmFtIHZlcnNpb25zIHVwZGF0ZWQgdmVyc2lvbnMgb2JqZWN0LlxuICAgICAqL1xuICAgIG9uVXBkYXRlVmVyc2lvbnM/OiAodmVyc2lvbnM6IHsgW3BhY2thZ2VOYW1lOiBzdHJpbmddOiBzdHJpbmc7IH0pID0+IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBTdXBwbHkgYSBjYWNoZSB3aGVyZSBkZWNsYXJhdGlvbiBmaWxlcyBhbmQgcGFja2FnZS5qc29uIGZpbGVzIGFyZVxuICAgICAqIGNhY2hlZCB0by4gU3VwcGx5IGFuIGluc3RhbmNlIG9mIHtAbGluayBMb2NhbFN0b3JhZ2VDYWNoZX0gdG8gY2FjaGVcbiAgICAgKiBmaWxlcyB0byBsb2NhbFN0b3JhZ2UuXG4gICAgICovXG4gICAgc291cmNlQ2FjaGU6IFNvdXJjZUNhY2hlO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHJvb3QgZGlyZWN0b3J5IHdoZXJlIHlvdXIgZWRpdGVkIGZpbGVzIGFyZS4gTXVzdCBlbmQgd2l0aFxuICAgICAqIGEgc2xhc2guIFRoZSBkZWZhdWx0IGlzIHN1aXRhYmxlIHVubGVzcyB5b3UgY2hhbmdlIHRoZSBkZWZhdWx0XG4gICAgICogVVJJIG9mIGZpbGVzIGxvYWRlZCBpbiB0aGUgZWRpdG9yLlxuICAgICAqXG4gICAgICogRGVmYXVsdHMgdG8gXCJpbm1lbW9yeTovL21vZGVsL1wiXG4gICAgICovXG4gICAgZmlsZVJvb3RQYXRoOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBEZWJvdW5jZXMgY29kZSByZWFuYWx5emluZyBhZnRlciB1c2VyIGhhcyBjaGFuZ2VkIHRoZSBlZGl0b3IgY29udGVudHNcbiAgICAgKiBieSB0aGUgc3BlY2lmaWVkIGFtb3VudC4gU2V0IHRvIHplcm8gdG8gZGlzYWJsZS4gVmFsdWUgcHJvdmlkZWQgaW5cbiAgICAgKiBtaWxsaXNlY29uZHMuXG4gICAgICpcbiAgICAgKiBEZWZhdWx0cyB0byA0MDAwLCBpLmUuIDQgc2Vjb25kcy5cbiAgICAgKi9cbiAgICBkZWJvdW5jZUR1cmF0aW9uOiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiBNYXhpbXVtIHJlY3Vyc2lvbiBkZXB0aCBmb3IgcmVjdXJzaW5nIHBhY2thZ2VzLiBEZXRlcm1pbmVzIGhvdyBtYW55XG4gICAgICogbmVzdGVkIHBhY2thZ2UgZGVjbGFyYXRpb25zIGFyZSBsb2FkZWQuIEZvciBleGFtcGxlLCBpZiBgYHBhY2thZ2VSZWN1cnNpb25EZXB0aGBgXG4gICAgICogaGFzIHRoZSB2YWx1ZSAyLCB0aGUgY29kZSBpbiB0aGUgbW9uYWNvIGVkaXRvciByZWZlcmVuY2VzIHBhY2thZ2VzIGBgQTFgYCwgYGBBMmBgXG4gICAgICogYW5kIGBgQTNgYCwgcGFja2FnZSBgYEExYGAgcmVmZXJlbmNlcyBwYWNrYWdlIGBgQjFgYCBhbmQgYGBCMWBgIHJlZmVyZW5jZXMgYGBDMWBgLFxuICAgICAqIHRoZW4gcGFja2FnZXMgYGBBMWBgLCBgYEEyYGAsIGBgQTNgYCBhbmQgYGBCMWBgIGFyZSBsb2FkZWQuIFNldCB0byB6ZXJvIHRvXG4gICAgICogZGlzYWJsZS5cbiAgICAgKlxuICAgICAqIERlZmF1bHRzIHRvIDMuXG4gICAgICovXG4gICAgcGFja2FnZVJlY3Vyc2lvbkRlcHRoOiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiBNYXhpbXVtIHJlY3Vyc2lvbiBkZXB0aCBmb3IgcmVjdXJzaW5nIGZpbGVzLiBEZXRlcm1pbmVzIGhvdyBtYW55XG4gICAgICogbmVzdGVkIGZpbGUgZGVjbGFyYXRpb25zIGFyZSBsb2FkZWQuIFRoZSBzYW1lIGFzIGBgcGFja2FnZVJlY3Vyc2lvbkRlcHRoYGAsXG4gICAgICogYnV0IGZvciBpbmRpdmlkdWFsIGZpbGVzLiBTZXQgdG8gemVybyB0byBkaXNhYmxlLlxuICAgICAqXG4gICAgICogRGVmYXVsdHMgdG8gMTAuXG4gICAgICovXG4gICAgZmlsZVJlY3Vyc2lvbkRlcHRoOiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiBDYWxsZWQgYWZ0ZXIgcHJvZ3Jlc3MgdXBkYXRlcyBsaWtlIGxvYWRlZCBkZWNsYXJhdGlvbnMgb3IgZXZlbnRzLlxuICAgICAqIEBwYXJhbSB1cGRhdGUgZGV0YWlsZWQgZXZlbnQgb2JqZWN0IGNvbnRhaW5pbmcgdXBkYXRlIGluZm9zLlxuICAgICAqIEBwYXJhbSB0ZXh0dWFsIGEgdGV4dHVhbCByZXByZXNlbnRhdGlvbiBvZiB0aGUgdXBkYXRlIGZvciBkZWJ1Z2dpbmcuXG4gICAgICovXG4gICAgb25VcGRhdGU/OiAodXBkYXRlOiBQcm9ncmVzc1VwZGF0ZSwgdGV4dHVhbDogc3RyaW5nKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogQ2FsbGVkIGlmIGVycm9ycyBvY2N1ci5cbiAgICAgKiBAcGFyYW0gZXJyb3IgYSB0ZXh0dWFsIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBlcnJvci5cbiAgICAgKi9cbiAgICBvbkVycm9yPzogKGVycm9yOiBzdHJpbmcpID0+IHZvaWQ7XG4gICAgLyoqXG4gICAgICogaW5zdGFuY2Ugb2YgbW9uYWNvIGVkaXRvclxuICAgICAqL1xuICAgIG1vbmFjbzogdHlwZW9mIG1vbmFjbztcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIEltcG9ydFJlc291cmNlUGF0aFBhY2thZ2Uge1xuICAgIGtpbmQ6ICdwYWNrYWdlJztcbiAgICBwYWNrYWdlTmFtZTogc3RyaW5nO1xuICAgIGltcG9ydFBhdGg/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW1wb3J0UmVzb3VyY2VQYXRoUmVsYXRpdmUge1xuICAgIGtpbmQ6ICdyZWxhdGl2ZSc7XG4gICAgaW1wb3J0UGF0aDogc3RyaW5nO1xuICAgIHNvdXJjZVBhdGg6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbXBvcnRSZXNvdXJjZVBhdGhSZWxhdGl2ZUluUGFja2FnZSB7XG4gICAga2luZDogJ3JlbGF0aXZlLWluLXBhY2thZ2UnO1xuICAgIHBhY2thZ2VOYW1lOiBzdHJpbmc7XG4gICAgaW1wb3J0UGF0aDogc3RyaW5nO1xuICAgIHNvdXJjZVBhdGg6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbXBvcnRSZXNvdXJjZUJydXRlRm9yY2Uge1xuICAgIGtpbmQ6ICdicnV0ZWZvcmNlJztcbiAgICBwYWNrYWdlTmFtZTogc3RyaW5nO1xuICAgIHR5cGluZ0ZpbGVzOiBhbnlbXTtcbn1cblxuZXhwb3J0IHR5cGUgSW1wb3J0UmVzb3VyY2VQYXRoID1cbiAgICB8IEltcG9ydFJlc291cmNlUGF0aFBhY2thZ2VcbiAgICB8IEltcG9ydFJlc291cmNlUGF0aFJlbGF0aXZlXG4gICAgfCBJbXBvcnRSZXNvdXJjZVBhdGhSZWxhdGl2ZUluUGFja2FnZVxuICAgIHwgSW1wb3J0UmVzb3VyY2VCcnV0ZUZvcmNlO1xuXG5leHBvcnQgY29uc3QgaW1wb3J0UmVzb3VyY2VQYXRoVG9TdHJpbmcgPSAocDogSW1wb3J0UmVzb3VyY2VQYXRoKSA9PiB7XG4gICAgc3dpdGNoIChwLmtpbmQpIHtcbiAgICAgICAgY2FzZSAncGFja2FnZSc6XG4gICAgICAgICAgICByZXR1cm4gcGF0aC5qb2luKHAucGFja2FnZU5hbWUsIHAuaW1wb3J0UGF0aCA/PyAnJywgJ3BhY2thZ2UuanNvbicpO1xuICAgICAgICBjYXNlICdyZWxhdGl2ZSc6XG4gICAgICAgICAgICByZXR1cm4gcGF0aC5qb2luKHAuc291cmNlUGF0aCwgcC5pbXBvcnRQYXRoKTtcbiAgICAgICAgY2FzZSAncmVsYXRpdmUtaW4tcGFja2FnZSc6XG4gICAgICAgICAgICByZXR1cm4gcGF0aC5qb2luKHAucGFja2FnZU5hbWUsIHAuc291cmNlUGF0aCwgcC5pbXBvcnRQYXRoKTtcbiAgICAgICAgY2FzZSAnYnJ1dGVmb3JjZSc6XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJOb3QgSW1wbGVtZW50ZWRcIik7XG4gICAgfVxufTtcbiJdfQ==
@@ -0,0 +1,21 @@
1
+ export class UnpkgSourceResolver {
2
+ static async resolvePackageJson(packageName, version, subPath) {
3
+ return await this.resolveFile(`https://unpkg.com/${packageName}${version ? `@${version}` : ''}${subPath ? `/${subPath}` : ''}/package.json`);
4
+ }
5
+ static async resolveSourceFile(packageName, version, path) {
6
+ return await this.resolveFile(`https://unpkg.com/${packageName}${version ? `@${version}` : ''}/${path}`);
7
+ }
8
+ static async resolveFile(url) {
9
+ const res = await fetch(url, { method: 'GET' });
10
+ if (res.ok) {
11
+ return await res.text();
12
+ }
13
+ else if (res.status === 404) {
14
+ return '';
15
+ }
16
+ else {
17
+ throw Error(`Error other than 404 while fetching from Unpkg at ${url}`);
18
+ }
19
+ }
20
+ }
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5wa2ctc291cmNlLXJlc29sdmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9jb21wb25lbnRzL3ZzY29kZS90cy10eXBlLXJlc29sdmVyL3VucGtnLXNvdXJjZS1yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxNQUFNLE9BQU8sbUJBQW1CO0lBQ3JCLE1BQU0sQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQ2xDLFdBQW1CLEVBQ25CLE9BQTJCLEVBQzNCLE9BQTJCO1FBRTNCLE9BQU8sTUFBTSxJQUFJLENBQUMsV0FBVyxDQUN6QixxQkFBcUIsV0FBVyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxlQUFlLENBQ2hILENBQUM7SUFDTixDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FDakMsV0FBbUIsRUFDbkIsT0FBMkIsRUFDM0IsSUFBWTtRQUVaLE9BQU8sTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixXQUFXLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBVztRQUN4QyxNQUFNLEdBQUcsR0FBRyxNQUFNLEtBQUssQ0FBQyxHQUFHLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVoRCxJQUFJLEdBQUcsQ0FBQyxFQUFFLEVBQUU7WUFDUixPQUFPLE1BQU0sR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQzNCO2FBQ0ksSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRTtZQUN6QixPQUFPLEVBQUUsQ0FBQztTQUNiO2FBQ0k7WUFDRCxNQUFNLEtBQUssQ0FBQyxxREFBcUQsR0FBRyxFQUFFLENBQUMsQ0FBQztTQUMzRTtJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0IGNsYXNzIFVucGtnU291cmNlUmVzb2x2ZXIge1xuICAgIHB1YmxpYyBzdGF0aWMgYXN5bmMgcmVzb2x2ZVBhY2thZ2VKc29uKFxuICAgICAgICBwYWNrYWdlTmFtZTogc3RyaW5nLFxuICAgICAgICB2ZXJzaW9uOiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gICAgICAgIHN1YlBhdGg6IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgICk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLnJlc29sdmVGaWxlKFxuICAgICAgICAgICAgYGh0dHBzOi8vdW5wa2cuY29tLyR7cGFja2FnZU5hbWV9JHt2ZXJzaW9uID8gYEAke3ZlcnNpb259YCA6ICcnfSR7c3ViUGF0aCA/IGAvJHtzdWJQYXRofWAgOiAnJ30vcGFja2FnZS5qc29uYFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYXN5bmMgcmVzb2x2ZVNvdXJjZUZpbGUoXG4gICAgICAgIHBhY2thZ2VOYW1lOiBzdHJpbmcsXG4gICAgICAgIHZlcnNpb246IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgICAgICAgcGF0aDogc3RyaW5nXG4gICAgKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucmVzb2x2ZUZpbGUoYGh0dHBzOi8vdW5wa2cuY29tLyR7cGFja2FnZU5hbWV9JHt2ZXJzaW9uID8gYEAke3ZlcnNpb259YCA6ICcnfS8ke3BhdGh9YCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgYXN5bmMgcmVzb2x2ZUZpbGUodXJsOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgZmV0Y2godXJsLCB7IG1ldGhvZDogJ0dFVCcgfSk7XG5cbiAgICAgICAgaWYgKHJlcy5vaykge1xuICAgICAgICAgICAgcmV0dXJuIGF3YWl0IHJlcy50ZXh0KCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAocmVzLnN0YXR1cyA9PT0gNDA0KSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBFcnJvcihgRXJyb3Igb3RoZXIgdGhhbiA0MDQgd2hpbGUgZmV0Y2hpbmcgZnJvbSBVbnBrZyBhdCAke3VybH1gKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,37 @@
1
+ export const invokeUpdate = (progress, options) => {
2
+ let textual = `${progress.type}: `;
3
+ switch (progress.type) {
4
+ case 'CodeChanged':
5
+ textual += ``;
6
+ break;
7
+ case 'ResolveNewImports':
8
+ textual += ``;
9
+ break;
10
+ // case 'DetectedImport':
11
+ // textual += `at "${progress.source}" the import "${progress.importPath}" was detected`;
12
+ // break;
13
+ // case 'CompletedImport':
14
+ // textual += `at "${progress.source}" the import "${progress.importPath}" was completed`;
15
+ // break;
16
+ case 'LookedUpTypeFile':
17
+ textual += `"${progress.path}" was ${progress.success ? 'sucessfully' : 'not sucessfully'} looked up`;
18
+ break;
19
+ case 'AttemptedLookUpFile':
20
+ textual += `"${progress.path}" was ${progress.success ? 'sucessfully' : 'not sucessfully'} attempted to looked up`; // What in the hell is this grammar?
21
+ break;
22
+ case 'LookedUpPackage':
23
+ textual += `package.json for package "${progress.package}" was ${progress.success ? 'sucessfully' : 'not sucessfully'} looked up${progress.definitelyTyped ? ' (found in definitely typed repo)' : ''}`;
24
+ break;
25
+ case 'LoadedFromCache':
26
+ textual += `"${progress.importPath}" was loaded from cache`;
27
+ break;
28
+ case 'StoredToCache':
29
+ textual += `"${progress.importPath}" was stored to cache`;
30
+ break;
31
+ }
32
+ if (textual.endsWith(': ')) {
33
+ textual = textual.slice(undefined, -2);
34
+ }
35
+ options.onUpdate?.(progress, textual);
36
+ };
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWVtaXR0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2NvbXBvbmVudHMvdnNjb2RlL3RzLXR5cGUtcmVzb2x2ZXIvdXBkYXRlLWVtaXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsUUFBd0IsRUFBRSxPQUFnQixFQUFFLEVBQUU7SUFDdkUsSUFBSSxPQUFPLEdBQUcsR0FBRyxRQUFRLENBQUMsSUFBSSxJQUFJLENBQUM7SUFFbkMsUUFBUSxRQUFRLENBQUMsSUFBSSxFQUFFO1FBQ25CLEtBQUssYUFBYTtZQUNkLE9BQU8sSUFBSSxFQUFFLENBQUM7WUFDZCxNQUFNO1FBQ1YsS0FBSyxtQkFBbUI7WUFDcEIsT0FBTyxJQUFJLEVBQUUsQ0FBQztZQUNkLE1BQU07UUFDVix5QkFBeUI7UUFDekIsNkZBQTZGO1FBQzdGLGFBQWE7UUFDYiwwQkFBMEI7UUFDMUIsOEZBQThGO1FBQzlGLGFBQWE7UUFDYixLQUFLLGtCQUFrQjtZQUNuQixPQUFPLElBQUksSUFBSSxRQUFRLENBQUMsSUFBSSxTQUFTLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLFlBQVksQ0FBQztZQUN0RyxNQUFNO1FBQ1YsS0FBSyxxQkFBcUI7WUFDdEIsT0FBTyxJQUFJLElBQUksUUFBUSxDQUFDLElBQUksU0FDeEIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxpQkFDdkMseUJBQXlCLENBQUMsQ0FBQyxvQ0FBb0M7WUFDL0QsTUFBTTtRQUNWLEtBQUssaUJBQWlCO1lBQ2xCLE9BQU8sSUFBSSw2QkFBNkIsUUFBUSxDQUFDLE9BQU8sU0FDcEQsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxpQkFDdkMsYUFBYSxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDbkYsTUFBTTtRQUNWLEtBQUssaUJBQWlCO1lBQ2xCLE9BQU8sSUFBSSxJQUFJLFFBQVEsQ0FBQyxVQUFVLHlCQUF5QixDQUFDO1lBQzVELE1BQU07UUFDVixLQUFLLGVBQWU7WUFDaEIsT0FBTyxJQUFJLElBQUksUUFBUSxDQUFDLFVBQVUsdUJBQXVCLENBQUM7WUFDMUQsTUFBTTtLQUNiO0lBRUQsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ3hCLE9BQU8sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQzFDO0lBRUQsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUMxQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9ncmVzc1VwZGF0ZSwgT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgaW52b2tlVXBkYXRlID0gKHByb2dyZXNzOiBQcm9ncmVzc1VwZGF0ZSwgb3B0aW9uczogT3B0aW9ucykgPT4ge1xuICAgIGxldCB0ZXh0dWFsID0gYCR7cHJvZ3Jlc3MudHlwZX06IGA7XG5cbiAgICBzd2l0Y2ggKHByb2dyZXNzLnR5cGUpIHtcbiAgICAgICAgY2FzZSAnQ29kZUNoYW5nZWQnOlxuICAgICAgICAgICAgdGV4dHVhbCArPSBgYDtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdSZXNvbHZlTmV3SW1wb3J0cyc6XG4gICAgICAgICAgICB0ZXh0dWFsICs9IGBgO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIC8vIGNhc2UgJ0RldGVjdGVkSW1wb3J0JzpcbiAgICAgICAgLy8gICAgIHRleHR1YWwgKz0gYGF0IFwiJHtwcm9ncmVzcy5zb3VyY2V9XCIgdGhlIGltcG9ydCBcIiR7cHJvZ3Jlc3MuaW1wb3J0UGF0aH1cIiB3YXMgZGV0ZWN0ZWRgO1xuICAgICAgICAvLyAgICAgYnJlYWs7XG4gICAgICAgIC8vIGNhc2UgJ0NvbXBsZXRlZEltcG9ydCc6XG4gICAgICAgIC8vICAgICB0ZXh0dWFsICs9IGBhdCBcIiR7cHJvZ3Jlc3Muc291cmNlfVwiIHRoZSBpbXBvcnQgXCIke3Byb2dyZXNzLmltcG9ydFBhdGh9XCIgd2FzIGNvbXBsZXRlZGA7XG4gICAgICAgIC8vICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnTG9va2VkVXBUeXBlRmlsZSc6XG4gICAgICAgICAgICB0ZXh0dWFsICs9IGBcIiR7cHJvZ3Jlc3MucGF0aH1cIiB3YXMgJHtwcm9ncmVzcy5zdWNjZXNzID8gJ3N1Y2Vzc2Z1bGx5JyA6ICdub3Qgc3VjZXNzZnVsbHknfSBsb29rZWQgdXBgO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ0F0dGVtcHRlZExvb2tVcEZpbGUnOlxuICAgICAgICAgICAgdGV4dHVhbCArPSBgXCIke3Byb2dyZXNzLnBhdGh9XCIgd2FzICR7XG4gICAgICAgICAgICAgICAgcHJvZ3Jlc3Muc3VjY2VzcyA/ICdzdWNlc3NmdWxseScgOiAnbm90IHN1Y2Vzc2Z1bGx5J1xuICAgICAgICAgICAgfSBhdHRlbXB0ZWQgdG8gbG9va2VkIHVwYDsgLy8gV2hhdCBpbiB0aGUgaGVsbCBpcyB0aGlzIGdyYW1tYXI/XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnTG9va2VkVXBQYWNrYWdlJzpcbiAgICAgICAgICAgIHRleHR1YWwgKz0gYHBhY2thZ2UuanNvbiBmb3IgcGFja2FnZSBcIiR7cHJvZ3Jlc3MucGFja2FnZX1cIiB3YXMgJHtcbiAgICAgICAgICAgICAgICBwcm9ncmVzcy5zdWNjZXNzID8gJ3N1Y2Vzc2Z1bGx5JyA6ICdub3Qgc3VjZXNzZnVsbHknXG4gICAgICAgICAgICB9IGxvb2tlZCB1cCR7cHJvZ3Jlc3MuZGVmaW5pdGVseVR5cGVkID8gJyAoZm91bmQgaW4gZGVmaW5pdGVseSB0eXBlZCByZXBvKScgOiAnJ31gO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ0xvYWRlZEZyb21DYWNoZSc6XG4gICAgICAgICAgICB0ZXh0dWFsICs9IGBcIiR7cHJvZ3Jlc3MuaW1wb3J0UGF0aH1cIiB3YXMgbG9hZGVkIGZyb20gY2FjaGVgO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ1N0b3JlZFRvQ2FjaGUnOlxuICAgICAgICAgICAgdGV4dHVhbCArPSBgXCIke3Byb2dyZXNzLmltcG9ydFBhdGh9XCIgd2FzIHN0b3JlZCB0byBjYWNoZWA7XG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBpZiAodGV4dHVhbC5lbmRzV2l0aCgnOiAnKSkge1xuICAgICAgICB0ZXh0dWFsID0gdGV4dHVhbC5zbGljZSh1bmRlZmluZWQsIC0yKTtcbiAgICB9XG5cbiAgICBvcHRpb25zLm9uVXBkYXRlPy4ocHJvZ3Jlc3MsIHRleHR1YWwpO1xufTtcbiJdfQ==
@@ -0,0 +1,230 @@
1
+ import { Component, EventEmitter, HostListener, Input, Output } from '@angular/core';
2
+ import { MonacoAutoTypeImporter } from './ts-type-resolver/main';
3
+ import { debounceTime } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ let Monaco;
6
+ export class VscodeComponent {
7
+ set code(value) {
8
+ if (value == this._code)
9
+ return;
10
+ if (typeof value != "string")
11
+ throw new TypeError("Value must be of type string");
12
+ this._code = value;
13
+ this.editor?.setValue(this.code);
14
+ }
15
+ ;
16
+ get code() { return this._code?.trim(); }
17
+ set language(value) {
18
+ this._language = {
19
+ 'ts': "typescript",
20
+ 'html': 'xml',
21
+ 'scss': 'css'
22
+ }[value] || value || "auto";
23
+ }
24
+ get language() { return this._language; }
25
+ get settings() {
26
+ return {
27
+ theme: this.theme,
28
+ language: this.language,
29
+ tabSize: this.tabSize,
30
+ readOnly: this.readOnly,
31
+ fontFamily: this.fontFamily,
32
+ fontSize: this.fontSize,
33
+ automaticLayout: this.automaticLayout,
34
+ scrollBeyondLastLine: this.scrollBeyondLastLine,
35
+ colorDecorators: this.colorDecorators,
36
+ folding: this.folding,
37
+ scrollBeyondLastColumn: this.scrollBeyondLastColumn,
38
+ minimap: this.minimap,
39
+ scrollbar: this.scrollbar,
40
+ smoothScrolling: this.smoothScrolling,
41
+ mouseWheelScrollSensitivity: this.mouseWheelScrollSensitivity,
42
+ lineNumbers: this.lineNumbers
43
+ };
44
+ }
45
+ constructor(viewContainer) {
46
+ this.viewContainer = viewContainer;
47
+ this.isDirty = false;
48
+ this.codeChange = new EventEmitter();
49
+ this.onCodeType = new EventEmitter();
50
+ this.typeDebounce = this.onCodeType.pipe(debounceTime(100));
51
+ this.installationLocation = "/lib/monaco/vs";
52
+ this.tabSize = 2;
53
+ this.readOnly = false;
54
+ this.theme = "vs-dark";
55
+ this.fontFamily = "Droid Sans Mono";
56
+ this.fontSize = 14;
57
+ this.automaticLayout = true;
58
+ this.colorDecorators = true;
59
+ this.folding = true;
60
+ this.minimapEnabled = true;
61
+ this.minimap = {
62
+ enabled: true
63
+ };
64
+ this.scrollbar = {
65
+ alwaysConsumeMouseWheel: false,
66
+ // scrollByPage: true
67
+ };
68
+ this.smoothScrolling = true;
69
+ this.mouseWheelScrollSensitivity = 2;
70
+ this.scrollBeyondLastLine = false;
71
+ this.scrollBeyondLastColumn = 0;
72
+ this.scrollbarAlwaysConsumeMouseWheel = 2;
73
+ this.lineNumbers = "on";
74
+ this.verticalScrollExhausted = false;
75
+ this.resize = () => {
76
+ this.editor?.layout();
77
+ };
78
+ this.installMonaco();
79
+ this._sub = this.typeDebounce.subscribe(t => {
80
+ this.codeChange.next(this._code = this.editor.getValue());
81
+ });
82
+ }
83
+ ngOnChanges(changes) {
84
+ // If we changed anything OTHER than code, reload the editor
85
+ if (Object.keys(changes).length > 1 || !changes['code']) {
86
+ if (this.editor) {
87
+ this.editor?.dispose();
88
+ this.createEditor();
89
+ }
90
+ }
91
+ if (changes['theme'])
92
+ Monaco?.editor.setTheme(this.theme);
93
+ }
94
+ async ngAfterViewInit() {
95
+ await new Promise((res, rej) => {
96
+ let count = 0;
97
+ let i = window.setInterval(() => {
98
+ count++;
99
+ if (window['monaco'] != undefined) {
100
+ window.clearInterval(i);
101
+ Monaco = window['monaco'];
102
+ res(true);
103
+ }
104
+ if (count >= 100) {
105
+ window.clearInterval(i);
106
+ res(false);
107
+ }
108
+ }, 100);
109
+ });
110
+ this.createEditor();
111
+ }
112
+ ngOnDestroy() {
113
+ this.editor?.dispose();
114
+ this._sub?.unsubscribe();
115
+ }
116
+ createEditor() {
117
+ if (this.customLanguage) {
118
+ this.customLanguage.init(Monaco);
119
+ }
120
+ let editor = this.editor = Monaco.editor.create(this.viewContainer?.element?.nativeElement, this.settings);
121
+ // const autoTypings = await
122
+ MonacoAutoTypeImporter.create(editor, {
123
+ monaco: Monaco,
124
+ });
125
+ this.configureLanguageSupport();
126
+ if (this.code) {
127
+ editor.setValue(this.code);
128
+ }
129
+ editor.getModel().onDidChangeContent(() => this.onCodeType.emit());
130
+ }
131
+ configureLanguageSupport() {
132
+ }
133
+ installMonaco() {
134
+ if (VscodeComponent.isMonacoInstalled)
135
+ return;
136
+ // Monaco has a UMD loader that requires this
137
+ // Merge with any pre-existing global require objects.
138
+ if (!window['require'])
139
+ window['require'] = {};
140
+ if (!window['require']['paths'])
141
+ window['require']['paths'] = {};
142
+ if (this.installationLocation.endsWith('/'))
143
+ this.installationLocation = this.installationLocation.slice(0, -1);
144
+ window['require']['paths'].vs = this.installationLocation;
145
+ const monacoFiles = [
146
+ 'loader.js',
147
+ 'editor/editor.main.nls.js',
148
+ 'editor/editor.main.js',
149
+ ];
150
+ for (let i = 0; i < monacoFiles.length; i++) {
151
+ const script = document.createElement("script");
152
+ script.setAttribute("defer", "");
153
+ script.setAttribute("src", this.installationLocation + '/' + monacoFiles[i]);
154
+ document.body.append(script);
155
+ }
156
+ VscodeComponent.isMonacoInstalled = true;
157
+ }
158
+ download() {
159
+ const code = this.editor.getValue();
160
+ let blob = new Blob([code], { type: 'text/log' });
161
+ let elm = document.createElement('a');
162
+ let blobURL = URL.createObjectURL(blob);
163
+ // Set the data values.
164
+ elm.href = blobURL;
165
+ elm.download = this.filename;
166
+ document.body.appendChild(elm);
167
+ elm.click();
168
+ document.body.removeChild(elm);
169
+ elm.remove();
170
+ URL.revokeObjectURL(blobURL);
171
+ }
172
+ }
173
+ /**
174
+ * true if the monaco UMD files are injected into the webpage
175
+ */
176
+ VscodeComponent.isMonacoInstalled = false;
177
+ VscodeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: VscodeComponent, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
178
+ VscodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: VscodeComponent, isStandalone: true, selector: "app-vscode", inputs: { code: "code", customLanguage: "customLanguage", language: "language", installationLocation: "installationLocation", tabSize: "tabSize", readOnly: "readOnly", theme: "theme", fontFamily: "fontFamily", fontSize: "fontSize", automaticLayout: "automaticLayout", colorDecorators: "colorDecorators", folding: "folding", minimapEnabled: "minimapEnabled", minimap: "minimap", scrollbar: "scrollbar", smoothScrolling: "smoothScrolling", mouseWheelScrollSensitivity: "mouseWheelScrollSensitivity", scrollBeyondLastLine: "scrollBeyondLastLine", scrollBeyondLastColumn: "scrollBeyondLastColumn", scrollbarAlwaysConsumeMouseWheel: "scrollbarAlwaysConsumeMouseWheel", lineNumbers: "lineNumbers" }, outputs: { codeChange: "codeChange" }, host: { listeners: { "window:resize": "resize($event)" } }, usesOnChanges: true, ngImport: i0, template: '', isInline: true, styles: [":host{display:block;height:100%;max-height:100vh;max-width:100vw}\n"] });
179
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: VscodeComponent, decorators: [{
180
+ type: Component,
181
+ args: [{ selector: 'app-vscode', template: '', standalone: true, styles: [":host{display:block;height:100%;max-height:100vh;max-width:100vw}\n"] }]
182
+ }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { code: [{
183
+ type: Input
184
+ }], codeChange: [{
185
+ type: Output
186
+ }], customLanguage: [{
187
+ type: Input
188
+ }], language: [{
189
+ type: Input
190
+ }], installationLocation: [{
191
+ type: Input
192
+ }], tabSize: [{
193
+ type: Input
194
+ }], readOnly: [{
195
+ type: Input
196
+ }], theme: [{
197
+ type: Input
198
+ }], fontFamily: [{
199
+ type: Input
200
+ }], fontSize: [{
201
+ type: Input
202
+ }], automaticLayout: [{
203
+ type: Input
204
+ }], colorDecorators: [{
205
+ type: Input
206
+ }], folding: [{
207
+ type: Input
208
+ }], minimapEnabled: [{
209
+ type: Input
210
+ }], minimap: [{
211
+ type: Input
212
+ }], scrollbar: [{
213
+ type: Input
214
+ }], smoothScrolling: [{
215
+ type: Input
216
+ }], mouseWheelScrollSensitivity: [{
217
+ type: Input
218
+ }], scrollBeyondLastLine: [{
219
+ type: Input
220
+ }], scrollBeyondLastColumn: [{
221
+ type: Input
222
+ }], scrollbarAlwaysConsumeMouseWheel: [{
223
+ type: Input
224
+ }], lineNumbers: [{
225
+ type: Input
226
+ }], resize: [{
227
+ type: HostListener,
228
+ args: ['window:resize', ['$event']]
229
+ }] } });
230
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnNjb2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvY29tcG9uZW50cy92c2NvZGUvdnNjb2RlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQThDLE1BQU0sZUFBZSxDQUFDO0FBRzNKLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBRXBDLElBQUksTUFBMkIsQ0FBQztBQWVoQyxNQUFNLE9BQU8sZUFBZTtJQU14QixJQUFhLElBQUksQ0FBQyxLQUFhO1FBQzNCLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLO1lBQ25CLE9BQU87UUFDWCxJQUFJLE9BQU8sS0FBSyxJQUFJLFFBQVE7WUFDeEIsTUFBTSxJQUFJLFNBQVMsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1FBRXhELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBQUEsQ0FBQztJQUNGLElBQUksSUFBSSxLQUFLLE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQSxDQUFDLENBQUM7SUFTeEMsSUFBYSxRQUFRLENBQUMsS0FBYTtRQUMvQixJQUFJLENBQUMsU0FBUyxHQUFHO1lBQ2IsSUFBSSxFQUFFLFlBQVk7WUFDbEIsTUFBTSxFQUFFLEtBQUs7WUFDYixNQUFNLEVBQUUsS0FBSztTQUNoQixDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxNQUFNLENBQUE7SUFDL0IsQ0FBQztJQUNELElBQUksUUFBUSxL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Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkF5Sk4sTUFBTTtzQkFETCxZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgKiBhcyBNb25hY29FZGl0b3IgZnJvbSAnbW9uYWNvLWVkaXRvcic7XHJcbmltcG9ydCB7IE1vbmFjb0F1dG9UeXBlSW1wb3J0ZXIgfSBmcm9tICcuL3RzLXR5cGUtcmVzb2x2ZXIvbWFpbic7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMnO1xyXG5cclxubGV0IE1vbmFjbzogdHlwZW9mIE1vbmFjb0VkaXRvcjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdhcHAtdnNjb2RlJyxcclxuICAgIHRlbXBsYXRlOiAnJyxcclxuICAgIHN0eWxlczogW2BcclxuOmhvc3Qge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBtYXgtaGVpZ2h0OiAxMDB2aDtcclxuICAgIG1heC13aWR0aDogMTAwdnc7XHJcbn1cclxuICAgIGBdLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVnNjb2RlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuICAgIGlzRGlydHkgPSBmYWxzZTtcclxuICAgIGVkaXRvcjogTW9uYWNvRWRpdG9yLmVkaXRvci5JU3RhbmRhbG9uZUNvZGVFZGl0b3I7XHJcbiAgICBmaWxlbmFtZTogc3RyaW5nO1xyXG5cclxuICAgIHByaXZhdGUgX2NvZGU6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIHNldCBjb2RlKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgICAgICBpZiAodmFsdWUgPT0gdGhpcy5fY29kZSlcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgIT0gXCJzdHJpbmdcIilcclxuICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlZhbHVlIG11c3QgYmUgb2YgdHlwZSBzdHJpbmdcIik7XHJcblxyXG4gICAgICAgIHRoaXMuX2NvZGUgPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLmVkaXRvcj8uc2V0VmFsdWUodGhpcy5jb2RlKTtcclxuICAgIH07XHJcbiAgICBnZXQgY29kZSgpIHsgcmV0dXJuIHRoaXMuX2NvZGU/LnRyaW0oKSB9XHJcbiAgICBAT3V0cHV0KCkgY29kZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gICAgcHJpdmF0ZSBvbkNvZGVUeXBlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgICBwcml2YXRlIHR5cGVEZWJvdW5jZSA9IHRoaXMub25Db2RlVHlwZS5waXBlKGRlYm91bmNlVGltZSgxMDApKTtcclxuXHJcbiAgICBASW5wdXQoKSBjdXN0b21MYW5ndWFnZTogeyBpbml0OiBGdW5jdGlvbjsgfTtcclxuXHJcblxyXG4gICAgcHJpdmF0ZSBfbGFuZ3VhZ2U6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIHNldCBsYW5ndWFnZSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5fbGFuZ3VhZ2UgPSB7XHJcbiAgICAgICAgICAgICd0cyc6IFwidHlwZXNjcmlwdFwiLFxyXG4gICAgICAgICAgICAnaHRtbCc6ICd4bWwnLFxyXG4gICAgICAgICAgICAnc2Nzcyc6ICdjc3MnXHJcbiAgICAgICAgfVt2YWx1ZV0gfHwgdmFsdWUgfHwgXCJhdXRvXCJcclxuICAgIH1cclxuICAgIGdldCBsYW5ndWFnZSgpIHsgcmV0dXJuIHRoaXMuX2xhbmd1YWdlIH1cclxuXHJcbiAgICBASW5wdXQoKSBpbnN0YWxsYXRpb25Mb2NhdGlvbiA9IFwiL2xpYi9tb25hY28vdnNcIjtcclxuXHJcblxyXG4gICAgQElucHV0KCkgdGFiU2l6ZSA9IDI7XHJcbiAgICBASW5wdXQoKSByZWFkT25seSA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgdGhlbWUgPSBcInZzLWRhcmtcIjtcclxuICAgIEBJbnB1dCgpIGZvbnRGYW1pbHkgPSBcIkRyb2lkIFNhbnMgTW9ub1wiO1xyXG4gICAgQElucHV0KCkgZm9udFNpemUgPSAxNDtcclxuXHJcbiAgICBASW5wdXQoKSBhdXRvbWF0aWNMYXlvdXQgPSB0cnVlO1xyXG4gICAgQElucHV0KCkgY29sb3JEZWNvcmF0b3JzID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIGZvbGRpbmcgPSB0cnVlO1xyXG5cclxuICAgIEBJbnB1dCgpIG1pbmltYXBFbmFibGVkID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIG1pbmltYXA6IE1vbmFjb0VkaXRvci5lZGl0b3IuSUVkaXRvck1pbmltYXBPcHRpb25zID0ge1xyXG4gICAgICAgIGVuYWJsZWQ6IHRydWVcclxuICAgIH07XHJcbiAgICBASW5wdXQoKSBzY3JvbGxiYXI6IE1vbmFjb0VkaXRvci5lZGl0b3IuSUVkaXRvclNjcm9sbGJhck9wdGlvbnMgPSB7XHJcbiAgICAgICAgYWx3YXlzQ29uc3VtZU1vdXNlV2hlZWw6IGZhbHNlLFxyXG4gICAgICAgIC8vIHNjcm9sbEJ5UGFnZTogdHJ1ZVxyXG4gICAgfTtcclxuICAgIEBJbnB1dCgpIHNtb290aFNjcm9sbGluZyA9IHRydWU7XHJcbiAgICBASW5wdXQoKSBtb3VzZVdoZWVsU2Nyb2xsU2Vuc2l0aXZpdHkgPSAyO1xyXG4gICAgQElucHV0KCkgc2Nyb2xsQmV5b25kTGFzdExpbmUgPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpIHNjcm9sbEJleW9uZExhc3RDb2x1bW4gPSAwO1xyXG4gICAgQElucHV0KCkgc2Nyb2xsYmFyQWx3YXlzQ29uc3VtZU1vdXNlV2hlZWwgPSAyO1xyXG5cclxuICAgIEBJbnB1dCgpIGxpbmVOdW1iZXJzOiBNb25hY29FZGl0b3IuZWRpdG9yLkxpbmVOdW1iZXJzVHlwZSA9IFwib25cIjtcclxuXHJcbiAgICBnZXQgc2V0dGluZ3MoKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgdGhlbWU6IHRoaXMudGhlbWUsXHJcbiAgICAgICAgICAgIGxhbmd1YWdlOiB0aGlzLmxhbmd1YWdlLFxyXG4gICAgICAgICAgICB0YWJTaXplOiB0aGlzLnRhYlNpemUsXHJcbiAgICAgICAgICAgIHJlYWRPbmx5OiB0aGlzLnJlYWRPbmx5LFxyXG4gICAgICAgICAgICBmb250RmFtaWx5OiB0aGlzLmZvbnRGYW1pbHksXHJcbiAgICAgICAgICAgIGZvbnRTaXplOiB0aGlzLmZvbnRTaXplLFxyXG4gICAgICAgICAgICBhdXRvbWF0aWNMYXlvdXQ6IHRoaXMuYXV0b21hdGljTGF5b3V0LFxyXG4gICAgICAgICAgICBzY3JvbGxCZXlvbmRMYXN0TGluZTogdGhpcy5zY3JvbGxCZXlvbmRMYXN0TGluZSxcclxuICAgICAgICAgICAgY29sb3JEZWNvcmF0b3JzOiB0aGlzLmNvbG9yRGVjb3JhdG9ycyxcclxuICAgICAgICAgICAgZm9sZGluZzogdGhpcy5mb2xkaW5nLFxyXG4gICAgICAgICAgICBzY3JvbGxCZXlvbmRMYXN0Q29sdW1uOiB0aGlzLnNjcm9sbEJleW9uZExhc3RDb2x1bW4sXHJcbiAgICAgICAgICAgIG1pbmltYXA6IHRoaXMubWluaW1hcCxcclxuICAgICAgICAgICAgc2Nyb2xsYmFyOiB0aGlzLnNjcm9sbGJhcixcclxuICAgICAgICAgICAgc21vb3RoU2Nyb2xsaW5nOiB0aGlzLnNtb290aFNjcm9sbGluZyxcclxuICAgICAgICAgICAgbW91c2VXaGVlbFNjcm9sbFNlbnNpdGl2aXR5OiB0aGlzLm1vdXNlV2hlZWxTY3JvbGxTZW5zaXRpdml0eSxcclxuICAgICAgICAgICAgbGluZU51bWJlcnM6IHRoaXMubGluZU51bWJlcnNcclxuICAgICAgICB9IGFzIE1vbmFjb0VkaXRvci5lZGl0b3IuSVN0YW5kYWxvbmVFZGl0b3JDb25zdHJ1Y3Rpb25PcHRpb25zO1xyXG4gICAgfVxyXG5cclxuICAgIHZlcnRpY2FsU2Nyb2xsRXhoYXVzdGVkID0gZmFsc2U7XHJcblxyXG4gICAgcHJpdmF0ZSBfc3ViO1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmKSB7XHJcbiAgICAgICAgdGhpcy5pbnN0YWxsTW9uYWNvKCk7XHJcblxyXG4gICAgICAgIHRoaXMuX3N1YiA9IHRoaXMudHlwZURlYm91bmNlLnN1YnNjcmliZSh0ID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jb2RlQ2hhbmdlLm5leHQodGhpcy5fY29kZSA9IHRoaXMuZWRpdG9yLmdldFZhbHVlKCkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgICAgICAvLyBJZiB3ZSBjaGFuZ2VkIGFueXRoaW5nIE9USEVSIHRoYW4gY29kZSwgcmVsb2FkIHRoZSBlZGl0b3JcclxuICAgICAgICBpZiAoT2JqZWN0LmtleXMoY2hhbmdlcykubGVuZ3RoID4gMSB8fCAhY2hhbmdlc1snY29kZSddKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmVkaXRvcikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5lZGl0b3I/LmRpc3Bvc2UoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlRWRpdG9yKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGNoYW5nZXNbJ3RoZW1lJ10pXHJcbiAgICAgICAgICAgIE1vbmFjbz8uZWRpdG9yLnNldFRoZW1lKHRoaXMudGhlbWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuXHJcbiAgICAgICAgYXdhaXQgbmV3IFByb21pc2UoKHJlcywgcmVqKSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBjb3VudCA9IDA7XHJcbiAgICAgICAgICAgIGxldCBpID0gd2luZG93LnNldEludGVydmFsKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIGNvdW50Kys7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKHdpbmRvd1snbW9uYWNvJ10gIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2luZG93LmNsZWFySW50ZXJ2YWwoaSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIE1vbmFjbyA9IHdpbmRvd1snbW9uYWNvJ107XHJcbiAgICAgICAgICAgICAgICAgICAgcmVzKHRydWUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYgKGNvdW50ID49IDEwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpbmRvdy5jbGVhckludGVydmFsKGkpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJlcyhmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sIDEwMCk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuY3JlYXRlRWRpdG9yKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5lZGl0b3I/LmRpc3Bvc2UoKTtcclxuICAgICAgICB0aGlzLl9zdWI/LnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjcmVhdGVFZGl0b3IoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VzdG9tTGFuZ3VhZ2UpIHtcclxuICAgICAgICAgICAgdGhpcy5jdXN0b21MYW5ndWFnZS5pbml0KE1vbmFjbyk7XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgbGV0IGVkaXRvciA9IHRoaXMuZWRpdG9yID0gTW9uYWNvLmVkaXRvci5jcmVhdGUodGhpcy52aWV3Q29udGFpbmVyPy5lbGVtZW50Py5uYXRpdmVFbGVtZW50LCB0aGlzLnNldHRpbmdzIGFzIGFueSk7XHJcblxyXG4gICAgICAgIC8vIGNvbnN0IGF1dG9UeXBpbmdzID0gYXdhaXRcclxuICAgICAgICBNb25hY29BdXRvVHlwZUltcG9ydGVyLmNyZWF0ZShlZGl0b3IsIHtcclxuICAgICAgICAgICAgbW9uYWNvOiBNb25hY28sXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuY29uZmlndXJlTGFuZ3VhZ2VTdXBwb3J0KCk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmNvZGUpIHtcclxuICAgICAgICAgICAgZWRpdG9yLnNldFZhbHVlKHRoaXMuY29kZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBlZGl0b3IuZ2V0TW9kZWwoKS5vbkRpZENoYW5nZUNvbnRlbnQoKCkgPT4gdGhpcy5vbkNvZGVUeXBlLmVtaXQoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjb25maWd1cmVMYW5ndWFnZVN1cHBvcnQoKSB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogdHJ1ZSBpZiB0aGUgbW9uYWNvIFVNRCBmaWxlcyBhcmUgaW5qZWN0ZWQgaW50byB0aGUgd2VicGFnZVxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIHN0YXRpYyBpc01vbmFjb0luc3RhbGxlZCA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBpbnN0YWxsTW9uYWNvKCkge1xyXG4gICAgICAgIGlmIChWc2NvZGVDb21wb25lbnQuaXNNb25hY29JbnN0YWxsZWQpIHJldHVybjtcclxuXHJcbiAgICAgICAgLy8gTW9uYWNvIGhhcyBhIFVNRCBsb2FkZXIgdGhhdCByZXF1aXJlcyB0aGlzXHJcbiAgICAgICAgLy8gTWVyZ2Ugd2l0aCBhbnkgcHJlLWV4aXN0aW5nIGdsb2JhbCByZXF1aXJlIG9iamVjdHMuXHJcbiAgICAgICAgaWYgKCF3aW5kb3dbJ3JlcXVpcmUnXSkgd2luZG93WydyZXF1aXJlJ10gPSB7fSBhcyBhbnk7XHJcbiAgICAgICAgaWYgKCF3aW5kb3dbJ3JlcXVpcmUnXVsncGF0aHMnXSkgd2luZG93WydyZXF1aXJlJ11bJ3BhdGhzJ10gPSB7fTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuaW5zdGFsbGF0aW9uTG9jYXRpb24uZW5kc1dpdGgoJy8nKSlcclxuICAgICAgICAgICAgdGhpcy5pbnN0YWxsYXRpb25Mb2NhdGlvbiA9IHRoaXMuaW5zdGFsbGF0aW9uTG9jYXRpb24uc2xpY2UoMCwgLTEpO1xyXG5cclxuICAgICAgICB3aW5kb3dbJ3JlcXVpcmUnXVsncGF0aHMnXS52cyA9IHRoaXMuaW5zdGFsbGF0aW9uTG9jYXRpb247XHJcblxyXG4gICAgICAgIGNvbnN0IG1vbmFjb0ZpbGVzID0gW1xyXG4gICAgICAgICAgICAnbG9hZGVyLmpzJyxcclxuICAgICAgICAgICAgJ2VkaXRvci9lZGl0b3IubWFpbi5ubHMuanMnLFxyXG4gICAgICAgICAgICAnZWRpdG9yL2VkaXRvci5tYWluLmpzJyxcclxuICAgICAgICBdO1xyXG5cclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG1vbmFjb0ZpbGVzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNjcmlwdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJzY3JpcHRcIik7XHJcbiAgICAgICAgICAgIHNjcmlwdC5zZXRBdHRyaWJ1dGUoXCJkZWZlclwiLCBcIlwiKTtcclxuICAgICAgICAgICAgc2NyaXB0LnNldEF0dHJpYnV0ZShcInNyY1wiLCB0aGlzLmluc3RhbGxhdGlvbkxvY2F0aW9uICsgJy8nICsgbW9uYWNvRmlsZXNbaV0pO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZChzY3JpcHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBWc2NvZGVDb21wb25lbnQuaXNNb25hY29JbnN0YWxsZWQgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGRvd25sb2FkKCkge1xyXG4gICAgICAgIGNvbnN0IGNvZGUgPSB0aGlzLmVkaXRvci5nZXRWYWx1ZSgpO1xyXG5cclxuICAgICAgICBsZXQgYmxvYiA9IG5ldyBCbG9iKFtjb2RlXSwgeyB0eXBlOiAndGV4dC9sb2cnIH0pO1xyXG4gICAgICAgIGxldCBlbG0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XHJcbiAgICAgICAgbGV0IGJsb2JVUkwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xyXG5cclxuICAgICAgICAvLyBTZXQgdGhlIGRhdGEgdmFsdWVzLlxyXG4gICAgICAgIGVsbS5ocmVmID0gYmxvYlVSTDtcclxuICAgICAgICBlbG0uZG93bmxvYWQgPSB0aGlzLmZpbGVuYW1lO1xyXG5cclxuICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGVsbSk7XHJcbiAgICAgICAgZWxtLmNsaWNrKCk7XHJcblxyXG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZWxtKTtcclxuICAgICAgICBlbG0ucmVtb3ZlKCk7XHJcblxyXG4gICAgICAgIFVSTC5yZXZva2VPYmplY3RVUkwoYmxvYlVSTCk7XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXHJcbiAgICByZXNpemUgPSAoKTogdm9pZCA9PiB7XHJcbiAgICAgICAgdGhpcy5lZGl0b3I/LmxheW91dCgpO1xyXG4gICAgfTtcclxufVxyXG4iXX0=
@@ -18,28 +18,29 @@ export class MenuDirective {
18
18
  // Automatically attach context menu items to
19
19
  // the contextmenu event
20
20
  if (this.ctxMenuItems) {
21
- el.onclick = this.openMenu.bind(this);
22
21
  el.addEventListener('contextmenu', (e) => {
23
22
  e.preventDefault();
24
23
  this.openMenu(e, this.ctxMenuItems);
25
24
  });
26
25
  }
27
- if (!this.config?.trigger) {
28
- el.addEventListener('click', this.openMenu.bind(this));
29
- }
30
- else {
31
- const triggers = Array.isArray(this.config.trigger) ? this.config.trigger : [this.config.trigger];
32
- triggers.forEach(t => {
33
- if (t == "contextmenu") {
34
- el.addEventListener(t, (e) => {
35
- e.preventDefault();
36
- this.openMenu(e, this.ctxMenuItems);
37
- });
38
- }
39
- else {
40
- el.addEventListener(t, this.openMenu.bind(this));
41
- }
42
- });
26
+ if (this.menuItems?.length > 0) {
27
+ if (!this.config?.trigger) {
28
+ el.addEventListener('click', this.openMenu.bind(this));
29
+ }
30
+ else {
31
+ const triggers = Array.isArray(this.config.trigger) ? this.config.trigger : [this.config.trigger];
32
+ triggers.forEach(t => {
33
+ if (t == "contextmenu") {
34
+ el.addEventListener(t, (e) => {
35
+ e.preventDefault();
36
+ this.openMenu(e, this.ctxMenuItems);
37
+ });
38
+ }
39
+ else {
40
+ el.addEventListener(t, this.openMenu.bind(this));
41
+ }
42
+ });
43
+ }
43
44
  }
44
45
  }
45
46
  async openMenu(evt, items = this.menuItems) {
@@ -123,4 +124,4 @@ export const openMenu = async (dialog, menuItems, data, evt, config = {}, el) =>
123
124
  });
124
125
  });
125
126
  };
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2RpcmVjdGl2ZXMvbWVudS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXRDLE9BQU8sRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7O0FBU3RGLE1BQU0sT0FBTyxhQUFhO0lBMkJ0QixZQUNZLE1BQWlCLEVBQ2pCLGFBQStCO1FBRC9CLFdBQU0sR0FBTixNQUFNLENBQVc7UUFDakIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBUjNDOztXQUVHO1FBRXVCLFdBQU0sR0FBZ0IsRUFBRSxDQUFDO0lBSy9DLENBQUM7SUFFTCxlQUFlO1FBQ1gsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsYUFBNEIsQ0FBQztRQUVuRSw2Q0FBNkM7UUFDN0Msd0JBQXdCO1FBQ3hCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixFQUFFLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDckMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLENBQVEsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDL0MsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVELElBQUksQ0FBQyxJQUFJLENB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QVMsRUFDVCxHQUFpQixFQUNqQixTQUFzQixFQUFFLEVBQ3hCLEVBQWdCLEVBQ2xCLEVBQUU7SUFDQSw2REFBNkQ7SUFFN0QsR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3JCLEdBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUV0QixrQkFBa0I7SUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTO1FBQ2pCLE1BQU0sQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDO0lBRS9CLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxFQUFFLElBQUksR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUV2QyxPQUFPLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ3JCLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3ZCLElBQUksRUFBRTtnQkFDRixJQUFJLEVBQUUsSUFBSTtnQkFDVixLQUFLLEVBQUUsU0FBUztnQkFDaEIsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsRUFBRSxFQUFFLFVBQVU7YUFDakI7WUFDRCxVQUFVLEVBQUUsQ0FBQyxVQUFVLEVBQUUsTUFBTSxHQUFHLFVBQVUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsV0FBVyxJQUFJLEVBQUUsQ0FBQztZQUMvRSxRQUFRLEVBQUUsS0FBSztZQUNmLGFBQWEsRUFBRSxtQkFBbUI7U0FDckMsQ0FBQzthQUNELFdBQVcsRUFBRTthQUNiLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNYLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNYLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQyxDQUFpQixDQUFDO0FBQ3ZCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBnZXRQb3NpdGlvbiB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgTWVudUl0ZW0sIE1lbnVPcHRpb25zIH0gZnJvbSAnLi4vdHlwZXMvbWVudSc7XG5pbXBvcnQgeyBNZW51Q29tcG9uZW50LCBjYWxjTWVudUl0ZW1Cb3VuZHMgfSBmcm9tICcuLi9jb21wb25lbnRzL21lbnUvbWVudS5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tuZ3gtY29udGV4dG1lbnVdLFtuZ3gtbWVudV0sW25neENvbnRleHRtZW51XSxbbmd4TWVudV0nLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBNYXREaWFsb2dcbiAgICBdLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgTWVudURpcmVjdGl2ZSB7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGF0YSByZXByZXNlbnRpbmcgdGhlIGl0ZW0gdGhlIG1lbnUgd2FzIG9wZW5lZCBmb3IuXG4gICAgICovXG4gICAgQElucHV0KFwibmd4TWVudUNvbnRleHRcIilcbiAgICBASW5wdXQoXCJuZ3gtbWVudS1jb250ZXh0XCIpIGRhdGE6IGFueTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBpdGVtcyB0aGF0IHdpbGwgYmUgYm91bmQgdG8gdGhlIGNvbnRleHQgbWVudS5cbiAgICAgKi9cbiAgICBASW5wdXQoXCJuZ3hDb250ZXh0bWVudVwiKVxuICAgIEBJbnB1dChcIm5neC1jb250ZXh0bWVudVwiKSBjdHhNZW51SXRlbXM6IE1lbnVJdGVtW107XG5cbiAgICAvKipcbiAgICAgKiBUaGUgaXRlbXMgdGhhdCB3aWxsIGJlIGJvdW5kIHRvIHRoZSBtZW51IHRoYXQgcG9wc1xuICAgICAqIHVwIHdoZW4gdGhlIHVzZXIgY2xpY2tzIHRoZSBlbGVtZW50LlxuICAgICAqL1xuICAgIEBJbnB1dChcIm5neE1lbnVcIilcbiAgICBASW5wdXQoXCJuZ3gtbWVudVwiKSBtZW51SXRlbXM6IE1lbnVJdGVtW107XG5cbiAgICAvKipcbiAgICAgKiBDb25maWd1cmF0aW9uIGZvciBvcGVuaW5nIHRoZSBhcHAgbWVudVxuICAgICAqL1xuICAgIEBJbnB1dChcIm5neE1lbnVDb25maWdcIilcbiAgICBASW5wdXQoXCJuZ3gtbWVudS1jb25maWdcIikgY29uZmlnOiBNZW51T3B0aW9ucyA9IHt9O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2csXG4gICAgICAgIHByaXZhdGUgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZlxuICAgICkgeyB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIGNvbnN0IGVsID0gdGhpcy52aWV3Q29udGFpbmVyLmVsZW1lbnQubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcblxuICAgICAgICAvLyBBdXRvbWF0aWNhbGx5IGF0dGFjaCBjb250ZXh0IG1lbnUgaXRlbXMgdG9cbiAgICAgICAgLy8gdGhlIGNvbnRleHRtZW51IGV2ZW50XG4gICAgICAgIGlmICh0aGlzLmN0eE1lbnVJdGVtcykge1xuICAgICAgICAgICAgZWwub25jbGljayA9IHRoaXMub3Blbk1lbnUuYmluZCh0aGlzKTtcbiAgICAgICAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NvbnRleHRtZW51JywgKGUpID0+IHtcbiAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgdGhpcy5vcGVuTWVudShlIGFzIGFueSwgdGhpcy5jdHhNZW51SXRlbXMpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMuY29uZmlnPy50cmlnZ2VyKSB7XG4gICAgICAgICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMub3Blbk1lbnUuYmluZCh0aGlzKSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCB0cmlnZ2VycyA9IEFycmF5LmlzQXJyYXkodGhpcy5jb25maWcudHJpZ2dlcikgPyB0aGlzLmNvbmZpZy50cmlnZ2VyIDogW3RoaXMuY29uZmlnLnRyaWdnZXJdO1xuXG4gICAgICAgICAgICB0cmlnZ2Vycy5mb3JFYWNoKHQgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0ID09IFwiY29udGV4dG1lbnVcIikge1xuICAgICAgICAgICAgICAgICAgICBlbC5hZGRFdmVudExpc3RlbmVyKHQsIChlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9wZW5NZW51KGUgYXMgYW55LCB0aGlzLmN0eE1lbnVJdGVtcyk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgZWwuYWRkRXZlbnRMaXN0ZW5lcih0LCB0aGlzLm9wZW5NZW51LmJpbmQodGhpcykpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgb3Blbk1lbnUoZXZ0OiBQb2ludGVyRXZlbnQsIGl0ZW1zID0gdGhpcy5tZW51SXRlbXMpIHtcbiAgICAgICAgY29uc3QgZWwgPSB0aGlzLnZpZXdDb250YWluZXIuZWxlbWVudC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgIGVsLmNsYXNzTGlzdC5hZGQoXCJuZ3gtbWVudS1vcGVuXCIpO1xuXG4gICAgICAgIGNvbnN0IGlzQ3R4RXZlbnQgPSBldnQuYnV0dG9uID09IDI7XG5cbiAgICAgICAgcmV0dXJuIG9wZW5NZW51KHRoaXMuZGlhbG9nLCBpdGVtcywgdGhpcy5kYXRhLCBldnQsIHRoaXMuY29uZmlnLCBpc0N0eEV2ZW50ID8gbnVsbCA6IGVsKVxuICAgICAgICAgICAgLnRoZW4oKC4uLnJlcykgPT4ge1xuICAgICAgICAgICAgICAgIGVsLmNsYXNzTGlzdC5yZW1vdmUoXCJuZ3gtbWVudS1vcGVuXCIpO1xuICAgICAgICAgICAgICAgIHJldHVybiByZXM7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmNhdGNoKChleCkgPT4ge1xuICAgICAgICAgICAgICAgIGVsLmNsYXNzTGlzdC5yZW1vdmUoXCJuZ3gtbWVudS1vcGVuXCIpO1xuICAgICAgICAgICAgICAgIHRocm93IGV4O1xuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuXG4vLyBIZWxwZXIgdG8gb3BlbiB0aGUgbWVudSB3aXRob3V0IHVzaW5nIHRoZSBkaXJlY3RpdmUuXG5leHBvcnQgY29uc3Qgb3Blbk1lbnUgPSBhc3luYyAoXG4gICAgZGlhbG9nOiBNYXREaWFsb2csXG4gICAgbWVudUl0ZW1zOiBNZW51SXRlbVtdLFxuICAgIGRhdGE6IGFueSxcbiAgICBldnQ6IFBvaW50ZXJFdmVudCxcbiAgICBjb25maWc6IE1lbnVPcHRpb25zID0ge30sXG4gICAgZWw/OiBIVE1MRWxlbWVudFxuKSA9PiB7XG4gICAgLy8gY29uc29sZS5sb2coeyBkaWFsb2csIG1lbnVJdGVtcywgZGF0YSwgZXZ0LCBjb25maWcsIGVsIH0pO1xuXG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgLy8gQXBwbHkgZGVmYXVsdHMuXG4gICAgaWYgKCFjb25maWcuYWxpZ25tZW50KVxuICAgICAgICBjb25maWcuYWxpZ25tZW50ID0gXCJzdGFydFwiO1xuXG4gICAgY29uc3QgY29yZHMgPSBnZXRQb3NpdGlvbihlbCB8fCBldnQsIGNvbmZpZywgYXdhaXQgY2FsY01lbnVJdGVtQm91bmRzKG1lbnVJdGVtcywgZGF0YSkpO1xuICAgIGNvbnN0IHNwZWNpZmljSWQgPSBjcnlwdG8ucmFuZG9tVVVJRCgpO1xuXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlcyA9PiB7XG4gICAgICAgIGRpYWxvZy5vcGVuKE1lbnVDb21wb25lbnQsIHtcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBkYXRhOiBkYXRhLFxuICAgICAgICAgICAgICAgIGl0ZW1zOiBtZW51SXRlbXMsXG4gICAgICAgICAgICAgICAgY29uZmlnOiBjb25maWcsXG4gICAgICAgICAgICAgICAgaWQ6IHNwZWNpZmljSWRcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwYW5lbENsYXNzOiBbXCJuZ3gtbWVudVwiLCAnbmd4LScgKyBzcGVjaWZpY0lkXS5jb25jYXQoY29uZmlnPy5jdXN0b21DbGFzcyB8fCBbXSksXG4gICAgICAgICAgICBwb3NpdGlvbjogY29yZHMsXG4gICAgICAgICAgICBiYWNrZHJvcENsYXNzOiBcIm5neC1tZW51LWJhY2tkcm9wXCJcbiAgICAgICAgfSlcbiAgICAgICAgLmFmdGVyQ2xvc2VkKClcbiAgICAgICAgLnN1YnNjcmliZShzID0+IHtcbiAgICAgICAgICAgIHJlcyhzKTtcbiAgICAgICAgfSlcbiAgICB9KSBhcyBQcm9taXNlPGFueT47XG59O1xuIl19
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2RpcmVjdGl2ZXMvbWVudS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXRDLE9BQU8sRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7O0FBU3RGLE1BQU0sT0FBTyxhQUFhO0lBMkJ0QixZQUNZLE1BQWlCLEVBQ2pCLGFBQStCO1FBRC9CLFdBQU0sR0FBTixNQUFNLENBQVc7UUFDakIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBUjNDOztXQUVHO1FBRXVCLFdBQU0sR0FBZ0IsRUFBRSxDQUFDO0lBSy9DLENBQUM7SUFFTCxlQUFlO1FBQ1gsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsYUFBNEIsQ0FBQztRQUVuRSw2Q0FBNkM7UUFDN0Msd0JBQXdCO1FBQ3hCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixFQUFFLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ3JDLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQy9DLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFFRCxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxPQUFPLEVB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QWlCLEVBQ2pCLFNBQXNCLEVBQUUsRUFDeEIsRUFBZ0IsRUFDbEIsRUFBRTtJQUNBLDZEQUE2RDtJQUU3RCxHQUFHLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDckIsR0FBRyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBRXRCLGtCQUFrQjtJQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVM7UUFDakIsTUFBTSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUM7SUFFL0IsTUFBTSxLQUFLLEdBQUcsV0FBVyxDQUFDLEVBQUUsSUFBSSxHQUFHLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDeEYsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBRXZDLE9BQU8sSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDckIsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdkIsSUFBSSxFQUFFO2dCQUNGLElBQUksRUFBRSxJQUFJO2dCQUNWLEtBQUssRUFBRSxTQUFTO2dCQUNoQixNQUFNLEVBQUUsTUFBTTtnQkFDZCxFQUFFLEVBQUUsVUFBVTthQUNqQjtZQUNELFVBQVUsRUFBRSxDQUFDLFVBQVUsRUFBRSxNQUFNLEdBQUcsVUFBVSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxXQUFXLElBQUksRUFBRSxDQUFDO1lBQy9FLFFBQVEsRUFBRSxLQUFLO1lBQ2YsYUFBYSxFQUFFLG1CQUFtQjtTQUNyQyxDQUFDO2FBQ0QsV0FBVyxFQUFFO2FBQ2IsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ1gsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ1gsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDLENBQWlCLENBQUM7QUFDdkIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IGdldFBvc2l0aW9uIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBNZW51SXRlbSwgTWVudU9wdGlvbnMgfSBmcm9tICcuLi90eXBlcy9tZW51JztcbmltcG9ydCB7IE1lbnVDb21wb25lbnQsIGNhbGNNZW51SXRlbUJvdW5kcyB9IGZyb20gJy4uL2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW25neC1jb250ZXh0bWVudV0sW25neC1tZW51XSxbbmd4Q29udGV4dG1lbnVdLFtuZ3hNZW51XScsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIE1hdERpYWxvZ1xuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBNZW51RGlyZWN0aXZlIHtcblxuICAgIC8qKlxuICAgICAqIFRoZSBkYXRhIHJlcHJlc2VudGluZyB0aGUgaXRlbSB0aGUgbWVudSB3YXMgb3BlbmVkIGZvci5cbiAgICAgKi9cbiAgICBASW5wdXQoXCJuZ3hNZW51Q29udGV4dFwiKVxuICAgIEBJbnB1dChcIm5neC1tZW51LWNvbnRleHRcIikgZGF0YTogYW55O1xuXG4gICAgLyoqXG4gICAgICogVGhlIGl0ZW1zIHRoYXQgd2lsbCBiZSBib3VuZCB0byB0aGUgY29udGV4dCBtZW51LlxuICAgICAqL1xuICAgIEBJbnB1dChcIm5neENvbnRleHRtZW51XCIpXG4gICAgQElucHV0KFwibmd4LWNvbnRleHRtZW51XCIpIGN0eE1lbnVJdGVtczogTWVudUl0ZW1bXTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBpdGVtcyB0aGF0IHdpbGwgYmUgYm91bmQgdG8gdGhlIG1lbnUgdGhhdCBwb3BzXG4gICAgICogdXAgd2hlbiB0aGUgdXNlciBjbGlja3MgdGhlIGVsZW1lbnQuXG4gICAgICovXG4gICAgQElucHV0KFwibmd4TWVudVwiKVxuICAgIEBJbnB1dChcIm5neC1tZW51XCIpIG1lbnVJdGVtczogTWVudUl0ZW1bXTtcblxuICAgIC8qKlxuICAgICAqIENvbmZpZ3VyYXRpb24gZm9yIG9wZW5pbmcgdGhlIGFwcCBtZW51XG4gICAgICovXG4gICAgQElucHV0KFwibmd4TWVudUNvbmZpZ1wiKVxuICAgIEBJbnB1dChcIm5neC1tZW51LWNvbmZpZ1wiKSBjb25maWc6IE1lbnVPcHRpb25zID0ge307XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICAgICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmXG4gICAgKSB7IH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgY29uc3QgZWwgPSB0aGlzLnZpZXdDb250YWluZXIuZWxlbWVudC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgIC8vIEF1dG9tYXRpY2FsbHkgYXR0YWNoIGNvbnRleHQgbWVudSBpdGVtcyB0b1xuICAgICAgICAvLyB0aGUgY29udGV4dG1lbnUgZXZlbnRcbiAgICAgICAgaWYgKHRoaXMuY3R4TWVudUl0ZW1zKSB7XG4gICAgICAgICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdjb250ZXh0bWVudScsIChlKSA9PiB7XG4gICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIHRoaXMub3Blbk1lbnUoZSBhcyBhbnksIHRoaXMuY3R4TWVudUl0ZW1zKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubWVudUl0ZW1zPy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuY29uZmlnPy50cmlnZ2VyKSB7XG4gICAgICAgICAgICAgICAgZWwuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLm9wZW5NZW51LmJpbmQodGhpcykpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdHJpZ2dlcnMgPSBBcnJheS5pc0FycmF5KHRoaXMuY29uZmlnLnRyaWdnZXIpID8gdGhpcy5jb25maWcudHJpZ2dlciA6IFt0aGlzLmNvbmZpZy50cmlnZ2VyXTtcblxuICAgICAgICAgICAgICAgIHRyaWdnZXJzLmZvckVhY2godCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0ID09IFwiY29udGV4dG1lbnVcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgZWwuYWRkRXZlbnRMaXN0ZW5lcih0LCAoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9wZW5NZW51KGUgYXMgYW55LCB0aGlzLmN0eE1lbnVJdGVtcyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIodCwgdGhpcy5vcGVuTWVudS5iaW5kKHRoaXMpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgb3Blbk1lbnUoZXZ0OiBQb2ludGVyRXZlbnQsIGl0ZW1zID0gdGhpcy5tZW51SXRlbXMpIHtcbiAgICAgICAgY29uc3QgZWwgPSB0aGlzLnZpZXdDb250YWluZXIuZWxlbWVudC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgIGVsLmNsYXNzTGlzdC5hZGQoXCJuZ3gtbWVudS1vcGVuXCIpO1xuXG4gICAgICAgIGNvbnN0IGlzQ3R4RXZlbnQgPSBldnQuYnV0dG9uID09IDI7XG5cbiAgICAgICAgcmV0dXJuIG9wZW5NZW51KHRoaXMuZGlhbG9nLCBpdGVtcywgdGhpcy5kYXRhLCBldnQsIHRoaXMuY29uZmlnLCBpc0N0eEV2ZW50ID8gbnVsbCA6IGVsKVxuICAgICAgICAgICAgLnRoZW4oKC4uLnJlcykgPT4ge1xuICAgICAgICAgICAgICAgIGVsLmNsYXNzTGlzdC5yZW1vdmUoXCJuZ3gtbWVudS1vcGVuXCIpO1xuICAgICAgICAgICAgICAgIHJldHVybiByZXM7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmNhdGNoKChleCkgPT4ge1xuICAgICAgICAgICAgICAgIGVsLmNsYXNzTGlzdC5yZW1vdmUoXCJuZ3gtbWVudS1vcGVuXCIpO1xuICAgICAgICAgICAgICAgIHRocm93IGV4O1xuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuXG4vLyBIZWxwZXIgdG8gb3BlbiB0aGUgbWVudSB3aXRob3V0IHVzaW5nIHRoZSBkaXJlY3RpdmUuXG5leHBvcnQgY29uc3Qgb3Blbk1lbnUgPSBhc3luYyAoXG4gICAgZGlhbG9nOiBNYXREaWFsb2csXG4gICAgbWVudUl0ZW1zOiBNZW51SXRlbVtdLFxuICAgIGRhdGE6IGFueSxcbiAgICBldnQ6IFBvaW50ZXJFdmVudCxcbiAgICBjb25maWc6IE1lbnVPcHRpb25zID0ge30sXG4gICAgZWw/OiBIVE1MRWxlbWVudFxuKSA9PiB7XG4gICAgLy8gY29uc29sZS5sb2coeyBkaWFsb2csIG1lbnVJdGVtcywgZGF0YSwgZXZ0LCBjb25maWcsIGVsIH0pO1xuXG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgLy8gQXBwbHkgZGVmYXVsdHMuXG4gICAgaWYgKCFjb25maWcuYWxpZ25tZW50KVxuICAgICAgICBjb25maWcuYWxpZ25tZW50ID0gXCJzdGFydFwiO1xuXG4gICAgY29uc3QgY29yZHMgPSBnZXRQb3NpdGlvbihlbCB8fCBldnQsIGNvbmZpZywgYXdhaXQgY2FsY01lbnVJdGVtQm91bmRzKG1lbnVJdGVtcywgZGF0YSkpO1xuICAgIGNvbnN0IHNwZWNpZmljSWQgPSBjcnlwdG8ucmFuZG9tVVVJRCgpO1xuXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlcyA9PiB7XG4gICAgICAgIGRpYWxvZy5vcGVuKE1lbnVDb21wb25lbnQsIHtcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBkYXRhOiBkYXRhLFxuICAgICAgICAgICAgICAgIGl0ZW1zOiBtZW51SXRlbXMsXG4gICAgICAgICAgICAgICAgY29uZmlnOiBjb25maWcsXG4gICAgICAgICAgICAgICAgaWQ6IHNwZWNpZmljSWRcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwYW5lbENsYXNzOiBbXCJuZ3gtbWVudVwiLCAnbmd4LScgKyBzcGVjaWZpY0lkXS5jb25jYXQoY29uZmlnPy5jdXN0b21DbGFzcyB8fCBbXSksXG4gICAgICAgICAgICBwb3NpdGlvbjogY29yZHMsXG4gICAgICAgICAgICBiYWNrZHJvcENsYXNzOiBcIm5neC1tZW51LWJhY2tkcm9wXCJcbiAgICAgICAgfSlcbiAgICAgICAgLmFmdGVyQ2xvc2VkKClcbiAgICAgICAgLnN1YnNjcmliZShzID0+IHtcbiAgICAgICAgICAgIHJlcyhzKTtcbiAgICAgICAgfSlcbiAgICB9KSBhcyBQcm9taXNlPGFueT47XG59O1xuIl19
@@ -44,4 +44,9 @@ export * from './components/dynamic-html/dynamic-html.service';
44
44
  export * from './components/dynamic-html/dynamic-html.module';
45
45
  export * from './components/dynamic-html/dynamic-html.component';
46
46
  export * from './components/dynamic-html/types';
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVIOztHQUVHO0FBQ0gsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxlQUFlLENBQUM7QUFFOUI7O0dBRUc7QUFDSCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsNkJBQTZCLENBQUM7QUFFNUM7O0dBRUc7QUFDSCxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUM7QUFFeEM7O0VBRUU7QUFDRixjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLG9EQUFvRDtBQUVwRDs7RUFFRTtBQUNGLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsZ0NBQWdDLENBQUM7QUFFL0M7O0VBRUU7QUFDRixjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBwYWNrYWdlXG4gKi9cblxuLyoqXG4gKiogVHlwZXNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9tZW51JztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvcG9wdXAnO1xuXG4vKipcbiAqKiBEaXJlY3RpdmVzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy90b29sdGlwLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvbWVudS5kaXJlY3RpdmUnO1xuXG4vKipcbiAqKiBQaXBlc1xuICovXG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL2h0bWwtYnlwYXNzLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9yZXNvdXJjZS1ieXBhc3MucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL3NjcmlwdC1ieXBhc3MucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL3N0eWxlLWJ5cGFzcy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvdXJsLWJ5cGFzcy5waXBlJztcblxuLyoqXG4qKiBTZXJ2aWNlc1xuKi9cbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvZGVwZW5kZW5jeS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvZGlhbG9nLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9mZXRjaC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMva2V5Ym9hcmQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2ZpbGUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL3RoZW1lLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuLy8gZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9zZXJ2aWNld29ya2VyLnNlcnZpY2UnO1xuXG4vKipcbioqIExhenkgbG9hZGVyIGNvbXBvbmVudCAmIHNlcnZpY2VcbiovXG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvbGF6eS1sb2FkZXIvbGF6eS1sb2FkZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvbGF6eS1sb2FkZXIvbGF6eS1sb2FkZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9sYXp5LWxvYWRlci9sYXp5LWxvYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2xhenktbG9hZGVyL3R5cGVzJztcblxuLyoqXG4qKiBTZXJ2aWNlc1xuKi9cbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9keW5hbWljLWh0bWwvZHluYW1pYy1odG1sLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2R5bmFtaWMtaHRtbC9keW5hbWljLWh0bWwubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9keW5hbWljLWh0bWwvZHluYW1pYy1odG1sLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvZHluYW1pYy1odG1sL3R5cGVzJztcbiJdfQ==
47
+ export * from './components/filemanager/filemanager.component';
48
+ // export * from './components/music-library/music-library.component';
49
+ export * from './components/tabulator/tabulator.component';
50
+ export * from './components/vscode/vscode.component';
51
+ export * from './components/types';
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVIOztHQUVHO0FBQ0gsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxlQUFlLENBQUM7QUFFOUI7O0dBRUc7QUFDSCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsNkJBQTZCLENBQUM7QUFFNUM7O0dBRUc7QUFDSCxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUM7QUFFeEM7O0VBRUU7QUFDRixjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLG9EQUFvRDtBQUVwRDs7RUFFRTtBQUNGLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsZ0NBQWdDLENBQUM7QUFFL0M7O0VBRUU7QUFDRixjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLGlDQUFpQyxDQUFDO0FBSWhELGNBQWMsZ0RBQWdELENBQUM7QUFDL0Qsc0VBQXNFO0FBQ3RFLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBwYWNrYWdlXG4gKi9cblxuLyoqXG4gKiogVHlwZXNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9tZW51JztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvcG9wdXAnO1xuXG4vKipcbiAqKiBEaXJlY3RpdmVzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy90b29sdGlwLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvbWVudS5kaXJlY3RpdmUnO1xuXG4vKipcbiAqKiBQaXBlc1xuICovXG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL2h0bWwtYnlwYXNzLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9yZXNvdXJjZS1ieXBhc3MucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL3NjcmlwdC1ieXBhc3MucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpcGVzL3N0eWxlLWJ5cGFzcy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMvdXJsLWJ5cGFzcy5waXBlJztcblxuLyoqXG4qKiBTZXJ2aWNlc1xuKi9cbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvZGVwZW5kZW5jeS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvZGlhbG9nLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9mZXRjaC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMva2V5Ym9hcmQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2ZpbGUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL3RoZW1lLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuLy8gZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9zZXJ2aWNld29ya2VyLnNlcnZpY2UnO1xuXG4vKipcbioqIExhenkgbG9hZGVyIGNvbXBvbmVudCAmIHNlcnZpY2VcbiovXG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvbGF6eS1sb2FkZXIvbGF6eS1sb2FkZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvbGF6eS1sb2FkZXIvbGF6eS1sb2FkZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9sYXp5LWxvYWRlci9sYXp5LWxvYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2xhenktbG9hZGVyL3R5cGVzJztcblxuLyoqXG4qKiBTZXJ2aWNlc1xuKi9cbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9keW5hbWljLWh0bWwvZHluYW1pYy1odG1sLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2R5bmFtaWMtaHRtbC9keW5hbWljLWh0bWwubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9keW5hbWljLWh0bWwvZHluYW1pYy1odG1sLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvZHluYW1pYy1odG1sL3R5cGVzJztcblxuXG5cbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9maWxlbWFuYWdlci9maWxlbWFuYWdlci5jb21wb25lbnQnO1xuLy8gZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL211c2ljLWxpYnJhcnkvbXVzaWMtbGlicmFyeS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL3RhYnVsYXRvci90YWJ1bGF0b3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy92c2NvZGUvdnNjb2RlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvdHlwZXMnO1xuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvdHlwZXMvbWVudS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVtcGxhdGVSZWYsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBvcHVwT3B0aW9ucyB9IGZyb20gJy4vcG9wdXAnO1xuXG50eXBlIE1lbnVUcmlnZ2VyID0gXCJjbGlja1wiIHwgXCJkYmxjbGlja1wiIHwgXCJob3ZlclwiIHwgXCJjb250ZXh0bWVudVwiO1xuXG5leHBvcnQgdHlwZSBNZW51T3B0aW9ucyA9IFBhcnRpYWw8UG9wdXBPcHRpb25zICYge1xuICAgIC8qKlxuICAgICAqIFdoaWNoIGV2ZW50IHNob3VsZCB0cmlnZ2VyIHRoZSBhcHAgbWVudS5cbiAgICAgKi9cbiAgICB0cmlnZ2VyOiBNZW51VHJpZ2dlciB8IE1lbnVUcmlnZ2VyW107XG59PjtcblxudHlwZSBCYXNlTWVudUl0ZW08VCA9IGFueT4gPSB7XG4gICAgLyoqXG4gICAgICogTGFiZWwgZm9yIHRoZSBtZW51LWl0ZW1cbiAgICAgKi9cbiAgICBsYWJlbD86IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogQ3VzdG9tIGFuZ3VsYXIgdGVtcGxhdGUgdG8gdXNlIGZvciB0aGUgbGFiZWxcbiAgICAgKiBBbHRlcm5hdGl2ZWx5IGFjY2VwdHMgYSBsYW1iZGEgZnVuY3Rpb25cbiAgICAgKi9cbiAgICBsYWJlbFRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PiB8ICgoZGF0YTogVCkgPT4gc3RyaW5nKVxuXG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgbWV0aG9kIHRoYXQgaXMgY2FsbGVkIHdoZW4gYSB1c2VyIGFjdGl2YXRlc1xuICAgICAqIGEgY29udGV4dC1tZW51IGl0ZW0uXG4gICAgICogVXNlIHRoZSBgY29udGV4dE1lbnVEYXRhYCBkZWNvcmF0b3IgZm9yIHBhc3NpbmcgZGF0YS5cbiAgICAgKi9cbiAgICBhY3Rpb24/OiAoZGF0YTogVCkgPT4gYW55LFxuXG4gICAgLyoqXG4gICAgICogSW5zdGVhZCBvZiBhbiBhY3Rpb24sIHRoaXMgaXRlbSBjYW4gYmUgYSBoeXBlcmxpbmsgcG9pbnRpbmcgdG8gdGhpcyBVUkxcbiAgICAgKiB3d3cuZXhhbXBsZS5jb20vZm9vL2Jhci56aXBcbiAgICAgKi9cbiAgICBsaW5rPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogV2hlbiBoYXZpbmcgYSBjb25maWd1cmVkIGBsaW5rYCBwcm9wZXJ0eSwgdGhpcyBzcGVjaWZpZXMgdGhlIGB0YXJnZXRgXG4gICAgICogYXR0cmlidXRlIGFwcGxpZWQgdG8gdGhlIGxpbmtcbiAgICAgKi9cbiAgICBsaW5rVGFyZ2V0PzogXCJfYmxhbmtcIiB8IFwiX3NlbGZcIiB8IFwiX3BhcmVudFwiIHwgXCJfdG9wXCIsIC8vIFwiZnJhbWVuYW1lXCJcblxuICAgIC8qKlxuICAgICAqIEN1c3RvbSB0ZW1wbGF0ZSBmdW5jdGlvbiBmb3IgcmVzb2x2aW5nIGEgbGluayB3aGVuIHRoZSBjb250ZXh0IG1lbnVcbiAgICAgKiBpcyBvcGVuZWRcbiAgICAgKi9cbiAgICBsaW5rVGVtcGxhdGU/OiAoKGRhdGE6IFQpID0+IHN0cmluZyksXG5cbiAgICAvKipcbiAgICAgKiBDYWxsYmFjayBtZXRob2QgdGhhdCBpcyBjYWxsZWQgdXBvbiBhIGNvbnRleHQgbWVudSBhY3RpdmF0aW9uXG4gICAgICogdGhhdCB3aGVuIGl0IHJldHVybnMgdHJ1ZSwgd2lsbCBzaG93IHRoZSBpdGVtIGFzIGRpc2FibGVkLlxuICAgICAqL1xuICAgIGlzRGlzYWJsZWQ/OiAoZGF0YTogVCkgPT4gYm9vbGVhbixcblxuICAgIC8qKlxuICAgICAqIENhbGxiYWNrIG1ldGhvZCB0aGF0IGlzIGNhbGxlZCB1cG9uIGEgY29udGV4dCBtZW51IGFjdGl2YXRpb25cbiAgICAgKiB0aGF0IHdoZW4gcmV0dXJuaW5nIGZhbHNlLCB3aWxsIGhpZGUgdGhlIG1lbnUgaXRlbS5cbiAgICAgKi9cbiAgICBpc1Zpc2libGU/OiAoZGF0YTogVCkgPT4gYm9vbGVhbixcblxuICAgIC8qKlxuICAgICAqIElmIGEgc2hvcnRjdXQgaXMgc2V0LCB0aGUgdGV4dC1sYWJlbC5cbiAgICAgKi9cbiAgICBzaG9ydGN1dExhYmVsPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogS2V5Ym9hcmQgc2hvcnRjdXQgdG8gYWN0aXZhdGUgdGhpcyBpdGVtLlxuICAgICAqL1xuICAgIC8vIHNob3J0Y3V0PzogS2V5Q29tbWFuZCxcblxuICAgIC8qKlxuICAgICAqIEljb24gdG8gcmVuZGVyIG9uIHRoZSBsZWZ0IHNpZGUgb2YgdGhlIGl0ZW0uXG4gICAgICogQ2FuIGJlIGEgVVJML1VSSSAobXVzdCBpbmNsdWRlIGV4dGVuc2lvbilcbiAgICAgKiBPciBjYW4gYmUgYSBtYXRlcmlhbCBpY29uIGlkZW50aWZpZXIuXG4gICAgICovXG4gICAgaWNvbj86IHN0cmluZyxcblxuICAgIC8qKlxuICAgICAqIE9wdGlvbmFsIGNoaWxkIG1lbnVcbiAgICAgKi9cbiAgICBjaGlsZHJlbj86IE1lbnVJdGVtPFQ+W10sXG5cbiAgICAvKipcbiAgICAgKiBPcHRpb25hbCByZXNvbHZlciB0aGF0IGR5bmFtaWNhbGx5IGxvYWRzIHRoZSBjb250ZW50c1xuICAgICAqIGZvciB0aGUgbWVudSBpdGVtLlxuICAgICAqIENhbiBiZSB1c2VkIHRvIGR5bmFtaWNhbGx5IGRldGVybWluZSB0aGUgc3VibWVudSBjb250ZW50c1xuICAgICAqL1xuICAgIGNoaWxkcmVuUmVzb2x2ZXI/OiAoZGF0YTogVCkgPT4gUHJvbWlzZTxNZW51SXRlbTxUPltdPixcblxuICAgIC8qKlxuICAgICAqIElmIGBjaGlsZHJlblJlc29sdmVyYCBpcyBwcm92aWRlZCwgZGlzYWJsZSBjYWNoaW5nIG9mXG4gICAgICogdGhlIHJlc29sdmVkIGNoaWxkcmVuLlxuICAgICAqL1xuICAgIGNhY2hlUmVzb2x2ZWRDaGlsZHJlbj86IGJvb2xlYW4sXG5cbiAgICAvKipcbiAgICAgKiBJbnN0ZWFkIG9mIGFuIGFycmF5IG9mIGNoaWxkcmVuLCByZW5kZXIgYSB0ZW1wbGF0ZVxuICAgICAqL1xuICAgIGNoaWxkVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxUPiB8IFR5cGU8YW55PixcblxuICAgIC8qKlxuICAgICAqIFRoaXMgaXRlbSBpcyBhIHNlcGFyYXRvci5cbiAgICAgKiBDYW4gYmUgdXNlZCB3aXRoIGxhYmVsIHRvIG1ha2UgYSBsYWJlbCBzZXBhcmF0b3IuXG4gICAgICovXG4gICAgc2VwYXJhdG9yPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIE1lbnVJdGVtPFQgPSBhbnk+ID1cbiAgICBCYXNlTWVudUl0ZW08VD4gfFxuICAgIFwic2VwYXJhdG9yXCI7XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvdHlwZXMvbWVudS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVtcGxhdGVSZWYsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBvcHVwT3B0aW9ucyB9IGZyb20gJy4vcG9wdXAnO1xuXG50eXBlIE1lbnVUcmlnZ2VyID0gXCJjbGlja1wiIHwgXCJkYmxjbGlja1wiIHwgXCJob3ZlclwiIHwgXCJjb250ZXh0bWVudVwiO1xuXG5leHBvcnQgdHlwZSBNZW51T3B0aW9ucyA9IFBhcnRpYWw8UG9wdXBPcHRpb25zICYge1xuICAgIC8qKlxuICAgICAqIFdoaWNoIGV2ZW50IHNob3VsZCB0cmlnZ2VyIHRoZSBhcHAgbWVudS5cbiAgICAgKi9cbiAgICB0cmlnZ2VyOiBNZW51VHJpZ2dlciB8IE1lbnVUcmlnZ2VyW107XG59PjtcblxudHlwZSBCYXNlTWVudUl0ZW08VCA9IGFueT4gPSB7XG4gICAgLyoqXG4gICAgICogTGFiZWwgZm9yIHRoZSBtZW51LWl0ZW1cbiAgICAgKi9cbiAgICBsYWJlbD86IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogQ3VzdG9tIGFuZ3VsYXIgdGVtcGxhdGUgdG8gdXNlIGZvciB0aGUgbGFiZWxcbiAgICAgKiBBbHRlcm5hdGl2ZWx5IGFjY2VwdHMgYSBsYW1iZGEgZnVuY3Rpb25cbiAgICAgKi9cbiAgICBsYWJlbFRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PiB8ICgoZGF0YTogVCkgPT4gc3RyaW5nKVxuXG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgbWV0aG9kIHRoYXQgaXMgY2FsbGVkIHdoZW4gYSB1c2VyIGFjdGl2YXRlc1xuICAgICAqIGEgY29udGV4dC1tZW51IGl0ZW0uXG4gICAgICogVXNlIHRoZSBgY29udGV4dE1lbnVEYXRhYCBkZWNvcmF0b3IgZm9yIHBhc3NpbmcgZGF0YS5cbiAgICAgKi9cbiAgICBhY3Rpb24/OiAoZGF0YTogVCkgPT4gYW55LFxuXG4gICAgLyoqXG4gICAgICogSW5zdGVhZCBvZiBhbiBhY3Rpb24sIHRoaXMgaXRlbSBjYW4gYmUgYSBoeXBlcmxpbmsgcG9pbnRpbmcgdG8gdGhpcyBVUkxcbiAgICAgKiB3d3cuZXhhbXBsZS5jb20vZm9vL2Jhci56aXBcbiAgICAgKi9cbiAgICBsaW5rPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogV2hlbiBoYXZpbmcgYSBjb25maWd1cmVkIGBsaW5rYCBwcm9wZXJ0eSwgdGhpcyBzcGVjaWZpZXMgdGhlIGB0YXJnZXRgXG4gICAgICogYXR0cmlidXRlIGFwcGxpZWQgdG8gdGhlIGxpbmtcbiAgICAgKi9cbiAgICBsaW5rVGFyZ2V0PzogXCJfYmxhbmtcIiB8IFwiX3NlbGZcIiB8IFwiX3BhcmVudFwiIHwgXCJfdG9wXCIsIC8vIFwiZnJhbWVuYW1lXCJcblxuICAgIC8qKlxuICAgICAqIEN1c3RvbSB0ZW1wbGF0ZSBmdW5jdGlvbiBmb3IgcmVzb2x2aW5nIGEgbGluayB3aGVuIHRoZSBjb250ZXh0IG1lbnVcbiAgICAgKiBpcyBvcGVuZWRcbiAgICAgKi9cbiAgICBsaW5rVGVtcGxhdGU/OiAoKGRhdGE6IFQpID0+IHN0cmluZyksXG5cbiAgICAvKipcbiAgICAgKiBDYWxsYmFjayBtZXRob2QgdGhhdCBpcyBjYWxsZWQgdXBvbiBhIGNvbnRleHQgbWVudSBhY3RpdmF0aW9uXG4gICAgICogdGhhdCB3aGVuIGl0IHJldHVybnMgdHJ1ZSwgd2lsbCBzaG93IHRoZSBpdGVtIGFzIGRpc2FibGVkLlxuICAgICAqL1xuICAgIGlzRGlzYWJsZWQ/OiAoZGF0YTogVCkgPT4gYm9vbGVhbixcblxuICAgIC8qKlxuICAgICAqIENhbGxiYWNrIG1ldGhvZCB0aGF0IGlzIGNhbGxlZCB1cG9uIGEgY29udGV4dCBtZW51IGFjdGl2YXRpb25cbiAgICAgKiB0aGF0IHdoZW4gcmV0dXJuaW5nIGZhbHNlLCB3aWxsIGhpZGUgdGhlIG1lbnUgaXRlbS5cbiAgICAgKi9cbiAgICBpc1Zpc2libGU/OiAoZGF0YTogVCkgPT4gYm9vbGVhbixcblxuICAgIC8qKlxuICAgICAqIElmIGEgc2hvcnRjdXQgaXMgc2V0LCB0aGUgdGV4dC1sYWJlbC5cbiAgICAgKi9cbiAgICBzaG9ydGN1dExhYmVsPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogS2V5Ym9hcmQgc2hvcnRjdXQgdG8gYWN0aXZhdGUgdGhpcyBpdGVtLlxuICAgICAqL1xuICAgIC8vIHNob3J0Y3V0PzogS2V5Q29tbWFuZCxcblxuICAgIC8qKlxuICAgICAqIEljb24gdG8gcmVuZGVyIG9uIHRoZSBsZWZ0IHNpZGUgb2YgdGhlIGl0ZW0uXG4gICAgICogQ2FuIGJlIGEgVVJML1VSSSAobXVzdCBpbmNsdWRlIGV4dGVuc2lvbilcbiAgICAgKiBPciBjYW4gYmUgYSBtYXRlcmlhbCBpY29uIGlkZW50aWZpZXIuXG4gICAgICovXG4gICAgaWNvbj86IHN0cmluZyxcblxuICAgIC8qKlxuICAgICAqIENTUyBjb2xvciBzdHJpbmcgdG8gYXBwbHkgb24gdGhlIG1hdCBpY29uXG4gICAgICovXG4gICAgaWNvbkNvbG9yPzogc3RyaW5nLFxuXG4gICAgLyoqXG4gICAgICogT3B0aW9uYWwgY2hpbGQgbWVudVxuICAgICAqL1xuICAgIGNoaWxkcmVuPzogTWVudUl0ZW08VD5bXSxcblxuICAgIC8qKlxuICAgICAqIE9wdGlvbmFsIHJlc29sdmVyIHRoYXQgZHluYW1pY2FsbHkgbG9hZHMgdGhlIGNvbnRlbnRzXG4gICAgICogZm9yIHRoZSBtZW51IGl0ZW0uXG4gICAgICogQ2FuIGJlIHVzZWQgdG8gZHluYW1pY2FsbHkgZGV0ZXJtaW5lIHRoZSBzdWJtZW51IGNvbnRlbnRzXG4gICAgICovXG4gICAgY2hpbGRyZW5SZXNvbHZlcj86IChkYXRhOiBUKSA9PiBQcm9taXNlPE1lbnVJdGVtPFQ+W10+LFxuXG4gICAgLyoqXG4gICAgICogSWYgYGNoaWxkcmVuUmVzb2x2ZXJgIGlzIHByb3ZpZGVkLCBkaXNhYmxlIGNhY2hpbmcgb2ZcbiAgICAgKiB0aGUgcmVzb2x2ZWQgY2hpbGRyZW4uXG4gICAgICovXG4gICAgY2FjaGVSZXNvbHZlZENoaWxkcmVuPzogYm9vbGVhbixcblxuICAgIC8qKlxuICAgICAqIEluc3RlYWQgb2YgYW4gYXJyYXkgb2YgY2hpbGRyZW4sIHJlbmRlciBhIHRlbXBsYXRlXG4gICAgICovXG4gICAgY2hpbGRUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPFQ+IHwgVHlwZTxhbnk+LFxuXG4gICAgLyoqXG4gICAgICogVGhpcyBpdGVtIGlzIGEgc2VwYXJhdG9yLlxuICAgICAqIENhbiBiZSB1c2VkIHdpdGggbGFiZWwgdG8gbWFrZSBhIGxhYmVsIHNlcGFyYXRvci5cbiAgICAgKi9cbiAgICBzZXBhcmF0b3I/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgTWVudUl0ZW08VCA9IGFueT4gPVxuICAgIEJhc2VNZW51SXRlbTxUPiB8XG4gICAgXCJzZXBhcmF0b3JcIjtcbiJdfQ==