@leanix/components 0.2.48 → 0.2.52
Sign up to get free protection for your applications and to get access to all the features.
- package/bundles/leanix-components.umd.js +158 -5
- package/bundles/leanix-components.umd.js.map +1 -1
- package/esm2015/index.js +2 -0
- package/esm2015/index.js.map +1 -1
- package/esm2015/lib/core-ui/components/button-group/button-group.component.js +2 -2
- package/esm2015/lib/core-ui/components/table/table-header/table-header.component.js +60 -0
- package/esm2015/lib/core-ui/components/table/table-header/table-header.component.js.map +1 -0
- package/esm2015/lib/core-ui/components/table/table.component.js +70 -0
- package/esm2015/lib/core-ui/components/table/table.component.js.map +1 -0
- package/esm2015/lib/core-ui/core-ui.module.js +10 -0
- package/esm2015/lib/core-ui/core-ui.module.js.map +1 -1
- package/esm2015/lib/core-ui/pipes/sort.pipe.js +11 -3
- package/esm2015/lib/core-ui/pipes/sort.pipe.js.map +1 -1
- package/fesm2015/leanix-components.js +147 -8
- package/fesm2015/leanix-components.js.map +1 -1
- package/index.d.ts +2 -0
- package/lib/core-ui/components/table/table-header/table-header.component.d.ts +18 -0
- package/lib/core-ui/components/table/table.component.d.ts +17 -0
- package/lib/core-ui/core-ui.module.d.ts +12 -10
- package/lib/core-ui/pipes/sort.pipe.d.ts +7 -4
- package/package.json +1 -1
package/esm2015/index.js
CHANGED
@@ -35,6 +35,8 @@ export * from './lib/core-ui/components/ellipsis/ellipsis.component';
|
|
35
35
|
export * from './lib/core-ui/components/icon-scale/icon-scale.component';
|
36
36
|
export * from './lib/core-ui/components/spinner/spinner.component';
|
37
37
|
export * from './lib/core-ui/components/tiny-spinner/tiny-spinner.component';
|
38
|
+
export * from './lib/core-ui/components/table/table.component';
|
39
|
+
export * from './lib/core-ui/components/table/table-header/table-header.component';
|
38
40
|
// Tooltip
|
39
41
|
export * from './lib/core-ui/tooltip/tooltip-position.interface';
|
40
42
|
export * from './lib/core-ui/tooltip/tooltip.component';
|
package/esm2015/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAE/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAEhD,cAAc;AACd,cAAc,oCAAoC,CAAC;AAEnD,QAAQ;AACR,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sCAAsC,CAAC;AACrD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,0CAA0C,CAAC;AACzD,cAAc,yCAAyC,CAAC;AACxD,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4CAA4C,CAAC;AAC3D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yCAAyC,CAAC;AACxD,cAAc,gDAAgD,CAAC;AAE/D,aAAa;AACb,cAAc,oDAAoD,CAAC;AACnE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,yCAAyC,CAAC;AAExD,aAAa;AACb,cAAc,gDAAgD,CAAC;AAC/D,cAAc,kDAAkD,CAAC;AACjE,cAAc,8DAA8D,CAAC;AAC7E,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4DAA4D,CAAC;AAC3E,cAAc,gEAAgE,CAAC;AAC/E,cAAc,sDAAsD,CAAC;AACrE,cAAc,0DAA0D,CAAC;AACzE,cAAc,oDAAoD,CAAC;AACnE,cAAc,8DAA8D,CAAC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
|
@@ -12,13 +12,13 @@ export class ButtonGroupComponent {
|
|
12
12
|
}
|
13
13
|
}
|
14
14
|
ButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: ButtonGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
15
|
-
ButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: ButtonGroupComponent, selector: "lx-button-group", inputs: { separator: "separator" }, host: { properties: { "class.marginSeparator": "this.hasMarginSeperator", "class.borderSeparator": "this.hasBorderSeparator" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:inline-block}:host.marginSeparator
|
15
|
+
ButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: ButtonGroupComponent, selector: "lx-button-group", inputs: { separator: "separator" }, host: { properties: { "class.marginSeparator": "this.hasMarginSeperator", "class.borderSeparator": "this.hasBorderSeparator" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:inline-block}:host.marginSeparator ::ng-deep [lx-button]:not(:last-child){margin-right:1px}:host.borderSeparator ::ng-deep [lx-button]:not(:last-child){border-right:none!important}:host.borderSeparator ::ng-deep [lx-button]:not(:last-child):hover{border-right:none!important}:host ::ng-deep [lx-button]:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}:host ::ng-deep [lx-button]:not(:first-of-type){border-top-left-radius:0;border-bottom-left-radius:0}:host ::ng-deep lx-options-dropdown button[lx-button]:last-of-type{border-top-left-radius:0;border-bottom-left-radius:0}"] });
|
16
16
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: ButtonGroupComponent, decorators: [{
|
17
17
|
type: Component,
|
18
18
|
args: [{
|
19
19
|
selector: 'lx-button-group',
|
20
20
|
templateUrl: 'button-group.component.html',
|
21
|
-
styleUrls: ['button-group.component.
|
21
|
+
styleUrls: ['button-group.component.scss']
|
22
22
|
}]
|
23
23
|
}], propDecorators: { separator: [{
|
24
24
|
type: Input
|
@@ -0,0 +1,60 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "@angular/common";
|
4
|
+
export class TableHeaderComponent {
|
5
|
+
constructor(elmentRef, changeDetection) {
|
6
|
+
this.elmentRef = elmentRef;
|
7
|
+
this.changeDetection = changeDetection;
|
8
|
+
this.sortChange = new EventEmitter();
|
9
|
+
this.sortable = false;
|
10
|
+
}
|
11
|
+
onSort() {
|
12
|
+
if (this.column) {
|
13
|
+
if (!this.order) {
|
14
|
+
this.order = 'ASC';
|
15
|
+
}
|
16
|
+
else if (this.order === 'ASC') {
|
17
|
+
this.order = 'DESC';
|
18
|
+
}
|
19
|
+
else {
|
20
|
+
this.order = undefined;
|
21
|
+
}
|
22
|
+
this.sortChange.emit({ key: this.order ? this.column : undefined, order: this.order });
|
23
|
+
}
|
24
|
+
}
|
25
|
+
set order(value) {
|
26
|
+
this._order = value;
|
27
|
+
this.changeDetection.markForCheck();
|
28
|
+
}
|
29
|
+
get order() {
|
30
|
+
return this._order;
|
31
|
+
}
|
32
|
+
set isTabable(tabable) {
|
33
|
+
this.elmentRef.nativeElement.tabIndex = tabable ? 0 : -1;
|
34
|
+
}
|
35
|
+
}
|
36
|
+
TableHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: TableHeaderComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
37
|
+
TableHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: TableHeaderComponent, selector: "lx-th", inputs: { column: "column" }, outputs: { sortChange: "sortChange" }, host: { listeners: { "keydown.enter": "onSort()", "click": "onSort()" }, properties: { "class.sortable": "this.sortable" } }, ngImport: i0, template: "<span>\n <ng-content></ng-content>\n</span>\n<i class=\"fas\" [class.fa-sort-up]=\"order === 'ASC'\" [class.fa-sort-down]=\"order === 'DESC'\" *ngIf=\"order && sortable\"></i>\n", styles: [":root{--lx-color-danger:$colorFunctionalRed;--lx-color-grey80:$colorGray80;--lx-color-grey90:$colorGray90}:host{display:table-cell;padding:8px;vertical-align:bottom;border-bottom:2px solid #e1e5eb;border-top:none;font-weight:700}:host.sortable span{color:var(--lx-anchor-fontcolor);cursor:pointer}:host.sortable span:hover{text-decoration:underline}i{margin-left:4px;cursor:pointer}"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: TableHeaderComponent, decorators: [{
|
39
|
+
type: Component,
|
40
|
+
args: [{
|
41
|
+
selector: 'lx-th',
|
42
|
+
templateUrl: './table-header.component.html',
|
43
|
+
styleUrls: ['./table-header.component.scss'],
|
44
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
45
|
+
}]
|
46
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { column: [{
|
47
|
+
type: Input
|
48
|
+
}], sortChange: [{
|
49
|
+
type: Output
|
50
|
+
}], sortable: [{
|
51
|
+
type: HostBinding,
|
52
|
+
args: ['class.sortable']
|
53
|
+
}], onSort: [{
|
54
|
+
type: HostListener,
|
55
|
+
args: ['keydown.enter']
|
56
|
+
}, {
|
57
|
+
type: HostListener,
|
58
|
+
args: ['click']
|
59
|
+
}] } });
|
60
|
+
//# sourceMappingURL=../../../../../../../../../libs/components/src/lib/core-ui/components/table/table-header/table-header.component.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"table-header.component.js","sourceRoot":"","sources":["table-header.component.ts","table-header.component.html"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EAEvB,SAAS,EAET,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,KAAK,EACL,MAAM,EACP,MAAM,eAAe,CAAC;;;AASvB,MAAM,OAAO,oBAAoB;IAS/B,YAAoB,SAAkC,EAAU,eAAkC;QAA9E,cAAS,GAAT,SAAS,CAAyB;QAAU,oBAAe,GAAf,eAAe,CAAmB;QANxF,eAAU,GAAG,IAAI,YAAY,EAAkB,CAAC;QAE3B,aAAQ,GAAG,KAAK,CAAC;IAIqD,CAAC;IAEhD,MAAM;QAC1D,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;gBACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;aACpB;iBAAM,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE;gBAC/B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;aACrB;iBAAM;gBACL,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;aACxB;YACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;SACxF;IACH,CAAC;IAED,IAAI,KAAK,CAAC,KAAK;QACb,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;IACtC,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,SAAS,CAAC,OAAgB;QAC5B,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC;;iHAnCU,oBAAoB;qGAApB,oBAAoB,gPCnBjC,oLAIA;2FDea,oBAAoB;kBANhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,OAAO;oBACjB,WAAW,EAAE,+BAA+B;oBAC5C,SAAS,EAAE,CAAC,+BAA+B,CAAC;oBAC5C,eAAe,EAAE,uBAAuB,CAAC,MAAM;iBAChD;iIAEU,MAAM;sBAAd,KAAK;gBAEI,UAAU;sBAAnB,MAAM;gBAEwB,QAAQ;sBAAtC,WAAW;uBAAC,gBAAgB;gBAMyB,MAAM;sBAA3D,YAAY;uBAAC,eAAe;;sBAAG,YAAY;uBAAC,OAAO"}
|
@@ -0,0 +1,70 @@
|
|
1
|
+
import { ContentChildren, Directive, EventEmitter, Input, Output } from '@angular/core';
|
2
|
+
import { merge } from 'rxjs';
|
3
|
+
import { TableHeaderComponent } from './table-header/table-header.component';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
// tslint:disable-next-line: directive-class-suffix
|
6
|
+
export class TableComponent {
|
7
|
+
constructor(elementRef) {
|
8
|
+
this.elementRef = elementRef;
|
9
|
+
this.isSortable = false;
|
10
|
+
this.sortChange = new EventEmitter();
|
11
|
+
this.elementRef.nativeElement.classList.add('table', 'table-hover');
|
12
|
+
}
|
13
|
+
ngOnChanges(changes) {
|
14
|
+
if (changes['sort'] && this.tableHeaders) {
|
15
|
+
this.tableHeaders.forEach((header) => {
|
16
|
+
this.setSortValueOnHeader(header);
|
17
|
+
});
|
18
|
+
}
|
19
|
+
if (changes['isSortable'] && this.tableHeaders) {
|
20
|
+
this.tableHeaders.forEach((header) => {
|
21
|
+
header.sortable = this.isSortable;
|
22
|
+
header.isTabable = this.isSortable;
|
23
|
+
});
|
24
|
+
}
|
25
|
+
}
|
26
|
+
ngAfterContentInit() {
|
27
|
+
this.tableHeaders.forEach((header) => {
|
28
|
+
header.sortable = this.isSortable;
|
29
|
+
header.isTabable = this.isSortable;
|
30
|
+
if (this.sort) {
|
31
|
+
this.setSortValueOnHeader(header);
|
32
|
+
}
|
33
|
+
});
|
34
|
+
const sortChange$ = merge(...this.tableHeaders.map((header) => header.sortChange.asObservable()));
|
35
|
+
sortChange$.subscribe((change) => {
|
36
|
+
this.tableHeaders.forEach((header) => {
|
37
|
+
this.setSortValueOnHeader(header);
|
38
|
+
});
|
39
|
+
this.sortChange.emit(change);
|
40
|
+
});
|
41
|
+
}
|
42
|
+
setSortValueOnHeader(header) {
|
43
|
+
var _a, _b;
|
44
|
+
if (header.column !== ((_a = this.sort) === null || _a === void 0 ? void 0 : _a.key)) {
|
45
|
+
header.order = undefined;
|
46
|
+
}
|
47
|
+
else {
|
48
|
+
header.order = (_b = this.sort) === null || _b === void 0 ? void 0 : _b.order;
|
49
|
+
}
|
50
|
+
}
|
51
|
+
}
|
52
|
+
TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: TableComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
53
|
+
TableComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.1.4", type: TableComponent, selector: "table[lx-table]", inputs: { isSortable: "isSortable", sort: "sort" }, outputs: { sortChange: "sortChange" }, queries: [{ propertyName: "tableHeaders", predicate: TableHeaderComponent, descendants: true }], usesOnChanges: true, ngImport: i0 });
|
54
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: TableComponent, decorators: [{
|
55
|
+
type: Directive,
|
56
|
+
args: [{
|
57
|
+
// tslint:disable-next-line: directive-selector
|
58
|
+
selector: 'table[lx-table]'
|
59
|
+
}]
|
60
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { isSortable: [{
|
61
|
+
type: Input
|
62
|
+
}], sort: [{
|
63
|
+
type: Input
|
64
|
+
}], sortChange: [{
|
65
|
+
type: Output
|
66
|
+
}], tableHeaders: [{
|
67
|
+
type: ContentChildren,
|
68
|
+
args: [TableHeaderComponent, { descendants: true }]
|
69
|
+
}] } });
|
70
|
+
//# sourceMappingURL=../../../../../../../../libs/components/src/lib/core-ui/components/table/table.component.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"table.component.js","sourceRoot":"","sources":["table.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EACf,SAAS,EAET,YAAY,EACZ,KAAK,EAEL,MAAM,EAGP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAE7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;;AAM7E,mDAAmD;AACnD,MAAM,OAAO,cAAc;IAOzB,YAAoB,UAAwC;QAAxC,eAAU,GAAV,UAAU,CAA8B;QANnD,eAAU,GAAG,KAAK,CAAC;QAElB,eAAU,GAAG,IAAI,YAAY,EAAkB,CAAC;QAKxD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC;IAED,WAAW,CAAC,OAAsB;QAChC,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE;YACxC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACnC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;SACJ;QAED,IAAI,OAAO,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE;YAC9C,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACnC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC;gBAClC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;YACrC,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YACnC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC;YAClC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;YAEnC,IAAI,IAAI,CAAC,IAAI,EAAE;gBACb,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;aACnC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAElG,WAAW,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YAC/B,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACnC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,oBAAoB,CAAC,MAA4B;;QACvD,IAAI,MAAM,CAAC,MAAM,MAAK,MAAA,IAAI,CAAC,IAAI,0CAAE,GAAG,CAAA,EAAE;YACpC,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC;SAC1B;aAAM;YACL,MAAM,CAAC,KAAK,GAAG,MAAA,IAAI,CAAC,IAAI,0CAAE,KAAK,CAAC;SACjC;IACH,CAAC;;2GApDU,cAAc;+FAAd,cAAc,+KAKR,oBAAoB;2FAL1B,cAAc;kBAL1B,SAAS;mBAAC;oBACT,+CAA+C;oBAC/C,QAAQ,EAAE,iBAAiB;iBAC5B;iGAGU,UAAU;sBAAlB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACI,UAAU;sBAAnB,MAAM;gBAEuD,YAAY;sBAAzE,eAAe;uBAAC,oBAAoB,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE"}
|
@@ -9,6 +9,8 @@ import { ColoredLabelComponent } from './components/colored-label/colored-label.
|
|
9
9
|
import { EllipsisComponent } from './components/ellipsis/ellipsis.component';
|
10
10
|
import { IconScaleComponent } from './components/icon-scale/icon-scale.component';
|
11
11
|
import { SpinnerComponent } from './components/spinner/spinner.component';
|
12
|
+
import { TableHeaderComponent } from './components/table/table-header/table-header.component';
|
13
|
+
import { TableComponent } from './components/table/table.component';
|
12
14
|
import { TinySpinnerComponent } from './components/tiny-spinner/tiny-spinner.component';
|
13
15
|
import { AfterViewInitDirective } from './directives/after-view-init.directive';
|
14
16
|
import { AutocloseGroupService } from './directives/autoclose-group.service';
|
@@ -57,6 +59,8 @@ LxCoreUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
57
59
|
NbspPipe,
|
58
60
|
LxIsUuidPipe,
|
59
61
|
SpinnerComponent,
|
62
|
+
TableComponent,
|
63
|
+
TableHeaderComponent,
|
60
64
|
TinySpinnerComponent,
|
61
65
|
TranslationAfterPipe,
|
62
66
|
TranslationBeforePipe,
|
@@ -85,6 +89,8 @@ LxCoreUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
85
89
|
NbspPipe,
|
86
90
|
LxIsUuidPipe,
|
87
91
|
SpinnerComponent,
|
92
|
+
TableComponent,
|
93
|
+
TableHeaderComponent,
|
88
94
|
TinySpinnerComponent,
|
89
95
|
TranslationAfterPipe,
|
90
96
|
TranslationBeforePipe,
|
@@ -120,6 +126,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
120
126
|
NbspPipe,
|
121
127
|
LxIsUuidPipe,
|
122
128
|
SpinnerComponent,
|
129
|
+
TableComponent,
|
130
|
+
TableHeaderComponent,
|
123
131
|
TinySpinnerComponent,
|
124
132
|
TranslationAfterPipe,
|
125
133
|
TranslationBeforePipe,
|
@@ -152,6 +160,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
152
160
|
NbspPipe,
|
153
161
|
LxIsUuidPipe,
|
154
162
|
SpinnerComponent,
|
163
|
+
TableComponent,
|
164
|
+
TableHeaderComponent,
|
155
165
|
TinySpinnerComponent,
|
156
166
|
TranslationAfterPipe,
|
157
167
|
TranslationBeforePipe,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"core-ui.module.js","sourceRoot":"","sources":["core-ui.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gDAAgD,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;;
|
1
|
+
{"version":3,"file":"core-ui.module.js","sourceRoot":"","sources":["core-ui.module.ts"],"names":[],"mappings":"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"}
|
@@ -6,10 +6,12 @@ export class SortPipe {
|
|
6
6
|
if (!items) {
|
7
7
|
return [];
|
8
8
|
}
|
9
|
-
if (options.
|
10
|
-
return
|
9
|
+
if (options.order !== 'DESC') {
|
10
|
+
return applySorting(options, items);
|
11
|
+
}
|
12
|
+
else {
|
13
|
+
return applySorting(options, items).reverse();
|
11
14
|
}
|
12
|
-
return options.key ? sortBy((item) => get(options.key, item), items) : items.slice().sort();
|
13
15
|
}
|
14
16
|
}
|
15
17
|
SortPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: SortPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
@@ -18,6 +20,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
18
20
|
type: Pipe,
|
19
21
|
args: [{ name: 'lxSort' }]
|
20
22
|
}] });
|
23
|
+
function applySorting(options, items) {
|
24
|
+
if (options.caseInsensitive) {
|
25
|
+
return options.key ? sortBy(getValueForKey(options.key), items) : items.slice().sort(sortStringCaseInsensitive());
|
26
|
+
}
|
27
|
+
return options.key ? sortBy((item) => get(options.key, item), items) : items.slice().sort();
|
28
|
+
}
|
21
29
|
function sortStringCaseInsensitive() {
|
22
30
|
return (a, b) => {
|
23
31
|
if (typeof a === 'string' && typeof b === 'string') {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sort.pipe.js","sourceRoot":"","sources":["sort.pipe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;;
|
1
|
+
{"version":3,"file":"sort.pipe.js","sourceRoot":"","sources":["sort.pipe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;;AAUxC,MAAM,OAAO,QAAQ;IACnB,SAAS,CAAI,KAA2B,EAAE,UAA0B,EAAE;QACpE,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,EAAE,CAAC;SACX;QAED,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,EAAE;YAC5B,OAAO,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SACrC;aAAM;YACL,OAAO,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;SAC/C;IACH,CAAC;;qGAXU,QAAQ;mGAAR,QAAQ;2FAAR,QAAQ;kBADpB,IAAI;mBAAC,EAAE,IAAI,EAAE,QAAQ,EAAE;;AAexB,SAAS,YAAY,CAAI,OAAuB,EAAE,KAAoB;IACpE,IAAI,OAAO,CAAC,eAAe,EAAE;QAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAI,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC;KACtH;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAI,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAI,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;AAClG,CAAC;AAED,SAAS,yBAAyB;IAChC,OAAO,CAAC,CAAI,EAAE,CAAI,EAAE,EAAE;QACpB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;YAClD,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;SAC/D;QACD,IAAI,CAAC,KAAK,CAAC,EAAE;YACX,OAAO,CAAC,CAAC;SACV;QACD,IAAI,CAAC,GAAG,CAAC,EAAE;YACT,OAAO,CAAC,CAAC,CAAC;SACX;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAI,GAAW;IACpC,OAAO,CAAC,IAAO,EAAE,EAAE;QACjB,MAAM,KAAK,GAAS,IAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;SAC5B;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;AACJ,CAAC"}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import * as i2 from '@angular/common';
|
2
2
|
import { CommonModule, formatDate } from '@angular/common';
|
3
3
|
import * as i0 from '@angular/core';
|
4
|
-
import { Component, Input, HostBinding, HostListener, EventEmitter, ChangeDetectionStrategy, Output, Directive, Pipe, SecurityContext, Injectable, InjectionToken, Optional, Inject, NgModule, ViewChildren, ViewChild, ContentChild, forwardRef,
|
4
|
+
import { Component, Input, HostBinding, HostListener, EventEmitter, ChangeDetectionStrategy, Output, Directive, Pipe, SecurityContext, ContentChildren, Injectable, InjectionToken, Optional, Inject, NgModule, ViewChildren, ViewChild, ContentChild, forwardRef, TemplateRef } from '@angular/core';
|
5
5
|
import * as i3$3 from '@angular/cdk/portal';
|
6
6
|
import { ComponentPortal, CdkPortal, PortalModule } from '@angular/cdk/portal';
|
7
7
|
import * as i1 from '@angular/cdk/overlay';
|
@@ -11,7 +11,7 @@ import * as i1$2 from '@ngx-translate/core';
|
|
11
11
|
import { TranslatePipe, TranslateModule } from '@ngx-translate/core';
|
12
12
|
import * as i1$1 from '@angular/platform-browser';
|
13
13
|
import * as i6 from 'rxjs';
|
14
|
-
import { Subject, fromEvent, Observable, BehaviorSubject, combineLatest, ReplaySubject,
|
14
|
+
import { merge, Subject, fromEvent, Observable, BehaviorSubject, combineLatest, ReplaySubject, of } from 'rxjs';
|
15
15
|
import { takeUntil, first, startWith, withLatestFrom, filter, delay, map, distinctUntilChanged, skipWhile, tap, switchMap, debounceTime } from 'rxjs/operators';
|
16
16
|
import * as Color from 'color';
|
17
17
|
import { format, distanceInWords } from 'date-fns';
|
@@ -74,13 +74,13 @@ class ButtonGroupComponent {
|
|
74
74
|
}
|
75
75
|
}
|
76
76
|
ButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: ButtonGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
77
|
-
ButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: ButtonGroupComponent, selector: "lx-button-group", inputs: { separator: "separator" }, host: { properties: { "class.marginSeparator": "this.hasMarginSeperator", "class.borderSeparator": "this.hasBorderSeparator" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:inline-block}:host.marginSeparator
|
77
|
+
ButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: ButtonGroupComponent, selector: "lx-button-group", inputs: { separator: "separator" }, host: { properties: { "class.marginSeparator": "this.hasMarginSeperator", "class.borderSeparator": "this.hasBorderSeparator" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:inline-block}:host.marginSeparator ::ng-deep [lx-button]:not(:last-child){margin-right:1px}:host.borderSeparator ::ng-deep [lx-button]:not(:last-child){border-right:none!important}:host.borderSeparator ::ng-deep [lx-button]:not(:last-child):hover{border-right:none!important}:host ::ng-deep [lx-button]:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}:host ::ng-deep [lx-button]:not(:first-of-type){border-top-left-radius:0;border-bottom-left-radius:0}:host ::ng-deep lx-options-dropdown button[lx-button]:last-of-type{border-top-left-radius:0;border-bottom-left-radius:0}"] });
|
78
78
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: ButtonGroupComponent, decorators: [{
|
79
79
|
type: Component,
|
80
80
|
args: [{
|
81
81
|
selector: 'lx-button-group',
|
82
82
|
templateUrl: 'button-group.component.html',
|
83
|
-
styleUrls: ['button-group.component.
|
83
|
+
styleUrls: ['button-group.component.scss']
|
84
84
|
}]
|
85
85
|
}], propDecorators: { separator: [{
|
86
86
|
type: Input
|
@@ -686,6 +686,129 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
686
686
|
type: Input
|
687
687
|
}] } });
|
688
688
|
|
689
|
+
class TableHeaderComponent {
|
690
|
+
constructor(elmentRef, changeDetection) {
|
691
|
+
this.elmentRef = elmentRef;
|
692
|
+
this.changeDetection = changeDetection;
|
693
|
+
this.sortChange = new EventEmitter();
|
694
|
+
this.sortable = false;
|
695
|
+
}
|
696
|
+
onSort() {
|
697
|
+
if (this.column) {
|
698
|
+
if (!this.order) {
|
699
|
+
this.order = 'ASC';
|
700
|
+
}
|
701
|
+
else if (this.order === 'ASC') {
|
702
|
+
this.order = 'DESC';
|
703
|
+
}
|
704
|
+
else {
|
705
|
+
this.order = undefined;
|
706
|
+
}
|
707
|
+
this.sortChange.emit({ key: this.order ? this.column : undefined, order: this.order });
|
708
|
+
}
|
709
|
+
}
|
710
|
+
set order(value) {
|
711
|
+
this._order = value;
|
712
|
+
this.changeDetection.markForCheck();
|
713
|
+
}
|
714
|
+
get order() {
|
715
|
+
return this._order;
|
716
|
+
}
|
717
|
+
set isTabable(tabable) {
|
718
|
+
this.elmentRef.nativeElement.tabIndex = tabable ? 0 : -1;
|
719
|
+
}
|
720
|
+
}
|
721
|
+
TableHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: TableHeaderComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
722
|
+
TableHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: TableHeaderComponent, selector: "lx-th", inputs: { column: "column" }, outputs: { sortChange: "sortChange" }, host: { listeners: { "keydown.enter": "onSort()", "click": "onSort()" }, properties: { "class.sortable": "this.sortable" } }, ngImport: i0, template: "<span>\n <ng-content></ng-content>\n</span>\n<i class=\"fas\" [class.fa-sort-up]=\"order === 'ASC'\" [class.fa-sort-down]=\"order === 'DESC'\" *ngIf=\"order && sortable\"></i>\n", styles: [":root{--lx-color-danger:$colorFunctionalRed;--lx-color-grey80:$colorGray80;--lx-color-grey90:$colorGray90}:host{display:table-cell;padding:8px;vertical-align:bottom;border-bottom:2px solid #e1e5eb;border-top:none;font-weight:700}:host.sortable span{color:var(--lx-anchor-fontcolor);cursor:pointer}:host.sortable span:hover{text-decoration:underline}i{margin-left:4px;cursor:pointer}"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
723
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: TableHeaderComponent, decorators: [{
|
724
|
+
type: Component,
|
725
|
+
args: [{
|
726
|
+
selector: 'lx-th',
|
727
|
+
templateUrl: './table-header.component.html',
|
728
|
+
styleUrls: ['./table-header.component.scss'],
|
729
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
730
|
+
}]
|
731
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { column: [{
|
732
|
+
type: Input
|
733
|
+
}], sortChange: [{
|
734
|
+
type: Output
|
735
|
+
}], sortable: [{
|
736
|
+
type: HostBinding,
|
737
|
+
args: ['class.sortable']
|
738
|
+
}], onSort: [{
|
739
|
+
type: HostListener,
|
740
|
+
args: ['keydown.enter']
|
741
|
+
}, {
|
742
|
+
type: HostListener,
|
743
|
+
args: ['click']
|
744
|
+
}] } });
|
745
|
+
|
746
|
+
// tslint:disable-next-line: directive-class-suffix
|
747
|
+
class TableComponent {
|
748
|
+
constructor(elementRef) {
|
749
|
+
this.elementRef = elementRef;
|
750
|
+
this.isSortable = false;
|
751
|
+
this.sortChange = new EventEmitter();
|
752
|
+
this.elementRef.nativeElement.classList.add('table', 'table-hover');
|
753
|
+
}
|
754
|
+
ngOnChanges(changes) {
|
755
|
+
if (changes['sort'] && this.tableHeaders) {
|
756
|
+
this.tableHeaders.forEach((header) => {
|
757
|
+
this.setSortValueOnHeader(header);
|
758
|
+
});
|
759
|
+
}
|
760
|
+
if (changes['isSortable'] && this.tableHeaders) {
|
761
|
+
this.tableHeaders.forEach((header) => {
|
762
|
+
header.sortable = this.isSortable;
|
763
|
+
header.isTabable = this.isSortable;
|
764
|
+
});
|
765
|
+
}
|
766
|
+
}
|
767
|
+
ngAfterContentInit() {
|
768
|
+
this.tableHeaders.forEach((header) => {
|
769
|
+
header.sortable = this.isSortable;
|
770
|
+
header.isTabable = this.isSortable;
|
771
|
+
if (this.sort) {
|
772
|
+
this.setSortValueOnHeader(header);
|
773
|
+
}
|
774
|
+
});
|
775
|
+
const sortChange$ = merge(...this.tableHeaders.map((header) => header.sortChange.asObservable()));
|
776
|
+
sortChange$.subscribe((change) => {
|
777
|
+
this.tableHeaders.forEach((header) => {
|
778
|
+
this.setSortValueOnHeader(header);
|
779
|
+
});
|
780
|
+
this.sortChange.emit(change);
|
781
|
+
});
|
782
|
+
}
|
783
|
+
setSortValueOnHeader(header) {
|
784
|
+
var _a, _b;
|
785
|
+
if (header.column !== ((_a = this.sort) === null || _a === void 0 ? void 0 : _a.key)) {
|
786
|
+
header.order = undefined;
|
787
|
+
}
|
788
|
+
else {
|
789
|
+
header.order = (_b = this.sort) === null || _b === void 0 ? void 0 : _b.order;
|
790
|
+
}
|
791
|
+
}
|
792
|
+
}
|
793
|
+
TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: TableComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
794
|
+
TableComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.1.4", type: TableComponent, selector: "table[lx-table]", inputs: { isSortable: "isSortable", sort: "sort" }, outputs: { sortChange: "sortChange" }, queries: [{ propertyName: "tableHeaders", predicate: TableHeaderComponent, descendants: true }], usesOnChanges: true, ngImport: i0 });
|
795
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: TableComponent, decorators: [{
|
796
|
+
type: Directive,
|
797
|
+
args: [{
|
798
|
+
// tslint:disable-next-line: directive-selector
|
799
|
+
selector: 'table[lx-table]'
|
800
|
+
}]
|
801
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { isSortable: [{
|
802
|
+
type: Input
|
803
|
+
}], sort: [{
|
804
|
+
type: Input
|
805
|
+
}], sortChange: [{
|
806
|
+
type: Output
|
807
|
+
}], tableHeaders: [{
|
808
|
+
type: ContentChildren,
|
809
|
+
args: [TableHeaderComponent, { descendants: true }]
|
810
|
+
}] } });
|
811
|
+
|
689
812
|
/**
|
690
813
|
* Allows to register an event handler for the "AfterViewInit" lifecycle hook.
|
691
814
|
* This can be used to do something whenever a component enters the view. This
|
@@ -1060,10 +1183,12 @@ class SortPipe {
|
|
1060
1183
|
if (!items) {
|
1061
1184
|
return [];
|
1062
1185
|
}
|
1063
|
-
if (options.
|
1064
|
-
return
|
1186
|
+
if (options.order !== 'DESC') {
|
1187
|
+
return applySorting(options, items);
|
1188
|
+
}
|
1189
|
+
else {
|
1190
|
+
return applySorting(options, items).reverse();
|
1065
1191
|
}
|
1066
|
-
return options.key ? sortBy((item) => get(options.key, item), items) : items.slice().sort();
|
1067
1192
|
}
|
1068
1193
|
}
|
1069
1194
|
SortPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: SortPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
@@ -1072,6 +1197,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
1072
1197
|
type: Pipe,
|
1073
1198
|
args: [{ name: 'lxSort' }]
|
1074
1199
|
}] });
|
1200
|
+
function applySorting(options, items) {
|
1201
|
+
if (options.caseInsensitive) {
|
1202
|
+
return options.key ? sortBy(getValueForKey(options.key), items) : items.slice().sort(sortStringCaseInsensitive());
|
1203
|
+
}
|
1204
|
+
return options.key ? sortBy((item) => get(options.key, item), items) : items.slice().sort();
|
1205
|
+
}
|
1075
1206
|
function sortStringCaseInsensitive() {
|
1076
1207
|
return (a, b) => {
|
1077
1208
|
if (typeof a === 'string' && typeof b === 'string') {
|
@@ -1286,6 +1417,8 @@ LxCoreUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
1286
1417
|
NbspPipe,
|
1287
1418
|
LxIsUuidPipe,
|
1288
1419
|
SpinnerComponent,
|
1420
|
+
TableComponent,
|
1421
|
+
TableHeaderComponent,
|
1289
1422
|
TinySpinnerComponent,
|
1290
1423
|
TranslationAfterPipe,
|
1291
1424
|
TranslationBeforePipe,
|
@@ -1314,6 +1447,8 @@ LxCoreUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
1314
1447
|
NbspPipe,
|
1315
1448
|
LxIsUuidPipe,
|
1316
1449
|
SpinnerComponent,
|
1450
|
+
TableComponent,
|
1451
|
+
TableHeaderComponent,
|
1317
1452
|
TinySpinnerComponent,
|
1318
1453
|
TranslationAfterPipe,
|
1319
1454
|
TranslationBeforePipe,
|
@@ -1349,6 +1484,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
1349
1484
|
NbspPipe,
|
1350
1485
|
LxIsUuidPipe,
|
1351
1486
|
SpinnerComponent,
|
1487
|
+
TableComponent,
|
1488
|
+
TableHeaderComponent,
|
1352
1489
|
TinySpinnerComponent,
|
1353
1490
|
TranslationAfterPipe,
|
1354
1491
|
TranslationBeforePipe,
|
@@ -1381,6 +1518,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
1381
1518
|
NbspPipe,
|
1382
1519
|
LxIsUuidPipe,
|
1383
1520
|
SpinnerComponent,
|
1521
|
+
TableComponent,
|
1522
|
+
TableHeaderComponent,
|
1384
1523
|
TinySpinnerComponent,
|
1385
1524
|
TranslationAfterPipe,
|
1386
1525
|
TranslationBeforePipe,
|
@@ -5525,5 +5664,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
5525
5664
|
* Generated bundle index. Do not edit.
|
5526
5665
|
*/
|
5527
5666
|
|
5528
|
-
export { ARROW_DOWN, ARROW_LEFT, ARROW_RIGHT, ARROW_UP, AfterViewInitDirective, AutocloseDirective, AutofocusDirective, BACKSPACE, BadgeComponent, BaseSelectDirective, BasicDropdownComponent, BasicDropdownItemComponent, BrPipe, ButtonComponent, ButtonGroupComponent, CURRENCY_SYMBOL_MAP, CardComponent, CollapsibleComponent, ColoredLabelComponent, ContrastColorPipe, CurrencyInputComponent, CurrencySymbolComponent, CustomDatePipe, DATE_FN_LOCALE, DATE_FORMATS, DateInputComponent, DragAndDropListComponent, DragAndDropListItemComponent, ENTER, ESCAPE, EllipsisComponent, FilterSelectionPipe, FilterTermPipe, FormErrorComponent, FormatNumberPipe, GLOBAL_TRANSLATION_OPTIONS, HighlightRangePipe, HighlightTermPipe, HtmlDirective, IconComponent, IconScaleComponent, KeyboardActionSourceDirective, KeyboardSelectAction, KeyboardSelectDirective, LOCALE_FN, LxCoreUiModule, LxFormsModule, LxIsUuidPipe, LxModalModule, LxPopoverUiModule, LxTabUiModule, LxTimeAgo, LxTooltipModule, LxTranslatePipe, MODAL_CLOSE, MarkInvalidDirective, MarkdownPipe, ModalComponent, ModalFooterComponent, ModalHeaderComponent, MultiSelectComponent, NbspPipe, OptionComponent, OptionGroupComponent, OptionGroupDropdownComponent, OptionsDropdownComponent, OptionsSubDropdownComponent, PickerComponent, PickerOptionComponent, PickerTriggerDirective, PillItemComponent, PillListComponent, PopoverClickDirective, PopoverComponent, PopoverContentDirective, PopoverHoverDirective, Required, ResponsiveInputComponent, SPACE, SelectDropdownDirective, SelectableItemDirective, SelectedOptionDirective, SingleSelectComponent, SliderToggleComponent, SortPipe, Sorting, SortingDropdownComponent, SortingDropdownTriggerComponent, SpinnerComponent, TAB, TabComponent, TabGroupComponent, TinySpinnerComponent, TooltipComponent, TooltipDirective, TranslationAfterPipe, TranslationBeforePipe, TranslationBetweenPipe, UnescapeCurlyBracesPipe, ValidateDateInForeseeableFuture, getContrastColor, getTranslationParts, isValidHexColor, isValidX, isValidY, shorthandHexHandle };
|
5667
|
+
export { ARROW_DOWN, ARROW_LEFT, ARROW_RIGHT, ARROW_UP, AfterViewInitDirective, AutocloseDirective, AutofocusDirective, BACKSPACE, BadgeComponent, BaseSelectDirective, BasicDropdownComponent, BasicDropdownItemComponent, BrPipe, ButtonComponent, ButtonGroupComponent, CURRENCY_SYMBOL_MAP, CardComponent, CollapsibleComponent, ColoredLabelComponent, ContrastColorPipe, CurrencyInputComponent, CurrencySymbolComponent, CustomDatePipe, DATE_FN_LOCALE, DATE_FORMATS, DateInputComponent, DragAndDropListComponent, DragAndDropListItemComponent, ENTER, ESCAPE, EllipsisComponent, FilterSelectionPipe, FilterTermPipe, FormErrorComponent, FormatNumberPipe, GLOBAL_TRANSLATION_OPTIONS, HighlightRangePipe, HighlightTermPipe, HtmlDirective, IconComponent, IconScaleComponent, KeyboardActionSourceDirective, KeyboardSelectAction, KeyboardSelectDirective, LOCALE_FN, LxCoreUiModule, LxFormsModule, LxIsUuidPipe, LxModalModule, LxPopoverUiModule, LxTabUiModule, LxTimeAgo, LxTooltipModule, LxTranslatePipe, MODAL_CLOSE, MarkInvalidDirective, MarkdownPipe, ModalComponent, ModalFooterComponent, ModalHeaderComponent, MultiSelectComponent, NbspPipe, OptionComponent, OptionGroupComponent, OptionGroupDropdownComponent, OptionsDropdownComponent, OptionsSubDropdownComponent, PickerComponent, PickerOptionComponent, PickerTriggerDirective, PillItemComponent, PillListComponent, PopoverClickDirective, PopoverComponent, PopoverContentDirective, PopoverHoverDirective, Required, ResponsiveInputComponent, SPACE, SelectDropdownDirective, SelectableItemDirective, SelectedOptionDirective, SingleSelectComponent, SliderToggleComponent, SortPipe, Sorting, SortingDropdownComponent, SortingDropdownTriggerComponent, SpinnerComponent, TAB, TabComponent, TabGroupComponent, TableComponent, TableHeaderComponent, TinySpinnerComponent, TooltipComponent, TooltipDirective, TranslationAfterPipe, TranslationBeforePipe, TranslationBetweenPipe, UnescapeCurlyBracesPipe, ValidateDateInForeseeableFuture, getContrastColor, getTranslationParts, isValidHexColor, isValidX, isValidY, shorthandHexHandle };
|
5529
5668
|
//# sourceMappingURL=leanix-components.js.map
|