@trudb/tru-common-lib 0.0.177 → 0.0.179

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 (99) hide show
  1. package/esm2020/lib/components/confirm-dialog/tru-confirm-dialog-module.mjs +19 -0
  2. package/esm2020/lib/components/confirm-dialog/tru-confirm-dialog.mjs +36 -0
  3. package/esm2020/lib/components/desktop/directives/resizable/tru-desktop-resizable-module.mjs +19 -0
  4. package/esm2020/lib/components/desktop/directives/resizable/tru-desktop-resizable.mjs +109 -0
  5. package/esm2020/lib/components/desktop/menubar/tru-desktop-menubar-module.mjs +44 -0
  6. package/esm2020/lib/components/desktop/menubar/tru-desktop-menubar.mjs +29 -0
  7. package/esm2020/lib/components/desktop/services/tru-desktop-service.mjs +136 -0
  8. package/esm2020/lib/components/desktop/statusbar/tru-desktop-statusbar-module.mjs +19 -0
  9. package/esm2020/lib/components/desktop/statusbar/tru-desktop-statusbar.mjs +18 -0
  10. package/esm2020/lib/components/desktop/taskbar/tru-desktop-taskbar-module.mjs +21 -0
  11. package/esm2020/lib/components/desktop/taskbar/tru-desktop-taskbar.mjs +40 -0
  12. package/esm2020/lib/components/desktop/tru-desktop-module.mjs +72 -0
  13. package/esm2020/lib/components/desktop/tru-desktop.mjs +703 -0
  14. package/esm2020/lib/components/desktop/view/tru-desktop-view-module.mjs +19 -0
  15. package/esm2020/lib/components/desktop/view/tru-desktop-view.mjs +25 -0
  16. package/esm2020/lib/components/desktop/viewport/tru-desktop-viewport-module.mjs +20 -0
  17. package/esm2020/lib/components/desktop/viewport/tru-desktop-viewport.mjs +109 -0
  18. package/esm2020/lib/components/desktop/window/tru-desktop-window-module.mjs +58 -0
  19. package/esm2020/lib/components/desktop/window/tru-desktop-window.mjs +449 -0
  20. package/esm2020/lib/components/export-dialog/tru-export-dialog-module.mjs +20 -0
  21. package/esm2020/lib/components/export-dialog/tru-export-dialog.mjs +57 -0
  22. package/esm2020/lib/components/toolbar/button/tru-toolbar-button-module.mjs +32 -0
  23. package/esm2020/lib/components/toolbar/button/tru-toolbar-button.mjs +35 -0
  24. package/esm2020/lib/components/toolbar/context-filter/tru-toolbar-context-filter-module.mjs +40 -0
  25. package/esm2020/lib/components/toolbar/context-filter/tru-toolbar-context-filter.mjs +24 -0
  26. package/esm2020/lib/components/toolbar/dropdown/tru-toolbar-dropdown-module.mjs +32 -0
  27. package/esm2020/lib/components/toolbar/dropdown/tru-toolbar-dropdown.mjs +42 -0
  28. package/esm2020/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button-module.mjs +19 -0
  29. package/esm2020/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button.mjs +16 -0
  30. package/esm2020/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item-module.mjs +19 -0
  31. package/esm2020/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item.mjs +26 -0
  32. package/esm2020/lib/components/toolbar/menu/tru-toolbar-menu-module.mjs +32 -0
  33. package/esm2020/lib/components/toolbar/menu/tru-toolbar-menu.mjs +33 -0
  34. package/esm2020/lib/components/toolbar/separator/tru-toolbar-separator-module.mjs +19 -0
  35. package/esm2020/lib/components/toolbar/separator/tru-toolbar-separator.mjs +12 -0
  36. package/esm2020/lib/components/toolbar/text/tru-toolbar-text-module.mjs +32 -0
  37. package/esm2020/lib/components/toolbar/text/tru-toolbar-text.mjs +28 -0
  38. package/esm2020/lib/components/toolbar/tru-toolbar-module.mjs +48 -0
  39. package/esm2020/lib/components/toolbar/tru-toolbar.mjs +21 -0
  40. package/esm2020/lib/material.module.mjs +192 -0
  41. package/esm2020/lib/services/tru-app-environment.mjs +75 -0
  42. package/esm2020/lib/services/tru-breeze-context-factory.mjs +71 -0
  43. package/esm2020/lib/services/tru-data-context.mjs +207 -0
  44. package/esm2020/lib/services/tru-entity-accessor.mjs +188 -0
  45. package/esm2020/lib/services/tru-search-group-event-handler.mjs +1 -1
  46. package/esm2020/lib/services/tru-ui-notification.mjs +90 -0
  47. package/esm2020/lib/tru-common-module.mjs +1 -1
  48. package/esm2020/public-api.mjs +12 -1
  49. package/fesm2015/trudb-tru-common-lib.mjs +2993 -65
  50. package/fesm2015/trudb-tru-common-lib.mjs.map +1 -1
  51. package/fesm2020/trudb-tru-common-lib.mjs +2987 -65
  52. package/fesm2020/trudb-tru-common-lib.mjs.map +1 -1
  53. package/lib/components/confirm-dialog/tru-confirm-dialog-module.d.ts +9 -0
  54. package/lib/components/confirm-dialog/tru-confirm-dialog.d.ts +20 -0
  55. package/lib/components/desktop/directives/resizable/tru-desktop-resizable-module.d.ts +9 -0
  56. package/lib/components/desktop/directives/resizable/tru-desktop-resizable.d.ts +32 -0
  57. package/lib/components/desktop/menubar/tru-desktop-menubar-module.d.ts +14 -0
  58. package/lib/components/desktop/menubar/tru-desktop-menubar.d.ts +12 -0
  59. package/lib/components/desktop/services/tru-desktop-service.d.ts +110 -0
  60. package/lib/components/desktop/statusbar/tru-desktop-statusbar-module.d.ts +9 -0
  61. package/lib/components/desktop/statusbar/tru-desktop-statusbar.d.ts +10 -0
  62. package/lib/components/desktop/taskbar/tru-desktop-taskbar-module.d.ts +11 -0
  63. package/lib/components/desktop/taskbar/tru-desktop-taskbar.d.ts +15 -0
  64. package/lib/components/desktop/tru-desktop-module.d.ts +20 -0
  65. package/lib/components/desktop/tru-desktop.d.ts +334 -0
  66. package/lib/components/desktop/view/tru-desktop-view-module.d.ts +9 -0
  67. package/lib/components/desktop/view/tru-desktop-view.d.ts +13 -0
  68. package/lib/components/desktop/viewport/tru-desktop-viewport-module.d.ts +10 -0
  69. package/lib/components/desktop/viewport/tru-desktop-viewport.d.ts +46 -0
  70. package/lib/components/desktop/window/tru-desktop-window-module.d.ts +17 -0
  71. package/lib/components/desktop/window/tru-desktop-window.d.ts +184 -0
  72. package/lib/components/export-dialog/tru-export-dialog-module.d.ts +10 -0
  73. package/lib/components/export-dialog/tru-export-dialog.d.ts +26 -0
  74. package/lib/components/toolbar/button/tru-toolbar-button-module.d.ts +11 -0
  75. package/lib/components/toolbar/button/tru-toolbar-button.d.ts +14 -0
  76. package/lib/components/toolbar/context-filter/tru-toolbar-context-filter-module.d.ts +13 -0
  77. package/lib/components/toolbar/context-filter/tru-toolbar-context-filter.d.ts +11 -0
  78. package/lib/components/toolbar/dropdown/tru-toolbar-dropdown-module.d.ts +11 -0
  79. package/lib/components/toolbar/dropdown/tru-toolbar-dropdown.d.ts +18 -0
  80. package/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button-module.d.ts +9 -0
  81. package/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button.d.ts +7 -0
  82. package/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item-module.d.ts +9 -0
  83. package/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item.d.ts +8 -0
  84. package/lib/components/toolbar/menu/tru-toolbar-menu-module.d.ts +11 -0
  85. package/lib/components/toolbar/menu/tru-toolbar-menu.d.ts +10 -0
  86. package/lib/components/toolbar/separator/tru-toolbar-separator-module.d.ts +9 -0
  87. package/lib/components/toolbar/separator/tru-toolbar-separator.d.ts +6 -0
  88. package/lib/components/toolbar/text/tru-toolbar-text-module.d.ts +11 -0
  89. package/lib/components/toolbar/text/tru-toolbar-text.d.ts +12 -0
  90. package/lib/components/toolbar/tru-toolbar-module.d.ts +15 -0
  91. package/lib/components/toolbar/tru-toolbar.d.ts +13 -0
  92. package/lib/material.module.d.ts +50 -0
  93. package/lib/services/tru-app-environment.d.ts +48 -0
  94. package/lib/services/tru-breeze-context-factory.d.ts +30 -0
  95. package/lib/services/tru-data-context.d.ts +32 -0
  96. package/lib/services/tru-entity-accessor.d.ts +41 -0
  97. package/lib/services/tru-ui-notification.d.ts +35 -0
  98. package/package.json +1 -1
  99. package/public-api.d.ts +8 -0
@@ -0,0 +1,19 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { FormsModule } from "@angular/forms";
4
+ import { TruConfirmDialog } from "./tru-confirm-dialog";
5
+ import * as i0 from "@angular/core";
6
+ export class TruConfirmDialogModule {
7
+ }
8
+ TruConfirmDialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruConfirmDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ TruConfirmDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.2", ngImport: i0, type: TruConfirmDialogModule, declarations: [TruConfirmDialog], imports: [CommonModule, FormsModule], exports: [TruConfirmDialog] });
10
+ TruConfirmDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruConfirmDialogModule, imports: [CommonModule, FormsModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruConfirmDialogModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ declarations: [TruConfirmDialog],
15
+ imports: [CommonModule, FormsModule],
16
+ exports: [TruConfirmDialog]
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWNvbmZpcm0tZGlhbG9nLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9jb25maXJtLWRpYWxvZy90cnUtY29uZmlybS1kaWFsb2ctbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFPeEQsTUFBTSxPQUFPLHNCQUFzQjs7bUhBQXRCLHNCQUFzQjtvSEFBdEIsc0JBQXNCLGlCQUpsQixnQkFBZ0IsYUFDckIsWUFBWSxFQUFFLFdBQVcsYUFDekIsZ0JBQWdCO29IQUVmLHNCQUFzQixZQUh2QixZQUFZLEVBQUUsV0FBVzsyRkFHeEIsc0JBQXNCO2tCQUxsQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUNoQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuXHJcbmltcG9ydCB7IFRydUNvbmZpcm1EaWFsb2cgfSBmcm9tIFwiLi90cnUtY29uZmlybS1kaWFsb2dcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbVHJ1Q29uZmlybURpYWxvZ10sXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGVdLFxyXG4gIGV4cG9ydHM6IFtUcnVDb25maXJtRGlhbG9nXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1Q29uZmlybURpYWxvZ01vZHVsZSB7IH1cclxuIl19
@@ -0,0 +1,36 @@
1
+ import { MAT_DIALOG_DATA } from '@angular/material/dialog';
2
+ import { Component, Inject } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/material/dialog";
5
+ export class TruConfirmDialog {
6
+ constructor(dialogRef, data) {
7
+ this.dialogRef = dialogRef;
8
+ this.data = data;
9
+ this.title = data.title;
10
+ this.message = data.message;
11
+ }
12
+ ngOnInit() {
13
+ }
14
+ onConfirm() {
15
+ this.dialogRef.close(true);
16
+ }
17
+ onDismiss() {
18
+ this.dialogRef.close(false);
19
+ }
20
+ }
21
+ TruConfirmDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruConfirmDialog, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
22
+ TruConfirmDialog.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: TruConfirmDialog, selector: "tru-confirm-dialog", ngImport: i0, template: "<h1 mat-dialog-title>\r\n {{title}}\r\n</h1>\r\n\r\n<div mat-dialog-content>\r\n <p>{{message}}</p>\r\n</div>\r\n\r\n<div mat-dialog-actions>\r\n <button mat-button (click)=\"onDismiss()\">No</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"onConfirm()\">Yes</button>\r\n</div>\r\n", styles: [""] });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruConfirmDialog, decorators: [{
24
+ type: Component,
25
+ args: [{ selector: 'tru-confirm-dialog', template: "<h1 mat-dialog-title>\r\n {{title}}\r\n</h1>\r\n\r\n<div mat-dialog-content>\r\n <p>{{message}}</p>\r\n</div>\r\n\r\n<div mat-dialog-actions>\r\n <button mat-button (click)=\"onDismiss()\">No</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"onConfirm()\">Yes</button>\r\n</div>\r\n" }]
26
+ }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: TruConfirmDialog, decorators: [{
27
+ type: Inject,
28
+ args: [MAT_DIALOG_DATA]
29
+ }] }]; } });
30
+ export class TruConfirmDialogConfig {
31
+ constructor(title, message) {
32
+ this.title = title;
33
+ this.message = message;
34
+ }
35
+ }
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWNvbmZpcm0tZGlhbG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL2NvbmZpcm0tZGlhbG9nL3RydS1jb25maXJtLWRpYWxvZy50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9jb25maXJtLWRpYWxvZy90cnUtY29uZmlybS1kaWFsb2cuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTJCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPMUQsTUFBTSxPQUFPLGdCQUFnQjtJQUkzQixZQUFtQixTQUF5QyxFQUMxQixJQUFzQjtRQURyQyxjQUFTLEdBQVQsU0FBUyxDQUFnQztRQUMxQixTQUFJLEdBQUosSUFBSSxDQUFrQjtRQUN0RCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQzlCLENBQUM7SUFFRCxRQUFRO0lBQ1IsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7OzZHQW5CVSxnQkFBZ0IsOENBS2pCLGVBQWU7aUdBTGQsZ0JBQWdCLDBEQ1I3QixpVEFZQTsyRkRKYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0Usb0JBQW9COzswQkFTM0IsTUFBTTsyQkFBQyxlQUFlOztBQWlCM0IsTUFBTSxPQUFPLHNCQUFzQjtJQUVqQyxZQUFtQixLQUFhLEVBQVMsT0FBZTtRQUFyQyxVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQVMsWUFBTyxHQUFQLE9BQU8sQ0FBUTtJQUN4RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd0cnUtY29uZmlybS1kaWFsb2cnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90cnUtY29uZmlybS1kaWFsb2cuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdHJ1LWNvbmZpcm0tZGlhbG9nLmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVDb25maXJtRGlhbG9nIGltcGxlbWVudHMgT25Jbml0IHtcclxuICB0aXRsZTogc3RyaW5nO1xyXG4gIG1lc3NhZ2U6IHN0cmluZztcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFRydUNvbmZpcm1EaWFsb2c+LFxyXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBUcnVDb25maXJtRGlhbG9nKSB7XHJcbiAgICB0aGlzLnRpdGxlID0gZGF0YS50aXRsZTtcclxuICAgIHRoaXMubWVzc2FnZSA9IGRhdGEubWVzc2FnZTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gIH1cclxuXHJcbiAgb25Db25maXJtKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBvbkRpc21pc3MoKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShmYWxzZSk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgVHJ1Q29uZmlybURpYWxvZ0NvbmZpZyB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0aXRsZTogc3RyaW5nLCBwdWJsaWMgbWVzc2FnZTogc3RyaW5nKSB7XHJcbiAgfVxyXG59XHJcblxyXG4iLCI8aDEgbWF0LWRpYWxvZy10aXRsZT5cclxuICB7e3RpdGxlfX1cclxuPC9oMT5cclxuXHJcbjxkaXYgbWF0LWRpYWxvZy1jb250ZW50PlxyXG4gIDxwPnt7bWVzc2FnZX19PC9wPlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zPlxyXG4gIDxidXR0b24gbWF0LWJ1dHRvbiAoY2xpY2spPVwib25EaXNtaXNzKClcIj5ObzwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cIm9uQ29uZmlybSgpXCI+WWVzPC9idXR0b24+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { FormsModule } from "@angular/forms";
4
+ import { TruDesktopResizable } from "./tru-desktop-resizable";
5
+ import * as i0 from "@angular/core";
6
+ export class TruDesktopResizableModule {
7
+ }
8
+ TruDesktopResizableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopResizableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ TruDesktopResizableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopResizableModule, declarations: [TruDesktopResizable], imports: [CommonModule, FormsModule], exports: [TruDesktopResizable] });
10
+ TruDesktopResizableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopResizableModule, imports: [CommonModule, FormsModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopResizableModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ declarations: [TruDesktopResizable],
15
+ imports: [CommonModule, FormsModule],
16
+ exports: [TruDesktopResizable]
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtcmVzaXphYmxlLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL2RpcmVjdGl2ZXMvcmVzaXphYmxlL3RydS1kZXNrdG9wLXJlc2l6YWJsZS1tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQU85RCxNQUFNLE9BQU8seUJBQXlCOztzSEFBekIseUJBQXlCO3VIQUF6Qix5QkFBeUIsaUJBSnJCLG1CQUFtQixhQUN4QixZQUFZLEVBQUUsV0FBVyxhQUN6QixtQkFBbUI7dUhBRWxCLHlCQUF5QixZQUgxQixZQUFZLEVBQUUsV0FBVzsyRkFHeEIseUJBQXlCO2tCQUxyQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLG1CQUFtQixDQUFDO29CQUNuQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztpQkFDL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuXHJcbmltcG9ydCB7IFRydURlc2t0b3BSZXNpemFibGUgfSBmcm9tIFwiLi90cnUtZGVza3RvcC1yZXNpemFibGVcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbVHJ1RGVza3RvcFJlc2l6YWJsZV0sXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGVdLFxyXG4gIGV4cG9ydHM6IFtUcnVEZXNrdG9wUmVzaXphYmxlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1RGVza3RvcFJlc2l6YWJsZU1vZHVsZSB7IH1cclxuIl19
@@ -0,0 +1,109 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class TruDesktopResizable {
4
+ constructor(elementRef) {
5
+ this.elementRef = elementRef;
6
+ this.mouseOffsetX = 0;
7
+ this.mouseOffsetY = 0;
8
+ this.lastMouseX = 0;
9
+ this.lastMouseY = 0;
10
+ this.originalHeight = 0;
11
+ this.originalWidth = 0;
12
+ this.mouseDown = (event) => {
13
+ if (this.maximized)
14
+ return;
15
+ event.preventDefault();
16
+ this.mouseOffsetY = event.clientY;
17
+ this.mouseOffsetX = event.clientX;
18
+ this.originalHeight = parseInt(this.window.height, 10);
19
+ this.originalWidth = parseInt(this.window.width, 10);
20
+ this.viewport = this.getViewport();
21
+ document.addEventListener('mousemove', this.mouseMove);
22
+ document.addEventListener('mouseup', this.mouseUp);
23
+ };
24
+ this.mouseMove = (event) => {
25
+ var mouseY = event.pageY - this.mouseOffsetY;
26
+ var mouseX = event.pageX - this.mouseOffsetX;
27
+ var diffY = mouseY - this.lastMouseY;
28
+ var diffX = mouseX - this.lastMouseX;
29
+ this.lastMouseY = mouseY;
30
+ this.lastMouseX = mouseX;
31
+ this.currentHeight = parseInt(this.window.height, 10);
32
+ this.currentWidth = parseInt(this.window.width, 10);
33
+ this.currentTop = parseInt(this.window.top, 10);
34
+ this.currentLeft = parseInt(this.window.left, 10);
35
+ this.currentRight = parseInt(this.window.right, 10);
36
+ this.currentBottom = parseInt(this.window.bottom, 10);
37
+ this.currentMinHeight = parseInt(this.window.minHeight, 10);
38
+ this.currentMinWidth = parseInt(this.window.minWidth, 10);
39
+ if (this.direction.indexOf("w") > -1) {
40
+ if (this.currentWidth - diffX < this.currentMinWidth)
41
+ this.mouseOffsetX = this.mouseOffsetX - (diffX - (diffX = this.currentWidth - this.currentMinWidth));
42
+ //Contain resizing to the west
43
+ if (this.currentLeft + diffX < 0)
44
+ this.mouseOffsetX = this.mouseOffsetX - (diffX - (diffX = 0 - this.currentLeft));
45
+ this.window.left = (this.currentLeft + diffX) + 'px';
46
+ this.window.width = (this.currentWidth - diffX) + 'px';
47
+ }
48
+ if (this.direction.indexOf("n") > -1) {
49
+ if (this.currentHeight - diffY < this.currentMinHeight)
50
+ this.mouseOffsetY = this.mouseOffsetY - (diffY - (diffY = this.currentHeight - this.currentMinHeight));
51
+ //Contain resizing to the north
52
+ if (this.currentTop + diffY < 0)
53
+ this.mouseOffsetY = this.mouseOffsetY - (diffY - (diffY = 0 - this.currentTop));
54
+ this.window.top = (this.currentTop + diffY) + 'px';
55
+ this.window.height = (this.currentHeight - diffY) + 'px';
56
+ }
57
+ if (this.direction.indexOf("e") > -1) {
58
+ if (this.currentWidth + diffX < this.currentMinWidth)
59
+ this.mouseOffsetX = this.mouseOffsetX - (diffX - (diffX = this.currentMinWidth - this.currentWidth));
60
+ //Contain resizing to the east
61
+ if ((this.currentLeft + this.currentWidth) + diffX > this.viewport.offsetWidth)
62
+ this.mouseOffsetX = this.mouseOffsetX - (diffX - (diffX = this.viewport.offsetWidth - (this.currentLeft + this.currentWidth)));
63
+ this.window.width = (this.currentWidth + diffX) + 'px';
64
+ }
65
+ if (this.direction.indexOf("s") > -1) {
66
+ if (this.currentHeight + diffY < this.currentMinHeight)
67
+ this.mouseOffsetY = this.mouseOffsetY - (diffY - (diffY = this.currentMinHeight - this.currentHeight));
68
+ //Contain resizing to the south
69
+ if ((this.currentTop + this.currentHeight) + diffY > this.viewport.offsetHeight)
70
+ this.mouseOffsetY = this.mouseOffsetY - (diffY - (diffY = this.viewport.offsetHeight - (this.currentTop + this.currentHeight)));
71
+ this.window.height = (this.currentHeight + diffY) + 'px';
72
+ }
73
+ };
74
+ this.mouseUp = (event) => {
75
+ this.mouseOffsetX = 0;
76
+ this.mouseOffsetY = 0;
77
+ this.lastMouseX = 0;
78
+ this.lastMouseY = 0;
79
+ document.removeEventListener('mousemove', this.mouseMove);
80
+ document.removeEventListener('mouseup', this.mouseUp);
81
+ };
82
+ this.getViewport = function () {
83
+ return document.querySelectorAll('.desktop-viewport-container')[0];
84
+ };
85
+ }
86
+ ngOnInit() {
87
+ this.elementRef.nativeElement.addEventListener('mousedown', this.mouseDown);
88
+ }
89
+ ngOnDestroy() {
90
+ this.elementRef.nativeElement.removeEventListener('mousedown', this.mouseDown);
91
+ document.removeEventListener('mousemove', this.mouseMove);
92
+ document.removeEventListener('mouseup', this.mouseUp);
93
+ }
94
+ }
95
+ TruDesktopResizable.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopResizable, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
96
+ TruDesktopResizable.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.2", type: TruDesktopResizable, selector: "[tru-desktop-resizable]", inputs: { window: "window", maximized: "maximized", direction: "direction" }, ngImport: i0 });
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopResizable, decorators: [{
98
+ type: Directive,
99
+ args: [{
100
+ selector: '[tru-desktop-resizable]',
101
+ }]
102
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { window: [{
103
+ type: Input
104
+ }], maximized: [{
105
+ type: Input
106
+ }], direction: [{
107
+ type: Input
108
+ }] } });
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtcmVzaXphYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL2Rlc2t0b3AvZGlyZWN0aXZlcy9yZXNpemFibGUvdHJ1LWRlc2t0b3AtcmVzaXphYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFjLE1BQU0sZUFBZSxDQUFDOztBQUtyRSxNQUFNLE9BQU8sbUJBQW1CO0lBSzlCLFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFVMUMsaUJBQVksR0FBRyxDQUFDLENBQUM7UUFDakIsaUJBQVksR0FBRyxDQUFDLENBQUM7UUFDakIsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFDZixtQkFBYyxHQUFHLENBQUMsQ0FBQztRQUNuQixrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUdsQixjQUFTLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUN6QixJQUFJLElBQUksQ0FBQyxTQUFTO2dCQUFFLE9BQU87WUFDM0IsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNsQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDbEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLGFBQWEsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDckQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFF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QUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT25Jbml0LCBJbnB1dCwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbdHJ1LWRlc2t0b3AtcmVzaXphYmxlXScsXG59KVxuZXhwb3J0IGNsYXNzIFRydURlc2t0b3BSZXNpemFibGUgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSB3aW5kb3c6IGFueTtcbiAgQElucHV0KCkgbWF4aW1pemVkOiBhbnk7XG4gIEBJbnB1dCgpIGRpcmVjdGlvbjogYW55O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikgeyB9XG5cbiAgY3VycmVudEhlaWdodDogYW55O1xuICBjdXJyZW50V2lkdGg6IGFueTtcbiAgY3VycmVudFRvcDogYW55O1xuICBjdXJyZW50TGVmdDogYW55O1xuICBjdXJyZW50UmlnaHQ6IGFueTtcbiAgY3VycmVudEJvdHRvbTogYW55O1xuICBjdXJyZW50TWluSGVpZ2h0OiBhbnk7XG4gIGN1cnJlbnRNaW5XaWR0aDogYW55O1xuICBtb3VzZU9mZnNldFggPSAwO1xuICBtb3VzZU9mZnNldFkgPSAwO1xuICBsYXN0TW91c2VYID0gMDtcbiAgbGFzdE1vdXNlWSA9IDA7XG4gIG9yaWdpbmFsSGVpZ2h0ID0gMDtcbiAgb3JpZ2luYWxXaWR0aCA9IDA7XG4gIHZpZXdwb3J0OiBhbnk7XG5cbiAgbW91c2VEb3duID0gKGV2ZW50OiBhbnkpID0+IHtcbiAgICBpZiAodGhpcy5tYXhpbWl6ZWQpIHJldHVybjtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMubW91c2VPZmZzZXRZID0gZXZlbnQuY2xpZW50WTtcbiAgICB0aGlzLm1vdXNlT2Zmc2V0WCA9IGV2ZW50LmNsaWVudFg7XG4gICAgdGhpcy5vcmlnaW5hbEhlaWdodCA9IHBhcnNlSW50KHRoaXMud2luZG93LmhlaWdodCwgMTApO1xuICAgIHRoaXMub3JpZ2luYWxXaWR0aCA9IHBhcnNlSW50KHRoaXMud2luZG93LndpZHRoLCAxMCk7XG4gICAgdGhpcy52aWV3cG9ydCA9IHRoaXMuZ2V0Vmlld3BvcnQoKTtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLm1vdXNlTW92ZSk7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMubW91c2VVcCk7XG4gIH07XG5cbiAgbW91c2VNb3ZlID0gKGV2ZW50OiBhbnkpID0+IHtcbiAgICB2YXIgbW91c2VZID0gZXZlbnQucGFnZVkgLSB0aGlzLm1vdXNlT2Zmc2V0WTtcbiAgICB2YXIgbW91c2VYID0gZXZlbnQucGFnZVggLSB0aGlzLm1vdXNlT2Zmc2V0WDtcbiAgICB2YXIgZGlmZlkgPSBtb3VzZVkgLSB0aGlzLmxhc3RNb3VzZVk7XG4gICAgdmFyIGRpZmZYID0gbW91c2VYIC0gdGhpcy5sYXN0TW91c2VYO1xuICAgIHRoaXMubGFzdE1vdXNlWSA9IG1vdXNlWTtcbiAgICB0aGlzLmxhc3RNb3VzZVggPSBtb3VzZVg7XG5cbiAgICB0aGlzLmN1cnJlbnRIZWlnaHQgPSBwYXJzZUludCh0aGlzLndpbmRvdy5oZWlnaHQsIDEwKTtcbiAgICB0aGlzLmN1cnJlbnRXaWR0aCA9IHBhcnNlSW50KHRoaXMud2luZG93LndpZHRoLCAxMCk7XG4gICAgdGhpcy5jdXJyZW50VG9wID0gcGFyc2VJbnQodGhpcy53aW5kb3cudG9wLCAxMCk7XG4gICAgdGhpcy5jdXJyZW50TGVmdCA9IHBhcnNlSW50KHRoaXMud2luZG93LmxlZnQsIDEwKTtcbiAgICB0aGlzLmN1cnJlbnRSaWdodCA9IHBhcnNlSW50KHRoaXMud2luZG93LnJpZ2h0LCAxMCk7XG4gICAgdGhpcy5jdXJyZW50Qm90dG9tID0gcGFyc2VJbnQodGhpcy53aW5kb3cuYm90dG9tLCAxMCk7XG4gICAgdGhpcy5jdXJyZW50TWluSGVpZ2h0ID0gcGFyc2VJbnQodGhpcy53aW5kb3cubWluSGVpZ2h0LCAxMCk7XG4gICAgdGhpcy5jdXJyZW50TWluV2lkdGggPSBwYXJzZUludCh0aGlzLndpbmRvdy5taW5XaWR0aCwgMTApO1xuXG4gICAgaWYgKHRoaXMuZGlyZWN0aW9uLmluZGV4T2YoXCJ3XCIpID4gLTEpIHtcbiAgICAgIGlmICh0aGlzLmN1cnJlbnRXaWR0aCAtIGRpZmZYIDwgdGhpcy5jdXJyZW50TWluV2lkdGgpIHRoaXMubW91c2VPZmZzZXRYID0gdGhpcy5tb3VzZU9mZnNldFggLSAoZGlmZlggLSAoZGlmZlggPSB0aGlzLmN1cnJlbnRXaWR0aCAtIHRoaXMuY3VycmVudE1pbldpZHRoKSk7XG5cbiAgICAgIC8vQ29udGFpbiByZXNpemluZyB0byB0aGUgd2VzdFxuICAgICAgaWYgKHRoaXMuY3VycmVudExlZnQgKyBkaWZmWCA8IDApXG4gICAgICAgIHRoaXMubW91c2VPZmZzZXRYID0gdGhpcy5tb3VzZU9mZnNldFggLSAoZGlmZlggLSAoZGlmZlggPSAwIC0gdGhpcy5jdXJyZW50TGVmdCkpO1xuXG4gICAgICB0aGlzLndpbmRvdy5sZWZ0ID0gKHRoaXMuY3VycmVudExlZnQgKyBkaWZmWCkgKyAncHgnO1xuICAgICAgdGhpcy53aW5kb3cud2lkdGggPSAodGhpcy5jdXJyZW50V2lkdGggLSBkaWZmWCkgKyAncHgnO1xuICAgIH1cbiAgICBpZiAodGhpcy5kaXJlY3Rpb24uaW5kZXhPZihcIm5cIikgPiAtMSkge1xuICAgICAgaWYgKHRoaXMuY3VycmVudEhlaWdodCAtIGRpZmZZIDwgdGhpcy5jdXJyZW50TWluSGVpZ2h0KSB0aGlzLm1vdXNlT2Zmc2V0WSA9IHRoaXMubW91c2VPZmZzZXRZIC0gKGRpZmZZIC0gKGRpZmZZID0gdGhpcy5jdXJyZW50SGVpZ2h0IC0gdGhpcy5jdXJyZW50TWluSGVpZ2h0KSk7XG5cbiAgICAgIC8vQ29udGFpbiByZXNpemluZyB0byB0aGUgbm9ydGhcbiAgICAgIGlmICh0aGlzLmN1cnJlbnRUb3AgKyBkaWZmWSA8IDApIHRoaXMubW91c2VPZmZzZXRZID0gdGhpcy5tb3VzZU9mZnNldFkgLSAoZGlmZlkgLSAoZGlmZlkgPSAwIC0gdGhpcy5jdXJyZW50VG9wKSk7XG5cbiAgICAgIHRoaXMud2luZG93LnRvcCA9ICh0aGlzLmN1cnJlbnRUb3AgKyBkaWZmWSkgKyAncHgnO1xuICAgICAgdGhpcy53aW5kb3cuaGVpZ2h0ID0gKHRoaXMuY3VycmVudEhlaWdodCAtIGRpZmZZKSArICdweCc7XG4gICAgfVxuICAgIGlmICh0aGlzLmRpcmVjdGlvbi5pbmRleE9mKFwiZVwiKSA+IC0xKSB7XG4gICAgICBpZiAodGhpcy5jdXJyZW50V2lkdGggKyBkaWZmWCA8IHRoaXMuY3VycmVudE1pbldpZHRoKSB0aGlzLm1vdXNlT2Zmc2V0WCA9IHRoaXMubW91c2VPZmZzZXRYIC0gKGRpZmZYIC0gKGRpZmZYID0gdGhpcy5jdXJyZW50TWluV2lkdGggLSB0aGlzLmN1cnJlbnRXaWR0aCkpO1xuXG4gICAgICAvL0NvbnRhaW4gcmVzaXppbmcgdG8gdGhlIGVhc3RcbiAgICAgIGlmICgodGhpcy5jdXJyZW50TGVmdCArIHRoaXMuY3VycmVudFdpZHRoKSArIGRpZmZYID4gdGhpcy52aWV3cG9ydC5vZmZzZXRXaWR0aClcbiAgICAgICAgdGhpcy5tb3VzZU9mZnNldFggPSB0aGlzLm1vdXNlT2Zmc2V0WCAtIChkaWZmWCAtIChkaWZmWCA9IHRoaXMudmlld3BvcnQub2Zmc2V0V2lkdGggLSAodGhpcy5jdXJyZW50TGVmdCArIHRoaXMuY3VycmVudFdpZHRoKSkpO1xuXG4gICAgICB0aGlzLndpbmRvdy53aWR0aCA9ICh0aGlzLmN1cnJlbnRXaWR0aCArIGRpZmZYKSArICdweCc7XG4gICAgfVxuICAgIGlmICh0aGlzLmRpcmVjdGlvbi5pbmRleE9mKFwic1wiKSA+IC0xKSB7XG4gICAgICBpZiAodGhpcy5jdXJyZW50SGVpZ2h0ICsgZGlmZlkgPCB0aGlzLmN1cnJlbnRNaW5IZWlnaHQpIHRoaXMubW91c2VPZmZzZXRZID0gdGhpcy5tb3VzZU9mZnNldFkgLSAoZGlmZlkgLSAoZGlmZlkgPSB0aGlzLmN1cnJlbnRNaW5IZWlnaHQgLSB0aGlzLmN1cnJlbnRIZWlnaHQpKTtcblxuICAgICAgLy9Db250YWluIHJlc2l6aW5nIHRvIHRoZSBzb3V0aFxuICAgICAgaWYgKCh0aGlzLmN1cnJlbnRUb3AgKyB0aGlzLmN1cnJlbnRIZWlnaHQpICsgZGlmZlkgPiB0aGlzLnZpZXdwb3J0Lm9mZnNldEhlaWdodClcbiAgICAgICAgdGhpcy5tb3VzZU9mZnNldFkgPSB0aGlzLm1vdXNlT2Zmc2V0WSAtIChkaWZmWSAtIChkaWZmWSA9IHRoaXMudmlld3BvcnQub2Zmc2V0SGVpZ2h0IC0gKHRoaXMuY3VycmVudFRvcCArIHRoaXMuY3VycmVudEhlaWdodCkpKTtcblxuICAgICAgdGhpcy53aW5kb3cuaGVpZ2h0ID0gKHRoaXMuY3VycmVudEhlaWdodCArIGRpZmZZKSArICdweCc7XG4gICAgfVxuICB9XG5cbiAgbW91c2VVcCA9IChldmVudDogYW55KSA9PiB7XG4gICAgdGhpcy5tb3VzZU9mZnNldFggPSAwO1xuICAgIHRoaXMubW91c2VPZmZzZXRZID0gMDtcbiAgICB0aGlzLmxhc3RNb3VzZVggPSAwO1xuICAgIHRoaXMubGFzdE1vdXNlWSA9IDA7XG4gICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgdGhpcy5tb3VzZU1vdmUpO1xuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCB0aGlzLm1vdXNlVXApO1xuICB9O1xuXG4gIGdldFZpZXdwb3J0ID0gZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuZGVza3RvcC12aWV3cG9ydC1jb250YWluZXInKVswXTtcbiAgfTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCB0aGlzLm1vdXNlRG93bik7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCB0aGlzLm1vdXNlRG93bik7XG5cbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLm1vdXNlTW92ZSk7XG4gICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMubW91c2VVcCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,44 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { FormsModule } from "@angular/forms";
4
+ import { TruDesktopMenubar } from "./tru-desktop-menubar";
5
+ import { TruToolbarModule } from "../../toolbar/tru-toolbar-module";
6
+ import { TruToolbarMenuModule } from "../../toolbar/menu/tru-toolbar-menu-module";
7
+ import { TruToolbarDropdownModule } from "../../toolbar/dropdown/tru-toolbar-dropdown-module";
8
+ import { TruToolbarSeparatorModule } from "../../toolbar/separator/tru-toolbar-separator-module";
9
+ import { TruToolbarContextFilterModule } from "../../toolbar/context-filter/tru-toolbar-context-filter-module";
10
+ import * as i0 from "@angular/core";
11
+ export class TruDesktopMenubarModule {
12
+ }
13
+ TruDesktopMenubarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopMenubarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ TruDesktopMenubarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopMenubarModule, declarations: [TruDesktopMenubar], imports: [CommonModule,
15
+ FormsModule,
16
+ TruToolbarModule,
17
+ TruToolbarMenuModule,
18
+ TruToolbarDropdownModule,
19
+ TruToolbarSeparatorModule,
20
+ TruToolbarContextFilterModule], exports: [TruDesktopMenubar] });
21
+ TruDesktopMenubarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopMenubarModule, imports: [CommonModule,
22
+ FormsModule,
23
+ TruToolbarModule,
24
+ TruToolbarMenuModule,
25
+ TruToolbarDropdownModule,
26
+ TruToolbarSeparatorModule,
27
+ TruToolbarContextFilterModule] });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopMenubarModule, decorators: [{
29
+ type: NgModule,
30
+ args: [{
31
+ declarations: [TruDesktopMenubar],
32
+ imports: [
33
+ CommonModule,
34
+ FormsModule,
35
+ TruToolbarModule,
36
+ TruToolbarMenuModule,
37
+ TruToolbarDropdownModule,
38
+ TruToolbarSeparatorModule,
39
+ TruToolbarContextFilterModule
40
+ ],
41
+ exports: [TruDesktopMenubar]
42
+ }]
43
+ }] });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtbWVudWJhci1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvZGVza3RvcC9tZW51YmFyL3RydS1kZXNrdG9wLW1lbnViYXItbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUM5RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNqRyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQzs7QUFlL0csTUFBTSxPQUFPLHVCQUF1Qjs7b0hBQXZCLHVCQUF1QjtxSEFBdkIsdUJBQXVCLGlCQVpuQixpQkFBaUIsYUFFOUIsWUFBWTtRQUNaLFdBQVc7UUFDWCxnQkFBZ0I7UUFDaEIsb0JBQW9CO1FBQ3BCLHdCQUF3QjtRQUN4Qix5QkFBeUI7UUFDekIsNkJBQTZCLGFBRXJCLGlCQUFpQjtxSEFFaEIsdUJBQXVCLFlBVmhDLFlBQVk7UUFDWixXQUFXO1FBQ1gsZ0JBQWdCO1FBQ2hCLG9CQUFvQjtRQUNwQix3QkFBd0I7UUFDeEIseUJBQXlCO1FBQ3pCLDZCQUE2QjsyRkFJcEIsdUJBQXVCO2tCQWJuQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGlCQUFpQixDQUFDO29CQUNqQyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsb0JBQW9CO3dCQUNwQix3QkFBd0I7d0JBQ3hCLHlCQUF5Qjt3QkFDekIsNkJBQTZCO3FCQUM5QjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztpQkFDN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuXHJcbmltcG9ydCB7IFRydURlc2t0b3BNZW51YmFyIH0gZnJvbSBcIi4vdHJ1LWRlc2t0b3AtbWVudWJhclwiO1xyXG5pbXBvcnQgeyBUcnVUb29sYmFyTW9kdWxlIH0gZnJvbSBcIi4uLy4uL3Rvb2xiYXIvdHJ1LXRvb2xiYXItbW9kdWxlXCI7XHJcbmltcG9ydCB7IFRydVRvb2xiYXJNZW51TW9kdWxlIH0gZnJvbSBcIi4uLy4uL3Rvb2xiYXIvbWVudS90cnUtdG9vbGJhci1tZW51LW1vZHVsZVwiO1xyXG5pbXBvcnQgeyBUcnVUb29sYmFyRHJvcGRvd25Nb2R1bGUgfSBmcm9tIFwiLi4vLi4vdG9vbGJhci9kcm9wZG93bi90cnUtdG9vbGJhci1kcm9wZG93bi1tb2R1bGVcIjtcclxuaW1wb3J0IHsgVHJ1VG9vbGJhclNlcGFyYXRvck1vZHVsZSB9IGZyb20gXCIuLi8uLi90b29sYmFyL3NlcGFyYXRvci90cnUtdG9vbGJhci1zZXBhcmF0b3ItbW9kdWxlXCI7XHJcbmltcG9ydCB7IFRydVRvb2xiYXJDb250ZXh0RmlsdGVyTW9kdWxlIH0gZnJvbSBcIi4uLy4uL3Rvb2xiYXIvY29udGV4dC1maWx0ZXIvdHJ1LXRvb2xiYXItY29udGV4dC1maWx0ZXItbW9kdWxlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1RydURlc2t0b3BNZW51YmFyXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFRydVRvb2xiYXJNb2R1bGUsXHJcbiAgICBUcnVUb29sYmFyTWVudU1vZHVsZSxcclxuICAgIFRydVRvb2xiYXJEcm9wZG93bk1vZHVsZSxcclxuICAgIFRydVRvb2xiYXJTZXBhcmF0b3JNb2R1bGUsXHJcbiAgICBUcnVUb29sYmFyQ29udGV4dEZpbHRlck1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1RydURlc2t0b3BNZW51YmFyXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1RGVza3RvcE1lbnViYXJNb2R1bGUgeyB9XHJcbiJdfQ==
@@ -0,0 +1,29 @@
1
+ import { Component, Input, ViewEncapsulation } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "../../toolbar/tru-toolbar";
5
+ import * as i3 from "../../toolbar/menu/tru-toolbar-menu";
6
+ import * as i4 from "../../toolbar/separator/tru-toolbar-separator";
7
+ import * as i5 from "../../toolbar/context-filter/tru-toolbar-context-filter";
8
+ export class TruDesktopMenubar {
9
+ constructor() {
10
+ this.options = null;
11
+ this.configs = null;
12
+ this.openWindow = (event, windowOverrides) => {
13
+ this.desktopCtrl.openWindow(windowOverrides);
14
+ };
15
+ }
16
+ ngOnInit() {
17
+ this.options = this.desktopCtrl.getOptions();
18
+ this.configs = this.options.menubarConfig;
19
+ }
20
+ }
21
+ TruDesktopMenubar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopMenubar, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
+ TruDesktopMenubar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: TruDesktopMenubar, selector: "tru-desktop-menubar", inputs: { desktopCtrl: "desktopCtrl" }, ngImport: i0, template: "<div class=\"desktop-main-menu\">\r\n <tru-toolbar>\r\n <tru-toolbar-menu *ngFor=\"let config of configs\" [config]=\"config\"></tru-toolbar-menu>\r\n <tru-toolbar-separator></tru-toolbar-separator>\r\n <tru-toolbar-context-filter></tru-toolbar-context-filter>\r\n </tru-toolbar>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.TruToolbar, selector: "tru-toolbar", inputs: ["config"] }, { kind: "component", type: i3.TruToolbarMenu, selector: "tru-toolbar-menu", inputs: ["config"] }, { kind: "component", type: i4.TruToolbarSeparator, selector: "tru-toolbar-separator" }, { kind: "component", type: i5.TruToolbarContextFilter, selector: "tru-toolbar-context-filter", inputs: ["config"] }], encapsulation: i0.ViewEncapsulation.None });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopMenubar, decorators: [{
24
+ type: Component,
25
+ args: [{ selector: 'tru-desktop-menubar', encapsulation: ViewEncapsulation.None, template: "<div class=\"desktop-main-menu\">\r\n <tru-toolbar>\r\n <tru-toolbar-menu *ngFor=\"let config of configs\" [config]=\"config\"></tru-toolbar-menu>\r\n <tru-toolbar-separator></tru-toolbar-separator>\r\n <tru-toolbar-context-filter></tru-toolbar-context-filter>\r\n </tru-toolbar>\r\n</div>\r\n" }]
26
+ }], ctorParameters: function () { return []; }, propDecorators: { desktopCtrl: [{
27
+ type: Input
28
+ }] } });
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtbWVudWJhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL21lbnViYXIvdHJ1LWRlc2t0b3AtbWVudWJhci50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL21lbnViYXIvdHJ1LWRlc2t0b3AtbWVudWJhci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBUTVFLE1BQU0sT0FBTyxpQkFBaUI7SUFHNUI7UUFFQSxZQUFPLEdBQWUsSUFBSSxDQUFDO1FBQzNCLFlBQU8sR0FBZSxJQUFJLENBQUM7UUFFM0IsZUFBVSxHQUFHLENBQUMsS0FBVSxFQUFFLGVBQW9CLEVBQUUsRUFBRTtZQUNoRCxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMvQyxDQUFDLENBQUM7SUFQYyxDQUFDO0lBU2pCLFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztJQUM1QyxDQUFDOzs4R0FmVSxpQkFBaUI7a0dBQWpCLGlCQUFpQixtR0NSOUIsa1RBT0E7MkZEQ2EsaUJBQWlCO2tCQU43QixTQUFTOytCQUNFLHFCQUFxQixpQkFHaEIsaUJBQWlCLENBQUMsSUFBSTswRUFHNUIsV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndHJ1LWRlc2t0b3AtbWVudWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90cnUtZGVza3RvcC1tZW51YmFyLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90cnUtZGVza3RvcC1tZW51YmFyLmNzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFRydURlc2t0b3BNZW51YmFyIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZGVza3RvcEN0cmw6IGFueTtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG9wdGlvbnM6IGFueSB8IG51bGwgPSBudWxsO1xuICBjb25maWdzOiBhbnkgfCBudWxsID0gbnVsbDtcblxuICBvcGVuV2luZG93ID0gKGV2ZW50OiBhbnksIHdpbmRvd092ZXJyaWRlczogYW55KSA9PiB7XG4gICAgdGhpcy5kZXNrdG9wQ3RybC5vcGVuV2luZG93KHdpbmRvd092ZXJyaWRlcyk7XG4gIH07XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5kZXNrdG9wQ3RybC5nZXRPcHRpb25zKCk7XG4gICAgdGhpcy5jb25maWdzID0gdGhpcy5vcHRpb25zLm1lbnViYXJDb25maWc7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkZXNrdG9wLW1haW4tbWVudVwiPlxyXG4gIDx0cnUtdG9vbGJhcj5cclxuICAgIDx0cnUtdG9vbGJhci1tZW51ICpuZ0Zvcj1cImxldCBjb25maWcgb2YgY29uZmlnc1wiIFtjb25maWddPVwiY29uZmlnXCI+PC90cnUtdG9vbGJhci1tZW51PlxyXG4gICAgPHRydS10b29sYmFyLXNlcGFyYXRvcj48L3RydS10b29sYmFyLXNlcGFyYXRvcj5cclxuICAgIDx0cnUtdG9vbGJhci1jb250ZXh0LWZpbHRlcj48L3RydS10b29sYmFyLWNvbnRleHQtZmlsdGVyPlxyXG4gIDwvdHJ1LXRvb2xiYXI+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,136 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class TruDesktopService {
4
+ constructor() {
5
+ /**
6
+ * @tru.doc function
7
+ * @name DesktopService.createDesktop
8
+ * @module tru.desktop
9
+ *
10
+ * @description
11
+ * Creates a new desktop instance.
12
+ *
13
+ * @returns {object} Desktop
14
+ */
15
+ this.createDesktop = function () {
16
+ var desktop = new Desktop();
17
+ return desktop;
18
+ };
19
+ }
20
+ }
21
+ TruDesktopService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
22
+ TruDesktopService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopService });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopService, decorators: [{
24
+ type: Injectable
25
+ }] });
26
+ /**
27
+ * @tru.desktop.doc class
28
+ * @name DesktopService.Desktop
29
+ * @module tru.desktop
30
+ *
31
+ * @description Desktop defines a logical desktop. Any non-dom properties and elements needed by the desktop should
32
+ * be defined in this class
33
+ *
34
+ */
35
+ export class Desktop {
36
+ constructor() {
37
+ this.options = new DesktopOptions();
38
+ this.windowConfig = new WindowConfig();
39
+ this.viewConfig = new ViewConfig();
40
+ }
41
+ }
42
+ ;
43
+ /**
44
+ * @tru.desktop.doc class
45
+ * @name DesktopService.DesktopOptions
46
+ * @module tru.desktop
47
+ *
48
+ * @description Default DesktopOptions class. DesktopOptions are defined by the application developer and overlaid
49
+ * over this object.
50
+ *
51
+ */
52
+ export class DesktopOptions {
53
+ constructor() {
54
+ this.allowDirtyClose = false;
55
+ this.allowInvalidClose = false;
56
+ this.cancelEditingOnNavigation = false;
57
+ this.canCloseFn = undefined;
58
+ this.canNavigateFn = undefined;
59
+ this.displayViewportDimensions = false;
60
+ this.enableAnimation = true;
61
+ this.enableWindowCascading = true;
62
+ this.logoUrl = undefined;
63
+ this.menubarHeight = 32;
64
+ this.menubarConfig = undefined;
65
+ this.showLaunchMenu = false;
66
+ }
67
+ }
68
+ ;
69
+ /**
70
+ * @tru.desktop.doc class
71
+ * @name DesktopService.WindowConfig
72
+ * @module tru.desktop
73
+ *
74
+ * @description
75
+ * Default configuration object for a window. windowConfig properties can be defined by the application developer and overlaid
76
+ * over this object.
77
+ *
78
+ */
79
+ export class WindowConfig {
80
+ constructor() {
81
+ this.active = true;
82
+ this.bottom = 'auto';
83
+ this.globals = undefined;
84
+ this.height = '400px';
85
+ this.isDirty = false;
86
+ this.isInvalid = false;
87
+ this.left = 0;
88
+ this.maximized = undefined;
89
+ this.minHeight = '200px';
90
+ this.minimized = false;
91
+ this.minWidth = '200px';
92
+ this.outOfBounds = false;
93
+ this.savedPosition = {};
94
+ this.right = 'auto';
95
+ this.scope = undefined;
96
+ this.title = '';
97
+ this.top = 0;
98
+ this.width = '400px';
99
+ this.views = Array();
100
+ this.zIndex = -1;
101
+ this.context = undefined;
102
+ this.isReadOnly = false;
103
+ this.unsubscribes = [];
104
+ this.wasReadOnly = false;
105
+ this.destroy = () => {
106
+ while (this.unsubscribes.length)
107
+ this?.unsubscribes?.shift()?.call();
108
+ this.context = undefined;
109
+ };
110
+ }
111
+ }
112
+ ;
113
+ /**
114
+ * @tru.desktop.doc class
115
+ * @name truDesktopComponent.ViewConfig
116
+ * @module tru.desktop
117
+ *
118
+ * @description
119
+ * Default configuration object for a view. viewConfig properties can be defined by the application developer and overlaid
120
+ * over this object.
121
+ *
122
+ */
123
+ export class ViewConfig {
124
+ constructor() {
125
+ this.active = true;
126
+ this.entities = undefined;
127
+ this.entityIndex = 0;
128
+ this.isDirty = false;
129
+ this.isEditing = false;
130
+ this.isInvalid = false;
131
+ this.componentName = undefined;
132
+ this.windowConfig = null;
133
+ }
134
+ }
135
+ ;
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3Atc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL3NlcnZpY2VzL3RydS1kZXNrdG9wLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBd0IsTUFBTSxlQUFlLENBQUM7O0FBR2pFLE1BQU0sT0FBTyxpQkFBaUI7SUFEOUI7UUFFRTs7Ozs7Ozs7O1dBU0c7UUFDSSxrQkFBYSxHQUFHO1lBQ3JCLElBQUksT0FBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7WUFDNUIsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQyxDQUFBO0tBQ0Y7OzhHQWZZLGlCQUFpQjtrSEFBakIsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVU7O0FBbUJYOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxPQUFPLE9BQU87SUFBcEI7UUFDRSxZQUFPLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUMvQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbEMsZUFBVSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7SUFDaEMsQ0FBQztDQUFBO0FBQUEsQ0FBQztBQUVGOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxPQUFPLGNBQWM7SUFBM0I7UUFDRSxvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUN4QixzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFDMUIsOEJBQXlCLEdBQUcsS0FBSyxDQUFDO1FBQ2xDLGVBQVUsR0FBRyxTQUFTLENBQUM7UUFDdkIsa0JBQWEsR0FBRyxTQUFTLENBQUM7UUFDMUIsOEJBQXlCLEdBQUcsS0FBSyxDQUFDO1FBQ2xDLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLDBCQUFxQixHQUFHLElBQUksQ0FBQztRQUM3QixZQUFPLEdBQUcsU0FBUyxDQUFDO1FBQ3BCLGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBQ25CLGtCQUFhLEdBQUcsU0FBUyxDQUFDO1FBQzFCLG1CQUFjLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7Q0FBQTtBQUFBLENBQUM7QUFHRjs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLE9BQU8sWUFBWTtJQUF6QjtRQUNFLFdBQU0sR0FBRyxJQUFJLENBQUM7UUFDZCxXQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ2hCLFlBQU8sR0FBRyxTQUFTLENBQUM7UUFDcEIsV0FBTSxHQUFHLE9BQU8sQ0FBQztRQUNqQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsU0FBSSxHQUFHLENBQUMsQ0FBQztRQUNULGNBQVMsR0FBRyxTQUFTLENBQUM7UUFDdEIsY0FBUyxHQUFHLE9BQU8sQ0FBQztRQUNwQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGFBQVEsR0FBRyxPQUFPLENBQUM7UUFDbkIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFDbkIsVUFBSyxHQUFHLE1BQU0sQ0FBQztRQUNmLFVBQUssR0FBRyxTQUFTLENBQUM7UUFDbEIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLFFBQUcsR0FBRyxDQUFDLENBQUM7UUFDUixVQUFLLEdBQUcsT0FBTyxDQUFDO1FBQ2hCLFVBQUssR0FBRyxLQUFLLEVBQWMsQ0FBQztRQUM1QixXQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDWixZQUFPLEdBQW9CLFNBQVMsQ0FBQztRQUNyQyxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGlCQUFZLEdBQWUsRUFBRSxDQUFDO1FBQzlCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRXBCLFlBQU8sR0FBRyxHQUFHLEVBQUU7WUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTTtnQkFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDO1lBQ3JFLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDO1FBQzNCLENBQUMsQ0FBQTtJQUNILENBQUM7Q0FBQTtBQUFBLENBQUM7QUFFRjs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLE9BQU8sVUFBVTtJQUF2QjtRQUNFLFdBQU0sR0FBRyxJQUFJLENBQUM7UUFDZCxhQUFRLEdBQUcsU0FBUyxDQUFDO1FBQ3JCLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGtCQUFhLEdBQUcsU0FBUyxDQUFDO1FBQzFCLGlCQUFZLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7Q0FBQTtBQUFBLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgVHJ1RGVza3RvcFNlcnZpY2Uge1xyXG4gIC8qKlxyXG4gICAqIEB0cnUuZG9jIGZ1bmN0aW9uXHJcbiAgICogQG5hbWUgRGVza3RvcFNlcnZpY2UuY3JlYXRlRGVza3RvcFxyXG4gICAqIEBtb2R1bGUgdHJ1LmRlc2t0b3BcclxuICAgKlxyXG4gICAqIEBkZXNjcmlwdGlvblxyXG4gICAqIENyZWF0ZXMgYSBuZXcgZGVza3RvcCBpbnN0YW5jZS5cclxuICAgKlxyXG4gICAqIEByZXR1cm5zIHtvYmplY3R9IERlc2t0b3BcclxuICAgKi9cclxuICBwdWJsaWMgY3JlYXRlRGVza3RvcCA9IGZ1bmN0aW9uICgpIHtcclxuICAgIHZhciBkZXNrdG9wID0gbmV3IERlc2t0b3AoKTtcclxuICAgIHJldHVybiBkZXNrdG9wO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBAdHJ1LmRlc2t0b3AuZG9jIGNsYXNzXHJcbiAqIEBuYW1lIERlc2t0b3BTZXJ2aWNlLkRlc2t0b3BcclxuICogQG1vZHVsZSB0cnUuZGVza3RvcFxyXG4gKlxyXG4gKiBAZGVzY3JpcHRpb24gRGVza3RvcCBkZWZpbmVzIGEgbG9naWNhbCBkZXNrdG9wLiAgQW55IG5vbi1kb20gcHJvcGVydGllcyBhbmQgZWxlbWVudHMgbmVlZGVkIGJ5IHRoZSBkZXNrdG9wIHNob3VsZFxyXG4gKiBiZSBkZWZpbmVkIGluIHRoaXMgY2xhc3NcclxuICpcclxuICovXHJcbmV4cG9ydCBjbGFzcyBEZXNrdG9wIHtcclxuICBvcHRpb25zID0gbmV3IERlc2t0b3BPcHRpb25zKCk7XHJcbiAgd2luZG93Q29uZmlnID0gbmV3IFdpbmRvd0NvbmZpZygpO1xyXG4gIHZpZXdDb25maWcgPSBuZXcgVmlld0NvbmZpZygpO1xyXG59O1xyXG5cclxuLyoqXHJcbiAqIEB0cnUuZGVza3RvcC5kb2MgY2xhc3NcclxuICogQG5hbWUgRGVza3RvcFNlcnZpY2UuRGVza3RvcE9wdGlvbnNcclxuICogQG1vZHVsZSB0cnUuZGVza3RvcFxyXG4gKlxyXG4gKiBAZGVzY3JpcHRpb24gRGVmYXVsdCBEZXNrdG9wT3B0aW9ucyBjbGFzcy4gIERlc2t0b3BPcHRpb25zIGFyZSBkZWZpbmVkIGJ5IHRoZSBhcHBsaWNhdGlvbiBkZXZlbG9wZXIgYW5kIG92ZXJsYWlkXHJcbiAqIG92ZXIgdGhpcyBvYmplY3QuXHJcbiAqXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgRGVza3RvcE9wdGlvbnMge1xyXG4gIGFsbG93RGlydHlDbG9zZSA9IGZhbHNlO1xyXG4gIGFsbG93SW52YWxpZENsb3NlID0gZmFsc2U7XHJcbiAgY2FuY2VsRWRpdGluZ09uTmF2aWdhdGlvbiA9IGZhbHNlO1xyXG4gIGNhbkNsb3NlRm4gPSB1bmRlZmluZWQ7XHJcbiAgY2FuTmF2aWdhdGVGbiA9IHVuZGVmaW5lZDtcclxuICBkaXNwbGF5Vmlld3BvcnREaW1lbnNpb25zID0gZmFsc2U7XHJcbiAgZW5hYmxlQW5pbWF0aW9uID0gdHJ1ZTtcclxuICBlbmFibGVXaW5kb3dDYXNjYWRpbmcgPSB0cnVlO1xyXG4gIGxvZ29VcmwgPSB1bmRlZmluZWQ7XHJcbiAgbWVudWJhckhlaWdodCA9IDMyO1xyXG4gIG1lbnViYXJDb25maWcgPSB1bmRlZmluZWQ7XHJcbiAgc2hvd0xhdW5jaE1lbnUgPSBmYWxzZTtcclxufTtcclxuXHJcblxyXG4vKipcclxuICogQHRydS5kZXNrdG9wLmRvYyBjbGFzc1xyXG4gKiBAbmFtZSBEZXNrdG9wU2VydmljZS5XaW5kb3dDb25maWdcclxuICogQG1vZHVsZSB0cnUuZGVza3RvcFxyXG4gKlxyXG4gKiBAZGVzY3JpcHRpb25cclxuICogRGVmYXVsdCBjb25maWd1cmF0aW9uIG9iamVjdCBmb3IgYSB3aW5kb3cuIHdpbmRvd0NvbmZpZyBwcm9wZXJ0aWVzIGNhbiBiZSBkZWZpbmVkIGJ5IHRoZSBhcHBsaWNhdGlvbiBkZXZlbG9wZXIgYW5kIG92ZXJsYWlkXHJcbiAqIG92ZXIgdGhpcyBvYmplY3QuXHJcbiAqXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgV2luZG93Q29uZmlnIHtcclxuICBhY3RpdmUgPSB0cnVlO1xyXG4gIGJvdHRvbSA9ICdhdXRvJztcclxuICBnbG9iYWxzID0gdW5kZWZpbmVkO1xyXG4gIGhlaWdodCA9ICc0MDBweCc7XHJcbiAgaXNEaXJ0eSA9IGZhbHNlO1xyXG4gIGlzSW52YWxpZCA9IGZhbHNlO1xyXG4gIGxlZnQgPSAwO1xyXG4gIG1heGltaXplZCA9IHVuZGVmaW5lZDtcclxuICBtaW5IZWlnaHQgPSAnMjAwcHgnO1xyXG4gIG1pbmltaXplZCA9IGZhbHNlO1xyXG4gIG1pbldpZHRoID0gJzIwMHB4JztcclxuICBvdXRPZkJvdW5kcyA9IGZhbHNlO1xyXG4gIHNhdmVkUG9zaXRpb24gPSB7fTtcclxuICByaWdodCA9ICdhdXRvJztcclxuICBzY29wZSA9IHVuZGVmaW5lZDtcclxuICB0aXRsZSA9ICcnO1xyXG4gIHRvcCA9IDA7XHJcbiAgd2lkdGggPSAnNDAwcHgnO1xyXG4gIHZpZXdzID0gQXJyYXk8Vmlld0NvbmZpZz4oKTtcclxuICB6SW5kZXggPSAtMTtcclxuICBjb250ZXh0OiBhbnkgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbiAgaXNSZWFkT25seSA9IGZhbHNlO1xyXG4gIHVuc3Vic2NyaWJlczogQXJyYXk8YW55PiA9IFtdO1xyXG4gIHdhc1JlYWRPbmx5ID0gZmFsc2U7XHJcblxyXG4gIGRlc3Ryb3kgPSAoKSA9PiB7XHJcbiAgICB3aGlsZSAodGhpcy51bnN1YnNjcmliZXMubGVuZ3RoKSB0aGlzPy51bnN1YnNjcmliZXM/LnNoaWZ0KCk/LmNhbGwoKTtcclxuICAgIHRoaXMuY29udGV4dCA9IHVuZGVmaW5lZDtcclxuICB9XHJcbn07XHJcblxyXG4vKipcclxuICogQHRydS5kZXNrdG9wLmRvYyBjbGFzc1xyXG4gKiBAbmFtZSB0cnVEZXNrdG9wQ29tcG9uZW50LlZpZXdDb25maWdcclxuICogQG1vZHVsZSB0cnUuZGVza3RvcFxyXG4gKlxyXG4gKiBAZGVzY3JpcHRpb25cclxuICogRGVmYXVsdCBjb25maWd1cmF0aW9uIG9iamVjdCBmb3IgYSB2aWV3LiB2aWV3Q29uZmlnIHByb3BlcnRpZXMgY2FuIGJlIGRlZmluZWQgYnkgdGhlIGFwcGxpY2F0aW9uIGRldmVsb3BlciBhbmQgb3ZlcmxhaWRcclxuICogb3ZlciB0aGlzIG9iamVjdC5cclxuICpcclxuICovXHJcbmV4cG9ydCBjbGFzcyBWaWV3Q29uZmlnIHtcclxuICBhY3RpdmUgPSB0cnVlO1xyXG4gIGVudGl0aWVzID0gdW5kZWZpbmVkO1xyXG4gIGVudGl0eUluZGV4ID0gMDtcclxuICBpc0RpcnR5ID0gZmFsc2U7XHJcbiAgaXNFZGl0aW5nID0gZmFsc2U7XHJcbiAgaXNJbnZhbGlkID0gZmFsc2U7XHJcbiAgY29tcG9uZW50TmFtZSA9IHVuZGVmaW5lZDtcclxuICB3aW5kb3dDb25maWcgPSBudWxsO1xyXG59O1xyXG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { FormsModule } from "@angular/forms";
4
+ import { TruDesktopStatusbar } from "./tru-desktop-statusbar";
5
+ import * as i0 from "@angular/core";
6
+ export class TruDesktopStatusbarModule {
7
+ }
8
+ TruDesktopStatusbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopStatusbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ TruDesktopStatusbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopStatusbarModule, declarations: [TruDesktopStatusbar], imports: [CommonModule, FormsModule], exports: [TruDesktopStatusbar] });
10
+ TruDesktopStatusbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopStatusbarModule, imports: [CommonModule, FormsModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopStatusbarModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ declarations: [TruDesktopStatusbar],
15
+ imports: [CommonModule, FormsModule],
16
+ exports: [TruDesktopStatusbar]
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3Atc3RhdHVzYmFyLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL3N0YXR1c2Jhci90cnUtZGVza3RvcC1zdGF0dXNiYXItbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFPOUQsTUFBTSxPQUFPLHlCQUF5Qjs7c0hBQXpCLHlCQUF5Qjt1SEFBekIseUJBQXlCLGlCQUpyQixtQkFBbUIsYUFDeEIsWUFBWSxFQUFFLFdBQVcsYUFDekIsbUJBQW1CO3VIQUVsQix5QkFBeUIsWUFIMUIsWUFBWSxFQUFFLFdBQVc7MkZBR3hCLHlCQUF5QjtrQkFMckMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztvQkFDbkMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFdBQVcsQ0FBQztvQkFDcEMsT0FBTyxFQUFFLENBQUMsbUJBQW1CLENBQUM7aUJBQy9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcblxyXG5pbXBvcnQgeyBUcnVEZXNrdG9wU3RhdHVzYmFyIH0gZnJvbSBcIi4vdHJ1LWRlc2t0b3Atc3RhdHVzYmFyXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1RydURlc2t0b3BTdGF0dXNiYXJdLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlXSxcclxuICBleHBvcnRzOiBbVHJ1RGVza3RvcFN0YXR1c2Jhcl1cclxufSlcclxuZXhwb3J0IGNsYXNzIFRydURlc2t0b3BTdGF0dXNiYXJNb2R1bGUgeyB9XHJcbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class TruDesktopStatusbar {
4
+ constructor() {
5
+ this.label = ''; //this.contextFilter.label();
6
+ }
7
+ ngOnInit() {
8
+ }
9
+ }
10
+ TruDesktopStatusbar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopStatusbar, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
+ TruDesktopStatusbar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: TruDesktopStatusbar, selector: "tru-desktop-statusbar", inputs: { desktopCtrl: "desktopCtrl" }, ngImport: i0, template: "<div class=\"desktop-window-statusbar\" data-ng-class=\"{'desktop-window-maximized': window.maximized, 'desktop-window-opacity': !window.active}\">\r\n <div class=\"desktop-window-statusbar-container\">\r\n <div class=\"desktop-window-statusbar-context-filter-container\">\r\n <p class=\"desktop-window-statusbar-context-filter-container-text\">{{label}}</p>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".desktop-window-statusbar{position:absolute!important;left:0;right:0;bottom:0;height:23px;background:#006dcc;border-bottom-left-radius:0;border-bottom-right-radius:0;border-top:1px solid #e7e7e7}.desktop-window-statusbar-container{position:absolute;top:1px;left:2px;right:0}.desktop-window-statusbar-context-filter-container{float:right;color:#fff;font-weight:700;line-height:8px;margin-right:5px}.desktop-window-statusbar-context-filter-container-text{line-height:1.5;cursor:default}\n"] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopStatusbar, decorators: [{
13
+ type: Component,
14
+ args: [{ selector: 'tru-desktop-statusbar', template: "<div class=\"desktop-window-statusbar\" data-ng-class=\"{'desktop-window-maximized': window.maximized, 'desktop-window-opacity': !window.active}\">\r\n <div class=\"desktop-window-statusbar-container\">\r\n <div class=\"desktop-window-statusbar-context-filter-container\">\r\n <p class=\"desktop-window-statusbar-context-filter-container-text\">{{label}}</p>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".desktop-window-statusbar{position:absolute!important;left:0;right:0;bottom:0;height:23px;background:#006dcc;border-bottom-left-radius:0;border-bottom-right-radius:0;border-top:1px solid #e7e7e7}.desktop-window-statusbar-container{position:absolute;top:1px;left:2px;right:0}.desktop-window-statusbar-context-filter-container{float:right;color:#fff;font-weight:700;line-height:8px;margin-right:5px}.desktop-window-statusbar-context-filter-container-text{line-height:1.5;cursor:default}\n"] }]
15
+ }], ctorParameters: function () { return []; }, propDecorators: { desktopCtrl: [{
16
+ type: Input
17
+ }] } });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3Atc3RhdHVzYmFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL2Rlc2t0b3Avc3RhdHVzYmFyL3RydS1kZXNrdG9wLXN0YXR1c2Jhci50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL3N0YXR1c2Jhci90cnUtZGVza3RvcC1zdGF0dXNiYXIuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPekQsTUFBTSxPQUFPLG1CQUFtQjtJQUs5QjtRQUNFLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUEsNkJBQTZCO0lBQy9DLENBQUM7SUFFRCxRQUFRO0lBRVIsQ0FBQzs7Z0hBWFUsbUJBQW1CO29HQUFuQixtQkFBbUIscUdDUGhDLHlaQU9BOzJGREFhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSx1QkFBdUI7MEVBS3hCLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndHJ1LWRlc2t0b3Atc3RhdHVzYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RydS1kZXNrdG9wLXN0YXR1c2Jhci5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdHJ1LWRlc2t0b3Atc3RhdHVzYmFyLmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRydURlc2t0b3BTdGF0dXNiYXIgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBkZXNrdG9wQ3RybDogYW55O1xuXG4gIGxhYmVsOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5sYWJlbCA9ICcnOy8vdGhpcy5jb250ZXh0RmlsdGVyLmxhYmVsKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcblxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZGVza3RvcC13aW5kb3ctc3RhdHVzYmFyXCIgZGF0YS1uZy1jbGFzcz1cInsnZGVza3RvcC13aW5kb3ctbWF4aW1pemVkJzogd2luZG93Lm1heGltaXplZCwgJ2Rlc2t0b3Atd2luZG93LW9wYWNpdHknOiAhd2luZG93LmFjdGl2ZX1cIj5cclxuICA8ZGl2IGNsYXNzPVwiZGVza3RvcC13aW5kb3ctc3RhdHVzYmFyLWNvbnRhaW5lclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImRlc2t0b3Atd2luZG93LXN0YXR1c2Jhci1jb250ZXh0LWZpbHRlci1jb250YWluZXJcIj5cclxuICAgICAgPHAgY2xhc3M9XCJkZXNrdG9wLXdpbmRvdy1zdGF0dXNiYXItY29udGV4dC1maWx0ZXItY29udGFpbmVyLXRleHRcIj57e2xhYmVsfX08L3A+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -0,0 +1,21 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { FormsModule } from "@angular/forms";
4
+ import { TruDesktopTaskbar } from "./tru-desktop-taskbar";
5
+ import { TruToolbarButtonModule } from "../../toolbar/button/tru-toolbar-button-module";
6
+ import { MatIconModule } from "@angular/material/icon";
7
+ import * as i0 from "@angular/core";
8
+ export class TruDesktopTaskbarModule {
9
+ }
10
+ TruDesktopTaskbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopTaskbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ TruDesktopTaskbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopTaskbarModule, declarations: [TruDesktopTaskbar], imports: [CommonModule, FormsModule, TruToolbarButtonModule, MatIconModule], exports: [TruDesktopTaskbar] });
12
+ TruDesktopTaskbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopTaskbarModule, imports: [CommonModule, FormsModule, TruToolbarButtonModule, MatIconModule] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopTaskbarModule, decorators: [{
14
+ type: NgModule,
15
+ args: [{
16
+ declarations: [TruDesktopTaskbar],
17
+ imports: [CommonModule, FormsModule, TruToolbarButtonModule, MatIconModule],
18
+ exports: [TruDesktopTaskbar]
19
+ }]
20
+ }] });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtdGFza2Jhci1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvZGVza3RvcC90YXNrYmFyL3RydS1kZXNrdG9wLXRhc2tiYXItbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBT3ZELE1BQU0sT0FBTyx1QkFBdUI7O29IQUF2Qix1QkFBdUI7cUhBQXZCLHVCQUF1QixpQkFKbkIsaUJBQWlCLGFBQ3RCLFlBQVksRUFBRSxXQUFXLEVBQUUsc0JBQXNCLEVBQUUsYUFBYSxhQUNoRSxpQkFBaUI7cUhBRWhCLHVCQUF1QixZQUh4QixZQUFZLEVBQUUsV0FBVyxFQUFFLHNCQUFzQixFQUFFLGFBQWE7MkZBRy9ELHVCQUF1QjtrQkFMbkMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztvQkFDakMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxzQkFBc0IsRUFBRSxhQUFhLENBQUM7b0JBQzNFLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuaW1wb3J0IHsgVHJ1RGVza3RvcFRhc2tiYXIgfSBmcm9tIFwiLi90cnUtZGVza3RvcC10YXNrYmFyXCI7XHJcbmltcG9ydCB7IFRydVRvb2xiYXJCdXR0b25Nb2R1bGUgfSBmcm9tIFwiLi4vLi4vdG9vbGJhci9idXR0b24vdHJ1LXRvb2xiYXItYnV0dG9uLW1vZHVsZVwiO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2ljb25cIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbVHJ1RGVza3RvcFRhc2tiYXJdLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBUcnVUb29sYmFyQnV0dG9uTW9kdWxlLCBNYXRJY29uTW9kdWxlXSxcclxuICBleHBvcnRzOiBbVHJ1RGVza3RvcFRhc2tiYXJdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVEZXNrdG9wVGFza2Jhck1vZHVsZSB7IH1cclxuIl19
@@ -0,0 +1,40 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@angular/material/icon";
5
+ export class TruDesktopTaskbar {
6
+ constructor() {
7
+ this.options = null;
8
+ this.desktopShown = false;
9
+ this.updateWindowState = (wdw) => {
10
+ if (wdw.active)
11
+ this.desktopCtrl.minimize(wdw);
12
+ else if (!wdw.outOfBounds)
13
+ this.desktopCtrl.restore(wdw);
14
+ else if (wdw.outOfBounds)
15
+ this.desktopCtrl.recover(wdw);
16
+ };
17
+ this.hideShowAll = () => {
18
+ this.desktopShown = this.desktopCtrl.hideShowAll();
19
+ };
20
+ this.close = (e, wdw) => {
21
+ this.desktopCtrl.closeWindow(wdw);
22
+ e.stopPropagation();
23
+ e.preventDefault();
24
+ };
25
+ }
26
+ ngOnInit() {
27
+ this.options = this.desktopCtrl.getOptions();
28
+ }
29
+ }
30
+ TruDesktopTaskbar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopTaskbar, deps: [], target: i0.ɵɵFactoryTarget.Component });
31
+ TruDesktopTaskbar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: TruDesktopTaskbar, selector: "tru-desktop-taskbar", inputs: { windows: "windows", desktopCtrl: "desktopCtrl" }, ngImport: i0, template: "<div class=\"desktop-taskbar-container\">\r\n <div class=\"desktop-taskbar-list\">\r\n <ul>\r\n <li class=\"am-fade-and-scale desktop-text\"\r\n *ngFor=\"let window of windows\"\r\n (click)=\"updateWindowState(window)\">\r\n <div class=\"desktop-relative desktop-taskbar-list-item\" [ngClass]=\"{'desktop-active-taskbar-list-item': window.active, 'desktop-minimized-taskbar-list-item': window.minimized, 'desktop-taskbar-list-item-recover': window.outOfBounds}\">\r\n <div class=\"desktop-taskbar-list-item-title\">\r\n <span>{{window.title}}</span>\r\n </div>\r\n <mat-icon [svgIcon]=\"'tru-toolbar-close-icon'\" class=\"desktop-taskbar-list-item-close-icon\" [ngClass]=\"{'desktop-taskbar-list-item-close-minimized': window.minimized}\" (click)=\"close($event, window)\"></mat-icon>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"desktop-taskbar-hide\">\r\n <div class=\"desktop-taskbar-hide-button\" (click)=\"hideShowAll()\">\r\n\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".desktop-taskbar-container{position:absolute!important;left:0;right:0;bottom:0;height:40px;background:#f8f8f8;border:1px solid #6b6b6b}.desktop-taskbar-launch-menu{position:absolute!important;top:0;left:0;bottom:0;width:50px;background:#f8f8f8;border-right:1px solid #e7e7e7}.desktop-taskbar-launch-button{height:35px;width:43px;background-clip:padding-box;border-radius:6px;border:1px solid #dfdfdf;margin:2px;padding-top:1px;padding-left:5px}.desktop-taskbar-launch-button:active{margin-top:3px;margin-left:3px;outline:0;box-shadow:0 0 10px #0057ff}.desktop-taskbar-list{position:absolute!important;inset:0 16px 0 0;background:#f8f8f8}.desktop-taskbar-list-offset{left:50px}.desktop-taskbar-list ul{padding:3px;margin:0}.desktop-taskbar-list ul>li{display:inline-block;list-style:none;width:165px;height:33px}.desktop-taskbar-list ul>li>div{background-clip:padding-box;border-radius:0;border:1px solid #dfdfdf;line-height:30px;margin-top:1px;margin-left:7px;overflow:hidden}.desktop-taskbar-list ul>li>div:active{top:1px;left:1px}.desktop-taskbar-list li span{position:relative;left:5px;margin-left:5px;text-overflow:ellipsis;font-size:12px;font-weight:700}.desktop-taskbar-list-item-recover{background:maroon!important;color:#fff!important}.desktop-taskbar-list-item-title{width:135px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;cursor:default}.desktop-taskbar-list-item-close{position:absolute;z-index:1;top:11px;right:5px;font-size:9px;color:#333;cursor:pointer}.desktop-taskbar-list-item-close-minimized{color:#bababa}.desktop-taskbar-list-item-close:active{top:10px;right:6px}.desktop-taskbar-list-item-close:hover{color:maroon}.desktop-taskbar-list-item{background-color:#f8f8f8;position:relative}.desktop-taskbar-list-item-close-icon{position:absolute;right:2px;top:5px;height:16px}.desktop-active-taskbar-list-item{outline:0;border:1px solid #6b6b6b!important;box-shadow:inset 0 1px 1px #00000013;color:#333}.desktop-minimized-taskbar-list-item{color:#bababa}.desktop-taskbar-hide{position:absolute!important;top:0;right:0;bottom:0;width:16px;background:#f8f8f8}.desktop-taskbar-hide-button{height:35px;width:12px;background-clip:padding-box;border-radius:0;border:1px solid #dfdfdf;margin:2px}.desktop-taskbar-hide-button:active{margin-top:3px;margin-left:3px;outline:0;box-shadow:0 0 10px #0057ff}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: TruDesktopTaskbar, decorators: [{
33
+ type: Component,
34
+ args: [{ selector: 'tru-desktop-taskbar', template: "<div class=\"desktop-taskbar-container\">\r\n <div class=\"desktop-taskbar-list\">\r\n <ul>\r\n <li class=\"am-fade-and-scale desktop-text\"\r\n *ngFor=\"let window of windows\"\r\n (click)=\"updateWindowState(window)\">\r\n <div class=\"desktop-relative desktop-taskbar-list-item\" [ngClass]=\"{'desktop-active-taskbar-list-item': window.active, 'desktop-minimized-taskbar-list-item': window.minimized, 'desktop-taskbar-list-item-recover': window.outOfBounds}\">\r\n <div class=\"desktop-taskbar-list-item-title\">\r\n <span>{{window.title}}</span>\r\n </div>\r\n <mat-icon [svgIcon]=\"'tru-toolbar-close-icon'\" class=\"desktop-taskbar-list-item-close-icon\" [ngClass]=\"{'desktop-taskbar-list-item-close-minimized': window.minimized}\" (click)=\"close($event, window)\"></mat-icon>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"desktop-taskbar-hide\">\r\n <div class=\"desktop-taskbar-hide-button\" (click)=\"hideShowAll()\">\r\n\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".desktop-taskbar-container{position:absolute!important;left:0;right:0;bottom:0;height:40px;background:#f8f8f8;border:1px solid #6b6b6b}.desktop-taskbar-launch-menu{position:absolute!important;top:0;left:0;bottom:0;width:50px;background:#f8f8f8;border-right:1px solid #e7e7e7}.desktop-taskbar-launch-button{height:35px;width:43px;background-clip:padding-box;border-radius:6px;border:1px solid #dfdfdf;margin:2px;padding-top:1px;padding-left:5px}.desktop-taskbar-launch-button:active{margin-top:3px;margin-left:3px;outline:0;box-shadow:0 0 10px #0057ff}.desktop-taskbar-list{position:absolute!important;inset:0 16px 0 0;background:#f8f8f8}.desktop-taskbar-list-offset{left:50px}.desktop-taskbar-list ul{padding:3px;margin:0}.desktop-taskbar-list ul>li{display:inline-block;list-style:none;width:165px;height:33px}.desktop-taskbar-list ul>li>div{background-clip:padding-box;border-radius:0;border:1px solid #dfdfdf;line-height:30px;margin-top:1px;margin-left:7px;overflow:hidden}.desktop-taskbar-list ul>li>div:active{top:1px;left:1px}.desktop-taskbar-list li span{position:relative;left:5px;margin-left:5px;text-overflow:ellipsis;font-size:12px;font-weight:700}.desktop-taskbar-list-item-recover{background:maroon!important;color:#fff!important}.desktop-taskbar-list-item-title{width:135px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;cursor:default}.desktop-taskbar-list-item-close{position:absolute;z-index:1;top:11px;right:5px;font-size:9px;color:#333;cursor:pointer}.desktop-taskbar-list-item-close-minimized{color:#bababa}.desktop-taskbar-list-item-close:active{top:10px;right:6px}.desktop-taskbar-list-item-close:hover{color:maroon}.desktop-taskbar-list-item{background-color:#f8f8f8;position:relative}.desktop-taskbar-list-item-close-icon{position:absolute;right:2px;top:5px;height:16px}.desktop-active-taskbar-list-item{outline:0;border:1px solid #6b6b6b!important;box-shadow:inset 0 1px 1px #00000013;color:#333}.desktop-minimized-taskbar-list-item{color:#bababa}.desktop-taskbar-hide{position:absolute!important;top:0;right:0;bottom:0;width:16px;background:#f8f8f8}.desktop-taskbar-hide-button{height:35px;width:12px;background-clip:padding-box;border-radius:0;border:1px solid #dfdfdf;margin:2px}.desktop-taskbar-hide-button:active{margin-top:3px;margin-left:3px;outline:0;box-shadow:0 0 10px #0057ff}\n"] }]
35
+ }], ctorParameters: function () { return []; }, propDecorators: { windows: [{
36
+ type: Input
37
+ }], desktopCtrl: [{
38
+ type: Input
39
+ }] } });
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtdGFza2Jhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL3Rhc2tiYXIvdHJ1LWRlc2t0b3AtdGFza2Jhci50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL3Rhc2tiYXIvdHJ1LWRlc2t0b3AtdGFza2Jhci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7O0FBT3pELE1BQU0sT0FBTyxpQkFBaUI7SUFRNUI7UUFIQSxZQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ2YsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFRckIsc0JBQWlCLEdBQUcsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUMvQixJQUFJLEdBQUcsQ0FBQyxNQUFNO2dCQUNaLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2lCQUM1QixJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVc7Z0JBQ3ZCLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2lCQUMzQixJQUFJLEdBQUcsQ0FBQyxXQUFXO2dCQUN0QixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUM7UUFFRixnQkFBVyxHQUFHLEdBQUcsRUFBRTtZQUNqQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckQsQ0FBQyxDQUFDO1FBRUYsVUFBSyxHQUFHLENBQUMsQ0FBTSxFQUFFLEdBQVEsRUFBRSxFQUFFO1lBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2xDLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNwQixDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDO0lBdkJjLENBQUM7SUFFakIsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUMvQyxDQUFDOzs4R0FaVSxpQkFBaUI7a0dBQWpCLGlCQUFpQix1SENQOUIsdWpDQXFCQTsyRkRkYSxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0UscUJBQXFCOzBFQU10QixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd0cnUtZGVza3RvcC10YXNrYmFyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHJ1LWRlc2t0b3AtdGFza2Jhci5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90cnUtZGVza3RvcC10YXNrYmFyLmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVEZXNrdG9wVGFza2JhciBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIHdpbmRvd3M6IGFueTtcclxuICBASW5wdXQoKSBkZXNrdG9wQ3RybDogYW55O1xyXG5cclxuICBvcHRpb25zID0gbnVsbDtcclxuICBkZXNrdG9wU2hvd24gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmRlc2t0b3BDdHJsLmdldE9wdGlvbnMoKTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZVdpbmRvd1N0YXRlID0gKHdkdzogYW55KSA9PiB7XHJcbiAgICBpZiAod2R3LmFjdGl2ZSlcclxuICAgICAgdGhpcy5kZXNrdG9wQ3RybC5taW5pbWl6ZSh3ZHcpO1xyXG4gICAgZWxzZSBpZiAoIXdkdy5vdXRPZkJvdW5kcylcclxuICAgICAgdGhpcy5kZXNrdG9wQ3RybC5yZXN0b3JlKHdkdyk7XHJcbiAgICBlbHNlIGlmICh3ZHcub3V0T2ZCb3VuZHMpXHJcbiAgICAgIHRoaXMuZGVza3RvcEN0cmwucmVjb3Zlcih3ZHcpO1xyXG4gIH07XHJcblxyXG4gIGhpZGVTaG93QWxsID0gKCkgPT4ge1xyXG4gICAgdGhpcy5kZXNrdG9wU2hvd24gPSB0aGlzLmRlc2t0b3BDdHJsLmhpZGVTaG93QWxsKCk7XHJcbiAgfTtcclxuXHJcbiAgY2xvc2UgPSAoZTogYW55LCB3ZHc6IGFueSkgPT4ge1xyXG4gICAgdGhpcy5kZXNrdG9wQ3RybC5jbG9zZVdpbmRvdyh3ZHcpO1xyXG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICB9O1xyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJkZXNrdG9wLXRhc2tiYXItY29udGFpbmVyXCI+XHJcbiAgPGRpdiBjbGFzcz1cImRlc2t0b3AtdGFza2Jhci1saXN0XCI+XHJcbiAgICA8dWw+XHJcbiAgICAgIDxsaSBjbGFzcz1cImFtLWZhZGUtYW5kLXNjYWxlIGRlc2t0b3AtdGV4dFwiXHJcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgd2luZG93IG9mIHdpbmRvd3NcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cInVwZGF0ZVdpbmRvd1N0YXRlKHdpbmRvdylcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVza3RvcC1yZWxhdGl2ZSBkZXNrdG9wLXRhc2tiYXItbGlzdC1pdGVtXCIgW25nQ2xhc3NdPVwieydkZXNrdG9wLWFjdGl2ZS10YXNrYmFyLWxpc3QtaXRlbSc6IHdpbmRvdy5hY3RpdmUsICdkZXNrdG9wLW1pbmltaXplZC10YXNrYmFyLWxpc3QtaXRlbSc6IHdpbmRvdy5taW5pbWl6ZWQsICdkZXNrdG9wLXRhc2tiYXItbGlzdC1pdGVtLXJlY292ZXInOiB3aW5kb3cub3V0T2ZCb3VuZHN9XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVza3RvcC10YXNrYmFyLWxpc3QtaXRlbS10aXRsZVwiPlxyXG4gICAgICAgICAgICA8c3Bhbj57e3dpbmRvdy50aXRsZX19PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8bWF0LWljb24gW3N2Z0ljb25dPVwiJ3RydS10b29sYmFyLWNsb3NlLWljb24nXCIgY2xhc3M9XCJkZXNrdG9wLXRhc2tiYXItbGlzdC1pdGVtLWNsb3NlLWljb25cIiBbbmdDbGFzc109XCJ7J2Rlc2t0b3AtdGFza2Jhci1saXN0LWl0ZW0tY2xvc2UtbWluaW1pemVkJzogd2luZG93Lm1pbmltaXplZH1cIiAoY2xpY2spPVwiY2xvc2UoJGV2ZW50LCB3aW5kb3cpXCI+PC9tYXQtaWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9saT5cclxuICAgIDwvdWw+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImRlc2t0b3AtdGFza2Jhci1oaWRlXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZGVza3RvcC10YXNrYmFyLWhpZGUtYnV0dG9uXCIgKGNsaWNrKT1cImhpZGVTaG93QWxsKClcIj5cclxuXHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==