summaryrefslogtreecommitdiffstats
path: root/sdc-workflow-designer-ui/src/app/paletx/core/boolean-field-value.ts
diff options
context:
space:
mode:
Diffstat (limited to 'sdc-workflow-designer-ui/src/app/paletx/core/boolean-field-value.ts')
-rw-r--r--sdc-workflow-designer-ui/src/app/paletx/core/boolean-field-value.ts19
1 files changed, 19 insertions, 0 deletions
diff --git a/sdc-workflow-designer-ui/src/app/paletx/core/boolean-field-value.ts b/sdc-workflow-designer-ui/src/app/paletx/core/boolean-field-value.ts
new file mode 100644
index 00000000..dc1f86e2
--- /dev/null
+++ b/sdc-workflow-designer-ui/src/app/paletx/core/boolean-field-value.ts
@@ -0,0 +1,19 @@
+/* tslint:disable:array-type member-access variable-name */
+function booleanFieldValueFactory() {
+ return function booleanFieldValueMetadata(target: any, key: string): void {
+ const defaultValue = target[key];
+ const localKey = `__ky_private_symbol_${key}`;
+ target[localKey] = defaultValue;
+
+ Object.defineProperty(target, key, {
+ get() {
+ return (this)[localKey];
+ },
+ set(value: boolean) {
+ (this)[localKey] = value !== null && `${value}` !== 'false';
+ }
+ });
+ };
+}
+
+export {booleanFieldValueFactory as BooleanFieldValue};