@wix/filter-builder 1.0.1

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.
Files changed (68) hide show
  1. package/dist/cjs/__tests__/filter.spec.js +378 -0
  2. package/dist/cjs/__tests__/filter.spec.js.map +1 -0
  3. package/dist/cjs/__tests__/query-optimizer.spec.js +152 -0
  4. package/dist/cjs/__tests__/query-optimizer.spec.js.map +1 -0
  5. package/dist/cjs/clone.js +27 -0
  6. package/dist/cjs/clone.js.map +1 -0
  7. package/dist/cjs/filter-builder.js +30 -0
  8. package/dist/cjs/filter-builder.js.map +1 -0
  9. package/dist/cjs/filter-mixin.js +299 -0
  10. package/dist/cjs/filter-mixin.js.map +1 -0
  11. package/dist/cjs/filter-validator.js +101 -0
  12. package/dist/cjs/filter-validator.js.map +1 -0
  13. package/dist/cjs/index.js +25 -0
  14. package/dist/cjs/index.js.map +1 -0
  15. package/dist/cjs/query-optimiser.js +211 -0
  16. package/dist/cjs/query-optimiser.js.map +1 -0
  17. package/dist/cjs/type-utils.js +68 -0
  18. package/dist/cjs/type-utils.js.map +1 -0
  19. package/dist/cjs/validator.js +2 -0
  20. package/dist/cjs/validator.js.map +1 -0
  21. package/dist/esm/__tests__/filter.spec.js +211 -0
  22. package/dist/esm/__tests__/filter.spec.js.map +1 -0
  23. package/dist/esm/__tests__/query-optimizer.spec.js +39 -0
  24. package/dist/esm/__tests__/query-optimizer.spec.js.map +1 -0
  25. package/dist/esm/clone.js +18 -0
  26. package/dist/esm/clone.js.map +1 -0
  27. package/dist/esm/filter-builder.js +25 -0
  28. package/dist/esm/filter-builder.js.map +1 -0
  29. package/dist/esm/filter-mixin.js +298 -0
  30. package/dist/esm/filter-mixin.js.map +1 -0
  31. package/dist/esm/filter-validator.js +78 -0
  32. package/dist/esm/filter-validator.js.map +1 -0
  33. package/dist/esm/index.js +6 -0
  34. package/dist/esm/index.js.map +1 -0
  35. package/dist/esm/query-optimiser.js +171 -0
  36. package/dist/esm/query-optimiser.js.map +1 -0
  37. package/dist/esm/type-utils.js +40 -0
  38. package/dist/esm/type-utils.js.map +1 -0
  39. package/dist/esm/validator.js +2 -0
  40. package/dist/esm/validator.js.map +1 -0
  41. package/dist/statics/filter-builder.umd.js +453 -0
  42. package/dist/statics/filter-builder.umd.js.map +1 -0
  43. package/dist/statics/filter-builder.umd.min.js +2 -0
  44. package/dist/statics/filter-builder.umd.min.js.map +1 -0
  45. package/dist/statics/manifest.json +3 -0
  46. package/dist/statics/manifest.min.json +3 -0
  47. package/dist/tsconfig.tsbuildinfo +1 -0
  48. package/dist/types/__tests__/filter.spec.d.ts +2 -0
  49. package/dist/types/__tests__/filter.spec.d.ts.map +1 -0
  50. package/dist/types/__tests__/query-optimizer.spec.d.ts +2 -0
  51. package/dist/types/__tests__/query-optimizer.spec.d.ts.map +1 -0
  52. package/dist/types/clone.d.ts +2 -0
  53. package/dist/types/clone.d.ts.map +1 -0
  54. package/dist/types/filter-builder.d.ts +46 -0
  55. package/dist/types/filter-builder.d.ts.map +1 -0
  56. package/dist/types/filter-mixin.d.ts +42 -0
  57. package/dist/types/filter-mixin.d.ts.map +1 -0
  58. package/dist/types/filter-validator.d.ts +27 -0
  59. package/dist/types/filter-validator.d.ts.map +1 -0
  60. package/dist/types/index.d.ts +7 -0
  61. package/dist/types/index.d.ts.map +1 -0
  62. package/dist/types/query-optimiser.d.ts +2 -0
  63. package/dist/types/query-optimiser.d.ts.map +1 -0
  64. package/dist/types/type-utils.d.ts +11 -0
  65. package/dist/types/type-utils.d.ts.map +1 -0
  66. package/dist/types/validator.d.ts +14 -0
  67. package/dist/types/validator.d.ts.map +1 -0
  68. package/package.json +93 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-builder.umd.js","mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;;;;;;;;;ACVA;;AAEA;AACA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;AClJA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,yBAAyB,mBAAmB,yBAAyB;;;;;;;;;;ACTrE;AACA,kBAAkB,kBAAkB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB,mBAAmB,yBAAyB;;;;;;;;;;ACjBrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,IAAI;AACJ;AACA;;AAEA;AACA;;AAEA;AACA,yBAAyB,mBAAmB,yBAAyB;;;;;;;;;;AChBrE;AACA;AACA,oBAAoB,sBAAsB;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,EAAE,yBAAyB,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","sources":["webpack://_wix_filter_builder/webpack/universalModuleDefinition","webpack://_wix_filter_builder/../node_modules/kind-of/index.js","webpack://_wix_filter_builder/../../node_modules/@wix/babel-preset-yoshi/node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack://_wix_filter_builder/../../node_modules/@wix/babel-preset-yoshi/node_modules/@babel/runtime/helpers/createClass.js","webpack://_wix_filter_builder/../../node_modules/@wix/babel-preset-yoshi/node_modules/@babel/runtime/helpers/defineProperty.js","webpack://_wix_filter_builder/../../node_modules/@wix/babel-preset-yoshi/node_modules/@babel/runtime/helpers/extends.js","webpack://_wix_filter_builder/../../node_modules/@wix/babel-preset-yoshi/node_modules/@babel/runtime/helpers/inheritsLoose.js","webpack://_wix_filter_builder/../../node_modules/@wix/babel-preset-yoshi/node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack://_wix_filter_builder/webpack/bootstrap","webpack://_wix_filter_builder/webpack/runtime/compat get default export","webpack://_wix_filter_builder/webpack/runtime/define property getters","webpack://_wix_filter_builder/webpack/runtime/hasOwnProperty shorthand","webpack://_wix_filter_builder/webpack/runtime/make namespace object","webpack://_wix_filter_builder/./type-utils.ts","webpack://_wix_filter_builder/./clone.ts","webpack://_wix_filter_builder/./filter-validator.ts","webpack://_wix_filter_builder/./query-optimiser.ts","webpack://_wix_filter_builder/./filter-mixin.ts","webpack://_wix_filter_builder/./filter-builder.ts","webpack://_wix_filter_builder/./index.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"platformized-filter-builder\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"platformized-filter-builder\"] = factory();\n\telse\n\t\troot[\"platformized-filter-builder\"] = factory();\n})((typeof self !== 'undefined' ? self : this), function() {\nreturn ","var toString = Object.prototype.toString;\n\n/**\n * Get the native `typeof` a value.\n *\n * @param {*} `val`\n * @return {*} Native javascript type\n */\n\nmodule.exports = function kindOf(val) {\n var type = typeof val;\n\n // primitivies\n if (type === 'undefined') {\n return 'undefined';\n }\n if (val === null) {\n return 'null';\n }\n if (val === true || val === false || val instanceof Boolean) {\n return 'boolean';\n }\n if (type === 'string' || val instanceof String) {\n return 'string';\n }\n if (type === 'number' || val instanceof Number) {\n return 'number';\n }\n\n // functions\n if (type === 'function' || val instanceof Function) {\n if (typeof val.constructor.name !== 'undefined' && val.constructor.name.slice(0, 9) === 'Generator') {\n return 'generatorfunction';\n }\n return 'function';\n }\n\n // array\n if (typeof Array.isArray !== 'undefined' && Array.isArray(val)) {\n return 'array';\n }\n\n // check for instances of RegExp and Date before calling `toString`\n if (val instanceof RegExp) {\n return 'regexp';\n }\n if (val instanceof Date) {\n return 'date';\n }\n\n // other objects\n type = toString.call(val);\n\n if (type === '[object RegExp]') {\n return 'regexp';\n }\n if (type === '[object Date]') {\n return 'date';\n }\n if (type === '[object Arguments]') {\n return 'arguments';\n }\n if (type === '[object Error]') {\n return 'error';\n }\n if (type === '[object Promise]') {\n return 'promise';\n }\n\n // buffer\n if (isBuffer(val)) {\n return 'buffer';\n }\n\n // es6: Map, WeakMap, Set, WeakSet\n if (type === '[object Set]') {\n return 'set';\n }\n if (type === '[object WeakSet]') {\n return 'weakset';\n }\n if (type === '[object Map]') {\n return 'map';\n }\n if (type === '[object WeakMap]') {\n return 'weakmap';\n }\n if (type === '[object Symbol]') {\n return 'symbol';\n }\n \n if (type === '[object Map Iterator]') {\n return 'mapiterator';\n }\n if (type === '[object Set Iterator]') {\n return 'setiterator';\n }\n if (type === '[object String Iterator]') {\n return 'stringiterator';\n }\n if (type === '[object Array Iterator]') {\n return 'arrayiterator';\n }\n \n // typed arrays\n if (type === '[object Int8Array]') {\n return 'int8array';\n }\n if (type === '[object Uint8Array]') {\n return 'uint8array';\n }\n if (type === '[object Uint8ClampedArray]') {\n return 'uint8clampedarray';\n }\n if (type === '[object Int16Array]') {\n return 'int16array';\n }\n if (type === '[object Uint16Array]') {\n return 'uint16array';\n }\n if (type === '[object Int32Array]') {\n return 'int32array';\n }\n if (type === '[object Uint32Array]') {\n return 'uint32array';\n }\n if (type === '[object Float32Array]') {\n return 'float32array';\n }\n if (type === '[object Float64Array]') {\n return 'float64array';\n }\n\n // must be a plain object\n return 'object';\n};\n\n/**\n * If you need to support Safari 5-7 (8-10 yr-old browser),\n * take a look at https://github.com/feross/is-buffer\n */\n\nfunction isBuffer(val) {\n return val.constructor\n && typeof val.constructor.isBuffer === 'function'\n && val.constructor.isBuffer(val);\n}\n","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _extends() {\n module.exports = _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n return _extends.apply(this, arguments);\n}\n\nmodule.exports = _extends;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inheritsLoose;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import getKind from 'kind-of'\n\nexport function isObject(obj) {\n return getKind(obj) === 'object'\n}\n\nexport function isArray(arr) {\n return getKind(arr) === 'array'\n}\n\nexport function isDate(obj) {\n return getKind(obj) === 'date'\n}\n\nexport function isNumber(obj) {\n return getKind(obj) === 'number'\n}\n\nexport function isBoolean(obj) {\n return getKind(obj) === 'boolean'\n}\n\nexport function isString(obj) {\n return getKind(obj) === 'string'\n}\n\nexport function isFunction(obj) {\n return getKind(obj) === 'function'\n}\n\nexport function typeForDisplay(obj) {\n return upperCaseFirst(getKind(obj))\n}\n\nexport function isUndefined(obj) {\n return getKind(obj) === 'undefined'\n}\n\nexport function isNull(obj) {\n return getKind(obj) === 'null'\n}\n\nfunction upperCaseFirst(str) {\n if (!isString(str)) {\n return str\n }\n const first = str.slice(0, 1).toUpperCase()\n const rest = str.slice(1, str.length)\n return first + rest\n}\n","import { isDate } from './type-utils'\n\nexport default function clone(obj) {\n if (obj == null || typeof obj !== 'object') {\n return obj\n }\n\n let temp: any = null\n\n if (isDate(obj)) {\n temp = new Date(obj.getTime())\n } else {\n temp = obj.constructor()\n for (const key in obj) {\n temp[key] = clone(obj[key])\n }\n }\n\n return temp\n}\n","import { typeForDisplay, isDate, isString, isNumber } from './type-utils'\nimport clone from './clone'\nimport { Validator } from './validator'\n\nexport class FilterValidator implements Validator {\n private ctor\n private _invalidArguments: string[]\n public _validations: Validation[]\n public operatorName?: string\n\n constructor(operatorName, previousInvalidArguments, ctor) {\n this._validations = []\n this.operatorName = operatorName\n this.ctor = ctor\n this._invalidArguments = clone(previousInvalidArguments)\n }\n\n typeIsString(value) {\n return this.addValidation(\n () => isString(value),\n () => `Invalid ${this.operatorName} parameter value [${typeForDisplay(value)}]. ${this.operatorName} parameter must be a String.`\n )\n }\n\n typeIsStringNumberOrDate(value) {\n return this.addValidation(\n () => isDateStringOrNumber(value),\n () => `Invalid ${this.operatorName} parameter value [${typeForDisplay(value)}]. Valid ${this.operatorName} parameter types are String, Number or Date.`\n )\n }\n\n sameType(first, second) {\n return this.addValidation(\n () => typeForDisplay(first) === typeForDisplay(second),\n () => `Invalid ${this.operatorName} parameter values [${typeForDisplay(first)}] and [${typeForDisplay(second)}]. Both parameters must be of the same type.`\n )\n }\n\n typeIsStringNumberOrDateForAll(values) {\n return this.addValidation(\n () => values.every(isDateStringOrNumber),\n () => `Invalid ${this.operatorName} usage. ${this.operatorName} supports only Number, String or Date items.`\n )\n }\n\n validFieldName(field) {\n return this.addValidation(\n () => isString(field),\n () => `Invalid ${this.operatorName} field value [${typeForDisplay(field)}]. ${this.operatorName} field must be a String.`\n )\n }\n\n isInstanceOfSameClass(obj) {\n return this.addValidation(\n () => obj instanceof this.ctor,\n () => `Invalid ${this.operatorName} parameter [${typeForDisplay(obj)}]. ${this.operatorName} expects FilterBuilder only.`\n )\n }\n\n arityIsOne(args) {\n return this.addValidation(\n () => args.length === 1,\n () => `Invalid ${this.operatorName} usage. ${this.operatorName} requires one parameter.`\n )\n }\n\n arityIsTwo(args) {\n return this.addValidation(\n () => args.length === 2,\n () => `Invalid ${this.operatorName} usage. ${this.operatorName} requires two parameters.`\n )\n }\n\n arityIsThree(args) {\n return this.addValidation(\n () => args.length === 3,\n () => `Invalid ${this.operatorName} usage. ${this.operatorName} requires three parameters.`\n )\n }\n\n arityIsAtLeastTwo(args) {\n return this.addValidation(\n () => args.length >= 2,\n () => `Invalid ${this.operatorName} usage. ${this.operatorName} requires at least two parameters.`\n )\n }\n\n addValidation(predicateFn, messageFn) {\n this._validations.push({\n predicateFn,\n messageFn,\n })\n return this\n }\n\n validateAndAggregate(): [string[], boolean] {\n const valid = this._validations.every(({ predicateFn, messageFn }) =>\n this._appendIfInvalid(predicateFn(), messageFn())\n )\n return [this._invalidArguments, valid]\n }\n\n _appendIfInvalid(valid, message) {\n if (!valid) {\n this._invalidArguments.push(message)\n return false\n }\n return true\n }\n}\n\nfunction isDateStringOrNumber(value) {\n return isString(value) || isNumber(value) || isDate(value)\n}\n\ninterface Validation {\n predicateFn: Function\n messageFn: Function\n}\n","const optimisations = [\n optimisedUnaryAnd,\n optimisedEmptyAnd,\n optimisedAndsAsObjects,\n optimisedNestedAnds,\n optimisedNestedOrs,\n]\n\nexport function optimisedQuery(query) {\n const [newQuery] = fullyOptimised(query)\n return newQuery\n}\n\nfunction fullyOptimised(query) {\n if (Array.isArray(query)) {\n return fullyOptimisedArray(query)\n }\n if (\n typeof query === 'object' &&\n query !== null &&\n !instanceOfIgnoredType(query)\n ) {\n return fullyOptimisedObject(query)\n }\n return [query, false]\n}\n\nfunction fullyOptimisedArray(query) {\n const optimisedElements = query.map(fullyOptimised)\n const somethingChanged =\n 0 < optimisedElements.filter(([, elementChanged]) => elementChanged).length\n const newElements = optimisedElements.map(([element]) => element)\n return [newElements, somethingChanged]\n}\n\nfunction fullyOptimisedObject(query) {\n const [queryAfterOptimisingEntries, changedStage1] =\n fullEntriesOptimisation(query)\n const [queryAfterFullOptimisation, changedStage2] = fullObjectOptimisation(\n queryAfterOptimisingEntries\n )\n const changed = changedStage1 || changedStage2\n return [queryAfterFullOptimisation, changed]\n\n function fullObjectOptimisation(query) {\n const updatedQuery = applyFirstOptimisation(query)\n if (!updatedQuery) {\n return [query, false]\n }\n const [finalQuery] = fullyOptimised(updatedQuery)\n return [finalQuery, true]\n }\n\n function fullEntriesOptimisation(query) {\n const changedEntries = Object.entries(query)\n .map(entryOptimisation)\n .filter(([, , changed]) => changed)\n const newQuery = { ...query, ...entriesAsObject(changedEntries) }\n const changed = !!changedEntries.length\n return [newQuery, changed]\n }\n\n function entryOptimisation([key, value]) {\n const [newValue, changed] = fullyOptimised(value)\n return [key, newValue, changed]\n }\n\n function entriesAsObject(entries) {\n return entries.reduce((acc, [key, value]) => ({ ...acc, [key]: value }), {})\n }\n}\n\nfunction applyFirstOptimisation(node) {\n for (const optimisation of optimisations) {\n const newNode = optimisation(node)\n if (newNode) {\n return newNode\n }\n }\n}\n\nfunction optimisedUnaryAnd(node) {\n const args = node.$and\n if (Array.isArray(args) && args.length === 1) {\n return args[0]\n }\n}\n\nfunction optimisedEmptyAnd(node) {\n const args = node.$and\n if (Array.isArray(args) && args.length === 0) {\n return {}\n }\n return null\n}\n\nfunction optimisedAndsAsObjects(node) {\n const args = node.$and\n if (!args) {\n return\n }\n\n let basicObjects: any[] = []\n let operatorObjects: any[] = []\n\n args.forEach((arg) => {\n if (isOperator(arg)) {\n operatorObjects = [...operatorObjects, arg]\n } else {\n basicObjects = [...basicObjects, arg]\n }\n })\n\n if (basicObjects.length <= 1 || haveOverlappingFields(basicObjects)) {\n return\n }\n const combinedBasicObjects = Object.assign({}, ...basicObjects)\n\n return { $and: [combinedBasicObjects, ...operatorObjects] }\n\n function isOperator(node) {\n const keys = Object.keys(node)\n return keys.every((name) => name.startsWith('$')) && keys.length > 0\n }\n\n function haveOverlappingFields(objects) {\n const nonUniqueKeys = objects\n .map((it) => Object.keys(it))\n .reduce((a, b) => [...a, ...b], [])\n const uniqueKeys = unique(nonUniqueKeys)\n return uniqueKeys.length !== nonUniqueKeys.length\n }\n\n function unique(values) {\n const dict = {}\n values.forEach((v) => (dict[v] = true))\n return Object.keys(dict)\n }\n}\n\nfunction optimisedNestedAnds(node) {\n const args = node.$and\n if (!args) {\n return\n }\n\n const hasNestedAnds = !!args.find((it) => it.$and)\n if (!hasNestedAnds) {\n return\n }\n\n const newArgs = args.reduce((result, current) => {\n const and = current.$and\n if (!and) {\n return [...result, current]\n }\n return [...result, ...and]\n }, [])\n return { $and: newArgs }\n}\n\nfunction optimisedNestedOrs(node) {\n const args = node.$or\n if (!args) {\n return\n }\n\n const hasNestedOrs = !!args.find((it) => it.$or)\n if (!hasNestedOrs) {\n return\n }\n\n const newArgs = args.reduce((result, current) => {\n const or = current.$or\n if (!or) {\n return [...result, current]\n }\n return [...result, ...or]\n }, [])\n return { $or: newArgs }\n}\n\nfunction instanceOfIgnoredType(obj) {\n return obj instanceof Date\n}\n","import { isArray } from './type-utils'\nimport clone from './clone'\nimport { FilterValidator } from './filter-validator'\nimport { Validator } from './validator'\nimport { optimisedQuery } from './query-optimiser'\n\nconst filterMixin = (Base: any = class {}) =>\n class extends Base {\n filterTree\n invalidArguments\n\n constructor(obj: { filterTree?; invalidArguments? } = {}) {\n super(obj)\n this.filterTree = obj.filterTree || { $and: [] }\n this.invalidArguments = obj.invalidArguments || []\n }\n\n eq(...args) {\n return this._binaryAnd('$eq', '.eq', args)\n }\n\n ne(...args) {\n return this._binaryAnd('$ne', '.ne', args)\n }\n\n ge(...args) {\n return this._AndLogicalEquivalence('$gte', '.ge', args)\n }\n\n gt(...args) {\n return this._AndLogicalEquivalence('$gt', '.gt', args)\n }\n\n le(...args) {\n return this._AndLogicalEquivalence('$lte', '.le', args)\n }\n\n lt(...args) {\n return this._AndLogicalEquivalence('$lt', '.lt', args)\n }\n\n isNotEmpty(field) {\n const [newInvalidArguments, valid] = this._filterValidator('.isNotEmpty')\n .arityIsOne(arguments)\n .validFieldName(field)\n .validateAndAggregate()\n\n if (valid) {\n return this.ne(field, null)\n }\n\n return this._copy(this.filterTree, newInvalidArguments)\n }\n\n isEmpty(field) {\n const [newInvalidArguments, valid] = this._filterValidator('.isEmpty')\n .arityIsOne(arguments)\n .validFieldName(field)\n .validateAndAggregate()\n\n if (valid) {\n return this.eq(field, null)\n }\n\n return this._copy(this.filterTree, newInvalidArguments)\n }\n\n startsWith(...args) {\n return this._AndStringOperand('$startsWith', '.startsWith', args)\n }\n\n endsWith(...args) {\n return this._AndStringOperand('$endsWith', '.endsWith', args)\n }\n\n contains(...args) {\n return this._AndStringOperand('$contains', '.contains', args)\n }\n\n hasSome(...args) {\n return this._AndSetOperand('$hasSome', '.hasSome', args)\n }\n\n hasAll(...args) {\n return this._AndSetOperand('$hasAll', '.hasAll', args)\n }\n\n or(orQuery) {\n const [newInvalidArguments, valid] = this._filterValidator('.or')\n .arityIsOne(arguments)\n .isInstanceOfSameClass(orQuery)\n .validateAndAggregate()\n\n if (valid) {\n const prefix = isEmptyAnd(this.filterTree) ? [] : [this.filterTree]\n return this._copy(\n inAnd({ $or: [...prefix, orQuery.filterTree] }),\n newInvalidArguments.concat(orQuery.invalidArguments)\n )\n } else {\n return this._copy(this.filterTree, newInvalidArguments)\n }\n }\n\n and(andQuery) {\n const [newInvalidArguments, valid] = this._filterValidator('.and')\n .arityIsOne(arguments)\n .isInstanceOfSameClass(andQuery)\n .validateAndAggregate()\n\n if (valid) {\n const prefix = isEmptyAnd(this.filterTree) ? [] : [this.filterTree]\n return this._copy(\n inAnd(...prefix, andQuery.filterTree),\n newInvalidArguments.concat(andQuery.invalidArguments)\n )\n } else {\n return this._copy(this.filterTree, newInvalidArguments)\n }\n }\n\n not(notQuery) {\n const [newInvalidArguments, valid] = this._filterValidator('.not')\n .arityIsOne(arguments)\n .isInstanceOfSameClass(notQuery)\n .validateAndAggregate()\n\n if (valid) {\n const newFilterTree = clone(this.filterTree)\n const notClause = { $not: [notQuery.filterTree] }\n const resultingFilter = inAndOptimized(newFilterTree, notClause)\n\n return this._copy(\n resultingFilter,\n newInvalidArguments.concat(notQuery.invalidArguments)\n )\n } else {\n return this._copy(this.filterTree, newInvalidArguments)\n }\n }\n\n between(field, rangeStart, rangeEnd) {\n const [newInvalidArguments, valid] = this._filterValidator('.between')\n .arityIsThree(arguments)\n .sameType(rangeStart, rangeEnd)\n .typeIsStringNumberOrDate(rangeStart)\n .typeIsStringNumberOrDate(rangeEnd)\n .validateAndAggregate()\n\n if (valid) {\n return this.ge(field, rangeStart).lt(field, rangeEnd)\n }\n\n return this._copy(this.filterTree, newInvalidArguments)\n }\n\n getFilterModel() {\n if (this.invalidArguments.length > 0) {\n throw new Error(this.invalidArguments.join(' '))\n }\n return optimisedQuery(this.filterTree)\n }\n\n setFilterModel(filterModel) {\n return this._copy(filterModel, [])\n }\n\n _binaryAnd(filterOperatorSymbol, operatorName, args) {\n const [field, operand] = Array.prototype.slice.call(args)\n\n const [newInvalidArguments] = this._filterValidator(operatorName)\n .arityIsTwo(args)\n .validFieldName(field)\n .validateAndAggregate()\n\n const newFilterTree = this._makeNewFilter(\n field,\n filterOperatorSymbol,\n operand\n )\n\n return this._copy(newFilterTree, newInvalidArguments)\n }\n\n _AndLogicalEquivalence(filterOperatorSymbol, operatorName, args) {\n const [field, operand] = Array.prototype.slice.call(args)\n\n const [newInvalidArguments] = this._filterValidator(operatorName)\n .arityIsTwo(args)\n .validFieldName(field)\n .typeIsStringNumberOrDate(operand)\n .validateAndAggregate()\n\n const newFilterTree = this._makeNewFilter(\n field,\n filterOperatorSymbol,\n operand\n )\n return this._copy(newFilterTree, newInvalidArguments)\n }\n\n _AndStringOperand(filterOperatorName, operatorName, args) {\n const [field, operand] = Array.prototype.slice.call(args)\n\n const [newInvalidArguments] = this._filterValidator(operatorName)\n .arityIsTwo(args)\n .validFieldName(field)\n .typeIsString(operand)\n .validateAndAggregate()\n\n const newFilterTree = this._makeNewFilter(\n field,\n filterOperatorName,\n operand\n )\n\n return this._copy(newFilterTree, newInvalidArguments)\n }\n\n _AndSetOperand(filterOperatorName, operatorName, args) {\n const [field, ...rawOperands] = Array.prototype.slice.call(args)\n const operands = isArray(rawOperands[0]) ? rawOperands[0] : rawOperands\n\n const [newInvalidArguments] = this._filterValidator(operatorName)\n .arityIsAtLeastTwo(args)\n .validFieldName(field)\n .typeIsStringNumberOrDateForAll(operands)\n .validateAndAggregate()\n\n const newFilterTree = this._makeNewFilter(\n field,\n filterOperatorName,\n operands\n )\n return this._copy(newFilterTree, newInvalidArguments)\n }\n\n _makeNewFilter(field, filterOperatorName, operand) {\n const newFilterTree = clone(this.filterTree)\n\n // filters with 'undefined' value are lost during serialization,\n // e.g. { val: { $ne: undefined } | translates to { val: {} }\n // Replacing 'undefined' with 'null' retains the filter.\n const serializableOperand = operand === undefined ? null : operand\n const newFilter = this._buildFilter(\n field,\n filterOperatorName,\n serializableOperand\n )\n\n if (isArray(newFilterTree.$and)) {\n newFilterTree.$and.push(newFilter)\n return newFilterTree\n } else {\n const result = isEmptyObject(newFilterTree)\n ? inAnd(newFilter)\n : inAnd(newFilterTree, newFilter)\n return result\n }\n }\n\n _buildFilter(field, filterOperatorName, operand) {\n if (filterOperatorName !== '$eq') {\n const newFilter = {}\n newFilter[field] = {}\n newFilter[field][filterOperatorName] = this._replaceRefs(operand)\n return newFilter\n } else {\n const newFilter = {}\n newFilter[field] = this._replaceRefs(operand)\n return newFilter\n }\n }\n\n _replaceRefs(operand) {\n if (isArray(operand)) {\n return operand.map((op) => this._replaceRefs(op))\n } else {\n return operand\n }\n }\n\n _copy(filterTree, invalidArguments) {\n // @ts-ignore-next-line\n return new this.constructor({ ...this, filterTree, invalidArguments })\n }\n\n _filterValidator(filterOperatorName): Validator {\n return new FilterValidator(\n filterOperatorName,\n this.invalidArguments,\n this.constructor\n )\n }\n }\n\nfunction isConjunctiveFormFilter(filterTree) {\n return isArray(filterTree.$and)\n}\n\nfunction isEmptyObject(obj) {\n return Object.keys(obj).length === 0\n}\n\nfunction inAnd(...args) {\n return {\n $and: args,\n }\n}\n\nfunction inAndOptimized(...args) {\n return {\n $and: args.reduce(\n (aggr, val) =>\n isConjunctiveFormFilter(val)\n ? aggr.concat(val.$and)\n : aggr.concat([val]),\n []\n ),\n }\n}\n\nfunction isEmptyAnd(node) {\n return node && node.$and && node.$and.length === 0\n}\n\nexport default filterMixin\n","import filterMixin from './filter-mixin'\n\nexport class FilterBuilder extends filterMixin() {\n get constructorName() {\n return 'FilterBuilder'\n }\n\n _build() {\n return this.getFilterModel()\n }\n}\n\nexport function filterBuilder() {\n return new FilterBuilder({})\n}\n\nexport default filterBuilder\n","import { filterBuilder } from './filter-builder'\nimport filterMixin from './filter-mixin'\nimport { optimisedQuery as optimiseQuery } from './query-optimiser'\nimport { Validator } from './validator'\n\nexport { filterMixin, filterBuilder, optimiseQuery, Validator }\n\nexport default filterBuilder\n"],"names":["getKind","isObject","obj","isArray","arr","isDate","isNumber","isBoolean","isString","isFunction","typeForDisplay","upperCaseFirst","isUndefined","isNull","str","first","slice","toUpperCase","rest","length","clone","temp","Date","getTime","constructor","key","FilterValidator","operatorName","previousInvalidArguments","ctor","_validations","_invalidArguments","typeIsString","value","addValidation","typeIsStringNumberOrDate","isDateStringOrNumber","sameType","second","typeIsStringNumberOrDateForAll","values","every","validFieldName","field","isInstanceOfSameClass","arityIsOne","args","arityIsTwo","arityIsThree","arityIsAtLeastTwo","predicateFn","messageFn","push","validateAndAggregate","valid","_appendIfInvalid","message","optimisations","optimisedUnaryAnd","optimisedEmptyAnd","optimisedAndsAsObjects","optimisedNestedAnds","optimisedNestedOrs","optimisedQuery","query","fullyOptimised","newQuery","Array","fullyOptimisedArray","instanceOfIgnoredType","fullyOptimisedObject","optimisedElements","map","somethingChanged","filter","elementChanged","newElements","element","fullEntriesOptimisation","queryAfterOptimisingEntries","changedStage1","fullObjectOptimisation","queryAfterFullOptimisation","changedStage2","changed","updatedQuery","applyFirstOptimisation","finalQuery","changedEntries","Object","entries","entryOptimisation","entriesAsObject","newValue","reduce","acc","node","optimisation","newNode","$and","basicObjects","operatorObjects","forEach","arg","isOperator","haveOverlappingFields","combinedBasicObjects","assign","keys","name","startsWith","objects","nonUniqueKeys","it","a","b","uniqueKeys","unique","dict","v","hasNestedAnds","find","newArgs","result","current","and","$or","hasNestedOrs","or","filterMixin","Base","filterTree","invalidArguments","eq","_binaryAnd","ne","ge","_AndLogicalEquivalence","gt","le","lt","isNotEmpty","_filterValidator","arguments","newInvalidArguments","_copy","isEmpty","_AndStringOperand","endsWith","contains","hasSome","_AndSetOperand","hasAll","orQuery","prefix","isEmptyAnd","inAnd","concat","andQuery","not","notQuery","newFilterTree","notClause","$not","resultingFilter","inAndOptimized","between","rangeStart","rangeEnd","getFilterModel","Error","join","setFilterModel","filterModel","filterOperatorSymbol","prototype","call","operand","_makeNewFilter","filterOperatorName","rawOperands","operands","serializableOperand","undefined","newFilter","_buildFilter","isEmptyObject","_replaceRefs","op","isConjunctiveFormFilter","aggr","val","FilterBuilder","_build","filterBuilder","optimiseQuery","Validator"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ !function(t,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define("platformized-filter-builder",[],r):"object"==typeof exports?exports["platformized-filter-builder"]=r():t["platformized-filter-builder"]=r()}("undefined"!=typeof self?self:this,(function(){return function(){var t={306:function(t){var r=Object.prototype.toString;t.exports=function(t){var e=typeof t;return"undefined"===e?"undefined":null===t?"null":!0===t||!1===t||t instanceof Boolean?"boolean":"string"===e||t instanceof String?"string":"number"===e||t instanceof Number?"number":"function"===e||t instanceof Function?void 0!==t.constructor.name&&"Generator"===t.constructor.name.slice(0,9)?"generatorfunction":"function":void 0!==Array.isArray&&Array.isArray(t)?"array":t instanceof RegExp?"regexp":t instanceof Date?"date":"[object RegExp]"===(e=r.call(t))?"regexp":"[object Date]"===e?"date":"[object Arguments]"===e?"arguments":"[object Error]"===e?"error":"[object Promise]"===e?"promise":function(t){return t.constructor&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)}(t)?"buffer":"[object Set]"===e?"set":"[object WeakSet]"===e?"weakset":"[object Map]"===e?"map":"[object WeakMap]"===e?"weakmap":"[object Symbol]"===e?"symbol":"[object Map Iterator]"===e?"mapiterator":"[object Set Iterator]"===e?"setiterator":"[object String Iterator]"===e?"stringiterator":"[object Array Iterator]"===e?"arrayiterator":"[object Int8Array]"===e?"int8array":"[object Uint8Array]"===e?"uint8array":"[object Uint8ClampedArray]"===e?"uint8clampedarray":"[object Int16Array]"===e?"int16array":"[object Uint16Array]"===e?"uint16array":"[object Int32Array]"===e?"int32array":"[object Uint32Array]"===e?"uint32array":"[object Float32Array]"===e?"float32array":"[object Float64Array]"===e?"float64array":"object"}},663:function(t){t.exports=function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t},t.exports.default=t.exports,t.exports.__esModule=!0},587:function(t){function r(t,r){for(var e=0;e<r.length;e++){var n=r[e];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}t.exports=function(t,e,n){return e&&r(t.prototype,e),n&&r(t,n),t},t.exports.default=t.exports,t.exports.__esModule=!0},837:function(t){t.exports=function(t,r,e){return r in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t},t.exports.default=t.exports,t.exports.__esModule=!0},921:function(t){function r(){return t.exports=r=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var e=arguments[r];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t},t.exports.default=t.exports,t.exports.__esModule=!0,r.apply(this,arguments)}t.exports=r,t.exports.default=t.exports,t.exports.__esModule=!0},354:function(t,r,e){var n=e(262);t.exports=function(t,r){t.prototype=Object.create(r.prototype),t.prototype.constructor=t,n(t,r)},t.exports.default=t.exports,t.exports.__esModule=!0},262:function(t){function r(e,n){return t.exports=r=Object.setPrototypeOf||function(t,r){return t.__proto__=r,t},t.exports.default=t.exports,t.exports.__esModule=!0,r(e,n)}t.exports=r,t.exports.default=t.exports,t.exports.__esModule=!0},476:function(){}},r={};function e(n){var i=r[n];if(void 0!==i)return i.exports;var a=r[n]={exports:{}};return t[n](a,a.exports,e),a.exports}e.n=function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,{a:r}),r},e.d=function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},e.o=function(t,r){return Object.prototype.hasOwnProperty.call(t,r)},e.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var n={};return function(){"use strict";e.r(n),e.d(n,{Validator:function(){return M.Validator},default:function(){return E},filterBuilder:function(){return V},filterMixin:function(){return T},optimiseQuery:function(){return x}});var t=e(587),r=e.n(t),i=e(354),a=e.n(i),o=e(921),u=e.n(o),s=e(663),c=e.n(s),l=e(837),f=e.n(l),d=e(306),p=e.n(d);function h(t){return"array"===p()(t)}function v(t){return"date"===p()(t)}function y(t){return"string"===p()(t)}function g(t){return function(t){if(!y(t))return t;var r=t.slice(0,1).toUpperCase(),e=t.slice(1,t.length);return r+e}(p()(t))}function m(t){if(null==t||"object"!=typeof t)return t;var r=null;if(v(t))r=new Date(t.getTime());else for(var e in r=t.constructor(),t)r[e]=m(t[e]);return r}var A=function(){function t(t,r,e){f()(this,"ctor",void 0),f()(this,"_invalidArguments",void 0),f()(this,"_validations",void 0),f()(this,"operatorName",void 0),this._validations=[],this.operatorName=t,this.ctor=e,this._invalidArguments=m(r)}var r=t.prototype;return r.typeIsString=function(t){var r=this;return this.addValidation((function(){return y(t)}),(function(){return"Invalid "+r.operatorName+" parameter value ["+g(t)+"]. "+r.operatorName+" parameter must be a String."}))},r.typeIsStringNumberOrDate=function(t){var r=this;return this.addValidation((function(){return b(t)}),(function(){return"Invalid "+r.operatorName+" parameter value ["+g(t)+"]. Valid "+r.operatorName+" parameter types are String, Number or Date."}))},r.sameType=function(t,r){var e=this;return this.addValidation((function(){return g(t)===g(r)}),(function(){return"Invalid "+e.operatorName+" parameter values ["+g(t)+"] and ["+g(r)+"]. Both parameters must be of the same type."}))},r.typeIsStringNumberOrDateForAll=function(t){var r=this;return this.addValidation((function(){return t.every(b)}),(function(){return"Invalid "+r.operatorName+" usage. "+r.operatorName+" supports only Number, String or Date items."}))},r.validFieldName=function(t){var r=this;return this.addValidation((function(){return y(t)}),(function(){return"Invalid "+r.operatorName+" field value ["+g(t)+"]. "+r.operatorName+" field must be a String."}))},r.isInstanceOfSameClass=function(t){var r=this;return this.addValidation((function(){return t instanceof r.ctor}),(function(){return"Invalid "+r.operatorName+" parameter ["+g(t)+"]. "+r.operatorName+" expects FilterBuilder only."}))},r.arityIsOne=function(t){var r=this;return this.addValidation((function(){return 1===t.length}),(function(){return"Invalid "+r.operatorName+" usage. "+r.operatorName+" requires one parameter."}))},r.arityIsTwo=function(t){var r=this;return this.addValidation((function(){return 2===t.length}),(function(){return"Invalid "+r.operatorName+" usage. "+r.operatorName+" requires two parameters."}))},r.arityIsThree=function(t){var r=this;return this.addValidation((function(){return 3===t.length}),(function(){return"Invalid "+r.operatorName+" usage. "+r.operatorName+" requires three parameters."}))},r.arityIsAtLeastTwo=function(t){var r=this;return this.addValidation((function(){return t.length>=2}),(function(){return"Invalid "+r.operatorName+" usage. "+r.operatorName+" requires at least two parameters."}))},r.addValidation=function(t,r){return this._validations.push({predicateFn:t,messageFn:r}),this},r.validateAndAggregate=function(){var t=this,r=this._validations.every((function(r){var e=r.predicateFn,n=r.messageFn;return t._appendIfInvalid(e(),n())}));return[this._invalidArguments,r]},r._appendIfInvalid=function(t,r){return!!t||(this._invalidArguments.push(r),!1)},t}();function b(t){return y(t)||(r=t,"number"===p()(r))||v(t);var r}function _(t,r){var e="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(e)return(e=e.call(t)).next.bind(e);if(Array.isArray(t)||(e=function(t,r){if(!t)return;if("string"==typeof t)return j(t,r);var e=Object.prototype.toString.call(t).slice(8,-1);"Object"===e&&t.constructor&&(e=t.constructor.name);if("Map"===e||"Set"===e)return Array.from(t);if("Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return j(t,r)}(t))||r&&t&&"number"==typeof t.length){e&&(t=e);var n=0;return function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function j(t,r){(null==r||r>t.length)&&(r=t.length);for(var e=0,n=new Array(r);e<r;e++)n[e]=t[e];return n}var I=[function(t){var r=t.$and;if(Array.isArray(r)&&1===r.length)return r[0]},function(t){var r=t.$and;if(Array.isArray(r)&&0===r.length)return{};return null},function(t){var r=t.$and;if(!r)return;var e=[],n=[];if(r.forEach((function(t){!function(t){var r=Object.keys(t);return r.every((function(t){return t.startsWith("$")}))&&r.length>0}(t)?e=[].concat(e,[t]):n=[].concat(n,[t])})),e.length<=1||function(t){var r=t.map((function(t){return Object.keys(t)})).reduce((function(t,r){return[].concat(t,r)}),[]);return(e=r,n={},e.forEach((function(t){return n[t]=!0})),Object.keys(n)).length!==r.length;var e,n}(e))return;return{$and:[Object.assign.apply(Object,[{}].concat(e))].concat(n)}},function(t){var r=t.$and;if(!r)return;if(!r.find((function(t){return t.$and})))return;return{$and:r.reduce((function(t,r){var e=r.$and;return[].concat(t,e||[r])}),[])}},function(t){var r=t.$or;if(!r)return;if(!r.find((function(t){return t.$or})))return;return{$or:r.reduce((function(t,r){var e=r.$or;return[].concat(t,e||[r])}),[])}}];function x(t){return O(t)[0]}function O(t){return Array.isArray(t)?function(t){var r=t.map(O),e=0<r.filter((function(t){return t[1]})).length;return[r.map((function(t){return t[0]})),e]}(t):"object"!=typeof t||null===t||t instanceof Date?[t,!1]:function(t){var r=c(t),e=r[0],n=r[1],i=s(e),a=i[0],o=i[1];return[a,n||o];function s(t){var r=function(t){for(var r,e=_(I);!(r=e()).done;){var n=(0,r.value)(t);if(n)return n}}(t);return r?[O(r)[0],!0]:[t,!1]}function c(t){var r=Object.entries(t).map(l).filter((function(t){return t[2]}));return[u()({},t,f(r)),!!r.length]}function l(t){var r=t[0],e=O(t[1]);return[r,e[0],e[1]]}function f(t){return t.reduce((function(t,r){var e,n=r[0],i=r[1];return u()({},t,((e={})[n]=i,e))}),{})}}(t)}function w(t){return h(t.$and)}function N(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return{$and:r}}function S(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return{$and:r.reduce((function(t,r){return w(r)?t.concat(r.$and):t.concat([r])}),[])}}function $(t){return t&&t.$and&&0===t.$and.length}var T=function(t){return void 0===t&&(t=function(){}),function(t){function r(r){var e;return void 0===r&&(r={}),e=t.call(this,r)||this,f()(c()(e),"filterTree",void 0),f()(c()(e),"invalidArguments",void 0),e.filterTree=r.filterTree||{$and:[]},e.invalidArguments=r.invalidArguments||[],e}a()(r,t);var e=r.prototype;return e.eq=function(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return this._binaryAnd("$eq",".eq",r)},e.ne=function(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return this._binaryAnd("$ne",".ne",r)},e.ge=function(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return this._AndLogicalEquivalence("$gte",".ge",r)},e.gt=function(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return this._AndLogicalEquivalence("$gt",".gt",r)},e.le=function(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return this._AndLogicalEquivalence("$lte",".le",r)},e.lt=function(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return this._AndLogicalEquivalence("$lt",".lt",r)},e.isNotEmpty=function(t){var r=this._filterValidator(".isNotEmpty").arityIsOne(arguments).validFieldName(t).validateAndAggregate(),e=r[0],n=r[1];return n?this.ne(t,null):this._copy(this.filterTree,e)},e.isEmpty=function(t){var r=this._filterValidator(".isEmpty").arityIsOne(arguments).validFieldName(t).validateAndAggregate(),e=r[0],n=r[1];return n?this.eq(t,null):this._copy(this.filterTree,e)},e.startsWith=function(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return this._AndStringOperand("$startsWith",".startsWith",r)},e.endsWith=function(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return this._AndStringOperand("$endsWith",".endsWith",r)},e.contains=function(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return this._AndStringOperand("$contains",".contains",r)},e.hasSome=function(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return this._AndSetOperand("$hasSome",".hasSome",r)},e.hasAll=function(){for(var t=arguments.length,r=new Array(t),e=0;e<t;e++)r[e]=arguments[e];return this._AndSetOperand("$hasAll",".hasAll",r)},e.or=function(t){var r=this._filterValidator(".or").arityIsOne(arguments).isInstanceOfSameClass(t).validateAndAggregate(),e=r[0],n=r[1];if(n){var i=$(this.filterTree)?[]:[this.filterTree];return this._copy(N({$or:[].concat(i,[t.filterTree])}),e.concat(t.invalidArguments))}return this._copy(this.filterTree,e)},e.and=function(t){var r=this._filterValidator(".and").arityIsOne(arguments).isInstanceOfSameClass(t).validateAndAggregate(),e=r[0],n=r[1];if(n){var i=$(this.filterTree)?[]:[this.filterTree];return this._copy(N.apply(void 0,i.concat([t.filterTree])),e.concat(t.invalidArguments))}return this._copy(this.filterTree,e)},e.not=function(t){var r=this._filterValidator(".not").arityIsOne(arguments).isInstanceOfSameClass(t).validateAndAggregate(),e=r[0],n=r[1];if(n){var i=m(this.filterTree),a={$not:[t.filterTree]},o=S(i,a);return this._copy(o,e.concat(t.invalidArguments))}return this._copy(this.filterTree,e)},e.between=function(t,r,e){var n=this._filterValidator(".between").arityIsThree(arguments).sameType(r,e).typeIsStringNumberOrDate(r).typeIsStringNumberOrDate(e).validateAndAggregate(),i=n[0],a=n[1];return a?this.ge(t,r).lt(t,e):this._copy(this.filterTree,i)},e.getFilterModel=function(){if(this.invalidArguments.length>0)throw new Error(this.invalidArguments.join(" "));return x(this.filterTree)},e.setFilterModel=function(t){return this._copy(t,[])},e._binaryAnd=function(t,r,e){var n=Array.prototype.slice.call(e),i=n[0],a=n[1],o=this._filterValidator(r).arityIsTwo(e).validFieldName(i).validateAndAggregate()[0],u=this._makeNewFilter(i,t,a);return this._copy(u,o)},e._AndLogicalEquivalence=function(t,r,e){var n=Array.prototype.slice.call(e),i=n[0],a=n[1],o=this._filterValidator(r).arityIsTwo(e).validFieldName(i).typeIsStringNumberOrDate(a).validateAndAggregate()[0],u=this._makeNewFilter(i,t,a);return this._copy(u,o)},e._AndStringOperand=function(t,r,e){var n=Array.prototype.slice.call(e),i=n[0],a=n[1],o=this._filterValidator(r).arityIsTwo(e).validFieldName(i).typeIsString(a).validateAndAggregate()[0],u=this._makeNewFilter(i,t,a);return this._copy(u,o)},e._AndSetOperand=function(t,r,e){var n=Array.prototype.slice.call(e),i=n[0],a=n.slice(1),o=h(a[0])?a[0]:a,u=this._filterValidator(r).arityIsAtLeastTwo(e).validFieldName(i).typeIsStringNumberOrDateForAll(o).validateAndAggregate()[0],s=this._makeNewFilter(i,t,o);return this._copy(s,u)},e._makeNewFilter=function(t,r,e){var n,i=m(this.filterTree),a=void 0===e?null:e,o=this._buildFilter(t,r,a);return h(i.$and)?(i.$and.push(o),i):(n=i,0===Object.keys(n).length?N(o):N(i,o))},e._buildFilter=function(t,r,e){if("$eq"!==r){var n={};return n[t]={},n[t][r]=this._replaceRefs(e),n}var i={};return i[t]=this._replaceRefs(e),i},e._replaceRefs=function(t){var r=this;return h(t)?t.map((function(t){return r._replaceRefs(t)})):t},e._copy=function(t,r){return new this.constructor(u()({},this,{filterTree:t,invalidArguments:r}))},e._filterValidator=function(t){return new A(t,this.invalidArguments,this.constructor)},r}(t)},F=function(t){function e(){return t.apply(this,arguments)||this}return a()(e,t),e.prototype._build=function(){return this.getFilterModel()},r()(e,[{key:"constructorName",get:function(){return"FilterBuilder"}}]),e}(T());function V(){return new F({})}var M=e(476),E=V}(),n}()}));
2
+ //# sourceMappingURL=filter-builder.umd.min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-builder.umd.min.js","mappings":"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","sources":["webpack://_wix_filter_builder/webpack/universalModuleDefinition","webpack://_wix_filter_builder/../node_modules/kind-of/index.js","webpack://_wix_filter_builder/../../node_modules/@wix/babel-preset-yoshi/node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack://_wix_filter_builder/../../node_modules/@wix/babel-preset-yoshi/node_modules/@babel/runtime/helpers/createClass.js","webpack://_wix_filter_builder/../../node_modules/@wix/babel-preset-yoshi/node_modules/@babel/runtime/helpers/defineProperty.js","webpack://_wix_filter_builder/../../node_modules/@wix/babel-preset-yoshi/node_modules/@babel/runtime/helpers/extends.js","webpack://_wix_filter_builder/../../node_modules/@wix/babel-preset-yoshi/node_modules/@babel/runtime/helpers/inheritsLoose.js","webpack://_wix_filter_builder/../../node_modules/@wix/babel-preset-yoshi/node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack://_wix_filter_builder/webpack/bootstrap","webpack://_wix_filter_builder/webpack/runtime/compat get default export","webpack://_wix_filter_builder/webpack/runtime/define property getters","webpack://_wix_filter_builder/webpack/runtime/hasOwnProperty shorthand","webpack://_wix_filter_builder/webpack/runtime/make namespace object","webpack://_wix_filter_builder/./type-utils.ts","webpack://_wix_filter_builder/./clone.ts","webpack://_wix_filter_builder/./filter-validator.ts","webpack://_wix_filter_builder/./query-optimiser.ts","webpack://_wix_filter_builder/./filter-mixin.ts","webpack://_wix_filter_builder/./filter-builder.ts","webpack://_wix_filter_builder/./index.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"platformized-filter-builder\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"platformized-filter-builder\"] = factory();\n\telse\n\t\troot[\"platformized-filter-builder\"] = factory();\n})((typeof self !== 'undefined' ? self : this), function() {\nreturn ","var toString = Object.prototype.toString;\n\n/**\n * Get the native `typeof` a value.\n *\n * @param {*} `val`\n * @return {*} Native javascript type\n */\n\nmodule.exports = function kindOf(val) {\n var type = typeof val;\n\n // primitivies\n if (type === 'undefined') {\n return 'undefined';\n }\n if (val === null) {\n return 'null';\n }\n if (val === true || val === false || val instanceof Boolean) {\n return 'boolean';\n }\n if (type === 'string' || val instanceof String) {\n return 'string';\n }\n if (type === 'number' || val instanceof Number) {\n return 'number';\n }\n\n // functions\n if (type === 'function' || val instanceof Function) {\n if (typeof val.constructor.name !== 'undefined' && val.constructor.name.slice(0, 9) === 'Generator') {\n return 'generatorfunction';\n }\n return 'function';\n }\n\n // array\n if (typeof Array.isArray !== 'undefined' && Array.isArray(val)) {\n return 'array';\n }\n\n // check for instances of RegExp and Date before calling `toString`\n if (val instanceof RegExp) {\n return 'regexp';\n }\n if (val instanceof Date) {\n return 'date';\n }\n\n // other objects\n type = toString.call(val);\n\n if (type === '[object RegExp]') {\n return 'regexp';\n }\n if (type === '[object Date]') {\n return 'date';\n }\n if (type === '[object Arguments]') {\n return 'arguments';\n }\n if (type === '[object Error]') {\n return 'error';\n }\n if (type === '[object Promise]') {\n return 'promise';\n }\n\n // buffer\n if (isBuffer(val)) {\n return 'buffer';\n }\n\n // es6: Map, WeakMap, Set, WeakSet\n if (type === '[object Set]') {\n return 'set';\n }\n if (type === '[object WeakSet]') {\n return 'weakset';\n }\n if (type === '[object Map]') {\n return 'map';\n }\n if (type === '[object WeakMap]') {\n return 'weakmap';\n }\n if (type === '[object Symbol]') {\n return 'symbol';\n }\n \n if (type === '[object Map Iterator]') {\n return 'mapiterator';\n }\n if (type === '[object Set Iterator]') {\n return 'setiterator';\n }\n if (type === '[object String Iterator]') {\n return 'stringiterator';\n }\n if (type === '[object Array Iterator]') {\n return 'arrayiterator';\n }\n \n // typed arrays\n if (type === '[object Int8Array]') {\n return 'int8array';\n }\n if (type === '[object Uint8Array]') {\n return 'uint8array';\n }\n if (type === '[object Uint8ClampedArray]') {\n return 'uint8clampedarray';\n }\n if (type === '[object Int16Array]') {\n return 'int16array';\n }\n if (type === '[object Uint16Array]') {\n return 'uint16array';\n }\n if (type === '[object Int32Array]') {\n return 'int32array';\n }\n if (type === '[object Uint32Array]') {\n return 'uint32array';\n }\n if (type === '[object Float32Array]') {\n return 'float32array';\n }\n if (type === '[object Float64Array]') {\n return 'float64array';\n }\n\n // must be a plain object\n return 'object';\n};\n\n/**\n * If you need to support Safari 5-7 (8-10 yr-old browser),\n * take a look at https://github.com/feross/is-buffer\n */\n\nfunction isBuffer(val) {\n return val.constructor\n && typeof val.constructor.isBuffer === 'function'\n && val.constructor.isBuffer(val);\n}\n","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _extends() {\n module.exports = _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n return _extends.apply(this, arguments);\n}\n\nmodule.exports = _extends;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inheritsLoose;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import getKind from 'kind-of'\n\nexport function isObject(obj) {\n return getKind(obj) === 'object'\n}\n\nexport function isArray(arr) {\n return getKind(arr) === 'array'\n}\n\nexport function isDate(obj) {\n return getKind(obj) === 'date'\n}\n\nexport function isNumber(obj) {\n return getKind(obj) === 'number'\n}\n\nexport function isBoolean(obj) {\n return getKind(obj) === 'boolean'\n}\n\nexport function isString(obj) {\n return getKind(obj) === 'string'\n}\n\nexport function isFunction(obj) {\n return getKind(obj) === 'function'\n}\n\nexport function typeForDisplay(obj) {\n return upperCaseFirst(getKind(obj))\n}\n\nexport function isUndefined(obj) {\n return getKind(obj) === 'undefined'\n}\n\nexport function isNull(obj) {\n return getKind(obj) === 'null'\n}\n\nfunction upperCaseFirst(str) {\n if (!isString(str)) {\n return str\n }\n const first = str.slice(0, 1).toUpperCase()\n const rest = str.slice(1, str.length)\n return first + rest\n}\n","import { isDate } from './type-utils'\n\nexport default function clone(obj) {\n if (obj == null || typeof obj !== 'object') {\n return obj\n }\n\n let temp: any = null\n\n if (isDate(obj)) {\n temp = new Date(obj.getTime())\n } else {\n temp = obj.constructor()\n for (const key in obj) {\n temp[key] = clone(obj[key])\n }\n }\n\n return temp\n}\n","import { typeForDisplay, isDate, isString, isNumber } from './type-utils'\nimport clone from './clone'\nimport { Validator } from './validator'\n\nexport class FilterValidator implements Validator {\n private ctor\n private _invalidArguments: string[]\n public _validations: Validation[]\n public operatorName?: string\n\n constructor(operatorName, previousInvalidArguments, ctor) {\n this._validations = []\n this.operatorName = operatorName\n this.ctor = ctor\n this._invalidArguments = clone(previousInvalidArguments)\n }\n\n typeIsString(value) {\n return this.addValidation(\n () => isString(value),\n () => `Invalid ${this.operatorName} parameter value [${typeForDisplay(value)}]. ${this.operatorName} parameter must be a String.`\n )\n }\n\n typeIsStringNumberOrDate(value) {\n return this.addValidation(\n () => isDateStringOrNumber(value),\n () => `Invalid ${this.operatorName} parameter value [${typeForDisplay(value)}]. Valid ${this.operatorName} parameter types are String, Number or Date.`\n )\n }\n\n sameType(first, second) {\n return this.addValidation(\n () => typeForDisplay(first) === typeForDisplay(second),\n () => `Invalid ${this.operatorName} parameter values [${typeForDisplay(first)}] and [${typeForDisplay(second)}]. Both parameters must be of the same type.`\n )\n }\n\n typeIsStringNumberOrDateForAll(values) {\n return this.addValidation(\n () => values.every(isDateStringOrNumber),\n () => `Invalid ${this.operatorName} usage. ${this.operatorName} supports only Number, String or Date items.`\n )\n }\n\n validFieldName(field) {\n return this.addValidation(\n () => isString(field),\n () => `Invalid ${this.operatorName} field value [${typeForDisplay(field)}]. ${this.operatorName} field must be a String.`\n )\n }\n\n isInstanceOfSameClass(obj) {\n return this.addValidation(\n () => obj instanceof this.ctor,\n () => `Invalid ${this.operatorName} parameter [${typeForDisplay(obj)}]. ${this.operatorName} expects FilterBuilder only.`\n )\n }\n\n arityIsOne(args) {\n return this.addValidation(\n () => args.length === 1,\n () => `Invalid ${this.operatorName} usage. ${this.operatorName} requires one parameter.`\n )\n }\n\n arityIsTwo(args) {\n return this.addValidation(\n () => args.length === 2,\n () => `Invalid ${this.operatorName} usage. ${this.operatorName} requires two parameters.`\n )\n }\n\n arityIsThree(args) {\n return this.addValidation(\n () => args.length === 3,\n () => `Invalid ${this.operatorName} usage. ${this.operatorName} requires three parameters.`\n )\n }\n\n arityIsAtLeastTwo(args) {\n return this.addValidation(\n () => args.length >= 2,\n () => `Invalid ${this.operatorName} usage. ${this.operatorName} requires at least two parameters.`\n )\n }\n\n addValidation(predicateFn, messageFn) {\n this._validations.push({\n predicateFn,\n messageFn,\n })\n return this\n }\n\n validateAndAggregate(): [string[], boolean] {\n const valid = this._validations.every(({ predicateFn, messageFn }) =>\n this._appendIfInvalid(predicateFn(), messageFn())\n )\n return [this._invalidArguments, valid]\n }\n\n _appendIfInvalid(valid, message) {\n if (!valid) {\n this._invalidArguments.push(message)\n return false\n }\n return true\n }\n}\n\nfunction isDateStringOrNumber(value) {\n return isString(value) || isNumber(value) || isDate(value)\n}\n\ninterface Validation {\n predicateFn: Function\n messageFn: Function\n}\n","const optimisations = [\n optimisedUnaryAnd,\n optimisedEmptyAnd,\n optimisedAndsAsObjects,\n optimisedNestedAnds,\n optimisedNestedOrs,\n]\n\nexport function optimisedQuery(query) {\n const [newQuery] = fullyOptimised(query)\n return newQuery\n}\n\nfunction fullyOptimised(query) {\n if (Array.isArray(query)) {\n return fullyOptimisedArray(query)\n }\n if (\n typeof query === 'object' &&\n query !== null &&\n !instanceOfIgnoredType(query)\n ) {\n return fullyOptimisedObject(query)\n }\n return [query, false]\n}\n\nfunction fullyOptimisedArray(query) {\n const optimisedElements = query.map(fullyOptimised)\n const somethingChanged =\n 0 < optimisedElements.filter(([, elementChanged]) => elementChanged).length\n const newElements = optimisedElements.map(([element]) => element)\n return [newElements, somethingChanged]\n}\n\nfunction fullyOptimisedObject(query) {\n const [queryAfterOptimisingEntries, changedStage1] =\n fullEntriesOptimisation(query)\n const [queryAfterFullOptimisation, changedStage2] = fullObjectOptimisation(\n queryAfterOptimisingEntries\n )\n const changed = changedStage1 || changedStage2\n return [queryAfterFullOptimisation, changed]\n\n function fullObjectOptimisation(query) {\n const updatedQuery = applyFirstOptimisation(query)\n if (!updatedQuery) {\n return [query, false]\n }\n const [finalQuery] = fullyOptimised(updatedQuery)\n return [finalQuery, true]\n }\n\n function fullEntriesOptimisation(query) {\n const changedEntries = Object.entries(query)\n .map(entryOptimisation)\n .filter(([, , changed]) => changed)\n const newQuery = { ...query, ...entriesAsObject(changedEntries) }\n const changed = !!changedEntries.length\n return [newQuery, changed]\n }\n\n function entryOptimisation([key, value]) {\n const [newValue, changed] = fullyOptimised(value)\n return [key, newValue, changed]\n }\n\n function entriesAsObject(entries) {\n return entries.reduce((acc, [key, value]) => ({ ...acc, [key]: value }), {})\n }\n}\n\nfunction applyFirstOptimisation(node) {\n for (const optimisation of optimisations) {\n const newNode = optimisation(node)\n if (newNode) {\n return newNode\n }\n }\n}\n\nfunction optimisedUnaryAnd(node) {\n const args = node.$and\n if (Array.isArray(args) && args.length === 1) {\n return args[0]\n }\n}\n\nfunction optimisedEmptyAnd(node) {\n const args = node.$and\n if (Array.isArray(args) && args.length === 0) {\n return {}\n }\n return null\n}\n\nfunction optimisedAndsAsObjects(node) {\n const args = node.$and\n if (!args) {\n return\n }\n\n let basicObjects: any[] = []\n let operatorObjects: any[] = []\n\n args.forEach((arg) => {\n if (isOperator(arg)) {\n operatorObjects = [...operatorObjects, arg]\n } else {\n basicObjects = [...basicObjects, arg]\n }\n })\n\n if (basicObjects.length <= 1 || haveOverlappingFields(basicObjects)) {\n return\n }\n const combinedBasicObjects = Object.assign({}, ...basicObjects)\n\n return { $and: [combinedBasicObjects, ...operatorObjects] }\n\n function isOperator(node) {\n const keys = Object.keys(node)\n return keys.every((name) => name.startsWith('$')) && keys.length > 0\n }\n\n function haveOverlappingFields(objects) {\n const nonUniqueKeys = objects\n .map((it) => Object.keys(it))\n .reduce((a, b) => [...a, ...b], [])\n const uniqueKeys = unique(nonUniqueKeys)\n return uniqueKeys.length !== nonUniqueKeys.length\n }\n\n function unique(values) {\n const dict = {}\n values.forEach((v) => (dict[v] = true))\n return Object.keys(dict)\n }\n}\n\nfunction optimisedNestedAnds(node) {\n const args = node.$and\n if (!args) {\n return\n }\n\n const hasNestedAnds = !!args.find((it) => it.$and)\n if (!hasNestedAnds) {\n return\n }\n\n const newArgs = args.reduce((result, current) => {\n const and = current.$and\n if (!and) {\n return [...result, current]\n }\n return [...result, ...and]\n }, [])\n return { $and: newArgs }\n}\n\nfunction optimisedNestedOrs(node) {\n const args = node.$or\n if (!args) {\n return\n }\n\n const hasNestedOrs = !!args.find((it) => it.$or)\n if (!hasNestedOrs) {\n return\n }\n\n const newArgs = args.reduce((result, current) => {\n const or = current.$or\n if (!or) {\n return [...result, current]\n }\n return [...result, ...or]\n }, [])\n return { $or: newArgs }\n}\n\nfunction instanceOfIgnoredType(obj) {\n return obj instanceof Date\n}\n","import { isArray } from './type-utils'\nimport clone from './clone'\nimport { FilterValidator } from './filter-validator'\nimport { Validator } from './validator'\nimport { optimisedQuery } from './query-optimiser'\n\nconst filterMixin = (Base: any = class {}) =>\n class extends Base {\n filterTree\n invalidArguments\n\n constructor(obj: { filterTree?; invalidArguments? } = {}) {\n super(obj)\n this.filterTree = obj.filterTree || { $and: [] }\n this.invalidArguments = obj.invalidArguments || []\n }\n\n eq(...args) {\n return this._binaryAnd('$eq', '.eq', args)\n }\n\n ne(...args) {\n return this._binaryAnd('$ne', '.ne', args)\n }\n\n ge(...args) {\n return this._AndLogicalEquivalence('$gte', '.ge', args)\n }\n\n gt(...args) {\n return this._AndLogicalEquivalence('$gt', '.gt', args)\n }\n\n le(...args) {\n return this._AndLogicalEquivalence('$lte', '.le', args)\n }\n\n lt(...args) {\n return this._AndLogicalEquivalence('$lt', '.lt', args)\n }\n\n isNotEmpty(field) {\n const [newInvalidArguments, valid] = this._filterValidator('.isNotEmpty')\n .arityIsOne(arguments)\n .validFieldName(field)\n .validateAndAggregate()\n\n if (valid) {\n return this.ne(field, null)\n }\n\n return this._copy(this.filterTree, newInvalidArguments)\n }\n\n isEmpty(field) {\n const [newInvalidArguments, valid] = this._filterValidator('.isEmpty')\n .arityIsOne(arguments)\n .validFieldName(field)\n .validateAndAggregate()\n\n if (valid) {\n return this.eq(field, null)\n }\n\n return this._copy(this.filterTree, newInvalidArguments)\n }\n\n startsWith(...args) {\n return this._AndStringOperand('$startsWith', '.startsWith', args)\n }\n\n endsWith(...args) {\n return this._AndStringOperand('$endsWith', '.endsWith', args)\n }\n\n contains(...args) {\n return this._AndStringOperand('$contains', '.contains', args)\n }\n\n hasSome(...args) {\n return this._AndSetOperand('$hasSome', '.hasSome', args)\n }\n\n hasAll(...args) {\n return this._AndSetOperand('$hasAll', '.hasAll', args)\n }\n\n or(orQuery) {\n const [newInvalidArguments, valid] = this._filterValidator('.or')\n .arityIsOne(arguments)\n .isInstanceOfSameClass(orQuery)\n .validateAndAggregate()\n\n if (valid) {\n const prefix = isEmptyAnd(this.filterTree) ? [] : [this.filterTree]\n return this._copy(\n inAnd({ $or: [...prefix, orQuery.filterTree] }),\n newInvalidArguments.concat(orQuery.invalidArguments)\n )\n } else {\n return this._copy(this.filterTree, newInvalidArguments)\n }\n }\n\n and(andQuery) {\n const [newInvalidArguments, valid] = this._filterValidator('.and')\n .arityIsOne(arguments)\n .isInstanceOfSameClass(andQuery)\n .validateAndAggregate()\n\n if (valid) {\n const prefix = isEmptyAnd(this.filterTree) ? [] : [this.filterTree]\n return this._copy(\n inAnd(...prefix, andQuery.filterTree),\n newInvalidArguments.concat(andQuery.invalidArguments)\n )\n } else {\n return this._copy(this.filterTree, newInvalidArguments)\n }\n }\n\n not(notQuery) {\n const [newInvalidArguments, valid] = this._filterValidator('.not')\n .arityIsOne(arguments)\n .isInstanceOfSameClass(notQuery)\n .validateAndAggregate()\n\n if (valid) {\n const newFilterTree = clone(this.filterTree)\n const notClause = { $not: [notQuery.filterTree] }\n const resultingFilter = inAndOptimized(newFilterTree, notClause)\n\n return this._copy(\n resultingFilter,\n newInvalidArguments.concat(notQuery.invalidArguments)\n )\n } else {\n return this._copy(this.filterTree, newInvalidArguments)\n }\n }\n\n between(field, rangeStart, rangeEnd) {\n const [newInvalidArguments, valid] = this._filterValidator('.between')\n .arityIsThree(arguments)\n .sameType(rangeStart, rangeEnd)\n .typeIsStringNumberOrDate(rangeStart)\n .typeIsStringNumberOrDate(rangeEnd)\n .validateAndAggregate()\n\n if (valid) {\n return this.ge(field, rangeStart).lt(field, rangeEnd)\n }\n\n return this._copy(this.filterTree, newInvalidArguments)\n }\n\n getFilterModel() {\n if (this.invalidArguments.length > 0) {\n throw new Error(this.invalidArguments.join(' '))\n }\n return optimisedQuery(this.filterTree)\n }\n\n setFilterModel(filterModel) {\n return this._copy(filterModel, [])\n }\n\n _binaryAnd(filterOperatorSymbol, operatorName, args) {\n const [field, operand] = Array.prototype.slice.call(args)\n\n const [newInvalidArguments] = this._filterValidator(operatorName)\n .arityIsTwo(args)\n .validFieldName(field)\n .validateAndAggregate()\n\n const newFilterTree = this._makeNewFilter(\n field,\n filterOperatorSymbol,\n operand\n )\n\n return this._copy(newFilterTree, newInvalidArguments)\n }\n\n _AndLogicalEquivalence(filterOperatorSymbol, operatorName, args) {\n const [field, operand] = Array.prototype.slice.call(args)\n\n const [newInvalidArguments] = this._filterValidator(operatorName)\n .arityIsTwo(args)\n .validFieldName(field)\n .typeIsStringNumberOrDate(operand)\n .validateAndAggregate()\n\n const newFilterTree = this._makeNewFilter(\n field,\n filterOperatorSymbol,\n operand\n )\n return this._copy(newFilterTree, newInvalidArguments)\n }\n\n _AndStringOperand(filterOperatorName, operatorName, args) {\n const [field, operand] = Array.prototype.slice.call(args)\n\n const [newInvalidArguments] = this._filterValidator(operatorName)\n .arityIsTwo(args)\n .validFieldName(field)\n .typeIsString(operand)\n .validateAndAggregate()\n\n const newFilterTree = this._makeNewFilter(\n field,\n filterOperatorName,\n operand\n )\n\n return this._copy(newFilterTree, newInvalidArguments)\n }\n\n _AndSetOperand(filterOperatorName, operatorName, args) {\n const [field, ...rawOperands] = Array.prototype.slice.call(args)\n const operands = isArray(rawOperands[0]) ? rawOperands[0] : rawOperands\n\n const [newInvalidArguments] = this._filterValidator(operatorName)\n .arityIsAtLeastTwo(args)\n .validFieldName(field)\n .typeIsStringNumberOrDateForAll(operands)\n .validateAndAggregate()\n\n const newFilterTree = this._makeNewFilter(\n field,\n filterOperatorName,\n operands\n )\n return this._copy(newFilterTree, newInvalidArguments)\n }\n\n _makeNewFilter(field, filterOperatorName, operand) {\n const newFilterTree = clone(this.filterTree)\n\n // filters with 'undefined' value are lost during serialization,\n // e.g. { val: { $ne: undefined } | translates to { val: {} }\n // Replacing 'undefined' with 'null' retains the filter.\n const serializableOperand = operand === undefined ? null : operand\n const newFilter = this._buildFilter(\n field,\n filterOperatorName,\n serializableOperand\n )\n\n if (isArray(newFilterTree.$and)) {\n newFilterTree.$and.push(newFilter)\n return newFilterTree\n } else {\n const result = isEmptyObject(newFilterTree)\n ? inAnd(newFilter)\n : inAnd(newFilterTree, newFilter)\n return result\n }\n }\n\n _buildFilter(field, filterOperatorName, operand) {\n if (filterOperatorName !== '$eq') {\n const newFilter = {}\n newFilter[field] = {}\n newFilter[field][filterOperatorName] = this._replaceRefs(operand)\n return newFilter\n } else {\n const newFilter = {}\n newFilter[field] = this._replaceRefs(operand)\n return newFilter\n }\n }\n\n _replaceRefs(operand) {\n if (isArray(operand)) {\n return operand.map((op) => this._replaceRefs(op))\n } else {\n return operand\n }\n }\n\n _copy(filterTree, invalidArguments) {\n // @ts-ignore-next-line\n return new this.constructor({ ...this, filterTree, invalidArguments })\n }\n\n _filterValidator(filterOperatorName): Validator {\n return new FilterValidator(\n filterOperatorName,\n this.invalidArguments,\n this.constructor\n )\n }\n }\n\nfunction isConjunctiveFormFilter(filterTree) {\n return isArray(filterTree.$and)\n}\n\nfunction isEmptyObject(obj) {\n return Object.keys(obj).length === 0\n}\n\nfunction inAnd(...args) {\n return {\n $and: args,\n }\n}\n\nfunction inAndOptimized(...args) {\n return {\n $and: args.reduce(\n (aggr, val) =>\n isConjunctiveFormFilter(val)\n ? aggr.concat(val.$and)\n : aggr.concat([val]),\n []\n ),\n }\n}\n\nfunction isEmptyAnd(node) {\n return node && node.$and && node.$and.length === 0\n}\n\nexport default filterMixin\n","import filterMixin from './filter-mixin'\n\nexport class FilterBuilder extends filterMixin() {\n get constructorName() {\n return 'FilterBuilder'\n }\n\n _build() {\n return this.getFilterModel()\n }\n}\n\nexport function filterBuilder() {\n return new FilterBuilder({})\n}\n\nexport default filterBuilder\n","import { filterBuilder } from './filter-builder'\nimport filterMixin from './filter-mixin'\nimport { optimisedQuery as optimiseQuery } from './query-optimiser'\nimport { Validator } from './validator'\n\nexport { filterMixin, filterBuilder, optimiseQuery, Validator }\n\nexport default filterBuilder\n"],"names":["root","factory","exports","module","define","amd","self","this","toString","Object","prototype","val","type","Boolean","String","Number","Function","constructor","name","slice","Array","isArray","RegExp","Date","call","isBuffer","ReferenceError","__esModule","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","defineProperty","key","Constructor","protoProps","staticProps","obj","value","_extends","assign","arguments","source","hasOwnProperty","apply","setPrototypeOf","subClass","superClass","create","_setPrototypeOf","o","p","__proto__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","n","getter","d","a","definition","get","prop","r","Symbol","toStringTag","arr","getKind","isDate","isString","typeForDisplay","str","first","toUpperCase","rest","upperCaseFirst","clone","temp","getTime","FilterValidator","operatorName","previousInvalidArguments","ctor","_validations","_invalidArguments","typeIsString","addValidation","typeIsStringNumberOrDate","isDateStringOrNumber","sameType","second","typeIsStringNumberOrDateForAll","values","every","validFieldName","field","isInstanceOfSameClass","arityIsOne","args","arityIsTwo","arityIsThree","arityIsAtLeastTwo","predicateFn","messageFn","push","validateAndAggregate","valid","_appendIfInvalid","message","optimisations","node","$and","basicObjects","operatorObjects","forEach","arg","keys","startsWith","isOperator","objects","nonUniqueKeys","map","it","reduce","b","dict","v","haveOverlappingFields","find","result","current","and","$or","or","optimisedQuery","query","fullyOptimised","optimisedElements","somethingChanged","filter","fullyOptimisedArray","fullEntriesOptimisation","queryAfterOptimisingEntries","changedStage1","fullObjectOptimisation","queryAfterFullOptimisation","changedStage2","updatedQuery","newNode","optimisation","applyFirstOptimisation","changedEntries","entries","entryOptimisation","entriesAsObject","acc","fullyOptimisedObject","isConjunctiveFormFilter","filterTree","inAnd","inAndOptimized","aggr","concat","isEmptyAnd","Base","invalidArguments","eq","_binaryAnd","ne","ge","_AndLogicalEquivalence","gt","le","lt","isNotEmpty","_filterValidator","newInvalidArguments","_copy","isEmpty","_AndStringOperand","endsWith","contains","hasSome","_AndSetOperand","hasAll","orQuery","prefix","andQuery","not","notQuery","newFilterTree","notClause","$not","resultingFilter","between","rangeStart","rangeEnd","getFilterModel","Error","join","setFilterModel","filterModel","filterOperatorSymbol","operand","_makeNewFilter","filterOperatorName","rawOperands","operands","serializableOperand","newFilter","_buildFilter","_replaceRefs","op","FilterBuilder","_build","filterMixin","filterBuilder"],"sourceRoot":""}
@@ -0,0 +1,3 @@
1
+ {
2
+ "filter-builder.js": "https://static.parastorage.com/services/filter-builder/63e323d14ae450d1585621c255f9239698058c8fa2ef7f2bedff86a0/filter-builder.umd.js"
3
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "filter-builder.js": "https://static.parastorage.com/services/filter-builder/63e323d14ae450d1585621c255f9239698058c8fa2ef7f2bedff86a0/filter-builder.umd.min.js"
3
+ }
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/tslib/tslib.d.ts","../src/type-utils.ts","../src/clone.ts","../src/validator.ts","../src/filter-validator.ts","../src/query-optimiser.ts","../src/filter-mixin.ts","../src/filter-builder.ts","../src/index.ts","../../node_modules/@types/chai/index.d.ts","../src/__tests__/filter.spec.ts","../src/__tests__/query-optimizer.spec.ts","../node_modules/@types/node/ts4.8/assert.d.ts","../node_modules/@types/node/ts4.8/globals.d.ts","../node_modules/@types/node/ts4.8/async_hooks.d.ts","../node_modules/@types/node/ts4.8/buffer.d.ts","../node_modules/@types/node/ts4.8/child_process.d.ts","../node_modules/@types/node/ts4.8/cluster.d.ts","../node_modules/@types/node/ts4.8/console.d.ts","../node_modules/@types/node/ts4.8/constants.d.ts","../node_modules/@types/node/ts4.8/crypto.d.ts","../node_modules/@types/node/ts4.8/dgram.d.ts","../node_modules/@types/node/ts4.8/dns.d.ts","../node_modules/@types/node/ts4.8/domain.d.ts","../node_modules/@types/node/ts4.8/events.d.ts","../node_modules/@types/node/ts4.8/fs.d.ts","../node_modules/@types/node/ts4.8/fs/promises.d.ts","../node_modules/@types/node/ts4.8/http.d.ts","../node_modules/@types/node/ts4.8/http2.d.ts","../node_modules/@types/node/ts4.8/https.d.ts","../node_modules/@types/node/ts4.8/inspector.d.ts","../node_modules/@types/node/ts4.8/module.d.ts","../node_modules/@types/node/ts4.8/net.d.ts","../node_modules/@types/node/ts4.8/os.d.ts","../node_modules/@types/node/ts4.8/path.d.ts","../node_modules/@types/node/ts4.8/perf_hooks.d.ts","../node_modules/@types/node/ts4.8/process.d.ts","../node_modules/@types/node/ts4.8/punycode.d.ts","../node_modules/@types/node/ts4.8/querystring.d.ts","../node_modules/@types/node/ts4.8/readline.d.ts","../node_modules/@types/node/ts4.8/repl.d.ts","../node_modules/@types/node/ts4.8/stream.d.ts","../node_modules/@types/node/ts4.8/string_decoder.d.ts","../node_modules/@types/node/ts4.8/timers.d.ts","../node_modules/@types/node/ts4.8/tls.d.ts","../node_modules/@types/node/ts4.8/trace_events.d.ts","../node_modules/@types/node/ts4.8/tty.d.ts","../node_modules/@types/node/ts4.8/url.d.ts","../node_modules/@types/node/ts4.8/util.d.ts","../node_modules/@types/node/ts4.8/v8.d.ts","../node_modules/@types/node/ts4.8/vm.d.ts","../node_modules/@types/node/ts4.8/wasi.d.ts","../node_modules/@types/node/ts4.8/worker_threads.d.ts","../node_modules/@types/node/ts4.8/zlib.d.ts","../node_modules/@types/node/ts4.8/globals.global.d.ts","../node_modules/@types/node/ts4.8/index.d.ts","../../node_modules/@babel/types/lib/index.d.ts","../../node_modules/@types/babel__generator/index.d.ts","../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../node_modules/@types/babel__template/index.d.ts","../../node_modules/@types/babel__traverse/index.d.ts","../../node_modules/@types/babel__core/index.d.ts","../../node_modules/@types/bluebird/index.d.ts","../../node_modules/@types/connect/index.d.ts","../../node_modules/@types/body-parser/index.d.ts","../../node_modules/@types/bytebuffer/node_modules/@types/long/index.d.ts","../../node_modules/@types/bytebuffer/index.d.ts","../../node_modules/keyv/src/index.d.ts","../../node_modules/@types/http-cache-semantics/index.d.ts","../../node_modules/@types/responselike/index.d.ts","../../node_modules/@types/cacheable-request/index.d.ts","../../node_modules/@types/chai-as-promised/index.d.ts","../../node_modules/@types/chance/index.d.ts","../../node_modules/@types/configstore/index.d.ts","../../node_modules/@types/cookiejar/index.d.ts","../../node_modules/@types/css-modules-require-hook/index.d.ts","../../node_modules/@types/debug/index.d.ts","../../node_modules/@types/ssh2-streams/index.d.ts","../../node_modules/@types/ssh2/index.d.ts","../../node_modules/@types/docker-modem/index.d.ts","../../node_modules/@types/dockerode/index.d.ts","../../node_modules/@types/eslint/helpers.d.ts","../../node_modules/@types/json-schema/index.d.ts","../../node_modules/@types/estree/index.d.ts","../../node_modules/@types/eslint/index.d.ts","../../node_modules/@types/eslint-scope/index.d.ts","../../node_modules/@types/eslint-visitor-keys/index.d.ts","../../node_modules/@types/range-parser/index.d.ts","../../node_modules/@types/qs/index.d.ts","../../node_modules/@types/express-serve-static-core/index.d.ts","../../node_modules/@types/mime/index.d.ts","../../node_modules/@types/serve-static/index.d.ts","../../node_modules/@types/express/index.d.ts","../../node_modules/@types/get-port/index.d.ts","../../node_modules/@types/minimatch/index.d.ts","../../node_modules/@types/glob/index.d.ts","../../node_modules/@types/graceful-fs/index.d.ts","../../node_modules/@types/graphql/tsutils/Maybe.d.ts","../../node_modules/@types/graphql/language/source.d.ts","../../node_modules/@types/graphql/jsutils/PromiseOrValue.d.ts","../../node_modules/@types/graphql/language/location.d.ts","../../node_modules/@types/graphql/language/kinds.d.ts","../../node_modules/@types/graphql/language/parser.d.ts","../../node_modules/@types/graphql/language/printer.d.ts","../../node_modules/@types/graphql/language/directiveLocation.d.ts","../../node_modules/@types/graphql/type/directives.d.ts","../../node_modules/@types/graphql/type/schema.d.ts","../../node_modules/@types/graphql/utilities/TypeInfo.d.ts","../../node_modules/@types/graphql/language/visitor.d.ts","../../node_modules/@types/graphql/language/predicates.d.ts","../../node_modules/@types/graphql/language/index.d.ts","../../node_modules/@types/graphql/error/GraphQLError.d.ts","../../node_modules/@types/graphql/error/syntaxError.d.ts","../../node_modules/@types/graphql/error/locatedError.d.ts","../../node_modules/@types/graphql/error/printError.d.ts","../../node_modules/@types/graphql/error/formatError.d.ts","../../node_modules/@types/graphql/error/index.d.ts","../../node_modules/@types/graphql/language/lexer.d.ts","../../node_modules/@types/graphql/language/ast.d.ts","../../node_modules/@types/graphql/type/definition.d.ts","../../node_modules/@types/graphql/execution/execute.d.ts","../../node_modules/@types/graphql/graphql.d.ts","../../node_modules/@types/graphql/type/scalars.d.ts","../../node_modules/@types/graphql/type/introspection.d.ts","../../node_modules/@types/graphql/type/validate.d.ts","../../node_modules/@types/graphql/type/index.d.ts","../../node_modules/@types/graphql/execution/values.d.ts","../../node_modules/@types/graphql/execution/index.d.ts","../../node_modules/@types/graphql/subscription/subscribe.d.ts","../../node_modules/@types/graphql/subscription/index.d.ts","../../node_modules/@types/graphql/validation/ValidationContext.d.ts","../../node_modules/@types/graphql/validation/validate.d.ts","../../node_modules/@types/graphql/validation/rules/ExecutableDefinitions.d.ts","../../node_modules/@types/graphql/validation/rules/UniqueOperationNames.d.ts","../../node_modules/@types/graphql/validation/rules/LoneAnonymousOperation.d.ts","../../node_modules/@types/graphql/validation/rules/SingleFieldSubscriptions.d.ts","../../node_modules/@types/graphql/validation/rules/KnownTypeNames.d.ts","../../node_modules/@types/graphql/validation/rules/FragmentsOnCompositeTypes.d.ts","../../node_modules/@types/graphql/validation/rules/VariablesAreInputTypes.d.ts","../../node_modules/@types/graphql/validation/rules/ScalarLeafs.d.ts","../../node_modules/@types/graphql/validation/rules/FieldsOnCorrectType.d.ts","../../node_modules/@types/graphql/validation/rules/UniqueFragmentNames.d.ts","../../node_modules/@types/graphql/validation/rules/KnownFragmentNames.d.ts","../../node_modules/@types/graphql/validation/rules/NoUnusedFragments.d.ts","../../node_modules/@types/graphql/validation/rules/PossibleFragmentSpreads.d.ts","../../node_modules/@types/graphql/validation/rules/NoFragmentCycles.d.ts","../../node_modules/@types/graphql/validation/rules/UniqueVariableNames.d.ts","../../node_modules/@types/graphql/validation/rules/NoUndefinedVariables.d.ts","../../node_modules/@types/graphql/validation/rules/NoUnusedVariables.d.ts","../../node_modules/@types/graphql/validation/rules/KnownDirectives.d.ts","../../node_modules/@types/graphql/validation/rules/UniqueDirectivesPerLocation.d.ts","../../node_modules/@types/graphql/validation/rules/KnownArgumentNames.d.ts","../../node_modules/@types/graphql/validation/rules/UniqueArgumentNames.d.ts","../../node_modules/@types/graphql/validation/rules/ValuesOfCorrectType.d.ts","../../node_modules/@types/graphql/validation/rules/ProvidedRequiredArguments.d.ts","../../node_modules/@types/graphql/validation/rules/VariablesInAllowedPosition.d.ts","../../node_modules/@types/graphql/validation/rules/OverlappingFieldsCanBeMerged.d.ts","../../node_modules/@types/graphql/validation/rules/UniqueInputFieldNames.d.ts","../../node_modules/@types/graphql/validation/rules/LoneSchemaDefinition.d.ts","../../node_modules/@types/graphql/validation/specifiedRules.d.ts","../../node_modules/@types/graphql/validation/index.d.ts","../../node_modules/@types/graphql/utilities/introspectionQuery.d.ts","../../node_modules/@types/graphql/utilities/getOperationAST.d.ts","../../node_modules/@types/graphql/utilities/getOperationRootType.d.ts","../../node_modules/@types/graphql/utilities/introspectionFromSchema.d.ts","../../node_modules/@types/graphql/utilities/buildClientSchema.d.ts","../../node_modules/@types/graphql/language/blockString.d.ts","../../node_modules/@types/graphql/utilities/buildASTSchema.d.ts","../../node_modules/@types/graphql/utilities/extendSchema.d.ts","../../node_modules/@types/graphql/utilities/lexicographicSortSchema.d.ts","../../node_modules/@types/graphql/utilities/schemaPrinter.d.ts","../../node_modules/@types/graphql/utilities/typeFromAST.d.ts","../../node_modules/@types/graphql/utilities/valueFromAST.d.ts","../../node_modules/@types/graphql/utilities/valueFromASTUntyped.d.ts","../../node_modules/@types/graphql/utilities/astFromValue.d.ts","../../node_modules/@types/graphql/utilities/coerceValue.d.ts","../../node_modules/@types/graphql/utilities/isValidJSValue.d.ts","../../node_modules/@types/graphql/utilities/isValidLiteralValue.d.ts","../../node_modules/@types/graphql/utilities/concatAST.d.ts","../../node_modules/@types/graphql/utilities/separateOperations.d.ts","../../node_modules/@types/graphql/utilities/typeComparators.d.ts","../../node_modules/@types/graphql/utilities/assertValidName.d.ts","../../node_modules/@types/graphql/utilities/findBreakingChanges.d.ts","../../node_modules/@types/graphql/utilities/findDeprecatedUsages.d.ts","../../node_modules/@types/graphql/utilities/index.d.ts","../../node_modules/@types/graphql/index.d.ts","../../node_modules/@types/html-minifier-terser/index.d.ts","../../node_modules/@types/http-proxy/index.d.ts","../../node_modules/@types/http-proxy-agent/index.d.ts","../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../node_modules/@types/istanbul-lib-report/index.d.ts","../../node_modules/@types/istanbul-reports/index.d.ts","../../node_modules/@types/jest/node_modules/jest-diff/build/cleanupSemantic.d.ts","../../node_modules/@types/jest/node_modules/jest-diff/build/types.d.ts","../../node_modules/@types/jest/node_modules/jest-diff/build/diffLines.d.ts","../../node_modules/@types/jest/node_modules/jest-diff/build/printDiffs.d.ts","../../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../../node_modules/@types/jest/index.d.ts","../../node_modules/@types/js-yaml/index.d.ts","../../node_modules/@types/json-buffer/index.d.ts","../../node_modules/@types/json-stable-stringify/index.d.ts","../../node_modules/@types/json5/index.d.ts","../../node_modules/@types/jsonwebtoken/index.d.ts","../../node_modules/@types/keyv/index.d.ts","../../node_modules/@types/lodash/common/common.d.ts","../../node_modules/@types/lodash/common/array.d.ts","../../node_modules/@types/lodash/common/collection.d.ts","../../node_modules/@types/lodash/common/date.d.ts","../../node_modules/@types/lodash/common/function.d.ts","../../node_modules/@types/lodash/common/lang.d.ts","../../node_modules/@types/lodash/common/math.d.ts","../../node_modules/@types/lodash/common/number.d.ts","../../node_modules/@types/lodash/common/object.d.ts","../../node_modules/@types/lodash/common/seq.d.ts","../../node_modules/@types/lodash/common/string.d.ts","../../node_modules/@types/lodash/common/util.d.ts","../../node_modules/@types/lodash/index.d.ts","../../node_modules/@types/long/index.d.ts","../../node_modules/@types/md5/index.d.ts","../../node_modules/@types/unist/index.d.ts","../../node_modules/@types/mdast/index.d.ts","../../node_modules/@types/minimist/index.d.ts","../../node_modules/@types/mkdirp/index.d.ts","../../node_modules/@types/mocha/index.d.ts","../../node_modules/@types/newrelic/index.d.ts","../../node_modules/@types/nock/index.d.ts","../../node_modules/@types/node-rsa/index.d.ts","../../node_modules/@types/normalize-package-data/index.d.ts","../../node_modules/@types/parse-json/index.d.ts","../../node_modules/@types/prettier/index.d.ts","../../node_modules/@types/retry/index.d.ts","../../node_modules/@types/promise-retry/index.d.ts","../../node_modules/@types/puppeteer/index.d.ts","../../node_modules/@types/q/index.d.ts","../../node_modules/@types/redis/ts3.1/index.d.ts","../../node_modules/@types/rimraf/index.d.ts","../../node_modules/@types/selenium-webdriver/remote.d.ts","../../node_modules/@types/selenium-webdriver/http.d.ts","../../node_modules/@types/selenium-webdriver/chrome.d.ts","../../node_modules/@types/selenium-webdriver/edge.d.ts","../../node_modules/@types/selenium-webdriver/firefox.d.ts","../../node_modules/@types/selenium-webdriver/ie.d.ts","../../node_modules/@types/selenium-webdriver/opera.d.ts","../../node_modules/@types/selenium-webdriver/safari.d.ts","../../node_modules/@types/selenium-webdriver/index.d.ts","../../node_modules/@types/sinonjs__fake-timers/index.d.ts","../../node_modules/@types/sinon/index.d.ts","../../node_modules/@types/sinon-chai/index.d.ts","../../node_modules/@types/source-list-map/index.d.ts","../../node_modules/@types/stack-utils/index.d.ts","../../node_modules/@types/strip-bom/index.d.ts","../../node_modules/@types/strip-json-comments/index.d.ts","../../node_modules/buffer/index.d.ts","../../node_modules/@types/superagent/index.d.ts","../../node_modules/@types/supertest/index.d.ts","../../node_modules/@types/tapable/index.d.ts","../../node_modules/@types/tmp/index.d.ts","../../node_modules/source-map/source-map.d.ts","../../node_modules/@types/uglify-js/index.d.ts","../../node_modules/@types/uuid/interfaces.d.ts","../../node_modules/@types/uuid/index.d.ts","../../node_modules/anymatch/index.d.ts","../../node_modules/@types/webpack-sources/node_modules/source-map/source-map.d.ts","../../node_modules/@types/webpack-sources/lib/Source.d.ts","../../node_modules/@types/webpack-sources/lib/CompatSource.d.ts","../../node_modules/@types/webpack-sources/lib/ConcatSource.d.ts","../../node_modules/@types/webpack-sources/lib/OriginalSource.d.ts","../../node_modules/@types/webpack-sources/lib/PrefixSource.d.ts","../../node_modules/@types/webpack-sources/lib/RawSource.d.ts","../../node_modules/@types/webpack-sources/lib/ReplaceSource.d.ts","../../node_modules/@types/webpack-sources/lib/SizeOnlySource.d.ts","../../node_modules/@types/webpack-sources/lib/SourceMapSource.d.ts","../../node_modules/@types/webpack-sources/lib/index.d.ts","../../node_modules/@types/webpack-sources/lib/CachedSource.d.ts","../../node_modules/@types/webpack-sources/index.d.ts","../../node_modules/@types/webpack/index.d.ts","../../node_modules/schema-utils/declarations/ValidationError.d.ts","../../node_modules/ajv/lib/ajv.d.ts","../../node_modules/schema-utils/declarations/validate.d.ts","../../node_modules/schema-utils/declarations/index.d.ts","../../node_modules/@types/webpack-bundle-analyzer/node_modules/tapable/tapable.d.ts","../../node_modules/@types/webpack-bundle-analyzer/node_modules/webpack/types.d.ts","../../node_modules/@types/webpack-bundle-analyzer/index.d.ts","../../node_modules/@types/websocket/index.d.ts","../../node_modules/@types/ws/index.d.ts","../../node_modules/@types/yargs-parser/index.d.ts","../../node_modules/@types/yargs/index.d.ts","../../node_modules/@types/yauzl/index.d.ts"],"fileInfos":[{"version":"f20c05dbfe50a208301d2a1da37b9931bce0466eb5a1f4fe240971b4ecc82b67","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","d11a03592451da2d1065e09e61f4e2a9bf68f780f4f6623c18b57816a9679d17","aea179452def8a6152f98f63b191b84e7cbd69b0e248c91e61fb2e52328abe8c",{"version":"9b087de7268e4efc5f215347a62656663933d63c0b1d7b624913240367b999ea","affectsGlobalScope":true},{"version":"3260e3386d9535b804205bdddb5618a9a27735bd22927f48ad54363abcd23d45","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"55f400eec64d17e888e278f4def2f254b41b89515d3b88ad75d5e05f019daddd","affectsGlobalScope":true},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"775d9c9fd150d5de79e0450f35bc8b8f94ae64e3eb5da12725ff2a649dccc777","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"34c839eaaa6d78c8674ae2c37af2236dee6831b13db7b4ef4df3ec889a04d4f2","affectsGlobalScope":true},{"version":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true},{"version":"ab7d58e6161a550ff92e5aff755dc37fe896245348332cd5f1e1203479fe0ed1","affectsGlobalScope":true},{"version":"6bda95ea27a59a276e46043b7065b55bd4b316c25e70e29b572958fa77565d43","affectsGlobalScope":true},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true},{"version":"a4da0551fd39b90ca7ce5f68fb55d4dc0c1396d589b612e1902f68ee090aaada","affectsGlobalScope":true},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"14a84fbe4ec531dcbaf5d2594fd95df107258e60ae6c6a076404f13c3f66f28e",{"version":"4a77e4bb21c4f579d87f34ca8dcbf18d1d237f5bc6bf0cc53a11038717ea3c5b","signature":"1ad526000da22f2498c30ca7718be620d868839c8a9030ce98d48fc3867d1b4e"},{"version":"bde2bfeabb542bd28626a4744adf89beec9f2e7b88e4480b24c3262d7d42b58b","signature":"6470b0fff8cb3dc582834c6857a564ee6f6c2885b4a6ce30212f646c68fff982"},{"version":"f5c002aa5170e31c10222abae83d6c02d02b12780cf75cf2bda1a78e4bea751f","signature":"df19fcdd3566b81e2b7c492a437eabafc231b613e1a6285c77cffa0093651ae6"},{"version":"ad672df9c91d66ef2bebbf6392ef0b750da48c262700746bdeb49fb3e18f4c97","signature":"26a103d512185f1c2b003249b448e75b125279b64412afacfab96525d2fca2cf"},{"version":"e9315f07334b5e86a92ba62ebb9801b63c42dcc390b45abf586f8489a650a059","signature":"806fca8c14f5305327443ca8d6a0fe2d61dd889f783537c416c7a39a2e30a054"},{"version":"6a61e1824c9565a59d5e6897f83a95736a4fb4072e865add28abce35dc6df3f8","signature":"72413499ef30cc2a348b190f947906dc5d4b76769a09c416d9c06d52cd1af234"},{"version":"f296c2d3e1e2b8155fd4d7779188df463997c03d3df6052ec4e1151b8c376ba3","signature":"fb493de34b5443a2018243372b0b94bb179eb63762f9cc1b6c42abc25d145644"},{"version":"8097d2884cab9b41b4b55e8ffa60b3b8002aa257de0ffca6e040b319b0ec5537","signature":"47eed4cb4b9a439eb987490ee2281b6709ab27c90c896c978bd290228da17376"},{"version":"3a15910b7f45dfc393f010ee8f913580b08d65752800fc48147ea13445acd5f7","affectsGlobalScope":true},{"version":"6e3dc81a100673e92fff4ab9e94a440af96ffd58644bd41dfa34119e21e718b1","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"da4b9839ae76a5fcdf7f710f2530dae7126853c9476edd834af3e5a26c1eb4b2","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},"4c2c4f53e8eedd970f8afa369d7371544fb6231bf95e659f8602e09abe74d5a5",{"version":"32ddf2b046fa7269050f64a87f1f3d2db10b92ad6302460681915af1207b1222","affectsGlobalScope":true},"c2b5085f47e41d6940bbc5b0d3bd7cc0037c752efb18aecd243c9cf83ad0c0b7","3143a5add0467b83150961ecd33773b561a1207aec727002aa1d70333068eb1b","9b2a8f604e7c0482a9061755f00b287cc99bd8718dc82d8207dd74c599b6dc43","d0fc76a91c828fbe3f0be5d683273634b7b101068333ceed975a8a9ac464137b",{"version":"1a048ff164b8d9609f5de3139d4e37f6e8a82af82087ac414b9208f52ef8aac7","affectsGlobalScope":true},"3111079f3cb5f2b9c812ca3f46161562bce5bfb355e915f46ed46c41714dc1c3","db86f82fac051ae344b47e8fe7ac7990174b41db79b2b220a49dc5a47c71a9b5","b32b6b16cb0bda68199582ad6f22242d07ee75fac9b1f28a98cd838afc5eea45","4441ee4119824bfaebc49308559edd7545978f9cb41a40f115074e1031dde75f",{"version":"60693a88462d0e97900123b5bf7c73e146ce0cc94da46a61fe6775b430d2ff05","affectsGlobalScope":true},{"version":"588c69eda58b9202676ec7ca11a72c3762819b46a0ed72462c769846153c447c","affectsGlobalScope":true},"ae064ed4f855716b7ff348639ddcd6a6d354a72fae82f506608a7dc9266aa24c","92f019c55b21c939616f6a48f678e714ac7b109444cbbf23ad69310ce66ecbdc","0eb4ba769e8881dc8cf1fb77c059eb9e3ed8a4ebe70a19a0f2055b68fda68c60","56e6722c6013609b3e5e6ed4a8a7e01f41da6c5e3d6f0ecff3d09ef7a81414cf","3924e8b900c717cb4ddf663d996e0bc0918f01b2c2e8dccaa94e59a8ae6912ec","f614c3f61e46ccc2cb58702d5a158338ea57ee09099fde5db4cfc63ed0ce4d74","44e42ed6ec9c4451ebe89524e80ac8564e9dd0988c56e6c58f393c810730595d","d79fda68cbfb361c4ee9cd9ea169babb65887534d64017726cd01f54783d20a5","1606ea615c0a5ea9f5c1376a33e34c0e1112e8dee31a5b3b8a74ce781893aa6f","e92852d673c836fc64e10c38640abcd67c463456e5df55723ac699b8e6ab3a8a","4455c78d226d061b1203c7614c6c6eb5f4f9db5f00d44ff47d0112de8766fbc4",{"version":"ec369bb9d97c4dc09dd2a4093b7ca3ba69ad284831fccac8a1977785e9e38ce5","affectsGlobalScope":true},"4465a636f5f6e9665a90e30691862c9e0a3ac2edc0e66296704f10865e924f2a","9af781f03d44f5635ed7844be0ce370d9d595d4b4ec67cad88f0fac03255257e","f9fd4c3ef6de27fa0e256f4e75b61711c4be05a3399f7714621d3edc832e36b0","e49290b7a927995c0d7e6b2b9c8296284b68a9036d9966531de65185269258d7","c3689f70ce7563c2299f2dcb3c72efdf6f87ae510e7456fa6223c767d0ca99fc","874ca809b79276460011480a2829f4c8d4db29416dd411f71efbf8f497f0ac09","6c903bceaf3f3bc04f2d4c7dcd89ce9fb148b3ba0a5f5408d8f6de2b7eecc7ea","504d049d9e550a65466b73ca39da6469ab41786074ea1d16d37c8853f9f6ab2e","23a28f834a078986bbf58f4e3705956983ff81c3c2493f3db3e5f0e8a9507779","4febdf7f3ec92706c58e0b4e8159cd6de718284ef384260b07c9641c13fc70ce",{"version":"eabefc2999c1489cf870e0c85af908900462fa245822d9a4616780a1a129945d","affectsGlobalScope":true},"7335933d9f30dcfd2c4b6080a8b78e81912a7fcefb1dafccb67ca4cb4b3ac23d","a6bfe9de9adef749010c118104b071d14943802ff0614732b47ce4f1c3e383cd","4c3d0e10396646db4a1e917fb852077ee77ae62e512913bef9cccc2bb0f8bd0e","3b220849d58140dcc6718f5b52dcd29fdb79c45bc28f561cbd29eb1cac6cce13","0ee22fce41f7417a24c808d266e91b850629113c104713a35854393d55994beb","22d1b1d965baba05766613e2e6c753bb005d4386c448cafd72c309ba689e8c24",{"version":"2708349d5a11a5c2e5f3a0765259ebe7ee00cdcc8161cb9990cb4910328442a1","affectsGlobalScope":true},"01c93adfc4c6555c559e7334b6b5f45b48c9e1f809144822088e45ba13e36d9f","2ff9995137f3e5d68971388ec58af0c79721626323884513f9f5e2e996ac1fdd","cc957354aa3c94c9961ebf46282cfde1e81d107fc5785a61f62c67f1dd3ac2eb","1a7cc144992d79b062c22ac0309c6624dbb0d49bbddff7ea3b9daa0c17bcac0a","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","159bda82b67a7aa30cf7dcf0110cad83bcc6620396830efd470890f0caa6c9c0","5426e62886b7be7806312d31a00e8f7dccd6fe63ba9bbefe99ee2eab29cc48a3","338bd7c3518b05b4c473971be0e5f8f854aca7cdb00d1b97192c14860f4ebf2f","6d829824ead8999f87b6df21200df3c6150391b894b4e80662caa462bd48d073","afc559c1b93df37c25aef6b3dfa2d64325b0e112e887ee18bf7e6f4ec383fc90","0e60e0cbf2283adfd5a15430ae548cd2f662d581b5da6ecd98220203e7067c70","82811dfe87c4591e09a5347247c518bd9eab15cffedaa719ef17ae26146b71f3","cd71905370ede696577acc23c695181e618a7d08616b1d06b43d3e6a12880fab","cab425b5559edac18327eb2c3c0f47e7e9f71b667290b7689faafd28aac69eae","3cfb0cb51cc2c2e1b313d7c4df04dbf7e5bda0a133c6b309bf6af77cf614b971","f992cd6cc0bcbaa4e6c810468c90f2d8595f8c6c3cf050c806397d3de8585562",{"version":"88e89bb32640978ab8652234e0ecf50a3e7b999a34f8e674a6d4ce37a9c0be07","affectsGlobalScope":true},{"version":"8f61ce98de9b42c0196fe17eae81d18cfac3fa0c3fd22421beda62a8b22d73d4","affectsGlobalScope":true},"e3cb1b4d91d7fd308d69b4af172c80c9455e2ce52970d7f6f817d2132e7a72da","8d48b8f8a377ade8dd1f000625bc276eea067f2529cc9cafdf082d17142107d6","fa93fdbb0f66363694be59212ea8f247ac18857ae421f3cbbdb3a3af7d8bc6d4","37a4038e69fb61043e363140b58d7d517d6f99f274adad0774f226ea2ee8c903","bc93163dc226b26bf07739d0f4fda65f2158201a08256a866ca3802daca064e4","85976d1088db28912f61f76fd68103dd3625480f5ad5ba4c98519a81693ef717","ab4ee1ad4b0fae1e3d9120c8b3d2ea70a8cbe604d065fb9970a9433968f91aaa","3fab20f593b7331d0a16165048371494ad65d937a0f4f281738d627df1c1f507",{"version":"64d4b35c5456adf258d2cf56c341e203a073253f229ef3208fc0d5020253b241","affectsGlobalScope":true},"f3e604694b624fa3f83f6684185452992088f5efb2cf136b62474aa106d6f1b6","a1c79f857f5c7754e14c93949dad8cfefcd7df2ecc0dc9dd79a30fd493e28449","8566fa84085caa46340393b1704ecd368491918fb45bd688d6e89736aec73a2f","dc33ce27fbeaf0ea3da556c80a6cc8af9d13eb443088c8f25cdc39fca8e756f6","725d9be2fd48440256f4deb00649adffdbc5ecd282b09e89d4e200663792c34c","16d51f964ec125ad2024cf03f0af444b3bc3ec3614d9345cc54d09bab45c9a4c","ba601641fac98c229ccd4a303f747de376d761babb33229bb7153bed9356c9cc",{"version":"d2f7baf43dfa349d4010cbd9d64d84cdf3ec26c65fa5f44c8f74f052bedd0b49","affectsGlobalScope":true},"84e3bbd6f80983d468260fdbfeeb431cc81f7ea98d284d836e4d168e36875e86","0b85cb069d0e427ba946e5eb2d86ef65ffd19867042810516d16919f6c1a5aec","15c88bfd1b8dc7231ff828ae8df5d955bae5ebca4cf2bcb417af5821e52299ae","00c886d849a8a4b7ceb0a8a6c7a36b168a7a44b2f93fe30c6c30dae71c05709f","8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba","ef0e9372b2f8e0afcf521501c1d88a0a32274832bf542d902ac709a9a9699392","20a63906ba680dc1f9415834efe03d7c318da78ed265152b0aa12f9e0fea9c4e","641b9da0622e0225740b5a55f47af9f23f01bf8f4dcbfb81128c16b585900717","92ef6b9f7d41a76e092bd8aa875d5abd8db6068c0d65ef93639393a6f3c57088","aa92c6e109d0a690456d040b88ca231d5612c6ae77d9250a4286bf3a9d2d0bc6","39589f4379be9fc814b5f46f5f49b10a1b4a36f32699b5a209c376239115abc0","e24d0f10f33ed2b53f51bbc260889376113282adb687efdb1e7819338ba74899","5dac29b1f11fe79ef37a180a71926b933d2ae5b654d94eec2921881d66fa8ee2","8a8e1dc812fed250ea827fea7eee9855fa5dbcc337e8cf17056a07e4f3c82063","dd53e2dde3ca7541e2cd4778899807986de3e1de34a49238898e0e8e5f6fb22e","7bbb657ffe0c15fba4ec761bf9d7d3fffd75549ddf5fae2f822ff1f0713a8f8d","ad247139c7b21139a0ef6a0cabdc31bdcf4e56b4c47f9da76cbb9f1b647c0d14","6bf090484f8a15c92d719d46806f9da5927c9f10891c649da9b61bc9bf4a7ad4","4e15eb6c72547075f61cdf447cab0bae032ac8ed2da779dfe059a63f47198456","49961c21b5a72d8d0f9dc4790de331c4c4b43dd577bfae3920a7e40eacfdd191","c2e5f7b34c7d1c257a467d87cb44685c89a2940612816a9001a4201589c2b89f","69bc25843d67239e0bf0eda8aa5f7ba957549bbb7b923a855c816941f20d99ad","314896fb688d5e64ce7125aed9b5a101adf6fb65acf44b3c2f04aaa545568936","501c7fcdbf05156254f7aee8dcd84cd65421473feae0e26a849b66cde7f4fd91","9e790340a13027a1283e0e13c2c057c1d35e313c9387ae0e420dffdcefc997c2","6db9f64ea6999c94634baaa948246466c6c4e3e46d7410ec413d1cbbdb0c2fed","93e2317ab527e3cd0876ab6b44838876708295f4a63476895febbc1c0ad1c210","52702c2843c1a7d9aed010dd90d6e7543c55a03f857c1ddbf0f7fc0e61ddff76","4df3e32a6fd412f208151a389ea6b84e4a4a1269db3b4bfdc94f6738122feaa8","f07904824e33fc4f8a80139157091f848cde5b58d94639b3b306fa56d6fd15ef","2b7ffaf8581ada8f5560c57832315e176f35fe09483d5be73bb049d55b64c761","e3908488eaef57eb43b2e111e84b6fe71d53d2940c3d643a7472c8cc08a6ef5d","0f70d0bde6693fb569f7a93d40b53ca72d8b5bc1290da3bd75aabdd83d99ebbd","495580ddce7c0408099078d3e5f8c0094390cb153822fd65af851c440256c0cd","580a2be87b18995dd03a0369a450140144b3d3b3938a2fea98e5455688282ea6","b5aedd88da1fb0f65202a3eab3e8b25ce11c0279260b3b3100cf2a2df55c8c7d","6e3e500b9d1666c76ce70d68c10cf94abdeeab179e946242bdad11b678a5f557","578de45eae74c710bf9844ec7edd826ce0246327dc66bafdf5eac1ab02399cfd","9813974cbc8fb261ddfed74063ac1c474892043d74a559a4c185b08b3861f12a","1a22eef002bde659b3a0f21913e5d849e6f6a04f8597e1e5c23a994823d33af7","b63ad985ef9c4679f7ec46561067894369918aca0d8266da38af3ca7f0b8aa78","b234048fdacdab8a8af76cd9e1da7fafdb132a427db515a51474f1ae382353dc","0a69f2387d946843c727f655ddeb95ac7b4c4567007e5a0094586b6b9dff18fb","a12f021e504cfd4449a2ca2a57122eee77a45cc9dd5d80f9284d5c6077606b80","d01a662f57973835cc58d3bdde1adc7bbfead0dbbd8898012586fbbc9b349858","40af2044be77da3a0c0c28c320ab2541f4b45d0f0fc948f43ded9c634a79da4c","97475847a0a6c945b04f70f79d040508b373a32e5b9959400a98b5f41c851232","93488c27ee18d8ef4f49eea805ccc1e52b31cd8e56ebd553be83e41b15df481f","3e1fcdd7123aa5c39bcb0d106dd7ac74bad8b5ffdb45685c61baa52019ffa0f5","ef4b00a2eb3145aa70bb327a85d8eff7f4683c681b668a91f3278aaac9df4dd2","df652cf6f7971ca1bf1dd7da465f42b28ea36559009a08daf0948d68d7b7879d","401f29fefb0e952bb40b00040a1f24ba07b7092829ccbc4f3e70a07a1da2e63c","c6a95fe7eab227efc1deab623691339532797cd0460a841313bbff68b8fd98a4","8a5e63aabf9ae9aaed6085e4af6bed45e5e85ce30d8ed1608c14f1b20b29b7ec","178c66f9177264ae7368b75522233b1bde50162793dadad208d6d75ee5d843dc","90dd4cdf0c9c33e5351725226288c33816cd748b5dad52cb50d94b441398024e","4d270a5c575160d2c4a5e94b3dac821b8ca8ab618d2939c646f9d95eb2d10a31","7d874cfe2d3ff47adc80c140a9dde3ede2bdf41876d64cffbf082d6415b16f39","3dc6b113e09568d20795a032237255a0cc0666132ad2c6bf7de475cc04d8d2da","76939202c7b9bef1567fa37b619407c9b53dadd471f4b416a421d3fe08f457e0","21cff650a0d60b4d4fdf21a830358edda3236ec7e6153f7d95ec9dbd92e9059c","827d7ccf768cde965966689a5283c01b0ccff5aa581c33320fc44fcfc00f9eea","e69463fc48c0bf55977f35c729440ebccf6c9ee0321151a9f32299aaf3696440","d595b747c8eea8cbdf5fc2a45df609fa598a9e6f4de06780933157af87ec331d","b0d0df4c1efd16ba4dc38142107401fe57d544531a4cfe48ad7d21990f571c54","d5647918455ff4a74c3b4f98fc02a56b31e0023a4d77f6658aa87e916485f793","5dbce8c3a4e2062b8d2605c2a7e88394bade12445d3d0391c9cee75f5a63f05d","119a23c2c978bf1d13ad8ed3adca5a713d7140ac01c498245daaa9271dcf3d5b","de844d34a76e27bed8ee823a1b46feebf0acd5e2e9737fdee87f52b523790e09","4e3e5859b6592a4ccd270a5e93fed99ad09758c8e6396244376054e0e60fe5b8","bf566fae3e5b7975036b91c4974c891eca505c7fe6ec1f438709c07a5e9b20d9","15bb97585246dead03a754f3f7137fcd121cfd0ddb08e7f5e9db11d9bfe1d1b0","35ada29808981e035f58305eb900b6f566e699777372f60b4ab197185ce54c67","cb5915e5a3da2786cff0dc3de85f03b048198e8b010f519566c426cf06bb051d","8fd04d538962a689dbfe1f53b5d8245dd3afe03e2f53b878a721a65232bdf6e6","8d621f2eaf6126e62eb56ee1a9116e6dec7ab43d4f2146c39a046ac882976254","f94f34edbcee30d4d62aa763f482d59fa232978d35ae196dd45ea65883f9b4df","04e47b6301eb228df875add3ea94c4cd5ff448527056e677e72323d6bc0e52a1","89b404bc85198645ea12d2592de45c51249201e466a4ae79c9115657ead11b6f","2f09aa756aee85b1b16bed8dc409b475abc2096c0fe74c3bfa058bd7ed3b4731","f131f173601d04a7dc218c53838c72cd4b5bc78fabc06f788c97fc2bd75e3ac2","e8a29f573c0a60e911d591db5d398fb4479fb94dca719ea7aa669db612c80e3a","15bf2e6f073980b2d9cbc75147e76863b5b619941b3c6ae15b3384e671b6bd3b","3251fb1689e44258fe65a8081c3ddccf12aafe741f0459bd835cb1c30529a27f","c4fdbb256f278e73926cd9a3917d4f9ed7a7cd7487f532d83cd23f00c3771be3","c88948c4fa6ac299332a8d025d47e188a2be6b3db33872b5d4e57041a4625df7","1985d3e73fd606c764c73931400643ee0cc4d3f1267d0d4e1843c72b5dab5c26","33f5f51d37c2639507e2581f45c0423b6af0fee369edbc3fac0a29c79bf051bb","5d87067866bb19ffa693fc2e4633f1f257abec8aab95d8bc5a5171fe4171b008","52aa0730e032102bee71fb7cf50c5337628c7f15233e4f66d0373f0cfe44b303","d95dcb29b5dad217ecbf1795ef04f4a3edaa4f177d88d3a65122840aaa1a105f","f4553e051f230bed218bda9ffda0d6edb18cae53bd3a5458c298ea399aa9db44","e458d822394bb6d98c462f8fbcd63a70ee115790b8ec983a129c0be9f7e71eba","74114725ebd52a8d29e2f5edf7e273b8c713cb27d5b0266b12a7be8cf96146f3","70b34c8420d6226ed565d55f47fe04912d0ca0ad128825c5a06e018a3498db32","e4b4326b61261bf5ffd6de8b4825f00eb11ebb89a51bd92663dd6e660abf4210","83a7cfba7c10d3ac5f06776ca07bd131b893e7464da092b2a9eedb6cbb447993","8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","d8aab31ba8e618cc3eea10b0945de81cb93b7e8150a013a482332263b9305322","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","561eca7a381b96d6ccac6e4061e6d2ae53f5bc44203f3fd9f5b26864c32ae6e9","62ea38627e3ebab429f7616812a9394d327c2bc271003dfba985de9b4137369f","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"516a426e3960379f310107635b8f3a7e8c307c6c665080b128039d9299ec4087","affectsGlobalScope":true},"686e548ae30250d62532c8cacb43fccc922b693408371bd3503563c4a0f28eed","75bdc1b420f0ffc6cc6fd0b6694d89f5072bf755b4e6c7e65a2fda797ca0bb8a","13cc3979e1f548aacaa23911f2d6e69c1a2999266c4a1952806de1e9593bdaaa","96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","e5dd317ef2c7a2882b152337b03d592fafa8351b40351849a16a908b198bd3b5","fec943fdb3275eb6e006b35e04a8e2e99e9adf3f4b969ddf15315ac7575a93e4","675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8","fe4a2042d087990ebfc7dc0142d5aaf5a152e4baea86b45f283f103ec1e871ea","d70c026dd2eeaa974f430ea229230a1897fdb897dc74659deebe2afd4feeb08f","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6","6702a1cd8818cb22ee95c85dcf2c31c117bde892e1afd2bc254bd720f4c6263c","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","7a79ca84e4370ed2e1afaa99ff7d25194901916b7672e977d16f77af3b71342f","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","3cf0d343c2276842a5b617f22ba82af6322c7cfe8bb52238ffc0c491a3c21019","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9",{"version":"f2eff8704452659641164876c1ef0df4174659ce7311b0665798ea3f556fa9ad","affectsGlobalScope":true},"e8465811693dfe4e96ef2b3dffda539d6edfe896961b7af37b44db2c0e48532b","b018b6d2766bca990a7aaf5dc8cb741cb93d7c3ca10643fd996b24a42f298a26","cddf5c26907c0b8378bc05543161c11637b830da9fadf59e02a11e675d11e180","2a2e2c6463bcf3c59f31bc9ab4b6ef963bbf7dffb049cd017e2c1834e3adca63","209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05","6396a7a06f3ef0fc31a7c89330e015146b78a2256b030c698b6d404594c37b8f",{"version":"d93bdd7313bdc64d926cd1429bdb9a979037240e89995fddbc6817075bbfe502","affectsGlobalScope":true},"caa819c063a3e32303741ba22a134b4a9a98a7f8dc64f574f9d22eb78845e0dc","9c6b1825e26a38284f409378ff194eca46b40a659ca41169e0922fe18a996ad9","cba642d3e91880f63b2380330e7ac70e54c5c6b820e9bff3119d66cdf231b2d7","6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a","2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","429b6df7d7b94389bd42cfdf39bccea903acd3628498cec6172302801fbeac89","58a3914b1cce4560d9ad6eee2b716caaa030eda0a90b21ca2457ea9e2783eaa3","d2e1d889ca39ae18ce8f1d7f6e43873c61f4d3ddc96464caaca2397028eb4f59","a2289e2e21b5402112c5eb34d60880bbf703c48af56671503da93f67f3e8582f","026aa0540cf6376b64fff7c22f4dc127c2bbe7885daeabbc88f0a3513faaf78a","61a67fbe76e5940612ffa50d628aec4a45c5ab19f0066bfb0ba4fbffcc98af08","3034db2891e04de367126370bebec88ac3b4e3b1eb8b7dc30671ccddb717eed2","374a1e1d939333497efe1f68ce8be7bb9614a7031417eb947ac9c007d7d1e2a6","eec632398d8634f151c2d53596c28b223a25bbea092a925e58e88013e2397d7d","f0275f0d51c3cd4efc645d4406d8f9eed20041cd704f88b808fb1aaa14b40e10","5c4797c5bce623a1952d433288652323049138f87cef83f713e6f7393c65bf9e","ebf547cd75df3a8dc5fca9253d9b0bf2ff9eeb6634c13e1bf7aa7c4ec5c8d1a2","3c0678b3bc0f82209bb8ab1929ea8fee6051cf9d93e42cb66ef33f2e837a9e47","026bb98cbe6c0b2313db2ef02e8cc2d6b406365fc0ae096b6a085a89067623cb","abc433e910d0ba9817672bb6d28c7a5887c03adb4d6763c1e7729d6ba733f1c6","7338ef3b25ab8995a92f31357b5cbfb7833559542a294c66db0078e71175f1c8","f83b320cceccfc48457a818d18fc9a006ab18d0bdd727aa2c2e73dc1b4a45e98","24a09dc3e07d69b0a224dbd14b2994c40d1efd0954e759004b61b9e683dabe5f",{"version":"e9a9367c1c08a6d8d6ead5722bd49cbc6d4fb443854a31252bdb7d3faf4d697e","affectsGlobalScope":true},"67fc055eb86a0632e2e072838f889ffe1754083cb13c8c80a06a7d895d877aae","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","4006c872e38a2c4e09c593bc0cdd32b7b4f5c4843910bea0def631c483fff6c5","ab6aa3a65d473871ee093e3b7b71ed0f9c69e07d1d4295f45c9efd91a771241d","8e9c23ba78aabc2e0a27033f18737a6df754067731e69dc5f52823957d60a4b6","31c502014e5ba046d5cb060136929b73fd53f0f989aa37b2b0424644cb0d93ef","76232dbb982272b182a76ad8745a9b02724dc9896e2328ce360e2c56c64c9778","3833c70307dc3d2b46cb6f2a8b6a90e4d7e7367a21ab18c481d7de0909a43e67","f26c7e4aa5603123034d9ee4459f43d49daa3d96fdd12999d45d7fa16e584cfe","2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579","c6c1427ba1efa270964d61564a3d99b59c0865a51dd55e4beb9f50e5c9aa8b51","4116dff2582ecc8645c3a90d26707ec6fd9ede6631f63fb65f11d42806bb47f1","8486ee0cb2ef80c6555941e2e0d081b27e9a07eca9df720c99f001f5220f14b5","4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349","b90c59ac4682368a01c83881b814738eb151de8a58f52eb7edadea2bcffb11b9","8560a87b2e9f8e2c3808c8f6172c9b7eb6c9b08cb9f937db71c285ecf292c81d","ffe3931ff864f28d80ae2f33bd11123ad3d7bad9896b910a1e61504cc093e1f5","083c1bd82f8dc3a1ed6fc9e8eaddf141f7c05df418eca386598821e045253af9","274ebe605bd7f71ce161f9f5328febc7d547a2929f803f04b44ec4a7d8729517","6ca0207e70d985a24396583f55836b10dc181063ab6069733561bfde404d1bad","5908142efeaab38ffdf43927ee0af681ae77e0d7672b956dfb8b6c705dbfe106","f772b188b943549b5c5eb803133314b8aa7689eced80eed0b70e2f30ca07ab9c","0026b816ef05cfbf290e8585820eef0f13250438669107dfc44482bac007b14f","05d64cc1118031b29786632a9a0f6d7cf1dcacb303f27023a466cf3cdc860538","e0fff9119e1a5d2fdd46345734126cd6cb99c2d98a9debf0257047fe3937cc3f","d84398556ba4595ee6be554671da142cfe964cbdebb2f0c517a10f76f2b016c0","e275297155ec3251200abbb334c7f5641fecc68b2a9573e40eed50dff7584762","b2f006ee835f315d01c43c0f5d9e9ad78a5870b380899877b32a33078d065dbd","dee5d387e2e6f3015cbf91fc0c13ed6f016f9c5c1f2ad9c62602f4fd398fa83a","67f129ed8b372622ff36b8b10e39d03e09e363a5ff7821105f92f085b8d1ccba","721124f5db1f4a42da2308dfa1414d2e99055d2dfc59de7bf2e0b6ac64356c0e","0d7569149194d622212c21d5d162b0715d5a6ca764cebae7145fdbaff1e07311","cd74c8275483d3fe0d07a9b4bba28845a8a611f0aa399e961dbd40e5d46dd9ad","9fd94af6ff33bb25c014a4cc2dd9ffb54650176666b7831f1c85168784826ad4","a5ff9638738de5605b52e777ee4d27112ac6d7aaf6f2aa38c750edb8c7516ad3","4266ccd2cf1d6a281efd9c7ddf9efd7daecf76575364148bd233e18919cac3ed","bc81aff061c53a7140270555f4b22da4ecfe8601e8027cf5aa175fbdc7927c31","70e9a18da08294f75bf23e46c7d69e67634c0765d355887b9b41f0d959e1426e","d9f5e2cb6bce0d05a252e991b33e051f6385299b0dd18d842fc863b59173a18e","65dfa4bc49ccd1355789abb6ae215b302a5b050fdee9651124fe7e826f33113c"],"options":{"declaration":true,"declarationDir":"./types","declarationMap":true,"esModuleInterop":true,"importHelpers":true,"jsx":2,"module":99,"noFallthroughCasesInSwitch":true,"noImplicitAny":false,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./esm","removeComments":true,"rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":1},"fileIdsList":[[68],[70],[71,76],[72,80,81,88,97],[72,73,80,88],[74,104],[75,76,81,89],[76,97],[77,78,80,88],[78],[79,80],[80],[80,81,82,97,103],[81,82],[83,88,97,103],[80,81,83,84,88,97,100,103],[83,85,97,100,103],[68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110],[80,86],[87,103],[78,80,88,97],[89],[90],[70,91],[92,102],[93],[94],[80,95],[95,96,104,106],[80,97],[98],[99],[88,97,100],[101],[88,102],[94,103],[104],[97,105],[106],[107],[80,82,97,103,106,108],[97,109],[56,64,65],[56,61,65],[56,57],[56,62],[56,57,58,59,60,61],[56,57,58,59],[56,59,61,62,63],[56],[112],[112,113,114,115,116],[112,114],[83,111,119],[111,121],[80,83,103,111,123,124,125],[65],[83,111],[83,88,97,111,134],[80,97,111,135],[139,140],[137,138,139],[80,83,111,143,144],[120,144,145,147],[80,81,111,150],[81,111],[153,154,156,166,174],[156,167],[167,168,169,170,171],[167,174],[167],[154,167],[153,155,162,172,174,175],[176,182],[153,161,162,167,174,175],[153,154,162,175,176],[166,172,177,181,183,185,216,240],[154,173],[154,156,157,158,159,160,164,165,173,174],[154,172,174],[154],[154,173,174],[174],[153,163,174],[184],[153,162,174,175,176],[153,155,162,174],[153,160,174,175],[161,162,175,178,179,180],[175],[153,161,174,175],[162,167],[153,161,162,174,175],[153,174,175],[153,154,158,161,162,174,175,222],[162,217],[167,174,175],[162,174],[160,161,162,175],[162,167,174],[153,174],[162,174,175],[163,217,218,219,220,221,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239],[153,160],[162],[162,175],[153,161,162,163,164,172,174,175],[186,187,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,215],[164,186],[153,164,186],[186,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214],[162,163,172,174,186],[83,103,111],[80,83,85,88,97,103,111],[245],[246],[252,254],[248,249],[248,249,250,251],[253],[111],[80,111],[262,264,265,266,267,268,269,270,271,272,273,274],[262,263,265,266,267,268,269,270,271,272,273,274],[263,264,265,266,267,268,269,270,271,272,273,274],[262,263,264,266,267,268,269,270,271,272,273,274],[262,263,264,265,267,268,269,270,271,272,273,274],[262,263,264,265,266,268,269,270,271,272,273,274],[262,263,264,265,266,267,269,270,271,272,273,274],[262,263,264,265,266,267,268,270,271,272,273,274],[262,263,264,265,266,267,268,269,271,272,273,274],[262,263,264,265,266,267,268,269,270,272,273,274],[262,263,264,265,266,267,268,269,270,271,273,274],[262,263,264,265,266,267,268,269,270,271,272,274],[262,263,264,265,266,267,268,269,270,271,272,273],[277],[103,111],[288],[72,111],[80,97,111],[83,97,111],[81,111,151],[294,295,302],[294,302],[302],[296,297,298,299,300,301],[83,111,146],[65,304],[303],[97,111],[80,88,97,111,133],[71,81,83,97,111,130],[311],[315],[317],[111,339],[71,83,88,100,139,334,336,337,338],[111,321,322,323,324,325,326,327,328,329,330,331],[320,321,330],[321,330],[306,320,321,330],[321],[76,320,330],[320,321,322,323,324,325,326,327,328,329,331],[76,111,313,315,316,319,332],[80,83,85,88,103,111],[80,83,85,88,97,100,103,109,111],[343],[138,336],[336],[138,334,335],[59],[59,61,62,63]],"referencedMap":[[68,1],[70,2],[71,3],[72,4],[73,5],[74,6],[75,7],[76,8],[77,9],[78,10],[79,11],[80,12],[81,13],[82,14],[83,15],[84,16],[85,17],[111,18],[86,19],[87,20],[88,21],[89,22],[90,23],[91,24],[92,25],[93,26],[94,27],[95,28],[96,29],[97,30],[98,31],[99,32],[100,33],[101,34],[102,35],[103,36],[104,37],[105,38],[106,39],[107,40],[108,41],[109,42],[66,43],[67,44],[58,45],[63,46],[62,47],[60,48],[64,49],[61,50],[57,50],[59,50],[114,51],[117,52],[113,51],[115,53],[116,51],[120,54],[122,55],[126,56],[127,57],[119,58],[135,59],[136,60],[141,61],[140,62],[145,63],[148,64],[151,65],[152,66],[167,67],[171,68],[172,69],[169,70],[170,71],[168,72],[176,73],[183,74],[182,75],[177,76],[241,77],[174,78],[166,79],[173,80],[156,81],[158,82],[165,83],[159,83],[164,84],[185,85],[184,86],[175,87],[161,88],[181,89],[179,90],[178,90],[162,91],[180,92],[163,93],[237,70],[230,94],[223,95],[221,96],[231,97],[234,83],[224,98],[238,99],[239,100],[218,101],[219,102],[240,103],[220,96],[217,104],[232,90],[233,97],[225,105],[226,106],[235,83],[236,106],[227,102],[228,94],[229,101],[186,107],[216,108],[188,109],[196,109],[193,109],[207,109],[205,109],[198,109],[192,109],[190,109],[214,109],[201,109],[203,110],[199,109],[204,110],[212,109],[200,109],[210,109],[195,109],[191,110],[208,109],[206,109],[197,109],[213,109],[189,109],[202,109],[209,109],[194,109],[211,109],[215,111],[187,112],[244,113],[243,114],[246,115],[247,116],[255,117],[250,118],[252,119],[251,118],[254,120],[260,121],[261,122],[263,123],[264,124],[262,125],[265,126],[266,127],[267,128],[268,129],[269,130],[270,131],[271,132],[272,133],[273,134],[274,135],[278,136],[280,66],[283,137],[284,121],[289,138],[290,139],[292,140],[125,141],[293,142],[296,143],[297,144],[298,143],[295,145],[299,145],[302,146],[300,144],[294,145],[301,145],[147,147],[305,148],[304,149],[133,150],[134,151],[311,152],[312,153],[316,154],[318,155],[340,156],[339,157],[332,158],[331,159],[322,160],[323,161],[324,161],[325,160],[326,160],[327,160],[328,162],[321,163],[329,159],[330,164],[333,165],[341,166],[342,167],[344,168],[345,140],[123,12],[334,169],[337,170],[336,171]],"exportedModulesMap":[[68,1],[70,2],[71,3],[72,4],[73,5],[74,6],[75,7],[76,8],[77,9],[78,10],[79,11],[80,12],[81,13],[82,14],[83,15],[84,16],[85,17],[111,18],[86,19],[87,20],[88,21],[89,22],[90,23],[91,24],[92,25],[93,26],[94,27],[95,28],[96,29],[97,30],[98,31],[99,32],[100,33],[101,34],[102,35],[103,36],[104,37],[105,38],[106,39],[107,40],[108,41],[109,42],[63,172],[62,172],[60,172],[64,173],[114,51],[117,52],[113,51],[115,53],[116,51],[120,54],[122,55],[126,56],[127,57],[119,58],[135,59],[136,60],[141,61],[140,62],[145,63],[148,64],[151,65],[152,66],[167,67],[171,68],[172,69],[169,70],[170,71],[168,72],[176,73],[183,74],[182,75],[177,76],[241,77],[174,78],[166,79],[173,80],[156,81],[158,82],[165,83],[159,83],[164,84],[185,85],[184,86],[175,87],[161,88],[181,89],[179,90],[178,90],[162,91],[180,92],[163,93],[237,70],[230,94],[223,95],[221,96],[231,97],[234,83],[224,98],[238,99],[239,100],[218,101],[219,102],[240,103],[220,96],[217,104],[232,90],[233,97],[225,105],[226,106],[235,83],[236,106],[227,102],[228,94],[229,101],[186,107],[216,108],[188,109],[196,109],[193,109],[207,109],[205,109],[198,109],[192,109],[190,109],[214,109],[201,109],[203,110],[199,109],[204,110],[212,109],[200,109],[210,109],[195,109],[191,110],[208,109],[206,109],[197,109],[213,109],[189,109],[202,109],[209,109],[194,109],[211,109],[215,111],[187,112],[244,113],[243,114],[246,115],[247,116],[255,117],[250,118],[252,119],[251,118],[254,120],[260,121],[261,122],[263,123],[264,124],[262,125],[265,126],[266,127],[267,128],[268,129],[269,130],[270,131],[271,132],[272,133],[273,134],[274,135],[278,136],[280,66],[283,137],[284,121],[289,138],[290,139],[292,140],[125,141],[293,142],[296,143],[297,144],[298,143],[295,145],[299,145],[302,146],[300,144],[294,145],[301,145],[147,147],[305,148],[304,149],[133,150],[134,151],[311,152],[312,153],[316,154],[318,155],[340,156],[339,157],[332,158],[331,159],[322,160],[323,161],[324,161],[325,160],[326,160],[327,160],[328,162],[321,163],[329,159],[330,164],[333,165],[341,166],[342,167],[344,168],[345,140],[123,12],[334,169],[337,170],[336,171]],"semanticDiagnosticsPerFile":[68,70,71,72,73,74,75,76,77,78,79,80,81,82,69,110,83,84,85,111,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,66,67,58,63,62,60,64,61,57,59,114,112,117,113,115,116,118,120,122,121,126,127,65,128,129,119,130,131,132,135,136,141,142,137,140,139,145,148,149,151,152,167,171,172,169,170,168,176,183,182,177,241,155,174,222,160,166,157,173,156,158,165,159,154,164,185,184,153,175,161,181,179,178,162,180,163,237,230,223,221,231,234,224,238,239,218,219,240,220,217,232,233,225,226,235,236,227,228,229,186,216,188,196,193,207,205,198,192,190,214,201,203,199,204,212,200,210,195,191,208,206,197,213,189,202,209,194,211,215,187,242,124,244,243,245,246,247,255,248,250,252,251,249,254,253,256,257,138,258,259,260,261,263,264,262,265,266,267,268,269,270,271,272,273,274,275,276,278,146,150,279,280,281,282,283,284,285,286,287,289,290,291,144,143,292,125,288,293,296,297,298,295,299,302,300,294,301,147,305,304,303,306,133,134,307,308,309,311,312,313,314,316,277,318,317,340,338,339,332,331,322,323,324,325,326,327,328,321,329,330,320,333,341,342,343,344,345,335,319,310,123,334,337,336,315,56,11,12,14,13,2,15,16,17,18,19,20,21,22,3,4,26,23,24,25,27,28,29,5,30,31,32,33,6,34,35,36,37,7,38,43,44,39,40,41,42,8,48,45,46,47,49,9,50,51,52,53,54,1,10,55]},"version":"4.8.3"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=filter.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.spec.d.ts","sourceRoot":"","sources":["../../../src/__tests__/filter.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=query-optimizer.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-optimizer.spec.d.ts","sourceRoot":"","sources":["../../../src/__tests__/query-optimizer.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export default function clone(obj: any): any;
2
+ //# sourceMappingURL=clone.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clone.d.ts","sourceRoot":"","sources":["../../src/clone.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,GAAG,KAAA,OAiBhC"}
@@ -0,0 +1,46 @@
1
+ declare const FilterBuilder_base: {
2
+ new (obj?: {
3
+ filterTree?: any;
4
+ invalidArguments?: any;
5
+ }): {
6
+ [x: string]: any;
7
+ filterTree: any;
8
+ invalidArguments: any;
9
+ eq(...args: any[]): any;
10
+ ne(...args: any[]): any;
11
+ ge(...args: any[]): any;
12
+ gt(...args: any[]): any;
13
+ le(...args: any[]): any;
14
+ lt(...args: any[]): any;
15
+ isNotEmpty(field: any): any;
16
+ isEmpty(field: any): any;
17
+ startsWith(...args: any[]): any;
18
+ endsWith(...args: any[]): any;
19
+ contains(...args: any[]): any;
20
+ hasSome(...args: any[]): any;
21
+ hasAll(...args: any[]): any;
22
+ or(orQuery: any): any;
23
+ and(andQuery: any): any;
24
+ not(notQuery: any): any;
25
+ between(field: any, rangeStart: any, rangeEnd: any): any;
26
+ getFilterModel(): any;
27
+ setFilterModel(filterModel: any): any;
28
+ _binaryAnd(filterOperatorSymbol: any, operatorName: any, args: any): any;
29
+ _AndLogicalEquivalence(filterOperatorSymbol: any, operatorName: any, args: any): any;
30
+ _AndStringOperand(filterOperatorName: any, operatorName: any, args: any): any;
31
+ _AndSetOperand(filterOperatorName: any, operatorName: any, args: any): any;
32
+ _makeNewFilter(field: any, filterOperatorName: any, operand: any): any;
33
+ _buildFilter(field: any, filterOperatorName: any, operand: any): {};
34
+ _replaceRefs(operand: any): any;
35
+ _copy(filterTree: any, invalidArguments: any): any;
36
+ _filterValidator(filterOperatorName: any): import("./validator").Validator;
37
+ };
38
+ [x: string]: any;
39
+ };
40
+ export declare class FilterBuilder extends FilterBuilder_base {
41
+ get constructorName(): string;
42
+ _build(): any;
43
+ }
44
+ export declare function filterBuilder(): FilterBuilder;
45
+ export default filterBuilder;
46
+ //# sourceMappingURL=filter-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-builder.d.ts","sourceRoot":"","sources":["../../src/filter-builder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,qBAAa,aAAc,SAAQ,kBAAa;IAC9C,IAAI,eAAe,WAElB;IAED,MAAM;CAGP;AAED,wBAAgB,aAAa,kBAE5B;AAED,eAAe,aAAa,CAAA"}
@@ -0,0 +1,42 @@
1
+ import { Validator } from './validator';
2
+ declare const filterMixin: (Base?: any) => {
3
+ new (obj?: {
4
+ filterTree?;
5
+ invalidArguments?;
6
+ }): {
7
+ [x: string]: any;
8
+ filterTree: any;
9
+ invalidArguments: any;
10
+ eq(...args: any[]): any;
11
+ ne(...args: any[]): any;
12
+ ge(...args: any[]): any;
13
+ gt(...args: any[]): any;
14
+ le(...args: any[]): any;
15
+ lt(...args: any[]): any;
16
+ isNotEmpty(field: any): any;
17
+ isEmpty(field: any): any;
18
+ startsWith(...args: any[]): any;
19
+ endsWith(...args: any[]): any;
20
+ contains(...args: any[]): any;
21
+ hasSome(...args: any[]): any;
22
+ hasAll(...args: any[]): any;
23
+ or(orQuery: any): any;
24
+ and(andQuery: any): any;
25
+ not(notQuery: any): any;
26
+ between(field: any, rangeStart: any, rangeEnd: any): any;
27
+ getFilterModel(): any;
28
+ setFilterModel(filterModel: any): any;
29
+ _binaryAnd(filterOperatorSymbol: any, operatorName: any, args: any): any;
30
+ _AndLogicalEquivalence(filterOperatorSymbol: any, operatorName: any, args: any): any;
31
+ _AndStringOperand(filterOperatorName: any, operatorName: any, args: any): any;
32
+ _AndSetOperand(filterOperatorName: any, operatorName: any, args: any): any;
33
+ _makeNewFilter(field: any, filterOperatorName: any, operand: any): any;
34
+ _buildFilter(field: any, filterOperatorName: any, operand: any): {};
35
+ _replaceRefs(operand: any): any;
36
+ _copy(filterTree: any, invalidArguments: any): any;
37
+ _filterValidator(filterOperatorName: any): Validator;
38
+ };
39
+ [x: string]: any;
40
+ };
41
+ export default filterMixin;
42
+ //# sourceMappingURL=filter-mixin.d.ts.map