{"_id":"@ucd-lib/cork-app-utils","_rev":"61-dfe469b9f5db66fe6443316fc9e5d208","name":"@ucd-lib/cork-app-utils","dist-tags":{"latest":"6.6.0"},"versions":{"2.0.0":{"name":"@ucd-lib/cork-app-utils","version":"2.0.0","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@2.0.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"}],"dist":{"shasum":"a34184f15ee684ebd4eac86012370e75deb3141e","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-2.0.0.tgz","integrity":"sha512-asql2St6FA/3lcwYvAnvFwh4IUSqE7A6FYtncRgYPWa5M3uF6pJbamNXDybrhGPvW/Bj9nx+7wIndgPl/4u+qw==","signatures":[{"sig":"MEUCIGKTbeIK8lICeb1eTEsHdNkevHzXSJ5XIiu3Ij/Kgja3AiEArdCHOsxOCQgs9kaqf64dvAvYGEkLXnCSzL109fzwQIc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"20edb4349a628b922a32807e6f45b0065af98edc","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"5.5.1","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"8.5.0","dependencies":{"request":"^2.83.0"},"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils-2.0.0.tgz_1509568347112_0.3676652575377375","host":"s3://npm-registry-packages"}},"2.0.1":{"name":"@ucd-lib/cork-app-utils","version":"2.0.1","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@2.0.1","maintainers":[{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"}],"dist":{"shasum":"dea0df94ac8deeb451ca20a40e695c694c2c74db","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-2.0.1.tgz","integrity":"sha512-JTilNgcOpEHJo3I3c2EZmXMraU74ZaMzg0UiQ3Ga5nqhC+iEgfgB7JAuu8pRqUNqpXHk0qNbCf77sMlkP0/Qew==","signatures":[{"sig":"MEYCIQCaeSiqTcHR7owJT2uLyYX/33iR8Mc813CmUpynLfk8MwIhANj5BCCOTLI5BQWGu1QVBj1NO0+dkufWZGJlItrY2uEq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"1b414128d0dcace9325cb7995c714565fe25c0c4","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"5.5.1","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"8.5.0","dependencies":{"isomorphic-fetch":"^2.2.1"},"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils-2.0.1.tgz_1509643574001_0.5350463520735502","host":"s3://npm-registry-packages"}},"2.0.2":{"name":"@ucd-lib/cork-app-utils","version":"2.0.2","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@2.0.2","maintainers":[{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"}],"dist":{"shasum":"0fa98b3136b98abef8a31bd2de7e22c2a5b536eb","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-2.0.2.tgz","integrity":"sha512-Xyr8zwmJtfy6MFFKPQteukdgaq5/vZ9YsGwBpnybrIESnrb9V4nnw9+MSTPIxdZ8zpDxM4TluMobXVduJsQhXQ==","signatures":[{"sig":"MEYCIQD0UZJwrsEzfe4yS5gFL80fdfAmlT9SLbx6771XUvBY/wIhAL9wWKkYh1bx0U3g5vI+6DRnDoAHBFFDd+r/ph91n8/M","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"1bc2c04d4c06d442736d18cc8c06cf983b7cd430","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"5.5.1","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"8.5.0","dependencies":{"isomorphic-fetch":"^2.2.1"},"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils-2.0.2.tgz_1509648350069_0.5990762102883309","host":"s3://npm-registry-packages"}},"2.0.3":{"name":"@ucd-lib/cork-app-utils","version":"2.0.3","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@2.0.3","maintainers":[{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"}],"dist":{"shasum":"c2fea7b4070019a85d01901a890c108da5418351","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-2.0.3.tgz","integrity":"sha512-67z0aYRXnIv6zTapX/r+FjEcasJ12Ndhhd+rlH01YDQtYO/CD2LY5R0X7roVDrJmBn7KvRIVYm0530quxyEF+w==","signatures":[{"sig":"MEUCIQDSh9+d96i3sANSDScJbK+ZDq4Puds1XlcRE1sHW1M2aQIge2nZuH9Jn+iz3eZaSlrTE2yBgdI7wLGPNbT8sQHGEMo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"c0aecaca8ca913c00a05a24ce385f8955a97ebf7","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"5.5.1","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"8.9.0","dependencies":{"isomorphic-fetch":"^2.2.1"},"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils-2.0.3.tgz_1509664228572_0.6003941048402339","host":"s3://npm-registry-packages"}},"2.0.4":{"name":"@ucd-lib/cork-app-utils","version":"2.0.4","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@2.0.4","maintainers":[{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"}],"dist":{"shasum":"5baf247e6085f1b369bfdbe943ddb0181de3d36c","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-2.0.4.tgz","integrity":"sha512-hDnCd2jPG+vjs24q+DSsXCAZ9zrJ5GgTWOupmQ8KWr3DUFMOLtcsEuzYhRAbQT8abU/JXcElPr31uGb76Gv+GQ==","signatures":[{"sig":"MEYCIQCNbLIIRC3quk4iuW/uGeGs1NVhFwhvwXT2QqvUp95tDAIhAPh+NHygf9s6smK69oLTlOMp8E6CRni+mLFpUgyKNueO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"6c626460eb45e68ebbdd1de91b8394da6b30b826","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"5.5.1","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"8.9.0","dependencies":{"isomorphic-fetch":"^2.2.1"},"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils-2.0.4.tgz_1510360637220_0.3196240491233766","host":"s3://npm-registry-packages"}},"2.0.5":{"name":"@ucd-lib/cork-app-utils","version":"2.0.5","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@2.0.5","maintainers":[{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"6bda51bbac0a9b79eec539a6ed4a579640185f0d","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-2.0.5.tgz","integrity":"sha512-9TTxPYjaHpSmsJNHoRQYaFaaFyzFEmgC2bkDV+Vrs8VZoLwPSPCH8enUCCNm4hIr5NWhb30IFKPHu+cf2tq+JA==","signatures":[{"sig":"MEYCIQDsV8IR1JZAWNVBSJUnoAkJge3seZHjHdvYUFSmzPAH2gIhAJADTAF0iJKrnx8K8MlYEj3aFg8j0+JwWenJvbqrtL9q","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","gitHead":"cbb1664e4cc0cc7026ebbc0916d68eb8d1515164","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"5.5.1","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"8.9.1","dependencies":{"fs-extra":"^4.0.2","isomorphic-fetch":"^2.2.1"},"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils-2.0.5.tgz_1513124999508_0.08482422423548996","host":"s3://npm-registry-packages"}},"3.0.0":{"name":"@ucd-lib/cork-app-utils","version":"3.0.0","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@3.0.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"bfdc17397fed34dd5b7f508b304e74ced96e74ac","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-3.0.0.tgz","fileCount":18,"integrity":"sha512-p1uZ5ZbcIEKLD7POTbzEARDdbCm9FOCyBIwGhtMh2LZjgko86sxowPDshyp+FI09zPJ/iDGXqQM5t50mWvUQoA==","signatures":[{"sig":"MEYCIQCbF7nBzCePTdxEDG66z72AFcUHctOYiKK+iMHpY7YrRQIhAIXSEdIBHb40IR1UcniVWtWo/px4NSqNiSHVq5616hcF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33509,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa1iHPCRA9TVsSAnZWagAANj8QAJ5owAoUvRiTCyVXenOC\nR/OV6FhyZ7vNhu2yIPOGa40jdrlNSxOssN0V/PJf+BXJY3Y33G8qcAnYDdN4\nMThpvtIYTv0O6qJJRUzj6vUajC4q4Cq61LsO7vNJz9SsekjJdGM3hLX14NWu\nrEq+ftn8EVe2xADWdm9UofbUEETAq/AKvWIQvLIAlixjNbBttOiP7i+JMdt9\nJ5hOiAeFj+sCmUNd6Ry2N3y11ftu69VMjydmAsXKMsursHd3oymwOTqWCA3X\nu6+3tMNE2egxJYom6/Yya5y/IvfNT+giAzRHf6X7SNl7xbrnDG8290cSu8w+\nffMuglZpmEjoWB/vAJAsfQQ1id72c5WKYHJAMSCuOr97YZCHJjoG67D3z4sU\nvvgfGgI3bLUEpvKHiXuYbUI0ZCsj8IjbwmawlUs8a5TW8HPo9gO1CO8fGchE\nE8pV40FygAhT+B+mGOFE1JKlhXGyuIppANOVrQxaDBHVB7gwSDiTJIikKrfo\nVMqhAfWYGo3a8gdPuJCkelLimB9zSP0790Q5drOA3gUA//pCeyk3QUZ7x4az\nPl+YEzBJNthphgF9MvU8RrI9WPBwaSDcLVLCd16/gZOcTWXUHrqXTdw/h/ER\nJ7LVOzuWHIhfiBIrhqNmWknFithIz1sJ5NXgSV57Ebx6/DpSJJ/4Ux4O7flJ\nRJcm\r\n=gT9M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"c6f5cf65d3a2c0c3f2509bbf445f37f1a0d0cd21","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"5.6.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"9.4.0","dependencies":{"fs-extra":"^4.0.2","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_3.0.0_1523982798349_0.6218301473770778","host":"s3://npm-registry-packages"}},"3.0.1":{"name":"@ucd-lib/cork-app-utils","version":"3.0.1","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@3.0.1","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"012a4088f11425deed025ae98774a42f56d48e2c","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-3.0.1.tgz","fileCount":18,"integrity":"sha512-wmaGG7aYRIICRI9gvcXHHpcTNg7uVTkXOtvu7Wi+l8nn1+jlKai13HDN7r55lMErbe4d4xu0PJZR0sZqmaR2bA==","signatures":[{"sig":"MEQCIFG4eDhc7T3c0jlgFwHnU0l91K9fLP9EroHtbyZR6KrQAiBekq+E7CFl2s1kYoemsmYAwvfxIctfjdtxI1qcOOJwZg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":32485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa1jF7CRA9TVsSAnZWagAAdoUP/1dD8XZCz2sdEE3y+o+N\n948GZwFEVfCLk4SFW/2xCcmJoOefQVYV8Ffoqnq4D6B5vIZ5+fyX7HGNp6zk\nwMSz8Ri3RavN2Y/7jdYgzcRct4EECzTEbTL2L0GHivBA2x/pQ/8e315jjJpA\nOxnnsgGjKgWg8/1s0kQzqDRoKDNo8Gitrm4DO3PAAF/9C5HBpnVvH2w+UqON\n3OnlyRNJDkPhE6cotwNpOLR4x/EtVVosEeVJdaffAJVYRnQSvs2R6g1t6iLa\nbSkERr91gDiKyUpopCqIQc0fpUIfSgnEUPC/W8T7w13uunNRw/2JRvhF6/z5\n3qOviFFjzxJ0pArEDwPjvDjTqp6i0ZaK8Fu/fDwp1g3yVuqwNthHZNiWcEOD\n7DUye0UiSiPdcoerMfoaddAYD/TDBTQxSdsAl19YtyLf8L1Ex68aj5Oi2bQ4\nG5FLBIu2FXVD4dn9fQt3NOzS+9UxRes4D8OBiUWRsSukKL2S3tvqHCgvlEvI\nbYtR4z48Gaffp1DJawi2qeFm8/CEp41P0w5N/Gx3HiA1S/5dz14C1YDVcoJL\nmvml9YRNEad0KWTewlcCCGNQmNa7Z+3WFgk1yMSGmyMTRbkTzyrO40jg6t/Z\nnLzpLPRpyQAj8kzW5Of9APoRCoaQnnaQXidE4mfTYeP4gr9nsWuMVefpzHRT\nPGGS\r\n=vOa/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"6bdaf2fd04bc8b5edc18eb98d753016b5c0f54e5","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"5.6.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"9.4.0","dependencies":{"fs-extra":"^4.0.2","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_3.0.1_1523986810705_0.5723852211558096","host":"s3://npm-registry-packages"}},"3.0.2":{"name":"@ucd-lib/cork-app-utils","version":"3.0.2","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@3.0.2","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"d4a5dfa0b2a76823a85a5848962d575d5b419083","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-3.0.2.tgz","fileCount":18,"integrity":"sha512-YWvb6B29aPdQiPokhj1fiR+2ciELT5h1YPpqpk3vA7yIIA5r3avqCLrx2RI60ekgvDsIloI4ZRM3fm4PN5D1sg==","signatures":[{"sig":"MEQCIG8fupWM0FdpsG7CuKDFdojxdaw+/JQHgLNvMMQHUB6VAiA2Bg86wgkdwFknCc6cjYdZWDNdpB4bKVn/25KN4LS5CQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33433,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa2g+qCRA9TVsSAnZWagAAJewP/i7BG1MH+LmHy2UbKFmv\nWEtVSH50gkBQkEZsvHeaA7LgNqYIzX5wD0SI2He6gn8+JmwRYu4wUWrzPVDe\nhjCyN0AZXsNEya4MtimgUHjVXH2vuTbMJuVMu5fwn+y+jcA8dyOkcpGzT82Q\nGX/kkBlAnPSPiTFO0W2c26jN8G1VyZ676JjMuNugDlQMFCjKIXMu9KcfGU8z\n3fhQvpytAgzBQfhuyqho9z5JW77Upl5PbZSypuzeTFXG/O1ah1J9KgZWrwNY\nLfoKICdCkRAzHuaB1yjl+GPAWMpds1hrHFPcLlJ/cWvQc5fDtKi60e8Vc7oE\nMENePQLMTbJCJVHPh3sTuKb4XAE9/++UYwHh9Qhr7x39ljeaSmO1aeFbBASE\nJgeAAB7+EcZVXUND+8yWAIcg12l514m7eUcuDm36W7Qinx1kKgAMT6hhrkR4\nTD10bnluQKPguuItA5eoZHcMYrjAKp6VHEsOo/yzy5SXFmohlvW3HScYeXDf\nA87rTZrE+jm9E+zyn4rI1UsvqdTbC7qZdJlVEs9tXby5iP1PIXwTxpOqtq+i\nzK8LF1UlFN/GbIn2/RT9gNlmABOkIxPmvNBZM/MWrGAgnDmEl0cIie7ihSEd\nD0vkrpDPfbHXBlsV+n0l/XkF/kOEIQaReFiL4wh3CRzp20VSwNbs79NLzooM\nwdrJ\r\n=8Im3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"dd89a4b73dcb9aabde4c6b833fdce0e59a7be373","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"5.6.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"9.4.0","dependencies":{"fs-extra":"^4.0.2","fast-deep-equal":"^1.1.0","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_3.0.2_1524240297123_0.27753873570584875","host":"s3://npm-registry-packages"}},"3.0.3":{"name":"@ucd-lib/cork-app-utils","version":"3.0.3","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@3.0.3","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"8aa8607686aeeb95dcbc25369ccd00a5c7c80abd","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-3.0.3.tgz","fileCount":18,"integrity":"sha512-5X89SO/9pzDUjEkImpexod4OCnnMlt+jjXhkLLJoxBPWpXEp2N1zOKrZEHtF8S3RH38uoSQyY6CGBCCb3oojEQ==","signatures":[{"sig":"MEYCIQCndRuHwnktHNgTF/5nTT+fxrOCmWwXNaOynedz52l6KQIhAKbe4tYIYAg/qLhdWS0sTlgUPQ4d2RmTRIjHOtuzuHt2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33489,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa74jZCRA9TVsSAnZWagAANw0P/2c3hJcdagqYhq0lTT1/\nuJqXBkN95Ynd4faO7CFlfGfJ3qvokDMq3s6g3va3+I4FToUKHRJueQEln7YW\n20nKzyuhOcTvD2NbjADIpxKu6qV+fEQkOyRwdqyPEJzDh6H5xUSqj5Rgsi30\n+EcZ9/mCcOnyJGWfusRJGD9KP6pgPue6rXxwDdLyWS9wS2r1WbVz1fYe+/mm\nBm1d+DWVDHZ5Ix9PEbX1IM2XpFYZli7+X82tcuguHITZg16FU/RA8yFEQTfy\ndW3+ZRhipBNq+FQn+s6217UBuqmBidhNhQu157CPuAefc9LxYuJYIWzhmrfd\nxN982U77zHSa2SBxW/+2KUK860RR2gP3CELFMKedop5AAlCQFMSnZ8MOlPTL\nL8hElKVmOusgWX1yGoEBUDPEPUP/zR9Z4JTHnZ4kdVMrES3PkRVGYDm+LCdH\n0hujOyHzkM2hzLM/tiLaRtUxgcph2c1LcEfb4KC3xR9GJ1rul0jYUS2iwb47\n9vERHdXDu0LPg/Jc+SGlZrVaHyHWAzUZiGfNEuxeYXQHvCmYmb8NJECGsqx8\nltLRp1sRLTkXzJgPsMXUvEGo3XO9ch+YWBJvRibLywAoe3OPFSpXgXQ4TPPe\nlxi5XVnEPgXuEp0ks5RQC5rpzb8f+kZ/8Ji6BvT6272rBNLtO/Il8UfAevCf\n+3Rm\r\n=zeps\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"c85c0d6cad425ed58c23617450c08aa201bf1f2e","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.0.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"9.4.0","dependencies":{"fs-extra":"^4.0.2","fast-deep-equal":"^1.1.0","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_3.0.3_1525647575853_0.5062520440695439","host":"s3://npm-registry-packages"}},"3.1.0":{"name":"@ucd-lib/cork-app-utils","version":"3.1.0","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@3.1.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"8f2ecfaf963ac8e2deee05dac4dfb888cfe21915","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-3.1.0.tgz","fileCount":18,"integrity":"sha512-2bdCmdQwxBz9PziUCLVVy1SeUHO7fpohsVo38qDTBWBtcZUSLHYpIKZIGhzRYelggrn7biQK/W1DYngH5xD81A==","signatures":[{"sig":"MEUCIAO6mwxLHcUNBghDcK8DiMBwNiJBHaawNvpeX2WceTFwAiEA+kOhQaLDaRULVPR+QmxIrH86cgY2dj8+5wLOszmabTY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33476,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbEWtOCRA9TVsSAnZWagAAYf8P/0g57K3UsIj0npQOfodQ\nikiINdH/TsWx2tSDHqI16rT+IymQraX41kfJWdCfZJ8/9M3y85KDAA95sgQi\nH04uruJbNFRKnyC4zmAglEOixygTwX7K0orzo0rnLo7ZA1h9Gi9NWoVR45LX\n9TWLfkgWI2lUMwAaDwTPB/AnGBEk1SVMXarhQpmJlxXO33GMRV/UBrscdmhI\nVOMZp64g9MnFoHIYUHDML2XxFVAC31E17dmP2nD/K4ehVOJBUMhSeBPI7cWg\nVC5uWz77MJFyecBYoNJ2UANh08qjrHopg90dwaxCs2+FGvlmX8p3Dy4nHgGi\njmSZMwmBqHA5VQNHy9So5VBcwecnGIEIw12a/R9iDUB5Z2Vx/A77672OWz2w\n2TL1p+jRZq3HLYhk7sHhpqJI/q6HT6ZtVhwCYXk72mEC59HtES4USwBOr/pa\npCN37nhU6wddFAcRGcjbtmWvx8Uq/slnfjSCHN0JsgJ/sneQEcQg5tZ+/bQq\nsfll72knuryUr+s1aLIeM4Zs6IzZSy1OdHjJy/ZsSvsa/kNevE6zFGESsckB\nPXY5IMA61xPqZzT7SF+wtjgTdXvZwcjop909k8n5x2i+TXP/OWnezyMz9/UJ\nN+cMsLgqH8xR3WhvKdMGN4kfCtc7GeXL7nEG7DL2fSFMuebAmjoYSIZGErFN\nQm6K\r\n=MGeh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"78bb229f155521ffa0239acc8983d367366db77e","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.0.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"9.4.0","dependencies":{"fs-extra":"^4.0.2","fast-deep-equal":"^1.1.0","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_3.1.0_1527868228740_0.43991967559185596","host":"s3://npm-registry-packages"}},"3.2.0":{"name":"@ucd-lib/cork-app-utils","version":"3.2.0","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@3.2.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"df8b7c9e68c5b3bd22f6ecb83cec9c069b34f634","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-3.2.0.tgz","fileCount":19,"integrity":"sha512-PewRAPc88DWEAxFofRuR3Nh/8Zf4Y3sOkAdoLPDmldLkRgCGHqelP3reUIjmADtOIgn/6wk/tWLMKDq835+8GA==","signatures":[{"sig":"MEQCIGF/FvA9D6FbZfJkNPD9j9WakhrBKmhan00ZIFcOTZN8AiADCI3irbjJH4SbPA10J4b5Yzpemp8GNkSGt0O+2vmpfw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbKUEUCRA9TVsSAnZWagAA1EQP+QCDYUir0RaXNjHg3BVv\n1tycPGq3edPuXqEBDeqQTC6JTRu/0DajY20PdYYmSluG3YtWwA/xWFvu28BC\n38fDL+GIt0NF35mrgDglBNHYsJRksRNZs8baU+uLcnnNNGsVq2qGLh6gQdra\nuSBBZuN/ZnIQL6z/Bvp4eGJOtyyyt38tFTZc9FK4FgMhZEa0X3MIoQaaMgJD\ngI81ue0AmNYZG8Cae3T8CqUYsji8Nfxvi6AZvDDmQh4d0ochS7TWQCCpl/Mi\n0IQ9fmHh6HLZz2u5IaSDlT93Y+87BTS0O6+6+mfMrIgqS24F03MG75Op5oKa\n0yEAyi0cnEFmJ5AFc7bmwgh2qkcGxDXbShO9lbw0GfXjMnPePDJWEVAVqDy+\nBlSzBw1Aa2WC8Da4Bc3uLU8FZE75J5hfgy2Y6K5u4Is1QgYYYjVO4nOq5EEQ\n1iBKuTVeQ2msr2h8xnRJmZ91r07+FHIafWi4BtMfsdsnPTEZ9IeqsJxQVdVK\nuTQcHPUi9zo5CfUG5J0APHOIvZk7BR5OqJWmX242M86eB2aX9N69zKf0JWcN\ntnBgoXMEYx6CWXk3owhNWXGgzjydOnke7jOy+ENt3CG0rssdyKLFnb/XPGaq\ns6ZGVwK/XUlrVzvKnhAl8s9qjF1hGmqmaYxDV9kAuEub71omNW/bpxEiSLVD\ncePb\r\n=agw0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"f97102ca1c00e8b037d2fce3f2b3b59f575d6b06","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.0.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"9.4.0","dependencies":{"fs-extra":"^4.0.2","fast-deep-equal":"^1.1.0","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_3.2.0_1529430291398_0.8314842155736597","host":"s3://npm-registry-packages"}},"3.2.1":{"name":"@ucd-lib/cork-app-utils","version":"3.2.1","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@3.2.1","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"4192a47995ad483ad9012d948d769bcc1484490b","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-3.2.1.tgz","fileCount":19,"integrity":"sha512-X3rtHjrDIiFh5o7EozUCRBSn1YlnjSDGa7PjB4zrdiUHJpgfnCKDstAI+29gglASMZbb4WFqighnemvxUzGbng==","signatures":[{"sig":"MEUCIG4VWiPmO7ygpcajlZfWG9K5c9Q7LU1iYGgghzW4nDErAiEA3b09uR8SrexBdeomzP8G883sRKSi4vxewkJMQSk6DR8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36443,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbKUGqCRA9TVsSAnZWagAAg4cP/3Oct2cIRgUGjJ8QUopA\nH33FqUyQGVoRwBkZLvkeRmAmVZf38Mre2f6VWpKp7wpjaFXdrMJN+9fjDXpw\nkJEdMVvbEurdbdmBTKuydNmZA8xBBiwOkqrl4xxSmkRLrxzb0GiY4WgNiDyp\ngE/9L7uFkDvV7XATHwmeni9BHUrBYVP70AetYsWa295vb8sVRKocMVJWGHWO\nLr6ojXHSVGMfV2kWWT7TeAyUe4rhWYsI1mV4x1gJ0HSlQRbpJW+sDHQfGRCm\nQczAYWSyHARiQ96vAbP6LqKWTp59i1yXJr/OIQzNILKsq3JerbXxkpzz8wFO\nLVt37cK9y+PG/+xWRKoL/4mOasI2+RhWtR9K7U+JRw8ndkNwwW9B+T0Sv97j\nQ2DQv4Z8Q66Eg0JJsl9ZwF96M4uug0KlkxRbDIL+4XK7WzqyEkXcIAx1Uh6y\npUJXGrjS07xqkwNcyY9TjZTUD065iBZlZ6FebYWSdqv8VM4DqEHOs8mvfBNi\nSjOcVnTWLQUQmH9jb7fOIqqkfU5m5RjgxbbNFyG0tv3HZN7P+shjVw9hHVGF\nIHwNEASZx/qYOaZg2voyKMPcKrQ3aDJCSRDgcQtb1cUkfNowmfbR2yKTPcA2\nbgN1KxHkmSED4RaV43qxCMZQUfALplRA45HMmNwHb6Vjr5z38ysKr7/mhVx8\nFni0\r\n=JMOA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"2ff1fc7d48d45a4387105321ed38ad47e9ce24bc","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.0.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"9.4.0","dependencies":{"fs-extra":"^4.0.2","fast-deep-equal":"^1.1.0","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_3.2.1_1529430442174_0.48174988340298386","host":"s3://npm-registry-packages"}},"4.0.0":{"name":"@ucd-lib/cork-app-utils","version":"4.0.0","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.0.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"8715df3f422249550ff8dc61221ca9c3b4d45894","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.0.0.tgz","fileCount":20,"integrity":"sha512-iDVE4LuBvvTD54ZF1cpyHTX83pW+/3T4Sk+F9hIqlTILL5F5Q/qZvJ+Sw1rHVvGZ98vQ8RDtbo8PGw1klNtXVg==","signatures":[{"sig":"MEUCIFmmY46WNlZdunFsbx+OXanAHa9kpV+i8FzgABax+VXLAiEAkhYITxUuF728aKTPLmqJ6U4MqOHtopbk7whvyBVNV8o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36880,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbZMccCRA9TVsSAnZWagAA4H0P/3FtWPpKGCEtVibhAzwi\nz2vfKWV/ODAtst4enEAnml7Ii4raBJ7IW7a9qzpZ7IOxv8l4Z8aBSBYjHwMk\nffIeeBCNPfQVoH/flJm5zZdJ/0nvs8w9Sn3XtZgomR+fOU9OdMgjStPyhRhC\nGK3svlR6aOozn3MBPPy/I2DykFgArkOUwQlaNV/2r/pZkxrXeBte+ToRptna\n3qiPTJKDYVU87RdqA2mZH6vZy4YJ5do0i9bMsv7wgdqq0r0XeshwhAydP3NE\n7KpGdrl0mtM7l/LNLT/p2uZzsvbtByt6xQvklM4EFzcjY25PCvoyg1S+dXmQ\n/MhTKOLeiq7LCJ8SK9P1skMJlA/LV9zsGwoKAIHsyOy3DCNYiog+sKlY1t59\n8SI71Fv1iSsOU7SjaV9b62I1u1cle0bhYlJ8T//DMwiEhEzO0eSqn5Si64Pc\nYsGEWseFlOTApuF1AxiGYTNH/kNG5aFkdBMRwl+reoy6Rx/2wsM1xHj2bFhg\nC11/RIY+Aw/oJ4pCCmAkCj+pQtANn9+1lq4Tp6Qt+ENZVsgmgJMylqJhUzfy\n4fmdHYvGmtzeBHHDuhrUTSalPnR8Ek/lQT+OKglOb7a7ECHEgDFZKRJ3h2tq\n0oR+u8O7J4HG+uh4aQpM7zyK1hSm2jAI+jYE2f2Cp7bUtklRfzQ9nCI4L6zi\nIUTF\r\n=JJUr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"13b0d68f31cc07607f6fa808d870650e730c5d74","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.1.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"9.4.0","dependencies":{"fs-extra":"^4.0.2","fast-deep-equal":"^1.1.0","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.0.0_1533331227654_0.006931394527717183","host":"s3://npm-registry-packages"}},"4.0.1":{"name":"@ucd-lib/cork-app-utils","version":"4.0.1","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.0.1","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"7994af43c27f96d3d90b015a9dc6998793028955","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.0.1.tgz","fileCount":20,"integrity":"sha512-5fQFwA2yzsRbIhn758dOUiqFLa57HPtrFiJQX+6PJ/KD+QpJd8dehcmMcaHnj0/YiDGMWzfL6YRuYfw8udbA4g==","signatures":[{"sig":"MEYCIQDc4eantEYhnOXrCRGOYTAsEqUJgOr/zmu+G5k3vrWkQwIhALl+KhjG4Q0yfYoN6Rx4G0ptnW5rERxnAWpT9oPCX8u5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36880,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbfI+pCRA9TVsSAnZWagAAdycQAI2g8CyW/o229Wciqx/v\nOAktn7LlxBgGd/zXbsFho3CWipZJaD85Z7HJlC2R24Hw6QhId8BuL4zoMTqe\nrL2FBGovS+hZgNPmuXqDvXVIU8P5sm9KzfN1lVEDxJ7thtUrg1bgh+xRox4A\njE8pz13KOCegagatTdZuwbKRmeOJ+/+TqmaSelFwoSj8dleMV5qUAtgZv5rW\nj9PXaDFhqRF4YlkjEtV8phxGM6NEd6CyPDPul41oxLbNpPY7pPbFDr/7i8+t\nxiY9tvf4eERP3Psd5Y5ZY86HhJQhBestYYmdDDHQMaZjfhraWF6GC37FkqbZ\n9IM1ZHI5HZ4aEaBoqXxMDdDTd7q2AZI4J0Cdc8etWHtaYNlGtZUQO22aGpoN\nHE3xqCha2mDTaphVGR5C8cgMNcB328BiOCrcyrKo4yJ+prAzqjIirLRh/SCj\n/mkmo575kfgC4Sv+E3fomkzIlQG5Y7PQrO54BhxkeYKoRRn2u94V2GSch5eE\nnSj/woeh2MsuHrzZFlArm2rqwfGRiH8ZVlri2b2F7bWkUlhL++7QDoQROre9\n7MMPAK5m52ncevhOjzhtc8I/A2Mqv5nIx3aNJnbl1wzl7EtptwJtTc8HWGNE\nS5fxK7w+/Bdj3pEQoFPS2fis1Hgfkuo4LmGMtt3HJWb6T4kSW7f8Ga7jX41b\nTTNg\r\n=zMPW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"95f5041332427ff2698331398ebff1f7651f1d4f","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.1.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"9.4.0","dependencies":{"fs-extra":"^4.0.2","fast-deep-equal":"^1.1.0","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.0.1_1534889896555_0.6671000815987136","host":"s3://npm-registry-packages"}},"4.1.0":{"name":"@ucd-lib/cork-app-utils","version":"4.1.0","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.1.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"babc40c78848a2668a6060f4877919b9afce1579","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.1.0.tgz","fileCount":21,"integrity":"sha512-1NUWmSA5sl+URlIhFe4RKET11xliFvy4q4SOOmPBFWvpcoxrl5buJsFHhHM5DfLxLDEIzrEC/Dm6BvOpyJun0g==","signatures":[{"sig":"MEQCIHQ2oHbXi5gMZs6Dr9ZwcN9QxFG658R4z7+SBbmUiVSdAiAdTHUrB3pyyCv9tQ3uTL+rJBDZT1cX+3csZcwDIuSiOQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":38054,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhwNyCRA9TVsSAnZWagAAzEMP/R8DNFL8yOKMr5N8Vqtm\njeV2IGrRiIVf6gz/njub7/9dxesPof8YvbACd379baR/QDfZ2bmzoHca4oTb\nQN3VVgN7guDJ33xLRD2ghX9KGlTKDiiVQeMXEnluA3qVIH6XPPoDnBj1QZH4\nafUOHYX6QKaar/x/eDaxgcGIZl/z3eE+8+2jYH5P/fqwdqxBmBMy57Ie6XQo\nkhHKaibvde+WwKN7mEWwoDsexeNALLgtt8arKwnvgYhCS5UMtiwQC4Du63Ol\nY33SqnHDD7KmsgFjrDbA/+dAdZUR1W6TVWdTJCf83Mm78ayvtteioHagV2aF\nTlpQg4C5VSmeqN9L1yV71CzY64AWa4cE4+1Zuw8NGsP9UKAnnRiNkdnxpaYm\ngxPvl1rxyhE9kuBu7m3f6fLKZYK/WAKu9EI1Y3ZeOfZUKWEOzEb9WHXpoz01\nvNIRZSdOp7cWWHkDjNxt4mQRfPahH4qIPuAxCUurIGQ/iRDeEXPW1C/W6PUX\nSRKfXcP72mCjt7dbTyz0gffePqnWwzNOduFV9GEcf1OhljIunBtZBmEy++01\n98DZmLYECkZegGokQal5E+2zIdd7FrYfZ4q3+GofIlStOPhv+Si6nspUOm6+\npCHwLpNiKMt/LxcIjjcsb5jBBIJ9hb0BuEFEP+OgEGv2kiTI5lZ6Pn47qSIZ\nGD6E\r\n=LSJE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"e33d90e312f7899b55ec3b36f583ef8ca6917126","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.1.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"9.4.0","dependencies":{"fs-extra":"^4.0.2","fast-deep-equal":"^1.1.0","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.1.0_1535574897879_0.6984164230238998","host":"s3://npm-registry-packages"}},"4.1.1":{"name":"@ucd-lib/cork-app-utils","version":"4.1.1","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.1.1","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"30b9370ae0531a62615a788f5b8fb427439f5e90","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.1.1.tgz","fileCount":21,"integrity":"sha512-pDv3BpVy1R7NpNykjyqgsySEMfkD7lHdEAhLruXf8gU/V8Yk2YEQPbeTJnKB7GknSOEjrghtYu6VVQLk3Bn0qw==","signatures":[{"sig":"MEUCIAGArZST9lIX7CozFhO/ripzrEe5uHP/9A9CPan37Tk4AiEAzyAbaPQMv2eayvBrljg+IZofnrhuGrPBqsa3EldZ0uE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":38057,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhwe3CRA9TVsSAnZWagAAwTgP/ijwXZ0r4ghXgNbpBtXi\nL82fCfKPSw3UhNAIWmCMOY3HQEtsmIpeTXsZHM7SprW/e8/40q6RRrqC8ywS\n/3ze3MQWNLtT1UWXJEtDVSUnqthq8866ZDUPkEp/CtbRZloJgbsLPSxV/lRR\nfMba0Z9UWYkeUud+0fjgwAI9nhSBQJNgup+vxzF4sTgYiguBCADEFAof3XEF\nmcN7ajq5vMUPNC19HR0cLTIZ7YnWqy1M8eW9TFd+O/O24YVSOBGIYCnP6dYi\nxenxXpOUh2ApBsL3JzVzYxFGgxoladPZ753Nx79y3TyyHg5Lzs0xelsVR9k3\ntFweUcqdEZDSh8b0yooaJhjKs0W1CLrFcrjons9FZTPNr7G/mpZERk+b7Cyr\n8s1p75iBCkUsB+Syc7FE0iDeOUYfcj0QdGURzaVUZQv/CsPrQSi0SpHHcAUr\ngUye7bGRXmTwFd3rtoSaJxCNQLZq2HKjcT3yFNVLAElBekipCh2DkNVD4e7Y\ncnAQuhjj0PRvo4ZMOCYFyH0SAi/Ok9hfkyCOKmg75c2scJ9Ni5CmcToET5BM\nw0Ps3m+MTNkUQFx14F+D49kjPvgcqO86wh9wyDUrI9fJPJbdaV33bzzUjDrX\nyT3MNGdsU8srSOo2XTyir8DjVIRfYX5BUY98qEa81hsE3m3mselXxtcpFT8b\n0uLR\r\n=OVE4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"26fa54dad2536ebedfde30d0548b4c739e2f176a","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.1.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"9.4.0","dependencies":{"fs-extra":"^4.0.2","fast-deep-equal":"^1.1.0","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.1.1_1535575990540_0.9670057219377552","host":"s3://npm-registry-packages"}},"4.1.2":{"name":"@ucd-lib/cork-app-utils","version":"4.1.2","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.1.2","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"fd87cb02b0c96530f28bb6191d452c8c116e858c","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.1.2.tgz","fileCount":21,"integrity":"sha512-VNSUH4pBATNK/OEk6jm/NsvoqO+ZTple75TqDmxHWpOsm25Tv9PxcshbZuvzukEcMJma6exrHHPODSY5Txy+jA==","signatures":[{"sig":"MEUCIAVEZ+5ikwfJoHup84V15OI8yOntxSeQmcWh9yMEbNOgAiEAm4Nx8GaM7EWpMTpLDXCAlywbLPh3ryW/unBgPtUdbFE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":38461,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbt6XaCRA9TVsSAnZWagAAd3EP/RIG8ng5vw/q1L2eWnrG\n+3l7fTOClb0F5b+iySixR3H1SjCF0m9mIqhcZNTogfaxe5ph9R4j2C7efZI9\nZ8FUJyhLC/KRuRscnDf2Ljp+TLcjis0QhcwjsHXhPn5rD/CiTAB6WEM45ASJ\ncZB82oPJNeAnMENsouUW2B64Wf+us5n/qAqu5rLHiy+d0XH5ZVj5O3xyDIeI\nmie6md8JfqioLQHjAEJ4c/PvNADZCeWMRZDK1SwpUrYirgZg/UAJR7LyMORU\nWe9rK03iF/b8P5S63ypCTjz+o0G1S7IfLMnw6hf7uLmontYCK0S1bRJz3Mi8\nI+a29QmixsoJnAvbezDaapPVtmhE2Suz+R3uMixVl+Sbwmg0FsJXKOF7reXM\nQJwW3n0n4/DHY3o3xL1JRY7oqiqt0bXSjxTjrGYBLd5WrLv8U96BW5eXZXkI\nUT++EqApB6iZKdrtQWqQ/+nXhVM8m6J+88z9qbl6brxyMxscOkSQQnCRxkYW\n8gLhrhNmHUGv125j3+d6qaAg/sIP6nAgtCvKslASXtG5nbJUwYNMDXhfBAxg\nVaoNs90vRTktZE517bbpIHxr5WFz83KdA55tl035uvZilxcDNS0LRFzcoAyN\nbiogagcTZt1wSsGKK033VaGfg2iZOb9cakuOaS0ft9LCweWV+XePG6ekiqPx\nrSmA\r\n=EQK3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"c4b2baefb60d0ac5007afad09e5e2528f5ad6372","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.4.1","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"10.10.0","dependencies":{"fs-extra":"^4.0.2","fast-deep-equal":"^1.1.0","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.1.2_1538762202002_0.2054698969636113","host":"s3://npm-registry-packages"}},"4.2.0":{"name":"@ucd-lib/cork-app-utils","version":"4.2.0","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.2.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"88b911d06681eff898c027b252f843c5eea8b37e","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.2.0.tgz","fileCount":25,"integrity":"sha512-/9yAflflrYvIRr2kT0+p5dnhDekinG7bydIOPmuISBbRRaGKnjs3NpUxUyzpF0A4CP7W0Cnkz9tqFLR8ti0s8g==","signatures":[{"sig":"MEUCIQDDyZPYZz9/IS5lrmL24wqLiWl68CbhcM/kirZArORJcgIgP2BQu3c0+77vxEIVMCWc9NkK8CpxlkE1ChApztJdXMA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50000,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJclnLaCRA9TVsSAnZWagAAQb8QAJHeK7dqMPqdbr5Ojhn0\nm0PejeUjkvaRCI2157lv7eQv+VlDuag7uqlSxlmxDd2ptwz1ro07ctyc99tR\n9tPDVc2bwrCkRSXSKhfcZ3vkAhKsMe4DDufJVO6wImJd5yeP0WEzoRwQSNi6\nEcinG80Khqc7h4EEM6WLBUgUw1v34OT6znnT1GPsbA8ve/BoS6bE24SqGZBC\nQTXrLAH+TYB1XuWPfSzKOB0OV/Izr9oCkZISO4vbi2bG6M50lfkEByZcMBQN\n3Mw66bkvoiWPLF7/VsAr3fWurjnP8/1uEnnyAE6uMaowTuqacBrt/mKhE0nW\nNnAFSOFE+xId3p7M4lutlPhfkmj4Pf/vA5uJw1g0xiUPHIU6DZJvuIR3yfxR\nIy1W2jDEeKi4w0eiDzShs4mvoHADVt3/fd0EK9pCYml6MK+oguSUZF3g4ZX2\nbX0ntsRL4ks+nie6UehbXcFz1qSbCJEzdkfuzGLnVsSM4qeperd+r51XiO/Y\nTFBRYVuzTiRJ/J3hI5pLlYHrNVVJRHz0iJQHaeQGsm0GxsQer+qYp2rgfh8G\nq9lI3AzshxR4fqr6qI5g1fWi76r92BeHWRLNTM2a2jR+mKTPf1PLs/q1e18/\nows5NiAH5gHPSdyqJIQ+1/+2fHLZPHE50ey6YIIpoJIjol2hWB+3DRt/j9JL\nGwP/\r\n=1X3Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"ca671e50d3c858d8b29d208d91d4e8a02a0192c3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.7.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"11.12.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.2.0_1553363673941_0.9687276385991364","host":"s3://npm-registry-packages"}},"4.2.1":{"name":"@ucd-lib/cork-app-utils","version":"4.2.1","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.2.1","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"839caccae2295a8e39d129c7c6eac6d9b7106a0e","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.2.1.tgz","fileCount":25,"integrity":"sha512-R2+Ir1WKozhtBUod5iET1I1ip7GtOxsvHRpNMnnCF+jDnfYTksQSwNV6fGD0XyVtPz27ubMHQuYDgjLQNlbG2A==","signatures":[{"sig":"MEUCIQC22VSCDVXVuRSvdpxLp3oFXwGGmtopbbqcg73Jz4TPmAIgCjuPbN4LRTewaTjPj/dKNO1wg6xRsckFQFyGpkvbqnE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50085,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJct3WlCRA9TVsSAnZWagAAzb8QAJukGep2fcSvGSvW6ueG\nxAPXsHOUea8qcRcGPrlt8PIkAXhmN4NIvEeXIc3cuLAQNVZXzY2Sirl9HC/M\nVEJ8XZ5L/coNeHU6OU64eFYoVg5uLmLBnaV58f5T/To+Y9rOfV4yOalPsvYI\njjzsJlXBsimBRGnlCwDwAymjLMbIxL/JvpEFWACfcb0PIyGlGXM7QO3pAgG9\n7GH+Y89IbR3d7gZsw7Xec+FmYg7mwg7NJRZgKFYm9YGdTXY4FiftmYZwMUsV\nu2IRyDsdPI5ahvHRe+pZbLKa52V80fOMDQpoukGDiE4WBVjXXrmMFgzxeNzE\nUWzKNzz8HjOaIscE0tC7wuatpeQqu7Qinnkuj05d5MyJZsptb4f73HExFc4g\naBFX8CcF6AyM57vzzfAdyzB03xr2EYk2n3lOlU8ID0YNQE88iGDLjoNGguN9\naUwaFUWHnkW3W8d2fAcCB32w6Qe+7PuxyufjaN4yVCWQA+qGZvC9NLOMkJiv\nu3sSkEiObKi81pVpX1e16J8dwHJoRaFnS8ri+5voVf/DDSCd+KOjVgTSVvOM\n5C+16Vmfl0d8se7RoQh7SnKnemLX6d6d4svUgk8htcZTLBSynl5KGilTyLGp\ngGQ429QyRWJgHupXtu24+y4T7KCCJbxh0U8h5l7I8UQDNQ9Wolb0c0lHr5Um\ntY3Y\r\n=b6Pn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"e82553a29e47607b71bc20692cb00cedf300bc34","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.7.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"11.12.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.2.1_1555527076461_0.148541076704076","host":"s3://npm-registry-packages"}},"4.2.2":{"name":"@ucd-lib/cork-app-utils","version":"4.2.2","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.2.2","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"8b433cea136b1b996e29319c65402c7294967079","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.2.2.tgz","fileCount":25,"integrity":"sha512-4fAI1u65Ep5c5R/EiXwxUNgLNCKCWcWj6qh2DlIq6UBzJZqaxgSwN+0w2uKmJ8dkXQdoiCGNY9aBbfMMbVafVg==","signatures":[{"sig":"MEYCIQCxtdIRHNmrhMoTa7gdqY48R/HlhMgZyTKcvlT7ynUfgAIhAOIKG/sXqIO+rxodZ+RdAwnaNdJ6HJybzs90ODNA5lkd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50119,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJct3YVCRA9TVsSAnZWagAAXHkP/i5aKWg+M6ZXErWP6faC\nPguRyw1ztwBC8RigUpxS77uOxd5GRhgxcFS8rUQKW9U4v9aytDUnIh0Ri1vF\nbPDrY4kcUs4q0+xzA4Ab7U6RNidkdHVNhOWg16xJARzO4Z0H+eg0bYHHLmnw\nVe42tP0cajPvMq2PDR3AcaB8cEIKb6pkmRF5oEfAnT288E/EU7h+nGVMsv6t\nOo8cTGbT8kFtbFeryLY4epSOuHfEnm+3aEjoCcv3vPp6Ho3guT6uyVfQYIwg\nG0Nhb3mwj3b1u7KRruUmZWcqgPhWP8ZrwZE50GiK45qwJ3twyw7RQN1+vS8N\n3MG3EhXJgLXDxNN1Xy9BVPUTKh3+HWzEDQQUXL/q68l8ZczEfRaB5wwN4mUg\nMpDFuRdWZM4lRHIbV9DuOEnYpUDp2EPr6e4FsJ9RU62X1QJFLLgTqkALoNat\nN4q7WKYuqQupxEtSgjF+tWDTlJl2weNcHGcTxjvSav2ZRjXvsD28ksG42yr/\nv4vcq9wZv/GOJjKJAXBj7lvA0Y4AQ5wI+aWxSb/+6lhjc+RjZOX/hYWvoIHA\nJSQFf4yVOFMZVn73ICy6QlH/qaUdpjd0Iq3ViYTHRmmivNLEDXD2v2WjDNP9\n3Xq2jElObVUcFR6fUIwxfnYDKijbbsdIN5Fl2T99Kziq9+f3J744AicBxgfn\nbqDb\r\n=kCHe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"e82553a29e47607b71bc20692cb00cedf300bc34","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.7.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"11.12.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.2.2_1555527189205_0.9729770843103425","host":"s3://npm-registry-packages"}},"4.2.3":{"name":"@ucd-lib/cork-app-utils","version":"4.2.3","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.2.3","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"12523f58a7b3a081c19b732f08b63102cad6223e","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.2.3.tgz","fileCount":25,"integrity":"sha512-MZtsRa0XvE4NWgzQ2P/N9ZUmQuFA4bwP7HMNXdYdXiB/U6Y2BbOsng6YpjSBeIaE9FeQaORcIyAGX8ZbcmK5vQ==","signatures":[{"sig":"MEUCIA67KitZ/76NEIvVdyc+UTP9vTV7FLN7qAGvgA3toezBAiEAo+0cu4FG0lQqoaor0e7zOpfl6k9ZVZS6aAxnTTRgVhY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50249,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc9KvVCRA9TVsSAnZWagAAV5sQAJq2uNRbs0lT6ZuNgkjT\nzQnbIWLl3tULemp+fa5RfOdod2ZTN7uCumfM9JzN9ZwF2BfDM0DsLezN6LCm\nykj4x5nv4aA9QS4tFLnx7TNB40D7ad+dxLpqL57oQ701hbuxGVkUf2kkakzV\nnHQtyBs/3k3Oq49ouzfkQEg31/Bcv0wbvET9N9wvLQ+oGxSSWWI5oKlBIDdD\n5QTqUayAuyVNUG+va1qJZOZ2pNeKOhopnZ0CSJvcdot8CU/c6nNHC1NVucSE\nLihbw5mR/MkGYaGiKnWNk13vAqWY1eO5ibq40vtVVlnw2mevhHLQ1mRe6B0k\nsEJkVz0d/t1uE+0HBarpeR0re6z4DQmwG96SzfSG3C+op7egNuC59b58vn8S\nyC0TKYqTeoTDe/xHGVKZm9yOQ1DWqwH+n2qW3i4AkdXow/523LKnYpd5kKzW\ne8iTWMRxpTMT9gYYDnpQD9OUJw4vg/5i+HYXDyplH5AtnkIiBG6CMQKSwzKI\nDmZNekQtXsaIcNvYuXKMD9cALZEyhNeme7RgeiOjj0XmSTmDRnwgUSOUm9cw\npRF9AU4/u7jEqlLDo/SCcqOBZvHjk6/7vUQWTH0DV0zpJgXj+vYsCg7PUilL\nkGPLA+t7er6mkj+1Dp3ewRv0sUB8M9GZGKFKzf2dmsuAXvCSX57A74RdEWms\nWt3B\r\n=SHHD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"eed99c157bfee2de7f89b3d9bd2861665fc3abdb","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.9.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"12.1.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.2.3_1559538644168_0.6155427475496569","host":"s3://npm-registry-packages"}},"4.3.0":{"name":"@ucd-lib/cork-app-utils","version":"4.3.0","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.3.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"13c3490658ac6a77c8a4af41c8d0dbd8c4187a47","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.3.0.tgz","fileCount":24,"integrity":"sha512-s4yGV6xMk+4pfuHeyxCqK9l9OVYkP+a+sv6Ot6BqsWNqeLnN7iQyc4d9WCmS1eJQXE5lfNrguHQs724QbKKWew==","signatures":[{"sig":"MEUCIGBBoi1/Ss5FqwoQ55xmr0DVJFU+3gwpRv3mwtnLNKgvAiEAmXXI4mPhDqoDND0XZSySOmY1MVQJcSbp3b6e0r/FtuE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50184,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdHSF1CRA9TVsSAnZWagAAn4kP/j1N4yn/9uyzmNGxqfBL\nNROqkpgPe01lxSpFa/h87EsdvuPh2M8ykp/z69HUDrhDL7acWA0Bo3Nn7fj7\ntCYKnEhWbDySK5CBCRjSPf5G5D9KL/F6n5tdw1P5PqVIEi1hgHApyKkSXD/O\nY6ee/9yga50jBDSoKl2SwQbWR8hSDJbZz8xPexGxZ/IWkmKUMQTLAmB196k2\nPbe5Eouv/jajK6eIbllVOwEZ2vl/9BT/X9h7Of2Mhjb4jPgt7d2FoLcUxXHw\ny9sbuTzgKtl217c965CQf8OcQvDmZs7GHmvyaY5leMLJ370Cw4J3eSCoV3IM\n5MCGBO/1WLrrkrj7IW9LlT3grCcxWEDXGdZM/3Fq5cKxXsxlY9OpUn1kJ3ru\nv6zihoTVab4B9XmPgmdF3ZssZ6rabetupTsStnfs6uhw4fPLDyMtEUCZ81kL\nNzYBmbMYDRIS1Hhkcb0dUH01/Qmx74rrczYGX76yrh7gHuDjGXIvWXsK9dOg\n55AT+s2SlnV4UoEK1Evhq7dn9abLs9YL21bfcHvGxwN/B/chSb8DOL2IHYmi\nFxGFxsb6xwepxlonjSBnXjcbNomcWox4JOirP1o7AQC0bJevSXi5kin+2AY1\neIiBl96FG17ZzpotElMFG1rqAhhm2uUD0Bqvc8QqFTJVAT9esn1r1OtECzEv\nv3Yo\r\n=Z09H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"7500921fa481a69508ba82b01aef86f9f46dca1d","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.9.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"12.1.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.3.0_1562190197256_0.2035809524849168","host":"s3://npm-registry-packages"}},"4.3.1":{"name":"@ucd-lib/cork-app-utils","version":"4.3.1","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.3.1","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"ca514780c5f00b877f5823bac3fffcbe6cfb2bce","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.3.1.tgz","fileCount":24,"integrity":"sha512-3cxKsBe/WW9MsLnOb3N/JT0eWG5fcnILlCnESZuRz5PRSmB3H6He1JjbOaflXtK8V8AdACY9LGof21RsEX2e6Q==","signatures":[{"sig":"MEYCIQDdvhUCFshduA708UXG2pR5zKKw3IQ+32H4aFVSE2fJ3QIhAMttSUzx+LYQthfvwjs3l9y0TYPwBLFx1UUTmpq5w01q","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50236,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdIPIRCRA9TVsSAnZWagAAnHYQAJqMvTtLLJfhd6kmvAht\nOrGTWmMoMW346LfUrsxmOQxk61ik7bUKvw2EbAXHoMsqjRc7lYAUupExv1t+\nlom3+4u0mCRbZMUIFFXpnFIuVYfGxD6FQLof6eNK+09GEsCQrWkxXRFTtVSD\njgQQlZpYrGtTlTN14AnCFWCpAiymxTXafccxC5DN6oyI+PqGFQlrgBqMH7Ae\n2qfU9FoP9a9WaWthlj7NB8elzb4ypT+TpM1ZE5efog7GlZ+YJqLVYKUWFFq/\nXFBIS3G5p6akirjXMC5FQizXv0uF75MNhonST0bxb3mjWdzbVbRx4pOXIuRp\nP2FU7M6MFFpbIr7Lgo8V8HABkvYTGuYDBDM1cwLf8Ifq/8UbtX/61Y+2ioCx\ntmqyU2REQfH2mJQ3WbFn3IuWqxwLl65kIm9LLSw/gdgRP/8I5Gr0wN/U5TAn\nYuekJzjcwS845zD2hkN+aYzOkPgvfszxUfmp3lDWTtdWud4tuieSF0QM4HcB\n0YKQ4XXrbr155ZP5p6tUawkXmlP4yMC3xs0g3O1eLTQGcHt5W7ASyLW5EC15\n1L1MLBddwBT0BnLN6JHcyEyISCfDyrD/Z2mWCqH4XHdKL5xW5qNp6d3vpCnQ\ntorK9SI1GOXA+5KjRk/Qs9wBFHlXTfGEXScMVk7hmjD1NEyfHN21QKE9wLIK\niqk8\r\n=vi/C\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"7500921fa481a69508ba82b01aef86f9f46dca1d","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.9.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"12.1.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.3.1_1562440208937_0.5142844739729677","host":"s3://npm-registry-packages"}},"4.3.2":{"name":"@ucd-lib/cork-app-utils","version":"4.3.2","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.3.2","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"351b068864a64861ee29fd2600e4a0c8d044b79e","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.3.2.tgz","fileCount":24,"integrity":"sha512-x0Qspv9PBFOYTrgqGl1QIubiEP7GcXodPZioTeQ6dVqRI8rW0HN5RLIG7BPjwaM8EZKJPfuEEmeA5OCwtMx8FA==","signatures":[{"sig":"MEYCIQC+6R4blAPsun2ua0HJgB6LwmJWREM2wJhXcLI81bnj0QIhANJAmgr1phrVJLRk0WnHz0vojKr0QNJ9FfqGLF0Tjtig","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50236,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdIPJuCRA9TVsSAnZWagAAHtYP/1k8OMe14jfvGM4pQEmh\ndqthk1Cp2y4HawSribve2aB+y9Nas2HnQV0+ZX0eIcAh3tF3umgRBDWq9tjr\nnhXXQZn0zFBEOY4jgufmTOx2gTwmss7cF5ATzrOiFvRDXt6F2mB7HnW5aFfA\nrwTUpwipNmp+xeKGzvqjSqK6gBHVCFdemCnEq7Ty61HG9s9P3FIU8Ycc/0E3\nbQMP9iMCln7Uoz931WFvMnajmuVi32SbuYvojnpNHuxZIGUN00pvCi5tRJt5\nfxV2yWoW5f8siL57GSR3krsCXDmQyXi89Q/GAdTtzzo0TMwWPTwRD5wnZUW6\nBJavOECw2b8cVQfIrTahXhhLhrSabQ+nMWXvewPjjFNXN+WmxlWNUELdeD2D\nRhdcWcRXm4boKx7uIxE1jqIEWGfxhDMcxMbXFixA3bvyL/69F5JsEFpk3soC\nHe0+F+ABxxqvLJK4lMs3tEqtJEnsPzzLoBo0Cjz7cNc7SzlBsZoYUTtnP1SG\ngXoEWhPsaKAQeTlG5P8pjt1EQw22kNyRuNK73gLidbNlrrbW3xX4Q4PqwEsb\nKUBqSSibS8QSls7q5Y5YYLblDVI0ypWJpeJKcDLB31a8VktI+OfzM6cvpyxs\n1whhir9W1qwxzWrv3g+anupBjM/4hRWvIvEVq/lgb78NxsbhCcX/d9ojMO+/\nicV1\r\n=GSMP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"16370005901e0307281188f5827e395432d1a006","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.9.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"12.1.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.3.2_1562440301988_0.7220457576153798","host":"s3://npm-registry-packages"}},"4.3.3":{"name":"@ucd-lib/cork-app-utils","version":"4.3.3","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.3.3","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"15868cdc5a40e3fb28a1b362f513dec04958a3e7","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.3.3.tgz","fileCount":24,"integrity":"sha512-73gSWUD/hzeXwAr/abjkm2xwfGk0vUB5R1dMN7bLcUYm3q5I5fDsUKHYrYF7wvPAZ4975Wkq48aRpJOxINcRkA==","signatures":[{"sig":"MEUCIQD+TVExXQ8RbowcGYmTzyJwgiFjVu583uiqA0eZL1JTTgIgFUM45w/zvdJiR5tC2AyOLZGSpeDd0axeQcuXLEdf/8A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51186,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdSeXYCRA9TVsSAnZWagAAdpgP/RctK6q/mSyYbZlf2KdX\npCyDNmuPnUiCZmBwExoImVXBG28NzCFBZxgX9ij//JodF+ewxWg1W/Yk9d+D\nP5XNBInznHDSt/GxmyA8WeE/K0mu4/9iMvNdDaU5Yhza9bd+RlXAesYpkY8K\nVmClxfANCt3S7Q2QNziAXWOyIaaTGC8/TpT43V1b9/5RTldqr3NZNcybFNFh\ncKB2pfRMqnR5bDf5+AjAl/tfeTiHuqWi5ZoelL1uosAdQEFGCoT5boLgpBVb\n2E9QFFFrVu/rpv4lk4Fe9yLqawHJExGrsbQT4hEenjULWSmCVLd2N2LhcoJp\nlEDvmVKOg0eJdjwem114iD/IFPIVbrQXjbxAq/4PMQF5WYgixbsCjVL0u+ao\n1fvbibD3j5ESbil619iuPl6EUv42RXR6s4QdrkpMFT3k/cGDfbN7b6hPh+D0\n7kHgD/rHnbkGdblanzr0hsqig8olzWcimZx9l0v6WIq0eBQ8nT0iAel24hsd\nNaaZ/WQmyJMd6C+1vWtEvAErerCJkmlYh1DqNHfG1tYq4CXsm36uAO7xU44j\n1G4SQp5sDiQpKZbTrQe/U5WsV28OT0WyhgIgaPXgeeGkyjlxbv6EEFLGExPN\nNRAmra6WwDfV0CogBsQSGFAo6eCcTa+CkpZJn1wVS6qpW4b/DZudFl/FIfTV\nVa6W\r\n=tvYr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"684d3a6071bbdb7f459d47b1c5a2084ff6dae059","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.9.0","description":"Base classes for wiring client app code to redux and event framework ","directories":{},"_nodeVersion":"12.1.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.3.3_1565124055431_0.5775708825699","host":"s3://npm-registry-packages"}},"4.4.0":{"name":"@ucd-lib/cork-app-utils","version":"4.4.0","author":{"name":"Justin Merz","email":"jrmerz@gmail.com"},"license":"ISC","_id":"@ucd-lib/cork-app-utils@4.4.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"ldragoon","email":"leigh.dragoon@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"6186d694a94ee96a8f4f67625085d0c6612c8cd6","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-4.4.0.tgz","fileCount":25,"integrity":"sha512-iVwLcgMrwNiSt3VBTO3fhYf15co61p7cpXc/J1ptlbdSgOoZ2Ee3Cylr+AIzhLFxhf/Oj/46nVgfXORaWQ8WFA==","signatures":[{"sig":"MEYCIQDYqoGACcLZRy58xRK5eYWcrQNaTeKJrwMtRdUtxf01ygIhAMjDrGkbohr1Z2KQxki9Jy6Md+mcPen316IaMt5bbRVI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114479,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6VA5CRA9TVsSAnZWagAAgUMP/39OQgCUT4bTYoUwkHVC\n0xZqXtCS3MtqG0a5o7MOpJ18C5aSAKlehOVWmZapd2tcVYK/gXgqcxE2dd2p\ncMFuFEF8p20RUml894JjYXrpFh4KU0V9hXkmY9An6ed4KblEHFhE5UoRqCfh\nxmgiMVLtmc3d9ZrGaAD2SRaJ9E1PQf6UWtG3t8A22TdHn5NoFCJ9vA8szxfp\nJbGtlOWuM1hbmk6EaVfd51JV0DdBC0c7+ygKDhIB6ba6gM/Q2Zy9mO5FmIvp\nQDvnY60r17JAaLg6afEHJ9pcKodVfDB5F6u2CGjfgKQGpMpfHXSqbwla4OCY\nGQDrrlrmA4O0UbA4Ea9Qv+yhq0QPkTGKGzLZSUEsEROEJibZRtD5qNkVMRC/\nUkjxl7d7e4mtgHJnJuJaz2f3F2T/1vt15JL1We6AjmnhVgxF93oMzVoRxDTN\nQQuazhj9MKkjagm2wvSZht52swUQJL5ii683UJmkJIb8pB6qDzauO2DJwhmu\nf4ev8aJ4TZUKt78ODLwfGLWbSEC3Ww+sStRlYrOpe5UeiZPxoS7bmJetOuJA\nAboQa+XgX8w4VHshTXovNA+9BWpaTEeJaVjGJqG98Ag8xxvFMgmS6UCvJaFK\nX11ODAM2hF2lZ1SmMe/IH9bFNb3U4NwCq4O4DVoBKwMXBQCJvONVOYUSPDgr\n12MU\r\n=thkG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"de6ab8e2f122b16330bc24f85385b63457a4c1a8","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"6.12.0","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"12.13.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_4.4.0_1575571513236_0.053450098784634026","host":"s3://npm-registry-packages"}},"5.0.0":{"name":"@ucd-lib/cork-app-utils","version":"5.0.0","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@5.0.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"ldragoon","email":"leigh.dragoon@gmail.com"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"6a122d7da9048b626b9f2c06cfaa424f7c01eb79","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-5.0.0.tgz","fileCount":22,"integrity":"sha512-qn9MZO5OFSeA4JqOd0wVWBGoUJ2YHeuZ1LtqmgxRqXd6JB74apeQgtyhwjfs+nnuDyez3yDeNPhkUCxSACij0g==","signatures":[{"sig":"MEUCICm/hz4dtWWl+iHWZ6MYnWlo8TVcq/LAw2u/9zTEDZybAiEAy7XO3A4uRHUvj/Lz+VAFA1R1mk9F25HWDUZ2fwcnYFI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101465,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjDgfCRA9TVsSAnZWagAAjBIQAJ6dKkc/1mAWE7g7Wecs\ndPgk84zlWALA6g74LaW/9Mfp/KsAgfUbeltTXQkK9toka5u49c+chZPAk7GO\nR2jUYzjcTBF9xa7OeGNX3t9wRChT+niJsVlcRxSXu1Q79vIrC/smvM45pRkV\nwdzUXse583B3h4RYlTdfn7lOvinkS+2tunGzzN2JAj9Ww8ay6mTrIB590CBs\nr2xDjEhXVImLITwkLuc30NUsn6pFT2ddOAoSglJTJdBwiCWVrD7n8cRZ3AOw\n+WL6ck72xvya1HkCVRQE+H7RG6GokKrpz3NkI45h8tHVOUvlZCikBsJL1esF\nxZebwFXXqGzHv3r8gM2rK2sc0Vq3ITJRU5oq9p9tqW5G8zNdn+a9JE02myru\ns3xAC6I+hXn7pNtEExmQq/QLTzjhgo12U8nIeQK8PN5iXovqjUTX/qrJks0q\nAJzcp6kgF4Q+7yco/QVDuBeARylVeTVGuxE8StOiu2+yc7Wzzu4pT/TauKyD\nNxDQzLqtQqU6z+Z+ZH7LT64NguZcfylfSWbsZIFhdkH5js7Rg/iEGywUmiH+\n5GKwPtB4NO298tvJ3mo/Kk2XLnKeEd65wyYTYLRTmaVXt9n32JNOS63+GQQJ\nNWTJhqMKAhUUzwn55C8GnnJ2O11Y5lvWd0C4xvX9qNXKjav5+8GQgz4Ak1ML\nDgDU\r\n=2SYJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","type":"module","gitHead":"33ba722bd335f393693cc97291d2420a8d8b1a23","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"7.0.8","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"15.1.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_5.0.0_1619802143043_0.46236319467561704","host":"s3://npm-registry-packages"}},"5.0.1":{"name":"@ucd-lib/cork-app-utils","version":"5.0.1","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@5.0.1","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"ldragoon","email":"leigh.dragoon@gmail.com"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"2bebd14f290e6c6055e4989bc9d1722d0c329d0e","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-5.0.1.tgz","fileCount":22,"integrity":"sha512-jtbKDK+7AoXWjjCCqykgYYcmpBv+z9+IBGTBCjovi8VKVBqQpe+SOaEd7qNqVCwJ2fSrexgauMvSOSx23aw6BA==","signatures":[{"sig":"MEQCIEhARA/2JI5gp8R4xvhKtgQjf+6akwrjT0BHLqNUWt3TAiBWw0UdOUe/PWsU3rMF7Bk+gzTMjbVOW0ttv1GVibGwGA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102757,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjDttCRA9TVsSAnZWagAAEEIP/1of3oKZkB6je/pTMolL\nl95Fx3+5Y1D7hwUQMSYE5qDUxiMMs/FbLD2L4i+vLQ1NEta7DkKXJ5vWPHRr\n/gnG5ZpE+PZtfZTGM9KqWyANMCHROwIQ9lbJ4qcxWOcjHhPq7e9g8InNuihb\nKxMhx+n9eKbEPbslbTAl6bEJGzWTBMzEV5Dhu/8X+58g8Ue2Gy+HdBIel41g\nBW3VrJMq6deEUG+wPnxJ1jOql7VHu9h7xHm6af683F2SW9DGOG4g8bttNabZ\n3eURpovg368I+IHzhwzOIxJhu7A3QwDuFkFMk3uCxKwbNdKlIPwqDt9MIlsZ\n88tAgl1ajePVqxwlnRdFvhP89bzmR723uWpDhGNrjFnn4cEj1qCqML2e6vWX\nT26RcKfL4MxFsL8TCkhqbY2V+AIFuBo5T6+73VBZpuMfXPtgqGD96Gb3e0QB\nGj2KGqrYO06dEkL+yelV4/0sF5vLhcdltWaamX0PCP4jkwhV5M1JNPnn+Th9\nVpddIkFkGFWVRDlPEe5RJwS4M8UpVN44/euG9Gu57D2Up7Ce79+o21Gvxu5Q\npNj+IuiE4kHINesVwxjw4NwPxIr2+3epfdAKkYLWqPSBx3LyldQZ3hCNVgQL\nkJiY0fTudtdCN/nMby9yJA7WHPbAIvR9GYTq5AlIrdWSU/mAMoRRBxdJg4Z9\n2jbI\r\n=q7ZE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","type":"module","gitHead":"f73a5302d691632954a49e7c76140b8b6fe9086d","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"7.0.8","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"15.1.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_5.0.1_1619802988668_0.27640811249546027","host":"s3://npm-registry-packages"}},"5.1.0":{"name":"@ucd-lib/cork-app-utils","version":"5.1.0","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@5.1.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"ldragoon","email":"leigh.dragoon@gmail.com"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"43db589e7f5fb66767d3b27e3a925ca83d1e5520","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-5.1.0.tgz","fileCount":22,"integrity":"sha512-mhCLSywWNMhmnYmaCdZ2bbAC1axP+CJBhM/IsPpcGcVM67JNTFQTo0oiYa47WLNm+S78pBIkRA+gxLu+vZlp0Q==","signatures":[{"sig":"MEUCIQDOvCpNY0paWRf93K1mTZswSpsBx8fju46rBw76lVeliAIgG+n4lOFxcwmbEnUGJacxVuPO1zJsuKWaFNla/nrhwMM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102876,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglZrLCRA9TVsSAnZWagAAxHgQAIeLA55mp6xLJSmTUal4\noV5p2gdqtx4yLLEtC1M9/xILdKF0lQvCbhSvi3EDXQK0/bDSJTvLZv6SIKVE\n9vmmiwy6qrIDSE2OQHb5/IJwJm8jErxohu7U6NQ9vGxp8PhL4JDLq7lGREit\nwZ++SsABVPg6gfJXKlwSDAVcjFjKXUbJMnstINELIBZNVUdvMJB3324ARCSl\nDCVKsixDxPzq17GWFG2Ji+rL8Vtx84+WW2U5AFMNk8LcxUqaH299d9gpMmca\ntKTZmkCv8itST3W4XjccIy1fsa1jAM3IdlmmVIDzWF0FnMX+9AYGpDcNTwN1\nFyPEzoK3FtLnDJSqfokeDMXuhKepx2EkJ/nex2rCJ6N4lxG6mt8bbuew584v\ndLpFo39NqfedPJw3Lj5PZjXrxWZ7kKrFZQh1yvxzgrqPdf+lxs/p5EbuXUMU\n+IKkKrYjSNicW8nLlGFarCMpSb8SCmWKr0j6KxFWzd+4G+bqRUhEL6EQgzKy\nFmWh8U3PR5BeM5RUDH3w9G0V3iTNu1yP057VhD5ob3TFcI7nQM79Gr1eewAX\nJf2re7yqPOfxBL5e3BUR/QmdQv7QFM14ykr/qjvDyvbArjEFiMGhOAiVJy+R\n4LSHzfmkfdpfhxOt0zwuGC8liuwJ/qD/MTmcsgGTLW4aOIKM1qCggw0IWI/H\nz3uw\r\n=PE9u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","type":"module","gitHead":"46fbdebc10b1a34c0144c15c482a4b43dfdc9bf9","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"7.0.8","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"15.1.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_5.1.0_1620417226778_0.530225938334014","host":"s3://npm-registry-packages"}},"5.1.1":{"name":"@ucd-lib/cork-app-utils","version":"5.1.1","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@5.1.1","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"725973819466c3032fa15dc0ba828c8b774c27cb","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-5.1.1.tgz","fileCount":22,"integrity":"sha512-TZGP0UwLRC2TSZWzFZ3cA7+WECZQQkSwG213KnHgLMKcS8jvP4DUAfx6AS4UV2HTPM2ODALKbJerHrX8YyoCBw==","signatures":[{"sig":"MEUCIEH/e1kkllg+Hz82BB/sPY3CrJvCOmjNJ95DqWI5Iwy9AiEAgkZIMRB849N0/38EkjbvzrxRhOlG2drGmNQSfI61ZOY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103086},"main":"index.js","type":"module","gitHead":"764bffc64cef28e684ae82933b3b0ae63c0ead39","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"8.5.0","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"16.14.2","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1","isomorphic-fetch":"^2.2.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_5.1.1_1685635733956_0.453925888657958","host":"s3://npm-registry-packages"}},"6.0.0":{"name":"@ucd-lib/cork-app-utils","version":"6.0.0","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.0.0","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"8eb425ff4816f5890db9d050f60268567cbb1f3b","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.0.0.tgz","fileCount":23,"integrity":"sha512-r2K+kfto14TNI/aiOyNcxl+0Ba9SrpLVblKwhBY8QFp8LutuqRNbIyFyP372VSrV3+G2hrJrJIrBlPv3074wNQ==","signatures":[{"sig":"MEUCIH/Dkatyl6pMeK3gpi4tBxveDnV14RKbgEuy7IcmB8VUAiEArzk/uAy0WXX6J+KFKDLxWH1Op/RHbHGJaXtUOFaXBjg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110937},"main":"index.js","type":"module","gitHead":"8a05880705aed14d000f88cc7217c022f4a2a529","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.0.0_1723050255391_0.9582743393447746","host":"s3://npm-registry-packages"}},"6.0.1":{"name":"@ucd-lib/cork-app-utils","version":"6.0.1","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.0.1","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"bd5a2dc0c3a1b9d1b9e2ce0e7000bdfabc8aa7a8","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.0.1.tgz","fileCount":23,"integrity":"sha512-Erv1lGDvbcXhluqOz1PGMywGU4edkqd1cCXIce1Xmzuwml0jd+by2xUyC9sGSB7X6RV8E9v+hrIeoHAwozjwjg==","signatures":[{"sig":"MEQCICjz+JJQcb2AuEUfSOb8z4PM8HYNFZdln6KPakaCpdlMAiAsOvu0kfCssvTdz4NRDgpplduq4UlhHh67A1ntp4d1ww==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111521},"main":"index.js","type":"module","gitHead":"e46d5ff3bedbea9262441e1751c455b13d2ce313","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.0.1_1723135661211_0.6373211300660548","host":"s3://npm-registry-packages"}},"6.0.2":{"name":"@ucd-lib/cork-app-utils","version":"6.0.2","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.0.2","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"e1ab3a4a5faee503845e38a9006ec95c539d68d5","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.0.2.tgz","fileCount":23,"integrity":"sha512-XJffQUI1MsBPrTT4V+tS+CXc4Z2pV/k+JuNwf+wiuYMUTlBwkFOTBE+OvbxtHWjxl4ubs85WClmUScNODkSWxQ==","signatures":[{"sig":"MEYCIQD/q00dqQIJxlWrgArGnAdQdayDwJmsR3FZlu/UlsnMuQIhAKYSEBsp/VGYzuo8kf8FpDWCwC73npEyhBbByn8jazoq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111573},"main":"index.js","type":"module","gitHead":"737ef9d499751c579e8e76b4f1fb9d0fd6288f02","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.0.2_1723136406306_0.5874932911120958","host":"s3://npm-registry-packages"}},"6.0.3":{"name":"@ucd-lib/cork-app-utils","version":"6.0.3","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.0.3","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"253077d002290f56b55f804570fea82cd531a323","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.0.3.tgz","fileCount":23,"integrity":"sha512-l9bPieuCBcqN7iHvzO9TpCIcuB234Hem0Qn2oW6yh50PX1lBZSCXuUxjuiPIBEB1cO/wnYhpFFTjPLWFR50DnA==","signatures":[{"sig":"MEQCIDeErzxBvOghaD2Lw+LTCAYCvAWGVMJd6/bDZTrgvsJOAiBXcMxWdJ1DGdcH6cGa8Mluy7Ogr2byYMZY1eFv5NDSlQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112827},"main":"index.js","type":"module","gitHead":"64290c681b22db80c3e5cc510d3771c380ab457a","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.0.3_1723232282200_0.6925350895292155","host":"s3://npm-registry-packages"}},"6.0.4":{"name":"@ucd-lib/cork-app-utils","version":"6.0.4","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.0.4","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"3616fce28f53386947349d6e1af6a84cab17b96b","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.0.4.tgz","fileCount":23,"integrity":"sha512-hyTnjzDRHddWXMqRWSjd1UPCj13djf4+/qbVC0VXFsv0kh5ERCnxn2HTMp3vSwVOq6jRw0XrcZUg6/5T3G9+bQ==","signatures":[{"sig":"MEYCIQCKGLTyAQXUA1cQQtdqbngjguhPqNpF4wYGKCCMiKolUgIhALodtHx+gTJDLUyEHTudsMYzgF/DenOKuTZSo0HV5WUs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113323},"main":"index.js","type":"module","gitHead":"babe77051255c35310050bcdfea067b7c7abbf11","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"steveisgreat","email":"spelkey@ucdavis.edu"},"_npmVersion":"10.1.0","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.8.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.0.4_1723753825529_0.19072878530130333","host":"s3://npm-registry-packages"}},"6.0.5":{"name":"@ucd-lib/cork-app-utils","version":"6.0.5","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.0.5","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"3b17062ec4d70977016f2e97d57d6607d6e07967","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.0.5.tgz","fileCount":23,"integrity":"sha512-2fpphwZsU54CB1Gzt0EfPliENUXWAGWLLITF4oiS8jnTYsleAOfMrrXYUI4MLw+DKsSZPWv1Ut72ELm4PbIIMg==","signatures":[{"sig":"MEQCIAC+F5jk/fx/QcKMBqrMD3IypeTBMgWhLWSvqMlf0TI5AiBrI6F3o9WvdyxBeJoO6ML1y5vIKjjowblHLXPo12jScw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113446},"main":"index.js","type":"module","gitHead":"65c512a23c6198e9c0d0612609393bd96a2a3961","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"steveisgreat","email":"spelkey@ucdavis.edu"},"_npmVersion":"10.1.0","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.8.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.0.5_1724098567356_0.18200608892718906","host":"s3://npm-registry-packages"}},"6.0.6":{"name":"@ucd-lib/cork-app-utils","version":"6.0.6","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.0.6","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"c3fd8b5618a1033da97f404825b71bda265314db","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.0.6.tgz","fileCount":23,"integrity":"sha512-Pn7HKqR8lWT4/CbSH7pvj66Qie7PJyGRwax9nWfQ018MVS4+YxFaQAIoo9j+SsjqI6ezq8d++tgZGinZa24KCQ==","signatures":[{"sig":"MEQCIAZUb5LHExw6LjfcwPhx12GzxToZWWS4iPkiAXnK7CTpAiAmCNJbqqu7u3qQKFa+wKpTivqk7BwkVuCjXXvkhIkZnA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113394},"main":"index.js","type":"module","gitHead":"0eea8039c0b7011ee50ad0c95473769f400c8a41","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.0.6_1726002294842_0.9986691423793506","host":"s3://npm-registry-packages"}},"6.0.7":{"name":"@ucd-lib/cork-app-utils","version":"6.0.7","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.0.7","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"d9ae23f3af8b654e8198687ed931c37fb0ee48ad","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.0.7.tgz","fileCount":23,"integrity":"sha512-IVp3DGKQLAJf2CJ+l31UE7+fwsZcw0NE/+3eipzyEGiNM/RTa6VF6uAwMTI3Dd6DddwHtu8KiU7e3CaL1jQzTQ==","signatures":[{"sig":"MEQCIGVaZ6fZlksQ8XOXdVFpfIPF9ZN90U+UsTDZ2o6G9QsmAiBTnEw+NHGd6S7CfEO+RrYUEv9W9+04BOqHA0ze1WzsYA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113440},"main":"index.js","type":"module","gitHead":"70927b81ac245da4333b9d7b86a84eedfc6ff7d6","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.0.7_1726003173602_0.578528355329825","host":"s3://npm-registry-packages"}},"6.1.0":{"name":"@ucd-lib/cork-app-utils","version":"6.1.0","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.1.0","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"df7cf21ca9939684f5698e8500e3811330101a8a","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.1.0.tgz","fileCount":24,"integrity":"sha512-bICnAVKvgJmqlfYD1WUByFIebbzevH8wQu/2j1CfHGOl97cyUXcbNBX1Pb2fhktcy54SnJMKmZzHPrcNVEzYkg==","signatures":[{"sig":"MEYCIQD8pTdvjbfL/mxauKqfLdp/2Akfke7c6ihFizpy3LcTnAIhANRqqNKBiXQrGH0uHNRjYMu7cCiJrT4hH3b3Qk4V1TOX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116783},"main":"index.js","type":"module","gitHead":"bcd7b4255dd57b9a67072c7aea723b4626a33c7e","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.1.0_1726177187945_0.22168608666456513","host":"s3://npm-registry-packages"}},"6.2.0":{"name":"@ucd-lib/cork-app-utils","version":"6.2.0","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.2.0","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"ecd34932b2e79cc206ddea16913a5b9ce90c39d3","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.2.0.tgz","fileCount":25,"integrity":"sha512-LgmI9Fzk9+C6+Kg4quciXLMmRPclA6hfRo7SGt17idP1E9S7JoC1zwVUBL1eyV/n4WlDyDfgqSCYfYVO4RdDgA==","signatures":[{"sig":"MEQCIHdaX7POl8YWBglqPYqKM/IUZ4935RJWTIG5XpaRwy8ZAiBQ6ylWZ8Wk9/XHF7+mp5njoj4tDwhtdFov1zXTAV8oYw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119146},"main":"index.js","type":"module","gitHead":"1b00a628bde8803e49079264b6e133c97b12d3b1","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.2.0_1726695480163_0.6996123474165372","host":"s3://npm-registry-packages"}},"6.2.1":{"name":"@ucd-lib/cork-app-utils","version":"6.2.1","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.2.1","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"6e8f4eadb9a98fe0eb5e8e738fc388fb4079b1b8","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.2.1.tgz","fileCount":26,"integrity":"sha512-7M4a4Sd7pW3LXOJQx/aJl29LwGQFN5Z1tkcklImV2y4vAK0PjJ4LQMdOD2rLthslQ6qhoBXq5tYyV8oRMMfX9A==","signatures":[{"sig":"MEYCIQCcGFTbW488Cn3iQw3K+8eOsGjLyE//oCbCcTYAnKLINQIhAP0dhhmChJcUgWKLdYMGK+feSZ2Hlxqr30JO32iiwyFd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119285},"main":"index.js","type":"module","gitHead":"6f9e17f1d4d5e451844134eef2bf52c36d44c0b3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.2.1_1726853985751_0.7123588454508407","host":"s3://npm-registry-packages"}},"6.2.2":{"name":"@ucd-lib/cork-app-utils","version":"6.2.2","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.2.2","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"df4187d3b1bb63d6dad8cf5cd75676f4c2c39875","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.2.2.tgz","fileCount":26,"integrity":"sha512-ymCx2QIGtXQqoHA8XYz7l5T27rQlBhcoUCryBqVUgw7/dwfQxS5bnCJcjraUnZg6SEPeejuCpjA5osdZMRlGvQ==","signatures":[{"sig":"MEQCICYom02yLYJaqZek7V4WKaU+iL/pA8wRv7/hGyybX2ihAiBF/8RYBvaSgdn/StjHKUmi2onuTJGMY/ylrIFvDM0udg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119326},"main":"index.js","type":"module","gitHead":"386561bfe1b081eb0c870aa2df0f74470521bea0","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.2.2_1726854951135_0.2274241959949057","host":"s3://npm-registry-packages"}},"6.2.3":{"name":"@ucd-lib/cork-app-utils","version":"6.2.3","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.2.3","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"de3658c9934e47bbf48f42f3a507a6f27cce647f","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.2.3.tgz","fileCount":26,"integrity":"sha512-yVenzMqHJtyOKcSFpF9Nl4w7lW7J/12ScPp08+QiKzY7M5CZUoT4rWi24ijnfob9PCBByScrFK07Bn6n4xrl4A==","signatures":[{"sig":"MEYCIQCme+9SQXGUN2Z4BWvZvRGMlGoj+CqeenOkDgnKwUgh/AIhAPSi8XUtiffxjF4m22Pv7RO5rdBOvD3Gczt/DJu/07AR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119325},"main":"index.js","type":"module","gitHead":"8f753972c5d498480b3606ae542f11b47b430e15","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.2.3_1727192721011_0.18979140269814043","host":"s3://npm-registry-packages"}},"6.2.4":{"name":"@ucd-lib/cork-app-utils","version":"6.2.4","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.2.4","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"097c1fa617a71dfe11143e9a829d11a82ece313e","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.2.4.tgz","fileCount":26,"integrity":"sha512-MY2zsJmzNIy6PXCyo6WWURJlaQF5XNIBvYS630QgFEX4Opvi3hOyWyIxPJtUa0j0awoBDAFcwh0BFQGaFln6Rg==","signatures":[{"sig":"MEUCIEF7cSi81zeGtGYVpfkz4PcGuWgOXNx7ZDnYgllpSdlNAiEA3iOWUBQQLU4Qx2dwMoEKOA+41d+fHoJ4ZF57AAhKdyA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120014},"main":"index.js","type":"module","gitHead":"60703db390402cea91e3d63bdf12bcc98c9c56d5","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.2.4_1727196670714_0.4652075426008693","host":"s3://npm-registry-packages"}},"6.2.5":{"name":"@ucd-lib/cork-app-utils","version":"6.2.5","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.2.5","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"84fa15bfde17965bf47dc002e3e4844e9f42cfe2","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.2.5.tgz","fileCount":26,"integrity":"sha512-AMzrjsr+LdsgPxiaqZopsSIwLzUFhHQ/NZd1cXeaZiEp99B3qlnipwSS1G0q3T4pDhbg+oG1Pj2CDRk2ENuQrA==","signatures":[{"sig":"MEUCIQDQKsNMwTIvT21ubuM/0SXuuhMH2wQeQck4JYhfVgTU5gIgQVl+77MVyv7LYLvuaBqCu/XmsbAubXN//VqPKwFJJ7k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120053},"main":"index.js","type":"module","gitHead":"de9ebf06c3d4a62b2e424a4da9fc61fec523323b","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.2.5_1727207362649_0.669994068645132","host":"s3://npm-registry-packages"}},"6.2.6":{"name":"@ucd-lib/cork-app-utils","version":"6.2.6","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.2.6","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"5ae4d9c2268dffff45b6d0177eff23338567f048","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.2.6.tgz","fileCount":26,"integrity":"sha512-izfp4RUYRgFoHlFXOk/A4Vf253fkPiDV4SFBe6T/6V68P5PHLlFLy1OOQNrJl8N2LcXUPPX6d2MFPicBqce4yg==","signatures":[{"sig":"MEUCIHxW4ClSPamag+e2EwygF+RMHqjnNP5WxnNkb//yHVGcAiEA/Pf8rCNJCzWPGv1frOhAvdDoBrrGM700/c+RSeGDZuM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120259},"main":"index.js","type":"module","gitHead":"b6a9685731eeaa2eb958fc5e798e9315d1dcda32","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.2.6_1727886626392_0.04862181238806196","host":"s3://npm-registry-packages"}},"6.3.0":{"name":"@ucd-lib/cork-app-utils","version":"6.3.0","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.3.0","maintainers":[{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"148a323f4e74abaaca9cb169e0fcba50bbab5e4d","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.3.0.tgz","fileCount":27,"integrity":"sha512-kxtopmwvfeexS+Qnbp5ZLzWTIaNkKFlmDeRNLXrjDqEo8u+gOmCDjVajm/CiptZ5Peq8OJahh6QpcbMcg4opYA==","signatures":[{"sig":"MEUCIQCRdBSB1dXP2XZU9AY9Ei7E6Lm9gZGqr16EAgwiXFw0vQIgHrh5AxlJtaQ+ZKKtbW+UMP9M4slO+2SDWryHln+ZxIg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121701},"main":"index.js","type":"module","gitHead":"40577dfb498029657827981f6b0365f0812afe8c","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.3.0_1729786866921_0.7838922424098786","host":"s3://npm-registry-packages"}},"6.3.1":{"name":"@ucd-lib/cork-app-utils","version":"6.3.1","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.3.1","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"33e81b7704304f246d129d1b00fa88a9c2912b73","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.3.1.tgz","fileCount":27,"integrity":"sha512-y+CKw+jx6QaqlPa4PIDIC1xYhxX8sF4aoVtFekQ5D0OrP2/pEUwMHlBbNRJIWextqOk8lZwbENDrH1xlbTCKDA==","signatures":[{"sig":"MEQCICkowxLKG+Ea4NnYLHillxh+WPdlfjrLP43PNkCBide2AiAuPebisZDXl7R0ZWJ3zwLbzpF5Slt76SYJiVdNRQiXNg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122174},"main":"index.js","type":"module","gitHead":"64ae0472cb2476ea2730e9bdb05c7792182669f0","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"jrmerz","email":"jrmerz@gmail.com"},"_npmVersion":"10.8.1","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"20.16.0","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.3.1_1739557251275_0.3080859004453185","host":"s3://npm-registry-packages-npm-production"}},"6.3.2":{"name":"@ucd-lib/cork-app-utils","version":"6.3.2","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.3.2","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"34c8001523f20fc8489039f6e77a7631f7b88b48","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.3.2.tgz","fileCount":27,"integrity":"sha512-9dQIHuKPj2fEFwdBCyys2Xtd5Qrc2xftItN14YbhyzocFIMcMYoqRPEjyoxtAeUxiRGkEmGBJt3+gJXhYi/m1A==","signatures":[{"sig":"MEQCIFwERE37yuKA0GnGCQVLRM4CHy7hCPb2cn1psGjAEa92AiA8XhTDShPXRrtSj4Rir+16eLm+pBDPsdlKL1HqZ+cvvw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122161},"main":"index.js","type":"module","gitHead":"572fe1971057e0ee9ef2370812afdefbfede804f","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"steveisgreat","email":"spelkey@ucdavis.edu"},"_npmVersion":"11.4.2","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"24.4.1","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.3.2_1757536843196_0.012681198147754369","host":"s3://npm-registry-packages-npm-production"}},"6.4.0":{"name":"@ucd-lib/cork-app-utils","version":"6.4.0","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.4.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"fcc8c5f11f1145ff750a25cde239c49400b375bf","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.4.0.tgz","fileCount":27,"integrity":"sha512-LOLh4hC+pPjEuRy6ohIIT7hZIYLhtNmlib2PMVePBeAZUqwNkXKPASObH17haZF9t+aOsL5LBoqMyckwZbWhog==","signatures":[{"sig":"MEUCIQCgICPtrfcT+7KT0OEz5UhVGTWKSZp1cGgfKzQIEtx4cAIgPoDMRNE8AIdHfyYAKjQ70dxbYsISk6UMszVa38HGGUw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122179},"main":"index.js","type":"module","gitHead":"7fc92c73471199df3283d82bc66320d92658043a","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"steveisgreat","email":"spelkey@ucdavis.edu"},"_npmVersion":"11.4.2","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"24.4.1","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.4.0_1760545112212_0.28484050203300804","host":"s3://npm-registry-packages-npm-production"}},"6.4.1":{"name":"@ucd-lib/cork-app-utils","version":"6.4.1","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.4.1","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"8ff15f865d748eb9605f79198a831431f7d7c8c9","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.4.1.tgz","fileCount":27,"integrity":"sha512-NLS7zI0BnsX9UnAuyv7NIdN8A1rzmb81AnLf0NsZbXuIqz+uU+j5hiHjqcU8Zs6cxm6R2f+VTI/ZbKQfDUqvLQ==","signatures":[{"sig":"MEUCIQCt2PLWEl2gBhtyzEOXK/XX9ahtde8l1CfPyJkhRyH0eAIgZy5YxmWRXenx7crN0htyOVKrTX+cej75k2YkSS97xTw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122192},"main":"index.js","type":"module","gitHead":"369ae4518d808f3487cc83dd8e859fac6aab1039","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"steveisgreat","email":"spelkey@ucdavis.edu"},"_npmVersion":"11.4.2","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"24.4.1","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.4.1_1760545380802_0.025524130308613113","host":"s3://npm-registry-packages-npm-production"}},"6.4.2":{"name":"@ucd-lib/cork-app-utils","version":"6.4.2","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.4.2","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"133b5944677381a740ab590dd9d3ad229219a0dc","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.4.2.tgz","fileCount":27,"integrity":"sha512-fCpoUYDZZc+arCfRm1kJnXnpg+FmQ2wPokxV0Abtdf8ma1ZMNXBTjnzmzYuzP4+UKUuA/3POdABmV3o/Dv6e5w==","signatures":[{"sig":"MEUCIQCgtDMzrmqa88JW8sbt4qkT0x/rfdsskWQu/HKV7FbEVwIgRJxY9M02WipcUW+AzRjZ0y3tVfRVr2llsBKW36qxO2U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122204},"main":"index.js","type":"module","gitHead":"863c6f8ed066f192f84f247e5c3a220c9a428e58","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"steveisgreat","email":"spelkey@ucdavis.edu"},"_npmVersion":"11.4.2","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"24.4.1","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.4.2_1772131376197_0.24038043892819072","host":"s3://npm-registry-packages-npm-production"}},"6.5.0":{"name":"@ucd-lib/cork-app-utils","version":"6.5.0","author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","_id":"@ucd-lib/cork-app-utils@6.5.0","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"bin":{"cork-app-utils":"bin/cli.js"},"dist":{"shasum":"bf6b1ec86edcd2f2c24f279f1955b4994a0c2bd1","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.5.0.tgz","fileCount":27,"integrity":"sha512-tJ/VNxmaOQbNQO7dvKgd7fDd66qS2Plkd/6HRxsafvhMKSkjj6BxIcJItFEzP9ztit2NeMHZjltPmVrSlP8b1A==","signatures":[{"sig":"MEUCIC+BnlGXXqOfese/dJuUYBdY9P6CwQ+NznkQr3myAyPvAiEA5XJr/QXatXwz2YXL/Bl8EgK5/WO3bqD8nWVN4G8CeGQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123507},"main":"index.js","type":"module","gitHead":"3294bdc80c452fe2d14b700455ca5e27ddd72180","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"steveisgreat","email":"spelkey@ucdavis.edu"},"_npmVersion":"11.4.2","description":"Base classes for wiring client app code to event framework","directories":{},"_nodeVersion":"24.4.1","dependencies":{"fs-extra":"^7.0.1","fast-deep-equal":"^2.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cork-app-utils_6.5.0_1775583889569_0.799699039006216","host":"s3://npm-registry-packages-npm-production"}},"6.6.0":{"name":"@ucd-lib/cork-app-utils","version":"6.6.0","description":"Base classes for wiring client app code to event framework","type":"module","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"bin":{"cork-app-utils":"bin/cli.js"},"author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","dependencies":{"fast-deep-equal":"^2.0.1","fs-extra":"^7.0.1"},"_id":"@ucd-lib/cork-app-utils@6.6.0","gitHead":"18329f04491eae66f82f978c76c9435fede515dd","_nodeVersion":"24.4.1","_npmVersion":"11.4.2","dist":{"integrity":"sha512-/QyZpr9b9N/5Eh2Dq9KeA0BZlETvFfrRtN/iWZI1Tof3ZTuhm5Ncu+EVMAkLzioqYbLEUqVVulJEVtdnUVXtKQ==","shasum":"ce6bff28e903a3b784db8a0bd4bc19fa7b159474","tarball":"https://registry.npmjs.org/@ucd-lib/cork-app-utils/-/cork-app-utils-6.6.0.tgz","fileCount":28,"unpackedSize":129071,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCV1aTucG9UeFBmDPk2nIPqUQnobOifKFs4f581qFZaPQIgRo344mprBztuYgl4PCZ6n46ziCqJEMJsL+1zmELWCOs="}]},"_npmUser":{"name":"steveisgreat","email":"spelkey@ucdavis.edu"},"directories":{},"maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cork-app-utils_6.6.0_1779477361635_0.8324447370007484"},"_hasShrinkwrap":false}},"time":{"created":"2017-11-01T20:32:27.175Z","modified":"2026-05-22T19:16:01.976Z","2.0.0":"2017-11-01T20:32:27.175Z","2.0.1":"2017-11-02T17:26:14.073Z","2.0.2":"2017-11-02T18:45:50.162Z","2.0.3":"2017-11-02T23:10:28.691Z","2.0.4":"2017-11-11T00:37:17.427Z","2.0.5":"2017-12-13T00:29:59.611Z","3.0.0":"2018-04-17T16:33:18.504Z","3.0.1":"2018-04-17T17:40:10.940Z","3.0.2":"2018-04-20T16:04:57.213Z","3.0.3":"2018-05-06T22:59:35.949Z","3.1.0":"2018-06-01T15:50:29.096Z","3.2.0":"2018-06-19T17:44:51.491Z","3.2.1":"2018-06-19T17:47:22.232Z","4.0.0":"2018-08-03T21:20:27.728Z","4.0.1":"2018-08-21T22:18:16.638Z","4.1.0":"2018-08-29T20:34:57.957Z","4.1.1":"2018-08-29T20:53:10.732Z","4.1.2":"2018-10-05T17:56:42.110Z","4.2.0":"2019-03-23T17:54:34.160Z","4.2.1":"2019-04-17T18:51:16.618Z","4.2.2":"2019-04-17T18:53:09.356Z","4.2.3":"2019-06-03T05:10:44.608Z","4.3.0":"2019-07-03T21:43:17.369Z","4.3.1":"2019-07-06T19:10:09.123Z","4.3.2":"2019-07-06T19:11:42.112Z","4.3.3":"2019-08-06T20:40:55.581Z","4.4.0":"2019-12-05T18:45:13.385Z","5.0.0":"2021-04-30T17:02:23.207Z","5.0.1":"2021-04-30T17:16:28.796Z","5.1.0":"2021-05-07T19:53:46.973Z","5.1.1":"2023-06-01T16:08:54.174Z","6.0.0":"2024-08-07T17:04:15.589Z","6.0.1":"2024-08-08T16:47:41.419Z","6.0.2":"2024-08-08T17:00:06.499Z","6.0.3":"2024-08-09T19:38:02.458Z","6.0.4":"2024-08-15T20:30:25.864Z","6.0.5":"2024-08-19T20:16:07.629Z","6.0.6":"2024-09-10T21:04:55.039Z","6.0.7":"2024-09-10T21:19:33.806Z","6.1.0":"2024-09-12T21:39:48.118Z","6.2.0":"2024-09-18T21:38:00.294Z","6.2.1":"2024-09-20T17:39:45.987Z","6.2.2":"2024-09-20T17:55:51.365Z","6.2.3":"2024-09-24T15:45:21.340Z","6.2.4":"2024-09-24T16:51:11.046Z","6.2.5":"2024-09-24T19:49:22.836Z","6.2.6":"2024-10-02T16:30:26.618Z","6.3.0":"2024-10-24T16:21:07.118Z","6.3.1":"2025-02-14T18:20:51.479Z","6.3.2":"2025-09-10T20:40:43.459Z","6.4.0":"2025-10-15T16:18:32.419Z","6.4.1":"2025-10-15T16:23:01.009Z","6.4.2":"2026-02-26T18:42:56.354Z","6.5.0":"2026-04-07T17:44:49.740Z","6.6.0":"2026-05-22T19:16:01.815Z"},"author":{"name":"Justin Merz","email":"jrmerz@ucdavis.edu"},"license":"MIT","description":"Base classes for wiring client app code to event framework","maintainers":[{"name":"jrmerz","email":"jrmerz@gmail.com"},{"name":"qjhart","email":"qjhart@ucdavis.edu"},{"name":"ucdust","email":"dcartwright@ucdavis.edu"},{"name":"steveisgreat","email":"spelkey@ucdavis.edu"}],"readme":"# Cork App Utils\n\n- [Install](#install)\n- [BaseModel](#basemodel)\n- [BaseService](#baseservice)\n- [BaseStore](#basestore)\n- [EventBus](#eventbus)\n- [Wiring to UI](#wiring-to-ui)\n- [Logger](#logger)\n  - [Logger Config](#logger-config)\n- [Error Reporting](#error-reporting)\n- [LruStore](#lrustore)\n- [Caching](#caching)\n  - [clearCache](#clearcache)\n- [CLI](#cli)\n\n# Install\n\n```bash\nnpm i -s @ucd-lib/cork-app-utils \n```\n\n# Overview\n\n![workflow](./cork-app-utils-workflow.png)\n\n# BaseModel\n\nThe BaseModel exposes the event bus and has helper methods\nfor registering with the global model registry.  This global object\nis used by Element interface mixins to inject the models into\nelements.\n\n### Attributes\n\n - eventBus : EventBus\n\n### Methods\n\n - register(name: String)\n   - Register the model\n - emit(event: String, payload: Object)\n   - Emit event to event bus\n\n### Example Usage\n\n```javascript\nimport {BaseModel} from '@ucd-lib/cork-app-utils';\nimport ExampleStore from '../stores/ExampleStore';\nimport ExampleService from '../service/ExampleService';\n\nclass ExampleModel extends BaseModel {\n\n  constructor() {\n    super();\n\n    this.store = ExampleStore;\n    this.service = ExampleService;\n\n    this.register('ExampleModel');\n\n    // If you want to add other models\n    // this.inject('AnotherModel');\n    // Make sure in your main index.js file to call\n    // import {Registry} from '@ucd-lib/cork-app-utils';\n    // // import models\n    // Registry.ready();\n  }\n\n  /**\n   * @method get\n   * @description In this example we will fetch some data\n   * using our service.  The service may return some\n   * data already cached in the store.  The returned \n   * data will be in a State Payload Wrapper.\n   * In most cases, we simply need to call the service\n   *\n   * @returns {Promise}\n   */\n  async get(id) {\n    return this.service.get()\n  }\n\n  /**\n   * @method set\n   * @description Update some app data\n   */\n  async set(data) {\n    const res = await this.store.update(data);\n    if ( res.state === 'loaded' ) {\n      // clear relevant caches here\n      this.store.data.byId.purge();\n    }\n    return res;\n  }\n}\n\nconst exampleModel = new ExampleModel();\nexport default exampleModel;\n```\n\n## Loading Models\n\nHere is a sample `index.js` file for the `./src` folder.  Where `./src` contains `./src/models`, `./src/services`, `./src/stores`, etc.\n\nindex.js:\n```js\nimport {Registry} from '@ucd-lib/cork-app-utils';\n\nimport ExampleModel from './models/ExampleModel.js';\nimport AnotherModel from './models/AnotherModel.js';\n\n// This handles inject of other models into models, avoiding\n// cyclical dependency issues\nRegistry.ready();\n\n// then if you want to expose\n// export {ExampleModel, AnotherModel};\n// or\n// if( typeof window !== 'undefined' ) {\n//   window.APP_MODELS = {ExampleModel, AnotherModel};\n// }\n// or\n// access via registry.models\n```\n\n# BaseService\n\nThe BaseService exposes helper functions to call rest services\n\n### Attributes\n\n - eventBus : EventBus\n\n### Methods\n\n - request(options: Object)\n   - Make a fetch request\n\n### Example Usage\n\n```javascript\nimport {BaseService} from '@ucd-lib/cork-app-utils';\nimport ExampleStore from '../stores/ExampleStore';\n\nimport payload from './payload.js';\nimport { digest } from '@ucd-lib/cork-app-utils';\n\nclass ExampleService extends BaseService {\n\n  constructor() {\n    super();\n\n    this.store = ExampleStore;\n  }\n\n  async get(id) {\n    // LruStore where the data will be written\n    const store = this.store.data.byId;\n\n    await this.checkRequesting(\n      id, store,\n      () => this.request({\n        url : `/api/get/${id}`,\n        // if request has been made before, will return cached version\n        // exclude if you never want to get cached data\n        checkCached : () => store.get(id),\n\n        // preferred pattern is to use onUpdate callback which automatically\n        // sets the correct state (loading, loaded, error)\n        onUpdate : resp => this.store.set(\n          {...resp, id},\n          store\n        ),\n\n        // instead of onUpdate, you can manually handle state with the following callbacks\n        // for advanced use cases only. Requires creating custom handlers in the store.\n        onLoading : request => this.store.setLoading(id, request),\n        onLoad : result => this.store.setLoaded(id, result.body),\n        onError : e => this.store.setError(id, e)\n      })\n    );\n    return store.get(id);\n  }\n\n  /**\n   * Requests are saved/accessed in the store by a unique id.\n   * cork-app-utils has built-in methods for generating an id from an object\n   */\n  async query(query={}){\n    // option 1, for large queries\n    let id = await digest(query);\n\n    // option 2, if you know the keys that will be in the query and there are a limited number\n    const id = payload.getKey(query);\n    // then in this.request do:\n    // onUpdate : resp => this.store.set(\n    //   payload.generate(ido, resp),\n    //   store\n    // )\n  }\n\n  // continue doing normal checkRequesting/this.request here\n}\n\nconst exampleService = new ExampleService();\nexport default exampleService;\n```\n\n```js\n//payload.js\nimport {PayloadUtils} from '@ucd-lib/cork-app-utils'\n\nconst ID_ORDER = ['org', 'name', 'other keys you know to exist'];\n\nlet inst = new PayloadUtils({\n  idParts: ID_ORDER\n});\n\nexport default inst;\n\n```\n\n# BaseStore\n\nThe ServiceModel exposes helper functions to call rest services\n\n### Attributes\n\n - eventBus : EventBus\n\n### Methods\n\n - request(options: Object)\n   - Make a fetch request\n\n### Example Usage\n\n```javascript\nimport {BaseStore, LruStore} from '@ucd-lib/cork-app-utils';\n\nclass ExampleStore extends BaseStore {\n\n  constructor() {\n    super();\n\n    this.data = {\n      // will automatically create an event based on name:\n      // name.replace(/[\\s\\._]/g, '-').toLowerCase()+ '-update';\n      // will be emitted if using the onUpdate callback in service.request\n      byId : new LruStore({name: 'by-id'})\n    }\n\n    this.events = {\n      EXAMPLE_CUSTOM_UPDATE = 'example-custom-update'\n    }\n  }\n\n  // If not using onUpdate callback in service.request, you have to set up state handlers:\n  // request is the network request promise\n  // always store this so we can wait on it if a second\n  // entity requests this same resource\n  setLoading(id, request) {\n    this._setState({\n      state: this.STATE.LOADING, \n      id, request\n    });\n  }\n\n  setLoaded(id, payload) {\n    this._setState({\n      state: this.STATE.LOADED,   \n      id, payload\n    });\n  }\n\n  setError(id, error) {\n    this._setState({\n      state: this.STATE.ERROR,   \n      id, error\n    });\n  }\n\n  _setState(id, state) {\n    // optionally check that state has actually changed\n    // this is helpful to prevent multiple events of same state that sometimes occur\n    // if( !this.stateChanged(this.data.byId[id], state) ) return;\n\n    const store = this.data.byId;\n    store[id] = state\n    this.emit(store.name.replace(/[\\s\\._]/g, '-').toLowerCase() + '-update', state);\n\n    // or emit a custom event\n    this.emit('example-custom-update', state)\n  }\n}\n\nconst exampleStore = ExampleStore();\nexport default exampleStore;\n```\n\n# LruStore\n\nThe LruStore is a simple LRU cache store.  It can used in the BaseStore example above.  It is a simple key value store with a max size.  When the max size is reached, the least recently used key is removed.  The timestamp of a key is updated when the key is set or accessed.\n\n## LruStore Config\n\n```js\n{\n  // name of the store.  This is used when logging.\n  name : String,\n\n  // max number of items to store.  defaults to 50\n  maxSize : Number\n}\n```\n\n## LruStore Methods\n\n - get(key: String)\n   - Get value for key\n - set(key: String, value: Any)\n   - Set value for key\n - purge()\n   - remove all items\n\n\n# Caching\n\nCaching in cork-app-utils is handled by [LruStore](#lrustore) instances attached to each model's store, and data will only be automatically deleted after it exceeds the `maxSize` parameter. When you need to invalidate caches manually — such as after a POST request — use `clearCache`.\n\n## clearCache\n\n```js\nimport { clearCache } from '@ucd-lib/cork-app-utils';\n```\n\n### Parameters\n\n`clearCache(opts={})`\n\n| Option | Type | Description |\n|---|---|---|\n| `target` | `Array<{model, store?}>` | Explicit list of model/store pairs to clear.  If `store` is omitted, all LruStores in that model are cleared.  When `target` is provided, `skipModels` and `skipStores` are ignored. |\n| `skipModels` | `Array<string>` | Model names to skip.  Only used when `target` is not set. |\n| `skipStores` | `Array<string>` | Store names (LruStore `name` property) to skip.  Only used when `target` is not set. |\n\nWhen called with no arguments, all LruStores across all registered models are cleared.\n\n### Examples\n\n```js\n// clear everything\nclearCache();\n\n// clear all stores in a single model\nclearCache({ target: [{ model: 'ExampleModel' }] });\n\n// clear one specific store in a model\nclearCache({ target: [{ model: 'ExampleModel', store: 'by-id' }] });\n\n// clear everything except certain models\nclearCache({ skipModels: ['AuthModel'] });\n\n// clear everything except certain stores\nclearCache({ skipStores: ['by-id'] });\n```\n\nYou will likely want to set up a wrapper function in your application in order to automatically skip certain models/stores:\n\n```js\nimport { clearCache } from '@ucd-lib/cork-app-utils';\n\nexport default function clearCache(opts={}){\n  const defaultOpts = { skipModels: ['IconModel', 'AppStateModel'] };\n  clearCache({ ...defaultOpts, ...opts });\n  }\n```\n\nand then in your model:\n\n```js\nimport clearCache from './clear-cache.js'\n\nclass ExampleModel extends BaseModel {\n\n  async createFoo(data){\n    const r = await this.service.createFoo(data);\n    if ( r.state === 'loaded'){\n\n      // clear a specific store\n      clearCache({target: 'ExampleModel', store: 'foo.list'});\n\n      // for more complicated apps with a lot of dependencies between data objects, just blow out the whole cache and save yourself the headache\n      clearCache();\n    }\n\n    return r;\n  }\n}\n\n\n```\n\n\n# EventBus\n\nGlobal instance of EventEmitter class.\n\n\n# Wiring to UI\n\n## LitElement\n\n```js\nimport { LitElement } from 'lit-element';\nimport render from \"./my-element.tpl.js\"\nimport {Mixin, LitCorkUtils} from \"@ucd-lib/cork-app-utils\";\n\nexport default class MyElement extends Mixin(LitElement)\n  .with(LitCorkUtils) {\n\n  constructor() {\n    super();\n    this.render = render.bind(this);\n\n    // if you want a custom logger name call this in the constructor\n    // this._initLogger('foo');\n    // this.logger is always available and defaults to the element name\n\n    // inject the ExampleModel.  Will be available at this.ExampleModel\n    this._injectModel('ExampleModel');\n  }\n\n  showData(id) {\n    let data = await this.ExampleModel.get('someId');\n    if ( data.state === 'loaded' ){\n      // you can do stuff with data here\n    }\n  }\n\n  // LitCorkUtils will automatically create callback methods for every event in the store when the model is injected\n  // for example the example-custom-update event:\n  _onExampleCustomUpdate(e) {\n    if( e.state === 'loading' ) {\n\n    } else if( e.state === 'loaded' ) {\n\n    } else if( e.state === 'error' ) {\n\n    }\n  }\n\n  _setExample() {\n    this.ExampleModel.set({\n      my : 'new state'\n    });\n  }\n}\n\ncustomElements.define('my-element', MyElement);\n```\n\n# Logger\n\nBy default all elements using `LitCorkUtils` will have access to a logger.  The logger provides methods for different log levels; `debug`, `info`, `warn` and `error`:\n\n```js\nexport default class MyElement extends Mixin(LitElement)\n  .with(LitCorkUtils) {\n\n    constructor() {\n      super();\n\n      this.logger.debug('i am firing from the constructor!')\n    }\n\n  }\n```\n\n## Setting up the logger  \nThe logger library provides two functions:\n- `getLogger(name)` takes a name argument and returns a logger with that name. If a logger does not already exist by that name, a new one is created.  \n- `setLoggerConfig` sets the default config for all loggers.\n\n### Logger Config\n\nThe logger's config can have the following properties:\n\n```js\n{\n  // default log level for all loggers.  If not provided, they \n  // will default to 'info'.\n  logLevel : String, \n\n  // individual logger log level override.  \n  // ex: to override logger 'example' to 'debug', set :\n  // config.logLevels.example = 'debug';\n  logLevels : Object,\n\n  // if true, the logger will not include caller method and source link in log messages\n  disableCallerInfo : Boolean,\n\n  // report errors (both uncaught exceptions on the window and logger.error calls) to a provided url endpoint.\n  reportErrors : {\n    // must be set to true to report\n    enabled : Boolean,\n\n    // urls to call\n    url : String,\n\n    // HTTP Method to use.  Defaults to POST\n    method : String,\n\n    // key to send as `x-api-key` header\n    key : String,\n\n    // custom headers to send in request\n    headers : {},\n\n    // full url or full path to the bundles source map file\n    // this is used to map stack traces to the original source\n    sourceMapUrl : String,\n\n    // extension of the source map file.  Example to '.map'\n    // when set the source map url will be the url of the error\n    // plus this extension\n    sourceMapExtension : String,\n\n    // custom attributes to send in request body\n    customAttributes : {}\n  }\n}\n```\n\nThere are a couple ways to setup the config.  \n\n  - Manually call `import {setLoggerConfig} from '@ucd-lib/cork-app-utils`.  Then call `setLoggerConfig(config)`;\n  - Set `window.LOGGER_CONFIG_VAR` and then make sure your config is located at `window[window.LOGGER_CONFIG_VAR]`.\n  - Set `window.APP_CONFIG.logger`.\n\nYou can update config in realtime by setting window variables or url query params.\n\n  - logLevel:\n    - `?loglevel=debug` \n    - `window.logLevel = 'debug'`\n  - logLevels:\n    - `?loglevels=example:debug,my-element:info`\n    - `window.logLevels.example = 'debug';`\n  - disableCallerInfo:\n    - `?disableCallerInfo=true`\n    - `window.disableLoggerCallerInfo = true;`\n\n\n## Error Reporting\n\n\nThe logger can report; uncaught errors, unhandled promises and logger.error() method calls by setting `reportErrors.enabled` to `true` and provided a `url` to post to.  For more information about a client error reporting service see: https://github.com/ucd-library/client-error-reporter.\n\nBy default, the error reporter will POST to the provided url with the following headers and body:\n\nheaders:\n```\nContent-Type: application/json\nx-api-key: [key provided in config]\n```\n\nbody:\n```js\n{\n  // logger name\n  name : 'String',\n\n  // error object if uncaught error/promise, or arguments array if call to logger.error(). \n  error : 'Object|Array',\n\n  // current window.location.pathname\n  pathname : 'String'\n\n  // current window.location.search (query params as string)\n  search : 'String'\n}\n```\n\n\n# CLI\n\nInstall cork-app-utils globally\n\n```bash\nnpm i -g @ucd-lib/cork-app-utils \n```\n\nThe command line utility has two main helpers:\n\n## Model Template\n\nIn the src or lib directory or your client code, run:\n\n```\ncork-app-utils model example\n```\n\nIt will create the following files (and folders if they do not exist):\n\n - lib/models/ExampleModel.js\n - lib/services/ExampleService.js\n - lib/stores/ExampleStore.js\n\nWith boiler plate wiring code already in place.\n\n## Lit Element Template\n\nIn the directory you wish to create a new element run:\n\n```\ncork-app-utils lit my-element\n```\n\nThis will create the following files:\n\n - my-element.js\n - my-element.tpl.js\n\nWhere the .js file contains the main element definition and .tpl.js contains the template tag.  There is nothing specific to cork-app-utils in the Lit template other than the way we like to split the elements into two files.  To bind a Lit Element to a stores events, see the Lit Element section in [Wiring to UI](#wiring-to-ui).\n","readmeFilename":"README.md"}