{"_id":"d-config","_rev":"3-b444abebb4c2b818cbbe221ce18636d7","name":"d-config","dist-tags":{"latest":"0.1.0-beta.0"},"versions":{"0.0.1-poc":{"name":"d-config","version":"0.0.1-poc","main":"index.js","bin":{"d-config":"bin/d-config.js"},"scripts":{"build":"tsc","prepare":"npm run build"},"license":"MIT","dependencies":{"@euxn23/quicktype":"15.0.177-patch.1","deepmerge":"3.2.0","yargs":"13.2.2"},"devDependencies":{"@types/node":"^11.13.0","@types/yargs":"13.0.0","prettier":"^1.17.0","prettier-cli":"^0.1.0","ts-node":"^8.0.3","typescript":"^3.4.1"},"gitHead":"0b8dfc7972c285088efcffae15de53e9a2945659","description":"## Install","_id":"d-config@0.0.1-poc","_npmVersion":"6.1.0","_nodeVersion":"10.6.0","_npmUser":{"name":"euxn23","email":"euxn23@gmail.com"},"dist":{"integrity":"sha512-OrrfQ9SklVCaeWb3uMX6Rxg0OVY2OeiFiaQHjAlxFSYlrVTnxbljIV+op2Cn8c3lYZxhe1WbqTDW/+x0Gz4DbQ==","shasum":"2cf74ada0ee60a037609e4a93aeabc9171822885","tarball":"https://registry.npmjs.org/d-config/-/d-config-0.0.1-poc.tgz","fileCount":43,"unpackedSize":72783,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcsaNqCRA9TVsSAnZWagAAzEgP/3iJIEYIQOR0YPtgm7li\nEEjhcMcLgpksqlRlH356WujgqVjiOXZnRXG88Lqs10EMuhCzuA1C8lOd71zI\nLDYgCNUBqRAtlGpH9jvRcC/On4TPprIuJvJ9bLzQ2MxVOwxEfith2bz/hOdx\ncOEhp2m9Pl82muU8l0dDdGJu40rmbdyojpdDhJRxDR74vTDrS7ALrLpuD08I\ni+fKkOuHISMwbY+ELje2yLlPVkx3naj4uPYw/RQWJWFA/sCR2NDHEIrDPWui\nEbr4rLBx4ZWXH54fipdU1VpPmXoCoQ87Br7s86k4MdPnOwSxJmgXdjT6VBqk\noFkU1ojh4/NaQmX7+65QNA+nj3iWFNYRUjqG04ldR0NuWZ0qkIBFXmm49pvw\n5qhj7czGIDJ8Z4U4XFwyrAUXgTfo9IrHntvx2atg44qS3fUyd+ncZjsZ62yX\ncJSH0k8i3DGN5V7dnqHwPluUW2WRbskhAj+E9JCnjHDckVDagIkfCElL/nhh\nZqzGTWtRsY8aDh8jOcYs9xDwc8+35ZgDnJQvf2UINaTf2xxqCq4S+vBzfNWK\nWrUW0L/Lt6n8PapC+6k0J6Ijtb1Nba79Ek4Kkv8EvFyL2Rsek8LPeyZ96CXB\nZEdlXgp+ijv3MySYa9hKYhW4dG6Fj4gzyW9Se+FYi89rAAxUbq1F2CbWRL/Y\n9cDh\r\n=0s5U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHiG1+KNulenX7+DduOzXXhTZ7//whwQruoTVKF/mwDIAiEAvISOmH4maxIQz9Nns4pYbVjipgHtj6cD4epFKt57Jss="}]},"maintainers":[{"name":"euxn23","email":"euxn23@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/d-config_0.0.1-poc_1555145577481_0.15219481033009497"},"_hasShrinkwrap":false},"0.0.1-beta":{"name":"d-config","version":"0.0.1-beta","main":"index.js","bin":{"d-config":"bin/d-config.js"},"scripts":{"build":"tsc","prepare":"npm run build && [ -r ~/.npmignore ] && cat ~/.npmignore > .npmignore && cat npmignore >> .npmignore"},"license":"MIT","dependencies":{"@euxn23/quicktype":"15.0.177-patch.1","deepmerge":"3.2.0","yargs":"13.2.2"},"devDependencies":{"@types/node":"^11.13.0","@types/yargs":"13.0.0","prettier":"^1.17.0","prettier-cli":"^0.1.0","ts-node":"^8.0.3","typescript":"^3.4.1"},"gitHead":"f87161b4e0976b467060b882c3a2fa0235fb5e07","description":"## Install","_id":"d-config@0.0.1-beta","_npmVersion":"6.1.0","_nodeVersion":"10.6.0","_npmUser":{"name":"euxn23","email":"euxn23@gmail.com"},"dist":{"integrity":"sha512-qtKFMD+gNn/3yKydw89513gSUeVyIYghFm9rTI9EpowGAO6UVQIq5UO3d2XyMFgUNfgO0WF8EjCLxkBiUh5F+A==","shasum":"ac9faa27025a0b673126856f2708435699b943d4","tarball":"https://registry.npmjs.org/d-config/-/d-config-0.0.1-beta.tgz","fileCount":37,"unpackedSize":53612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcsaXBCRA9TVsSAnZWagAAmGgP/2mF1HKARnKT/ykLS17f\nrUvDK1jsKnP7LZSWeTsbRYu9NZXmR2oA92embdWolkDSfL/rOMLiyhBeILRn\n5vCVLGpRqBRBOqEXQ5aptvau+0GmUSWq8nmZVHcEGqee3GbhDnj+DvUNtYTB\nVL9F6Hv/fC4qHSMFv4xxcj6hmusor1hzpEb3ALuoCqBlo/Y+x29gczfdYX5i\n3PBPmj0isJN4Zm2KutvgnypPKqCX5s9CUdW8RuyPqrbSZ92O4ByS0n6+9oBh\nh2lrrS0SDwt6LdRPK03LNevuQRFCcLccolw1MYXGyMT5eI0c0chPftL9Gd9D\nPlAfV8B6q/IBjkDHxXHBFWcVFRK3NAug+PSRfuzQ02fB5fjTuTNCzMR6Rvzp\nZsTSbcYJ3Gos8t4UfFMf2sLCEHehVfX4OqgFjB+xkaNcGwxSRCFRs4tPFDm7\n0G13XtTIcJnY0M8H1EWaF9HzwqakoKGqyXr/gQBFRx2t2trhfKSto54suH95\n/EEUKFaviaDA+9oZ7pAWe3Azux/6+UwJ4VWNIL+9M+cuxCDUdSJyWRpk8m4U\ni/JkN0h9YrPD11KCzBILyNrxY+a2KnKireswqE9daTAH6drX0xd0hRqrNYOA\naCEA/hPvw60pn8m29yJhXnDndWzEnTuUguGsyVK6cFcwRbfetIfEx3j+BZKB\npqM2\r\n=q4Pn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCc5qyzJyewyUnl5QOEff0w5kvF4HKryIlt9OIkJPtkiQIhAPsPoSSzrrTelBlygSWRrEmW13W8aWX0jaoSPyT15hWQ"}]},"maintainers":[{"name":"euxn23","email":"euxn23@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/d-config_0.0.1-beta_1555146176259_0.9456909352035505"},"_hasShrinkwrap":false},"0.1.0-beta.0":{"name":"d-config","version":"0.1.0-beta.0","main":"index.js","bin":{"d-config":"bin/d-config.js"},"scripts":{"build":"tsc","prepare":"npm run build && [ -r ~/.npmignore ] && cat ~/.npmignore > .npmignore && cat npmignore >> .npmignore"},"license":"MIT","dependencies":{"@euxn23/quicktype":"^15.0.177-patch.1","deepmerge":"3.2.0","yargs":"13.2.2"},"devDependencies":{"@types/node":"^11.13.0","@types/yargs":"13.0.0","prettier":"^1.17.0","prettier-cli":"^0.1.0","ts-node":"^8.0.3","typescript":"^3.4.1"},"gitHead":"6da9a7204c6a92b42749987c77a8fe13756fe5af","description":"## Install","_id":"d-config@0.1.0-beta.0","_npmVersion":"6.1.0","_nodeVersion":"10.6.0","_npmUser":{"name":"euxn23","email":"euxn23@gmail.com"},"dist":{"integrity":"sha512-gixewg3a1DFqOzJUeaLUhOaodl5ot9yxPRjCdWD9yn7coUONSVYzi+e/mikp6s1W4wy2W+p7K1fzl6OrpHnE0A==","shasum":"552ae8f36d9db109142a20764bccd025bb41765b","tarball":"https://registry.npmjs.org/d-config/-/d-config-0.1.0-beta.0.tgz","fileCount":37,"unpackedSize":53746,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcteBNCRA9TVsSAnZWagAAULYP/02loimum/Bx9zu+t/u0\nyNuNIEg3dk3SlLab+QXybh2bZUX97omXnQNPHAzWuqnlQv0/3HuV5CcqUcvD\nhZXOZRS0oqDFcQ4cb5p0fpvR7rqlbsoj/5MXaIAfwoktv6cA7LocBe4EovTs\ncds1hb88ttgMiIe88S13u28mTZVsAocwjv2NrSrtxBIQrWFdqHtpsGM2gpoZ\nFN2KR4hwqL9cRn0B8MKgh/qElCBFEAWxrHhTRmCHUUmma6nwv18tY/4x9BLy\no5l5Dnjs701hVnlW/VADa4ceH2DVipmQNMQ33f+qre4zZLPpGozMGCTi+oSH\nYSMDkRFqSYtunAXLTMWkCXnkSs/Q+El0X+/Khlma3gRQrwh/BTXHZEG8MCUa\nfFnsHt06+1W1vb106xsAeXSi+HN0XrMU28fzpFtsgS0Vba9HRwIpLk4WE1/U\npijYBwNNtWHWKQI2zow966WatwOla/JFsgiZnQSDixann0jRHwlG4cpiSpB2\nrNoz4XYXL3QzRi1xggasb2moFfzo97Srq/8qIR1J98s5EuR0wZk1d8O10BC+\nTTarlxx1WW0nISh2CLIiYejjjEJNQROdttIwrImYp/uN9OK9cj2OK/ODJJdQ\nOUjqc3ls08kc9cXXhwYeBp2i1gmMP6GeeVm08FPN41vBtd/4QJVzDK55pPc+\nbjlf\r\n=+da0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAb5P4SKgCSDBvAYk8IfFghYnoRAswQQIDsC9Chfn8IeAiBZWPa3SlgA/ThEPpD+6aSrqadMs2MFfd6v/62HGJbYQA=="}]},"maintainers":[{"name":"euxn23","email":"euxn23@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/d-config_0.1.0-beta.0_1555423308375_0.29536489627683093"},"_hasShrinkwrap":false}},"time":{"created":"2019-04-13T08:52:57.481Z","0.0.1-poc":"2019-04-13T08:52:57.617Z","modified":"2022-04-28T02:57:43.998Z","0.0.1-beta":"2019-04-13T09:02:56.526Z","0.1.0-beta.0":"2019-04-16T14:01:48.507Z"},"maintainers":[{"name":"euxn23","email":"euxn23@gmail.com"}],"description":"## Install","license":"MIT","readme":"# d-config\n\n## Install\n\n`$ npm install -S d-config`\n\nor\n\n`$ yarn add d-config`\n\n## Usage\n\n### CLI\n\nCLI での validator ファイル生成を事前に行います。\n\n```\nUsage: npx d-config [options] [path/to/config/type]\n\nOptions:\n  --top-level\n    引数に指定されたファイル内で config として使用するトップレベルの型名を指定します\n  --out\n    生成した TypeScript ファイルの出力先を指定します\n  --out-js\n    生成した JavaScript ファイルの出力先を指定します\n  --overwrite\n    生成した TypeScript ファイルを、引数に指定した config ファイルに上書きします。--out/--out-js よりも優先されます\n    指定ファイルで export されている interface/type/class 以外のコードは消滅し、生成された validation 関数が追加されます\n      type は interface に変換されます\n    上記の問題を避けるために上書きしたくない場合は、 `--out` で別ディレクトリを指定するか、 `--out-js` オプションを指定し、実行時に `useJsVaidator` を指定してください\n\nExample:\n  $ npx d-config ./path/to/config/type.ts --top-level Config --overwrite\n  $ npx d-config ./path/to/config/type.ts --top-level Config --out-js config/validator.js\n```\n\n\n### API\n\n```typescript\nimport { configure } from 'd-config';\n\nconst config = configure();\n```\n\nオプションは以下の通りです。\n\n```\nvalidator: Config => Config (default: null)\n  config を渡す validation 関数を指定します。通常、 cli で生成されたファイルを指定してください\n  useJsValidator より優先されます。また、 validator か useJsValidator のうち片方は必須パラメータとなります\ndeepMerge: boolean (default: false)\n  true の場合、環境別 config を default を deepmerge します\nallowMergeObject: boolean (default: true)\n  deemMerge: true の場合のみ有効\n  true の場合、 deepmerge ライブラリと同様の挙動になります\n  false の場合、deepmerge 時に Object をマージしません(deepmerge の option isMergeableObject に空関数を渡した場合と同様)\nallowTypeError: boolean (default: false)\n  [production 非推奨] alidator による実行時型チェックを無視します\nuseJsValidator: boolean (default: false)\n  D_CONFIG_VALIDATOR (defualt: config/validator.js) を動的に require し configure 時に validation を実行します\n```\n\n\n## Example\n\n### Basic\n\n```bash\n$ npx d-config ./path/to/config/type.ts --top-level Config --overwrite\n```\n\n```typescript\nimport { configure } from 'd-config';\nimport { toConfig as validator } from './path/to/config/type';\n\nconst config = configure({ validator });\n```\n\n### Use deepmerge but not merge Object\n\n```bash\n$ npx d-config ./path/to/config/type.ts --top-level Config --overwrite\n```\n\n```typescript\nimport { configure } from 'd-config';\nimport { toConfig as validator } from './path/to/config/type';\n\nconst config = configure({\n  validator,\n  deepMerge: true,\n  allowMergeObject: false,\n});\n```\n\n\n### Use JS validator\n\n```bash\n$ npx d-config ./path/to/config/type.ts --top-level Config --out-js config/validator.js\n```\n\n```typescript\nimport { configure } from 'd-config';\n\nconst config = configure({ useJsValidator: true });\n```\n","readmeFilename":"README.md"}