UNPKG

svogv

Version:

A decorator based approach for model driven forms, including an advanced DataGrid and a TreeView component.

30 lines 3.33 kB
/** * The Placeholder decorator. * * The placeholder adds the given text as a watermark to any input fields. * There is no function in the {@link DataGridComponent}. * * @param name The Name that appears in form fields as a watermark. */ export function Placeholder(name) { function placeholderInternalSetup(target, key) { // create a helper property to transport a meta data value Object.defineProperty(target, `__watermark__${key}`, { value: name, enumerable: false, configurable: false }); Object.defineProperty(target, `__hasWatermark__${key}`, { value: true, enumerable: false, configurable: false }); } // the original decorator function placeholderInternal(target, property) { placeholderInternalSetup(target, property.toString()); } // return the decorator return placeholderInternal; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludC1wbGFjZWhvbGRlci5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvc3ZvZ3Yvc3JjLyIsInNvdXJjZXMiOlsibGliL2RlY29yYXRvcnMvaGludC1wbGFjZWhvbGRlci5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBWTtJQUV0QyxTQUFTLHdCQUF3QixDQUFDLE1BQVcsRUFBRSxHQUFXO1FBRXhELDBEQUEwRDtRQUMxRCxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxnQkFBZ0IsR0FBRyxFQUFFLEVBQUU7WUFDbkQsS0FBSyxFQUFFLElBQUk7WUFDWCxVQUFVLEVBQUUsS0FBSztZQUNqQixZQUFZLEVBQUUsS0FBSztTQUNwQixDQUFDLENBQUM7UUFFSCxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxtQkFBbUIsR0FBRyxFQUFFLEVBQUU7WUFDdEQsS0FBSyxFQUFFLElBQUk7WUFDWCxVQUFVLEVBQUUsS0FBSztZQUNqQixZQUFZLEVBQUUsS0FBSztTQUNwQixDQUFDLENBQUM7SUFFTCxDQUFDO0lBQ0QseUJBQXlCO0lBQ3pCLFNBQVMsbUJBQW1CLENBQUMsTUFBYyxFQUFFLFFBQXlCO1FBQ3BFLHdCQUF3QixDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsdUJBQXVCO0lBQ3ZCLE9BQU8sbUJBQW1CLENBQUM7QUFDN0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGhlIFBsYWNlaG9sZGVyIGRlY29yYXRvci5cbiAqXG4gKiBUaGUgcGxhY2Vob2xkZXIgYWRkcyB0aGUgZ2l2ZW4gdGV4dCBhcyBhIHdhdGVybWFyayB0byBhbnkgaW5wdXQgZmllbGRzLlxuICogVGhlcmUgaXMgbm8gZnVuY3Rpb24gaW4gdGhlIHtAbGluayBEYXRhR3JpZENvbXBvbmVudH0uXG4gKlxuICogQHBhcmFtIG5hbWUgICAgICAgICAgVGhlIE5hbWUgdGhhdCBhcHBlYXJzIGluIGZvcm0gZmllbGRzIGFzIGEgd2F0ZXJtYXJrLlxuICovXG5leHBvcnQgZnVuY3Rpb24gUGxhY2Vob2xkZXIobmFtZTogc3RyaW5nKSB7XG5cbiAgZnVuY3Rpb24gcGxhY2Vob2xkZXJJbnRlcm5hbFNldHVwKHRhcmdldDogYW55LCBrZXk6IHN0cmluZykge1xuXG4gICAgLy8gY3JlYXRlIGEgaGVscGVyIHByb3BlcnR5IHRvIHRyYW5zcG9ydCBhIG1ldGEgZGF0YSB2YWx1ZVxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGBfX3dhdGVybWFya19fJHtrZXl9YCwge1xuICAgICAgdmFsdWU6IG5hbWUsXG4gICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgIGNvbmZpZ3VyYWJsZTogZmFsc2VcbiAgICB9KTtcblxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGBfX2hhc1dhdGVybWFya19fJHtrZXl9YCwge1xuICAgICAgdmFsdWU6IHRydWUsXG4gICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgIGNvbmZpZ3VyYWJsZTogZmFsc2VcbiAgICB9KTtcblxuICB9XG4gIC8vIHRoZSBvcmlnaW5hbCBkZWNvcmF0b3JcbiAgZnVuY3Rpb24gcGxhY2Vob2xkZXJJbnRlcm5hbCh0YXJnZXQ6IG9iamVjdCwgcHJvcGVydHk6IHN0cmluZyB8IHN5bWJvbCk6IHZvaWQge1xuICAgIHBsYWNlaG9sZGVySW50ZXJuYWxTZXR1cCh0YXJnZXQsIHByb3BlcnR5LnRvU3RyaW5nKCkpO1xuICB9XG5cbiAgLy8gcmV0dXJuIHRoZSBkZWNvcmF0b3JcbiAgcmV0dXJuIHBsYWNlaG9sZGVySW50ZXJuYWw7XG59XG4iXX0=