{"_id":"@bradenhc/client-config","_rev":"6-37d7a305910f07de47a72b460405514b","name":"@bradenhc/client-config","dist-tags":{"latest":"1.1.0"},"versions":{"1.0.0":{"name":"@bradenhc/client-config","version":"1.0.0","description":"Client configuration library for single-page web applications","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/bradenhc/client-config.git"},"keywords":["react","config"],"author":{"name":"Braden Hitchcock","email":"developer.hitchcock@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/bradenhc/client-config/issues"},"homepage":"https://github.com/bradenhc/client-config#readme","gitHead":"f2d70ceccdd723535b840588dfdab61f88f38ed2","_id":"@bradenhc/client-config@1.0.0","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"bradenhc","email":"developer.hitchcock@gmail.com"},"dist":{"integrity":"sha512-DCbIN/LAc6RNpkb/IlRLkYfQMQtB6FNcA5Zgi4Lwidp0euvpq9uNMUpXOraSXwF6Kqtfr8dKv5V6btcOSvt8XQ==","shasum":"edb20e86366b200d5bb3978f8c37c762cc3bfb72","tarball":"https://registry.npmjs.org/@bradenhc/client-config/-/client-config-1.0.0.tgz","fileCount":5,"unpackedSize":6676,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcJt7qCRA9TVsSAnZWagAAKgIP/idEXK1acsVhDd2lmdZe\nANcAF3YRxg/hX1xAYCAMHmMjTO4cd/tOddYtf7cr96UNmORGxD3nA0W0W5xK\n4yF46CHhyuCYighqOxHjiubAcSdRVN0i+vRZvmHpHaFYpUWrQ8GgfyDDYlAK\n4ChyoImsFSin9wDFuNq6N0ixF/Vjh6s6Xwgsy8qE4YEfrcubFUcAcImukLRZ\nfAqWReXXaxW2O6SAjfrYJkkZP/1TLibi8uPEAzIlP1+p2ppsN0v5OJdEDoHO\nWlTr2FCpArBoKeZRk/Fw2ly4OrPPK7BIka5zcpJbe6SjCl/SPxWRXbAhlAU3\nnFZp4YqEKGMUFlJK+R6DyoyFP+XUQPmL/ANbpp+QY2f/LvItJlCQpw4c5z1I\nNuH6GEncS48lrFNehhvC52s6ravySyVa71kZ7smnvugwOzZf6BbAYplUnRBQ\n16XUVn61YEoauzY3WGOvbXk31zipgB96yQKVquoXgm+QnfbA/tqQr/wDoVH0\nj8oYJVTeHU0QJFD3vnJcx+oDxTYCATthKgbsOdsdFpN3TwUrH/t2WTuLVRSJ\ndwmvdLt5qK2NfZYt6J9QPoWi0AbehC5CCjrh6kdVRJ3ibsgE4NQDfHB/e5z2\nafmpoWMrqY+Emb+qL9jYieOH4U6nCf1diOHGxh4FzC280h5AdyNmL8wH56tC\nMp7k\r\n=Aoza\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDnpGsFFw/ySji2VRSlzj/NpshU1pvsFatdGdq2NsnTBAIgXrN0kOp+GsMOZdk+NxQ1Z6nzL/y9axWpYZ0/9Ysm9z4="}]},"maintainers":[{"name":"bradenhc","email":"developer.hitchcock@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/client-config_1.0.0_1546051305821_0.11049305436350787"},"_hasShrinkwrap":false},"1.0.1":{"name":"@bradenhc/client-config","version":"1.0.1","description":"In-memory client configuration library for single-page web applications","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/bradenhc/client-config.git"},"keywords":["react","config"],"author":{"name":"Braden Hitchcock","email":"developer.hitchcock@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/bradenhc/client-config/issues"},"homepage":"https://github.com/bradenhc/client-config#readme","gitHead":"b94dd797cedf4b45506a7ff1ed160cec3707084f","_id":"@bradenhc/client-config@1.0.1","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"bradenhc","email":"developer.hitchcock@gmail.com"},"dist":{"integrity":"sha512-ZPRz/AihzlwxOkM2y2vW1Lzolsj6/ikW+RE9as4OLx9OwIgb2xtKTpoRf3ubypwDgeEBWqAC8c+kLoWsbt7yeg==","shasum":"0d83e1fc278cca231098ade68506cbd4ad2d8b54","tarball":"https://registry.npmjs.org/@bradenhc/client-config/-/client-config-1.0.1.tgz","fileCount":5,"unpackedSize":6701,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcJuJACRA9TVsSAnZWagAAhBEP/A+Nl/mpOEKwlTBdLOPl\nG+SD35HhyMYi05BHv6rW4C2yZYNvust0UpfyXOf8GlYTInM1o0rMnMmaxhO3\nYpLV5UPBxW4GbThIrnmvzEwHeKDXOmIjo/GXToec5aoxjCbNA6iNMKwiEnOr\nCwQcf3u2k6tcc6i4vtfxp6mfWwznKl1O5e+7CKXr7YrVJ+MIwDE9ylDDahmE\nge2Ed/xMf06jJDCcBu30NyyGoWk9fZNhfPY78du4r7NzHmfcvZWYavqFr1Ge\nrneL53sPX9PjvZ4CM+x8RIseRuDi2jNbN24eKGgnoXtmjtUTz83Jud4R7+0j\nWeMOr99etKs6O8uJe3F3LLkRXBcI3X8oXYaoeawq+9McbRW0kR6RVYoRPWNQ\nTjIBxbuRnSlLEiGm0dZrO7JwMfPa1Wb7spMxVv1XxsiULbWQWXcGe8hRIFwV\nr/COLrHfjfjarFKE+st0jQZwO59fjQx/WdDfBBvhZzoDyE/tC6Zx94T2hn/b\n/G9CcIXUmmQUQP0D2zgh5vjeKhVT0wYcgHqbir1RL2DYjSBo6G+Qweg+FBLH\n8TNbbbHfOmGd0GaDEZrwZHsJ6TNx4K3HDaTlHRFaU746fhjUD/cMNuw1Cks+\nZahe9UKUqm/1DeYzBZbcxe/xwvtM/4sVFgsko0oh3rKErR+K9Lye/wzK7fL4\nNs9F\r\n=8IVZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDbFRoz+MOZrgjmvZRqwuBpz23hrkutAiPK0rPmlMxCHgIgGwkx994u4jsY5Ah953nUDw8rj99bZC41qquUTe2ZOaU="}]},"maintainers":[{"name":"bradenhc","email":"developer.hitchcock@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/client-config_1.0.1_1546052160268_0.42250258514539163"},"_hasShrinkwrap":false},"1.0.2":{"name":"@bradenhc/client-config","version":"1.0.2","description":"In-memory client configuration library for single-page web applications","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/bradenhc/client-config.git"},"keywords":["react","config"],"author":{"name":"Braden Hitchcock","email":"developer.hitchcock@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/bradenhc/client-config/issues"},"homepage":"https://github.com/bradenhc/client-config#readme","gitHead":"41f083a8b6dce4792628c3e098c325a8aaf977ea","_id":"@bradenhc/client-config@1.0.2","_npmVersion":"6.5.0","_nodeVersion":"8.12.0","_npmUser":{"name":"bradenhc","email":"developer.hitchcock@gmail.com"},"dist":{"integrity":"sha512-qv8KENb38+fI8ykp2g/wb35FHt0PJ/WrnADw432B8eVU/7bzAjMhQ6LZlYiQi2XNB6xfyutScQaKAGvN/5nQRQ==","shasum":"b2066d2a135014e5c52b2d39000a8a3918f2b4f1","tarball":"https://registry.npmjs.org/@bradenhc/client-config/-/client-config-1.0.2.tgz","fileCount":5,"unpackedSize":6783,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcQUaTCRA9TVsSAnZWagAAGbwP/2CX8RzJQFLwtJ+WPh9X\nossKFcWQXbvNSJn8VbQv2bP4bNIc/wfB0Trw9t5u5ckh66GFejNE+o2X9+4j\nyOSWL0typvK9nIXypRJ67b+aAop9Ysix0YvjDZT51xv+lDzRsXWFsI/qtDJQ\nnOxzfyBQ2hWNbBt5B2vlRTT7RIXtarHVHuiTRW6+s/38OsySBFyGr5ovXfVx\n9M6wZQVlLFlDjKNaGe83XvtDPSFkf7UW8fkyfIH/VSW0mtIlWupmqLeWnLRl\nGX4CHHjHnpd5H+TzCBjebqkV5ONsr/iuMSbBdK97XjUonS0VtRIZ2kk7FrpI\neOkm+iLyNR4OpSw0Pt5yzImBw8r56G0WLKApE6tsX+kwkmyJwmPJgV2UiAtn\nsoAX8c+XHJQqynFb0BNBVLlUWOYx6fBrBQJynQ7SCVa0QHrP+99KfWjft0xu\nh7hr8TQi95QN6kMzH9bfD97ziLItFZZNhHUCK9APsxePlV2j1Ddl6lphetg4\n+aa7RFuP2tGWyTYdsWVOduCfCrgqMi2Yk+soZ3eEz1rGFZEPb+zI7/fDcpis\n6+WUdJR0Fo43L9faoS4aWppYKePSA5U+uamOCWXBkZnk7FcGzN+KtLeKa98H\nA27Bl6hwG3ZG0MjwLBVUoW5+i728+w9m3g325U1fQSKQr41fcAtH8DGcqeU1\n/JZe\r\n=fU9J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDU/Cd4+Ua17KB7XLntH4TWBQFs/jeabne0cKfx/InK9wIhAKRYO4Gqf6PTcXrQY7hAyAClNFr8HAA1BhtmQWufohiz"}]},"maintainers":[{"name":"bradenhc","email":"developer.hitchcock@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/client-config_1.0.2_1547781778392_0.10778854800868576"},"_hasShrinkwrap":false},"1.0.3":{"name":"@bradenhc/client-config","version":"1.0.3","description":"In-memory client configuration library for single-page web applications","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/bradenhc/client-config.git"},"keywords":["react","config"],"author":{"name":"Braden Hitchcock","email":"developer.hitchcock@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/bradenhc/client-config/issues"},"homepage":"https://github.com/bradenhc/client-config#readme","gitHead":"d6c000c916b9bc73c156b8394fdfab6c37b724c6","_id":"@bradenhc/client-config@1.0.3","_npmVersion":"6.5.0","_nodeVersion":"8.12.0","_npmUser":{"name":"bradenhc","email":"developer.hitchcock@gmail.com"},"dist":{"integrity":"sha512-aGVKZmN4+432a2nCPWPKItcUZptfQtX6dXUWeZNUD5pgSDyBMdyyOdLYM/t7UotyV6joEVYmlG/RyFbftuvC7w==","shasum":"f1f2c062f4a7234fc0fcc9ada2635f35582c48c5","tarball":"https://registry.npmjs.org/@bradenhc/client-config/-/client-config-1.0.3.tgz","fileCount":5,"unpackedSize":7282,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcQhAzCRA9TVsSAnZWagAAFYIP/jbRkrHWZsuPcbiFxsiS\n7ZN4IR3OhCYrgC4Xmkoj/HTGF/a+PbtGtvnqWqjO6c3ZWRd9NSA5xxRUYxpo\neUEXDdjpveLWAsgM+/E+BacBQlCtojMd/OCZbZzy9y+lqPNyKiyG59zZ+M7M\nJSZbnDbpBB6bA82ZcXv3vf/z6cmIGMmTDvCE49h0s9EUZcmCEU3OpOAExzD8\nHjQWbFgSlvXRgN7VEVfOvEjjCV4GIm/RPsTPXqMB0jHdvQhVPgzGX2IRoA12\nncwmVqr1SSqjKjwnZqDtZeZKfHJ0bon912GhmeDW/U94rwAESI4Doi17eWMP\nSSEOR5wLuvyF3nDtc1QaX/aDpA5ymdW4tzjjyhyquu5g81apB/tQSFqn8FrX\n5z2mKvhMfCEpp82w4WWUHO6d/hxuHRV4W+zIEfQ1DDhQG3t4itzplToOM8nz\n8TBURLfOhtnOpH+WMAKrvtwD2IgLNjiKpoIOvpB66nZfelaiusJorSUsFnp/\nETlJByCrXEfWO/9MFFjhS6i19mf88pK626BYXrBqJx78Z6DRtsjbgmlRheXf\n5Q967GGX6Ie+Th7KTjSynayCac97Hp5Aho30u6ldkJNNiFhuEI83lhRmmQzT\nmaq050qWZJMcnBchTyIGm4+ZFHl/XabMUchnvHTa2SSmdPozSW2B7Ha/VygR\nsPg0\r\n=5SAc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCjPNjEZIiqnVHzPyfSJ0dYkeiuxiey2O/RoiN/g2ryoAIgZtibd8aOj5ZeoY9uqS2lDjdZaY/xhRcHLHn67Ft9/4Q="}]},"maintainers":[{"name":"bradenhc","email":"developer.hitchcock@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/client-config_1.0.3_1547833395213_0.6268828532931454"},"_hasShrinkwrap":false},"1.0.4":{"name":"@bradenhc/client-config","version":"1.0.4","description":"In-memory client configuration library for single-page web applications","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/bradenhc/client-config.git"},"keywords":["react","config"],"author":{"name":"Braden Hitchcock","email":"developer.hitchcock@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/bradenhc/client-config/issues"},"homepage":"https://github.com/bradenhc/client-config#readme","gitHead":"21252b00305892e76ef46bce46409c388ce813ab","_id":"@bradenhc/client-config@1.0.4","_npmVersion":"6.5.0","_nodeVersion":"8.12.0","_npmUser":{"name":"bradenhc","email":"developer.hitchcock@gmail.com"},"dist":{"integrity":"sha512-HcG4fpsB1FybKFqcKhdsaH2+rSsae0uIOQ6Nc2sAL+kOjD227Xtl/FoHkhMua46ZEcz52ZSlzEuSoGE9d8UkIQ==","shasum":"9b0b5592a033f37c5492d550255123434f74a424","tarball":"https://registry.npmjs.org/@bradenhc/client-config/-/client-config-1.0.4.tgz","fileCount":5,"unpackedSize":7952,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcQhKICRA9TVsSAnZWagAAgyUQAJLwzNtKBgm016Msmp3A\nA4iHSeDASkwweqX+182V4PwiiGhFThNZJucw2RsFsjv/QfzTFi/nUbiTAmrw\nt5iTOVjtJQKGvOC/ONsWqjut+8Bciw0OEyz+4IOEARtfuaXxQVcsbDv3QJaF\n3y1uW+hzcXMcmO/aMZOXCI90eIKzjqfMIXsqapxeymWUPYDYZoeWpKXbT73m\n8M47U9rDU8IDnJ1Ba6VMLNwxk1fNgREitGsqP4TiK7umMMtVzz+1s+T+CD2B\nXPUWdpm+HEGlX8mnyWKmm9IjWm1Cu4oLGjrXWvHL7e33JKNVq1JQvHkLxaEZ\noPk0kWP7k2jELSk0YdnRBclsOxrYEWXpDuUrkXmfiIP9JsARlQtVbFW2ROYP\n5uGt+LujZypI7EraU7JHexiZxA5iCLKn83w5o5PvW4aTkEoS/amZBaoUuImo\nD0IQIaHzdWAPHpUEf8v8kYz3jw0imhhrATe3ThgO5okLA2iJ6RIKZ8jb0JjT\nIkMubtjn2SQukpQuJS0khz3HZp8Eyt4yHdOIC7kiAW6OoDQVxF1/CRgJtk/+\nBRXM5koZXJj5bVDLJdafa7WGHLa6Z+g54MVbq377fFzewSePyh/RVVI//NAA\nbxRvb9e0SwHMIot9aQklLjbphJDs8P3KvXflXG0NTtXaMQzPFXtTWkJjSvYX\nXm4x\r\n=I8Hi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE1/ZtqRhLC2GOEuXzNGYCXSCPBHKsTj23nThSPzsd29AiEArUp+hPcw2cEJhF3UmAM9C88Dc2E8JSAQYWRmFOmPSkY="}]},"maintainers":[{"name":"bradenhc","email":"developer.hitchcock@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/client-config_1.0.4_1547833992078_0.6238184866094856"},"_hasShrinkwrap":false},"1.1.0":{"name":"@bradenhc/client-config","version":"1.1.0","description":"In-memory client configuration library for single-page web applications","main":"index.js","scripts":{"test":"karma start --single-run --browsers ChromeHeadless karma.conf.js"},"repository":{"type":"git","url":"git+https://github.com/bradenhc/client-config.git"},"keywords":["react","config"],"author":{"name":"Braden Hitchcock","email":"developer.hitchcock@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/bradenhc/client-config/issues"},"homepage":"https://github.com/bradenhc/client-config#readme","devDependencies":{"chai":"^4.2.0","karma":"^3.1.4","karma-chai":"^0.1.0","karma-chrome-launcher":"^2.2.0","karma-mocha":"^1.3.0","karma-mocha-reporter":"^2.2.5","mocha":"^5.2.0"},"gitHead":"6e79adfb3eac8a25847a620ffdba03ddba4b247f","_id":"@bradenhc/client-config@1.1.0","_npmVersion":"6.5.0","_nodeVersion":"8.12.0","_npmUser":{"name":"bradenhc","email":"developer.hitchcock@gmail.com"},"dist":{"integrity":"sha512-0NBFR9BHRDbgl/+sM/QkixxF72jp2+nOSQcuOtgZSAaDKaTBJ2kqFurgeleczj1VV83v3n7viUNoc3nG9YalSA==","shasum":"e00278de2306e6c21425d7a2ba8f451807fe562c","tarball":"https://registry.npmjs.org/@bradenhc/client-config/-/client-config-1.1.0.tgz","fileCount":8,"unpackedSize":10635,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcQi0bCRA9TVsSAnZWagAAONwP/Rs8Zp/mM5KdWmj3nPJ5\n4EfnhimamZwmJm1LhpW33+itNgHwyPFAc99HG5OCoEXFBQO1ips9OmJx07L3\n8PStFoZsWlipnY0CSlC28f/OMLjUJq/EJlYOHkuD+m620CGuYJIn2RqBCfuG\n50B0M6GBJTYQZICLGK7SeKBL5txFQ/5P5V+rSWtQ2zr18k43yBT5LtN+/d6m\nzdTjhSXseBc7+qXjLhQrqwEabLIZn4vNqFnxTseXswVdsOoKUzv39JAvYiXN\nCp4TFps0lGB8DFMVm7J45y4XDZmlX93PuvkEnuR0LVgbXzfMdeKoL4/T25ms\nZXXGFy3nSMt4Or0JDuxAuyTzR22HapMSv7yY+fOlcRVi6iSLaGkBQyaGN0Og\noh/z/28xlsDd6+LLGWfG2wQ5CGDcF+GOOw5SqAZHalDqzKVrN4MIa0GCkwv7\nbYjBfw1yOFL7Wyt9m3WwW1kw5sfdkhvuoPRdAUCpWl22C62v2CF+dNJJBNxX\nFVLc+G2y6rA7ASjdHBEwVzErht6Xa3q7vk+mqANNduMeAIibAs1c5MazeAO6\n5gAwv8sLPtoyV8Gz0VSPLnbG8UH9QIeG/4HpmgB41iXgHUBNhYK9iYcWyzs8\nBMXkbBErbZPxX0afEFScbOTyFaayQiSmb8SoSznsZKqKRjCfU1fY/oDLIZ55\nokpt\r\n=SOVA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+cXt+jQi/ceeP9kweSKXvh9DOEJKxPZhmJF2ZAFOvJAIhAJGaSBzU/RTmYn2tY6m5ny7hnfkfFA8bj4HGDZfAC+dI"}]},"maintainers":[{"name":"bradenhc","email":"developer.hitchcock@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/client-config_1.1.0_1547840795330_0.6185985012582456"},"_hasShrinkwrap":false}},"time":{"created":"2018-12-29T02:41:45.660Z","1.0.0":"2018-12-29T02:41:45.906Z","modified":"2022-04-04T20:19:54.316Z","1.0.1":"2018-12-29T02:56:00.424Z","1.0.2":"2019-01-18T03:22:58.473Z","1.0.3":"2019-01-18T17:43:15.331Z","1.0.4":"2019-01-18T17:53:12.217Z","1.1.0":"2019-01-18T19:46:35.402Z"},"maintainers":[{"name":"bradenhc","email":"developer.hitchcock@gmail.com"}],"description":"In-memory client configuration library for single-page web applications","homepage":"https://github.com/bradenhc/client-config#readme","keywords":["react","config"],"repository":{"type":"git","url":"git+https://github.com/bradenhc/client-config.git"},"author":{"name":"Braden Hitchcock","email":"developer.hitchcock@gmail.com"},"bugs":{"url":"https://github.com/bradenhc/client-config/issues"},"license":"MIT","readme":"# client-config\n\nIn-memory client configuration library for single-page web applications\n\n```\nnpm i @bradenhc/client-config\n```\n\n## Usage\n\nThe `client-config` library uses the `fetch()` API to retrieve configuration from your server for your web application. The asynchrounous request to load the configuration is done using the `ClientConfig#load()` function and only happens when you explicitly call the function in your application.\n\nAssume we have the following configuration located in `/assets/config/default.json` on our server:\n\n```json\n{\n    \"version\": \"v1.0.0\",\n    \"database\": {\n        \"host\": \"my.host.com\",\n        \"port\": \"20000\",\n        \"name\": \"myapp_database\"\n    }\n}\n```\n\nThe library can be used in the following way:\n\n```js\nimport config from 'client-config';\n\n// Specify which JSON files to load as config\nconfig.files(['/assets/config/default.json']);\n\n// Load the files\nconfig.load(errs => {\n    if (errs) return console.log(errs);\n\n    // Returns the value 'v1.0.0'\n    let version = config.get('version');\n\n    // Returns the nested value 'my.host.com'\n    let host = config.get('datbase.host');\n\n    // Return undefined\n    let doesNotExist = config.get('foo.bar.baz');\n\n    // Sets a new key/value pair\n    config.set('new.key', 42);\n\n    // Sets an existing key/value pair\n    config.set('database.name', 'myapp_db');\n});\n```\n\nOnce the configuration has been loaded, the `ClientConfig.loaded` flag will be set to `true`. You can use this to check for loaded configuration so you don't have to make unneccessary calls back to the server. Ideally, you should only call `load()` once while bootstraping the web application. Configuration will be available throughout the rest of the app without needed to call `load()` again.\n\nThe configuration library supports nested member access. When using `get()`, nested values can be retrieved by a period-delimited string of the keys. Setting nested values can be achieved in the same way. If a nested key does not exist, the library will create an empty object to hold the new key, automatically generating the nested structure.\n\nThe `set()` function only changes the values of the configuration in memory.\n\n## Config Files\n\nBy default, the library does not have any config files to load. In order to set the files to load you must call the `files()` function. Currently there is no guarantee that the files will be loaded in the order you specify, as all requests are done asynchronously.\n\n```js\nimport config from 'client-config';\n\n// Set the files to use when loading configuration\nconfig.files([\n    '/assets/config/default.json',\n    '/assets/config/local.json',\n    '/assets/config/production.json',\n    '/assets/config/security.json'\n]);\n\n// Add another file\nconfig.files().push('/assets/config/test.json');\n```\n\nAs seen in the example, you must pass an array of strings to the `files()` function to set the files to load. Calling `files()` without any arguments will return the current array of files the `client-config` module is is set to load. These files will be fetched when `load()` is called.\n\n## Errors\n\nIf the libary is unable to load any of the config files specified, it will return a list of the files as the first argument to the callback function provided to `load()`. The returned errors will have the following format:\n\n```js\nerrs = [\n    { \n        message: 'Message describing the issue', \n        file: 'the-file-that-triggered-the-error' \n    }\n];\n```\n","readmeFilename":"README.md"}