{"_id":"@acrontum/boats-utils","_rev":"7-3de21fe049f4101c55801c9e73287ba0","name":"@acrontum/boats-utils","dist-tags":{"latest":"2.0.4"},"versions":{"1.0.0":{"name":"@acrontum/boats-utils","version":"1.0.0","keywords":[],"author":{"name":"p-mcgowan"},"license":"ISC","_id":"@acrontum/boats-utils@1.0.0","maintainers":[{"name":"acrontum_sanchez","email":"sanchez@acrontum.de"},{"name":"acrontum_revah","email":"revah@acrontum.de"},{"name":"acrontum_brode","email":"brode@acrontum.de"},{"name":"acrontum_eicken","email":"eicken@acrontum.de"},{"name":"acrontum_knoblach","email":"knoblach@acrontum.de"},{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},{"name":"carmichael.john","email":"john.carmichael@liffery.com"}],"homepage":"https://github.com/acrontum/boats-utils#readme","bugs":{"url":"https://github.com/acrontum/boats-utils/issues"},"dist":{"shasum":"888f7f808c22d41d13475778373f9958f5f601f4","tarball":"https://registry.npmjs.org/@acrontum/boats-utils/-/boats-utils-1.0.0.tgz","fileCount":2,"integrity":"sha512-FDPXNOc2czOkqpb1bO+Jd7757vbTFrZ2iv704uHkya9vuQDpIy3aB8OU//QOV7vkP5nkdEKcWNOWCxCxed4Z+g==","signatures":[{"sig":"MEUCIQCmxFn4l9vD8/KVnI5cixMyR3jIc131N/UFtcAkqACUbQIgSzJZVAKSYkXcpW+PO7Tgd5WLactCKwHWKU3qGrrUTeQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":8807,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJigPeIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr46hAAkJHdOwJ7z5Rxu/ffRY/q2VWKOvdsiHhC37C45CUGrMV1AWCf\r\nzwHMl8ZpbONy5uKgZgM6V58GHG+JpyRw35v5KNY4Soc8VWrj4mdnXOOtgXeZ\r\nNHnOTrYw4leq8EUaJHx/4NPE+cGNzJWAQrmUN6Xy49mLgR3JTnYuAI0Qfh8W\r\nc97vGCbRV3if/M7VpDb0hzlzbGtJ5M3/F0NkBODofG/xUh02KjZlOixBaje+\r\n20g6LzLwKQHrw4gTZjXSZjbmQUxMB1PR+6V6I93+Bh/urwZIwhB8KkeIokbf\r\nGYXuWYIJlS07c7GaAqJA4oScFlo6g/dACddtdFpUE77biquKIbN7xHYWD2ZW\r\n2U7R5GSvTCyViVvDOVV6/9rQeDEUgaeNuWrjCrSpL7Vz7WLUAb4lSj4IBY5s\r\n4zHQJhTOR6/QMMKLbTKjCweJpshRrXmCX/OBypSnecdWDIffh96g4o7oFAXx\r\nuJDenHeFP/P62rNivBVsVUC2khrnWIrgfNpZzEDAV2+Flgl5toL323jN3xZf\r\nYoClBzl3QqWCtVHz5/w5KP3rlufNdt+eQylEjmgI2krdyBEzE2632YgFLvbo\r\n9tBrh9qHkSASc+U+Cz9kLS/KRD6z2pHCXYBRWEfANn5FdmQrIAHaPSM3JSrg\r\nYtgxd5Zfuzqo9hklO1DcIklKtrJ+L/T6sb8=\r\n=NXtl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/src","gitHead":"c5bd2fff5906977aa79c6a77ca1cfceac873e605","scripts":{"lint":"eslint '{src,test}/**/*.{js,ts,json}'","build":"tsc","setup":"git config core.hooksPath ./githooks","prebuild":"rm -rf dist/*","prepublishOnly":"./githooks/pre-push"},"_npmUser":{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},"repository":{"url":"git+https://github.com/acrontum/boats-utils.git","type":"git"},"_npmVersion":"8.5.5","description":"Collection of useful boats template helpers.","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"devDependencies":{"boats":"^2.34.0","eslint":"^8.15.0","js-yaml":"^4.1.0","prettier":"^2.6.2","typescript":"^4.6.4","@types/node":"^17.0.33","@types/js-yaml":"^4.0.5","@types/nunjucks":"^3.2.1","@tsconfig/node12":"^1.0.9","source-map-support":"^0.5.21","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.0.0","@typescript-eslint/parser":"^5.23.0","@typescript-eslint/eslint-plugin":"^5.23.0"},"_npmOperationalInternal":{"tmp":"tmp/boats-utils_1.0.0_1652619143949_0.16392892112795132","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@acrontum/boats-utils","version":"1.0.1","keywords":[],"author":{"name":"p-mcgowan"},"license":"ISC","_id":"@acrontum/boats-utils@1.0.1","maintainers":[{"name":"acrontum_sanchez","email":"sanchez@acrontum.de"},{"name":"acrontum_revah","email":"revah@acrontum.de"},{"name":"acrontum_brode","email":"brode@acrontum.de"},{"name":"acrontum_eicken","email":"eicken@acrontum.de"},{"name":"acrontum_knoblach","email":"knoblach@acrontum.de"},{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},{"name":"carmichael.john","email":"john.carmichael@liffery.com"}],"homepage":"https://github.com/acrontum/boats-utils#readme","bugs":{"url":"https://github.com/acrontum/boats-utils/issues"},"dist":{"shasum":"8f77d67d838f92a9967534cfc82319d44dccda87","tarball":"https://registry.npmjs.org/@acrontum/boats-utils/-/boats-utils-1.0.1.tgz","fileCount":5,"integrity":"sha512-BCv7QrvBRi4H6t+wrwvStHYbR7D8aNNhJ67yG3wXsfkmhHXqrubL3okRlg+wegdYbnkADK0T1MjsY8QLXsX+4w==","signatures":[{"sig":"MEQCIAWVMSgsIrSNN+NBv8ct2gVWjJZ68lJzO4+uXP9J29OzAiAIHdF5Isrt5mcH5o3yX2OCc+GbK1DYB+W+J+UZ+Zc1zg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":14011,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJikOgUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrsPg/8Dce5bmpEvLlYKRiO4K/ne927go1pyQWMUWlkPskRt7h77xPW\r\nAbpJ8jak43lSMQ0FYWTYeGZ+9lcgXgYJZYUXraof+XQRshTrO4T3kU5U1ggp\r\ncQNqzig7qPONKsbgsyYUDWHanSnmd40Ap/0u2nR8BD2ZWqVe8Ai1fdTdNrvm\r\nDEk25LwwwZPoLsBSJTWfDJ+N/hDwAEn0Eo4YaHqx4Vya2x7fpEa6tbnHBZVu\r\n4OpwMWOfu330wKWJ80pL1d0u4G0ypW9zbw0sCsE4TUIC5iTDiAjLiieflvzP\r\nsyjlC0zLBnbJIvfRt8wIELBK6LPZ6d0dSbL4yxDWer6k+IpIajmMhx+QWTCA\r\nIrSgWa7LddZp+G58ecPPv4Yr1TCZBFukhEsR3LTSqrFImLp8ajGDvzKUalg3\r\niUMsBltYXpGMj7CM327/Lr31Mr3dM/xgOBLdxhw+/LJ71xUQPOmY84rtD4BQ\r\n9E0AzXYsmFXSyHUQf2fIw9SoZkUpeI1JOmPnmUhMrHVzYZ0PZNuGOqf6KcEV\r\nsUvPEauS267qGBciBTvr+j/Z4iHJ2ZoHQs8sa7FzmZcoIwJItdvhtmjEaDM7\r\nYHRgXxDoK2p8UCFa7a4ZIJRxiHh7wHHFonicBXZg7XuFDolbXwfcKAIzPRRb\r\nNY+vUjhGakBlyoxqMQ7rnjcR8hq7hsF8r0k=\r\n=ChLL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/src","gitHead":"d3cd2af7aa5b961e2edbbfb533abf8054dbcaffc","scripts":{"lint":"eslint '{src,test}/**/*.{js,ts,json}'","build":"tsc","setup":"git config core.hooksPath ./githooks","prebuild":"rm -rf dist/*","prepublishOnly":"./githooks/pre-push"},"_npmUser":{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},"repository":{"url":"git+https://github.com/acrontum/boats-utils.git","type":"git"},"_npmVersion":"8.5.5","description":"Collection of useful boats template helpers.","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"devDependencies":{"boats":"^2.34.0","eslint":"^8.15.0","js-yaml":"^4.1.0","prettier":"^2.6.2","typescript":"^4.6.4","@types/node":"^17.0.33","@types/js-yaml":"^4.0.5","@types/nunjucks":"^3.2.1","@tsconfig/node12":"^1.0.9","source-map-support":"^0.5.21","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.0.0","@typescript-eslint/parser":"^5.23.0","@typescript-eslint/eslint-plugin":"^5.23.0"},"_npmOperationalInternal":{"tmp":"tmp/boats-utils_1.0.1_1653663764506_0.23542688283511315","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@acrontum/boats-utils","version":"1.0.2","keywords":[],"author":{"name":"p-mcgowan"},"license":"ISC","_id":"@acrontum/boats-utils@1.0.2","maintainers":[{"name":"acrontum_sanchez","email":"sanchez@acrontum.de"},{"name":"acrontum_revah","email":"revah@acrontum.de"},{"name":"acrontum_brode","email":"brode@acrontum.de"},{"name":"acrontum_eicken","email":"eicken@acrontum.de"},{"name":"acrontum_knoblach","email":"knoblach@acrontum.de"},{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},{"name":"carmichael.john","email":"john.carmichael@liffery.com"}],"homepage":"https://github.com/acrontum/boats-utils#readme","bugs":{"url":"https://github.com/acrontum/boats-utils/issues"},"dist":{"shasum":"1f24f0fafd2cb24a7441c3198b051eac31a9c08e","tarball":"https://registry.npmjs.org/@acrontum/boats-utils/-/boats-utils-1.0.2.tgz","fileCount":5,"integrity":"sha512-bacn/e+Pv1x2JnE5Qx+iWr1XpVBPXn9wH2gN09AIflwETlWV/YiLAMsutH0TjuSGZ3VvcUrXnjAdRdMmgAukHw==","signatures":[{"sig":"MEUCIQCvBU1u5TLMMljN1KSLEEvzRDtSfmOh3IT9OvhZpdC4nwIgdGUEkBHg3w1qLW8ibz1ZXogy6VX3lgZm7BmfP5sEWOM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":14479},"main":"dist/src","gitHead":"1af6c37e012f78d6fecc39e81e50d93f942bbf69","scripts":{"lint":"eslint '{src,test}/**/*.{js,ts,json}'","test":"NODE_ENV=test mocha --require source-map-support/register --recursive 'dist/test/**/*.spec.js'","build":"tsc","setup":"git config core.hooksPath ./githooks","prebuild":"rm -rf dist/*","build:test":"npm run prebuild && tsc -p ./tsconfig.test.json","prepublishOnly":"./githooks/pre-push"},"_npmUser":{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},"repository":{"url":"git+https://github.com/acrontum/boats-utils.git","type":"git"},"_npmVersion":"9.5.1","description":"Collection of useful boats template helpers.","directories":{},"_nodeVersion":"18.16.1","_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.6","boats":"^3.4.1","mocha":"^10.0.0","eslint":"^8.17.0","js-yaml":"^4.1.0","prettier":"^2.6.2","typescript":"^4.7.3","@types/chai":"^4.3.1","@types/node":"^18.17.1","@types/mocha":"^9.1.1","@types/js-yaml":"^4.0.5","@types/nunjucks":"^3.2.1","@tsconfig/node12":"^1.0.9","chai-as-promised":"^7.1.1","source-map-support":"^0.5.21","eslint-plugin-mocha":"^10.0.5","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.0.0","@types/chai-as-promised":"^7.1.5","@typescript-eslint/parser":"^5.27.1","@typescript-eslint/eslint-plugin":"^5.27.1"},"_npmOperationalInternal":{"tmp":"tmp/boats-utils_1.0.2_1690865511811_0.2311621150864993","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"@acrontum/boats-utils","version":"2.0.0","keywords":[],"author":{"name":"p-mcgowan"},"license":"ISC","_id":"@acrontum/boats-utils@2.0.0","maintainers":[{"name":"acrontum_sanchez","email":"sanchez@acrontum.de"},{"name":"acrontum_revah","email":"revah@acrontum.de"},{"name":"acrontum_brode","email":"brode@acrontum.de"},{"name":"acrontum_eicken","email":"eicken@acrontum.de"},{"name":"acrontum_knoblach","email":"knoblach@acrontum.de"},{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},{"name":"carmichael.john","email":"john.carmichael@liffery.com"}],"homepage":"https://github.com/acrontum/boats-utils#readme","bugs":{"url":"https://github.com/acrontum/boats-utils/issues"},"dist":{"shasum":"6600602a1a2b1dd5390d49d83fda463532964fa8","tarball":"https://registry.npmjs.org/@acrontum/boats-utils/-/boats-utils-2.0.0.tgz","fileCount":5,"integrity":"sha512-yvtRDdPmftT9WZZFIo1TZTJ9nj//2hlcx5UGMcEdTwWvT8IeVncuJo4kfvQxmv3+MLArTpQ3l3dfxJCvVsyd6Q==","signatures":[{"sig":"MEQCIDyfvnOJuiSDVb8fjnveRntsACcJ1UAJbZLfaStwjqTGAiBDVCqXGP8rzzZiGJ1ML3wiGjd8QkOZUiUfJGZvt1Zd5g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15503},"main":"dist/src","gitHead":"bd57556c53afd4ca072f35153e1eaf29299d417b","scripts":{"lint":"eslint '{src,test}/**/*.{js,ts,json}'","test":"NODE_ENV=test mocha --require source-map-support/register --recursive 'dist/test/**/*.spec.js'","build":"tsc","setup":"git config core.hooksPath ./githooks","prebuild":"rm -rf dist/*","build:test":"npm run prebuild && tsc -p ./tsconfig.test.json","prepublishOnly":"./githooks/pre-push"},"_npmUser":{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},"repository":{"url":"git+https://github.com/acrontum/boats-utils.git","type":"git"},"_npmVersion":"9.5.1","description":"Collection of useful boats template helpers.","directories":{},"_nodeVersion":"18.16.1","_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.6","boats":"^3.4.1","mocha":"^10.0.0","eslint":"^8.17.0","js-yaml":"^4.1.0","prettier":"^2.6.2","typescript":"^4.7.3","@types/chai":"^4.3.1","@types/node":"^18.17.1","@types/mocha":"^9.1.1","@types/js-yaml":"^4.0.5","@types/nunjucks":"^3.2.1","@tsconfig/node12":"^1.0.9","chai-as-promised":"^7.1.1","source-map-support":"^0.5.21","eslint-plugin-mocha":"^10.0.5","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.0.0","@types/chai-as-promised":"^7.1.5","@typescript-eslint/parser":"^5.27.1","@typescript-eslint/eslint-plugin":"^5.27.1"},"_npmOperationalInternal":{"tmp":"tmp/boats-utils_2.0.0_1690995157710_0.20165616367485817","host":"s3://npm-registry-packages"}},"2.0.1":{"name":"@acrontum/boats-utils","version":"2.0.1","keywords":[],"author":{"name":"p-mcgowan"},"license":"ISC","_id":"@acrontum/boats-utils@2.0.1","maintainers":[{"name":"acrontum_sanchez","email":"sanchez@acrontum.de"},{"name":"acrontum_revah","email":"revah@acrontum.de"},{"name":"acrontum_brode","email":"brode@acrontum.de"},{"name":"acrontum_eicken","email":"eicken@acrontum.de"},{"name":"acrontum_knoblach","email":"knoblach@acrontum.de"},{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},{"name":"carmichael.john","email":"john.carmichael@liffery.com"}],"homepage":"https://github.com/acrontum/boats-utils#readme","bugs":{"url":"https://github.com/acrontum/boats-utils/issues"},"dist":{"shasum":"32eb2dde5a404b437116b8f9ad453468485b790c","tarball":"https://registry.npmjs.org/@acrontum/boats-utils/-/boats-utils-2.0.1.tgz","fileCount":5,"integrity":"sha512-m15T/VRZZ1pevCewl+0ava5NNV15Smj6icAU2M1pdgo22LGX4nHDx6I3wsdJH7KFYJ9kTQZQDd/ZvDpSiwnxmw==","signatures":[{"sig":"MEQCIFebmzdF7maHJQdr3eQexg5a5l7hBKVKa9No/kJp+E2XAiAwGv5gnIxeTCBfvCvMqzZNZex5rScp3Ww2agm59GJHkw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15472},"main":"dist/src","gitHead":"6eede5b4830caca04c4dc8fbdd733318e8d42f0b","scripts":{"lint":"eslint '{src,test}/**/*.{js,ts,json}'","test":"NODE_ENV=test mocha --require source-map-support/register --recursive 'dist/test/**/*.spec.js'","build":"tsc","setup":"git config core.hooksPath ./githooks","prebuild":"rm -rf dist/*","build:test":"npm run prebuild && tsc -p ./tsconfig.test.json","prepublishOnly":"./githooks/pre-push"},"_npmUser":{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},"repository":{"url":"git+https://github.com/acrontum/boats-utils.git","type":"git"},"_npmVersion":"9.5.1","description":"Collection of useful boats template helpers.","directories":{},"_nodeVersion":"18.16.1","_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.6","boats":"^3.4.1","mocha":"^10.0.0","eslint":"^8.17.0","js-yaml":"^4.1.0","prettier":"^2.6.2","typescript":"^4.7.3","@types/chai":"^4.3.1","@types/node":"^18.17.1","@types/mocha":"^9.1.1","@types/js-yaml":"^4.0.5","@types/nunjucks":"^3.2.1","@tsconfig/node12":"^1.0.9","chai-as-promised":"^7.1.1","source-map-support":"^0.5.21","eslint-plugin-mocha":"^10.0.5","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.0.0","@types/chai-as-promised":"^7.1.5","@typescript-eslint/parser":"^5.27.1","@typescript-eslint/eslint-plugin":"^5.27.1"},"_npmOperationalInternal":{"tmp":"tmp/boats-utils_2.0.1_1690995562119_0.827531966464838","host":"s3://npm-registry-packages"}},"2.0.2":{"name":"@acrontum/boats-utils","version":"2.0.2","keywords":[],"author":{"name":"p-mcgowan"},"license":"ISC","_id":"@acrontum/boats-utils@2.0.2","maintainers":[{"name":"acrontum_sanchez","email":"sanchez@acrontum.de"},{"name":"acrontum_revah","email":"revah@acrontum.de"},{"name":"acrontum_brode","email":"brode@acrontum.de"},{"name":"acrontum_eicken","email":"eicken@acrontum.de"},{"name":"acrontum_knoblach","email":"knoblach@acrontum.de"},{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},{"name":"carmichael.john","email":"john.carmichael@liffery.com"}],"homepage":"https://github.com/acrontum/boats-utils#readme","bugs":{"url":"https://github.com/acrontum/boats-utils/issues"},"dist":{"shasum":"1269b597d98c872f74c94038112c1fa73d410682","tarball":"https://registry.npmjs.org/@acrontum/boats-utils/-/boats-utils-2.0.2.tgz","fileCount":8,"integrity":"sha512-Wvfw6SfVnntpSnq0j8R/+b0UfOUzzMN6ZONE3icnqABuiBLWd53/k2p03RHoCA7qnxYIr16Xlcb8lEOGIL2JhQ==","signatures":[{"sig":"MEUCIBl2L9/U8/TGsZCb8byuX82my/jaQDlDvaKDQqJQALdLAiEA95fj8BK2y4xU/pp4Y0C9NpiLHcLMmj1K8c+tNqgpr28=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15725},"main":"dist/src","gitHead":"7ee50f6a04efbbf8f425496020c78e9cf79bc736","scripts":{"lint":"eslint '{src,test}/**/*.{js,ts,json}'","test":"NODE_ENV=test mocha --require source-map-support/register --recursive 'dist/test/**/*.spec.js'","build":"tsc","setup":"git config core.hooksPath ./githooks","prebuild":"rm -rf dist/*","prepublishOnly":"./githooks/pre-push"},"_npmUser":{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},"repository":{"url":"git+https://github.com/acrontum/boats-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"Collection of useful boats template helpers.","directories":{},"_nodeVersion":"20.17.0","_hasShrinkwrap":false,"devDependencies":{"chai":"^4.5.0","boats":"^5.0.0","mocha":"^10.0.0","eslint":"^8.57.1","js-yaml":"^4.1.0","ts-node":"^10.9.2","prettier":"^3.3.3","typescript":"^5.6.2","@types/chai":"^4.3.20","@types/node":"^22.7.0","@types/mocha":"^10.0.8","@types/js-yaml":"^4.0.5","@types/nunjucks":"^3.2.1","@tsconfig/node12":"^12.1.3","chai-as-promised":"^8.0.0","source-map-support":"^0.5.21","eslint-plugin-mocha":"^10.0.5","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.2.1","@types/chai-as-promised":"^8.0.1","@typescript-eslint/parser":"^8.7.0","@typescript-eslint/eslint-plugin":"^8.7.0"},"_npmOperationalInternal":{"tmp":"tmp/boats-utils_2.0.2_1727263618400_0.413958861988974","host":"s3://npm-registry-packages"}},"2.0.3":{"name":"@acrontum/boats-utils","version":"2.0.3","keywords":[],"author":{"name":"p-mcgowan"},"license":"ISC","_id":"@acrontum/boats-utils@2.0.3","maintainers":[{"name":"acrontum_sanchez","email":"sanchez@acrontum.de"},{"name":"acrontum_revah","email":"revah@acrontum.de"},{"name":"acrontum_brode","email":"brode@acrontum.de"},{"name":"acrontum_eicken","email":"eicken@acrontum.de"},{"name":"acrontum_knoblach","email":"knoblach@acrontum.de"},{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},{"name":"carmichael.john","email":"john.carmichael@liffery.com"}],"homepage":"https://github.com/acrontum/boats-utils#readme","bugs":{"url":"https://github.com/acrontum/boats-utils/issues"},"dist":{"shasum":"e28bbbdf13598fd8abc06b2c0aa1e3169fda65b6","tarball":"https://registry.npmjs.org/@acrontum/boats-utils/-/boats-utils-2.0.3.tgz","fileCount":8,"integrity":"sha512-Gqc9K59islvST/EAhH3J3vXV0GXC/ukLsn1AKuuGKGmXOihmyGi2Kr0Uu0qJ+6CHph594j0xQZpWhfTrVb47IQ==","signatures":[{"sig":"MEUCIELH9rfu2DcBJGI9AFzYMaDoq5H97j5X+kuxwg+fDNYLAiEA8k9RNWdYBs96kCEvvQzCLfm3Tn+kJk4NyvGXIC38Nk0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":29876},"gitHead":"5ae41ffde3313576253e4dbcc1d51aed14282ef4","scripts":{"lint":"eslint '{src,test}/**/*.{js,ts,json}'","test":"NODE_ENV=test mocha --require source-map-support/register --recursive 'dist/test/**/*.spec.js'","build":"tsc","setup":"git config core.hooksPath ./githooks","prebuild":"rm -rf dist/*","prepublishOnly":"./githooks/pre-push"},"_npmUser":{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},"repository":{"url":"git+https://github.com/acrontum/boats-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"Collection of useful boats template helpers.","directories":{},"_nodeVersion":"20.17.0","_hasShrinkwrap":false,"devDependencies":{"chai":"^4.5.0","boats":"^5.0.0","mocha":"^10.0.0","eslint":"^8.57.1","js-yaml":"^4.1.0","ts-node":"^10.9.2","prettier":"^3.3.3","typescript":"^5.6.2","@types/chai":"^4.3.20","@types/node":"^22.7.0","@types/mocha":"^10.0.8","@types/js-yaml":"^4.0.5","@types/nunjucks":"^3.2.1","@tsconfig/node12":"^12.1.3","chai-as-promised":"^8.0.0","source-map-support":"^0.5.21","eslint-plugin-mocha":"^10.0.5","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.2.1","@types/chai-as-promised":"^8.0.1","@typescript-eslint/parser":"^8.7.0","@typescript-eslint/eslint-plugin":"^8.7.0"},"_npmOperationalInternal":{"tmp":"tmp/boats-utils_2.0.3_1727266794892_0.24910001895771217","host":"s3://npm-registry-packages"}},"2.0.4":{"name":"@acrontum/boats-utils","version":"2.0.4","description":"Collection of useful boats template helpers.","scripts":{"prebuild":"rm -rf dist/*","build":"tsc","setup":"git config core.hooksPath ./githooks","lint":"eslint '{src,test}/**/*.{js,ts,json}'","test":"NODE_ENV=test mocha --require source-map-support/register --recursive 'dist/test/**/*.spec.js'","prepublishOnly":"./githooks/pre-push"},"devDependencies":{"@tsconfig/node12":"^12.1.3","@types/chai":"^4.3.20","@types/chai-as-promised":"^8.0.1","@types/js-yaml":"^4.0.5","@types/mocha":"^10.0.8","@types/node":"^22.7.0","@types/nunjucks":"^3.2.1","@typescript-eslint/eslint-plugin":"^8.7.0","@typescript-eslint/parser":"^8.7.0","boats":"^5.0.0","chai":"^4.5.0","chai-as-promised":"^8.0.0","eslint":"^8.57.1","eslint-config-prettier":"^9.1.0","eslint-plugin-mocha":"^10.0.5","eslint-plugin-prettier":"^5.2.1","js-yaml":"^4.1.0","mocha":"^10.0.0","prettier":"^3.3.3","source-map-support":"^0.5.21","ts-node":"^10.9.2","typescript":"^5.6.2"},"repository":{"type":"git","url":"git+https://github.com/acrontum/boats-utils.git"},"keywords":[],"author":{"name":"p-mcgowan"},"license":"ISC","bugs":{"url":"https://github.com/acrontum/boats-utils/issues"},"homepage":"https://github.com/acrontum/boats-utils#readme","_id":"@acrontum/boats-utils@2.0.4","gitHead":"8b668c80eb66ab5e10a19b8b83f01fb6b3d2b2ef","_nodeVersion":"20.17.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-6O5XBRJPeN40v6EiPWqzk2Wo3pS+IvBSF8KwqeYBJ2dghQQDVa5OhpYNlvJaYEWyyp7pLKL3WQfhKuObBduQLA==","shasum":"fa2288349e9ca0530d7ef3900fa3929b75c3c647","tarball":"https://registry.npmjs.org/@acrontum/boats-utils/-/boats-utils-2.0.4.tgz","fileCount":5,"unpackedSize":15526,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIECKpmo2b+LBL0K273W844X9aN8Q9DpQadWULg5QIs+8AiB3/4HXwpIVn+RgkAYFgE64OC9/Xed5mTE5/IppYvF+sA=="}]},"_npmUser":{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},"directories":{},"maintainers":[{"name":"acrontum_sanchez","email":"sanchez@acrontum.de"},{"name":"acrontum_revah","email":"revah@acrontum.de"},{"name":"acrontum_brode","email":"brode@acrontum.de"},{"name":"acrontum_eicken","email":"eicken@acrontum.de"},{"name":"acrontum_knoblach","email":"knoblach@acrontum.de"},{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},{"name":"carmichael.john","email":"john.carmichael@liffery.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boats-utils_2.0.4_1727267150586_0.9341501106823094"},"_hasShrinkwrap":false}},"time":{"created":"2022-05-15T12:52:23.884Z","modified":"2024-09-25T12:25:51.075Z","1.0.0":"2022-05-15T12:52:24.120Z","1.0.1":"2022-05-27T15:02:44.644Z","1.0.2":"2023-08-01T04:51:51.991Z","2.0.0":"2023-08-02T16:52:37.862Z","2.0.1":"2023-08-02T16:59:22.348Z","2.0.2":"2024-09-25T11:26:58.576Z","2.0.3":"2024-09-25T12:19:55.140Z","2.0.4":"2024-09-25T12:25:50.775Z"},"bugs":{"url":"https://github.com/acrontum/boats-utils/issues"},"author":{"name":"p-mcgowan"},"license":"ISC","homepage":"https://github.com/acrontum/boats-utils#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/acrontum/boats-utils.git"},"description":"Collection of useful boats template helpers.","maintainers":[{"name":"acrontum_sanchez","email":"sanchez@acrontum.de"},{"name":"acrontum_revah","email":"revah@acrontum.de"},{"name":"acrontum_brode","email":"brode@acrontum.de"},{"name":"acrontum_eicken","email":"eicken@acrontum.de"},{"name":"acrontum_knoblach","email":"knoblach@acrontum.de"},{"name":"acr-p-mcgowan","email":"patrick.mcgowan@acrontum.de"},{"name":"carmichael.john","email":"john.carmichael@liffery.com"}],"readme":"# Boats utils\n\nCollection of useful boats template helpers to be used with [j-d-carmichael/boats](https://github.com/j-d-carmichael/boats).\n\n<!--\nnpx doctoc --github readme.md\n-->\n<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n**Table of Contents**  *generated with [DocToc](https://github.com/thlorenz/doctoc)*\n\n- [Usage](#usage)\n- [Modules](#modules)\n  - [`extend`](#extend)\n    - [Examples](#examples)\n  - [`database-entry`](#database-entry)\n    - [Examples](#examples-1)\n  - [`pagination`](#pagination)\n    - [Examples](#examples-2)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n## Usage\n\n```bash\nnpm install @acrontum/boats-utils\n````\n\nIn your openapi boats project, simply include this module as a helper in your build command:\n\n```json\n{\n  \"name\": \"service-openapi-spec\",\n  \"version\": \"1.0.0\",\n  \"description\": \"Some boats openapi builder\",\n  \"scripts\": {\n    \"prebuild\": \"rm -rf build\",\n    \"build\": \"NODE_ENV=test boats --yes -f node_modules/@acrontum/boats-utils/dist -i ./src/index.yml -o ./build/api.yml\",\n    \"postbuild\": \"cp build/api*.yml ./release/$npm_package_name.yml\"\n  },\n  \"keywords\": [],\n  \"author\": \"p-mcgowan\",\n  \"devDependencies\": {\n    \"boats\": \"^2.25.0\",\n    \"@acrontum/boats-utils\": \"^1.0.0\"\n  }\n}\n```\n\n## Modules\n\n\n### [`extend`](./src/extend.ts)\n\nExtend a base model with additional, omitted, required, and / or optional fields.\n\n```yaml\n# model.yml\n\ntype: object\nproperties:\n  id:\n    type: string\n    format: uuid\n  name:\n    type: string\n  email:\n    type: string\n    format: email\n  profilePicture:\n    type: string\n    format: uri\n  # ...\n```\n\n```yaml\n# postModel.yml\n\n{{\n  extend('./model.yml', {\n    omit: [\n      'properties.id'\n    ],\n    require: [\n      'properties.name',\n      'properties.email'\n    ],\n    include: [\n      ['properties.username', { type: 'string', 'x-unique': true }]\n    ],\n    optional: [\n      'properties.dateOfBirth'\n    ]\n  })\n}}\n```\n\n#### Examples\n---\n\nRemoving fields from the model:\n\n```yaml\n# model.yml\n\ntype: object\nrequired:\n  - id\nproperties:\n  id:\n    type: string\n    format: uuid\n  createdAt:\n    type: string\n    format: date-time\n  updatedAt:\n    type: string\n    format: date-time\n  name:\n    type: string\n  email:\n    type: string\n    format: email\n  profilePicture:\n    type: string\n    format: uri\n```\n\n```yaml\n# postModel.yml\n\n{{\n  extend('./model.yml', {\n    omit: [\n      'properties.id',\n      'properties.createdAt',\n      'properties.updatedAt'\n    ]\n  })\n}}\n```\n\nWould output:\n```yaml\ntype: object\nproperties:\n  name:\n    type: string\n  email:\n    type: string\n    format: email\n  profilePicture:\n    type: string\n    format: uri\n```\n---\n\nAdding fields to the model:\n\n```yaml\n# model.yml\n\ntype: object\nproperties:\n  name:\n    type: string\n  email:\n    type: string\n    format: email\n  profilePicture:\n    type: string\n    format: uri\n```\n\n```yaml\n# postModel.yml\n{{\n  extend('./model.yml', {\n    include: [\n      ['properties.password', { type: 'string', minLength: 32 }]\n    ]\n  })\n}}\n```\n\nWould output:\n```yaml\ntype: object\nproperties:\n  name:\n    type: string\n  email:\n    type: string\n    format: email\n  profilePicture:\n    type: string\n    format: uri\n  password:\n    type: string\n    minLength: 32\n```\n---\n\nMarking fields as required:\n\n```yaml\n# model.yml\n\ntype: object\nproperties:\n  name:\n    type: string\n  email:\n    type: string\n    format: email\n  profilePicture:\n    type: string\n    format: uri\n```\n\n```yaml\n# postModel.yml\n\n{{\n  extend('./model.yml', {\n    require: [\n      'properties.email',\n      'properties.name'\n    ]\n  })\n}}\n```\n\nWould output:\n```yaml\ntype: object\nrequired:\n  - name\n  - email\nproperties:\n  name:\n    type: string\n  email:\n    type: string\n    format: email\n  profilePicture:\n    type: string\n    format: uri\n```\n---\n\nMarking fields as optional:\n\n```yaml\n# model.yml\n\ntype: object\nrequire:\n  - name\n  - email\n  - profilePicture\nproperties:\n  name:\n    type: string\n  email:\n    type: string\n    format: email\n  profilePicture:\n    type: string\n    format: uri\n```\n\n```yaml\n# postModel.yml\n\n{{\n  extend('./model.yml', {\n    optional: [\n      'properties.profilePicture'\n    ]\n  })\n}}\n```\n\nWould output:\n```yaml\ntype: object\nrequired:\n  - name\n  - email\nproperties:\n  name:\n    type: string\n  email:\n    type: string\n    format: email\n  profilePicture:\n    type: string\n    format: uri\n```\n---\n\n### [`database-entry`](./src/database-entry.ts)\n\nAdds common DB fields to a model.\n\n```yaml\ntype: object\nproperties:\n  {{ databaseentry(<options>) }}\n  otherProps:\n    type: string\n  # ...\n```\n\n#### Examples\n---\n\nWith no params:\n\n```yaml\n# model.yml\n\ntype: object\nproperties:\n  {{ databaseentry() }}\n  name:\n    type: string\n  profilePicture:\n    type: string\n    format: uri\n```\n\nWould output:\n```yaml\ntype: object\nproperties:\n  id:\n    type: string\n    format: uuid\n  createdAt:\n    type: string\n    format: date-time\n  updatedAt:\n    type: string\n    format: date-time\n  name:\n    type: string\n  profilePicture:\n    type: string\n```\n---\n\nTo specifiy the id type:\n\n```yaml\n# model.yml\n\ntype: object\nproperties:\n  {{ databaseentry({ id: 'string' }) }}\n# {{ databaseentry({ id: 'number' }) }}\n  name:\n    type: string\n  profilePicture:\n    type: string\n    format: uri\n```\n\nWould output:\n```yaml\ntype: object\nproperties:\n  id:\n    type: string\n#   type: number\n  createdAt:\n    type: string\n    format: date-time\n  updatedAt:\n    type: string\n    format: date-time\n  name:\n    type: string\n  profilePicture:\n    type: string\n```\n\n---\n\nWith softDeletion:\n\n```yaml\n# model.yml\n\ntype: object\nproperties:\n  {{ databaseentry({ softDeletion: true }) }}\n  name:\n    type: string\n  profilePicture:\n    type: string\n    format: uri\n```\n\nWould output:\n```yaml\ntype: object\nproperties:\n  id:\n    type: string\n    format: uuid\n  createdAt:\n    type: string\n    format: date-time\n  updatedAt:\n    type: string\n    format: date-time\n  deletedAt:\n    type: string\n    format: date-time\n  name:\n    type: string\n  profilePicture:\n    type: string\n```\n\n### [`pagination`](./src/pagination.ts)\n\nAdds a collection-type pagination model.\n\n```yaml\n{{ pagination(<path_or_options>) }}\n```\n\n#### Examples\n---\n\nWith no params:\n\n```yaml\n# components/schemas/user/model.yml\n\ntype: object\nproperties:\n  name:\n    type: string\n  numberOfDogs:\n    type: number\n```\n\n```yaml\n# components/schemas/user/models.yml\n\n{{ pagination() }}\n```\n\nWould output:\n```yaml\ntype: object\nrequired:\n  - meta\n  - data\nproperties:\n  meta:\n    $ref: \"#/components/schemas/Meta\"\n  data:\n    type: array\n    items: \n      $ref: \"./model.yml\"\n```\n\n---\n\nTo specify another model name:\n\n```yaml\n# components/schemas/user/singleUserResponse.yml\n\ntype: object\nproperties:\n  name:\n    type: string\n  numberOfDogs:\n    type: number\n```\n\n```yaml\n# components/schemas/user/models.yml\n\n{{ pagination({ path: \"./singleUserResponse.yml\" }) }}\n```\nor simply\n```yaml\n{{ pagination(\"./singleUserResponse.yml\") }}\n```\n\nWould output:\n```yaml\ntype: object\nrequired:\n  - meta\n  - data\nproperties:\n  meta:\n    $ref: \"#/components/schemas/Meta\"\n  data:\n    type: array\n    items: \n      $ref: \"./singleUserResponse.yml\"\n```\n\n---\n\nTo specify another pagination model:\n\n```yaml\n# components/schemas/user/singleUserResponse.yml\n\ntype: object\nproperties:\n  name:\n    type: string\n  numberOfDogs:\n    type: number\n```\n\n```yaml\n# components/schemas/user/models.yml\n\n{{ pagination({ paginationModel: \"#/components/schemas/Pagination\" }) }}\n```\n\nWould output:\n```yaml\ntype: object\nrequired:\n  - meta\n  - data\nproperties:\n  meta:\n    $ref: \"#/components/schemas/Pagination\"\n  data:\n    type: array\n    items: \n      $ref: \"./model.yml\"\n```\n\n---\n\nTo alter or remove required fields:\n\n```yaml\n# components/schemas/user/singleUserResponse.yml\n\ntype: object\nproperties:\n  name:\n    type: string\n  numberOfDogs:\n    type: number\n```\n\n```yaml\n# components/schemas/user/models.yml\n\n{{ pagination({ required: ['meta'] }) }}\n```\n\nWould output:\n```yaml\ntype: object\nrequired:\n  - meta\nproperties:\n  meta:\n    $ref: \"#/components/schemas/Pagination\"\n  data:\n    type: array\n    items: \n      $ref: \"./model.yml\"\n```\n\n```yaml\n# components/schemas/user/models.yml\n\n{{ pagination({ required: [] }) }}\n```\n\nWould output:\n```yaml\ntype: object\nproperties:\n  meta:\n    $ref: \"#/components/schemas/Pagination\"\n  data:\n    type: array\n    items: \n      $ref: \"./model.yml\"\n```\n","readmeFilename":"readme.md"}