windows-plus-utilities 0.0.11 → 0.0.13
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/main-menu/components/menu/menu.component.mjs +19 -7
- package/fesm2015/windows-plus-utilities-main-menu.mjs +18 -6
- package/fesm2015/windows-plus-utilities-main-menu.mjs.map +1 -1
- package/fesm2020/windows-plus-utilities-main-menu.mjs +18 -6
- package/fesm2020/windows-plus-utilities-main-menu.mjs.map +1 -1
- package/main-menu/components/menu/menu.component.d.ts +4 -4
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, Input, ViewChild } from '@angular/core';
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
2
|
import { faHome, faSignOutAlt } from '@fortawesome/free-solid-svg-icons';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "@angular/common";
|
|
@@ -17,10 +17,18 @@ export class MenuComponent {
|
|
|
17
17
|
* @description whether the home link should be displayed in the menu
|
|
18
18
|
*/
|
|
19
19
|
this.showHome = true;
|
|
20
|
+
/**
|
|
21
|
+
* @description handles the navigation to the home screen
|
|
22
|
+
*/
|
|
23
|
+
this.navigateToHome = new EventEmitter();
|
|
20
24
|
/**
|
|
21
25
|
* @description whether the log out link button should be displayed in the menu
|
|
22
26
|
*/
|
|
23
27
|
this.showLogOut = true;
|
|
28
|
+
/**
|
|
29
|
+
* @description handles the navigation to the log in screen
|
|
30
|
+
*/
|
|
31
|
+
this.navigateToLogIn = new EventEmitter();
|
|
24
32
|
/**
|
|
25
33
|
* @description the font awesome icon for the sign out button
|
|
26
34
|
*/
|
|
@@ -55,15 +63,19 @@ export class MenuComponent {
|
|
|
55
63
|
'id': 'home',
|
|
56
64
|
'value': 'Home',
|
|
57
65
|
'icon': faHome,
|
|
58
|
-
'handleClick': () => this.navigateToHome()
|
|
66
|
+
'handleClick': () => this.navigateToHome.emit()
|
|
59
67
|
});
|
|
60
68
|
}
|
|
61
69
|
if (this.showLogOut) {
|
|
70
|
+
console.log('Log out set');
|
|
62
71
|
this.actionLinks.push({
|
|
63
72
|
'id': 'log-out',
|
|
64
73
|
'value': 'Log Out',
|
|
65
74
|
'icon': faSignOutAlt,
|
|
66
|
-
'handleClick': () =>
|
|
75
|
+
'handleClick': () => {
|
|
76
|
+
console.log('Log out click');
|
|
77
|
+
this.navigateToLogIn.emit();
|
|
78
|
+
}
|
|
67
79
|
});
|
|
68
80
|
}
|
|
69
81
|
}
|
|
@@ -77,22 +89,22 @@ export class MenuComponent {
|
|
|
77
89
|
}
|
|
78
90
|
}
|
|
79
91
|
MenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
80
|
-
MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: MenuComponent, selector: "wp-menu", inputs: { showHome: "showHome",
|
|
92
|
+
MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: MenuComponent, selector: "wp-menu", inputs: { showHome: "showHome", showLogOut: "showLogOut", privileges: "privileges" }, outputs: { navigateToHome: "navigateToHome", navigateToLogIn: "navigateToLogIn" }, viewQueries: [{ propertyName: "menu", first: true, predicate: ["menu"], descendants: true }], ngImport: i0, template: "<div #menu id=\"menu-wrap\" class=\"menubar\" [ngClass]=\"menuStatus\">\n\t<div class=\"menuWrap\" [ngClass]=\"menuStatus\">\n\t\t<div class=\"mainMenuArea\">\n\t\t\t<!-- Menu Links Here -->\n\t\t\t<div id=\"privilege-wrap\" [ngClass]=\"menuStatus\" *ngIf=\"privileges\">\n\t\t\t\t<ul>\n\t\t\t\t\t<div *ngFor=\"let element of privileges\">\n\t\t\t\t\t\t<!-- <menu-link [area]=\"element.area\"></menu-link> -->\n\t\t\t\t\t</div>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div id=\"hamburger-wrap\" class=\"hambclicker\" (click)=\"triggerMenu()\"></div>\n\t\t\t<div id=\"hambmenu\" [ngClass]=\"menuStatus\">\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"actionMenuArea\">\n\t\t\t<ul>\n\t\t\t\t<div *ngFor=\"let element of actionLinks\">\n\t\t\t\t\t<action-link [actionLink]=\"element\" [open]=\"open\"></action-link>\n\t\t\t\t</div>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>", styles: ["menu{padding-inline-start:0px;padding:0}.menubar{position:relative;background-color:var(--wp-primaryBlue);box-shadow:2px 5px 5px #0000001f;width:74px;height:100vh;transition:width .3s}.menubar span{display:inline-block;position:absolute;left:50%;transform:translate(-50%);font-weight:300;font-size:1em;line-height:60px}.menuWrap{display:block;position:fixed;background-color:var(--wp-primaryBlue);text-align:center;width:74px;transition:width .3s}.menubar.isOpen,.menuWrap.isOpen{width:210px}#hambmenu{position:relative;width:40px;height:45px;float:left;transition:.5s ease-in-out;cursor:pointer}#hambmenu span{position:absolute;height:5px;width:100%;vertical-align:middle;margin:20px 0 0 15px;background:white;border-radius:var(--wp-borderRadius);opacity:1;left:0;transform:rotate(0);transition:.25s ease-in-out;padding:0}#hambmenu span:nth-child(1){top:0}#hambmenu span:nth-child(4){top:20px}#hambmenu.isOpen span:nth-child(1){top:18px;width:0;left:50%;opacity:0}#hambmenu.isOpen span:nth-child(2){transform:rotate(45deg)}#hambmenu.isOpen span:nth-child(3){transform:rotate(-45deg)}#hambmenu.isOpen span:nth-child(4){top:18px;width:0%;left:50%;opacity:0}.hambclicker{content:\"\";height:35px;width:42px;position:absolute;top:8px;left:8px;cursor:pointer;z-index:9}#hambmenu span:nth-child(2),#hambmenu span:nth-child(3){top:10px}#privilege-wrap{position:absolute;width:210px;margin-top:60px;transform:translate(-100%);transition:transform .3s;overflow-y:auto;height:calc(87vh - 60px)}#privilege-wrap.isOpen{transform:none}#privilege-wrap ul,.actionMenuArea ul{width:100%;margin-top:0;padding:0;list-style-type:none;text-align:left}.actionMenuArea li p{color:#fff;margin-bottom:0}.fa{color:#000;padding-right:8px}.mainMenuArea{height:90vh}.actionMenuArea{height:10vh;color:#fff;display:flex;justify-content:center;align-items:flex-end}@media screen and (max-width: 420px){.menubar span{font-size:1.2em}}\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: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ActionLinkComponent, selector: "action-link", inputs: ["actionLink", "open"] }] });
|
|
81
93
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: MenuComponent, decorators: [{
|
|
82
94
|
type: Component,
|
|
83
95
|
args: [{ selector: 'wp-menu', template: "<div #menu id=\"menu-wrap\" class=\"menubar\" [ngClass]=\"menuStatus\">\n\t<div class=\"menuWrap\" [ngClass]=\"menuStatus\">\n\t\t<div class=\"mainMenuArea\">\n\t\t\t<!-- Menu Links Here -->\n\t\t\t<div id=\"privilege-wrap\" [ngClass]=\"menuStatus\" *ngIf=\"privileges\">\n\t\t\t\t<ul>\n\t\t\t\t\t<div *ngFor=\"let element of privileges\">\n\t\t\t\t\t\t<!-- <menu-link [area]=\"element.area\"></menu-link> -->\n\t\t\t\t\t</div>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div id=\"hamburger-wrap\" class=\"hambclicker\" (click)=\"triggerMenu()\"></div>\n\t\t\t<div id=\"hambmenu\" [ngClass]=\"menuStatus\">\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"actionMenuArea\">\n\t\t\t<ul>\n\t\t\t\t<div *ngFor=\"let element of actionLinks\">\n\t\t\t\t\t<action-link [actionLink]=\"element\" [open]=\"open\"></action-link>\n\t\t\t\t</div>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>", styles: ["menu{padding-inline-start:0px;padding:0}.menubar{position:relative;background-color:var(--wp-primaryBlue);box-shadow:2px 5px 5px #0000001f;width:74px;height:100vh;transition:width .3s}.menubar span{display:inline-block;position:absolute;left:50%;transform:translate(-50%);font-weight:300;font-size:1em;line-height:60px}.menuWrap{display:block;position:fixed;background-color:var(--wp-primaryBlue);text-align:center;width:74px;transition:width .3s}.menubar.isOpen,.menuWrap.isOpen{width:210px}#hambmenu{position:relative;width:40px;height:45px;float:left;transition:.5s ease-in-out;cursor:pointer}#hambmenu span{position:absolute;height:5px;width:100%;vertical-align:middle;margin:20px 0 0 15px;background:white;border-radius:var(--wp-borderRadius);opacity:1;left:0;transform:rotate(0);transition:.25s ease-in-out;padding:0}#hambmenu span:nth-child(1){top:0}#hambmenu span:nth-child(4){top:20px}#hambmenu.isOpen span:nth-child(1){top:18px;width:0;left:50%;opacity:0}#hambmenu.isOpen span:nth-child(2){transform:rotate(45deg)}#hambmenu.isOpen span:nth-child(3){transform:rotate(-45deg)}#hambmenu.isOpen span:nth-child(4){top:18px;width:0%;left:50%;opacity:0}.hambclicker{content:\"\";height:35px;width:42px;position:absolute;top:8px;left:8px;cursor:pointer;z-index:9}#hambmenu span:nth-child(2),#hambmenu span:nth-child(3){top:10px}#privilege-wrap{position:absolute;width:210px;margin-top:60px;transform:translate(-100%);transition:transform .3s;overflow-y:auto;height:calc(87vh - 60px)}#privilege-wrap.isOpen{transform:none}#privilege-wrap ul,.actionMenuArea ul{width:100%;margin-top:0;padding:0;list-style-type:none;text-align:left}.actionMenuArea li p{color:#fff;margin-bottom:0}.fa{color:#000;padding-right:8px}.mainMenuArea{height:90vh}.actionMenuArea{height:10vh;color:#fff;display:flex;justify-content:center;align-items:flex-end}@media screen and (max-width: 420px){.menubar span{font-size:1.2em}}\n"] }]
|
|
84
96
|
}], ctorParameters: function () { return []; }, propDecorators: { showHome: [{
|
|
85
97
|
type: Input
|
|
86
98
|
}], navigateToHome: [{
|
|
87
|
-
type:
|
|
99
|
+
type: Output
|
|
88
100
|
}], showLogOut: [{
|
|
89
101
|
type: Input
|
|
90
102
|
}], navigateToLogIn: [{
|
|
91
|
-
type:
|
|
103
|
+
type: Output
|
|
92
104
|
}], privileges: [{
|
|
93
105
|
type: Input
|
|
94
106
|
}], menu: [{
|
|
95
107
|
type: ViewChild,
|
|
96
108
|
args: ['menu']
|
|
97
109
|
}] } });
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93aW5kb3dzLXBsdXMtdXRpbGl0aWVzL21haW4tbWVudS9jb21wb25lbnRzL21lbnUvbWVudS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93aW5kb3dzLXBsdXMtdXRpbGl0aWVzL21haW4tbWVudS9jb21wb25lbnRzL21lbnUvbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN6RixPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLG1DQUFtQyxDQUFBOzs7O0FBUXhFOzs7R0FHRztBQUNILE1BQU0sT0FBTyxhQUFhO0lBOEN6Qjs7O09BR0c7SUFDSDtRQWpEQTs7V0FFRztRQUNNLGFBQVEsR0FBWSxJQUFJLENBQUE7UUFDakM7O1dBRUc7UUFDTyxtQkFBYyxHQUF1QixJQUFJLFlBQVksRUFBRSxDQUFBO1FBQ2pFOztXQUVHO1FBQ00sZUFBVSxHQUFZLElBQUksQ0FBQTtRQUNuQzs7V0FFRztRQUNPLG9CQUFlLEdBQXVCLElBQUksWUFBWSxFQUFFLENBQUE7UUFTbEU7O1dBRUc7UUFDSCxpQkFBWSxHQUFHLFlBQVksQ0FBQTtRQUMzQjs7V0FFRztRQUNILFdBQU0sR0FBRyxNQUFNLENBQUE7UUFDZjs7V0FFRztRQUNILFNBQUksR0FBRyxLQUFLLENBQUE7UUFDWjs7V0FFRztRQUNILGVBQVUsR0FBRyxVQUFVLENBQUE7UUFDdkI7O1dBRUc7UUFDSCxnQkFBVyxHQUFpQixFQUFFLENBQUE7SUFNZCxDQUFDO0lBRWpCOzs7T0FHRztJQUNILEtBQUssQ0FBQyxRQUFRO1FBQ2IsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUE7SUFDN0IsQ0FBQztJQUVELHFCQUFxQjtRQUNwQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7Z0JBQ3JCLElBQUksRUFBRSxNQUFNO2dCQUNaLE9BQU8sRUFBRSxNQUFNO2dCQUNmLE1BQU0sRUFBRSxNQUFNO2dCQUNkLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRTthQUMvQyxDQUFDLENBQUE7U0FDRjtRQUVELElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNwQixPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFBO1lBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO2dCQUNyQixJQUFJLEVBQUUsU0FBUztnQkFDZixPQUFPLEVBQUUsU0FBUztnQkFDbEIsTUFBTSxFQUFFLFlBQVk7Z0JBQ3BCLGFBQWEsRUFBRSxHQUFHLEVBQUU7b0JBQ25CLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUE7b0JBQzVCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUE7Z0JBQzVCLENBQUM7YUFDRCxDQUFDLENBQUE7U0FDRjtJQUNGLENBQUM7SUFFRDs7O09BR0c7SUFDSCxXQUFXO1FBQ1YsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUE7UUFDdEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQTtJQUNwRCxDQUFDOzsyR0EzRlcsYUFBYTsrRkFBYixhQUFhLHNUQ2IxQiwrN0JBMkJNOzRGRGRPLGFBQWE7a0JBVHpCLFNBQVM7K0JBQ0MsU0FBUzswRUFZVixRQUFRO3NCQUFoQixLQUFLO2dCQUlJLGNBQWM7c0JBQXZCLE1BQU07Z0JBSUUsVUFBVTtzQkFBbEIsS0FBSztnQkFJSSxlQUFlO3NCQUF4QixNQUFNO2dCQUlFLFVBQVU7c0JBQWxCLEtBQUs7Z0JBSWEsSUFBSTtzQkFBdEIsU0FBUzt1QkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IGZhSG9tZSwgZmFTaWduT3V0QWx0IH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJ1xuaW1wb3J0IHsgQWN0aW9uTGluayB9IGZyb20gJy4uLy4uL3V0aWwvaW50ZXJmYWNlL2FjdGlvbi1saW5rL2FjdGlvbi1saW5rLmludGVyZmFjZSdcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnd3AtbWVudScsXG5cdHRlbXBsYXRlVXJsOiAnLi9tZW51LmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vbWVudS5jb21wb25lbnQuc2FzcyddXG59KVxuLyoqXG4gKiBAYXV0aG9yIEFsZXggSG9kc29uXG4gKiBAZGVzY3JpcHRpb24gdGhlIG1lbnUgY29tcG9uZW50IHByb3ZpZGVzIHRoZSBmdW5jdGlvbmFsaXR5IGZvciBpbnRlcmFjdGluZyB3aXRoIHRoZSBzaWRlYmFyIG1lbnUgXG4gKi9cbmV4cG9ydCBjbGFzcyBNZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblx0LyoqXG5cdCAqIEBkZXNjcmlwdGlvbiB3aGV0aGVyIHRoZSBob21lIGxpbmsgc2hvdWxkIGJlIGRpc3BsYXllZCBpbiB0aGUgbWVudVxuXHQgKi9cblx0QElucHV0KCkgc2hvd0hvbWU6IGJvb2xlYW4gPSB0cnVlXG5cdC8qKlxuXHQgKiBAZGVzY3JpcHRpb24gaGFuZGxlcyB0aGUgbmF2aWdhdGlvbiB0byB0aGUgaG9tZSBzY3JlZW5cblx0ICovXG5cdEBPdXRwdXQoKSBuYXZpZ2F0ZVRvSG9tZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpXG5cdC8qKlxuXHQgKiBAZGVzY3JpcHRpb24gd2hldGhlciB0aGUgbG9nIG91dCBsaW5rIGJ1dHRvbiBzaG91bGQgYmUgZGlzcGxheWVkIGluIHRoZSBtZW51XG5cdCAqL1xuXHRASW5wdXQoKSBzaG93TG9nT3V0OiBib29sZWFuID0gdHJ1ZVxuXHQvKipcblx0ICogQGRlc2NyaXB0aW9uIGhhbmRsZXMgdGhlIG5hdmlnYXRpb24gdG8gdGhlIGxvZyBpbiBzY3JlZW5cblx0ICovXG5cdEBPdXRwdXQoKSBuYXZpZ2F0ZVRvTG9nSW46IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuXHQvKipcblx0ICogQGRlc2NyaXB0aW9uIHRoZSBwcml2aWxlZ2VzIGFzc29jaWF0ZWQgd2l0aCB0aGUgbG9nZ2VkIGluIGFjY291bnRcblx0ICovXG5cdEBJbnB1dCgpIHByaXZpbGVnZXM6IHN0cmluZ1tdXG5cdC8qKlxuXHQgKiBAZGVzY3JpcHRpb24gdGhlIEhUTUwgbWVudSBlbGVtZW50XG5cdCAqL1xuXHRAVmlld0NoaWxkKCdtZW51JykgbWVudTogYW55XG5cdC8qKlxuXHQgKiBAZGVzY3JpcHRpb24gdGhlIGZvbnQgYXdlc29tZSBpY29uIGZvciB0aGUgc2lnbiBvdXQgYnV0dG9uXG5cdCAqL1xuXHRmYVNpZ25PdXRBbHQgPSBmYVNpZ25PdXRBbHRcblx0LyoqXG5cdCAqIEBkZXNjcmlwdGlvbiB0aGUgZm9udCBhd2Vzb21lIGljb24gZm9yIHRoZSBob21lIGJ1dHRvblxuXHQgKi9cblx0ZmFIb21lID0gZmFIb21lXG5cdC8qKlxuXHQgKiBAZGVzY3JpcHRpb24gd2hldGhlciB0aGUgc2lkZSBtZW51IGlzIG9wZW5cblx0ICovXG5cdG9wZW4gPSBmYWxzZVxuXHQvKipcblx0ICogQGRlc2NyaXB0aW9uIHRoZSBzdGF0dXMgY2xhc3MgdG8gYmUgYXBwbGllcyB0byB0aGUgbWVudVxuXHQgKi9cblx0bWVudVN0YXR1cyA9ICdpc0Nsb3NlZCdcblx0LyoqXG5cdCAqIEBkZXNjcmlwdGlvbiB0aGUgYWN0aW9uIGxpbmtzIHRvIGJlIGRpc3BsYXllZCBpbiB0aGUgc2lkZSBuYXZpZ2F0aW9uIG1lbnVcblx0ICovXG5cdGFjdGlvbkxpbmtzOiBBY3Rpb25MaW5rW10gPSBbXVxuXG5cdC8qKlxuXHQgKiBAYXV0aG9yIEFsZXggSG9kc29uXG5cdCAqIEBkZXNjcmlwdGlvbiBjbGFzcyBjb25zdHJ1Y3RvciBzcGVjaWZ5aW5nIHRoZSByZXF1aXJlZCBzZXJ2aWNlcyBhbmQgcHJvcGVydGllcyBmb3IgdGhlIGNvbXBvbmVudFxuXHQgKi9cblx0Y29uc3RydWN0b3IoKSB7IH1cblxuXHQvKipcblx0ICogQGF1dGhvciBBbGV4IEhvZHNvblxuXHQgKiBAZGVzY3JpcHRpb24gdGhlIG1ldGhvZCB3aGljaCBydW5zIHdoZW4gdGhlIGNvbXBvbmVudCBpcyByZW5kZXJlZC4gUmV0cmlldmVzIHRoZSBhY2NvdW50IHByaXZpbGVnZXMgZm9yIHRoZSBsb2dnZWQgaW4gdXNlclxuXHQgKi9cblx0YXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0dGhpcy5oYW5kbGVCYXNlQWN0aW9uTGlua3MoKVxuXHR9XG5cblx0aGFuZGxlQmFzZUFjdGlvbkxpbmtzKCk6IHZvaWQge1xuXHRcdGlmICh0aGlzLnNob3dIb21lKSB7XG5cdFx0XHR0aGlzLmFjdGlvbkxpbmtzLnB1c2goe1xuXHRcdFx0XHQnaWQnOiAnaG9tZScsXG5cdFx0XHRcdCd2YWx1ZSc6ICdIb21lJyxcblx0XHRcdFx0J2ljb24nOiBmYUhvbWUsXG5cdFx0XHRcdCdoYW5kbGVDbGljayc6ICgpID0+IHRoaXMubmF2aWdhdGVUb0hvbWUuZW1pdCgpXG5cdFx0XHR9KVxuXHRcdH1cblxuXHRcdGlmICh0aGlzLnNob3dMb2dPdXQpIHtcblx0XHRcdGNvbnNvbGUubG9nKCdMb2cgb3V0IHNldCcpXG5cdFx0XHR0aGlzLmFjdGlvbkxpbmtzLnB1c2goe1xuXHRcdFx0XHQnaWQnOiAnbG9nLW91dCcsXG5cdFx0XHRcdCd2YWx1ZSc6ICdMb2cgT3V0Jyxcblx0XHRcdFx0J2ljb24nOiBmYVNpZ25PdXRBbHQsXG5cdFx0XHRcdCdoYW5kbGVDbGljayc6ICgpID0+IHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZygnTG9nIG91dCBjbGljaycpXG5cdFx0XHRcdFx0dGhpcy5uYXZpZ2F0ZVRvTG9nSW4uZW1pdCgpXG5cdFx0XHRcdH1cblx0XHRcdH0pXG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIEBhdXRob3IgQWxleCBIb2Rzb25cblx0ICogQGRlc2NyaXB0aW9uIG9wZW5zIGFuZCBjbG9zZXMgdGhlIHNpZGUgbWVudSBhY2NvcmRpbmcgdG8gdGhlIGN1cnJlbnQgbWVudSBzdGF0ZVxuXHQgKi9cblx0dHJpZ2dlck1lbnUoKTogdm9pZCB7XG5cdFx0dGhpcy5vcGVuID0gIXRoaXMub3BlblxuXHRcdHRoaXMubWVudVN0YXR1cyA9IHRoaXMub3BlbiA/ICdpc09wZW4nIDogJ2lzQ2xvc2VkJ1xuXHR9XG59XG4iLCI8ZGl2ICNtZW51IGlkPVwibWVudS13cmFwXCIgY2xhc3M9XCJtZW51YmFyXCIgW25nQ2xhc3NdPVwibWVudVN0YXR1c1wiPlxuXHQ8ZGl2IGNsYXNzPVwibWVudVdyYXBcIiBbbmdDbGFzc109XCJtZW51U3RhdHVzXCI+XG5cdFx0PGRpdiBjbGFzcz1cIm1haW5NZW51QXJlYVwiPlxuXHRcdFx0PCEtLSBNZW51IExpbmtzIEhlcmUgLS0+XG5cdFx0XHQ8ZGl2IGlkPVwicHJpdmlsZWdlLXdyYXBcIiBbbmdDbGFzc109XCJtZW51U3RhdHVzXCIgKm5nSWY9XCJwcml2aWxlZ2VzXCI+XG5cdFx0XHRcdDx1bD5cblx0XHRcdFx0XHQ8ZGl2ICpuZ0Zvcj1cImxldCBlbGVtZW50IG9mIHByaXZpbGVnZXNcIj5cblx0XHRcdFx0XHRcdDwhLS0gPG1lbnUtbGluayBbYXJlYV09XCJlbGVtZW50LmFyZWFcIj48L21lbnUtbGluaz4gLS0+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDwvdWw+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgaWQ9XCJoYW1idXJnZXItd3JhcFwiIGNsYXNzPVwiaGFtYmNsaWNrZXJcIiAoY2xpY2spPVwidHJpZ2dlck1lbnUoKVwiPjwvZGl2PlxuXHRcdFx0PGRpdiBpZD1cImhhbWJtZW51XCIgW25nQ2xhc3NdPVwibWVudVN0YXR1c1wiPlxuXHRcdFx0XHQ8c3Bhbj48L3NwYW4+XG5cdFx0XHRcdDxzcGFuPjwvc3Bhbj5cblx0XHRcdFx0PHNwYW4+PC9zcGFuPlxuXHRcdFx0XHQ8c3Bhbj48L3NwYW4+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwiYWN0aW9uTWVudUFyZWFcIj5cblx0XHRcdDx1bD5cblx0XHRcdFx0PGRpdiAqbmdGb3I9XCJsZXQgZWxlbWVudCBvZiBhY3Rpb25MaW5rc1wiPlxuXHRcdFx0XHRcdDxhY3Rpb24tbGluayBbYWN0aW9uTGlua109XCJlbGVtZW50XCIgW29wZW5dPVwib3BlblwiPjwvYWN0aW9uLWxpbms+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC91bD5cblx0XHQ8L2Rpdj5cblx0PC9kaXY+XG48L2Rpdj4iXX0=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { __awaiter } from 'tslib';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { Component, Input, ViewChild, NgModule } from '@angular/core';
|
|
3
|
+
import { Component, Input, EventEmitter, Output, ViewChild, NgModule } from '@angular/core';
|
|
4
4
|
import { faSignOutAlt, faHome } from '@fortawesome/free-solid-svg-icons';
|
|
5
5
|
import * as i1 from '@angular/common';
|
|
6
6
|
import { CommonModule } from '@angular/common';
|
|
@@ -49,10 +49,18 @@ class MenuComponent {
|
|
|
49
49
|
* @description whether the home link should be displayed in the menu
|
|
50
50
|
*/
|
|
51
51
|
this.showHome = true;
|
|
52
|
+
/**
|
|
53
|
+
* @description handles the navigation to the home screen
|
|
54
|
+
*/
|
|
55
|
+
this.navigateToHome = new EventEmitter();
|
|
52
56
|
/**
|
|
53
57
|
* @description whether the log out link button should be displayed in the menu
|
|
54
58
|
*/
|
|
55
59
|
this.showLogOut = true;
|
|
60
|
+
/**
|
|
61
|
+
* @description handles the navigation to the log in screen
|
|
62
|
+
*/
|
|
63
|
+
this.navigateToLogIn = new EventEmitter();
|
|
56
64
|
/**
|
|
57
65
|
* @description the font awesome icon for the sign out button
|
|
58
66
|
*/
|
|
@@ -89,15 +97,19 @@ class MenuComponent {
|
|
|
89
97
|
'id': 'home',
|
|
90
98
|
'value': 'Home',
|
|
91
99
|
'icon': faHome,
|
|
92
|
-
'handleClick': () => this.navigateToHome()
|
|
100
|
+
'handleClick': () => this.navigateToHome.emit()
|
|
93
101
|
});
|
|
94
102
|
}
|
|
95
103
|
if (this.showLogOut) {
|
|
104
|
+
console.log('Log out set');
|
|
96
105
|
this.actionLinks.push({
|
|
97
106
|
'id': 'log-out',
|
|
98
107
|
'value': 'Log Out',
|
|
99
108
|
'icon': faSignOutAlt,
|
|
100
|
-
'handleClick': () =>
|
|
109
|
+
'handleClick': () => {
|
|
110
|
+
console.log('Log out click');
|
|
111
|
+
this.navigateToLogIn.emit();
|
|
112
|
+
}
|
|
101
113
|
});
|
|
102
114
|
}
|
|
103
115
|
}
|
|
@@ -111,18 +123,18 @@ class MenuComponent {
|
|
|
111
123
|
}
|
|
112
124
|
}
|
|
113
125
|
MenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
114
|
-
MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: MenuComponent, selector: "wp-menu", inputs: { showHome: "showHome",
|
|
126
|
+
MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: MenuComponent, selector: "wp-menu", inputs: { showHome: "showHome", showLogOut: "showLogOut", privileges: "privileges" }, outputs: { navigateToHome: "navigateToHome", navigateToLogIn: "navigateToLogIn" }, viewQueries: [{ propertyName: "menu", first: true, predicate: ["menu"], descendants: true }], ngImport: i0, template: "<div #menu id=\"menu-wrap\" class=\"menubar\" [ngClass]=\"menuStatus\">\n\t<div class=\"menuWrap\" [ngClass]=\"menuStatus\">\n\t\t<div class=\"mainMenuArea\">\n\t\t\t<!-- Menu Links Here -->\n\t\t\t<div id=\"privilege-wrap\" [ngClass]=\"menuStatus\" *ngIf=\"privileges\">\n\t\t\t\t<ul>\n\t\t\t\t\t<div *ngFor=\"let element of privileges\">\n\t\t\t\t\t\t<!-- <menu-link [area]=\"element.area\"></menu-link> -->\n\t\t\t\t\t</div>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div id=\"hamburger-wrap\" class=\"hambclicker\" (click)=\"triggerMenu()\"></div>\n\t\t\t<div id=\"hambmenu\" [ngClass]=\"menuStatus\">\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"actionMenuArea\">\n\t\t\t<ul>\n\t\t\t\t<div *ngFor=\"let element of actionLinks\">\n\t\t\t\t\t<action-link [actionLink]=\"element\" [open]=\"open\"></action-link>\n\t\t\t\t</div>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>", styles: ["menu{padding-inline-start:0px;padding:0}.menubar{position:relative;background-color:var(--wp-primaryBlue);box-shadow:2px 5px 5px #0000001f;width:74px;height:100vh;transition:width .3s}.menubar span{display:inline-block;position:absolute;left:50%;transform:translate(-50%);font-weight:300;font-size:1em;line-height:60px}.menuWrap{display:block;position:fixed;background-color:var(--wp-primaryBlue);text-align:center;width:74px;transition:width .3s}.menubar.isOpen,.menuWrap.isOpen{width:210px}#hambmenu{position:relative;width:40px;height:45px;float:left;transition:.5s ease-in-out;cursor:pointer}#hambmenu span{position:absolute;height:5px;width:100%;vertical-align:middle;margin:20px 0 0 15px;background:white;border-radius:var(--wp-borderRadius);opacity:1;left:0;transform:rotate(0);transition:.25s ease-in-out;padding:0}#hambmenu span:nth-child(1){top:0}#hambmenu span:nth-child(4){top:20px}#hambmenu.isOpen span:nth-child(1){top:18px;width:0;left:50%;opacity:0}#hambmenu.isOpen span:nth-child(2){transform:rotate(45deg)}#hambmenu.isOpen span:nth-child(3){transform:rotate(-45deg)}#hambmenu.isOpen span:nth-child(4){top:18px;width:0%;left:50%;opacity:0}.hambclicker{content:\"\";height:35px;width:42px;position:absolute;top:8px;left:8px;cursor:pointer;z-index:9}#hambmenu span:nth-child(2),#hambmenu span:nth-child(3){top:10px}#privilege-wrap{position:absolute;width:210px;margin-top:60px;transform:translate(-100%);transition:transform .3s;overflow-y:auto;height:calc(87vh - 60px)}#privilege-wrap.isOpen{transform:none}#privilege-wrap ul,.actionMenuArea ul{width:100%;margin-top:0;padding:0;list-style-type:none;text-align:left}.actionMenuArea li p{color:#fff;margin-bottom:0}.fa{color:#000;padding-right:8px}.mainMenuArea{height:90vh}.actionMenuArea{height:10vh;color:#fff;display:flex;justify-content:center;align-items:flex-end}@media screen and (max-width: 420px){.menubar span{font-size:1.2em}}\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: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ActionLinkComponent, selector: "action-link", inputs: ["actionLink", "open"] }] });
|
|
115
127
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: MenuComponent, decorators: [{
|
|
116
128
|
type: Component,
|
|
117
129
|
args: [{ selector: 'wp-menu', template: "<div #menu id=\"menu-wrap\" class=\"menubar\" [ngClass]=\"menuStatus\">\n\t<div class=\"menuWrap\" [ngClass]=\"menuStatus\">\n\t\t<div class=\"mainMenuArea\">\n\t\t\t<!-- Menu Links Here -->\n\t\t\t<div id=\"privilege-wrap\" [ngClass]=\"menuStatus\" *ngIf=\"privileges\">\n\t\t\t\t<ul>\n\t\t\t\t\t<div *ngFor=\"let element of privileges\">\n\t\t\t\t\t\t<!-- <menu-link [area]=\"element.area\"></menu-link> -->\n\t\t\t\t\t</div>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div id=\"hamburger-wrap\" class=\"hambclicker\" (click)=\"triggerMenu()\"></div>\n\t\t\t<div id=\"hambmenu\" [ngClass]=\"menuStatus\">\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"actionMenuArea\">\n\t\t\t<ul>\n\t\t\t\t<div *ngFor=\"let element of actionLinks\">\n\t\t\t\t\t<action-link [actionLink]=\"element\" [open]=\"open\"></action-link>\n\t\t\t\t</div>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>", styles: ["menu{padding-inline-start:0px;padding:0}.menubar{position:relative;background-color:var(--wp-primaryBlue);box-shadow:2px 5px 5px #0000001f;width:74px;height:100vh;transition:width .3s}.menubar span{display:inline-block;position:absolute;left:50%;transform:translate(-50%);font-weight:300;font-size:1em;line-height:60px}.menuWrap{display:block;position:fixed;background-color:var(--wp-primaryBlue);text-align:center;width:74px;transition:width .3s}.menubar.isOpen,.menuWrap.isOpen{width:210px}#hambmenu{position:relative;width:40px;height:45px;float:left;transition:.5s ease-in-out;cursor:pointer}#hambmenu span{position:absolute;height:5px;width:100%;vertical-align:middle;margin:20px 0 0 15px;background:white;border-radius:var(--wp-borderRadius);opacity:1;left:0;transform:rotate(0);transition:.25s ease-in-out;padding:0}#hambmenu span:nth-child(1){top:0}#hambmenu span:nth-child(4){top:20px}#hambmenu.isOpen span:nth-child(1){top:18px;width:0;left:50%;opacity:0}#hambmenu.isOpen span:nth-child(2){transform:rotate(45deg)}#hambmenu.isOpen span:nth-child(3){transform:rotate(-45deg)}#hambmenu.isOpen span:nth-child(4){top:18px;width:0%;left:50%;opacity:0}.hambclicker{content:\"\";height:35px;width:42px;position:absolute;top:8px;left:8px;cursor:pointer;z-index:9}#hambmenu span:nth-child(2),#hambmenu span:nth-child(3){top:10px}#privilege-wrap{position:absolute;width:210px;margin-top:60px;transform:translate(-100%);transition:transform .3s;overflow-y:auto;height:calc(87vh - 60px)}#privilege-wrap.isOpen{transform:none}#privilege-wrap ul,.actionMenuArea ul{width:100%;margin-top:0;padding:0;list-style-type:none;text-align:left}.actionMenuArea li p{color:#fff;margin-bottom:0}.fa{color:#000;padding-right:8px}.mainMenuArea{height:90vh}.actionMenuArea{height:10vh;color:#fff;display:flex;justify-content:center;align-items:flex-end}@media screen and (max-width: 420px){.menubar span{font-size:1.2em}}\n"] }]
|
|
118
130
|
}], ctorParameters: function () { return []; }, propDecorators: { showHome: [{
|
|
119
131
|
type: Input
|
|
120
132
|
}], navigateToHome: [{
|
|
121
|
-
type:
|
|
133
|
+
type: Output
|
|
122
134
|
}], showLogOut: [{
|
|
123
135
|
type: Input
|
|
124
136
|
}], navigateToLogIn: [{
|
|
125
|
-
type:
|
|
137
|
+
type: Output
|
|
126
138
|
}], privileges: [{
|
|
127
139
|
type: Input
|
|
128
140
|
}], menu: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windows-plus-utilities-main-menu.mjs","sources":["../../../projects/windows-plus-utilities/main-menu/components/action-link/action-link.component.ts","../../../projects/windows-plus-utilities/main-menu/components/action-link/action-link.component.html","../../../projects/windows-plus-utilities/main-menu/components/menu/menu.component.ts","../../../projects/windows-plus-utilities/main-menu/components/menu/menu.component.html","../../../projects/windows-plus-utilities/main-menu/main-menu.module.ts","../../../projects/windows-plus-utilities/main-menu/public-api.ts","../../../projects/windows-plus-utilities/main-menu/windows-plus-utilities-main-menu.ts"],"sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\r\nimport { ActionLink } from '../../util/interface/action-link/action-link.interface'\r\n\r\n@Component({\r\n selector: 'action-link',\r\n templateUrl: './action-link.component.html',\r\n styleUrls: ['./action-link.component.sass']\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description the action link component provides the functionality for the action links inside the side navigation\r\n */\r\nexport class ActionLinkComponent implements OnInit {\r\n\t/**\r\n\t * @description the action link element provided by the parent which contains the action link properties\r\n\t */\r\n\t@Input()\r\n\tactionLink: ActionLink\r\n\r\n\t/**\r\n\t * @description whether the menu is open\r\n\t */\r\n\t@Input()\r\n\topen: boolean\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description class constructor which specifies the required services and properties for the component\r\n\t */\r\n constructor() { }\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the method to be run when the component is rendered\r\n\t */\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<li \r\n\tclass=\"cursor text-left\"\r\n>\r\n\t<div \r\n\t\tid=\"{{'content-wrap-' + actionLink.id}}\"\r\n\t\tclass=\"d-flex align-items-center cursor-pointer\"\r\n\t\t[ngClass]=\"{ 'justify-content-start': open, 'justify-content-center': !open}\"\r\n\t\t(click)=\"actionLink.handleClick()\"\r\n\t>\r\n\t\t<div>\r\n\t\t\t<fa-icon [icon]=\"actionLink.icon\"></fa-icon>\r\n\t\t</div>\r\n\t\t<div id=\"{{'text-wrap-' + actionLink.id}}\" class=\"ps-2\" *ngIf=\"open\">\r\n\t\t\t{{actionLink.value}}\r\n\t\t</div>\r\n\t</div>\r\n</li>","import { Component, Input, OnInit, ViewChild } from '@angular/core'\nimport { faHome, faSignOutAlt } from '@fortawesome/free-solid-svg-icons'\nimport { ActionLink } from '../../util/interface/action-link/action-link.interface'\n\n@Component({\n\tselector: 'wp-menu',\n\ttemplateUrl: './menu.component.html',\n\tstyleUrls: ['./menu.component.sass']\n})\n/**\n * @author Alex Hodson\n * @description the menu component provides the functionality for interacting with the sidebar menu \n */\nexport class MenuComponent implements OnInit {\n\t/**\n\t * @description whether the home link should be displayed in the menu\n\t */\n\t@Input() showHome: boolean = true\n\t/**\n\t * @description handles the navigation to the home screen\n\t */\n\t@Input() navigateToHome: () => void\n\t/**\n\t * @description whether the log out link button should be displayed in the menu\n\t */\n\t@Input() showLogOut: boolean = true\n\t/**\n\t * @description handles the navigation to the log in screen\n\t */\n\t@Input() navigateToLogIn: () => void\n\t/**\n\t * @description the privileges associated with the logged in account\n\t */\n\t@Input() privileges: string[]\n\t/**\n\t * @description the HTML menu element\n\t */\n\t@ViewChild('menu') menu: any\n\t/**\n\t * @description the font awesome icon for the sign out button\n\t */\n\tfaSignOutAlt = faSignOutAlt\n\t/**\n\t * @description the font awesome icon for the home button\n\t */\n\tfaHome = faHome\n\t/**\n\t * @description whether the side menu is open\n\t */\n\topen = false\n\t/**\n\t * @description the status class to be applies to the menu\n\t */\n\tmenuStatus = 'isClosed'\n\t/**\n\t * @description the action links to be displayed in the side navigation menu\n\t */\n\tactionLinks: ActionLink[] = []\n\n\t/**\n\t * @author Alex Hodson\n\t * @description class constructor specifying the required services and properties for the component\n\t */\n\tconstructor() { }\n\n\t/**\n\t * @author Alex Hodson\n\t * @description the method which runs when the component is rendered. Retrieves the account privileges for the logged in user\n\t */\n\tasync ngOnInit(): Promise<void> {\n\t\tthis.handleBaseActionLinks()\n\t}\n\n\thandleBaseActionLinks(): void {\n\t\tif (this.showHome) {\n\t\t\tthis.actionLinks.push({\n\t\t\t\t'id': 'home',\n\t\t\t\t'value': 'Home',\n\t\t\t\t'icon': faHome,\n\t\t\t\t'handleClick': () => this.navigateToHome()\n\t\t\t})\n\t\t}\n\n\t\tif (this.showLogOut) {\n\t\t\tthis.actionLinks.push({\n\t\t\t\t'id': 'log-out',\n\t\t\t\t'value': 'Log Out',\n\t\t\t\t'icon': faSignOutAlt,\n\t\t\t\t'handleClick': () => this.navigateToLogIn()\n\t\t\t})\n\t\t}\n\t}\n\n\t/**\n\t * @author Alex Hodson\n\t * @description opens and closes the side menu according to the current menu state\n\t */\n\ttriggerMenu(): void {\n\t\tthis.open = !this.open\n\t\tthis.menuStatus = this.open ? 'isOpen' : 'isClosed'\n\t}\n}\n","<div #menu id=\"menu-wrap\" class=\"menubar\" [ngClass]=\"menuStatus\">\n\t<div class=\"menuWrap\" [ngClass]=\"menuStatus\">\n\t\t<div class=\"mainMenuArea\">\n\t\t\t<!-- Menu Links Here -->\n\t\t\t<div id=\"privilege-wrap\" [ngClass]=\"menuStatus\" *ngIf=\"privileges\">\n\t\t\t\t<ul>\n\t\t\t\t\t<div *ngFor=\"let element of privileges\">\n\t\t\t\t\t\t<!-- <menu-link [area]=\"element.area\"></menu-link> -->\n\t\t\t\t\t</div>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div id=\"hamburger-wrap\" class=\"hambclicker\" (click)=\"triggerMenu()\"></div>\n\t\t\t<div id=\"hambmenu\" [ngClass]=\"menuStatus\">\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"actionMenuArea\">\n\t\t\t<ul>\n\t\t\t\t<div *ngFor=\"let element of actionLinks\">\n\t\t\t\t\t<action-link [actionLink]=\"element\" [open]=\"open\"></action-link>\n\t\t\t\t</div>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MenuComponent } from './components/menu/menu.component';\nimport { ActionLinkComponent } from './components/action-link/action-link.component'\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome'\n\n\n@NgModule({\n declarations: [\n MenuComponent,\n\t\tActionLinkComponent\n ],\n imports: [\n CommonModule,\n\t\tFontAwesomeModule\n ],\n exports: [\n MenuComponent\n ]\n})\nexport class MainMenuModule { }\n","/*\n * Public API Surface of windows-plus-utilities\n */\n\nexport * from './components/menu/menu.component';\nexport * from './main-menu.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.ActionLinkComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"windows-plus-utilities-main-menu.mjs","sources":["../../../projects/windows-plus-utilities/main-menu/components/action-link/action-link.component.ts","../../../projects/windows-plus-utilities/main-menu/components/action-link/action-link.component.html","../../../projects/windows-plus-utilities/main-menu/components/menu/menu.component.ts","../../../projects/windows-plus-utilities/main-menu/components/menu/menu.component.html","../../../projects/windows-plus-utilities/main-menu/main-menu.module.ts","../../../projects/windows-plus-utilities/main-menu/public-api.ts","../../../projects/windows-plus-utilities/main-menu/windows-plus-utilities-main-menu.ts"],"sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\r\nimport { ActionLink } from '../../util/interface/action-link/action-link.interface'\r\n\r\n@Component({\r\n selector: 'action-link',\r\n templateUrl: './action-link.component.html',\r\n styleUrls: ['./action-link.component.sass']\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description the action link component provides the functionality for the action links inside the side navigation\r\n */\r\nexport class ActionLinkComponent implements OnInit {\r\n\t/**\r\n\t * @description the action link element provided by the parent which contains the action link properties\r\n\t */\r\n\t@Input()\r\n\tactionLink: ActionLink\r\n\r\n\t/**\r\n\t * @description whether the menu is open\r\n\t */\r\n\t@Input()\r\n\topen: boolean\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description class constructor which specifies the required services and properties for the component\r\n\t */\r\n constructor() { }\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the method to be run when the component is rendered\r\n\t */\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<li \r\n\tclass=\"cursor text-left\"\r\n>\r\n\t<div \r\n\t\tid=\"{{'content-wrap-' + actionLink.id}}\"\r\n\t\tclass=\"d-flex align-items-center cursor-pointer\"\r\n\t\t[ngClass]=\"{ 'justify-content-start': open, 'justify-content-center': !open}\"\r\n\t\t(click)=\"actionLink.handleClick()\"\r\n\t>\r\n\t\t<div>\r\n\t\t\t<fa-icon [icon]=\"actionLink.icon\"></fa-icon>\r\n\t\t</div>\r\n\t\t<div id=\"{{'text-wrap-' + actionLink.id}}\" class=\"ps-2\" *ngIf=\"open\">\r\n\t\t\t{{actionLink.value}}\r\n\t\t</div>\r\n\t</div>\r\n</li>","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core'\nimport { faHome, faSignOutAlt } from '@fortawesome/free-solid-svg-icons'\nimport { ActionLink } from '../../util/interface/action-link/action-link.interface'\n\n@Component({\n\tselector: 'wp-menu',\n\ttemplateUrl: './menu.component.html',\n\tstyleUrls: ['./menu.component.sass']\n})\n/**\n * @author Alex Hodson\n * @description the menu component provides the functionality for interacting with the sidebar menu \n */\nexport class MenuComponent implements OnInit {\n\t/**\n\t * @description whether the home link should be displayed in the menu\n\t */\n\t@Input() showHome: boolean = true\n\t/**\n\t * @description handles the navigation to the home screen\n\t */\n\t@Output() navigateToHome: EventEmitter<void> = new EventEmitter()\n\t/**\n\t * @description whether the log out link button should be displayed in the menu\n\t */\n\t@Input() showLogOut: boolean = true\n\t/**\n\t * @description handles the navigation to the log in screen\n\t */\n\t@Output() navigateToLogIn: EventEmitter<void> = new EventEmitter()\n\t/**\n\t * @description the privileges associated with the logged in account\n\t */\n\t@Input() privileges: string[]\n\t/**\n\t * @description the HTML menu element\n\t */\n\t@ViewChild('menu') menu: any\n\t/**\n\t * @description the font awesome icon for the sign out button\n\t */\n\tfaSignOutAlt = faSignOutAlt\n\t/**\n\t * @description the font awesome icon for the home button\n\t */\n\tfaHome = faHome\n\t/**\n\t * @description whether the side menu is open\n\t */\n\topen = false\n\t/**\n\t * @description the status class to be applies to the menu\n\t */\n\tmenuStatus = 'isClosed'\n\t/**\n\t * @description the action links to be displayed in the side navigation menu\n\t */\n\tactionLinks: ActionLink[] = []\n\n\t/**\n\t * @author Alex Hodson\n\t * @description class constructor specifying the required services and properties for the component\n\t */\n\tconstructor() { }\n\n\t/**\n\t * @author Alex Hodson\n\t * @description the method which runs when the component is rendered. Retrieves the account privileges for the logged in user\n\t */\n\tasync ngOnInit(): Promise<void> {\n\t\tthis.handleBaseActionLinks()\n\t}\n\n\thandleBaseActionLinks(): void {\n\t\tif (this.showHome) {\n\t\t\tthis.actionLinks.push({\n\t\t\t\t'id': 'home',\n\t\t\t\t'value': 'Home',\n\t\t\t\t'icon': faHome,\n\t\t\t\t'handleClick': () => this.navigateToHome.emit()\n\t\t\t})\n\t\t}\n\n\t\tif (this.showLogOut) {\n\t\t\tconsole.log('Log out set')\n\t\t\tthis.actionLinks.push({\n\t\t\t\t'id': 'log-out',\n\t\t\t\t'value': 'Log Out',\n\t\t\t\t'icon': faSignOutAlt,\n\t\t\t\t'handleClick': () => {\n\t\t\t\t\tconsole.log('Log out click')\n\t\t\t\t\tthis.navigateToLogIn.emit()\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\t/**\n\t * @author Alex Hodson\n\t * @description opens and closes the side menu according to the current menu state\n\t */\n\ttriggerMenu(): void {\n\t\tthis.open = !this.open\n\t\tthis.menuStatus = this.open ? 'isOpen' : 'isClosed'\n\t}\n}\n","<div #menu id=\"menu-wrap\" class=\"menubar\" [ngClass]=\"menuStatus\">\n\t<div class=\"menuWrap\" [ngClass]=\"menuStatus\">\n\t\t<div class=\"mainMenuArea\">\n\t\t\t<!-- Menu Links Here -->\n\t\t\t<div id=\"privilege-wrap\" [ngClass]=\"menuStatus\" *ngIf=\"privileges\">\n\t\t\t\t<ul>\n\t\t\t\t\t<div *ngFor=\"let element of privileges\">\n\t\t\t\t\t\t<!-- <menu-link [area]=\"element.area\"></menu-link> -->\n\t\t\t\t\t</div>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div id=\"hamburger-wrap\" class=\"hambclicker\" (click)=\"triggerMenu()\"></div>\n\t\t\t<div id=\"hambmenu\" [ngClass]=\"menuStatus\">\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"actionMenuArea\">\n\t\t\t<ul>\n\t\t\t\t<div *ngFor=\"let element of actionLinks\">\n\t\t\t\t\t<action-link [actionLink]=\"element\" [open]=\"open\"></action-link>\n\t\t\t\t</div>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MenuComponent } from './components/menu/menu.component';\nimport { ActionLinkComponent } from './components/action-link/action-link.component'\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome'\n\n\n@NgModule({\n declarations: [\n MenuComponent,\n\t\tActionLinkComponent\n ],\n imports: [\n CommonModule,\n\t\tFontAwesomeModule\n ],\n exports: [\n MenuComponent\n ]\n})\nexport class MainMenuModule { }\n","/*\n * Public API Surface of windows-plus-utilities\n */\n\nexport * from './components/menu/menu.component';\nexport * from './main-menu.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.ActionLinkComponent"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, Input, ViewChild, NgModule } from '@angular/core';
|
|
2
|
+
import { Component, Input, EventEmitter, Output, ViewChild, NgModule } from '@angular/core';
|
|
3
3
|
import { faSignOutAlt, faHome } from '@fortawesome/free-solid-svg-icons';
|
|
4
4
|
import * as i1 from '@angular/common';
|
|
5
5
|
import { CommonModule } from '@angular/common';
|
|
@@ -48,10 +48,18 @@ class MenuComponent {
|
|
|
48
48
|
* @description whether the home link should be displayed in the menu
|
|
49
49
|
*/
|
|
50
50
|
this.showHome = true;
|
|
51
|
+
/**
|
|
52
|
+
* @description handles the navigation to the home screen
|
|
53
|
+
*/
|
|
54
|
+
this.navigateToHome = new EventEmitter();
|
|
51
55
|
/**
|
|
52
56
|
* @description whether the log out link button should be displayed in the menu
|
|
53
57
|
*/
|
|
54
58
|
this.showLogOut = true;
|
|
59
|
+
/**
|
|
60
|
+
* @description handles the navigation to the log in screen
|
|
61
|
+
*/
|
|
62
|
+
this.navigateToLogIn = new EventEmitter();
|
|
55
63
|
/**
|
|
56
64
|
* @description the font awesome icon for the sign out button
|
|
57
65
|
*/
|
|
@@ -86,15 +94,19 @@ class MenuComponent {
|
|
|
86
94
|
'id': 'home',
|
|
87
95
|
'value': 'Home',
|
|
88
96
|
'icon': faHome,
|
|
89
|
-
'handleClick': () => this.navigateToHome()
|
|
97
|
+
'handleClick': () => this.navigateToHome.emit()
|
|
90
98
|
});
|
|
91
99
|
}
|
|
92
100
|
if (this.showLogOut) {
|
|
101
|
+
console.log('Log out set');
|
|
93
102
|
this.actionLinks.push({
|
|
94
103
|
'id': 'log-out',
|
|
95
104
|
'value': 'Log Out',
|
|
96
105
|
'icon': faSignOutAlt,
|
|
97
|
-
'handleClick': () =>
|
|
106
|
+
'handleClick': () => {
|
|
107
|
+
console.log('Log out click');
|
|
108
|
+
this.navigateToLogIn.emit();
|
|
109
|
+
}
|
|
98
110
|
});
|
|
99
111
|
}
|
|
100
112
|
}
|
|
@@ -108,18 +120,18 @@ class MenuComponent {
|
|
|
108
120
|
}
|
|
109
121
|
}
|
|
110
122
|
MenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
111
|
-
MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: MenuComponent, selector: "wp-menu", inputs: { showHome: "showHome",
|
|
123
|
+
MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: MenuComponent, selector: "wp-menu", inputs: { showHome: "showHome", showLogOut: "showLogOut", privileges: "privileges" }, outputs: { navigateToHome: "navigateToHome", navigateToLogIn: "navigateToLogIn" }, viewQueries: [{ propertyName: "menu", first: true, predicate: ["menu"], descendants: true }], ngImport: i0, template: "<div #menu id=\"menu-wrap\" class=\"menubar\" [ngClass]=\"menuStatus\">\n\t<div class=\"menuWrap\" [ngClass]=\"menuStatus\">\n\t\t<div class=\"mainMenuArea\">\n\t\t\t<!-- Menu Links Here -->\n\t\t\t<div id=\"privilege-wrap\" [ngClass]=\"menuStatus\" *ngIf=\"privileges\">\n\t\t\t\t<ul>\n\t\t\t\t\t<div *ngFor=\"let element of privileges\">\n\t\t\t\t\t\t<!-- <menu-link [area]=\"element.area\"></menu-link> -->\n\t\t\t\t\t</div>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div id=\"hamburger-wrap\" class=\"hambclicker\" (click)=\"triggerMenu()\"></div>\n\t\t\t<div id=\"hambmenu\" [ngClass]=\"menuStatus\">\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"actionMenuArea\">\n\t\t\t<ul>\n\t\t\t\t<div *ngFor=\"let element of actionLinks\">\n\t\t\t\t\t<action-link [actionLink]=\"element\" [open]=\"open\"></action-link>\n\t\t\t\t</div>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>", styles: ["menu{padding-inline-start:0px;padding:0}.menubar{position:relative;background-color:var(--wp-primaryBlue);box-shadow:2px 5px 5px #0000001f;width:74px;height:100vh;transition:width .3s}.menubar span{display:inline-block;position:absolute;left:50%;transform:translate(-50%);font-weight:300;font-size:1em;line-height:60px}.menuWrap{display:block;position:fixed;background-color:var(--wp-primaryBlue);text-align:center;width:74px;transition:width .3s}.menubar.isOpen,.menuWrap.isOpen{width:210px}#hambmenu{position:relative;width:40px;height:45px;float:left;transition:.5s ease-in-out;cursor:pointer}#hambmenu span{position:absolute;height:5px;width:100%;vertical-align:middle;margin:20px 0 0 15px;background:white;border-radius:var(--wp-borderRadius);opacity:1;left:0;transform:rotate(0);transition:.25s ease-in-out;padding:0}#hambmenu span:nth-child(1){top:0}#hambmenu span:nth-child(4){top:20px}#hambmenu.isOpen span:nth-child(1){top:18px;width:0;left:50%;opacity:0}#hambmenu.isOpen span:nth-child(2){transform:rotate(45deg)}#hambmenu.isOpen span:nth-child(3){transform:rotate(-45deg)}#hambmenu.isOpen span:nth-child(4){top:18px;width:0%;left:50%;opacity:0}.hambclicker{content:\"\";height:35px;width:42px;position:absolute;top:8px;left:8px;cursor:pointer;z-index:9}#hambmenu span:nth-child(2),#hambmenu span:nth-child(3){top:10px}#privilege-wrap{position:absolute;width:210px;margin-top:60px;transform:translate(-100%);transition:transform .3s;overflow-y:auto;height:calc(87vh - 60px)}#privilege-wrap.isOpen{transform:none}#privilege-wrap ul,.actionMenuArea ul{width:100%;margin-top:0;padding:0;list-style-type:none;text-align:left}.actionMenuArea li p{color:#fff;margin-bottom:0}.fa{color:#000;padding-right:8px}.mainMenuArea{height:90vh}.actionMenuArea{height:10vh;color:#fff;display:flex;justify-content:center;align-items:flex-end}@media screen and (max-width: 420px){.menubar span{font-size:1.2em}}\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: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ActionLinkComponent, selector: "action-link", inputs: ["actionLink", "open"] }] });
|
|
112
124
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: MenuComponent, decorators: [{
|
|
113
125
|
type: Component,
|
|
114
126
|
args: [{ selector: 'wp-menu', template: "<div #menu id=\"menu-wrap\" class=\"menubar\" [ngClass]=\"menuStatus\">\n\t<div class=\"menuWrap\" [ngClass]=\"menuStatus\">\n\t\t<div class=\"mainMenuArea\">\n\t\t\t<!-- Menu Links Here -->\n\t\t\t<div id=\"privilege-wrap\" [ngClass]=\"menuStatus\" *ngIf=\"privileges\">\n\t\t\t\t<ul>\n\t\t\t\t\t<div *ngFor=\"let element of privileges\">\n\t\t\t\t\t\t<!-- <menu-link [area]=\"element.area\"></menu-link> -->\n\t\t\t\t\t</div>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div id=\"hamburger-wrap\" class=\"hambclicker\" (click)=\"triggerMenu()\"></div>\n\t\t\t<div id=\"hambmenu\" [ngClass]=\"menuStatus\">\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"actionMenuArea\">\n\t\t\t<ul>\n\t\t\t\t<div *ngFor=\"let element of actionLinks\">\n\t\t\t\t\t<action-link [actionLink]=\"element\" [open]=\"open\"></action-link>\n\t\t\t\t</div>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>", styles: ["menu{padding-inline-start:0px;padding:0}.menubar{position:relative;background-color:var(--wp-primaryBlue);box-shadow:2px 5px 5px #0000001f;width:74px;height:100vh;transition:width .3s}.menubar span{display:inline-block;position:absolute;left:50%;transform:translate(-50%);font-weight:300;font-size:1em;line-height:60px}.menuWrap{display:block;position:fixed;background-color:var(--wp-primaryBlue);text-align:center;width:74px;transition:width .3s}.menubar.isOpen,.menuWrap.isOpen{width:210px}#hambmenu{position:relative;width:40px;height:45px;float:left;transition:.5s ease-in-out;cursor:pointer}#hambmenu span{position:absolute;height:5px;width:100%;vertical-align:middle;margin:20px 0 0 15px;background:white;border-radius:var(--wp-borderRadius);opacity:1;left:0;transform:rotate(0);transition:.25s ease-in-out;padding:0}#hambmenu span:nth-child(1){top:0}#hambmenu span:nth-child(4){top:20px}#hambmenu.isOpen span:nth-child(1){top:18px;width:0;left:50%;opacity:0}#hambmenu.isOpen span:nth-child(2){transform:rotate(45deg)}#hambmenu.isOpen span:nth-child(3){transform:rotate(-45deg)}#hambmenu.isOpen span:nth-child(4){top:18px;width:0%;left:50%;opacity:0}.hambclicker{content:\"\";height:35px;width:42px;position:absolute;top:8px;left:8px;cursor:pointer;z-index:9}#hambmenu span:nth-child(2),#hambmenu span:nth-child(3){top:10px}#privilege-wrap{position:absolute;width:210px;margin-top:60px;transform:translate(-100%);transition:transform .3s;overflow-y:auto;height:calc(87vh - 60px)}#privilege-wrap.isOpen{transform:none}#privilege-wrap ul,.actionMenuArea ul{width:100%;margin-top:0;padding:0;list-style-type:none;text-align:left}.actionMenuArea li p{color:#fff;margin-bottom:0}.fa{color:#000;padding-right:8px}.mainMenuArea{height:90vh}.actionMenuArea{height:10vh;color:#fff;display:flex;justify-content:center;align-items:flex-end}@media screen and (max-width: 420px){.menubar span{font-size:1.2em}}\n"] }]
|
|
115
127
|
}], ctorParameters: function () { return []; }, propDecorators: { showHome: [{
|
|
116
128
|
type: Input
|
|
117
129
|
}], navigateToHome: [{
|
|
118
|
-
type:
|
|
130
|
+
type: Output
|
|
119
131
|
}], showLogOut: [{
|
|
120
132
|
type: Input
|
|
121
133
|
}], navigateToLogIn: [{
|
|
122
|
-
type:
|
|
134
|
+
type: Output
|
|
123
135
|
}], privileges: [{
|
|
124
136
|
type: Input
|
|
125
137
|
}], menu: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windows-plus-utilities-main-menu.mjs","sources":["../../../projects/windows-plus-utilities/main-menu/components/action-link/action-link.component.ts","../../../projects/windows-plus-utilities/main-menu/components/action-link/action-link.component.html","../../../projects/windows-plus-utilities/main-menu/components/menu/menu.component.ts","../../../projects/windows-plus-utilities/main-menu/components/menu/menu.component.html","../../../projects/windows-plus-utilities/main-menu/main-menu.module.ts","../../../projects/windows-plus-utilities/main-menu/public-api.ts","../../../projects/windows-plus-utilities/main-menu/windows-plus-utilities-main-menu.ts"],"sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\r\nimport { ActionLink } from '../../util/interface/action-link/action-link.interface'\r\n\r\n@Component({\r\n selector: 'action-link',\r\n templateUrl: './action-link.component.html',\r\n styleUrls: ['./action-link.component.sass']\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description the action link component provides the functionality for the action links inside the side navigation\r\n */\r\nexport class ActionLinkComponent implements OnInit {\r\n\t/**\r\n\t * @description the action link element provided by the parent which contains the action link properties\r\n\t */\r\n\t@Input()\r\n\tactionLink: ActionLink\r\n\r\n\t/**\r\n\t * @description whether the menu is open\r\n\t */\r\n\t@Input()\r\n\topen: boolean\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description class constructor which specifies the required services and properties for the component\r\n\t */\r\n constructor() { }\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the method to be run when the component is rendered\r\n\t */\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<li \r\n\tclass=\"cursor text-left\"\r\n>\r\n\t<div \r\n\t\tid=\"{{'content-wrap-' + actionLink.id}}\"\r\n\t\tclass=\"d-flex align-items-center cursor-pointer\"\r\n\t\t[ngClass]=\"{ 'justify-content-start': open, 'justify-content-center': !open}\"\r\n\t\t(click)=\"actionLink.handleClick()\"\r\n\t>\r\n\t\t<div>\r\n\t\t\t<fa-icon [icon]=\"actionLink.icon\"></fa-icon>\r\n\t\t</div>\r\n\t\t<div id=\"{{'text-wrap-' + actionLink.id}}\" class=\"ps-2\" *ngIf=\"open\">\r\n\t\t\t{{actionLink.value}}\r\n\t\t</div>\r\n\t</div>\r\n</li>","import { Component, Input, OnInit, ViewChild } from '@angular/core'\nimport { faHome, faSignOutAlt } from '@fortawesome/free-solid-svg-icons'\nimport { ActionLink } from '../../util/interface/action-link/action-link.interface'\n\n@Component({\n\tselector: 'wp-menu',\n\ttemplateUrl: './menu.component.html',\n\tstyleUrls: ['./menu.component.sass']\n})\n/**\n * @author Alex Hodson\n * @description the menu component provides the functionality for interacting with the sidebar menu \n */\nexport class MenuComponent implements OnInit {\n\t/**\n\t * @description whether the home link should be displayed in the menu\n\t */\n\t@Input() showHome: boolean = true\n\t/**\n\t * @description handles the navigation to the home screen\n\t */\n\t@Input() navigateToHome: () => void\n\t/**\n\t * @description whether the log out link button should be displayed in the menu\n\t */\n\t@Input() showLogOut: boolean = true\n\t/**\n\t * @description handles the navigation to the log in screen\n\t */\n\t@Input() navigateToLogIn: () => void\n\t/**\n\t * @description the privileges associated with the logged in account\n\t */\n\t@Input() privileges: string[]\n\t/**\n\t * @description the HTML menu element\n\t */\n\t@ViewChild('menu') menu: any\n\t/**\n\t * @description the font awesome icon for the sign out button\n\t */\n\tfaSignOutAlt = faSignOutAlt\n\t/**\n\t * @description the font awesome icon for the home button\n\t */\n\tfaHome = faHome\n\t/**\n\t * @description whether the side menu is open\n\t */\n\topen = false\n\t/**\n\t * @description the status class to be applies to the menu\n\t */\n\tmenuStatus = 'isClosed'\n\t/**\n\t * @description the action links to be displayed in the side navigation menu\n\t */\n\tactionLinks: ActionLink[] = []\n\n\t/**\n\t * @author Alex Hodson\n\t * @description class constructor specifying the required services and properties for the component\n\t */\n\tconstructor() { }\n\n\t/**\n\t * @author Alex Hodson\n\t * @description the method which runs when the component is rendered. Retrieves the account privileges for the logged in user\n\t */\n\tasync ngOnInit(): Promise<void> {\n\t\tthis.handleBaseActionLinks()\n\t}\n\n\thandleBaseActionLinks(): void {\n\t\tif (this.showHome) {\n\t\t\tthis.actionLinks.push({\n\t\t\t\t'id': 'home',\n\t\t\t\t'value': 'Home',\n\t\t\t\t'icon': faHome,\n\t\t\t\t'handleClick': () => this.navigateToHome()\n\t\t\t})\n\t\t}\n\n\t\tif (this.showLogOut) {\n\t\t\tthis.actionLinks.push({\n\t\t\t\t'id': 'log-out',\n\t\t\t\t'value': 'Log Out',\n\t\t\t\t'icon': faSignOutAlt,\n\t\t\t\t'handleClick': () => this.navigateToLogIn()\n\t\t\t})\n\t\t}\n\t}\n\n\t/**\n\t * @author Alex Hodson\n\t * @description opens and closes the side menu according to the current menu state\n\t */\n\ttriggerMenu(): void {\n\t\tthis.open = !this.open\n\t\tthis.menuStatus = this.open ? 'isOpen' : 'isClosed'\n\t}\n}\n","<div #menu id=\"menu-wrap\" class=\"menubar\" [ngClass]=\"menuStatus\">\n\t<div class=\"menuWrap\" [ngClass]=\"menuStatus\">\n\t\t<div class=\"mainMenuArea\">\n\t\t\t<!-- Menu Links Here -->\n\t\t\t<div id=\"privilege-wrap\" [ngClass]=\"menuStatus\" *ngIf=\"privileges\">\n\t\t\t\t<ul>\n\t\t\t\t\t<div *ngFor=\"let element of privileges\">\n\t\t\t\t\t\t<!-- <menu-link [area]=\"element.area\"></menu-link> -->\n\t\t\t\t\t</div>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div id=\"hamburger-wrap\" class=\"hambclicker\" (click)=\"triggerMenu()\"></div>\n\t\t\t<div id=\"hambmenu\" [ngClass]=\"menuStatus\">\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"actionMenuArea\">\n\t\t\t<ul>\n\t\t\t\t<div *ngFor=\"let element of actionLinks\">\n\t\t\t\t\t<action-link [actionLink]=\"element\" [open]=\"open\"></action-link>\n\t\t\t\t</div>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MenuComponent } from './components/menu/menu.component';\nimport { ActionLinkComponent } from './components/action-link/action-link.component'\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome'\n\n\n@NgModule({\n declarations: [\n MenuComponent,\n\t\tActionLinkComponent\n ],\n imports: [\n CommonModule,\n\t\tFontAwesomeModule\n ],\n exports: [\n MenuComponent\n ]\n})\nexport class MainMenuModule { }\n","/*\n * Public API Surface of windows-plus-utilities\n */\n\nexport * from './components/menu/menu.component';\nexport * from './main-menu.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.ActionLinkComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"windows-plus-utilities-main-menu.mjs","sources":["../../../projects/windows-plus-utilities/main-menu/components/action-link/action-link.component.ts","../../../projects/windows-plus-utilities/main-menu/components/action-link/action-link.component.html","../../../projects/windows-plus-utilities/main-menu/components/menu/menu.component.ts","../../../projects/windows-plus-utilities/main-menu/components/menu/menu.component.html","../../../projects/windows-plus-utilities/main-menu/main-menu.module.ts","../../../projects/windows-plus-utilities/main-menu/public-api.ts","../../../projects/windows-plus-utilities/main-menu/windows-plus-utilities-main-menu.ts"],"sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\r\nimport { ActionLink } from '../../util/interface/action-link/action-link.interface'\r\n\r\n@Component({\r\n selector: 'action-link',\r\n templateUrl: './action-link.component.html',\r\n styleUrls: ['./action-link.component.sass']\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description the action link component provides the functionality for the action links inside the side navigation\r\n */\r\nexport class ActionLinkComponent implements OnInit {\r\n\t/**\r\n\t * @description the action link element provided by the parent which contains the action link properties\r\n\t */\r\n\t@Input()\r\n\tactionLink: ActionLink\r\n\r\n\t/**\r\n\t * @description whether the menu is open\r\n\t */\r\n\t@Input()\r\n\topen: boolean\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description class constructor which specifies the required services and properties for the component\r\n\t */\r\n constructor() { }\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the method to be run when the component is rendered\r\n\t */\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<li \r\n\tclass=\"cursor text-left\"\r\n>\r\n\t<div \r\n\t\tid=\"{{'content-wrap-' + actionLink.id}}\"\r\n\t\tclass=\"d-flex align-items-center cursor-pointer\"\r\n\t\t[ngClass]=\"{ 'justify-content-start': open, 'justify-content-center': !open}\"\r\n\t\t(click)=\"actionLink.handleClick()\"\r\n\t>\r\n\t\t<div>\r\n\t\t\t<fa-icon [icon]=\"actionLink.icon\"></fa-icon>\r\n\t\t</div>\r\n\t\t<div id=\"{{'text-wrap-' + actionLink.id}}\" class=\"ps-2\" *ngIf=\"open\">\r\n\t\t\t{{actionLink.value}}\r\n\t\t</div>\r\n\t</div>\r\n</li>","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core'\nimport { faHome, faSignOutAlt } from '@fortawesome/free-solid-svg-icons'\nimport { ActionLink } from '../../util/interface/action-link/action-link.interface'\n\n@Component({\n\tselector: 'wp-menu',\n\ttemplateUrl: './menu.component.html',\n\tstyleUrls: ['./menu.component.sass']\n})\n/**\n * @author Alex Hodson\n * @description the menu component provides the functionality for interacting with the sidebar menu \n */\nexport class MenuComponent implements OnInit {\n\t/**\n\t * @description whether the home link should be displayed in the menu\n\t */\n\t@Input() showHome: boolean = true\n\t/**\n\t * @description handles the navigation to the home screen\n\t */\n\t@Output() navigateToHome: EventEmitter<void> = new EventEmitter()\n\t/**\n\t * @description whether the log out link button should be displayed in the menu\n\t */\n\t@Input() showLogOut: boolean = true\n\t/**\n\t * @description handles the navigation to the log in screen\n\t */\n\t@Output() navigateToLogIn: EventEmitter<void> = new EventEmitter()\n\t/**\n\t * @description the privileges associated with the logged in account\n\t */\n\t@Input() privileges: string[]\n\t/**\n\t * @description the HTML menu element\n\t */\n\t@ViewChild('menu') menu: any\n\t/**\n\t * @description the font awesome icon for the sign out button\n\t */\n\tfaSignOutAlt = faSignOutAlt\n\t/**\n\t * @description the font awesome icon for the home button\n\t */\n\tfaHome = faHome\n\t/**\n\t * @description whether the side menu is open\n\t */\n\topen = false\n\t/**\n\t * @description the status class to be applies to the menu\n\t */\n\tmenuStatus = 'isClosed'\n\t/**\n\t * @description the action links to be displayed in the side navigation menu\n\t */\n\tactionLinks: ActionLink[] = []\n\n\t/**\n\t * @author Alex Hodson\n\t * @description class constructor specifying the required services and properties for the component\n\t */\n\tconstructor() { }\n\n\t/**\n\t * @author Alex Hodson\n\t * @description the method which runs when the component is rendered. Retrieves the account privileges for the logged in user\n\t */\n\tasync ngOnInit(): Promise<void> {\n\t\tthis.handleBaseActionLinks()\n\t}\n\n\thandleBaseActionLinks(): void {\n\t\tif (this.showHome) {\n\t\t\tthis.actionLinks.push({\n\t\t\t\t'id': 'home',\n\t\t\t\t'value': 'Home',\n\t\t\t\t'icon': faHome,\n\t\t\t\t'handleClick': () => this.navigateToHome.emit()\n\t\t\t})\n\t\t}\n\n\t\tif (this.showLogOut) {\n\t\t\tconsole.log('Log out set')\n\t\t\tthis.actionLinks.push({\n\t\t\t\t'id': 'log-out',\n\t\t\t\t'value': 'Log Out',\n\t\t\t\t'icon': faSignOutAlt,\n\t\t\t\t'handleClick': () => {\n\t\t\t\t\tconsole.log('Log out click')\n\t\t\t\t\tthis.navigateToLogIn.emit()\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\t/**\n\t * @author Alex Hodson\n\t * @description opens and closes the side menu according to the current menu state\n\t */\n\ttriggerMenu(): void {\n\t\tthis.open = !this.open\n\t\tthis.menuStatus = this.open ? 'isOpen' : 'isClosed'\n\t}\n}\n","<div #menu id=\"menu-wrap\" class=\"menubar\" [ngClass]=\"menuStatus\">\n\t<div class=\"menuWrap\" [ngClass]=\"menuStatus\">\n\t\t<div class=\"mainMenuArea\">\n\t\t\t<!-- Menu Links Here -->\n\t\t\t<div id=\"privilege-wrap\" [ngClass]=\"menuStatus\" *ngIf=\"privileges\">\n\t\t\t\t<ul>\n\t\t\t\t\t<div *ngFor=\"let element of privileges\">\n\t\t\t\t\t\t<!-- <menu-link [area]=\"element.area\"></menu-link> -->\n\t\t\t\t\t</div>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div id=\"hamburger-wrap\" class=\"hambclicker\" (click)=\"triggerMenu()\"></div>\n\t\t\t<div id=\"hambmenu\" [ngClass]=\"menuStatus\">\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t\t<span></span>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"actionMenuArea\">\n\t\t\t<ul>\n\t\t\t\t<div *ngFor=\"let element of actionLinks\">\n\t\t\t\t\t<action-link [actionLink]=\"element\" [open]=\"open\"></action-link>\n\t\t\t\t</div>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MenuComponent } from './components/menu/menu.component';\nimport { ActionLinkComponent } from './components/action-link/action-link.component'\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome'\n\n\n@NgModule({\n declarations: [\n MenuComponent,\n\t\tActionLinkComponent\n ],\n imports: [\n CommonModule,\n\t\tFontAwesomeModule\n ],\n exports: [\n MenuComponent\n ]\n})\nexport class MainMenuModule { }\n","/*\n * Public API Surface of windows-plus-utilities\n */\n\nexport * from './components/menu/menu.component';\nexport * from './main-menu.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.ActionLinkComponent"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { OnInit } from '@angular/core';
|
|
1
|
+
import { EventEmitter, OnInit } from '@angular/core';
|
|
2
2
|
import { ActionLink } from '../../util/interface/action-link/action-link.interface';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export declare class MenuComponent implements OnInit {
|
|
@@ -9,7 +9,7 @@ export declare class MenuComponent implements OnInit {
|
|
|
9
9
|
/**
|
|
10
10
|
* @description handles the navigation to the home screen
|
|
11
11
|
*/
|
|
12
|
-
navigateToHome:
|
|
12
|
+
navigateToHome: EventEmitter<void>;
|
|
13
13
|
/**
|
|
14
14
|
* @description whether the log out link button should be displayed in the menu
|
|
15
15
|
*/
|
|
@@ -17,7 +17,7 @@ export declare class MenuComponent implements OnInit {
|
|
|
17
17
|
/**
|
|
18
18
|
* @description handles the navigation to the log in screen
|
|
19
19
|
*/
|
|
20
|
-
navigateToLogIn:
|
|
20
|
+
navigateToLogIn: EventEmitter<void>;
|
|
21
21
|
/**
|
|
22
22
|
* @description the privileges associated with the logged in account
|
|
23
23
|
*/
|
|
@@ -63,5 +63,5 @@ export declare class MenuComponent implements OnInit {
|
|
|
63
63
|
*/
|
|
64
64
|
triggerMenu(): void;
|
|
65
65
|
static ɵfac: i0.ɵɵFactoryDeclaration<MenuComponent, never>;
|
|
66
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<MenuComponent, "wp-menu", never, { "showHome": "showHome"; "
|
|
66
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<MenuComponent, "wp-menu", never, { "showHome": "showHome"; "showLogOut": "showLogOut"; "privileges": "privileges"; }, { "navigateToHome": "navigateToHome"; "navigateToLogIn": "navigateToLogIn"; }, never, never, false>;
|
|
67
67
|
}
|