json-rules-engine-simplified 0.1.17 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.JSONSchemaForm=t():e.JSONSchemaForm=t()}(this,function(){return function(e){function t(n){if(r[n])return r[n].exports;var o=r[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var r={};return t.m=e,t.c=r,t.d=function(e,r,n){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=5)}([function(e,t,r){"use strict";function n(e){return e.replace(/\$/g,".")}function o(e,t){var r=n(e);return(0,y.default)(r,t)}function u(e){return"object"===(void 0===e?"undefined":p(e))&&null!==e}function i(){return!1}function c(e){return Array.isArray(e)?e:[e]}function a(e){if(i())throw new ReferenceError(e);console.error(e)}function s(e,t){return t.properties[e]&&"array"===t.properties[e].type&&t.properties[e].items&&t.properties[e].items.$ref}function f(e,t){return e.startsWith("#/")?e.substr(2).split("/").reduce(function(e,t){return e[t]},t):void a("Only local references supported at this point use json-schema-deref")}function l(e,t){var r=t.properties;return r&&r[e]?"array"===r[e].type?s(e,t)?f(r[e].items.$ref,t):r[e].items:r[e]&&r[e].$ref?f(r[e].$ref,t):r[e]&&"object"===r[e].type?r[e]:void a(e+" has no $ref field ref schema extraction is impossible"):void a(e+" not defined in properties")}Object.defineProperty(t,"__esModule",{value:!0}),t.flatMap=void 0;var p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.normRef=n,t.selectRef=o,t.isObject=u,t.isDevelopment=i,t.toArray=c,t.toError=a,t.isRefArray=s,t.extractRefSchema=l;var d=r(10),y=function(e){return e&&e.__esModule?e:{default:e}}(d),m=function(e,t){return e.concat(t)};t.flatMap=function(e,t){return e.map(t).reduce(m,[])}},function(e,t,r){"use strict";var n=e.exports,o=Array.prototype.slice,u=function(e,t){return e.toString=function(){return t.toString()},e.src=t,e},i=n.curry=function(e){return u(function(t,r){switch(arguments.length){case 0:throw new TypeError("Function called with no arguments");case 1:return u(function(r){return e(t,r)},e)}return e(t,r)},e)};n.partial=function(e){var t=o.call(arguments,1);return function(){return e.apply(null,t.concat(o.call(arguments)))}},n.complement=n.invert=function(e){return function(){var t=e.apply(null,arguments);return"function"==typeof t?n.complement(t):!t}},n.mod=i(function(e,t){return e%t}),n.assign=i(Object.assign||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r]);return e})},function(e,t,r){"use strict";var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o=r(1),u=e.exports,i=o.curry;Object.is?u.is=i(Object.is):u.is=i(function(e,t){return 0===e&&0===t?1/e==1/t:e!==e?t!==t:e===t}),u.exists=function(e){return null!=e},u.truthy=function(e){return!(!e||!u.exists(e))},u.falsey=o.complement(u.truthy),u.equal=i(function(e,t){return e===t}),u.eq=i(function(e,t){return e==t}),u.null=u.equal(null),u.undef=u.equal(void 0),u.lt=u.less=i(function(e,t){return e<t}),u.ltEq=u.le=u.lessEq=i(function(e,t){return u.equal(e,t)||u.less(e,t)}),u.gt=u.greater=i(function(e,t){return e>t}),u.gtEq=u.ge=u.greaterEq=i(function(e,t){return u.equal(e,t)||u.greater(e,t)});var c=Object.prototype.toString,a=i(function(e,t){return u.equal(e,c.call(t))});u.object=u.obj=function(e){return e===Object(e)},u.array=u.arr=Array.isArray||a("[object Array]"),u.date=a("[object Date]"),u.regex=u.regexp=u.rgx=u.RegExp=a("[object RegExp]"),u.finite=Number.isFinite||function(e){return u.number(e)&&isFinite(e)},u.nan=u.NaN=u.is(NaN),u.instance=i(function(e,t){return t instanceof e}),u.arguments=a("[object Arguments]"),u.error=u.instance(Error);var s=i(function(e,t){return u.equal(e,void 0===t?"undefined":n(t))});[["function","fn"],["string","str"],["boolean","bool"]].reduce(function(e,t){return e[t[0]]=e[t[1]]=s(t[0]),e},u),u.number=u.num=function(e){return"number"==typeof e&&u.not.NaN(e)},u.int=function(e){return u.num(e)&&u.zero(o.mod(e,1))},u.pos=function(e){return u.num(e)&&u.greater(e,0)},u.neg=function(e){return u.num(e)&&u.less(e,0)},u.zero=function(e){return u.num(e)&&u.equal(e,0)},u.even=function(e){return u.num(e)&&u.not.zero(e)&&u.zero(o.mod(e,2))},u.odd=function(e){return u.num(e)&&u.not.zero(e)&&u.not.zero(o.mod(e,2))},u.contains=u.includes=i(function(e,t){if(!u.array(e)&&!u.string(e))throw new TypeError("Expected an array or string");return!(u.string(e)&&!u.string(t))&&(u.NaN(t)?e.some(u.NaN):!!~e.indexOf(t))});var f=Object.prototype.hasOwnProperty;u.has=i(function(e,t){return f.call(e,t)}),u.empty=function(e){if(u.not.exists(e))return!0;if(u.arr(e)||u.str(e))return!e.length;if(u.obj(e)){for(var t in e)if(u.has(e,t))return!1;return!0}throw new TypeError},u.primitive=function(e){return u.string(e)||u.num(e)||u.bool(e)||u.null(e)||u.undef(e)||u.NaN(e)},u.matches=i(function(e,t){return e.test(t)}),u.not=Object.keys(u).reduce(function(e,t){return e[t]=o.complement(u[t]),e},{})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.OR="or",t.AND="and",t.NOT="not"},function(e,t,r){"use strict";var n=r(1),o={};o.VERSION="1.0.0",[n,r(2),r(8),r(9)].reduce(n.assign,o),e.exports=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(6),o=function(e){return e&&e.__esModule?e:{default:e}}(n);t.default=o.default},function(e,t,r){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var o=r(7),u=r(19),i=function(e){return e&&e.__esModule?e:{default:e}}(u),c=r(0),a=function(e){var t=void 0!==e&&null!==e;return(0,c.isDevelopment)()&&t?((0,c.isObject)(e)||(0,c.toError)("Expected valid schema object, but got - "+e),function(t){(0,o.validatePredicates)([t.conditions],e),(0,o.validateConditionFields)([t.conditions],e)}):function(){}},s=function e(t,r){var o=this;n(this,e),this.addRule=function(e){o.validate(e),o.rules.push(e)},this.run=function(e){return Promise.resolve((0,i.default)(o.rules,e))},this.rules=[],this.validate=a(r),t&&(0,c.toArray)(t).forEach(function(e){return o.addRule(e)})};t.default=s},function(e,t,r){"use strict";function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){return(0,h.isObject)(e)?(0,h.flatMap)(Object.keys(e),function(r){var n=e[r];if((0,h.isObject)(n)||r===v.NOT){if(r===v.OR||r===v.AND)return Array.isArray(n)?(0,h.flatMap)(n,function(e){return o(e,t)}):((0,h.toError)('"'+r+'" must be an array'),[]);var u=o(n,t);return u.push(r),u}return o(r,t)}):[e]}function u(e,t){return(0,h.flatMap)(Object.keys(e),function(r){var i=e[r];if((r=(0,h.normRef)(r))===v.OR||r===v.AND)return Array.isArray(i)?(0,h.flatMap)(i,function(e){return u(e,t)}):((0,h.toError)(r+" with "+JSON.stringify(i)+" must be an Array"),[]);if(r===v.NOT)return u(i,t);if(-1!==r.indexOf(".")){var c=r.indexOf("."),a=r.substr(0,c),s=(0,h.extractRefSchema)(a,t);if(s){return u(n({},r.substr(c+1),i),s)}return(0,h.toError)("Can't find schema for "+a),[]}if((0,h.isRefArray)(r,t)){var f=(0,h.extractRefSchema)(r,t);return f?u(i,f):[]}return t.properties[r]?o(i,t):((0,h.toError)("Can't validate "+r),[])})}function i(e,t){var r=(0,h.flatMap)(e,function(e){return u(e,t)});return r.filter(function(e,t,n){return r.indexOf(e)===t})}function c(e,t){return i(e,t).filter(function(e){return b.includes(e)||void 0===m.default[e]})}function a(e,t){var r=c(e,t);0!==r.length&&(0,h.toError)("Rule contains invalid predicates "+r)}function s(e){return Array.isArray(e)?(0,h.flatMap)(e,s):(0,h.isObject)(e)?(0,h.flatMap)(Object.keys(e),function(t){return s(e[t])}):"string"==typeof e&&e.startsWith("$")?[e.substr(1)]:[]}function f(e){return(0,h.flatMap)(Object.keys(e),function(t){var r=e[t];return t===v.OR||t===v.AND?(0,h.flatMap)(r,f):t===v.NOT?f(r):[(0,h.normRef)(t)].concat(s(r))})}function l(e){var t=(0,h.flatMap)(e,f);return t.filter(function(e){return-1===e.indexOf(".")}).filter(function(e,r,n){return t.indexOf(e)===r})}function p(e,t){return l(e).filter(function(e){return void 0===t.properties[e]})}function d(e,t){var r=p(e,t);0!==r.length&&(0,h.toError)("Rule contains invalid fields "+r)}Object.defineProperty(t,"__esModule",{value:!0}),t.predicatesFromRule=o,t.predicatesFromCondition=u,t.listAllPredicates=i,t.listInvalidPredicates=c,t.validatePredicates=a,t.fieldsFromPredicates=s,t.fieldsFromCondition=f,t.listAllFields=l,t.listInvalidFields=p,t.validateConditionFields=d;var y=r(4),m=function(e){return e&&e.__esModule?e:{default:e}}(y),h=r(0),v=r(3),b=["and","or","ternary","every","some","curry","partial","complement","mod"]},function(e,t,r){"use strict";function n(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),c=r(2),a=e.exports,s=function(){function e(){u(this,e),this.lazy=[]}return i(e,[{key:"valueOf",value:function(){return this.val()}},{key:"val",value:function(){return this.lazy[this.method](function(e){return e[0].apply(null,e[1])})}}]),e}(),f=function(e){function t(){u(this,t);var e=n(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e.method="every",e}return o(t,e),t}(s),l=function(e){function t(){u(this,t);var e=n(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e.method="some",e}return o(t,e),t}(s);[f,l].forEach(function(e){Object.keys(c).reduce(function(e,t){return c.fn(c[t])?(e[t]=function(){return this.lazy.push([c[t],arguments]),this},e):e},e.prototype)}),a.all=a.every=function(){return new f},a.any=a.some=function(){return new l}},function(e,t,r){"use strict";var n=r(2),o=r(1),u=e.exports;u.ternary=function(e,t,r){return n.bool(e)?e?t:r:n.undef(t)?o.partial(u.ternary,e):n.undef(r)?o.partial(u.ternary,e,t):u.ternary(e(t,r),t,r)};var i=Array.prototype.every,c=Array.prototype.some;u.and=function(){var e=arguments;return function(t){return i.call(e,function(e){return e(t)})}},u.or=function(){var e=arguments;return function(t){return c.call(e,function(e){return e(t)})}}},function(e,t,r){"use strict";function n(e,t){u("arguments:",{path:e,object:t});for(var r=-1,n="[object Array]"===a.call(e)?e:c(i(e)),o=n.length,s=o?t:void 0;++r<o;){if(Object(s)!==s)return;s=s[n[r]]}return u("ref:",s),"function"==typeof s?s():s}var o=r(11),u=r(13)("selectn"),i=r(17),c=r(18),a=Object.prototype.toString;e.exports=o(n)},function(e,t,r){"use strict";function n(e,t){var r=function r(){return 0===arguments.length?r:arguments.length>1?e.apply(t,arguments):o.call(e,t,arguments[0])};return r.uncurry=function(){return e},r}/*!
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.JSONSchemaForm=t():e.JSONSchemaForm=t()}("undefined"!=typeof self?self:this,function(){return function(e){function t(n){if(r[n])return r[n].exports;var o=r[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var r={};return t.m=e,t.c=r,t.d=function(e,r,n){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/dist/",t(t.s=5)}([function(e,t,r){"use strict";function n(e){return e.replace(/\$/g,".")}function o(e,t){var r=n(e);return(0,y.default)(r,t)}function u(e){return"object"===(void 0===e?"undefined":p(e))&&null!==e}function i(){return!1}function c(e){return Array.isArray(e)?e:[e]}function a(e){if(i())throw new ReferenceError(e);console.error(e)}function s(e,t){return t.properties[e]&&"array"===t.properties[e].type&&t.properties[e].items&&t.properties[e].items.$ref}function f(e,t){return e.startsWith("#/")?e.substr(2).split("/").reduce(function(e,t){return e[t]},t):void a("Only local references supported at this point use json-schema-deref")}function l(e,t){var r=t.properties;return r&&r[e]?"array"===r[e].type?s(e,t)?f(r[e].items.$ref,t):r[e].items:r[e]&&r[e].$ref?f(r[e].$ref,t):r[e]&&"object"===r[e].type?r[e]:void a(e+" has no $ref field ref schema extraction is impossible"):void a(e+" not defined in properties")}Object.defineProperty(t,"__esModule",{value:!0}),t.flatMap=void 0;var p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.normRef=n,t.selectRef=o,t.isObject=u,t.isDevelopment=i,t.toArray=c,t.toError=a,t.isRefArray=s,t.extractRefSchema=l;var d=r(10),y=function(e){return e&&e.__esModule?e:{default:e}}(d),m=function(e,t){return e.concat(t)};t.flatMap=function(e,t){return e.map(t).reduce(m,[])}},function(e,t,r){"use strict";var n=e.exports,o=Array.prototype.slice,u=function(e,t){return e.toString=function(){return t.toString()},e.src=t,e},i=n.curry=function(e){return u(function(t,r){switch(arguments.length){case 0:throw new TypeError("Function called with no arguments");case 1:return u(function(r){return e(t,r)},e)}return e(t,r)},e)};n.partial=function(e){var t=o.call(arguments,1);return function(){return e.apply(null,t.concat(o.call(arguments)))}},n.complement=n.invert=function(e){return function(){var t=e.apply(null,arguments);return"function"==typeof t?n.complement(t):!t}},n.mod=i(function(e,t){return e%t}),n.assign=i(Object.assign||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r]);return e})},function(e,t,r){"use strict";var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o=r(1),u=e.exports,i=o.curry;Object.is?u.is=i(Object.is):u.is=i(function(e,t){return 0===e&&0===t?1/e==1/t:e!==e?t!==t:e===t}),u.exists=function(e){return null!=e},u.truthy=function(e){return!(!e||!u.exists(e))},u.falsey=o.complement(u.truthy),u.equal=i(function(e,t){return e===t}),u.eq=i(function(e,t){return e==t}),u.null=u.equal(null),u.undef=u.equal(void 0),u.lt=u.less=i(function(e,t){return e<t}),u.ltEq=u.le=u.lessEq=i(function(e,t){return u.equal(e,t)||u.less(e,t)}),u.gt=u.greater=i(function(e,t){return e>t}),u.gtEq=u.ge=u.greaterEq=i(function(e,t){return u.equal(e,t)||u.greater(e,t)});var c=Object.prototype.toString,a=i(function(e,t){return u.equal(e,c.call(t))});u.object=u.obj=function(e){return e===Object(e)},u.array=u.arr=Array.isArray||a("[object Array]"),u.date=a("[object Date]"),u.regex=u.regexp=u.rgx=u.RegExp=a("[object RegExp]"),u.finite=Number.isFinite||function(e){return u.number(e)&&isFinite(e)},u.nan=u.NaN=u.is(NaN),u.instance=i(function(e,t){return t instanceof e}),u.arguments=a("[object Arguments]"),u.error=u.instance(Error);var s=i(function(e,t){return u.equal(e,void 0===t?"undefined":n(t))});[["function","fn"],["string","str"],["boolean","bool"]].reduce(function(e,t){return e[t[0]]=e[t[1]]=s(t[0]),e},u),u.number=u.num=function(e){return"number"==typeof e&&u.not.NaN(e)},u.int=function(e){return u.num(e)&&u.zero(o.mod(e,1))},u.pos=function(e){return u.num(e)&&u.greater(e,0)},u.neg=function(e){return u.num(e)&&u.less(e,0)},u.zero=function(e){return u.num(e)&&u.equal(e,0)},u.even=function(e){return u.num(e)&&u.not.zero(e)&&u.zero(o.mod(e,2))},u.odd=function(e){return u.num(e)&&u.not.zero(e)&&u.not.zero(o.mod(e,2))},u.contains=u.includes=i(function(e,t){if(!u.array(e)&&!u.string(e))throw new TypeError("Expected an array or string");return!(u.string(e)&&!u.string(t))&&(u.NaN(t)?e.some(u.NaN):!!~e.indexOf(t))});var f=Object.prototype.hasOwnProperty;u.has=i(function(e,t){return f.call(e,t)}),u.empty=function(e){if(u.not.exists(e))return!0;if(u.arr(e)||u.str(e))return!e.length;if(u.obj(e)){for(var t in e)if(u.has(e,t))return!1;return!0}throw new TypeError},u.primitive=function(e){return u.string(e)||u.num(e)||u.bool(e)||u.null(e)||u.undef(e)||u.NaN(e)},u.matches=i(function(e,t){return e.test(t)}),u.not=Object.keys(u).reduce(function(e,t){return e[t]=o.complement(u[t]),e},{})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.OR="or",t.AND="and",t.NOT="not"},function(e,t,r){"use strict";var n=r(1),o={};o.VERSION="1.0.0",[n,r(2),r(8),r(9)].reduce(n.assign,o),e.exports=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(6),o=function(e){return e&&e.__esModule?e:{default:e}}(n);t.default=o.default},function(e,t,r){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var o=r(7),u=r(19),i=function(e){return e&&e.__esModule?e:{default:e}}(u),c=r(0),a=function(e){var t=void 0!==e&&null!==e;return(0,c.isDevelopment)()&&t?((0,c.isObject)(e)||(0,c.toError)("Expected valid schema object, but got - "+e),function(t){(0,o.validatePredicates)([t.conditions],e),(0,o.validateConditionFields)([t.conditions],e)}):function(){}},s=function e(t,r){var o=this;n(this,e),this.addRule=function(e){o.validate(e),o.rules.push(e)},this.run=function(e){return Promise.resolve((0,i.default)(o.rules,e))},this.rules=[],this.validate=a(r),t&&(0,c.toArray)(t).forEach(function(e){return o.addRule(e)})};t.default=s},function(e,t,r){"use strict";function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){return(0,h.isObject)(e)?(0,h.flatMap)(Object.keys(e),function(r){var n=e[r];if((0,h.isObject)(n)||r===v.NOT){if(r===v.OR||r===v.AND)return Array.isArray(n)?(0,h.flatMap)(n,function(e){return o(e,t)}):((0,h.toError)('"'+r+'" must be an array'),[]);var u=o(n,t);return u.push(r),u}return o(r,t)}):[e]}function u(e,t){return(0,h.flatMap)(Object.keys(e),function(r){var i=e[r];if((r=(0,h.normRef)(r))===v.OR||r===v.AND)return Array.isArray(i)?(0,h.flatMap)(i,function(e){return u(e,t)}):((0,h.toError)(r+" with "+JSON.stringify(i)+" must be an Array"),[]);if(r===v.NOT)return u(i,t);if(-1!==r.indexOf(".")){var c=r.indexOf("."),a=r.substr(0,c),s=(0,h.extractRefSchema)(a,t);if(s){return u(n({},r.substr(c+1),i),s)}return(0,h.toError)("Can't find schema for "+a),[]}if((0,h.isRefArray)(r,t)){var f=(0,h.extractRefSchema)(r,t);return f?u(i,f):[]}return t.properties[r]?o(i,t):((0,h.toError)("Can't validate "+r),[])})}function i(e,t){var r=(0,h.flatMap)(e,function(e){return u(e,t)});return r.filter(function(e,t,n){return r.indexOf(e)===t})}function c(e,t){return i(e,t).filter(function(e){return b.includes(e)||void 0===m.default[e]})}function a(e,t){var r=c(e,t);0!==r.length&&(0,h.toError)("Rule contains invalid predicates "+r)}function s(e){return Array.isArray(e)?(0,h.flatMap)(e,s):(0,h.isObject)(e)?(0,h.flatMap)(Object.keys(e),function(t){return s(e[t])}):"string"==typeof e&&e.startsWith("$")?[e.substr(1)]:[]}function f(e){return(0,h.flatMap)(Object.keys(e),function(t){var r=e[t];return t===v.OR||t===v.AND?(0,h.flatMap)(r,f):t===v.NOT?f(r):[(0,h.normRef)(t)].concat(s(r))})}function l(e){var t=(0,h.flatMap)(e,f);return t.filter(function(e){return-1===e.indexOf(".")}).filter(function(e,r,n){return t.indexOf(e)===r})}function p(e,t){return l(e).filter(function(e){return void 0===t.properties[e]})}function d(e,t){var r=p(e,t);0!==r.length&&(0,h.toError)("Rule contains invalid fields "+r)}Object.defineProperty(t,"__esModule",{value:!0}),t.predicatesFromRule=o,t.predicatesFromCondition=u,t.listAllPredicates=i,t.listInvalidPredicates=c,t.validatePredicates=a,t.fieldsFromPredicates=s,t.fieldsFromCondition=f,t.listAllFields=l,t.listInvalidFields=p,t.validateConditionFields=d;var y=r(4),m=function(e){return e&&e.__esModule?e:{default:e}}(y),h=r(0),v=r(3),b=["and","or","ternary","every","some","curry","partial","complement","mod"]},function(e,t,r){"use strict";function n(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),c=r(2),a=e.exports,s=function(){function e(){u(this,e),this.lazy=[]}return i(e,[{key:"valueOf",value:function(){return this.val()}},{key:"val",value:function(){return this.lazy[this.method](function(e){return e[0].apply(null,e[1])})}}]),e}(),f=function(e){function t(){u(this,t);var e=n(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e.method="every",e}return o(t,e),t}(s),l=function(e){function t(){u(this,t);var e=n(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e.method="some",e}return o(t,e),t}(s);[f,l].forEach(function(e){Object.keys(c).reduce(function(e,t){return c.fn(c[t])?(e[t]=function(){return this.lazy.push([c[t],arguments]),this},e):e},e.prototype)}),a.all=a.every=function(){return new f},a.any=a.some=function(){return new l}},function(e,t,r){"use strict";var n=r(2),o=r(1),u=e.exports;u.ternary=function(e,t,r){return n.bool(e)?e?t:r:n.undef(t)?o.partial(u.ternary,e):n.undef(r)?o.partial(u.ternary,e,t):u.ternary(e(t,r),t,r)};var i=Array.prototype.every,c=Array.prototype.some;u.and=function(){var e=arguments;return function(t){return i.call(e,function(e){return e(t)})}},u.or=function(){var e=arguments;return function(t){return c.call(e,function(e){return e(t)})}}},function(e,t,r){"use strict";function n(e,t){u("arguments:",{path:e,object:t});for(var r=-1,n="[object Array]"===a.call(e)?e:c(i(e)),o=n.length,s=o?t:void 0;++r<o;){if(Object(s)!==s)return;s=s[n[r]]}return u("ref:",s),"function"==typeof s?s():s}var o=r(11),u=r(13)("selectn"),i=r(17),c=r(18),a=Object.prototype.toString;e.exports=o(n)},function(e,t,r){"use strict";function n(e,t){var r=function r(){return 0===arguments.length?r:arguments.length>1?e.apply(t,arguments):o.call(e,t,arguments[0])};return r.uncurry=function(){return e},r}/*!
2
2
  * imports.
3
3
  */
4
4
  var o=Function.prototype.bind||r(12);/*!