diff options
Diffstat (limited to 'deprecated-workflow-designer/sdc-workflow-designer-ui/src/app/paletx/core/boolean-field-value.ts')
-rw-r--r-- | deprecated-workflow-designer/sdc-workflow-designer-ui/src/app/paletx/core/boolean-field-value.ts | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/deprecated-workflow-designer/sdc-workflow-designer-ui/src/app/paletx/core/boolean-field-value.ts b/deprecated-workflow-designer/sdc-workflow-designer-ui/src/app/paletx/core/boolean-field-value.ts new file mode 100644 index 00000000..dc1f86e2 --- /dev/null +++ b/deprecated-workflow-designer/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}; |