@trudb/tru-common-lib 0.0.625 → 0.0.626
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.
- package/esm2020/lib/components/desktop/tru-desktop.mjs +8 -4
- package/fesm2015/trudb-tru-common-lib.mjs +67 -64
- package/fesm2015/trudb-tru-common-lib.mjs.map +1 -1
- package/fesm2020/trudb-tru-common-lib.mjs +67 -64
- package/fesm2020/trudb-tru-common-lib.mjs.map +1 -1
- package/lib/components/desktop/tru-desktop.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Directive, Input, Injectable, Component, Inject, HostListener, NgModule, EventEmitter, ViewEncapsulation, Output, APP_INITIALIZER, InjectionToken } from '@angular/core';
|
|
2
|
+
import { Directive, Input, Injectable, Component, Inject, HostListener, NgModule, EventEmitter, ViewEncapsulation, Output, APP_INITIALIZER, ViewChildren, InjectionToken } from '@angular/core';
|
|
3
3
|
import { EntityAspect, MetadataStore, EntityManager, DataService, EntityQuery, Predicate, FetchStrategy, EntityState, EntityAction, BinaryPredicate, AndOrPredicate, breeze } from 'breeze-client';
|
|
4
4
|
import { BehaviorSubject, defer, from, of, Subject, Observable, skip, forkJoin, throwError } from 'rxjs';
|
|
5
5
|
import * as _ from 'underscore';
|
|
@@ -3757,67 +3757,6 @@ class WindowConfig {
|
|
|
3757
3757
|
}
|
|
3758
3758
|
;
|
|
3759
3759
|
|
|
3760
|
-
class TruDesktopMenubar {
|
|
3761
|
-
constructor(contextFilters) {
|
|
3762
|
-
this.contextFilters = contextFilters;
|
|
3763
|
-
this.options = null;
|
|
3764
|
-
this.configs = null;
|
|
3765
|
-
this.filters = [];
|
|
3766
|
-
this.openWindow = (event, windowOverrides) => {
|
|
3767
|
-
this.desktopCtrl.openWindow(windowOverrides);
|
|
3768
|
-
};
|
|
3769
|
-
}
|
|
3770
|
-
ngOnInit() {
|
|
3771
|
-
this.options = this.desktopCtrl.getOptions();
|
|
3772
|
-
this.configs = this.options.menubarConfig;
|
|
3773
|
-
this.filters = this.contextFilters.filters;
|
|
3774
|
-
}
|
|
3775
|
-
}
|
|
3776
|
-
TruDesktopMenubar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktopMenubar, deps: [{ token: TruContextFilters }], target: i0.ɵɵFactoryTarget.Component });
|
|
3777
|
-
TruDesktopMenubar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", 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 *ngIf=\"filters.length\"></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$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TruToolbar, selector: "tru-toolbar", inputs: ["config"] }, { kind: "component", type: TruToolbarMenu, selector: "tru-toolbar-menu", inputs: ["config"] }, { kind: "component", type: TruToolbarSeparator, selector: "tru-toolbar-separator" }, { kind: "component", type: TruToolbarContextFilter, selector: "tru-toolbar-context-filter" }], encapsulation: i0.ViewEncapsulation.None });
|
|
3778
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktopMenubar, decorators: [{
|
|
3779
|
-
type: Component,
|
|
3780
|
-
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 *ngIf=\"filters.length\"></tru-toolbar-separator>\r\n <tru-toolbar-context-filter></tru-toolbar-context-filter>\r\n </tru-toolbar>\r\n</div>\r\n" }]
|
|
3781
|
-
}], ctorParameters: function () { return [{ type: TruContextFilters }]; }, propDecorators: { desktopCtrl: [{
|
|
3782
|
-
type: Input
|
|
3783
|
-
}] } });
|
|
3784
|
-
|
|
3785
|
-
class TruDesktopTaskbar {
|
|
3786
|
-
constructor() {
|
|
3787
|
-
this.options = null;
|
|
3788
|
-
this.desktopShown = false;
|
|
3789
|
-
this.updateWindowState = (wdw) => {
|
|
3790
|
-
if (wdw.active)
|
|
3791
|
-
this.desktopCtrl.minimize(wdw);
|
|
3792
|
-
else if (!wdw.outOfBounds)
|
|
3793
|
-
this.desktopCtrl.restore(wdw);
|
|
3794
|
-
else if (wdw.outOfBounds)
|
|
3795
|
-
this.desktopCtrl.recover(wdw);
|
|
3796
|
-
};
|
|
3797
|
-
this.hideShowAll = () => {
|
|
3798
|
-
this.desktopShown = this.desktopCtrl.hideShowAll();
|
|
3799
|
-
};
|
|
3800
|
-
this.close = (e, wdw) => {
|
|
3801
|
-
this.desktopCtrl.closeWindow(wdw);
|
|
3802
|
-
e.stopPropagation();
|
|
3803
|
-
e.preventDefault();
|
|
3804
|
-
};
|
|
3805
|
-
}
|
|
3806
|
-
ngOnInit() {
|
|
3807
|
-
this.options = this.desktopCtrl.getOptions();
|
|
3808
|
-
}
|
|
3809
|
-
}
|
|
3810
|
-
TruDesktopTaskbar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktopTaskbar, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3811
|
-
TruDesktopTaskbar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", 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$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
|
|
3812
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktopTaskbar, decorators: [{
|
|
3813
|
-
type: Component,
|
|
3814
|
-
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"] }]
|
|
3815
|
-
}], ctorParameters: function () { return []; }, propDecorators: { windows: [{
|
|
3816
|
-
type: Input
|
|
3817
|
-
}], desktopCtrl: [{
|
|
3818
|
-
type: Input
|
|
3819
|
-
}] } });
|
|
3820
|
-
|
|
3821
3760
|
class TruDesktopResizable {
|
|
3822
3761
|
constructor(elementRef) {
|
|
3823
3762
|
this.elementRef = elementRef;
|
|
@@ -4400,6 +4339,67 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
4400
4339
|
type: Input
|
|
4401
4340
|
}] } });
|
|
4402
4341
|
|
|
4342
|
+
class TruDesktopMenubar {
|
|
4343
|
+
constructor(contextFilters) {
|
|
4344
|
+
this.contextFilters = contextFilters;
|
|
4345
|
+
this.options = null;
|
|
4346
|
+
this.configs = null;
|
|
4347
|
+
this.filters = [];
|
|
4348
|
+
this.openWindow = (event, windowOverrides) => {
|
|
4349
|
+
this.desktopCtrl.openWindow(windowOverrides);
|
|
4350
|
+
};
|
|
4351
|
+
}
|
|
4352
|
+
ngOnInit() {
|
|
4353
|
+
this.options = this.desktopCtrl.getOptions();
|
|
4354
|
+
this.configs = this.options.menubarConfig;
|
|
4355
|
+
this.filters = this.contextFilters.filters;
|
|
4356
|
+
}
|
|
4357
|
+
}
|
|
4358
|
+
TruDesktopMenubar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktopMenubar, deps: [{ token: TruContextFilters }], target: i0.ɵɵFactoryTarget.Component });
|
|
4359
|
+
TruDesktopMenubar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", 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 *ngIf=\"filters.length\"></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$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TruToolbar, selector: "tru-toolbar", inputs: ["config"] }, { kind: "component", type: TruToolbarMenu, selector: "tru-toolbar-menu", inputs: ["config"] }, { kind: "component", type: TruToolbarSeparator, selector: "tru-toolbar-separator" }, { kind: "component", type: TruToolbarContextFilter, selector: "tru-toolbar-context-filter" }], encapsulation: i0.ViewEncapsulation.None });
|
|
4360
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktopMenubar, decorators: [{
|
|
4361
|
+
type: Component,
|
|
4362
|
+
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 *ngIf=\"filters.length\"></tru-toolbar-separator>\r\n <tru-toolbar-context-filter></tru-toolbar-context-filter>\r\n </tru-toolbar>\r\n</div>\r\n" }]
|
|
4363
|
+
}], ctorParameters: function () { return [{ type: TruContextFilters }]; }, propDecorators: { desktopCtrl: [{
|
|
4364
|
+
type: Input
|
|
4365
|
+
}] } });
|
|
4366
|
+
|
|
4367
|
+
class TruDesktopTaskbar {
|
|
4368
|
+
constructor() {
|
|
4369
|
+
this.options = null;
|
|
4370
|
+
this.desktopShown = false;
|
|
4371
|
+
this.updateWindowState = (wdw) => {
|
|
4372
|
+
if (wdw.active)
|
|
4373
|
+
this.desktopCtrl.minimize(wdw);
|
|
4374
|
+
else if (!wdw.outOfBounds)
|
|
4375
|
+
this.desktopCtrl.restore(wdw);
|
|
4376
|
+
else if (wdw.outOfBounds)
|
|
4377
|
+
this.desktopCtrl.recover(wdw);
|
|
4378
|
+
};
|
|
4379
|
+
this.hideShowAll = () => {
|
|
4380
|
+
this.desktopShown = this.desktopCtrl.hideShowAll();
|
|
4381
|
+
};
|
|
4382
|
+
this.close = (e, wdw) => {
|
|
4383
|
+
this.desktopCtrl.closeWindow(wdw);
|
|
4384
|
+
e.stopPropagation();
|
|
4385
|
+
e.preventDefault();
|
|
4386
|
+
};
|
|
4387
|
+
}
|
|
4388
|
+
ngOnInit() {
|
|
4389
|
+
this.options = this.desktopCtrl.getOptions();
|
|
4390
|
+
}
|
|
4391
|
+
}
|
|
4392
|
+
TruDesktopTaskbar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktopTaskbar, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4393
|
+
TruDesktopTaskbar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", 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$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
|
|
4394
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktopTaskbar, decorators: [{
|
|
4395
|
+
type: Component,
|
|
4396
|
+
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"] }]
|
|
4397
|
+
}], ctorParameters: function () { return []; }, propDecorators: { windows: [{
|
|
4398
|
+
type: Input
|
|
4399
|
+
}], desktopCtrl: [{
|
|
4400
|
+
type: Input
|
|
4401
|
+
}] } });
|
|
4402
|
+
|
|
4403
4403
|
class TruDesktopViewport {
|
|
4404
4404
|
constructor(elementRef) {
|
|
4405
4405
|
this.elementRef = elementRef;
|
|
@@ -5193,7 +5193,7 @@ class TruDesktop {
|
|
|
5193
5193
|
window.addEventListener('keydown', this.onKeyDown);
|
|
5194
5194
|
window.addEventListener('keyup', this.onKeyUp);
|
|
5195
5195
|
window.onbeforeunload = (e) => {
|
|
5196
|
-
let hasChanges = this.
|
|
5196
|
+
let hasChanges = this.windowComponents.filter((w) => { return w.hasChanges() ? true : false; });
|
|
5197
5197
|
if (hasChanges.length) {
|
|
5198
5198
|
e = e || window.event;
|
|
5199
5199
|
var msg = this.textManager.msgConfirmExitWithChangesPending;
|
|
@@ -5213,12 +5213,15 @@ class TruDesktop {
|
|
|
5213
5213
|
}
|
|
5214
5214
|
}
|
|
5215
5215
|
TruDesktop.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktop, deps: [{ token: TruDesktopService }, { token: TruTextManager }, { token: TruWindowEventHandler }], target: i0.ɵɵFactoryTarget.Component });
|
|
5216
|
-
TruDesktop.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: TruDesktop, selector: "tru-desktop", inputs: { options: "options" }, providers: [TruDesktopService], ngImport: i0, template: "<div class=\"desktop-wrapper\">\r\n\r\n <div class=\"desktop-menubar-container\" [ngStyle]=\"{'height': options.menubarHeight + 'px'}\">\r\n <tru-desktop-menubar [desktopCtrl]=\"this\"></tru-desktop-menubar>\r\n </div>\r\n\r\n <tru-desktop-viewport [windows]=\"windows\" [desktopCtrl]=\"this\"></tru-desktop-viewport>\r\n\r\n <tru-desktop-taskbar [windows]=\"windows\" [desktopCtrl]=\"this\"></tru-desktop-taskbar>\r\n\r\n <img class=\"desktop-viewport-logo\" data-ng-show=\"logoUrl\" alt=\"\">\r\n</div>\r\n", styles: ["body{-webkit-user-select:none;user-select:none}input,textarea{-moz-user-select:text}.desktop-text{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);font-size:14px;line-height:1;color:#333}.desktop-wrapper{position:absolute!important;inset:0;background:#ffffff;overflow:hidden}.desktop-relative{position:relative}.desktop-display-none{display:none}.desktop-click-through{pointer-events:none}.desktop-menubar-container{position:absolute!important;top:0;left:0;right:0;height:26px;background:#f8f8f8;border-bottom:1px solid #e7e7e7;padding-left:5px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: TruDesktopMenubar, selector: "tru-desktop-menubar", inputs: ["desktopCtrl"] }, { kind: "component", type: TruDesktopTaskbar, selector: "tru-desktop-taskbar", inputs: ["windows", "desktopCtrl"] }, { kind: "component", type: TruDesktopViewport, selector: "tru-desktop-viewport", inputs: ["windows", "desktopCtrl"] }] });
|
|
5216
|
+
TruDesktop.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: TruDesktop, selector: "tru-desktop", inputs: { options: "options" }, providers: [TruDesktopService], viewQueries: [{ propertyName: "windowComponents", predicate: TruDesktopWindow, descendants: true }], ngImport: i0, template: "<div class=\"desktop-wrapper\">\r\n\r\n <div class=\"desktop-menubar-container\" [ngStyle]=\"{'height': options.menubarHeight + 'px'}\">\r\n <tru-desktop-menubar [desktopCtrl]=\"this\"></tru-desktop-menubar>\r\n </div>\r\n\r\n <tru-desktop-viewport [windows]=\"windows\" [desktopCtrl]=\"this\"></tru-desktop-viewport>\r\n\r\n <tru-desktop-taskbar [windows]=\"windows\" [desktopCtrl]=\"this\"></tru-desktop-taskbar>\r\n\r\n <img class=\"desktop-viewport-logo\" data-ng-show=\"logoUrl\" alt=\"\">\r\n</div>\r\n", styles: ["body{-webkit-user-select:none;user-select:none}input,textarea{-moz-user-select:text}.desktop-text{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);font-size:14px;line-height:1;color:#333}.desktop-wrapper{position:absolute!important;inset:0;background:#ffffff;overflow:hidden}.desktop-relative{position:relative}.desktop-display-none{display:none}.desktop-click-through{pointer-events:none}.desktop-menubar-container{position:absolute!important;top:0;left:0;right:0;height:26px;background:#f8f8f8;border-bottom:1px solid #e7e7e7;padding-left:5px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: TruDesktopMenubar, selector: "tru-desktop-menubar", inputs: ["desktopCtrl"] }, { kind: "component", type: TruDesktopTaskbar, selector: "tru-desktop-taskbar", inputs: ["windows", "desktopCtrl"] }, { kind: "component", type: TruDesktopViewport, selector: "tru-desktop-viewport", inputs: ["windows", "desktopCtrl"] }] });
|
|
5217
5217
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktop, decorators: [{
|
|
5218
5218
|
type: Component,
|
|
5219
5219
|
args: [{ selector: 'tru-desktop', providers: [TruDesktopService], template: "<div class=\"desktop-wrapper\">\r\n\r\n <div class=\"desktop-menubar-container\" [ngStyle]=\"{'height': options.menubarHeight + 'px'}\">\r\n <tru-desktop-menubar [desktopCtrl]=\"this\"></tru-desktop-menubar>\r\n </div>\r\n\r\n <tru-desktop-viewport [windows]=\"windows\" [desktopCtrl]=\"this\"></tru-desktop-viewport>\r\n\r\n <tru-desktop-taskbar [windows]=\"windows\" [desktopCtrl]=\"this\"></tru-desktop-taskbar>\r\n\r\n <img class=\"desktop-viewport-logo\" data-ng-show=\"logoUrl\" alt=\"\">\r\n</div>\r\n", styles: ["body{-webkit-user-select:none;user-select:none}input,textarea{-moz-user-select:text}.desktop-text{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);font-size:14px;line-height:1;color:#333}.desktop-wrapper{position:absolute!important;inset:0;background:#ffffff;overflow:hidden}.desktop-relative{position:relative}.desktop-display-none{display:none}.desktop-click-through{pointer-events:none}.desktop-menubar-container{position:absolute!important;top:0;left:0;right:0;height:26px;background:#f8f8f8;border-bottom:1px solid #e7e7e7;padding-left:5px}\n"] }]
|
|
5220
5220
|
}], ctorParameters: function () { return [{ type: TruDesktopService }, { type: TruTextManager }, { type: TruWindowEventHandler }]; }, propDecorators: { options: [{
|
|
5221
5221
|
type: Input
|
|
5222
|
+
}], windowComponents: [{
|
|
5223
|
+
type: ViewChildren,
|
|
5224
|
+
args: [TruDesktopWindow]
|
|
5222
5225
|
}] } });
|
|
5223
5226
|
|
|
5224
5227
|
class TruDesktopMenubarModule {
|