{"_id":"function-loop","_rev":"11-7959a0af29a29c4c99e452f4c5cfffad","name":"function-loop","description":"Run a list of functions in order in a given object context.  The functions can be callback-taking or promise-returning.","dist-tags":{"latest":"4.0.0"},"versions":{"1.0.0":{"name":"function-loop","version":"1.0.0","main":"index.js","scripts":{"test":"tap test.js --100"},"repository":{"type":"git","url":"git+https://github.com/isaacs/function-loop.git"},"keywords":[],"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"license":"ISC","bugs":{"url":"https://github.com/isaacs/function-loop/issues"},"homepage":"https://github.com/isaacs/function-loop#readme","dependencies":{"bluebird":"^3.4.7"},"devDependencies":{"tap":"^9.0.3"},"description":"Run a list of functions in order in a given object context.  The functions can be callback-taking or promise-returning.","gitHead":"6a715ea81077965917f572eef65b1b734e1b16a1","_id":"function-loop@1.0.0","_shasum":"604086c5e0e811479128d0749bb5b93996e49225","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"604086c5e0e811479128d0749bb5b93996e49225","tarball":"https://registry.npmjs.org/function-loop/-/function-loop-1.0.0.tgz","integrity":"sha512-Az9lDpyr0St2+xTs0qYmYWhCrR+ZDuY6cYGaFDhAMlYKt0S2nvAPeW3CTclXmA6alMUugvG7GZvIGjEBGojSGw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB3L7pSDW/MtBskxlVo7NZdvnUPf4VzEvJ8Akl9hpTbEAiEA4pkXWkDh763p09Hh4izBWE0K9Zr/Yav73sSu6ohSrzk="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/function-loop-1.0.0.tgz_1484789347570_0.3647799848113209"},"directories":{}},"1.0.1":{"name":"function-loop","version":"1.0.1","main":"index.js","scripts":{"test":"tap test.js --100"},"repository":{"type":"git","url":"git+https://github.com/isaacs/function-loop.git"},"keywords":[],"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"license":"ISC","bugs":{"url":"https://github.com/isaacs/function-loop/issues"},"homepage":"https://github.com/isaacs/function-loop#readme","devDependencies":{"tap":"^9.0.3"},"description":"Run a list of functions in order in a given object context.  The functions can be callback-taking or promise-returning.","gitHead":"4e4499cc60ac865f4bf8a83007c9bcf90c02abfa","_id":"function-loop@1.0.1","_shasum":"8076bb305e8e6a3cceee2920765f330d190f340c","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"8076bb305e8e6a3cceee2920765f330d190f340c","tarball":"https://registry.npmjs.org/function-loop/-/function-loop-1.0.1.tgz","integrity":"sha512-sBw7QMvz1UieKap2DP5ayPMHvq6EFTjKw5Me721Yn3RWeD6xS0KUTqiNwr/ZYzOWP0NHNDVfs8s5KzCvyxf4Qg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCICXiw5muuBfbMJLJyNcQ+HHDAtSR02ybj8vNG0qTjNysAh8mzBNB6N7uFG7vTar7HObWCBsq8cWGawwaCuFaQEbu"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/function-loop-1.0.1.tgz_1484789456274_0.8021668971050531"},"directories":{}},"1.0.2":{"name":"function-loop","version":"1.0.2","main":"index.js","scripts":{"test":"tap test.js --100"},"repository":{"type":"git","url":"git+https://github.com/isaacs/function-loop.git"},"keywords":[],"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"license":"ISC","bugs":{"url":"https://github.com/isaacs/function-loop/issues"},"homepage":"https://github.com/isaacs/function-loop#readme","devDependencies":{"tap":"^9.0.3"},"description":"Run a list of functions in order in a given object context.  The functions can be callback-taking or promise-returning.","gitHead":"e8e5e49d2e350a6decf7c70c26fc265f40145d1e","_id":"function-loop@1.0.2","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-Iw4MzMfS3udk/rqxTiDDCllhGwlOrsr50zViTOO/W6lS/9y6B1J0BD2VZzrnWUYBJsl3aeqjgR5v7bWWhZSYbA==","shasum":"16b93dd757845eacfeca1a8061a6a65c106e0cb2","tarball":"https://registry.npmjs.org/function-loop/-/function-loop-1.0.2.tgz","fileCount":5,"unpackedSize":5073,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcnBESCRA9TVsSAnZWagAAt0IQAJAYvbGdAIyZymVdHZsU\nEI/WOk/5Jy98Tizb1LNJXHM+024ue95Du+TV499z2IejeTxLZoNF2bKyZF1v\nf2MuBYm4AnCCr5zurtPh+VkOXPw5XhUAvKyFYe8l4QKDhnqh5kXpij6N1/7W\n0oQaZmJh/i12Phg1eji3UFfg+wAEhyn0MC383hkMv3BOZbMRqx8wVFPgylUd\ndTMKLYfwBXby5byefqBcORqF4kqTAfKc1396jDCM8LMKcjInBra0sB7fYjHU\nszBRAeB2z2x/mHs54NaG+sDHanDLDQtv0sukZARizb9Twc2aJC+cFjxDs+AU\nczsdFaYJ8VJ1Bx1SzrPaaWNuEkf2H0+P/lmIYS6tbYj6I1m+BC4X93B+J3yx\nqsQFQ/NqkK2E0Dbc/2QAQYIraTIBohBmp56TnpfUxOVPb7iZflvQ/915aFa8\njeT1xB5FRts7agpSovupd3iJNgUZGtMF6YI0aVoC0K747KybmksS8mCfRx1r\n3lAR6RStl2YgkJzv3SSeEystL53Gcbk8XE7rUvAp244nK1gsyZgwgpSdIM7i\nXQPE9Tyyl30FZE1OQTDUxqIHqI6n9j69YULUKAsFOQUrFEHZQcxuZZoT5yjx\nhyBSbFqhqzw3nZS626+2bZX6i/vexpwEgWL2S7EG02ngjLFX2cj35sOQ9lsz\npbcl\r\n=c/jV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCyunjXMWpaxlwLuOlQPTiPic0kqGWxFxFzGJWiVCP15QIhAIEW1kP53+3m5q9T3QmqDSdCBGGgfeCnb3rxmVhqiraF"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/function-loop_1.0.2_1553731857608_0.5546842471363855"},"_hasShrinkwrap":false},"2.0.0":{"name":"function-loop","version":"2.0.0","main":"index.js","scripts":{"test":"tap test.js --100"},"repository":{"type":"git","url":"git+https://github.com/isaacs/function-loop.git"},"keywords":[],"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"license":"ISC","bugs":{"url":"https://github.com/isaacs/function-loop/issues"},"homepage":"https://github.com/isaacs/function-loop#readme","devDependencies":{"tap":"^9.0.3"},"description":"Run a list of functions in order in a given object context.  The functions can be callback-taking or promise-returning.","gitHead":"aff453722f20671f8efdff0d2b17d4a3dfbf1980","_id":"function-loop@2.0.0","_nodeVersion":"15.3.0","_npmVersion":"7.5.4","dist":{"integrity":"sha512-dldE39rrwuoGsF1CCWzmFtwPElKtqAWdSw9n1eXkbdzZLwg4PSggeGFKfK1uytJMKBUaE7PZiQEhH9eQlPJBgA==","shasum":"87fb442ca41124cb58ddb32db4b12c4515fbbfd7","tarball":"https://registry.npmjs.org/function-loop/-/function-loop-2.0.0.tgz","fileCount":14,"unpackedSize":46622,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgK2hZCRA9TVsSAnZWagAAh9gQAIF/tgwZyKa8luHSn2Bl\nCsqrsx8Yr+SSB/VVOD3zMK+TaVu9jsiAxDefAXp/qHXoqjemxDP9KxHskqRC\neQPcHsOASGHABzTayGY7AACXey6U5vWyublzynXJNaXfpaHLSav+MWjRXIMw\ntWlM1hrRM2cyAcEEZVRnrzrKFtKUlrHsrGnHPd0MyhVDWsbGQ+1E4ttJy7P+\nfxSoglfRVep8b523aGBdQYaUqAinSdGHMxs+bt/RsC5N5MiYsXT0y1aHKlCw\nQyTc9TiNgQyRnefr2KabBUHswsvnkwSmh68/JokKCqyLj9aWO+SiAi6Reihq\naT1GwdCpRZ7wNKLAgCkZ6dqfg56S121ST20lrKZI0i//IRS4Xf06uXlayOjl\ngpxzlMAy7y+TcyFPShUiN2VDSWUgKgI5rk59fqWybr0JLJXuGKub0c67Ra4G\n/9zCvHyFi0i1XUXXXxOWBxEp5ZItuF7JicVyfePzqDhOBaiTUew0pFlOKJkn\njVjJBWi6E0/0P1318MXaYVyTGIHWmRNBLSp2OeU3SwH+1iC/R6pJwZarqbYT\nQTN5MgDzJWCW237eDvevohx/avzAfMTKhIFmV96MJGh7+vLr+KMwwh1JczTx\n0b/UoB39aWTGJM19o+wfLCqb3Nihv3hNvG6ulpT717zWYiNqwt2v+bC1hnJs\nP/Z+\r\n=QnYj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAckxZq4+LeJgM8IrqYaiHMJWeFyB9GONKoQ4ZlRPHgpAiAFNVkkcEh8y/6sFKu93te0s7jGlY8rgZZv5sTwKshvVw=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/function-loop_2.0.0_1613457497152_0.8247033509543569"},"_hasShrinkwrap":false},"2.0.1":{"name":"function-loop","version":"2.0.1","main":"index.js","scripts":{"test":"tap test.js --100"},"repository":{"type":"git","url":"git+https://github.com/isaacs/function-loop.git"},"keywords":[],"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"license":"ISC","bugs":{"url":"https://github.com/isaacs/function-loop/issues"},"homepage":"https://github.com/isaacs/function-loop#readme","devDependencies":{"tap":"^9.0.3"},"description":"Run a list of functions in order in a given object context.  The functions can be callback-taking or promise-returning.","gitHead":"133740eb47b70ac6306360d7df303e546b954217","_id":"function-loop@2.0.1","_nodeVersion":"15.3.0","_npmVersion":"7.5.4","dist":{"integrity":"sha512-ktIR+O6i/4h+j/ZhZJNdzeI4i9lEPeEK6UPR2EVyTVBqOwcU3Za9xYKLH64ZR9HmcROyRrOkizNyjjtWJzDDkQ==","shasum":"799c56ced01698cf12a1b80e4802e9dafc2ebada","tarball":"https://registry.npmjs.org/function-loop/-/function-loop-2.0.1.tgz","fileCount":3,"unpackedSize":2385,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgK2kFCRA9TVsSAnZWagAALj8QAJT7GiySCa7eC2pysPNd\nSMMnanOPNjM0V0HZhAEsycfCCGNloMmRdSpInPczlFhGZfHWnhHO0CLFRLW8\nabPY10uuxWntkj59Xe1OfjcV3a3HB09lEZYOXMr7cnnJH/EbnOiRVroiCs72\nDzulTW+n+TpegiMgyAs3AVXzPMwriFDAl5jA+eBc1BaiFNr0Ba4CxLiIME9j\nmEc3Ln/pXUUgLQ3nwFhml7G7EGMF3a5WhSoyL8pF7b6pvTAKn4aUa2u9Tewd\n9sOBmnbIa2nrjqcnIySgE3XrLuIxtQyGG0rmWkm2S5LaAO5+zHCGKtanL1uQ\ntrx0e06MA3EmrHu3LQyskogBZ+vcMCGvnwE0lYffOFHAVjAt7Lw6eUPoKQXK\nPbvK8RbyJcn44l/Ore+4z1wWKzExLIIiXyCnD3azNm4QvdZCf0ADk5ivOzBc\np6sCVRcag9Vu/2nPXVIazEjHoKd8fTlN8CZN9nNpGKduSj1X+dgd4sJzo/7J\nqAgJwjRhe3q8+yy0huxyU4BLYL+zSiVY22qt9b+4JJAOpXwagmenOfAOGTBl\nNYlBMQK71ROSdJp2JvdCALwiUs9XLC8nb2+E42LF+Ro+rJQeHoK9ZtFi8TSk\nLLm/KHmrMsWm+aaWo6dExyKcdoIsd1anHr2I3z5Tt7BFp0Nk2vWrrUcB8gm4\n5tKc\r\n=R8vD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD6rxReQoU8jnI29ZDi1g0IFbgUYafSDvU60BEklibvNwIgH6ZeGJ3QN/9eZ0h0izmNi36lfkKgjocTX5RvEPIJr9Y="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/function-loop_2.0.1_1613457669060_0.2951134278171881"},"_hasShrinkwrap":false},"3.0.0":{"name":"function-loop","version":"3.0.0","main":"dist/cjs/index.js","module":"dist/mjs/index.js","exports":{".":{"import":"./dist/mjs/index.js","require":"./dist/cjs/index.js"}},"scripts":{"snap":"c8 tap","test":"c8 tap","preprepare":"rm -rf dist","prepare":"tsc -p tsconfig-cjs.json && tsc -p tsconfig-esm.json","postprepare":"bash fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --loglevel warn","preversion":"npm test","postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","typedoc":"typedoc --tsconfig tsconfig-esm.json ./src/*.ts"},"repository":{"type":"git","url":"git+https://github.com/isaacs/function-loop.git"},"keywords":[],"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"license":"ISC","bugs":{"url":"https://github.com/isaacs/function-loop/issues"},"homepage":"https://github.com/isaacs/function-loop#readme","devDependencies":{"@types/tap":"^15.0.7","c8":"^7.12.0","prettier":"^2.8.0","tap":"^16.3.2","ts-node":"^10.9.1","typedoc":"^0.23.21","typescript":"^4.9.3"},"description":"Run a list of functions in order in a given object context.  The functions can be callback-taking or promise-returning.","prettier":{"semi":false,"printWidth":60,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tap":{"coverage":false,"node-arg":["--no-warnings","--loader","ts-node/esm"],"ts":false},"types":"./dist/cjs/index.d.ts","gitHead":"b6f6601885f83bddd1b11c4afd260ccde0b78404","_id":"function-loop@3.0.0","_nodeVersion":"19.1.0","_npmVersion":"9.1.2","dist":{"integrity":"sha512-VJd/XvhiyYdGkesg4yt6nE2T2iCT6QS51LUKZf1Z38rC791p58ZxBYarBQU7vdJP1769EvgaWQySaSCmwwnvWQ==","shasum":"4966d704fad38c89bb80a6ca66d4f0c20e40bb13","tarball":"https://registry.npmjs.org/function-loop/-/function-loop-3.0.0.tgz","fileCount":11,"unpackedSize":7644,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICDhxknUVyD4opQxh4jQIbrdp7XKj0ddDWy50cifEO8vAiAVSPVkvp66VPPM9cZIeixJs1uDM/1gxuNL24gWEx+SAw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhZpIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoSmQ//Xe8stVteLHJTUVdGnDwIeOa0iC8qQ0Ra5cljZjfJMkdaOtso\r\nCZZY8D7EkNSm2Lf4ui+g1UtmvGtpSZcnlW2tIaOHPjSlmG6kCochPQwOKUs4\r\nBXYDd5twrf3KsAIJxw/TgY0cYL77M6yqLec2/gBbllkQgnYBw9LKoMoB+dXu\r\nZX6WuQeT0/mT4Ausibo3CKGvWznCAp62At0cHZYLOmZD95OA6Dtuo13bLm2G\r\n56nQcsOn6V3K+X63Xye+Kgh5RDGv5SaEHwTXXc+HnsyDyjDkYoSaJA5CK/CQ\r\n75ToPLmIO7WKkqVoi0H1wCA45Z/paaHrf2zFxVVajAhBc8qQsZUWf24fairL\r\ntwyuURldFKGcxEVlhOOut1RL9C6iZlv08GDV+jspf9UFWeUVovlu7F3hTewU\r\nt/vhjj0huoq3aian7RJNicmawuLyxGXorkug6vNStKNqjS8Q3awJRbdsrhG2\r\ng0TuFMuHE9eIne2baCWU6DoYHQmZkB1Nmdu13dmsKyA1qesUTPgn/5rtDZsl\r\nHSeinpJLRWkO38w59NoXfbWFaB1Qs5oY/Dju1m9iliTU4Nwn/zsTqTDbFtR/\r\nfL2QNm8CD2SdwaRO12ugTk2iu7kjmmGQODI1Lsd2Bkj/RZLeU+lTx6FTt2L0\r\nxusdOkxHOsRnuKg6BEEpPdsXI8v1DlZy/OY=\r\n=iZj5\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/function-loop_3.0.0_1669700167995_0.6749753376421879"},"_hasShrinkwrap":false},"3.0.1":{"name":"function-loop","version":"3.0.1","main":"dist/cjs/index.js","module":"dist/mjs/index.js","exports":{".":{"import":"./dist/mjs/index.js","require":"./dist/cjs/index.js"}},"scripts":{"snap":"c8 tap","test":"c8 tap","preprepare":"rm -rf dist","prepare":"tsc -p tsconfig-cjs.json && tsc -p tsconfig-esm.json","postprepare":"bash fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --loglevel warn","preversion":"npm test","postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","typedoc":"typedoc --tsconfig tsconfig-esm.json ./src/*.ts"},"repository":{"type":"git","url":"git+https://github.com/isaacs/function-loop.git"},"keywords":[],"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"license":"ISC","bugs":{"url":"https://github.com/isaacs/function-loop/issues"},"homepage":"https://github.com/isaacs/function-loop#readme","devDependencies":{"@types/tap":"^15.0.7","c8":"^7.12.0","prettier":"^2.8.0","tap":"^16.3.2","ts-node":"^10.9.1","typedoc":"^0.23.21","typescript":"^4.9.3"},"description":"Run a list of functions in order in a given object context.  The functions can be callback-taking or promise-returning.","prettier":{"semi":false,"printWidth":60,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tap":{"coverage":false,"node-arg":["--no-warnings","--loader","ts-node/esm"],"ts":false},"types":"./dist/cjs/index.d.ts","gitHead":"ed6228e3a4f71f62361c66d03efb8286837d30c8","_id":"function-loop@3.0.1","_nodeVersion":"18.14.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-sDE+dMeAGz3JXEXaa5USIM02/1TBYe/idC97DSI81CyyqWFNCtsjGynOkMMh56o/oasehON5+GEme0SZvG7NTQ==","shasum":"ada57d969ee5823ffa669005760be03f065884dc","tarball":"https://registry.npmjs.org/function-loop/-/function-loop-3.0.1.tgz","fileCount":13,"unpackedSize":9434,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAoBKSo/v/B05pjnaqQYhbwt8jcCT5PiPIJ8e+Ph2Jp8AiB4nnMkldQ/up8qBa2B0/LV3mnheg3PykncoN76PUHSAQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkG02HACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrwrQ//UQtGQLeLgjnWPA5gwAuRQWAGDaAgD4U1xl5ITnECA/WFgbJC\r\nbg6pi0v/HwDU411BQYkmX0/UIxLanUDYgVFgsQeXw/EKK5Z0hQJD/yjTfkO4\r\n4lsaLeXFw819pwpPDixY2NuF+uUA2AT4tOGkfZ4ydkJBx0fxVih5E00vgcTK\r\nM3iHEzxebSoG2ryOspV/8xzaLvyRczrWCRlCLkfNp/+yMbG+OX9IlljOeseO\r\nG+pTSkypLqjwBdK0lP+okSo/PZafcsq1HZfQB54QqKonGMhQgLDUXraqgIW2\r\nGNUHl2uFos/nIOMlemuWiXng5pWT0WMcNxtZoNfxvFHvOTeJL5GOoIxrj4S4\r\n4QOW0GWzpqjtUlciJWODoD1qHF36T1aNV7zCa72lo6sREWzAhUf8mNazZAVb\r\nZYf1QlUcAgpKiKx8lTsavW/U5n4HochA0QO60qo/v9FxcVmS0iRb4he7UUFO\r\nyXqOEG9rLpTTD7Va5OvpykaZS4qkvbmchaGkkqu/drlwwapGyOwYfGuv2wD4\r\n5vuZ3eV3dg3bB02lAfhkart49H6/Zee36j9ozvf5SkJd3XM5H3x6bYV9gku0\r\n6Xflf7lun0kFKmQVn0IDxwFLbwr46YrSiRLzLqHdfDgtfRdpVjqQXQxsvK45\r\n3ySaPiFQWHfWZMwsKpzjdV/qzTiUMP2KhU4=\r\n=/8Hh\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/function-loop_3.0.1_1679510918876_0.06040281104643741"},"_hasShrinkwrap":false},"4.0.0":{"name":"function-loop","version":"4.0.0","main":"dist/cjs/index.js","module":"dist/mjs/index.js","exports":{".":{"import":"./dist/mjs/index.js","require":"./dist/cjs/index.js"}},"scripts":{"snap":"c8 tap","test":"c8 tap","preprepare":"rm -rf dist","prepare":"tsc -p tsconfig-cjs.json && tsc -p tsconfig-esm.json","postprepare":"bash fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --loglevel warn","preversion":"npm test","postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","typedoc":"typedoc --tsconfig tsconfig-esm.json ./src/*.ts"},"repository":{"type":"git","url":"git+https://github.com/isaacs/function-loop.git"},"keywords":[],"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"license":"ISC","bugs":{"url":"https://github.com/isaacs/function-loop/issues"},"homepage":"https://github.com/isaacs/function-loop#readme","devDependencies":{"@types/tap":"^15.0.7","c8":"^7.12.0","prettier":"^2.8.0","tap":"^16.3.2","ts-node":"^10.9.1","typedoc":"^0.23.21","typescript":"^4.9.3"},"description":"Run a list of functions in order in a given object context.  The functions can be callback-taking or promise-returning.","prettier":{"semi":false,"printWidth":60,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tap":{"coverage":false,"node-arg":["--no-warnings","--loader","ts-node/esm"],"ts":false},"types":"./dist/cjs/index.d.ts","gitHead":"77e77c08a8480525994368eeb7ef84e0c8c1d9eb","_id":"function-loop@4.0.0","_nodeVersion":"18.14.0","_npmVersion":"9.6.4","dist":{"integrity":"sha512-f34iQBedYF3XcI93uewZZOnyscDragxgTK/eTvVB74k3fCD0ZorOi5BV9GS4M8rz/JoNi0Kl3qX5Y9MH3S/CLQ==","shasum":"12c57cfb9fe08f77532e8b1357242aca2a02c858","tarball":"https://registry.npmjs.org/function-loop/-/function-loop-4.0.0.tgz","fileCount":13,"unpackedSize":9339,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDpZfF3WTmsRQ0rHLU9+wHM6rlurl1XxXy5FxCvJsRX7AIga4Bo2gRmpyzZ2qmyGg1GXBX+gjQIcXt+z/Ra91wF4fw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkM0NIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpOaQ//ZHXZJsEz6RY4caWgtnyK0BpXRaXThhCGRclE2B99vY8sKjfm\r\nIMMU/30hPH2NDCau9+oNWn5BXC+M2zvjetE9/O2yQ2vxheMUPrQQICs7DJgd\r\n543l3Mjoa5zobdQH+p5H6DqKmaG6+seMiwX+2HvzlFUXtf1oIGhKIbc/rO3A\r\nkeqTNxOtOJxWAjP+yDjQfzeW2bZNoQ6WQilyC8F/VwgvzE6JuG4e5qPOJa/A\r\n9KTNQcZ6qnWq+6A2IAXXXUGPiIlPO99a7nJ7sq78G37NT/yHNE2ZRLx+8iG1\r\nkFmCN4QSHHsJ3KOX4Ed2MV1WlHp0UgF/jdB0ZcEjAUUn+GAEDtfQLLiHvYuv\r\nx6DZgm6L1i7AT4Yqdu5q8X8gpq3cUNoIvLtxgYbzFzu9gwdhUBAzF7I/PMET\r\n2ufG07IDLIAC5gsvwXV95zRY1J2eDV8L3UE3ZR925iPVowsH4JcJZk/A+2+k\r\n7B7Ru6wynfq3ntPBXOdLbf//Ky/5euHYI1XurtDAjrprzJVdWgzyTyHP7aJb\r\nQFIaCrsBF+38Lq0s/YnGMA+BTkq0TU1XQivn8YjXj99q6t15zZZFkGL67tX7\r\nxxUgI6gCzKbjyAROe6D2vJZNq9PSJ7xrU6aeG3wdj9clcmyfNB15oS3kAP7x\r\nXfgjHTEHyLDjE2TmpQQTrHrCpBK53E5glHM=\r\n=QTN0\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/function-loop_4.0.0_1681081160064_0.8259398733590138"},"_hasShrinkwrap":false}},"readme":"# function-loop\n\nRun a list of synchronous or asynchronous functions, and call a\nfunction at the end.\n\n## USAGE\n\n```ts\nimport { loop } from 'function-loop'\n// or `const { loop } = require('function-loop')\n\nconst loop = require('./dist/cjs/index.js').default\n\n// synchronous usage\nconst list = [\n  () => console.log(1),\n  () => console.log(2),\n  () => console.log(3),\n]\nconst result = loop(list, () => {\n  console.log('done')\n  return true\n}, (er) => {\n  console.error('threw somehow', er)\n})\n\nconsole.log('result:', result)\n// logs:\n// 1\n// 2\n// 3\n// done\n// result: true\n\n// asynchronous usage\nconst plist = [\n  async () => console.log(1),\n  async () => new Promise(resolve => setTimeout(resolve, 100)).then(() =>\n    console.log(2)\n  ),\n  async () => console.log(3),\n]\nconst presult = loop(plist, () => {\n  console.log('done')\n  return true\n}, (er) => {\n  console.error('threw somehow', er)\n})\n\nconsole.log('result:', presult)\npresult.then(() => console.log('resolved'))\n// logs:\n// 1\n// result: Promise { <pending> }\n// 3\n// 2\n// resolved\n```\n\n## Zalgo Preserving\n\nThis module is\n[\"zalgo-preserving\"](http://blog.izs.me/post/59142742143/designing-apis-for-asynchrony),\nmeaning that synchronous returns will result in a sync call to\nthe supplied cb, and async calls will result in the done callback\nbeing called asynchronously.  The loop will return a Promise\nindicating when it is finished, if any async functions are\nencountered.  It does not artificially defer if functions are\ncalled synchronously.\n\n## API\n\n`loop(functionList, doneCallback, errorCallback)`\n\nRun all the functions and then call the `doneCallback` or call\nthe `errorCallback` if there are any errors.\n\nFunctions are called without being bound to any object as `this`.\n\nFunctions can return a Promise to do async operations, or not if\nthey are done synchronously.  Throws and Promise rejection are\nreported to the `errorCallback` provided.\n\nReturn value is the return value of the callback, or a `Promise`\nresolving to the callback's return value if any of the functions\nin the list return promises.\n","maintainers":[{"name":"isaacs","email":"i@izs.me"}],"time":{"modified":"2023-04-12T02:45:22.809Z","created":"2017-01-19T01:29:09.390Z","1.0.0":"2017-01-19T01:29:09.390Z","1.0.1":"2017-01-19T01:30:58.021Z","1.0.2":"2019-03-28T00:10:57.797Z","2.0.0":"2021-02-16T06:38:17.455Z","2.0.1":"2021-02-16T06:41:09.231Z","3.0.0":"2022-11-29T05:36:08.172Z","3.0.1":"2023-03-22T18:48:39.035Z","4.0.0":"2023-04-09T22:59:20.267Z"},"homepage":"https://github.com/isaacs/function-loop#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/isaacs/function-loop.git"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me/"},"bugs":{"url":"https://github.com/isaacs/function-loop/issues"},"license":"ISC","readmeFilename":"README.md","users":{"flumpus-dev":true}}