windows-plus-utilities 0.0.27 → 0.0.29
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/custom-card/components/custom-card/custom-card.component.mjs +2 -2
- package/esm2020/table/components/table/table.component.mjs +41 -0
- package/esm2020/table/public-api.mjs +8 -0
- package/esm2020/table/table.module.mjs +28 -0
- package/esm2020/table/util/interface/config/table-configuration.interface.mjs +2 -0
- package/esm2020/table/util/types/table-data/table-data.type.mjs +2 -0
- package/esm2020/table/windows-plus-utilities-table.mjs +5 -0
- package/fesm2015/windows-plus-utilities-custom-card.mjs +2 -2
- package/fesm2015/windows-plus-utilities-custom-card.mjs.map +1 -1
- package/fesm2015/windows-plus-utilities-table.mjs +77 -0
- package/fesm2015/windows-plus-utilities-table.mjs.map +1 -0
- package/fesm2020/windows-plus-utilities-custom-card.mjs +2 -2
- package/fesm2020/windows-plus-utilities-custom-card.mjs.map +1 -1
- package/fesm2020/windows-plus-utilities-table.mjs +77 -0
- package/fesm2020/windows-plus-utilities-table.mjs.map +1 -0
- package/package.json +11 -2
- package/table/components/table/table.component.d.ts +40 -0
- package/table/index.d.ts +5 -0
- package/table/public-api.d.ts +4 -0
- package/table/table.module.d.ts +9 -0
- package/table/util/interface/config/table-configuration.interface.d.ts +12 -0
- package/table/util/types/table-data/table-data.type.d.ts +8 -0
|
@@ -13,10 +13,10 @@ export class CustomCardComponent {
|
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
CustomCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CustomCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
16
|
-
CustomCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CustomCardComponent, selector: "wp-custom-card", inputs: { id: "id", active: "active", handleClick: "handleClick", label: "label" }, ngImport: i0, template: "<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>", styles: [".custom-card{cursor:pointer;width:100%;box-shadow:0 8px 16px #0000004d;background-color:#fff;position:relative;overflow:hidden;transition:all .85s ease}.custom-card .card-header{padding:1rem;display:flex;justify-content:center;background-color:unset;align-items:center;flex-direction:column;position:relative}.custom-card .card-header .card-title{padding:1rem 0;font-size:15px;font-weight:500;color:#24334e;transition:all .25s ease}.custom-card .overlay{width:100%;height:0;background-color:var(--wp-primaryBlue);position:absolute;transition:height .85s ease,opacity .55s ease-in-out}.custom-card.active,.custom-card.active .card-header .card-title,.custom-card.active .overlay{color:#fff!important;background-color:var(--wp-primaryGreen)!important}.custom-card:hover{color:#fff}.custom-card:hover .overlay{height:100%;transition:height .25s ease,opacity .55s ease-in-out}.custom-card:hover .card-header .card-title{color:#fff;z-index:999}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
16
|
+
CustomCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CustomCardComponent, selector: "wp-custom-card", inputs: { id: "id", active: "active", handleClick: "handleClick", label: "label" }, ngImport: i0, template: "<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>", styles: [".custom-card-wrap{flex-basis:150px;flex-grow:1;padding-right:15px;padding-left:15px}.custom-card{cursor:pointer;width:100%;box-shadow:0 8px 16px #0000004d;background-color:#fff;position:relative;overflow:hidden;transition:all .85s ease}.custom-card .card-header{padding:1rem;display:flex;justify-content:center;background-color:unset;align-items:center;flex-direction:column;position:relative}.custom-card .card-header .card-title{padding:1rem 0;font-size:15px;font-weight:500;color:#24334e;transition:all .25s ease}.custom-card .overlay{width:100%;height:0;background-color:var(--wp-primaryBlue);position:absolute;transition:height .85s ease,opacity .55s ease-in-out}.custom-card.active,.custom-card.active .card-header .card-title,.custom-card.active .overlay{color:#fff!important;background-color:var(--wp-primaryGreen)!important}.custom-card:hover{color:#fff}.custom-card:hover .overlay{height:100%;transition:height .25s ease,opacity .55s ease-in-out}.custom-card:hover .card-header .card-title{color:#fff;z-index:999}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
17
17
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CustomCardComponent, decorators: [{
|
|
18
18
|
type: Component,
|
|
19
|
-
args: [{ selector: 'wp-custom-card', template: "<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>", styles: [".custom-card{cursor:pointer;width:100%;box-shadow:0 8px 16px #0000004d;background-color:#fff;position:relative;overflow:hidden;transition:all .85s ease}.custom-card .card-header{padding:1rem;display:flex;justify-content:center;background-color:unset;align-items:center;flex-direction:column;position:relative}.custom-card .card-header .card-title{padding:1rem 0;font-size:15px;font-weight:500;color:#24334e;transition:all .25s ease}.custom-card .overlay{width:100%;height:0;background-color:var(--wp-primaryBlue);position:absolute;transition:height .85s ease,opacity .55s ease-in-out}.custom-card.active,.custom-card.active .card-header .card-title,.custom-card.active .overlay{color:#fff!important;background-color:var(--wp-primaryGreen)!important}.custom-card:hover{color:#fff}.custom-card:hover .overlay{height:100%;transition:height .25s ease,opacity .55s ease-in-out}.custom-card:hover .card-header .card-title{color:#fff;z-index:999}\n"] }]
|
|
19
|
+
args: [{ selector: 'wp-custom-card', template: "<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>", styles: [".custom-card-wrap{flex-basis:150px;flex-grow:1;padding-right:15px;padding-left:15px}.custom-card{cursor:pointer;width:100%;box-shadow:0 8px 16px #0000004d;background-color:#fff;position:relative;overflow:hidden;transition:all .85s ease}.custom-card .card-header{padding:1rem;display:flex;justify-content:center;background-color:unset;align-items:center;flex-direction:column;position:relative}.custom-card .card-header .card-title{padding:1rem 0;font-size:15px;font-weight:500;color:#24334e;transition:all .25s ease}.custom-card .overlay{width:100%;height:0;background-color:var(--wp-primaryBlue);position:absolute;transition:height .85s ease,opacity .55s ease-in-out}.custom-card.active,.custom-card.active .card-header .card-title,.custom-card.active .overlay{color:#fff!important;background-color:var(--wp-primaryGreen)!important}.custom-card:hover{color:#fff}.custom-card:hover .overlay{height:100%;transition:height .25s ease,opacity .55s ease-in-out}.custom-card:hover .card-header .card-title{color:#fff;z-index:999}\n"] }]
|
|
20
20
|
}], ctorParameters: function () { return []; }, propDecorators: { id: [{
|
|
21
21
|
type: Input
|
|
22
22
|
}], active: [{
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "windows-plus-form-fields/custom-button";
|
|
5
|
+
export class TableComponent {
|
|
6
|
+
/**
|
|
7
|
+
* @author Alex Hodson
|
|
8
|
+
* @description class constructor specifying the required services and properties for the component
|
|
9
|
+
*/
|
|
10
|
+
constructor() { }
|
|
11
|
+
/**
|
|
12
|
+
* @author Alex Hodson
|
|
13
|
+
* @description the method to be run when the component is rendered
|
|
14
|
+
*/
|
|
15
|
+
ngOnInit() {
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* @author Alex Hodson
|
|
19
|
+
* @description identifies whether the given element is a string or number; If so, the element can be rendered normally
|
|
20
|
+
* @param element the element to be checked
|
|
21
|
+
* @returns whether the given element is a string or number
|
|
22
|
+
*/
|
|
23
|
+
isString(element) {
|
|
24
|
+
return typeof element === 'string' || typeof element === 'number' || element == null;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
+
TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TableComponent, selector: "wp-table", inputs: { id: "id", title: "title", headers: "headers", tableData: "tableData" }, ngImport: i0, template: "<div>\n\t<h2 class=\"lead\">{{title}}</h2>\n\t<div *ngIf=\"tableData.length > 0 then tableBlock else emptyBlock\"></div>\n\t<ng-template #tableBlock>\n\t\t<div class=\"scrollable-wrapper\">\n\t\t\t<table [id]=\"id\" class=\"table table-responsive\">\n\t\t\t\t<thead class=\"thead thead-blue\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th *ngFor=\"let header of headers\">{{header}}</th>\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t<tbody>\n\t\t\t\t\t<tr *ngFor=\"let row of tableData\">\n\t\t\t\t\t\t<td class=\"table-cell text-grey\" *ngFor=\"let header of headers\">\n\t\t\t\t\t\t\t<ng-container [ngSwitch]=\"true\">\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"isString(row[header])\">\n\t\t\t\t\t\t\t\t\t{{row[header]}}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"!isString(row[header])\">\n\t\t\t\t\t\t\t\t\t<wp-custom-button \n\t\t\t\t\t\t\t\t\t\t[id]=\"row[header].id\"\n\t\t\t\t\t\t\t\t\t\t[value]=\"row[header].value\"\n\t\t\t\t\t\t\t\t\t\t[type]=\"row[header].type\"\n\t\t\t\t\t\t\t\t\t\t[colour]=\"row[header].colour\"\n\t\t\t\t\t\t\t\t\t\t[outline]=\"row[header].outline\"\n\t\t\t\t\t\t\t\t\t\t[disabled]=\"row[header].disabled\"\n\t\t\t\t\t\t\t\t\t\t[icon]=\"row[header].icon\"\n\t\t\t\t\t\t\t\t\t\t(handleClick)=\"row[header].handleClick($event)\"\n\t\t\t\t\t\t\t\t\t></wp-custom-button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody>\n\t\t\t</table>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #emptyBlock>\n\t\t<p class=\"text-grey\">There is no data to show</p>\n\t</ng-template>\n</div>", styles: [".scrollable-wrapper{max-height:400px;overflow-y:auto}.table-responsive{max-height:500px;width:100%;overflow-y:auto}table{table-layout:fixed}table .thead{font-size:14px;font-family:--wp-fontFamily}table .thead-blue th{background:var(--wp-secondaryBlue);color:#fff}table th{position:sticky;top:0}table .table-cell{font-size:14px;font-family:--wp-fontFamily;padding:5px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.CustomButtonComponent, selector: "wp-custom-button", inputs: ["value", "type", "colour", "id", "outline", "disabled", "icon"], outputs: ["handleClick"] }] });
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableComponent, decorators: [{
|
|
30
|
+
type: Component,
|
|
31
|
+
args: [{ selector: 'wp-table', template: "<div>\n\t<h2 class=\"lead\">{{title}}</h2>\n\t<div *ngIf=\"tableData.length > 0 then tableBlock else emptyBlock\"></div>\n\t<ng-template #tableBlock>\n\t\t<div class=\"scrollable-wrapper\">\n\t\t\t<table [id]=\"id\" class=\"table table-responsive\">\n\t\t\t\t<thead class=\"thead thead-blue\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th *ngFor=\"let header of headers\">{{header}}</th>\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t<tbody>\n\t\t\t\t\t<tr *ngFor=\"let row of tableData\">\n\t\t\t\t\t\t<td class=\"table-cell text-grey\" *ngFor=\"let header of headers\">\n\t\t\t\t\t\t\t<ng-container [ngSwitch]=\"true\">\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"isString(row[header])\">\n\t\t\t\t\t\t\t\t\t{{row[header]}}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"!isString(row[header])\">\n\t\t\t\t\t\t\t\t\t<wp-custom-button \n\t\t\t\t\t\t\t\t\t\t[id]=\"row[header].id\"\n\t\t\t\t\t\t\t\t\t\t[value]=\"row[header].value\"\n\t\t\t\t\t\t\t\t\t\t[type]=\"row[header].type\"\n\t\t\t\t\t\t\t\t\t\t[colour]=\"row[header].colour\"\n\t\t\t\t\t\t\t\t\t\t[outline]=\"row[header].outline\"\n\t\t\t\t\t\t\t\t\t\t[disabled]=\"row[header].disabled\"\n\t\t\t\t\t\t\t\t\t\t[icon]=\"row[header].icon\"\n\t\t\t\t\t\t\t\t\t\t(handleClick)=\"row[header].handleClick($event)\"\n\t\t\t\t\t\t\t\t\t></wp-custom-button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody>\n\t\t\t</table>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #emptyBlock>\n\t\t<p class=\"text-grey\">There is no data to show</p>\n\t</ng-template>\n</div>", styles: [".scrollable-wrapper{max-height:400px;overflow-y:auto}.table-responsive{max-height:500px;width:100%;overflow-y:auto}table{table-layout:fixed}table .thead{font-size:14px;font-family:--wp-fontFamily}table .thead-blue th{background:var(--wp-secondaryBlue);color:#fff}table th{position:sticky;top:0}table .table-cell{font-size:14px;font-family:--wp-fontFamily;padding:5px}\n"] }]
|
|
32
|
+
}], ctorParameters: function () { return []; }, propDecorators: { id: [{
|
|
33
|
+
type: Input
|
|
34
|
+
}], title: [{
|
|
35
|
+
type: Input
|
|
36
|
+
}], headers: [{
|
|
37
|
+
type: Input
|
|
38
|
+
}], tableData: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}] } });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2luZG93cy1wbHVzLXV0aWxpdGllcy90YWJsZS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dpbmRvd3MtcGx1cy11dGlsaXRpZXMvdGFibGUvY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBa0IsTUFBTSxlQUFlLENBQUM7Ozs7QUFRakUsTUFBTSxPQUFPLGNBQWM7SUFpQjFCOzs7T0FHRztJQUNILGdCQUFnQixDQUFDO0lBQ2pCOzs7T0FHRztJQUNILFFBQVE7SUFDUixDQUFDO0lBQ0Q7Ozs7O09BS0c7SUFDSCxRQUFRLENBQUMsT0FBa0I7UUFDMUIsT0FBTyxPQUFPLE9BQU8sS0FBSyxRQUFRLElBQUksT0FBTyxPQUFPLEtBQUssUUFBUSxJQUFJLE9BQU8sSUFBSSxJQUFJLENBQUE7SUFDckYsQ0FBQzs7NEdBcENXLGNBQWM7Z0dBQWQsY0FBYyxrSUNSM0Isa2lEQXdDTTs0RkRoQ08sY0FBYztrQkFMMUIsU0FBUzsrQkFDRSxVQUFVOzBFQVFaLEVBQUU7c0JBQVYsS0FBSztnQkFJRyxLQUFLO3NCQUFiLEtBQUs7Z0JBSUcsT0FBTztzQkFBZixLQUFLO2dCQUlHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGFibGVEYXRhIH0gZnJvbSAnLi4vLi4vdXRpbC90eXBlcy90YWJsZS1kYXRhL3RhYmxlLWRhdGEudHlwZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd3AtdGFibGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWJsZS5jb21wb25lbnQuc2FzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblx0LyoqXG5cdCAqIEBkZXNjcmlwdGlvbiB0aGUgaWRlbnRpZmllciBvZiB0aGUgdGFibGUgZWxlbWVudFxuXHQgKi9cblx0QElucHV0KCkgaWQ6IHN0cmluZ1xuXHQvKipcblx0ICogQGRlc2NyaXB0aW9uIHRoZSB0aXRsZSBvZiB0aGUgdGFibGVcblx0ICovXG5cdEBJbnB1dCgpIHRpdGxlOiBzdHJpbmdcblx0LyoqXG5cdCAqIEBkZXNjcmlwdGlvbiB0aGUgdGFibGUgaGVhZGVyc1xuXHQgKi9cblx0QElucHV0KCkgaGVhZGVyczogc3RyaW5nXG5cdC8qKlxuXHQgKiBAZGVzY3JpcHRpb24gdGhlIHRhYmxlIGRhdGEgdG8gYmUgZGlzcGxheWVkXG5cdCAqL1xuXHRASW5wdXQoKSB0YWJsZURhdGE6IFRhYmxlRGF0YVtdXG5cdC8qKlxuXHQgKiBAYXV0aG9yIEFsZXggSG9kc29uXG5cdCAqIEBkZXNjcmlwdGlvbiBjbGFzcyBjb25zdHJ1Y3RvciBzcGVjaWZ5aW5nIHRoZSByZXF1aXJlZCBzZXJ2aWNlcyBhbmQgcHJvcGVydGllcyBmb3IgdGhlIGNvbXBvbmVudFxuXHQgKi9cblx0Y29uc3RydWN0b3IoKSB7IH1cblx0LyoqXG5cdCAqIEBhdXRob3IgQWxleCBIb2Rzb25cblx0ICogQGRlc2NyaXB0aW9uIHRoZSBtZXRob2QgdG8gYmUgcnVuIHdoZW4gdGhlIGNvbXBvbmVudCBpcyByZW5kZXJlZFxuXHQgKi9cblx0bmdPbkluaXQoKTogdm9pZCB7XG5cdH1cblx0LyoqXG5cdCAqIEBhdXRob3IgQWxleCBIb2Rzb25cblx0ICogQGRlc2NyaXB0aW9uIGlkZW50aWZpZXMgd2hldGhlciB0aGUgZ2l2ZW4gZWxlbWVudCBpcyBhIHN0cmluZyBvciBudW1iZXI7IElmIHNvLCB0aGUgZWxlbWVudCBjYW4gYmUgcmVuZGVyZWQgbm9ybWFsbHlcblx0ICogQHBhcmFtIGVsZW1lbnQgdGhlIGVsZW1lbnQgdG8gYmUgY2hlY2tlZFxuXHQgKiBAcmV0dXJucyB3aGV0aGVyIHRoZSBnaXZlbiBlbGVtZW50IGlzIGEgc3RyaW5nIG9yIG51bWJlclxuXHQgKi9cblx0aXNTdHJpbmcoZWxlbWVudDogVGFibGVEYXRhKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHR5cGVvZiBlbGVtZW50ID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgZWxlbWVudCA9PT0gJ251bWJlcicgfHwgZWxlbWVudCA9PSBudWxsXG5cdH1cbn1cbiIsIjxkaXY+XG5cdDxoMiBjbGFzcz1cImxlYWRcIj57e3RpdGxlfX08L2gyPlxuXHQ8ZGl2ICpuZ0lmPVwidGFibGVEYXRhLmxlbmd0aCA+IDAgdGhlbiB0YWJsZUJsb2NrIGVsc2UgZW1wdHlCbG9ja1wiPjwvZGl2PlxuXHQ8bmctdGVtcGxhdGUgI3RhYmxlQmxvY2s+XG5cdFx0PGRpdiBjbGFzcz1cInNjcm9sbGFibGUtd3JhcHBlclwiPlxuXHRcdFx0PHRhYmxlIFtpZF09XCJpZFwiIGNsYXNzPVwidGFibGUgdGFibGUtcmVzcG9uc2l2ZVwiPlxuXHRcdFx0XHQ8dGhlYWQgY2xhc3M9XCJ0aGVhZCB0aGVhZC1ibHVlXCI+XG5cdFx0XHRcdFx0PHRyPlxuXHRcdFx0XHRcdFx0PHRoICpuZ0Zvcj1cImxldCBoZWFkZXIgb2YgaGVhZGVyc1wiPnt7aGVhZGVyfX08L3RoPlxuXHRcdFx0XHRcdDwvdHI+XG5cdFx0XHRcdDwvdGhlYWQ+XG5cdFx0XHRcdDx0Ym9keT5cblx0XHRcdFx0XHQ8dHIgKm5nRm9yPVwibGV0IHJvdyBvZiB0YWJsZURhdGFcIj5cblx0XHRcdFx0XHRcdDx0ZCBjbGFzcz1cInRhYmxlLWNlbGwgdGV4dC1ncmV5XCIgKm5nRm9yPVwibGV0IGhlYWRlciBvZiBoZWFkZXJzXCI+XG5cdFx0XHRcdFx0XHRcdDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInRydWVcIj5cblx0XHRcdFx0XHRcdFx0XHQ8ZGl2ICpuZ1N3aXRjaENhc2U9XCJpc1N0cmluZyhyb3dbaGVhZGVyXSlcIj5cblx0XHRcdFx0XHRcdFx0XHRcdHt7cm93W2hlYWRlcl19fVxuXHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdFx0XHRcdDxkaXYgKm5nU3dpdGNoQ2FzZT1cIiFpc1N0cmluZyhyb3dbaGVhZGVyXSlcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDx3cC1jdXN0b20tYnV0dG9uIFxuXHRcdFx0XHRcdFx0XHRcdFx0XHRbaWRdPVwicm93W2hlYWRlcl0uaWRcIlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRbdmFsdWVdPVwicm93W2hlYWRlcl0udmFsdWVcIlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRbdHlwZV09XCJyb3dbaGVhZGVyXS50eXBlXCJcblx0XHRcdFx0XHRcdFx0XHRcdFx0W2NvbG91cl09XCJyb3dbaGVhZGVyXS5jb2xvdXJcIlxuXHRcdFx0XHRcdFx0XHRcdFx0XHRbb3V0bGluZV09XCJyb3dbaGVhZGVyXS5vdXRsaW5lXCJcblx0XHRcdFx0XHRcdFx0XHRcdFx0W2Rpc2FibGVkXT1cInJvd1toZWFkZXJdLmRpc2FibGVkXCJcblx0XHRcdFx0XHRcdFx0XHRcdFx0W2ljb25dPVwicm93W2hlYWRlcl0uaWNvblwiXG5cdFx0XHRcdFx0XHRcdFx0XHRcdChoYW5kbGVDbGljayk9XCJyb3dbaGVhZGVyXS5oYW5kbGVDbGljaygkZXZlbnQpXCJcblx0XHRcdFx0XHRcdFx0XHRcdD48L3dwLWN1c3RvbS1idXR0b24+XG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHRcdDwvbmctY29udGFpbmVyPlxuXHRcdFx0XHRcdFx0PC90ZD5cblx0XHRcdFx0XHQ8L3RyPlxuXHRcdFx0XHQ8L3Rib2R5PlxuXHRcdFx0PC90YWJsZT5cblx0XHQ8L2Rpdj5cblx0PC9uZy10ZW1wbGF0ZT5cblx0PG5nLXRlbXBsYXRlICNlbXB0eUJsb2NrPlxuXHRcdDxwIGNsYXNzPVwidGV4dC1ncmV5XCI+VGhlcmUgaXMgbm8gZGF0YSB0byBzaG93PC9wPlxuXHQ8L25nLXRlbXBsYXRlPlxuPC9kaXY+Il19
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Public API Surface of windows-plus-utilities
|
|
3
|
+
*/
|
|
4
|
+
export * from './components/table/table.component';
|
|
5
|
+
export * from './util/interface/config/table-configuration.interface';
|
|
6
|
+
export * from './util/types/table-data/table-data.type';
|
|
7
|
+
export * from './table.module';
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3dpbmRvd3MtcGx1cy11dGlsaXRpZXMvdGFibGUvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygd2luZG93cy1wbHVzLXV0aWxpdGllc1xyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3V0aWwvaW50ZXJmYWNlL2NvbmZpZy90YWJsZS1jb25maWd1cmF0aW9uLmludGVyZmFjZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdXRpbC90eXBlcy90YWJsZS1kYXRhL3RhYmxlLWRhdGEudHlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdGFibGUubW9kdWxlJztcclxuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { TableComponent } from './components/table/table.component';
|
|
4
|
+
import { CustomButtonModule } from 'windows-plus-form-fields/custom-button';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class TableModule {
|
|
7
|
+
}
|
|
8
|
+
TableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
TableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: TableModule, declarations: [TableComponent], imports: [CommonModule,
|
|
10
|
+
CustomButtonModule], exports: [TableComponent] });
|
|
11
|
+
TableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableModule, imports: [CommonModule,
|
|
12
|
+
CustomButtonModule] });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableModule, decorators: [{
|
|
14
|
+
type: NgModule,
|
|
15
|
+
args: [{
|
|
16
|
+
declarations: [
|
|
17
|
+
TableComponent
|
|
18
|
+
],
|
|
19
|
+
imports: [
|
|
20
|
+
CommonModule,
|
|
21
|
+
CustomButtonModule,
|
|
22
|
+
],
|
|
23
|
+
exports: [
|
|
24
|
+
TableComponent
|
|
25
|
+
]
|
|
26
|
+
}]
|
|
27
|
+
}] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvd2luZG93cy1wbHVzLXV0aWxpdGllcy90YWJsZS90YWJsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOztBQWM1RSxNQUFNLE9BQU8sV0FBVzs7eUdBQVgsV0FBVzswR0FBWCxXQUFXLGlCQVZwQixjQUFjLGFBR2pCLFlBQVk7UUFDWCxrQkFBa0IsYUFHaEIsY0FBYzswR0FHTCxXQUFXLFlBUHZCLFlBQVk7UUFDWCxrQkFBa0I7NEZBTVAsV0FBVztrQkFadkIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osY0FBYztxQkFDZjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1YsWUFBWTt3QkFDWCxrQkFBa0I7cUJBQ2pCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxjQUFjO3FCQUNmO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VzdG9tQnV0dG9uTW9kdWxlIH0gZnJvbSAnd2luZG93cy1wbHVzLWZvcm0tZmllbGRzL2N1c3RvbS1idXR0b24nO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBUYWJsZUNvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG5cdENvbW1vbk1vZHVsZSxcblx0XHRDdXN0b21CdXR0b25Nb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBUYWJsZUNvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlTW9kdWxlIHsgfVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29uZmlndXJhdGlvbi5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93aW5kb3dzLXBsdXMtdXRpbGl0aWVzL3RhYmxlL3V0aWwvaW50ZXJmYWNlL2NvbmZpZy90YWJsZS1jb25maWd1cmF0aW9uLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFibGVEYXRhIH0gZnJvbSAnLi4vLi4vdHlwZXMvdGFibGUtZGF0YS90YWJsZS1kYXRhLnR5cGUnXHJcbi8qKlxyXG4gKiBAYXV0aG9yIEFsZXggSG9kc29uXHJcbiAqIEBkZXNjcmlwdGlvbiBhbiBpbnRlcmZhY2Ugd2hpY2ggZGVmaW5lcyB0aGUgcHJvcGVydGllcyByZXF1aXJlZCBieSB0aGUgdGFibGVcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVDb25maWd1cmF0aW9uIHtcclxuXHQnaWQnOiBzdHJpbmcsXHJcblx0J3RpdGxlJzogc3RyaW5nLFxyXG5cdCdoZWFkZXJzJzogc3RyaW5nW10sXHJcblx0J3RhYmxlRGF0YSc6IFRhYmxlRGF0YVtdXHJcblx0J2NvbmRpdGlvbic/OiAoLi4uYXJnczogYW55W10pID0+IGJvb2xlYW5cclxufSJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZGF0YS50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2luZG93cy1wbHVzLXV0aWxpdGllcy90YWJsZS91dGlsL3R5cGVzL3RhYmxlLWRhdGEvdGFibGUtZGF0YS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXN0b21CdXR0b25Db25maWcgfSBmcm9tICd3aW5kb3dzLXBsdXMtZm9ybS1maWVsZHMvY3VzdG9tLWJ1dHRvbidcclxuXHJcbi8qKlxyXG4gKiBAYXV0aG9yIEFsZXggSG9kc29uXHJcbiAqIEBkZXNjcmlwdGlvbiBhIHVuaW9uIHR5cGUgd2hpY2ggZGVmaW5lcyB0aGUgYXZhaWxhYmxlIHR5cGVzIGZvciBhIHRhYmxlcyBkYXRhIFxyXG4gKi9cclxuZXhwb3J0IHR5cGUgVGFibGVEYXRhID0geyBba2V5OiBzdHJpbmddOiBDdXN0b21CdXR0b25Db25maWd8c3RyaW5nfG51bWJlciB9Il19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luZG93cy1wbHVzLXV0aWxpdGllcy10YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3dpbmRvd3MtcGx1cy11dGlsaXRpZXMvdGFibGUvd2luZG93cy1wbHVzLXV0aWxpdGllcy10YWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
|
@@ -15,10 +15,10 @@ class CustomCardComponent {
|
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
CustomCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CustomCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18
|
-
CustomCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CustomCardComponent, selector: "wp-custom-card", inputs: { id: "id", active: "active", handleClick: "handleClick", label: "label" }, ngImport: i0, template: "<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>", styles: [".custom-card{cursor:pointer;width:100%;box-shadow:0 8px 16px #0000004d;background-color:#fff;position:relative;overflow:hidden;transition:all .85s ease}.custom-card .card-header{padding:1rem;display:flex;justify-content:center;background-color:unset;align-items:center;flex-direction:column;position:relative}.custom-card .card-header .card-title{padding:1rem 0;font-size:15px;font-weight:500;color:#24334e;transition:all .25s ease}.custom-card .overlay{width:100%;height:0;background-color:var(--wp-primaryBlue);position:absolute;transition:height .85s ease,opacity .55s ease-in-out}.custom-card.active,.custom-card.active .card-header .card-title,.custom-card.active .overlay{color:#fff!important;background-color:var(--wp-primaryGreen)!important}.custom-card:hover{color:#fff}.custom-card:hover .overlay{height:100%;transition:height .25s ease,opacity .55s ease-in-out}.custom-card:hover .card-header .card-title{color:#fff;z-index:999}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
18
|
+
CustomCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CustomCardComponent, selector: "wp-custom-card", inputs: { id: "id", active: "active", handleClick: "handleClick", label: "label" }, ngImport: i0, template: "<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>", styles: [".custom-card-wrap{flex-basis:150px;flex-grow:1;padding-right:15px;padding-left:15px}.custom-card{cursor:pointer;width:100%;box-shadow:0 8px 16px #0000004d;background-color:#fff;position:relative;overflow:hidden;transition:all .85s ease}.custom-card .card-header{padding:1rem;display:flex;justify-content:center;background-color:unset;align-items:center;flex-direction:column;position:relative}.custom-card .card-header .card-title{padding:1rem 0;font-size:15px;font-weight:500;color:#24334e;transition:all .25s ease}.custom-card .overlay{width:100%;height:0;background-color:var(--wp-primaryBlue);position:absolute;transition:height .85s ease,opacity .55s ease-in-out}.custom-card.active,.custom-card.active .card-header .card-title,.custom-card.active .overlay{color:#fff!important;background-color:var(--wp-primaryGreen)!important}.custom-card:hover{color:#fff}.custom-card:hover .overlay{height:100%;transition:height .25s ease,opacity .55s ease-in-out}.custom-card:hover .card-header .card-title{color:#fff;z-index:999}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
19
19
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CustomCardComponent, decorators: [{
|
|
20
20
|
type: Component,
|
|
21
|
-
args: [{ selector: 'wp-custom-card', template: "<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>", styles: [".custom-card{cursor:pointer;width:100%;box-shadow:0 8px 16px #0000004d;background-color:#fff;position:relative;overflow:hidden;transition:all .85s ease}.custom-card .card-header{padding:1rem;display:flex;justify-content:center;background-color:unset;align-items:center;flex-direction:column;position:relative}.custom-card .card-header .card-title{padding:1rem 0;font-size:15px;font-weight:500;color:#24334e;transition:all .25s ease}.custom-card .overlay{width:100%;height:0;background-color:var(--wp-primaryBlue);position:absolute;transition:height .85s ease,opacity .55s ease-in-out}.custom-card.active,.custom-card.active .card-header .card-title,.custom-card.active .overlay{color:#fff!important;background-color:var(--wp-primaryGreen)!important}.custom-card:hover{color:#fff}.custom-card:hover .overlay{height:100%;transition:height .25s ease,opacity .55s ease-in-out}.custom-card:hover .card-header .card-title{color:#fff;z-index:999}\n"] }]
|
|
21
|
+
args: [{ selector: 'wp-custom-card', template: "<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>", styles: [".custom-card-wrap{flex-basis:150px;flex-grow:1;padding-right:15px;padding-left:15px}.custom-card{cursor:pointer;width:100%;box-shadow:0 8px 16px #0000004d;background-color:#fff;position:relative;overflow:hidden;transition:all .85s ease}.custom-card .card-header{padding:1rem;display:flex;justify-content:center;background-color:unset;align-items:center;flex-direction:column;position:relative}.custom-card .card-header .card-title{padding:1rem 0;font-size:15px;font-weight:500;color:#24334e;transition:all .25s ease}.custom-card .overlay{width:100%;height:0;background-color:var(--wp-primaryBlue);position:absolute;transition:height .85s ease,opacity .55s ease-in-out}.custom-card.active,.custom-card.active .card-header .card-title,.custom-card.active .overlay{color:#fff!important;background-color:var(--wp-primaryGreen)!important}.custom-card:hover{color:#fff}.custom-card:hover .overlay{height:100%;transition:height .25s ease,opacity .55s ease-in-out}.custom-card:hover .card-header .card-title{color:#fff;z-index:999}\n"] }]
|
|
22
22
|
}], ctorParameters: function () { return []; }, propDecorators: { id: [{
|
|
23
23
|
type: Input
|
|
24
24
|
}], active: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windows-plus-utilities-custom-card.mjs","sources":["../../../projects/windows-plus-utilities/custom-card/components/custom-card/custom-card.component.ts","../../../projects/windows-plus-utilities/custom-card/components/custom-card/custom-card.component.html","../../../projects/windows-plus-utilities/custom-card/custom-card.module.ts","../../../projects/windows-plus-utilities/custom-card/public-api.ts","../../../projects/windows-plus-utilities/custom-card/windows-plus-utilities-custom-card.ts"],"sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'wp-custom-card',\r\n templateUrl: './custom-card.component.html',\r\n styleUrls: ['./custom-card.component.sass']\r\n})\r\nexport class CustomCardComponent implements OnInit {\r\n\t/**\r\n\t * @description the cards HTML element identifier\r\n\t */\r\n\t@Input() id: string\r\n\t/**\r\n\t * @description whether the card is the active card\r\n\t */\r\n\t@Input() active: boolean\r\n\t/**\r\n\t * @description the method to be run when the card is clicked\r\n\t */\r\n\t@Input() handleClick: (...args: any[]) => void\r\n\t/**\r\n\t * @description the value to be displayed in the card\r\n\t */\r\n\t@Input() label: string\r\n\t/**\r\n\t * @description class constructor specifying the required properties and services\r\n\t */\r\n constructor() { }\r\n\t/**\r\n\t * @description the method to be run when the component is loaded\r\n\t */\r\n ngOnInit(): void {\r\n }\r\n}\r\n","<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CustomCardComponent } from './components/custom-card/custom-card.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CustomCardComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n CustomCardComponent\r\n ]\r\n})\r\nexport class CustomCardModule { }\r\n","/*\r\n * Public API Surface of windows-plus-utilities\r\n */\r\n\r\nexport * from './components/custom-card/custom-card.component';\r\nexport * from './util/interface/config/custom-card-config.interface';\r\nexport * from './custom-card.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;MAOa,mBAAmB,CAAA;AAiB/B;;AAEG;AACF,IAAA,WAAA,GAAA,GAAiB;AAClB;;AAEG;IACF,QAAQ,GAAA;KACP;;iHAzBU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mBAAmB,0ICPhC,yUAcM,EAAA,MAAA,EAAA,CAAA
|
|
1
|
+
{"version":3,"file":"windows-plus-utilities-custom-card.mjs","sources":["../../../projects/windows-plus-utilities/custom-card/components/custom-card/custom-card.component.ts","../../../projects/windows-plus-utilities/custom-card/components/custom-card/custom-card.component.html","../../../projects/windows-plus-utilities/custom-card/custom-card.module.ts","../../../projects/windows-plus-utilities/custom-card/public-api.ts","../../../projects/windows-plus-utilities/custom-card/windows-plus-utilities-custom-card.ts"],"sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'wp-custom-card',\r\n templateUrl: './custom-card.component.html',\r\n styleUrls: ['./custom-card.component.sass']\r\n})\r\nexport class CustomCardComponent implements OnInit {\r\n\t/**\r\n\t * @description the cards HTML element identifier\r\n\t */\r\n\t@Input() id: string\r\n\t/**\r\n\t * @description whether the card is the active card\r\n\t */\r\n\t@Input() active: boolean\r\n\t/**\r\n\t * @description the method to be run when the card is clicked\r\n\t */\r\n\t@Input() handleClick: (...args: any[]) => void\r\n\t/**\r\n\t * @description the value to be displayed in the card\r\n\t */\r\n\t@Input() label: string\r\n\t/**\r\n\t * @description class constructor specifying the required properties and services\r\n\t */\r\n constructor() { }\r\n\t/**\r\n\t * @description the method to be run when the component is loaded\r\n\t */\r\n ngOnInit(): void {\r\n }\r\n}\r\n","<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CustomCardComponent } from './components/custom-card/custom-card.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CustomCardComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n CustomCardComponent\r\n ]\r\n})\r\nexport class CustomCardModule { }\r\n","/*\r\n * Public API Surface of windows-plus-utilities\r\n */\r\n\r\nexport * from './components/custom-card/custom-card.component';\r\nexport * from './util/interface/config/custom-card-config.interface';\r\nexport * from './custom-card.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;MAOa,mBAAmB,CAAA;AAiB/B;;AAEG;AACF,IAAA,WAAA,GAAA,GAAiB;AAClB;;AAEG;IACF,QAAQ,GAAA;KACP;;iHAzBU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mBAAmB,0ICPhC,yUAcM,EAAA,MAAA,EAAA,CAAA,mgCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;4FDPO,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,SAAS;+BACE,gBAAgB,EAAA,QAAA,EAAA,yUAAA,EAAA,MAAA,EAAA,CAAA,mgCAAA,CAAA,EAAA,CAAA;0EAQlB,EAAE,EAAA,CAAA;sBAAV,KAAK;gBAIG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAIG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAIG,KAAK,EAAA,CAAA;sBAAb,KAAK;;;MENM,gBAAgB,CAAA;;8GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,EATzB,YAAA,EAAA,CAAA,mBAAmB,CAGnB,EAAA,OAAA,EAAA,CAAA,YAAY,aAGZ,mBAAmB,CAAA,EAAA,CAAA,CAAA;AAGV,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YANzB,YAAY,CAAA,EAAA,CAAA,CAAA;4FAMH,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAX5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,mBAAmB;AACpB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,mBAAmB;AACpB,qBAAA;iBACF,CAAA;;;AChBD;;AAEG;;ACFH;;AAEG;;;;"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Component, Input, NgModule } from '@angular/core';
|
|
3
|
+
import * as i1 from '@angular/common';
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
|
+
import * as i2 from 'windows-plus-form-fields/custom-button';
|
|
6
|
+
import { CustomButtonModule } from 'windows-plus-form-fields/custom-button';
|
|
7
|
+
|
|
8
|
+
class TableComponent {
|
|
9
|
+
/**
|
|
10
|
+
* @author Alex Hodson
|
|
11
|
+
* @description class constructor specifying the required services and properties for the component
|
|
12
|
+
*/
|
|
13
|
+
constructor() { }
|
|
14
|
+
/**
|
|
15
|
+
* @author Alex Hodson
|
|
16
|
+
* @description the method to be run when the component is rendered
|
|
17
|
+
*/
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* @author Alex Hodson
|
|
22
|
+
* @description identifies whether the given element is a string or number; If so, the element can be rendered normally
|
|
23
|
+
* @param element the element to be checked
|
|
24
|
+
* @returns whether the given element is a string or number
|
|
25
|
+
*/
|
|
26
|
+
isString(element) {
|
|
27
|
+
return typeof element === 'string' || typeof element === 'number' || element == null;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
+
TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TableComponent, selector: "wp-table", inputs: { id: "id", title: "title", headers: "headers", tableData: "tableData" }, ngImport: i0, template: "<div>\n\t<h2 class=\"lead\">{{title}}</h2>\n\t<div *ngIf=\"tableData.length > 0 then tableBlock else emptyBlock\"></div>\n\t<ng-template #tableBlock>\n\t\t<div class=\"scrollable-wrapper\">\n\t\t\t<table [id]=\"id\" class=\"table table-responsive\">\n\t\t\t\t<thead class=\"thead thead-blue\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th *ngFor=\"let header of headers\">{{header}}</th>\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t<tbody>\n\t\t\t\t\t<tr *ngFor=\"let row of tableData\">\n\t\t\t\t\t\t<td class=\"table-cell text-grey\" *ngFor=\"let header of headers\">\n\t\t\t\t\t\t\t<ng-container [ngSwitch]=\"true\">\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"isString(row[header])\">\n\t\t\t\t\t\t\t\t\t{{row[header]}}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"!isString(row[header])\">\n\t\t\t\t\t\t\t\t\t<wp-custom-button \n\t\t\t\t\t\t\t\t\t\t[id]=\"row[header].id\"\n\t\t\t\t\t\t\t\t\t\t[value]=\"row[header].value\"\n\t\t\t\t\t\t\t\t\t\t[type]=\"row[header].type\"\n\t\t\t\t\t\t\t\t\t\t[colour]=\"row[header].colour\"\n\t\t\t\t\t\t\t\t\t\t[outline]=\"row[header].outline\"\n\t\t\t\t\t\t\t\t\t\t[disabled]=\"row[header].disabled\"\n\t\t\t\t\t\t\t\t\t\t[icon]=\"row[header].icon\"\n\t\t\t\t\t\t\t\t\t\t(handleClick)=\"row[header].handleClick($event)\"\n\t\t\t\t\t\t\t\t\t></wp-custom-button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody>\n\t\t\t</table>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #emptyBlock>\n\t\t<p class=\"text-grey\">There is no data to show</p>\n\t</ng-template>\n</div>", styles: [".scrollable-wrapper{max-height:400px;overflow-y:auto}.table-responsive{max-height:500px;width:100%;overflow-y:auto}table{table-layout:fixed}table .thead{font-size:14px;font-family:--wp-fontFamily}table .thead-blue th{background:var(--wp-secondaryBlue);color:#fff}table th{position:sticky;top:0}table .table-cell{font-size:14px;font-family:--wp-fontFamily;padding:5px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.CustomButtonComponent, selector: "wp-custom-button", inputs: ["value", "type", "colour", "id", "outline", "disabled", "icon"], outputs: ["handleClick"] }] });
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableComponent, decorators: [{
|
|
33
|
+
type: Component,
|
|
34
|
+
args: [{ selector: 'wp-table', template: "<div>\n\t<h2 class=\"lead\">{{title}}</h2>\n\t<div *ngIf=\"tableData.length > 0 then tableBlock else emptyBlock\"></div>\n\t<ng-template #tableBlock>\n\t\t<div class=\"scrollable-wrapper\">\n\t\t\t<table [id]=\"id\" class=\"table table-responsive\">\n\t\t\t\t<thead class=\"thead thead-blue\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th *ngFor=\"let header of headers\">{{header}}</th>\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t<tbody>\n\t\t\t\t\t<tr *ngFor=\"let row of tableData\">\n\t\t\t\t\t\t<td class=\"table-cell text-grey\" *ngFor=\"let header of headers\">\n\t\t\t\t\t\t\t<ng-container [ngSwitch]=\"true\">\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"isString(row[header])\">\n\t\t\t\t\t\t\t\t\t{{row[header]}}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"!isString(row[header])\">\n\t\t\t\t\t\t\t\t\t<wp-custom-button \n\t\t\t\t\t\t\t\t\t\t[id]=\"row[header].id\"\n\t\t\t\t\t\t\t\t\t\t[value]=\"row[header].value\"\n\t\t\t\t\t\t\t\t\t\t[type]=\"row[header].type\"\n\t\t\t\t\t\t\t\t\t\t[colour]=\"row[header].colour\"\n\t\t\t\t\t\t\t\t\t\t[outline]=\"row[header].outline\"\n\t\t\t\t\t\t\t\t\t\t[disabled]=\"row[header].disabled\"\n\t\t\t\t\t\t\t\t\t\t[icon]=\"row[header].icon\"\n\t\t\t\t\t\t\t\t\t\t(handleClick)=\"row[header].handleClick($event)\"\n\t\t\t\t\t\t\t\t\t></wp-custom-button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody>\n\t\t\t</table>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #emptyBlock>\n\t\t<p class=\"text-grey\">There is no data to show</p>\n\t</ng-template>\n</div>", styles: [".scrollable-wrapper{max-height:400px;overflow-y:auto}.table-responsive{max-height:500px;width:100%;overflow-y:auto}table{table-layout:fixed}table .thead{font-size:14px;font-family:--wp-fontFamily}table .thead-blue th{background:var(--wp-secondaryBlue);color:#fff}table th{position:sticky;top:0}table .table-cell{font-size:14px;font-family:--wp-fontFamily;padding:5px}\n"] }]
|
|
35
|
+
}], ctorParameters: function () { return []; }, propDecorators: { id: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}], title: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}], headers: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], tableData: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}] } });
|
|
44
|
+
|
|
45
|
+
class TableModule {
|
|
46
|
+
}
|
|
47
|
+
TableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
48
|
+
TableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: TableModule, declarations: [TableComponent], imports: [CommonModule,
|
|
49
|
+
CustomButtonModule], exports: [TableComponent] });
|
|
50
|
+
TableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableModule, imports: [CommonModule,
|
|
51
|
+
CustomButtonModule] });
|
|
52
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableModule, decorators: [{
|
|
53
|
+
type: NgModule,
|
|
54
|
+
args: [{
|
|
55
|
+
declarations: [
|
|
56
|
+
TableComponent
|
|
57
|
+
],
|
|
58
|
+
imports: [
|
|
59
|
+
CommonModule,
|
|
60
|
+
CustomButtonModule,
|
|
61
|
+
],
|
|
62
|
+
exports: [
|
|
63
|
+
TableComponent
|
|
64
|
+
]
|
|
65
|
+
}]
|
|
66
|
+
}] });
|
|
67
|
+
|
|
68
|
+
/*
|
|
69
|
+
* Public API Surface of windows-plus-utilities
|
|
70
|
+
*/
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Generated bundle index. Do not edit.
|
|
74
|
+
*/
|
|
75
|
+
|
|
76
|
+
export { TableComponent, TableModule };
|
|
77
|
+
//# sourceMappingURL=windows-plus-utilities-table.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"windows-plus-utilities-table.mjs","sources":["../../../projects/windows-plus-utilities/table/components/table/table.component.ts","../../../projects/windows-plus-utilities/table/components/table/table.component.html","../../../projects/windows-plus-utilities/table/table.module.ts","../../../projects/windows-plus-utilities/table/public-api.ts","../../../projects/windows-plus-utilities/table/windows-plus-utilities-table.ts"],"sourcesContent":["import { Component, Input, OnInit, Output } from '@angular/core';\nimport { TableData } from '../../util/types/table-data/table-data.type'\n\n@Component({\n selector: 'wp-table',\n templateUrl: './table.component.html',\n styleUrls: ['./table.component.sass']\n})\nexport class TableComponent implements OnInit {\n\t/**\n\t * @description the identifier of the table element\n\t */\n\t@Input() id: string\n\t/**\n\t * @description the title of the table\n\t */\n\t@Input() title: string\n\t/**\n\t * @description the table headers\n\t */\n\t@Input() headers: string\n\t/**\n\t * @description the table data to be displayed\n\t */\n\t@Input() tableData: TableData[]\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\t/**\n\t * @author Alex Hodson\n\t * @description the method to be run when the component is rendered\n\t */\n\tngOnInit(): void {\n\t}\n\t/**\n\t * @author Alex Hodson\n\t * @description identifies whether the given element is a string or number; If so, the element can be rendered normally\n\t * @param element the element to be checked\n\t * @returns whether the given element is a string or number\n\t */\n\tisString(element: TableData): boolean {\n\t\treturn typeof element === 'string' || typeof element === 'number' || element == null\n\t}\n}\n","<div>\n\t<h2 class=\"lead\">{{title}}</h2>\n\t<div *ngIf=\"tableData.length > 0 then tableBlock else emptyBlock\"></div>\n\t<ng-template #tableBlock>\n\t\t<div class=\"scrollable-wrapper\">\n\t\t\t<table [id]=\"id\" class=\"table table-responsive\">\n\t\t\t\t<thead class=\"thead thead-blue\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th *ngFor=\"let header of headers\">{{header}}</th>\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t<tbody>\n\t\t\t\t\t<tr *ngFor=\"let row of tableData\">\n\t\t\t\t\t\t<td class=\"table-cell text-grey\" *ngFor=\"let header of headers\">\n\t\t\t\t\t\t\t<ng-container [ngSwitch]=\"true\">\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"isString(row[header])\">\n\t\t\t\t\t\t\t\t\t{{row[header]}}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"!isString(row[header])\">\n\t\t\t\t\t\t\t\t\t<wp-custom-button \n\t\t\t\t\t\t\t\t\t\t[id]=\"row[header].id\"\n\t\t\t\t\t\t\t\t\t\t[value]=\"row[header].value\"\n\t\t\t\t\t\t\t\t\t\t[type]=\"row[header].type\"\n\t\t\t\t\t\t\t\t\t\t[colour]=\"row[header].colour\"\n\t\t\t\t\t\t\t\t\t\t[outline]=\"row[header].outline\"\n\t\t\t\t\t\t\t\t\t\t[disabled]=\"row[header].disabled\"\n\t\t\t\t\t\t\t\t\t\t[icon]=\"row[header].icon\"\n\t\t\t\t\t\t\t\t\t\t(handleClick)=\"row[header].handleClick($event)\"\n\t\t\t\t\t\t\t\t\t></wp-custom-button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody>\n\t\t\t</table>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #emptyBlock>\n\t\t<p class=\"text-grey\">There is no data to show</p>\n\t</ng-template>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TableComponent } from './components/table/table.component';\nimport { CustomButtonModule } from 'windows-plus-form-fields/custom-button';\n\n@NgModule({\n declarations: [\n TableComponent\n ],\n imports: [\n\tCommonModule,\n\t\tCustomButtonModule,\n ],\n exports: [\n TableComponent\n ]\n})\nexport class TableModule { }\n","/*\r\n * Public API Surface of windows-plus-utilities\r\n */\r\n\r\nexport * from './components/table/table.component';\r\nexport * from './util/interface/config/table-configuration.interface';\r\nexport * from './util/types/table-data/table-data.type';\r\nexport * from './table.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -15,10 +15,10 @@ class CustomCardComponent {
|
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
CustomCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CustomCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18
|
-
CustomCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CustomCardComponent, selector: "wp-custom-card", inputs: { id: "id", active: "active", handleClick: "handleClick", label: "label" }, ngImport: i0, template: "<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>", styles: [".custom-card{cursor:pointer;width:100%;box-shadow:0 8px 16px #0000004d;background-color:#fff;position:relative;overflow:hidden;transition:all .85s ease}.custom-card .card-header{padding:1rem;display:flex;justify-content:center;background-color:unset;align-items:center;flex-direction:column;position:relative}.custom-card .card-header .card-title{padding:1rem 0;font-size:15px;font-weight:500;color:#24334e;transition:all .25s ease}.custom-card .overlay{width:100%;height:0;background-color:var(--wp-primaryBlue);position:absolute;transition:height .85s ease,opacity .55s ease-in-out}.custom-card.active,.custom-card.active .card-header .card-title,.custom-card.active .overlay{color:#fff!important;background-color:var(--wp-primaryGreen)!important}.custom-card:hover{color:#fff}.custom-card:hover .overlay{height:100%;transition:height .25s ease,opacity .55s ease-in-out}.custom-card:hover .card-header .card-title{color:#fff;z-index:999}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
18
|
+
CustomCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CustomCardComponent, selector: "wp-custom-card", inputs: { id: "id", active: "active", handleClick: "handleClick", label: "label" }, ngImport: i0, template: "<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>", styles: [".custom-card-wrap{flex-basis:150px;flex-grow:1;padding-right:15px;padding-left:15px}.custom-card{cursor:pointer;width:100%;box-shadow:0 8px 16px #0000004d;background-color:#fff;position:relative;overflow:hidden;transition:all .85s ease}.custom-card .card-header{padding:1rem;display:flex;justify-content:center;background-color:unset;align-items:center;flex-direction:column;position:relative}.custom-card .card-header .card-title{padding:1rem 0;font-size:15px;font-weight:500;color:#24334e;transition:all .25s ease}.custom-card .overlay{width:100%;height:0;background-color:var(--wp-primaryBlue);position:absolute;transition:height .85s ease,opacity .55s ease-in-out}.custom-card.active,.custom-card.active .card-header .card-title,.custom-card.active .overlay{color:#fff!important;background-color:var(--wp-primaryGreen)!important}.custom-card:hover{color:#fff}.custom-card:hover .overlay{height:100%;transition:height .25s ease,opacity .55s ease-in-out}.custom-card:hover .card-header .card-title{color:#fff;z-index:999}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
19
19
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CustomCardComponent, decorators: [{
|
|
20
20
|
type: Component,
|
|
21
|
-
args: [{ selector: 'wp-custom-card', template: "<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>", styles: [".custom-card{cursor:pointer;width:100%;box-shadow:0 8px 16px #0000004d;background-color:#fff;position:relative;overflow:hidden;transition:all .85s ease}.custom-card .card-header{padding:1rem;display:flex;justify-content:center;background-color:unset;align-items:center;flex-direction:column;position:relative}.custom-card .card-header .card-title{padding:1rem 0;font-size:15px;font-weight:500;color:#24334e;transition:all .25s ease}.custom-card .overlay{width:100%;height:0;background-color:var(--wp-primaryBlue);position:absolute;transition:height .85s ease,opacity .55s ease-in-out}.custom-card.active,.custom-card.active .card-header .card-title,.custom-card.active .overlay{color:#fff!important;background-color:var(--wp-primaryGreen)!important}.custom-card:hover{color:#fff}.custom-card:hover .overlay{height:100%;transition:height .25s ease,opacity .55s ease-in-out}.custom-card:hover .card-header .card-title{color:#fff;z-index:999}\n"] }]
|
|
21
|
+
args: [{ selector: 'wp-custom-card', template: "<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>", styles: [".custom-card-wrap{flex-basis:150px;flex-grow:1;padding-right:15px;padding-left:15px}.custom-card{cursor:pointer;width:100%;box-shadow:0 8px 16px #0000004d;background-color:#fff;position:relative;overflow:hidden;transition:all .85s ease}.custom-card .card-header{padding:1rem;display:flex;justify-content:center;background-color:unset;align-items:center;flex-direction:column;position:relative}.custom-card .card-header .card-title{padding:1rem 0;font-size:15px;font-weight:500;color:#24334e;transition:all .25s ease}.custom-card .overlay{width:100%;height:0;background-color:var(--wp-primaryBlue);position:absolute;transition:height .85s ease,opacity .55s ease-in-out}.custom-card.active,.custom-card.active .card-header .card-title,.custom-card.active .overlay{color:#fff!important;background-color:var(--wp-primaryGreen)!important}.custom-card:hover{color:#fff}.custom-card:hover .overlay{height:100%;transition:height .25s ease,opacity .55s ease-in-out}.custom-card:hover .card-header .card-title{color:#fff;z-index:999}\n"] }]
|
|
22
22
|
}], ctorParameters: function () { return []; }, propDecorators: { id: [{
|
|
23
23
|
type: Input
|
|
24
24
|
}], active: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windows-plus-utilities-custom-card.mjs","sources":["../../../projects/windows-plus-utilities/custom-card/components/custom-card/custom-card.component.ts","../../../projects/windows-plus-utilities/custom-card/components/custom-card/custom-card.component.html","../../../projects/windows-plus-utilities/custom-card/custom-card.module.ts","../../../projects/windows-plus-utilities/custom-card/public-api.ts","../../../projects/windows-plus-utilities/custom-card/windows-plus-utilities-custom-card.ts"],"sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'wp-custom-card',\r\n templateUrl: './custom-card.component.html',\r\n styleUrls: ['./custom-card.component.sass']\r\n})\r\nexport class CustomCardComponent implements OnInit {\r\n\t/**\r\n\t * @description the cards HTML element identifier\r\n\t */\r\n\t@Input() id: string\r\n\t/**\r\n\t * @description whether the card is the active card\r\n\t */\r\n\t@Input() active: boolean\r\n\t/**\r\n\t * @description the method to be run when the card is clicked\r\n\t */\r\n\t@Input() handleClick: (...args: any[]) => void\r\n\t/**\r\n\t * @description the value to be displayed in the card\r\n\t */\r\n\t@Input() label: string\r\n\t/**\r\n\t * @description class constructor specifying the required properties and services\r\n\t */\r\n constructor() { }\r\n\t/**\r\n\t * @description the method to be run when the component is loaded\r\n\t */\r\n ngOnInit(): void {\r\n }\r\n}\r\n","<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CustomCardComponent } from './components/custom-card/custom-card.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CustomCardComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n CustomCardComponent\r\n ]\r\n})\r\nexport class CustomCardModule { }\r\n","/*\r\n * Public API Surface of windows-plus-utilities\r\n */\r\n\r\nexport * from './components/custom-card/custom-card.component';\r\nexport * from './util/interface/config/custom-card-config.interface';\r\nexport * from './custom-card.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;MAOa,mBAAmB,CAAA;AAiB/B;;AAEG;AACF,IAAA,WAAA,GAAA,GAAiB;AAClB;;AAEG;IACF,QAAQ,GAAA;KACP;;iHAzBU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mBAAmB,0ICPhC,yUAcM,EAAA,MAAA,EAAA,CAAA
|
|
1
|
+
{"version":3,"file":"windows-plus-utilities-custom-card.mjs","sources":["../../../projects/windows-plus-utilities/custom-card/components/custom-card/custom-card.component.ts","../../../projects/windows-plus-utilities/custom-card/components/custom-card/custom-card.component.html","../../../projects/windows-plus-utilities/custom-card/custom-card.module.ts","../../../projects/windows-plus-utilities/custom-card/public-api.ts","../../../projects/windows-plus-utilities/custom-card/windows-plus-utilities-custom-card.ts"],"sourcesContent":["import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'wp-custom-card',\r\n templateUrl: './custom-card.component.html',\r\n styleUrls: ['./custom-card.component.sass']\r\n})\r\nexport class CustomCardComponent implements OnInit {\r\n\t/**\r\n\t * @description the cards HTML element identifier\r\n\t */\r\n\t@Input() id: string\r\n\t/**\r\n\t * @description whether the card is the active card\r\n\t */\r\n\t@Input() active: boolean\r\n\t/**\r\n\t * @description the method to be run when the card is clicked\r\n\t */\r\n\t@Input() handleClick: (...args: any[]) => void\r\n\t/**\r\n\t * @description the value to be displayed in the card\r\n\t */\r\n\t@Input() label: string\r\n\t/**\r\n\t * @description class constructor specifying the required properties and services\r\n\t */\r\n constructor() { }\r\n\t/**\r\n\t * @description the method to be run when the component is loaded\r\n\t */\r\n ngOnInit(): void {\r\n }\r\n}\r\n","<div>\r\n\t<div \r\n\t\t[id]=\"id\"\r\n\t\tclass=\"custom-card\"\r\n\t\t[ngClass]=\"{'active': active}\"\r\n\t\t(click)=\"handleClick(id)\"\r\n\t>\r\n\t\t<div class=\"overlay\"></div>\r\n\t\t<div class=\"card-header\">\r\n\t\t\t<div class=\"card-title\">\r\n\t\t\t\t{{label}}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CustomCardComponent } from './components/custom-card/custom-card.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CustomCardComponent\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n CustomCardComponent\r\n ]\r\n})\r\nexport class CustomCardModule { }\r\n","/*\r\n * Public API Surface of windows-plus-utilities\r\n */\r\n\r\nexport * from './components/custom-card/custom-card.component';\r\nexport * from './util/interface/config/custom-card-config.interface';\r\nexport * from './custom-card.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;MAOa,mBAAmB,CAAA;AAiB/B;;AAEG;AACF,IAAA,WAAA,GAAA,GAAiB;AAClB;;AAEG;IACF,QAAQ,GAAA;KACP;;iHAzBU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mBAAmB,0ICPhC,yUAcM,EAAA,MAAA,EAAA,CAAA,mgCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;4FDPO,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,SAAS;+BACE,gBAAgB,EAAA,QAAA,EAAA,yUAAA,EAAA,MAAA,EAAA,CAAA,mgCAAA,CAAA,EAAA,CAAA;0EAQlB,EAAE,EAAA,CAAA;sBAAV,KAAK;gBAIG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAIG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAIG,KAAK,EAAA,CAAA;sBAAb,KAAK;;;MENM,gBAAgB,CAAA;;8GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,EATzB,YAAA,EAAA,CAAA,mBAAmB,CAGnB,EAAA,OAAA,EAAA,CAAA,YAAY,aAGZ,mBAAmB,CAAA,EAAA,CAAA,CAAA;AAGV,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YANzB,YAAY,CAAA,EAAA,CAAA,CAAA;4FAMH,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAX5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,mBAAmB;AACpB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,mBAAmB;AACpB,qBAAA;AACF,iBAAA,CAAA;;;AChBD;;AAEG;;ACFH;;AAEG;;;;"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Component, Input, NgModule } from '@angular/core';
|
|
3
|
+
import * as i1 from '@angular/common';
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
|
+
import * as i2 from 'windows-plus-form-fields/custom-button';
|
|
6
|
+
import { CustomButtonModule } from 'windows-plus-form-fields/custom-button';
|
|
7
|
+
|
|
8
|
+
class TableComponent {
|
|
9
|
+
/**
|
|
10
|
+
* @author Alex Hodson
|
|
11
|
+
* @description class constructor specifying the required services and properties for the component
|
|
12
|
+
*/
|
|
13
|
+
constructor() { }
|
|
14
|
+
/**
|
|
15
|
+
* @author Alex Hodson
|
|
16
|
+
* @description the method to be run when the component is rendered
|
|
17
|
+
*/
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* @author Alex Hodson
|
|
22
|
+
* @description identifies whether the given element is a string or number; If so, the element can be rendered normally
|
|
23
|
+
* @param element the element to be checked
|
|
24
|
+
* @returns whether the given element is a string or number
|
|
25
|
+
*/
|
|
26
|
+
isString(element) {
|
|
27
|
+
return typeof element === 'string' || typeof element === 'number' || element == null;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
+
TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TableComponent, selector: "wp-table", inputs: { id: "id", title: "title", headers: "headers", tableData: "tableData" }, ngImport: i0, template: "<div>\n\t<h2 class=\"lead\">{{title}}</h2>\n\t<div *ngIf=\"tableData.length > 0 then tableBlock else emptyBlock\"></div>\n\t<ng-template #tableBlock>\n\t\t<div class=\"scrollable-wrapper\">\n\t\t\t<table [id]=\"id\" class=\"table table-responsive\">\n\t\t\t\t<thead class=\"thead thead-blue\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th *ngFor=\"let header of headers\">{{header}}</th>\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t<tbody>\n\t\t\t\t\t<tr *ngFor=\"let row of tableData\">\n\t\t\t\t\t\t<td class=\"table-cell text-grey\" *ngFor=\"let header of headers\">\n\t\t\t\t\t\t\t<ng-container [ngSwitch]=\"true\">\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"isString(row[header])\">\n\t\t\t\t\t\t\t\t\t{{row[header]}}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"!isString(row[header])\">\n\t\t\t\t\t\t\t\t\t<wp-custom-button \n\t\t\t\t\t\t\t\t\t\t[id]=\"row[header].id\"\n\t\t\t\t\t\t\t\t\t\t[value]=\"row[header].value\"\n\t\t\t\t\t\t\t\t\t\t[type]=\"row[header].type\"\n\t\t\t\t\t\t\t\t\t\t[colour]=\"row[header].colour\"\n\t\t\t\t\t\t\t\t\t\t[outline]=\"row[header].outline\"\n\t\t\t\t\t\t\t\t\t\t[disabled]=\"row[header].disabled\"\n\t\t\t\t\t\t\t\t\t\t[icon]=\"row[header].icon\"\n\t\t\t\t\t\t\t\t\t\t(handleClick)=\"row[header].handleClick($event)\"\n\t\t\t\t\t\t\t\t\t></wp-custom-button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody>\n\t\t\t</table>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #emptyBlock>\n\t\t<p class=\"text-grey\">There is no data to show</p>\n\t</ng-template>\n</div>", styles: [".scrollable-wrapper{max-height:400px;overflow-y:auto}.table-responsive{max-height:500px;width:100%;overflow-y:auto}table{table-layout:fixed}table .thead{font-size:14px;font-family:--wp-fontFamily}table .thead-blue th{background:var(--wp-secondaryBlue);color:#fff}table th{position:sticky;top:0}table .table-cell{font-size:14px;font-family:--wp-fontFamily;padding:5px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.CustomButtonComponent, selector: "wp-custom-button", inputs: ["value", "type", "colour", "id", "outline", "disabled", "icon"], outputs: ["handleClick"] }] });
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableComponent, decorators: [{
|
|
33
|
+
type: Component,
|
|
34
|
+
args: [{ selector: 'wp-table', template: "<div>\n\t<h2 class=\"lead\">{{title}}</h2>\n\t<div *ngIf=\"tableData.length > 0 then tableBlock else emptyBlock\"></div>\n\t<ng-template #tableBlock>\n\t\t<div class=\"scrollable-wrapper\">\n\t\t\t<table [id]=\"id\" class=\"table table-responsive\">\n\t\t\t\t<thead class=\"thead thead-blue\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th *ngFor=\"let header of headers\">{{header}}</th>\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t<tbody>\n\t\t\t\t\t<tr *ngFor=\"let row of tableData\">\n\t\t\t\t\t\t<td class=\"table-cell text-grey\" *ngFor=\"let header of headers\">\n\t\t\t\t\t\t\t<ng-container [ngSwitch]=\"true\">\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"isString(row[header])\">\n\t\t\t\t\t\t\t\t\t{{row[header]}}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"!isString(row[header])\">\n\t\t\t\t\t\t\t\t\t<wp-custom-button \n\t\t\t\t\t\t\t\t\t\t[id]=\"row[header].id\"\n\t\t\t\t\t\t\t\t\t\t[value]=\"row[header].value\"\n\t\t\t\t\t\t\t\t\t\t[type]=\"row[header].type\"\n\t\t\t\t\t\t\t\t\t\t[colour]=\"row[header].colour\"\n\t\t\t\t\t\t\t\t\t\t[outline]=\"row[header].outline\"\n\t\t\t\t\t\t\t\t\t\t[disabled]=\"row[header].disabled\"\n\t\t\t\t\t\t\t\t\t\t[icon]=\"row[header].icon\"\n\t\t\t\t\t\t\t\t\t\t(handleClick)=\"row[header].handleClick($event)\"\n\t\t\t\t\t\t\t\t\t></wp-custom-button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody>\n\t\t\t</table>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #emptyBlock>\n\t\t<p class=\"text-grey\">There is no data to show</p>\n\t</ng-template>\n</div>", styles: [".scrollable-wrapper{max-height:400px;overflow-y:auto}.table-responsive{max-height:500px;width:100%;overflow-y:auto}table{table-layout:fixed}table .thead{font-size:14px;font-family:--wp-fontFamily}table .thead-blue th{background:var(--wp-secondaryBlue);color:#fff}table th{position:sticky;top:0}table .table-cell{font-size:14px;font-family:--wp-fontFamily;padding:5px}\n"] }]
|
|
35
|
+
}], ctorParameters: function () { return []; }, propDecorators: { id: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}], title: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}], headers: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], tableData: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}] } });
|
|
44
|
+
|
|
45
|
+
class TableModule {
|
|
46
|
+
}
|
|
47
|
+
TableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
48
|
+
TableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: TableModule, declarations: [TableComponent], imports: [CommonModule,
|
|
49
|
+
CustomButtonModule], exports: [TableComponent] });
|
|
50
|
+
TableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableModule, imports: [CommonModule,
|
|
51
|
+
CustomButtonModule] });
|
|
52
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TableModule, decorators: [{
|
|
53
|
+
type: NgModule,
|
|
54
|
+
args: [{
|
|
55
|
+
declarations: [
|
|
56
|
+
TableComponent
|
|
57
|
+
],
|
|
58
|
+
imports: [
|
|
59
|
+
CommonModule,
|
|
60
|
+
CustomButtonModule,
|
|
61
|
+
],
|
|
62
|
+
exports: [
|
|
63
|
+
TableComponent
|
|
64
|
+
]
|
|
65
|
+
}]
|
|
66
|
+
}] });
|
|
67
|
+
|
|
68
|
+
/*
|
|
69
|
+
* Public API Surface of windows-plus-utilities
|
|
70
|
+
*/
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Generated bundle index. Do not edit.
|
|
74
|
+
*/
|
|
75
|
+
|
|
76
|
+
export { TableComponent, TableModule };
|
|
77
|
+
//# sourceMappingURL=windows-plus-utilities-table.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"windows-plus-utilities-table.mjs","sources":["../../../projects/windows-plus-utilities/table/components/table/table.component.ts","../../../projects/windows-plus-utilities/table/components/table/table.component.html","../../../projects/windows-plus-utilities/table/table.module.ts","../../../projects/windows-plus-utilities/table/public-api.ts","../../../projects/windows-plus-utilities/table/windows-plus-utilities-table.ts"],"sourcesContent":["import { Component, Input, OnInit, Output } from '@angular/core';\nimport { TableData } from '../../util/types/table-data/table-data.type'\n\n@Component({\n selector: 'wp-table',\n templateUrl: './table.component.html',\n styleUrls: ['./table.component.sass']\n})\nexport class TableComponent implements OnInit {\n\t/**\n\t * @description the identifier of the table element\n\t */\n\t@Input() id: string\n\t/**\n\t * @description the title of the table\n\t */\n\t@Input() title: string\n\t/**\n\t * @description the table headers\n\t */\n\t@Input() headers: string\n\t/**\n\t * @description the table data to be displayed\n\t */\n\t@Input() tableData: TableData[]\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\t/**\n\t * @author Alex Hodson\n\t * @description the method to be run when the component is rendered\n\t */\n\tngOnInit(): void {\n\t}\n\t/**\n\t * @author Alex Hodson\n\t * @description identifies whether the given element is a string or number; If so, the element can be rendered normally\n\t * @param element the element to be checked\n\t * @returns whether the given element is a string or number\n\t */\n\tisString(element: TableData): boolean {\n\t\treturn typeof element === 'string' || typeof element === 'number' || element == null\n\t}\n}\n","<div>\n\t<h2 class=\"lead\">{{title}}</h2>\n\t<div *ngIf=\"tableData.length > 0 then tableBlock else emptyBlock\"></div>\n\t<ng-template #tableBlock>\n\t\t<div class=\"scrollable-wrapper\">\n\t\t\t<table [id]=\"id\" class=\"table table-responsive\">\n\t\t\t\t<thead class=\"thead thead-blue\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th *ngFor=\"let header of headers\">{{header}}</th>\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t<tbody>\n\t\t\t\t\t<tr *ngFor=\"let row of tableData\">\n\t\t\t\t\t\t<td class=\"table-cell text-grey\" *ngFor=\"let header of headers\">\n\t\t\t\t\t\t\t<ng-container [ngSwitch]=\"true\">\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"isString(row[header])\">\n\t\t\t\t\t\t\t\t\t{{row[header]}}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div *ngSwitchCase=\"!isString(row[header])\">\n\t\t\t\t\t\t\t\t\t<wp-custom-button \n\t\t\t\t\t\t\t\t\t\t[id]=\"row[header].id\"\n\t\t\t\t\t\t\t\t\t\t[value]=\"row[header].value\"\n\t\t\t\t\t\t\t\t\t\t[type]=\"row[header].type\"\n\t\t\t\t\t\t\t\t\t\t[colour]=\"row[header].colour\"\n\t\t\t\t\t\t\t\t\t\t[outline]=\"row[header].outline\"\n\t\t\t\t\t\t\t\t\t\t[disabled]=\"row[header].disabled\"\n\t\t\t\t\t\t\t\t\t\t[icon]=\"row[header].icon\"\n\t\t\t\t\t\t\t\t\t\t(handleClick)=\"row[header].handleClick($event)\"\n\t\t\t\t\t\t\t\t\t></wp-custom-button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody>\n\t\t\t</table>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #emptyBlock>\n\t\t<p class=\"text-grey\">There is no data to show</p>\n\t</ng-template>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TableComponent } from './components/table/table.component';\nimport { CustomButtonModule } from 'windows-plus-form-fields/custom-button';\n\n@NgModule({\n declarations: [\n TableComponent\n ],\n imports: [\n\tCommonModule,\n\t\tCustomButtonModule,\n ],\n exports: [\n TableComponent\n ]\n})\nexport class TableModule { }\n","/*\r\n * Public API Surface of windows-plus-utilities\r\n */\r\n\r\nexport * from './components/table/table.component';\r\nexport * from './util/interface/config/table-configuration.interface';\r\nexport * from './util/types/table-data/table-data.type';\r\nexport * from './table.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "windows-plus-utilities",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.29",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/common": "^14.2.12",
|
|
6
6
|
"@angular/core": "^14.2.12",
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
"@fortawesome/fontawesome-svg-core": "^6.2.1",
|
|
9
9
|
"@fortawesome/free-solid-svg-icons": "^6.2.1",
|
|
10
10
|
"date-fns": "^2.29.3",
|
|
11
|
-
"windows-plus-theme": "^1.0.8"
|
|
11
|
+
"windows-plus-theme": "^1.0.8",
|
|
12
|
+
"windows-plus-form-fields": "^0.0.26"
|
|
12
13
|
},
|
|
13
14
|
"dependencies": {
|
|
14
15
|
"tslib": "^2.3.0"
|
|
@@ -55,6 +56,14 @@
|
|
|
55
56
|
"node": "./fesm2015/windows-plus-utilities-section-header.mjs",
|
|
56
57
|
"default": "./fesm2020/windows-plus-utilities-section-header.mjs"
|
|
57
58
|
},
|
|
59
|
+
"./table": {
|
|
60
|
+
"types": "./table/index.d.ts",
|
|
61
|
+
"esm2020": "./esm2020/table/windows-plus-utilities-table.mjs",
|
|
62
|
+
"es2020": "./fesm2020/windows-plus-utilities-table.mjs",
|
|
63
|
+
"es2015": "./fesm2015/windows-plus-utilities-table.mjs",
|
|
64
|
+
"node": "./fesm2015/windows-plus-utilities-table.mjs",
|
|
65
|
+
"default": "./fesm2020/windows-plus-utilities-table.mjs"
|
|
66
|
+
},
|
|
58
67
|
"./util": {
|
|
59
68
|
"types": "./util/index.d.ts",
|
|
60
69
|
"esm2020": "./esm2020/util/windows-plus-utilities-util.mjs",
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { OnInit } from '@angular/core';
|
|
2
|
+
import { TableData } from '../../util/types/table-data/table-data.type';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class TableComponent implements OnInit {
|
|
5
|
+
/**
|
|
6
|
+
* @description the identifier of the table element
|
|
7
|
+
*/
|
|
8
|
+
id: string;
|
|
9
|
+
/**
|
|
10
|
+
* @description the title of the table
|
|
11
|
+
*/
|
|
12
|
+
title: string;
|
|
13
|
+
/**
|
|
14
|
+
* @description the table headers
|
|
15
|
+
*/
|
|
16
|
+
headers: string;
|
|
17
|
+
/**
|
|
18
|
+
* @description the table data to be displayed
|
|
19
|
+
*/
|
|
20
|
+
tableData: TableData[];
|
|
21
|
+
/**
|
|
22
|
+
* @author Alex Hodson
|
|
23
|
+
* @description class constructor specifying the required services and properties for the component
|
|
24
|
+
*/
|
|
25
|
+
constructor();
|
|
26
|
+
/**
|
|
27
|
+
* @author Alex Hodson
|
|
28
|
+
* @description the method to be run when the component is rendered
|
|
29
|
+
*/
|
|
30
|
+
ngOnInit(): void;
|
|
31
|
+
/**
|
|
32
|
+
* @author Alex Hodson
|
|
33
|
+
* @description identifies whether the given element is a string or number; If so, the element can be rendered normally
|
|
34
|
+
* @param element the element to be checked
|
|
35
|
+
* @returns whether the given element is a string or number
|
|
36
|
+
*/
|
|
37
|
+
isString(element: TableData): boolean;
|
|
38
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TableComponent, never>;
|
|
39
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TableComponent, "wp-table", never, { "id": "id"; "title": "title"; "headers": "headers"; "tableData": "tableData"; }, {}, never, never, false>;
|
|
40
|
+
}
|
package/table/index.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "./components/table/table.component";
|
|
3
|
+
import * as i2 from "@angular/common";
|
|
4
|
+
import * as i3 from "windows-plus-form-fields/custom-button";
|
|
5
|
+
export declare class TableModule {
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TableModule, never>;
|
|
7
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<TableModule, [typeof i1.TableComponent], [typeof i2.CommonModule, typeof i3.CustomButtonModule], [typeof i1.TableComponent]>;
|
|
8
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<TableModule>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TableData } from '../../types/table-data/table-data.type';
|
|
2
|
+
/**
|
|
3
|
+
* @author Alex Hodson
|
|
4
|
+
* @description an interface which defines the properties required by the table
|
|
5
|
+
*/
|
|
6
|
+
export interface TableConfiguration {
|
|
7
|
+
'id': string;
|
|
8
|
+
'title': string;
|
|
9
|
+
'headers': string[];
|
|
10
|
+
'tableData': TableData[];
|
|
11
|
+
'condition'?: (...args: any[]) => boolean;
|
|
12
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { CustomButtonConfig } from 'windows-plus-form-fields/custom-button';
|
|
2
|
+
/**
|
|
3
|
+
* @author Alex Hodson
|
|
4
|
+
* @description a union type which defines the available types for a tables data
|
|
5
|
+
*/
|
|
6
|
+
export declare type TableData = {
|
|
7
|
+
[key: string]: CustomButtonConfig | string | number;
|
|
8
|
+
};
|