rulesenginejs
Advanced tools
Comparing version 1.18.0 to 1.19.0
@@ -1,1 +0,1 @@ | ||
!function(e,t){if("function"==typeof define&&define.amd)define(t);else{var n=t();"object"!=typeof module?e[n.name]=n:module.exports=n}}(this,function(){var e;try{"undefined"==typeof $&&require("jsdom-no-contextify").env("",function(t,n){t?console.error(t):($=require("jquery")(n),e=$)})}catch(t){e=!function(e,t){if("function"==typeof define&&define.amd)define(t);else{var n=t();"object"!=typeof module?e[n.name]=n:module.exports=n}}(this,function(){var e="done fail isResolved isRejected promise then always pipe".split(" "),t=[].slice,n={_Deferred:function(){var e,t,n,r=[],i={done:function(){if(!n){var t,o,s,u,a,l=arguments;for(e&&(a=e,e=0),t=0,o=l.length;t<o;t++)u=typeof(s=l[t]),Array.isArray(s)&&(u="array"),"array"===u?i.done.apply(i,s):"function"===u&&r.push(s);a&&i.resolveWith(a[0],a[1])}return this},resolveWith:function(i,o){if(!n&&!e&&!t){o=o||[],t=1;try{for(;r[0];)r.shift().apply(i,o)}finally{e=[i,o],t=0}}return this},resolve:function(){return i.resolveWith(this,arguments),this},isResolved:function(){return!(!t&&!e)},cancel:function(){return n=1,r=[],this}};return i},Deferred:function(t){var r,i=n._Deferred(),o=n._Deferred(),s={then:function(e,t){return i.done(e).fail(t),this},always:function(){return i.done.apply(i,arguments).fail.apply(this,arguments)},fail:o.done,rejectWith:o.resolveWith,reject:o.resolve,isRejected:o.isResolved,pipe:function(e,t){return n.Deferred(function(n){var r={done:[e,"resolve"],fail:[t,"reject"]};for(var o in r)!function(e,t){var r,o=t[0],s=t[1];"function"==typeof o?i[e](function(){(r=o.apply(this,arguments))&&"function"==typeof r.promise?r.promise().then(n.resolve,n.reject):n[s](r)}):i[e](n[s])}(o,r[o])}).promise()},promise:function(t){if(null==t){if(r)return r;r=t={}}for(var n=e.length;n--;)t[e[n]]=i[e[n]];return t}};for(var u in s)i[u]=s[u];return i.done(o.cancel).fail(i.cancel),delete i.cancel,t&&t.call(i,i),i},when:function(e){var r=arguments,i=0,o=r.length,s=o,u=o<=1&&e&&"function"==typeof e.promise?e:n.Deferred();if(o>1){for(;i<o;i++)r[i]&&"function"==typeof r[i].promise?r[i].promise().then(function(e){return function(n){r[e]=arguments.length>1?t.call(arguments,0):n,--s||u.resolveWith(u,t.call(r,0))}}(i),u.reject):--s;s||u.resolveWith(u,r)}else u!==e&&u.resolveWith(u,o?[e]:[]);return u.promise()}};return n})}var t=function(t){if(this.facts={},this.rules=[],this.rulesMap={},this.evaluatedRules={},this.prevValues={},this.prevToggle={},this.events={},this.queue=[],this.asyncTimeout=3e3,this.engineTimeout=1e4,this.isEvaluatingFlg=!1,this.isRunningFlg=!1,void 0!==t)e=t;else if(void 0===e.Deferred)throw new Error("No jQuery.Deferred or shim found.")};return t.prototype.constructor=t,t.prototype._log=function(e,t){"undefined"!=typeof console&&"function"==typeof console[e]&&console[e](t)},t.prototype.updateFacts=function(t){if(this.isRunningFlg)return this._enqueue(this.updateFacts,this,[t]);this.isRunningFlg=!0;var n=this,r=e.Deferred();return"object"==typeof t?(this.facts=t,this._run().always(function(){r.resolve(),n._dequeue()}),r):void 0},t.prototype._deepCopy=function(e){return JSON.parse(JSON.stringify(e))},t.prototype.getFacts=function(e){var t=this._deepCopy(this.facts);if(void 0===e||"string"!=typeof e)return t;for(var n=e.split("."),r=0;r<n.length;r++)if(void 0===(t=t[n[r]]))return;return t},t.prototype.addRule=function(t,n,r){if("string"==typeof t){var i,o=this;if(i="function"!=typeof n?function(){var t=e.Deferred();return setTimeout(t.resolve,0),t}:void 0===(n(this.facts)||{}).then?function(t){return function(n){var r=e.Deferred();try{return t(n)?setTimeout(r.resolve,0):setTimeout(r.reject,0),r}catch(e){return o._log("error",e),setTimeout(function(){"pending"===r.state()&&r.reject()},0),r}}}(n):function(r){var i=e.Deferred();try{return n(r).done(function(){i.resolve()}).fail(function(){i.reject()}),setTimeout(function(){"pending"===i.state()&&(i.reject(),o._log("error","Timed out for evaluation of function: "+t))},o.asyncTimeout),i}catch(e){return o._log("error",e),setTimeout(function(){"pending"===i.state()&&i.reject()},0),i}},(Array.isArray(r)||"object"!=typeof r)&&(r={}),void 0===r.priority&&(r.priority=9),void 0===r.toggle&&(r.toggle=!0),Array.isArray(r.events)||(void 0!==r.events?r.events=[r.events]:r.events=[]),void 0===this.rulesMap[t]&&this.rules.push(t),Array.isArray(r.events))for(var s=0;s<r.events.length;s++)"string"==typeof r.events[s]&&this.addEvent(r.events[s]);else"string"==typeof r.events&&this.addEvent(r.events);void 0===this.events[t]&&(this.addEvent(t),Object.defineProperty(this.events[t],"_auto_generated_",{value:!0})),r.events.push(t),this.rulesMap[t]={name:t,events:r.events,test:i,priority:r.priority,conditions:r.conditions,toggle:r.toggle},this.prevToggle[t]=new Date}},t.prototype.addRules=function(e){if(!Array.isArray(e))return!1;for(var t=0;t<e.length;t++)Array.isArray(e[t])&&this.addRule.apply(this,e[t])},t.prototype.removeRule=function(e){for(var t=0;t<this.rules.length;t++)this.rules[t]===e&&this.rules.splice(t,1);delete this.rulesMap[e],this.events[e]&&!0===this.events[e]._auto_generated_&&delete this.events[e]},t.prototype.addEvent=function(e){this.events[e]={bound:{}}},t.prototype.addEvents=function(e){if(!Array.isArray(e))return!1;for(var t=0;t<e.length;t++)Array.isArray(e[t])?this.addEvent.apply(this,e[t]):this.addEvent.call(this,e[t])},t.prototype.removeEvent=function(e){delete this.events[e]},t.prototype.emit=function(e,t){if(t)return void 0!==this.events[e].bound._evaluation_event&&(this.events[e].bound._evaluation_event(this.facts),!0);for(var n in this.events[e].bound)this.events[e].bound[n](this.facts);return!1},t.prototype.on=function(e,t,n){this.events[e].bound[t]=n},t.prototype.off=function(e,t){void 0!==t?delete this.events[e].bound[t]:this.events[e].bound={}},t.prototype.run=function(){if(this.isRunningFlg)return this._enqueue(this.run,this,[]);var t=e.Deferred(),n=this;return this.isRunningFlg=!0,this._run().always(function(){t.resolve(),n._dequeue()}),t},t.prototype._run=function(){var t=!1,n=this;n.prevValues={};for(var r in n.evaluatedRules)n.prevValues[r]=n.evaluatedRules[r];n.evaluatedRules={},n.rules.sort(function(e,t){return n.rulesMap[e].priority>n.rulesMap[t].priority?1:n.rulesMap[e].priority<n.rulesMap[t].priority?-1:n.prevToggle[e]<n.prevToggle[t]?1:n.prevToggle[e]>n.prevToggle[t]?-1:0});var i=function(r){var s=e.Deferred();if(t)return s.resolve();if(void 0===r)return s.resolve();var u=[];if(void 0!==r.all)r.all.forEach(function(e){u.push(i(e))}),e.when.apply(e,u).done(function(){s.resolve()}).fail(function(){s.reject()});else if(void 0!==r.any)r.any.forEach(function(t){u.push(function(){var n=e.Deferred();return i(t).done(function(){n.reject()}).fail(function(){n.resolve()}),n}())}),e.when.apply(e,u).done(function(){s.reject()}).fail(function(){s.resolve()});else{var a=r,l=!1;"string"!=typeof a?s.reject():("!"===a.charAt(0)&&(l=!0,a=a.slice(1)),void 0!==n.rulesMap[a]&&!1===l?o(n.rulesMap[a]).done(function(){s.resolve()}).fail(function(){s.reject()}):void 0!==n.rulesMap[a]&&!0===l?o(n.rulesMap[a]).done(function(){s.reject()}).fail(function(){s.resolve()}):s.reject())}return s},o=function(r){var o=e.Deferred();if(t)return o.resolve();if(void 0===r)return o.resolve();if(!0===n.evaluatedRules[r.name])return o.resolve();if(!1===n.evaluatedRules[r.name])return o.reject();if(void 0!==n.evaluatedRules[r.name]&&"function"==typeof n.evaluatedRules[r.name].always)return n.evaluatedRules[r.name].done(function(){o.resolve()}).fail(function(){o.reject()}),o;n.evaluatedRules[r.name]=o;var s=function(e,n,r){e.test(n.facts).done(function(){if(n.evaluatedRules[e.name]=!0,!e.toggle||!0!==n.prevValues[e.name]||void 0!==((n.events[e.name]||{}).bound||{})._evaluation_event){n.prevToggle[e.name]=new Date;for(var i=0;i<e.events.length;i++)!0===n.emit(e.events[i],n.isEvaluatingFlg)&&(t=!0)}r.resolve()}).fail(function(){n.evaluatedRules[e.name]=!1,void 0!==((n.events[e.name]||{}).bound||{})._evaluation_event&&(t=!0),r.reject()})};return void 0!==r.conditions?i(r.conditions).done(function(){s(r,n,o)}).fail(function(){n.evaluatedRules[r.name]=!1,void 0!==((n.events[r.name]||{}).bound||{})._evaluation_event&&(t=!0),o.reject()}):s(r,n,o),o};if(0===Object.keys(n.rulesMap).length)return e.Deferred().resolve();var s=e.Deferred(),u=function(e,t){t(e).always(function(){e<n.rules.length?u(e+1,t):s.resolve()})};return u(0,function(e){return o(n.rulesMap[n.rules[e]])}),setTimeout(function(){"pending"===s.state()&&(n._log("error","Rules engine timed out."),s.reject())},this.engineTimeout),s},t.prototype.evaluate=function(t,n){if(this.isRunningFlg)return this._enqueue(this.evaluate,this,[t,n]);this.isRunningFlg=!0,this.isEvaluatingFlg=!0;var r=e.Deferred(),i=this.facts,o={};for(var s in this.evaluatedRules)o[s]=this.evaluatedRules[s];var u={};for(var s in this.prevValues)u[s]=this.prevValues[s];var a={};for(var s in this.prevToggle)a[s]=this.prevToggle[s];var l,f=this;return void 0!==n&&(this.facts=n),this.rulesMap[t]&&!0===this.events[t]._auto_generated_&&(l=this.rulesMap[t].priority,this.rulesMap[t].priority=-1/0),this.evaluatedRules={},this.prevValues={},this.on(t,"_evaluation_event",function(e){r.resolve()}),this._run("evaluate").always(function(){f.off(t,"_evaluation_event"),f.facts=i,f.evaluatedRules=o,f.prevValues=u,f.prevToggle=a,void 0!==l&&(f.rulesMap[t].priority=l),f.isEvaluatingFlg=!1,"pending"===r.state()&&r.reject(),f._dequeue()}),r},t.prototype._enqueue=function(t,n,r){var i=e.Deferred();return this.queue.push([t,n,r,i]),i},t.prototype._dequeue=function(){if(this.isRunningFlg=!1,0!==this.queue.length){var e=this.queue.shift();e[0].apply(e[1],e[2]).done(function(){e[3].resolve()}).fail(function(){e[3].reject()})}},t}); | ||
!function(e,t){if("function"==typeof define&&define.amd)define(t);else{var n=t();"object"!=typeof module?e[n.name]=n:module.exports=n}}(this,function(){var e;try{"undefined"==typeof $&&require("jsdom-no-contextify").env("",function(t,n){t?console.error(t):($=require("jquery")(n),e=$)})}catch(t){e=!function(e,t){if("function"==typeof define&&define.amd)define(t);else{var n=t();"object"!=typeof module?e[n.name]=n:module.exports=n}}(this,function(){var e="done fail isResolved isRejected promise then always pipe".split(" "),t=[].slice,n={_Deferred:function(){var e,t,n,r=[],i={done:function(){if(!n){var t,o,s,u,a,l=arguments;for(e&&(a=e,e=0),t=0,o=l.length;t<o;t++)u=typeof(s=l[t]),Array.isArray(s)&&(u="array"),"array"===u?i.done.apply(i,s):"function"===u&&r.push(s);a&&i.resolveWith(a[0],a[1])}return this},resolveWith:function(i,o){if(!n&&!e&&!t){o=o||[],t=1;try{for(;r[0];)r.shift().apply(i,o)}finally{e=[i,o],t=0}}return this},resolve:function(){return i.resolveWith(this,arguments),this},isResolved:function(){return!(!t&&!e)},cancel:function(){return n=1,r=[],this}};return i},Deferred:function(t){var r,i=n._Deferred(),o=n._Deferred(),s={then:function(e,t){return i.done(e).fail(t),this},always:function(){return i.done.apply(i,arguments).fail.apply(this,arguments)},fail:o.done,rejectWith:o.resolveWith,reject:o.resolve,isRejected:o.isResolved,pipe:function(e,t){return n.Deferred(function(n){var r={done:[e,"resolve"],fail:[t,"reject"]};for(var o in r)!function(e,t){var r,o=t[0],s=t[1];"function"==typeof o?i[e](function(){(r=o.apply(this,arguments))&&"function"==typeof r.promise?r.promise().then(n.resolve,n.reject):n[s](r)}):i[e](n[s])}(o,r[o])}).promise()},promise:function(t){if(null==t){if(r)return r;r=t={}}for(var n=e.length;n--;)t[e[n]]=i[e[n]];return t}};for(var u in s)i[u]=s[u];return i.done(o.cancel).fail(i.cancel),delete i.cancel,t&&t.call(i,i),i},when:function(e){var r=arguments,i=0,o=r.length,s=o,u=o<=1&&e&&"function"==typeof e.promise?e:n.Deferred();if(o>1){for(;i<o;i++)r[i]&&"function"==typeof r[i].promise?r[i].promise().then(function(e){return function(n){r[e]=arguments.length>1?t.call(arguments,0):n,--s||u.resolveWith(u,t.call(r,0))}}(i),u.reject):--s;s||u.resolveWith(u,r)}else u!==e&&u.resolveWith(u,o?[e]:[]);return u.promise()}};return n})}var t=function(t){if(this.facts={},this.rules=[],this.rulesMap={},this.evaluatedRules={},this.prevValues={},this.prevToggle={},this.events={},this.queue=[],this.asyncTimeout=3e3,this.engineTimeout=1e4,this.isEvaluatingFlg=!1,this.isRunningFlg=!1,void 0!==t)e=t;else if(void 0===e.Deferred)throw new Error("No jQuery.Deferred or shim found.")};return t.prototype.constructor=t,t.prototype._log=function(e,t){"undefined"!=typeof console&&"function"==typeof console[e]&&console[e](t)},t.prototype.updateFacts=function(t){if(this.isRunningFlg)return this._enqueue(this.updateFacts,this,[t]);this.isRunningFlg=!0;var n=this,r=e.Deferred();return"object"==typeof t?(this.facts=t,this._run().always(function(){r.resolve(),n._dequeue()}),r):void 0},t.prototype._deepCopy=function(e){return JSON.parse(JSON.stringify(e))},t.prototype.getFacts=function(e){var t=this._deepCopy(this.facts);if(void 0===e||"string"!=typeof e)return t;for(var n=e.split("."),r=0;r<n.length;r++)if(void 0===(t=t[n[r]]))return;return t},t.prototype.addRule=function(t,n,r){if("string"==typeof t){var i,o=this;if(i="function"!=typeof n?function(){var t=e.Deferred();return setTimeout(t.resolve,0),t}:void 0===(n(this.facts)||{}).then?function(t){return function(n){var r=e.Deferred();try{return t(n)?setTimeout(r.resolve,0):setTimeout(r.reject,0),r}catch(e){return o._log("error",e),setTimeout(function(){"pending"===r.state()&&r.reject()},0),r}}}(n):function(r){var i=e.Deferred();try{return n(r).done(function(){i.resolve()}).fail(function(){i.reject()}),setTimeout(function(){"pending"===i.state()&&(i.reject(),o._log("error","Timed out for evaluation of function: "+t))},o.asyncTimeout),i}catch(e){return o._log("error",e),setTimeout(function(){"pending"===i.state()&&i.reject()},0),i}},(Array.isArray(r)||"object"!=typeof r)&&(r={}),void 0===r.priority&&(r.priority=9),void 0===r.toggle&&(r.toggle=!0),Array.isArray(r.events)||(void 0!==r.events?r.events=[r.events]:r.events=[]),void 0===this.rulesMap[t]&&this.rules.push(t),Array.isArray(r.events))for(var s=0;s<r.events.length;s++)"string"==typeof r.events[s]&&this.addEvent(r.events[s]);else"string"==typeof r.events&&this.addEvent(r.events);void 0===this.events[t]&&(this.addEvent(t),Object.defineProperty(this.events[t],"_auto_generated_",{value:!0})),r.events.push(t),this.rulesMap[t]={name:t,events:r.events,test:i,priority:r.priority,conditions:r.conditions,toggle:r.toggle},this.prevToggle[t]=new Date}},t.prototype.addRules=function(e){if(!Array.isArray(e))return!1;for(var t=0;t<e.length;t++)Array.isArray(e[t])&&this.addRule.apply(this,e[t])},t.prototype.removeRule=function(e){for(var t=0;t<this.rules.length;t++)this.rules[t]===e&&this.rules.splice(t,1);delete this.rulesMap[e],this.events[e]&&!0===this.events[e]._auto_generated_&&delete this.events[e]},t.prototype.addEvent=function(e){this.events[e]={bound:{}}},t.prototype.addEvents=function(e){if(!Array.isArray(e))return!1;for(var t=0;t<e.length;t++)Array.isArray(e[t])?this.addEvent.apply(this,e[t]):this.addEvent.call(this,e[t])},t.prototype.removeEvent=function(e){delete this.events[e]},t.prototype.emit=function(e,t){if(t)return void 0!==this.events[e].bound._evaluation_event&&(this.events[e].bound._evaluation_event(this.facts),!0);for(var n in this.events[e].bound)this.events[e].bound[n](this.facts);return!1},t.prototype.on=function(e,t,n){this.events[e].bound[t]=n},t.prototype.off=function(e,t){void 0!==t?delete this.events[e].bound[t]:this.events[e].bound={}},t.prototype.run=function(){if(this.isRunningFlg)return this._enqueue(this.run,this,[]);var t=e.Deferred(),n=this;return this.isRunningFlg=!0,this._run().always(function(){t.resolve(),n._dequeue()}),t},t.prototype._run=function(){var t=!1,n=this;n.prevValues={};for(var r in n.evaluatedRules)n.prevValues[r]=n.evaluatedRules[r];n.evaluatedRules={},n.rules.sort(function(e,t){return n.rulesMap[e].priority>n.rulesMap[t].priority?1:n.rulesMap[e].priority<n.rulesMap[t].priority?-1:n.prevToggle[e]<n.prevToggle[t]?1:n.prevToggle[e]>n.prevToggle[t]?-1:0});var i=function(r){var s=e.Deferred();if(t)return s.resolve();if(void 0===r)return s.resolve();var u=[];if(void 0!==r.all)r.all.forEach(function(e){u.push(i(e))}),e.when.apply(e,u).done(function(){s.resolve()}).fail(function(){s.reject()});else if(void 0!==r.any)r.any.forEach(function(t){u.push(function(){var n=e.Deferred();return i(t).done(function(){n.reject()}).fail(function(){n.resolve()}),n}())}),e.when.apply(e,u).done(function(){s.reject()}).fail(function(){s.resolve()});else{var a=r,l=!1;"string"!=typeof a?s.reject():("!"===a.charAt(0)&&(l=!0,a=a.slice(1)),void 0!==n.rulesMap[a]&&!1===l?o(n.rulesMap[a]).done(function(){s.resolve()}).fail(function(){s.reject()}):void 0!==n.rulesMap[a]&&!0===l?o(n.rulesMap[a]).done(function(){s.reject()}).fail(function(){s.resolve()}):s.reject())}return s},o=function(r){var o=e.Deferred();if(t)return o.resolve();if(void 0===r)return o.resolve();if(!0===n.evaluatedRules[r.name])return o.resolve();if(!1===n.evaluatedRules[r.name])return o.reject();if(void 0!==n.evaluatedRules[r.name]&&"function"==typeof n.evaluatedRules[r.name].always)return n.evaluatedRules[r.name].done(function(){o.resolve()}).fail(function(){o.reject()}),o;n.evaluatedRules[r.name]=o;var s=function(e,n,r){e.test(n.facts).done(function(){if(n.evaluatedRules[e.name]=!0,!e.toggle||!0!==n.prevValues[e.name]||void 0!==((n.events[e.name]||{}).bound||{})._evaluation_event){e.toggle&&(n.prevToggle[e.name]=new Date);for(var i=0;i<e.events.length;i++)!0===n.emit(e.events[i],n.isEvaluatingFlg)&&(t=!0)}r.resolve()}).fail(function(){n.evaluatedRules[e.name]=!1,void 0!==((n.events[e.name]||{}).bound||{})._evaluation_event&&(t=!0),r.reject()})};return void 0!==r.conditions?i(r.conditions).done(function(){s(r,n,o)}).fail(function(){n.evaluatedRules[r.name]=!1,void 0!==((n.events[r.name]||{}).bound||{})._evaluation_event&&(t=!0),o.reject()}):s(r,n,o),o};if(0===Object.keys(n.rulesMap).length)return e.Deferred().resolve();var s=e.Deferred(),u=function(e,t){t(e).always(function(){e<n.rules.length?u(e+1,t):s.resolve()})};return u(0,function(e){return o(n.rulesMap[n.rules[e]])}),setTimeout(function(){"pending"===s.state()&&(n._log("error","Rules engine timed out."),s.reject())},this.engineTimeout),s},t.prototype.evaluate=function(t,n){if(this.isRunningFlg)return this._enqueue(this.evaluate,this,[t,n]);this.isRunningFlg=!0,this.isEvaluatingFlg=!0;var r=e.Deferred(),i=this.facts,o={};for(var s in this.evaluatedRules)o[s]=this.evaluatedRules[s];var u={};for(var s in this.prevValues)u[s]=this.prevValues[s];var a={};for(var s in this.prevToggle)a[s]=this.prevToggle[s];var l,f=this;return void 0!==n&&(this.facts=n),this.rulesMap[t]&&!0===this.events[t]._auto_generated_&&(l=this.rulesMap[t].priority,this.rulesMap[t].priority=-1/0),this.evaluatedRules={},this.prevValues={},this.on(t,"_evaluation_event",function(e){r.resolve()}),this._run("evaluate").always(function(){f.off(t,"_evaluation_event"),f.facts=i,f.evaluatedRules=o,f.prevValues=u,f.prevToggle=a,void 0!==l&&(f.rulesMap[t].priority=l),f.isEvaluatingFlg=!1,"pending"===r.state()&&r.reject(),f._dequeue()}),r},t.prototype._enqueue=function(t,n,r){var i=e.Deferred();return this.queue.push([t,n,r,i]),i},t.prototype._dequeue=function(){if(this.isRunningFlg=!1,0!==this.queue.length){var e=this.queue.shift();e[0].apply(e[1],e[2]).done(function(){e[3].resolve()}).fail(function(){e[3].reject()})}},t}); |
{ | ||
"name": "rulesenginejs", | ||
"version": "1.18.0", | ||
"version": "1.19.0", | ||
"description": "A simple front-end rules engine", | ||
@@ -5,0 +5,0 @@ "main": "dist/rulesengine.min.js", |
@@ -20,3 +20,3 @@ # RulesEngineJS | ||
- Supports negative conditions (!) | ||
- Small (8kb minified) | ||
- Small (10kb minified) | ||
- Efficient (caching, early exit) | ||
@@ -23,0 +23,0 @@ - ES5 compatible |
@@ -415,3 +415,3 @@ (function(scope, factory) { | ||
(((context.events[rule.name]||{}).bound||{})._evaluation_event !== undefined)) { | ||
context.prevToggle[rule.name] = new Date(); | ||
if (rule.toggle) context.prevToggle[rule.name] = new Date(); | ||
for (var i = 0; i < rule.events.length; i++) { | ||
@@ -418,0 +418,0 @@ if (context.emit(rule.events[i], context.isEvaluatingFlg) === true) exit = true; |
70311