@thisisagile/easy-mongo
Version:
Add support for MongoDB
1 lines • 1.09 kB
Source Map (JSON)
{"version":3,"sources":["../src/Utils.ts"],"sourcesContent":["import { choose, DateTime, isArray, isDate, isDateTime, isIsoDateString, isObject, Json, meta } from '@thisisagile/easy';\n\nexport const toMongoType = (input: unknown): Json =>\n choose(input)\n .type(isIsoDateString, i => new DateTime(i).toDate() as any)\n .type(isDateTime, i => i.toDate() as any)\n .type(isArray, a => a.map((i: any) => toMongoType(i)))\n .type(isDate, d => d)\n .type(isObject, o =>\n Object.fromEntries(\n meta(o)\n .entries()\n .map(([k, i]) => [k, toMongoType(i)])\n )\n )\n .else(input);\n"],"mappings":";AAAA,SAAS,QAAQ,UAAU,SAAS,QAAQ,YAAY,iBAAiB,UAAgB,YAAY;AAE9F,IAAM,cAAc,CAAC,UAC1B,OAAO,KAAK,EACT,KAAK,iBAAiB,OAAK,IAAI,SAAS,CAAC,EAAE,OAAO,CAAQ,EAC1D,KAAK,YAAY,OAAK,EAAE,OAAO,CAAQ,EACvC,KAAK,SAAS,OAAK,EAAE,IAAI,CAAC,MAAW,YAAY,CAAC,CAAC,CAAC,EACpD,KAAK,QAAQ,OAAK,CAAC,EACnB;AAAA,EAAK;AAAA,EAAU,OACd,OAAO;AAAA,IACL,KAAK,CAAC,EACH,QAAQ,EACR,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;AAAA,EACxC;AACF,EACC,KAAK,KAAK;","names":[]}