{"_id":"@beonica/bn.core.config-helper-tool","_rev":"26-e39c2e0c7f4ff509217ffcc391623a2f","time":{"1.0.0":"2021-03-10T20:09:39.997Z","created":"2021-03-12T15:34:57.770Z","1.0.1":"2021-03-12T15:34:58.164Z","modified":"2022-04-04T18:28:37.727Z","1.2.1":"2021-03-16T14:38:29.842Z","1.2.2":"2021-03-16T19:20:49.423Z","1.3.0":"2021-03-17T01:26:56.853Z","1.3.1":"2021-03-17T02:24:05.727Z","1.3.2":"2021-03-17T02:34:39.866Z"},"name":"@beonica/bn.core.config-helper-tool","dist-tags":{"latest":"1.3.2"},"versions":{"1.0.1":{"name":"@beonica/bn.core.config-helper-tool","version":"1.0.1","description":"Config Helper Tool","main":"dist/index.js","types":"dist/index.d.ts","keywords":[],"author":{"name":"https://github.com/adrianobnu"},"scripts":{"debug":"tsc && node dist/app.js","build":"rm -rf dist/ && tsc","start":"npx tsc -w","format":"prettier --write \"src/**/*.ts\" \"src/**/*.js\"","lint":"eslint '*/**/*.{js,ts,tsx}' --quiet --fix","prepare":"npm run build","prepublishOnly":"npm test && npm run lint","preversion":"npm run lint","version":"npm run format && git add -A src","postversion":"git push && git push --tags","test":"jest --config jestconfig.json --detectOpenHandles --forceExit"},"repository":{"type":"git","url":"git+https://github.com/adrianobnu/bn.core.config-helper-tool.git"},"license":"ISC","bugs":{"url":"https://github.com/adrianobnu/bn.core.config-helper-tool/issues"},"homepage":"https://github.com/adrianobnu/bn.core.config-helper-tool#readme","devDependencies":{"@types/jest":"^26.0.20","@typescript-eslint/eslint-plugin":"^4.16.1","@typescript-eslint/parser":"^4.16.1","eslint":"^7.21.0","eslint-config-prettier":"^8.1.0","eslint-plugin-prettier":"^3.3.1","eslint-plugin-react":"^7.22.0","jest":"^26.6.3","prettier":"^2.2.1","ts-jest":"^26.5.2","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","typescript":"^4.2.2"},"dependencies":{"class-transformer":"^0.4.0","class-validator":"^0.13.1","dot-object":"^2.1.4","dotenv":"^8.2.0","redis":"^3.0.2","reflect-metadata":"^0.1.13"},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,tsx}":["eslint --fix"]},"gitHead":"d0ee3e076e496f4d2ded32a7a473ac5c758c421b","_id":"@beonica/bn.core.config-helper-tool@1.0.1","_nodeVersion":"15.11.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-fmWdrJmonFm6V2kwCXO7tfqpUbn9EAylLC7IDOqTbxZOR0uVLLS8eCkRMwkcGrLTINB1u0uFKqkU7ukS5ndomQ==","shasum":"bb3c157d41087a9aa5944396d21e562f5f9ad999","tarball":"https://registry.npmjs.org/@beonica/bn.core.config-helper-tool/-/bn.core.config-helper-tool-1.0.1.tgz","fileCount":17,"unpackedSize":20235,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgS4oiCRA9TVsSAnZWagAAOLgP/RIH161Cr9CbXb6p0+Wo\nyz8xgLlDv73f25uQTcM0THhxD53NhMQH9vM7Knhpo6dFWCUbNiQW94e6C+kl\nSOP4QUnpvOvvtTAOZuf9SxvB40ktM0SiW2zNchQ2vx3c9ylAFcZxsfcH2/CF\njHp2zYq64CAGxmPPXKXPS5j6a8Jk+yTOv+Bf/9DYY0IVlEEn3UrsQ5RpCXBI\nrtrX3OIvVp7dwVlr0w0uefoMkSAu8Q8/aw+Yry7vtUeXbUBtjPeUrF2g+46E\noTG6Fsimb20ROhxohDANXVGLXMjO1S8LMXqJZdeSqBU6sFOjJ6DKMqXoTwyE\nkzw8FvwZL9Rzwd/w5UMBfFrjaxvthK7XAyOcQ8R/jrPjjp7asn+9a2QB7a4U\nPJnXsGm9DQdJYsa0jCswisU3PWsvW1rJDdftyP6tlUyPaqYLaONVFk1r/IvY\nMyxs1cqVlVJTlZz/MMHXg+SfnzTYvR5a5ydhlTcho9iP1qCPWjr0shZay4Tf\n0C1jKr8e+pTJsj4GtqYmP9qFDFKJbt/mfZ2SCl0SHnYwKzdWGPkDRZ9+TPNL\n0lZxFZfKZBfbrjGKXE6ot1moMO4xBzrnC2lJsJkCrDgR7loNVwpRToOMSoM7\ngqbf+yBASWOusStwS5li1C5KAhQpl9Bc8U7Dyuc+fyTvVEGY6NuUnDFRLS62\nTZFB\r\n=khTb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDfmg/+5YwHANjn9ifVWWJk25HrLqVDcZn9RwuVw4KRcgIgf+2LVQY2Qs0mewLGytoqCeMsPKdM2oTrIiWQPaRzbmE="}]},"_npmUser":{"name":"adrianopt","email":"adriano.santos.junior@gmail.com"},"directories":{},"maintainers":[{"name":"adrianopt","email":"adriano.santos.junior@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/bn.core.config-helper-tool_1.0.1_1615563298006_0.7823891047925513"},"_hasShrinkwrap":false},"1.2.1":{"name":"@beonica/bn.core.config-helper-tool","version":"1.2.1","description":"Config Helper Tool","main":"dist/index.js","types":"dist/index.d.ts","keywords":[],"author":{"name":"https://github.com/adrianobnu"},"scripts":{"debug":"tsc && node dist/app.js","build":"rm -rf dist/ && tsc","start":"npx tsc -w","format":"prettier --write \"src/**/*.ts\" \"src/**/*.js\"","lint":"eslint '*/**/*.{js,ts,tsx}' --quiet --fix","prepare":"npm run build","prepublishOnly":"npm test && npm run lint","preversion":"npm run lint","version":"npm run format && git add -A src","postversion":"git push && git push --tags","test":"jest --config jestconfig.json --detectOpenHandles --forceExit","testing":"jest --config jestconfig.json --detectOpenHandles --forceExit --watchAll"},"repository":{"type":"git","url":"git+https://github.com/adrianobnu/bn.core.config-helper-tool.git"},"license":"ISC","bugs":{"url":"https://github.com/adrianobnu/bn.core.config-helper-tool/issues"},"homepage":"https://github.com/adrianobnu/bn.core.config-helper-tool#readme","devDependencies":{"@types/jest":"^26.0.20","@typescript-eslint/eslint-plugin":"^4.16.1","@typescript-eslint/parser":"^4.16.1","eslint":"^7.21.0","eslint-config-prettier":"^8.1.0","eslint-plugin-prettier":"^3.3.1","eslint-plugin-react":"^7.22.0","jest":"^26.6.3","prettier":"^2.2.1","ts-jest":"^26.5.2","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","typescript":"^4.2.2"},"dependencies":{"class-transformer":"^0.4.0","class-validator":"^0.13.1","dot-object":"^2.1.4","dotenv":"^8.2.0","redis":"^3.0.2","reflect-metadata":"^0.1.13"},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,tsx}":["eslint --fix"]},"gitHead":"fdccd9ef5716df143f77db20956a84b621b0bf29","_id":"@beonica/bn.core.config-helper-tool@1.2.1","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-OD6N14u7MawXghNJDcU4n8A28E1aAiAOsftuGls52Rav9n/FvL9NNEafJ4Fo98PLG5dkxIyt2WOSn5xBNkP0Hg==","shasum":"a8c77e2a7b384c39f05b8554efe6bed0d4e9064b","tarball":"https://registry.npmjs.org/@beonica/bn.core.config-helper-tool/-/bn.core.config-helper-tool-1.2.1.tgz","fileCount":23,"unpackedSize":34518,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUMLmCRA9TVsSAnZWagAAXvAP/3j/ik0qr/KmeD5s6z/e\n/oVi4yp2keB49azwf3oaTx/FkK8DMNIYwNG0L5IP6lDA1CmSrp+Nx+rKnP4t\n85ceKHhtFon2gNnGe7ID1bAs127O9szSoQQGKYVfUUqLC9tp8BIzRdhUbCgp\n1Doc/yDXV1EOvFv7x7k3oKv5zxbD0bkziOhy77NDrEIQi9BG0Qun/t8DNptq\nKLwiJd9TXyJG2K3USqzG6Yrq+KIB561Bpi1aYXA3vdwPrIA8dHiK5K4FLha6\nd/2Cx5VBZdCFJD3C5Wc70lRjFVmoc0acPESawGlyD/gF4namtnSvJGlD6TrZ\n213FCjaxYv6fqrcuB1cxLfzdZ6fQeDOHbvSkpLCmdR9h5cBLm4Wk8ZtVzKNq\n3kQcDKT9rlKHf8Fo+X1YbKh29nclmCqWwFpO+lTcD682yzuYdJr7Zo7NZjXi\nWbwijxWz2S/LMsCUCCF5EAGJ7Gl3mLG6Ef8bnRqZ63FdqYQM92dOpW1+0naF\ngQ+5hYml+ocL/EHqTnoURlAo9Kk7obTh94YD1wB4xtqLJJNqjL45D7tVgiwX\ntug3Y6+9wkWNK4OLR7us3Ej/CECX2HTVnzkddHXmLntEnET4fYsB6D8WjfMt\nPQ9nhpQ+AFgrzC4wjyL5gNjfdp6nBn+aPELEitaS5dwKOQRXRij7P9u3fyN0\nxDYO\r\n=nJ5k\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDm3VJhe84EmL9jX7yJmJKDodIR0gUntwdccJMGmGm24AIgOXd4yFAhwm21b7P6nWgxXR4KwJhcVSS4BARfPxamC+o="}]},"_npmUser":{"name":"pssdn","email":"bruno@usebeon.com"},"directories":{},"maintainers":[{"name":"pssdn","email":"bruno@usebeon.com"},{"name":"gusprado","email":"gusgprado@gmail.com"},{"name":"adrianopt","email":"adriano.santos.junior@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/bn.core.config-helper-tool_1.2.1_1615905509697_0.3188842249054056"},"_hasShrinkwrap":false},"1.2.2":{"name":"@beonica/bn.core.config-helper-tool","version":"1.2.2","description":"Config Helper Tool","main":"dist/index.js","types":"dist/index.d.ts","keywords":[],"author":{"name":"https://github.com/adrianobnu"},"scripts":{"debug":"tsc && node dist/app.js","build":"rm -rf dist/ && tsc","start":"npx tsc -w","format":"prettier --write \"src/**/*.ts\" \"src/**/*.js\"","lint":"eslint '*/**/*.{js,ts,tsx}' --quiet --fix","prepare":"npm run build","prepublishOnly":"npm test && npm run lint","preversion":"npm run lint","version":"npm run format && git add -A src","postversion":"git push && git push --tags","test":"jest --config jestconfig.json --detectOpenHandles --forceExit","testing":"jest --config jestconfig.json --detectOpenHandles --forceExit --watchAll"},"repository":{"type":"git","url":"git+https://github.com/adrianobnu/bn.core.config-helper-tool.git"},"license":"ISC","bugs":{"url":"https://github.com/adrianobnu/bn.core.config-helper-tool/issues"},"homepage":"https://github.com/adrianobnu/bn.core.config-helper-tool#readme","devDependencies":{"@types/jest":"^26.0.20","@typescript-eslint/eslint-plugin":"^4.16.1","@typescript-eslint/parser":"^4.16.1","eslint":"^7.21.0","eslint-config-prettier":"^8.1.0","eslint-plugin-prettier":"^3.3.1","eslint-plugin-react":"^7.22.0","jest":"^26.6.3","prettier":"^2.2.1","ts-jest":"^26.5.2","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","typescript":"^4.2.2"},"dependencies":{"class-transformer":"^0.4.0","class-validator":"^0.13.1","dot-object":"^2.1.4","dotenv":"^8.2.0","redis":"^3.0.2","reflect-metadata":"^0.1.13"},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,tsx}":["eslint --fix"]},"gitHead":"2862017c2bd230f3c4da846113d12f7f795819a2","_id":"@beonica/bn.core.config-helper-tool@1.2.2","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-bR8/bPjaNho5Vu7ZfjVQnZ+lVcQkxNtuPhcI6HL3C6rDak+imyZU+U3X1xX6vWII6EAn/50lyhFUpe7PR9Sb7Q==","shasum":"bbac1dff07c4f6f9207562cdfeb0a2ec09a98a74","tarball":"https://registry.npmjs.org/@beonica/bn.core.config-helper-tool/-/bn.core.config-helper-tool-1.2.2.tgz","fileCount":23,"unpackedSize":36410,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUQURCRA9TVsSAnZWagAAM04QAJ28/7pLEaputxaWTGVw\n7jMj7HoxhD3T5Oc7bAdXW5iQMyxjcQ3NVYxHr2mJzyWrbFDIURHS0qut6hwk\nYN6gJpcuTy9VQ2IeiYpkWuE3M32hHuYDOhwadPR2tlzx5AuMfNYyFHuAxoZb\nH5DvVJlPTJ0wGWzx2GdgG3uVLz7UQaGaxpZGAc1ubMaId8BKSYJecpcx+saE\n4IGOgK+4uCbGai0tJKC6URpods3Cd2DZgd+J8t2/fnDvkfjoEvYrl1Oka9Tm\npYHH+EM/Nk59OA61B8UgqAsyOURkwpnxUgsizHHjPJxzuwO8oFPA4+nY2i3w\nCniE/ljvyHu+dV1B6zkiOvvBJI189E4Xxods9obLQQ/+VQ0YBYXiIOqB5D4W\nvotNcPVo1OyREP4OMLbskLBY6rowQejWh5kE6n3ALJrBmmxu8maFJlQL7xyb\n2haFJxcHqLNYFq/Et90j9118N0FvDfKjSL6whXCJ3AF7F7aEvZtevMeazPMt\nplCmURgnAojBN2/qMev0p7afzRNb8z8NUoRQZn+bu3Wg0qZDUKd74GQTn7jU\nOsqCD9P6Laya0O5/nRSzJ0AuRdMmYWJAodK38zBrTm1XFRQMZDffXxGEk4uc\nY4IzU4ewSu0cVOgFF/l0UzE/9UtWPf4/mJc7a2prW59C8/MhVkRpJKg6YrgM\ndKdX\r\n=LK6O\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHlrosamDmxM1HFl8V13fZwcGAlzz34LTkvfRl9bxk8hAiEAyRohTaPpIYMjROyCQ1mdX9yLAC95kf++y4LMQ+RTpNc="}]},"_npmUser":{"name":"pssdn","email":"bruno@usebeon.com"},"directories":{},"maintainers":[{"name":"pssdn","email":"bruno@usebeon.com"},{"name":"gusprado","email":"gusgprado@gmail.com"},{"name":"adrianopt","email":"adriano.santos.junior@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/bn.core.config-helper-tool_1.2.2_1615922449225_0.1400771397710876"},"_hasShrinkwrap":false},"1.3.0":{"name":"@beonica/bn.core.config-helper-tool","version":"1.3.0","description":"Config Helper Tool","main":"dist/index.js","types":"dist/index.d.ts","keywords":[],"author":{"name":"https://github.com/adrianobnu"},"scripts":{"debug":"tsc && node dist/app.js","build":"rm -rf dist/ && tsc","start":"npx tsc -w","format":"prettier --write \"src/**/*.ts\" \"src/**/*.js\"","lint":"eslint '*/**/*.{js,ts,tsx}' --quiet --fix","prepublishOnly":"npm test && npm run lint","preversion":"npm run lint","version":"npm run format && git add -A src","postversion":"git push && git push --tags","test":"jest --config jestconfig.json --detectOpenHandles --forceExit","testing":"jest --config jestconfig.json --detectOpenHandles --forceExit --watchAll"},"repository":{"type":"git","url":"git+https://github.com/adrianobnu/bn.core.config-helper-tool.git"},"license":"ISC","bugs":{"url":"https://github.com/adrianobnu/bn.core.config-helper-tool/issues"},"homepage":"https://github.com/adrianobnu/bn.core.config-helper-tool#readme","devDependencies":{"@types/jest":"^26.0.20","@typescript-eslint/eslint-plugin":"^4.16.1","@typescript-eslint/parser":"^4.16.1","eslint":"^7.21.0","eslint-config-prettier":"^8.1.0","eslint-plugin-prettier":"^3.3.1","eslint-plugin-react":"^7.22.0","jest":"^26.6.3","prettier":"^2.2.1","ts-jest":"^26.5.2","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","typescript":"^4.2.2"},"dependencies":{"class-transformer":"^0.4.0","class-validator":"^0.13.1","class-validator-jsonschema":"^2.2.0","dot-object":"^2.1.4","dotenv":"^8.2.0","redis":"^3.0.2","reflect-metadata":"^0.1.13"},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,tsx}":["eslint --fix"]},"gitHead":"5a493b1e7a84bfa7268e3c9b66cbefe9a128975a","_id":"@beonica/bn.core.config-helper-tool@1.3.0","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-NyP42oJ0hoNTevYuBWBkwZCDr7v7nk9UhxnHTOgTm+nJA7tuG3uAW7QESjbcR3SvP590EJldVNFYSWS7Az7WPA==","shasum":"ca4dff1d4bdbfb18ad1dd7a999ebb3c237b59322","tarball":"https://registry.npmjs.org/@beonica/bn.core.config-helper-tool/-/bn.core.config-helper-tool-1.3.0.tgz","fileCount":23,"unpackedSize":37851,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUVrhCRA9TVsSAnZWagAA4YMP/2pdAM8zF+4b4PhCli0J\nHjLpJkKDCfVJHVITB4WXBexKQMboBHRIFX2Q0p2FjCaFDijxBbqRX0fBGjgD\noYYKHmfNe7VeCOXqOroGh/cH/8zg07qOuQG0uZO3mas+o7j7LdTy95nEfoXN\nfGJaLAjWR8SDhSUVJbz12BD78bb/wmgyP7g0gCu1BAjfhwBbke0aYMaoUlxO\n7i5XeF+1lujekNmX4W6cloK00X2Mlg25HCTAnTdOyk+CPW7Jg9HPvaq4Y+Jo\n/w0/qOJKH0X+6Og/L5MCKlcVQaU5zC36WQv4kbWelZPIIHcWE+8+t0fFqzQY\nfgSS474M5v9KRLuYCZnzGv411GqhHMMqLklIpCSP+M/CvlujPiVaN8dgQf73\nB2r+tGQ/MQtxQVfaSDwOFSOMqbBK0xNEm1t93G5X9XzNGI77tApQ/pnZ6DlB\nxXDPH7XmX4tVAZTDTOHfTDe+TYepXbRyO9PQoBcEUYepDgt+qulG0XPiSXh8\nPwg0x3AZkVnfI9m+UBdd9EQt12u6/y28Q86wN8je2tFj5A2ZfSEWiwwh7r5D\nulJ0Ngr/UPs3rf+Jc/zOSSma55k18on2ZNgut8XL3KXSWA56hboKu4yl+smG\nl6npxe7LhfIJ+kPyW6ivqT7iYACADdpRxZu4FK+g6E2FH/yC5GQ46eG3M1Hp\nPgQD\r\n=4y75\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC5U+bqWRu7B6ImPoJc6KFwy1q24ocWdWX/yKQjNjoccQIhAJxkIFloDhCIDb6zUncU263lbLfdOa+EDS3yEFf33fx5"}]},"_npmUser":{"name":"pssdn","email":"bruno@usebeon.com"},"directories":{},"maintainers":[{"name":"pssdn","email":"bruno@usebeon.com"},{"name":"gusprado","email":"gusgprado@gmail.com"},{"name":"adrianopt","email":"adriano.santos.junior@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/bn.core.config-helper-tool_1.3.0_1615944416675_0.21191043434672596"},"_hasShrinkwrap":false},"1.3.1":{"name":"@beonica/bn.core.config-helper-tool","version":"1.3.1","description":"Config Helper Tool","main":"dist/index.js","types":"dist/index.d.ts","keywords":[],"author":{"name":"https://github.com/adrianobnu"},"scripts":{"debug":"tsc && node dist/app.js","build":"rm -rf dist/ && tsc","start":"npx tsc -w","format":"prettier --write \"src/**/*.ts\" \"src/**/*.js\"","lint":"eslint '*/**/*.{js,ts,tsx}' --quiet --fix","prepare":"npm run build","prepublishOnly":"npm test && npm run lint","preversion":"npm run lint","version":"npm run format && git add -A src","postversion":"git push && git push --tags","test":"jest --config jestconfig.json --detectOpenHandles --forceExit","test:watch":"jest --config jestconfig.json --detectOpenHandles --forceExit --watchAll"},"repository":{"type":"git","url":"git+https://github.com/beonica/bn.core.config-helper-tool.git"},"license":"ISC","bugs":{"url":"https://github.com/beonica/bn.core.config-helper-tool/issues"},"homepage":"https://github.com/beonica/bn.core.config-helper-tool#readme","devDependencies":{"@types/jest":"^26.0.20","@typescript-eslint/eslint-plugin":"^4.16.1","@typescript-eslint/parser":"^4.16.1","eslint":"^7.21.0","eslint-config-prettier":"^8.1.0","eslint-plugin-prettier":"^3.3.1","eslint-plugin-react":"^7.22.0","jest":"^26.6.3","prettier":"^2.2.1","ts-jest":"^26.5.2","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","typescript":"^4.2.2"},"dependencies":{"class-transformer":"^0.3.1","class-validator":"^0.13.1","class-validator-jsonschema":"^2.2.0","dot-object":"^2.1.4","dotenv":"^8.2.0","redis":"^3.0.2","reflect-metadata":"^0.1.13"},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,tsx}":["eslint --fix"]},"gitHead":"793822b9b9de4d4278923dfd36cc8d137f4543c5","_id":"@beonica/bn.core.config-helper-tool@1.3.1","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-1Inis/LpQIGjD4cxjzeUyRb7KWQDg3oRF68jBBG0cF2Uj6iaNP7Nl1B5qQDvP1T2wlUXbTkXKRL1B4D89Qriag==","shasum":"999e85e1eb60156e66026e56941096a845352d19","tarball":"https://registry.npmjs.org/@beonica/bn.core.config-helper-tool/-/bn.core.config-helper-tool-1.3.1.tgz","fileCount":23,"unpackedSize":37877,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUWhGCRA9TVsSAnZWagAAiV0QAJHC+9/v4naFEVOeC2gn\nzGc8CF2qVO0SN/z56etPX0pi40aHnn0H0tw0bWXkWaS2uEtd3FixCjpOgXZV\n9EpC28ZFn/WnwwmSiSDr08c9vA0Ni6Iz0qCeF99V5rs6Mw5h6U8LPn1O2ubk\ngoFTR6IpA2d50ilS1zBQrjUcB9zlNe1MyQrGzyE7nJg1R1fJlRMh1uLc5dXy\nhpJsd2HCY3/CHEyz8KCGRt6YZvD5M11t2BRk7ojMecgJw0vn/6E0eI4spB2i\njj276fr9GFRKgOH1aOmYmDTyOBgbFGUjB7bfrrxTx7/5B7Gz/PHUQLYGTmrS\nfbnmSQu1GZD9UFcwd59mtsX/gbUKnSOV/xKNPZ37biylsR3M4Df0wpAEThRC\nV5hBd/FqozzfYbMXqK409zukJGhLcU2n7Q1DtNWTFagFOafXpZIQBn14EojS\nqipRGs0cdOSMrxEeT6q57+rqDd5UdV2iIspz/ayyBxYsnXPIuyXYT9mrSTIE\nwJ2ka/xN2pukQhT4GV5fWwhLHLAl4AikEGebUA0CyS0c1YjUpUGCg8w05BVF\nCpPnOb2eZPUXTx90R9nlaQIRHVYa02jfaNT3ahUcL1V/NtYIqgH2L4mYy7rz\n+7nVpPfzppxBBBgEcl/7elsWwVg+LsWKAkJ55Zfek+/qXzITXqs7Xssr16mD\nnN0K\r\n=dW8v\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDsM/UvhFBW7Zc0Kgtimqzqx8wBh7NT7eMViqo+tmooXAiB+sefhSl+y8+iYq6ReMRBxulDBJDC63VbSqtNZkrsOqg=="}]},"_npmUser":{"name":"pssdn","email":"bruno@usebeon.com"},"directories":{},"maintainers":[{"name":"pssdn","email":"bruno@usebeon.com"},{"name":"gusprado","email":"gusgprado@gmail.com"},{"name":"adrianopt","email":"adriano.santos.junior@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/bn.core.config-helper-tool_1.3.1_1615947845568_0.21190014177176764"},"_hasShrinkwrap":false},"1.3.2":{"name":"@beonica/bn.core.config-helper-tool","version":"1.3.2","description":"Config Helper Tool","main":"dist/index.js","types":"dist/index.d.ts","keywords":[],"author":{"name":"https://github.com/adrianobnu"},"scripts":{"debug":"tsc && node dist/app.js","build":"rm -rf dist/ && tsc","start":"npx tsc -w","format":"prettier --write \"src/**/*.ts\" \"src/**/*.js\"","lint":"eslint '*/**/*.{js,ts,tsx}' --quiet --fix","prepare":"npm run build","prepublishOnly":"npm test && npm run lint","preversion":"npm run lint","version":"npm run format && git add -A src","postversion":"git push && git push --tags","test":"jest --config jestconfig.json --detectOpenHandles --forceExit","test:watch":"jest --config jestconfig.json --detectOpenHandles --forceExit --watchAll"},"repository":{"type":"git","url":"git+https://github.com/beonica/bn.core.config-helper-tool.git"},"license":"ISC","bugs":{"url":"https://github.com/beonica/bn.core.config-helper-tool/issues"},"homepage":"https://github.com/beonica/bn.core.config-helper-tool#readme","devDependencies":{"@types/jest":"^26.0.20","@typescript-eslint/eslint-plugin":"^4.16.1","@typescript-eslint/parser":"^4.16.1","eslint":"^7.21.0","eslint-config-prettier":"^8.1.0","eslint-plugin-prettier":"^3.3.1","eslint-plugin-react":"^7.22.0","jest":"^26.6.3","prettier":"^2.2.1","ts-jest":"^26.5.2","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","typescript":"^4.2.2"},"dependencies":{"class-transformer":"^0.3.1","class-validator":"^0.13.1","class-validator-jsonschema":"^2.2.0","dot-object":"^2.1.4","dotenv":"^8.2.0","redis":"^3.0.2","reflect-metadata":"^0.1.13"},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"*.{js,ts,tsx}":["eslint --fix"]},"gitHead":"6c54521e00e27417beb5bb86796b9389fddb5bb3","_id":"@beonica/bn.core.config-helper-tool@1.3.2","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-QA4BbDmqikFtEj8fwLqkCRSrVAc9sZ93n5FgihJ2WGY8vltktkpaXK7hkrFUVpml1F83xp86i5tGP28sCZCnxQ==","shasum":"9680d8de55f3f415533f9f1749f3eb165a2f4402","tarball":"https://registry.npmjs.org/@beonica/bn.core.config-helper-tool/-/bn.core.config-helper-tool-1.3.2.tgz","fileCount":23,"unpackedSize":38263,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUWrACRA9TVsSAnZWagAArAwP/0BukPxD3fRrk68qgEEp\nufdI8h+5beKA4z5bVb3C5UPuYDbymY3DoC1QyOw5GE5+Xoz6q/MOaY6hHf8l\nCsnzW4VgKf7lQVrqe7hQJhabSPXjSHEwwXMzNoyGs1uD7QAI5SWc8qaBGanZ\ntjts9mceUoinGQjhDXVy04wg7LfwPaC1qTgclJL8CaC6RjDgNruFgAMjov34\nqIzcyxvTgJMSLWO6Fuhsp4obcoxNG7Gpx9QbSDcmEknr55WuyNp7UExnFFx1\nbV/jd5QHyASs4z1+vK+zaZTxM/MfgBD5qSUxPXbwtOU9bXU7mRMy62lguSB3\nyo/nAbuIshrE9zY2ty6XmRltIYZXPwjJKdRiBuJPDI1kHORW/mLeJtYqwQBx\nReH6JWgJGjep9683haKzLdg/JikJxl03Zb3qknbHlXKd9WsO6xn3JAPbc5gB\nYCI6oALgct+vRmvAf/a/xAk/t4s4v+S4TScfhBUaHQwkkPjWuDmSEqwkN1AZ\n3YcOXCmLQ7mpwqZfpKJXBzToSMQH/O5RbPyUyDUe5TtrbQwOyAICkTZUDAog\nE3Zo3/TEIeagwRKPu1K14WEcdEcSdIyKOG4fVsMC8KyBh6qQFIky1wixtBxE\nfVS7JbDvr2te6FqOFlrl9ZlAaVd7i5is1UL5n7d5WpiE9KM+UsddqOr6CkPM\nTuyn\r\n=DiIP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDvKoe0OVcZRaZZZVb+1Zvt7yXiUFxqofj8Gqr2t8NOeAiEAqoXqR7f3fUp4P2iaEPDiEtASEimYKOegUDNLaO+2K7s="}]},"_npmUser":{"name":"pssdn","email":"bruno@usebeon.com"},"directories":{},"maintainers":[{"name":"pssdn","email":"bruno@usebeon.com"},{"name":"gusprado","email":"gusgprado@gmail.com"},{"name":"adrianopt","email":"adriano.santos.junior@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/bn.core.config-helper-tool_1.3.2_1615948479642_0.4581229747842608"},"_hasShrinkwrap":false}},"maintainers":[{"name":"pssdn","email":"bruno@usebeon.com"},{"name":"gusprado","email":"gusgprado@gmail.com"},{"name":"adrianopt","email":"adriano.santos.junior@gmail.com"}],"description":"Config Helper Tool","homepage":"https://github.com/beonica/bn.core.config-helper-tool#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/beonica/bn.core.config-helper-tool.git"},"author":{"name":"https://github.com/adrianobnu"},"bugs":{"url":"https://github.com/beonica/bn.core.config-helper-tool/issues"},"license":"ISC","readme":"# bn.core.config-helper-tool\n\n## Installation\n\n### Copy the env files\n\n```\ncp .env.example .env\n```\n\n### Install NPM\n\n```\nnpm install\n```\n\n### Run\n\n```\nnpm run start\n```\n\n### Run tests\n\n```\nnpm run test\n```\n\n# Install plugin in a service\n\nAdd this plugin and class-validator to the project with NPM\n\n```\nnpm i @beonica/bn.core.config-helper-tool\nnpm i class-validator class-validator-jsonschema\n```\n\nCreate a class for each scope with all configs of the service using the validations and types described in the [class-validator plugin](https://github.com/typestack/class-validator#readme). Additionally, add [JSON Schema](https://www.npmjs.com/package/class-validator-jsonschema) definitions to better describe your data models.\n\n```\nclass TenantConfig {\n    @IsString()\n    @Length(10, 20)\n    @JSONSchema({\n        description: 'The title attribute',\n        format: 'text',\n    })\n    title: string;\n\n    @IsString()\n    @Contains('a')\n    @Length(10, 20)\n    text: string;\n\n    @MaxLength(20, {\n        each: true,\n    })\n    tags: string[];\n}\n```\n\nIn the project main file, call the plugin passing the service name, a config class and the Redis String Connection.\n\n```\nconst configs = new ConfigHelperTool('SERVICE_NAME', new TenantConfig(), {\n    redisConnectionString: REDIS_CONNECTION_STRING,\n});\n```\n\n## General\n\nIn the set() and get() method, always use a [dot notation](https://github.com/rhalff/dot-object).\n\n```\nawait configs.get('default','tags.0');\nawait configs.set('tenant2','param1','A');\n```\n\nThe methods getAll() always return a object formatted in dot notation.\n\nThe methods that handle sets relates directly to Redis defautl set commands, except for the action commands, like sadd, srem, which response is translated to booleans.\n\nAvoid using dot notation on set names.\n\n## Methods\n\n### describe()\n\nConverts data model definition into OpenAPI-compatible JSON Schema. Usefull to describe model definitions to APIs and frontend apps.\n\n```\nconst configs = new ConfigHelperTool('SERVICE_NAME', new TenantConfig(), {\n    redisConnectionString: REDIS_CONNECTION_STRING,\n});\n\nconfig.describe();\n```\n### setAll(scope:string, values: object)\n\nIn this case, the service have to fill the \"ServiceConfig\" class and pass to this function.\n\n```\nlet defaultConfig = new TenantConfig();\ndefaultConfig.title = 'My Service Title';\ndefaultConfig.text = 'Used to make something';\ndefaultConfig.tags = ['a','b','c']\n\nawait configs.setAll('default',defaultConfig);\n```\n\n### getAll(scope:string)\n\nThis method return all configs setted in dot notation for the scope\n\n```\nawait configs.getAll('default');\n//Response\n{\n    'title': 'My Service Title',\n    'text': 'Used to make something',\n    'tags[0]': 'a',\n    'tags[1]': 'b',\n    'tags[2]': 'c'\n}\n```\n\n### set(scope:string, key:string, value:string)\n\nThis method set only one property for the scope\n\n```\nawait configs.set('default','text','Changing Text Property');\nawait configs.set('tenant0','text','A+A');\n```\n\n### get(scope:string, key:string)\n\nThis method return one config in dot notation\n\n```\nawait configs.get('default','title');\n//Response\n'My Service Title'\nawait configs.get('tenant0','text');\n//Response\n'A'\n```\n\n## Dealing with sets\n\nA Redis Set is a list of items, on wich we could store, move, delete and check if given is a member.\n\nAll sets must exists under an unique key, the set name. Unlike the get () and set () methods, where you specify a scope, a parameter name and a value, when dealing with sets you specify a scope, the name of the set and the name of the item - which must be a string.\n\n### push(scope:string, set:string, item:string)\n\nThis method adds an item to set, then return true.\n\n```\nawait configs.push('default', 'colors', 'blue');\nawait configs.push('default', 'colors', 'red');\nawait configs.push('default', 'colors', 'yellow');\n\n//Response\ntrue\ntrue\ntrue\n```\n\n### remove(scope:string, set:string, item:string)\n\nThis method removes an item to set, then return true.\n\n```\nawait configs.remove('default', 'colors', 'blue');\n//Response\ntrue\n```\n\n### members(scope:string, set:string)\n\nThis method returns an array containing all set members.\n\n```\nawait configs.members('default', 'colors');\n//Response\n['red', 'yellow]\n```\n\n### exists(scope:string, set:string, item:string)\n\nThis method check if given item is present on set. Returns boolean.\n\n```\nawait configs.exists('default', 'colors', 'blue');\n//Response\nfalse\n\nawait configs.exists('default', 'colors', 'red');\n//Response\ntrue\n```\n\n### length(scope:string, set:string)\n\nThis method returns set cardinality - its length.\n\n```\nawait configs.length('default', 'colors');\n//Response\n2\n```\n\n## Publish in NPM\n\nAlways change de package version in package.json\n\n```\nnpm login\nnpm publish --access=public\n```\n","readmeFilename":"README.md"}