json-api-normalizer
Version:
JSON API response normalizer
1 lines • 4.16 kB
JavaScript
module.exports=function(){"use strict";var e={121:function(e,t,r){r.r(t),r.d(t,{default:function(){return q}}),require("core-js/modules/es.object.to-string.js"),require("core-js/modules/es.array.map.js"),require("core-js/modules/web.dom-collections.for-each.js"),require("core-js/modules/es.string.replace.js"),require("core-js/modules/es.regexp.exec.js"),require("core-js/modules/es.array.slice.js"),require("core-js/modules/es.symbol.js"),require("core-js/modules/es.symbol.description.js"),require("core-js/modules/es.symbol.iterator.js"),require("core-js/modules/es.string.iterator.js"),require("core-js/modules/es.array.iterator.js"),require("core-js/modules/web.dom-collections.iterator.js"),require("core-js");var i=require("lodash/camelCase"),a=r.n(i),o=require("lodash/isArray"),n=r.n(o),s=require("lodash/isNull"),u=r.n(s),l=require("lodash/keys"),c=r.n(l),d=require("lodash/merge"),m=r.n(d);function y(e){return(y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function f(e){return n()(e)?e:[e]}function p(e){if(null===e||"object"!==y(e)||function(e){return"[object Date]"===Object.prototype.toString.call(e)}(e))return e;if(n()(e))return e.map(p);var t={};return c()(e).forEach((function(r){t[a()(r)]=p(e[r])})),t}function j(e,t){var r=t.camelizeKeys,i=t.camelizeTypeValues,o={};return c()(e).forEach((function(t){var s=e[t],l=r?a()(t):t;o[l]={},void 0!==s.data&&(n()(s.data)?o[l].data=s.data.map((function(e){return{id:e.id,type:i?a()(e.type):e.type}})):u()(s.data)?o[l].data=s.data:o[l].data={id:s.data.id,type:i?a()(s.data.type):s.data.type}),s.links&&(o[l].links=r?p(s.links):s.links),s.meta&&(o[l].meta=r?p(s.meta):s.meta)})),o}function b(e,t){if(t.camelizeKeys){var r={};return c()(e).forEach((function(t){r[a()(t)]=p(e[t])})),r}return e}function v(e,t){var r=t.camelizeKeys,i=t.camelizeTypeValues,o={};return f(e).forEach((function(e){var t=r?a()(e.type):e.type;o[t]=o[t]||{},o[t][e.id]=o[t][e.id]||{id:e.id},o[t][e.id].type=i?a()(e.type):e.type,r?(o[t][e.id].attributes={},c()(e.attributes).forEach((function(r){o[t][e.id].attributes[a()(r)]=p(e.attributes[r])}))):o[t][e.id].attributes=e.attributes,e.links&&(o[t][e.id].links={},c()(e.links).forEach((function(i){var n=r?a()(i):i;o[t][e.id].links[n]=e.links[i]}))),e.relationships&&(o[t][e.id].relationships=j(e.relationships,{camelizeKeys:r,camelizeTypeValues:i})),e.meta&&(o[t][e.id].meta=b(e.meta,{camelizeKeys:r}))})),o}function h(e){return e.replace(/\?.*$/,"")}function z(e,t,r){var i,o=r.camelizeKeys,n=r.camelizeTypeValues,s={meta:{}};if(r.filterEndpoint)s.meta[t]={},i=s.meta[t];else{var u=h(t);s.meta[u]={},s.meta[u][t.slice(u.length)]={},i=s.meta[u][t.slice(u.length)]}if(i.data={},e.data){var l=[];f(e.data).forEach((function(e){var t={id:e.id,type:n?a()(e.type):e.type};e.relationships&&(t.relationships=j(e.relationships,{camelizeKeys:o,camelizeTypeValues:n})),l.push(t)})),i.data=l}return e.links&&(i.links=e.links,s.meta[h(t)].links=e.links),e.meta&&(i.meta=b(e.meta,{camelizeKeys:o})),s}function q(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.filterEndpoint,i=void 0===r||r,a=t.camelizeKeys,o=void 0===a||a,n=t.camelizeTypeValues,s=void 0===n||n,u=t.endpoint,l={};if(e.data&&m()(l,v(e.data,{camelizeKeys:o,camelizeTypeValues:s})),e.included&&m()(l,v(e.included,{camelizeKeys:o,camelizeTypeValues:s})),u){var c=i?h(u):u;m()(l,z(e,c,{camelizeKeys:o,camelizeTypeValues:s,filterEndpoint:i}))}return l}}},t={};function r(i){if(t[i])return t[i].exports;var a=t[i]={exports:{}};return e[i](a,a.exports,r),a.exports}return r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,{a:t}),t},r.d=function(e,t){for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r(121)}();