@leavittsoftware/web 5.20.1 → 5.22.0
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/package.json +3 -2
- package/titanium/data-table/data-table-core-settings-choose-columns-dialog.d.ts +22 -0
- package/titanium/data-table/data-table-core-settings-choose-columns-dialog.js +161 -0
- package/titanium/data-table/data-table-core-settings-choose-columns-dialog.js.map +1 -0
- package/titanium/data-table/{data-table-core-settings-item.d.ts → data-table-core-settings-choose-columns-item.d.ts} +3 -3
- package/titanium/data-table/{data-table-core-settings-item.js → data-table-core-settings-choose-columns-item.js} +11 -11
- package/titanium/data-table/data-table-core-settings-choose-columns-item.js.map +1 -0
- package/titanium/data-table/data-table-core-settings-sort-dialog.d.ts +22 -0
- package/titanium/data-table/data-table-core-settings-sort-dialog.js +221 -0
- package/titanium/data-table/data-table-core-settings-sort-dialog.js.map +1 -0
- package/titanium/data-table/data-table-core.d.ts +10 -5
- package/titanium/data-table/data-table-core.js +199 -89
- package/titanium/data-table/data-table-core.js.map +1 -1
- package/titanium/data-table/data-table.js +2 -0
- package/titanium/data-table/data-table.js.map +1 -1
- package/titanium/styles/nice-badge.js +2 -1
- package/titanium/styles/nice-badge.js.map +1 -1
- package/titanium/data-table/data-table-core-settings-dialog.d.ts +0 -399
- package/titanium/data-table/data-table-core-settings-dialog.js +0 -363
- package/titanium/data-table/data-table-core-settings-dialog.js.map +0 -1
- package/titanium/data-table/data-table-core-settings-item.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@leavittsoftware/web",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.22.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"description": "",
|
|
6
6
|
"files": [
|
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
"countup.js": "^2.9.0",
|
|
25
25
|
"cropperjs": "2.0.1",
|
|
26
26
|
"dayjs": "^1.11.13",
|
|
27
|
+
"export-to-csv": "^1.4.0",
|
|
27
28
|
"fuse.js": "^7.1.0",
|
|
28
29
|
"jwt-decode": "^4.0.0",
|
|
29
30
|
"promise-parallel-throttle": "^3.5.0",
|
|
@@ -41,5 +42,5 @@
|
|
|
41
42
|
"url": "https://github.com/LeavittSoftware/titanium-elements/issues"
|
|
42
43
|
},
|
|
43
44
|
"homepage": "https://github.com/LeavittSoftware/titanium-elements/#readme",
|
|
44
|
-
"gitHead": "
|
|
45
|
+
"gitHead": "483ea60505f377fd06ab89b5c2e314e593edae69"
|
|
45
46
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import '@material/web/dialog/dialog';
|
|
2
|
+
import '@material/web/button/filled-tonal-button';
|
|
3
|
+
import './data-table-core-settings-choose-columns-item';
|
|
4
|
+
import { LitElement, PropertyValues } from 'lit';
|
|
5
|
+
import { TitaniumDataTableCoreMetaData } from './data-table-core';
|
|
6
|
+
export type TitaniumDataTableCoreItemSettings = {
|
|
7
|
+
key: string;
|
|
8
|
+
show: boolean;
|
|
9
|
+
};
|
|
10
|
+
export declare class TitaniumDataTableCoreSettingsChooseColumnsDialog<T extends object> extends LitElement {
|
|
11
|
+
#private;
|
|
12
|
+
accessor tableMetaData: TitaniumDataTableCoreMetaData<T> | null;
|
|
13
|
+
accessor userSettings: TitaniumDataTableCoreItemSettings[];
|
|
14
|
+
accessor customColumnsApplied: boolean;
|
|
15
|
+
private accessor dialog;
|
|
16
|
+
updated(changedProperties: PropertyValues): void;
|
|
17
|
+
resetColumns(): void;
|
|
18
|
+
show(): Promise<"done">;
|
|
19
|
+
static styles: import("lit").CSSResult[];
|
|
20
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=data-table-core-settings-choose-columns-dialog.d.ts.map
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import '@material/web/dialog/dialog';
|
|
3
|
+
import '@material/web/button/filled-tonal-button';
|
|
4
|
+
import './data-table-core-settings-choose-columns-item';
|
|
5
|
+
import { LitElement, css, html } from 'lit';
|
|
6
|
+
import { customElement, property, query, state } from 'lit/decorators.js';
|
|
7
|
+
import { dialogCloseNavigationHack, dialogOpenNavigationHack } from '../hacks/dialog-navigation-hack';
|
|
8
|
+
import { dialogZIndexHack } from '../hacks/dialog-zindex-hack';
|
|
9
|
+
import { repeat } from 'lit/directives/repeat.js';
|
|
10
|
+
let TitaniumDataTableCoreSettingsChooseColumnsDialog = class TitaniumDataTableCoreSettingsChooseColumnsDialog extends LitElement {
|
|
11
|
+
#tableMetaData_accessor_storage = null;
|
|
12
|
+
get tableMetaData() { return this.#tableMetaData_accessor_storage; }
|
|
13
|
+
set tableMetaData(value) { this.#tableMetaData_accessor_storage = value; }
|
|
14
|
+
#userSettings_accessor_storage = [];
|
|
15
|
+
get userSettings() { return this.#userSettings_accessor_storage; }
|
|
16
|
+
set userSettings(value) { this.#userSettings_accessor_storage = value; }
|
|
17
|
+
#customColumnsApplied_accessor_storage = false;
|
|
18
|
+
get customColumnsApplied() { return this.#customColumnsApplied_accessor_storage; }
|
|
19
|
+
set customColumnsApplied(value) { this.#customColumnsApplied_accessor_storage = value; }
|
|
20
|
+
#dialog_accessor_storage;
|
|
21
|
+
get dialog() { return this.#dialog_accessor_storage; }
|
|
22
|
+
set dialog(value) { this.#dialog_accessor_storage = value; }
|
|
23
|
+
updated(changedProperties) {
|
|
24
|
+
if (changedProperties.has('tableMetaData')) {
|
|
25
|
+
//make sure all keys in tableMetaData.itemMetaData are in userSettings
|
|
26
|
+
if (this.tableMetaData?.itemMetaData.some((item) => !this.userSettings.some((setting) => setting.key === item.key))) {
|
|
27
|
+
this.resetColumns();
|
|
28
|
+
}
|
|
29
|
+
//check if columns have been removed
|
|
30
|
+
if (this.tableMetaData?.itemMetaData.length !== this.userSettings.length) {
|
|
31
|
+
this.resetColumns();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
if (changedProperties.has('userSettings') || changedProperties.has('tableMetaData')) {
|
|
35
|
+
const _customColumnsApplied = this.#getNumberOfCustomSettingsApplied(this.userSettings, this.tableMetaData) > 0;
|
|
36
|
+
if (this.customColumnsApplied !== _customColumnsApplied) {
|
|
37
|
+
this.customColumnsApplied = _customColumnsApplied;
|
|
38
|
+
this.dispatchEvent(new Event('custom-columns-applied-change'));
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
#getNumberOfCustomSettingsApplied(userSettings, tableMetaData) {
|
|
43
|
+
let settingsCount = 0;
|
|
44
|
+
for (const metaData of tableMetaData?.itemMetaData ?? []) {
|
|
45
|
+
const setting = userSettings.find((setting) => setting.key === metaData.key);
|
|
46
|
+
if (setting?.show && metaData.hideByDefault) {
|
|
47
|
+
settingsCount++;
|
|
48
|
+
}
|
|
49
|
+
if (!setting?.show && !metaData.hideByDefault) {
|
|
50
|
+
settingsCount++;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//check if items are re-ordered by index, if so count as one change
|
|
54
|
+
if (userSettings.some((setting, index) => setting.key !== tableMetaData?.itemMetaData[index].key) ||
|
|
55
|
+
tableMetaData?.itemMetaData.some((metaData, index) => metaData.key !== userSettings[index].key)) {
|
|
56
|
+
settingsCount++;
|
|
57
|
+
}
|
|
58
|
+
return settingsCount;
|
|
59
|
+
}
|
|
60
|
+
resetColumns() {
|
|
61
|
+
const _userSettings = this.tableMetaData?.itemMetaData.map((item) => ({ key: item.key, show: !item.hideByDefault })) ?? [];
|
|
62
|
+
if (JSON.stringify(_userSettings) !== JSON.stringify(this.userSettings)) {
|
|
63
|
+
this.userSettings = _userSettings;
|
|
64
|
+
this.dispatchEvent(new Event('setting-change'));
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
async show() {
|
|
68
|
+
this.dialog.returnValue = '';
|
|
69
|
+
this.dialog?.show();
|
|
70
|
+
return await new Promise((resolve) => {
|
|
71
|
+
this.#resolve = resolve;
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
#resolve;
|
|
75
|
+
static { this.styles = [
|
|
76
|
+
css `
|
|
77
|
+
:host {
|
|
78
|
+
display: grid;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
md-dialog {
|
|
82
|
+
max-width: 450px;
|
|
83
|
+
width: calc(100vw - 24px);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
form {
|
|
87
|
+
display: grid;
|
|
88
|
+
}
|
|
89
|
+
`,
|
|
90
|
+
]; }
|
|
91
|
+
render() {
|
|
92
|
+
return html ` <md-dialog
|
|
93
|
+
@open=${(e) => {
|
|
94
|
+
dialogOpenNavigationHack(e.target);
|
|
95
|
+
dialogZIndexHack(e.target);
|
|
96
|
+
}}
|
|
97
|
+
@close=${(e) => {
|
|
98
|
+
if (e.target.returnValue === 'done' || e.target.returnValue === 'navigation-close') {
|
|
99
|
+
dialogCloseNavigationHack(e.target);
|
|
100
|
+
return this.#resolve(e.target.returnValue);
|
|
101
|
+
}
|
|
102
|
+
e.preventDefault();
|
|
103
|
+
}}
|
|
104
|
+
>
|
|
105
|
+
<div slot="headline">Choose columns</div>
|
|
106
|
+
|
|
107
|
+
<form
|
|
108
|
+
slot="content"
|
|
109
|
+
@item-drop=${(e) => {
|
|
110
|
+
e.stopPropagation();
|
|
111
|
+
const items = this.userSettings ?? [];
|
|
112
|
+
//HoverIndex cannot be dropped beyond the length of the array
|
|
113
|
+
const hoverIndex = Math.min(e.hoverIndex, items.length - 1);
|
|
114
|
+
//Ignore if item goes back to where it started
|
|
115
|
+
if (hoverIndex !== e.originIndex) {
|
|
116
|
+
const temp = items[e.originIndex];
|
|
117
|
+
items.splice(e.originIndex, 1);
|
|
118
|
+
items.splice(hoverIndex, 0, temp);
|
|
119
|
+
}
|
|
120
|
+
this.requestUpdate('userSettings');
|
|
121
|
+
this.dispatchEvent(new Event('setting-change'));
|
|
122
|
+
}}
|
|
123
|
+
>
|
|
124
|
+
${repeat(this.userSettings, (setting) => setting.key, (setting, index) => html `
|
|
125
|
+
<titanium-data-table-core-settings-choose-columns-item
|
|
126
|
+
.index=${index}
|
|
127
|
+
.name=${this.tableMetaData?.itemMetaData.find((item) => item.key === setting.key)?.friendlyName ?? setting.key}
|
|
128
|
+
.selected=${setting.show}
|
|
129
|
+
?disabled=${setting.show && this.userSettings.filter((s) => s.show).length === 1}
|
|
130
|
+
?disable-drag=${this.userSettings.length === 1}
|
|
131
|
+
@changed=${(e) => {
|
|
132
|
+
setting.show = e.target.selected;
|
|
133
|
+
this.requestUpdate('userSettings');
|
|
134
|
+
this.dispatchEvent(new Event('setting-change'));
|
|
135
|
+
}}
|
|
136
|
+
></titanium-data-table-core-settings-choose-columns-item>
|
|
137
|
+
`)}
|
|
138
|
+
</form>
|
|
139
|
+
<div slot="actions">
|
|
140
|
+
<md-filled-tonal-button @click=${() => this.dialog?.close('done')}>Done</md-filled-tonal-button>
|
|
141
|
+
</div>
|
|
142
|
+
</md-dialog>`;
|
|
143
|
+
}
|
|
144
|
+
};
|
|
145
|
+
__decorate([
|
|
146
|
+
property({ type: Object })
|
|
147
|
+
], TitaniumDataTableCoreSettingsChooseColumnsDialog.prototype, "tableMetaData", null);
|
|
148
|
+
__decorate([
|
|
149
|
+
property({ type: Array })
|
|
150
|
+
], TitaniumDataTableCoreSettingsChooseColumnsDialog.prototype, "userSettings", null);
|
|
151
|
+
__decorate([
|
|
152
|
+
state()
|
|
153
|
+
], TitaniumDataTableCoreSettingsChooseColumnsDialog.prototype, "customColumnsApplied", null);
|
|
154
|
+
__decorate([
|
|
155
|
+
query('md-dialog')
|
|
156
|
+
], TitaniumDataTableCoreSettingsChooseColumnsDialog.prototype, "dialog", null);
|
|
157
|
+
TitaniumDataTableCoreSettingsChooseColumnsDialog = __decorate([
|
|
158
|
+
customElement('titanium-data-table-core-settings-choose-columns-dialog')
|
|
159
|
+
], TitaniumDataTableCoreSettingsChooseColumnsDialog);
|
|
160
|
+
export { TitaniumDataTableCoreSettingsChooseColumnsDialog };
|
|
161
|
+
//# sourceMappingURL=data-table-core-settings-choose-columns-dialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-table-core-settings-choose-columns-dialog.js","sourceRoot":"","sources":["data-table-core-settings-choose-columns-dialog.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,14 +2,14 @@ import '@material/web/icon/icon';
|
|
|
2
2
|
import '@material/web/switch/switch';
|
|
3
3
|
import '@material/web/elevation/elevation';
|
|
4
4
|
import { DraggableItemBase } from './draggable-item-base';
|
|
5
|
-
export declare class
|
|
5
|
+
export declare class TitaniumDataTableCoreSettingsChooseColumnsItem extends DraggableItemBase {
|
|
6
6
|
accessor name: string;
|
|
7
7
|
accessor selected: boolean;
|
|
8
8
|
accessor disabled: boolean;
|
|
9
9
|
accessor index: number;
|
|
10
|
-
get items():
|
|
10
|
+
get items(): TitaniumDataTableCoreSettingsChooseColumnsItem[];
|
|
11
11
|
get itemsContainer(): HTMLElement | null;
|
|
12
12
|
static styles: import("lit").CSSResultGroup[];
|
|
13
13
|
render(): import("lit-html").TemplateResult<1>;
|
|
14
14
|
}
|
|
15
|
-
//# sourceMappingURL=data-table-core-settings-item.d.ts.map
|
|
15
|
+
//# sourceMappingURL=data-table-core-settings-choose-columns-item.d.ts.map
|
|
@@ -5,7 +5,7 @@ import '@material/web/elevation/elevation';
|
|
|
5
5
|
import { css, html } from 'lit';
|
|
6
6
|
import { customElement, property } from 'lit/decorators.js';
|
|
7
7
|
import { DraggableItemBase } from './draggable-item-base';
|
|
8
|
-
let
|
|
8
|
+
let TitaniumDataTableCoreSettingsChooseColumnsItem = class TitaniumDataTableCoreSettingsChooseColumnsItem extends DraggableItemBase {
|
|
9
9
|
#name_accessor_storage;
|
|
10
10
|
get name() { return this.#name_accessor_storage; }
|
|
11
11
|
set name(value) { this.#name_accessor_storage = value; }
|
|
@@ -19,7 +19,7 @@ let TitaniumDataTableCoreSettingsItem = class TitaniumDataTableCoreSettingsItem
|
|
|
19
19
|
get index() { return this.#index_accessor_storage; }
|
|
20
20
|
set index(value) { this.#index_accessor_storage = value; }
|
|
21
21
|
get items() {
|
|
22
|
-
return Array.from(this.parentElement?.querySelectorAll('data-table-core-settings-item') ?? []);
|
|
22
|
+
return Array.from(this.parentElement?.querySelectorAll('titanium-data-table-core-settings-choose-columns-item') ?? []);
|
|
23
23
|
}
|
|
24
24
|
get itemsContainer() {
|
|
25
25
|
return this.parentElement;
|
|
@@ -85,18 +85,18 @@ let TitaniumDataTableCoreSettingsItem = class TitaniumDataTableCoreSettingsItem
|
|
|
85
85
|
};
|
|
86
86
|
__decorate([
|
|
87
87
|
property({ type: String })
|
|
88
|
-
],
|
|
88
|
+
], TitaniumDataTableCoreSettingsChooseColumnsItem.prototype, "name", null);
|
|
89
89
|
__decorate([
|
|
90
90
|
property({ type: Boolean })
|
|
91
|
-
],
|
|
91
|
+
], TitaniumDataTableCoreSettingsChooseColumnsItem.prototype, "selected", null);
|
|
92
92
|
__decorate([
|
|
93
93
|
property({ type: Boolean })
|
|
94
|
-
],
|
|
94
|
+
], TitaniumDataTableCoreSettingsChooseColumnsItem.prototype, "disabled", null);
|
|
95
95
|
__decorate([
|
|
96
96
|
property({ type: Number })
|
|
97
|
-
],
|
|
98
|
-
|
|
99
|
-
customElement('data-table-core-settings-item')
|
|
100
|
-
],
|
|
101
|
-
export {
|
|
102
|
-
//# sourceMappingURL=data-table-core-settings-item.js.map
|
|
97
|
+
], TitaniumDataTableCoreSettingsChooseColumnsItem.prototype, "index", null);
|
|
98
|
+
TitaniumDataTableCoreSettingsChooseColumnsItem = __decorate([
|
|
99
|
+
customElement('titanium-data-table-core-settings-choose-columns-item')
|
|
100
|
+
], TitaniumDataTableCoreSettingsChooseColumnsItem);
|
|
101
|
+
export { TitaniumDataTableCoreSettingsChooseColumnsItem };
|
|
102
|
+
//# sourceMappingURL=data-table-core-settings-choose-columns-item.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-table-core-settings-choose-columns-item.js","sourceRoot":"","sources":["data-table-core-settings-choose-columns-item.ts"],"names":[],"mappings":";AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,6BAA6B,CAAC;AACrC,OAAO,mCAAmC,CAAC;AAE3C,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAGnD,IAAM,8CAA8C,GAApD,MAAM,8CAA+C,SAAQ,iBAAiB;IAC9C,uBAAa;IAAb,IAAA,IAAI,0CAAS;IAAb,IAAA,IAAI,gDAAS;IACZ,2BAAkB;IAAlB,IAAA,QAAQ,8CAAU;IAAlB,IAAA,QAAQ,oDAAU;IAClB,2BAAkB;IAAlB,IAAA,QAAQ,8CAAU;IAAlB,IAAA,QAAQ,oDAAU;IACnB,wBAAc;IAAd,IAAA,KAAK,2CAAS;IAAd,IAAA,KAAK,iDAAS;IAEnD,IAAa,KAAK;QAChB,OAAO,KAAK,CAAC,IAAI,CACf,IAAI,CAAC,aAAa,EAAE,gBAAgB,CAAiD,uDAAuD,CAAC,IAAI,EAAE,CACpJ,CAAC;IACJ,CAAC;IAED,IAAa,cAAc;QACzB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;aAEM,WAAM,GAAG;QACd,iBAAiB,CAAC,MAAM;QACxB,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA4BF;KACF,AA/BY,CA+BX;IAEF,MAAM;QACJ,OAAO,IAAI,CAAA;;;sCAGuB,IAAI,CAAC,WAAW;;;;uCAIf,IAAI,CAAC,WAAW;;;;4BAI3B,IAAI,CAAC,UAAU,gBAAgB,IAAI,CAAC,UAAU;cAC5D,IAAI,CAAC,IAAI;;oBAEH,IAAI,CAAC,QAAQ;kBACf,GAAG,EAAE;YACb,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAC3C,CAAC;;;oBAGW,IAAI,CAAC,QAAQ;;KAE5B,CAAC;IACJ,CAAC;;AAzEoC;IAApC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;0EAAuB;AACZ;IAArC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;8EAA4B;AAClB;IAArC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;8EAA4B;AACnB;IAApC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;2EAAwB;AAJxC,8CAA8C;IAD1D,aAAa,CAAC,uDAAuD,CAAC;GAC1D,8CAA8C,CA2E1D"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import '@material/web/dialog/dialog';
|
|
2
|
+
import '@material/web/button/text-button';
|
|
3
|
+
import '@material/web/button/filled-tonal-button';
|
|
4
|
+
import '@material/web/icon/icon';
|
|
5
|
+
import '@material/web/menu/menu';
|
|
6
|
+
import '@material/web/menu/menu-item';
|
|
7
|
+
import './data-table-core-settings-sort-item';
|
|
8
|
+
import { LitElement } from 'lit';
|
|
9
|
+
import { TitaniumDataTableCoreMetaData, TitaniumDataTableCoreSortItem } from './data-table-core';
|
|
10
|
+
export type CloseReason = 'apply' | 'cancel' | 'navigation-close';
|
|
11
|
+
export declare class TitaniumDataTableCoreSettingsSortDialog<T extends object> extends LitElement {
|
|
12
|
+
#private;
|
|
13
|
+
accessor tableMetaData: TitaniumDataTableCoreMetaData<T> | null;
|
|
14
|
+
private accessor dialog;
|
|
15
|
+
private accessor addMenu;
|
|
16
|
+
accessor sort: TitaniumDataTableCoreSortItem[];
|
|
17
|
+
show(sort: TitaniumDataTableCoreSortItem[]): Promise<CloseReason>;
|
|
18
|
+
hasChanges(sortA: TitaniumDataTableCoreSortItem[], sortB: TitaniumDataTableCoreSortItem[]): boolean;
|
|
19
|
+
static styles: import("lit").CSSResult[];
|
|
20
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=data-table-core-settings-sort-dialog.d.ts.map
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import '@material/web/dialog/dialog';
|
|
3
|
+
import '@material/web/button/text-button';
|
|
4
|
+
import '@material/web/button/filled-tonal-button';
|
|
5
|
+
import '@material/web/icon/icon';
|
|
6
|
+
import '@material/web/menu/menu';
|
|
7
|
+
import '@material/web/menu/menu-item';
|
|
8
|
+
import './data-table-core-settings-sort-item';
|
|
9
|
+
import { LitElement, css, html } from 'lit';
|
|
10
|
+
import { customElement, property, query, state } from 'lit/decorators.js';
|
|
11
|
+
import { dialogCloseNavigationHack, dialogOpenNavigationHack } from '../hacks/dialog-navigation-hack';
|
|
12
|
+
import { dialogZIndexHack } from '../hacks/dialog-zindex-hack';
|
|
13
|
+
import { repeat } from 'lit/directives/repeat.js';
|
|
14
|
+
import { niceBadgeStyles } from '../styles/nice-badge';
|
|
15
|
+
import { p } from '../styles/p';
|
|
16
|
+
let TitaniumDataTableCoreSettingsSortDialog = class TitaniumDataTableCoreSettingsSortDialog extends LitElement {
|
|
17
|
+
#tableMetaData_accessor_storage = null;
|
|
18
|
+
get tableMetaData() { return this.#tableMetaData_accessor_storage; }
|
|
19
|
+
set tableMetaData(value) { this.#tableMetaData_accessor_storage = value; }
|
|
20
|
+
#dialog_accessor_storage;
|
|
21
|
+
get dialog() { return this.#dialog_accessor_storage; }
|
|
22
|
+
set dialog(value) { this.#dialog_accessor_storage = value; }
|
|
23
|
+
#addMenu_accessor_storage;
|
|
24
|
+
get addMenu() { return this.#addMenu_accessor_storage; }
|
|
25
|
+
set addMenu(value) { this.#addMenu_accessor_storage = value; }
|
|
26
|
+
#sort_accessor_storage = [];
|
|
27
|
+
get sort() { return this.#sort_accessor_storage; }
|
|
28
|
+
set sort(value) { this.#sort_accessor_storage = value; }
|
|
29
|
+
#originalSort = [];
|
|
30
|
+
async show(sort) {
|
|
31
|
+
this.#originalSort = structuredClone(sort);
|
|
32
|
+
this.sort = structuredClone(sort);
|
|
33
|
+
this.dialog.returnValue = '';
|
|
34
|
+
this.dialog?.show();
|
|
35
|
+
return await new Promise((resolve) => {
|
|
36
|
+
this.#resolve = resolve;
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
hasChanges(sortA, sortB) {
|
|
40
|
+
return JSON.stringify(sortA) !== JSON.stringify(sortB);
|
|
41
|
+
}
|
|
42
|
+
#repositionMenu;
|
|
43
|
+
#resolve;
|
|
44
|
+
static { this.styles = [
|
|
45
|
+
p,
|
|
46
|
+
niceBadgeStyles,
|
|
47
|
+
css `
|
|
48
|
+
:host {
|
|
49
|
+
display: grid;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
md-dialog {
|
|
53
|
+
max-width: 450px;
|
|
54
|
+
width: calc(100vw - 24px);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
main {
|
|
58
|
+
display: grid;
|
|
59
|
+
|
|
60
|
+
data-table-core-settings-sort-item {
|
|
61
|
+
z-index: 0;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
p[no-sort] {
|
|
65
|
+
opacity: 0.8;
|
|
66
|
+
text-align: center;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
div[slot='headline'] {
|
|
71
|
+
display: grid;
|
|
72
|
+
gap: 0px;
|
|
73
|
+
|
|
74
|
+
p {
|
|
75
|
+
font-size: 13px;
|
|
76
|
+
line-height: 14px;
|
|
77
|
+
opacity: 0.8;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
add-container {
|
|
82
|
+
display: grid;
|
|
83
|
+
position: relative;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
div[slot='actions'] {
|
|
87
|
+
display: flex;
|
|
88
|
+
justify-content: space-between;
|
|
89
|
+
gap: 8px;
|
|
90
|
+
}
|
|
91
|
+
`,
|
|
92
|
+
]; }
|
|
93
|
+
render() {
|
|
94
|
+
const columnsNotInSort = this.tableMetaData?.itemMetaData.filter((item) => !item.disableSort && !this.sort.some((sort) => sort.key === item.key)) ?? [];
|
|
95
|
+
return html ` <md-dialog
|
|
96
|
+
@open=${(e) => {
|
|
97
|
+
dialogOpenNavigationHack(e.target);
|
|
98
|
+
dialogZIndexHack(e.target);
|
|
99
|
+
}}
|
|
100
|
+
@close=${(e) => {
|
|
101
|
+
if (e.target.returnValue === 'apply' || e.target.returnValue === 'cancel' || e.target.returnValue === 'navigation-close') {
|
|
102
|
+
dialogCloseNavigationHack(e.target);
|
|
103
|
+
return this.#resolve(e.target.returnValue);
|
|
104
|
+
}
|
|
105
|
+
e.preventDefault();
|
|
106
|
+
}}
|
|
107
|
+
>
|
|
108
|
+
<div slot="headline">
|
|
109
|
+
<div>Advanced sort</div>
|
|
110
|
+
<p>Max ${this.tableMetaData?.maxCustomSortColumns ?? 4} sort columns</p>
|
|
111
|
+
</div>
|
|
112
|
+
<main slot="content">
|
|
113
|
+
<form
|
|
114
|
+
@item-drop=${(e) => {
|
|
115
|
+
e.stopPropagation();
|
|
116
|
+
const items = this.sort ?? [];
|
|
117
|
+
//HoverIndex cannot be dropped beyond the length of the array
|
|
118
|
+
const hoverIndex = Math.min(e.hoverIndex, items.length - 1);
|
|
119
|
+
//Ignore if item goes back to where it started
|
|
120
|
+
if (hoverIndex !== e.originIndex) {
|
|
121
|
+
const temp = items[e.originIndex];
|
|
122
|
+
items.splice(e.originIndex, 1);
|
|
123
|
+
items.splice(hoverIndex, 0, temp);
|
|
124
|
+
}
|
|
125
|
+
this.requestUpdate('sort');
|
|
126
|
+
}}
|
|
127
|
+
>
|
|
128
|
+
${!this.sort.length
|
|
129
|
+
? html `<p no-sort>No sort columns</p>`
|
|
130
|
+
: repeat(
|
|
131
|
+
//sort by sort order in this.sort
|
|
132
|
+
this.sort, (sort) => sort.key, (sort, index) => html `<data-table-core-settings-sort-item
|
|
133
|
+
.index=${index}
|
|
134
|
+
.name=${this.tableMetaData?.itemMetaData.find((item) => item.key === sort.key)?.friendlyName ?? sort.key}
|
|
135
|
+
sort-direction=${sort.direction}
|
|
136
|
+
?disable-drag=${this.sort.length === 1}
|
|
137
|
+
@sort-direction-changed=${(e) => {
|
|
138
|
+
this.sort[index].direction = e.target.sortDirection;
|
|
139
|
+
this.requestUpdate('sort');
|
|
140
|
+
}}
|
|
141
|
+
@delete=${() => {
|
|
142
|
+
this.sort.splice(index, 1);
|
|
143
|
+
this.requestUpdate('sort');
|
|
144
|
+
}}
|
|
145
|
+
></data-table-core-settings-sort-item>`)}
|
|
146
|
+
</form>
|
|
147
|
+
</main>
|
|
148
|
+
<div slot="actions">
|
|
149
|
+
<add-container>
|
|
150
|
+
<md-text-button
|
|
151
|
+
?disabled=${this.sort.length >= (this.tableMetaData?.maxCustomSortColumns ?? 4)}
|
|
152
|
+
id="menu-anchor"
|
|
153
|
+
leading-icon
|
|
154
|
+
@click=${(e) => {
|
|
155
|
+
e.preventDefault();
|
|
156
|
+
const root = e.target.getRootNode();
|
|
157
|
+
const menu = root.querySelector('#menu');
|
|
158
|
+
menu.open = !menu.open;
|
|
159
|
+
}}
|
|
160
|
+
>
|
|
161
|
+
<span>Add sort column</span>
|
|
162
|
+
<md-icon slot="icon">add</md-icon>
|
|
163
|
+
</md-text-button>
|
|
164
|
+
|
|
165
|
+
<md-menu
|
|
166
|
+
id="menu"
|
|
167
|
+
stay-open-on-focusout
|
|
168
|
+
anchor="menu-anchor"
|
|
169
|
+
@opened=${() => {
|
|
170
|
+
this.#repositionMenu = () => this.addMenu.reposition();
|
|
171
|
+
document.addEventListener('scroll', this.#repositionMenu, { passive: true });
|
|
172
|
+
}}
|
|
173
|
+
@closed=${() => document.removeEventListener('scroll', this.#repositionMenu)}
|
|
174
|
+
positioning="popover"
|
|
175
|
+
@close-menu=${(e) => {
|
|
176
|
+
e.detail.itemPath?.[0]?.action?.();
|
|
177
|
+
}}
|
|
178
|
+
>
|
|
179
|
+
${repeat(columnsNotInSort, (column) => column.key, (column) => html `<md-menu-item
|
|
180
|
+
.action=${() => {
|
|
181
|
+
this.sort.push({ key: column.key, direction: 'asc' });
|
|
182
|
+
this.requestUpdate('sort');
|
|
183
|
+
}}
|
|
184
|
+
>
|
|
185
|
+
<md-icon slot="start">sort_by_alpha</md-icon>
|
|
186
|
+
${column.friendlyName ?? column.key}
|
|
187
|
+
</md-menu-item>`)}
|
|
188
|
+
</md-menu>
|
|
189
|
+
</add-container>
|
|
190
|
+
<div>
|
|
191
|
+
<md-text-button @click=${() => this.dialog?.close('cancel')}>Cancel</md-text-button>
|
|
192
|
+
<md-filled-tonal-button
|
|
193
|
+
?disabled=${!this.hasChanges(this.sort, this.#originalSort)}
|
|
194
|
+
@click=${() => {
|
|
195
|
+
this.dialog?.close('apply');
|
|
196
|
+
this.dispatchEvent(new Event('sort-changed'));
|
|
197
|
+
}}
|
|
198
|
+
>Apply</md-filled-tonal-button
|
|
199
|
+
>
|
|
200
|
+
</div>
|
|
201
|
+
</div>
|
|
202
|
+
</md-dialog>`;
|
|
203
|
+
}
|
|
204
|
+
};
|
|
205
|
+
__decorate([
|
|
206
|
+
property({ type: Object })
|
|
207
|
+
], TitaniumDataTableCoreSettingsSortDialog.prototype, "tableMetaData", null);
|
|
208
|
+
__decorate([
|
|
209
|
+
query('md-dialog')
|
|
210
|
+
], TitaniumDataTableCoreSettingsSortDialog.prototype, "dialog", null);
|
|
211
|
+
__decorate([
|
|
212
|
+
query('md-menu')
|
|
213
|
+
], TitaniumDataTableCoreSettingsSortDialog.prototype, "addMenu", null);
|
|
214
|
+
__decorate([
|
|
215
|
+
state()
|
|
216
|
+
], TitaniumDataTableCoreSettingsSortDialog.prototype, "sort", null);
|
|
217
|
+
TitaniumDataTableCoreSettingsSortDialog = __decorate([
|
|
218
|
+
customElement('titanium-data-table-core-settings-sort-dialog')
|
|
219
|
+
], TitaniumDataTableCoreSettingsSortDialog);
|
|
220
|
+
export { TitaniumDataTableCoreSettingsSortDialog };
|
|
221
|
+
//# sourceMappingURL=data-table-core-settings-sort-dialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-table-core-settings-sort-dialog.js","sourceRoot":"","sources":["data-table-core-settings-sort-dialog.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,13 +2,18 @@ import '@material/web/checkbox/checkbox';
|
|
|
2
2
|
import '@material/web/icon/icon';
|
|
3
3
|
import '@material/web/focus/md-focus-ring';
|
|
4
4
|
import '@material/web/ripple/ripple';
|
|
5
|
-
import '
|
|
6
|
-
import
|
|
5
|
+
import '@material/web/menu/menu';
|
|
6
|
+
import '@material/web/menu/menu-item';
|
|
7
|
+
import '@material/web/iconbutton/icon-button';
|
|
8
|
+
import './data-table-core-settings-choose-columns-dialog';
|
|
9
|
+
import './data-table-core-settings-sort-dialog';
|
|
10
|
+
import { TitaniumDataTableCoreItemSettings } from './data-table-core-settings-choose-columns-dialog';
|
|
7
11
|
import { CSSResult, CSSResultGroup, LitElement, PropertyValues, TemplateResult } from 'lit';
|
|
8
12
|
export type TitaniumDataTableCoreMetaData<T extends object> = {
|
|
9
13
|
uniqueKey: (item: T) => string;
|
|
10
14
|
itemLinkUrl?: (item: T) => string;
|
|
11
15
|
itemMetaData: TitaniumDataTableCoreItemMetaData<T>[];
|
|
16
|
+
maxCustomSortColumns?: number;
|
|
12
17
|
};
|
|
13
18
|
export type TitaniumDataTableCoreItemMetaData<T extends object> = {
|
|
14
19
|
key: string;
|
|
@@ -417,8 +422,8 @@ export declare class TitaniumDataTableCore<T extends object> extends TitaniumDat
|
|
|
417
422
|
* Array of currently selected data table objects
|
|
418
423
|
*/
|
|
419
424
|
accessor selected: Array<T>;
|
|
420
|
-
private accessor
|
|
421
|
-
accessor
|
|
425
|
+
private accessor chooseColumnsDialog;
|
|
426
|
+
private accessor sortDialog;
|
|
422
427
|
/**
|
|
423
428
|
* Local storage key to save user settings for this data table.
|
|
424
429
|
*/
|
|
@@ -432,7 +437,7 @@ export declare class TitaniumDataTableCore<T extends object> extends TitaniumDat
|
|
|
432
437
|
updated(changedProps: PropertyValues<this>): void;
|
|
433
438
|
selectAll(): void;
|
|
434
439
|
deselectAll(): void;
|
|
435
|
-
|
|
440
|
+
resetSort(): void;
|
|
436
441
|
orderByUserPreference(itemMetaData: TitaniumDataTableCoreItemMetaData<T>[], userSettings: TitaniumDataTableCoreItemSettings[]): TitaniumDataTableCoreItemMetaData<T>[];
|
|
437
442
|
static styles: CSSResult[];
|
|
438
443
|
render(): TemplateResult<1>;
|