add hideAfter functionality to showToastMessage\n- also minor html refactor
This commit is contained in:
parent
fde1b7bcc9
commit
351aca3243
@ -25,11 +25,7 @@ export default class BodyRenderer {
|
|||||||
renderBodyHTML() {
|
renderBodyHTML() {
|
||||||
const rows = this.datamanager.getRowsForView();
|
const rows = this.datamanager.getRowsForView();
|
||||||
|
|
||||||
this.bodyScrollable.innerHTML = `
|
this.bodyScrollable.innerHTML = this.getBodyHTML(rows);
|
||||||
<table class="dt-body">
|
|
||||||
${this.getBodyHTML(rows)}
|
|
||||||
</table>
|
|
||||||
`;
|
|
||||||
this.instance.setDimensions();
|
this.instance.setDimensions();
|
||||||
this.restoreState();
|
this.restoreState();
|
||||||
}
|
}
|
||||||
@ -40,16 +36,12 @@ export default class BodyRenderer {
|
|||||||
let initialData = this.getDataForClusterize(rows);
|
let initialData = this.getDataForClusterize(rows);
|
||||||
|
|
||||||
if (initialData.length === 0) {
|
if (initialData.length === 0) {
|
||||||
initialData = [`<div class="dt-scrollable__no-data">${this.options.noDataMessage}</div>`];
|
initialData = [this.getNoDataHTML()];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!this.clusterize) {
|
if (!this.clusterize) {
|
||||||
// empty body
|
// empty body
|
||||||
this.bodyScrollable.innerHTML = `
|
this.bodyScrollable.innerHTML = this.getBodyHTML([]);
|
||||||
<table class="dt-body">
|
|
||||||
${this.getBodyHTML([])}
|
|
||||||
</table>
|
|
||||||
`;
|
|
||||||
|
|
||||||
// first 20 rows will appended
|
// first 20 rows will appended
|
||||||
// rest of them in nextTick
|
// rest of them in nextTick
|
||||||
@ -86,8 +78,14 @@ export default class BodyRenderer {
|
|||||||
this.clusterize.append(data);
|
this.clusterize.append(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
showToastMessage(message) {
|
showToastMessage(message, hideAfter) {
|
||||||
this.instance.toastMessage.innerHTML = `<span class="dt-toast__message">${message}</span>`;
|
this.instance.toastMessage.innerHTML = this.getToastMessageHTML(message);
|
||||||
|
|
||||||
|
if (hideAfter) {
|
||||||
|
setTimeout(() => {
|
||||||
|
this.clearToastMessage();
|
||||||
|
}, hideAfter * 1000);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
clearToastMessage() {
|
clearToastMessage() {
|
||||||
@ -100,9 +98,19 @@ export default class BodyRenderer {
|
|||||||
|
|
||||||
getBodyHTML(rows) {
|
getBodyHTML(rows) {
|
||||||
return `
|
return `
|
||||||
<tbody>
|
<table class="dt-body">
|
||||||
${rows.map(row => this.rowmanager.getRowHTML(row, row.meta)).join('')}
|
<tbody>
|
||||||
</tbody>
|
${rows.map(row => this.rowmanager.getRowHTML(row, row.meta)).join('')}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
`;
|
`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getNoDataHTML() {
|
||||||
|
return `<div class="dt-scrollable__no-data">${this.options.noDataMessage}</div>`;
|
||||||
|
}
|
||||||
|
|
||||||
|
getToastMessageHTML(message) {
|
||||||
|
return `<span class="dt-toast__message">${message}</span>`;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -122,8 +122,8 @@ class DataTable {
|
|||||||
this.style.setDimensions();
|
this.style.setDimensions();
|
||||||
}
|
}
|
||||||
|
|
||||||
showToastMessage(message) {
|
showToastMessage(message, hideAfter) {
|
||||||
this.bodyRenderer.showToastMessage(message);
|
this.bodyRenderer.showToastMessage(message, hideAfter);
|
||||||
}
|
}
|
||||||
|
|
||||||
clearToastMessage() {
|
clearToastMessage() {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user