@one-paragon/angular-utilities 0.1.39 → 0.1.50-b

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 (136) hide show
  1. package/action-state/ngrx.d.ts +1 -1
  2. package/fesm2022/one-paragon-angular-utilities.mjs +599 -469
  3. package/fesm2022/one-paragon-angular-utilities.mjs.map +1 -1
  4. package/http-request-state/HttpRequestStateStore.d.ts +1 -1
  5. package/http-request-state/directives/HttpStateDirectiveBase.d.ts +1 -1
  6. package/ngrx/actionable-selector.d.ts +1 -2
  7. package/package.json +10 -12
  8. package/table-builder/classes/GenericTableDataSource.d.ts +8 -1
  9. package/table-builder/classes/MatTableObservableDataSource.d.ts +8 -0
  10. package/table-builder/classes/TableState.d.ts +3 -3
  11. package/table-builder/classes/table-builder-general-settings.d.ts +3 -3
  12. package/table-builder/classes/table-store.d.ts +9 -9
  13. package/table-builder/components/generic-table/generic-table.component.d.ts +13 -6
  14. package/table-builder/components/generic-table/paginator.component.d.ts +3 -2
  15. package/table-builder/components/sort-menu/sort-menu.component-store.d.ts +2 -2
  16. package/table-builder/components/table-container/table-container.d.ts +5 -1
  17. package/table-builder/directives/resize-column.directive.d.ts +3 -3
  18. package/table-builder/directives/tb-filter.directive.d.ts +1 -1
  19. package/table-builder/interfaces/report-def.d.ts +0 -5
  20. package/table-builder/ngrx/actions.d.ts +5 -5
  21. package/table-builder/ngrx/effects.d.ts +3 -3
  22. package/table-builder/table-builder.module.d.ts +3 -1
  23. package/utilities/directives/dialog.d.ts +2 -2
  24. package/esm2022/action-state/action-state-spinner/action-state-spinner.component.mjs +0 -24
  25. package/esm2022/action-state/action-state-ui/action-state-ui.module.mjs +0 -29
  26. package/esm2022/action-state/index.mjs +0 -8
  27. package/esm2022/action-state/ngrx-ext/ngrx-ext.module.mjs +0 -24
  28. package/esm2022/action-state/ngrx.mjs +0 -42
  29. package/esm2022/http-request-state/HttpRequestStateFactory.mjs +0 -28
  30. package/esm2022/http-request-state/HttpRequestStateStore.mjs +0 -98
  31. package/esm2022/http-request-state/directives/HttpStateDirectiveBase.mjs +0 -35
  32. package/esm2022/http-request-state/directives/http-error-state-directive.mjs +0 -30
  33. package/esm2022/http-request-state/directives/http-inProgress-state-directive.mjs +0 -30
  34. package/esm2022/http-request-state/directives/http-notStarted-state-directive.mjs +0 -30
  35. package/esm2022/http-request-state/directives/http-success-state-directive.mjs +0 -35
  36. package/esm2022/http-request-state/directives/index.mjs +0 -6
  37. package/esm2022/http-request-state/directives/request-state-directive.mjs +0 -61
  38. package/esm2022/http-request-state/helpers.mjs +0 -22
  39. package/esm2022/http-request-state/http-request-state.mjs +0 -39
  40. package/esm2022/http-request-state/http-state-module.mjs +0 -42
  41. package/esm2022/http-request-state/index.mjs +0 -7
  42. package/esm2022/http-request-state/rxjs/getRequestorBody.mjs +0 -4
  43. package/esm2022/http-request-state/rxjs/getRequestorState.mjs +0 -3
  44. package/esm2022/http-request-state/rxjs/index.mjs +0 -5
  45. package/esm2022/http-request-state/rxjs/tapError.mjs +0 -12
  46. package/esm2022/http-request-state/rxjs/tapSuccess.mjs +0 -12
  47. package/esm2022/http-request-state/types.mjs +0 -16
  48. package/esm2022/ngrx/actionable-selector.mjs +0 -77
  49. package/esm2022/ngrx/index.mjs +0 -2
  50. package/esm2022/one-paragon-angular-utilities.mjs +0 -5
  51. package/esm2022/public-api.mjs +0 -19
  52. package/esm2022/rxjs/defaultShareReplay.mjs +0 -7
  53. package/esm2022/rxjs/index.mjs +0 -5
  54. package/esm2022/rxjs/mapError.mjs +0 -8
  55. package/esm2022/rxjs/rxjs-operators.mjs +0 -91
  56. package/esm2022/rxjs/subjectifier.mjs +0 -15
  57. package/esm2022/table-builder/classes/DefaultSettings.mjs +0 -6
  58. package/esm2022/table-builder/classes/GenericTableDataSource.mjs +0 -11
  59. package/esm2022/table-builder/classes/MatTableObservableDataSource.mjs +0 -21
  60. package/esm2022/table-builder/classes/TableBuilderConfig.mjs +0 -3
  61. package/esm2022/table-builder/classes/TableState.mjs +0 -32
  62. package/esm2022/table-builder/classes/data-filter.mjs +0 -26
  63. package/esm2022/table-builder/classes/display-col.mjs +0 -2
  64. package/esm2022/table-builder/classes/filter-info.mjs +0 -73
  65. package/esm2022/table-builder/classes/table-builder-general-settings.mjs +0 -68
  66. package/esm2022/table-builder/classes/table-builder.mjs +0 -76
  67. package/esm2022/table-builder/classes/table-store.mjs +0 -298
  68. package/esm2022/table-builder/components/array-column.component.mjs +0 -58
  69. package/esm2022/table-builder/components/column-builder/column-builder.component.mjs +0 -113
  70. package/esm2022/table-builder/components/date-filter/date-filter.component.mjs +0 -26
  71. package/esm2022/table-builder/components/date-time-filter/date-time-filter.component.mjs +0 -23
  72. package/esm2022/table-builder/components/filter/filter.component.mjs +0 -55
  73. package/esm2022/table-builder/components/filter/in-list/in-list-filter.component.mjs +0 -92
  74. package/esm2022/table-builder/components/gen-col-displayer/gen-col-displayer.component.mjs +0 -46
  75. package/esm2022/table-builder/components/generic-table/generic-table.component.mjs +0 -212
  76. package/esm2022/table-builder/components/generic-table/paginator.component.mjs +0 -75
  77. package/esm2022/table-builder/components/group-by-list/group-by-list.component.mjs +0 -23
  78. package/esm2022/table-builder/components/header-menu/header-menu.component.mjs +0 -92
  79. package/esm2022/table-builder/components/in-filter/in-filter.component.mjs +0 -64
  80. package/esm2022/table-builder/components/index.mjs +0 -10
  81. package/esm2022/table-builder/components/initialization-component/initialization-component.mjs +0 -34
  82. package/esm2022/table-builder/components/link-column.component.mjs +0 -67
  83. package/esm2022/table-builder/components/number-filter/number-filter.component.mjs +0 -28
  84. package/esm2022/table-builder/components/sort-menu/sort-menu.component-store.mjs +0 -44
  85. package/esm2022/table-builder/components/sort-menu/sort-menu.component.mjs +0 -76
  86. package/esm2022/table-builder/components/table-container/table-container.mjs +0 -323
  87. package/esm2022/table-builder/components/table-container-filter/filter-list/filter-list.component.mjs +0 -43
  88. package/esm2022/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.mjs +0 -31
  89. package/esm2022/table-builder/components/table-container-filter/table-wrapper-filter-store.mjs +0 -26
  90. package/esm2022/table-builder/directives/custom-cell-directive.mjs +0 -60
  91. package/esm2022/table-builder/directives/index.mjs +0 -6
  92. package/esm2022/table-builder/directives/multi-sort.directive.mjs +0 -55
  93. package/esm2022/table-builder/directives/resize-column.directive.mjs +0 -87
  94. package/esm2022/table-builder/directives/table-wrapper.directive.mjs +0 -27
  95. package/esm2022/table-builder/directives/tb-filter.directive.mjs +0 -413
  96. package/esm2022/table-builder/enums/filterTypes.mjs +0 -72
  97. package/esm2022/table-builder/functions/boolean-filter-function.mjs +0 -10
  98. package/esm2022/table-builder/functions/date-filter-function.mjs +0 -58
  99. package/esm2022/table-builder/functions/download-data.mjs +0 -12
  100. package/esm2022/table-builder/functions/null-filter-function.mjs +0 -8
  101. package/esm2022/table-builder/functions/number-filter-function.mjs +0 -32
  102. package/esm2022/table-builder/functions/sort-data-function.mjs +0 -5
  103. package/esm2022/table-builder/functions/string-filter-function.mjs +0 -41
  104. package/esm2022/table-builder/interfaces/ColumnInfo.mjs +0 -2
  105. package/esm2022/table-builder/interfaces/dictionary.mjs +0 -2
  106. package/esm2022/table-builder/interfaces/report-def.mjs +0 -35
  107. package/esm2022/table-builder/material.module.mjs +0 -208
  108. package/esm2022/table-builder/ngrx/actions.mjs +0 -5
  109. package/esm2022/table-builder/ngrx/effects.mjs +0 -49
  110. package/esm2022/table-builder/ngrx/reducer.mjs +0 -52
  111. package/esm2022/table-builder/ngrx/selectors.mjs +0 -24
  112. package/esm2022/table-builder/pipes/column-total.pipe.mjs +0 -21
  113. package/esm2022/table-builder/pipes/format-filter-type.pipe.mjs +0 -19
  114. package/esm2022/table-builder/pipes/format-filter-value.pipe.mjs +0 -46
  115. package/esm2022/table-builder/pipes/key-display.mjs +0 -21
  116. package/esm2022/table-builder/services/export-to-csv.service.mjs +0 -89
  117. package/esm2022/table-builder/services/link-creator.service.mjs +0 -42
  118. package/esm2022/table-builder/services/table-template-service.mjs +0 -45
  119. package/esm2022/table-builder/services/transform-creator.mjs +0 -76
  120. package/esm2022/table-builder/table-builder.module.mjs +0 -208
  121. package/esm2022/utilities/directives/auto-focus.directive.mjs +0 -27
  122. package/esm2022/utilities/directives/clickEmitterDirective.mjs +0 -22
  123. package/esm2022/utilities/directives/clickSubject.mjs +0 -28
  124. package/esm2022/utilities/directives/conditional-classes.directive.mjs +0 -36
  125. package/esm2022/utilities/directives/dialog-service.mjs +0 -26
  126. package/esm2022/utilities/directives/dialog.mjs +0 -139
  127. package/esm2022/utilities/directives/mat-toggle-group-directive.mjs +0 -60
  128. package/esm2022/utilities/directives/prevent-enter.directive.mjs +0 -20
  129. package/esm2022/utilities/directives/stop-propagation.directive.mjs +0 -26
  130. package/esm2022/utilities/directives/styler.mjs +0 -27
  131. package/esm2022/utilities/directives/trim-whitespace.directive.mjs +0 -30
  132. package/esm2022/utilities/index.mjs +0 -16
  133. package/esm2022/utilities/module.mjs +0 -92
  134. package/esm2022/utilities/pipes/function.pipe.mjs +0 -22
  135. package/esm2022/utilities/pipes/phone.pipe.mjs +0 -21
  136. package/esm2022/utilities/pipes/space-case.pipes.mjs +0 -29
@@ -1,64 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import { FieldType } from '../../interfaces/report-def';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- import * as i2 from "@angular/forms";
7
- import * as i3 from "../../../utilities/directives/auto-focus.directive";
8
- class InFilterComponent {
9
- constructor(ref) {
10
- this.ref = ref;
11
- this.FieldType = FieldType;
12
- this.value = [undefined];
13
- this.onChange = (_) => { };
14
- this.onTouched = () => { };
15
- this.value = [undefined];
16
- }
17
- writeValue(obj) {
18
- if (!obj?.length)
19
- obj = [undefined];
20
- this.value = obj;
21
- this.ref.markForCheck();
22
- }
23
- registerOnChange(fn) {
24
- this.onChange = fn;
25
- }
26
- registerOnTouched(fn) {
27
- this.onTouched = fn;
28
- }
29
- addInput() {
30
- this.value = [...this.value, undefined];
31
- this.ref.markForCheck();
32
- this.onChange(this.value);
33
- }
34
- removeInput(index) {
35
- this.value = [...this.value];
36
- this.value.splice(index, 1);
37
- this.ref.markForCheck();
38
- this.onChange(this.value);
39
- }
40
- onValueChange(i, value) {
41
- this.value = [...this.value];
42
- this.value[i] = value;
43
- this.ref.markForCheck();
44
- this.onChange(this.value);
45
- }
46
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: InFilterComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
47
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: InFilterComponent, selector: "lib-in-filter", inputs: { type: "type" }, providers: [{
48
- provide: NG_VALUE_ACCESSOR,
49
- useExisting: InFilterComponent,
50
- multi: true
51
- }], ngImport: i0, template: "<div class=inline>\n <div *ngFor=\"let val of value; index as i\">\n <input *ngIf=\"type === FieldType.Number || type === FieldType.Currency\"\n [ngModel]=\"val\" (ngModelChange)=\"onValueChange(i,$event)\"\n [readonly]=\"i+1 < value.length\" type=\"number\" [ngModelOptions]=\"{standalone:true}\" [autoFocus]=\"i === value.length - 1\"/>\n <input *ngIf=\"type !== FieldType.Number && type !== FieldType.Currency\"\n [ngModel]=\"val\" (ngModelChange)=\"onValueChange(i,$event)\"\n [readonly]=\"i+1 < value.length\" type=\"string\" [ngModelOptions]=\"{standalone:true}\"\n #input [autoFocus]=\"i === value.length - 1\" />\n <button [disabled]=\"value.length <= 1\" (click)=\"removeInput(i)\">-</button>\n <button *ngIf=\"i === value.length - 1\" [disabled]=\"val == undefined || val === ''\" (click)=\"addInput()\">+</button>\n </div>\n</div>\n", styles: [".inline{display:inline-block}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.AutoFocusDirective, selector: "[autoFocus]", inputs: ["autoFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
52
- }
53
- export { InFilterComponent };
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: InFilterComponent, decorators: [{
55
- type: Component,
56
- args: [{ selector: 'lib-in-filter', changeDetection: ChangeDetectionStrategy.OnPush, providers: [{
57
- provide: NG_VALUE_ACCESSOR,
58
- useExisting: InFilterComponent,
59
- multi: true
60
- }], template: "<div class=inline>\n <div *ngFor=\"let val of value; index as i\">\n <input *ngIf=\"type === FieldType.Number || type === FieldType.Currency\"\n [ngModel]=\"val\" (ngModelChange)=\"onValueChange(i,$event)\"\n [readonly]=\"i+1 < value.length\" type=\"number\" [ngModelOptions]=\"{standalone:true}\" [autoFocus]=\"i === value.length - 1\"/>\n <input *ngIf=\"type !== FieldType.Number && type !== FieldType.Currency\"\n [ngModel]=\"val\" (ngModelChange)=\"onValueChange(i,$event)\"\n [readonly]=\"i+1 < value.length\" type=\"string\" [ngModelOptions]=\"{standalone:true}\"\n #input [autoFocus]=\"i === value.length - 1\" />\n <button [disabled]=\"value.length <= 1\" (click)=\"removeInput(i)\">-</button>\n <button *ngIf=\"i === value.length - 1\" [disabled]=\"val == undefined || val === ''\" (click)=\"addInput()\">+</button>\n </div>\n</div>\n", styles: [".inline{display:inline-block}\n"] }]
61
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { type: [{
62
- type: Input
63
- }] } });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW4tZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy90YWJsZS1idWlsZGVyL2NvbXBvbmVudHMvaW4tZmlsdGVyL2luLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jb21wb25lbnRzL2luLWZpbHRlci9pbi1maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdGLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7O0FBRXhELE1BV2EsaUJBQWlCO0lBSzVCLFlBQW9CLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBSjFDLGNBQVMsR0FBRyxTQUFTLENBQUM7UUFFdEIsVUFBSyxHQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7UUFVM0IsYUFBUSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFLM0IsY0FBUyxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQVpwQixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUNELFVBQVUsQ0FBQyxHQUFVO1FBQ25CLElBQUcsQ0FBQyxHQUFHLEVBQUUsTUFBTTtZQUFFLEdBQUcsR0FBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUdELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFhO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsYUFBYSxDQUFDLENBQVEsRUFBQyxLQUFzQjtRQUMzQyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDOzhHQXpDVSxpQkFBaUI7a0dBQWpCLGlCQUFpQixrRUFOakIsQ0FBQztnQkFDVixPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsaUJBQWlCO2dCQUM5QixLQUFLLEVBQUUsSUFBSTthQUNaLENBQUMsMEJDZEosMDRCQWFBOztTREdhLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQVg3QixTQUFTOytCQUNFLGVBQWUsbUJBR1QsdUJBQXVCLENBQUMsTUFBTSxhQUNuQyxDQUFDOzRCQUNWLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsbUJBQW1COzRCQUM5QixLQUFLLEVBQUUsSUFBSTt5QkFDWixDQUFDO3dHQUlPLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEZpbHRlckluZm8gfSBmcm9tICcuLi8uLi9jbGFzc2VzL2ZpbHRlci1pbmZvJztcclxuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9yZXBvcnQtZGVmJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWluLWZpbHRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2luLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW4tZmlsdGVyLmNvbXBvbmVudC5jc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHByb3ZpZGVyczogW3tcclxuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgdXNlRXhpc3Rpbmc6IEluRmlsdGVyQ29tcG9uZW50LFxyXG4gICAgbXVsdGk6IHRydWVcclxuICB9XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEluRmlsdGVyQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xyXG4gIEZpZWxkVHlwZSA9IEZpZWxkVHlwZTtcclxuICBASW5wdXQoKSB0eXBlISA6IEZpZWxkVHlwZTtcclxuICB2YWx1ZTogYW55W10gPSBbdW5kZWZpbmVkXTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgICB0aGlzLnZhbHVlID0gW3VuZGVmaW5lZF07XHJcbiAgfVxyXG4gIHdyaXRlVmFsdWUob2JqOiBhbnlbXSk6IHZvaWQge1xyXG4gICAgaWYoIW9iaj8ubGVuZ3RoKSBvYmogID0gW3VuZGVmaW5lZF07XHJcbiAgICB0aGlzLnZhbHVlID0gb2JqO1xyXG4gICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgfVxyXG4gIG9uQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcbiAgb25Ub3VjaGVkID0gKCkgPT4geyB9O1xyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICBhZGRJbnB1dCgpe1xyXG4gICAgdGhpcy52YWx1ZSA9IFsuLi50aGlzLnZhbHVlLCB1bmRlZmluZWRdO1xyXG4gICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlSW5wdXQoaW5kZXg6IG51bWJlcil7XHJcbiAgICB0aGlzLnZhbHVlID0gWy4uLnRoaXMudmFsdWVdO1xyXG4gICAgdGhpcy52YWx1ZS5zcGxpY2UoaW5kZXgsMSk7XHJcbiAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBvblZhbHVlQ2hhbmdlKGk6bnVtYmVyLHZhbHVlOiBudW1iZXIgfCBzdHJpbmcpe1xyXG4gICAgdGhpcy52YWx1ZSA9IFsuLi50aGlzLnZhbHVlXTtcclxuICAgIHRoaXMudmFsdWVbaV0gPSB2YWx1ZTtcclxuICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9aW5saW5lPlxuICAgIDxkaXYgKm5nRm9yPVwibGV0IHZhbCBvZiB2YWx1ZTsgaW5kZXggYXMgaVwiPlxuICAgICAgPGlucHV0ICpuZ0lmPVwidHlwZSA9PT0gRmllbGRUeXBlLk51bWJlciB8fCB0eXBlID09PSBGaWVsZFR5cGUuQ3VycmVuY3lcIlxuICAgICAgICBbbmdNb2RlbF09XCJ2YWxcIiAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKGksJGV2ZW50KVwiXG4gICAgICAgIFtyZWFkb25seV09XCJpKzEgPCB2YWx1ZS5sZW5ndGhcIiB0eXBlPVwibnVtYmVyXCIgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOnRydWV9XCIgW2F1dG9Gb2N1c109XCJpID09PSB2YWx1ZS5sZW5ndGggLSAxXCIvPlxuICAgICAgPGlucHV0ICpuZ0lmPVwidHlwZSAhPT0gRmllbGRUeXBlLk51bWJlciAmJiB0eXBlICE9PSBGaWVsZFR5cGUuQ3VycmVuY3lcIlxuICAgICAgICBbbmdNb2RlbF09XCJ2YWxcIiAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKGksJGV2ZW50KVwiXG4gICAgICAgIFtyZWFkb25seV09XCJpKzEgPCB2YWx1ZS5sZW5ndGhcIiB0eXBlPVwic3RyaW5nXCIgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOnRydWV9XCJcbiAgICAgICAgI2lucHV0IFthdXRvRm9jdXNdPVwiaSA9PT0gdmFsdWUubGVuZ3RoIC0gMVwiIC8+XG4gICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJ2YWx1ZS5sZW5ndGggPD0gMVwiIChjbGljayk9XCJyZW1vdmVJbnB1dChpKVwiPi08L2J1dHRvbj5cbiAgICAgIDxidXR0b24gKm5nSWY9XCJpID09PSB2YWx1ZS5sZW5ndGggLSAxXCIgW2Rpc2FibGVkXT1cInZhbCA9PSB1bmRlZmluZWQgfHwgdmFsID09PSAnJ1wiIChjbGljayk9XCJhZGRJbnB1dCgpXCI+KzwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1,10 +0,0 @@
1
- export * from './date-filter/date-filter.component';
2
- export * from './filter/filter.component';
3
- export * from './gen-col-displayer/gen-col-displayer.component';
4
- export * from './table-container-filter/gen-filter-displayer/gen-filter-displayer.component';
5
- export * from './table-container-filter/filter-list/filter-list.component';
6
- export * from './generic-table/generic-table.component';
7
- export * from './table-container/table-container';
8
- export * from './generic-table/paginator.component';
9
- export * from './group-by-list/group-by-list.component';
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsOEVBQThFLENBQUM7QUFDN0YsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHlDQUF5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kYXRlLWZpbHRlci9kYXRlLWZpbHRlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9nZW4tY29sLWRpc3BsYXllci9nZW4tY29sLWRpc3BsYXllci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLWNvbnRhaW5lci1maWx0ZXIvZ2VuLWZpbHRlci1kaXNwbGF5ZXIvZ2VuLWZpbHRlci1kaXNwbGF5ZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90YWJsZS1jb250YWluZXItZmlsdGVyL2ZpbHRlci1saXN0L2ZpbHRlci1saXN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZ2VuZXJpYy10YWJsZS9nZW5lcmljLXRhYmxlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdGFibGUtY29udGFpbmVyL3RhYmxlLWNvbnRhaW5lcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vZ2VuZXJpYy10YWJsZS9wYWdpbmF0b3IuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9ncm91cC1ieS1saXN0L2dyb3VwLWJ5LWxpc3QuY29tcG9uZW50JztcclxuIl19
@@ -1,34 +0,0 @@
1
- import { Component, ViewChild } from "@angular/core";
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/material/icon";
4
- import * as i2 from "../array-column.component";
5
- import * as i3 from "../link-column.component";
6
- import * as i4 from "../../../utilities/pipes/function.pipe";
7
- class InitializationComponent {
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: InitializationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: InitializationComponent, selector: "ng-component", viewQueries: [{ propertyName: "linkTemplate", first: true, predicate: ["link"], descendants: true, static: true }, { propertyName: "imageUrlTemplate", first: true, predicate: ["imageUrl"], descendants: true, static: true }, { propertyName: "currencyTemplate", first: true, predicate: ["currency"], descendants: true, static: true }, { propertyName: "arrayTemplate", first: true, predicate: ["array"], descendants: true, static: true }, { propertyName: "defaultTemplate", first: true, predicate: ["default"], descendants: true, static: true }, { propertyName: "defaultWithIcon", first: true, predicate: ["defaultWithIcon"], descendants: true, static: true }], ngImport: i0, template: "<ng-template #link let-element='element' let-metaData='metaData' let-transform='transform'>\r\n <tb-link-column [element]=\"element\" [metaData]=\"metaData\" [transform]=\"transform\"></tb-link-column>\r\n</ng-template>\r\n\r\n<ng-template #imageUrl let-element='element' let-metaData='metaData'>\r\n <span>\r\n <img src=\"{{element[metaData.key]}}\" height=\"75px\" width=\"75px\" />\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #array let-element='element' let-metaData='metaData'>\r\n <tb-array-column [array]='element[metaData.key]' [metaData]='metaData'></tb-array-column>\r\n</ng-template>\r\n\r\n<ng-template #default let-element='element' let-metaData='metaData' let-transform='transform' >\r\n <span>{{ transform | func : element }}</span>\r\n</ng-template>\r\n\r\n<ng-template #defaultWithIcon let-element='element' let-metaData='metaData' let-transform='transform' >\r\n <mat-icon>{{ transform | func : element }}</mat-icon>\r\n</ng-template>\r\n", dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i2.ArrayColumnComponent, selector: "tb-array-column", inputs: ["array", "metaData"] }, { kind: "component", type: i3.LinkColumnComponent, selector: "tb-link-column", inputs: ["metaData", "element", "transform"] }, { kind: "pipe", type: i4.FunctionPipe, name: "func" }] }); }
10
- }
11
- export { InitializationComponent };
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: InitializationComponent, decorators: [{
13
- type: Component,
14
- args: [{ template: "<ng-template #link let-element='element' let-metaData='metaData' let-transform='transform'>\r\n <tb-link-column [element]=\"element\" [metaData]=\"metaData\" [transform]=\"transform\"></tb-link-column>\r\n</ng-template>\r\n\r\n<ng-template #imageUrl let-element='element' let-metaData='metaData'>\r\n <span>\r\n <img src=\"{{element[metaData.key]}}\" height=\"75px\" width=\"75px\" />\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #array let-element='element' let-metaData='metaData'>\r\n <tb-array-column [array]='element[metaData.key]' [metaData]='metaData'></tb-array-column>\r\n</ng-template>\r\n\r\n<ng-template #default let-element='element' let-metaData='metaData' let-transform='transform' >\r\n <span>{{ transform | func : element }}</span>\r\n</ng-template>\r\n\r\n<ng-template #defaultWithIcon let-element='element' let-metaData='metaData' let-transform='transform' >\r\n <mat-icon>{{ transform | func : element }}</mat-icon>\r\n</ng-template>\r\n" }]
15
- }], propDecorators: { linkTemplate: [{
16
- type: ViewChild,
17
- args: ['link', { static: true }]
18
- }], imageUrlTemplate: [{
19
- type: ViewChild,
20
- args: ['imageUrl', { static: true }]
21
- }], currencyTemplate: [{
22
- type: ViewChild,
23
- args: ['currency', { static: true }]
24
- }], arrayTemplate: [{
25
- type: ViewChild,
26
- args: ['array', { static: true }]
27
- }], defaultTemplate: [{
28
- type: ViewChild,
29
- args: ['default', { static: true }]
30
- }], defaultWithIcon: [{
31
- type: ViewChild,
32
- args: ['defaultWithIcon', { static: true }]
33
- }] } });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbGl6YXRpb24tY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvY29tcG9uZW50cy9pbml0aWFsaXphdGlvbi1jb21wb25lbnQvaW5pdGlhbGl6YXRpb24tY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvY29tcG9uZW50cy9pbml0aWFsaXphdGlvbi1jb21wb25lbnQvaW5pdGlhbGl6YXRpb24tY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBZSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQUVsRSxNQUdhLHVCQUF1Qjs4R0FBdkIsdUJBQXVCO2tHQUF2Qix1QkFBdUIsdXNCQ0xwQywrOEJBcUJBOztTRGhCYSx1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFIbkMsU0FBUzs7OEJBSTJCLFlBQVk7c0JBQTlDLFNBQVM7dUJBQUMsTUFBTSxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQztnQkFDTSxnQkFBZ0I7c0JBQXRELFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQztnQkFDRSxnQkFBZ0I7c0JBQXRELFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQztnQkFDRCxhQUFhO3NCQUFoRCxTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBQ0ksZUFBZTtzQkFBcEQsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQUNVLGVBQWU7c0JBQTVELFNBQVM7dUJBQUMsaUJBQWlCLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbml0aWFsaXphdGlvbi1jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbml0aWFsaXphdGlvbkNvbXBvbmVudCB7XHJcbiAgQFZpZXdDaGlsZCgnbGluaycsIHtzdGF0aWM6IHRydWV9KSBsaW5rVGVtcGxhdGUhIDogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAVmlld0NoaWxkKCdpbWFnZVVybCcsIHtzdGF0aWM6IHRydWV9KSBpbWFnZVVybFRlbXBsYXRlISA6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQFZpZXdDaGlsZCgnY3VycmVuY3knLCB7c3RhdGljOiB0cnVlfSkgY3VycmVuY3lUZW1wbGF0ZSEgOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIEBWaWV3Q2hpbGQoJ2FycmF5Jywge3N0YXRpYzogdHJ1ZX0pIGFycmF5VGVtcGxhdGUhIDogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAVmlld0NoaWxkKCdkZWZhdWx0Jywge3N0YXRpYzogdHJ1ZX0pIGRlZmF1bHRUZW1wbGF0ZSEgOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIEBWaWV3Q2hpbGQoJ2RlZmF1bHRXaXRoSWNvbicsIHtzdGF0aWM6IHRydWV9KSBkZWZhdWx0V2l0aEljb24hIDogVGVtcGxhdGVSZWY8YW55PjtcclxufVxyXG4iLCI8bmctdGVtcGxhdGUgI2xpbmsgIGxldC1lbGVtZW50PSdlbGVtZW50JyBsZXQtbWV0YURhdGE9J21ldGFEYXRhJyBsZXQtdHJhbnNmb3JtPSd0cmFuc2Zvcm0nPlxyXG4gIDx0Yi1saW5rLWNvbHVtbiBbZWxlbWVudF09XCJlbGVtZW50XCIgW21ldGFEYXRhXT1cIm1ldGFEYXRhXCIgW3RyYW5zZm9ybV09XCJ0cmFuc2Zvcm1cIj48L3RiLWxpbmstY29sdW1uPlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNpbWFnZVVybCAgbGV0LWVsZW1lbnQ9J2VsZW1lbnQnIGxldC1tZXRhRGF0YT0nbWV0YURhdGEnPlxyXG4gIDxzcGFuPlxyXG4gICAgPGltZyBzcmM9XCJ7e2VsZW1lbnRbbWV0YURhdGEua2V5XX19XCIgaGVpZ2h0PVwiNzVweFwiIHdpZHRoPVwiNzVweFwiIC8+XHJcbiAgPC9zcGFuPlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNhcnJheSBsZXQtZWxlbWVudD0nZWxlbWVudCcgbGV0LW1ldGFEYXRhPSdtZXRhRGF0YSc+XHJcbiAgPHRiLWFycmF5LWNvbHVtbiBbYXJyYXldPSdlbGVtZW50W21ldGFEYXRhLmtleV0nIFttZXRhRGF0YV09J21ldGFEYXRhJz48L3RiLWFycmF5LWNvbHVtbj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdCBsZXQtZWxlbWVudD0nZWxlbWVudCcgbGV0LW1ldGFEYXRhPSdtZXRhRGF0YScgbGV0LXRyYW5zZm9ybT0ndHJhbnNmb3JtJyA+XHJcbiAgPHNwYW4+e3sgdHJhbnNmb3JtIHwgZnVuYyA6IGVsZW1lbnQgfX08L3NwYW4+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2RlZmF1bHRXaXRoSWNvbiBsZXQtZWxlbWVudD0nZWxlbWVudCcgbGV0LW1ldGFEYXRhPSdtZXRhRGF0YScgbGV0LXRyYW5zZm9ybT0ndHJhbnNmb3JtJyA+XHJcbiAgPG1hdC1pY29uPnt7IHRyYW5zZm9ybSB8IGZ1bmMgOiBlbGVtZW50IH19PC9tYXQtaWNvbj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
@@ -1,67 +0,0 @@
1
- import { Component, Input } from "@angular/core";
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../classes/table-store";
4
- import * as i2 from "@angular/common";
5
- import * as i3 from "@angular/router";
6
- import * as i4 from "@ngrx/component";
7
- import * as i5 from "../../utilities/pipes/function.pipe";
8
- class LinkColumnComponent {
9
- constructor(store) {
10
- this.store = store;
11
- this.transform = (a) => a;
12
- this.link = (metaData) => this.store.getLinkMap(metaData);
13
- }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: LinkColumnComponent, deps: [{ token: i1.TableStore }], target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: LinkColumnComponent, selector: "tb-link-column", inputs: { metaData: "metaData", element: "element", transform: "transform" }, ngImport: i0, template: `
16
- <ng-container *ngrxLet="(link | func : (metaData)) as linkInfo">
17
- <a *ngIf="$any(linkInfo).useRouterLink; else hrefLink" target="{{$any(linkInfo).target}}"
18
- [routerLink]=" [($any(linkInfo).link | func : element)]"
19
- [queryParams]="$any(linkInfo).routerLinkOptions.queryParams | func : element"
20
- [fragment]="$any(linkInfo).routerLinkOptions.fragment"
21
- [preserveFragment]="$any(linkInfo).routerLinkOptions.preserveFragment"
22
- [queryParamsHandling]="$any(linkInfo).routerLinkOptions.queryParamsHandling"
23
- >
24
- {{transform | func : element}}
25
- </a>
26
- <ng-template #hrefLink>
27
- <a target="{{$any(linkInfo).target}}"
28
- href="{{($any(linkInfo).link | func : element)}}">
29
- {{transform | func : element}}
30
- </a>
31
- </ng-template>
32
- </ng-container>
33
- `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i4.LetDirective, selector: "[ngrxLet]", inputs: ["ngrxLet", "ngrxLetSuspenseTpl"] }, { kind: "pipe", type: i5.FunctionPipe, name: "func" }] }); }
34
- }
35
- export { LinkColumnComponent };
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: LinkColumnComponent, decorators: [{
37
- type: Component,
38
- args: [{
39
- selector: "tb-link-column",
40
- template: `
41
- <ng-container *ngrxLet="(link | func : (metaData)) as linkInfo">
42
- <a *ngIf="$any(linkInfo).useRouterLink; else hrefLink" target="{{$any(linkInfo).target}}"
43
- [routerLink]=" [($any(linkInfo).link | func : element)]"
44
- [queryParams]="$any(linkInfo).routerLinkOptions.queryParams | func : element"
45
- [fragment]="$any(linkInfo).routerLinkOptions.fragment"
46
- [preserveFragment]="$any(linkInfo).routerLinkOptions.preserveFragment"
47
- [queryParamsHandling]="$any(linkInfo).routerLinkOptions.queryParamsHandling"
48
- >
49
- {{transform | func : element}}
50
- </a>
51
- <ng-template #hrefLink>
52
- <a target="{{$any(linkInfo).target}}"
53
- href="{{($any(linkInfo).link | func : element)}}">
54
- {{transform | func : element}}
55
- </a>
56
- </ng-template>
57
- </ng-container>
58
- `
59
- }]
60
- }], ctorParameters: function () { return [{ type: i1.TableStore }]; }, propDecorators: { metaData: [{
61
- type: Input
62
- }], element: [{
63
- type: Input
64
- }], transform: [{
65
- type: Input
66
- }] } });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvY29tcG9uZW50cy9saW5rLWNvbHVtbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFJakQsTUFxQmUsbUJBQW1CO0lBSWhDLFlBQXNCLEtBQWlCO1FBQWpCLFVBQUssR0FBTCxLQUFLLENBQVk7UUFEOUIsY0FBUyxHQUFHLENBQUMsQ0FBSyxFQUFDLEVBQUUsQ0FBQSxDQUFDLENBQUM7UUFFaEMsU0FBSSxHQUFJLENBQUMsUUFBbUIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7SUFEckIsQ0FBQzs4R0FKaEMsbUJBQW1CO2tHQUFuQixtQkFBbUIsb0lBbkJ0Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JUOztTQUNZLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQXJCakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCVDtpQkFDRjtpR0FDVSxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFRhYmxlU3RvcmUgfSBmcm9tIFwiLi4vY2xhc3Nlcy90YWJsZS1zdG9yZVwiO1xyXG5pbXBvcnQgeyBNZXRhRGF0YSB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL3JlcG9ydC1kZWZcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcInRiLWxpbmstY29sdW1uXCIsXHJcbiAgdGVtcGxhdGU6IGBcbiAgPG5nLWNvbnRhaW5lciAqbmdyeExldD1cIihsaW5rIHwgZnVuYyA6IChtZXRhRGF0YSkpIGFzIGxpbmtJbmZvXCI+XG4gICAgPGEgKm5nSWY9XCIkYW55KGxpbmtJbmZvKS51c2VSb3V0ZXJMaW5rOyBlbHNlIGhyZWZMaW5rXCIgdGFyZ2V0PVwie3skYW55KGxpbmtJbmZvKS50YXJnZXR9fVwiXG4gICAgICBbcm91dGVyTGlua109XCIgWygkYW55KGxpbmtJbmZvKS5saW5rIHwgZnVuYyA6IGVsZW1lbnQpXVwiXG4gICAgICBbcXVlcnlQYXJhbXNdPVwiJGFueShsaW5rSW5mbykucm91dGVyTGlua09wdGlvbnMucXVlcnlQYXJhbXMgfCBmdW5jIDogZWxlbWVudFwiXG4gICAgICBbZnJhZ21lbnRdPVwiJGFueShsaW5rSW5mbykucm91dGVyTGlua09wdGlvbnMuZnJhZ21lbnRcIlxuICAgICAgW3ByZXNlcnZlRnJhZ21lbnRdPVwiJGFueShsaW5rSW5mbykucm91dGVyTGlua09wdGlvbnMucHJlc2VydmVGcmFnbWVudFwiXG4gICAgICBbcXVlcnlQYXJhbXNIYW5kbGluZ109XCIkYW55KGxpbmtJbmZvKS5yb3V0ZXJMaW5rT3B0aW9ucy5xdWVyeVBhcmFtc0hhbmRsaW5nXCJcbiAgICA+XG4gICAgICB7e3RyYW5zZm9ybSB8IGZ1bmMgOiBlbGVtZW50fX1cbiAgICA8L2E+XG4gICAgPG5nLXRlbXBsYXRlICNocmVmTGluaz5cbiAgICAgIDxhIHRhcmdldD1cInt7JGFueShsaW5rSW5mbykudGFyZ2V0fX1cIlxuICAgICAgICBocmVmPVwie3soJGFueShsaW5rSW5mbykubGluayB8IGZ1bmMgOiBlbGVtZW50KX19XCI+XG4gICAgICAgIHt7dHJhbnNmb3JtIHwgZnVuYyA6IGVsZW1lbnR9fVxuICAgICAgPC9hPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbmctY29udGFpbmVyPlxuICBgXHJcbn0pZXhwb3J0IGNsYXNzIExpbmtDb2x1bW5Db21wb25lbnQge1xyXG4gIEBJbnB1dCgpIG1ldGFEYXRhITogTWV0YURhdGE7XHJcbiAgQElucHV0KCkgZWxlbWVudCE6IGFueTtcclxuICBASW5wdXQoKSB0cmFuc2Zvcm0gPSAoYTphbnkpPT5hO1xyXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBzdG9yZTogVGFibGVTdG9yZSkgeyAgfVxyXG4gIGxpbmsgPSAgKG1ldGFEYXRhIDogTWV0YURhdGEpID0+IHRoaXMuc3RvcmUuZ2V0TGlua01hcChtZXRhRGF0YSk7XHJcblxyXG59Il19
@@ -1,28 +0,0 @@
1
- import { Component, Input, ChangeDetectionStrategy } from '@angular/core';
2
- import { FilterType } from '../../enums/filterTypes';
3
- import { ControlContainer, NgForm } from '@angular/forms';
4
- import { FieldType } from '../../interfaces/report-def';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "@angular/material/form-field";
8
- import * as i3 from "@angular/material/input";
9
- import * as i4 from "@angular/forms";
10
- import * as i5 from "../in-filter/in-filter.component";
11
- class NumberFilterComponent {
12
- constructor() {
13
- this.FilterType = FilterType;
14
- this.FieldType = FieldType;
15
- }
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NumberFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
17
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: NumberFilterComponent, selector: "tb-number-filter", inputs: { CurrentFilterType: "CurrentFilterType", info: "info" }, ngImport: i0, template: "<ng-container *ngIf=\"CurrentFilterType !== FilterType.NumberBetween && CurrentFilterType !== FilterType.IsNull && CurrentFilterType !== FilterType.In\">\n <mat-form-field class=\"my-filter\">\n <input matInput name=\"filterValue\" [ngModel]=\"info.filterValue\" type=\"number\"/>\n </mat-form-field>\n</ng-container>\n\n\n<ng-container *ngIf=\"CurrentFilterType === FilterType.NumberBetween\">\n <ng-container ngModelGroup=\"filterValue\" >\n <mat-form-field class=\"my-filter\">\n <input matInput name=\"Start\" [ngModel]=\"info.filterValue?.Start\" placeholder=\"Start\" type=\"number\"/>\n </mat-form-field>\n <mat-form-field class=\"my-filter\">\n <input matInput name=\"End\" [ngModel]=\"info.filterValue?.End\" placeholder=\"End\" type=\"number\"/>\n </mat-form-field>\n </ng-container>\n</ng-container>\n\n<div class=\"inline\" *ngIf=\"CurrentFilterType === FilterType.In\">\n <lib-in-filter name='filterValue' [type]=\"FieldType.Number\" [(ngModel)]='info.filterValue' ></lib-in-filter>\n</div>\n", styles: [".switch{display:inline-block}.my-filter{margin-right:15px}.inline{display:inline-block}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.NgModelGroup, selector: "[ngModelGroup]", inputs: ["ngModelGroup"], exportAs: ["ngModelGroup"] }, { kind: "component", type: i5.InFilterComponent, selector: "lib-in-filter", inputs: ["type"] }], viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
18
- }
19
- export { NumberFilterComponent };
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: NumberFilterComponent, decorators: [{
21
- type: Component,
22
- args: [{ selector: 'tb-number-filter', changeDetection: ChangeDetectionStrategy.OnPush, viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], template: "<ng-container *ngIf=\"CurrentFilterType !== FilterType.NumberBetween && CurrentFilterType !== FilterType.IsNull && CurrentFilterType !== FilterType.In\">\n <mat-form-field class=\"my-filter\">\n <input matInput name=\"filterValue\" [ngModel]=\"info.filterValue\" type=\"number\"/>\n </mat-form-field>\n</ng-container>\n\n\n<ng-container *ngIf=\"CurrentFilterType === FilterType.NumberBetween\">\n <ng-container ngModelGroup=\"filterValue\" >\n <mat-form-field class=\"my-filter\">\n <input matInput name=\"Start\" [ngModel]=\"info.filterValue?.Start\" placeholder=\"Start\" type=\"number\"/>\n </mat-form-field>\n <mat-form-field class=\"my-filter\">\n <input matInput name=\"End\" [ngModel]=\"info.filterValue?.End\" placeholder=\"End\" type=\"number\"/>\n </mat-form-field>\n </ng-container>\n</ng-container>\n\n<div class=\"inline\" *ngIf=\"CurrentFilterType === FilterType.In\">\n <lib-in-filter name='filterValue' [type]=\"FieldType.Number\" [(ngModel)]='info.filterValue' ></lib-in-filter>\n</div>\n", styles: [".switch{display:inline-block}.my-filter{margin-right:15px}.inline{display:inline-block}\n"] }]
23
- }], propDecorators: { CurrentFilterType: [{
24
- type: Input
25
- }], info: [{
26
- type: Input
27
- }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jb21wb25lbnRzL251bWJlci1maWx0ZXIvbnVtYmVyLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jb21wb25lbnRzL251bWJlci1maWx0ZXIvbnVtYmVyLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7OztBQUd4RCxNQU9hLHFCQUFxQjtJQVBsQztRQVFFLGVBQVUsR0FBRyxVQUFVLENBQUM7UUFBQyxjQUFTLEdBQUcsU0FBUyxDQUFDO0tBR2hEOzhHQUpZLHFCQUFxQjtrR0FBckIscUJBQXFCLDBIQ2RsQywrZ0NBcUJBLGkzRERUaUIsQ0FBQyxFQUFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFDLENBQUM7O1NBRXRELHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQVBqQyxTQUFTOytCQUNFLGtCQUFrQixtQkFHWCx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxDQUFDLEVBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUMsQ0FBQzs4QkFJeEQsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWx0ZXJUeXBlIH0gZnJvbSAnLi4vLi4vZW51bXMvZmlsdGVyVHlwZXMnO1xuaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUGFydGlhbEZpbHRlciB9IGZyb20gJy4uLy4uL2NsYXNzZXMvZmlsdGVyLWluZm8nO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9yZXBvcnQtZGVmJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0Yi1udW1iZXItZmlsdGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL251bWJlci1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9udW1iZXItZmlsdGVyLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHZpZXdQcm92aWRlcnM6IFt7cHJvdmlkZTogQ29udHJvbENvbnRhaW5lciwgdXNlRXhpc3Rpbmc6IE5nRm9ybX1dXG59KVxuZXhwb3J0IGNsYXNzIE51bWJlckZpbHRlckNvbXBvbmVudCB7XG4gIEZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlOyBGaWVsZFR5cGUgPSBGaWVsZFR5cGU7XG4gIEBJbnB1dCgpIEN1cnJlbnRGaWx0ZXJUeXBlITogRmlsdGVyVHlwZTtcbiAgQElucHV0KCkgaW5mbyE6UGFydGlhbEZpbHRlcjtcbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJDdXJyZW50RmlsdGVyVHlwZSAhPT0gRmlsdGVyVHlwZS5OdW1iZXJCZXR3ZWVuICYmIEN1cnJlbnRGaWx0ZXJUeXBlICE9PSBGaWx0ZXJUeXBlLklzTnVsbCAmJiBDdXJyZW50RmlsdGVyVHlwZSAhPT0gRmlsdGVyVHlwZS5JblwiPlxuICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJteS1maWx0ZXJcIj5cbiAgICA8aW5wdXQgbWF0SW5wdXQgbmFtZT1cImZpbHRlclZhbHVlXCIgW25nTW9kZWxdPVwiaW5mby5maWx0ZXJWYWx1ZVwiIHR5cGU9XCJudW1iZXJcIi8+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L25nLWNvbnRhaW5lcj5cblxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiQ3VycmVudEZpbHRlclR5cGUgPT09IEZpbHRlclR5cGUuTnVtYmVyQmV0d2VlblwiPlxuICA8bmctY29udGFpbmVyIG5nTW9kZWxHcm91cD1cImZpbHRlclZhbHVlXCIgID5cbiAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJteS1maWx0ZXJcIj5cbiAgICAgIDxpbnB1dCBtYXRJbnB1dCBuYW1lPVwiU3RhcnRcIiBbbmdNb2RlbF09XCJpbmZvLmZpbHRlclZhbHVlPy5TdGFydFwiIHBsYWNlaG9sZGVyPVwiU3RhcnRcIiB0eXBlPVwibnVtYmVyXCIvPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwibXktZmlsdGVyXCI+XG4gICAgICA8aW5wdXQgbWF0SW5wdXQgbmFtZT1cIkVuZFwiIFtuZ01vZGVsXT1cImluZm8uZmlsdGVyVmFsdWU/LkVuZFwiIHBsYWNlaG9sZGVyPVwiRW5kXCIgdHlwZT1cIm51bWJlclwiLz5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuXG48ZGl2IGNsYXNzPVwiaW5saW5lXCIgKm5nSWY9XCJDdXJyZW50RmlsdGVyVHlwZSA9PT0gRmlsdGVyVHlwZS5JblwiPlxuICA8bGliLWluLWZpbHRlciBuYW1lPSdmaWx0ZXJWYWx1ZScgW3R5cGVdPVwiRmllbGRUeXBlLk51bWJlclwiIFsobmdNb2RlbCldPSdpbmZvLmZpbHRlclZhbHVlJyAgPjwvbGliLWluLWZpbHRlcj5cbjwvZGl2PlxuIl19
@@ -1,44 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { ComponentStore } from '@ngrx/component-store';
3
- import { combineLatest } from 'rxjs';
4
- import { distinctUntilChanged, map, mergeMap } from 'rxjs/operators';
5
- import { notNull } from '../../../rxjs/rxjs-operators';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../../classes/table-store";
8
- class SortMenuComponentStore extends ComponentStore {
9
- constructor(tableState) {
10
- super({ notSorted: [], sorted: [] });
11
- this.tableState = tableState;
12
- this.set = this.updater((state, data) => ({ ...data }));
13
- this.setSorted = this.updater((state, sorted) => ({ ...state, sorted }));
14
- this.setNotSorted = this.updater((state, notSorted) => ({ ...state, notSorted }));
15
- this.sorted$ = this.select(state => state.sorted);
16
- this.notSorted$ = this.select(state => state.notSorted);
17
- this.setDirection = this.updater((state, sort) => {
18
- const index = state.sorted.findIndex(s => s.active === sort.active);
19
- const sorted = [...state.sorted];
20
- sorted.splice(index, 1, sort);
21
- return ({ ...state, sorted });
22
- });
23
- this.reset = () => {
24
- const sorted = this.tableState.sorted$.pipe(mergeMap(sort => this.tableState.metaData$.pipe(notNull(), map(meta => sort.map(s => {
25
- return { ...s, displayName: meta[s.active]?.displayName };
26
- })))));
27
- const notSorted = this.tableState.metaDataArray$.pipe(mergeMap(metas => this.tableState.sorted$.pipe(map(s => metas
28
- .filter(meta => !s.some(s => s.active === meta.key) && !meta.noSort)
29
- .map(meta => ({ active: meta.key, displayName: meta.displayName }))))));
30
- this.set(combineLatest([
31
- sorted.pipe(distinctSortArray), notSorted.pipe(distinctSortArray)
32
- ]).pipe(map(([sorted, notSorted]) => ({ sorted, notSorted }))));
33
- };
34
- }
35
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: SortMenuComponentStore, deps: [{ token: i1.TableStore }], target: i0.ɵɵFactoryTarget.Injectable }); }
36
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: SortMenuComponentStore }); }
37
- }
38
- export { SortMenuComponentStore };
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: SortMenuComponentStore, decorators: [{
40
- type: Injectable
41
- }], ctorParameters: function () { return [{ type: i1.TableStore }]; } });
42
- const equalSortArray = (arr1, arr2) => arr1.length === arr2.length && arr2.every(s1 => arr1.some(s2 => s1.active === s2.active));
43
- const distinctSortArray = distinctUntilChanged(equalSortArray);
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1tZW51LmNvbXBvbmVudC1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy90YWJsZS1idWlsZGVyL2NvbXBvbmVudHMvc29ydC1tZW51L3NvcnQtbWVudS5jb21wb25lbnQtc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7O0FBRXZELE1BQ2Esc0JBQXVCLFNBQVEsY0FBbUM7SUFDN0UsWUFBb0IsVUFBc0I7UUFDeEMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFDLENBQUMsQ0FBQTtRQURoQixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBR2xDLFFBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLElBQXlCLEVBQUMsRUFBRSxDQUFDLENBQUMsRUFBQyxHQUFHLElBQUksRUFBQyxDQUFDLENBQUMsQ0FBQztRQUU3RSxjQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFzQixFQUFDLEVBQUUsQ0FBQSxDQUFDLEVBQUMsR0FBRyxLQUFLLEVBQUUsTUFBTSxFQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWhGLGlCQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxTQUF5QixFQUFDLEVBQUUsQ0FB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QUFDLElBQW1CLEVBQUUsRUFBRSxDQUNqRSxJQUFJLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsTUFBTSxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBQzVGLE1BQU0saUJBQWlCLEdBQUcsb0JBQW9CLENBQWlCLGNBQWMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTb3J0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XHJcbmltcG9ydCB7IENvbXBvbmVudFN0b3JlIH0gZnJvbSAnQG5ncngvY29tcG9uZW50LXN0b3JlJztcclxuaW1wb3J0IHsgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBtZXJnZU1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVGFibGVTdG9yZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvdGFibGUtc3RvcmUnO1xyXG5pbXBvcnQgeyBub3ROdWxsIH0gZnJvbSAnLi4vLi4vLi4vcnhqcy9yeGpzLW9wZXJhdG9ycyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBTb3J0TWVudUNvbXBvbmVudFN0b3JlIGV4dGVuZHMgQ29tcG9uZW50U3RvcmU8Q29tcG9uZW50U3RvcmVTdGF0ZT4ge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdGFibGVTdGF0ZTogVGFibGVTdG9yZSl7XHJcbiAgICBzdXBlcih7IG5vdFNvcnRlZDpbXSwgc29ydGVkOiBbXX0pXHJcbiAgfVxyXG4gIHByaXZhdGUgc2V0ID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgZGF0YTogQ29tcG9uZW50U3RvcmVTdGF0ZSk9PiAoey4uLmRhdGF9KSk7XHJcblxyXG4gIHNldFNvcnRlZCA9IHRoaXMudXBkYXRlcigoc3RhdGUsIHNvcnRlZDogU29ydFdpdGhOYW1lW10pPT4oey4uLnN0YXRlLCBzb3J0ZWR9KSk7XHJcblxyXG4gIHNldE5vdFNvcnRlZCA9IHRoaXMudXBkYXRlcigoc3RhdGUsIG5vdFNvcnRlZDogU29ydFdpdGhOYW1lW10pPT4oey4uLnN0YXRlLCBub3RTb3J0ZWR9KSk7XHJcbiAgc29ydGVkJCA9IHRoaXMuc2VsZWN0KHN0YXRlPT5zdGF0ZS5zb3J0ZWQpO1xyXG4gIG5vdFNvcnRlZCQgPSB0aGlzLnNlbGVjdChzdGF0ZT0+c3RhdGUubm90U29ydGVkKTtcclxuXHJcbiAgc2V0RGlyZWN0aW9uID0gdGhpcy51cGRhdGVyKChzdGF0ZSxzb3J0OlNvcnRXaXRoTmFtZSk9PntcclxuICAgIGNvbnN0IGluZGV4ID0gc3RhdGUuc29ydGVkLmZpbmRJbmRleChzID0+IHMuYWN0aXZlID09PSBzb3J0LmFjdGl2ZSk7XHJcbiAgICBjb25zdCBzb3J0ZWQgPSBbLi4uc3RhdGUuc29ydGVkXTtcclxuICAgIHNvcnRlZC5zcGxpY2UoaW5kZXgsMSxzb3J0KTtcclxuICAgIHJldHVybiAoey4uLnN0YXRlLHNvcnRlZH0pO1xyXG4gIH0pXHJcblxyXG4gIHJlc2V0ID0gKCkgPT4ge1xyXG4gICAgY29uc3Qgc29ydGVkID0gdGhpcy50YWJsZVN0YXRlLnNvcnRlZCQucGlwZShcclxuICAgICAgbWVyZ2VNYXAoc29ydCA9PiB0aGlzLnRhYmxlU3RhdGUubWV0YURhdGEkLnBpcGUoXHJcbiAgICAgICAgbm90TnVsbCgpLFxyXG4gICAgICAgIG1hcChcclxuICAgICAgICBtZXRhID0+IHNvcnQubWFwKHMgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuICh7Li4ucywgZGlzcGxheU5hbWU6IG1ldGFbcy5hY3RpdmVdPy5kaXNwbGF5TmFtZX0gYXMgU29ydFdpdGhOYW1lKX0pXHJcbiAgICAgICkpKVxyXG4gICAgKTtcclxuICAgIGNvbnN0IG5vdFNvcnRlZCA9IHRoaXMudGFibGVTdGF0ZS5tZXRhRGF0YUFycmF5JC5waXBlKG1lcmdlTWFwKFxyXG4gICAgICBtZXRhcyA9PiB0aGlzLnRhYmxlU3RhdGUuc29ydGVkJC5waXBlKFxyXG4gICAgICAgIG1hcChzID0+IG1ldGFzXHJcbiAgICAgICAgICAuZmlsdGVyKG1ldGEgPT4gIXMuc29tZShzPT5zLmFjdGl2ZT09PSBtZXRhLmtleSkgJiYgIW1ldGEubm9Tb3J0KVxyXG4gICAgICAgICAgLm1hcChtZXRhPT4oe2FjdGl2ZTptZXRhLmtleSxkaXNwbGF5TmFtZSA6IG1ldGEuZGlzcGxheU5hbWV9IGFzIFNvcnRXaXRoTmFtZSkpKVxyXG4gICAgICApXHJcbiAgICApKTtcclxuICAgIHRoaXMuc2V0KGNvbWJpbmVMYXRlc3QoW1xyXG4gICAgICBzb3J0ZWQucGlwZShkaXN0aW5jdFNvcnRBcnJheSksbm90U29ydGVkLnBpcGUoZGlzdGluY3RTb3J0QXJyYXkpXHJcbiAgICBdKS5waXBlKG1hcCgoW3NvcnRlZCxub3RTb3J0ZWRdKT0+KHtzb3J0ZWQsbm90U29ydGVkfSkpKSk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvbXBvbmVudFN0b3JlU3RhdGUge1xyXG4gIHNvcnRlZCA6IFNvcnRXaXRoTmFtZVtdO1xyXG4gIG5vdFNvcnRlZDogU29ydFdpdGhOYW1lW107XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU29ydFdpdGhOYW1lIGV4dGVuZHMgU29ydHtcclxuICBkaXNwbGF5TmFtZSA6IHN0cmluZztcclxufVxyXG5cclxuY29uc3QgZXF1YWxTb3J0QXJyYXkgPSAoYXJyMTpTb3J0V2l0aE5hbWVbXSxhcnIyOlNvcnRXaXRoTmFtZVtdKSA9PlxyXG4gIGFycjEubGVuZ3RoID09PSBhcnIyLmxlbmd0aCAmJiBhcnIyLmV2ZXJ5KHMxID0+IGFycjEuc29tZShzMiA9PiBzMS5hY3RpdmUgPT09IHMyLmFjdGl2ZSkpO1xyXG5jb25zdCBkaXN0aW5jdFNvcnRBcnJheSA9IGRpc3RpbmN0VW50aWxDaGFuZ2VkPFNvcnRXaXRoTmFtZVtdPihlcXVhbFNvcnRBcnJheSk7XHJcbiJdfQ==
@@ -1,76 +0,0 @@
1
- import { moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';
2
- import { Component } from '@angular/core';
3
- import { BehaviorSubject } from 'rxjs';
4
- import { first, map, tap } from 'rxjs/operators';
5
- import { SortDirection } from '../../interfaces/report-def';
6
- import { SortMenuComponentStore } from './sort-menu.component-store';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "../../classes/table-store";
9
- import * as i2 from "./sort-menu.component-store";
10
- import * as i3 from "@angular/common";
11
- import * as i4 from "@angular/material/button";
12
- import * as i5 from "@angular/material/tooltip";
13
- import * as i6 from "@angular/material/menu";
14
- import * as i7 from "@angular/material/icon";
15
- import * as i8 from "@ngrx/component";
16
- import * as i9 from "@angular/cdk/drag-drop";
17
- import * as i10 from "../../../utilities/directives/stop-propagation.directive";
18
- import * as i11 from "../../../utilities/pipes/space-case.pipes";
19
- class SortMenuComponent {
20
- constructor(tableState, store) {
21
- this.tableState = tableState;
22
- this.store = store;
23
- this.SortDirection = SortDirection;
24
- this.dirty$ = new BehaviorSubject(false);
25
- this.apply = this.store.effect((obs) => obs.pipe(tap(() => {
26
- this.dirty$.next(false);
27
- this.tableState.setAllSort(this.store.sorted$.pipe(first()));
28
- })));
29
- this.sorted$ = this.store.sorted$.pipe(map(data => [...data]));
30
- this.notSorted$ = this.store.notSorted$.pipe(map(data => [...data]));
31
- }
32
- reset() {
33
- this.dirty$.next(false);
34
- this.store.reset();
35
- }
36
- ngOnInit() {
37
- this.store.reset();
38
- }
39
- dropIntoSorted(event) {
40
- this.dirty$.next(true);
41
- if (event.previousContainer === event.container) {
42
- moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);
43
- this.store.setSorted(event.container.data);
44
- }
45
- else {
46
- transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);
47
- event.container.data[event.currentIndex] = { ...event.container.data[event.currentIndex], direction: SortDirection.asc };
48
- this.store.setSorted(event.container.data);
49
- this.store.setNotSorted(event.previousContainer.data);
50
- }
51
- }
52
- dropIntoNotSorted(event) {
53
- if (event.previousContainer === event.container) {
54
- return;
55
- }
56
- else {
57
- this.dirty$.next(true);
58
- transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);
59
- event.container.data[event.currentIndex] = { ...event.container.data[event.currentIndex] };
60
- this.store.setNotSorted(event.container.data);
61
- this.store.setSorted(event.previousContainer.data);
62
- }
63
- }
64
- setDirection(sort) {
65
- this.dirty$.next(true);
66
- this.store.setDirection(sort);
67
- }
68
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: SortMenuComponent, deps: [{ token: i1.TableStore }, { token: i2.SortMenuComponentStore }], target: i0.ɵɵFactoryTarget.Component }); }
69
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: SortMenuComponent, selector: "tb-sort-menu", providers: [SortMenuComponentStore], ngImport: i0, template: "<ng-container *ngrxLet=\"dirty$ as dirty\">\n<ng-container *ngIf=\"sorted$ | async as sorted\">\n <ng-container *ngIf=\"notSorted$ | async as notSorted\">\n <!-- Menu Trigger -->\n <span matTooltip=\"Sort\">\n <button mat-icon-button [matMenuTriggerFor]=\"menu\">\n <mat-icon color=\"primary\">swap_vert</mat-icon>\n </button>\n </span>\n\n <!-- Menu -->\n <mat-menu #menu=\"matMenu\" class=\"my-mat-menu\" (closed)=\"reset()\">\n <div mat-menu-item class=\"menu-button\">\n <div class=\"close-button-wrapper\">\n <span matTooltip=\"Close\">\n <mat-icon>close</mat-icon>\n </span>\n <span *ngIf=\"dirty\" matTooltip=\"Undo\" stop-propagation (click)=\"reset()\">\n <mat-icon>undo</mat-icon>\n </span>\n </div>\n </div>\n\n <!-- Apply Button -->\n <div class=\"apply-button-wrapper\">\n <button mat-button color=\"primary\" (click)=\"apply(null)\"\n stop-propagation [class.apply-border]=\"dirty\"\n [disabled]=\"!dirty\">\n Apply\n <ng-container *ngIf=\"dirty\">Unsaved Changes</ng-container>\n </button>\n </div>\n\n <!-- Default Sorting Text -->\n <div *ngIf=\"!sorted.length\" class=\"tip\" >\n Sorting List\n </div>\n\n <!-- Sorted Menu List -->\n <div class=\"list\"\n cdkDropList\n #sortedGroup=\"cdkDropList\"\n [cdkDropListConnectedTo]=\"[notSortedGroup]\"\n [cdkDropListData]=\"sorted\"\n (cdkDropListDropped)=\"dropIntoSorted($event)\">\n\n <!-- Menu Item Wrapper -->\n <ng-container *ngFor=\"let sort of sorted;let i=index\">\n\n <!-- Menu Item Headers -->\n <span *ngIf=\"sorted.length > 1 && i === 0 \" class=\"description\" class=\"sort-header\">First By</span>\n <span *ngIf=\"sorted.length > 1 && i !== 0 \" class=\"description\" class=\"sort-header\">Then By</span>\n\n <!-- Menu Item -->\n <div mat-menu-item cdkDrag class=\"menu-item\">\n <div class=\"sort-item\">\n <span class=\"sorted-name\">\n {{sort.displayName || (sort.active | spaceCase)}}\n <span class=\"direction-text\">{{sort.direction}}</span>\n </span>\n\n <!-- Sort Direction Buttons -->\n <div class=\"up-down-buttons-wrapper\">\n <button class=\"up-down-button up-button\" stop-propagation\n (click)=\"setDirection({active:sort.active,direction:SortDirection.asc,displayName:sort.displayName})\">\n <mat-icon [ngClass]=\"sort.direction !== SortDirection.asc ? 'light-arrow' : 'dark-arrow'\" class=\"up-down-icon\">\n arrow_upward\n </mat-icon>\n </button>\n\n <button class=\"up-down-button\" stop-propagation\n (click)=\"setDirection({active:sort.active,direction:SortDirection.desc,displayName:sort.displayName})\">\n <mat-icon [ngClass]=\"sort.direction === SortDirection.asc ? 'light-arrow' : 'dark-arrow'\" class=\"up-down-icon\">\n arrow_downward\n </mat-icon>\n </button>\n </div>\n </div>\n </div>\n </ng-container>\n </div>\n\n <!-- Default Not Sorted Text -->\n <div *ngIf=\"!notSorted.length\" class=\"tip\" >\n Not Sorted List\n </div>\n <!-- Not Sorted Menu List -->\n <div class=\"list\"\n cdkDropList\n #notSortedGroup=\"cdkDropList\"\n [cdkDropListConnectedTo]=\"[sortedGroup]\"\n [cdkDropListData]=\"notSorted\"\n (cdkDropListDropped)=\"dropIntoNotSorted($event)\">\n <div mat-menu-item *ngFor=\"let sort of notSorted\" class=\"menu-item\" cdkDrag>\n <span class=\"not-sorted-name\">{{sort.displayName || (sort.active | spaceCase)}}</span>\n </div>\n </div>\n </mat-menu>\n </ng-container>\n</ng-container>\n</ng-container>\n", styles: [".cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.list{padding:5px 2px;border-bottom:solid 1px #ccc;color:#000000de;background:white}.light-arrow{color:#93b1ea78}.dark-arrow{color:#224e9c}.up-down-button{background-color:#fff;border-radius:30%;border-color:#0ff;padding:1px 1px 0;border-width:.5px;cursor:pointer;height:27px}.mat-icon.up-down-icon{margin-right:0;font-size:20px;font-weight:lighter}.sort-item{display:flex;align-items:center;justify-content:space-between}.up-down-buttons-wrapper{margin-left:2rem}.up-button{margin-right:.3rem}.mat-mdc-menu-item.menu-item,.mat-mdc-menu-item.menu-button{min-height:initial;padding:0 3px;line-height:25px;height:30px}.mat-mdc-menu-item.menu-item{cursor:move}.sorted-name{color:#224e9c;font-size:17px;font-weight:700}.not-sorted-name{color:#93b1ea;font-size:17px;font-weight:700}.apply-border{border:#224e9c solid .5px}.apply-border:hover{background-color:#faebd7}.apply-button-wrapper{display:grid;justify-content:center}.sort-header{font-size:10px;font-style:italic}.tip{padding:0 3px;color:#d3d3d3}.direction-text{font-size:small;font-weight:400}.close-button-wrapper{display:flex;flex-direction:row-reverse}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i6.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i6.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i6.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.LetDirective, selector: "[ngrxLet]", inputs: ["ngrxLet", "ngrxLetSuspenseTpl"] }, { kind: "directive", type: i9.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i9.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i10.StopPropagationDirective, selector: "[stop-propagation]" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.SpaceCasePipe, name: "spaceCase" }] }); }
70
- }
71
- export { SortMenuComponent };
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: SortMenuComponent, decorators: [{
73
- type: Component,
74
- args: [{ selector: 'tb-sort-menu', providers: [SortMenuComponentStore], template: "<ng-container *ngrxLet=\"dirty$ as dirty\">\n<ng-container *ngIf=\"sorted$ | async as sorted\">\n <ng-container *ngIf=\"notSorted$ | async as notSorted\">\n <!-- Menu Trigger -->\n <span matTooltip=\"Sort\">\n <button mat-icon-button [matMenuTriggerFor]=\"menu\">\n <mat-icon color=\"primary\">swap_vert</mat-icon>\n </button>\n </span>\n\n <!-- Menu -->\n <mat-menu #menu=\"matMenu\" class=\"my-mat-menu\" (closed)=\"reset()\">\n <div mat-menu-item class=\"menu-button\">\n <div class=\"close-button-wrapper\">\n <span matTooltip=\"Close\">\n <mat-icon>close</mat-icon>\n </span>\n <span *ngIf=\"dirty\" matTooltip=\"Undo\" stop-propagation (click)=\"reset()\">\n <mat-icon>undo</mat-icon>\n </span>\n </div>\n </div>\n\n <!-- Apply Button -->\n <div class=\"apply-button-wrapper\">\n <button mat-button color=\"primary\" (click)=\"apply(null)\"\n stop-propagation [class.apply-border]=\"dirty\"\n [disabled]=\"!dirty\">\n Apply\n <ng-container *ngIf=\"dirty\">Unsaved Changes</ng-container>\n </button>\n </div>\n\n <!-- Default Sorting Text -->\n <div *ngIf=\"!sorted.length\" class=\"tip\" >\n Sorting List\n </div>\n\n <!-- Sorted Menu List -->\n <div class=\"list\"\n cdkDropList\n #sortedGroup=\"cdkDropList\"\n [cdkDropListConnectedTo]=\"[notSortedGroup]\"\n [cdkDropListData]=\"sorted\"\n (cdkDropListDropped)=\"dropIntoSorted($event)\">\n\n <!-- Menu Item Wrapper -->\n <ng-container *ngFor=\"let sort of sorted;let i=index\">\n\n <!-- Menu Item Headers -->\n <span *ngIf=\"sorted.length > 1 && i === 0 \" class=\"description\" class=\"sort-header\">First By</span>\n <span *ngIf=\"sorted.length > 1 && i !== 0 \" class=\"description\" class=\"sort-header\">Then By</span>\n\n <!-- Menu Item -->\n <div mat-menu-item cdkDrag class=\"menu-item\">\n <div class=\"sort-item\">\n <span class=\"sorted-name\">\n {{sort.displayName || (sort.active | spaceCase)}}\n <span class=\"direction-text\">{{sort.direction}}</span>\n </span>\n\n <!-- Sort Direction Buttons -->\n <div class=\"up-down-buttons-wrapper\">\n <button class=\"up-down-button up-button\" stop-propagation\n (click)=\"setDirection({active:sort.active,direction:SortDirection.asc,displayName:sort.displayName})\">\n <mat-icon [ngClass]=\"sort.direction !== SortDirection.asc ? 'light-arrow' : 'dark-arrow'\" class=\"up-down-icon\">\n arrow_upward\n </mat-icon>\n </button>\n\n <button class=\"up-down-button\" stop-propagation\n (click)=\"setDirection({active:sort.active,direction:SortDirection.desc,displayName:sort.displayName})\">\n <mat-icon [ngClass]=\"sort.direction === SortDirection.asc ? 'light-arrow' : 'dark-arrow'\" class=\"up-down-icon\">\n arrow_downward\n </mat-icon>\n </button>\n </div>\n </div>\n </div>\n </ng-container>\n </div>\n\n <!-- Default Not Sorted Text -->\n <div *ngIf=\"!notSorted.length\" class=\"tip\" >\n Not Sorted List\n </div>\n <!-- Not Sorted Menu List -->\n <div class=\"list\"\n cdkDropList\n #notSortedGroup=\"cdkDropList\"\n [cdkDropListConnectedTo]=\"[sortedGroup]\"\n [cdkDropListData]=\"notSorted\"\n (cdkDropListDropped)=\"dropIntoNotSorted($event)\">\n <div mat-menu-item *ngFor=\"let sort of notSorted\" class=\"menu-item\" cdkDrag>\n <span class=\"not-sorted-name\">{{sort.displayName || (sort.active | spaceCase)}}</span>\n </div>\n </div>\n </mat-menu>\n </ng-container>\n</ng-container>\n</ng-container>\n", styles: [".cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.list{padding:5px 2px;border-bottom:solid 1px #ccc;color:#000000de;background:white}.light-arrow{color:#93b1ea78}.dark-arrow{color:#224e9c}.up-down-button{background-color:#fff;border-radius:30%;border-color:#0ff;padding:1px 1px 0;border-width:.5px;cursor:pointer;height:27px}.mat-icon.up-down-icon{margin-right:0;font-size:20px;font-weight:lighter}.sort-item{display:flex;align-items:center;justify-content:space-between}.up-down-buttons-wrapper{margin-left:2rem}.up-button{margin-right:.3rem}.mat-mdc-menu-item.menu-item,.mat-mdc-menu-item.menu-button{min-height:initial;padding:0 3px;line-height:25px;height:30px}.mat-mdc-menu-item.menu-item{cursor:move}.sorted-name{color:#224e9c;font-size:17px;font-weight:700}.not-sorted-name{color:#93b1ea;font-size:17px;font-weight:700}.apply-border{border:#224e9c solid .5px}.apply-border:hover{background-color:#faebd7}.apply-button-wrapper{display:grid;justify-content:center}.sort-header{font-size:10px;font-style:italic}.tip{padding:0 3px;color:#d3d3d3}.direction-text{font-size:small;font-weight:400}.close-button-wrapper{display:flex;flex-direction:row-reverse}\n"] }]
75
- }], ctorParameters: function () { return [{ type: i1.TableStore }, { type: i2.SortMenuComponentStore }]; } });
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy90YWJsZS1idWlsZGVyL2NvbXBvbmVudHMvc29ydC1tZW51L3NvcnQtbWVudS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jb21wb25lbnRzL3NvcnQtbWVudS9zb3J0LW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFlLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV2QyxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHNCQUFzQixFQUFnQixNQUFNLDZCQUE2QixDQUFBOzs7Ozs7Ozs7Ozs7O0FBRWxGLE1BTWEsaUJBQWlCO0lBTTVCLFlBQW9CLFVBQXNCLEVBQVMsS0FBNkI7UUFBNUQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFTLFVBQUssR0FBTCxLQUFLLENBQXdCO1FBRmhGLGtCQUFhLEdBQUcsYUFBYSxDQUFDO1FBQzlCLFdBQU0sR0FBRyxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQWdEcEMsVUFBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBb0IsRUFBQyxFQUFFLENBQ2hELEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUUsRUFB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QUssQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM5QyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEQ7SUFDSCxDQUFDO0lBUUQsWUFBWSxDQUFDLElBQWlCO1FBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7OEdBOURVLGlCQUFpQjtrR0FBakIsaUJBQWlCLHVDQUZsQixDQUFDLHNCQUFzQixDQUFDLDBCQ2JwQyw4K0hBcUdBOztTRHRGYSxpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFON0IsU0FBUzsrQkFDRSxjQUFjLGFBR2QsQ0FBQyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXksIHRyYW5zZmVyQXJyYXlJdGVtIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpcnN0LCBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVGFibGVTdG9yZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvdGFibGUtc3RvcmUnO1xyXG5pbXBvcnQgeyBTb3J0RGlyZWN0aW9uIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9yZXBvcnQtZGVmJztcclxuaW1wb3J0IHsgU29ydE1lbnVDb21wb25lbnRTdG9yZSwgU29ydFdpdGhOYW1lIH0gZnJvbSAnLi9zb3J0LW1lbnUuY29tcG9uZW50LXN0b3JlJ1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd0Yi1zb3J0LW1lbnUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zb3J0LW1lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NvcnQtbWVudS5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczpbU29ydE1lbnVDb21wb25lbnRTdG9yZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNvcnRNZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xyXG5cclxuICBzb3J0ZWQkOk9ic2VydmFibGU8U29ydFdpdGhOYW1lW10+O1xyXG4gIG5vdFNvcnRlZCQ6T2JzZXJ2YWJsZTxTb3J0V2l0aE5hbWVbXT47XHJcbiAgU29ydERpcmVjdGlvbiA9IFNvcnREaXJlY3Rpb247XHJcbiAgZGlydHkkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0YWJsZVN0YXRlOiBUYWJsZVN0b3JlLCBwdWJsaWMgc3RvcmU6IFNvcnRNZW51Q29tcG9uZW50U3RvcmUpIHtcclxuICAgIHRoaXMuc29ydGVkJCA9IHRoaXMuc3RvcmUuc29ydGVkJC5waXBlKG1hcChkYXRhPT5bLi4uZGF0YV0pKTtcclxuICAgIHRoaXMubm90U29ydGVkJCA9IHRoaXMuc3RvcmUubm90U29ydGVkJC5waXBlKG1hcChkYXRhPT5bLi4uZGF0YV0pKTtcclxuICB9XHJcblxyXG4gIHJlc2V0KCl7XHJcbiAgICB0aGlzLmRpcnR5JC5uZXh0KGZhbHNlKTtcclxuICAgIHRoaXMuc3RvcmUucmVzZXQoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCl7XHJcbiAgICB0aGlzLnN0b3JlLnJlc2V0KCk7XHJcbiAgfVxyXG5cclxuICBkcm9wSW50b1NvcnRlZChldmVudDogQ2RrRHJhZ0Ryb3A8U29ydFdpdGhOYW1lW10+KSB7XHJcbiAgICB0aGlzLmRpcnR5JC5uZXh0KHRydWUpO1xyXG4gICAgaWYgKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyID09PSBldmVudC5jb250YWluZXIpIHtcclxuICAgICAgbW92ZUl0ZW1JbkFycmF5KGV2ZW50LmNvbnRhaW5lci5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xyXG4gICAgICB0aGlzLnN0b3JlLnNldFNvcnRlZChldmVudC5jb250YWluZXIuZGF0YSk7XHJcbiAgICB9IGVsc2Uge1xyXG5cclxuICAgICAgdHJhbnNmZXJBcnJheUl0ZW0oZXZlbnQucHJldmlvdXNDb250YWluZXIuZGF0YSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQuY29udGFpbmVyLmRhdGEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZpb3VzSW5kZXgsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LmN1cnJlbnRJbmRleCk7XHJcbiAgICAgIGV2ZW50LmNvbnRhaW5lci5kYXRhW2V2ZW50LmN1cnJlbnRJbmRleF0gPSB7Li4uZXZlbnQuY29udGFpbmVyLmRhdGFbZXZlbnQuY3VycmVudEluZGV4XSxkaXJlY3Rpb246U29ydERpcmVjdGlvbi5hc2N9O1xyXG4gICAgICB0aGlzLnN0b3JlLnNldFNvcnRlZChldmVudC5jb250YWluZXIuZGF0YSk7XHJcbiAgICAgIHRoaXMuc3RvcmUuc2V0Tm90U29ydGVkKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyLmRhdGEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZHJvcEludG9Ob3RTb3J0ZWQoZXZlbnQ6IENka0RyYWdEcm9wPFNvcnRXaXRoTmFtZVtdPil7XHJcbiAgICBpZiAoZXZlbnQucHJldmlvdXNDb250YWluZXIgPT09IGV2ZW50LmNvbnRhaW5lcikge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmRpcnR5JC5uZXh0KHRydWUpO1xyXG4gICAgICB0cmFuc2ZlckFycmF5SXRlbShldmVudC5wcmV2aW91c0NvbnRhaW5lci5kYXRhLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBldmVudC5jb250YWluZXIuZGF0YSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmlvdXNJbmRleCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQuY3VycmVudEluZGV4KTtcclxuICAgICAgZXZlbnQuY29udGFpbmVyLmRhdGFbZXZlbnQuY3VycmVudEluZGV4XSA9IHsuLi5ldmVudC5jb250YWluZXIuZGF0YVtldmVudC5jdXJyZW50SW5kZXhdfTtcclxuXHJcbiAgICAgIHRoaXMuc3RvcmUuc2V0Tm90U29ydGVkKGV2ZW50LmNvbnRhaW5lci5kYXRhKTtcclxuICAgICAgdGhpcy5zdG9yZS5zZXRTb3J0ZWQoZXZlbnQucHJldmlvdXNDb250YWluZXIuZGF0YSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhcHBseSA9IHRoaXMuc3RvcmUuZWZmZWN0KChvYnM6T2JzZXJ2YWJsZTxudWxsPik9PlxyXG4gICAgb2JzLnBpcGUodGFwKCgpPT57XHJcbiAgICAgIHRoaXMuZGlydHkkLm5leHQoZmFsc2UpO1xyXG4gICAgICB0aGlzLnRhYmxlU3RhdGUuc2V0QWxsU29ydCh0aGlzLnN0b3JlLnNvcnRlZCQucGlwZShmaXJzdCgpKSlcclxuICB9KSkpO1xyXG5cclxuICBzZXREaXJlY3Rpb24oc29ydDpTb3J0V2l0aE5hbWUpe1xyXG4gICAgdGhpcy5kaXJ0eSQubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuc3RvcmUuc2V0RGlyZWN0aW9uKHNvcnQpO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG4iLCI8bmctY29udGFpbmVyICpuZ3J4TGV0PVwiZGlydHkkIGFzIGRpcnR5XCI+XG48bmctY29udGFpbmVyICAqbmdJZj1cInNvcnRlZCQgfCBhc3luYyBhcyBzb3J0ZWRcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vdFNvcnRlZCQgfCBhc3luYyBhcyBub3RTb3J0ZWRcIj5cbiAgICA8IS0tIE1lbnUgVHJpZ2dlciAtLT5cbiAgICA8c3BhbiBtYXRUb29sdGlwPVwiU29ydFwiPlxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIj5cbiAgICAgICAgPG1hdC1pY29uIGNvbG9yPVwicHJpbWFyeVwiPnN3YXBfdmVydDwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L3NwYW4+XG5cbiAgICA8IS0tIE1lbnUgLS0+XG4gICAgPG1hdC1tZW51ICNtZW51PVwibWF0TWVudVwiICBjbGFzcz1cIm15LW1hdC1tZW51XCIgKGNsb3NlZCk9XCJyZXNldCgpXCI+XG4gICAgICA8ZGl2IG1hdC1tZW51LWl0ZW0gY2xhc3M9XCJtZW51LWJ1dHRvblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2xvc2UtYnV0dG9uLXdyYXBwZXJcIj5cbiAgICAgICAgICA8c3BhbiBtYXRUb29sdGlwPVwiQ2xvc2VcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZGlydHlcIiBtYXRUb29sdGlwPVwiVW5kb1wiIHN0b3AtcHJvcGFnYXRpb24gKGNsaWNrKT1cInJlc2V0KClcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbj51bmRvPC9tYXQtaWNvbj5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDwhLS0gQXBwbHkgQnV0dG9uIC0tPlxuICAgICAgPGRpdiBjbGFzcz1cImFwcGx5LWJ1dHRvbi13cmFwcGVyXCI+XG4gICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiYXBwbHkobnVsbClcIlxuICAgICAgICAgIHN0b3AtcHJvcGFnYXRpb24gW2NsYXNzLmFwcGx5LWJvcmRlcl09XCJkaXJ0eVwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cIiFkaXJ0eVwiPlxuICAgICAgICAgICAgQXBwbHlcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJkaXJ0eVwiPlVuc2F2ZWQgQ2hhbmdlczwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8IS0tIERlZmF1bHQgU29ydGluZyBUZXh0IC0tPlxuICAgICAgPGRpdiAqbmdJZj1cIiFzb3J0ZWQubGVuZ3RoXCIgY2xhc3M9XCJ0aXBcIiA+XG4gICAgICAgIFNvcnRpbmcgTGlzdFxuICAgICAgPC9kaXY+XG5cbiAgICAgIDwhLS0gU29ydGVkIE1lbnUgTGlzdCAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJsaXN0XCJcbiAgICAgICAgY2RrRHJvcExpc3RcbiAgICAgICAgI3NvcnRlZEdyb3VwPVwiY2RrRHJvcExpc3RcIlxuICAgICAgICBbY2RrRHJvcExpc3RDb25uZWN0ZWRUb109XCJbbm90U29ydGVkR3JvdXBdXCJcbiAgICAgICAgW2Nka0Ryb3BMaXN0RGF0YV09XCJzb3J0ZWRcIlxuICAgICAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3BJbnRvU29ydGVkKCRldmVudClcIj5cblxuICAgICAgICA8IS0tIE1lbnUgSXRlbSBXcmFwcGVyIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzb3J0IG9mIHNvcnRlZDtsZXQgaT1pbmRleFwiPlxuXG4gICAgICAgICAgPCEtLSBNZW51IEl0ZW0gSGVhZGVycyAtLT5cbiAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRlZC5sZW5ndGggPiAxICYmIGkgPT09IDAgXCIgY2xhc3M9XCJkZXNjcmlwdGlvblwiIGNsYXNzPVwic29ydC1oZWFkZXJcIj5GaXJzdCBCeTwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRlZC5sZW5ndGggPiAxICYmIGkgIT09IDAgXCIgY2xhc3M9XCJkZXNjcmlwdGlvblwiICBjbGFzcz1cInNvcnQtaGVhZGVyXCI+VGhlbiBCeTwvc3Bhbj5cblxuICAgICAgICAgIDwhLS0gTWVudSBJdGVtIC0tPlxuICAgICAgICAgIDxkaXYgbWF0LW1lbnUtaXRlbSAgIGNka0RyYWcgY2xhc3M9XCJtZW51LWl0ZW1cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzb3J0LWl0ZW1cIj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzb3J0ZWQtbmFtZVwiPlxuICAgICAgICAgICAgICAgIHt7c29ydC5kaXNwbGF5TmFtZSB8fCAoc29ydC5hY3RpdmUgfCBzcGFjZUNhc2UpfX1cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRpcmVjdGlvbi10ZXh0XCI+e3tzb3J0LmRpcmVjdGlvbn19PC9zcGFuPlxuICAgICAgICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgICAgICAgPCEtLSBTb3J0IERpcmVjdGlvbiBCdXR0b25zIC0tPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXAtZG93bi1idXR0b25zLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uICBjbGFzcz1cInVwLWRvd24tYnV0dG9uIHVwLWJ1dHRvblwiIHN0b3AtcHJvcGFnYXRpb25cbiAgICAgICAgICAgICAgICAoY2xpY2spPVwic2V0RGlyZWN0aW9uKHthY3RpdmU6c29ydC5hY3RpdmUsZGlyZWN0aW9uOlNvcnREaXJlY3Rpb24uYXNjLGRpc3BsYXlOYW1lOnNvcnQuZGlzcGxheU5hbWV9KVwiPlxuICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIFtuZ0NsYXNzXT1cInNvcnQuZGlyZWN0aW9uICE9PSBTb3J0RGlyZWN0aW9uLmFzYyA/ICdsaWdodC1hcnJvdycgOiAnZGFyay1hcnJvdydcIiBjbGFzcz1cInVwLWRvd24taWNvblwiPlxuICAgICAgICAgICAgICAgICAgYXJyb3dfdXB3YXJkXG4gICAgICAgICAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInVwLWRvd24tYnV0dG9uXCIgc3RvcC1wcm9wYWdhdGlvblxuICAgICAgICAgICAgICAgIChjbGljayk9XCJzZXREaXJlY3Rpb24oe2FjdGl2ZTpzb3J0LmFjdGl2ZSxkaXJlY3Rpb246U29ydERpcmVjdGlvbi5kZXNjLGRpc3BsYXlOYW1lOnNvcnQuZGlzcGxheU5hbWV9KVwiPlxuICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIFtuZ0NsYXNzXT1cInNvcnQuZGlyZWN0aW9uID09PSBTb3J0RGlyZWN0aW9uLmFzYyA/ICdsaWdodC1hcnJvdycgOiAnZGFyay1hcnJvdydcIiBjbGFzcz1cInVwLWRvd24taWNvblwiPlxuICAgICAgICAgICAgICAgICAgICBhcnJvd19kb3dud2FyZFxuICAgICAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPCEtLSBEZWZhdWx0IE5vdCBTb3J0ZWQgVGV4dCAtLT5cbiAgICAgIDxkaXYgKm5nSWY9XCIhbm90U29ydGVkLmxlbmd0aFwiIGNsYXNzPVwidGlwXCIgPlxuICAgICAgICBOb3QgU29ydGVkIExpc3RcbiAgICAgIDwvZGl2PlxuICAgICAgPCEtLSBOb3QgU29ydGVkIE1lbnUgTGlzdCAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJsaXN0XCJcbiAgICAgICAgY2RrRHJvcExpc3RcbiAgICAgICAgI25vdFNvcnRlZEdyb3VwPVwiY2RrRHJvcExpc3RcIlxuICAgICAgICBbY2RrRHJvcExpc3RDb25uZWN0ZWRUb109XCJbc29ydGVkR3JvdXBdXCJcbiAgICAgICAgW2Nka0Ryb3BMaXN0RGF0YV09XCJub3RTb3J0ZWRcIlxuICAgICAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3BJbnRvTm90U29ydGVkKCRldmVudClcIj5cbiAgICAgICAgPGRpdiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBzb3J0IG9mIG5vdFNvcnRlZFwiICBjbGFzcz1cIm1lbnUtaXRlbVwiIGNka0RyYWc+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJub3Qtc29ydGVkLW5hbWVcIj57e3NvcnQuZGlzcGxheU5hbWUgfHwgKHNvcnQuYWN0aXZlIHwgc3BhY2VDYXNlKX19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbWF0LW1lbnU+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==