@data-client/normalizr
Version:
Normalizes and denormalizes JSON according to schema for Redux and Flux applications
11 lines • 2.16 kB
JavaScript
import { getEntities } from './getEntities.js';
import LocalCache from './localCache.js';
import getUnvisit from './unvisit.js';
export function denormalize(schema, input, entities, args = []) {
// undefined means don't do anything
if (schema === undefined || input === undefined) {
return input;
}
return getUnvisit(getEntities(entities), new LocalCache(), args)(schema, input).data;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRFbnRpdGllcyIsIkxvY2FsQ2FjaGUiLCJnZXRVbnZpc2l0IiwiZGVub3JtYWxpemUiLCJzY2hlbWEiLCJpbnB1dCIsImVudGl0aWVzIiwiYXJncyIsInVuZGVmaW5lZCIsImRhdGEiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVub3JtYWxpemUvZGVub3JtYWxpemUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0RW50aXRpZXMgfSBmcm9tICcuL2dldEVudGl0aWVzLmpzJztcbmltcG9ydCBMb2NhbENhY2hlIGZyb20gJy4vbG9jYWxDYWNoZS5qcyc7XG5pbXBvcnQgZ2V0VW52aXNpdCBmcm9tICcuL3VudmlzaXQuanMnO1xuaW1wb3J0IHR5cGUgeyBTY2hlbWEgfSBmcm9tICcuLi9pbnRlcmZhY2UuanMnO1xuaW1wb3J0IHR5cGUgeyBEZW5vcm1hbGl6ZU51bGxhYmxlIH0gZnJvbSAnLi4vdHlwZXMuanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZGVub3JtYWxpemU8UyBleHRlbmRzIFNjaGVtYT4oXG4gIHNjaGVtYTogUyB8IHVuZGVmaW5lZCxcbiAgaW5wdXQ6IGFueSxcbiAgZW50aXRpZXM6IGFueSxcbiAgYXJnczogcmVhZG9ubHkgYW55W10gPSBbXSxcbik6IERlbm9ybWFsaXplTnVsbGFibGU8Uz4gfCBzeW1ib2wge1xuICAvLyB1bmRlZmluZWQgbWVhbnMgZG9uJ3QgZG8gYW55dGhpbmdcbiAgaWYgKHNjaGVtYSA9PT0gdW5kZWZpbmVkIHx8IGlucHV0ID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gaW5wdXQgYXMgYW55O1xuICB9XG5cbiAgcmV0dXJuIGdldFVudmlzaXQoXG4gICAgZ2V0RW50aXRpZXMoZW50aXRpZXMpLFxuICAgIG5ldyBMb2NhbENhY2hlKCksXG4gICAgYXJncyxcbiAgKShzY2hlbWEsIGlucHV0KS5kYXRhO1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxXQUFXLFFBQVEsa0JBQWtCO0FBQzlDLE9BQU9DLFVBQVUsTUFBTSxpQkFBaUI7QUFDeEMsT0FBT0MsVUFBVSxNQUFNLGNBQWM7QUFJckMsT0FBTyxTQUFTQyxXQUFXQSxDQUN6QkMsTUFBcUIsRUFDckJDLEtBQVUsRUFDVkMsUUFBYSxFQUNiQyxJQUFvQixHQUFHLEVBQUUsRUFDUTtFQUNqQztFQUNBLElBQUlILE1BQU0sS0FBS0ksU0FBUyxJQUFJSCxLQUFLLEtBQUtHLFNBQVMsRUFBRTtJQUMvQyxPQUFPSCxLQUFLO0VBQ2Q7RUFFQSxPQUFPSCxVQUFVLENBQ2ZGLFdBQVcsQ0FBQ00sUUFBUSxDQUFDLEVBQ3JCLElBQUlMLFVBQVUsQ0FBQyxDQUFDLEVBQ2hCTSxJQUNGLENBQUMsQ0FBQ0gsTUFBTSxFQUFFQyxLQUFLLENBQUMsQ0FBQ0ksSUFBSTtBQUN2QiIsImlnbm9yZUxpc3QiOltdfQ==