{"_id":"loopback-component-sec","_rev":"36-972df576e8306b198115f43c9caac5e5","name":"loopback-component-sec","description":"A loopback security component with scoped roles management and permission access control","dist-tags":{"latest":"0.4.2"},"versions":{"0.1.0":{"name":"loopback-component-sec","version":"0.1.0","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.5.2","depd":"^1.1.0","lodash":"^4.17.3","nsec":"^0.1.10","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.6","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"9276c148fe52f46884917bf05d868f21b5b22eda","_id":"loopback-component-sec@0.1.0","_shasum":"659b9f753e4bb050917ac4c04747dcc10fbf9ea1","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"659b9f753e4bb050917ac4c04747dcc10fbf9ea1","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.1.0.tgz","integrity":"sha512-UW7/QnwULX212YKO6kV8goEEo0We1I+iKUZqoE83M89y4U8kMuXlfwmXuCEiI9/+RJxMHdZQkNeuuGSi6Hj/Rg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGOM9VCjc9VPoWLHbOa2tNJhImMALrGiGBlY7k5QTL1IAiBKna2pBBJ6bsoBO+4kZf6RlD7Dt0nNkE16RVJxFKQzGg=="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.1.0.tgz_1482758208326_0.13186609977856278"}},"0.1.2":{"name":"loopback-component-sec","version":"0.1.2","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.5.2","depd":"^1.1.0","lodash":"^4.17.3","nsec":"^0.1.10","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.6","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"d76de001ed8dcbb1133fbf83020f2041372ee2de","_id":"loopback-component-sec@0.1.2","_shasum":"257959eefb1b5d4441902c7f415424f3c1fabbdf","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"257959eefb1b5d4441902c7f415424f3c1fabbdf","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.1.2.tgz","integrity":"sha512-PuXDGdKNuQz0BvUTzeMMiJBTGi/XLs57VLj41/kArxcei5f339TjDBmw5Vt7rqP0VJMrT+iTH2t+DnprOmhY/Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAa/0KHErhMPx4KJwdOLJrckTV857l7+wbJoGy8V+JL8AiAq9AXyNOIPZJ4W9awZ32dVFsDuI20Za2RSvS+hdxw//w=="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.1.2.tgz_1482808327433_0.6241840575821698"}},"0.1.3":{"name":"loopback-component-sec","version":"0.1.3","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.5.2","depd":"^1.1.0","lodash":"^4.17.3","nsec":"^0.1.10","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.6","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"5777b869bd73500990a4f0bccf63a9a37c8b1f09","_id":"loopback-component-sec@0.1.3","_shasum":"55ca2019d5ebfeba18b0753d1e08a6e858436369","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"55ca2019d5ebfeba18b0753d1e08a6e858436369","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.1.3.tgz","integrity":"sha512-+N0DLiZycDtDf+e5eCm3iN2Rx2n6MSUuQbX4ngrPXa9/I7ad4JTf1zZe05r1sc2g8oHKykaCa32B5CuGXKXRrQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDncdT6sLEStTjmFqZwpTpZpcBRJLsQXVWc70A1PrCFbAiBLilj5VUKZ2gbQ5yVC5Zw1kN3W0N9YOKl/uXlo66CY9w=="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.1.3.tgz_1482829235582_0.4372673579491675"}},"0.1.4":{"name":"loopback-component-sec","version":"0.1.4","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.5.2","depd":"^1.1.0","lodash":"^4.17.3","nsec":"^0.1.11","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.6","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"a1d7084c4025135426b969f4fad513b4f1c31b8e","_id":"loopback-component-sec@0.1.4","_shasum":"2f84d1fd1f8f945884b6c413d66179d2b6b92f63","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"2f84d1fd1f8f945884b6c413d66179d2b6b92f63","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.1.4.tgz","integrity":"sha512-Tly0NAceSIsj87WNVr1dCEQ/t/LnwGjTi3Um4//R89zSjv+XReoO6T1na+YfRkKKmHLZjsv+OT7f4XaioTALdA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCI8zh7UR3JQyn3nIrrk/8yrnciIzrclF6V3MYO1U7rHQIgX3z9xxRYrofrXBiJ3r7ialsKXOzDUvT5yFYxo9rD3X0="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.1.4.tgz_1482837271212_0.9640366612002254"}},"0.1.5":{"name":"loopback-component-sec","version":"0.1.5","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.5.2","depd":"^1.1.0","lodash":"^4.17.3","nsec":"^0.1.11","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.6","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"0708cd306ffd441f66114467fe928bf9394a937c","_id":"loopback-component-sec@0.1.5","_shasum":"627d8d2b9cf2a6e7736af5739937955c1c8c2aac","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"627d8d2b9cf2a6e7736af5739937955c1c8c2aac","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.1.5.tgz","integrity":"sha512-WsUUNkO+revoguE7jMN3yq2jCvWmZ2Dm+rMChkZiPLPSD72Efo4KnGApaO8molZQNlSEoXQFesObdFcDenVR6Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAWjsKgUhemZjg/29O8bi2i4S9YZJu9T5sq+H3I/kei1AiEA0s0RcJM07aegmU8qleCgihjwL4gNWT4oIQMSEo44/bk="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.1.5.tgz_1482850746694_0.34939222829416394"}},"0.1.6":{"name":"loopback-component-sec","version":"0.1.6","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.5.2","depd":"^1.1.0","lodash":"^4.17.3","nsec":"^0.1.17","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.6","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"970cc1f14100fd1d7c2ef8e58b5bb196441ee208","_id":"loopback-component-sec@0.1.6","_shasum":"3b86e25a4d5f0ff29deed2dad2b15a8b4c5984f5","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"3b86e25a4d5f0ff29deed2dad2b15a8b4c5984f5","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.1.6.tgz","integrity":"sha512-Liw4GrXL9V8DQ7M/k11o+mDIWeK8hkl4rco/PcJ7UqBwfkqdWSyJXBMkOIHo2JEhQyDody0sE07Ga3MkCr62rg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGAwVRjgJLiET1C5SSOP3tgOutci70OajLfqHNSe61dMAiBquW5Pn2lp1mbEP5lYzhymx8wtru8LSq8XpR4SPOOqfw=="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.1.6.tgz_1482982794166_0.36684093344956636"}},"0.1.8":{"name":"loopback-component-sec","version":"0.1.8","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.5.2","depd":"^1.1.0","lodash":"^4.17.3","nsec":"^0.1.17","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.6","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"fc4e8a0ea41fccdc9a6dbeb995a738c1332520da","_id":"loopback-component-sec@0.1.8","_shasum":"dc3c9d50f636cc882f5cc412b62ff95ba503afeb","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"dc3c9d50f636cc882f5cc412b62ff95ba503afeb","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.1.8.tgz","integrity":"sha512-kCFBlvfmUDAYQlW61hADWsZm7bHkBda698oY/n2xw/5Plss25LKZbubr4/dAFUJzzpJIgPEuOdCtV3Hp2ZUXew==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFHZAaGqm0C4ziyS61lVQ+8urSV/zFalTx9e2m4ykJXAAiEA7cDpIZate2u4GKst3Mfd7Tc1SoPChU3JG9xFWH3CczI="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.1.8.tgz_1482993303594_0.44206079049035907"}},"0.1.9":{"name":"loopback-component-sec","version":"0.1.9","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.3","nsec":"^0.1.18","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.6","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"ece222d84d310d2e2e4e24fc98f4c9b7c48d3237","_id":"loopback-component-sec@0.1.9","_shasum":"59fc010c9d218513df45f5debde97fbc09be4e60","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"59fc010c9d218513df45f5debde97fbc09be4e60","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.1.9.tgz","integrity":"sha512-nXjQdd7Bzij7ZiRUfD2Kq/vuSijAe0p4Xw0EusSGS9qel0Q/CgVjLSoWLqCHiXvsdJi7JdkzSG8vS1jSMSE7Ag==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCfvmr5pub65rBnPhpJXHY7AgOUVZuIcEzzoRUu5Gh29AIgO10xVh4ip2SQcBlsO/4bXBtKysVMRb6kqtfQi9XPmrU="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.1.9.tgz_1482997849152_0.9815063048154116"}},"0.2.0":{"name":"loopback-component-sec","version":"0.2.0","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.3","nsec":"^0.2.1","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.6","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"e11c37b8df44ab20a0267e14fe210353f5f0328a","_id":"loopback-component-sec@0.2.0","_shasum":"759490b94ef30eaf61526d37b98126981932e1b9","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"759490b94ef30eaf61526d37b98126981932e1b9","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.2.0.tgz","integrity":"sha512-uzcjWTYpAsDoFCL8N/LeC384ldZaZuZDqfjAdPbdc5EtFXj21+ZD5c+BIbnDaCJwaDBYlj+hEYjUnGtmNqkwEw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFxDE4N3FydKS6ePZjU7Ng3n/SOQ41T72dRA0Ha3Uk7HAiEA57XomWdmV4Zble4PWivYYcpBo3PF+wJxSjV//PThrWk="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.2.0.tgz_1483081309623_0.10646049492061138"}},"0.3.0":{"name":"loopback-component-sec","version":"0.3.0","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.3","nsec":"^0.3.0","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"a192d2017f2af0634a98be5604f4176adb145311","_id":"loopback-component-sec@0.3.0","_shasum":"ca95bddd463a4e777eca5cfd9e69a370ecc9d28f","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"ca95bddd463a4e777eca5cfd9e69a370ecc9d28f","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.0.tgz","integrity":"sha512-fkr/BDtXhHxayYWwqnw1t6PFDHH0lI0HbY9WN2TfKEb1VdfOxECDt8ezxc079nt9xauD6L2/SyB3I/0FKuB1bg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEvdcjSx4UAPiy928ky+K6F5R3bpY4x+nA+2IdqECpN3AiEAk/qNyq8yNw1Qo4jd12uzMdH/3C5hw5P0rqhPguINTI0="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.0.tgz_1483155172504_0.47826412529684603"}},"0.3.1":{"name":"loopback-component-sec","version":"0.3.1","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.3","nsec":"^0.3.0","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"5dffd11b3dc70b164abcb4c8d99e210ce213056a","_id":"loopback-component-sec@0.3.1","_shasum":"60a6c57fc67dd3ca92d9f2aab697450cbaa2744f","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"60a6c57fc67dd3ca92d9f2aab697450cbaa2744f","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.1.tgz","integrity":"sha512-7Pn0ods/V3a858mJi7nJrYBEyUYCgXC9CI6wQnsfn+wjMc9DKBANp5GiujwemmEn3t+Bk9clzuCnHKsmsKR5kQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFHtqyp4xaRyIA5SJGMdM0JeUdh982VUyz5oUPYoEdI7AiA00jizOVaVf6EtS8+GgqPIoHspNNBfxjEbDww8lyEXYg=="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.1.tgz_1483330160353_0.167286068899557"}},"0.3.2":{"name":"loopback-component-sec","version":"0.3.2","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.4","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"3af85eb2f972a53a98acbb697db3d99984760d98","_id":"loopback-component-sec@0.3.2","_shasum":"d18cc5562c3a51b1336f2d210244753a7070033b","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"d18cc5562c3a51b1336f2d210244753a7070033b","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.2.tgz","integrity":"sha512-RizGrg+orLvlruJUW/Ptazux0oqPFuq1NIFVIOrIagWxdnBnccK0Ckiee/Yo+dJNBd4fm5/bqzmTFbMMlcpCpA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFPM+guDXdTAhAeLxrSnTrNGRn9l+WGXnkKvBpsEt2P2AiEAq8wEMMsHk/6alPkVG+B6xfqBa7L5x/6XhhyFtMf6hEA="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.2.tgz_1483335806702_0.6399302259087563"}},"0.3.3":{"name":"loopback-component-sec","version":"0.3.3","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.4","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"a1ab2f8b552c85f2b0fe8c2af25eb46912ba1c63","_id":"loopback-component-sec@0.3.3","_shasum":"e6f4ae8d88230376f1d1a41d9e014f85ffe71a05","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"e6f4ae8d88230376f1d1a41d9e014f85ffe71a05","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.3.tgz","integrity":"sha512-Qvnt+fnDk115Ndp2bYJKlMhRCEvhhb21xffT5IfJAYfBxEc5lqgFtb5ppkNlBZt6dEQvNX1gvGuDDil1mO4ozg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUJAOqZyuYOFtTHJC7kY/V8ENgTmqApiF8lkERT/neyQIhAJAq6Bw2DnEoMHa4rskI5AJ+CcsN5jX2CAshKHgryXD3"}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.3.tgz_1483347536495_0.975575506221503"}},"0.3.4":{"name":"loopback-component-sec","version":"0.3.4","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.4","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"f26c3d27033ca54379dff8902f110855980ff0b3","_id":"loopback-component-sec@0.3.4","_shasum":"dd39238d6c91cb198aa6d753abd5b80ce6af67e7","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"dd39238d6c91cb198aa6d753abd5b80ce6af67e7","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.4.tgz","integrity":"sha512-njhegbIrWLexP9CqrKZK5Dz81i5SC0Z8E7fdOwPh0VfydFsJq1azhrscFDlfL1F+UEw9HJbGoZ5w9XnN7urQOQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF0QhsMUxN3fE0mo52fUxUmujgogvcg+E5/MPW0C0tSPAiEA3OWaKKqSx0BVMu78PV2xpyxN1Pvd0+YIeLzqh2njA88="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.4.tgz_1483443523050_0.2995855459012091"}},"0.3.5":{"name":"loopback-component-sec","version":"0.3.5","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.7","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"ffc06c938a2104234306df736bf434e64638229a","_id":"loopback-component-sec@0.3.5","_shasum":"4789e13bf7eb3e142ab3893eb5e6202c4255ef42","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"4789e13bf7eb3e142ab3893eb5e6202c4255ef42","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.5.tgz","integrity":"sha512-HnR5+Z+ZeXoeeW2eGLQfFpWW7UmvBmFqQjH0I0smJs14jFp6GrPggIGrIFLYpkmY5Im781bQ9dU8NIYTfTD2Fg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDbrsJKwCeNhpFwI/VWJ8wksfjG0/MM1lw0rVGeEt+8UgIhAK7HhWr03CdQjr/yVfPvwSGdTsIOQntKWpc+iRegmpLP"}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.5.tgz_1483447730443_0.2668546224012971"}},"0.3.6":{"name":"loopback-component-sec","version":"0.3.6","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.7","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"658f3260ca7f8c8e2d07bf949724f5a357381609","_id":"loopback-component-sec@0.3.6","_shasum":"24df3b1b1552edce85a84f56fac1c956ffc55ae8","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"24df3b1b1552edce85a84f56fac1c956ffc55ae8","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.6.tgz","integrity":"sha512-qvirqqq+y0Hu9LtfvAQu4vRY/gghcLfwLqJCnXkQAOvE6b8EybOmGk9XsnSS2DTLg1/LuPPxP5PJBeECN+YZkw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAJlLKMj9+xaKtW9u5MZot84UQeIJRC8nAvoD+k1ZPITAiEAz2+Yf0BFj7D4BKzCp5V9DmsOMvo3MQKjqPLrVBTkF4w="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.6.tgz_1483450670486_0.8717393220867962"}},"0.3.7":{"name":"loopback-component-sec","version":"0.3.7","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.7","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"ab46b221a18866c71387ac8c086966f905c4da73","_id":"loopback-component-sec@0.3.7","_shasum":"0738818b9695537d48279c7da8048b4a2a71f6ff","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"0738818b9695537d48279c7da8048b4a2a71f6ff","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.7.tgz","integrity":"sha512-RViP6AXdvkz8fMj1G4JnGLw2hF7zq/yWeiG/kmU14uv9koLl/VP1gpK2MZSuolCdm9hqajBt29aTcyRP8nwjvA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDdPDgRkJt0Nu4ptAAKsnYA99gIGz2jRTUaAa20vo5xrAIgBd3bSZS9FZk7RIYuhG+YHyFGK7dMVPBfbrZ0YJy4EcM="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.7.tgz_1483451350110_0.5938395943958312"}},"0.3.8":{"name":"loopback-component-sec","version":"0.3.8","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.7","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"b07619aac454850664df9820df01600bb056a2ce","_id":"loopback-component-sec@0.3.8","_shasum":"a686515adf84c1a86d103f6d59d710e3f5c09ced","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"a686515adf84c1a86d103f6d59d710e3f5c09ced","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.8.tgz","integrity":"sha512-xKJPG4S4EykeG9E4tea5awL28iv6vhzUT1jWKzNBOyFHqtqR5ldVG8wM0814gflHVBMMWXcfhQQjQ1o/TFRtBw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEVxdF5IBn6DwvjpAJI6WavkwfjwrdlchjPbkaIdq5OwAiEAyJtiqmfKrOz2xythCSnHlcpk+eqSI5Mw6pA0IjCYbN8="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.8.tgz_1483522030369_0.9249074577819556"}},"0.3.9":{"name":"loopback-component-sec","version":"0.3.9","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.8","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"d1434082751e2f143aed93f03db631b4b03e7db5","_id":"loopback-component-sec@0.3.9","_shasum":"cce4bc95ba9c55c20d63fe779a8f7f222044bd5c","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.2","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"cce4bc95ba9c55c20d63fe779a8f7f222044bd5c","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.9.tgz","integrity":"sha512-rKqpnTywxOsODOrvDvAEUjxs510sJpwqIWVTa3Z2gWyqka5Hqj6wtunoErDpY2/96sVqgCDEWC4+XxJ29l7a8Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBFAI6TPYPu0yNz89EWYyPKmsJ7w74hrIui8YwDS+Wk/AiEAzR3chWIkIJVRy+08tWC9iEZoDyR91Hwsa+E0c/ZozoQ="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.9.tgz_1483534006339_0.01717919879592955"}},"0.3.10":{"name":"loopback-component-sec","version":"0.3.10","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"arrify":"^1.0.1","bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.8","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"0ea7b2f81d6aeb20147d497b29bd2c2aff6a2e37","_id":"loopback-component-sec@0.3.10","_shasum":"1a92a1a66321886395aab3b7428eb95a2852d740","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.4.0","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"1a92a1a66321886395aab3b7428eb95a2852d740","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.10.tgz","integrity":"sha512-YyYRXDY/WlSGanCOtdQowGERXZ/Q+9il95aj8gdj+wg5LfBKnL0lscYdtZtvkwrq/6HhJKl3lEp8qsoRwD7l3Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCxWdxLvhCDX4kaLhML3f5i1vMRONGu8LYVcZv1LY61YAIgPqLeT12JpJs1bWEY/r4zARUk7O+xwFIJsgoCnsM+gG8="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.10.tgz_1483606818577_0.6193732721731067"}},"0.3.11":{"name":"loopback-component-sec","version":"0.3.11","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"arrify":"^1.0.1","bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.8","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"aef0946cb8e71010b72f4d5e1c08a8162bc66237","_id":"loopback-component-sec@0.3.11","_shasum":"e6ad3aa365dcaa259057c9c5eea7e4e66e20bfb2","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.4.0","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"e6ad3aa365dcaa259057c9c5eea7e4e66e20bfb2","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.11.tgz","integrity":"sha512-Q1NP9gQshSBz6ixm04Acob0vqK1SRSdbtoFkohQFLHr6+0VxU4afYVowylox/s5/BINk/fKZHhwrwwdfgYN8pA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDfzkGwl2UE4T+VmlPnolFZY0HF0q53MN1yXvk86aGxuQIhAL6pG9SGDGN7C+rDwtOrv1lBslQGb9cHRbvPuOnsxuP7"}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.11.tgz_1483675931284_0.21599470218643546"}},"0.3.12":{"name":"loopback-component-sec","version":"0.3.12","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"arrify":"^1.0.1","bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.8","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"ca4aace2375f583a86d4126acbaa631b21474a2f","_id":"loopback-component-sec@0.3.12","_shasum":"d6ba79b516149b90fcf66a0415d64ba918b9871e","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.4.0","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"d6ba79b516149b90fcf66a0415d64ba918b9871e","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.12.tgz","integrity":"sha512-rGYUgBEQvKjDYVI9pfyz2KaxzCTYEJqTQDWpHoHAwYtUE/RbXEqUhS/AEf/gk+wkGHcN+g3KYv+lZ72fpWUwZQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCKoFe3uUskosoBJqoFXKP+35xLI9z6i4mIwpYpMFJb3gIgX+sb0C0CPzgEQ3idzzMzy+wbslxeBGFvp/PbQXepA6E="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.12.tgz_1483710227931_0.2553466218523681"}},"0.3.13":{"name":"loopback-component-sec","version":"0.3.13","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"arrify":"^1.0.1","bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.8","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","needs":"^1.0.3","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"e86918cb9180752a471de185dd0f271037afe6cd","_id":"loopback-component-sec@0.3.13","_shasum":"b085a0f542d5e7fc77d54885ad29574bd130ad22","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.4.0","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"b085a0f542d5e7fc77d54885ad29574bd130ad22","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.13.tgz","integrity":"sha512-us78v4qM8h+plkKGxI4v2VCqdhoaXKiHH47oIboyS38TGslN3oxe0gua58tSKDDl1driRiKQmUBpEBvqY9SZSQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcRltQXY6C3ux54APiEC/zvSwR7zoGQHMluLobizTMawIgR1W8Z3hYPFQS7/f2shAWBEFqcxgHpizRnvG3+q+sMw4="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.13.tgz_1483778003817_0.3066418622620404"}},"0.3.14":{"name":"loopback-component-sec","version":"0.3.14","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"arrify":"^1.0.1","bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.8","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","needs":"^1.0.3","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"494e058f5828c5b2ebd953021d8ce3659cb4b03d","_id":"loopback-component-sec@0.3.14","_shasum":"bcee3eca896dc85e5202e43bb5a23e1ec1c4b5bc","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.4.0","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"bcee3eca896dc85e5202e43bb5a23e1ec1c4b5bc","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.14.tgz","integrity":"sha512-JFMFACgUHBTc508qwtXWqqIsPcnzw/dDML6SEerVOmZO8Pn/M5DugVz9xWpP77H2WTI9mcKkrGI+l1L4/JlCng==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEesrFjDa1iOt1OK5rDqlt5HdOnbgerr6ls3NnpiBppkAiEAyVoo1YtEmQl1v4a/ZR5r8xXTyAsANU6K4muvkL1iYYk="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.14.tgz_1483791234718_0.06484773033298552"}},"0.3.15":{"name":"loopback-component-sec","version":"0.3.15","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"arrify":"^1.0.1","bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.8","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.8.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^1.17.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","needs":"^1.0.3","nyc":"^10.0.0","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"4e3a9e4d16d348f1bb7b270b9db98e6202b7b9f0","_id":"loopback-component-sec@0.3.15","_shasum":"d6bba8623975e388a1aef1440b9db1ae27f18ca5","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.4.0","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"d6bba8623975e388a1aef1440b9db1ae27f18ca5","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.15.tgz","integrity":"sha512-DDy4BHx0y6lFNza+WpeZJdyD31RG3RB8ECIjvkDoN06sQIKVfp/0c9Pg608yLqd5LkcJj9T5fOwO03chm/ZB2w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEgvMQ4HgkXDnt4qNdYcIVVi/l9DnHUKqp8COqUey+41AiEAslD20ELbdR0mVwm92Oi6Fco+SNXDGoXLw9h9C+vvNgE="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.15.tgz_1484213137101_0.16755354148335755"}},"0.3.16":{"name":"loopback-component-sec","version":"0.3.16","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"arrify":"^1.0.1","bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.9","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.13.1","eslint-config-airbnb":"^14.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.9.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^3.0.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.1.1","mocha":"^3.2.0","needs":"^1.0.3","nyc":"^10.1.2","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"70923ec638071e3e9610ea10b2fab5f7a5866f44","_id":"loopback-component-sec@0.3.16","_shasum":"855a306195e3d59a1cb23826b66b9a2d839eb099","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.4.0","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"855a306195e3d59a1cb23826b66b9a2d839eb099","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.16.tgz","integrity":"sha512-3P6JXfSROnxzsNRjc59czLDB4g0Byir8iGJgpQ4cECXyplnu16qN5VfpJxXfHHx0W/pV3zzHT7wnPacaDE5S7g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICK0gHZO/hEMrhpDNiwWaBeIPHCPYRH+g7VSn1jS2/b7AiEAhXceBOe6S4pJBwaoNkR2CSuwA+lvJkPhZaXzQg8UmxI="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.16.tgz_1484812484554_0.3764234313275665"}},"0.3.17":{"name":"loopback-component-sec","version":"0.3.17","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"arrify":"^1.0.1","bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.3.10","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.14.0","eslint-config-airbnb":"^14.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.9.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^3.0.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.2.0","mocha":"^3.2.0","needs":"^1.0.3","nyc":"^10.1.2","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"14b5d8afe57f918f8818d629fd678341cf7cdc9e","_id":"loopback-component-sec@0.3.17","_shasum":"89b791f644d740b80dc71661fc23d90f3b9f1b9b","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.4.0","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"89b791f644d740b80dc71661fc23d90f3b9f1b9b","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.3.17.tgz","integrity":"sha512-WUHFqHj/W7LScsdHeYwm3F0hsnPq9z9Slm7ICt2o3Cx024ZJcyuGtcVWvH+8se0OW4rgqPThyDnn14qUrwYCTg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/4zWPmAlrfYhfVcIgfVhkl6hWyrFYOgn5hXv58Pt8gQIgPt3/dIyeIVbcujMxOAAaWig3uy7soBQeaP/ku37wdpY="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.3.17.tgz_1484981514968_0.6957851867191494"}},"0.4.0":{"name":"loopback-component-sec","version":"0.4.0","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"arrify":"^1.0.1","bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.4.0","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.14.0","eslint-config-airbnb":"^14.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.9.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^3.0.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.2.0","mocha":"^3.2.0","needs":"^1.0.3","nyc":"^10.1.2","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"67fb986433b64d2feeaa1bb374dddce3a623cca5","_id":"loopback-component-sec@0.4.0","_shasum":"a9d85a0fd521b119b0af9379805ef82601702b47","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.4.0","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"a9d85a0fd521b119b0af9379805ef82601702b47","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.4.0.tgz","integrity":"sha512-68ANjo+W0H/hQ9S0RKfnB31kJHLygzngCcGJMVPDoVm97GvxmVJwiJE4UhoeIc0Fnle3vVS32SYC0ngTDQl69w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDYuzOc0A3HQfxHFoGMs5TP9NwfJwDaQJvI0Q6J2AiwXQIhAL6uSjf6dCmmTvmhDW4ZZ1/jSAuWP/Smf5ClaU0z5Bul"}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.4.0.tgz_1484994874899_0.48468126519583166"}},"0.4.1":{"name":"loopback-component-sec","version":"0.4.1","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"arrify":"^1.0.1","bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.4.0","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.14.0","eslint-config-airbnb":"^14.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.9.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^3.0.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.2.0","mocha":"^3.2.0","needs":"^1.0.3","nyc":"^10.1.2","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"22302bfaeaf1f8c356ff3a850157bffc457034c2","_id":"loopback-component-sec@0.4.1","_shasum":"8c56e0f6966cbe169b1b4e2e279fe0c9517354b2","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.4.0","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"8c56e0f6966cbe169b1b4e2e279fe0c9517354b2","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.4.1.tgz","integrity":"sha512-1pyXlc2mrH3cD9tvHTnc5IRAof1HH8h96Hn0by7KCgn7bRfD56syB8A0D0kdxZHAdWp+4EnXEJUyGxyrWsEJ4g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDoT63uJ5Vao1MOuyd+BBQuyL5aCOVFsJcxLi49B14Y+AIhANE6+COLxBKCICFQVlGT0DIOf3Qkn0raxY/36mFoVp4+"}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.4.1.tgz_1485058943308_0.5820908609312028"}},"0.4.2":{"name":"loopback-component-sec","version":"0.4.2","description":"A loopback security component with scoped roles management and permission access control","main":"./src/index.js","jsnext:main":"./src/index.js","directories":{"test":"test"},"scripts":{"lint":"eslint src test","test":"npm run lint && nyc mocha test/**/*.test.js","coverage":"nyc report --reporter=text-lcov | coveralls"},"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"keywords":[],"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"license":"MIT","bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","dependencies":{"arrify":"^1.0.1","bluebird":"^3.4.7","chalk":"^1.1.3","debug":"^2.6.0","depd":"^1.1.0","lodash":"^4.17.4","nsec":"^0.4.0","strong-globalize":"^2.8.0"},"devDependencies":{"chai":"^3.5.0","chai-as-promised":"^6.0.0","cls-hooked":"^4.1.4","cors":"^2.8.1","coveralls":"^2.11.15","eslint":"^3.14.0","eslint-config-airbnb":"^14.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^3.0.2","eslint-plugin-mocha":"^4.8.0","eslint-plugin-react":"^6.9.0","loopback":"github:strongloop/loopback","loopback-boot":"^2.23.0","loopback-component-admin":"0.0.7","loopback-component-explorer":"^4.0.0","loopback-component-fixtures":"github:ttothaiss/loopback-component-fixtures","loopback-connector-mongodb":"^3.0.0","loopback-context":"github:josieusa/loopback-context#feature/cls-hooked-3","loopback-datasource-juggler":"^3.2.0","mocha":"^3.2.0","needs":"^1.0.3","nyc":"^10.1.2","sinon":"^1.17.7","sinon-chai":"^2.8.0","strong-error-handler":"^1.1.1","supertest":"^2.0.1","supertest-as-promised":"^4.0.2","xo":"^0.17.1"},"nyc":{"reporter":["lcov","text"]},"gitHead":"3aa2804d7e31e8f091eb9b8db6c0acd693fb88a8","_id":"loopback-component-sec@0.4.2","_shasum":"8b0e99d9ba4d008e9e79cce92629f5e5b7040486","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.4.0","_npmUser":{"name":"torworx","email":"torworx@gmail.com"},"dist":{"shasum":"8b0e99d9ba4d008e9e79cce92629f5e5b7040486","tarball":"https://registry.npmjs.org/loopback-component-sec/-/loopback-component-sec-0.4.2.tgz","integrity":"sha512-xeeZmwfiO4wjug2al9Pws5wxWbjnn6lJR4SU11cWdX8fOW3NumzY+QSMdQ4JEGLh+qFHlE3LmAAaFFY+LKarXw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC6ZkVJ4Jqyylb4Ff66agQ6jZPtZryzJd+Rwk+0TZ3HNAiEAvS+spnfVBfcbNrUQmIlmNtIkkcdhJW06fgrKM3lnMJo="}]},"maintainers":[{"name":"torworx","email":"torworx@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/loopback-component-sec-0.4.2.tgz_1485061902617_0.09322492685168982"}}},"readme":"# loopback-component-sec\n\n[![NPM version](http://img.shields.io/npm/v/loopback-component-sec.svg?style=flat-square)](https://www.npmjs.com/package/loopback-component-sec)\n[![NPM downloads](http://img.shields.io/npm/dm/loopback-component-sec.svg?style=flat-square)](https://www.npmjs.com/package/loopback-component-sec)\n[![Build Status](http://img.shields.io/travis/taoyuan/loopback-component-sec/master.svg?style=flat-square)](https://travis-ci.org/taoyuan/loopback-component-sec)\n[![Coverage Status](https://img.shields.io/coveralls/taoyuan/loopback-component-sec.svg?style=flat-square)](https://coveralls.io/taoyuan/loopback-component-sec)\n\n> A loopback security component with scoped roles management and permission access control\n\n### Introduction\n\n`loopback-component-sec` using [nsec](//github.com/taoyuan/nsec) enables you to add multi-tenant style access controls to a loopback application. \nIt enables you to restrict access to model data based on a user's roles within a specific context.\n\nThe main concept is borrowed from [loopback-component-access-groups](//github.com/fullcube/loopback-component-access-groups).\n\n`loopback-component-sec` provide a inheritable roles management and a row level access controller.\n\nThere are three types of access restrictions implemented in this component:\n\n__1) Role Resolvers__\n\n`loopback-component-sec` attach a dynamic [Role Resolver](https://docs.strongloop.com/display/public/LB/Defining+and+using+roles#Definingandusingroles-Dynamicroles) \nnamed `$sec` to the application. The Role Resolver is responsible for determining whether or not a user has the \nrelevant roles required to access data that belongs to a group context.\n\n\n__2) Query Filters__\n\nAn 'access' [Operation Hook](https://docs.strongloop.com/display/public/LB/Operation+hooks) is injected into each Group Content model. \nThis is used to filter search results to ensure that only items that a user has access to (based on their scoped User Role Mappings) are returned.\n\n__3) Row Level Secure__\n\nA model (Group or Group context model) 'access' operation hook or connector 'execute' operation hook according to database \nconnector is injected to add additional filter based on model permissions attached with `acl.allow()`.\nThis is used to filter search results to ensure that only items that a user has access to (based on model's permission lists) are returned.\n\n### How to Install\n\n1. Install in you loopback project:\n\n\t```sh\n\t$ npm install --save loopback-component-sec\n\t```\n\n2. Create a component-config.json file in your server folder (if you don't already have one)\n\n3. Configure options inside `component-config.json`. *(see configuration section)*\n\n\t```json\n\t{\n\t\t\"loopback-component-sec\": {\n\t\t\t\"{option}\": \"{value}\"\n\t\t}\n\t}\n\t```\n\n### Usage\n\n...Run one, or a combination of the following commands to lint and test your code:\n\n```sh\n$ npm run lint          # Lint the source code with ESLint\n$ npm test              # Lint and Run unit tests with Mocha\n```\n\nA sample application is provided in the test directory. This demonstrates how you can integrate the component with a loopback application.\n\nThe following group roles roles are configured in the test data.\n\n - **member**  \nread\n\n - **manager**  \nread, write\n\n - **admin**  \nread, write, delete\n\nThere are a number of test user accounts in the sample application.\n\n - generalUser\n  - (no group roles)\n - storeAdminA\n  - ($group:admin of Store A)\n - storeManagerA\n  - ($group:manager of Store A)\n - storeMemberA\n  - ($group:member of Store A)\n - storeAdminB\n  - ($group:admin of Store B)\n - storeManagerB\n  - ($group:manager of Store B)\n - storeMemberB\n  - ($group:member of Store B)\n\n\n### Creds\n\n* [mrfelton](https://github.com/mrfelton)\n\n### License\n\nMIT © [Yuan Tao]()\n","maintainers":[{"email":"torworx@gmail.com","name":"bitt"}],"time":{"modified":"2022-06-19T14:11:03.025Z","created":"2016-12-26T13:16:48.565Z","0.1.0":"2016-12-26T13:16:48.565Z","0.1.1":"2016-12-27T03:06:27.026Z","0.1.2":"2016-12-27T03:12:07.683Z","0.1.3":"2016-12-27T09:00:37.603Z","0.1.4":"2016-12-27T11:14:31.440Z","0.1.5":"2016-12-27T14:59:08.851Z","0.1.6":"2016-12-29T03:39:54.385Z","0.1.8":"2016-12-29T06:35:03.837Z","0.1.9":"2016-12-29T07:50:51.137Z","0.2.0":"2016-12-30T07:01:51.618Z","0.3.0":"2016-12-31T03:32:52.743Z","0.3.1":"2017-01-02T04:09:22.264Z","0.3.2":"2017-01-02T05:43:26.939Z","0.3.3":"2017-01-02T08:58:56.715Z","0.3.4":"2017-01-03T11:38:45.103Z","0.3.5":"2017-01-03T12:48:52.469Z","0.3.6":"2017-01-03T13:37:50.738Z","0.3.7":"2017-01-03T13:49:11.894Z","0.3.8":"2017-01-04T09:27:11.053Z","0.3.9":"2017-01-04T12:46:48.377Z","0.3.10":"2017-01-05T09:00:20.948Z","0.3.11":"2017-01-06T04:12:13.308Z","0.3.12":"2017-01-06T13:43:48.178Z","0.3.13":"2017-01-07T08:33:25.668Z","0.3.14":"2017-01-07T12:13:54.946Z","0.3.15":"2017-01-12T09:25:39.252Z","0.3.16":"2017-01-19T07:54:46.253Z","0.3.17":"2017-01-21T06:51:56.786Z","0.4.0":"2017-01-21T10:34:35.137Z","0.4.1":"2017-01-22T04:22:23.551Z","0.4.2":"2017-01-22T05:11:42.861Z"},"homepage":"https://github.com/taoyuan/loopback-component-sec#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/taoyuan/loopback-component-sec.git"},"author":{"name":"Yuan Tao","email":"towyuan@outlook.com"},"bugs":{"url":"https://github.com/taoyuan/loopback-component-sec/issues"},"license":"MIT","readmeFilename":"README.md","users":{"ganeshkbhat":true}}