{"_id":"json-mask","_rev":"42-6d30affe95d4adc0d15ee6cfb8058a4e","name":"json-mask","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","dist-tags":{"latest":"2.0.0"},"versions":{"0.1.0":{"name":"json-mask","version":"0.1.0","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"mocha","test-watch":"mocha -w -G -R min","test-cov":"istanbul cover _mocha","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"mocha":"~1.12.0"},"testling":{"browsers":["ie8","ie9","ie10","ff/15","chrome/20","opera/12","safari/5.1"],"harness":"mocha","files":"test/*-test.js"},"_id":"json-mask@0.1.0","dist":{"shasum":"70a03dae017e4a7bcb9d6fcfc939df48691f4623","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.1.0.tgz","integrity":"sha512-1eyzTmJU9nPpudRlbmk7UXICjuyBmzpeT692lG2DhagA8DQwOtOu4Bseu1RZZqGtKPhS25KY2i4tomz/zYgSVg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEruVauhsLG0th8Lvq/HXsTXvIhSmC1yr+XCuJUyLxpHAiAnikkgT+W8ElKDuU1thlyT7eMZ80aK2I7PnxR+ByaOYw=="}]},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"directories":{}},"0.1.1":{"name":"json-mask","version":"0.1.1","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"mocha","test-watch":"mocha -w -G -R min","test-cov":"istanbul cover _mocha","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"mocha":"~1.12.0"},"testling":{"browsers":["ie8","ie9","ie10","ff/15","chrome/20","opera/12","safari/5.1"],"harness":"mocha","files":"test/*-test.js"},"_id":"json-mask@0.1.1","dist":{"shasum":"1c700db42c398937e030f3eb9edae3383cfc2e02","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.1.1.tgz","integrity":"sha512-oe3txkgd9z6P2zqGoQa2KLl+7pbtzNH+YhJksSM2JLGe0GFuZ8RXZKr1Qo4x5K45Utk3Golt5tHKErZXcnT9kQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGr/iCi0NtTbiR7BLEZB8k1sEdkWIGBF/UBBfkjhcF1EAiEAlnlBCTzekrI+hLSsHCpe810O1Z0XvYOrxAw7++3YPWA="}]},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"directories":{}},"0.2.0":{"name":"json-mask","version":"0.2.0","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"mocha","test-watch":"mocha -w -G -R min","test-cov":"istanbul cover _mocha","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"mocha":"~1.12.0"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"_id":"json-mask@0.2.0","dist":{"shasum":"4b2acded8684e8fcdf331d145b21d8e2a6f2a32c","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.2.0.tgz","integrity":"sha512-RaAeSltJyLd6w52EEqXVnixHGzNBuQ4gzHKTvpJLUvrg4id5JJVyzKKlefGHX2UdLJSrT61UncfwvsLT42Tf/w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC8aFZT3wiTMBwbYIrVBn8qwPrvWuLoiKK1SLdhyiXD2AIhANBxWnFTVxsjmKagVAbJajUTSeI68qXfIcTzjDq/F/gn"}]},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"directories":{}},"0.3.0":{"name":"json-mask","version":"0.3.0","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"mocha","test-watch":"mocha -w -G -R min","test-cov":"istanbul cover _mocha","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"mocha":"~1.12.0"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"gitHead":"e0f98413966ac3ef3b2ade9690c48ec454d06fd3","_id":"json-mask@0.3.0","_shasum":"c0d921d36594fca18df64da68d124ed768140287","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"dist":{"shasum":"c0d921d36594fca18df64da68d124ed768140287","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.3.0.tgz","integrity":"sha512-dCj1sokKSVA5mwe+Wd2SwyyBf3S13YsJTo42zpCuwZ6BWaovbFc9JZDf8dxsBlLClT18y/Wg2w/Pg9p0x6J8kw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE4DDaFw1pGAgoUBlRGtnn/U6IiMlDpRUB2JtQiANT7WAiEAuZVVe1xKLM2Etd479sEyCBTpguTxLs6LGBembY5fOec="}]},"directories":{}},"0.3.1":{"name":"json-mask","version":"0.3.1","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"mocha","test-watch":"mocha -w -G -R min","test-cov":"istanbul cover _mocha","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"mocha":"~1.12.0"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"bc7eeb11992f6c17aeec24670e5c8e42b4af903e","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask","_id":"json-mask@0.3.1","_shasum":"57797ead9d328c8d26f729ef2e87a378abeb3a4f","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"dist":{"shasum":"57797ead9d328c8d26f729ef2e87a378abeb3a4f","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.3.1.tgz","integrity":"sha512-5U+WyFC0Js2/114kxH0Zwz7gNKZgqTaWOT+6yq3G03MmpkMuzAMC9nhRFGwPo+xIAmCPO9+H/EgSpuUH/IkULw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDY9ip+jnfFgvPRuD+1WDAl8YM1AjH26Y2Eo/Z2RiOIdAiAD93j0BHGkOb+ztbO0YGTjm1GMEexI3r9ph8DstxqujA=="}]},"directories":{}},"0.3.2":{"name":"json-mask","version":"0.3.2","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"mocha","test-watch":"mocha -w -G -R min","test-cov":"istanbul cover _mocha","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"mocha":"~1.12.0"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"587e325aeb66c12bc4f586171d0706a0337a005f","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask","_id":"json-mask@0.3.2","_shasum":"c94f1c025b0886ed047b0cebe1ec293db329b458","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"dist":{"shasum":"c94f1c025b0886ed047b0cebe1ec293db329b458","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.3.2.tgz","integrity":"sha512-iQvCwFmvtQ+W7mE7YHimvcwxDG9PFoDK0fp4t1bYfWA3zyiYbHhhog5K+I1C237VTwpg9/sfdINN8xTA/pkLjQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHYs9Hn9+ok6EKGyQSpPulLFOhf48ViHjpZUcA56fw9YAiBKDsbP4YrDtktmm+RLJHAdwr52ZBTMF9jsnh1LwHvSdQ=="}]},"directories":{}},"0.3.3":{"name":"json-mask","version":"0.3.3","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"mocha","test-watch":"mocha -w -G -R min","test-cov":"istanbul cover _mocha","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"mocha":"~1.12.0"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"da9dc835a20afa9425ea24e0dba2c080e3d68df2","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask","_id":"json-mask@0.3.3","_shasum":"a196dabae1f6be407dc2d78253e8c7e405264df3","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"dist":{"shasum":"a196dabae1f6be407dc2d78253e8c7e405264df3","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.3.3.tgz","integrity":"sha512-jTgSZwNeMagE8s6HbMju6pEnx2rzOSf5zAKvmpAqTaPsrDX4LO88wsmIfWBYaHGDieJMOxHVuTRYW7V9wwDxJg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCE3fe4k3tmsM8hug0TN/D5ZtZUocVDz8/ccD0+QoIbdgIhAJBBCz3ObYqBtGmFoA9D2ziHwG3YCPTLamNPmcaSZfZW"}]},"directories":{}},"0.3.4":{"name":"json-mask","version":"0.3.4","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"mocha","test-watch":"mocha -w -G -R min","test-cov":"istanbul cover _mocha","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"mocha":"~1.12.0"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"20b3c8bbcf2164f5b34d690889eaf4f1d4e3dc29","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask","_id":"json-mask@0.3.4","_shasum":"de23e3614d2f5a31bf2065c1b8cb4d3dd776dbf6","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"dist":{"shasum":"de23e3614d2f5a31bf2065c1b8cb4d3dd776dbf6","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.3.4.tgz","integrity":"sha512-rC1XOy/A7Q+EkCcusd2N7zmYtzzFDEfhw6NRJy1GJ392mAq7K8QPokRPanxeL4d+3Wx3u0vZPaSW2Vwz75w8bQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAsaS8T0fQp8der2do8LGFIgwvDUud+WYn/hwgf/oBbtAiEAmH2UZO9CtUgWeBcOf5gQWn/GgHz7o6Ne69YrMhTCicY="}]},"directories":{}},"0.3.5":{"name":"json-mask","version":"0.3.5","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"mocha","test-watch":"mocha -w -G -R min","test-cov":"istanbul cover _mocha","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"browserify":"^10.2.6","istanbul":"^0.3.17","mocha":"~1.12.0","uglifyjs":"^2.4.10"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"76c40abe0b00ce3527acb0a1543e877f9b05d85c","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask","_id":"json-mask@0.3.5","_shasum":"b0f39236726b2b02f03f49e7d4e4a9ec129435fb","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"dist":{"shasum":"b0f39236726b2b02f03f49e7d4e4a9ec129435fb","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.3.5.tgz","integrity":"sha512-6V6NmkE1McGZgFZydH8be5IT0G3lsdyk40UJij4ygV8gVd6L0NoWpdymAI3mHIbBJHEC8zIY6hEeAQdLD6cLAQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDfU/mfXl6mLP98l2R+SOnu9p0LP9Sc+ZWaPjD932OhtAIhAK2etyxYSbmqIsCgl08DY6fvFGG+7AE4OyoojBM9qjic"}]},"directories":{}},"0.3.6":{"name":"json-mask","version":"0.3.6","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"mocha","test-watch":"mocha -w -G -R min","test-cov":"istanbul cover _mocha","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"browserify":"^10.2.6","istanbul":"^0.3.17","mocha":"~1.12.0","uglifyjs":"^2.4.10"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"b093e202131a3b9c7ec323832452c98b716ca424","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask#readme","_id":"json-mask@0.3.6","_shasum":"7f22a3a5fe8988580a5e91c1314e8e8533126b6e","_from":".","_npmVersion":"2.15.1","_nodeVersion":"4.4.4","_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"dist":{"shasum":"7f22a3a5fe8988580a5e91c1314e8e8533126b6e","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.3.6.tgz","integrity":"sha512-+xtXED2u/b3zWAPYXJ4RvJ0oycU9I3tmb4060zNGuryhMUNeyZdUkrAMt2MF4ksFdXl2gfLjh6eXWTOeAKte9w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUflximzLJIh3MjtAxqoA1g9KhHwXvv0ko7BwL8V6aXAIhAKdlNJVByQDwkPRuMeNn1ccxAZwkSY/JNb5L1iJ+C/ID"}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/json-mask-0.3.6.tgz_1463941422540_0.003911872627213597"},"directories":{}},"0.3.7":{"name":"json-mask","version":"0.3.7","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"npm run lint && mocha","test-watch":"mocha -w -G -R min","test-cov":"istanbul cover _mocha","lint":"standard 'lib/**/*.js' 'test/**/*.js'","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"browserify":"^10.2.6","istanbul":"^0.3.17","mocha":"~1.12.0","standard":"^7.1.0","uglifyjs":"^2.4.10"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"3109601ae59059f02a31aace264eacc36dc56eb1","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask#readme","_id":"json-mask@0.3.7","_shasum":"b64b65f898c037f28aacf06dad969e7bd4face82","_from":".","_npmVersion":"3.8.9","_nodeVersion":"6.2.0","_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"dist":{"shasum":"b64b65f898c037f28aacf06dad969e7bd4face82","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.3.7.tgz","integrity":"sha512-6+VJz0T0c8e6o8E7N6n8sncLArOOq1Uruvv/Bz3rlvQAZP51KTcYC0YI28K3v4FPQguuDTo0jRBCkoNUFujPWw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDkTEdheUum9S51JOmKb2MkhAz3bLtuNj6vVhXX9tjpcAiAf9EUrgPfuKRh6IMv+CrVIXYoKNAJ+HaytjNikWeRJjg=="}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/json-mask-0.3.7.tgz_1463944160539_0.7368909411597997"},"directories":{}},"0.3.8":{"name":"json-mask","version":"0.3.8","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"npm run lint && mocha","test-watch":"mocha -w -G -R min","test-cov":"istanbul cover _mocha","lint":"standard 'lib/**/*.js' 'test/**/*.js'","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"browserify":"^10.2.6","istanbul":"^0.3.17","mocha":"~1.12.0","standard":"^7.1.0","uglifyjs":"^2.4.10"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"cf8457ba617d9ecf749e0a65f38b33f2ce76457a","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask#readme","_id":"json-mask@0.3.8","_shasum":"2d66415de14b0e8bc6c1514554a90bfca8356941","_from":".","_npmVersion":"3.8.9","_nodeVersion":"6.2.0","_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"dist":{"shasum":"2d66415de14b0e8bc6c1514554a90bfca8356941","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.3.8.tgz","integrity":"sha512-kseTjtOu6w9CdxP+p4RqM5j4VXkK0BRF98xF6M9NTJH1sN3kEPS8yqLaApq9MOz+v0buGT47A4nH15dwqoo9bw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAFE+2BxOredZXr2nbjWfsQ1Tx3OgaWSQxypaClOa8CtAiBGGpXLnyvaY2i5+jqAC5XfYnAQ2nDnTIn+HGdh3t8tHw=="}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/json-mask-0.3.8.tgz_1463944509439_0.07302226079627872"},"directories":{}},"0.3.9":{"name":"json-mask","version":"0.3.9","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"npm run lint && mocha","test-watch":"mocha -w -G -R min","test-cov":"nyc --reporter=html --reporter=text mocha","lint":"standard 'lib/**/*.js' 'test/**/*.js'","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"keywords":["mask","filter","select","fields","projection","query","json"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"browserify":"^16.5.0","mocha":"^6.2.2","nyc":"^14.1.1","standard":"^14.3.1","uglifyjs":"^2.4.11"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"134cef4979658a2662386d6d37597acd63a80a03","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask#readme","_id":"json-mask@0.3.9","_nodeVersion":"12.13.1","_npmVersion":"6.12.1","dist":{"integrity":"sha512-RRu7bf7vzOohKMrU5pD9+fROMltTegWj2trZlPNr7hXekptFGkOZo4S63Jdx2X1GR7IK6rEVvXkQKY+2TPs0PA==","shasum":"c3772baa49ceda56ca360a6dd6b479ca3c0e327f","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-0.3.9.tgz","fileCount":22,"unpackedSize":68762,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9Tr3CRA9TVsSAnZWagAA4/AP/2Gm6TJDYgUW7/Zjh7mg\nh5OlsFm1H3E6aKvseCBmwpYOb/kVK0Fkd6phK0uCZ2IU2WT8QpIwlvynS0VU\ne+HAU1FtNeJ+D49HbUAMOqXMYNt8jVYhDZHQYZTwdicPj3TSPqAdErp3Ji6M\nyHMkGwtWwt3BvpZSnp6D63RlqVRyGcyf67bjqwq9F6YVTg/yVKkMlse5j3+9\nivxuVTiRCEJScOyGQMWX3ldBGH4WjGtscYQ8NPBX13GzOEn7XKB+o0ibhM0N\n/ndIWqQcJ4PKVqzhr0y7Efm5C52p99W6Z57lXpYh/H1C6Nx56HoDsZCisWia\ncZ44Nd6Ej2BZwTQlsvfIW57AGFc6UAW7g+B4qTHdKMeaOyGJmy3ELZH0GIwE\ns8WLIbe/SR3hObstDhkC9WUvmNr/wd87qfYkrH7C3w0MFP9h6Xqq+nUhEdow\nSCZJXKxSSHLYCZ9UhXTC4dE6vh3dS551ujJ56FL9AwS4UtW2YvS8B8RkRLbh\ntq0QMFyTMNxSqa3hzV95mqYbcqMP99f2ufwNweT60K9emsgd98ZbWh3cOEKl\nEdoksoqUXKc5sBwg6WXpdkA6+QfQYbMI9Dil5YvKWgHih1u9/H3bo+GW7V6d\nPqEQsTwnpf7yfXNfGuEPvn4gTgBU+8K1DFGk4Wd29i/8nZw0MmwrV89j2NZj\nVaUs\r\n=4DMW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICGL9LUzn6wX7Eps28bQksB9unWpOibpOyDvSdiM/pvYAiEA5GrchoBXhqoDtRyBNCp2G/c6ecjjoc8NAljaSSnRAkw="}]},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-mask_0.3.9_1576352503127_0.07627328808183154"},"_hasShrinkwrap":false},"1.0.0":{"name":"json-mask","version":"1.0.0","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"npm run lint && mocha","test:all":"nve 8 10 12 \"*\" mocha","test-watch":"mocha -w -G -R min","test-cov":"nyc --reporter=html --reporter=text mocha","lint":"standard 'lib/**/*.js' 'test/**/*.js'","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"bin":{"json-mask":"bin/json-mask.js"},"engines":{"node":">=8.0.0"},"keywords":["mask","filter","select","fields","projection","query","json","cli"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"browserify":"^16.5.0","mocha":"^6.2.2","nve":"^8.3.0","nyc":"^14.1.1","standard":"^14.3.1","uglifyjs":"^2.4.11"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"50d216825b0df3bbd767e171659cb4d984312d91","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask#readme","_id":"json-mask@1.0.0","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-/R0EiC35PwyudMswjDm25Gl8ijGJZuwUH3BtdWgXP5yxB39EcT7ZMN8vfcro9+czm8yGDmeX70AqBU27JhL5Fw==","shasum":"fa1580a2c6540e8b585e44461fa3373eda6ae8c6","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-1.0.0.tgz","fileCount":25,"unpackedSize":76270,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeRgsTCRA9TVsSAnZWagAAzgoP/jHSw1VHJRrJCM+V7/QT\npMtSfyEP3Kb9gFXhL97yyXW0EbmQFesTB5MiPzIMAofOSBzGjSn46uHfTReP\nblFoqrzWx4ynIo3KAFYwyVOsWuFDzpYdEesmaAJ5BixGpnf/mjhhz72ZeXyu\n26S8ljZXTog4zYI9cpyR1aHf7YeTAbQ8qOtU5NzzoajMW8Fz7BQ4P4WvFsDt\nVeNanvpaob8qYIWs2OoSyKui4bEI4FlNk00FsDGqC0L6Du0YaaWyhk19fAj2\nGuixr90rcqqm+E7LlphhAkfRl5LQK+ge9SIuU0l0Nz27Uq2sy0O74Y0F7VPp\nVDmWA+4PD2MF5mMgoqPkXbgPfAg2HU0lZKmmIxpVJSGnWdWswJgOpEx+82U5\ngyaKNy0l0keY4fwHcGn+67oWzAPvlZV3VPeQZMA7mWHOLBF/WZlI7kkZbZsV\nQR5z5AhBfQA1oCQGyvwig1BVuqHtUd6ue+4ElHPKRgOdpUHOJCdbIu5G3kSm\nIM12KlEFP7kZ7ho+M18QAaXpneW7y1oF0PaKpuKjpQcg+el3r+gYQhn9y2Xg\nAtvUrqm09/hpB0wJMPDGaNNhEPeDX516qXe3HTEaQdM6vmyoJ96t9MJD5XzL\nwv317nAYWiQAPX3JaaBIvqVL4jbSiNTWklpXKnc92aW9KqoOnwH8HbfmdCjG\nAd37\r\n=EAj6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBQrak4OvfAuGxgja1PKXFHQcUhK6SAeIjO408J/TofyAiBYawkJUaFxEJUn/NgjtZEVulGoyN2JcaCrzgzujS4Rhg=="}]},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-mask_1.0.0_1581648658932_0.630243624215902"},"_hasShrinkwrap":false},"1.0.1":{"name":"json-mask","version":"1.0.1","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"npm run lint && mocha","test:all":"nve 8 10 12 \"*\" mocha","test-watch":"mocha -w -G -R min","test-cov":"nyc --reporter=html --reporter=text mocha","lint":"standard 'lib/**/*.js' 'test/**/*.js'","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"bin":{"json-mask":"bin/json-mask.js"},"engines":{"node":">=8.0.0"},"keywords":["mask","filter","select","fields","projection","query","json","cli"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"browserify":"^16.5.0","mocha":"^7.0.1","nve":"^8.3.0","nyc":"^15.0.0","standard":"^14.3.1","uglifyjs":"^2.4.11"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"3dbeb755caf21c814723bd0aa7a588d761ceec8b","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask#readme","_id":"json-mask@1.0.1","_nodeVersion":"12.16.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-yZtYE2n/1Fj2kooc4smXzF0p9o3dM2eG1cIfHmN6aEGUYm9OMa4j/typI4JX1tftCjo/rBYKZp5OAWjf3py6WA==","shasum":"b2a6dc4fd6ec1354a92d6641004b840c2d9335ba","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-1.0.1.tgz","fileCount":25,"unpackedSize":76270,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeRgxgCRA9TVsSAnZWagAAae4QAJ4O//3tX4HMIFoNhtHE\nlxeMH2rR7gQuh0mO9AGr9Db99x0k0fz975uLQQ06ZrcgLxQQiaWh2xixdyd7\ndKCRTcnrRTOjoAwvRTr1SzbB0hw5t2801Xpx38Az+i9ZJB9uvzigTno6EkZ3\ny2G4ZYtpy944OU3q9mWXxIMyh9v0fiJC4irX7usTxWWqUwEczKI1HMTUBMX3\n/wwdOpG4ws/MQERJxFdDKP8By4mbjZAdfcnn8te6ATA8gX3nGd37Ez7lH5Qs\nm8jQMm+S5xv0i4PR8nPmcVQ00S2uYsfGP339IkovU6F/GIWV45neifld7czA\nMHxb35a/yzAN+d84DbVkEeY/74ZXp8pXtUsQ7rpXvOPNPtUw4u1GDK1WdSDH\nQ7Dg3Ym1GYAPrIu7iMvutByqt0kae8JrbM1i9MXgwUr7B2lEHzuHnTMdyt4k\n81pTo1z0rPkLQMZ1It2F6puWdlQ5RQ8Yiv4Ae+jBn9BunZg122HH+nCB10DW\nIrzL9PrGELjdW2zvAbhBk5C+31yNch2PEBOs4u00S3x+e2aJTYrA9lxJ0H8r\n6a1uvMFEUMl6Xo4N2wxg0PqDGXMCJ/51bM4iUUg+SpqdfLAydMAoua3tMfdD\neB9hLqrmv4M+LQeeA3pJAQ1AvQnZ4VJdUT+IPjNRszpxWDP8GRLCffxx9ZEN\nisop\r\n=MFVk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2iZkLA+UV7lAtgIV8TQmj2X8/9xYuX51ZNZG25NiLtQIgKpsxdkk/i8bPLUB+pTvel6Fw8hPCpg9W4pkVoYiGaD4="}]},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-mask_1.0.1_1581648991828_0.22975529050496846"},"_hasShrinkwrap":false},"1.0.2":{"name":"json-mask","version":"1.0.2","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"npm run lint && mocha","test:all":"nve --parallel 8,10,12,14 mocha","test-watch":"mocha -w -G -R min","test-cov":"nyc --reporter=html --reporter=text mocha","lint":"standard 'lib/**/*.js' 'test/**/*.js' 'bin/**/*.js'","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"bin":{"json-mask":"bin/json-mask.js"},"engines":{"node":">=8.0.0"},"keywords":["mask","filter","select","fields","projection","query","json","cli"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"browserify":"^16.5.2","mocha":"^7.2.0","nve":"^13.0.0","nyc":"^15.1.0","standard":"^14.3.4","uglify-js":"^3.10.4"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"f7e257fa8a480e389dcf6a213b0d9e1a954af47c","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask#readme","_id":"json-mask@1.0.2","_nodeVersion":"12.18.2","_npmVersion":"6.14.8","dist":{"integrity":"sha512-gsPkFjtyE+ILy4jITMce24Zcgv7i+4axiHo5wo2NNEm1c58xg+xwFlyjmgsq0PBh/9WixrRRdzDCPqNpV6t63w==","shasum":"bdc7e91f64d7c3f0e936640ca0e9c2cc8e2e4dc9","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-1.0.2.tgz","fileCount":25,"unpackedSize":76315,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfVoBpCRA9TVsSAnZWagAAih8QAIajnxJVhn1c95Q1uFri\nFp7+IdDcd/500YM8SmPeegByPY4IHDcZqqJukgJGDiR2bOZsiV0HKMuHjlZp\nTMED5IMZS+J5xuM98A+E+p+KFLYguxfY5YYFGX4cWZXGrDMN5Zlgj7HL92Zk\nKOoPtFB3RqbMv8Aga/5doU9CozYfmn2jV6oyGfB5cWFpylLW3r9UJlKo4yIF\nRohP6FGi4rOmy1ZhEWSaYERQwIDghqlgi0GeqQGCoUQPzt8OUoYmD4F+kjPS\nGHa5aDucPj9A1upQ78zL1Kkd6hqlqItyM+jWhF76DjUBd1sExqhSelZmSznK\noUuqwNqdD8ngWTW12lLL/ydEisNEVnQGkJYIa3dqKldlExm5BAT8Xv2uWckv\nnPM5cb0ku8KnilJgdVuLT8S9GhGIvoSJ7U3h8FP6gH2bMgkyXaK4XaL+7AlZ\nVfENKf1swSWpLnU5d+VVE4Fe9TDJP5vbN190V9496MMi3IaGaNEspqpyg889\nOBBLaGq+EMQLN+ztFLrHD+QqIph5hLuKJUOM6HBAMteUC9UsnDpbPCVEi56m\nuXM8HtjNJyubOSjD/FPdxE4x/q8uTO1+QU+hh03sMghaJyoBtqqvm0u1snrn\nC1V1878KTdpkP+MIwCI4qegYhcR1kvNY4kY9z2/Ee760PiR3uCEnxsTphf7q\nAIi3\r\n=lO7C\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCsqUuhxFyO8R2wYQtKu3VgKxs0rLWnPQrTGh8jpq+XlwIgDZML4zOSzfngYsx3iwpmFf7rTdQNwHdBh3N4+pNQ+ps="}]},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-mask_1.0.2_1599504489056_0.19295005317104574"},"_hasShrinkwrap":false},"1.0.3":{"name":"json-mask","version":"1.0.3","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"npm run lint && mocha","test:all":"nve --parallel 8,10,12,14 mocha","test-watch":"mocha -w -G -R min","test-cov":"nyc --reporter=html --reporter=text mocha","lint":"standard 'lib/**/*.js' 'test/**/*.js' 'bin/**/*.js'","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"bin":{"json-mask":"bin/json-mask.js"},"engines":{"node":">=8.0.0"},"keywords":["mask","filter","select","fields","projection","query","json","cli"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"browserify":"^16.5.2","mocha":"^7.2.0","nve":"^13.0.0","nyc":"^15.1.0","standard":"^14.3.4","uglify-js":"^3.10.4"},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"55e5eb4658f31410fd35ccd8d5e45e5b0a694103","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask#readme","_id":"json-mask@1.0.3","_nodeVersion":"14.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-tvlyIZt7Wz350ekU6XBGSzfQuD8j6y2mdNJzsYrHkFW+uht76A8EjU7aHpwUdFdFlhoIGe8SkTJ2tOadM35UXw==","shasum":"3caeea6e9f2c3714abb85c356fed49b0a38dacfb","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-1.0.3.tgz","fileCount":25,"unpackedSize":77979,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfnH33CRA9TVsSAnZWagAARdIP/3nvBLgDg2tPcCz1iEY6\nm3gHscYAobqea/qwopdSdQMEzAO2IkEwrtDbQ8r3e/UVD5pyyN8nY5EdkKHc\na0iC6qhcwfttDczJzBczMnG7MLdEDHuT/o8zc9LNyZgZMONHWSIhuQKBiVyz\n6gO2XrRvwjrmQLsCubnteNwzGJtlseEv2FyOONQPv4qaFszgCHpr9Pf65sri\nRLdmgC2J5+kdV5mEIMPBX4q/qaSzG1kfjAkoekNdAKJ6cd9N8VToC8K6fDJx\niADvq04xHOkp/nhzULPJeneOLcn717sfgCmeEm5A05eJ3iuQdI70vtYqlcjm\nh/iRtyNIIKOAxAh7ITs09u/a4cFA2uoS3JjiTBb5EnT8U1QHy777G0Uojs7y\n48v/Rk4REN1Wu2DtNlufAoIkHvhkiyqV1igeXqWuCiExWnon+BZAdzONg2N9\nt2It5uNsPH6Z/7mIeJedzmoGZ/fAz1vHtr++IKQmT3Koym0kege2XCOyk/AP\nyn111mnzfMBNSv1HPL4MsC+sXTXVZJDEjl/zx0UzU7wt5o0CI6JMNuUcUoyB\nLh6SZbDy78QF8GbeajtfRCbpo/ISILTeZjsOd0GE4CNij4krvhdy87efpUbd\nBpYG3AI6smPseLibiRE2ne+5eQPUYnA0gnQnSIss/YP2Dfd5UCQ5Oul4X38a\nb6Zw\r\n=X/EM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICaCyJs+8Bw0EyKK+zXtld3lJJKNLueNUXrRCRiYL9gcAiBF2gLus0+kdGjVygJBAqWHaW1jMCWLwmWFXNCIAZyEzg=="}]},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-mask_1.0.3_1604091382941_0.7945684711648466"},"_hasShrinkwrap":false},"1.0.4":{"name":"json-mask","version":"1.0.4","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"npm run lint && mocha","test:all":"nve --parallel 8,10,12,14 mocha","test-watch":"mocha -w -G -R min","test-cov":"nyc --reporter=html --reporter=text mocha","lint":"standard 'lib/**/*.js' 'test/**/*.js' 'bin/**/*.js'","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"bin":{"json-mask":"bin/json-mask.js"},"engines":{"node":">=8.0.0"},"keywords":["mask","filter","select","fields","projection","query","json","cli"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"browserify":"^17.0.0","mocha":"^8.2.0","nve":"^13.0.0","nyc":"^15.1.0","standard":"^15.0.1","uglify-js":"^3.11.4"},"eslintConfig":{"rules":{"no-var":"off"}},"testling":{"browsers":["ie/8..latest","firefox/16..latest","firefox/nightly","chrome/22..latest","chrome/canary","opera/12..latest","opera/next","safari/5.1..latest","ipad/6.0..latest","iphone/6.0..latest","android-browser/4.2..latest"],"harness":"mocha","files":"test/*.js"},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"gitHead":"a58140e4c7c52e2a11b9753e4e3fc37e32186505","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask#readme","_id":"json-mask@1.0.4","_nodeVersion":"14.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-ZnNhI8x2DeU57jGSa82w5JS3wJp0N6kqrKfg2OWcTJC1tInggqkjn0W63fCcafus3+f86bvsbla0PvRowPJbZg==","shasum":"07366b7f1fa81cfa1683435bf640cc9bd9bc892d","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-1.0.4.tgz","fileCount":25,"unpackedSize":77775,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfnIIfCRA9TVsSAnZWagAAUw4P/2VywDAkh3MS/DygfzFC\nVtYgMIeKkGvPtkNGSZy8ZhIYaBNDNcfSwGrDSqQTg47/QGs+JqKcHIL+1+n3\nJ9PSQrUq/8IoyeutLP/AhQ6tAWUT7OEGRO9+uDAIkQs1/+fVv24VsWP1vY0D\n6iemZ455FYP1+Vg3L9X9pBUhCglajc+z1i9KQPudsZrgNV3f0dOBZu5y9MS7\nQy2GlEAiKhqOpGwj39ZKPYPE0e5Lr6CeI4ki5kyGuU0+8aqzu9EP3LKWZ8Q3\nVgpcS6Jee9tihrnYoJK7p5vz6eT+QfbgseDraVj62W0r2OGZ0NzTCU7bMtPa\n6BL4lVjtTXs5w/WrH/sCKWUbvLk9prVzshXcmjLBRMrU6yOYzMbdDyNMVcI/\nYDrBudE78W4E3VXOwXY13iwrUDG9G1fZrFh3pMjVIDG9eYA0gON8uKBQlnYo\nrmSawMxcStuikkBWjV8NCzo56EOp4GGXgMQb6P//zA2RG+l00DSYvCQhOO7N\nTuto5nyUVPdSz5jadFS9pCP2gXyZ8/VfxhW/aU9y6TQIVtxqjhVF1jFM4u6x\n5nhEjJxp2eEj25A5XGYnjuwpmQGz5k6CfBQlvGDU75r14m0qm/BVsPaXamrh\nA/KvgNvaIzfYlAnM5TleTPP9Q5T7BWbM+U5ZxAQC7lhmEGNWum4qEnGPbvFE\n/Hzh\r\n=W49H\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBI4zWNl2+xkl03p12P9KpC6kL6PoxFH8PC1XzJ7tU1LAiEAnUdplFGsZAGgIQ34xxo4UvGwRHTCPMrrkv12/UPBmJc="}]},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-mask_1.0.4_1604092446955_0.41830713937517183"},"_hasShrinkwrap":false},"2.0.0":{"name":"json-mask","version":"2.0.0","description":"Tiny language and engine for selecting specific parts of a JS object, hiding the rest.","main":"lib/index","scripts":{"test":"npm run lint && mocha","test:all":"nve --parallel 14,16,18 mocha","test-watch":"mocha -w -G -R min","test-cov":"nyc --reporter=html --reporter=text mocha","lint":"standard 'lib/**/*.js' 'test/**/*.js' 'bin/**/*.js'","build-browser":"npm run-script _build-browser-full; npm run-script _build-browser-license; npm run-script _build-browser-min","_build-browser-full":"browserify -s jsonMask -e lib/index.js | sed -e \"s/\\[ *'.*' *\\]/;/\" > build/jsonMask.js","_build-browser-license":"cat build/copyright  | cat - build/jsonMask.js  | tee build/jsonMask.js","_build-browser-min":"cat build/jsonMask.js | uglifyjs --comments > build/jsonMask.min.js"},"bin":{"json-mask":"bin/json-mask.js"},"engines":{"node":">=14.0.0"},"keywords":["mask","filter","select","fields","projection","query","json","cli"],"author":{"name":"nemtsov@gmail.com"},"license":"MIT","devDependencies":{"browserify":"^17.0.0","mocha":"^10.0.0","nve":"^14.0.0","nyc":"^15.1.0","standard":"^15.0.1","uglify-js":"^3.15.4"},"eslintConfig":{"rules":{"no-var":"off"}},"repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"dependencies":{},"gitHead":"d4f796d6d608bb565f4cf14dbd4e15f8eb2985f1","bugs":{"url":"https://github.com/nemtsov/json-mask/issues"},"homepage":"https://github.com/nemtsov/json-mask#readme","_id":"json-mask@2.0.0","_nodeVersion":"14.19.2","_npmVersion":"6.14.17","dist":{"integrity":"sha512-K7Vh8ddLxXTSaYX3DYtuAcv8b7FsaKBXeSHpUamL/3rWZoB2xlP36YTTr/1H/qT44yp8shGP530gvst64oLNbg==","shasum":"8a8b2f71fa07016c27699a19144c8d09b9067a31","tarball":"https://registry.npmjs.org/json-mask/-/json-mask-2.0.0.tgz","fileCount":11,"unpackedSize":27155,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDXu1+s/+3EiBL0GBS4EPJLudUpr+4qz5+7dtBHpJOflAIhAKr+SDb74q8k0uZuLkKxR58OecVvhh3q4NwdEbSKxTbU"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifwyAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqkIA//RACQv2TUwPDFwg3WnczC4QZXo0/TbXzb0Bzy0S8fM3u6iIxC\r\nI/5v3YJ/X4qZG4hi/Iln7PA/4+i9Umi7bdZSQo8wASly+jyZlo6d+/pzF5bM\r\nrFbTz9Scjid4x1JOZ1A2EirszzJsM4s2BtCCd6dCCycUDse1ayPX/qFtRL6S\r\nUiz0GQOmg/l9JGsMuYYFU8KiOEPqDIT1toRS5BOsDuN5t4qFBNnRwnktDMHs\r\nekEv9oyT6rYG0F3QMz241aESNf2XnHuQATioAzHaEYfx14n3M/IBizkQGKWo\r\nov8FC4w3qkLcnr0zgIShi1ktKP1qRHbXTvHeyUagM6DLF6c0IF0BLDFukYSU\r\nmyc4pb3RzxoIZS007dkO53eIW5vpB1zKjQtVBJ0Ot7H4Onwp8bm9JuVjvxXt\r\n26XQdV6PMJWNsgwnRXld/19cj2gkVkUF5YZH5yyOB6eM3fMzaJdDtUNT6Qxa\r\n0NQUwmAIytymRfQaif6PPy+EXXNinwJo8bJXO3zUk6x0ukkLpo7lPe1i4Zx2\r\nQxvuR1Qox5ZDjzVNgV40Jw3C+XEv1UEifDs8/UfLHfbgJO1C0TLKcLe0OJ+7\r\n2yU+EWb7Jo5ZRjgXsVPbiqbaGmTuTYqUqPNbSAL1m1tBitXzWCZvXHoxe5yt\r\nltRxyHiQ546dS4SPTEStViSTG2dVVFXcEos=\r\n=4DeA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"nemtsov","email":"nemtsov@gmail.com"},"directories":{},"maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-mask_2.0.0_1652493440144_0.8951751788313078"},"_hasShrinkwrap":false}},"readme":"# JSON Mask [![Build Status](https://github.com/nemtsov/json-mask/actions/workflows/node.js.yml/badge.svg)](https://github.com/nemtsov/json-mask/actions/workflows/node.js.yml) [![NPM version](https://img.shields.io/npm/v/json-mask.svg)](https://www.npmjs.com/package/json-mask) [![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](http://standardjs.com/)\n\n<img src=\"https://raw.github.com/nemtsov/json-mask/master/logo.png\" align=\"right\" width=\"267px\" />\n\nThis is a tiny language and an engine for selecting specific parts of a JS object, hiding/masking the rest.\n\n```js\nvar mask = require('json-mask');\nmask({ p: { a: 1, b: 2 }, z: 1 }, 'p/a,z'); // {p: {a: 1}, z: 1}\n```\n\nThe main difference between JSONPath / JSONSelect and this engine is that JSON Mask\n**preserves the structure of the original input object**.\nInstead of returning an array of selected sub-elements (e.g. `[{a: 1}, {z: 1}]` from example above),\nit filters-out the parts of the object that you don't need,\nkeeping the structure unchanged: `{p: {a: 1}, z: 1}`.\n\nThis is important because JSON Mask was designed with HTTP resources in mind,\nthe structure of which I didn't want to change after the unwanted fields\nwere masked / filtered.\n\nIf you've used the Google APIs, and provided a `?fields=` query-string to get a\n[Partial Response](https://developers.google.com/gdata/docs/2.0/reference#PartialResponse), you've\nalready used this language. The desire to have partial responses in\nmy own Node.js-based HTTP services was the reason I wrote JSON Mask.\n\n_For [express](http://expressjs.com/) users, there's an\n[express-partial-response](https://github.com/nemtsov/express-partial-response) middleware.\nIt will integrate with your existing services with no additional code\nif you're using `res.json()` or `res.jsonp()`. And if you're already using [koa](https://github.com/koajs/koa.git)\ncheck out the [koa-json-mask](https://github.com/nemtsov/koa-json-mask) middleware._\n\nThis library has no dependencies. It works in Node as well as in the browser.\n\n**Note:** the 1.5KB (gz), or 4KB (uncompressed) browser build is in the `/build` folder.\n\n## Syntax\n\nThe syntax is loosely based on XPath:\n\n- `a,b,c` comma-separated list will select multiple fields\n- `a/b/c` path will select a field from its parent\n- `a(b,c)` sub-selection will select many fields from a parent\n- `a/*/c` the star `*` wildcard will select all items in a field\n\nTake a look at `test/index-test.js` for examples of all of these and more.\n\n## Grammar\n\n```\n     Props ::= Prop | Prop \",\" Props\n      Prop ::= Object | Array\n    Object ::= NAME | NAME \"/\" Prop\n     Array ::= NAME \"(\" Props \")\"\n      NAME ::= ? all visible characters except \"\\\" ? | EscapeSeq | Wildcard\n  Wildcard ::= \"*\"\n EscapeSeq ::= \"\\\" ? all visible characters ?\n```\n\n## Examples\n\nIdentify the fields you want to keep:\n\n```js\nvar fields = 'url,object(content,attachments/url)';\n```\n\nFrom this sample object:\n\n```js\nvar originalObj = {\n  id: 'z12gtjhq3qn2xxl2o224exwiqruvtda0i',\n  url: 'https://plus.google.com/102817283354809142195/posts/F97fqZwJESL',\n  object: {\n    objectType: 'note',\n    content:\n      'A picture... of a space ship... launched from earth 40 years ago.',\n    attachments: [\n      {\n        objectType: 'image',\n        url: 'http://apod.nasa.gov/apod/ap110908.html',\n        image: { height: 284, width: 506 }\n      }\n    ]\n  },\n  provider: { title: 'Google+' }\n};\n```\n\nHere's what you'll get back:\n\n```js\nvar expectObj = {\n  url: 'https://plus.google.com/102817283354809142195/posts/F97fqZwJESL',\n  object: {\n    content:\n      'A picture... of a space ship... launched from earth 40 years ago.',\n    attachments: [\n      {\n        url: 'http://apod.nasa.gov/apod/ap110908.html'\n      }\n    ]\n  }\n};\n```\n\nLet's test that:\n\n```js\nvar mask = require('json-mask');\nvar assert = require('assert');\n\nvar maskedObj = mask(originalObj, fields);\nassert.deepEqual(maskedObj, expectObj);\n```\n\n### Escaping\n\nIt is also possible to get keys that contain `,*()/` using `\\` (backslash) as escape character.\n\n```json\n{\n  \"metadata\": {\n    \"labels\": {\n      \"app.kubernetes.io/name\": \"mysql\",\n      \"location\": \"WH1\"\n    }\n  }\n}\n```\n\nYou can filter out the location property by `metadata(labels(app.kubernetes.io\\/name))` mask.\n\nNOTE: In [JavaScript String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String#escape_sequences) you must escape backslash with another backslash:\n```js\nvar fields = 'metadata(labels(app.kubernetes.io\\\\/name))'\n```\n\n### Partial Responses Server Example\n\nHere's an example of using `json-mask` to implement the\n[Google API Partial Response](https://developers.google.com/gdata/docs/2.0/reference#PartialResponse)\n\n```js\nvar http = require('http');\nvar url = require('url');\nvar mask = require('json-mask');\nvar server;\n\nserver = http.createServer(function(req, res) {\n  var fields = url.parse(req.url, true).query.fields;\n  var data = {\n    firstName: 'Mohandas',\n    lastName: 'Gandhi',\n    aliases: [\n      {\n        firstName: 'Mahatma',\n        lastName: 'Gandhi'\n      },\n      {\n        firstName: 'Bapu'\n      }\n    ]\n  };\n  res.writeHead(200, { 'Content-Type': 'application/json' });\n  res.end(JSON.stringify(mask(data, fields)));\n});\n\nserver.listen(4000);\n```\n\nLet's test it:\n\n```bash\n$ curl 'http://localhost:4000'\n{\"firstName\":\"Mohandas\",\"lastName\":\"Gandhi\",\"aliases\":[{\"firstName\":\"Mahatma\",\"lastName\":\"Gandhi\"},{\"firstName\":\"Bapu\"}]}\n\n$ # Let's just get the first name\n$ curl 'http://localhost:4000?fields=lastName'\n{\"lastName\":\"Gandhi\"}\n\n$ # Now, let's just get the first names directly as well as from aliases\n$ curl 'http://localhost:4000?fields=firstName,aliases(firstName)'\n{\"firstName\":\"Mohandas\",\"aliases\":[{\"firstName\":\"Mahatma\"},{\"firstName\":\"Bapu\"}]}\n```\n\n**Note:** a few more examples are in the `/example` folder.\n\n## Command Line Interface - CLI\n\nWhen installed globally using `npm i -g json-mask` you can use it like:\n\n`json-mask \"<fields>\" <input> [<output>]`\n\n### Examples\n\nStream from online resource:\n\n`curl https://api.myjson.com/bins/krrxw | json-mask \"url,object(content,attachments/url)\"`\n\nRead from file and write to output file:\n\n`json-mask \"url,object(content,attachments/url)\" input.json > output.json`\n\nRead from file and print redirect to file:\n\n`json-mask \"url,object(content,attachments/url)\" input.json > output.json`\n\n## CDN\n\n**unpkg**\n\n- `https://unpkg.com/json-mask/build/jsonMask.js`\n- `https://unpkg.com/json-mask/build/jsonMask.min.js`\n\n## License\n\n[MIT](/LICENSE)\n","maintainers":[{"name":"nemtsov","email":"nemtsov@gmail.com"}],"time":{"modified":"2022-06-19T06:18:44.624Z","created":"2013-07-15T06:08:03.105Z","0.1.0":"2013-07-15T06:08:04.721Z","0.1.1":"2013-07-15T06:10:41.470Z","0.2.0":"2013-07-24T05:12:59.788Z","0.3.0":"2014-07-09T04:48:25.164Z","0.3.1":"2014-07-18T02:34:11.505Z","0.3.2":"2014-09-09T13:40:02.391Z","0.3.3":"2015-02-24T04:25:54.504Z","0.3.4":"2015-02-24T04:35:43.313Z","0.3.5":"2015-08-14T16:09:26.915Z","0.3.6":"2016-05-22T18:23:43.512Z","0.3.7":"2016-05-22T19:09:21.516Z","0.3.8":"2016-05-22T19:15:10.448Z","0.3.9":"2019-12-14T19:41:43.334Z","1.0.0":"2020-02-14T02:50:59.041Z","1.0.1":"2020-02-14T02:56:31.932Z","1.0.2":"2020-09-07T18:48:09.199Z","1.0.3":"2020-10-30T20:56:23.123Z","1.0.4":"2020-10-30T21:14:07.132Z","2.0.0":"2022-05-14T01:57:20.379Z"},"author":{"name":"nemtsov@gmail.com"},"users":{"nacholg":true,"nbauwens":true,"julien-f":true,"uwo":true,"gdbtek":true,"yhnavein":true,"martinkock":true,"mkoc":true,"surajs21":true,"leonzhao":true,"isayme":true},"keywords":["mask","filter","select","fields","projection","query","json","cli"],"license":"MIT","readmeFilename":"README.md","homepage":"https://github.com/nemtsov/json-mask#readme","repository":{"type":"git","url":"git://github.com/nemtsov/json-mask.git"},"bugs":{"url":"https://github.com/nemtsov/json-mask/issues"}}