ngrx-forms
Version:
Proper integration of forms in Angular 4 applications using ngrx
12 lines • 3.25 kB
JavaScript
import { SetUserDefinedPropertyAction } from '../actions';
import { formStateReducer } from '../reducer';
import { isFormState } from '../state';
import { ensureState } from './util';
export function setUserDefinedProperty(nameOrState, valueOrName, value) {
if (isFormState(nameOrState)) {
const state = nameOrState;
return formStateReducer(nameOrState, new SetUserDefinedPropertyAction(state.id, valueOrName, value));
}
return (s) => setUserDefinedProperty(ensureState(s), nameOrState, valueOrName);
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LXVzZXItZGVmaW5lZC1wcm9wZXJ0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy91cGRhdGUtZnVuY3Rpb24vc2V0LXVzZXItZGVmaW5lZC1wcm9wZXJ0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzlDLE9BQU8sRUFBbUMsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFjckMsTUFBTSxVQUFVLHNCQUFzQixDQUFTLFdBQXVDLEVBQUUsV0FBeUIsRUFBRSxLQUFXO0lBQzVILElBQUksV0FBVyxDQUFTLFdBQVcsQ0FBQyxFQUFFO1FBQ3BDLE1BQU0sS0FBSyxHQUFHLFdBQTJDLENBQUM7UUFDMUQsT0FBTyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsSUFBSSw0QkFBNEIsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0tBQ3RHO0lBRUQsT0FBTyxDQUFDLENBQStCLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFxQixFQUFFLFdBQVcsQ0FBQyxDQUFDO0FBQ3pILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXRVc2VyRGVmaW5lZFByb3BlcnR5QWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucyc7XHJcbmltcG9ydCB7IGZvcm1TdGF0ZVJlZHVjZXIgfSBmcm9tICcuLi9yZWR1Y2VyJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sU3RhdGUsIEZvcm1TdGF0ZSwgaXNGb3JtU3RhdGUgfSBmcm9tICcuLi9zdGF0ZSc7XHJcbmltcG9ydCB7IGVuc3VyZVN0YXRlIH0gZnJvbSAnLi91dGlsJztcclxuXHJcbi8qKlxyXG4gKiBUaGlzIHVwZGF0ZSBmdW5jdGlvbiB0YWtlcyBhIG5hbWUgYW5kIGEgdmFsdWUgYW5kIHJldHVybnMgYSBwcm9qZWN0aW9uXHJcbiAqIGZ1bmN0aW9uIHRoYXQgc2V0cyBhIHVzZXItZGVmaW5lZCBwcm9wZXJ0eSBvbiBhIGZvcm0gc3RhdGUuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc2V0VXNlckRlZmluZWRQcm9wZXJ0eShuYW1lOiBzdHJpbmcsIHZhbHVlOiBhbnkpOiA8VFZhbHVlPihzdGF0ZTogQWJzdHJhY3RDb250cm9sU3RhdGU8VFZhbHVlPikgPT4gRm9ybVN0YXRlPFRWYWx1ZT47XHJcblxyXG4vKipcclxuICogVGhpcyB1cGRhdGUgZnVuY3Rpb24gdGFrZXMgYSBmb3JtIHN0YXRlLCBhIG5hbWUsIGFuZCBhIHZhbHVlIGFuZCBzZXRzXHJcbiAqIGEgdXNlci1kZWZpbmVkIHByb3BlcnR5IG9uIHRoZSBzdGF0ZS5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXRVc2VyRGVmaW5lZFByb3BlcnR5PFRWYWx1ZT4oc3RhdGU6IEFic3RyYWN0Q29udHJvbFN0YXRlPFRWYWx1ZT4sIG5hbWU6IHN0cmluZywgdmFsdWU6IGFueSk6IEZvcm1TdGF0ZTxUVmFsdWU+O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldFVzZXJEZWZpbmVkUHJvcGVydHk8VFZhbHVlPihuYW1lT3JTdGF0ZTogc3RyaW5nIHwgRm9ybVN0YXRlPFRWYWx1ZT4sIHZhbHVlT3JOYW1lOiBhbnkgfCBzdHJpbmcsIHZhbHVlPzogYW55KSB7XHJcbiAgaWYgKGlzRm9ybVN0YXRlPFRWYWx1ZT4obmFtZU9yU3RhdGUpKSB7XHJcbiAgICBjb25zdCBzdGF0ZSA9IG5hbWVPclN0YXRlIGFzIEFic3RyYWN0Q29udHJvbFN0YXRlPFRWYWx1ZT47XHJcbiAgICByZXR1cm4gZm9ybVN0YXRlUmVkdWNlcihuYW1lT3JTdGF0ZSwgbmV3IFNldFVzZXJEZWZpbmVkUHJvcGVydHlBY3Rpb24oc3RhdGUuaWQsIHZhbHVlT3JOYW1lLCB2YWx1ZSkpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIChzOiBBYnN0cmFjdENvbnRyb2xTdGF0ZTxUVmFsdWU+KSA9PiBzZXRVc2VyRGVmaW5lZFByb3BlcnR5KGVuc3VyZVN0YXRlKHMpLCBuYW1lT3JTdGF0ZSBhcyBzdHJpbmcsIHZhbHVlT3JOYW1lKTtcclxufVxyXG4iXX0=