@@ -60,3 +60,7 @@ 'use strict'; | ||
| if (Array.isArray(data)) { | ||
| if (util.isPrimitive(data)) { | ||
| return { | ||
| value: data | ||
| }; | ||
| } else if (Array.isArray(data)) { | ||
| node.value = data.map(function (el) { | ||
@@ -71,6 +75,2 @@ return _this.merge(el).value; | ||
| } | ||
| } else if (util.isPrimitive(data)) { | ||
| return { | ||
| value: data | ||
| }; | ||
| } else { | ||
@@ -77,0 +77,0 @@ node.value = data; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"normi.cjs.development.js","sources":["../src/util.ts","../src/store.ts"],"sourcesContent":["export namespace util {\n export const randomId = () =>\n Math.random()\n .toString(36)\n .substring(2, 15) +\n Math.random()\n .toString(36)\n .substring(2, 15);\n\n export const isPrimitive = (val: any) => val !== Object(val);\n}\n","import { action, observable } from 'mobx';\nimport { util } from './util';\n\ntype NormiParams = {\n id: ((arg: any) => string) | string[];\n};\n\nexport class Normi {\n params: NormiParams;\n constructor(params: Partial<NormiParams> = {}) {\n this.params = {\n id: params.id || ['id'],\n };\n }\n\n getId = (data: any) => {\n console.log(`getId`);\n console.log(JSON.stringify(data, null, 2));\n if (typeof this.params.id === 'function') {\n return this.params.id(data);\n } else if (Array.isArray(this.params.id)) {\n return this.params.id\n .map(k => {\n if (data && data[k] && util.isPrimitive(data[k])) {\n return data[k];\n }\n return util.randomId();\n })\n .join('_');\n } else {\n return util.randomId();\n }\n };\n\n get = (id: string) => {\n return this.nodes[id] || null;\n };\n\n @observable nodes: { [k: string]: { value: any } } = {};\n\n @action merge = <T extends any>(rawData: T): { value: T } => {\n // let id;\n const data: any = rawData;\n const id = this.getId(data);\n\n const node = this.nodes[id] || {};\n\n if (Array.isArray(data)) {\n node.value = data.map((el: any) => {\n return this.merge(el).value;\n });\n } else if (typeof data === 'object') {\n if (!node.value) node.value = {};\n for (let key in data) {\n node.value[key] = this.merge(data[key]).value;\n }\n } else if (util.isPrimitive(data)) {\n return { value: data };\n } else {\n node.value = data;\n }\n\n this.nodes[id] = node;\n return this.nodes[id];\n };\n}\n"],"names":["util","Math","random","toString","substring","val","Object","Normi","params","data","console","log","JSON","stringify","id","Array","isArray","map","k","isPrimitive","randomId","join","nodes","rawData","getId","node","value","el","merge","key","__decorate","observable","action"],"mappings":"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"} | ||
| {"version":3,"file":"normi.cjs.development.js","sources":["../src/util.ts","../src/store.ts"],"sourcesContent":["export namespace util {\n export const randomId = () =>\n Math.random()\n .toString(36)\n .substring(2, 15) +\n Math.random()\n .toString(36)\n .substring(2, 15);\n\n export const isPrimitive = (val: any) => val !== Object(val);\n}\n","import { action, observable } from 'mobx';\nimport { util } from './util';\n\ntype NormiParams = {\n id: ((arg: any) => string) | string[];\n};\n\nexport class Normi {\n params: NormiParams;\n constructor(params: Partial<NormiParams> = {}) {\n this.params = {\n id: params.id || ['id'],\n };\n }\n\n getId = (data: any) => {\n console.log(`getId`);\n console.log(JSON.stringify(data, null, 2));\n if (typeof this.params.id === 'function') {\n return this.params.id(data);\n } else if (Array.isArray(this.params.id)) {\n return this.params.id\n .map(k => {\n if (data && data[k] && util.isPrimitive(data[k])) {\n return data[k];\n }\n return util.randomId();\n })\n .join('_');\n } else {\n return util.randomId();\n }\n };\n\n get = (id: string) => {\n return this.nodes[id] || null;\n };\n\n @observable nodes: { [k: string]: { value: any } } = {};\n\n @action merge = <T extends any>(rawData: T): { value: T } => {\n // let id;\n const data: any = rawData;\n const id = this.getId(data);\n\n const node = this.nodes[id] || {};\n\n if (util.isPrimitive(data)) {\n return { value: data };\n } else if (Array.isArray(data)) {\n node.value = data.map((el: any) => {\n return this.merge(el).value;\n });\n } else if (typeof data === 'object') {\n if (!node.value) node.value = {};\n for (let key in data) {\n node.value[key] = this.merge(data[key]).value;\n }\n } else {\n node.value = data;\n }\n\n this.nodes[id] = node;\n return this.nodes[id];\n };\n}\n"],"names":["util","Math","random","toString","substring","val","Object","Normi","params","data","console","log","JSON","stringify","id","Array","isArray","map","k","isPrimitive","randomId","join","nodes","rawData","getId","node","value","el","merge","key","__decorate","observable","action"],"mappings":"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"} |
@@ -1,2 +0,2 @@ | ||
| "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,r=require("tslib"),i=require("mobx");!function(e){e.randomId=function(){return Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15)},e.isPrimitive=function(e){return e!==Object(e)}}(e||(e={}));var t=function(r){var i=this;void 0===r&&(r={}),this.getId=function(r){return console.log("getId"),console.log(JSON.stringify(r,null,2)),"function"==typeof i.params.id?i.params.id(r):Array.isArray(i.params.id)?i.params.id.map((function(i){return r&&r[i]&&e.isPrimitive(r[i])?r[i]:e.randomId()})).join("_"):e.randomId()},this.get=function(e){return i.nodes[e]||null},this.nodes={},this.merge=function(r){var t=r,n=i.getId(t),o=i.nodes[n]||{};if(Array.isArray(t))o.value=t.map((function(e){return i.merge(e).value}));else if("object"==typeof t)for(var a in o.value||(o.value={}),t)o.value[a]=i.merge(t[a]).value;else{if(e.isPrimitive(t))return{value:t};o.value=t}return i.nodes[n]=o,i.nodes[n]},this.params={id:r.id||["id"]}};r.__decorate([i.observable],t.prototype,"nodes",void 0),r.__decorate([i.action],t.prototype,"merge",void 0),exports.Normi=t; | ||
| "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,r=require("tslib"),i=require("mobx");!function(e){e.randomId=function(){return Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15)},e.isPrimitive=function(e){return e!==Object(e)}}(e||(e={}));var t=function(r){var i=this;void 0===r&&(r={}),this.getId=function(r){return console.log("getId"),console.log(JSON.stringify(r,null,2)),"function"==typeof i.params.id?i.params.id(r):Array.isArray(i.params.id)?i.params.id.map((function(i){return r&&r[i]&&e.isPrimitive(r[i])?r[i]:e.randomId()})).join("_"):e.randomId()},this.get=function(e){return i.nodes[e]||null},this.nodes={},this.merge=function(r){var t=r,n=i.getId(t),o=i.nodes[n]||{};if(e.isPrimitive(t))return{value:t};if(Array.isArray(t))o.value=t.map((function(e){return i.merge(e).value}));else if("object"==typeof t)for(var a in o.value||(o.value={}),t)o.value[a]=i.merge(t[a]).value;else o.value=t;return i.nodes[n]=o,i.nodes[n]},this.params={id:r.id||["id"]}};r.__decorate([i.observable],t.prototype,"nodes",void 0),r.__decorate([i.action],t.prototype,"merge",void 0),exports.Normi=t; | ||
| //# sourceMappingURL=normi.cjs.production.min.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"normi.cjs.production.min.js","sources":["../src/util.ts","../src/store.ts"],"sourcesContent":["export namespace util {\n export const randomId = () =>\n Math.random()\n .toString(36)\n .substring(2, 15) +\n Math.random()\n .toString(36)\n .substring(2, 15);\n\n export const isPrimitive = (val: any) => val !== Object(val);\n}\n","import { action, observable } from 'mobx';\nimport { util } from './util';\n\ntype NormiParams = {\n id: ((arg: any) => string) | string[];\n};\n\nexport class Normi {\n params: NormiParams;\n constructor(params: Partial<NormiParams> = {}) {\n this.params = {\n id: params.id || ['id'],\n };\n }\n\n getId = (data: any) => {\n console.log(`getId`);\n console.log(JSON.stringify(data, null, 2));\n if (typeof this.params.id === 'function') {\n return this.params.id(data);\n } else if (Array.isArray(this.params.id)) {\n return this.params.id\n .map(k => {\n if (data && data[k] && util.isPrimitive(data[k])) {\n return data[k];\n }\n return util.randomId();\n })\n .join('_');\n } else {\n return util.randomId();\n }\n };\n\n get = (id: string) => {\n return this.nodes[id] || null;\n };\n\n @observable nodes: { [k: string]: { value: any } } = {};\n\n @action merge = <T extends any>(rawData: T): { value: T } => {\n // let id;\n const data: any = rawData;\n const id = this.getId(data);\n\n const node = this.nodes[id] || {};\n\n if (Array.isArray(data)) {\n node.value = data.map((el: any) => {\n return this.merge(el).value;\n });\n } else if (typeof data === 'object') {\n if (!node.value) node.value = {};\n for (let key in data) {\n node.value[key] = this.merge(data[key]).value;\n }\n } else if (util.isPrimitive(data)) {\n return { value: data };\n } else {\n node.value = data;\n }\n\n this.nodes[id] = node;\n return this.nodes[id];\n };\n}\n"],"names":["util","Math","random","toString","substring","val","Object","Normi","params","data","console","log","JSON","stringify","_this","id","Array","isArray","map","k","isPrimitive","randomId","join","nodes","rawData","getId","node","value","el","merge","key","__decorate","observable","action"],"mappings":"wEAAiBA,wCAAjB,SAAiBA,GACFA,WAAW,kBACtBC,KAAKC,SACFC,SAAS,IACTC,UAAU,EAAG,IAChBH,KAAKC,SACFC,SAAS,IACTC,UAAU,EAAG,KAELJ,cAAc,SAACK,UAAaA,IAAQC,OAAOD,IAT1D,CAAiBL,IAAAA,WCOJO,EAEX,SAAYC,uBAAAA,IAAAA,EAA+B,eAMnC,SAACC,UACPC,QAAQC,aACRD,QAAQC,IAAIC,KAAKC,UAAUJ,EAAM,KAAM,IACT,mBAAnBK,EAAKN,OAAOO,GACdD,EAAKN,OAAOO,GAAGN,GACbO,MAAMC,QAAQH,EAAKN,OAAOO,IAC5BD,EAAKN,OAAOO,GAChBG,KAAI,SAAAC,UACCV,GAAQA,EAAKU,IAAMnB,EAAKoB,YAAYX,EAAKU,IACpCV,EAAKU,GAEPnB,EAAKqB,cAEbC,KAAK,KAEDtB,EAAKqB,qBAIV,SAACN,UACED,EAAKS,MAAMR,IAAO,iBAG0B,cAErC,SAAgBS,OAExBf,EAAYe,EACZT,EAAKD,EAAKW,MAAMhB,GAEhBiB,EAAOZ,EAAKS,MAAMR,IAAO,MAE3BC,MAAMC,QAAQR,GAChBiB,EAAKC,MAAQlB,EAAKS,KAAI,SAACU,UACdd,EAAKe,MAAMD,GAAID,cAEnB,GAAoB,iBAATlB,MAEX,IAAIqB,KADJJ,EAAKC,QAAOD,EAAKC,MAAQ,IACdlB,EACdiB,EAAKC,MAAMG,GAAOhB,EAAKe,MAAMpB,EAAKqB,IAAMH,UAErC,CAAA,GAAI3B,EAAKoB,YAAYX,SACnB,CAAEkB,MAAOlB,GAEhBiB,EAAKC,MAAQlB,SAGfK,EAAKS,MAAMR,GAAMW,EACVZ,EAAKS,MAAMR,SArDbP,OAAS,CACZO,GAAIP,EAAOO,IAAM,CAAC,QA2BVgB,cAAXC,0CAEOD,cAAPE"} | ||
| {"version":3,"file":"normi.cjs.production.min.js","sources":["../src/util.ts","../src/store.ts"],"sourcesContent":["export namespace util {\n export const randomId = () =>\n Math.random()\n .toString(36)\n .substring(2, 15) +\n Math.random()\n .toString(36)\n .substring(2, 15);\n\n export const isPrimitive = (val: any) => val !== Object(val);\n}\n","import { action, observable } from 'mobx';\nimport { util } from './util';\n\ntype NormiParams = {\n id: ((arg: any) => string) | string[];\n};\n\nexport class Normi {\n params: NormiParams;\n constructor(params: Partial<NormiParams> = {}) {\n this.params = {\n id: params.id || ['id'],\n };\n }\n\n getId = (data: any) => {\n console.log(`getId`);\n console.log(JSON.stringify(data, null, 2));\n if (typeof this.params.id === 'function') {\n return this.params.id(data);\n } else if (Array.isArray(this.params.id)) {\n return this.params.id\n .map(k => {\n if (data && data[k] && util.isPrimitive(data[k])) {\n return data[k];\n }\n return util.randomId();\n })\n .join('_');\n } else {\n return util.randomId();\n }\n };\n\n get = (id: string) => {\n return this.nodes[id] || null;\n };\n\n @observable nodes: { [k: string]: { value: any } } = {};\n\n @action merge = <T extends any>(rawData: T): { value: T } => {\n // let id;\n const data: any = rawData;\n const id = this.getId(data);\n\n const node = this.nodes[id] || {};\n\n if (util.isPrimitive(data)) {\n return { value: data };\n } else if (Array.isArray(data)) {\n node.value = data.map((el: any) => {\n return this.merge(el).value;\n });\n } else if (typeof data === 'object') {\n if (!node.value) node.value = {};\n for (let key in data) {\n node.value[key] = this.merge(data[key]).value;\n }\n } else {\n node.value = data;\n }\n\n this.nodes[id] = node;\n return this.nodes[id];\n };\n}\n"],"names":["util","Math","random","toString","substring","val","Object","Normi","params","data","console","log","JSON","stringify","_this","id","Array","isArray","map","k","isPrimitive","randomId","join","nodes","rawData","getId","node","value","el","merge","key","__decorate","observable","action"],"mappings":"wEAAiBA,wCAAjB,SAAiBA,GACFA,WAAW,kBACtBC,KAAKC,SACFC,SAAS,IACTC,UAAU,EAAG,IAChBH,KAAKC,SACFC,SAAS,IACTC,UAAU,EAAG,KAELJ,cAAc,SAACK,UAAaA,IAAQC,OAAOD,IAT1D,CAAiBL,IAAAA,WCOJO,EAEX,SAAYC,uBAAAA,IAAAA,EAA+B,eAMnC,SAACC,UACPC,QAAQC,aACRD,QAAQC,IAAIC,KAAKC,UAAUJ,EAAM,KAAM,IACT,mBAAnBK,EAAKN,OAAOO,GACdD,EAAKN,OAAOO,GAAGN,GACbO,MAAMC,QAAQH,EAAKN,OAAOO,IAC5BD,EAAKN,OAAOO,GAChBG,KAAI,SAAAC,UACCV,GAAQA,EAAKU,IAAMnB,EAAKoB,YAAYX,EAAKU,IACpCV,EAAKU,GAEPnB,EAAKqB,cAEbC,KAAK,KAEDtB,EAAKqB,qBAIV,SAACN,UACED,EAAKS,MAAMR,IAAO,iBAG0B,cAErC,SAAgBS,OAExBf,EAAYe,EACZT,EAAKD,EAAKW,MAAMhB,GAEhBiB,EAAOZ,EAAKS,MAAMR,IAAO,MAE3Bf,EAAKoB,YAAYX,SACZ,CAAEkB,MAAOlB,GACX,GAAIO,MAAMC,QAAQR,GACvBiB,EAAKC,MAAQlB,EAAKS,KAAI,SAACU,UACdd,EAAKe,MAAMD,GAAID,cAEnB,GAAoB,iBAATlB,MAEX,IAAIqB,KADJJ,EAAKC,QAAOD,EAAKC,MAAQ,IACdlB,EACdiB,EAAKC,MAAMG,GAAOhB,EAAKe,MAAMpB,EAAKqB,IAAMH,WAG1CD,EAAKC,MAAQlB,SAGfK,EAAKS,MAAMR,GAAMW,EACVZ,EAAKS,MAAMR,SArDbP,OAAS,CACZO,GAAIP,EAAOO,IAAM,CAAC,QA2BVgB,cAAXC,0CAEOD,cAAPE"} |
@@ -56,3 +56,7 @@ import { __decorate } from 'tslib'; | ||
| if (Array.isArray(data)) { | ||
| if (util.isPrimitive(data)) { | ||
| return { | ||
| value: data | ||
| }; | ||
| } else if (Array.isArray(data)) { | ||
| node.value = data.map(function (el) { | ||
@@ -67,6 +71,2 @@ return _this.merge(el).value; | ||
| } | ||
| } else if (util.isPrimitive(data)) { | ||
| return { | ||
| value: data | ||
| }; | ||
| } else { | ||
@@ -73,0 +73,0 @@ node.value = data; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"normi.esm.js","sources":["../src/util.ts","../src/store.ts"],"sourcesContent":["export namespace util {\n export const randomId = () =>\n Math.random()\n .toString(36)\n .substring(2, 15) +\n Math.random()\n .toString(36)\n .substring(2, 15);\n\n export const isPrimitive = (val: any) => val !== Object(val);\n}\n","import { action, observable } from 'mobx';\nimport { util } from './util';\n\ntype NormiParams = {\n id: ((arg: any) => string) | string[];\n};\n\nexport class Normi {\n params: NormiParams;\n constructor(params: Partial<NormiParams> = {}) {\n this.params = {\n id: params.id || ['id'],\n };\n }\n\n getId = (data: any) => {\n console.log(`getId`);\n console.log(JSON.stringify(data, null, 2));\n if (typeof this.params.id === 'function') {\n return this.params.id(data);\n } else if (Array.isArray(this.params.id)) {\n return this.params.id\n .map(k => {\n if (data && data[k] && util.isPrimitive(data[k])) {\n return data[k];\n }\n return util.randomId();\n })\n .join('_');\n } else {\n return util.randomId();\n }\n };\n\n get = (id: string) => {\n return this.nodes[id] || null;\n };\n\n @observable nodes: { [k: string]: { value: any } } = {};\n\n @action merge = <T extends any>(rawData: T): { value: T } => {\n // let id;\n const data: any = rawData;\n const id = this.getId(data);\n\n const node = this.nodes[id] || {};\n\n if (Array.isArray(data)) {\n node.value = data.map((el: any) => {\n return this.merge(el).value;\n });\n } else if (typeof data === 'object') {\n if (!node.value) node.value = {};\n for (let key in data) {\n node.value[key] = this.merge(data[key]).value;\n }\n } else if (util.isPrimitive(data)) {\n return { value: data };\n } else {\n node.value = data;\n }\n\n this.nodes[id] = node;\n return this.nodes[id];\n };\n}\n"],"names":["util","Math","random","toString","substring","val","Object","Normi","params","data","console","log","JSON","stringify","id","Array","isArray","map","k","isPrimitive","randomId","join","nodes","rawData","getId","node","value","el","merge","key","__decorate","observable","action"],"mappings":";;;IAAiBA;;AAAjB,WAAiBA;AACFA,EAAAA,aAAA,GAAW;AAAA,WACtBC,IAAI,CAACC,MAAL,GACGC,QADH,CACY,EADZ,EAEGC,SAFH,CAEa,CAFb,EAEgB,EAFhB,IAGAH,IAAI,CAACC,MAAL,GACGC,QADH,CACY,EADZ,EAEGC,SAFH,CAEa,CAFb,EAEgB,EAFhB,CAJsB;AAAA,GAAX;;AAQAJ,EAAAA,gBAAA,GAAc,UAACK,GAAD;AAAA,WAAcA,GAAG,KAAKC,MAAM,CAACD,GAAD,CAA5B;AAAA,GAAd;AACd,CAVD,EAAiBL,IAAI,KAAJA,IAAI,KAAA,CAArB;;ICOaO,KAAb,GAEE,eAAYC,MAAZ;;;MAAYA;AAAAA,IAAAA,SAA+B;;;AAM3C,YAAA,GAAQ,UAACC,IAAD;AACNC,IAAAA,OAAO,CAACC,GAAR;AACAD,IAAAA,OAAO,CAACC,GAAR,CAAYC,IAAI,CAACC,SAAL,CAAeJ,IAAf,EAAqB,IAArB,EAA2B,CAA3B,CAAZ;;AACA,QAAI,OAAO,KAAI,CAACD,MAAL,CAAYM,EAAnB,KAA0B,UAA9B,EAA0C;AACxC,aAAO,KAAI,CAACN,MAAL,CAAYM,EAAZ,CAAeL,IAAf,CAAP;AACD,KAFD,MAEO,IAAIM,KAAK,CAACC,OAAN,CAAc,KAAI,CAACR,MAAL,CAAYM,EAA1B,CAAJ,EAAmC;AACxC,aAAO,KAAI,CAACN,MAAL,CAAYM,EAAZ,CACJG,GADI,CACA,UAAAC,CAAC;AACJ,YAAIT,IAAI,IAAIA,IAAI,CAACS,CAAD,CAAZ,IAAmBlB,IAAI,CAACmB,WAAL,CAAiBV,IAAI,CAACS,CAAD,CAArB,CAAvB,EAAkD;AAChD,iBAAOT,IAAI,CAACS,CAAD,CAAX;AACD;;AACD,eAAOlB,IAAI,CAACoB,QAAL,EAAP;AACD,OANI,EAOJC,IAPI,CAOC,GAPD,CAAP;AAQD,KATM,MASA;AACL,aAAOrB,IAAI,CAACoB,QAAL,EAAP;AACD;AACF,GAjBD;;AAmBA,UAAA,GAAM,UAACN,EAAD;AACJ,WAAO,KAAI,CAACQ,KAAL,CAAWR,EAAX,KAAkB,IAAzB;AACD,GAFD;;AAIY,YAAA,GAAyC,EAAzC;;AAEJ,YAAA,GAAQ,UAAgBS,OAAhB;AACd;AACA,QAAMd,IAAI,GAAQc,OAAlB;;AACA,QAAMT,EAAE,GAAG,KAAI,CAACU,KAAL,CAAWf,IAAX,CAAX;;AAEA,QAAMgB,IAAI,GAAG,KAAI,CAACH,KAAL,CAAWR,EAAX,KAAkB,EAA/B;;AAEA,QAAIC,KAAK,CAACC,OAAN,CAAcP,IAAd,CAAJ,EAAyB;AACvBgB,MAAAA,IAAI,CAACC,KAAL,GAAajB,IAAI,CAACQ,GAAL,CAAS,UAACU,EAAD;AACpB,eAAO,KAAI,CAACC,KAAL,CAAWD,EAAX,EAAeD,KAAtB;AACD,OAFY,CAAb;AAGD,KAJD,MAIO,IAAI,OAAOjB,IAAP,KAAgB,QAApB,EAA8B;AACnC,UAAI,CAACgB,IAAI,CAACC,KAAV,EAAiBD,IAAI,CAACC,KAAL,GAAa,EAAb;;AACjB,WAAK,IAAIG,GAAT,IAAgBpB,IAAhB,EAAsB;AACpBgB,QAAAA,IAAI,CAACC,KAAL,CAAWG,GAAX,IAAkB,KAAI,CAACD,KAAL,CAAWnB,IAAI,CAACoB,GAAD,CAAf,EAAsBH,KAAxC;AACD;AACF,KALM,MAKA,IAAI1B,IAAI,CAACmB,WAAL,CAAiBV,IAAjB,CAAJ,EAA4B;AACjC,aAAO;AAAEiB,QAAAA,KAAK,EAAEjB;AAAT,OAAP;AACD,KAFM,MAEA;AACLgB,MAAAA,IAAI,CAACC,KAAL,GAAajB,IAAb;AACD;;AAED,IAAA,KAAI,CAACa,KAAL,CAAWR,EAAX,IAAiBW,IAAjB;AACA,WAAO,KAAI,CAACH,KAAL,CAAWR,EAAX,CAAP;AACD,GAxBO;;AA9BN,OAAKN,MAAL,GAAc;AACZM,IAAAA,EAAE,EAAEN,MAAM,CAACM,EAAP,IAAa,CAAC,IAAD;AADL,GAAd;AAGD,CANH;;AA+BcgB,YAAXC,8CAAW;;AAEJD,YAAPE,0CAAO;;;;"} | ||
| {"version":3,"file":"normi.esm.js","sources":["../src/util.ts","../src/store.ts"],"sourcesContent":["export namespace util {\n export const randomId = () =>\n Math.random()\n .toString(36)\n .substring(2, 15) +\n Math.random()\n .toString(36)\n .substring(2, 15);\n\n export const isPrimitive = (val: any) => val !== Object(val);\n}\n","import { action, observable } from 'mobx';\nimport { util } from './util';\n\ntype NormiParams = {\n id: ((arg: any) => string) | string[];\n};\n\nexport class Normi {\n params: NormiParams;\n constructor(params: Partial<NormiParams> = {}) {\n this.params = {\n id: params.id || ['id'],\n };\n }\n\n getId = (data: any) => {\n console.log(`getId`);\n console.log(JSON.stringify(data, null, 2));\n if (typeof this.params.id === 'function') {\n return this.params.id(data);\n } else if (Array.isArray(this.params.id)) {\n return this.params.id\n .map(k => {\n if (data && data[k] && util.isPrimitive(data[k])) {\n return data[k];\n }\n return util.randomId();\n })\n .join('_');\n } else {\n return util.randomId();\n }\n };\n\n get = (id: string) => {\n return this.nodes[id] || null;\n };\n\n @observable nodes: { [k: string]: { value: any } } = {};\n\n @action merge = <T extends any>(rawData: T): { value: T } => {\n // let id;\n const data: any = rawData;\n const id = this.getId(data);\n\n const node = this.nodes[id] || {};\n\n if (util.isPrimitive(data)) {\n return { value: data };\n } else if (Array.isArray(data)) {\n node.value = data.map((el: any) => {\n return this.merge(el).value;\n });\n } else if (typeof data === 'object') {\n if (!node.value) node.value = {};\n for (let key in data) {\n node.value[key] = this.merge(data[key]).value;\n }\n } else {\n node.value = data;\n }\n\n this.nodes[id] = node;\n return this.nodes[id];\n };\n}\n"],"names":["util","Math","random","toString","substring","val","Object","Normi","params","data","console","log","JSON","stringify","id","Array","isArray","map","k","isPrimitive","randomId","join","nodes","rawData","getId","node","value","el","merge","key","__decorate","observable","action"],"mappings":"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"} |
+1
-1
| { | ||
| "version": "0.3.0", | ||
| "version": "0.3.1", | ||
| "license": "MIT", | ||
@@ -4,0 +4,0 @@ "name": "normi", |
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 1 instance in 1 package
24528
-0.05%