@osovitny/anatoly 3.16.63 → 3.16.64

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 (59) hide show
  1. package/esm2022/lib/iam/pages/signin.page.mjs +3 -3
  2. package/esm2022/lib/iam/pages/signout.page.mjs +3 -3
  3. package/esm2022/lib/iam/pages/signup.page.mjs +3 -3
  4. package/esm2022/lib/ui/components/base/component.mjs +65 -0
  5. package/esm2022/lib/ui/components/base/dialog.mjs +67 -0
  6. package/esm2022/lib/ui/components/base/edit.component.mjs +135 -0
  7. package/esm2022/lib/ui/components/base/list.mjs +69 -0
  8. package/esm2022/lib/ui/components/base/page.mjs +31 -0
  9. package/esm2022/lib/ui/components/base/paged.page.mjs +66 -0
  10. package/esm2022/lib/ui/components/html-editor/base-html-editor.component.mjs +6 -6
  11. package/esm2022/lib/ui/components/html-editor/forms-html-editor.component.mjs +4 -4
  12. package/esm2022/lib/ui/components/html-editor/html-editor.component.mjs +4 -4
  13. package/esm2022/lib/ui/components/identity/signin-button.component.mjs +3 -3
  14. package/esm2022/lib/ui/components/identity/signout-button.component.mjs +3 -3
  15. package/esm2022/lib/ui/components/identity/signup-button.component.mjs +3 -3
  16. package/esm2022/lib/ui/components/index.mjs +8 -8
  17. package/esm2022/lib/ui/components/spinners/loading/loading.component.mjs +3 -3
  18. package/esm2022/lib/ui/components/spinners/pagespinner/pagespinner.component.mjs +1 -1
  19. package/esm2022/lib/ui/dialogs/contact-us/contact-us.dialog.mjs +3 -3
  20. package/esm2022/lib/ui/forms/components/address/address.component.mjs +3 -3
  21. package/esm2022/lib/ui/forms/components/company/company.component.mjs +3 -3
  22. package/esm2022/lib/ui/forms/components/dropdownlists/timezone/timezone.dropdownlist.mjs +3 -3
  23. package/esm2022/lib/ui/forms/components/urlslug/urlslug.component.mjs +3 -3
  24. package/esm2022/lib/ui/forms/contact-us/contact-us.mjs +3 -3
  25. package/esm2022/lib/ui/validation/validation-summary.component.mjs +4 -4
  26. package/fesm2022/osovitny-anatoly.mjs +540 -539
  27. package/fesm2022/osovitny-anatoly.mjs.map +1 -1
  28. package/lib/iam/pages/signin.page.d.ts +2 -2
  29. package/lib/iam/pages/signout.page.d.ts +2 -2
  30. package/lib/iam/pages/signup.page.d.ts +2 -2
  31. package/lib/ui/components/base/{base.component.d.ts → component.d.ts} +3 -3
  32. package/lib/ui/components/base/{base.dialog.d.ts → dialog.d.ts} +4 -4
  33. package/lib/ui/components/base/{base-edit.component.d.ts → edit.component.d.ts} +4 -4
  34. package/lib/ui/components/base/{base.list.d.ts → list.d.ts} +4 -4
  35. package/lib/ui/components/base/page.d.ts +6 -0
  36. package/lib/ui/components/base/{base.paged.page.d.ts → paged.page.d.ts} +4 -4
  37. package/lib/ui/components/html-editor/base-html-editor.component.d.ts +4 -4
  38. package/lib/ui/components/html-editor/forms-html-editor.component.d.ts +2 -2
  39. package/lib/ui/components/html-editor/html-editor.component.d.ts +2 -2
  40. package/lib/ui/components/identity/signin-button.component.d.ts +2 -2
  41. package/lib/ui/components/identity/signout-button.component.d.ts +2 -2
  42. package/lib/ui/components/identity/signup-button.component.d.ts +2 -2
  43. package/lib/ui/components/index.d.ts +6 -6
  44. package/lib/ui/components/spinners/loading/loading.component.d.ts +2 -2
  45. package/lib/ui/dialogs/contact-us/contact-us.dialog.d.ts +2 -2
  46. package/lib/ui/forms/components/address/address.component.d.ts +2 -2
  47. package/lib/ui/forms/components/company/company.component.d.ts +2 -2
  48. package/lib/ui/forms/components/dropdownlists/timezone/timezone.dropdownlist.d.ts +2 -2
  49. package/lib/ui/forms/components/urlslug/urlslug.component.d.ts +2 -2
  50. package/lib/ui/forms/contact-us/contact-us.d.ts +2 -2
  51. package/lib/ui/validation/validation-summary.component.d.ts +2 -2
  52. package/package.json +1 -1
  53. package/esm2022/lib/ui/components/base/base-edit.component.mjs +0 -135
  54. package/esm2022/lib/ui/components/base/base.component.mjs +0 -65
  55. package/esm2022/lib/ui/components/base/base.dialog.mjs +0 -67
  56. package/esm2022/lib/ui/components/base/base.list.mjs +0 -69
  57. package/esm2022/lib/ui/components/base/base.page.mjs +0 -31
  58. package/esm2022/lib/ui/components/base/base.paged.page.mjs +0 -66
  59. package/lib/ui/components/base/base.page.d.ts +0 -6
@@ -18,10 +18,10 @@
18
18
  */
19
19
  //Node
20
20
  import { Component } from '@angular/core';
21
- import { BasePage } from '../../ui/components/base/base.page';
21
+ import { PageBase } from '../../ui/components/base/page';
22
22
  import * as i0 from "@angular/core";
23
23
  import * as i1 from "../services/auth.service";
24
- export class SignInPage extends BasePage {
24
+ export class SignInPage extends PageBase {
25
25
  auth;
26
26
  constructor(auth) {
27
27
  super();
@@ -37,4 +37,4 @@ export class SignInPage extends BasePage {
37
37
  type: Component,
38
38
  args: [{ selector: 'iam-signin-page', template: "" }]
39
39
  }], function () { return [{ type: i1.AuthService }]; }, null); })();
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmluLnBhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvaWFtL3BhZ2VzL3NpZ25pbi5wYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSWxELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7O0FBTTlELE1BQU0sT0FBTyxVQUFXLFNBQVEsUUFBUTtJQUNsQjtJQUFwQixZQUFvQixJQUFpQjtRQUNuQyxLQUFLLEVBQUUsQ0FBQztRQURVLFNBQUksR0FBSixJQUFJLENBQWE7SUFFckMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3BCLENBQUM7b0VBUFUsVUFBVTs2REFBVixVQUFVOzt1RkFBVixVQUFVO2NBSnRCLFNBQVM7MkJBQ0UsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDIwIFNlcCAyMDIzXHJcblxyXG4gIERlc2NyaXB0aW9uOlxyXG4gICAgSWRlbnRpdHkgYW5kIEFjY2VzcyBNYW5hZ2VtZW50XHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIyIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IEJhc2VQYWdlIH0gZnJvbSAnLi4vLi4vdWkvY29tcG9uZW50cy9iYXNlL2Jhc2UucGFnZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lhbS1zaWduaW4tcGFnZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZ25pbi5wYWdlLmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaWduSW5QYWdlIGV4dGVuZHMgQmFzZVBhZ2UgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXV0aDogQXV0aFNlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuYXV0aC5sb2dpbigpO1xyXG4gIH1cclxufVxyXG4iXX0=
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmluLnBhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvaWFtL3BhZ2VzL3NpZ25pbi5wYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSWxELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7O0FBTXpELE1BQU0sT0FBTyxVQUFXLFNBQVEsUUFBUTtJQUNsQjtJQUFwQixZQUFvQixJQUFpQjtRQUNuQyxLQUFLLEVBQUUsQ0FBQztRQURVLFNBQUksR0FBSixJQUFJLENBQWE7SUFFckMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3BCLENBQUM7b0VBUFUsVUFBVTs2REFBVixVQUFVOzt1RkFBVixVQUFVO2NBSnRCLFNBQVM7MkJBQ0UsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDIwIFNlcCAyMDIzXHJcblxyXG4gIERlc2NyaXB0aW9uOlxyXG4gICAgSWRlbnRpdHkgYW5kIEFjY2VzcyBNYW5hZ2VtZW50XHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIyIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IFBhZ2VCYXNlIH0gZnJvbSAnLi4vLi4vdWkvY29tcG9uZW50cy9iYXNlL3BhZ2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpYW0tc2lnbmluLXBhZ2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWduaW4ucGFnZS5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2lnbkluUGFnZSBleHRlbmRzIFBhZ2VCYXNlIGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGF1dGg6IEF1dGhTZXJ2aWNlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmF1dGgubG9naW4oKTtcclxuICB9XHJcbn1cclxuIl19
@@ -18,10 +18,10 @@
18
18
  */
19
19
  //Node
20
20
  import { Component } from '@angular/core';
21
- import { BasePage } from '../../ui/components/base/base.page';
21
+ import { PageBase } from '../../ui/components/base/page';
22
22
  import * as i0 from "@angular/core";
23
23
  import * as i1 from "../services/auth.service";
24
- export class SignOutPage extends BasePage {
24
+ export class SignOutPage extends PageBase {
25
25
  auth;
26
26
  constructor(auth) {
27
27
  super();
@@ -37,4 +37,4 @@ export class SignOutPage extends BasePage {
37
37
  type: Component,
38
38
  args: [{ selector: 'iam-signout-page', template: "" }]
39
39
  }], function () { return [{ type: i1.AuthService }]; }, null); })();
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbm91dC5wYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL2lhbS9wYWdlcy9zaWdub3V0LnBhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUJFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFJbEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7QUFNOUQsTUFBTSxPQUFPLFdBQVksU0FBUSxRQUFRO0lBQ25CO0lBQXBCLFlBQW9CLElBQWlCO1FBQ25DLEtBQUssRUFBRSxDQUFDO1FBRFUsU0FBSSxHQUFKLElBQUksQ0FBYTtJQUVyQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDckIsQ0FBQztxRUFQVSxXQUFXOzZEQUFYLFdBQVc7O3VGQUFYLFdBQVc7Y0FKdkIsU0FBUzsyQkFDRSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltQG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5QG9zb3ZpdG55LmNvbVxyXG5cclxuXHRDcmVhdGVkOlxyXG5cdFx0MjAgU2VwIDIwMjNcclxuXHJcbiAgRGVzY3JpcHRpb246XHJcbiAgICBJZGVudGl0eSBhbmQgQWNjZXNzIE1hbmFnZW1lbnRcclxuXHJcblx0Q29weXJpZ2h0IChjKSAyMDE2LTIwMjIgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmFzZVBhZ2UgfSBmcm9tICcuLi8uLi91aS9jb21wb25lbnRzL2Jhc2UvYmFzZS5wYWdlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaWFtLXNpZ25vdXQtcGFnZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZ25vdXQucGFnZS5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2lnbk91dFBhZ2UgZXh0ZW5kcyBCYXNlUGFnZSBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhdXRoOiBBdXRoU2VydmljZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hdXRoLmxvZ291dCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbm91dC5wYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL2lhbS9wYWdlcy9zaWdub3V0LnBhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUJFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFJbEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7QUFNekQsTUFBTSxPQUFPLFdBQVksU0FBUSxRQUFRO0lBQ25CO0lBQXBCLFlBQW9CLElBQWlCO1FBQ25DLEtBQUssRUFBRSxDQUFDO1FBRFUsU0FBSSxHQUFKLElBQUksQ0FBYTtJQUVyQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDckIsQ0FBQztxRUFQVSxXQUFXOzZEQUFYLFdBQVc7O3VGQUFYLFdBQVc7Y0FKdkIsU0FBUzsyQkFDRSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltQG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5QG9zb3ZpdG55LmNvbVxyXG5cclxuXHRDcmVhdGVkOlxyXG5cdFx0MjAgU2VwIDIwMjNcclxuXHJcbiAgRGVzY3JpcHRpb246XHJcbiAgICBJZGVudGl0eSBhbmQgQWNjZXNzIE1hbmFnZW1lbnRcclxuXHJcblx0Q29weXJpZ2h0IChjKSAyMDE2LTIwMjIgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUGFnZUJhc2UgfSBmcm9tICcuLi8uLi91aS9jb21wb25lbnRzL2Jhc2UvcGFnZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lhbS1zaWdub3V0LXBhZ2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWdub3V0LnBhZ2UuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNpZ25PdXRQYWdlIGV4dGVuZHMgUGFnZUJhc2UgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXV0aDogQXV0aFNlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuYXV0aC5sb2dvdXQoKTtcclxuICB9XHJcbn1cclxuIl19
@@ -18,10 +18,10 @@
18
18
  */
19
19
  //Node
20
20
  import { Component } from '@angular/core';
21
- import { BasePage } from '../../ui/components/base/base.page';
21
+ import { PageBase } from '../../ui/components/base/page';
22
22
  import * as i0 from "@angular/core";
23
23
  import * as i1 from "../services/auth.service";
24
- export class SignUpPage extends BasePage {
24
+ export class SignUpPage extends PageBase {
25
25
  auth;
26
26
  constructor(auth) {
27
27
  super();
@@ -37,4 +37,4 @@ export class SignUpPage extends BasePage {
37
37
  type: Component,
38
38
  args: [{ selector: 'iam-signup-page', template: "" }]
39
39
  }], function () { return [{ type: i1.AuthService }]; }, null); })();
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbnVwLnBhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvaWFtL3BhZ2VzL3NpZ251cC5wYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSWxELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7O0FBTTlELE1BQU0sT0FBTyxVQUFXLFNBQVEsUUFBUTtJQUNsQjtJQUFwQixZQUFvQixJQUFpQjtRQUNuQyxLQUFLLEVBQUUsQ0FBQztRQURVLFNBQUksR0FBSixJQUFJLENBQWE7SUFFckMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3JCLENBQUM7b0VBUFUsVUFBVTs2REFBVixVQUFVOzt1RkFBVixVQUFVO2NBSnRCLFNBQVM7MkJBQ0UsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcblx0Q3JlYXRlZDpcclxuXHRcdDIwIFNlcCAyMDIzXHJcblxyXG4gIERlc2NyaXB0aW9uOlxyXG4gICAgSWRlbnRpdHkgYW5kIEFjY2VzcyBNYW5hZ2VtZW50XHJcblxyXG5cdENvcHlyaWdodCAoYykgMjAxNi0yMDIyIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IEJhc2VQYWdlIH0gZnJvbSAnLi4vLi4vdWkvY29tcG9uZW50cy9iYXNlL2Jhc2UucGFnZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lhbS1zaWdudXAtcGFnZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZ251cC5wYWdlLmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaWduVXBQYWdlIGV4dGVuZHMgQmFzZVBhZ2UgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXV0aDogQXV0aFNlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuYXV0aC5zaWduVXAoKTtcclxuICB9XHJcbn1cclxuIl19
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbnVwLnBhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvaWFtL3BhZ2VzL3NpZ251cC5wYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSWxELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7O0FBTXpELE1BQU0sT0FBTyxVQUFXLFNBQVEsUUFBUTtJQUNsQjtJQUFwQixZQUFvQixJQUFpQjtRQUNuQyxLQUFLLEVBQUUsQ0FBQztRQURVLFNBQUksR0FBSixJQUFJLENBQWE7SUFFckMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3JCLENBQUM7b0VBUFUsVUFBVTs2REFBVixVQUFVOzt1RkFBVixVQUFVO2NBSnRCLFNBQVM7MkJBQ0UsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcblx0Q3JlYXRlZDpcclxuXHRcdDIwIFNlcCAyMDIzXHJcblxyXG4gIERlc2NyaXB0aW9uOlxyXG4gICAgSWRlbnRpdHkgYW5kIEFjY2VzcyBNYW5hZ2VtZW50XHJcblxyXG5cdENvcHlyaWdodCAoYykgMjAxNi0yMDIyIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IFBhZ2VCYXNlIH0gZnJvbSAnLi4vLi4vdWkvY29tcG9uZW50cy9iYXNlL3BhZ2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpYW0tc2lnbnVwLXBhZ2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWdudXAucGFnZS5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2lnblVwUGFnZSBleHRlbmRzIFBhZ2VCYXNlIGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGF1dGg6IEF1dGhTZXJ2aWNlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmF1dGguc2lnblVwKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,65 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny vadim@osovitny.com
8
+ Anatoly Osovitny anatoly@osovitny.com
9
+
10
+ Created:
11
+ 28 Aug 2018
12
+
13
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
14
+ </file>
15
+ */
16
+ //Node
17
+ import { Component, Input } from "@angular/core";
18
+ //App
19
+ import { Utils, Subs } from "../../../core";
20
+ import * as i0 from "@angular/core";
21
+ export class ComponentBase {
22
+ subs = new Subs();
23
+ //Component Data => usually loading from API
24
+ dataLoading = true;
25
+ dataLoaded = false;
26
+ dataFound = false;
27
+ //Inputs
28
+ classes;
29
+ ngOnDestroy() {
30
+ this.subs.unsubscribe();
31
+ }
32
+ getEntityId() {
33
+ return this.getValueByNameInQS("id");
34
+ }
35
+ getValueByNameInQS(name) {
36
+ let value = Utils.getValueByNameInQS(name);
37
+ if (typeof value === "undefined" || value == "")
38
+ return null;
39
+ return value;
40
+ }
41
+ dataStartedLoading() {
42
+ this.dataLoading = true;
43
+ this.dataLoaded = false;
44
+ this.dataFound = false;
45
+ }
46
+ dataLoadedAndNothingFound() {
47
+ this.dataLoadedAndFound(false);
48
+ }
49
+ dataLoadedAndFound(found = true) {
50
+ this.dataLoading = false;
51
+ this.dataLoaded = true;
52
+ this.dataFound = found;
53
+ }
54
+ static ɵfac = function ComponentBase_Factory(t) { return new (t || ComponentBase)(); };
55
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ComponentBase, selectors: [["ng-component"]], inputs: { classes: "classes" }, decls: 0, vars: 0, template: function ComponentBase_Template(rf, ctx) { }, encapsulation: 2 });
56
+ }
57
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ComponentBase, [{
58
+ type: Component,
59
+ args: [{
60
+ template: ''
61
+ }]
62
+ }], null, { classes: [{
63
+ type: Input
64
+ }] }); })();
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL3VpL2NvbXBvbmVudHMvYmFzZS9jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBYSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUQsS0FBSztBQUNMLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUs1QyxNQUFNLE9BQWdCLGFBQWE7SUFDdkIsSUFBSSxHQUFTLElBQUksSUFBSSxFQUFFLENBQUM7SUFFbEMsNENBQTRDO0lBQ2xDLFdBQVcsR0FBWSxJQUFJLENBQUM7SUFDNUIsVUFBVSxHQUFZLEtBQUssQ0FBQztJQUM1QixTQUFTLEdBQVksS0FBSyxDQUFDO0lBRXJDLFFBQVE7SUFDQyxPQUFPLENBQVM7SUFFekIsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVNLGtCQUFrQixDQUFDLElBQUk7UUFDNUIsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNDLElBQUksT0FBTyxLQUFLLEtBQUssV0FBVyxJQUFJLEtBQUssSUFBSSxFQUFFO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFFN0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7SUFFTSx5QkFBeUI7UUFDOUIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxRQUFpQixJQUFJO1FBQzdDLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7dUVBeENtQixhQUFhOzZEQUFiLGFBQWE7O3VGQUFiLGFBQWE7Y0FIbEMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxFQUFFO2FBQ2I7Z0JBVVUsT0FBTztrQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDI4IEF1ZyAyMDE4XHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIyIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBVdGlscywgU3VicyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogJydcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvbXBvbmVudEJhc2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gIHByb3RlY3RlZCBzdWJzOiBTdWJzID0gbmV3IFN1YnMoKTtcclxuXHJcbiAgLy9Db21wb25lbnQgRGF0YSA9PiB1c3VhbGx5IGxvYWRpbmcgZnJvbSBBUElcclxuICBwcm90ZWN0ZWQgZGF0YUxvYWRpbmc6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHByb3RlY3RlZCBkYXRhTG9hZGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJvdGVjdGVkIGRhdGFGb3VuZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvL0lucHV0c1xyXG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLnN1YnMudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRFbnRpdHlJZCgpIHtcclxuICAgIHJldHVybiB0aGlzLmdldFZhbHVlQnlOYW1lSW5RUyhcImlkXCIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFZhbHVlQnlOYW1lSW5RUyhuYW1lKSB7XHJcbiAgICBsZXQgdmFsdWUgPSBVdGlscy5nZXRWYWx1ZUJ5TmFtZUluUVMobmFtZSk7XHJcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcInVuZGVmaW5lZFwiIHx8IHZhbHVlID09IFwiXCIpIHJldHVybiBudWxsO1xyXG5cclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkYXRhU3RhcnRlZExvYWRpbmcoKSB7XHJcbiAgICB0aGlzLmRhdGFMb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuZGF0YUxvYWRlZCA9IGZhbHNlO1xyXG4gICAgdGhpcy5kYXRhRm91bmQgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkYXRhTG9hZGVkQW5kTm90aGluZ0ZvdW5kKCkge1xyXG4gICAgdGhpcy5kYXRhTG9hZGVkQW5kRm91bmQoZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGRhdGFMb2FkZWRBbmRGb3VuZChmb3VuZDogYm9vbGVhbiA9IHRydWUpIHtcclxuICAgIHRoaXMuZGF0YUxvYWRpbmcgPSBmYWxzZTtcclxuICAgIHRoaXMuZGF0YUxvYWRlZCA9IHRydWU7XHJcbiAgICB0aGlzLmRhdGFGb3VuZCA9IGZvdW5kO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,67 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny vadim@osovitny.com
8
+ Anatoly Osovitny anatoly@osovitny.com
9
+
10
+ Created:
11
+ 24 Jan 2022
12
+
13
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
14
+ </file>
15
+ */
16
+ //Node
17
+ import { Component, EventEmitter, Input, Output } from "@angular/core";
18
+ //App
19
+ import { EditComponentBase } from "./edit.component";
20
+ import * as i0 from "@angular/core";
21
+ export class DialogBase extends EditComponentBase {
22
+ _isOpen = false;
23
+ get isOpen() {
24
+ return this._isOpen;
25
+ }
26
+ set isOpen(value) {
27
+ if (value) {
28
+ if (this.anOnBeforeOpen) {
29
+ this.anOnBeforeOpen();
30
+ }
31
+ this.opened.emit();
32
+ }
33
+ this._isOpen = value;
34
+ }
35
+ //Events
36
+ opened = new EventEmitter();
37
+ closed = new EventEmitter();
38
+ constructor() {
39
+ super();
40
+ }
41
+ open() {
42
+ this.isOpen = true;
43
+ }
44
+ close(returnValue = "OK") {
45
+ this.isOpen = false;
46
+ this.closed.emit(returnValue);
47
+ }
48
+ cancel() {
49
+ this.isOpen = false;
50
+ this.closed.emit(-1);
51
+ }
52
+ static ɵfac = function DialogBase_Factory(t) { return new (t || DialogBase)(); };
53
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DialogBase, selectors: [["ng-component"]], inputs: { isOpen: "isOpen" }, outputs: { opened: "opened", closed: "closed" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function DialogBase_Template(rf, ctx) { }, encapsulation: 2 });
54
+ }
55
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DialogBase, [{
56
+ type: Component,
57
+ args: [{
58
+ template: ''
59
+ }]
60
+ }], function () { return []; }, { isOpen: [{
61
+ type: Input
62
+ }], opened: [{
63
+ type: Output
64
+ }], closed: [{
65
+ type: Output
66
+ }] }); })();
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL3VpL2NvbXBvbmVudHMvYmFzZS9kaWFsb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxLQUFLO0FBQ0wsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBS3JELE1BQU0sT0FBZ0IsVUFBVyxTQUFRLGlCQUFpQjtJQUNoRCxPQUFPLEdBQUcsS0FBSyxDQUFDO0lBRXhCLElBQ0ksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBQ0QsSUFBSSxNQUFNLENBQUMsS0FBSztRQUNkLElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUN2QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7YUFDdkI7WUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3BCO1FBRUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFDdkIsQ0FBQztJQUVELFFBQVE7SUFDRSxNQUFNLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFDL0MsTUFBTSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRXpEO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBSUQsSUFBSTtRQUNGLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxLQUFLLENBQUMsY0FBbUIsSUFBSTtRQUMzQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkIsQ0FBQztvRUF6Q21CLFVBQVU7NkRBQVYsVUFBVTs7dUZBQVYsVUFBVTtjQUgvQixTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLEVBQUU7YUFDYjtzQ0FLSyxNQUFNO2tCQURULEtBQUs7WUFpQkksTUFBTTtrQkFBZixNQUFNO1lBQ0csTUFBTTtrQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDI0IEphbiAyMDIyXHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIyIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IEVkaXRDb21wb25lbnRCYXNlIH0gZnJvbSBcIi4vZWRpdC5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlOiAnJ1xyXG59KVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGlhbG9nQmFzZSBleHRlbmRzIEVkaXRDb21wb25lbnRCYXNlIHtcclxuICBwcml2YXRlIF9pc09wZW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBnZXQgaXNPcGVuKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzT3BlbjtcclxuICB9XHJcbiAgc2V0IGlzT3Blbih2YWx1ZSkge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIGlmICh0aGlzLmFuT25CZWZvcmVPcGVuKSB7XHJcbiAgICAgICAgdGhpcy5hbk9uQmVmb3JlT3BlbigpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLm9wZW5lZC5lbWl0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5faXNPcGVuID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICAvL0V2ZW50c1xyXG4gIEBPdXRwdXQoKSBvcGVuZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBjbG9zZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBhbk9uQmVmb3JlT3Blbj8oKTogdm9pZDtcclxuXHJcbiAgb3BlbigpIHtcclxuICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGNsb3NlKHJldHVyblZhbHVlOiBhbnkgPSBcIk9LXCIpIHtcclxuICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XHJcbiAgICB0aGlzLmNsb3NlZC5lbWl0KHJldHVyblZhbHVlKTtcclxuICB9XHJcblxyXG4gIGNhbmNlbCgpIHtcclxuICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XHJcbiAgICB0aGlzLmNsb3NlZC5lbWl0KC0xKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,135 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny vadim@osovitny.com
8
+ Anatoly Osovitny anatoly@osovitny.com
9
+
10
+ Created:
11
+ 20 Nov 2017
12
+
13
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
14
+ </file>
15
+ */
16
+ //Node
17
+ import { Component, Input } from "@angular/core";
18
+ import { FormControl } from "@angular/forms";
19
+ //App
20
+ import { ComponentBase } from "./component";
21
+ import { Utils } from "../../../core";
22
+ import * as i0 from "@angular/core";
23
+ export class EditComponentBase extends ComponentBase {
24
+ formGroup;
25
+ formSubmitted = false;
26
+ constructor() {
27
+ super();
28
+ }
29
+ isActionAdding() {
30
+ return !Utils.idExistsInQS();
31
+ }
32
+ isControlValid(name, frmGroup = null) {
33
+ return !this.isControlInvalid(name, frmGroup);
34
+ }
35
+ isControlInvalid(name, frmGroup = null) {
36
+ if (typeof name === "undefined" || name == "") {
37
+ return false;
38
+ }
39
+ let fg = frmGroup ? frmGroup : this.formGroup;
40
+ if (!fg) {
41
+ return false;
42
+ }
43
+ if (fg.get(name)) {
44
+ return ((this.formSubmitted && fg.get(name).invalid) ||
45
+ (fg.get(name).touched && fg.get(name).invalid));
46
+ }
47
+ return false;
48
+ }
49
+ //FormGroup functions
50
+ getFormValue(name, frmGroup = null) {
51
+ let fg = frmGroup ? frmGroup : this.formGroup;
52
+ return fg.controls[name].value;
53
+ }
54
+ setFormValue(name, value, frmGroup = null) {
55
+ let fg = frmGroup ? frmGroup : this.formGroup;
56
+ fg.controls[name].setValue(value);
57
+ }
58
+ getFormGroupValue(groupName, name, frmGroup = null) {
59
+ let fg = frmGroup ? frmGroup : this.formGroup;
60
+ return fg.controls[groupName].get(name).value;
61
+ }
62
+ setFormGroupValue(groupName, name, value, frmGroup = null) {
63
+ let fg = frmGroup ? frmGroup : this.formGroup;
64
+ fg.controls[groupName].get(name).setValue(value);
65
+ }
66
+ /**
67
+ * Add control to form group
68
+ * @param name
69
+ * @param formControl
70
+ * @param frmGroup
71
+ */
72
+ addControl(name, formControl, frmGroup = null) {
73
+ let fg = frmGroup ? frmGroup : this.formGroup;
74
+ fg.addControl(name, formControl);
75
+ }
76
+ /**
77
+ * Removes control from form group
78
+ * @param name
79
+ * @param frmGroup
80
+ */
81
+ removeControl(name, frmGroup = null) {
82
+ let fg = frmGroup ? frmGroup : this.formGroup;
83
+ if (fg.get(name)) {
84
+ fg.removeControl(name);
85
+ }
86
+ }
87
+ /**
88
+ * return new form control
89
+ * @param formState
90
+ * @param validatorOrOpts
91
+ * @param asyncValidator
92
+ */
93
+ createFormControl(formState, validatorOrOpts, asyncValidator) {
94
+ return new FormControl(formState, validatorOrOpts, asyncValidator);
95
+ }
96
+ /**
97
+ * Set error to control
98
+ * @param controlName formControl name
99
+ * @param err error expect {erroname: boolean} format
100
+ * @param frmGroup
101
+ */
102
+ setControlError(controlName, err, frmGroup = null) {
103
+ let fg = frmGroup ? frmGroup : this.formGroup;
104
+ fg.get(controlName)?.setErrors(err);
105
+ }
106
+ /**
107
+ * Set {invalid: true} for the specified form
108
+ * @param controlName form control name
109
+ * @param frmGroup
110
+ */
111
+ setInValidError(controlName, frmGroup = null) {
112
+ let fg = frmGroup ? frmGroup : this.formGroup;
113
+ fg.get(controlName)?.setErrors({ invalid: true });
114
+ }
115
+ /**
116
+ * returns formgroup controls.
117
+ * main use case is used in html pages
118
+ */
119
+ get fc() {
120
+ return this.formGroup.controls;
121
+ }
122
+ static ɵfac = function EditComponentBase_Factory(t) { return new (t || EditComponentBase)(); };
123
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EditComponentBase, selectors: [["ng-component"]], inputs: { formGroup: "formGroup", formSubmitted: "formSubmitted" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function EditComponentBase_Template(rf, ctx) { }, encapsulation: 2 });
124
+ }
125
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EditComponentBase, [{
126
+ type: Component,
127
+ args: [{
128
+ template: ''
129
+ }]
130
+ }], function () { return []; }, { formGroup: [{
131
+ type: Input
132
+ }], formSubmitted: [{
133
+ type: Input
134
+ }] }); })();
135
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9iYXNlL2VkaXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBOEIsV0FBVyxFQUF5RCxNQUFNLGdCQUFnQixDQUFDO0FBRWhJLEtBQUs7QUFDTCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBS3RDLE1BQU0sT0FBZ0IsaUJBQWtCLFNBQVEsYUFBYTtJQUNsRCxTQUFTLENBQVk7SUFDckIsYUFBYSxHQUFZLEtBQUssQ0FBQztJQUV4QztRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxjQUFjLENBQUMsSUFBWSxFQUFFLFdBQXNCLElBQUk7UUFDckQsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQVksRUFBRSxXQUFzQixJQUFJO1FBQ3ZELElBQUksT0FBTyxJQUFJLEtBQUssV0FBVyxJQUFJLElBQUksSUFBSSxFQUFFLEVBQUU7WUFDN0MsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELElBQUksRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzlDLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDUCxPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2hCLE9BQU8sQ0FDTCxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQzVDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FDL0MsQ0FBQztTQUNIO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQscUJBQXFCO0lBQ3JCLFlBQVksQ0FBQyxJQUFJLEVBQUUsV0FBc0IsSUFBSTtRQUMzQyxJQUFJLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUM5QyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxXQUFzQixJQUFJO1FBQ2xELElBQUksRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzlDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLFdBQXNCLElBQUk7UUFDM0QsSUFBSSxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDOUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDaEQsQ0FBQztJQUVELGlCQUFpQixDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLFdBQXNCLElBQUk7UUFDbEUsSUFBSSxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDOUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFVBQVUsQ0FDUixJQUFZLEVBQ1osV0FBNEIsRUFDNUIsV0FBc0IsSUFBSTtRQUUxQixJQUFJLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUM5QyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGFBQWEsQ0FBQyxJQUFZLEVBQUUsV0FBc0IsSUFBSTtRQUNwRCxJQUFJLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUU5QyxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDaEIsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN4QjtJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGlCQUFpQixDQUNmLFNBQWUsRUFDZixlQUlRLEVBQ1IsY0FBNkQ7UUFFN0QsT0FBTyxJQUFJLFdBQVcsQ0FBQyxTQUFTLEVBQUUsZUFBZSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxXQUFtQixFQUFFLEdBQU8sRUFBRSxXQUFzQixJQUFJO1FBQ3RFLElBQUksRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzlDLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsZUFBZSxDQUFDLFdBQW1CLEVBQUUsV0FBc0IsSUFBSTtRQUM3RCxJQUFJLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUM5QyxFQUFFLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFJLEVBQUU7UUFDSixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO0lBQ2pDLENBQUM7MkVBbEltQixpQkFBaUI7NkRBQWpCLGlCQUFpQjs7dUZBQWpCLGlCQUFpQjtjQUh0QyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLEVBQUU7YUFDYjtzQ0FFVSxTQUFTO2tCQUFqQixLQUFLO1lBQ0csYUFBYTtrQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW1Ab3Nvdml0bnkuY29tXHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55IGFuYXRvbHlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAyMCBOb3YgMjAxN1xyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMiBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUdyb3VwLCBBYnN0cmFjdENvbnRyb2wsIEZvcm1Db250cm9sLCBWYWxpZGF0b3JGbiwgQWJzdHJhY3RDb250cm9sT3B0aW9ucywgQXN5bmNWYWxpZGF0b3JGbiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgQ29tcG9uZW50QmFzZSB9IGZyb20gXCIuL2NvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBVdGlscyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogJydcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEVkaXRDb21wb25lbnRCYXNlIGV4dGVuZHMgQ29tcG9uZW50QmFzZSB7XHJcbiAgQElucHV0KCkgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XHJcbiAgQElucHV0KCkgZm9ybVN1Ym1pdHRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBpc0FjdGlvbkFkZGluZygpIHtcclxuICAgIHJldHVybiAhVXRpbHMuaWRFeGlzdHNJblFTKCk7XHJcbiAgfVxyXG5cclxuICBpc0NvbnRyb2xWYWxpZChuYW1lOiBzdHJpbmcsIGZybUdyb3VwOiBGb3JtR3JvdXAgPSBudWxsKSB7XHJcbiAgICByZXR1cm4gIXRoaXMuaXNDb250cm9sSW52YWxpZChuYW1lLCBmcm1Hcm91cCk7XHJcbiAgfVxyXG5cclxuICBpc0NvbnRyb2xJbnZhbGlkKG5hbWU6IHN0cmluZywgZnJtR3JvdXA6IEZvcm1Hcm91cCA9IG51bGwpIHtcclxuICAgIGlmICh0eXBlb2YgbmFtZSA9PT0gXCJ1bmRlZmluZWRcIiB8fCBuYW1lID09IFwiXCIpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBmZyA9IGZybUdyb3VwID8gZnJtR3JvdXAgOiB0aGlzLmZvcm1Hcm91cDtcclxuICAgIGlmICghZmcpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChmZy5nZXQobmFtZSkpIHtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICAodGhpcy5mb3JtU3VibWl0dGVkICYmIGZnLmdldChuYW1lKS5pbnZhbGlkKSB8fFxyXG4gICAgICAgIChmZy5nZXQobmFtZSkudG91Y2hlZCAmJiBmZy5nZXQobmFtZSkuaW52YWxpZClcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICAvL0Zvcm1Hcm91cCBmdW5jdGlvbnNcclxuICBnZXRGb3JtVmFsdWUobmFtZSwgZnJtR3JvdXA6IEZvcm1Hcm91cCA9IG51bGwpIHtcclxuICAgIGxldCBmZyA9IGZybUdyb3VwID8gZnJtR3JvdXAgOiB0aGlzLmZvcm1Hcm91cDtcclxuICAgIHJldHVybiBmZy5jb250cm9sc1tuYW1lXS52YWx1ZTtcclxuICB9XHJcblxyXG4gIHNldEZvcm1WYWx1ZShuYW1lLCB2YWx1ZSwgZnJtR3JvdXA6IEZvcm1Hcm91cCA9IG51bGwpIHtcclxuICAgIGxldCBmZyA9IGZybUdyb3VwID8gZnJtR3JvdXAgOiB0aGlzLmZvcm1Hcm91cDtcclxuICAgIGZnLmNvbnRyb2xzW25hbWVdLnNldFZhbHVlKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIGdldEZvcm1Hcm91cFZhbHVlKGdyb3VwTmFtZSwgbmFtZSwgZnJtR3JvdXA6IEZvcm1Hcm91cCA9IG51bGwpIHtcclxuICAgIGxldCBmZyA9IGZybUdyb3VwID8gZnJtR3JvdXAgOiB0aGlzLmZvcm1Hcm91cDtcclxuICAgIHJldHVybiBmZy5jb250cm9sc1tncm91cE5hbWVdLmdldChuYW1lKS52YWx1ZTtcclxuICB9XHJcblxyXG4gIHNldEZvcm1Hcm91cFZhbHVlKGdyb3VwTmFtZSwgbmFtZSwgdmFsdWUsIGZybUdyb3VwOiBGb3JtR3JvdXAgPSBudWxsKSB7XHJcbiAgICBsZXQgZmcgPSBmcm1Hcm91cCA/IGZybUdyb3VwIDogdGhpcy5mb3JtR3JvdXA7XHJcbiAgICBmZy5jb250cm9sc1tncm91cE5hbWVdLmdldChuYW1lKS5zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBZGQgY29udHJvbCB0byBmb3JtIGdyb3VwXHJcbiAgICogQHBhcmFtIG5hbWVcclxuICAgKiBAcGFyYW0gZm9ybUNvbnRyb2xcclxuICAgKiBAcGFyYW0gZnJtR3JvdXBcclxuICAgKi9cclxuICBhZGRDb250cm9sKFxyXG4gICAgbmFtZTogc3RyaW5nLFxyXG4gICAgZm9ybUNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCxcclxuICAgIGZybUdyb3VwOiBGb3JtR3JvdXAgPSBudWxsXHJcbiAgKSB7XHJcbiAgICBsZXQgZmcgPSBmcm1Hcm91cCA/IGZybUdyb3VwIDogdGhpcy5mb3JtR3JvdXA7XHJcbiAgICBmZy5hZGRDb250cm9sKG5hbWUsIGZvcm1Db250cm9sKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlbW92ZXMgY29udHJvbCBmcm9tIGZvcm0gZ3JvdXBcclxuICAgKiBAcGFyYW0gbmFtZVxyXG4gICAqIEBwYXJhbSBmcm1Hcm91cFxyXG4gICAqL1xyXG4gIHJlbW92ZUNvbnRyb2wobmFtZTogc3RyaW5nLCBmcm1Hcm91cDogRm9ybUdyb3VwID0gbnVsbCkge1xyXG4gICAgbGV0IGZnID0gZnJtR3JvdXAgPyBmcm1Hcm91cCA6IHRoaXMuZm9ybUdyb3VwO1xyXG5cclxuICAgIGlmIChmZy5nZXQobmFtZSkpIHtcclxuICAgICAgZmcucmVtb3ZlQ29udHJvbChuYW1lKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHJldHVybiBuZXcgZm9ybSBjb250cm9sXHJcbiAgICogQHBhcmFtIGZvcm1TdGF0ZVxyXG4gICAqIEBwYXJhbSB2YWxpZGF0b3JPck9wdHNcclxuICAgKiBAcGFyYW0gYXN5bmNWYWxpZGF0b3JcclxuICAgKi9cclxuICBjcmVhdGVGb3JtQ29udHJvbChcclxuICAgIGZvcm1TdGF0ZT86IGFueSxcclxuICAgIHZhbGlkYXRvck9yT3B0cz86XHJcbiAgICAgIHwgVmFsaWRhdG9yRm5cclxuICAgICAgfCBWYWxpZGF0b3JGbltdXHJcbiAgICAgIHwgQWJzdHJhY3RDb250cm9sT3B0aW9uc1xyXG4gICAgICB8IG51bGwsXHJcbiAgICBhc3luY1ZhbGlkYXRvcj86IEFzeW5jVmFsaWRhdG9yRm4gfCBBc3luY1ZhbGlkYXRvckZuW10gfCBudWxsXHJcbiAgKSB7XHJcbiAgICByZXR1cm4gbmV3IEZvcm1Db250cm9sKGZvcm1TdGF0ZSwgdmFsaWRhdG9yT3JPcHRzLCBhc3luY1ZhbGlkYXRvcik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXQgZXJyb3IgdG8gY29udHJvbFxyXG4gICAqIEBwYXJhbSBjb250cm9sTmFtZSBmb3JtQ29udHJvbCBuYW1lXHJcbiAgICogQHBhcmFtIGVyciBlcnJvciBleHBlY3Qge2Vycm9uYW1lOiBib29sZWFufSBmb3JtYXRcclxuICAgKiBAcGFyYW0gZnJtR3JvdXBcclxuICAgKi9cclxuICBzZXRDb250cm9sRXJyb3IoY29udHJvbE5hbWU6IHN0cmluZywgZXJyOiB7fSwgZnJtR3JvdXA6IEZvcm1Hcm91cCA9IG51bGwpIHtcclxuICAgIGxldCBmZyA9IGZybUdyb3VwID8gZnJtR3JvdXAgOiB0aGlzLmZvcm1Hcm91cDtcclxuICAgIGZnLmdldChjb250cm9sTmFtZSk/LnNldEVycm9ycyhlcnIpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IHtpbnZhbGlkOiB0cnVlfSBmb3IgdGhlIHNwZWNpZmllZCBmb3JtXHJcbiAgICogQHBhcmFtIGNvbnRyb2xOYW1lIGZvcm0gY29udHJvbCBuYW1lXHJcbiAgICogQHBhcmFtIGZybUdyb3VwXHJcbiAgICovXHJcbiAgc2V0SW5WYWxpZEVycm9yKGNvbnRyb2xOYW1lOiBzdHJpbmcsIGZybUdyb3VwOiBGb3JtR3JvdXAgPSBudWxsKSB7XHJcbiAgICBsZXQgZmcgPSBmcm1Hcm91cCA/IGZybUdyb3VwIDogdGhpcy5mb3JtR3JvdXA7XHJcbiAgICBmZy5nZXQoY29udHJvbE5hbWUpPy5zZXRFcnJvcnMoeyBpbnZhbGlkOiB0cnVlIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogcmV0dXJucyBmb3JtZ3JvdXAgY29udHJvbHMuXHJcbiAgICogbWFpbiB1c2UgY2FzZSBpcyB1c2VkIGluIGh0bWwgcGFnZXNcclxuICAgKi9cclxuICBnZXQgZmMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXAuY29udHJvbHM7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,69 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny vadim@osovitny.com
8
+ Anatoly Osovitny anatoly@osovitny.com
9
+
10
+ Created:
11
+ 20 Aug 2022
12
+
13
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
14
+ </file>
15
+ */
16
+ //Node
17
+ import { Component, Input } from "@angular/core";
18
+ //App
19
+ import { ComponentBase } from "./component";
20
+ import * as i0 from "@angular/core";
21
+ export class ListBase extends ComponentBase {
22
+ currentFilter = null;
23
+ //Items & Pagination
24
+ items;
25
+ totalItems = 0;
26
+ pageSize = 10;
27
+ skipItems = 0;
28
+ currentPage = 1;
29
+ showNoDataIfNoDataFound = true;
30
+ loadPageOne() {
31
+ this.skipItems = 0;
32
+ this.currentPage = 1;
33
+ this.loadPage();
34
+ }
35
+ reloadPage(drop2pageOne = false) {
36
+ if (drop2pageOne) {
37
+ this.loadPageOne();
38
+ }
39
+ else {
40
+ this.loadPage();
41
+ }
42
+ }
43
+ setFilter(filter) {
44
+ this.currentFilter = filter;
45
+ this.loadPageOne();
46
+ }
47
+ //Tos
48
+ toIndex(index) {
49
+ return ((this.currentPage - 1) * this.pageSize) + index + 1;
50
+ }
51
+ //Events
52
+ onPageChange(e) {
53
+ this.pageSize = e.take;
54
+ this.skipItems = e.skip;
55
+ this.currentPage = (this.skipItems / this.pageSize) + 1;
56
+ this.loadPage();
57
+ }
58
+ static ɵfac = /*@__PURE__*/ function () { let ɵListBase_BaseFactory; return function ListBase_Factory(t) { return (ɵListBase_BaseFactory || (ɵListBase_BaseFactory = i0.ɵɵgetInheritedFactory(ListBase)))(t || ListBase); }; }();
59
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ListBase, selectors: [["ng-component"]], inputs: { showNoDataIfNoDataFound: "showNoDataIfNoDataFound" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function ListBase_Template(rf, ctx) { }, encapsulation: 2 });
60
+ }
61
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ListBase, [{
62
+ type: Component,
63
+ args: [{
64
+ template: ''
65
+ }]
66
+ }], null, { showNoDataIfNoDataFound: [{
67
+ type: Input
68
+ }] }); })();
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi91aS9jb21wb25lbnRzL2Jhc2UvbGlzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRCxLQUFLO0FBQ0wsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFLNUMsTUFBTSxPQUFnQixRQUFTLFNBQVEsYUFBYTtJQUNsRCxhQUFhLEdBQUcsSUFBSSxDQUFDO0lBRXJCLG9CQUFvQjtJQUNwQixLQUFLLENBQVE7SUFDYixVQUFVLEdBQVcsQ0FBQyxDQUFDO0lBQ3ZCLFFBQVEsR0FBVyxFQUFFLENBQUM7SUFDdEIsU0FBUyxHQUFXLENBQUMsQ0FBQztJQUN0QixXQUFXLEdBQVcsQ0FBQyxDQUFDO0lBRWYsdUJBQXVCLEdBQVksSUFBSSxDQUFDO0lBSTFDLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFTSxVQUFVLENBQUMsZUFBd0IsS0FBSztRQUM3QyxJQUFJLFlBQVksRUFBRTtZQUNoQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDcEI7YUFDSTtZQUNILElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUNqQjtJQUNILENBQUM7SUFFTSxTQUFTLENBQUMsTUFBVztRQUMxQixJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQztRQUM1QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELEtBQUs7SUFDTCxPQUFPLENBQUMsS0FBSztRQUNYLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELFFBQVE7SUFDUixZQUFZLENBQUMsQ0FBTTtRQUNqQixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFeEQsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7a01BOUNtQixRQUFRLFNBQVIsUUFBUTs2REFBUixRQUFROzt1RkFBUixRQUFRO2NBSDdCLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsRUFBRTthQUNiO2dCQVdVLHVCQUF1QjtrQkFBL0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW1Ab3Nvdml0bnkuY29tXHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55IGFuYXRvbHlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAyMCBBdWcgMjAyMlxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMiBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IENvbXBvbmVudEJhc2UgfSBmcm9tIFwiLi9jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlOiAnJ1xyXG59KVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTGlzdEJhc2UgZXh0ZW5kcyBDb21wb25lbnRCYXNlIHtcclxuICBjdXJyZW50RmlsdGVyID0gbnVsbDtcclxuXHJcbiAgLy9JdGVtcyAmIFBhZ2luYXRpb25cclxuICBpdGVtczogYW55W107XHJcbiAgdG90YWxJdGVtczogbnVtYmVyID0gMDtcclxuICBwYWdlU2l6ZTogbnVtYmVyID0gMTA7XHJcbiAgc2tpcEl0ZW1zOiBudW1iZXIgPSAwO1xyXG4gIGN1cnJlbnRQYWdlOiBudW1iZXIgPSAxO1xyXG5cclxuICBASW5wdXQoKSBzaG93Tm9EYXRhSWZOb0RhdGFGb3VuZDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIHB1YmxpYyBsb2FkUGFnZT8ocGFnZT86IG51bWJlcikgOiB2b2lkO1xyXG5cclxuICBwdWJsaWMgbG9hZFBhZ2VPbmUoKSB7XHJcbiAgICB0aGlzLnNraXBJdGVtcyA9IDA7XHJcbiAgICB0aGlzLmN1cnJlbnRQYWdlID0gMTtcclxuICAgIHRoaXMubG9hZFBhZ2UoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWxvYWRQYWdlKGRyb3AycGFnZU9uZTogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICBpZiAoZHJvcDJwYWdlT25lKSB7XHJcbiAgICAgIHRoaXMubG9hZFBhZ2VPbmUoKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLmxvYWRQYWdlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0RmlsdGVyKGZpbHRlcjogYW55KSB7XHJcbiAgICB0aGlzLmN1cnJlbnRGaWx0ZXIgPSBmaWx0ZXI7XHJcbiAgICB0aGlzLmxvYWRQYWdlT25lKCk7XHJcbiAgfVxyXG5cclxuICAvL1Rvc1xyXG4gIHRvSW5kZXgoaW5kZXgpIHtcclxuICAgIHJldHVybiAoKHRoaXMuY3VycmVudFBhZ2UgLSAxKSAqIHRoaXMucGFnZVNpemUpICsgaW5kZXggKyAxO1xyXG4gIH1cclxuXHJcbiAgLy9FdmVudHNcclxuICBvblBhZ2VDaGFuZ2UoZTogYW55KSB7XHJcbiAgICB0aGlzLnBhZ2VTaXplID0gZS50YWtlO1xyXG4gICAgdGhpcy5za2lwSXRlbXMgPSBlLnNraXA7XHJcbiAgICB0aGlzLmN1cnJlbnRQYWdlID0gKHRoaXMuc2tpcEl0ZW1zIC8gdGhpcy5wYWdlU2l6ZSkgKyAxO1xyXG5cclxuICAgIHRoaXMubG9hZFBhZ2UoKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,31 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny vadim@osovitny.com
8
+ Anatoly Osovitny anatoly@osovitny.com
9
+
10
+ Created:
11
+ 20 Aug 2022
12
+
13
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
14
+ </file>
15
+ */
16
+ //Node
17
+ import { Component } from "@angular/core";
18
+ //App
19
+ import { ComponentBase } from "./component";
20
+ import * as i0 from "@angular/core";
21
+ export class PageBase extends ComponentBase {
22
+ static ɵfac = /*@__PURE__*/ function () { let ɵPageBase_BaseFactory; return function PageBase_Factory(t) { return (ɵPageBase_BaseFactory || (ɵPageBase_BaseFactory = i0.ɵɵgetInheritedFactory(PageBase)))(t || PageBase); }; }();
23
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PageBase, selectors: [["ng-component"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function PageBase_Template(rf, ctx) { }, encapsulation: 2 });
24
+ }
25
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PageBase, [{
26
+ type: Component,
27
+ args: [{
28
+ template: ''
29
+ }]
30
+ }], null, null); })();
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi91aS9jb21wb25lbnRzL2Jhc2UvcGFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLEtBQUs7QUFDTCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUs1QyxNQUFNLE9BQWdCLFFBQVMsU0FBUSxhQUFhO2tNQUE5QixRQUFRLFNBQVIsUUFBUTs2REFBUixRQUFROzt1RkFBUixRQUFRO2NBSDdCLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsRUFBRTthQUNiIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDIwIEF1ZyAyMDIyXHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIyIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBDb21wb25lbnRCYXNlIH0gZnJvbSBcIi4vY29tcG9uZW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogJydcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBhZ2VCYXNlIGV4dGVuZHMgQ29tcG9uZW50QmFzZSB7XHJcbn1cclxuIl19
@@ -0,0 +1,66 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny vadim@osovitny.com
8
+ Anatoly Osovitny anatoly@osovitny.com
9
+
10
+ Created:
11
+ 20 Aug 2022
12
+
13
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
14
+ </file>
15
+ */
16
+ //Node
17
+ import { Component } from "@angular/core";
18
+ //App
19
+ import { PageBase } from "./page";
20
+ import * as i0 from "@angular/core";
21
+ export class PagedPageBase extends PageBase {
22
+ currentFilter = null;
23
+ //Items & Pagination
24
+ items;
25
+ totalItems = 0;
26
+ pageSize = 10;
27
+ skipItems = 0;
28
+ currentPage = 1;
29
+ loadPageOne() {
30
+ this.skipItems = 0;
31
+ this.currentPage = 1;
32
+ this.loadPage();
33
+ }
34
+ reloadPage(drop2pageOne = false) {
35
+ if (drop2pageOne) {
36
+ this.loadPageOne();
37
+ }
38
+ else {
39
+ this.loadPage();
40
+ }
41
+ }
42
+ setFilter(filter) {
43
+ this.currentFilter = filter;
44
+ this.loadPageOne();
45
+ }
46
+ //Tos
47
+ toIndex(index) {
48
+ return ((this.currentPage - 1) * this.pageSize) + index + 1;
49
+ }
50
+ //Events
51
+ onPageChange(e) {
52
+ this.pageSize = e.take;
53
+ this.skipItems = e.skip;
54
+ this.currentPage = (this.skipItems / this.pageSize) + 1;
55
+ this.loadPage();
56
+ }
57
+ static ɵfac = /*@__PURE__*/ function () { let ɵPagedPageBase_BaseFactory; return function PagedPageBase_Factory(t) { return (ɵPagedPageBase_BaseFactory || (ɵPagedPageBase_BaseFactory = i0.ɵɵgetInheritedFactory(PagedPageBase)))(t || PagedPageBase); }; }();
58
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PagedPageBase, selectors: [["ng-component"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function PagedPageBase_Template(rf, ctx) { }, encapsulation: 2 });
59
+ }
60
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PagedPageBase, [{
61
+ type: Component,
62
+ args: [{
63
+ template: ''
64
+ }]
65
+ }], null, null); })();
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZWQucGFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi91aS9jb21wb25lbnRzL2Jhc2UvcGFnZWQucGFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLEtBQUs7QUFDTCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDOztBQUtsQyxNQUFNLE9BQWdCLGFBQWMsU0FBUSxRQUFRO0lBQ2xELGFBQWEsR0FBRyxJQUFJLENBQUM7SUFFckIsb0JBQW9CO0lBQ3BCLEtBQUssQ0FBUTtJQUNiLFVBQVUsR0FBVyxDQUFDLENBQUM7SUFDdkIsUUFBUSxHQUFXLEVBQUUsQ0FBQztJQUN0QixTQUFTLEdBQVcsQ0FBQyxDQUFDO0lBQ3RCLFdBQVcsR0FBVyxDQUFDLENBQUM7SUFJakIsV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVNLFVBQVUsQ0FBQyxlQUF3QixLQUFLO1FBQzdDLElBQUksWUFBWSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNwQjthQUNJO1lBQ0gsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztJQUVNLFNBQVMsQ0FBQyxNQUFXO1FBQzFCLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDO1FBQzVCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsS0FBSztJQUNMLE9BQU8sQ0FBQyxLQUFLO1FBQ1gsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsUUFBUTtJQUNSLFlBQVksQ0FBQyxDQUFNO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV4RCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztzTkE1Q21CLGFBQWEsU0FBYixhQUFhOzZEQUFiLGFBQWE7O3VGQUFiLGFBQWE7Y0FIbEMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxFQUFFO2FBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltQG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjAgQXVnIDIwMjJcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IFBhZ2VCYXNlIH0gZnJvbSBcIi4vcGFnZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGU6ICcnXHJcbn0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBQYWdlZFBhZ2VCYXNlIGV4dGVuZHMgUGFnZUJhc2Uge1xyXG4gIGN1cnJlbnRGaWx0ZXIgPSBudWxsO1xyXG5cclxuICAvL0l0ZW1zICYgUGFnaW5hdGlvblxyXG4gIGl0ZW1zOiBhbnlbXTtcclxuICB0b3RhbEl0ZW1zOiBudW1iZXIgPSAwO1xyXG4gIHBhZ2VTaXplOiBudW1iZXIgPSAxMDtcclxuICBza2lwSXRlbXM6IG51bWJlciA9IDA7XHJcbiAgY3VycmVudFBhZ2U6IG51bWJlciA9IDE7XHJcblxyXG4gIHB1YmxpYyBsb2FkUGFnZT8ocGFnZT86IG51bWJlcikgOiB2b2lkO1xyXG5cclxuICBwdWJsaWMgbG9hZFBhZ2VPbmUoKSB7XHJcbiAgICB0aGlzLnNraXBJdGVtcyA9IDA7XHJcbiAgICB0aGlzLmN1cnJlbnRQYWdlID0gMTtcclxuICAgIHRoaXMubG9hZFBhZ2UoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWxvYWRQYWdlKGRyb3AycGFnZU9uZTogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICBpZiAoZHJvcDJwYWdlT25lKSB7XHJcbiAgICAgIHRoaXMubG9hZFBhZ2VPbmUoKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLmxvYWRQYWdlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0RmlsdGVyKGZpbHRlcjogYW55KSB7XHJcbiAgICB0aGlzLmN1cnJlbnRGaWx0ZXIgPSBmaWx0ZXI7XHJcbiAgICB0aGlzLmxvYWRQYWdlT25lKCk7XHJcbiAgfVxyXG5cclxuICAvL1Rvc1xyXG4gIHRvSW5kZXgoaW5kZXgpIHtcclxuICAgIHJldHVybiAoKHRoaXMuY3VycmVudFBhZ2UgLSAxKSAqIHRoaXMucGFnZVNpemUpICsgaW5kZXggKyAxO1xyXG4gIH1cclxuXHJcbiAgLy9FdmVudHNcclxuICBvblBhZ2VDaGFuZ2UoZTogYW55KSB7XHJcbiAgICB0aGlzLnBhZ2VTaXplID0gZS50YWtlO1xyXG4gICAgdGhpcy5za2lwSXRlbXMgPSBlLnNraXA7XHJcbiAgICB0aGlzLmN1cnJlbnRQYWdlID0gKHRoaXMuc2tpcEl0ZW1zIC8gdGhpcy5wYWdlU2l6ZSkgKyAxO1xyXG5cclxuICAgIHRoaXMubG9hZFBhZ2UoKTtcclxuICB9XHJcbn1cclxuIl19
@@ -2,10 +2,10 @@
2
2
  import { Component, Input } from "@angular/core";
3
3
  //App
4
4
  import { AppCoreSettings } from "../../../core/consts/settings";
5
- import { BaseEditComponent } from "../base/base-edit.component";
5
+ import { EditComponentBase } from "../base/edit.component";
6
6
  import { DefaultEditorOptions } from "./html-editor.defaultoptions";
7
7
  import * as i0 from "@angular/core";
8
- export class BaseHtmlEditorComponent extends BaseEditComponent {
8
+ export class HtmlEditorComponentBase extends EditComponentBase {
9
9
  froalaEditor;
10
10
  // Public members
11
11
  options;
@@ -80,10 +80,10 @@ export class BaseHtmlEditorComponent extends BaseEditComponent {
80
80
  editor.opts.imageUploadParams.uploadParentId = uploadParentId;
81
81
  });
82
82
  }
83
- static ɵfac = function BaseHtmlEditorComponent_Factory(t) { return new (t || BaseHtmlEditorComponent)(); };
84
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BaseHtmlEditorComponent, selectors: [["ng-component"]], inputs: { editorLabelText: "editorLabelText", editorOptions: "editorOptions" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function BaseHtmlEditorComponent_Template(rf, ctx) { }, encapsulation: 2 });
83
+ static ɵfac = function HtmlEditorComponentBase_Factory(t) { return new (t || HtmlEditorComponentBase)(); };
84
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: HtmlEditorComponentBase, selectors: [["ng-component"]], inputs: { editorLabelText: "editorLabelText", editorOptions: "editorOptions" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function HtmlEditorComponentBase_Template(rf, ctx) { }, encapsulation: 2 });
85
85
  }
86
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseHtmlEditorComponent, [{
86
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HtmlEditorComponentBase, [{
87
87
  type: Component,
88
88
  args: [{
89
89
  template: "",
@@ -93,4 +93,4 @@ export class BaseHtmlEditorComponent extends BaseEditComponent {
93
93
  }], editorOptions: [{
94
94
  type: Input
95
95
  }] }); })();
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1odG1sLWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9odG1sLWVkaXRvci9iYXNlLWh0bWwtZWRpdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQkEsTUFBTTtBQUNOLE9BQU8sRUFBaUIsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV4RSxLQUFLO0FBQ0wsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQUtwRSxNQUFNLE9BQWdCLHVCQUF3QixTQUFRLGlCQUFpQjtJQUUzRCxZQUFZLENBQUM7SUFFdkIsaUJBQWlCO0lBQ1YsT0FBTyxDQUFDO0lBQ1IsdUJBQXVCLEdBQUcsS0FBSyxDQUFDO0lBQ2hDLHVCQUF1QixHQUFHLEVBQUUsQ0FBQztJQUVwQyxTQUFTO0lBQ0EsZUFBZSxHQUFHLE1BQU0sQ0FBQztJQUN6QixhQUFhLEdBQVcsRUFBRSxDQUFDO0lBRXBDO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDN0IsSUFBSSxPQUFPLElBQUksQ0FBQyxhQUFhLElBQUksUUFBUSxFQUFFO1lBQ3pDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUN0QztRQUVELElBQUksVUFBVSxHQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzlELE1BQU0sR0FBRyxHQUFHLGVBQWUsQ0FBQyxlQUFlLENBQUM7UUFFNUMsSUFBSSxHQUFHLEVBQUU7WUFDUCxVQUFVLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FDbkIsRUFBRSxFQUNGLFVBQVUsRUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQ3ZDLENBQUM7U0FDSDtRQUVELElBQUksVUFBVSxDQUFDLE1BQU0sSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRTtZQUN0RCxVQUFVLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1NBQ2xEO1FBRUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUM7SUFDNUIsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLElBQUksR0FBRyxJQUFJLENBQUM7UUFDbEIsVUFBVSxDQUFDO1lBQ1QsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQztZQUNwQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDO1FBRTNDLGdCQUFnQjtRQUNoQixJQUFJLENBQUMsdUJBQXVCLEdBQUcsRUFBRSxDQUFDO1FBRWxDLElBQUksT0FBTyxFQUFFO1lBQ1gsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQ3ZDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2FBQ2Q7U0FDRjtJQUNILENBQUM7SUFFUyxTQUFTO1FBQ2pCLElBQUksSUFBSSxDQUFDLFlBQVk7WUFBRSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLENBQUM7UUFFNUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsZUFBZTtJQUNSLGtCQUFrQixDQUFDLE1BQU07UUFDOUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBRWxCLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEVBQUU7WUFDakMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ3JDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNmLENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVNLGlCQUFpQixDQUFDLE9BQU87UUFDOUIsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUM7UUFDNUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU0sZUFBZSxDQUFDLFVBQVUsRUFBRSxjQUFjO1FBQy9DLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLElBQUk7WUFDcEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2hDLElBQUksT0FBTyxNQUFNLElBQUksV0FBVyxJQUFJLE1BQU0sSUFBSSxJQUFJLEVBQUU7Z0JBQ2xELE9BQU87YUFDUjtZQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztZQUN0RCxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDaEUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO2lGQWhHbUIsdUJBQXVCOzZEQUF2Qix1QkFBdUI7O3VGQUF2Qix1QkFBdUI7Y0FINUMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxFQUFFO2FBQ2I7c0NBV1UsZUFBZTtrQkFBdkIsS0FBSztZQUNHLGFBQWE7a0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltQG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMTIgRGVjIDIwMTdcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL0dsb2JhbFxyXG5kZWNsYXJlIGxldCAkOiBhbnk7XHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IEFwcENvcmVTZXR0aW5ncyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2NvbnN0cy9zZXR0aW5nc1wiO1xyXG5pbXBvcnQgeyBCYXNlRWRpdENvbXBvbmVudCB9IGZyb20gXCIuLi9iYXNlL2Jhc2UtZWRpdC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRGVmYXVsdEVkaXRvck9wdGlvbnMgfSBmcm9tIFwiLi9odG1sLWVkaXRvci5kZWZhdWx0b3B0aW9uc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGU6IFwiXCIsXHJcbn0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlSHRtbEVkaXRvckNvbXBvbmVudCBleHRlbmRzIEJhc2VFZGl0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0XHJcbntcclxuICBwcm90ZWN0ZWQgZnJvYWxhRWRpdG9yO1xyXG5cclxuICAvLyBQdWJsaWMgbWVtYmVyc1xyXG4gIHB1YmxpYyBvcHRpb25zO1xyXG4gIHB1YmxpYyBmcm9hbGFFZGl0b3JJbml0aWFsaXplZCA9IGZhbHNlO1xyXG4gIHB1YmxpYyBhZnRlckluaXRpYWxpemVkQWN0aW9ucyA9IFtdO1xyXG5cclxuICAvLyBJbnB1dHNcclxuICBASW5wdXQoKSBlZGl0b3JMYWJlbFRleHQgPSBcIkh0bWxcIjtcclxuICBASW5wdXQoKSBlZGl0b3JPcHRpb25zOiBPYmplY3QgPSB7fTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBsZXQgb3B0ID0gdGhpcy5lZGl0b3JPcHRpb25zO1xyXG4gICAgaWYgKHR5cGVvZiB0aGlzLmVkaXRvck9wdGlvbnMgPT0gXCJzdHJpbmdcIikge1xyXG4gICAgICBvcHQgPSBKU09OLnBhcnNlKHRoaXMuZWRpdG9yT3B0aW9ucyk7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IG5ld09wdGlvbnM6IGFueSA9ICQuZXh0ZW5kKHt9LCBEZWZhdWx0RWRpdG9yT3B0aW9ucywgb3B0KTtcclxuICAgIGNvbnN0IGtleSA9IEFwcENvcmVTZXR0aW5ncy5mcm9hbGFFZGl0b3JLZXk7XHJcblxyXG4gICAgaWYgKGtleSkge1xyXG4gICAgICBuZXdPcHRpb25zID0gJC5leHRlbmQoXHJcbiAgICAgICAge30sXHJcbiAgICAgICAgbmV3T3B0aW9ucyxcclxuICAgICAgICBKU09OLnBhcnNlKCd7IFwia2V5XCI6IFwiJyArIGtleSArICdcIiB9JylcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAobmV3T3B0aW9ucy5ldmVudHMgJiYgbmV3T3B0aW9ucy5ldmVudHMuaW5pdGlhbGl6ZWQpIHtcclxuICAgICAgbmV3T3B0aW9ucy5ldmVudHMuaW5pdGlhbGl6ZWQub3ZlcnJpZGRlbiA9IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMub3B0aW9ucyA9IG5ld09wdGlvbnM7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBjb25zdCB0aGF0ID0gdGhpcztcclxuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xyXG4gICAgICB0aGF0LmZyb2FsYUVkaXRvckluaXRpYWxpemVkID0gdHJ1ZTtcclxuICAgICAgdGhhdC5vbkluaXRpYWxpemVkKCk7XHJcbiAgICB9LCAzMDApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkluaXRpYWxpemVkKCkge1xyXG4gICAgbGV0IGFjdGlvbnMgPSB0aGlzLmFmdGVySW5pdGlhbGl6ZWRBY3Rpb25zO1xyXG5cclxuICAgIC8vIENsZWFyIGFjdGlvbnNcclxuICAgIHRoaXMuYWZ0ZXJJbml0aWFsaXplZEFjdGlvbnMgPSBbXTtcclxuXHJcbiAgICBpZiAoYWN0aW9ucykge1xyXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFjdGlvbnMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBhY3Rpb25zW2ldKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnZXRFZGl0b3IoKSB7XHJcbiAgICBpZiAodGhpcy5mcm9hbGFFZGl0b3IpIHJldHVybiB0aGlzLmZyb2FsYUVkaXRvci5nZXRFZGl0b3IoKTtcclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8vIFB1YmxpYyBGdW5jc1xyXG4gIHB1YmxpYyBkb0FmdGVySW5pdGlhbGl6ZWQoYWN0aW9uKSB7XHJcbiAgICBjb25zdCB0aGF0ID0gdGhpcztcclxuXHJcbiAgICBpZiAoIXRoaXMuZnJvYWxhRWRpdG9ySW5pdGlhbGl6ZWQpIHtcclxuICAgICAgdGhpcy5hZnRlckluaXRpYWxpemVkQWN0aW9ucy5wdXNoKCgpID0+IHtcclxuICAgICAgICBhY3Rpb24odGhhdCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgYWN0aW9uKHRoYXQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGluaXRpYWxpemVDb250cm9sKGNvbnRyb2wpIHtcclxuICAgIHRoaXMuZnJvYWxhRWRpdG9yID0gY29udHJvbDtcclxuICAgIHRoaXMuZnJvYWxhRWRpdG9yLmluaXRpYWxpemUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRVcGxvYWRQYXJhbXModXBsb2FkVHlwZSwgdXBsb2FkUGFyZW50SWQpIHtcclxuICAgIHRoaXMuZG9BZnRlckluaXRpYWxpemVkKGZ1bmN0aW9uICh0aGF0KSB7XHJcbiAgICAgIGNvbnN0IGVkaXRvciA9IHRoYXQuZ2V0RWRpdG9yKCk7XHJcbiAgICAgIGlmICh0eXBlb2YgZWRpdG9yID09IFwidW5kZWZpbmVkXCIgfHwgZWRpdG9yID09IG51bGwpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGVkaXRvci5vcHRzLmltYWdlVXBsb2FkUGFyYW1zLnVwbG9hZFR5cGUgPSB1cGxvYWRUeXBlO1xyXG4gICAgICBlZGl0b3Iub3B0cy5pbWFnZVVwbG9hZFBhcmFtcy51cGxvYWRQYXJlbnRJZCA9IHVwbG9hZFBhcmVudElkO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1odG1sLWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9odG1sLWVkaXRvci9iYXNlLWh0bWwtZWRpdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQkEsTUFBTTtBQUNOLE9BQU8sRUFBaUIsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV4RSxLQUFLO0FBQ0wsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQUtwRSxNQUFNLE9BQWdCLHVCQUF3QixTQUFRLGlCQUFpQjtJQUUzRCxZQUFZLENBQUM7SUFFdkIsaUJBQWlCO0lBQ1YsT0FBTyxDQUFDO0lBQ1IsdUJBQXVCLEdBQUcsS0FBSyxDQUFDO0lBQ2hDLHVCQUF1QixHQUFHLEVBQUUsQ0FBQztJQUVwQyxTQUFTO0lBQ0EsZUFBZSxHQUFHLE1BQU0sQ0FBQztJQUN6QixhQUFhLEdBQVcsRUFBRSxDQUFDO0lBRXBDO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDN0IsSUFBSSxPQUFPLElBQUksQ0FBQyxhQUFhLElBQUksUUFBUSxFQUFFO1lBQ3pDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUN0QztRQUVELElBQUksVUFBVSxHQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzlELE1BQU0sR0FBRyxHQUFHLGVBQWUsQ0FBQyxlQUFlLENBQUM7UUFFNUMsSUFBSSxHQUFHLEVBQUU7WUFDUCxVQUFVLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FDbkIsRUFBRSxFQUNGLFVBQVUsRUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQ3ZDLENBQUM7U0FDSDtRQUVELElBQUksVUFBVSxDQUFDLE1BQU0sSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRTtZQUN0RCxVQUFVLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1NBQ2xEO1FBRUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUM7SUFDNUIsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLElBQUksR0FBRyxJQUFJLENBQUM7UUFDbEIsVUFBVSxDQUFDO1lBQ1QsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQztZQUNwQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDO1FBRTNDLGdCQUFnQjtRQUNoQixJQUFJLENBQUMsdUJBQXVCLEdBQUcsRUFBRSxDQUFDO1FBRWxDLElBQUksT0FBTyxFQUFFO1lBQ1gsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQ3ZDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2FBQ2Q7U0FDRjtJQUNILENBQUM7SUFFUyxTQUFTO1FBQ2pCLElBQUksSUFBSSxDQUFDLFlBQVk7WUFBRSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLENBQUM7UUFFNUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsZUFBZTtJQUNSLGtCQUFrQixDQUFDLE1BQU07UUFDOUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBRWxCLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEVBQUU7WUFDakMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ3JDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNmLENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVNLGlCQUFpQixDQUFDLE9BQU87UUFDOUIsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUM7UUFDNUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU0sZUFBZSxDQUFDLFVBQVUsRUFBRSxjQUFjO1FBQy9DLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLElBQUk7WUFDcEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2hDLElBQUksT0FBTyxNQUFNLElBQUksV0FBVyxJQUFJLE1BQU0sSUFBSSxJQUFJLEVBQUU7Z0JBQ2xELE9BQU87YUFDUjtZQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztZQUN0RCxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDaEUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO2lGQWhHbUIsdUJBQXVCOzZEQUF2Qix1QkFBdUI7O3VGQUF2Qix1QkFBdUI7Y0FINUMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxFQUFFO2FBQ2I7c0NBV1UsZUFBZTtrQkFBdkIsS0FBSztZQUNHLGFBQWE7a0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltQG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMTIgRGVjIDIwMTdcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL0dsb2JhbFxyXG5kZWNsYXJlIGxldCAkOiBhbnk7XHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IEFwcENvcmVTZXR0aW5ncyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2NvbnN0cy9zZXR0aW5nc1wiO1xyXG5pbXBvcnQgeyBFZGl0Q29tcG9uZW50QmFzZSB9IGZyb20gXCIuLi9iYXNlL2VkaXQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IERlZmF1bHRFZGl0b3JPcHRpb25zIH0gZnJvbSBcIi4vaHRtbC1lZGl0b3IuZGVmYXVsdG9wdGlvbnNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlOiBcIlwiLFxyXG59KVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgSHRtbEVkaXRvckNvbXBvbmVudEJhc2UgZXh0ZW5kcyBFZGl0Q29tcG9uZW50QmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdFxyXG57XHJcbiAgcHJvdGVjdGVkIGZyb2FsYUVkaXRvcjtcclxuXHJcbiAgLy8gUHVibGljIG1lbWJlcnNcclxuICBwdWJsaWMgb3B0aW9ucztcclxuICBwdWJsaWMgZnJvYWxhRWRpdG9ySW5pdGlhbGl6ZWQgPSBmYWxzZTtcclxuICBwdWJsaWMgYWZ0ZXJJbml0aWFsaXplZEFjdGlvbnMgPSBbXTtcclxuXHJcbiAgLy8gSW5wdXRzXHJcbiAgQElucHV0KCkgZWRpdG9yTGFiZWxUZXh0ID0gXCJIdG1sXCI7XHJcbiAgQElucHV0KCkgZWRpdG9yT3B0aW9uczogT2JqZWN0ID0ge307XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgbGV0IG9wdCA9IHRoaXMuZWRpdG9yT3B0aW9ucztcclxuICAgIGlmICh0eXBlb2YgdGhpcy5lZGl0b3JPcHRpb25zID09IFwic3RyaW5nXCIpIHtcclxuICAgICAgb3B0ID0gSlNPTi5wYXJzZSh0aGlzLmVkaXRvck9wdGlvbnMpO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBuZXdPcHRpb25zOiBhbnkgPSAkLmV4dGVuZCh7fSwgRGVmYXVsdEVkaXRvck9wdGlvbnMsIG9wdCk7XHJcbiAgICBjb25zdCBrZXkgPSBBcHBDb3JlU2V0dGluZ3MuZnJvYWxhRWRpdG9yS2V5O1xyXG5cclxuICAgIGlmIChrZXkpIHtcclxuICAgICAgbmV3T3B0aW9ucyA9ICQuZXh0ZW5kKFxyXG4gICAgICAgIHt9LFxyXG4gICAgICAgIG5ld09wdGlvbnMsXHJcbiAgICAgICAgSlNPTi5wYXJzZSgneyBcImtleVwiOiBcIicgKyBrZXkgKyAnXCIgfScpXHJcbiAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKG5ld09wdGlvbnMuZXZlbnRzICYmIG5ld09wdGlvbnMuZXZlbnRzLmluaXRpYWxpemVkKSB7XHJcbiAgICAgIG5ld09wdGlvbnMuZXZlbnRzLmluaXRpYWxpemVkLm92ZXJyaWRkZW4gPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLm9wdGlvbnMgPSBuZXdPcHRpb25zO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgY29uc3QgdGhhdCA9IHRoaXM7XHJcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcclxuICAgICAgdGhhdC5mcm9hbGFFZGl0b3JJbml0aWFsaXplZCA9IHRydWU7XHJcbiAgICAgIHRoYXQub25Jbml0aWFsaXplZCgpO1xyXG4gICAgfSwgMzAwKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25Jbml0aWFsaXplZCgpIHtcclxuICAgIGxldCBhY3Rpb25zID0gdGhpcy5hZnRlckluaXRpYWxpemVkQWN0aW9ucztcclxuXHJcbiAgICAvLyBDbGVhciBhY3Rpb25zXHJcbiAgICB0aGlzLmFmdGVySW5pdGlhbGl6ZWRBY3Rpb25zID0gW107XHJcblxyXG4gICAgaWYgKGFjdGlvbnMpIHtcclxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhY3Rpb25zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgYWN0aW9uc1tpXSgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgZ2V0RWRpdG9yKCkge1xyXG4gICAgaWYgKHRoaXMuZnJvYWxhRWRpdG9yKSByZXR1cm4gdGhpcy5mcm9hbGFFZGl0b3IuZ2V0RWRpdG9yKCk7XHJcblxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvLyBQdWJsaWMgRnVuY3NcclxuICBwdWJsaWMgZG9BZnRlckluaXRpYWxpemVkKGFjdGlvbikge1xyXG4gICAgY29uc3QgdGhhdCA9IHRoaXM7XHJcblxyXG4gICAgaWYgKCF0aGlzLmZyb2FsYUVkaXRvckluaXRpYWxpemVkKSB7XHJcbiAgICAgIHRoaXMuYWZ0ZXJJbml0aWFsaXplZEFjdGlvbnMucHVzaCgoKSA9PiB7XHJcbiAgICAgICAgYWN0aW9uKHRoYXQpO1xyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGFjdGlvbih0aGF0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBpbml0aWFsaXplQ29udHJvbChjb250cm9sKSB7XHJcbiAgICB0aGlzLmZyb2FsYUVkaXRvciA9IGNvbnRyb2w7XHJcbiAgICB0aGlzLmZyb2FsYUVkaXRvci5pbml0aWFsaXplKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0VXBsb2FkUGFyYW1zKHVwbG9hZFR5cGUsIHVwbG9hZFBhcmVudElkKSB7XHJcbiAgICB0aGlzLmRvQWZ0ZXJJbml0aWFsaXplZChmdW5jdGlvbiAodGhhdCkge1xyXG4gICAgICBjb25zdCBlZGl0b3IgPSB0aGF0LmdldEVkaXRvcigpO1xyXG4gICAgICBpZiAodHlwZW9mIGVkaXRvciA9PSBcInVuZGVmaW5lZFwiIHx8IGVkaXRvciA9PSBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBlZGl0b3Iub3B0cy5pbWFnZVVwbG9hZFBhcmFtcy51cGxvYWRUeXBlID0gdXBsb2FkVHlwZTtcclxuICAgICAgZWRpdG9yLm9wdHMuaW1hZ2VVcGxvYWRQYXJhbXMudXBsb2FkUGFyZW50SWQgPSB1cGxvYWRQYXJlbnRJZDtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=