{"_id":"zig","_rev":"12-41f4b9dc44da2ffc2a7f14eaef0b32c5","name":"zig","description":"Simple, but naughty, control flow for Node.js.","dist-tags":{"latest":"0.3.0"},"versions":{"0.0.1":{"name":"zig","version":"0.0.1","description":"zig","main":"zig.js","scripts":{"test":"mocha test/*.test.js"},"author":{"name":"Richard Rodger","url":"http://richardrodger.com/"},"license":"MIT","devDependencies":{"mocha":"^1.21.5"},"dependencies":{"underscore":"^1.7.0"},"gitHead":"bfa681845aa0ef53b14c8ad2159bd932155b1ac5","_id":"zig@0.0.1","_shasum":"0a9dfeb027d7873d3d0fd3b5de857de7ea6ebeda","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"0a9dfeb027d7873d3d0fd3b5de857de7ea6ebeda","tarball":"https://registry.npmjs.org/zig/-/zig-0.0.1.tgz","integrity":"sha512-1v9CLSbvzQHbqHGuBofjaiZzbneoPXftq3fptfJPw0bMdPWeIBx9rzG51NX7kiclLb7cC4TdO6kJu+fxHNXp+A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDMW+AJIPOmwJBYSM1GuPDr9MF0i1ONJdTr1TcVqqxHrAIgUbMPnx9FNZtd8aV6lzrxE4GAfxMbKC0QWleHxvrE0oA="}]},"directories":{}},"0.0.2":{"name":"zig","version":"0.0.2","description":"Simple, but naughty, control flow for Node.js.","main":"zig.js","scripts":{"test":"mocha test/*.test.js"},"author":{"name":"Richard Rodger","url":"http://richardrodger.com/"},"license":"MIT","devDependencies":{"mocha":"^1.21.5"},"dependencies":{"underscore":"^1.7.0"},"gitHead":"8028b66259dd4059c213ab7db6dc0f44234d90d2","_id":"zig@0.0.2","_shasum":"ea44746f1cba7764c416a3f1a473a9e472e5cdcd","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"ea44746f1cba7764c416a3f1a473a9e472e5cdcd","tarball":"https://registry.npmjs.org/zig/-/zig-0.0.2.tgz","integrity":"sha512-JqSGXs4/195oOOY8/cJF6Do+9V+MPYNIfbJFHPRZkY3MIvAyU+hNkG2vUiiyqLZZACgYqk43UlmOmG+kUJR2mA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDs9qo7dCbtYd2jhLsqn30V1abDM375QNeJzASP7k5cWAiEAnwwB3wwzW4m0u5HhTnHNFx8uEloxuL99RZ2wLrJsuNo="}]},"directories":{}},"0.1.0":{"name":"zig","version":"0.1.0","description":"Simple, but naughty, control flow for Node.js.","main":"zig.js","scripts":{"test":"./test.sh","build":"./build.sh"},"repository":{"type":"git","url":"git://github.com/rjrodger/zig.git"},"keywords":["zig","chain","chaining","step","wait","task"],"author":{"name":"Richard Rodger","url":"http://richardrodger.com/"},"license":"MIT","dependencies":{"lodash":"~2.4.1"},"gitHead":"d674d76b734da0571cab9b968ef6e140c172dd30","bugs":{"url":"https://github.com/rjrodger/zig/issues"},"homepage":"https://github.com/rjrodger/zig","_id":"zig@0.1.0","_shasum":"fd4ca7f420eb73ef2e8fa3a15eaa7a9ab0658add","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"fd4ca7f420eb73ef2e8fa3a15eaa7a9ab0658add","tarball":"https://registry.npmjs.org/zig/-/zig-0.1.0.tgz","integrity":"sha512-dSrfBoyS3KlyHZXxo3+QJqiIu7okvwk+RSiT/E8GZk9/KAxl/ltvbMAXui1MYNIv422SfXzu7FY3uOQvXdLVUA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA1DxLRyWBcyGs59poYaSkI6pNR9H57MNWLNUG6JEdRkAiEApCXNs18YTNz2tUx/2D3RqsDW4XieBzWr+THY3dVFXtU="}]},"directories":{}},"0.1.1":{"name":"zig","version":"0.1.1","description":"Simple, but naughty, control flow for Node.js.","main":"zig.js","scripts":{"test":"./test.sh","build":"./build.sh"},"repository":{"type":"git","url":"git://github.com/rjrodger/zig.git"},"keywords":["zig","chain","chaining","step","wait","task"],"author":{"name":"Richard Rodger","url":"http://richardrodger.com/"},"license":"MIT","dependencies":{"lodash":"~2.4.1"},"gitHead":"13e49ace2ec889d373d104f47e1794e073c6488a","bugs":{"url":"https://github.com/rjrodger/zig/issues"},"homepage":"https://github.com/rjrodger/zig","_id":"zig@0.1.1","_shasum":"801185594c7d1338f14c3ebfbe0ba74f0b969ccb","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"rjrodger","email":"richard.rodger@nearform.com"},"maintainers":[{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"shasum":"801185594c7d1338f14c3ebfbe0ba74f0b969ccb","tarball":"https://registry.npmjs.org/zig/-/zig-0.1.1.tgz","integrity":"sha512-PRoZmdUj86lG05/aMvZmYtC7XPDhH1WtkhO5HDQisGrUzQdFsbsKSySs+xD1hDoFyQQXCGyKnrmbkMlrfufPEA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEwCcTs3Kyma+n7fDJbEZeRp9ud48aht5YEAR1rbPw0eAiBjrFks4UEYvrIjIqiGqXAzJDI09H+dxmJ8fNOgQ1VOGw=="}]},"directories":{}},"0.2.0":{"name":"zig","version":"0.2.0","description":"Simple, but naughty, control flow for Node.js.","main":"zig.js","scripts":{"test":"./test.sh","build":"./build.sh"},"repository":{"type":"git","url":"git://github.com/rjrodger/zig.git"},"keywords":["zig","chain","chaining","step","wait","task"],"author":{"name":"Richard Rodger","url":"http://richardrodger.com/"},"license":"MIT","dependencies":{"lodash":"4"},"gitHead":"93c824f657bd9533050e6ee04aa22b4e62a1ceb7","bugs":{"url":"https://github.com/rjrodger/zig/issues"},"homepage":"https://github.com/rjrodger/zig#readme","_id":"zig@0.2.0","_npmVersion":"6.1.0","_nodeVersion":"8.11.2","_npmUser":{"name":"rjrodger","email":"richard.rodger@voxgig.com"},"maintainers":[{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"integrity":"sha512-/8NgyK7SVMa163RNRffbouR+UzoSnI8nt0eJu8XU09vIPUjsrxInDEYGXOCU2MphxvaVWWZ7eZJFkxFU8Fw6cA==","shasum":"74fc38a702e6398a569be1074984ac2ffadda95a","tarball":"https://registry.npmjs.org/zig/-/zig-0.2.0.tgz","fileCount":23,"unpackedSize":393585,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDHV3CRA9TVsSAnZWagAAMnMP/27mhEayvm4ITdq9MEhd\nG5lEQ8FoWybMdnSy9rCvZIgja1yJl68ODVRHwQQSkAMr1r1DZ/wPOczvIBem\nvo9pYx7HeZc+SuGnLVzG4CFrYqE9iMVu7pnZ244WoXI7ADGea1KpdKZGNetx\ntk+gAuFFeuITeGueO6x+PHvywwIFzjF/CL56ZewCZzAhVdC9iVqWAEdSRNh5\nSTP+KKt2YdymR++zoETWgdefcKLkVyo7ejMqdGs/CgyOBqhDTBHp0VIpMr3w\nR0QjLLQ44C5XXRE+GY6bdzA9H+Q4d1DXG37P0ycUW6bUbL5ENo3SsgmlH4CI\nWpSXaNMPNlzAJevmDGiTpmKO+899Aq15qC7LBEagx6s0ZWiTagmF45E8eyUf\nPMI1UYkALwPGbUjTBFlui10//Cn192MnbYnuc+c6pAKZ3bK7IoSt2b+WujdX\nEnwyLU1mu02XQaD4DFkkEXTGspq5luXXxi30DesetAGlXiH9qVoceItvTjk/\n/0eBcsFHQnOI9TatU7LbvojcbuUkOYFyEtVM9CAwEtJS/UZVBDSYocFO4A4Y\nB66Bxmdyl6nzFaFJU4SbtSr57h3pk6amyrA6DodV75BekdbdMDReMM9eXIDy\nnh7VvPL2ckmh7P+VHu/4Jtbvm18RnRapTMWCPq3Bf/TtWFhV1OrNKy8zqBq5\ncJWQ\r\n=m+eS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3F0DyGf76mbn9ZXZ6NmyxLa6NaY+oJiCAcws2aeK2tAIhAJz6hQO3gd0z9MD+yKf2lAOCpEKVHzglf/gDGs2Q7JXl"}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/zig_0.2.0_1527543158124_0.8380993074803524"},"_hasShrinkwrap":false},"0.3.0":{"name":"zig","version":"0.3.0","description":"Simple, but naughty, control flow for Node.js.","main":"zig.js","scripts":{"test":"mocha test/zig.test.js"},"repository":{"type":"git","url":"git://github.com/rjrodger/zig.git"},"keywords":["zig","chain","chaining","step","wait","task"],"author":{"name":"Richard Rodger","url":"http://richardrodger.com/"},"license":"MIT","dependencies":{"lodash":"4","mocha":"^5.2.0"},"files":["LICENSE","README.md","zig.js"],"gitHead":"54f0bba8ac19e56e74a600e609f67722bff3b88a","bugs":{"url":"https://github.com/rjrodger/zig/issues"},"homepage":"https://github.com/rjrodger/zig#readme","_id":"zig@0.3.0","_npmVersion":"6.1.0","_nodeVersion":"8.11.2","_npmUser":{"name":"rjrodger","email":"richard.rodger@voxgig.com"},"maintainers":[{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"dist":{"integrity":"sha512-H7NRxNIsBuadSSdIgdu6wWa0oaN2/uY4Qio/j8M52Brra8h5xvG60QyBsyHxBP9yxSKbFblR5GHxT2eQSeqloA==","shasum":"16138434e58560d8545fae07c62cbd8f19cf7804","tarball":"https://registry.npmjs.org/zig/-/zig-0.3.0.tgz","fileCount":4,"unpackedSize":8939,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbDHZeCRA9TVsSAnZWagAARd8P/i1EZcMIr8F/kJVFA8mv\ngpK2uYnZ4UchHtN7hd0czMzS4i8oNL4MYJYa6n7TkMz7VgsHvqKWCXbh2zKr\ng32CCyd2LMl0++zMgI3HJ8M4XE9VeOIrSVsrtMMGS04coRD7djodJHeqzoDj\nzw2npAmAtYq96U5Z3f+2dh910Up8guzCHrw8phZSqY3NzQ70fA31wic6u8Z5\npwZcTKJyS7Bm2N+VpMEDpur07LP7mco8veF32SClO8boahGlPQNK3juPzc3N\nGd5shq5jZt6F8GYvw0+SpEwxH0Fac1TX0HrSyDVL6B797ODCHsAzEThjNBSX\nP5U0d+SFDeVWZE2G0Qi7SvdzJRiLlpfmDU26PjORHBT0YUk5o+US8HrAApft\nfF+oVSe0DpEZ9e6a7ZpIvc6OeQ6LT6ciSb0OT26FKx/En9FFRKukgiZEyFJy\n2RX/fHtK6AtYrZOrecr2SZ1b68TYVkjVVeB+rrLwhmOvT59adIoajGXz/EOh\nfdPIoliO0Q73K/cX0Zo6G/NprtfbJpEResa0dwE9vcY5Vc3j6UxZ8UMGMPgr\n9fxaLFffBEIv1cnCBQs1PAL+oCIBdqIIeQZxeyNL5Hn9e8ajBunu0Tt3c9mQ\nirxoO7PCCl0936uFXkZnwzrAea7LojEjdvN3zBzF+ybXhbLVpk6Q1xBUEJq/\nu7ch\r\n=Egej\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEpqELXvGTPK147ARIeT07ngZIRFnql6HeEDTETJB1+RAiBZNYKklyNetzD3YtexQQiBobqV8sZ32GSXeUqrcZs8Ew=="}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/zig_0.3.0_1527543389437_0.033500562019151525"},"_hasShrinkwrap":false}},"readme":"Zig - Simple, but naughty, control flow for Node.js\n======================================================\n\n> Why have an if statement when you can have an if function?\n\nA special case solution for callback hell that focuses on developer\nease-of-use. Executes your functions in series or parallel, tracks\nerrors and results, **and provides conditionals**.\n\nAllows you to move blocks of code around to change the order of\nexecution.\n\n\nCurrent Version: 0.1.1\n\nTested on: Node 0.10.38\n\n[![Build Status](https://travis-ci.org/rjrodger/zig.png?branch=master)](https://travis-ci.org/rjrodger/zig)\n\n[Annotated Source](http://rjrodger.github.io/zig/doc/zig.html)\n\n\n# Support\n\nIf you're using this module, feel free to contact me on twitter if you\nhave any questions! :) [@rjrodger](http://twitter.com/rjrodger)\n\n[![Gitter chat](https://badges.gitter.im/rjrodger/zig.png)](https://gitter.im/rjrodger/zig)\n\n\n# Install\n\n```sh\nnpm install zig\n```\n\n\n## Quick Example\n\nSome callbacks:\n\n```js\nfunction color(val,callback) {\n  callback(null,{color:val})\n}\n\nfunction quality(val,callback) {\n  callback(null,{quality:val})\n}\n\nfunction sound(val,callback) {\n  callback(null,{sound:val})\n}\n\nfunction texture(val,callback) {\n  callback(null,{texture:val})\n}\n```\n\n\nNice and linear down the page.\n\n```js\nvar zig = require('..')\n\nvar result = {}\n\nzig()\n  .start()\n\n  .wait(function(data,done){\n    color('red',done)\n  })\n  .step(function(data){\n    console.log('color:'+data.color)\n    return result.color = data.color\n  })\n\n  .wait(function(data,done){\n    quality('high',done)\n  })\n  .step(function(data){\n    console.log('quality:'+data.quality)\n    return result.quality = data.quality\n  })\n\n  .if( Math.random() < 0.5 )\n  .wait(function(data,done){\n    sound('violin',done)\n  })\n  .step(function(data){\n    console.log('sound:'+data.sound)\n    return result.sound = data.sound\n  })\n  .endif()\n\n  .wait(function(data,done){\n    texture('rough',done)\n  })\n  .step(function(data){\n    console.log('texture:'+data.texture)\n    return result.texture = data.texture\n  })\n\n  .end(function(err){\n    if( err ) return console.log(err)\n    console.log(result)\n  })\n```\n\n\nVersus callback hell:\n\n```js\nvar result = {}\n\ncolor('red', function(err,data){\n  if( err ) return console.log(err)\n\n  result.color = data.color\n  console.log('color:'+data.color)\n\n  quality('high', function(err,data){\n    if( err ) return console.log(err)\n\n    result.quality = data.quality\n    console.log('quality:'+data.quality)\n\n    if( Math.random() < 0.5 ) {\n      sound('violin',function(err,data){\n        if( err ) return console.log(err)\n\n        result.sound = data.sound\n        console.log('sound:'+data.sound)\n        do_texture()\n      })\n    }\n    else do_texture()\n\n    function do_texture() {\n      texture('rough', function(err,data){\n        if( err ) return console.log(err)\n\n        result.texture = data.texture\n        console.log('texture:'+data.texture)\n\n        console.log(result)\n      })\n    }\n  })\n})\n```\n\n\n## Testing\n\n```sh\nnpm test\n```\n\n\n## Releases\n\n   * 0.1.0: normalize test, build, and readme\n   * 0.0.2: steps can exit\n   * 0.0.1: first working version\n\n\n\n\n","maintainers":[{"name":"rjrodger","email":"richard.rodger@nearform.com"}],"time":{"modified":"2022-06-29T17:24:04.578Z","created":"2014-10-12T15:44:28.686Z","0.0.1":"2014-10-12T15:44:28.686Z","0.0.2":"2014-10-13T16:08:26.895Z","0.1.0":"2015-01-27T13:07:45.358Z","0.1.1":"2015-05-26T19:47:34.515Z","0.2.0":"2018-05-28T21:32:38.251Z","0.3.0":"2018-05-28T21:36:29.503Z"},"author":{"name":"Richard Rodger","url":"http://richardrodger.com/"},"license":"MIT","readmeFilename":"README.md","homepage":"https://github.com/rjrodger/zig#readme","keywords":["zig","chain","chaining","step","wait","task"],"repository":{"type":"git","url":"git://github.com/rjrodger/zig.git"},"bugs":{"url":"https://github.com/rjrodger/zig/issues"}}