ngrx-forms
Version:
Proper integration of forms in Angular 4 applications using ngrx
19 lines • 3.49 kB
JavaScript
import { box, unbox } from '../boxing';
// tslint:disable-next-line:variable-name
export const NgrxValueConverters = {
default() {
return {
convertViewToStateValue: value => typeof value === 'object' && value !== null ? box(value) : value,
convertStateToViewValue: unbox,
};
},
dateToISOString: {
convertViewToStateValue: date => date === null ? null : date.toISOString(),
convertStateToViewValue: s => s === null ? null : new Date(Date.parse(s)),
},
objectToJSON: {
convertViewToStateValue: value => value === null ? null : JSON.stringify(value),
convertStateToViewValue: s => s === null ? null : JSON.parse(s),
},
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbnRyb2wvdmFsdWUtY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxHQUFHLEVBQVMsS0FBSyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBTzlDLHlDQUF5QztBQUN6QyxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRztJQUNqQyxPQUFPO1FBQ0wsT0FBTztZQUNMLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSztZQUNsRyx1QkFBdUIsRUFBRSxLQUFLO1NBQ1EsQ0FBQztJQUMzQyxDQUFDO0lBQ0QsZUFBZSxFQUFFO1FBQ2YsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7UUFDMUUsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDeEI7SUFDbkQsWUFBWSxFQUFFO1FBQ1osdUJBQXVCLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO1FBQy9FLHVCQUF1QixFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztLQUNoQjtDQUNsRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYm94LCBCb3hlZCwgdW5ib3ggfSBmcm9tICcuLi9ib3hpbmcnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBOZ3J4VmFsdWVDb252ZXJ0ZXI8VFZpZXcsIFRTdGF0ZT4ge1xyXG4gIGNvbnZlcnRWaWV3VG9TdGF0ZVZhbHVlKHZhbHVlOiBUVmlldyk6IFRTdGF0ZTtcclxuICBjb252ZXJ0U3RhdGVUb1ZpZXdWYWx1ZSh2YWx1ZTogVFN0YXRlKTogVFZpZXc7XHJcbn1cclxuXHJcbi8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTp2YXJpYWJsZS1uYW1lXHJcbmV4cG9ydCBjb25zdCBOZ3J4VmFsdWVDb252ZXJ0ZXJzID0ge1xyXG4gIGRlZmF1bHQ8VD4oKSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBjb252ZXJ0Vmlld1RvU3RhdGVWYWx1ZTogdmFsdWUgPT4gdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiB2YWx1ZSAhPT0gbnVsbCA/IGJveCh2YWx1ZSkgOiB2YWx1ZSxcclxuICAgICAgY29udmVydFN0YXRlVG9WaWV3VmFsdWU6IHVuYm94LFxyXG4gICAgfSBhcyBOZ3J4VmFsdWVDb252ZXJ0ZXI8VCwgQm94ZWQ8VD4gfCBUPjtcclxuICB9LFxyXG4gIGRhdGVUb0lTT1N0cmluZzoge1xyXG4gICAgY29udmVydFZpZXdUb1N0YXRlVmFsdWU6IGRhdGUgPT4gZGF0ZSA9PT0gbnVsbCA/IG51bGwgOiBkYXRlLnRvSVNPU3RyaW5nKCksXHJcbiAgICBjb252ZXJ0U3RhdGVUb1ZpZXdWYWx1ZTogcyA9PiBzID09PSBudWxsID8gbnVsbCA6IG5ldyBEYXRlKERhdGUucGFyc2UocykpLFxyXG4gIH0gYXMgTmdyeFZhbHVlQ29udmVydGVyPERhdGUgfCBudWxsLCBzdHJpbmcgfCBudWxsPixcclxuICBvYmplY3RUb0pTT046IHtcclxuICAgIGNvbnZlcnRWaWV3VG9TdGF0ZVZhbHVlOiB2YWx1ZSA9PiB2YWx1ZSA9PT0gbnVsbCA/IG51bGwgOiBKU09OLnN0cmluZ2lmeSh2YWx1ZSksXHJcbiAgICBjb252ZXJ0U3RhdGVUb1ZpZXdWYWx1ZTogcyA9PiBzID09PSBudWxsID8gbnVsbCA6IEpTT04ucGFyc2UocyksXHJcbiAgfSBhcyBOZ3J4VmFsdWVDb252ZXJ0ZXI8e30gfCBudWxsLCBzdHJpbmcgfCBudWxsPixcclxufTtcclxuIl19