Skip to content

Commit 4b5966b

Browse files
committed
support a namedConveter
1 parent bb6aa58 commit 4b5966b

2 files changed

Lines changed: 6 additions & 1 deletion

File tree

packages/web-component-designer-visualization-addons/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"description": "web-component-designer addon for visualizations",
33
"name": "@node-projects/web-component-designer-visualization-addons",
4-
"version": "0.1.120",
4+
"version": "0.1.121",
55
"type": "module",
66
"main": "./dist/index.js",
77
"author": "jochen.kuehner@gmx.de",

packages/web-component-designer-visualization-addons/src/helpers/BindingsHelper.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@ class IndirectSignal {
155155

156156
export class BindingsHelper {
157157
_visualizationHandler: VisualizationHandler;
158+
namedConverterCallback: (converter: string, value: any, element: Element, binding: namedBinding) => any;
158159

159160
constructor(visualizationHandler: VisualizationHandler) {
160161
this._visualizationHandler = visualizationHandler;
@@ -871,6 +872,9 @@ export class BindingsHelper {
871872
valuesObject[signalVarNames.length - 1] = v;
872873
}
873874
if (binding[1].converter) {
875+
if (binding[1].converter) {
876+
v = this.namedConverterCallback(<string><never>binding[1].converter, v, element, binding);
877+
} else {
874878
const stringValue = <string>(v != null ? v.toString() : v);
875879
if (stringValue in binding[1].converter) {
876880
v = new Function(<any>signalVarNames, 'return `' + binding[1].converter[stringValue] + '`')(...valuesObject);
@@ -908,6 +912,7 @@ export class BindingsHelper {
908912
if ((sp[0] === '' || nr >= parseFloat(sp[0])) && (sp[1] === '' || parseFloat(sp[1]) >= nr)) {
909913
v = new Function(<any>signalVarNames, 'return `' + binding[1].converter[c] + '`')(...valuesObject);
910914
break;
915+
}
911916
}
912917
}
913918
}

0 commit comments

Comments
 (0)