{"_id":"business-rules-engine","_rev":"40-f84903ba4a0ca57bdf86833260eb3248","name":"business-rules-engine","description":"business rules engine","dist-tags":{"latest":"1.2.8"},"versions":{"1.0.20":{"name":"business-rules-engine","version":"1.0.20","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"underscore":"latest","Q":"latest"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.0.20","scripts":{},"_shasum":"f2f2ad53bca3c1770c98d5b5047d84a2dcf8ffda","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"f2f2ad53bca3c1770c98d5b5047d84a2dcf8ffda","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.0.20.tgz","integrity":"sha512-WQ6c8s0myL8G1mgGRRWbPyWhoUeJSqv1mTGaVGLUpsR8l+xZ6ZWRX4jslIhmUn7IpsTjM6J1tUyYmc2FUye/zg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDp8em0MsgiSn2zyS0rgMmFwbBw0tbrfTMHwMdaoOlWaQIgcy+s4wOkbFmpIUhxL5IhnzepuEdWJ6jXTZTCRPoP4zQ="}]}},"1.0.21":{"name":"business-rules-engine","version":"1.0.21","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"underscore":"latest","Q":"latest"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.0.21","scripts":{},"_shasum":"91e14db73610b2cddc066cc0fb662a28327ce71d","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"91e14db73610b2cddc066cc0fb662a28327ce71d","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.0.21.tgz","integrity":"sha512-26C7hJYnQZKNBJyNZDQ+YroMCt2uBXccF4F++BKhpkJaZe+FZuBlysLUQljd4RqlqAPAZe1P0Qw3nRsS2ltAUg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCNpuxHBut4C+8i1sQODK9N0Kf+SCRS222JJzIuzQKuUQIhAOrrTXVvlKVnKfvD4E5oUhL6PvXJ77tKi9G5vDCyURDe"}]}},"1.0.23":{"name":"business-rules-engine","version":"1.0.23","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"underscore":"latest","Q":"latest"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.0.23","scripts":{},"_shasum":"11822ad80453195805c91eb3743fc49aa4a89ed5","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"11822ad80453195805c91eb3743fc49aa4a89ed5","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.0.23.tgz","integrity":"sha512-gV6hiQJGZ/2+9cZE62DHi18GL4fV6v8/bcSv610JO9KyXIMuRT9Rb+wzybUNntft7Az3HR88eF+GFshcCK0mdA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCsrv2sdYBF8H8266eHFW27jALQhXbnfgN6XTsDYmtsmAIhAOytQNDqVCvW18skXqk3qTqMaIDjwsgBn2ATCcCbzyBo"}]}},"1.0.24":{"name":"business-rules-engine","version":"1.0.24","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"underscore":"latest","Q":"latest"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.0.24","scripts":{},"_shasum":"a994323b640b9bbd04fa1bf2c51ff5281f871154","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"a994323b640b9bbd04fa1bf2c51ff5281f871154","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.0.24.tgz","integrity":"sha512-f4LNy/IKIT+TXfDCm3VJ+pahKtA4VN9pTHgRCZwQvj7pIf6eJXLEsGHGw0j8hjmsfsvZ1sGl+AyR2DRkXW6ssw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDVoi9uYo3W781alZnX3U6UIe0PRvZtRa6wk8Bf/Zgc/QIhAKdwT2bu0jGI/UtjOKH5kTtpZYTuu9o0XGVjREEriwHc"}]}},"1.0.25":{"name":"business-rules-engine","version":"1.0.25","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"latest","hashmap":"^1.1.0","underscore":"latest"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.0.25","scripts":{},"_shasum":"0925b5e90831e78eb336b4483f16c413b649db76","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"0925b5e90831e78eb336b4483f16c413b649db76","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.0.25.tgz","integrity":"sha512-BEhUukCMQ0LaCrcZeMDQwW2c/7KsoVdrL0EDYhD/LPkBXqde/s2OpvRFuPzNADwLyBBiv4UTa5WPLxTwN8SuIg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC4NM1QEKzWjtRtExXoMQqostVXPt+aboE8FwExRk7ZkAiBALeJXRheBeWQLbhzBM3tDnij3D0bzK+ANWEB3feYC8w=="}]}},"1.0.26":{"name":"business-rules-engine","version":"1.0.26","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"latest","hashmap":"^1.1.0","underscore":"latest"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.0.26","scripts":{},"_shasum":"9e5324f8d154b7d3a58013f4b590ca9f55a523e7","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"9e5324f8d154b7d3a58013f4b590ca9f55a523e7","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.0.26.tgz","integrity":"sha512-ovrfd9WmXfcUiP11Tk5t1+rRDMI3jd7D33LuHJ4CvN4vREKrYWfFwiDu9GjcLh6NyFiBrmAHpNw/viOj8+uzmw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDfmRQyK6Ao54HL+onj6MG/R5xFRIqIC18rnOHKyYXNxAIgGkgAcIBiUl9sm4vNf0OvaZsgIoEMIXX43Tp+pzi/hU4="}]}},"1.0.27":{"name":"business-rules-engine","version":"1.0.27","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"latest","hashmap":"^1.1.0","underscore":"latest"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.0.27","scripts":{},"_shasum":"7f8056881156aab172a47ffdd842b97ff3e4c3bd","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"7f8056881156aab172a47ffdd842b97ff3e4c3bd","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.0.27.tgz","integrity":"sha512-xFCdb3iOh32xWHYipBrXolnTJf9zx1Z2+/1XZAvjK+/FC4KbGtqQEI53vUjyc0DnYGmyI0zLUyVYDPPnQrnquw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCOhzJ5bceNKFW+50xZ4Wx70NAyxwqCZDOjJW68wvT0oQIhAJ23VsmjiyGF/sLNeLNqVI+R9F+NR/0x8P91NFqCFmv+"}]}},"1.0.28":{"name":"business-rules-engine","version":"1.0.28","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"latest","hashmap":"^1.1.0","underscore":"latest","axios":"latest"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.0.28","scripts":{},"_shasum":"35d68476613fe4ff3247a03b043a1c1e40ca5a57","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"35d68476613fe4ff3247a03b043a1c1e40ca5a57","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.0.28.tgz","integrity":"sha512-RAv5yYYFLc76PDWJZ+6x2yxfHt85ngfU7oOgaZD/fhvjmbhnZGs/QauWabKIdWD7KeZdRR6L0n+rUSvbUQtGqA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHH3Gl60Vuehi/vayCqV0Hkp9NS+SbR4TxxVgd+abBlUAiEAp5spjVJRBTI7MvrAJ1Of7gJ3gucPGAbMKzP+UZeMz6E="}]}},"1.0.29":{"name":"business-rules-engine","version":"1.0.29","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"latest","hashmap":"^1.1.0","underscore":"latest","axios":"latest"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.0.29","scripts":{},"_shasum":"de7a60929a49be68c5ea5e2eb8689d1418fd79be","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"de7a60929a49be68c5ea5e2eb8689d1418fd79be","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.0.29.tgz","integrity":"sha512-r8tjelnxCzr9QEIDmMaDOTuVfyY47xu4HPLwivFCjsbkZy+MXfVSlTmZlTI8n7UXj2BoJl2cSrwmyhwbhcyG7A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB597Uq8wbb9DZqDnrHLUz1XduQqqqwiBqLmrYVQNPwMAiAm6m0uykcHnGIH/N2w+NQqxUDopChFdblHEbT4keoGng=="}]}},"1.0.30":{"name":"business-rules-engine","version":"1.0.30","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"latest","hashmap":"^1.1.0","underscore":"latest","axios":"latest"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.0.30","scripts":{},"_shasum":"f7877f762f304df023402dd00d3a1d7dc95a11fc","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"f7877f762f304df023402dd00d3a1d7dc95a11fc","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.0.30.tgz","integrity":"sha512-usDn6TcNDM+C9nHNKaJSbmyiHhm/iJ0UL0mVPGc3zpUD20w7c+wfKRdf0zP8ZvWeaNc+9oQmKdjr233gc5mRXg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCEJS4rr4KjevWkvEoDS5GK9FJ6ro8r4YUVWIfcH/LZbwIhAKS8ADCoHTXwK0TlOdk5guV+eTrNdVR0oQwoZPbV3XLK"}]}},"1.0.31":{"name":"business-rules-engine","version":"1.0.31","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"latest","hashmap":"^1.1.0","underscore":"latest","axios":"latest"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.0.31","scripts":{},"_shasum":"d33e1f09bf1ce2286d4853fc35d73ac05ff8a031","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"d33e1f09bf1ce2286d4853fc35d73ac05ff8a031","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.0.31.tgz","integrity":"sha512-Im5xdehpy3QKimnIOHuYiHuOam7AscVgtxF8sbbzF/oSi5F6U6+W9Gh/5hTtUcL/uPNg73sThHXeNW/AIz9kag==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCskUkRYEP8BSjzVl0zeMrzTMqJjX2K1SFR9vnJnv+W0AIhAPRT1RGsvN9RTh1X0kk2sx/MFMqeXsN6HEFJzXmdAK2x"}]}},"1.0.32":{"name":"business-rules-engine","version":"1.0.32","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"latest","hashmap":"^1.1.0","underscore":"latest","axios":"latest"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.0.32","scripts":{},"_shasum":"b9f04d450f30e8a56dbe47bbd26a0bec4176ce0f","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"b9f04d450f30e8a56dbe47bbd26a0bec4176ce0f","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.0.32.tgz","integrity":"sha512-gxP2XYMdqYOZcyZxDUoE/hgp6OIZ+RsQMCqYA48hsjy8KqOQLcC8hxTyPQtYM5RnlgRUBDuWjZOjPVcHpe0SGw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDx79V/VeBfUCk8aJ2krSmNZGu1cRn5n86LWGWm5Nc7AQIgS0whISEXhf7JFsvMBOtKMCyp3GBUPgzZZ7RKz7oYt8k="}]}},"1.1.1":{"name":"business-rules-engine","version":"1.1.1","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"latest","hashmap":"^1.1.0","underscore":"latest","observe-js":"^0.1.0"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.1.1","scripts":{},"_shasum":"0d94de0db3ef0d863c146dab05f2905d316e8eea","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"0d94de0db3ef0d863c146dab05f2905d316e8eea","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.1.1.tgz","integrity":"sha512-vnWg4eK9UkHKGo0UfXc7fj8cgZpliT4iNe8rQaz0xJ17tNJAozSbmWVwuu8PdaVdJATaJvFpNSehnq5z/NBKxA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDWs2cGWfT1JVhMhwMtOVaddPa3pXRSiFymNZblsiu66gIgc/KB/ro2xljqJCQ0GSDenvgaTpq4zZswCn4pSquyG/Y="}]}},"1.2.3":{"name":"business-rules-engine","version":"1.2.3","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"1.0.1","hashmap":"^1.1.0","underscore":"^1.0.7"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.2.3","scripts":{},"_shasum":"6ff129a0c30bf623ebd23d79eb049b836b36b5dc","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"6ff129a0c30bf623ebd23d79eb049b836b36b5dc","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.2.3.tgz","integrity":"sha512-4Gdcv0kn/3dUXpvz2g4+J7fLVSH4Gmc1Euem8ZfwwVcOZyxHHXVjJ0Y81zMUFUEwKIlbvi8v7/SPBDeDCvYSMw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCgUBAo8eIivVp6n4ioz2YKelHj2dCvM/H6uK2u5dM89QIgJ8Ifw1yQLNltI8TNClHaME00LkmOsKn3tnwTY9LFR8w="}]}},"1.2.4":{"name":"business-rules-engine","version":"1.2.4","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"1.0.1","hashmap":"^1.1.0","underscore":"^1.0.7"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.2.4","scripts":{},"_shasum":"f38f2c2fa8eb523ada41247ec43c2504f872b17c","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"f38f2c2fa8eb523ada41247ec43c2504f872b17c","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.2.4.tgz","integrity":"sha512-aApacL65PiJ73aZKPmMNRPASMY1njaz7x4/mxZQ6kWnhD3P+q8f78jEqBQSRilk0WYq0m1jUQTZ+8wLASoDEJw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDQ+Vbijs4hhS2+HgIZeREyTuPJzZwihcdSPJEQCzQL/AiB+D/DlAwQLXojd+z9SYomV4rYobxNVQcHoBTEdhV/YuA=="}]}},"1.2.5":{"name":"business-rules-engine","version":"1.2.5","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"1.0.1","hashmap":"^1.1.0","underscore":"^1.0.7"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.2.5","scripts":{},"_shasum":"cfddd9ce589a809dd4510f8f555025398325be53","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"cfddd9ce589a809dd4510f8f555025398325be53","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.2.5.tgz","integrity":"sha512-sTWfNMGAVT1+wkaa2ivXsaZBaW62xZ9xjyF9bC1QJBVGpIHW5MOIIkAJqfucwGrDu0FFZifc4OPkNa78JF/aog==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD5sVD4ZoW2E/6mciVT6UYf7W2BxA/NvRiLJN9J7GAv1wIgOg6bDIQXgf9+1G7Dc7Wm6u+hWAd3us+78109RYKkcjo="}]}},"1.2.7":{"name":"business-rules-engine","version":"1.2.7","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"Q":"1.0.1","axios":"^0.3.1","hashmap":"^1.1.0","moment":"2.5.0","underscore":"^1.0.6","underscore.string":"^2.3.3"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1","sinon":"^1.12.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.2.7","scripts":{},"_shasum":"0f5401514bd1285dd562457bdc8c90526641f66f","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"0f5401514bd1285dd562457bdc8c90526641f66f","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.2.7.tgz","integrity":"sha512-gGfHug7m3FWN1Wm496FdgSKTxNSNJAVW9adqykrhvuniN8MH5mpwxyIjuIpeKeu9sJ9fRK+mazYeeXCvKWXMGA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpZ8MZymw75O66Q7zNYmSlvB1W0+Hv3jBgkf4QRuZgOQIhAPTsEiZQUVWGOMj3QXFUq1nqYdOIw1QMjUZbiZVPBaG+"}]}},"1.2.8":{"name":"business-rules-engine","version":"1.2.8","description":"business rules engine","main":"./commonjs/Validation","repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"keywords":["business rules","validation","form"],"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"dependencies":{"q":"1.0.1","axios":"^0.3.1","hashmap":"^1.1.0","moment":"2.5.0","underscore":"^1.0.6","underscore.string":"^2.3.3"},"devDependencies":{"expect.js":"~0.2.0","grunt":"^0.4.5","grunt-cli":"~0.1.9","grunt-complexity":"~0.1.3","grunt-contrib-copy":"^0.5.0","grunt-contrib-jshint":"~0.6.4","grunt-contrib-watch":"~0.5.3","grunt-docular":"^0.1.2","grunt-mocha-cli":"~1.1.0","grunt-ngdocs":"^0.2.2","grunt-typedoc":"^0.1.1","sinon":"^1.12.1"},"homepage":"https://github.com/rsamec/business-rules-engine","_id":"business-rules-engine@1.2.8","scripts":{},"_shasum":"498b4a697db7ff69a65e1a68d30fffbf9a5f0512","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"rsamec","email":"roman.samec2@gmail.com"},"maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"dist":{"shasum":"498b4a697db7ff69a65e1a68d30fffbf9a5f0512","tarball":"https://registry.npmjs.org/business-rules-engine/-/business-rules-engine-1.2.8.tgz","integrity":"sha512-N8tQWDdPw77KYzsyOnuHkrSR13GTLBDDsWVvelCvTPPYoOe8ho1MvO5lHyn/umlPPd6p8KL0S04Nkq7gba3xPA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBIYwGB4pw+9p3AONfUg9MAt88Wc4Q4qXsU5yJT69fagIgBVvYPppMndWZH6h52FOZzDYNtuJlIV5pKlRcxbRQIjE="}]}}},"readme":"# Business rules engine\r\n\r\n![logo](https://github.com/rsamec/form/blob/master/form_logo.jpg)\r\n\r\nBusiness rules engine is a lightweight JavaScript library for easy business rules definition of the product, the contract, the form etc.\r\n\r\n## Key features\r\nThe main benefit is that business rules engine is not tight to HTML DOM or any other UI framework.\r\nThis validation engine is **UI agnostic** and that is why it can be used as **an independent representation of business rules** of a product, contract, etc.\r\nIt can be easily reused by different types of applications, libraries.\r\n\r\n+   It enables to decorate custom objects and its properties with validation rules.\r\n+   It supports declarative and imperative validation rules definition\r\n    +  declarative [JSON schema](http://json-schema.org/) with validation keywords [JSON Schema Validation](http://json-schema.org/latest/json-schema-validation.html)\r\n    +  declarative raw JSON data  annotated with meta data - using keywords from [JQuery validation plugin](http://jqueryvalidation.org/)\r\n    +  imperative - [validation API](http://rsamec.github.io/business-rules-engine/docs/modules/validation-validation.validation.html)\r\n+   It supports composition of validation rules, that enables to validate custom object with nested structures.\r\n+   It is ease to create your own custom validators.\r\n+   It supports asynchronous validation rules (uses promises).\r\n+   It supports shared validation rules.\r\n+   It supports assigning validation rules to collection-based structures - arrays and lists.\r\n+   It supports notification of errors changed via ErrorChanged dispatch event.\r\n+   It supports dot syntax to access to nested rules.\r\n+   It supports localization of error messages with TranslateArgs.\r\n+   It deploys as AMD, CommonJS or plain script module pattern.\r\n+   It offers basic build-in constrains validators. See list [basic build-in constraints](http://rsamec.github.io/business-rules-engine/docs/modules/validation-basicvalidators.validators.html)\r\n+   Other custom validators can be find in extensible repository of custom validators (work in progress).\r\n\r\n## Installation\r\n\r\nThis module is installed:\r\n\r\n+   Node.js\r\n   +    npm install business-rules-engine\r\n   +    use require('business-rules-engine');\r\n+   Bower\r\n   +   bower install business-rules-engine\r\n   +   Require.js - require([\"business-rules-engine/amd/Validation\"], ...\r\n   +   Script tag -> add reference to business-rules-engine/module/Validation.js file.\r\n\r\n## Example Usage\r\n\r\nThere are 3 ways how to define validation rules\r\n\r\n+  declarative [JSON schema](http://json-schema.org/) with validation keywords [JSON Schema Validation](http://json-schema.org/latest/json-schema-validation.html)\r\n+  declarative raw JSON data  annotated with meta data - using keywords from [JQuery validation plugin](http://jqueryvalidation.org/)\r\n+  imperative - [validation API](http://rsamec.github.io/business-rules-engine/docs/modules/validation-validation.validation.html)\r\n\r\n\r\n### JSON Schema Validation\r\n\r\n``` js\r\n    {\r\n        FirstName: {\r\n            type: \"string\",\r\n            title: \"First name\",\r\n            required: \"true\",\r\n            maxLength: 15\r\n        },\r\n        LastName: {\r\n            type: \"string\",\r\n            \"title\": \"Last name\",\r\n            required: true,\r\n            maxLength: 15\r\n        },\r\n        Contacts: {\r\n            type: \"array\",\r\n            maxItems: 4,\r\n            minItems: 2,\r\n            items: {\r\n                type: \"object\",\r\n                properties: {\r\n                    Email: {\r\n                        type: \"string\",\r\n                        title: \"Email\",\r\n                        default: '',\r\n                        required: true,\r\n                        maxLength: 100,\r\n                        pattern: \"S*@S*\" },\r\n                    Mobile: {\r\n                        type: \"object\",\r\n                        properties: {\r\n                            CountryCode: {\r\n                                type: \"string\",\r\n                                title: \"Country code\",\r\n                                required: true,\r\n                                maxLength: 3,\r\n                                enum: [\"FRA\", \"CZE\", \"USA\", \"GER\"]\r\n                            },\r\n                            Number: {\r\n                                type: \"string\",\r\n                                title: \"Phone number\",\r\n                                required: true,\r\n                                maxLength: 9\r\n                            }\r\n                        }\r\n                    },\r\n                    FixedLine: {\r\n                        type: \"object\",\r\n                        properties: {\r\n                            CountryCode: {\r\n                                type: \"string\",\r\n                                title: \"Country code\",\r\n                                required: true,\r\n                                maxLength: 3,\r\n                                enum: [\"FRA\", \"CZE\", \"USA\", \"GER\"]\r\n                            },\r\n                            Number: {\r\n                                type: \"string\",\r\n                                title: \"Phone number\",\r\n                                required: true,\r\n                                maxLength: 9\r\n                            }\r\n                        }\r\n                    }\r\n                }\r\n            }\r\n        }\r\n    }\r\n```\r\n### JSON data annotated with meta data \r\n\r\n``` js\r\n// define data structure + validation rules meta data\r\n  {\r\n        FirstName: {\r\n            rules: {required: true, maxlength: 15}},\r\n        LastName: {\r\n            rules: {required: true, maxlength: 15}},\r\n        Contacts: [\r\n            {\r\n                Email: {\r\n                    rules: {\r\n                        required: true,\r\n                        maxlength: 100,\r\n                        email: true\r\n                    }\r\n                },\r\n                Mobile: {\r\n                    CountryCode: {\r\n                        rules: {required: true, maxlength: 3, enum: [\"FRA\", \"CZE\", \"USA\", \"GER\"] }\r\n                    },\r\n                    Number: {\r\n                        rules: {required: true, maxlength: 9 }\r\n                    }\r\n                },\r\n                FixedLine: {\r\n                    CountryCode: {\r\n                        rules: {required: true, maxlength: 3, enum: [\"FRA\", \"CZE\", \"USA\", \"GER\"] }\r\n                    },\r\n                    Number: {\r\n                        rules: {required: true, maxlength: 9 }\r\n                    }\r\n                }\r\n            },{maxItems: 4, minItems: 2}\r\n        ]\r\n    }\r\n```\r\n\r\n### Imperative definition - using API\r\n\r\nTo define business rules for some object, you have to create abstract validator.\r\n``` js\r\n          //create new validator for object with structure<IPerson>\r\n          var personValidator = new Validation.AbstractValidator();\r\n\r\n          //basic validators\r\n          var required = new Validators.RequiredValidator();\r\n          var maxLength = new Validators.MaxLengthValidator(15);\r\n\r\n          //assigned validators to property\r\n          personValidator.RuleFor(\"FirstName\", required);\r\n          personValidator.RuleFor(\"FirstName\",maxLength);\r\n\r\n          //assigned validators to property\r\n          personValidator.RuleFor(\"LastName\", required);\r\n          personValidator.RuleFor(\"LastName\",maxLength);\r\n          \r\n          ...\r\n\r\n```\r\n\r\nTo use business rules and execute them on particular data\r\n```js\r\n          //create test data\r\n          var data = {\r\n                Person1:\r\n                {\r\n                    FirstName:'John',\r\n                    LastName: 'Smith'\r\n                },\r\n                Person2:{}\r\n\r\n          }\r\n\r\n          //create concrete rule\r\n          var person1Validator = personValidator.CreateRule(\"Person 1\");\r\n\r\n          //execute validation\r\n          var result = person1Validator.Validate(this.Data.Person1);\r\n\r\n          //verify results\r\n          if (result.HasErrors){\r\n              console.log(result.ErrorMessage);\r\n          }\r\n          //---------\r\n          //--outputs\r\n          //---------\r\n\r\n          //create concrete rule\r\n          var person2Validator = personValidator.CreateRule(\"Person 2\");\r\n\r\n          //execute validation\r\n          var result = person2Validator.Validate(this.Data.Person1);\r\n\r\n           //verify results\r\n          if (result.HasErrors){\r\n              console.log(result.ErrorMessage);\r\n          }\r\n\r\n          //---------\r\n          //--outputs\r\n          //---------\r\n          // FirstName: Field is required.\r\n          // LastName: Field is required.\r\n\r\n```\r\n\r\n## Additional information\r\n\r\n+ [Business rules engine - Tutorial] (https://github.com/rsamec/business-rules-engine/wiki)\r\n+ [Business rules engine - API] (http://rsamec.github.io/business-rules-engine/docs/globals.html)\r\n+ [Business rules repository - sources] (https://github.com/rsamec/business-rules)\r\n+ [Business rules repository - API] (http://rsamec.github.io/business-rules/docs/globals.html)\r\n+ [NodeJS Example] (https://github.com/rsamec/node-form-app)\r\n+ [AngularJS Example] (https://github.com/rsamec/angular-form-app)\r\n+ [AngularJS Demo - Forms app] (http://nodejs-formvalidation.rhcloud.com/)\r\n   + [Vacation Request form] (http://nodejs-formvalidation.rhcloud.com/#/vacationApproval/new)\r\n   + [Hobbies form] (http://nodejs-formvalidation.rhcloud.com/#/hobbies/new)\r\n\r\n\r\n## Source code\r\n\r\nAll code is written in typescript.\r\n\r\n``` bash\r\nnpm install -g typescript\r\n```\r\n\r\nTo compile to javascript.\r\n\r\n``` bash\r\ntsc src/validation/Validation.ts --target ES5 --module commonjs\r\n```\r\n\r\n## Tests\r\n\r\n``` bash\r\nnpm install -g mocha\r\nnpm install -g expect.js\r\n```\r\n\r\nTo run tests\r\n\r\n``` bash\r\nmocha test\r\n```\r\n\r\n\r\n## Grunt automatization\r\n\r\n### Basic steps\r\n\r\n+ git clone https://github.com/rsamec/business-rules-engine\r\n+ npm install - get npm packages\r\n+ tsd update - get external typings definition\r\n+ grunt typings - create node-form typings definition - used by custom validators\r\n\r\nTo build all sources to dist folder (generates AMD, CommonJS and module pattern)\r\n``` bash\r\n$ grunt dist\r\n```\r\n\r\nTo run code analyze - complexity + jshint.\r\n``` bash\r\n$ grunt ci\r\n```\r\n\r\nTo generate api documentation.\r\n``` bash\r\n$ grunt document\r\n```\r\n\r\nTo generate typings -> typescript definition files.\r\n``` bash\r\n$ grunt typings\r\n```\r\n\r\nTo run tests\r\n``` bash\r\n$ grunt test\r\n```\r\n\r\n## Roadmap\r\n\r\n+ Add validation groups to shared validation rules\r\n+ Separate ValidationResult from execution of validation rules\r\n+ Add depedency injection for managing dependencies among components\r\n+ Support for meta data definitions\r\n\r\n\r\n","maintainers":[{"name":"rsamec","email":"roman.samec2@gmail.com"}],"time":{"modified":"2022-06-13T05:19:50.581Z","created":"2014-08-20T07:11:00.508Z","1.0.20":"2014-08-20T07:11:00.508Z","1.0.21":"2014-08-20T12:11:08.993Z","1.0.23":"2014-08-22T20:17:38.575Z","1.0.24":"2014-08-22T20:28:52.970Z","1.0.25":"2014-08-26T18:09:30.751Z","1.0.26":"2014-09-15T17:52:02.997Z","1.0.27":"2014-09-20T17:24:45.084Z","1.0.28":"2014-09-20T17:26:40.740Z","1.0.29":"2014-09-20T17:31:13.402Z","1.0.30":"2014-09-20T17:41:05.833Z","1.0.31":"2014-09-20T18:10:50.443Z","1.0.32":"2014-09-21T12:03:30.212Z","1.1.1":"2014-10-07T18:09:23.911Z","1.2.3":"2014-11-05T20:05:58.955Z","1.2.4":"2014-11-19T20:50:14.709Z","1.2.5":"2014-12-05T09:22:42.916Z","1.2.7":"2015-02-22T19:06:22.310Z","1.2.8":"2015-06-15T08:11:28.602Z"},"homepage":"https://github.com/rsamec/business-rules-engine","keywords":["business rules","validation","form"],"repository":{"type":"git","url":"https://github.com/rsamec/business-rules-engine"},"author":{"name":"rsamec","email":"roman.samec2@gmail.com"},"bugs":{"url":"https://github.com/rsamec/business-rules-engine/issues"},"license":"MIT","readmeFilename":"README.md","users":{"rdhingra":true,"sigkill(9)":true,"amandeepbal":true}}