From 3a9efb4c5f0a08715413a14aaba7deb3963e56c0 Mon Sep 17 00:00:00 2001 From: Volker Schukai <volker.schukai@schukai.com> Date: Tue, 18 Feb 2025 23:20:21 +0100 Subject: [PATCH] feat(datatable-status): add callbacks.onError --- source/components/datatable/status.mjs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/source/components/datatable/status.mjs b/source/components/datatable/status.mjs index 8f929c080..6ea1294cf 100644 --- a/source/components/datatable/status.mjs +++ b/source/components/datatable/status.mjs @@ -30,6 +30,7 @@ import "./datasource/rest.mjs"; import "../form/popper.mjs"; import "../form/context-error.mjs"; import { StatusStyleSheet } from "./stylesheet/status.mjs"; +import {Formatter} from "../../text/formatter.mjs"; export { DatasourceStatus }; @@ -82,6 +83,11 @@ class DatasourceStatus extends CustomElement { * @property {string} templates.main Main template * @property {Object} datasource Datasource configuration * @property {string} datasource.selector The selector of the datasource + * @property {Object} callbacks Callbacks + * @property {Function} callbacks.onError Callback function for error handling + * @property {Object} timeouts Timeouts + * @property {number} timeouts.message Timeout for the message + * @property {Object} state State */ get defaults() { return Object.assign({}, super.defaults, { @@ -93,6 +99,11 @@ class DatasourceStatus extends CustomElement { selector: null, }, + callbacks: { + onError: null + }, + + timeouts: { message: 4000, }, @@ -205,6 +216,12 @@ function initEventHandler() { } } catch (e) { } finally { + + const callback = self.getOption("callbacks.onError", null); + if (callback) { + msg = callback(msg); + } + self[errorElementSymbol].setErrorMessage(msg, timeout); } }); -- GitLab