@magic-xpa/angular-material-core 4.1100.0-dev4110.18 → 4.1100.0-dev4110.181

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 (30) hide show
  1. package/esm2022/index.mjs +9 -0
  2. package/{esm2020 → esm2022}/magic-xpa-angular-material-core.mjs +1 -1
  3. package/{esm2020 → esm2022}/src/angular-material.module.mjs +83 -83
  4. package/esm2022/src/components/base-mat-table-magic.component.mjs +62 -0
  5. package/esm2022/src/directives/magic/form-controls/mat-magic-autocomplete.directive.mjs +28 -0
  6. package/{esm2020 → esm2022}/src/directives/magic/form-controls/mat-magic-checkbox.directive.mjs +14 -14
  7. package/esm2022/src/directives/magic/form-controls/mat-magic-combobox.directive.mjs +30 -0
  8. package/esm2022/src/directives/magic/form-controls/mat-magic-listbox.directive.mjs +27 -0
  9. package/{esm2020 → esm2022}/src/services/mat.magic.providers.mjs +6 -6
  10. package/esm2022/src/services/mattable.magic.service.mjs +132 -0
  11. package/{fesm2020 → fesm2022}/magic-xpa-angular-material-core.mjs +316 -302
  12. package/{fesm2015 → fesm2022}/magic-xpa-angular-material-core.mjs.map +1 -1
  13. package/index.d.ts +8 -8
  14. package/package.json +6 -12
  15. package/src/angular-material.module.d.ts +26 -26
  16. package/src/components/base-mat-table-magic.component.d.ts +19 -19
  17. package/src/directives/magic/form-controls/mat-magic-autocomplete.directive.d.ts +7 -7
  18. package/src/directives/magic/form-controls/mat-magic-checkbox.directive.d.ts +6 -6
  19. package/src/directives/magic/form-controls/mat-magic-combobox.directive.d.ts +9 -9
  20. package/src/directives/magic/form-controls/mat-magic-listbox.directive.d.ts +9 -9
  21. package/src/services/mat.magic.providers.d.ts +38 -38
  22. package/src/services/mattable.magic.service.d.ts +36 -36
  23. package/esm2020/index.mjs +0 -9
  24. package/esm2020/src/components/base-mat-table-magic.component.mjs +0 -54
  25. package/esm2020/src/directives/magic/form-controls/mat-magic-autocomplete.directive.mjs +0 -28
  26. package/esm2020/src/directives/magic/form-controls/mat-magic-combobox.directive.mjs +0 -30
  27. package/esm2020/src/directives/magic/form-controls/mat-magic-listbox.directive.mjs +0 -26
  28. package/esm2020/src/services/mattable.magic.service.mjs +0 -127
  29. package/fesm2015/magic-xpa-angular-material-core.mjs +0 -367
  30. package/fesm2020/magic-xpa-angular-material-core.mjs.map +0 -1
@@ -0,0 +1,9 @@
1
+ export * from "./src/angular-material.module";
2
+ export * from "./src/components/base-mat-table-magic.component";
3
+ export * from "./src/directives/magic/form-controls/mat-magic-autocomplete.directive";
4
+ export * from "./src/directives/magic/form-controls/mat-magic-checkbox.directive";
5
+ export * from "./src/directives/magic/form-controls/mat-magic-combobox.directive";
6
+ export * from "./src/directives/magic/form-controls/mat-magic-listbox.directive";
7
+ export * from "./src/services/mat.magic.providers";
8
+ export * from "./src/services/mattable.magic.service";
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLW1hdGVyaWFsLWNvcmUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsdUVBQXVFLENBQUM7QUFDdEYsY0FBYyxtRUFBbUUsQ0FBQztBQUNsRixjQUFjLG1FQUFtRSxDQUFDO0FBQ2xGLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZSBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieSBiYXJyZWxzYnkuXG4gKi9cblxuZXhwb3J0ICogZnJvbSBcIi4vc3JjL2FuZ3VsYXItbWF0ZXJpYWwubW9kdWxlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvY29tcG9uZW50cy9iYXNlLW1hdC10YWJsZS1tYWdpYy5jb21wb25lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9kaXJlY3RpdmVzL21hZ2ljL2Zvcm0tY29udHJvbHMvbWF0LW1hZ2ljLWF1dG9jb21wbGV0ZS5kaXJlY3RpdmVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9kaXJlY3RpdmVzL21hZ2ljL2Zvcm0tY29udHJvbHMvbWF0LW1hZ2ljLWNoZWNrYm94LmRpcmVjdGl2ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL2RpcmVjdGl2ZXMvbWFnaWMvZm9ybS1jb250cm9scy9tYXQtbWFnaWMtY29tYm9ib3guZGlyZWN0aXZlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvZGlyZWN0aXZlcy9tYWdpYy9mb3JtLWNvbnRyb2xzL21hdC1tYWdpYy1saXN0Ym94LmRpcmVjdGl2ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL3NlcnZpY2VzL21hdC5tYWdpYy5wcm92aWRlcnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9zZXJ2aWNlcy9tYXR0YWJsZS5tYWdpYy5zZXJ2aWNlXCI7XG4iXX0=
@@ -1,2 +1,2 @@
1
- export * from './index';
1
+ export * from './index';
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFnaWMteHBhLWFuZ3VsYXItbWF0ZXJpYWwtY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItbWF0ZXJpYWwtY29yZS9tYWdpYy14cGEtYW5ndWxhci1tYXRlcmlhbC1jb3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -1,83 +1,83 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { FormsModule } from '@angular/forms';
4
- import { MatCheckboxDirective } from './directives/magic/form-controls/mat-magic-checkbox.directive';
5
- import { MatComboboxDirective } from './directives/magic/form-controls/mat-magic-combobox.directive';
6
- import { BaseMatTableMagicComponent } from './components/base-mat-table-magic.component';
7
- import { MatListboxDirective } from './directives/magic/form-controls/mat-magic-listbox.directive';
8
- import { MatTableModule } from '@angular/material/table';
9
- import { MatPaginatorModule } from '@angular/material/paginator';
10
- import { MatInputModule } from '@angular/material/input';
11
- import { MatButtonModule } from '@angular/material/button';
12
- import { MatListModule } from '@angular/material/list';
13
- import { MatCheckboxModule } from '@angular/material/checkbox';
14
- import { MatTabsModule } from '@angular/material/tabs';
15
- import { MatSelectModule } from '@angular/material/select';
16
- import { MatDatepickerModule } from '@angular/material/datepicker';
17
- import { MatNativeDateModule } from '@angular/material/core';
18
- import { MagicModule } from '@magic-xpa/angular';
19
- import { MatMagicAutocompleteDirective } from './directives/magic/form-controls/mat-magic-autocomplete.directive';
20
- import * as i0 from "@angular/core";
21
- export const materialModules = [
22
- MatTableModule,
23
- MatPaginatorModule,
24
- MatInputModule,
25
- MatButtonModule,
26
- MatListModule,
27
- MatCheckboxModule,
28
- MatTabsModule,
29
- MatSelectModule,
30
- MatDatepickerModule,
31
- MatNativeDateModule,
32
- ];
33
- export class MagicAngularMaterialModule {
34
- }
35
- MagicAngularMaterialModule.ɵfac = function MagicAngularMaterialModule_Factory(t) { return new (t || MagicAngularMaterialModule)(); };
36
- MagicAngularMaterialModule.ɵmod = i0.ɵɵdefineNgModule({ type: MagicAngularMaterialModule });
37
- MagicAngularMaterialModule.ɵinj = i0.ɵɵdefineInjector({ imports: [CommonModule,
38
- FormsModule, materialModules, MagicModule] });
39
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MagicAngularMaterialModule, [{
40
- type: NgModule,
41
- args: [{
42
- declarations: [
43
- MatCheckboxDirective,
44
- MatComboboxDirective,
45
- MatListboxDirective,
46
- MatMagicAutocompleteDirective,
47
- BaseMatTableMagicComponent,
48
- ],
49
- exports: [
50
- MatCheckboxDirective,
51
- MatComboboxDirective,
52
- MatListboxDirective,
53
- MatMagicAutocompleteDirective,
54
- BaseMatTableMagicComponent
55
- ],
56
- imports: [
57
- CommonModule,
58
- FormsModule,
59
- ...materialModules,
60
- MagicModule
61
- ]
62
- }]
63
- }], null, null); })();
64
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(MagicAngularMaterialModule, { declarations: [MatCheckboxDirective,
65
- MatComboboxDirective,
66
- MatListboxDirective,
67
- MatMagicAutocompleteDirective,
68
- BaseMatTableMagicComponent], imports: [CommonModule,
69
- FormsModule, MatTableModule,
70
- MatPaginatorModule,
71
- MatInputModule,
72
- MatButtonModule,
73
- MatListModule,
74
- MatCheckboxModule,
75
- MatTabsModule,
76
- MatSelectModule,
77
- MatDatepickerModule,
78
- MatNativeDateModule, MagicModule], exports: [MatCheckboxDirective,
79
- MatComboboxDirective,
80
- MatListboxDirective,
81
- MatMagicAutocompleteDirective,
82
- BaseMatTableMagicComponent] }); })();
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1tYXRlcmlhbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLW1hdGVyaWFsLWNvcmUvc3JjL2FuZ3VsYXItbWF0ZXJpYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUNyRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUNyRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN6RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUVBQW1FLENBQUM7O0FBTWxILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRztJQUM3QixjQUFjO0lBQ2Qsa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxlQUFlO0lBQ2YsYUFBYTtJQUNiLGlCQUFpQjtJQUNqQixhQUFhO0lBQ2IsZUFBZTtJQUNmLG1CQUFtQjtJQUNuQixtQkFBbUI7Q0FDcEIsQ0FBQztBQTJCRixNQUFNLE9BQU8sMEJBQTBCOztvR0FBMUIsMEJBQTBCOzhEQUExQiwwQkFBMEI7a0VBTm5DLFlBQVk7UUFDWixXQUFXLEVBQ1IsZUFBZSxFQUNsQixXQUFXO3VGQUdGLDBCQUEwQjtjQXRCdEMsUUFBUTtlQUFDO2dCQUNSLFlBQVksRUFBRTtvQkFDWixvQkFBb0I7b0JBQ3BCLG9CQUFvQjtvQkFDcEIsbUJBQW1CO29CQUNuQiw2QkFBNkI7b0JBQzdCLDBCQUEwQjtpQkFDM0I7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLG9CQUFvQjtvQkFDcEIsb0JBQW9CO29CQUNwQixtQkFBbUI7b0JBQ25CLDZCQUE2QjtvQkFDN0IsMEJBQTBCO2lCQUMzQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixXQUFXO29CQUNYLEdBQUcsZUFBZTtvQkFDbEIsV0FBVztpQkFDWjthQUNGOzt3RkFDWSwwQkFBMEIsbUJBcEJuQyxvQkFBb0I7UUFDcEIsb0JBQW9CO1FBQ3BCLG1CQUFtQjtRQUNuQiw2QkFBNkI7UUFDN0IsMEJBQTBCLGFBVTFCLFlBQVk7UUFDWixXQUFXLEVBaENiLGNBQWM7UUFDZCxrQkFBa0I7UUFDbEIsY0FBYztRQUNkLGVBQWU7UUFDZixhQUFhO1FBQ2IsaUJBQWlCO1FBQ2pCLGFBQWE7UUFDYixlQUFlO1FBQ2YsbUJBQW1CO1FBQ25CLG1CQUFtQixFQXlCakIsV0FBVyxhQVZYLG9CQUFvQjtRQUNwQixvQkFBb0I7UUFDcEIsbUJBQW1CO1FBQ25CLDZCQUE2QjtRQUM3QiwwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdENoZWNrYm94RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL21hZ2ljL2Zvcm0tY29udHJvbHMvbWF0LW1hZ2ljLWNoZWNrYm94LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE1hdENvbWJvYm94RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL21hZ2ljL2Zvcm0tY29udHJvbHMvbWF0LW1hZ2ljLWNvbWJvYm94LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEJhc2VNYXRUYWJsZU1hZ2ljQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Jhc2UtbWF0LXRhYmxlLW1hZ2ljLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdExpc3Rib3hEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvbWFnaWMvZm9ybS1jb250cm9scy9tYXQtbWFnaWMtbGlzdGJveC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBNYXRUYWJsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcclxuaW1wb3J0IHsgTWF0UGFnaW5hdG9yTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcclxuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcclxuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XHJcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcclxuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcclxuaW1wb3J0IHsgTWF0RGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xyXG5pbXBvcnQgeyBNYXROYXRpdmVEYXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XHJcbmltcG9ydCB7IE1hZ2ljTW9kdWxlIH0gZnJvbSAnQG1hZ2ljLXhwYS9hbmd1bGFyJztcclxuaW1wb3J0IHsgTWF0TWFnaWNBdXRvY29tcGxldGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvbWFnaWMvZm9ybS1jb250cm9scy9tYXQtbWFnaWMtYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZSc7XHJcblxyXG5cclxuLyoqXHJcbiAqIEBpZ25vcmVcclxuICovXHJcbmV4cG9ydCBjb25zdCBtYXRlcmlhbE1vZHVsZXMgPSBbXHJcbiAgTWF0VGFibGVNb2R1bGUsXHJcbiAgTWF0UGFnaW5hdG9yTW9kdWxlLFxyXG4gIE1hdElucHV0TW9kdWxlLFxyXG4gIE1hdEJ1dHRvbk1vZHVsZSxcclxuICBNYXRMaXN0TW9kdWxlLFxyXG4gIE1hdENoZWNrYm94TW9kdWxlLFxyXG4gIE1hdFRhYnNNb2R1bGUsXHJcbiAgTWF0U2VsZWN0TW9kdWxlLFxyXG4gIE1hdERhdGVwaWNrZXJNb2R1bGUsXHJcbiAgTWF0TmF0aXZlRGF0ZU1vZHVsZSxcclxuXTtcclxuXHJcbi8qKlxyXG4gKiBAaWdub3JlXHJcbiAqL1xyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgTWF0Q2hlY2tib3hEaXJlY3RpdmUsXHJcbiAgICBNYXRDb21ib2JveERpcmVjdGl2ZSxcclxuICAgIE1hdExpc3Rib3hEaXJlY3RpdmUsXHJcbiAgICBNYXRNYWdpY0F1dG9jb21wbGV0ZURpcmVjdGl2ZSxcclxuICAgIEJhc2VNYXRUYWJsZU1hZ2ljQ29tcG9uZW50LFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgTWF0Q2hlY2tib3hEaXJlY3RpdmUsXHJcbiAgICBNYXRDb21ib2JveERpcmVjdGl2ZSxcclxuICAgIE1hdExpc3Rib3hEaXJlY3RpdmUsXHJcbiAgICBNYXRNYWdpY0F1dG9jb21wbGV0ZURpcmVjdGl2ZSxcclxuICAgIEJhc2VNYXRUYWJsZU1hZ2ljQ29tcG9uZW50XHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIC4uLm1hdGVyaWFsTW9kdWxlcyxcclxuICAgIE1hZ2ljTW9kdWxlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWFnaWNBbmd1bGFyTWF0ZXJpYWxNb2R1bGUge1xyXG5cclxufVxyXG4iXX0=
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { MatCheckboxDirective } from './directives/magic/form-controls/mat-magic-checkbox.directive';
5
+ import { MatComboboxDirective } from './directives/magic/form-controls/mat-magic-combobox.directive';
6
+ import { BaseMatTableMagicComponent } from './components/base-mat-table-magic.component';
7
+ import { MatListboxDirective } from './directives/magic/form-controls/mat-magic-listbox.directive';
8
+ import { MatTableModule } from '@angular/material/table';
9
+ import { MatPaginatorModule } from '@angular/material/paginator';
10
+ import { MatInputModule } from '@angular/material/input';
11
+ import { MatButtonModule } from '@angular/material/button';
12
+ import { MatListModule } from '@angular/material/list';
13
+ import { MatCheckboxModule } from '@angular/material/checkbox';
14
+ import { MatTabsModule } from '@angular/material/tabs';
15
+ import { MatSelectModule } from '@angular/material/select';
16
+ import { MatDatepickerModule } from '@angular/material/datepicker';
17
+ import { MatNativeDateModule } from '@angular/material/core';
18
+ import { MagicModule } from '@magic-xpa/angular';
19
+ import { MatMagicAutocompleteDirective } from './directives/magic/form-controls/mat-magic-autocomplete.directive';
20
+ import * as i0 from "@angular/core";
21
+ export const materialModules = [
22
+ MatTableModule,
23
+ MatPaginatorModule,
24
+ MatInputModule,
25
+ MatButtonModule,
26
+ MatListModule,
27
+ MatCheckboxModule,
28
+ MatTabsModule,
29
+ MatSelectModule,
30
+ MatDatepickerModule,
31
+ MatNativeDateModule,
32
+ ];
33
+ export class MagicAngularMaterialModule {
34
+ static ɵfac = function MagicAngularMaterialModule_Factory(t) { return new (t || MagicAngularMaterialModule)(); };
35
+ static ɵmod = i0.ɵɵdefineNgModule({ type: MagicAngularMaterialModule });
36
+ static ɵinj = i0.ɵɵdefineInjector({ imports: [CommonModule,
37
+ FormsModule, materialModules, MagicModule] });
38
+ }
39
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MagicAngularMaterialModule, [{
40
+ type: NgModule,
41
+ args: [{
42
+ declarations: [
43
+ MatCheckboxDirective,
44
+ MatComboboxDirective,
45
+ MatListboxDirective,
46
+ MatMagicAutocompleteDirective,
47
+ BaseMatTableMagicComponent,
48
+ ],
49
+ exports: [
50
+ MatCheckboxDirective,
51
+ MatComboboxDirective,
52
+ MatListboxDirective,
53
+ MatMagicAutocompleteDirective,
54
+ BaseMatTableMagicComponent
55
+ ],
56
+ imports: [
57
+ CommonModule,
58
+ FormsModule,
59
+ ...materialModules,
60
+ MagicModule
61
+ ]
62
+ }]
63
+ }], null, null); })();
64
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(MagicAngularMaterialModule, { declarations: [MatCheckboxDirective,
65
+ MatComboboxDirective,
66
+ MatListboxDirective,
67
+ MatMagicAutocompleteDirective,
68
+ BaseMatTableMagicComponent], imports: [CommonModule,
69
+ FormsModule, MatTableModule,
70
+ MatPaginatorModule,
71
+ MatInputModule,
72
+ MatButtonModule,
73
+ MatListModule,
74
+ MatCheckboxModule,
75
+ MatTabsModule,
76
+ MatSelectModule,
77
+ MatDatepickerModule,
78
+ MatNativeDateModule, MagicModule], exports: [MatCheckboxDirective,
79
+ MatComboboxDirective,
80
+ MatListboxDirective,
81
+ MatMagicAutocompleteDirective,
82
+ BaseMatTableMagicComponent] }); })();
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1tYXRlcmlhbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLW1hdGVyaWFsLWNvcmUvc3JjL2FuZ3VsYXItbWF0ZXJpYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUNyRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUNyRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN6RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUVBQW1FLENBQUM7O0FBTWxILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRztJQUM3QixjQUFjO0lBQ2Qsa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxlQUFlO0lBQ2YsYUFBYTtJQUNiLGlCQUFpQjtJQUNqQixhQUFhO0lBQ2IsZUFBZTtJQUNmLG1CQUFtQjtJQUNuQixtQkFBbUI7Q0FDcEIsQ0FBQztBQTJCRixNQUFNLE9BQU8sMEJBQTBCO29GQUExQiwwQkFBMEI7OENBQTFCLDBCQUEwQjtrREFObkMsWUFBWTtZQUNaLFdBQVcsRUFDUixlQUFlLEVBQ2xCLFdBQVc7O2lGQUdGLDBCQUEwQjtjQXRCdEMsUUFBUTtlQUFDO2dCQUNSLFlBQVksRUFBRTtvQkFDWixvQkFBb0I7b0JBQ3BCLG9CQUFvQjtvQkFDcEIsbUJBQW1CO29CQUNuQiw2QkFBNkI7b0JBQzdCLDBCQUEwQjtpQkFDM0I7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLG9CQUFvQjtvQkFDcEIsb0JBQW9CO29CQUNwQixtQkFBbUI7b0JBQ25CLDZCQUE2QjtvQkFDN0IsMEJBQTBCO2lCQUMzQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixXQUFXO29CQUNYLEdBQUcsZUFBZTtvQkFDbEIsV0FBVztpQkFDWjthQUNGOzt3RkFDWSwwQkFBMEIsbUJBcEJuQyxvQkFBb0I7UUFDcEIsb0JBQW9CO1FBQ3BCLG1CQUFtQjtRQUNuQiw2QkFBNkI7UUFDN0IsMEJBQTBCLGFBVTFCLFlBQVk7UUFDWixXQUFXLEVBaENiLGNBQWM7UUFDZCxrQkFBa0I7UUFDbEIsY0FBYztRQUNkLGVBQWU7UUFDZixhQUFhO1FBQ2IsaUJBQWlCO1FBQ2pCLGFBQWE7UUFDYixlQUFlO1FBQ2YsbUJBQW1CO1FBQ25CLG1CQUFtQixFQXlCakIsV0FBVyxhQVZYLG9CQUFvQjtRQUNwQixvQkFBb0I7UUFDcEIsbUJBQW1CO1FBQ25CLDZCQUE2QjtRQUM3QiwwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdENoZWNrYm94RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL21hZ2ljL2Zvcm0tY29udHJvbHMvbWF0LW1hZ2ljLWNoZWNrYm94LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE1hdENvbWJvYm94RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL21hZ2ljL2Zvcm0tY29udHJvbHMvbWF0LW1hZ2ljLWNvbWJvYm94LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEJhc2VNYXRUYWJsZU1hZ2ljQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Jhc2UtbWF0LXRhYmxlLW1hZ2ljLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdExpc3Rib3hEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvbWFnaWMvZm9ybS1jb250cm9scy9tYXQtbWFnaWMtbGlzdGJveC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBNYXRUYWJsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcclxuaW1wb3J0IHsgTWF0UGFnaW5hdG9yTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcclxuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcclxuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XHJcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcclxuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcclxuaW1wb3J0IHsgTWF0RGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xyXG5pbXBvcnQgeyBNYXROYXRpdmVEYXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XHJcbmltcG9ydCB7IE1hZ2ljTW9kdWxlIH0gZnJvbSAnQG1hZ2ljLXhwYS9hbmd1bGFyJztcclxuaW1wb3J0IHsgTWF0TWFnaWNBdXRvY29tcGxldGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvbWFnaWMvZm9ybS1jb250cm9scy9tYXQtbWFnaWMtYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZSc7XHJcblxyXG5cclxuLyoqXHJcbiAqIEBpZ25vcmVcclxuICovXHJcbmV4cG9ydCBjb25zdCBtYXRlcmlhbE1vZHVsZXMgPSBbXHJcbiAgTWF0VGFibGVNb2R1bGUsXHJcbiAgTWF0UGFnaW5hdG9yTW9kdWxlLFxyXG4gIE1hdElucHV0TW9kdWxlLFxyXG4gIE1hdEJ1dHRvbk1vZHVsZSxcclxuICBNYXRMaXN0TW9kdWxlLFxyXG4gIE1hdENoZWNrYm94TW9kdWxlLFxyXG4gIE1hdFRhYnNNb2R1bGUsXHJcbiAgTWF0U2VsZWN0TW9kdWxlLFxyXG4gIE1hdERhdGVwaWNrZXJNb2R1bGUsXHJcbiAgTWF0TmF0aXZlRGF0ZU1vZHVsZSxcclxuXTtcclxuXHJcbi8qKlxyXG4gKiBAaWdub3JlXHJcbiAqL1xyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgTWF0Q2hlY2tib3hEaXJlY3RpdmUsXHJcbiAgICBNYXRDb21ib2JveERpcmVjdGl2ZSxcclxuICAgIE1hdExpc3Rib3hEaXJlY3RpdmUsXHJcbiAgICBNYXRNYWdpY0F1dG9jb21wbGV0ZURpcmVjdGl2ZSxcclxuICAgIEJhc2VNYXRUYWJsZU1hZ2ljQ29tcG9uZW50LFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgTWF0Q2hlY2tib3hEaXJlY3RpdmUsXHJcbiAgICBNYXRDb21ib2JveERpcmVjdGl2ZSxcclxuICAgIE1hdExpc3Rib3hEaXJlY3RpdmUsXHJcbiAgICBNYXRNYWdpY0F1dG9jb21wbGV0ZURpcmVjdGl2ZSxcclxuICAgIEJhc2VNYXRUYWJsZU1hZ2ljQ29tcG9uZW50XHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIC4uLm1hdGVyaWFsTW9kdWxlcyxcclxuICAgIE1hZ2ljTW9kdWxlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWFnaWNBbmd1bGFyTWF0ZXJpYWxNb2R1bGUge1xyXG5cclxufVxyXG4iXX0=
@@ -0,0 +1,62 @@
1
+ import { MagicServices, TaskBaseMagicComponent } from '@magic-xpa/angular';
2
+ import { MatSort } from '@angular/material/sort';
3
+ import { MatTableDataSource } from '@angular/material/table';
4
+ import { SelectionModel } from '@angular/cdk/collections';
5
+ import { ChangeDetectorRef, Component, ViewChild } from '@angular/core';
6
+ import { matMagicProviders } from '../services/mat.magic.providers';
7
+ import { MatPaginator } from '@angular/material/paginator';
8
+ import { isNullOrUndefined } from '@magic-xpa/mscorelib';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@magic-xpa/angular";
11
+ export class BaseMatTableMagicComponent extends TaskBaseMagicComponent {
12
+ ref;
13
+ magicService;
14
+ paginator;
15
+ sort;
16
+ displayedColumns;
17
+ dataSource;
18
+ selection;
19
+ constructor(ref, magicService) {
20
+ super(ref, magicService);
21
+ this.ref = ref;
22
+ this.magicService = magicService;
23
+ this.displayedColumns = [];
24
+ this.dataSource = new MatTableDataSource(this.task.Records.list);
25
+ this.selection = new SelectionModel(false, []);
26
+ }
27
+ ngOnInit() {
28
+ super.ngOnInit();
29
+ this.magicService.tableService.connect(this.dataSource, this.paginator, this.selection);
30
+ }
31
+ ngAfterContentChecked() {
32
+ if (!isNullOrUndefined(this.paginator) && !isNullOrUndefined(this.paginator.pageSize) &&
33
+ this.paginator.pageSize != this.task.oldPageSize) {
34
+ this.magicService.tableService.handleResize(this.paginator.pageIndex, 0, this.paginator.pageSize);
35
+ this.task.oldPageSize = this.paginator.pageSize;
36
+ }
37
+ }
38
+ static ɵfac = function BaseMatTableMagicComponent_Factory(t) { return new (t || BaseMatTableMagicComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i1.MagicServices)); };
39
+ static ɵcmp = i0.ɵɵdefineComponent({ type: BaseMatTableMagicComponent, selectors: [["ng-component"]], viewQuery: function BaseMatTableMagicComponent_Query(rf, ctx) { if (rf & 1) {
40
+ i0.ɵɵviewQuery(MatPaginator, 7);
41
+ i0.ɵɵviewQuery(MatSort, 7);
42
+ } if (rf & 2) {
43
+ let _t;
44
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.paginator = _t.first);
45
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.sort = _t.first);
46
+ } }, features: [i0.ɵɵProvidersFeature(matMagicProviders), i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function BaseMatTableMagicComponent_Template(rf, ctx) { }, encapsulation: 2 });
47
+ }
48
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseMatTableMagicComponent, [{
49
+ type: Component,
50
+ args: [{
51
+ providers: matMagicProviders,
52
+ template: ''
53
+ }]
54
+ }], () => [{ type: i0.ChangeDetectorRef }, { type: i1.MagicServices }], { paginator: [{
55
+ type: ViewChild,
56
+ args: [MatPaginator, { static: true }]
57
+ }], sort: [{
58
+ type: ViewChild,
59
+ args: [MatSort, { static: true }]
60
+ }] }); })();
61
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(BaseMatTableMagicComponent, { className: "BaseMatTableMagicComponent", filePath: "src\\components\\base-mat-table-magic.component.ts", lineNumber: 19 }); })();
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1tYXQtdGFibGUtbWFnaWMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1tYXRlcmlhbC1jb3JlL3NyYy9jb21wb25lbnRzL2Jhc2UtbWF0LXRhYmxlLW1hZ2ljLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0UsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQVV4RCxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsc0JBQXNCO0lBZ0N6RDtJQUNIO0lBNUIrQixTQUFTLENBQWU7SUFLN0IsSUFBSSxDQUFVO0lBS2pELGdCQUFnQixDQUFDO0lBS2pCLFVBQVUsQ0FBQztJQUtYLFNBQVMsQ0FBQztJQU1WLFlBQ1ksR0FBc0IsRUFDekIsWUFBMkI7UUFHbEMsS0FBSyxDQUFDLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUpmLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3pCLGlCQUFZLEdBQVosWUFBWSxDQUFlO1FBS2xDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsR0FBUyxJQUFJLGtCQUFrQixDQUFjLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxTQUFTLEdBQVUsSUFBSSxjQUFjLENBQWMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFLRCxRQUFRO1FBQ04sS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBa0MsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNqSCxDQUFDO0lBS0QscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQztZQUNuRixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2xELElBQUksQ0FBQyxZQUFZLENBQUMsWUFBa0MsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDekgsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUM7UUFDbEQsQ0FBQztJQUNILENBQUM7b0ZBNURXLDBCQUEwQjsrQ0FBMUIsMEJBQTBCOzJCQUszQixZQUFZOzJCQUtaLE9BQU87Ozs7OzhDQWRQLGlCQUFpQjs7aUZBSWhCLDBCQUEwQjtjQUx2QyxTQUFTO2VBQUM7Z0JBQ1QsU0FBUyxFQUFFLGlCQUFpQjtnQkFDNUIsUUFBUSxFQUFFLEVBQUU7YUFFYjs4RUFNeUMsU0FBUztrQkFBaEQsU0FBUzttQkFBQyxZQUFZLEVBQUUsRUFBQyxNQUFNLEVBQUMsSUFBSSxFQUFDO1lBS0gsSUFBSTtrQkFBdEMsU0FBUzttQkFBQyxPQUFPLEVBQUUsRUFBQyxNQUFNLEVBQUMsSUFBSSxFQUFDOztrRkFWckIsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWFnaWNTZXJ2aWNlcywgVGFza0Jhc2VNYWdpY0NvbXBvbmVudCB9IGZyb20gJ0BtYWdpYy14cGEvYW5ndWxhcic7XHJcbmltcG9ydCB7IE1hdFNvcnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcclxuaW1wb3J0IHsgTWF0VGFibGVEYXRhU291cmNlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xyXG5pbXBvcnQgeyBTZWxlY3Rpb25Nb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2xsZWN0aW9ucyc7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNZ01hdFRhYmxlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL21hdHRhYmxlLm1hZ2ljLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBtYXRNYWdpY1Byb3ZpZGVycyB9IGZyb20gJy4uL3NlcnZpY2VzL21hdC5tYWdpYy5wcm92aWRlcnMnO1xyXG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xyXG5pbXBvcnQgeyBpc051bGxPclVuZGVmaW5lZCB9IGZyb20gJ0BtYWdpYy14cGEvbXNjb3JlbGliJztcclxuXHJcbi8qKlxyXG4gKiBUaGlzIGNvbXBvbmVudCBpcyB0aGUgYmFzZSBjb21wb25lbnQgZm9yIGZvcm1zIHdoaWNoIGhhcyBhIG1hdGVyaWFsLWRlc2lnbiB0YWJsZSAoZ3JpZClcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHByb3ZpZGVyczogbWF0TWFnaWNQcm92aWRlcnMsXHJcbiAgdGVtcGxhdGU6ICcnXHJcblxyXG59KVxyXG4gZXhwb3J0IGNsYXNzIEJhc2VNYXRUYWJsZU1hZ2ljQ29tcG9uZW50IGV4dGVuZHMgVGFza0Jhc2VNYWdpY0NvbXBvbmVudCB7XHJcblxyXG4gIC8qKlxyXG4gICAqIFBhZ2luYXRvciB0byBlbmFibGUgY2hhbmdpbmcgcGFnZXMgaW4gdGhlIHRhYmxlXHJcbiAgICovXHJcbiAgQFZpZXdDaGlsZChNYXRQYWdpbmF0b3IsIHtzdGF0aWM6dHJ1ZX0pIHBhZ2luYXRvcjogTWF0UGFnaW5hdG9yO1xyXG5cclxuICAvKipcclxuICAgKiBQcm92aWRlcyB0aGUgdGFibGUgc29ydCBjYXBhYmlsaXRpZXNcclxuICAgKi9cclxuICBAVmlld0NoaWxkKE1hdFNvcnQsIHtzdGF0aWM6dHJ1ZX0pIHNvcnQ6IE1hdFNvcnQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIExpc3Qgb2YgdGFibGUgY29sdW1ucyB0byBiZSBkaXNwbGF5ZWRcclxuICAgKi9cclxuICBkaXNwbGF5ZWRDb2x1bW5zO1xyXG5cclxuICAvKipcclxuICAgKiBUYWJsZSBkYXRhIHNvdXJjZVxyXG4gICAqL1xyXG4gIGRhdGFTb3VyY2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIFByb3ZpZGVzIHNlbGVjdGlvbiBvcHRpb25zIGZvciB0aGUgdGFibGVcclxuICAgKi9cclxuICBzZWxlY3Rpb247XHJcblxyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcm90ZWN0ZWQgcmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHB1YmxpYyBtYWdpY1NlcnZpY2U6IE1hZ2ljU2VydmljZXMsXHJcbiAgICApIHtcclxuXHJcbiAgICBzdXBlcihyZWYsIG1hZ2ljU2VydmljZSk7XHJcblxyXG4gICAgdGhpcy5kaXNwbGF5ZWRDb2x1bW5zID0gW107XHJcbiAgICB0aGlzLmRhdGFTb3VyY2UgICAgICAgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlIDwgRWxlbWVudCA+ICh0aGlzLnRhc2suUmVjb3Jkcy5saXN0KTtcclxuICAgIHRoaXMuc2VsZWN0aW9uICAgICAgICA9IG5ldyBTZWxlY3Rpb25Nb2RlbCA8IEVsZW1lbnQgPiAoZmFsc2UsIFtdKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEluaXRpYWxpemVyXHJcbiAgICovXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgKHRoaXMubWFnaWNTZXJ2aWNlLnRhYmxlU2VydmljZSBhcyBNZ01hdFRhYmxlU2VydmljZSkuY29ubmVjdCh0aGlzLmRhdGFTb3VyY2UsIHRoaXMucGFnaW5hdG9yLCB0aGlzLnNlbGVjdGlvbik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBZnRlckNvbnRlbnRDaGVja2VkIGltcGxlbWVudGF0aW9uXHJcbiAgICovXHJcbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCkge1xyXG4gICAgaWYgKCFpc051bGxPclVuZGVmaW5lZCh0aGlzLnBhZ2luYXRvcikgJiYgIWlzTnVsbE9yVW5kZWZpbmVkKHRoaXMucGFnaW5hdG9yLnBhZ2VTaXplKSAmJlxyXG4gICAgICB0aGlzLnBhZ2luYXRvci5wYWdlU2l6ZSAhPSB0aGlzLnRhc2sub2xkUGFnZVNpemUpIHtcclxuICAgICAgKHRoaXMubWFnaWNTZXJ2aWNlLnRhYmxlU2VydmljZSBhcyBNZ01hdFRhYmxlU2VydmljZSkuaGFuZGxlUmVzaXplKHRoaXMucGFnaW5hdG9yLnBhZ2VJbmRleCwgMCwgdGhpcy5wYWdpbmF0b3IucGFnZVNpemUpO1xyXG4gICAgICB0aGlzLnRhc2sub2xkUGFnZVNpemUgPSB0aGlzLnBhZ2luYXRvci5wYWdlU2l6ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,28 @@
1
+ import { Directive, HostListener } from '@angular/core';
2
+ import { MagicDirective } from '@magic-xpa/angular';
3
+ import * as i0 from "@angular/core";
4
+ export class MatMagicAutocompleteDirective {
5
+ onOpenedChanged($event) {
6
+ MagicDirective.noOfAutoCompleteBoxesOpened++;
7
+ }
8
+ onClosedChanged($event) {
9
+ MagicDirective.noOfAutoCompleteBoxesOpened--;
10
+ }
11
+ static ɵfac = function MatMagicAutocompleteDirective_Factory(t) { return new (t || MatMagicAutocompleteDirective)(); };
12
+ static ɵdir = i0.ɵɵdefineDirective({ type: MatMagicAutocompleteDirective, selectors: [["mat-autocomplete", "magic", ""]], hostBindings: function MatMagicAutocompleteDirective_HostBindings(rf, ctx) { if (rf & 1) {
13
+ i0.ɵɵlistener("opened", function MatMagicAutocompleteDirective_opened_HostBindingHandler($event) { return ctx.onOpenedChanged($event); })("closed", function MatMagicAutocompleteDirective_closed_HostBindingHandler($event) { return ctx.onClosedChanged($event); });
14
+ } } });
15
+ }
16
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MatMagicAutocompleteDirective, [{
17
+ type: Directive,
18
+ args: [{
19
+ selector: 'mat-autocomplete[magic]'
20
+ }]
21
+ }], null, { onOpenedChanged: [{
22
+ type: HostListener,
23
+ args: ['opened', ['$event']]
24
+ }], onClosedChanged: [{
25
+ type: HostListener,
26
+ args: ['closed', ['$event']]
27
+ }] }); })();
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LW1hZ2ljLWF1dG9jb21wbGV0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLW1hdGVyaWFsLWNvcmUvc3JjL2RpcmVjdGl2ZXMvbWFnaWMvZm9ybS1jb250cm9scy9tYXQtbWFnaWMtYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBU3BELE1BQU0sT0FBTyw2QkFBNkI7SUFHeEMsZUFBZSxDQUFDLE1BQU07UUFDbkIsY0FBYyxDQUFDLDJCQUEyQixFQUFFLENBQUM7SUFDaEQsQ0FBQztJQUdELGVBQWUsQ0FBQyxNQUFNO1FBQ25CLGNBQWMsQ0FBQywyQkFBMkIsRUFBRSxDQUFDO0lBQ2hELENBQUM7dUZBVlUsNkJBQTZCOytDQUE3Qiw2QkFBNkI7WUFBN0IsMEdBQUEsMkJBQXVCLElBQU0sNkZBQTdCLDJCQUF1QixJQUFNOzs7aUZBQTdCLDZCQUE2QjtjQUp6QyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUNOLHlCQUF5QjthQUM1QjtnQkFJQyxlQUFlO2tCQURkLFlBQVk7bUJBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDO1lBTWxDLGVBQWU7a0JBRGQsWUFBWTttQkFBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYWdpY0RpcmVjdGl2ZSB9IGZyb20gJ0BtYWdpYy14cGEvYW5ndWxhcic7XHJcblxyXG4vKipcclxuICogRGlyZWN0aXZlIGZvciBtYXRlcmlhbC1kZXNpZ24gYXV0b2NvbXBsZXRlIG5vdCBvbiBtYXRlcmlhbC1kZXNpZ24gdGFibGVcclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOlxyXG4gICAgJ21hdC1hdXRvY29tcGxldGVbbWFnaWNdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0TWFnaWNBdXRvY29tcGxldGVEaXJlY3RpdmUge1xyXG5cclxuICBASG9zdExpc3RlbmVyKCdvcGVuZWQnLCBbJyRldmVudCddKVxyXG4gIG9uT3BlbmVkQ2hhbmdlZCgkZXZlbnQpIHtcclxuICAgICBNYWdpY0RpcmVjdGl2ZS5ub09mQXV0b0NvbXBsZXRlQm94ZXNPcGVuZWQrKztcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2Nsb3NlZCcsIFsnJGV2ZW50J10pXHJcbiAgb25DbG9zZWRDaGFuZ2VkKCRldmVudCkge1xyXG4gICAgIE1hZ2ljRGlyZWN0aXZlLm5vT2ZBdXRvQ29tcGxldGVCb3hlc09wZW5lZC0tO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,16 +1,16 @@
1
- import { Directive } from "@angular/core";
2
- import { CheckboxMagicDirective } from "@magic-xpa/angular";
3
- import * as i0 from "@angular/core";
4
- export class MatCheckboxDirective extends CheckboxMagicDirective {
5
- }
6
- MatCheckboxDirective.ɵfac = function () { let ɵMatCheckboxDirective_BaseFactory; return function MatCheckboxDirective_Factory(t) { return (ɵMatCheckboxDirective_BaseFactory || (ɵMatCheckboxDirective_BaseFactory = i0.ɵɵgetInheritedFactory(MatCheckboxDirective)))(t || MatCheckboxDirective); }; }();
7
- MatCheckboxDirective.ɵdir = i0.ɵɵdefineDirective({ type: MatCheckboxDirective, selectors: [["mat-checkbox", "magic", "", 3, "noFormControl", ""]], features: [i0.ɵɵInheritDefinitionFeature] });
8
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MatCheckboxDirective, [{
9
- type: Directive,
10
- args: [{
1
+ import { Directive } from "@angular/core";
2
+ import { CheckboxMagicDirective } from "@magic-xpa/angular";
3
+ import * as i0 from "@angular/core";
4
+ export class MatCheckboxDirective extends CheckboxMagicDirective {
5
+ static ɵfac = (() => { let ɵMatCheckboxDirective_BaseFactory; return function MatCheckboxDirective_Factory(t) { return (ɵMatCheckboxDirective_BaseFactory || (ɵMatCheckboxDirective_BaseFactory = i0.ɵɵgetInheritedFactory(MatCheckboxDirective)))(t || MatCheckboxDirective); }; })();
6
+ static ɵdir = i0.ɵɵdefineDirective({ type: MatCheckboxDirective, selectors: [["mat-checkbox", "magic", "", 3, "noFormControl", ""]], features: [i0.ɵɵInheritDefinitionFeature] });
7
+ }
8
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MatCheckboxDirective, [{
9
+ type: Directive,
10
+ args: [{
11
11
  selector: `
12
12
  mat-checkbox[magic]:not([noFormControl])
13
- `,
14
- }]
15
- }], null, null); })();
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LW1hZ2ljLWNoZWNrYm94LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItbWF0ZXJpYWwtY29yZS9zcmMvZGlyZWN0aXZlcy9tYWdpYy9mb3JtLWNvbnRyb2xzL21hdC1tYWdpYy1jaGVja2JveC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFZNUQsTUFBTSxPQUFPLG9CQUFxQixTQUFRLHNCQUFzQjs7OE9BQW5ELG9CQUFvQixTQUFwQixvQkFBb0I7eURBQXBCLG9CQUFvQjt1RkFBcEIsb0JBQW9CO2NBTmhDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQ047O0tBRUM7YUFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENoZWNrYm94TWFnaWNEaXJlY3RpdmUgfSBmcm9tIFwiQG1hZ2ljLXhwYS9hbmd1bGFyXCI7XHJcblxyXG5cclxuLyoqXHJcbiAqIERpcmVjdGl2ZSBmb3IgbWF0ZXJpYWwtZGVzaWduIGNoZWNrYm94ZXMgbm90IG9uIG1hdGVyaWFsLWRlc2lnbiB0YWJsZVxyXG4gKi9cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6XHJcbiAgICBgXHJcbiAgICBtYXQtY2hlY2tib3hbbWFnaWNdOm5vdChbbm9Gb3JtQ29udHJvbF0pXHJcbiAgICBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0Q2hlY2tib3hEaXJlY3RpdmUgZXh0ZW5kcyBDaGVja2JveE1hZ2ljRGlyZWN0aXZlIHtcclxuXHJcblxyXG59XHJcbiJdfQ==
13
+ `,
14
+ }]
15
+ }], null, null); })();
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LW1hZ2ljLWNoZWNrYm94LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItbWF0ZXJpYWwtY29yZS9zcmMvZGlyZWN0aXZlcy9tYWdpYy9mb3JtLWNvbnRyb2xzL21hdC1tYWdpYy1jaGVja2JveC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFZNUQsTUFBTSxPQUFPLG9CQUFxQixTQUFRLHNCQUFzQjsrTkFBbkQsb0JBQW9CLFNBQXBCLG9CQUFvQjsrQ0FBcEIsb0JBQW9COztpRkFBcEIsb0JBQW9CO2NBTmhDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQ047O0tBRUM7YUFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENoZWNrYm94TWFnaWNEaXJlY3RpdmUgfSBmcm9tIFwiQG1hZ2ljLXhwYS9hbmd1bGFyXCI7XHJcblxyXG5cclxuLyoqXHJcbiAqIERpcmVjdGl2ZSBmb3IgbWF0ZXJpYWwtZGVzaWduIGNoZWNrYm94ZXMgbm90IG9uIG1hdGVyaWFsLWRlc2lnbiB0YWJsZVxyXG4gKi9cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6XHJcbiAgICBgXHJcbiAgICBtYXQtY2hlY2tib3hbbWFnaWNdOm5vdChbbm9Gb3JtQ29udHJvbF0pXHJcbiAgICBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0Q2hlY2tib3hEaXJlY3RpdmUgZXh0ZW5kcyBDaGVja2JveE1hZ2ljRGlyZWN0aXZlIHtcclxuXHJcblxyXG59XHJcbiJdfQ==
@@ -0,0 +1,30 @@
1
+ import { Directive, HostListener } from "@angular/core";
2
+ import { ComboboxMagicDirective, MagicDirective } from "@magic-xpa/angular";
3
+ import * as i0 from "@angular/core";
4
+ export class MatComboboxDirective extends ComboboxMagicDirective {
5
+ onChange($event) {
6
+ super.onChange($event);
7
+ }
8
+ onOpenedChanged($event) {
9
+ MagicDirective.opened = $event;
10
+ }
11
+ onComboboxItemsListChanged() {
12
+ }
13
+ static ɵfac = (() => { let ɵMatComboboxDirective_BaseFactory; return function MatComboboxDirective_Factory(t) { return (ɵMatComboboxDirective_BaseFactory || (ɵMatComboboxDirective_BaseFactory = i0.ɵɵgetInheritedFactory(MatComboboxDirective)))(t || MatComboboxDirective); }; })();
14
+ static ɵdir = i0.ɵɵdefineDirective({ type: MatComboboxDirective, selectors: [["mat-select", "magic", ""]], hostBindings: function MatComboboxDirective_HostBindings(rf, ctx) { if (rf & 1) {
15
+ i0.ɵɵlistener("selectionChange", function MatComboboxDirective_selectionChange_HostBindingHandler($event) { return ctx.onChange($event); })("openedChange", function MatComboboxDirective_openedChange_HostBindingHandler($event) { return ctx.onOpenedChanged($event); });
16
+ } }, features: [i0.ɵɵInheritDefinitionFeature] });
17
+ }
18
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MatComboboxDirective, [{
19
+ type: Directive,
20
+ args: [{
21
+ selector: `mat-select[magic]`,
22
+ }]
23
+ }], null, { onChange: [{
24
+ type: HostListener,
25
+ args: ['selectionChange', ['$event']]
26
+ }], onOpenedChanged: [{
27
+ type: HostListener,
28
+ args: ['openedChange', ['$event']]
29
+ }] }); })();
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LW1hZ2ljLWNvbWJvYm94LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItbWF0ZXJpYWwtY29yZS9zcmMvZGlyZWN0aXZlcy9tYWdpYy9mb3JtLWNvbnRyb2xzL21hdC1tYWdpYy1jb21ib2JveC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFDLHNCQUFzQixFQUFFLGNBQWMsRUFBQyxNQUFNLG9CQUFvQixDQUFDOztBQVUxRSxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsc0JBQXNCO0lBTzlELFFBQVEsQ0FBQyxNQUFNO1FBQ2IsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBR0QsZUFBZSxDQUFDLE1BQU07UUFDcEIsY0FBYyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDakMsQ0FBQztJQUtELDBCQUEwQjtJQUMxQixDQUFDOytOQXBCVSxvQkFBb0IsU0FBcEIsb0JBQW9COytDQUFwQixvQkFBb0I7WUFBcEIsbUhBQUEsb0JBQWdCLElBQUksZ0dBQXBCLDJCQUF1QixJQUFIOzs7aUZBQXBCLG9CQUFvQjtjQUpoQyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUNOLG1CQUFtQjthQUN0QjtnQkFRQyxRQUFRO2tCQURQLFlBQVk7bUJBQUMsaUJBQWlCLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFNM0MsZUFBZTtrQkFEZCxZQUFZO21CQUFDLGNBQWMsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDb21ib2JveE1hZ2ljRGlyZWN0aXZlLCBNYWdpY0RpcmVjdGl2ZX0gZnJvbSBcIkBtYWdpYy14cGEvYW5ndWxhclwiO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBEaXJlY3RpdmUgZm9yIG1hdGVyaWFsLWRlc2lnbiBjb21ib2JveGVzIG5vdCBvbiBtYXRlcmlhbC1kZXNpZ24gdGFibGVcclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOlxyXG4gICAgYG1hdC1zZWxlY3RbbWFnaWNdYCxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1hdENvbWJvYm94RGlyZWN0aXZlIGV4dGVuZHMgQ29tYm9ib3hNYWdpY0RpcmVjdGl2ZSB7XHJcblxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgdGhlIFwic2VsZWN0aW9uQ2hhbmdlXCIgZXZlbnQgLSBwYXNzIGl0IHRvIHRoZSBcImNoYW5nZVwiIGV2ZW50IGhhbmRsZXJcclxuICAgKiBAcGFyYW0gJGV2ZW50XHJcbiAgICovXHJcbiAgQEhvc3RMaXN0ZW5lcignc2VsZWN0aW9uQ2hhbmdlJywgWyckZXZlbnQnXSlcclxuICBvbkNoYW5nZSgkZXZlbnQpIHtcclxuICAgIHN1cGVyLm9uQ2hhbmdlKCRldmVudCk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdvcGVuZWRDaGFuZ2UnLCBbJyRldmVudCddKVxyXG4gIG9uT3BlbmVkQ2hhbmdlZCgkZXZlbnQpIHtcclxuICAgIE1hZ2ljRGlyZWN0aXZlLm9wZW5lZCA9ICRldmVudDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZvciBtYXQtc2VsZWN0IGRvIG5vdGhpbmdcclxuICAgKi9cclxuICBvbkNvbWJvYm94SXRlbXNMaXN0Q2hhbmdlZCgpOiB2b2lkIHtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,27 @@
1
+ import { Directive, HostListener } from "@angular/core";
2
+ import { MagicDirective } from "@magic-xpa/angular";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@magic-xpa/angular";
5
+ export class MatListboxDirective {
6
+ magicDirective;
7
+ constructor(magicDirective) {
8
+ this.magicDirective = magicDirective;
9
+ }
10
+ onChange($event) {
11
+ this.magicDirective.task.onListBoxSelectionChanged($event, this.magicDirective.id);
12
+ }
13
+ static ɵfac = function MatListboxDirective_Factory(t) { return new (t || MatListboxDirective)(i0.ɵɵdirectiveInject(i1.MagicDirective)); };
14
+ static ɵdir = i0.ɵɵdefineDirective({ type: MatListboxDirective, selectors: [["mat-selection-list", "magic", ""]], hostBindings: function MatListboxDirective_HostBindings(rf, ctx) { if (rf & 1) {
15
+ i0.ɵɵlistener("selectionChange", function MatListboxDirective_selectionChange_HostBindingHandler($event) { return ctx.onChange($event); });
16
+ } } });
17
+ }
18
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MatListboxDirective, [{
19
+ type: Directive,
20
+ args: [{
21
+ selector: `mat-selection-list[magic]`,
22
+ }]
23
+ }], () => [{ type: i1.MagicDirective }], { onChange: [{
24
+ type: HostListener,
25
+ args: ['selectionChange', ['$event']]
26
+ }] }); })();
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LW1hZ2ljLWxpc3Rib3guZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1tYXRlcmlhbC1jb3JlL3NyYy9kaXJlY3RpdmVzL21hZ2ljL2Zvcm0tY29udHJvbHMvbWF0LW1hZ2ljLWxpc3Rib3guZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBVXBELE1BQU0sT0FBTyxtQkFBbUI7SUFFUjtJQUF0QixZQUFzQixjQUE4QjtRQUE5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFDcEQsQ0FBQztJQU9ELFFBQVEsQ0FBQyxNQUFNO1FBQ2IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDckYsQ0FBQzs2RUFaVSxtQkFBbUI7K0NBQW5CLG1CQUFtQjtZQUFuQixrSEFBQSxvQkFBZ0IsSUFBRzs7O2lGQUFuQixtQkFBbUI7Y0FKL0IsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFDTiwyQkFBMkI7YUFDOUI7K0NBV0MsUUFBUTtrQkFEUCxZQUFZO21CQUFDLGlCQUFpQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBNYWdpY0RpcmVjdGl2ZSB9IGZyb20gXCJAbWFnaWMteHBhL2FuZ3VsYXJcIjtcclxuXHJcblxyXG4vKipcclxuICogRGlyZWN0aXZlIGZvciBtYXRlcmlhbC1kZXNpZ24gbGlzdGJveGVzIG5vdCBvbiBtYXRlcmlhbC1kZXNpZ24gdGFibGVcclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOlxyXG4gICAgYG1hdC1zZWxlY3Rpb24tbGlzdFttYWdpY11gLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0TGlzdGJveERpcmVjdGl2ZXtcclxuXHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIG1hZ2ljRGlyZWN0aXZlOiBNYWdpY0RpcmVjdGl2ZSkge1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSGFuZGxlcyB0aGUgXCJzZWxlY3Rpb25DaGFuZ2VcIiBldmVudCAtIHBhc3MgaXQgdG8gdGhlIFwiY2hhbmdlXCIgZXZlbnQgaGFuZGxlclxyXG4gICAqIEBwYXJhbSAkZXZlbnRcclxuICAgKi9cclxuICBASG9zdExpc3RlbmVyKCdzZWxlY3Rpb25DaGFuZ2UnLCBbJyRldmVudCddKVxyXG4gIG9uQ2hhbmdlKCRldmVudCkge1xyXG4gICAgdGhpcy5tYWdpY0RpcmVjdGl2ZS50YXNrLm9uTGlzdEJveFNlbGVjdGlvbkNoYW5nZWQoJGV2ZW50LCB0aGlzLm1hZ2ljRGlyZWN0aXZlLmlkKTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,7 +1,7 @@
1
- import { basicMagicProviders, TableMagicService } from "@magic-xpa/angular";
2
- import { MgMatTableService } from "./mattable.magic.service";
3
- export const matMagicProviders = [
4
- ...basicMagicProviders,
5
- { provide: TableMagicService, useClass: MgMatTableService }
6
- ];
1
+ import { basicMagicProviders, TableMagicService } from "@magic-xpa/angular";
2
+ import { MgMatTableService } from "./mattable.magic.service";
3
+ export const matMagicProviders = [
4
+ ...basicMagicProviders,
5
+ { provide: TableMagicService, useClass: MgMatTableService }
6
+ ];
7
7
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0Lm1hZ2ljLnByb3ZpZGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItbWF0ZXJpYWwtY29yZS9zcmMvc2VydmljZXMvbWF0Lm1hZ2ljLnByb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUcsaUJBQWlCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUU1RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQU03RCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRztJQUMvQixHQUFHLG1CQUFtQjtJQUN0QixFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUU7Q0FDNUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5pbXBvcnQgeyBiYXNpY01hZ2ljUHJvdmlkZXJzLCAgVGFibGVNYWdpY1NlcnZpY2V9IGZyb20gXCJAbWFnaWMteHBhL2FuZ3VsYXJcIjtcclxuXHJcbmltcG9ydCB7IE1nTWF0VGFibGVTZXJ2aWNlIH0gZnJvbSBcIi4vbWF0dGFibGUubWFnaWMuc2VydmljZVwiO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBAaWdub3JlXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgbWF0TWFnaWNQcm92aWRlcnMgPSBbXHJcbiAgLi4uYmFzaWNNYWdpY1Byb3ZpZGVycywgLy8gLSBjcmVhdGVkIGVycm9yIEV4cG9ydGVkIHZhcmlhYmxlICdtYXRNYWdpY1Byb3ZpZGVycycgaGFzIG9yIGlzIHVzaW5nIG5hbWUgJ01hZ2ljU2VydmljZXMnIGZyb20gZXh0ZXJuYWwgbW9kdWxlIFwiRDovbWFnaWN4cGFwcm9qZWN0L19UcnVuay9Tb3VyY2VzL1dlYmNsaWVudC9kaXN0L2FuZ3VsYXIvc3JjL3NlcnZpY2VzL21hZ2ljLnNlcnZpY2VzXCIgYnV0IGNhbm5vdCBiZSBuYW1lZC5cclxuICB7IHByb3ZpZGU6IFRhYmxlTWFnaWNTZXJ2aWNlLCB1c2VDbGFzczogTWdNYXRUYWJsZVNlcnZpY2UgfVxyXG5dO1xyXG5cclxuIl19
@@ -0,0 +1,132 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { TaskMagicService, ComponentListMagicService } from "@magic-xpa/angular";
3
+ import { getGuiEventObj } from "@magic-xpa/engine";
4
+ import { TableMagicService } from "@magic-xpa/angular";
5
+ import { isNullOrUndefined } from "@magic-xpa/mscorelib";
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@magic-xpa/angular";
8
+ export class MgMatTableService extends TableMagicService {
9
+ componentList;
10
+ task;
11
+ dataSource;
12
+ get DataSource() {
13
+ return this.dataSource;
14
+ }
15
+ set DataSource(dataSource) {
16
+ this.dataSource = dataSource;
17
+ }
18
+ selection;
19
+ get Selection() {
20
+ return this.selection;
21
+ }
22
+ set Selection(selection) {
23
+ this.selection = selection;
24
+ }
25
+ paginator;
26
+ get Paginator() {
27
+ return this.paginator;
28
+ }
29
+ set Paginator(paginator) {
30
+ this.paginator = paginator;
31
+ }
32
+ constructor(componentList, task) {
33
+ super(componentList, task);
34
+ this.componentList = componentList;
35
+ this.task = task;
36
+ }
37
+ connect(dataSource, paginator, selection) {
38
+ this.dataSource = dataSource;
39
+ this.paginator = paginator;
40
+ this.selection = selection;
41
+ }
42
+ refreshDataSource() {
43
+ if (!isNullOrUndefined(this.paginator))
44
+ this.dataSource.paginator = this.paginator;
45
+ this.dataSource.data = (this.task.mgAccessorService.isDataviewEmpty() ? [] : this.task.Records.list);
46
+ }
47
+ getPageSize() {
48
+ if (isNullOrUndefined(this.paginator))
49
+ return 10;
50
+ return this.paginator.pageSize;
51
+ }
52
+ selectRow(guiRowid) {
53
+ super.selectRow(guiRowid);
54
+ this.selection.select(this.task.Records.list[guiRowid]);
55
+ this.refreshDataSource();
56
+ }
57
+ selectPage(pageId) {
58
+ if (!isNullOrUndefined(this.paginator))
59
+ this.paginator.pageIndex = pageId;
60
+ this.refreshDataSource();
61
+ }
62
+ selectedRow() {
63
+ return this.selection.selected[0];
64
+ }
65
+ mgOnPaginateChange(e, changeSelectedRow) {
66
+ if (this.task.oldPageSize != e.pageSize) {
67
+ this.handleResize(e.pageIndex, e.previousPageIndex, e.pageSize);
68
+ this.task.oldPageSize = e.pageSize;
69
+ }
70
+ else {
71
+ if (changeSelectedRow) {
72
+ let evt = (e.pageIndex > e.previousPageIndex) ? "next-page" : "previous-page";
73
+ let guiEvent = getGuiEventObj("navigateInTable", "magicRow", 0);
74
+ guiEvent.Value = evt;
75
+ this.task.insertEvent(guiEvent);
76
+ }
77
+ else
78
+ this.getRowsIfNeeded(e.pageIndex, e.previousPageIndex, e.pageSize);
79
+ }
80
+ }
81
+ handleResize(pageIndex, prevPageIndex, pageSize) {
82
+ let requiredGuiRowId = pageIndex * pageSize;
83
+ this.task.resize(pageSize, requiredGuiRowId);
84
+ }
85
+ getRowsIfNeeded(pageIndex, prevPageIndex, pageSize) {
86
+ let guiEvent = getGuiEventObj("getRows", "", 0);
87
+ guiEvent.Line = pageIndex * pageSize;
88
+ this.task.insertEvent(guiEvent);
89
+ this.setTableTopIndex(this.task.getDvRowId(pageSize * pageIndex));
90
+ }
91
+ sortData(e) {
92
+ let direction = 0;
93
+ if (e.direction === 'asc')
94
+ direction = 0;
95
+ else if (e.direction === 'desc')
96
+ direction = 1;
97
+ let guiEvent = getGuiEventObj("columnSort", e.active, direction);
98
+ this.task.insertEvent(guiEvent);
99
+ }
100
+ updateTableSize(size) {
101
+ if (size === 0) {
102
+ size = 1;
103
+ this.task.Records.clearFirstTableRecord(this.task.template);
104
+ }
105
+ else if (isNullOrUndefined(this.paginator))
106
+ size = this.getPageSize();
107
+ this.task.formGroups.length = size;
108
+ this.task.Records.updateSize(size);
109
+ this.task.setIncludesFirst(false);
110
+ }
111
+ selectPageForGuiRowId(guiRowId) {
112
+ let pageToBeSelected = 0;
113
+ let prevSelectedRow = this.selectedRow();
114
+ pageToBeSelected = Math.floor(guiRowId / this.getPageSize());
115
+ if ((isNullOrUndefined(prevSelectedRow) || (!isNullOrUndefined(this.paginator) && pageToBeSelected != this.paginator.pageIndex)))
116
+ this.selectPage(pageToBeSelected);
117
+ }
118
+ setTableTopIndex(value) {
119
+ this.task.Records.setGuiTopIndex(value);
120
+ if (value >= 0)
121
+ this.selectPageForGuiRowId(this.task.getGuiRowId(value, true));
122
+ }
123
+ getTableTopIndex() {
124
+ return this.task.Records.getGuiTopIndex();
125
+ }
126
+ static ɵfac = function MgMatTableService_Factory(t) { return new (t || MgMatTableService)(i0.ɵɵinject(i1.ComponentListMagicService), i0.ɵɵinject(i1.TaskMagicService)); };
127
+ static ɵprov = i0.ɵɵdefineInjectable({ token: MgMatTableService, factory: MgMatTableService.ɵfac });
128
+ }
129
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MgMatTableService, [{
130
+ type: Injectable
131
+ }], () => [{ type: i1.ComponentListMagicService }, { type: i1.TaskMagicService }], null); })();
132
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0dGFibGUubWFnaWMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItbWF0ZXJpYWwtY29yZS9zcmMvc2VydmljZXMvbWF0dGFibGUubWFnaWMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBb0IsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRyxPQUFPLEVBQVksY0FBYyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdkQsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7OztBQVN2RCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsaUJBQWlCO0lBNkRoQztJQUFvRDtJQXpEMUUsVUFBVSxDQUE4QjtJQUt4QyxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUtELElBQUksVUFBVSxDQUFDLFVBQXVDO1FBQ3BELElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFLRCxTQUFTLENBQTBCO0lBS25DLElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBS0QsSUFBSSxTQUFTLENBQUMsU0FBa0M7UUFDOUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDN0IsQ0FBQztJQUtELFNBQVMsQ0FBZTtJQUt4QixJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUtELElBQUksU0FBUyxDQUFDLFNBQXVCO1FBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lB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S0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUtELGdCQUFnQjtRQUVkLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDNUMsQ0FBQzsyRUE5T1UsaUJBQWlCO2tEQUFqQixpQkFBaUIsV0FBakIsaUJBQWlCOztpRkFBakIsaUJBQWlCO2NBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlbGVjdGlvbk1vZGVsIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9jb2xsZWN0aW9uc1wiO1xuXG5pbXBvcnQgeyBUYXNrTWFnaWNTZXJ2aWNlLCBDb21wb25lbnRMaXN0TWFnaWNTZXJ2aWNlLCBDb250cm9sc01ldGFkYXRhIH0gZnJvbSBcIkBtYWdpYy14cGEvYW5ndWxhclwiO1xuaW1wb3J0IHtJR3VpRXZlbnQsIGdldEd1aUV2ZW50T2JqfSBmcm9tIFwiQG1hZ2ljLXhwYS9lbmdpbmVcIjtcbmltcG9ydCB7IFRhYmxlTWFnaWNTZXJ2aWNlIH0gZnJvbSBcIkBtYWdpYy14cGEvYW5ndWxhclwiO1xuaW1wb3J0IHtpc051bGxPclVuZGVmaW5lZH0gZnJvbSBcIkBtYWdpYy14cGEvbXNjb3JlbGliXCI7XG5pbXBvcnQgeyBNYXRUYWJsZURhdGFTb3VyY2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xuXG5cbi8qKlxuICogRXh0ZW5kcyB0aGUgTWFnaWMgdGFibGUgc2VydmljZSB0byBzdXBwbHkgZnVuY3Rpb25hbGl0eSBmb3IgTWF0ZXJpYWwgRGVzaWduIHRhYmxlc1xuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTWdNYXRUYWJsZVNlcnZpY2UgZXh0ZW5kcyBUYWJsZU1hZ2ljU2VydmljZSB7XG4gIC8qKlxuICAgKiBUYWJsZSBkYXRhIHNvdXJjZVxuICAgKi9cbiAgZGF0YVNvdXJjZTogTWF0VGFibGVEYXRhU291cmNlPEVsZW1lbnQ+O1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBnZXQgRGF0YVNvdXJjZSgpOiBNYXRUYWJsZURhdGFTb3VyY2U8RWxlbWVudD4ge1xuICAgIHJldHVybiB0aGlzLmRhdGFTb3VyY2U7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgc2V0IERhdGFTb3VyY2UoZGF0YVNvdXJjZTogTWF0VGFibGVEYXRhU291cmNlPEVsZW1lbnQ+KSB7XG4gICAgdGhpcy5kYXRhU291cmNlID0gZGF0YVNvdXJjZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcm92aWRlcyBzZWxlY3Rpb24gb3B0aW9ucyBmb3IgdGhlIHRhYmxlXG4gICAqL1xuICBzZWxlY3Rpb246IFNlbGVjdGlvbk1vZGVsPEVsZW1lbnQ+O1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBnZXQgU2VsZWN0aW9uKCk6IFNlbGVjdGlvbk1vZGVsPEVsZW1lbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3Rpb247XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgc2V0IFNlbGVjdGlvbihzZWxlY3Rpb246IFNlbGVjdGlvbk1vZGVsPEVsZW1lbnQ+KSB7XG4gICAgdGhpcy5zZWxlY3Rpb24gPSBzZWxlY3Rpb247XG4gIH1cblxuICAvKipcbiAgICogUGFnaW5hdG9yIHRvIGVuYWJsZSBjaGFuZ2luZyBwYWdlcyBpbiB0aGUgdGFibGVcbiAgICovXG4gIHBhZ2luYXRvcjogTWF0UGFnaW5hdG9yO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBnZXQgUGFnaW5hdG9yKCk6IE1hdFBhZ2luYXRvciB7XG4gICAgcmV0dXJuIHRoaXMucGFnaW5hdG9yO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHNldCBQYWdpbmF0b3IocGFnaW5hdG9yOiBNYXRQYWdpbmF0b3IpIHtcbiAgICB0aGlzLnBhZ2luYXRvciA9IHBhZ2luYXRvcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgY29tcG9uZW50TGlzdDogQ29tcG9uZW50TGlzdE1hZ2ljU2VydmljZSwgcHJvdGVjdGVkIHRhc2s6IFRhc2tNYWdpY1NlcnZpY2UgKSB7XG4gICAgc3VwZXIoY29tcG9uZW50TGlzdCwgdGFzayk7XG4gIH1cblxuICAvKipcbiAgICogQ29ubmVjdHMgdGhlIHNlcnZpY2UgdG8gdGhlIGVsZW1lbnRzIG9mIHRoZSB0YWJsZSBjb21wb25lbnRcbiAgICogQHBhcmFtIGRhdGFTb3VyY2UgVGFibGUgZGF0YSBzb3VyY2VcbiAgICogQHBhcmFtIHBhZ2luYXRvciBUYWJsZSBwYWdpbmF0b3JcbiAgICogQHBhcmFtIHNlbGVjdGlvbiB0YWJsZSBTZWxlY3Rpb25Nb2RlbFxuICAgKi9cbiAgY29ubmVjdChkYXRhU291cmNlOiBNYXRUYWJsZURhdGFTb3VyY2U8RWxlbWVudD4gLCBwYWdpbmF0b3I6IE1hdFBhZ2luYXRvciwgc2VsZWN0aW9uOiBTZWxlY3Rpb25Nb2RlbDxFbGVtZW50Pikge1xuICAgIHRoaXMuZGF0YVNvdXJjZSA9IGRhdGFTb3VyY2U7XG4gICAgdGhpcy5wYWdpbmF0b3IgPSBwYWdpbmF0b3I7XG4gICAgdGhpcy5zZWxlY3Rpb24gPSBzZWxlY3Rpb247XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcmVmcmVzaERhdGFTb3VyY2UoKSB7XG4gICAgaWYgKCFpc051bGxPclVuZGVmaW5lZCh0aGlzLnBhZ2luYXRvcikpXG4gICAgICB0aGlzLmRhdGFTb3VyY2UucGFnaW5hdG9yID0gdGhpcy5wYWdpbmF0b3I7XG5cbiAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YSA9ICh0aGlzLnRhc2subWdBY2Nlc3NvclNlcnZpY2UuaXNEYXRhdmlld0VtcHR5KCkgPyBbXSA6IHRoaXMudGFzay5SZWNvcmRzLmxpc3QpO1xuICB9XG5cbiAgLyoqXG4gICAqIHJldHVybnMgdGhlIHBhZ2Ugc2l6ZSBvZiB0aGUgdGFibGVcbiAgICogQHJldHVybnNcbiAgICovXG4gIGdldFBhZ2VTaXplKCk6IG51bWJlciB7XG4gICAgaWYgKGlzTnVsbE9yVW5kZWZpbmVkKHRoaXMucGFnaW5hdG9yKSlcbiAgICAgIHJldHVybiAxMDtcbiAgICByZXR1cm4gdGhpcy5wYWdpbmF0b3IucGFnZVNpemU7XG4gIH1cblxuICAvKipcbiAgICogU2VsZWN0cyBhIHRhYmxlIHJvd1xuICAgKiBAcGFyYW0gZ3VpUm93aWQgSWQgb2Ygcm93IHRvIGJlIHNlbGVjdGVkXG4gICAqL1xuICBzZWxlY3RSb3coZ3VpUm93aWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHN1cGVyLnNlbGVjdFJvdyhndWlSb3dpZCk7XG4gICAgdGhpcy5zZWxlY3Rpb24uc2VsZWN0KHRoaXMudGFzay5SZWNvcmRzLmxpc3RbZ3VpUm93aWRdKTtcbiAgICB0aGlzLnJlZnJlc2hEYXRhU291cmNlKCk7XG4gIH1cblxuICAvKipcbiAgICogRGlzcGxheXMgdGhlIHJlcXVlc3RlZCB0YWJsZSBwYWdlXG4gICAqIEBwYXJhbSBwYWdlSWQgSWQgb2YgcGFnZSB0byBiZSBzZWxlY3RlZFxuICAgKi9cbiAgc2VsZWN0UGFnZShwYWdlSWQ6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICghaXNOdWxsT3JVbmRlZmluZWQodGhpcy5wYWdpbmF0b3IpKVxuICAgICAgdGhpcy5wYWdpbmF0b3IucGFnZUluZGV4ID0gcGFnZUlkO1xuXG4gICAgdGhpcy5yZWZyZXNoRGF0YVNvdXJjZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGN1cnJlbnRseSBzZWxldGVkIHJvd1xuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgc2VsZWN0ZWRSb3coKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3Rpb24uc2VsZWN0ZWRbMF07XG4gIH1cblxuICAvKipcbiAgICogSGFuZGxlIHRoZSBwYWdpbmF0b3IncyBcInBhZ2VcIiBldmVudFxuICAgKiBAcGFyYW0gZSBUaGUgZXZlbnQgcmVjZWl2ZWQgZnJvbSB0aGUgVUlcbiAgICovXG4gIG1nT25QYWdpbmF0ZUNoYW5nZShlLCBjaGFuZ2VTZWxlY3RlZFJvdz86IGJvb2xlYW4pXG4gIHtcbiAgICBpZiAodGhpcy50YXNrLm9sZFBhZ2VTaXplICE9IGUucGFnZVNpemUpIHtcbiAgICAgIHRoaXMuaGFuZGxlUmVzaXplKGUucGFnZUluZGV4LCBlLnByZXZpb3VzUGFnZUluZGV4LCBlLnBhZ2VTaXplKTtcbiAgICAgIHRoaXMudGFzay5vbGRQYWdlU2l6ZSA9IGUucGFnZVNpemU7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgaWYgKGNoYW5nZVNlbGVjdGVkUm93KVxuICAgICAge1xuICAgICAgICBsZXQgZXZ0ID0gKGUucGFnZUluZGV4ID4gZS5wcmV2aW91c1BhZ2VJbmRleCkgPyBcIm5leHQtcGFnZVwiIDogXCJwcmV2aW91cy1wYWdlXCI7XG4gICAgICAgIGxldCBndWlFdmVudDogSUd1aUV2ZW50ID0gZ2V0R3VpRXZlbnRPYmooXCJuYXZpZ2F0ZUluVGFibGVcIiwgXCJtYWdpY1Jvd1wiLDApO1xuICAgICAgICBndWlFdmVudC5WYWx1ZSA9IGV2dDtcbiAgICAgICAgdGhpcy50YXNrLmluc2VydEV2ZW50KGd1aUV2ZW50KTtcbiAgICAgIH1cbiAgICAgIGVsc2VcbiAgICAgICAgdGhpcy5nZXRSb3dzSWZOZWVkZWQoZS5wYWdlSW5kZXgsIGUucHJldmlvdXNQYWdlSW5kZXgsIGUucGFnZVNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGUgcmVzaXplIGFuZCBzZXQgdGFibGUgdG9wIGluZGV4LlxuICAgKiBAcGFyYW0gcGFnZUluZGV4IDogTmV3IHBhZ2UgaW5kZXguXG4gICAqIEBwYXJhbSBwcmV2UGFnZUluZGV4IDogUHJldiBwYWdlIGluZGV4XG4gICAqIEBwYXJhbSBwYWdlU2l6ZSA6IFBhZ2VTaXplXG4gICAqL1xuICBoYW5kbGVSZXNpemUocGFnZUluZGV4OiBudW1iZXIsIHByZXZQYWdlSW5kZXg6IG51bWJlciwgcGFnZVNpemU6IG51bWJlcik6IHZvaWQge1xuICAgIGxldCByZXF1aXJlZEd1aVJvd0lkID0gcGFnZUluZGV4ICogcGFnZVNpemU7XG4gICAgdGhpcy50YXNrLnJlc2l6ZShwYWdlU2l6ZSwgcmVxdWlyZWRHdWlSb3dJZCk7XG4gICAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlIGdldFJvd3MgdG8gZmV0Y2ggcmVxdWlyZWQgY2h1bmsgb2YgcmVjb3Jkcy5cbiAgICogQHBhcmFtIHBhZ2VJbmRleCA6IE5ldyBwYWdlIGluZGV4LlxuICAgKiBAcGFyYW0gcHJldlBhZ2VJbmRleCA6IFByZXYgcGFnZSBpbmRleFxuICAgKiBAcGFyYW0gcGFnZVNpemUgOiBQYWdlU2l6ZVxuICAgKi9cbiAgZ2V0Um93c0lmTmVlZGVkKHBhZ2VJbmRleDogbnVtYmVyLCBwcmV2UGFnZUluZGV4OiBudW1iZXIsIHBhZ2VTaXplOiBudW1iZXIpOiB2b2lkIHtcbiAgICBsZXQgZ3VpRXZlbnQ6IElHdWlFdmVudCA9IGdldEd1aUV2ZW50T2JqKFwiZ2V0Um93c1wiLCBcIlwiLDApO1xuICAgIGd1aUV2ZW50LkxpbmUgPSBwYWdlSW5kZXggKiBwYWdlU2l6ZTtcbiAgICB0aGlzLnRhc2suaW5zZXJ0RXZlbnQoZ3VpRXZlbnQpO1xuICAgIHRoaXMuc2V0VGFibGVUb3BJbmRleCh0aGlzLnRhc2suZ2V0RHZSb3dJZChwYWdlU2l6ZSAqIHBhZ2VJbmRleCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgdGhlIFwibWF0U29ydENoYW5nZVwiIGV2ZW50XG4gICAqIEBwYXJhbSBlIFRoZSBldmVudCByZWNlaXZlZCBmcm9tIHRoZSBVSVxuICAgKi9cbiAgc29ydERhdGEoZSkge1xuICAgIGxldCBkaXJlY3Rpb246IG51bWJlciA9IDA7XG4gICAgaWYgKGUuZGlyZWN0aW9uID09PSAnYXNjJylcbiAgICAgIGRpcmVjdGlvbiA9IDA7XG4gICAgZWxzZSBpZiAoZS5kaXJlY3Rpb24gPT09ICdkZXNjJylcbiAgICAgIGRpcmVjdGlvbiA9IDE7XG5cbiAgICBsZXQgZ3VpRXZlbnQ6IElHdWlFdmVudCA9IGdldEd1aUV2ZW50T2JqKFwiY29sdW1uU29ydFwiLCBlLmFjdGl2ZSwgZGlyZWN0aW9uKTtcbiAgICB0aGlzLnRhc2suaW5zZXJ0RXZlbnQoZ3VpRXZlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0aGUgbnVtYmVyIG9mIGxpbmVzIGluIGEgdGFibGVcbiAgICogQHBhcmFtICBzaXplIE5ldyBudW1iZXIgb2YgbGluZXMgaW4gdGFibGVcbiAgICovXG4gIHVwZGF0ZVRhYmxlU2l6ZShzaXplOiBudW1iZXIpIHtcbiAgICBpZiAoc2l6ZSA9PT0gMCkgLy8gbmV2ZXIgcmVtb3ZlIHJvdyAwIGZvciBub3dcbiAgICB7XG4gICAgICAgc2l6ZSA9IDE7XG4gICAgICAgdGhpcy50YXNrLlJlY29yZHMuY2xlYXJGaXJzdFRhYmxlUmVjb3JkKHRoaXMudGFzay50ZW1wbGF0ZSk7XG4gICAgfVxuXG4gICAgZWxzZSBpZiAoaXNOdWxsT3JVbmRlZmluZWQodGhpcy5wYWdpbmF0b3IpKVxuICAgICAgIHNpemUgPSB0aGlzLmdldFBhZ2VTaXplKCk7XG5cbiAgICB0aGlzLnRhc2suZm9ybUdyb3Vwcy5sZW5ndGggPSBzaXplO1xuICAgIHRoaXMudGFzay5SZWNvcmRzLnVwZGF0ZVNpemUoc2l6ZSk7XG4gICAgdGhpcy50YXNrLnNldEluY2x1ZGVzRmlyc3QoZmFsc2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZSB0aGUgc2VsZWN0aW9uIG9mIHJvdyBhbmQgaWYgbmVlZGVkIG1vdmUgdG8gcmVzcGVjdGl2ZSBwYWdlLlxuICAgKiBAcGFyYW0gIGd1aVJvd0lkIE5ldyBudW1iZXIgb2YgbGluZXMgaW4gdGFibGVcbiAgICovXG4gIHByb3RlY3RlZCBzZWxlY3RQYWdlRm9yR3VpUm93SWQoZ3VpUm93SWQ6IG51bWJlcik6IHZvaWQge1xuICAgIGxldCBwYWdlVG9CZVNlbGVjdGVkOiBudW1iZXIgPSAwO1xuICAgIGxldCBwcmV2U2VsZWN0ZWRSb3c6IENvbnRyb2xzTWV0YWRhdGEgPSA8Q29udHJvbHNNZXRhZGF0YT50aGlzLnNlbGVjdGVkUm93KCk7XG5cbiAgICBwYWdlVG9CZVNlbGVjdGVkID0gTWF0aC5mbG9vcihndWlSb3dJZCAvIHRoaXMuZ2V0UGFnZVNpemUoKSk7XG5cbiAgICAvLyBFeHBsaWNpdGx5IGhhbmRsZSBzZWxlY3Rpb24gb2YgcGFnZSB3aGVuIGl0J3Mgbm90IHJhaXNlZCBieSB1c2luZyBwYWdpbmF0aW9uXG4gICAgaWYgKChpc051bGxPclVuZGVmaW5lZChwcmV2U2VsZWN0ZWRSb3cpIHx8ICghaXNOdWxsT3JVbmRlZmluZWQodGhpcy5wYWdpbmF0b3IpICYmIHBhZ2VUb0JlU2VsZWN0ZWQgIT0gdGhpcy5wYWdpbmF0b3IucGFnZUluZGV4KSkpXG4gICAgICB0aGlzLnNlbGVjdFBhZ2UocGFnZVRvQmVTZWxlY3RlZCk7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgc2V0VGFibGVUb3BJbmRleCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy50YXNrLlJlY29yZHMuc2V0R3VpVG9wSW5kZXgodmFsdWUpO1xuXG4gICAgaWYgKHZhbHVlID49IDApXG4gICAgICB0aGlzLnNlbGVjdFBhZ2VGb3JHdWlSb3dJZCh0aGlzLnRhc2suZ2V0R3VpUm93SWQodmFsdWUsIHRydWUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBnZXRUYWJsZVRvcEluZGV4KCk6bnVtYmVyXG4gIHtcbiAgICByZXR1cm4gdGhpcy50YXNrLlJlY29yZHMuZ2V0R3VpVG9wSW5kZXgoKTtcbiAgfVxufVxuXG4iXX0=