{"_id":"abc","_rev":"30-54bc04b892fba671f5853b1e250ccc9f","name":"abc","description":"Misc js helpers","dist-tags":{"latest":"0.6.1"},"versions":{"0.1.0":{"name":"abc","author":{"name":"Golubev Fedor","email":"gregof@yandex.ru","url":"http://github.com/gregof"},"description":"Misc js helpers","version":"0.1.0","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":">=0.4.0 <0.7.0"},"repository":{"type":"git","url":"git://github.com/gregof/abc.git"},"main":"./index.js","_npmUser":{"name":"gregof","email":"gregof@yandex.ru"},"_id":"abc@0.1.0","_engineSupported":true,"_npmVersion":"1.1.21","_nodeVersion":"v0.6.18","_defaultsLoaded":true,"dist":{"shasum":"920234dfda70284cfd4754b5ad74587588fedeec","tarball":"https://registry.npmjs.org/abc/-/abc-0.1.0.tgz","integrity":"sha512-sfWJfzY+t/FScbsDf3p08J6Y0l67/IuLe3jpqraqfmGC6xB452UWG2gaKTiDTyx0FaRWUGF/f8XM/S4c/GOiNQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDQkLB1A5kVHWHhDfJyIGa/m8fc1UHURa5xQIk2C+ELfAiAww6QhKqSokrSbEs2qK1ZWiPAeSvisdnfPXJQ7UGuU6g=="}]},"maintainers":[{"name":"gregof","email":"gregof@yandex.ru"}],"directories":{}},"0.2.0":{"name":"abc","author":{"name":"Golubev Fedor","email":"gregof@yandex.ru","url":"http://github.com/gregof"},"description":"Misc js helpers","version":"0.2.0","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":">=0.4.0 <0.7.0"},"repository":{"type":"git","url":"git://github.com/gregof/abc.git"},"main":"./index.js","_npmUser":{"name":"gregof","email":"gregof@yandex.ru"},"_id":"abc@0.2.0","_engineSupported":true,"_npmVersion":"1.1.21","_nodeVersion":"v0.6.18","_defaultsLoaded":true,"dist":{"shasum":"927c7f8533ac5cf5865c7b3d2f5aa292d78ce7de","tarball":"https://registry.npmjs.org/abc/-/abc-0.2.0.tgz","integrity":"sha512-44eg/4uDj+YbJNtp1t8r0EwQ8UQUkviB+ocQT8epbsxrX4Y/7ch60L+fs77OeaC+Fz1MnS2A7QeCBBqxrY8Vwg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCoYpem8f1/WX+j2wt4VM5WSDS8JPJl9r2lpQ6K5eGNsAIhAO6rb6pMcjKYWRM4rwJ7rdmSbml2kA68Sk17xUbAI/QN"}]},"maintainers":[{"name":"gregof","email":"gregof@yandex.ru"}],"directories":{}},"0.2.1":{"name":"abc","author":{"name":"Golubev Fedor","email":"gregof@yandex.ru","url":"http://github.com/gregof"},"description":"Misc js helpers","version":"0.2.1","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":">=0.4.0 <0.7.0"},"repository":{"type":"git","url":"git://github.com/gregof/abc.git"},"main":"./index.js","_npmUser":{"name":"gregof","email":"gregof@yandex.ru"},"_id":"abc@0.2.1","_engineSupported":true,"_npmVersion":"1.1.21","_nodeVersion":"v0.6.18","_defaultsLoaded":true,"dist":{"shasum":"29d7cd816dbf703f20c9de598ec0f8bae48cb0da","tarball":"https://registry.npmjs.org/abc/-/abc-0.2.1.tgz","integrity":"sha512-zREKEpBNyW4H5zgqZqQ2PzldoAYGNYFGGxQuWyf7CzyKkdl1xOLyi0tq4lV4Txz6AHaNh8GSdS0hkJNBczIA+g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAQb0KmNrgSplnIAUay67KzoPUTxPojjBgQ4ceHLfj18AiATwC1MxCSuj0NdBVORiqHAJSb0GHTBBRmqbq0TInMYKg=="}]},"maintainers":[{"name":"gregof","email":"gregof@yandex.ru"}],"directories":{}},"0.3.0":{"name":"abc","author":{"name":"Golubev Fedor","email":"gregof@yandex.ru","url":"http://github.com/gregof"},"description":"Misc js helpers","version":"0.3.0","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":">=0.4.0"},"repository":{"type":"git","url":"git://github.com/gregof/abc.git"},"main":"./index.js","_id":"abc@0.3.0","dist":{"shasum":"d5182df7143b8e4615f114264634f28852053c42","tarball":"https://registry.npmjs.org/abc/-/abc-0.3.0.tgz","integrity":"sha512-rUU57wHh29/6xJgmuko71SYD91Kbmkj+MhOTHJ+llu4YHliQx+8UkuLbrC0ixV+nIonhAXd/88FUQn/66P+0Uw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF8kfdBQJp5h9c2qTNt7PaKoL2mU0gFwgQ0WLEXQG55zAiAQ9Ct+vVk9Lxazu9nrucn1wap2slXsZFmmWIgxya7oIQ=="}]},"_npmVersion":"1.1.59","_npmUser":{"name":"gregof","email":"gregof@yandex.ru"},"maintainers":[{"name":"gregof","email":"gregof@yandex.ru"}],"directories":{}},"0.4.0":{"name":"abc","author":{"name":"Golubev Fedor","email":"gregof@yandex.ru","url":"http://github.com/gregof"},"description":"Misc js helpers","version":"0.4.0","dependencies":{},"devDependencies":{"abc":"0.3.x"},"optionalDependencies":{},"engines":{"node":">=0.4.0"},"repository":{"type":"git","url":"git://github.com/gregof/abc.git"},"main":"./index.js","_id":"abc@0.4.0","dist":{"shasum":"1f4a94aec45c192dcfdb85e8ad8ebcbf52d28fe9","tarball":"https://registry.npmjs.org/abc/-/abc-0.4.0.tgz","integrity":"sha512-TKfZqm6OKLzAtnXNyL+DTX47r7Utwf5IWeH6EEiyi0XnUZY9uBHU3bWg1sLWFyI8AbkrvgifGotzkScj7mlTtg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBjDQiizGVCZCE7TNhBRe87+wmLPWRviz+eFnYnuWX89AiAHpO7zPztx7a9tKCyyoeTD7r3tEj3OghjFON3n8AjE3Q=="}]},"_npmVersion":"1.1.59","_npmUser":{"name":"gregof","email":"gregof@yandex.ru"},"maintainers":[{"name":"gregof","email":"gregof@yandex.ru"}],"directories":{}},"0.4.1":{"name":"abc","author":{"name":"Golubev Fedor","email":"gregof@yandex.ru","url":"http://github.com/gregof"},"description":"Misc js helpers","version":"0.4.1","dependencies":{},"devDependencies":{"abc":"0.3.x"},"optionalDependencies":{},"engines":{"node":">=0.4.0"},"repository":{"type":"git","url":"git://github.com/gregof/abc.git"},"main":"./index.js","_id":"abc@0.4.1","dist":{"shasum":"8f0d720b58c3c616ad20b817ee6fca14c21c649a","tarball":"https://registry.npmjs.org/abc/-/abc-0.4.1.tgz","integrity":"sha512-7kSem7w7YdSEwY8u4BYv0HwnHle/vPEHtanNQ3qSPZZzhIYoRte2TH/5h+5hj9XQUk59neWOwuVDRP6O0h+8Wg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID/wJO8m9+HKW259lX0yf2sAYOPea4+mv5XN6lZYpL+dAiByRiGKXjyIEYBSWw/pM/mznwADry4oJlUIJaylcBegIA=="}]},"_npmVersion":"1.1.59","_npmUser":{"name":"gregof","email":"gregof@yandex.ru"},"maintainers":[{"name":"gregof","email":"gregof@yandex.ru"}],"directories":{}},"0.5.0":{"name":"abc","author":{"name":"Golubev Fedor","email":"gregof@yandex.ru","url":"http://github.com/gregof"},"description":"Misc js helpers","version":"0.5.0","dependencies":{},"devDependencies":{"abc":"0.3.x","tc":"0.3.x"},"optionalDependencies":{},"engines":{"node":">=0.4.0"},"repository":{"type":"git","url":"git://github.com/gregof/abc.git"},"main":"./index.js","_id":"abc@0.5.0","dist":{"shasum":"b9c191670d2118f5a662bfe1b5ed36a2ea1fd90c","tarball":"https://registry.npmjs.org/abc/-/abc-0.5.0.tgz","integrity":"sha512-QuZajR+LuGMkbmD07Hl+WvupZ7+WdTz6zhP42yPcBAwrlbw6ud2F2Wl7cet9xgiSST4BJAtK/E5+jPySInKhtQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEyHjtNAmpordSUV0udVaa+hXhHJAPdhZufgip/q5vpnAiACsH0AppIA3HVUJfSXINfEUlx/sABwNJugilGrKia6Gg=="}]},"_npmVersion":"1.1.59","_npmUser":{"name":"gregof","email":"gregof@yandex.ru"},"maintainers":[{"name":"gregof","email":"gregof@yandex.ru"}],"directories":{}},"0.5.1":{"name":"abc","author":{"name":"Golubev Fedor","email":"gregof@yandex.ru","url":"http://github.com/gregof"},"description":"Misc js helpers","version":"0.5.1","dependencies":{},"devDependencies":{"abc":"0.3.x","tc":"0.3.x"},"optionalDependencies":{},"engines":{"node":">=0.4.0"},"repository":{"type":"git","url":"git://github.com/gregof/abc.git"},"main":"./index.js","_id":"abc@0.5.1","dist":{"shasum":"56e6a4b56ed691aada9049a7ad38825892ec61b3","tarball":"https://registry.npmjs.org/abc/-/abc-0.5.1.tgz","integrity":"sha512-WRBP9wjuEdmzw1yFHCVf7Qp/PXSmfuUSX3FSs+5+uLG4qGKmhOPKl8LtZaG0p6xxuB6hX1tIzH4VaHL23+bU5A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBHyBeyyMLaZrnlUbLUDDWDFPcjmGzvgM4IgIYChORhfAiEA3urdkRTDic1YYxryX6rX9Vkf5jaL5AMWiWueYPCrETM="}]},"_npmVersion":"1.1.59","_npmUser":{"name":"gregof","email":"gregof@yandex.ru"},"maintainers":[{"name":"gregof","email":"gregof@yandex.ru"}],"directories":{}},"0.6.0":{"name":"abc","author":{"name":"Golubev Fedor","email":"gregof@yandex.ru","url":"http://github.com/gregof"},"description":"Misc js helpers","version":"0.6.0","dependencies":{},"devDependencies":{"abc":"0.3.x","tc":"0.3.x"},"optionalDependencies":{},"engines":{"node":">=0.4.0"},"repository":{"type":"git","url":"git://github.com/gregof/abc.git"},"main":"./index.js","_id":"abc@0.6.0","dist":{"shasum":"4591c0a10b40c0111eb527fb477659a3b99b3623","tarball":"https://registry.npmjs.org/abc/-/abc-0.6.0.tgz","integrity":"sha512-sch9qTnNIYemp+bqPvh1zF9ebe9+YCqS6/KzPBspj60Ed5P0r9EG//agu/fVr1ExyknAxlz7W+AFweVp7bI82w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFGvxgiPBoNttb/kR2t7m3O+/FJa4kWTyfHolmB2JtQdAiAsQ2BSu9XBzzm7eULhyTcWJwuqU+PGxQQNHsuIVBQs+A=="}]},"_npmVersion":"1.1.59","_npmUser":{"name":"gregof","email":"gregof@yandex.ru"},"maintainers":[{"name":"gregof","email":"gregof@yandex.ru"}],"directories":{}},"0.6.1":{"name":"abc","author":{"name":"Golubev Fedor","email":"gregof@yandex.ru","url":"http://github.com/gregof"},"description":"Misc js helpers","version":"0.6.1","dependencies":{},"devDependencies":{"abc":"0.3.x","tc":"0.3.x"},"optionalDependencies":{},"engines":{"node":">=0.4.0"},"repository":{"type":"git","url":"git://github.com/gregof/abc.git"},"main":"./index.js","_id":"abc@0.6.1","dist":{"shasum":"3f60868295ada65306fd7a3e0025cc69d56c39a8","tarball":"https://registry.npmjs.org/abc/-/abc-0.6.1.tgz","integrity":"sha512-+SVuw9ZL4zUqrPmuBU/+hMn5u6JVZwuH79zG598dyQXIUCde5P8Hr+u/CQkZLGRqbue5Hp28/10RVCDoUkt6eg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDmKZh3Vf5A6jPktT1/+tr0WCAd5oiXMB7MrxyFNqhiZAIhAOGmaf217GhsTVtx9thpAyBma2Z73AAC8xJV90I8RJBD"}]},"_npmVersion":"1.1.59","_npmUser":{"name":"gregof","email":"gregof@yandex.ru"},"maintainers":[{"name":"gregof","email":"gregof@yandex.ru"}],"directories":{}}},"readme":"## abc\n\n#### abc.async.forEach\n```javascript\nabc.async(array, action, [callback]);\n```\n```javascript\nabc.async.forEach(\n    [1,2,3],\n    function (value, callback) {\n        if (value === 1) {\n            setTimeout(function () {\n                callback(value * value);\n            }, 200)\n        } else {\n            callback(value * value);\n        }\n    },\n    function (results) {\n        results; // [1, 4, 9]\n        // finish\n    }\n);\n```\n```javascript\nabc.async.forEach(\n    [func1, func2, func3],\n    function (results) {\n        // finish\n    }\n);\nfunction func1 (callback) {\n    // ...\n    callback();\n}\n// func2, func3\n```\n#### abc.async.sequence\n```javascript\nabc.sequence(array, action, [callback]);\n```\n```javascript\nabc.async.sequence(\n    [1,2,3],\n    function (value, callback, previousResult) {\n        value; // 1, 2, 3\n        previousResult; // null, 1, 4\n        \n        if (value === 1) {\n            setTimeout(function () {\n                callback(value * value);\n            }, 200)\n        } else {\n            callback(value * value);\n        }\n    },\n    function (results) {\n        results; // [1, 4, 9]\n        // finish\n    }\n);\n```\n```javascript\nabc.async.sequence(\n    [func1, func2, func3],\n    function (results) {\n        // finish\n    }\n);\nfunction func1 (callback, previousResult) {\n    // ...\n    callback();\n}\n// func2, func3\n```\n\n####abc.dir\nCreate dir, if it does not exist.\n```javascript\nabc.dir(dirPath, callback)\n```\n\n#### abc.file.read\n```javascript\nabc.file.read(filename, callback)\n```\n#### abc.file.write\n```javascript\nabc.file.write(filename, text, callback)\n```\n#### abc.file.copy\n```javascript\nabc.file.copy(sourceFileName, destinationFileName, callback)\n```\n#### abc.file.binRead\n```javascript\nabc.file.binRead(filename, callback)\n```\n#### abc.file.binWrite\n```javascript\nabc.file.binWrite(filename, data, callback)\n```\n#### abc.file.binCopy\n```javascript\nabc.file.binCopy(sourceFileName, destinationFileName, callback)\n```\n\n#### abc.extend\n```javascript\nabc.extend(origin, patch1 /*, ..., patchN */, recursive)\n```\n\n#### abc.find\nRecursive find in dir. Calls fileCallback for each file, and completeCallback at end.\n```javascript\nabc.find(dirPath, fileCallback, completeCallback, {recursive: true, excludedDirs: ['node_modules']})\n\nfunction fileCallback (file, dirPath) {\n    file; // code.js\n    dirPath; // src/\n    return /.*\\.js/.test(file); // find all js files\n}\n```\n\n#### abc.Executer\nPool of actions limited by action executed in parallel.\n```javascript\nvar executer = new abc.Executer(30); // No more then 30 actions in parallel.\nexecuter.add(function (callback) {\n    // do something async\n    calllback();\n});\n```\n","maintainers":[{"name":"gregof","email":"gregof@yandex.ru"}],"time":{"modified":"2022-06-13T02:19:15.658Z","created":"2012-07-19T08:00:25.424Z","0.1.0":"2012-07-19T08:00:27.186Z","0.2.0":"2012-08-24T15:10:56.769Z","0.2.1":"2012-08-24T15:14:29.770Z","0.3.0":"2012-09-16T03:30:45.189Z","0.4.0":"2012-09-19T05:16:47.427Z","0.4.1":"2012-10-01T10:01:49.746Z","0.5.0":"2012-12-12T08:13:40.719Z","0.5.1":"2012-12-12T14:00:15.177Z","0.6.0":"2013-07-30T07:48:11.446Z","0.6.1":"2013-07-31T06:56:16.279Z"},"author":{"name":"Golubev Fedor","email":"gregof@yandex.ru","url":"http://github.com/gregof"},"repository":{"type":"git","url":"git://github.com/gregof/abc.git"},"readmeFilename":"","users":{"c0rv4x50":true}}