{"_id":"hof-model","_rev":"66-f7f55c7d2be6fa3a2b7fa213eb0d3b0d","name":"hof-model","dist-tags":{"latest":"3.2.0"},"versions":{"1.0.0":{"name":"hof-model","version":"1.0.0","author":"","license":"MIT","_id":"hof-model@1.0.0","maintainers":[{"name":"joefitter","email":"hello@joefitter.com"}],"homepage":"https://github.com/UKHomeOfficeForms/hof-model","bugs":{"url":"https://github.com/UKHomeOfficeForms/hof-model/issues"},"dist":{"shasum":"ff1af49228ebbda91b1ef1010ab927148b30a8aa","tarball":"https://registry.npmjs.org/hof-model/-/hof-model-1.0.0.tgz","integrity":"sha512-IAGVn6pJWH1IRatj5fNSgY/MNL4TkeZ3c9XWbnnY1Jw2XptvoM/RLomceRwBvMkVJSC+r9XWr+IeL++TQti1Ow==","signatures":[{"sig":"MEUCIQC1U3rIEN8D86v8ap9iM1mHA4TLrL+qX4fQ+2CFIAfFWgIgI5w2N34gawG1guNM5Ld7EFC0514UZbB4Z/XhmZEMP9Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"ff1af49228ebbda91b1ef1010ab927148b30a8aa","gitHead":"ba6eb064f1f2401c1a7fc03433c069446b079326","scripts":{"lint":"eslint ./","snyk":"snyk test","test":"npm run lint && npm run cover && npm run snyk","unit":"mocha test/spec/ --recursive --require test/helper","cover":"istanbul cover _mocha -- test/spec/ --recursive --require test/helper","check-coverage":"istanbul check-coverage --statement 100 --branch 100 --function 100 --line 100"},"_npmUser":{"name":"joefitter","email":"hello@joefitter.com"},"deprecated":"DEPRECATED, this is built into hof v19 <(^_^)> & should not be installed separately","repository":{"url":"git+https://github.com/UKHomeOfficeForms/hof-model.git","type":"git"},"_npmVersion":"3.10.8","description":"Simple model for interacting with http/rest apis.","directories":{},"_nodeVersion":"6.2.2","dependencies":{"request":"^2.72.0","underscore":"^1.7.0"},"devDependencies":{"chai":"^3.5.0","snyk":"^1.14.3","mocha":"^2.1.0","sinon":"^1.12.2","eslint":"^2.10.2","istanbul":"^0.4.3","sinon-chai":"^2.6.0"},"_npmOperationalInternal":{"tmp":"tmp/hof-model-1.0.0.tgz_1481116568126_0.43417300283908844","host":"packages-12-west.internal.npmjs.com"}},"2.0.0":{"name":"hof-model","version":"2.0.0","author":"","license":"MIT","_id":"hof-model@2.0.0","maintainers":[{"name":"joefitter","email":"hello@joefitter.com"}],"homepage":"https://github.com/UKHomeOfficeForms/hof-model","bugs":{"url":"https://github.com/UKHomeOfficeForms/hof-model/issues"},"dist":{"shasum":"e9765ef9e6759f0a974ec2a68cf04cebecd3fc7b","tarball":"https://registry.npmjs.org/hof-model/-/hof-model-2.0.0.tgz","integrity":"sha512-G8e2Pql3TyJdxbH0kQ3b++CsR1c4hQlCI6XuZdnwE2/VkgWUGPvqLkyqDXTCjYV3wV+vYTdwzfaRqzjo4GMokQ==","signatures":[{"sig":"MEYCIQCblmnOoKs+yVAwVKLMO6XZCsc6dQVyPrpeCiDZjAm4aQIhAKcPCTmFUB3lQPKHgSpgR3s3q+Lub6FgVT4emiENQb22","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"e9765ef9e6759f0a974ec2a68cf04cebecd3fc7b","gitHead":"0db6fd743a28c7207843fcb8610d7b3e56873503","scripts":{"lint":"eslint ./","snyk":"snyk test","test":"npm run lint && npm run cover && npm run snyk","unit":"mocha test/spec/ --recursive --require test/helper","cover":"istanbul cover _mocha -- test/spec/ --recursive --require test/helper","check-coverage":"istanbul check-coverage --statement 100 --branch 100 --function 100 --line 100"},"_npmUser":{"name":"joefitter","email":"hello@joefitter.com"},"deprecated":"DEPRECATED, this is built into hof v19 <(^_^)> & should not be installed separately","repository":{"url":"git+https://github.com/UKHomeOfficeForms/hof-model.git","type":"git"},"_npmVersion":"3.10.8","description":"Simple model for interacting with http/rest apis.","directories":{},"_nodeVersion":"6.2.2","dependencies":{"lodash":"^4.17.2","request":"^2.72.0"},"devDependencies":{"chai":"^3.5.0","snyk":"^1.14.3","mocha":"^2.1.0","sinon":"^1.12.2","istanbul":"^0.4.3","sinon-chai":"^2.6.0","eslint-config-homeoffice":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hof-model-2.0.0.tgz_1481203556745_0.6242003049701452","host":"packages-18-east.internal.npmjs.com"}},"2.1.0":{"name":"hof-model","version":"2.1.0","author":"","license":"MIT","_id":"hof-model@2.1.0","maintainers":[{"name":"easternbloc","email":"ben@marvell-consulting.com"},{"name":"joefitter","email":"hello@joefitter.com"},{"name":"josephchapman","email":"info@josephchapman.com"},{"name":"lennym","email":"leonard.martin@gmail.com"}],"homepage":"https://github.com/UKHomeOfficeForms/hof-model","bugs":{"url":"https://github.com/UKHomeOfficeForms/hof-model/issues"},"dist":{"shasum":"5caada0534d979ccc0b8fa9ccb3029c4c2755631","tarball":"https://registry.npmjs.org/hof-model/-/hof-model-2.1.0.tgz","integrity":"sha512-AbE4A4e3jMezk9m2ZIp2jlybhwaH0qZXf6DZVtfdOkB4E6j2uQcFZgRUV8y7FEU882dhbBfVWLe5wyfnch8jQg==","signatures":[{"sig":"MEUCIGf50xo88Q+L4LuOof/6yst76JtKRkOgvfPxAIfial9AAiEA2+LVorWwc8rgW62+2+zD+YMfyMFhEAfhgitY8J3ksC8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"5caada0534d979ccc0b8fa9ccb3029c4c2755631","gitHead":"907fa6655448b555d28fced6f8ced9703acce9d7","scripts":{"lint":"eslint ./","snyk":"snyk auth $SNYK_TOKEN && snyk test","test":"npm run lint && npm run cover && npm run snyk","unit":"mocha test/spec/ --recursive --require test/helper","cover":"istanbul cover _mocha -- test/spec/ --recursive --require test/helper","check-coverage":"istanbul check-coverage --statement 100 --branch 100 --function 100 --line 100"},"_npmUser":{"name":"lennym","email":"leonard.martin@gmail.com"},"deprecated":"DEPRECATED, this is built into hof v19 <(^_^)> & should not be installed separately","repository":{"url":"git+https://github.com/UKHomeOfficeForms/hof-model.git","type":"git"},"_npmVersion":"4.1.2","description":"Simple model for interacting with http/rest apis.","directories":{},"_nodeVersion":"6.9.4","dependencies":{"lodash":"^4.17.2","request":"^2.72.0"},"devDependencies":{"chai":"^3.5.0","snyk":"^1.14.3","mocha":"^2.1.0","sinon":"^1.12.2","eslint":"^3.15.0","istanbul":"^0.4.3","sinon-chai":"^2.6.0","eslint-config-homeoffice":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hof-model-2.1.0.tgz_1486401944889_0.848308845423162","host":"packages-18-east.internal.npmjs.com"}},"3.0.0":{"name":"hof-model","version":"3.0.0","author":"","license":"MIT","_id":"hof-model@3.0.0","maintainers":[{"name":"easternbloc","email":"ben@marvell-consulting.com"},{"name":"joefitter","email":"hello@joefitter.com"},{"name":"josephchapman","email":"info@josephchapman.com"},{"name":"lennym","email":"leonard.martin@gmail.com"}],"homepage":"https://github.com/UKHomeOfficeForms/hof-model","bugs":{"url":"https://github.com/UKHomeOfficeForms/hof-model/issues"},"dist":{"shasum":"47caa93f780f1ef13ecaa37929c1fe0c6a4d2f82","tarball":"https://registry.npmjs.org/hof-model/-/hof-model-3.0.0.tgz","integrity":"sha512-P5peHG0srPa8yxHYsjDr4v9wVueAmrLgAx025qJcxoRpZCpHESErwEacrq3cHvVryKNe4X22RgfGT3VjmG6Vwg==","signatures":[{"sig":"MEYCIQDv1wGb6+GmdsL5xZE0USP1YfHFRgE1P82d2krhLRofnQIhANS3cqCmpP1vf760MerIK3L12WXPX52MIv1iXYZta0kt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"47caa93f780f1ef13ecaa37929c1fe0c6a4d2f82","gitHead":"dd4d89a93472cd7ebfccf1438925f3aef330cf6f","scripts":{"lint":"eslint ./","snyk":"snyk auth $SNYK_TOKEN && snyk test","test":"npm run lint && npm run cover && npm run snyk","unit":"mocha test/spec/ --recursive --require test/helper","cover":"istanbul cover _mocha -- test/spec/ --recursive --require test/helper","check-coverage":"istanbul check-coverage --statement 100 --branch 100 --function 100 --line 100"},"_npmUser":{"name":"lennym","email":"leonard.martin@gmail.com"},"deprecated":"DEPRECATED, this is built into hof v19 <(^_^)> & should not be installed separately","repository":{"url":"git+https://github.com/UKHomeOfficeForms/hof-model.git","type":"git"},"_npmVersion":"4.1.2","description":"Simple model for interacting with http/rest apis.","directories":{},"_nodeVersion":"6.9.4","dependencies":{"lodash":"^4.17.2","request":"^2.79.0"},"devDependencies":{"chai":"^3.5.0","snyk":"^1.14.3","mocha":"^2.1.0","sinon":"^1.12.2","eslint":"^3.15.0","istanbul":"^0.4.3","sinon-chai":"^2.6.0","eslint-config-homeoffice":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hof-model-3.0.0.tgz_1488378328605_0.018974883249029517","host":"packages-18-east.internal.npmjs.com"}},"3.0.1":{"name":"hof-model","version":"3.0.1","author":"","license":"MIT","_id":"hof-model@3.0.1","maintainers":[{"name":"easternbloc","email":"ben@marvell-consulting.com"},{"name":"joefitter","email":"hello@joefitter.com"},{"name":"josephchapman","email":"info@josephchapman.com"},{"name":"lennym","email":"leonard.martin@gmail.com"}],"homepage":"https://github.com/UKHomeOfficeForms/hof-model","bugs":{"url":"https://github.com/UKHomeOfficeForms/hof-model/issues"},"dist":{"shasum":"add28a5baf2294ea4564783d9302c9fcc5f318aa","tarball":"https://registry.npmjs.org/hof-model/-/hof-model-3.0.1.tgz","integrity":"sha512-aTt2ttqMXFhf/rkHQX+NfhnWIGANaTZeFYtsK8+BAWyi3Qh7IeO/zCKGlsEHAQg80oEqK7fu444jln4wKo3BKA==","signatures":[{"sig":"MEUCIQDvBSDbQW+H0dljtDk5jSgqRMyOIgieSGFA+CnzXMfl0AIgAOBwvBrLFMT1m8jwB+ATpmzyKbo3CTnPfMiJ8figPVc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"add28a5baf2294ea4564783d9302c9fcc5f318aa","gitHead":"56f29014bca09fd4d2c36d39154b0131b037eef2","scripts":{"lint":"eslint ./","snyk":"snyk auth $SNYK_TOKEN && snyk test","test":"npm run lint && npm run cover && npm run snyk","unit":"mocha test/spec/ --recursive --require test/helper","cover":"istanbul cover _mocha -- test/spec/ --recursive --require test/helper","check-coverage":"istanbul check-coverage --statement 100 --branch 100 --function 100 --line 100"},"_npmUser":{"name":"joefitter","email":"hello@joefitter.com"},"deprecated":"DEPRECATED, this is built into hof v19 <(^_^)> & should not be installed separately","repository":{"url":"git+https://github.com/UKHomeOfficeForms/hof-model.git","type":"git"},"_npmVersion":"3.10.10","description":"Simple model for interacting with http/rest apis.","directories":{},"_nodeVersion":"6.2.2","dependencies":{"lodash":"^4.17.2","request":"^2.79.0"},"devDependencies":{"chai":"^3.5.0","snyk":"^1.14.3","mocha":"^2.1.0","sinon":"^1.12.2","eslint":"^3.15.0","istanbul":"^0.4.3","sinon-chai":"^2.6.0","eslint-config-homeoffice":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hof-model-3.0.1.tgz_1490285672541_0.8588870202656835","host":"packages-12-west.internal.npmjs.com"}},"3.1.0":{"name":"hof-model","version":"3.1.0","author":"","license":"MIT","_id":"hof-model@3.1.0","maintainers":[{"name":"josephchapman","email":"info@josephchapman.com"},{"name":"easternbloc","email":"ben@marvell-consulting.com"},{"name":"lennym","email":"leonard.martin@gmail.com"},{"name":"joefitter","email":"hello@joefitter.com"}],"homepage":"https://github.com/UKHomeOfficeForms/hof-model","bugs":{"url":"https://github.com/UKHomeOfficeForms/hof-model/issues"},"dist":{"shasum":"a36267ef543722c8e81474dab774105f65e9bce4","tarball":"https://registry.npmjs.org/hof-model/-/hof-model-3.1.0.tgz","integrity":"sha512-YOgEW+5UjNvkTw1j31KzI65tPxXM/Hg+nK+qCujmGKLPgJaHyYFirebQFpvevfUp6h1r+DhDduxkCvjQUyZNzA==","signatures":[{"sig":"MEUCIGZ5R4vdzTltQ7Zo9xdQrTXPYGi9g3PzFJb1VHKW/LnjAiEA8y/cHDxoEZERGg3nswVeOgBB21bNmfdpZ63TBR3HVdg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"a36267ef543722c8e81474dab774105f65e9bce4","gitHead":"f2e7acb9db3aed72116c1dd1f9490d0796b05978","scripts":{"lint":"eslint ./","snyk":"snyk auth $SNYK_TOKEN && snyk test","test":"npm run lint && npm run cover && npm run snyk","unit":"mocha test/spec/ --recursive --require test/helper","cover":"istanbul cover _mocha -- test/spec/ --recursive --require test/helper","check-coverage":"istanbul check-coverage --statement 100 --branch 100 --function 100 --line 100"},"_npmUser":{"name":"lennym","email":"leonard.martin@gmail.com"},"deprecated":"DEPRECATED, this is built into hof v19 <(^_^)> & should not be installed separately","repository":{"url":"git+https://github.com/UKHomeOfficeForms/hof-model.git","type":"git"},"_npmVersion":"4.5.0","description":"Simple model for interacting with http/rest apis.","directories":{},"_nodeVersion":"6.9.4","dependencies":{"lodash":"^4.17.2","request":"^2.79.0"},"devDependencies":{"chai":"^3.5.0","snyk":"^1.14.3","mocha":"^2.1.0","sinon":"^1.12.2","eslint":"^3.15.0","istanbul":"^0.4.3","sinon-chai":"^2.6.0","eslint-config-homeoffice":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hof-model-3.1.0.tgz_1496226112403_0.05896960338577628","host":"s3://npm-registry-packages"}},"3.1.1":{"name":"hof-model","version":"3.1.1","author":"","license":"MIT","_id":"hof-model@3.1.1","maintainers":[{"name":"josephchapman","email":"info@josephchapman.com"},{"name":"easternbloc","email":"ben@marvell-consulting.com"},{"name":"lennym","email":"leonard.martin@gmail.com"},{"name":"joefitter","email":"hello@joefitter.com"}],"homepage":"https://github.com/UKHomeOfficeForms/hof-model","bugs":{"url":"https://github.com/UKHomeOfficeForms/hof-model/issues"},"dist":{"shasum":"a2c5840109b0a2d21c1dad4f111dad6e90d574db","tarball":"https://registry.npmjs.org/hof-model/-/hof-model-3.1.1.tgz","integrity":"sha512-AfCz81q1en6BWp1br/EEejQQLU7ZfWtTbn+n6n+BXMwcGuDpP+9i39NGWY4+G8FpuZgMyW4rh3hazZF/EbO6JA==","signatures":[{"sig":"MEYCIQC28V3vOKLwMz7O0nbrrLbBktIUvR46g8EIM80M33ajrAIhAKow/emBc6ldvFFlco5CFEDxfxg4uBHyT19Xrfa6rFNb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"a2c5840109b0a2d21c1dad4f111dad6e90d574db","gitHead":"9507507df25e171019aaa704a6465c030a17dafe","scripts":{"lint":"eslint ./","snyk":"snyk auth $SNYK_TOKEN && snyk test","test":"npm run lint && npm run cover && npm run snyk","unit":"mocha test/spec/ --recursive --require test/helper","cover":"istanbul cover _mocha -- test/spec/ --recursive --require test/helper","check-coverage":"istanbul check-coverage --statement 100 --branch 100 --function 100 --line 100"},"_npmUser":{"name":"josephchapman","email":"info@josephchapman.com"},"deprecated":"DEPRECATED, this is built into hof v19 <(^_^)> & should not be installed separately","repository":{"url":"git+https://github.com/UKHomeOfficeForms/hof-model.git","type":"git"},"_npmVersion":"3.10.8","description":"Simple model for interacting with http/rest apis.","directories":{},"_nodeVersion":"6.10.0","dependencies":{"lodash":"^4.17.2","request":"^2.79.0"},"devDependencies":{"chai":"^3.5.0","snyk":"^1.14.3","mocha":"^2.1.0","sinon":"^1.12.2","eslint":"^3.15.0","istanbul":"^0.4.3","sinon-chai":"^2.6.0","eslint-config-homeoffice":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hof-model-3.1.1.tgz_1496417294482_0.91891133855097","host":"s3://npm-registry-packages"}},"3.1.2":{"name":"hof-model","version":"3.1.2","author":"","license":"MIT","_id":"hof-model@3.1.2","maintainers":[{"name":"josephchapman","email":"info@josephchapman.com"},{"name":"easternbloc","email":"ben@marvell-consulting.com"},{"name":"lennym","email":"leonard.martin@gmail.com"},{"name":"joefitter","email":"hello@joefitter.com"}],"homepage":"https://github.com/UKHomeOfficeForms/hof-model","bugs":{"url":"https://github.com/UKHomeOfficeForms/hof-model/issues"},"dist":{"shasum":"4268c0e2773dcee4b059bf3f6c25ba7c3d79cae0","tarball":"https://registry.npmjs.org/hof-model/-/hof-model-3.1.2.tgz","integrity":"sha512-Exp3iSmSQa1MbL+/uw6xa/PkYdxjFPr97P7pzcomEJipTCEoW1ift/1keLFv1YI/zjTwm5Yzuxd0MvGrj9t3hg==","signatures":[{"sig":"MEUCIQCGeh1o/zD3qRtmQkt0IotdqpH81L9uFBgYkpJ8udr6KAIgR5ZSQlBG9JZjtKxTfEb5BP/Ulb9HcetUgxeYAhF5T+0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"b28c6325b24ff80ec386c2db1d52e70844398d72","scripts":{"lint":"eslint ./","snyk":"snyk auth $SNYK_TOKEN && snyk test","test":"npm run lint && npm run cover && npm run snyk","unit":"mocha test/spec/ --recursive --require test/helper","cover":"istanbul cover _mocha -- test/spec/ --recursive --require test/helper","check-coverage":"istanbul check-coverage --statement 100 --branch 100 --function 100 --line 100"},"_npmUser":{"name":"lennym","email":"leonard.martin@gmail.com"},"deprecated":"DEPRECATED, this is built into hof v19 <(^_^)> & should not be installed separately","repository":{"url":"git+https://github.com/UKHomeOfficeForms/hof-model.git","type":"git"},"_npmVersion":"5.0.3","description":"Simple model for interacting with http/rest apis.","directories":{},"_nodeVersion":"6.9.4","dependencies":{"lodash":"^4.17.2","request":"^2.81.0"},"devDependencies":{"chai":"^3.5.0","snyk":"^1.14.3","mocha":"^2.1.0","sinon":"^1.12.2","eslint":"^3.15.0","istanbul":"^0.4.3","sinon-chai":"^2.6.0","eslint-config-homeoffice":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hof-model-3.1.2.tgz_1498727718455_0.8659788647200912","host":"s3://npm-registry-packages"}},"3.2.0":{"name":"hof-model","version":"3.2.0","author":"","license":"MIT","_id":"hof-model@3.2.0","maintainers":[{"name":"mcrawleyhomeoffice","email":"martin.crawley@digital.homeoffice.gov.uk"},{"name":"alicelui","email":"alice.lui@digital.homeoffice.gov.uk"},{"name":"hovell722","email":"james.hovell@digital.homeoffice.gov.uk"},{"name":"hof-bot-user","email":"sas-hof-test@digital.homeoffice.gov.uk"},{"name":"mohameduwais","email":"mohamed.uwais@digital.homeoffice.gov.uk"},{"name":"cmedland","email":"christopher.medland@digital.homeoffice.gov.uk"},{"name":"maxosully","email":"max.osullivan@digital.homeoffice.gov.uk"},{"name":"sarahjaneluff","email":"Sarah-Jane.Luff@digital.homeoffice.gov.uk"},{"name":"lennym","email":"leonard.martin@gmail.com"},{"name":"easternbloc","email":"ben@marvell-consulting.com"},{"name":"joefitter","email":"hello@joefitter.com"},{"name":"coupey","email":"paul@coupey.co.uk"},{"name":"sulthan-ahmed","email":"sulthanahmeduk@gmail.com"},{"name":"andrew.moody.ho","email":"andrew.moody@digital.homeoffice.gov.uk"},{"name":"aswann","email":"alexander.swann@digital.homeoffice.gov.uk"},{"name":"robertdeniszczyc2","email":"Robert.deniszczyc@digital.homeoffice.gov.uk"},{"name":"agraham19","email":"andrew.graham@digital.homeoffice.gov.uk"},{"name":"aaron.robinson","email":"aaron.robinson@digital.homeoffice.gov.uk"},{"name":"josephchapman","email":"joe@creatify.io"}],"homepage":"https://github.com/UKHomeOfficeForms/hof-model","bugs":{"url":"https://github.com/UKHomeOfficeForms/hof-model/issues"},"dist":{"shasum":"cda75e8ed5cde8fcf493182e602a5f2c47a9a1a4","tarball":"https://registry.npmjs.org/hof-model/-/hof-model-3.2.0.tgz","fileCount":15,"integrity":"sha512-TqIfk7uVvABLm/lwrkgeGaWZNhJyd2L2dmuyT0RhgFrvxoqxE7x0yEcL4RMLuCvU4u4fZHM6SFOOt1Lb1FuI2A==","signatures":[{"sig":"MEUCIFauGoqFNIXPIWNpxMLN+UwceNT5i9b0TEjqt2kbnhqyAiEAwwByUqiKEpATsKflorXtpOEko8ZBUzaAU51OQ+iqJ6o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":65069,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7xOcCRA9TVsSAnZWagAAKmcQAJP/LG21pNnCi9FASViv\n6ZXlfXjPYjLXuZjSEPWsVCOUNMjA2na6goDtRj+XMJfGlBd1b3RGT/4tobTK\nd7Kri/gIDj2SFJNLGUWSLSCot/GB3qJqo69h6mqep13raV90VA3ter16GGyA\n924QvRrygPWYgj0z8cQknqSiQFroGZb0gn8FZHmr6TxQL4Na9oq/b8jMvF/D\n0WpBYFtE6ysaZAeX28uI6JrznWlb+u1WzPwOqudBxyuHYD0qaWOtBF1/IjRM\neB2fDXxFKHiNebqRLbTB2Qe8BKQeLDbJ+B25/LIW0lNjiDmtxw7rdbMGeKnF\n/aPfrN8ZnOLEtb3RhuO2uTZ0y+Bpg5MhohXxCwAo+drbfGijlaLldbvqCJF4\nGtnDV0+0znmFH97ecRYE1dThSxnpxgTat+05qV7TTo/bSvO8kIO1t2X6hvR7\ng72/gIUiKqjm5O6KJvvzWL/p/Vf0b8yChBGsDled0naXkUI/rxMXtcdixW43\nLrD5/Ml5WWSldyonMyul8RHpl1PEQkRt1opbLyKVm+9DkWDdiJLwhb6Xv0s1\nge+ylhjjjqEtu7If7MmZhf749RDr7epOuri6lPqgDbXgb/OFFn3Ow2PFqAMA\nNA5L2YYwrYLgftNldOPJwcPJKtML/Od3tORd14TbKj+KTVSmsOAwaKjA3XtF\n7PFh\r\n=yvFA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","engines":{"npm":">=6.14.0","node":">=10.22.1"},"gitHead":"dc192b77024582f0565a05a0fff2ca50727d99ab","scripts":{"lint":"eslint ./","test":"npm run lint && npm run cover","unit":"mocha test/spec/ --recursive --require test/helper","cover":"istanbul cover _mocha -- test/spec/ --recursive --require test/helper","postversion":"git push && git push --tags","check-coverage":"istanbul check-coverage --statement 100 --branch 100 --function 100 --line 100"},"_npmUser":{"name":"hof-bot-user","email":"sas-hof-test@digital.homeoffice.gov.uk"},"deprecated":"DEPRECATED, this is built into hof v19 <(^_^)> & should not be installed separately","repository":{"url":"git+https://github.com/UKHomeOfficeForms/hof-model.git","type":"git"},"_npmVersion":"6.14.12","description":"Simple model for interacting with http/rest apis.","directories":{},"_nodeVersion":"10.24.1","dependencies":{"lodash":"^4.17.2","request":"^2.81.0"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^3.5.0","mocha":"^2.1.0","sinon":"^1.12.2","eslint":"^3.15.0","istanbul":"^0.4.3","sinon-chai":"^2.6.0","eslint-config-homeoffice":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hof-model_3.2.0_1626280860367_0.38019948147194005","host":"s3://npm-registry-packages"}}},"time":{"created":"2016-12-07T13:16:10.044Z","modified":"2026-09-21T15:12:54.071Z","1.0.0":"2016-12-07T13:16:10.044Z","2.0.0":"2016-12-08T13:25:57.502Z","2.1.0":"2017-02-06T17:25:45.466Z","3.0.0":"2017-03-01T14:25:29.196Z","3.0.1":"2017-03-23T16:14:34.398Z","3.1.0":"2017-05-31T10:21:53.441Z","3.1.1":"2017-06-02T15:28:15.395Z","3.1.2":"2017-06-29T09:15:19.418Z","3.2.0":"2021-07-14T16:41:00.528Z"},"bugs":{"url":"https://github.com/UKHomeOfficeForms/hof-model/issues"},"license":"MIT","homepage":"https://github.com/UKHomeOfficeForms/hof-model","repository":{"url":"git+https://github.com/UKHomeOfficeForms/hof-model.git","type":"git"},"description":"Simple model for interacting with http/rest apis.","maintainers":[{"email":"aaron.russell@digital.homeoffice.gov.uk","name":"aaronrussellho"},{"email":"sas-hof-test@digital.homeoffice.gov.uk","name":"hof-bot-user"},{"email":"dk4g.blob@gmail.com","name":"dk4g"},{"email":"gregory.wolverson@digital.homeoffice.gov.uk","name":"greg_wolverson_ho"},{"email":"vinodha.samiyappan@digital.homeoffice.gov.uk","name":"vinodha.s"},{"email":"megan.john@digital.homeoffice.gov.uk","name":"meganjohn"},{"email":"nese.zorba@digital.homeoffice.gov.uk","name":"nzorba"},{"email":"rayhannur.rohman@digital.homeoffice.gov.uk","name":"rayhannurrohmanho"},{"email":"vivek.kumar1@digital.homeoffice.gov.uk","name":"vivekkumar-ho"},{"email":"ben@marvell-consulting.com","name":"easternbloc"},{"email":"joseph.chapman@creatify.io","name":"josephchapman"},{"email":"leonard.martin@gmail.com","name":"lennym"},{"email":"hello@joefitter.com","name":"joefitter"}],"readme":"# hof-model\nSimple model for interacting with http/rest apis.\n\n\n## Data Storage\n\nModels can be used as basic data storage with set/get and change events.\n\n### Methods\n\n#### `set`\n\nSave a property to a model. Properties can be passed as a separate key/value arguments, or with multiple properties as an object.\n\n```javascript\nconst model = new Model();\nmodel.set('key', 'value');\nmodel.set({\n  firstname: 'John',\n  lastname: 'Smith'\n});\n```\n\n#### `get`\n\nRetrieve a property from a model:\n\n```javascript\nconst val = model.get('key');\n// val = 'value'\n```\n\n#### `toJSON`\n\nReturns a map of all properties on a model:\n\n```javascript\nconst json = model.toJSON();\n// json = { key: 'value' }\n```\n\n### Events\n\n`change` is emitted when a property on a model changes\n\n```javascript\nconst model = new Model();\nmodel.on('change', (changedFields) => {\n  // changedFields contains a map of the key/value pairs which have changed\n  console.log(changedFields);\n});\n```\n\n`change:<key>` is emitted when a particular property - with a key of `<key>` - on a model changes\n\n```javascript\nconst model = new Model();\nmodel.on('change:name', (newValue, oldValue) => {\n  // handler is passed the new value and the old value as arguents\n});\nmodel.set('name', 'John Smith');\n```\n\n### Referenced Fields\n\nA field can be set to a reference to another field by setting it a value of `$ref:<key>` where `<key>` is the field to be reference. The field will then behave exactly like a normal field except that its value will always appear as the value of the referenced field.\n\n```javascript\nconst model = new Model();\nmodel.set('home-address', '1 Main Street');\nmodel.set('contact-address', '$ref:home-address');\n\nmodel.get('contact-address'); // => '1 Main Street';\nmodel.set('home-address', '2 Main Street');\nmodel.get('contact-address'); // => '2 Main Street';\n\nmodel.toJSON(); // => { home-address: '2 Main Street', 'contact-address': '2 Main Street' }\n```\n\nChange events will be fired on the referenced field if the underlying value changes.\n\n```javascript\nconst model = new Model();\nmodel.set('home-address', '1 Main Street');\nmodel.set('contact-address', '$ref:home-address');\nmodel.on('change:contact-address', (value, oldValue) => {\n  // this is fired when home-address property changes\n});\n\nmodel.set('home-address', '2 Main Street');\n```\n\nA field can be unreferenced by setting its value to any other value.\n\n```javascript\nconst model = new Model();\nmodel.set('home-address', '1 Main Street');\n\n// reference the field\nmodel.set('contact-address', '$ref:home-address');\n\n// unreference the field\nmodel.set('contact-address', '1 Other Road');\n```\n\n## API Client\n\nNormally this would be used as an abstract class and extended with your own implementation.\n\nImplementations would normally define at least a `url` method to define the target of API calls.\n\nThere are three methods for API interaction corresponding to GET, POST, and DELETE http methods. These methods all return a Promise.\n\n### Methods\n\n#### `fetch`\n\n```javascript\nconst model = new Model();\nmodel.fetch().then(data => {\n  console.log(data);\n});\n```\n\n#### `save`\n\n```javascript\nconst model = new Model();\nmodel.set({\n  property: 'properties are sent as JSON request body by default'\n});\nmodel.save().then(data => {\n  console.log(data);\n});\n```\n\nThe method can also be overwritten by passing options\n\n```javascript\nconst model = new Model();\nmodel.set({\n  property: 'this will be sent as a PUT request'\n});\nmodel.save({ method: 'PUT' }).then(data => {\n  console.log(data);\n});\n```\n\n#### `delete`\n\n```javascript\nconst model = new Model();\nmodel.delete().then(data => {\n  console.log(data);\n});\n```\n\n### Options\n\nIf no `url` method is defined then the model will use the options parameter and [Node's url.format method](https://nodejs.org/api/url.html#url_url_format_urlobj) to construct a URL.\n\n```javascript\nconst model = new Model();\n\n// make a GET request to http://example.com:3000/foo/bar\nmodel.fetch({\n  protocol: 'http',\n  hostname: 'example.com',\n  port: 3000,\n  path: '/foo/bar'\n}).then(data => {\n  console.log(data);\n});\n```\n\n### Events\n\nAPI requests will emit events as part of their lifecycle.\n\n`sync` is emitted when an API request is sent\n```javascript\nmodel.on('sync', function (settings) { });\n```\n\n`success` is emitted when an API request successfully completes\n```javascript\nmodel.on('success', function (data, settings, statusCode, responseTime) { });\n```\n\n`fail` is emitted when an API request fails\n```javascript\nmodel.on('fail', function (err, data, settings, statusCode, responseTime) { });\n```\n","readmeFilename":"README.md"}