windows-plus-utilities 0.0.26 → 0.0.28
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/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/esm2020/util/pipe/replace/replace.module.mjs +21 -0
- package/esm2020/util/pipe/replace/replace.pipe.mjs +35 -0
- package/esm2020/util/public-api.mjs +3 -1
- package/fesm2015/windows-plus-utilities-table.mjs +77 -0
- package/fesm2015/windows-plus-utilities-table.mjs.map +1 -0
- package/fesm2015/windows-plus-utilities-util.mjs +52 -1
- package/fesm2015/windows-plus-utilities-util.mjs.map +1 -1
- package/fesm2020/windows-plus-utilities-table.mjs +77 -0
- package/fesm2020/windows-plus-utilities-table.mjs.map +1 -0
- package/fesm2020/windows-plus-utilities-util.mjs +52 -1
- package/fesm2020/windows-plus-utilities-util.mjs.map +1 -1
- 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
- package/util/pipe/replace/replace.module.d.ts +7 -0
- package/util/pipe/replace/replace.pipe.d.ts +24 -0
- package/util/public-api.d.ts +2 -0
|
@@ -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
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { ReplacePipe } from './replace.pipe';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ReplaceModule {
|
|
5
|
+
}
|
|
6
|
+
ReplaceModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplaceModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7
|
+
ReplaceModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: ReplaceModule, declarations: [ReplacePipe], exports: [ReplacePipe] });
|
|
8
|
+
ReplaceModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplaceModule });
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplaceModule, decorators: [{
|
|
10
|
+
type: NgModule,
|
|
11
|
+
args: [{
|
|
12
|
+
imports: [],
|
|
13
|
+
declarations: [
|
|
14
|
+
ReplacePipe
|
|
15
|
+
],
|
|
16
|
+
exports: [
|
|
17
|
+
ReplacePipe
|
|
18
|
+
]
|
|
19
|
+
}]
|
|
20
|
+
}] });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwbGFjZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93aW5kb3dzLXBsdXMtdXRpbGl0aWVzL3V0aWwvcGlwZS9yZXBsYWNlL3JlcGxhY2UubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDeEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFBOztBQVc1QyxNQUFNLE9BQU8sYUFBYTs7MkdBQWIsYUFBYTs0R0FBYixhQUFhLGlCQU50QixXQUFXLGFBR1gsV0FBVzs0R0FHRixhQUFhOzRGQUFiLGFBQWE7a0JBVHpCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFO3dCQUNaLFdBQVc7cUJBQ1o7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFdBQVc7cUJBQ1o7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7IFJlcGxhY2VQaXBlIH0gZnJvbSAnLi9yZXBsYWNlLnBpcGUnXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtdLFxyXG4gIGRlY2xhcmF0aW9uczogWyBcclxuICAgIFJlcGxhY2VQaXBlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBSZXBsYWNlUGlwZVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFJlcGxhY2VNb2R1bGV7fSJdfQ==
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class ReplacePipe {
|
|
4
|
+
/**
|
|
5
|
+
* @author Alex Hodson
|
|
6
|
+
* @description the entry point for the point which calls the format method and returns its value
|
|
7
|
+
* @param value the value of the HTML element
|
|
8
|
+
* @param replace the string to be replaced
|
|
9
|
+
* @param withThis the replacement string
|
|
10
|
+
* @returns the formatted value
|
|
11
|
+
*/
|
|
12
|
+
transform(value, replace, withThis) {
|
|
13
|
+
return this.format(value, replace, withThis);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* @author Alex Hodson
|
|
17
|
+
* @description replaces a substring with the given replacement in a value
|
|
18
|
+
* @param value the value of the HTML element
|
|
19
|
+
* @param replace the string to be replaced
|
|
20
|
+
* @param withThis the replacement string
|
|
21
|
+
* @returns the formatted value
|
|
22
|
+
*/
|
|
23
|
+
format(value, replace, withThis) {
|
|
24
|
+
return value.replace(new RegExp(replace, 'g'), withThis);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
ReplacePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplacePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
28
|
+
ReplacePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: ReplacePipe, name: "replace" });
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplacePipe, decorators: [{
|
|
30
|
+
type: Pipe,
|
|
31
|
+
args: [{
|
|
32
|
+
name: 'replace'
|
|
33
|
+
}]
|
|
34
|
+
}] });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwbGFjZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2luZG93cy1wbHVzLXV0aWxpdGllcy91dGlsL3BpcGUvcmVwbGFjZS9yZXBsYWNlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBS3BELE1BQU0sT0FBTyxXQUFXO0lBQ3ZCOzs7Ozs7O09BT0c7SUFDSCxTQUFTLENBQUMsS0FBYSxFQUFFLE9BQWUsRUFBRSxRQUFnQjtRQUN6RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQTtJQUM3QyxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNLLE1BQU0sQ0FBQyxLQUFhLEVBQUUsT0FBZSxFQUFFLFFBQWdCO1FBQzlELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUE7SUFDekQsQ0FBQzs7eUdBdkJXLFdBQVc7dUdBQVgsV0FBVzs0RkFBWCxXQUFXO2tCQUh2QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxTQUFTO2lCQUNoQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICBuYW1lOiAncmVwbGFjZSdcbn0pXG5leHBvcnQgY2xhc3MgUmVwbGFjZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblx0LyoqXG5cdCAqIEBhdXRob3IgQWxleCBIb2Rzb25cblx0ICogQGRlc2NyaXB0aW9uIHRoZSBlbnRyeSBwb2ludCBmb3IgdGhlIHBvaW50IHdoaWNoIGNhbGxzIHRoZSBmb3JtYXQgbWV0aG9kIGFuZCByZXR1cm5zIGl0cyB2YWx1ZVxuXHQgKiBAcGFyYW0gdmFsdWUgdGhlIHZhbHVlIG9mIHRoZSBIVE1MIGVsZW1lbnRcblx0ICogQHBhcmFtIHJlcGxhY2UgdGhlIHN0cmluZyB0byBiZSByZXBsYWNlZFxuXHQgKiBAcGFyYW0gd2l0aFRoaXMgdGhlIHJlcGxhY2VtZW50IHN0cmluZ1xuXHQgKiBAcmV0dXJucyB0aGUgZm9ybWF0dGVkIHZhbHVlXG5cdCAqL1xuXHR0cmFuc2Zvcm0odmFsdWU6IHN0cmluZywgcmVwbGFjZTogc3RyaW5nLCB3aXRoVGhpczogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gdGhpcy5mb3JtYXQodmFsdWUsIHJlcGxhY2UsIHdpdGhUaGlzKVxuXHR9XG5cblx0LyoqXG5cdCAqIEBhdXRob3IgQWxleCBIb2Rzb25cblx0ICogQGRlc2NyaXB0aW9uIHJlcGxhY2VzIGEgc3Vic3RyaW5nIHdpdGggdGhlIGdpdmVuIHJlcGxhY2VtZW50IGluIGEgdmFsdWVcblx0ICogQHBhcmFtIHZhbHVlIHRoZSB2YWx1ZSBvZiB0aGUgSFRNTCBlbGVtZW50XG5cdCAqIEBwYXJhbSByZXBsYWNlIHRoZSBzdHJpbmcgdG8gYmUgcmVwbGFjZWRcblx0ICogQHBhcmFtIHdpdGhUaGlzIHRoZSByZXBsYWNlbWVudCBzdHJpbmdcblx0ICogQHJldHVybnMgdGhlIGZvcm1hdHRlZCB2YWx1ZVxuXHQgKi9cblx0cHJpdmF0ZSBmb3JtYXQodmFsdWU6IHN0cmluZywgcmVwbGFjZTogc3RyaW5nLCB3aXRoVGhpczogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gdmFsdWUucmVwbGFjZShuZXcgUmVnRXhwKHJlcGxhY2UsICdnJyksIHdpdGhUaGlzKVxuXHR9XG59XG4iXX0=
|
|
@@ -7,5 +7,7 @@ export * from './pipe/format-date/format-date.module';
|
|
|
7
7
|
export * from './pipe/format-date/format-date.pipe';
|
|
8
8
|
export * from './pipe/format-date-time/format-date-time.module';
|
|
9
9
|
export * from './pipe/format-date-time/format-date-time.pipe';
|
|
10
|
+
export * from './pipe/replace/replace.module';
|
|
11
|
+
export * from './pipe/replace/replace.pipe';
|
|
10
12
|
export * from './helper/string/string-helper';
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3dpbmRvd3MtcGx1cy11dGlsaXRpZXMvdXRpbC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsY0FBYywyQ0FBMkMsQ0FBQTtBQUN6RCxjQUFjLHlDQUF5QyxDQUFBO0FBRXZELGNBQWMsdUNBQXVDLENBQUE7QUFDckQsY0FBYyxxQ0FBcUMsQ0FBQTtBQUVuRCxjQUFjLGlEQUFpRCxDQUFBO0FBQy9ELGNBQWMsK0NBQStDLENBQUE7QUFFN0QsY0FBYywrQkFBK0IsQ0FBQTtBQUM3QyxjQUFjLDZCQUE2QixDQUFBO0FBRTNDLGNBQWMsK0JBQStCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygd2luZG93cy1wbHVzLXV0aWxpdGllc1xyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9waXBlL2JlYXV0aWZ5LXRleHQvYmVhdXRpZnktdGV4dC5tb2R1bGUnXHJcbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9iZWF1dGlmeS10ZXh0L2JlYXV0aWZ5LXRleHQucGlwZSdcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9mb3JtYXQtZGF0ZS9mb3JtYXQtZGF0ZS5tb2R1bGUnXHJcbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9mb3JtYXQtZGF0ZS9mb3JtYXQtZGF0ZS5waXBlJ1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9waXBlL2Zvcm1hdC1kYXRlLXRpbWUvZm9ybWF0LWRhdGUtdGltZS5tb2R1bGUnXHJcbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9mb3JtYXQtZGF0ZS10aW1lL2Zvcm1hdC1kYXRlLXRpbWUucGlwZSdcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vcGlwZS9yZXBsYWNlL3JlcGxhY2UubW9kdWxlJ1xyXG5leHBvcnQgKiBmcm9tICcuL3BpcGUvcmVwbGFjZS9yZXBsYWNlLnBpcGUnXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2hlbHBlci9zdHJpbmcvc3RyaW5nLWhlbHBlciciXX0=
|
|
@@ -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":";;;;;;;MAQa,cAAc,CAAA;AAiB1B;;;AAGG;AACH,IAAA,WAAA,GAAA,GAAiB;AACjB;;;AAGG;IACH,QAAQ,GAAA;KACP;AACD;;;;;AAKG;AACH,IAAA,QAAQ,CAAC,OAAkB,EAAA;AAC1B,QAAA,OAAO,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,IAAI,IAAI,CAAA;KACpF;;4GApCW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,kICR3B,kiDAwCM,EAAA,MAAA,EAAA,CAAA,mXAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;4FDhCO,cAAc,EAAA,UAAA,EAAA,CAAA;kBAL1B,SAAS;+BACE,UAAU,EAAA,QAAA,EAAA,kiDAAA,EAAA,MAAA,EAAA,CAAA,mXAAA,CAAA,EAAA,CAAA;0EAQZ,EAAE,EAAA,CAAA;sBAAV,KAAK;gBAIG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAIG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAIG,SAAS,EAAA,CAAA;sBAAjB,KAAK;;;MEPM,WAAW,CAAA;;yGAAX,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;0GAAX,WAAW,EAAA,YAAA,EAAA,CAVpB,cAAc,CAAA,EAAA,OAAA,EAAA,CAGjB,YAAY;QACX,kBAAkB,aAGhB,cAAc,CAAA,EAAA,CAAA,CAAA;AAGL,WAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAW,YAPvB,YAAY;QACX,kBAAkB,CAAA,EAAA,CAAA,CAAA;4FAMP,WAAW,EAAA,UAAA,EAAA,CAAA;kBAZvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,cAAc;AACf,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACV,YAAY;wBACX,kBAAkB;AACjB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,cAAc;AACf,qBAAA;iBACF,CAAA;;;AChBD;;AAEG;;ACFH;;AAEG;;;;"}
|
|
@@ -246,6 +246,57 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
246
246
|
}]
|
|
247
247
|
}] });
|
|
248
248
|
|
|
249
|
+
class ReplacePipe {
|
|
250
|
+
/**
|
|
251
|
+
* @author Alex Hodson
|
|
252
|
+
* @description the entry point for the point which calls the format method and returns its value
|
|
253
|
+
* @param value the value of the HTML element
|
|
254
|
+
* @param replace the string to be replaced
|
|
255
|
+
* @param withThis the replacement string
|
|
256
|
+
* @returns the formatted value
|
|
257
|
+
*/
|
|
258
|
+
transform(value, replace, withThis) {
|
|
259
|
+
return this.format(value, replace, withThis);
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* @author Alex Hodson
|
|
263
|
+
* @description replaces a substring with the given replacement in a value
|
|
264
|
+
* @param value the value of the HTML element
|
|
265
|
+
* @param replace the string to be replaced
|
|
266
|
+
* @param withThis the replacement string
|
|
267
|
+
* @returns the formatted value
|
|
268
|
+
*/
|
|
269
|
+
format(value, replace, withThis) {
|
|
270
|
+
return value.replace(new RegExp(replace, 'g'), withThis);
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
ReplacePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplacePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
274
|
+
ReplacePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: ReplacePipe, name: "replace" });
|
|
275
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplacePipe, decorators: [{
|
|
276
|
+
type: Pipe,
|
|
277
|
+
args: [{
|
|
278
|
+
name: 'replace'
|
|
279
|
+
}]
|
|
280
|
+
}] });
|
|
281
|
+
|
|
282
|
+
class ReplaceModule {
|
|
283
|
+
}
|
|
284
|
+
ReplaceModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplaceModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
285
|
+
ReplaceModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: ReplaceModule, declarations: [ReplacePipe], exports: [ReplacePipe] });
|
|
286
|
+
ReplaceModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplaceModule });
|
|
287
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplaceModule, decorators: [{
|
|
288
|
+
type: NgModule,
|
|
289
|
+
args: [{
|
|
290
|
+
imports: [],
|
|
291
|
+
declarations: [
|
|
292
|
+
ReplacePipe
|
|
293
|
+
],
|
|
294
|
+
exports: [
|
|
295
|
+
ReplacePipe
|
|
296
|
+
]
|
|
297
|
+
}]
|
|
298
|
+
}] });
|
|
299
|
+
|
|
249
300
|
/*
|
|
250
301
|
* Public API Surface of windows-plus-utilities
|
|
251
302
|
*/
|
|
@@ -254,5 +305,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
254
305
|
* Generated bundle index. Do not edit.
|
|
255
306
|
*/
|
|
256
307
|
|
|
257
|
-
export { BeautifyTextModule, BeautifyTextPipe, FormatDateModule, FormatDatePipe, FormatDateTimeModule, FormatDateTimePipe, capitalizeAll, capitalizeFirst, findSubstringIndex, joinWith, replaceAll, splitAt };
|
|
308
|
+
export { BeautifyTextModule, BeautifyTextPipe, FormatDateModule, FormatDatePipe, FormatDateTimeModule, FormatDateTimePipe, ReplaceModule, ReplacePipe, capitalizeAll, capitalizeFirst, findSubstringIndex, joinWith, replaceAll, splitAt };
|
|
258
309
|
//# sourceMappingURL=windows-plus-utilities-util.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windows-plus-utilities-util.mjs","sources":["../../../projects/windows-plus-utilities/util/pipe/beautify-text/beautify-text.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/beautify-text/beautify-text.module.ts","../../../projects/windows-plus-utilities/util/pipe/format-date/format-date.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/format-date/format-date.module.ts","../../../projects/windows-plus-utilities/util/helper/string/string-helper.ts","../../../projects/windows-plus-utilities/util/pipe/format-date-time/format-date-time.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/format-date-time/format-date-time.module.ts","../../../projects/windows-plus-utilities/util/public-api.ts","../../../projects/windows-plus-utilities/util/windows-plus-utilities-util.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'beautify'\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description the beautify text pipe takes a string and formats it into a more visually pleasing format. The pipe will add a space before any capital letter\r\n * and then capitalise the first letter of the string\r\n */\r\nexport class BeautifyTextPipe implements PipeTransform {\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the entry point for the point which calls the format method and returns its value\r\n\t * @param value the value of the HTML element\r\n\t * @param args any extra arguments passed\r\n\t * @returns the formatted value\r\n\t */\r\n\ttransform(value: string, args?: any): any {\r\n\t\treturn this.format(value)\r\n\t}\r\n\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description formats the given string. A space will be added before any capital letter and then the first letter is capitalised\r\n\t * @param text the text to be formatted\r\n\t * @returns the formatted value\r\n\t */\r\n\tprivate format(text: string): string {\r\n\t\tconst replaceResult: string = text.replace(/([A-Z])/g, \" $1\").trim()\r\n\t\tconst output: string = replaceResult.charAt(0).toUpperCase() + replaceResult.slice(1)\r\n\r\n\t\treturn output\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core'\r\nimport { BeautifyTextPipe } from './beautify-text.pipe'\r\n\r\n@NgModule({\r\n imports: [],\r\n declarations: [ \r\n BeautifyTextPipe\r\n ],\r\n exports: [\r\n BeautifyTextPipe\r\n ]\r\n})\r\nexport class BeautifyTextModule{}","import { Pipe, PipeTransform } from '@angular/core'\r\n\r\n@Pipe({\r\n\tname: 'formatDate'\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description a pipe which formats a given date string into a user friendly UTC string\r\n */\r\nexport class FormatDatePipe implements PipeTransform {\r\n\t\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the entry point for the point which calls the format method and returns its value\r\n\t * @param value the value of the HTML element\r\n\t * @param args any extra arguments passed\r\n\t * @returns the formatted value\r\n\t */\r\n\ttransform(value: string, ...args: unknown[]): string {\r\n\t\treturn this.format(value)\r\n\t}\r\n\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description formats the given date string into a UTC string \r\n\t * @param text the text to be formatted\r\n\t * @returns the formatted value\r\n\t */\r\n\tprivate format(text: string) {\r\n\t\tif (text === '' || text === '-') return text\r\n\t\tconst date = new Date(text)\r\n\r\n\t\treturn date.toLocaleString('en-GB', {\r\n\t\t\tweekday: 'short', // long, short, narrow\r\n\t\t\tday: 'numeric', // numeric, 2-digit\r\n\t\t\tyear: 'numeric', // numeric, 2-digit\r\n\t\t\tmonth: 'long', // numeric, 2-digit, long, short, narrow\r\n\t\t})\r\n\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormatDatePipe } from './format-date.pipe'\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n\t\tFormatDatePipe\r\n\t],\r\n imports: [\r\n CommonModule\r\n ],\r\n\texports: [\r\n\t\tFormatDatePipe\r\n\t]\r\n})\r\nexport class FormatDateModule { }\r\n","/**\r\n * @author Alex Hodson\r\n * @description modifies the given value by capitalizing all letters\r\n * @param {string} value the value to be modified\r\n * @returns {string} the modified value\r\n */\r\n export const capitalizeAll = (value: string): string => {\r\n\tif (!value) return ''\r\n\r\n\treturn value.toUpperCase()\r\n}\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description modifies the given value by capitalizing the first letter\r\n * @param {string} value the value to be modified\r\n * @returns {string} the modified value\r\n */\r\nexport const capitalizeFirst = (value: string): string => {\r\n\tif (!value) return ''\r\n\r\n\tconst startingLetter = 0\r\n\tconst remainingIdx = 1\r\n\r\n\treturn value.charAt(startingLetter).toUpperCase() + value.slice(remainingIdx)\r\n}\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description splits the given string at the specified delimiter\r\n * @param {string} value the value to be split\r\n * @param {string} delimiter the value to be split at\r\n * @returns {string[]} the split value\r\n */\r\nexport const splitAt = (value: string, delimiter: string): string[] => {\r\n\tif (!value) return ['']\r\n\r\n\treturn value.split(delimiter)\r\n}\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description joins the given array using the specified delimiter\r\n * @param {string} delimiter the value to be joined with\r\n * @param {string[]} data the data to be joined\r\n * @returns {string} the joined value\r\n */\r\nexport const joinWith = (delimiter: string, data: string[] = []): string => data.join(delimiter)\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description replaces each substring of the value that matches the given target and replaces the match with the provided replacement value\r\n * @param {string} value the value to be modified\r\n * @param {string} target the value to be replaced\r\n * @param {string} replacement the replacement value\r\n * @returns {string} the modified value\r\n */\r\nexport const replaceAll = (value: string, target: string, replacement: string): string => {\r\n\tif (!value) return ''\r\n\r\n\tconst regex = new RegExp(target, 'g')\r\n\r\n\treturn value.replace(regex, replacement)\r\n}\r\n/**\r\n * @author Alex Hodson\r\n * @description attempts to find the index of a given substring\r\n * @param {string} value the value to be searched\r\n * @param {string} target the value to be identified\r\n * @returns {number} the index of the target string within the given value\r\n */\r\nexport const findSubstringIndex = (value: string, target: string): number => {\r\n\tif (!value) return -1\r\n\r\n\treturn value.indexOf(target)\r\n}","import { Pipe, PipeTransform } from '@angular/core'\r\nimport { format } from 'date-fns'\r\nimport { replaceAll } from '../../helper/string/string-helper'\r\n\r\n@Pipe({\r\n\tname: 'formatDateTime'\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description a pipe which formats a given date time string into a user friendly UTC string\r\n */\r\nexport class FormatDateTimePipe implements PipeTransform {\r\n\t\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the entry point for the point which calls the format method and returns its value\r\n\t * @param value the value of the HTML element\r\n\t * @param args any extra arguments passed\r\n\t * @returns the formatted value\r\n\t */\r\n\ttransform(value: string, ...args: unknown[]): string {\r\n\t\treturn this.format(value)\r\n\t}\r\n\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description formats the given date time string into a UTC string \r\n\t * @param text the text to be formatted\r\n\t * @returns the formatted value\r\n\t */\r\n\tprivate format(text: string) {\r\n\t\tconst date = new Date(replaceAll(text, 'Z', ''))\r\n\t\treturn format(date, 'E, d MMMM yyyy H:mm:ss')\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormatDateTimePipe } from './format-date-time.pipe'\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n\t\tFormatDateTimePipe\r\n\t],\r\n imports: [\r\n CommonModule\r\n ],\r\n\texports: [\r\n\t\tFormatDateTimePipe\r\n\t]\r\n})\r\nexport class FormatDateTimeModule { }\r\n","/*\r\n * Public API Surface of windows-plus-utilities\r\n */\r\nexport * from './pipe/beautify-text/beautify-text.module'\r\nexport * from './pipe/beautify-text/beautify-text.pipe'\r\n\r\nexport * from './pipe/format-date/format-date.module'\r\nexport * from './pipe/format-date/format-date.pipe'\r\n\r\nexport * from './pipe/format-date-time/format-date-time.module'\r\nexport * from './pipe/format-date-time/format-date-time.pipe'\r\n\r\nexport * from './helper/string/string-helper'","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"windows-plus-utilities-util.mjs","sources":["../../../projects/windows-plus-utilities/util/pipe/beautify-text/beautify-text.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/beautify-text/beautify-text.module.ts","../../../projects/windows-plus-utilities/util/pipe/format-date/format-date.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/format-date/format-date.module.ts","../../../projects/windows-plus-utilities/util/helper/string/string-helper.ts","../../../projects/windows-plus-utilities/util/pipe/format-date-time/format-date-time.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/format-date-time/format-date-time.module.ts","../../../projects/windows-plus-utilities/util/pipe/replace/replace.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/replace/replace.module.ts","../../../projects/windows-plus-utilities/util/public-api.ts","../../../projects/windows-plus-utilities/util/windows-plus-utilities-util.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'beautify'\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description the beautify text pipe takes a string and formats it into a more visually pleasing format. The pipe will add a space before any capital letter\r\n * and then capitalise the first letter of the string\r\n */\r\nexport class BeautifyTextPipe implements PipeTransform {\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the entry point for the point which calls the format method and returns its value\r\n\t * @param value the value of the HTML element\r\n\t * @param args any extra arguments passed\r\n\t * @returns the formatted value\r\n\t */\r\n\ttransform(value: string, args?: any): any {\r\n\t\treturn this.format(value)\r\n\t}\r\n\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description formats the given string. A space will be added before any capital letter and then the first letter is capitalised\r\n\t * @param text the text to be formatted\r\n\t * @returns the formatted value\r\n\t */\r\n\tprivate format(text: string): string {\r\n\t\tconst replaceResult: string = text.replace(/([A-Z])/g, \" $1\").trim()\r\n\t\tconst output: string = replaceResult.charAt(0).toUpperCase() + replaceResult.slice(1)\r\n\r\n\t\treturn output\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core'\r\nimport { BeautifyTextPipe } from './beautify-text.pipe'\r\n\r\n@NgModule({\r\n imports: [],\r\n declarations: [ \r\n BeautifyTextPipe\r\n ],\r\n exports: [\r\n BeautifyTextPipe\r\n ]\r\n})\r\nexport class BeautifyTextModule{}","import { Pipe, PipeTransform } from '@angular/core'\r\n\r\n@Pipe({\r\n\tname: 'formatDate'\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description a pipe which formats a given date string into a user friendly UTC string\r\n */\r\nexport class FormatDatePipe implements PipeTransform {\r\n\t\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the entry point for the point which calls the format method and returns its value\r\n\t * @param value the value of the HTML element\r\n\t * @param args any extra arguments passed\r\n\t * @returns the formatted value\r\n\t */\r\n\ttransform(value: string, ...args: unknown[]): string {\r\n\t\treturn this.format(value)\r\n\t}\r\n\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description formats the given date string into a UTC string \r\n\t * @param text the text to be formatted\r\n\t * @returns the formatted value\r\n\t */\r\n\tprivate format(text: string) {\r\n\t\tif (text === '' || text === '-') return text\r\n\t\tconst date = new Date(text)\r\n\r\n\t\treturn date.toLocaleString('en-GB', {\r\n\t\t\tweekday: 'short', // long, short, narrow\r\n\t\t\tday: 'numeric', // numeric, 2-digit\r\n\t\t\tyear: 'numeric', // numeric, 2-digit\r\n\t\t\tmonth: 'long', // numeric, 2-digit, long, short, narrow\r\n\t\t})\r\n\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormatDatePipe } from './format-date.pipe'\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n\t\tFormatDatePipe\r\n\t],\r\n imports: [\r\n CommonModule\r\n ],\r\n\texports: [\r\n\t\tFormatDatePipe\r\n\t]\r\n})\r\nexport class FormatDateModule { }\r\n","/**\r\n * @author Alex Hodson\r\n * @description modifies the given value by capitalizing all letters\r\n * @param {string} value the value to be modified\r\n * @returns {string} the modified value\r\n */\r\n export const capitalizeAll = (value: string): string => {\r\n\tif (!value) return ''\r\n\r\n\treturn value.toUpperCase()\r\n}\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description modifies the given value by capitalizing the first letter\r\n * @param {string} value the value to be modified\r\n * @returns {string} the modified value\r\n */\r\nexport const capitalizeFirst = (value: string): string => {\r\n\tif (!value) return ''\r\n\r\n\tconst startingLetter = 0\r\n\tconst remainingIdx = 1\r\n\r\n\treturn value.charAt(startingLetter).toUpperCase() + value.slice(remainingIdx)\r\n}\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description splits the given string at the specified delimiter\r\n * @param {string} value the value to be split\r\n * @param {string} delimiter the value to be split at\r\n * @returns {string[]} the split value\r\n */\r\nexport const splitAt = (value: string, delimiter: string): string[] => {\r\n\tif (!value) return ['']\r\n\r\n\treturn value.split(delimiter)\r\n}\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description joins the given array using the specified delimiter\r\n * @param {string} delimiter the value to be joined with\r\n * @param {string[]} data the data to be joined\r\n * @returns {string} the joined value\r\n */\r\nexport const joinWith = (delimiter: string, data: string[] = []): string => data.join(delimiter)\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description replaces each substring of the value that matches the given target and replaces the match with the provided replacement value\r\n * @param {string} value the value to be modified\r\n * @param {string} target the value to be replaced\r\n * @param {string} replacement the replacement value\r\n * @returns {string} the modified value\r\n */\r\nexport const replaceAll = (value: string, target: string, replacement: string): string => {\r\n\tif (!value) return ''\r\n\r\n\tconst regex = new RegExp(target, 'g')\r\n\r\n\treturn value.replace(regex, replacement)\r\n}\r\n/**\r\n * @author Alex Hodson\r\n * @description attempts to find the index of a given substring\r\n * @param {string} value the value to be searched\r\n * @param {string} target the value to be identified\r\n * @returns {number} the index of the target string within the given value\r\n */\r\nexport const findSubstringIndex = (value: string, target: string): number => {\r\n\tif (!value) return -1\r\n\r\n\treturn value.indexOf(target)\r\n}","import { Pipe, PipeTransform } from '@angular/core'\r\nimport { format } from 'date-fns'\r\nimport { replaceAll } from '../../helper/string/string-helper'\r\n\r\n@Pipe({\r\n\tname: 'formatDateTime'\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description a pipe which formats a given date time string into a user friendly UTC string\r\n */\r\nexport class FormatDateTimePipe implements PipeTransform {\r\n\t\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the entry point for the point which calls the format method and returns its value\r\n\t * @param value the value of the HTML element\r\n\t * @param args any extra arguments passed\r\n\t * @returns the formatted value\r\n\t */\r\n\ttransform(value: string, ...args: unknown[]): string {\r\n\t\treturn this.format(value)\r\n\t}\r\n\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description formats the given date time string into a UTC string \r\n\t * @param text the text to be formatted\r\n\t * @returns the formatted value\r\n\t */\r\n\tprivate format(text: string) {\r\n\t\tconst date = new Date(replaceAll(text, 'Z', ''))\r\n\t\treturn format(date, 'E, d MMMM yyyy H:mm:ss')\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormatDateTimePipe } from './format-date-time.pipe'\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n\t\tFormatDateTimePipe\r\n\t],\r\n imports: [\r\n CommonModule\r\n ],\r\n\texports: [\r\n\t\tFormatDateTimePipe\r\n\t]\r\n})\r\nexport class FormatDateTimeModule { }\r\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'replace'\n})\nexport class ReplacePipe implements PipeTransform {\n\t/**\n\t * @author Alex Hodson\n\t * @description the entry point for the point which calls the format method and returns its value\n\t * @param value the value of the HTML element\n\t * @param replace the string to be replaced\n\t * @param withThis the replacement string\n\t * @returns the formatted value\n\t */\n\ttransform(value: string, replace: string, withThis: string): string {\n\t\treturn this.format(value, replace, withThis)\n\t}\n\n\t/**\n\t * @author Alex Hodson\n\t * @description replaces a substring with the given replacement in a value\n\t * @param value the value of the HTML element\n\t * @param replace the string to be replaced\n\t * @param withThis the replacement string\n\t * @returns the formatted value\n\t */\n\tprivate format(value: string, replace: string, withThis: string): string {\n\t\treturn value.replace(new RegExp(replace, 'g'), withThis)\n\t}\n}\n","import { NgModule } from '@angular/core'\r\nimport { ReplacePipe } from './replace.pipe'\r\n\r\n@NgModule({\r\n imports: [],\r\n declarations: [ \r\n ReplacePipe\r\n ],\r\n exports: [\r\n ReplacePipe\r\n ]\r\n})\r\nexport class ReplaceModule{}","/*\r\n * Public API Surface of windows-plus-utilities\r\n */\r\nexport * from './pipe/beautify-text/beautify-text.module'\r\nexport * from './pipe/beautify-text/beautify-text.pipe'\r\n\r\nexport * from './pipe/format-date/format-date.module'\r\nexport * from './pipe/format-date/format-date.pipe'\r\n\r\nexport * from './pipe/format-date-time/format-date-time.module'\r\nexport * from './pipe/format-date-time/format-date-time.pipe'\r\n\r\nexport * from './pipe/replace/replace.module'\r\nexport * from './pipe/replace/replace.pipe'\r\n\r\nexport * from './helper/string/string-helper'","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -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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"}
|
|
@@ -246,6 +246,57 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
246
246
|
}]
|
|
247
247
|
}] });
|
|
248
248
|
|
|
249
|
+
class ReplacePipe {
|
|
250
|
+
/**
|
|
251
|
+
* @author Alex Hodson
|
|
252
|
+
* @description the entry point for the point which calls the format method and returns its value
|
|
253
|
+
* @param value the value of the HTML element
|
|
254
|
+
* @param replace the string to be replaced
|
|
255
|
+
* @param withThis the replacement string
|
|
256
|
+
* @returns the formatted value
|
|
257
|
+
*/
|
|
258
|
+
transform(value, replace, withThis) {
|
|
259
|
+
return this.format(value, replace, withThis);
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* @author Alex Hodson
|
|
263
|
+
* @description replaces a substring with the given replacement in a value
|
|
264
|
+
* @param value the value of the HTML element
|
|
265
|
+
* @param replace the string to be replaced
|
|
266
|
+
* @param withThis the replacement string
|
|
267
|
+
* @returns the formatted value
|
|
268
|
+
*/
|
|
269
|
+
format(value, replace, withThis) {
|
|
270
|
+
return value.replace(new RegExp(replace, 'g'), withThis);
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
ReplacePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplacePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
274
|
+
ReplacePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: ReplacePipe, name: "replace" });
|
|
275
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplacePipe, decorators: [{
|
|
276
|
+
type: Pipe,
|
|
277
|
+
args: [{
|
|
278
|
+
name: 'replace'
|
|
279
|
+
}]
|
|
280
|
+
}] });
|
|
281
|
+
|
|
282
|
+
class ReplaceModule {
|
|
283
|
+
}
|
|
284
|
+
ReplaceModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplaceModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
285
|
+
ReplaceModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: ReplaceModule, declarations: [ReplacePipe], exports: [ReplacePipe] });
|
|
286
|
+
ReplaceModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplaceModule });
|
|
287
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ReplaceModule, decorators: [{
|
|
288
|
+
type: NgModule,
|
|
289
|
+
args: [{
|
|
290
|
+
imports: [],
|
|
291
|
+
declarations: [
|
|
292
|
+
ReplacePipe
|
|
293
|
+
],
|
|
294
|
+
exports: [
|
|
295
|
+
ReplacePipe
|
|
296
|
+
]
|
|
297
|
+
}]
|
|
298
|
+
}] });
|
|
299
|
+
|
|
249
300
|
/*
|
|
250
301
|
* Public API Surface of windows-plus-utilities
|
|
251
302
|
*/
|
|
@@ -254,5 +305,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
254
305
|
* Generated bundle index. Do not edit.
|
|
255
306
|
*/
|
|
256
307
|
|
|
257
|
-
export { BeautifyTextModule, BeautifyTextPipe, FormatDateModule, FormatDatePipe, FormatDateTimeModule, FormatDateTimePipe, capitalizeAll, capitalizeFirst, findSubstringIndex, joinWith, replaceAll, splitAt };
|
|
308
|
+
export { BeautifyTextModule, BeautifyTextPipe, FormatDateModule, FormatDatePipe, FormatDateTimeModule, FormatDateTimePipe, ReplaceModule, ReplacePipe, capitalizeAll, capitalizeFirst, findSubstringIndex, joinWith, replaceAll, splitAt };
|
|
258
309
|
//# sourceMappingURL=windows-plus-utilities-util.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windows-plus-utilities-util.mjs","sources":["../../../projects/windows-plus-utilities/util/pipe/beautify-text/beautify-text.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/beautify-text/beautify-text.module.ts","../../../projects/windows-plus-utilities/util/pipe/format-date/format-date.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/format-date/format-date.module.ts","../../../projects/windows-plus-utilities/util/helper/string/string-helper.ts","../../../projects/windows-plus-utilities/util/pipe/format-date-time/format-date-time.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/format-date-time/format-date-time.module.ts","../../../projects/windows-plus-utilities/util/public-api.ts","../../../projects/windows-plus-utilities/util/windows-plus-utilities-util.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'beautify'\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description the beautify text pipe takes a string and formats it into a more visually pleasing format. The pipe will add a space before any capital letter\r\n * and then capitalise the first letter of the string\r\n */\r\nexport class BeautifyTextPipe implements PipeTransform {\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the entry point for the point which calls the format method and returns its value\r\n\t * @param value the value of the HTML element\r\n\t * @param args any extra arguments passed\r\n\t * @returns the formatted value\r\n\t */\r\n\ttransform(value: string, args?: any): any {\r\n\t\treturn this.format(value)\r\n\t}\r\n\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description formats the given string. A space will be added before any capital letter and then the first letter is capitalised\r\n\t * @param text the text to be formatted\r\n\t * @returns the formatted value\r\n\t */\r\n\tprivate format(text: string): string {\r\n\t\tconst replaceResult: string = text.replace(/([A-Z])/g, \" $1\").trim()\r\n\t\tconst output: string = replaceResult.charAt(0).toUpperCase() + replaceResult.slice(1)\r\n\r\n\t\treturn output\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core'\r\nimport { BeautifyTextPipe } from './beautify-text.pipe'\r\n\r\n@NgModule({\r\n imports: [],\r\n declarations: [ \r\n BeautifyTextPipe\r\n ],\r\n exports: [\r\n BeautifyTextPipe\r\n ]\r\n})\r\nexport class BeautifyTextModule{}","import { Pipe, PipeTransform } from '@angular/core'\r\n\r\n@Pipe({\r\n\tname: 'formatDate'\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description a pipe which formats a given date string into a user friendly UTC string\r\n */\r\nexport class FormatDatePipe implements PipeTransform {\r\n\t\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the entry point for the point which calls the format method and returns its value\r\n\t * @param value the value of the HTML element\r\n\t * @param args any extra arguments passed\r\n\t * @returns the formatted value\r\n\t */\r\n\ttransform(value: string, ...args: unknown[]): string {\r\n\t\treturn this.format(value)\r\n\t}\r\n\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description formats the given date string into a UTC string \r\n\t * @param text the text to be formatted\r\n\t * @returns the formatted value\r\n\t */\r\n\tprivate format(text: string) {\r\n\t\tif (text === '' || text === '-') return text\r\n\t\tconst date = new Date(text)\r\n\r\n\t\treturn date.toLocaleString('en-GB', {\r\n\t\t\tweekday: 'short', // long, short, narrow\r\n\t\t\tday: 'numeric', // numeric, 2-digit\r\n\t\t\tyear: 'numeric', // numeric, 2-digit\r\n\t\t\tmonth: 'long', // numeric, 2-digit, long, short, narrow\r\n\t\t})\r\n\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormatDatePipe } from './format-date.pipe'\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n\t\tFormatDatePipe\r\n\t],\r\n imports: [\r\n CommonModule\r\n ],\r\n\texports: [\r\n\t\tFormatDatePipe\r\n\t]\r\n})\r\nexport class FormatDateModule { }\r\n","/**\r\n * @author Alex Hodson\r\n * @description modifies the given value by capitalizing all letters\r\n * @param {string} value the value to be modified\r\n * @returns {string} the modified value\r\n */\r\n export const capitalizeAll = (value: string): string => {\r\n\tif (!value) return ''\r\n\r\n\treturn value.toUpperCase()\r\n}\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description modifies the given value by capitalizing the first letter\r\n * @param {string} value the value to be modified\r\n * @returns {string} the modified value\r\n */\r\nexport const capitalizeFirst = (value: string): string => {\r\n\tif (!value) return ''\r\n\r\n\tconst startingLetter = 0\r\n\tconst remainingIdx = 1\r\n\r\n\treturn value.charAt(startingLetter).toUpperCase() + value.slice(remainingIdx)\r\n}\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description splits the given string at the specified delimiter\r\n * @param {string} value the value to be split\r\n * @param {string} delimiter the value to be split at\r\n * @returns {string[]} the split value\r\n */\r\nexport const splitAt = (value: string, delimiter: string): string[] => {\r\n\tif (!value) return ['']\r\n\r\n\treturn value.split(delimiter)\r\n}\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description joins the given array using the specified delimiter\r\n * @param {string} delimiter the value to be joined with\r\n * @param {string[]} data the data to be joined\r\n * @returns {string} the joined value\r\n */\r\nexport const joinWith = (delimiter: string, data: string[] = []): string => data.join(delimiter)\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description replaces each substring of the value that matches the given target and replaces the match with the provided replacement value\r\n * @param {string} value the value to be modified\r\n * @param {string} target the value to be replaced\r\n * @param {string} replacement the replacement value\r\n * @returns {string} the modified value\r\n */\r\nexport const replaceAll = (value: string, target: string, replacement: string): string => {\r\n\tif (!value) return ''\r\n\r\n\tconst regex = new RegExp(target, 'g')\r\n\r\n\treturn value.replace(regex, replacement)\r\n}\r\n/**\r\n * @author Alex Hodson\r\n * @description attempts to find the index of a given substring\r\n * @param {string} value the value to be searched\r\n * @param {string} target the value to be identified\r\n * @returns {number} the index of the target string within the given value\r\n */\r\nexport const findSubstringIndex = (value: string, target: string): number => {\r\n\tif (!value) return -1\r\n\r\n\treturn value.indexOf(target)\r\n}","import { Pipe, PipeTransform } from '@angular/core'\r\nimport { format } from 'date-fns'\r\nimport { replaceAll } from '../../helper/string/string-helper'\r\n\r\n@Pipe({\r\n\tname: 'formatDateTime'\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description a pipe which formats a given date time string into a user friendly UTC string\r\n */\r\nexport class FormatDateTimePipe implements PipeTransform {\r\n\t\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the entry point for the point which calls the format method and returns its value\r\n\t * @param value the value of the HTML element\r\n\t * @param args any extra arguments passed\r\n\t * @returns the formatted value\r\n\t */\r\n\ttransform(value: string, ...args: unknown[]): string {\r\n\t\treturn this.format(value)\r\n\t}\r\n\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description formats the given date time string into a UTC string \r\n\t * @param text the text to be formatted\r\n\t * @returns the formatted value\r\n\t */\r\n\tprivate format(text: string) {\r\n\t\tconst date = new Date(replaceAll(text, 'Z', ''))\r\n\t\treturn format(date, 'E, d MMMM yyyy H:mm:ss')\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormatDateTimePipe } from './format-date-time.pipe'\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n\t\tFormatDateTimePipe\r\n\t],\r\n imports: [\r\n CommonModule\r\n ],\r\n\texports: [\r\n\t\tFormatDateTimePipe\r\n\t]\r\n})\r\nexport class FormatDateTimeModule { }\r\n","/*\r\n * Public API Surface of windows-plus-utilities\r\n */\r\nexport * from './pipe/beautify-text/beautify-text.module'\r\nexport * from './pipe/beautify-text/beautify-text.pipe'\r\n\r\nexport * from './pipe/format-date/format-date.module'\r\nexport * from './pipe/format-date/format-date.pipe'\r\n\r\nexport * from './pipe/format-date-time/format-date-time.module'\r\nexport * from './pipe/format-date-time/format-date-time.pipe'\r\n\r\nexport * from './helper/string/string-helper'","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"windows-plus-utilities-util.mjs","sources":["../../../projects/windows-plus-utilities/util/pipe/beautify-text/beautify-text.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/beautify-text/beautify-text.module.ts","../../../projects/windows-plus-utilities/util/pipe/format-date/format-date.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/format-date/format-date.module.ts","../../../projects/windows-plus-utilities/util/helper/string/string-helper.ts","../../../projects/windows-plus-utilities/util/pipe/format-date-time/format-date-time.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/format-date-time/format-date-time.module.ts","../../../projects/windows-plus-utilities/util/pipe/replace/replace.pipe.ts","../../../projects/windows-plus-utilities/util/pipe/replace/replace.module.ts","../../../projects/windows-plus-utilities/util/public-api.ts","../../../projects/windows-plus-utilities/util/windows-plus-utilities-util.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'beautify'\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description the beautify text pipe takes a string and formats it into a more visually pleasing format. The pipe will add a space before any capital letter\r\n * and then capitalise the first letter of the string\r\n */\r\nexport class BeautifyTextPipe implements PipeTransform {\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the entry point for the point which calls the format method and returns its value\r\n\t * @param value the value of the HTML element\r\n\t * @param args any extra arguments passed\r\n\t * @returns the formatted value\r\n\t */\r\n\ttransform(value: string, args?: any): any {\r\n\t\treturn this.format(value)\r\n\t}\r\n\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description formats the given string. A space will be added before any capital letter and then the first letter is capitalised\r\n\t * @param text the text to be formatted\r\n\t * @returns the formatted value\r\n\t */\r\n\tprivate format(text: string): string {\r\n\t\tconst replaceResult: string = text.replace(/([A-Z])/g, \" $1\").trim()\r\n\t\tconst output: string = replaceResult.charAt(0).toUpperCase() + replaceResult.slice(1)\r\n\r\n\t\treturn output\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core'\r\nimport { BeautifyTextPipe } from './beautify-text.pipe'\r\n\r\n@NgModule({\r\n imports: [],\r\n declarations: [ \r\n BeautifyTextPipe\r\n ],\r\n exports: [\r\n BeautifyTextPipe\r\n ]\r\n})\r\nexport class BeautifyTextModule{}","import { Pipe, PipeTransform } from '@angular/core'\r\n\r\n@Pipe({\r\n\tname: 'formatDate'\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description a pipe which formats a given date string into a user friendly UTC string\r\n */\r\nexport class FormatDatePipe implements PipeTransform {\r\n\t\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the entry point for the point which calls the format method and returns its value\r\n\t * @param value the value of the HTML element\r\n\t * @param args any extra arguments passed\r\n\t * @returns the formatted value\r\n\t */\r\n\ttransform(value: string, ...args: unknown[]): string {\r\n\t\treturn this.format(value)\r\n\t}\r\n\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description formats the given date string into a UTC string \r\n\t * @param text the text to be formatted\r\n\t * @returns the formatted value\r\n\t */\r\n\tprivate format(text: string) {\r\n\t\tif (text === '' || text === '-') return text\r\n\t\tconst date = new Date(text)\r\n\r\n\t\treturn date.toLocaleString('en-GB', {\r\n\t\t\tweekday: 'short', // long, short, narrow\r\n\t\t\tday: 'numeric', // numeric, 2-digit\r\n\t\t\tyear: 'numeric', // numeric, 2-digit\r\n\t\t\tmonth: 'long', // numeric, 2-digit, long, short, narrow\r\n\t\t})\r\n\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormatDatePipe } from './format-date.pipe'\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n\t\tFormatDatePipe\r\n\t],\r\n imports: [\r\n CommonModule\r\n ],\r\n\texports: [\r\n\t\tFormatDatePipe\r\n\t]\r\n})\r\nexport class FormatDateModule { }\r\n","/**\r\n * @author Alex Hodson\r\n * @description modifies the given value by capitalizing all letters\r\n * @param {string} value the value to be modified\r\n * @returns {string} the modified value\r\n */\r\n export const capitalizeAll = (value: string): string => {\r\n\tif (!value) return ''\r\n\r\n\treturn value.toUpperCase()\r\n}\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description modifies the given value by capitalizing the first letter\r\n * @param {string} value the value to be modified\r\n * @returns {string} the modified value\r\n */\r\nexport const capitalizeFirst = (value: string): string => {\r\n\tif (!value) return ''\r\n\r\n\tconst startingLetter = 0\r\n\tconst remainingIdx = 1\r\n\r\n\treturn value.charAt(startingLetter).toUpperCase() + value.slice(remainingIdx)\r\n}\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description splits the given string at the specified delimiter\r\n * @param {string} value the value to be split\r\n * @param {string} delimiter the value to be split at\r\n * @returns {string[]} the split value\r\n */\r\nexport const splitAt = (value: string, delimiter: string): string[] => {\r\n\tif (!value) return ['']\r\n\r\n\treturn value.split(delimiter)\r\n}\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description joins the given array using the specified delimiter\r\n * @param {string} delimiter the value to be joined with\r\n * @param {string[]} data the data to be joined\r\n * @returns {string} the joined value\r\n */\r\nexport const joinWith = (delimiter: string, data: string[] = []): string => data.join(delimiter)\r\n\r\n/**\r\n * @author Alex Hodson\r\n * @description replaces each substring of the value that matches the given target and replaces the match with the provided replacement value\r\n * @param {string} value the value to be modified\r\n * @param {string} target the value to be replaced\r\n * @param {string} replacement the replacement value\r\n * @returns {string} the modified value\r\n */\r\nexport const replaceAll = (value: string, target: string, replacement: string): string => {\r\n\tif (!value) return ''\r\n\r\n\tconst regex = new RegExp(target, 'g')\r\n\r\n\treturn value.replace(regex, replacement)\r\n}\r\n/**\r\n * @author Alex Hodson\r\n * @description attempts to find the index of a given substring\r\n * @param {string} value the value to be searched\r\n * @param {string} target the value to be identified\r\n * @returns {number} the index of the target string within the given value\r\n */\r\nexport const findSubstringIndex = (value: string, target: string): number => {\r\n\tif (!value) return -1\r\n\r\n\treturn value.indexOf(target)\r\n}","import { Pipe, PipeTransform } from '@angular/core'\r\nimport { format } from 'date-fns'\r\nimport { replaceAll } from '../../helper/string/string-helper'\r\n\r\n@Pipe({\r\n\tname: 'formatDateTime'\r\n})\r\n/**\r\n * @author Alex Hodson\r\n * @description a pipe which formats a given date time string into a user friendly UTC string\r\n */\r\nexport class FormatDateTimePipe implements PipeTransform {\r\n\t\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description the entry point for the point which calls the format method and returns its value\r\n\t * @param value the value of the HTML element\r\n\t * @param args any extra arguments passed\r\n\t * @returns the formatted value\r\n\t */\r\n\ttransform(value: string, ...args: unknown[]): string {\r\n\t\treturn this.format(value)\r\n\t}\r\n\r\n\t/**\r\n\t * @author Alex Hodson\r\n\t * @description formats the given date time string into a UTC string \r\n\t * @param text the text to be formatted\r\n\t * @returns the formatted value\r\n\t */\r\n\tprivate format(text: string) {\r\n\t\tconst date = new Date(replaceAll(text, 'Z', ''))\r\n\t\treturn format(date, 'E, d MMMM yyyy H:mm:ss')\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormatDateTimePipe } from './format-date-time.pipe'\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n\t\tFormatDateTimePipe\r\n\t],\r\n imports: [\r\n CommonModule\r\n ],\r\n\texports: [\r\n\t\tFormatDateTimePipe\r\n\t]\r\n})\r\nexport class FormatDateTimeModule { }\r\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'replace'\n})\nexport class ReplacePipe implements PipeTransform {\n\t/**\n\t * @author Alex Hodson\n\t * @description the entry point for the point which calls the format method and returns its value\n\t * @param value the value of the HTML element\n\t * @param replace the string to be replaced\n\t * @param withThis the replacement string\n\t * @returns the formatted value\n\t */\n\ttransform(value: string, replace: string, withThis: string): string {\n\t\treturn this.format(value, replace, withThis)\n\t}\n\n\t/**\n\t * @author Alex Hodson\n\t * @description replaces a substring with the given replacement in a value\n\t * @param value the value of the HTML element\n\t * @param replace the string to be replaced\n\t * @param withThis the replacement string\n\t * @returns the formatted value\n\t */\n\tprivate format(value: string, replace: string, withThis: string): string {\n\t\treturn value.replace(new RegExp(replace, 'g'), withThis)\n\t}\n}\n","import { NgModule } from '@angular/core'\r\nimport { ReplacePipe } from './replace.pipe'\r\n\r\n@NgModule({\r\n imports: [],\r\n declarations: [ \r\n ReplacePipe\r\n ],\r\n exports: [\r\n ReplacePipe\r\n ]\r\n})\r\nexport class ReplaceModule{}","/*\r\n * Public API Surface of windows-plus-utilities\r\n */\r\nexport * from './pipe/beautify-text/beautify-text.module'\r\nexport * from './pipe/beautify-text/beautify-text.pipe'\r\n\r\nexport * from './pipe/format-date/format-date.module'\r\nexport * from './pipe/format-date/format-date.pipe'\r\n\r\nexport * from './pipe/format-date-time/format-date-time.module'\r\nexport * from './pipe/format-date-time/format-date-time.pipe'\r\n\r\nexport * from './pipe/replace/replace.module'\r\nexport * from './pipe/replace/replace.pipe'\r\n\r\nexport * from './helper/string/string-helper'","/**\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.28",
|
|
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
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "./replace.pipe";
|
|
3
|
+
export declare class ReplaceModule {
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ReplaceModule, never>;
|
|
5
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<ReplaceModule, [typeof i1.ReplacePipe], never, [typeof i1.ReplacePipe]>;
|
|
6
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<ReplaceModule>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { PipeTransform } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class ReplacePipe implements PipeTransform {
|
|
4
|
+
/**
|
|
5
|
+
* @author Alex Hodson
|
|
6
|
+
* @description the entry point for the point which calls the format method and returns its value
|
|
7
|
+
* @param value the value of the HTML element
|
|
8
|
+
* @param replace the string to be replaced
|
|
9
|
+
* @param withThis the replacement string
|
|
10
|
+
* @returns the formatted value
|
|
11
|
+
*/
|
|
12
|
+
transform(value: string, replace: string, withThis: string): string;
|
|
13
|
+
/**
|
|
14
|
+
* @author Alex Hodson
|
|
15
|
+
* @description replaces a substring with the given replacement in a value
|
|
16
|
+
* @param value the value of the HTML element
|
|
17
|
+
* @param replace the string to be replaced
|
|
18
|
+
* @param withThis the replacement string
|
|
19
|
+
* @returns the formatted value
|
|
20
|
+
*/
|
|
21
|
+
private format;
|
|
22
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ReplacePipe, never>;
|
|
23
|
+
static ɵpipe: i0.ɵɵPipeDeclaration<ReplacePipe, "replace", false>;
|
|
24
|
+
}
|
package/util/public-api.d.ts
CHANGED
|
@@ -4,4 +4,6 @@ export * from './pipe/format-date/format-date.module';
|
|
|
4
4
|
export * from './pipe/format-date/format-date.pipe';
|
|
5
5
|
export * from './pipe/format-date-time/format-date-time.module';
|
|
6
6
|
export * from './pipe/format-date-time/format-date-time.pipe';
|
|
7
|
+
export * from './pipe/replace/replace.module';
|
|
8
|
+
export * from './pipe/replace/replace.pipe';
|
|
7
9
|
export * from './helper/string/string-helper';
|