@paperless/angular 1.12.2 → 1.12.4

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 (87) hide show
  1. package/esm2022/lib/base/form.component.mjs +103 -0
  2. package/esm2022/lib/base/upload.component.mjs +57 -0
  3. package/esm2022/lib/base/value-accessor.mjs +44 -0
  4. package/esm2022/lib/directives/p-cropper.directive.mjs +37 -0
  5. package/esm2022/lib/directives/p-datepicker.directive.mjs +37 -0
  6. package/esm2022/lib/directives/p-page-size-select.directive.mjs +42 -0
  7. package/esm2022/lib/directives/p-pagination.directive.mjs +42 -0
  8. package/esm2022/lib/directives/p-select.directive.mjs +37 -0
  9. package/{esm2020 → esm2022}/lib/modules/overlay/overlay.module.mjs +14 -14
  10. package/esm2022/lib/modules/overlay/overlay.ref.mjs +14 -0
  11. package/esm2022/lib/modules/overlay/services/overlay.service.mjs +77 -0
  12. package/esm2022/lib/modules/table/base/table.component.mjs +211 -0
  13. package/esm2022/lib/modules/table/components/table/table.component.mjs +734 -0
  14. package/esm2022/lib/modules/table/components/table-cell/table-cell.component.mjs +230 -0
  15. package/esm2022/lib/modules/table/components/table-column/table-column.component.mjs +59 -0
  16. package/{esm2020 → esm2022}/lib/modules/table/directives/p-table-custom-filter.directive.mjs +3 -3
  17. package/{esm2020 → esm2022}/lib/modules/table/directives/p-table-filter-modal.directive.mjs +3 -3
  18. package/esm2022/lib/modules/table/directives/p-table-footer.directive.mjs +52 -0
  19. package/esm2022/lib/modules/table/directives/p-table-header.directive.mjs +60 -0
  20. package/esm2022/lib/modules/table/directives/p-table-ngx.directive.mjs +122 -0
  21. package/esm2022/lib/modules/table/directives/p-table.directive.mjs +78 -0
  22. package/{esm2020 → esm2022}/lib/modules/table/table.module.mjs +4 -4
  23. package/esm2022/lib/modules/toast/components/toast-container/toast-container.component.mjs +39 -0
  24. package/esm2022/lib/modules/toast/directives/toast.directive.mjs +51 -0
  25. package/esm2022/lib/modules/toast/services/toast.service.mjs +51 -0
  26. package/{esm2020 → esm2022}/lib/modules/toast/toast.module.mjs +4 -4
  27. package/{esm2020 → esm2022}/lib/paperless.module.mjs +4 -4
  28. package/esm2022/lib/pipes/currency.pipe.mjs +21 -0
  29. package/esm2022/lib/pipes/date.pipe.mjs +21 -0
  30. package/esm2022/lib/pipes/safe.pipe.mjs +34 -0
  31. package/esm2022/lib/stencil/components.mjs +1582 -0
  32. package/esm2022/lib/stencil.module.mjs +17 -0
  33. package/{fesm2020 → fesm2022}/paperless-angular.mjs +698 -496
  34. package/{fesm2020 → fesm2022}/paperless-angular.mjs.map +1 -1
  35. package/package.json +6 -12
  36. package/esm2020/lib/base/form.component.mjs +0 -105
  37. package/esm2020/lib/base/upload.component.mjs +0 -56
  38. package/esm2020/lib/base/value-accessor.mjs +0 -42
  39. package/esm2020/lib/directives/p-cropper.directive.mjs +0 -37
  40. package/esm2020/lib/directives/p-datepicker.directive.mjs +0 -37
  41. package/esm2020/lib/directives/p-page-size-select.directive.mjs +0 -42
  42. package/esm2020/lib/directives/p-pagination.directive.mjs +0 -42
  43. package/esm2020/lib/directives/p-select.directive.mjs +0 -37
  44. package/esm2020/lib/modules/overlay/overlay.ref.mjs +0 -12
  45. package/esm2020/lib/modules/overlay/services/overlay.service.mjs +0 -74
  46. package/esm2020/lib/modules/table/base/table.component.mjs +0 -209
  47. package/esm2020/lib/modules/table/components/table/table.component.mjs +0 -683
  48. package/esm2020/lib/modules/table/components/table-cell/table-cell.component.mjs +0 -212
  49. package/esm2020/lib/modules/table/components/table-column/table-column.component.mjs +0 -56
  50. package/esm2020/lib/modules/table/directives/p-table-footer.directive.mjs +0 -52
  51. package/esm2020/lib/modules/table/directives/p-table-header.directive.mjs +0 -60
  52. package/esm2020/lib/modules/table/directives/p-table-ngx.directive.mjs +0 -121
  53. package/esm2020/lib/modules/table/directives/p-table.directive.mjs +0 -78
  54. package/esm2020/lib/modules/toast/components/toast-container/toast-container.component.mjs +0 -36
  55. package/esm2020/lib/modules/toast/directives/toast.directive.mjs +0 -51
  56. package/esm2020/lib/modules/toast/services/toast.service.mjs +0 -53
  57. package/esm2020/lib/pipes/currency.pipe.mjs +0 -20
  58. package/esm2020/lib/pipes/date.pipe.mjs +0 -20
  59. package/esm2020/lib/pipes/safe.pipe.mjs +0 -33
  60. package/esm2020/lib/stencil/components.mjs +0 -1466
  61. package/esm2020/lib/stencil.module.mjs +0 -17
  62. package/fesm2015/paperless-angular.mjs +0 -3805
  63. package/fesm2015/paperless-angular.mjs.map +0 -1
  64. /package/{esm2020 → esm2022}/lib/animations/fade.mjs +0 -0
  65. /package/{esm2020 → esm2022}/lib/animations/index.mjs +0 -0
  66. /package/{esm2020 → esm2022}/lib/animations/slide.mjs +0 -0
  67. /package/{esm2020 → esm2022}/lib/base/index.mjs +0 -0
  68. /package/{esm2020 → esm2022}/lib/directives/index.mjs +0 -0
  69. /package/{esm2020 → esm2022}/lib/modules/index.mjs +0 -0
  70. /package/{esm2020 → esm2022}/lib/modules/overlay/index.mjs +0 -0
  71. /package/{esm2020 → esm2022}/lib/modules/overlay/services/index.mjs +0 -0
  72. /package/{esm2020 → esm2022}/lib/modules/table/base/index.mjs +0 -0
  73. /package/{esm2020 → esm2022}/lib/modules/table/components/index.mjs +0 -0
  74. /package/{esm2020 → esm2022}/lib/modules/table/components/table/constants.mjs +0 -0
  75. /package/{esm2020 → esm2022}/lib/modules/table/directives/index.mjs +0 -0
  76. /package/{esm2020 → esm2022}/lib/modules/table/index.mjs +0 -0
  77. /package/{esm2020 → esm2022}/lib/modules/table/utils.mjs +0 -0
  78. /package/{esm2020 → esm2022}/lib/modules/toast/components/index.mjs +0 -0
  79. /package/{esm2020 → esm2022}/lib/modules/toast/directives/index.mjs +0 -0
  80. /package/{esm2020 → esm2022}/lib/modules/toast/index.mjs +0 -0
  81. /package/{esm2020 → esm2022}/lib/modules/toast/services/index.mjs +0 -0
  82. /package/{esm2020 → esm2022}/lib/modules/toast/types.mjs +0 -0
  83. /package/{esm2020 → esm2022}/lib/pipes/index.mjs +0 -0
  84. /package/{esm2020 → esm2022}/lib/stencil/angular-component-lib/utils.mjs +0 -0
  85. /package/{esm2020 → esm2022}/lib/stencil/index.mjs +0 -0
  86. /package/{esm2020 → esm2022}/paperless-angular.mjs +0 -0
  87. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
@@ -0,0 +1,103 @@
1
+ import { Component } from '@angular/core';
2
+ import { FormArray, FormControl, FormGroup, } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ export class BaseFormComponent {
5
+ markedDirty = false;
6
+ scrollToFirstError() {
7
+ const invalidInputs = Array.from(document.getElementsByClassName('ng-invalid'))
8
+ .filter((e) => e?.nodeName?.toLowerCase() !== 'form')
9
+ .sort((a, b) => a.scrollTop - b.scrollTop);
10
+ const first = invalidInputs[0];
11
+ if (first) {
12
+ first.scrollIntoView({
13
+ behavior: 'smooth',
14
+ block: 'center',
15
+ inline: 'center',
16
+ });
17
+ }
18
+ }
19
+ markControlDirty(control) {
20
+ if (control instanceof FormControl) {
21
+ control.markAsDirty({ onlySelf: true });
22
+ control.markAsTouched({ onlySelf: true });
23
+ }
24
+ else if (control instanceof FormGroup) {
25
+ control.markAsDirty();
26
+ control.markAsTouched();
27
+ this.markAllDirty(control);
28
+ }
29
+ else if (control instanceof FormArray) {
30
+ control.markAsDirty();
31
+ control.markAsTouched();
32
+ for (const child of control?.controls) {
33
+ this.markControlDirty(child);
34
+ }
35
+ }
36
+ control.updateValueAndValidity();
37
+ }
38
+ markAllDirty(formGroup) {
39
+ this.markedDirty = true;
40
+ for (const field of Object.keys(formGroup.controls)) {
41
+ const control = formGroup.get(field);
42
+ this.markControlDirty(control);
43
+ }
44
+ }
45
+ getControlError(control) {
46
+ if (!this.hasControlError(control)) {
47
+ return;
48
+ }
49
+ return this.firstControlError(control);
50
+ }
51
+ hasControlError(control, showChildErrors = true) {
52
+ return (control?.dirty && this.firstControlError(control, showChildErrors));
53
+ }
54
+ firstControlError(control, showChildErrors = true) {
55
+ if (control instanceof FormGroup && showChildErrors) {
56
+ const errors = Object.keys(control.controls)
57
+ .map((key) => this.firstControlError(control.controls[key]))
58
+ .filter((val) => !!val);
59
+ return errors[0];
60
+ }
61
+ if (!control?.errors) {
62
+ return;
63
+ }
64
+ const keys = Object.keys(control.errors);
65
+ let err;
66
+ for (const key of keys) {
67
+ if (control.errors[key]) {
68
+ err = key;
69
+ break;
70
+ }
71
+ }
72
+ return err;
73
+ }
74
+ resetControl(control) {
75
+ control.setErrors(null);
76
+ control.reset();
77
+ control.markAsPristine();
78
+ if (control instanceof FormGroup) {
79
+ this.resetForm(control);
80
+ }
81
+ else if (control instanceof FormArray) {
82
+ for (const child of control?.controls) {
83
+ this.resetControl(child);
84
+ }
85
+ }
86
+ }
87
+ resetForm(formGroup) {
88
+ for (const field of Object.keys(formGroup.controls)) {
89
+ const control = formGroup.get(field);
90
+ this.resetControl(control);
91
+ }
92
+ this.markedDirty = false;
93
+ }
94
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
95
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: BaseFormComponent, selector: "ng-component", ngImport: i0, template: ``, isInline: true });
96
+ }
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseFormComponent, decorators: [{
98
+ type: Component,
99
+ args: [{
100
+ template: ``,
101
+ }]
102
+ }] });
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wYXBlcmxlc3Mvc3JjL2xpYi9iYXNlL2Zvcm0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUVILFNBQVMsRUFDVCxXQUFXLEVBQ1gsU0FBUyxHQUNaLE1BQU0sZ0JBQWdCLENBQUM7O0FBS3hCLE1BQU0sT0FBZ0IsaUJBQWlCO0lBQzVCLFdBQVcsR0FBRyxLQUFLLENBQUM7SUFFM0Isa0JBQWtCO1FBQ2QsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FDNUIsUUFBUSxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQyxDQUNoRDthQUNJLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsS0FBSyxNQUFNLENBQUM7YUFDcEQsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0MsTUFBTSxLQUFLLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRS9CLElBQUksS0FBSyxFQUFFO1lBQ1AsS0FBSyxDQUFDLGNBQWMsQ0FBQztnQkFDakIsUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLEtBQUssRUFBRSxRQUFRO2dCQUNmLE1BQU0sRUFBRSxRQUFRO2FBQ25CLENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUNaLE9BQThEO1FBRTlELElBQUksT0FBTyxZQUFZLFdBQVcsRUFBRTtZQUNoQyxPQUFPLENBQUMsV0FBVyxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDeEMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQzdDO2FBQU0sSUFBSSxPQUFPLFlBQVksU0FBUyxFQUFFO1lBQ3JDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN0QixPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUM5QjthQUFNLElBQUksT0FBTyxZQUFZLFNBQVMsRUFBRTtZQUNyQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdEIsT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3hCLEtBQUssTUFBTSxLQUFLLElBQUksT0FBTyxFQUFFLFFBQVEsRUFBRTtnQkFDbkMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ2hDO1NBQ0o7UUFFRCxPQUFPLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQW9CO1FBQzdCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBRXhCLEtBQUssTUFBTSxLQUFLLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDakQsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBMEIsQ0FBQyxDQUFDO1NBQ3JEO0lBQ0wsQ0FBQztJQUVELGVBQWUsQ0FDWCxPQUE4RDtRQUU5RCxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNoQyxPQUFPO1NBQ1Y7UUFFRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsZUFBZSxDQUNYLE9BQThELEVBQzlELGVBQWUsR0FBRyxJQUFJO1FBRXRCLE9BQU8sQ0FDSCxPQUFPLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDLENBQ3JFLENBQUM7SUFDTixDQUFDO0lBRUQsaUJBQWlCLENBQ2IsT0FBOEQsRUFDOUQsZUFBZSxHQUFHLElBQUk7UUFFdEIsSUFBSSxPQUFPLFlBQVksU0FBUyxJQUFJLGVBQWUsRUFBRTtZQUNqRCxNQUFNLE1BQU0sR0FBOEIsTUFBTSxDQUFDLElBQUksQ0FDakQsT0FBTyxDQUFDLFFBQVEsQ0FDbkI7aUJBQ0ksR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2lCQUMzRCxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUU1QixPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNwQjtRQUVELElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFO1lBQ2xCLE9BQU87U0FDVjtRQUVELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pDLElBQUksR0FBdUIsQ0FBQztRQUU1QixLQUFLLE1BQU0sR0FBRyxJQUFJLElBQUksRUFBRTtZQUNwQixJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3JCLEdBQUcsR0FBRyxHQUFHLENBQUM7Z0JBQ1YsTUFBTTthQUNUO1NBQ0o7UUFFRCxPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUM7SUFFRCxZQUFZLENBQ1IsT0FBOEQ7UUFFOUQsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QixPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDaEIsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXpCLElBQUksT0FBTyxZQUFZLFNBQVMsRUFBRTtZQUM5QixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzNCO2FBQU0sSUFBSSxPQUFPLFlBQVksU0FBUyxFQUFFO1lBQ3JDLEtBQUssTUFBTSxLQUFLLElBQUksT0FBTyxFQUFFLFFBQVEsRUFBRTtnQkFDbkMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUM1QjtTQUNKO0lBQ0wsQ0FBQztJQUVELFNBQVMsQ0FBQyxTQUFvQjtRQUMxQixLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ2pELE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUEwQixDQUFDLENBQUM7U0FDakQ7UUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUM3QixDQUFDO3VHQTNIaUIsaUJBQWlCOzJGQUFqQixpQkFBaUIsb0RBRnpCLEVBQUU7OzJGQUVNLGlCQUFpQjtrQkFIdEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsRUFBRTtpQkFDZiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdENvbnRyb2wsXG4gICAgRm9ybUFycmF5LFxuICAgIEZvcm1Db250cm9sLFxuICAgIEZvcm1Hcm91cCxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZTogYGAsXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VGb3JtQ29tcG9uZW50IHtcbiAgICBwdWJsaWMgbWFya2VkRGlydHkgPSBmYWxzZTtcblxuICAgIHNjcm9sbFRvRmlyc3RFcnJvcigpIHtcbiAgICAgICAgY29uc3QgaW52YWxpZElucHV0cyA9IEFycmF5LmZyb20oXG4gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCduZy1pbnZhbGlkJylcbiAgICAgICAgKVxuICAgICAgICAgICAgLmZpbHRlcigoZSkgPT4gZT8ubm9kZU5hbWU/LnRvTG93ZXJDYXNlKCkgIT09ICdmb3JtJylcbiAgICAgICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLnNjcm9sbFRvcCAtIGIuc2Nyb2xsVG9wKTtcbiAgICAgICAgY29uc3QgZmlyc3QgPSBpbnZhbGlkSW5wdXRzWzBdO1xuXG4gICAgICAgIGlmIChmaXJzdCkge1xuICAgICAgICAgICAgZmlyc3Quc2Nyb2xsSW50b1ZpZXcoe1xuICAgICAgICAgICAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcbiAgICAgICAgICAgICAgICBibG9jazogJ2NlbnRlcicsXG4gICAgICAgICAgICAgICAgaW5saW5lOiAnY2VudGVyJyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbWFya0NvbnRyb2xEaXJ0eShcbiAgICAgICAgY29udHJvbDogRm9ybUNvbnRyb2wgfCBGb3JtR3JvdXAgfCBGb3JtQXJyYXkgfCBBYnN0cmFjdENvbnRyb2xcbiAgICApIHtcbiAgICAgICAgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtQ29udHJvbCkge1xuICAgICAgICAgICAgY29udHJvbC5tYXJrQXNEaXJ0eSh7IG9ubHlTZWxmOiB0cnVlIH0pO1xuICAgICAgICAgICAgY29udHJvbC5tYXJrQXNUb3VjaGVkKHsgb25seVNlbGY6IHRydWUgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Hcm91cCkge1xuICAgICAgICAgICAgY29udHJvbC5tYXJrQXNEaXJ0eSgpO1xuICAgICAgICAgICAgY29udHJvbC5tYXJrQXNUb3VjaGVkKCk7XG4gICAgICAgICAgICB0aGlzLm1hcmtBbGxEaXJ0eShjb250cm9sKTtcbiAgICAgICAgfSBlbHNlIGlmIChjb250cm9sIGluc3RhbmNlb2YgRm9ybUFycmF5KSB7XG4gICAgICAgICAgICBjb250cm9sLm1hcmtBc0RpcnR5KCk7XG4gICAgICAgICAgICBjb250cm9sLm1hcmtBc1RvdWNoZWQoKTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgY2hpbGQgb2YgY29udHJvbD8uY29udHJvbHMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1hcmtDb250cm9sRGlydHkoY2hpbGQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgfVxuXG4gICAgbWFya0FsbERpcnR5KGZvcm1Hcm91cDogRm9ybUdyb3VwKSB7XG4gICAgICAgIHRoaXMubWFya2VkRGlydHkgPSB0cnVlO1xuXG4gICAgICAgIGZvciAoY29uc3QgZmllbGQgb2YgT2JqZWN0LmtleXMoZm9ybUdyb3VwLmNvbnRyb2xzKSkge1xuICAgICAgICAgICAgY29uc3QgY29udHJvbCA9IGZvcm1Hcm91cC5nZXQoZmllbGQpO1xuICAgICAgICAgICAgdGhpcy5tYXJrQ29udHJvbERpcnR5KGNvbnRyb2wgYXMgQWJzdHJhY3RDb250cm9sKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldENvbnRyb2xFcnJvcihcbiAgICAgICAgY29udHJvbDogRm9ybUNvbnRyb2wgfCBBYnN0cmFjdENvbnRyb2wgfCBGb3JtQXJyYXkgfCBGb3JtR3JvdXBcbiAgICApIHtcbiAgICAgICAgaWYgKCF0aGlzLmhhc0NvbnRyb2xFcnJvcihjb250cm9sKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZmlyc3RDb250cm9sRXJyb3IoY29udHJvbCk7XG4gICAgfVxuXG4gICAgaGFzQ29udHJvbEVycm9yKFxuICAgICAgICBjb250cm9sOiBGb3JtQ29udHJvbCB8IEFic3RyYWN0Q29udHJvbCB8IEZvcm1Hcm91cCB8IEZvcm1BcnJheSxcbiAgICAgICAgc2hvd0NoaWxkRXJyb3JzID0gdHJ1ZVxuICAgICkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgY29udHJvbD8uZGlydHkgJiYgdGhpcy5maXJzdENvbnRyb2xFcnJvcihjb250cm9sLCBzaG93Q2hpbGRFcnJvcnMpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZmlyc3RDb250cm9sRXJyb3IoXG4gICAgICAgIGNvbnRyb2w6IEZvcm1Db250cm9sIHwgQWJzdHJhY3RDb250cm9sIHwgRm9ybUdyb3VwIHwgRm9ybUFycmF5LFxuICAgICAgICBzaG93Q2hpbGRFcnJvcnMgPSB0cnVlXG4gICAgKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtR3JvdXAgJiYgc2hvd0NoaWxkRXJyb3JzKSB7XG4gICAgICAgICAgICBjb25zdCBlcnJvcnM6IEFycmF5PHN0cmluZyB8IHVuZGVmaW5lZD4gPSBPYmplY3Qua2V5cyhcbiAgICAgICAgICAgICAgICBjb250cm9sLmNvbnRyb2xzXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLm1hcCgoa2V5KSA9PiB0aGlzLmZpcnN0Q29udHJvbEVycm9yKGNvbnRyb2wuY29udHJvbHNba2V5XSkpXG4gICAgICAgICAgICAgICAgLmZpbHRlcigodmFsKSA9PiAhIXZhbCk7XG5cbiAgICAgICAgICAgIHJldHVybiBlcnJvcnNbMF07XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWNvbnRyb2w/LmVycm9ycykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGNvbnRyb2wuZXJyb3JzKTtcbiAgICAgICAgbGV0IGVycjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICAgICAgIGZvciAoY29uc3Qga2V5IG9mIGtleXMpIHtcbiAgICAgICAgICAgIGlmIChjb250cm9sLmVycm9yc1trZXldKSB7XG4gICAgICAgICAgICAgICAgZXJyID0ga2V5O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGVycjtcbiAgICB9XG5cbiAgICByZXNldENvbnRyb2woXG4gICAgICAgIGNvbnRyb2w6IEZvcm1Db250cm9sIHwgRm9ybUdyb3VwIHwgRm9ybUFycmF5IHwgQWJzdHJhY3RDb250cm9sXG4gICAgKSB7XG4gICAgICAgIGNvbnRyb2wuc2V0RXJyb3JzKG51bGwpO1xuICAgICAgICBjb250cm9sLnJlc2V0KCk7XG4gICAgICAgIGNvbnRyb2wubWFya0FzUHJpc3RpbmUoKTtcblxuICAgICAgICBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Hcm91cCkge1xuICAgICAgICAgICAgdGhpcy5yZXNldEZvcm0oY29udHJvbCk7XG4gICAgICAgIH0gZWxzZSBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1BcnJheSkge1xuICAgICAgICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBjb250cm9sPy5jb250cm9scykge1xuICAgICAgICAgICAgICAgIHRoaXMucmVzZXRDb250cm9sKGNoaWxkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlc2V0Rm9ybShmb3JtR3JvdXA6IEZvcm1Hcm91cCkge1xuICAgICAgICBmb3IgKGNvbnN0IGZpZWxkIG9mIE9iamVjdC5rZXlzKGZvcm1Hcm91cC5jb250cm9scykpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KGZpZWxkKTtcbiAgICAgICAgICAgIHRoaXMucmVzZXRDb250cm9sKGNvbnRyb2wgYXMgQWJzdHJhY3RDb250cm9sKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubWFya2VkRGlydHkgPSBmYWxzZTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,57 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class BaseUploadComponent {
5
+ fileId;
6
+ uploaded = false;
7
+ set loading(value) {
8
+ this.loading$.next(value);
9
+ }
10
+ fileChange = new EventEmitter();
11
+ uploaderInput;
12
+ file;
13
+ loading$ = new BehaviorSubject(false);
14
+ onChange($event) {
15
+ const target = $event.target;
16
+ const file = target.files?.[0];
17
+ if (file) {
18
+ this.loading$.next(true);
19
+ const reader = new FileReader();
20
+ reader.onload = (e) => this.onLoad(file, e?.currentTarget?.result);
21
+ reader.readAsDataURL(file);
22
+ }
23
+ }
24
+ onLoad(file, result) {
25
+ this.fileChange.next({
26
+ fileId: this.fileId,
27
+ result,
28
+ file,
29
+ });
30
+ if (this.uploaderInput?.nativeElement) {
31
+ this.uploaderInput.nativeElement.value = '';
32
+ }
33
+ this.file = file;
34
+ this.loading$.next(false);
35
+ }
36
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
37
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: BaseUploadComponent, selector: "ng-component", inputs: { fileId: "fileId", uploaded: "uploaded", loading: "loading" }, outputs: { fileChange: "fileChange" }, viewQueries: [{ propertyName: "uploaderInput", first: true, predicate: ["uploaderInput"], descendants: true }], ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
38
+ }
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseUploadComponent, decorators: [{
40
+ type: Component,
41
+ args: [{
42
+ template: ``,
43
+ changeDetection: ChangeDetectionStrategy.OnPush,
44
+ }]
45
+ }], propDecorators: { fileId: [{
46
+ type: Input
47
+ }], uploaded: [{
48
+ type: Input
49
+ }], loading: [{
50
+ type: Input
51
+ }], fileChange: [{
52
+ type: Output
53
+ }], uploaderInput: [{
54
+ type: ViewChild,
55
+ args: ['uploaderInput']
56
+ }] } });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3BhcGVybGVzcy9zcmMvbGliL2Jhc2UvdXBsb2FkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFNdkMsTUFBTSxPQUFnQixtQkFBbUI7SUFDNUIsTUFBTSxDQUFVO0lBQ2hCLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDMUIsSUFDSSxPQUFPLENBQUMsS0FBYztRQUN0QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRVMsVUFBVSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFFbkIsYUFBYSxDQUFjO0lBQ2hELElBQUksQ0FBUTtJQUVaLFFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUU3QyxRQUFRLENBQUMsTUFBYTtRQUNsQixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBMEIsQ0FBQztRQUNqRCxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFL0IsSUFBSSxJQUFJLEVBQUU7WUFDTixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUV6QixNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2hDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsYUFBYSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2hELE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDOUI7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVUsRUFBRSxNQUFjO1FBQzdCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO1lBQ2pCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixNQUFNO1lBQ04sSUFBSTtTQUNQLENBQUMsQ0FBQztRQUVILElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUU7WUFDbkMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztTQUMvQztRQUVELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7dUdBMUNpQixtQkFBbUI7MkZBQW5CLG1CQUFtQixtUkFIM0IsRUFBRTs7MkZBR00sbUJBQW1CO2tCQUp4QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDs4QkFFWSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFFRixPQUFPO3NCQURWLEtBQUs7Z0JBS0ksVUFBVTtzQkFBbkIsTUFBTTtnQkFFcUIsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGU6IGBgLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlVXBsb2FkQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKSBmaWxlSWQ/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgdXBsb2FkZWQgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIHNldCBsb2FkaW5nKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMubG9hZGluZyQubmV4dCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgQE91dHB1dCgpIGZpbGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ3VwbG9hZGVySW5wdXQnKSB1cGxvYWRlcklucHV0PzogRWxlbWVudFJlZjtcbiAgICBwdWJsaWMgZmlsZT86IEZpbGU7XG5cbiAgICBwdWJsaWMgbG9hZGluZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICAgIG9uQ2hhbmdlKCRldmVudDogRXZlbnQpIHtcbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gJGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgICAgICBjb25zdCBmaWxlID0gdGFyZ2V0LmZpbGVzPy5bMF07XG5cbiAgICAgICAgaWYgKGZpbGUpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyQubmV4dCh0cnVlKTtcblxuICAgICAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgICAgICAgIHJlYWRlci5vbmxvYWQgPSAoZTogYW55KSA9PlxuICAgICAgICAgICAgICAgIHRoaXMub25Mb2FkKGZpbGUsIGU/LmN1cnJlbnRUYXJnZXQ/LnJlc3VsdCk7XG4gICAgICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uTG9hZChmaWxlOiBGaWxlLCByZXN1bHQ6IHN0cmluZykge1xuICAgICAgICB0aGlzLmZpbGVDaGFuZ2UubmV4dCh7XG4gICAgICAgICAgICBmaWxlSWQ6IHRoaXMuZmlsZUlkLFxuICAgICAgICAgICAgcmVzdWx0LFxuICAgICAgICAgICAgZmlsZSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMudXBsb2FkZXJJbnB1dD8ubmF0aXZlRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy51cGxvYWRlcklucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZmlsZSA9IGZpbGU7XG4gICAgICAgIHRoaXMubG9hZGluZyQubmV4dChmYWxzZSk7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,44 @@
1
+ import { Directive, HostListener } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class BaseValueAccessor {
4
+ el;
5
+ onChange = () => {
6
+ /**/
7
+ };
8
+ onTouched = () => {
9
+ /**/
10
+ };
11
+ lastValue;
12
+ constructor(el) {
13
+ this.el = el;
14
+ }
15
+ writeValue(value) {
16
+ this.el.nativeElement.value = this.lastValue =
17
+ value == null ? '' : value;
18
+ }
19
+ handleChangeEvent(value) {
20
+ if (value !== this.lastValue) {
21
+ this.lastValue = value;
22
+ this.onChange(value);
23
+ }
24
+ }
25
+ registerOnChange(fn) {
26
+ this.onChange = fn;
27
+ }
28
+ registerOnTouched(fn) {
29
+ this.onTouched = fn;
30
+ }
31
+ _handleBlurEvent() {
32
+ this.onTouched();
33
+ }
34
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
35
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: BaseValueAccessor, host: { listeners: { "focusout": "_handleBlurEvent()" } }, ngImport: i0 });
36
+ }
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseValueAccessor, decorators: [{
38
+ type: Directive,
39
+ args: [{}]
40
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { _handleBlurEvent: [{
41
+ type: HostListener,
42
+ args: ['focusout']
43
+ }] } });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtYWNjZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wYXBlcmxlc3Mvc3JjL2xpYi9iYXNlL3ZhbHVlLWFjY2Vzc29yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUlwRSxNQUFNLE9BQU8saUJBQWlCO0lBV0o7SUFWWixRQUFRLEdBQXlCLEdBQUcsRUFBRTtRQUM1QyxJQUFJO0lBQ1IsQ0FBQyxDQUFDO0lBRVEsU0FBUyxHQUFlLEdBQUcsRUFBRTtRQUNuQyxJQUFJO0lBQ1IsQ0FBQyxDQUFDO0lBRVEsU0FBUyxDQUFNO0lBRXpCLFlBQXNCLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO0lBQUcsQ0FBQztJQUVqQyxVQUFVLENBQUMsS0FBVTtRQUN4QixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVM7WUFDeEMsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQUVNLGlCQUFpQixDQUFDLEtBQVU7UUFDL0IsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUMxQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3hCO0lBQ0wsQ0FBQztJQUVNLGdCQUFnQixDQUFDLEVBQXdCO1FBQzVDLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxFQUFjO1FBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFHUyxnQkFBZ0I7UUFDdEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3JCLENBQUM7dUdBcENRLGlCQUFpQjsyRkFBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUQ3QixTQUFTO21CQUFDLEVBQUU7aUdBbUNDLGdCQUFnQjtzQkFEekIsWUFBWTt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5ARGlyZWN0aXZlKHt9KVxuZXhwb3J0IGNsYXNzIEJhc2VWYWx1ZUFjY2Vzc29yIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICAgIHByb3RlY3RlZCBvbkNoYW5nZTogKHZhbHVlOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7XG4gICAgICAgIC8qKi9cbiAgICB9O1xuXG4gICAgcHJvdGVjdGVkIG9uVG91Y2hlZDogKCkgPT4gdm9pZCA9ICgpID0+IHtcbiAgICAgICAgLyoqL1xuICAgIH07XG5cbiAgICBwcm90ZWN0ZWQgbGFzdFZhbHVlOiBhbnk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZWw6IEVsZW1lbnRSZWYpIHt9XG5cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMubGFzdFZhbHVlID1cbiAgICAgICAgICAgIHZhbHVlID09IG51bGwgPyAnJyA6IHZhbHVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYW5kbGVDaGFuZ2VFdmVudCh2YWx1ZTogYW55KSB7XG4gICAgICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5sYXN0VmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMubGFzdFZhbHVlID0gdmFsdWU7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKSB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZm9jdXNvdXQnKVxuICAgIHByb3RlY3RlZCBfaGFuZGxlQmx1ckV2ZW50KCkge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,37 @@
1
+ import { Directive } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { BaseValueAccessor } from '../base';
4
+ import * as i0 from "@angular/core";
5
+ export class CropperDirective extends BaseValueAccessor {
6
+ constructor(el) {
7
+ super(el);
8
+ }
9
+ writeValue(value) {
10
+ this.el.nativeElement.value = this.lastValue = value;
11
+ }
12
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CropperDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
13
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: CropperDirective, selector: "p-cropper", host: { listeners: { "valueChange": "handleChangeEvent($event.detail)" } }, providers: [
14
+ {
15
+ provide: NG_VALUE_ACCESSOR,
16
+ useExisting: CropperDirective,
17
+ multi: true,
18
+ },
19
+ ], usesInheritance: true, ngImport: i0 });
20
+ }
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CropperDirective, decorators: [{
22
+ type: Directive,
23
+ args: [{
24
+ selector: 'p-cropper',
25
+ host: {
26
+ '(valueChange)': 'handleChangeEvent($event.detail)',
27
+ },
28
+ providers: [
29
+ {
30
+ provide: NG_VALUE_ACCESSOR,
31
+ useExisting: CropperDirective,
32
+ multi: true,
33
+ },
34
+ ],
35
+ }]
36
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicC1jcm9wcGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3BhcGVybGVzcy9zcmMvbGliL2RpcmVjdGl2ZXMvcC1jcm9wcGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFlNUMsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGlCQUFpQjtJQUN0RCxZQUFZLEVBQWM7UUFDekIsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVRLFVBQVUsQ0FBQyxLQUFVO1FBQzdCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUN0RCxDQUFDO3VHQVBXLGdCQUFnQjsyRkFBaEIsZ0JBQWdCLGdIQVJqQjtZQUNWO2dCQUNDLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxnQkFBZ0I7Z0JBQzdCLEtBQUssRUFBRSxJQUFJO2FBQ1g7U0FDRDs7MkZBRVcsZ0JBQWdCO2tCQWI1QixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxXQUFXO29CQUNyQixJQUFJLEVBQUU7d0JBQ0wsZUFBZSxFQUFFLGtDQUFrQztxQkFDbkQ7b0JBQ0QsU0FBUyxFQUFFO3dCQUNWOzRCQUNDLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsa0JBQWtCOzRCQUM3QixLQUFLLEVBQUUsSUFBSTt5QkFDWDtxQkFDRDtpQkFDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEJhc2VWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi4vYmFzZSc7XG5cbkBEaXJlY3RpdmUoe1xuXHRzZWxlY3RvcjogJ3AtY3JvcHBlcicsXG5cdGhvc3Q6IHtcblx0XHQnKHZhbHVlQ2hhbmdlKSc6ICdoYW5kbGVDaGFuZ2VFdmVudCgkZXZlbnQuZGV0YWlsKScsXG5cdH0sXG5cdHByb3ZpZGVyczogW1xuXHRcdHtcblx0XHRcdHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuXHRcdFx0dXNlRXhpc3Rpbmc6IENyb3BwZXJEaXJlY3RpdmUsXG5cdFx0XHRtdWx0aTogdHJ1ZSxcblx0XHR9LFxuXHRdLFxufSlcbmV4cG9ydCBjbGFzcyBDcm9wcGVyRGlyZWN0aXZlIGV4dGVuZHMgQmFzZVZhbHVlQWNjZXNzb3Ige1xuXHRjb25zdHJ1Y3RvcihlbDogRWxlbWVudFJlZikge1xuXHRcdHN1cGVyKGVsKTtcblx0fVxuXG5cdG92ZXJyaWRlIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuXHRcdHRoaXMuZWwubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMubGFzdFZhbHVlID0gdmFsdWU7XG5cdH1cbn1cbiJdfQ==
@@ -0,0 +1,37 @@
1
+ import { Directive } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { BaseValueAccessor } from '../base';
4
+ import * as i0 from "@angular/core";
5
+ export class DatepickerDirective extends BaseValueAccessor {
6
+ constructor(el) {
7
+ super(el);
8
+ }
9
+ writeValue(value) {
10
+ this.el.nativeElement.value = this.lastValue = value === null ? JSON.parse(value) : value;
11
+ }
12
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DatepickerDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
13
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: DatepickerDirective, selector: "p-datepicker", host: { listeners: { "valueChange": "handleChangeEvent($event.detail)" } }, providers: [
14
+ {
15
+ provide: NG_VALUE_ACCESSOR,
16
+ useExisting: DatepickerDirective,
17
+ multi: true,
18
+ },
19
+ ], usesInheritance: true, ngImport: i0 });
20
+ }
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DatepickerDirective, decorators: [{
22
+ type: Directive,
23
+ args: [{
24
+ selector: 'p-datepicker',
25
+ host: {
26
+ '(valueChange)': 'handleChangeEvent($event.detail)',
27
+ },
28
+ providers: [
29
+ {
30
+ provide: NG_VALUE_ACCESSOR,
31
+ useExisting: DatepickerDirective,
32
+ multi: true,
33
+ },
34
+ ],
35
+ }]
36
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicC1kYXRlcGlja2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3BhcGVybGVzcy9zcmMvbGliL2RpcmVjdGl2ZXMvcC1kYXRlcGlja2VyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFlNUMsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGlCQUFpQjtJQUN6RCxZQUFZLEVBQWM7UUFDekIsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVRLFVBQVUsQ0FBQyxLQUFVO1FBQzdCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUMzRixDQUFDO3VHQVBXLG1CQUFtQjsyRkFBbkIsbUJBQW1CLG1IQVJwQjtZQUNWO2dCQUNDLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxtQkFBbUI7Z0JBQ2hDLEtBQUssRUFBRSxJQUFJO2FBQ1g7U0FDRDs7MkZBRVcsbUJBQW1CO2tCQWIvQixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxjQUFjO29CQUN4QixJQUFJLEVBQUU7d0JBQ0wsZUFBZSxFQUFFLGtDQUFrQztxQkFDbkQ7b0JBQ0QsU0FBUyxFQUFFO3dCQUNWOzRCQUNDLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcscUJBQXFCOzRCQUNoQyxLQUFLLEVBQUUsSUFBSTt5QkFDWDtxQkFDRDtpQkFDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEJhc2VWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi4vYmFzZSc7XG5cbkBEaXJlY3RpdmUoe1xuXHRzZWxlY3RvcjogJ3AtZGF0ZXBpY2tlcicsXG5cdGhvc3Q6IHtcblx0XHQnKHZhbHVlQ2hhbmdlKSc6ICdoYW5kbGVDaGFuZ2VFdmVudCgkZXZlbnQuZGV0YWlsKScsXG5cdH0sXG5cdHByb3ZpZGVyczogW1xuXHRcdHtcblx0XHRcdHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuXHRcdFx0dXNlRXhpc3Rpbmc6IERhdGVwaWNrZXJEaXJlY3RpdmUsXG5cdFx0XHRtdWx0aTogdHJ1ZSxcblx0XHR9LFxuXHRdLFxufSlcbmV4cG9ydCBjbGFzcyBEYXRlcGlja2VyRGlyZWN0aXZlIGV4dGVuZHMgQmFzZVZhbHVlQWNjZXNzb3Ige1xuXHRjb25zdHJ1Y3RvcihlbDogRWxlbWVudFJlZikge1xuXHRcdHN1cGVyKGVsKTtcblx0fVxuXG5cdG92ZXJyaWRlIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuXHRcdHRoaXMuZWwubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMubGFzdFZhbHVlID0gdmFsdWUgPT09IG51bGwgPyBKU09OLnBhcnNlKHZhbHVlKSA6IHZhbHVlO1xuXHR9XG59XG4iXX0=
@@ -0,0 +1,42 @@
1
+ import { Directive } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { BaseValueAccessor } from '../base';
4
+ import * as i0 from "@angular/core";
5
+ export class PageSizeSelectDirective extends BaseValueAccessor {
6
+ constructor(el) {
7
+ super(el);
8
+ }
9
+ writeValue(value) {
10
+ this.el.nativeElement.page = this.lastValue =
11
+ value == null ? 12 : value;
12
+ }
13
+ registerOnChange(fn) {
14
+ super.registerOnChange((value) => fn(parseInt(value, 10)));
15
+ }
16
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PageSizeSelectDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
17
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: PageSizeSelectDirective, selector: "p-page-size-select", host: { listeners: { "sizeChange": "handleChangeEvent($event.detail)" } }, providers: [
18
+ {
19
+ provide: NG_VALUE_ACCESSOR,
20
+ useExisting: PageSizeSelectDirective,
21
+ multi: true,
22
+ },
23
+ ], usesInheritance: true, ngImport: i0 });
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PageSizeSelectDirective, decorators: [{
26
+ type: Directive,
27
+ args: [{
28
+ /* tslint:disable-next-line:directive-selector */
29
+ selector: 'p-page-size-select',
30
+ host: {
31
+ '(sizeChange)': 'handleChangeEvent($event.detail)',
32
+ },
33
+ providers: [
34
+ {
35
+ provide: NG_VALUE_ACCESSOR,
36
+ useExisting: PageSizeSelectDirective,
37
+ multi: true,
38
+ },
39
+ ],
40
+ }]
41
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicC1wYWdlLXNpemUtc2VsZWN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3BhcGVybGVzcy9zcmMvbGliL2RpcmVjdGl2ZXMvcC1wYWdlLXNpemUtc2VsZWN0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFnQjVDLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxpQkFBaUI7SUFDMUQsWUFBWSxFQUFjO1FBQ3RCLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNkLENBQUM7SUFFUSxVQUFVLENBQUMsS0FBVTtRQUMxQixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVM7WUFDdkMsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQUVRLGdCQUFnQixDQUFDLEVBQThCO1FBQ3BELEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7dUdBWlEsdUJBQXVCOzJGQUF2Qix1QkFBdUIsd0hBUnJCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLHVCQUF1QjtnQkFDcEMsS0FBSyxFQUFFLElBQUk7YUFDZDtTQUNKOzsyRkFFUSx1QkFBdUI7a0JBZG5DLFNBQVM7bUJBQUM7b0JBQ1AsaURBQWlEO29CQUNqRCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixJQUFJLEVBQUU7d0JBQ0YsY0FBYyxFQUFFLGtDQUFrQztxQkFDckQ7b0JBQ0QsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcseUJBQXlCOzRCQUNwQyxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEJhc2VWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi4vYmFzZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIC8qIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpkaXJlY3RpdmUtc2VsZWN0b3IgKi9cbiAgICBzZWxlY3RvcjogJ3AtcGFnZS1zaXplLXNlbGVjdCcsXG4gICAgaG9zdDoge1xuICAgICAgICAnKHNpemVDaGFuZ2UpJzogJ2hhbmRsZUNoYW5nZUV2ZW50KCRldmVudC5kZXRhaWwpJyxcbiAgICB9LFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBQYWdlU2l6ZVNlbGVjdERpcmVjdGl2ZSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2VTaXplU2VsZWN0RGlyZWN0aXZlIGV4dGVuZHMgQmFzZVZhbHVlQWNjZXNzb3Ige1xuICAgIGNvbnN0cnVjdG9yKGVsOiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHN1cGVyKGVsKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnBhZ2UgPSB0aGlzLmxhc3RWYWx1ZSA9XG4gICAgICAgICAgICB2YWx1ZSA9PSBudWxsID8gMTIgOiB2YWx1ZTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoXzogbnVtYmVyIHwgbnVsbCkgPT4gdm9pZCkge1xuICAgICAgICBzdXBlci5yZWdpc3Rlck9uQ2hhbmdlKCh2YWx1ZSkgPT4gZm4ocGFyc2VJbnQodmFsdWUsIDEwKSkpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,42 @@
1
+ import { Directive } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { BaseValueAccessor } from '../base';
4
+ import * as i0 from "@angular/core";
5
+ export class PaginationDirective extends BaseValueAccessor {
6
+ constructor(el) {
7
+ super(el);
8
+ }
9
+ writeValue(value) {
10
+ this.el.nativeElement.page = this.lastValue =
11
+ value == null ? 1 : value;
12
+ }
13
+ registerOnChange(fn) {
14
+ super.registerOnChange((value) => fn(parseInt(value, 10)));
15
+ }
16
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PaginationDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
17
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: PaginationDirective, selector: "p-pagination", host: { listeners: { "pageChange": "handleChangeEvent($event.detail)" } }, providers: [
18
+ {
19
+ provide: NG_VALUE_ACCESSOR,
20
+ useExisting: PaginationDirective,
21
+ multi: true,
22
+ },
23
+ ], usesInheritance: true, ngImport: i0 });
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PaginationDirective, decorators: [{
26
+ type: Directive,
27
+ args: [{
28
+ /* tslint:disable-next-line:directive-selector */
29
+ selector: 'p-pagination',
30
+ host: {
31
+ '(pageChange)': 'handleChangeEvent($event.detail)',
32
+ },
33
+ providers: [
34
+ {
35
+ provide: NG_VALUE_ACCESSOR,
36
+ useExisting: PaginationDirective,
37
+ multi: true,
38
+ },
39
+ ],
40
+ }]
41
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicC1wYWdpbmF0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3BhcGVybGVzcy9zcmMvbGliL2RpcmVjdGl2ZXMvcC1wYWdpbmF0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFnQjVDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxpQkFBaUI7SUFDdEQsWUFBWSxFQUFjO1FBQ3RCLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNkLENBQUM7SUFFZSxVQUFVLENBQUMsS0FBVTtRQUNqQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVM7WUFDdkMsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDbEMsQ0FBQztJQUVlLGdCQUFnQixDQUFDLEVBQThCO1FBQzNELEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7dUdBWlEsbUJBQW1COzJGQUFuQixtQkFBbUIsa0hBUmpCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLG1CQUFtQjtnQkFDaEMsS0FBSyxFQUFFLElBQUk7YUFDZDtTQUNKOzsyRkFFUSxtQkFBbUI7a0JBZC9CLFNBQVM7bUJBQUM7b0JBQ1AsaURBQWlEO29CQUNqRCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsSUFBSSxFQUFFO3dCQUNGLGNBQWMsRUFBRSxrQ0FBa0M7cUJBQ3JEO29CQUNELFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLHFCQUFxQjs0QkFDaEMsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0o7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBCYXNlVmFsdWVBY2Nlc3NvciB9IGZyb20gJy4uL2Jhc2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICAvKiB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6ZGlyZWN0aXZlLXNlbGVjdG9yICovXG4gICAgc2VsZWN0b3I6ICdwLXBhZ2luYXRpb24nLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhwYWdlQ2hhbmdlKSc6ICdoYW5kbGVDaGFuZ2VFdmVudCgkZXZlbnQuZGV0YWlsKScsXG4gICAgfSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogUGFnaW5hdGlvbkRpcmVjdGl2ZSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2luYXRpb25EaXJlY3RpdmUgZXh0ZW5kcyBCYXNlVmFsdWVBY2Nlc3NvciB7XG4gICAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYpIHtcbiAgICAgICAgc3VwZXIoZWwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnBhZ2UgPSB0aGlzLmxhc3RWYWx1ZSA9XG4gICAgICAgICAgICB2YWx1ZSA9PSBudWxsID8gMSA6IHZhbHVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoXzogbnVtYmVyIHwgbnVsbCkgPT4gdm9pZCkge1xuICAgICAgICBzdXBlci5yZWdpc3Rlck9uQ2hhbmdlKCh2YWx1ZSkgPT4gZm4ocGFyc2VJbnQodmFsdWUsIDEwKSkpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,37 @@
1
+ import { Directive } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { BaseValueAccessor } from '../base';
4
+ import * as i0 from "@angular/core";
5
+ export class SelectDirective extends BaseValueAccessor {
6
+ constructor(el) {
7
+ super(el);
8
+ }
9
+ writeValue(value) {
10
+ this.el.nativeElement.value = this.lastValue = value;
11
+ }
12
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SelectDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
13
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: SelectDirective, selector: "p-select", host: { listeners: { "valueChange": "handleChangeEvent($event.detail)" } }, providers: [
14
+ {
15
+ provide: NG_VALUE_ACCESSOR,
16
+ useExisting: SelectDirective,
17
+ multi: true,
18
+ },
19
+ ], usesInheritance: true, ngImport: i0 });
20
+ }
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SelectDirective, decorators: [{
22
+ type: Directive,
23
+ args: [{
24
+ selector: 'p-select',
25
+ host: {
26
+ '(valueChange)': 'handleChangeEvent($event.detail)',
27
+ },
28
+ providers: [
29
+ {
30
+ provide: NG_VALUE_ACCESSOR,
31
+ useExisting: SelectDirective,
32
+ multi: true,
33
+ },
34
+ ],
35
+ }]
36
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicC1zZWxlY3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcGFwZXJsZXNzL3NyYy9saWIvZGlyZWN0aXZlcy9wLXNlbGVjdC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBZTVDLE1BQU0sT0FBTyxlQUFnQixTQUFRLGlCQUFpQjtJQUNyRCxZQUFZLEVBQWM7UUFDekIsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVRLFVBQVUsQ0FBQyxLQUFVO1FBQzdCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUN0RCxDQUFDO3VHQVBXLGVBQWU7MkZBQWYsZUFBZSwrR0FSaEI7WUFDVjtnQkFDQyxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsZUFBZTtnQkFDNUIsS0FBSyxFQUFFLElBQUk7YUFDWDtTQUNEOzsyRkFFVyxlQUFlO2tCQWIzQixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxVQUFVO29CQUNwQixJQUFJLEVBQUU7d0JBQ0wsZUFBZSxFQUFFLGtDQUFrQztxQkFDbkQ7b0JBQ0QsU0FBUyxFQUFFO3dCQUNWOzRCQUNDLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsaUJBQWlCOzRCQUM1QixLQUFLLEVBQUUsSUFBSTt5QkFDWDtxQkFDRDtpQkFDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEJhc2VWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi4vYmFzZSc7XG5cbkBEaXJlY3RpdmUoe1xuXHRzZWxlY3RvcjogJ3Atc2VsZWN0Jyxcblx0aG9zdDoge1xuXHRcdCcodmFsdWVDaGFuZ2UpJzogJ2hhbmRsZUNoYW5nZUV2ZW50KCRldmVudC5kZXRhaWwpJyxcblx0fSxcblx0cHJvdmlkZXJzOiBbXG5cdFx0e1xuXHRcdFx0cHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG5cdFx0XHR1c2VFeGlzdGluZzogU2VsZWN0RGlyZWN0aXZlLFxuXHRcdFx0bXVsdGk6IHRydWUsXG5cdFx0fSxcblx0XSxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0RGlyZWN0aXZlIGV4dGVuZHMgQmFzZVZhbHVlQWNjZXNzb3Ige1xuXHRjb25zdHJ1Y3RvcihlbDogRWxlbWVudFJlZikge1xuXHRcdHN1cGVyKGVsKTtcblx0fVxuXG5cdG92ZXJyaWRlIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuXHRcdHRoaXMuZWwubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMubGFzdFZhbHVlID0gdmFsdWU7XG5cdH1cbn1cbiJdfQ==
@@ -7,20 +7,20 @@ import { PlatformModule } from '@angular/cdk/platform';
7
7
  import { PortalModule } from '@angular/cdk/portal';
8
8
  import * as i0 from "@angular/core";
9
9
  export class OverlayModule {
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OverlayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: OverlayModule, imports: [CommonModule,
12
+ StencilModule,
13
+ CDKOverlayModule,
14
+ PlatformModule,
15
+ ObserversModule,
16
+ PortalModule], exports: [PortalModule] });
17
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OverlayModule, imports: [CommonModule,
18
+ StencilModule,
19
+ CDKOverlayModule,
20
+ PlatformModule,
21
+ ObserversModule,
22
+ PortalModule, PortalModule] });
10
23
  }
11
- OverlayModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OverlayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- OverlayModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: OverlayModule, imports: [CommonModule,
13
- StencilModule,
14
- CDKOverlayModule,
15
- PlatformModule,
16
- ObserversModule,
17
- PortalModule], exports: [PortalModule] });
18
- OverlayModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OverlayModule, imports: [CommonModule,
19
- StencilModule,
20
- CDKOverlayModule,
21
- PlatformModule,
22
- ObserversModule,
23
- PortalModule, PortalModule] });
24
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OverlayModule, decorators: [{
25
25
  type: NgModule,
26
26
  args: [{
@@ -35,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
35
35
  exports: [PortalModule],
36
36
  }]
37
37
  }] });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wYXBlcmxlc3Mvc3JjL2xpYi9tb2R1bGVzL292ZXJsYXkvb3ZlcmxheS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXJELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxJQUFJLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFhbkQsTUFBTSxPQUFPLGFBQWE7OzBHQUFiLGFBQWE7MkdBQWIsYUFBYSxZQVRsQixZQUFZO1FBQ1osYUFBYTtRQUNiLGdCQUFnQjtRQUNoQixjQUFjO1FBQ2QsZUFBZTtRQUNmLFlBQVksYUFFTixZQUFZOzJHQUViLGFBQWEsWUFUbEIsWUFBWTtRQUNaLGFBQWE7UUFDYixnQkFBZ0I7UUFDaEIsY0FBYztRQUNkLGVBQWU7UUFDZixZQUFZLEVBRU4sWUFBWTsyRkFFYixhQUFhO2tCQVh6QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsWUFBWTtxQkFDZjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7aUJBQzFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdGVuY2lsTW9kdWxlIH0gZnJvbSAnLi4vLi4vc3RlbmNpbC5tb2R1bGUnO1xuXG5pbXBvcnQgeyBPYnNlcnZlcnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb2JzZXJ2ZXJzJztcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgYXMgQ0RLT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFBsYXRmb3JtTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BsYXRmb3JtJztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBTdGVuY2lsTW9kdWxlLFxuICAgICAgICBDREtPdmVybGF5TW9kdWxlLFxuICAgICAgICBQbGF0Zm9ybU1vZHVsZSxcbiAgICAgICAgT2JzZXJ2ZXJzTW9kdWxlLFxuICAgICAgICBQb3J0YWxNb2R1bGUsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbUG9ydGFsTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgT3ZlcmxheU1vZHVsZSB7fVxuIl19
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wYXBlcmxlc3Mvc3JjL2xpYi9tb2R1bGVzL292ZXJsYXkvb3ZlcmxheS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXJELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxJQUFJLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFhbkQsTUFBTSxPQUFPLGFBQWE7dUdBQWIsYUFBYTt3R0FBYixhQUFhLFlBVGxCLFlBQVk7WUFDWixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLGNBQWM7WUFDZCxlQUFlO1lBQ2YsWUFBWSxhQUVOLFlBQVk7d0dBRWIsYUFBYSxZQVRsQixZQUFZO1lBQ1osYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixjQUFjO1lBQ2QsZUFBZTtZQUNmLFlBQVksRUFFTixZQUFZOzsyRkFFYixhQUFhO2tCQVh6QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsWUFBWTtxQkFDZjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7aUJBQzFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdGVuY2lsTW9kdWxlIH0gZnJvbSAnLi4vLi4vc3RlbmNpbC5tb2R1bGUnO1xuXG5pbXBvcnQgeyBPYnNlcnZlcnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb2JzZXJ2ZXJzJztcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgYXMgQ0RLT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFBsYXRmb3JtTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BsYXRmb3JtJztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBTdGVuY2lsTW9kdWxlLFxuICAgICAgICBDREtPdmVybGF5TW9kdWxlLFxuICAgICAgICBQbGF0Zm9ybU1vZHVsZSxcbiAgICAgICAgT2JzZXJ2ZXJzTW9kdWxlLFxuICAgICAgICBQb3J0YWxNb2R1bGUsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbUG9ydGFsTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgT3ZlcmxheU1vZHVsZSB7fVxuIl19
@@ -0,0 +1,14 @@
1
+ import { Subject } from 'rxjs';
2
+ export class OverlayRef {
3
+ _overlay;
4
+ instance;
5
+ closed$ = new Subject();
6
+ constructor(_overlay) {
7
+ this._overlay = _overlay;
8
+ }
9
+ close() {
10
+ this._overlay.dispose();
11
+ this.closed$.next(null);
12
+ }
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5yZWYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wYXBlcmxlc3Mvc3JjL2xpYi9tb2R1bGVzL292ZXJsYXkvb3ZlcmxheS5yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvQixNQUFNLE9BQU8sVUFBVTtJQUlDO0lBSGIsUUFBUSxDQUFLO0lBQ2IsT0FBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFFL0IsWUFBb0IsUUFBdUI7UUFBdkIsYUFBUSxHQUFSLFFBQVEsQ0FBZTtJQUFHLENBQUM7SUFFL0MsS0FBSztRQUNELElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheVJlZiBhcyBDREtPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgY2xhc3MgT3ZlcmxheVJlZjxUPiB7XG4gICAgcHVibGljIGluc3RhbmNlITogVDtcbiAgICBwdWJsaWMgY2xvc2VkJCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9vdmVybGF5OiBDREtPdmVybGF5UmVmKSB7fVxuXG4gICAgY2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX292ZXJsYXkuZGlzcG9zZSgpO1xuICAgICAgICB0aGlzLmNsb3NlZCQubmV4dChudWxsKTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,77 @@
1
+ import { OverlayConfig, } from '@angular/cdk/overlay';
2
+ import { CdkPortal, ComponentPortal } from '@angular/cdk/portal';
3
+ import { Injectable, Injector, } from '@angular/core';
4
+ import { OverlayRef } from '../overlay.ref';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/cdk/overlay";
7
+ export class OverlayService {
8
+ injector;
9
+ overlay;
10
+ overlayRef;
11
+ constructor(injector, overlay) {
12
+ this.injector = injector;
13
+ this.overlay = overlay;
14
+ }
15
+ open(component, options = {}) {
16
+ const overlay = this._createOverlay();
17
+ const overlayRef = new OverlayRef(overlay);
18
+ this._attachModalContainer(overlay, overlayRef, component, options.providers ?? []);
19
+ this._attachData(overlayRef, options);
20
+ this.overlayRef = overlayRef;
21
+ return overlayRef;
22
+ }
23
+ // tslint:disable-next-line:max-line-length
24
+ _attachModalContainer(overlay, overlayRef, component, providers) {
25
+ const injector = this._createInjector(overlayRef, providers);
26
+ const containerPortal = component instanceof CdkPortal
27
+ ? component
28
+ : new ComponentPortal(component, null, injector);
29
+ const containerRef = overlay.attach(containerPortal);
30
+ overlayRef.instance = containerRef.instance;
31
+ return containerRef.instance;
32
+ }
33
+ _createInjector(overlayRef, providers) {
34
+ return Injector.create({
35
+ providers: [
36
+ {
37
+ provide: OverlayRef,
38
+ useValue: overlayRef,
39
+ },
40
+ ...providers,
41
+ ],
42
+ parent: this.injector,
43
+ });
44
+ }
45
+ _getOverlayConfig() {
46
+ const positionStrategy = this.overlay
47
+ .position()
48
+ .global()
49
+ .centerHorizontally()
50
+ .centerVertically();
51
+ const overlayConfig = new OverlayConfig({
52
+ hasBackdrop: false,
53
+ scrollStrategy: this.overlay.scrollStrategies.block(),
54
+ positionStrategy,
55
+ });
56
+ return overlayConfig;
57
+ }
58
+ _createOverlay() {
59
+ // Returns an OverlayConfig
60
+ const overlayConfig = this._getOverlayConfig();
61
+ // Returns an OverlayRef
62
+ return this.overlay.create(overlayConfig);
63
+ }
64
+ _attachData(overlayRef, options) {
65
+ if (options.data && typeof options.data === 'object') {
66
+ for (const key of Object.keys(options.data)) {
67
+ overlayRef.instance[key] = options.data[key];
68
+ }
69
+ }
70
+ }
71
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OverlayService, deps: [{ token: i0.Injector }, { token: i1.Overlay }], target: i0.ɵɵFactoryTarget.Injectable });
72
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OverlayService });
73
+ }
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OverlayService, decorators: [{
75
+ type: Injectable
76
+ }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.Overlay }]; } });
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGFwZXJsZXNzL3NyYy9saWIvbW9kdWxlcy9vdmVybGF5L3NlcnZpY2VzL292ZXJsYXkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsYUFBYSxHQUVoQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFpQixNQUFNLHFCQUFxQixDQUFDO0FBQ2hGLE9BQU8sRUFFSCxVQUFVLEVBQ1YsUUFBUSxHQUVYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBUTVDLE1BQU0sT0FBTyxjQUFjO0lBRUg7SUFBNEI7SUFEekMsVUFBVSxDQUFtQjtJQUNwQyxZQUFvQixRQUFrQixFQUFVLE9BQWdCO1FBQTVDLGFBQVEsR0FBUixRQUFRLENBQVU7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFTO0lBQUcsQ0FBQztJQUVwRSxJQUFJLENBQ0EsU0FBdUMsRUFDdkMsVUFBd0IsRUFBRTtRQUUxQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxVQUFVLENBQUksT0FBTyxDQUFDLENBQUM7UUFFOUMsSUFBSSxDQUFDLHFCQUFxQixDQUN0QixPQUFPLEVBQ1AsVUFBVSxFQUNWLFNBQVMsRUFDVCxPQUFPLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FDMUIsQ0FBQztRQUVGLElBQUksQ0FBQyxXQUFXLENBQUksVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXpDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7SUFFRCwyQ0FBMkM7SUFDbkMscUJBQXFCLENBQ3pCLE9BQXNCLEVBQ3RCLFVBQXlCLEVBQ3pCLFNBQXVDLEVBQ3ZDLFNBQTJCO1FBRTNCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUksVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRWhFLE1BQU0sZUFBZSxHQUNqQixTQUFTLFlBQVksU0FBUztZQUMxQixDQUFDLENBQUMsU0FBUztZQUNYLENBQUMsQ0FBQyxJQUFJLGVBQWUsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3pELE1BQU0sWUFBWSxHQUFvQixPQUFPLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRXRFLFVBQVUsQ0FBQyxRQUFRLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUU1QyxPQUFPLFlBQVksQ0FBQyxRQUFRLENBQUM7SUFDakMsQ0FBQztJQUVPLGVBQWUsQ0FDbkIsVUFBeUIsRUFDekIsU0FBMkI7UUFFM0IsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQ25CLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUsVUFBVTtvQkFDbkIsUUFBUSxFQUFFLFVBQVU7aUJBQ3ZCO2dCQUNELEdBQUcsU0FBUzthQUNmO1lBQ0QsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3hCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxpQkFBaUI7UUFDckIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTzthQUNoQyxRQUFRLEVBQUU7YUFDVixNQUFNLEVBQUU7YUFDUixrQkFBa0IsRUFBRTthQUNwQixnQkFBZ0IsRUFBRSxDQUFDO1FBRXhCLE1BQU0sYUFBYSxHQUFHLElBQUksYUFBYSxDQUFDO1lBQ3BDLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLGNBQWMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRTtZQUNyRCxnQkFBZ0I7U0FDbkIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxhQUFhLENBQUM7SUFDekIsQ0FBQztJQUVPLGNBQWM7UUFDbEIsMkJBQTJCO1FBQzNCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBRS9DLHdCQUF3QjtRQUN4QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTyxXQUFXLENBQUksVUFBeUIsRUFBRSxPQUFxQjtRQUNuRSxJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksT0FBTyxPQUFPLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRTtZQUNsRCxLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUN4QyxVQUFVLENBQUMsUUFBZ0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3pEO1NBQ0o7SUFDTCxDQUFDO3VHQTFGUSxjQUFjOzJHQUFkLGNBQWM7OzJGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIE92ZXJsYXksXG4gICAgT3ZlcmxheUNvbmZpZyxcbiAgICBPdmVybGF5UmVmIGFzIENES092ZXJsYXlSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IENka1BvcnRhbCwgQ29tcG9uZW50UG9ydGFsLCBDb21wb25lbnRUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICAgIENvbXBvbmVudFJlZixcbiAgICBJbmplY3RhYmxlLFxuICAgIEluamVjdG9yLFxuICAgIFN0YXRpY1Byb3ZpZGVyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE92ZXJsYXlSZWYgfSBmcm9tICcuLi9vdmVybGF5LnJlZic7XG5cbmludGVyZmFjZSBNb2RhbE9wdGlvbnMge1xuICAgIGRhdGE/OiBhbnk7XG4gICAgcHJvdmlkZXJzPzogU3RhdGljUHJvdmlkZXJbXTtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE92ZXJsYXlTZXJ2aWNlIHtcbiAgICBwdWJsaWMgb3ZlcmxheVJlZiE6IE92ZXJsYXlSZWY8YW55PjtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluamVjdG9yOiBJbmplY3RvciwgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5KSB7fVxuXG4gICAgb3BlbjxUPihcbiAgICAgICAgY29tcG9uZW50OiBDb21wb25lbnRUeXBlPFQ+IHwgQ2RrUG9ydGFsLFxuICAgICAgICBvcHRpb25zOiBNb2RhbE9wdGlvbnMgPSB7fVxuICAgICkge1xuICAgICAgICBjb25zdCBvdmVybGF5ID0gdGhpcy5fY3JlYXRlT3ZlcmxheSgpO1xuICAgICAgICBjb25zdCBvdmVybGF5UmVmID0gbmV3IE92ZXJsYXlSZWY8VD4ob3ZlcmxheSk7XG5cbiAgICAgICAgdGhpcy5fYXR0YWNoTW9kYWxDb250YWluZXI8VD4oXG4gICAgICAgICAgICBvdmVybGF5LFxuICAgICAgICAgICAgb3ZlcmxheVJlZixcbiAgICAgICAgICAgIGNvbXBvbmVudCxcbiAgICAgICAgICAgIG9wdGlvbnMucHJvdmlkZXJzID8/IFtdXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5fYXR0YWNoRGF0YTxUPihvdmVybGF5UmVmLCBvcHRpb25zKTtcblxuICAgICAgICB0aGlzLm92ZXJsYXlSZWYgPSBvdmVybGF5UmVmO1xuICAgICAgICByZXR1cm4gb3ZlcmxheVJlZjtcbiAgICB9XG5cbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bWF4LWxpbmUtbGVuZ3RoXG4gICAgcHJpdmF0ZSBfYXR0YWNoTW9kYWxDb250YWluZXI8VD4oXG4gICAgICAgIG92ZXJsYXk6IENES092ZXJsYXlSZWYsXG4gICAgICAgIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWY8VD4sXG4gICAgICAgIGNvbXBvbmVudDogQ29tcG9uZW50VHlwZTxUPiB8IENka1BvcnRhbCxcbiAgICAgICAgcHJvdmlkZXJzOiBTdGF0aWNQcm92aWRlcltdXG4gICAgKSB7XG4gICAgICAgIGNvbnN0IGluamVjdG9yID0gdGhpcy5fY3JlYXRlSW5qZWN0b3I8VD4ob3ZlcmxheVJlZiwgcHJvdmlkZXJzKTtcblxuICAgICAgICBjb25zdCBjb250YWluZXJQb3J0YWwgPVxuICAgICAgICAgICAgY29tcG9uZW50IGluc3RhbmNlb2YgQ2RrUG9ydGFsXG4gICAgICAgICAgICAgICAgPyBjb21wb25lbnRcbiAgICAgICAgICAgICAgICA6IG5ldyBDb21wb25lbnRQb3J0YWwoY29tcG9uZW50LCBudWxsLCBpbmplY3Rvcik7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lclJlZjogQ29tcG9uZW50UmVmPFQ+ID0gb3ZlcmxheS5hdHRhY2goY29udGFpbmVyUG9ydGFsKTtcblxuICAgICAgICBvdmVybGF5UmVmLmluc3RhbmNlID0gY29udGFpbmVyUmVmLmluc3RhbmNlO1xuXG4gICAgICAgIHJldHVybiBjb250YWluZXJSZWYuaW5zdGFuY2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfY3JlYXRlSW5qZWN0b3I8VD4oXG4gICAgICAgIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWY8VD4sXG4gICAgICAgIHByb3ZpZGVyczogU3RhdGljUHJvdmlkZXJbXVxuICAgICk6IEluamVjdG9yIHtcbiAgICAgICAgcmV0dXJuIEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IE92ZXJsYXlSZWYsXG4gICAgICAgICAgICAgICAgICAgIHVzZVZhbHVlOiBvdmVybGF5UmVmLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgLi4ucHJvdmlkZXJzLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIHBhcmVudDogdGhpcy5pbmplY3RvcixcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZ2V0T3ZlcmxheUNvbmZpZygpOiBPdmVybGF5Q29uZmlnIHtcbiAgICAgICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IHRoaXMub3ZlcmxheVxuICAgICAgICAgICAgLnBvc2l0aW9uKClcbiAgICAgICAgICAgIC5nbG9iYWwoKVxuICAgICAgICAgICAgLmNlbnRlckhvcml6b250YWxseSgpXG4gICAgICAgICAgICAuY2VudGVyVmVydGljYWxseSgpO1xuXG4gICAgICAgIGNvbnN0IG92ZXJsYXlDb25maWcgPSBuZXcgT3ZlcmxheUNvbmZpZyh7XG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogZmFsc2UsXG4gICAgICAgICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuYmxvY2soKSxcbiAgICAgICAgICAgIHBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBvdmVybGF5Q29uZmlnO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2NyZWF0ZU92ZXJsYXkoKSB7XG4gICAgICAgIC8vIFJldHVybnMgYW4gT3ZlcmxheUNvbmZpZ1xuICAgICAgICBjb25zdCBvdmVybGF5Q29uZmlnID0gdGhpcy5fZ2V0T3ZlcmxheUNvbmZpZygpO1xuXG4gICAgICAgIC8vIFJldHVybnMgYW4gT3ZlcmxheVJlZlxuICAgICAgICByZXR1cm4gdGhpcy5vdmVybGF5LmNyZWF0ZShvdmVybGF5Q29uZmlnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9hdHRhY2hEYXRhPFQ+KG92ZXJsYXlSZWY6IE92ZXJsYXlSZWY8VD4sIG9wdGlvbnM6IE1vZGFsT3B0aW9ucykge1xuICAgICAgICBpZiAob3B0aW9ucy5kYXRhICYmIHR5cGVvZiBvcHRpb25zLmRhdGEgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhvcHRpb25zLmRhdGEpKSB7XG4gICAgICAgICAgICAgICAgKG92ZXJsYXlSZWYuaW5zdGFuY2UgYXMgYW55KVtrZXldID0gb3B0aW9ucy5kYXRhW2tleV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=