UNPKG

@tangential/configurable-input-widgets

Version:

Input Widgets with persistable, dynamic configuration.

36 lines 5.1 kB
import { ObjectUtil } from '@tangential/core'; import { TextType } from '../../data-type/text/text-type'; import { InputConfig } from '../../input-config'; const Model = { label: 'Short Text', labelPosition: 'before', disabled: false, typeConfig: { _inputTypeKey: TextType.TYPE_NAME, maxLength: 100, defaultValue: undefined } }; const demoConfig = ObjectUtil.assignDeep({}, Model, { typeConfig: { maxLength: 100, defaultValue: undefined } }); export class TextInputConfig extends InputConfig { constructor(config, key) { super(TextInputConfig.INPUT_NAME, config || {}, key); this.labelPosition = 'before'; /** @todo: ggranum: Verify we need these fields (they already exist on superclass) */ this.disabled = false; /** @todo: ggranum: Verify this change (this.typeConfig to super.typeConfig) works. */ this.typeConfig = new TextType(super.typeConfig || {}); } getDemoInstance() { return new TextInputConfig(demoConfig); } } TextInputConfig.$model = ObjectUtil.assignDeep({}, InputConfig.$model, Model); TextInputConfig.INPUT_NAME = 'TextInput'; InputConfig.register(TextInputConfig); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1pbnB1dC1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nZW50aWFsL2NvbmZpZ3VyYWJsZS1pbnB1dC13aWRnZXRzL3NyYy9saWIvd2lkZ2V0cy90ZXh0LWlucHV0L3RleHQtaW5wdXQtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBWSxVQUFVLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQTtBQUN0RCxPQUFPLEVBQUMsUUFBUSxFQUFhLE1BQU0sZ0NBQWdDLENBQUE7QUFDbkUsT0FBTyxFQUFDLFdBQVcsRUFBa0IsTUFBTSxvQkFBb0IsQ0FBQTtBQVMvRCxNQUFNLEtBQUssR0FBc0I7SUFDL0IsS0FBSyxFQUFVLFlBQVk7SUFDM0IsYUFBYSxFQUFFLFFBQVE7SUFDdkIsUUFBUSxFQUFPLEtBQUs7SUFDcEIsVUFBVSxFQUFLO1FBQ2IsYUFBYSxFQUFFLFFBQVEsQ0FBQyxTQUFTO1FBQ2pDLFNBQVMsRUFBTSxHQUFHO1FBQ2xCLFlBQVksRUFBRyxTQUFTO0tBQ3pCO0NBQ0YsQ0FBQTtBQUVELE1BQU0sVUFBVSxHQUFzQixVQUFVLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUU7SUFDckUsVUFBVSxFQUFFO1FBQ1YsU0FBUyxFQUFLLEdBQUc7UUFDakIsWUFBWSxFQUFFLFNBQVM7S0FDeEI7Q0FDRixDQUFDLENBQUE7QUFFRixNQUFNLE9BQU8sZUFBZ0IsU0FBUSxXQUFXO0lBVTlDLFlBQVksTUFBMEIsRUFBRSxHQUFZO1FBQ2xELEtBQUssQ0FBQyxlQUFlLENBQUMsVUFBVSxFQUFFLE1BQU0sSUFBSSxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUE7UUFQdEQsa0JBQWEsR0FBaUMsUUFBUSxDQUFBO1FBRXRELHFGQUFxRjtRQUM1RSxhQUFRLEdBQVksS0FBSyxDQUFBO1FBS2hDLHNGQUFzRjtRQUN0RixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDLENBQUE7SUFDeEQsQ0FBQztJQUVELGVBQWU7UUFDYixPQUFPLElBQUksZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ3hDLENBQUM7O0FBakJlLHNCQUFNLEdBQXNCLFVBQVUsQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFLFdBQVcsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUE7QUFFaEYsMEJBQVUsR0FBRyxXQUFXLENBQUE7QUFtQjFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0pzb25pZmllZCwgT2JqZWN0VXRpbH0gZnJvbSAnQHRhbmdlbnRpYWwvY29yZSdcbmltcG9ydCB7VGV4dFR5cGUsIFRleHRUeXBlSUZ9IGZyb20gJy4uLy4uL2RhdGEtdHlwZS90ZXh0L3RleHQtdHlwZSdcbmltcG9ydCB7SW5wdXRDb25maWcsIElucHV0Q29uZmlnSnNvbn0gZnJvbSAnLi4vLi4vaW5wdXQtY29uZmlnJ1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgVGV4dElucHV0Q29uZmlnSUYgZXh0ZW5kcyBJbnB1dENvbmZpZ0pzb24ge1xuICBsYWJlbFBvc2l0aW9uPzogJ2JlZm9yZScgfCAnYWZ0ZXInIHwgJ2JlbG93J1xuICBkaXNhYmxlZD86IGJvb2xlYW5cbiAgdHlwZUNvbmZpZz86IFRleHRUeXBlSUZcbn1cblxuY29uc3QgTW9kZWw6IFRleHRJbnB1dENvbmZpZ0lGID0ge1xuICBsYWJlbDogICAgICAgICAnU2hvcnQgVGV4dCcsXG4gIGxhYmVsUG9zaXRpb246ICdiZWZvcmUnLFxuICBkaXNhYmxlZDogICAgICBmYWxzZSxcbiAgdHlwZUNvbmZpZzogICAge1xuICAgIF9pbnB1dFR5cGVLZXk6IFRleHRUeXBlLlRZUEVfTkFNRSxcbiAgICBtYXhMZW5ndGg6ICAgICAxMDAsXG4gICAgZGVmYXVsdFZhbHVlOiAgdW5kZWZpbmVkXG4gIH1cbn1cblxuY29uc3QgZGVtb0NvbmZpZzogVGV4dElucHV0Q29uZmlnSUYgPSBPYmplY3RVdGlsLmFzc2lnbkRlZXAoe30sIE1vZGVsLCB7XG4gIHR5cGVDb25maWc6IHtcbiAgICBtYXhMZW5ndGg6ICAgIDEwMCxcbiAgICBkZWZhdWx0VmFsdWU6IHVuZGVmaW5lZFxuICB9XG59KVxuXG5leHBvcnQgY2xhc3MgVGV4dElucHV0Q29uZmlnIGV4dGVuZHMgSW5wdXRDb25maWcgaW1wbGVtZW50cyBKc29uaWZpZWQ8VGV4dElucHV0Q29uZmlnLCBUZXh0SW5wdXRDb25maWdJRj4sIFRleHRJbnB1dENvbmZpZ0lGIHtcbiAgc3RhdGljIG92ZXJyaWRlICRtb2RlbDogVGV4dElucHV0Q29uZmlnSUYgPSBPYmplY3RVdGlsLmFzc2lnbkRlZXAoe30sIElucHV0Q29uZmlnLiRtb2RlbCwgTW9kZWwpXG5cbiAgc3RhdGljIG92ZXJyaWRlIElOUFVUX05BTUUgPSAnVGV4dElucHV0J1xuICBsYWJlbFBvc2l0aW9uOiAnYmVmb3JlJyB8ICdhZnRlcicgfCAnYmVsb3cnID0gJ2JlZm9yZSdcblxuICAvKiogQHRvZG86IGdncmFudW06IFZlcmlmeSB3ZSBuZWVkIHRoZXNlIGZpZWxkcyAodGhleSBhbHJlYWR5IGV4aXN0IG9uIHN1cGVyY2xhc3MpICovXG4gIG92ZXJyaWRlIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2VcbiAgb3ZlcnJpZGUgdHlwZUNvbmZpZzogVGV4dFR5cGVcblxuICBjb25zdHJ1Y3Rvcihjb25maWc/OiBUZXh0SW5wdXRDb25maWdJRiwga2V5Pzogc3RyaW5nKSB7XG4gICAgc3VwZXIoVGV4dElucHV0Q29uZmlnLklOUFVUX05BTUUsIGNvbmZpZyB8fCB7fSwga2V5KVxuICAgIC8qKiBAdG9kbzogZ2dyYW51bTogVmVyaWZ5IHRoaXMgY2hhbmdlICh0aGlzLnR5cGVDb25maWcgdG8gc3VwZXIudHlwZUNvbmZpZykgd29ya3MuICovXG4gICAgdGhpcy50eXBlQ29uZmlnID0gbmV3IFRleHRUeXBlKHN1cGVyLnR5cGVDb25maWcgfHwge30pXG4gIH1cblxuICBnZXREZW1vSW5zdGFuY2UoKTogSW5wdXRDb25maWdKc29uIHtcbiAgICByZXR1cm4gbmV3IFRleHRJbnB1dENvbmZpZyhkZW1vQ29uZmlnKVxuICB9XG5cbn1cblxuSW5wdXRDb25maWcucmVnaXN0ZXIoVGV4dElucHV0Q29uZmlnKVxuIl19