{"_id":"algolia-search-builder","_rev":"5-3c3f30467b472939a0866e8e9c5fb3d3","name":"algolia-search-builder","dist-tags":{"latest":"1.1.2"},"versions":{"0.0.1":{"name":"algolia-search-builder","version":"0.0.1","description":"A query parser for algolia filters","repository":{"url":"git+https://github.com/khaledosama999/algolia-filter-query-builder.git"},"keywords":["algolia","search","query","filter","parser","builder","ORM","ODM"],"main":"./build/index.js","module":"./build/index.js","types":"./build/index.d.ts","source":"./src/index.ts","scripts":{"test":"mocha -r ts-node/register tests/**/*.spec.ts","build":"rollup -c","git-cz":"git-cz","husky":"husky init","_postinstall":"husky install","prepublishOnly":"pinst --disable","postpublish":"pinst --enable","lint":"eslint","release:major":"changelog -M && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version major","release:minor":"changelog -m && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version minor","release:patch":"changelog -p && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version patch"},"author":{"name":"khaled osama","email":"khaledosama52@gmail.com"},"contributors":[{"name":"Khaled osama","email":"khaledosama999","url":"https://github.com/khaledosama999"}],"license":"ISC","devDependencies":{"@rollup/plugin-typescript":"^8.2.0","@types/chai":"^4.2.15","@types/mocha":"^8.2.1","@typescript-eslint/eslint-plugin":"^4.15.2","@typescript-eslint/parser":"^4.15.2","chai":"^4.3.0","commitizen":"^4.2.3","cz-conventional-changelog":"^3.3.0","eslint":"^7.20.0","eslint-config-airbnb-base":"^14.2.1","eslint-plugin-import":"^2.22.1","generate-changelog":"^1.8.0","husky":"^5.1.1","mocha":"^8.3.0","pinst":"^2.1.6","rollup":"^2.41.0","ts-node":"^9.1.1","typescript":"^4.1.5"},"husky":{"hooks":{"pre-commit":"npm test && npm run lint","prepare-commit-msg":"exec < /dev/tty && git cz --hook || true"}},"config":{"commitizen":{"path":"./node_modules/cz-conventional-changelog"}},"gitHead":"e81838b521db38c8c06c1c5369ce2c18ac616f1d","bugs":{"url":"https://github.com/khaledosama999/algolia-filter-query-builder/issues"},"homepage":"https://github.com/khaledosama999/algolia-filter-query-builder#readme","_id":"algolia-search-builder@0.0.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-7hgt+u/qiLm9HhUB971FS2h1Uw7jOOY6gSQGNN0wk84usklUpdqRm5qGz0wN1kiHiPaTcK7TbJpYaCY8B1xq4Q==","shasum":"3d1ddea1dd7c28f37567e90043757499d439b784","tarball":"https://registry.npmjs.org/algolia-search-builder/-/algolia-search-builder-0.0.1.tgz","fileCount":11,"unpackedSize":33321,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTS+hCRA9TVsSAnZWagAA3S8P/j17IVQDtd7eIvi06i3z\nF0S1zZ+BXnu+B8HcEYdSr+weBwAlgbf+d2HTfDJzntSE3RWV2+qdt0dauTO3\nOCAUFXJTPdzYsw0cufU5EZcDcVsvAQrStroUFgm23jDpwyDZZr3Dlsf6XYDZ\nLyqG4w5/zssXS/vfUjMcYukSOuFnuuvMKiOjlXiZlZewPsIGP3rJkt/PN60B\nJidNexkPCM6Pmxz5gP3ls2fYah8Z0Ni6AQvn8BPyNPcBRCGnNbV4iNDrWpq/\ncNBpr88+nROc8ed59IxQynrq8vCeo4MVe4O8Uv9nEnrh3t70Kwea4RhVcLDy\nQgDeuDHjaB+Ugmo3xbUPhZx4YB5PNC45nuRdZ7YX2ZjmdPu5oHPy71VrkS5d\nOZWwvdq5I1SQMDBeE2702cTqTzVZmLAgWQr/QHnIvayx2oypSpMDCGUR9LMN\nlZe5S9AcZJFEsNa4B2/uoInb/GXl2bWmtmSL6QO1stITgurJI4H+PKgeh2gx\n74vXIA7ZHH1UDv+Zb0zwPULwmCPd+fA/5VF6blF6QmxMfjzk+E/ygT/mYgCZ\nsgj2fU+SZYAgqV63oks4XQGDOupGjraZpIMChgST0ze2AaejGnsTKG7RJsTQ\nHJCKIneQZjRM/Utd+FAhlztw/0D4WRa3kMbkWzwmmafwryRZv3gH3DdV9gKR\nQhWb\r\n=CTTk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDZ6mHKYXksjBljfoNKGI5XTncjFrZx884Lbuq7HY+4vQIhANqcLF0vWva3ZwX/xnu3bYVNCaYxOCIYuoTgUfyfNjbd"}]},"_npmUser":{"name":"khaledosama","email":"khaledosama52@gmail.com"},"directories":{},"maintainers":[{"name":"khaledosama","email":"khaledosama52@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/algolia-search-builder_0.0.1_1615671201019_0.8570341802633343"},"_hasShrinkwrap":false},"1.0.0":{"name":"algolia-search-builder","version":"1.0.0","description":"A query parser for algolia filters","repository":{"url":"git+https://github.com/khaledosama999/algolia-filter-query-builder.git"},"keywords":["algolia","search","query","filter","parser","builder","ORM","ODM"],"main":"./build/index.js","module":"./build/index.js","types":"./build/index.d.ts","source":"./src/index.ts","scripts":{"test":"mocha -r ts-node/register tests/**/*.spec.ts","build":"rollup -c","git-cz":"git-cz","husky":"husky init","_postinstall":"husky install","prepublishOnly":"pinst --disable","postpublish":"pinst --enable","lint":"eslint","release:major":"changelog -M && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version major","release:minor":"changelog -m && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version minor","release:patch":"changelog -p && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version patch"},"author":{"name":"khaled osama","email":"khaledosama52@gmail.com"},"contributors":[{"name":"Khaled osama","email":"khaledosama999","url":"https://github.com/khaledosama999"}],"license":"ISC","devDependencies":{"@rollup/plugin-typescript":"^8.2.0","@types/chai":"^4.2.15","@types/mocha":"^8.2.1","@typescript-eslint/eslint-plugin":"^4.15.2","@typescript-eslint/parser":"^4.15.2","chai":"^4.3.0","commitizen":"^4.2.3","cz-conventional-changelog":"^3.3.0","eslint":"^7.20.0","eslint-config-airbnb-base":"^14.2.1","eslint-plugin-import":"^2.22.1","generate-changelog":"^1.8.0","husky":"^5.1.1","mocha":"^8.3.0","pinst":"^2.1.6","rollup":"^2.41.0","ts-node":"^9.1.1","typescript":"^4.1.5"},"husky":{"hooks":{"pre-commit":"npm test && npm run lint","prepare-commit-msg":"exec < /dev/tty && git cz --hook || true"}},"config":{"commitizen":{"path":"./node_modules/cz-conventional-changelog"}},"gitHead":"9a2dddb69fb1385576c080394ac8c70dd6ff1928","bugs":{"url":"https://github.com/khaledosama999/algolia-filter-query-builder/issues"},"homepage":"https://github.com/khaledosama999/algolia-filter-query-builder#readme","_id":"algolia-search-builder@1.0.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-k47O/2RwU7tfOyqKYqlUsnOrNN9/0KWdn79F2sGhTq62so0I6gOyNb6nNselcPp1bGm8GJWbCE4Q3wwQ+bZn1A==","shasum":"70f3e786dddfdbd9a4ec4d36f56bb0701a52759f","tarball":"https://registry.npmjs.org/algolia-search-builder/-/algolia-search-builder-1.0.0.tgz","fileCount":47,"unpackedSize":47117,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXhFzCRA9TVsSAnZWagAAAeAP/ihOC3W6E9LTpbnY+m48\nKW534ao+P3+jy/frt7zTv5GUowk8PmVwKNnadpxtuJv+yEp7fFBDYUwbspu1\n8JNChoFGUxEdqR0YTlpK2uduJ+ncFCV1Z3i9zrnOzRpFzSE6+ftPGeeHYmfU\n2LG7KkgLTH+tEZibY/snmAEWIwT0oKHPUd5Z8nb8XXTOBzPxD25dm9QPt/yw\nfItzvPiWEAc07nI6XXDMxwMEJzgjxYTOe4vL41bZTNx2ubi0msm1rLPDHCQh\nffrlN4ufyYgFpC+mCeZ6mz1dz01jQW94SLL1gkfhNvA2wzs13bEvFLQyBpaF\n8NBwOtQsp3pwm/9Ldtkh88fwvMV1CChIG6dNIkrV4pQF/lNzdU2FcrSd7A3+\nm9qWI46ubFENHOYdi1zWUWpNy9sJnvIw/4Ud74ara8iqDakZwgblpJLxR1cC\n5hFwZgWCV/jvD1UpD0CDv7note8VJLPqdVC9AU0ZClIsTPLJTL7hon1R44ie\nLqkhxAQH+CbaTfvBNJFvBgocl6tG5Kul9q6dQ5rBjCA4y1B8WiYilR0Usbqm\nUSF5vmR81aaYaqRXkGv8iZKqjp74LW7XMvyW0EFFmJF7f8GilmMYjDE2KiBz\nOyge1EioPYTS96O8WI5nP/0RxBTvmQK2QCrH5wNf4LcmU4Vz8cNN436rxQAa\nm2cy\r\n=qWZH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGEFH7RdRVYD5Sok77V8WoWdynsxB6m8t2OM8OVUaK2LAiAM8LkvV4GK1tdX8jW6ovwsDdM/mkwA4S+1johlC/houA=="}]},"_npmUser":{"name":"khaledosama","email":"khaledosama52@gmail.com"},"directories":{},"maintainers":[{"name":"khaledosama","email":"khaledosama52@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/algolia-search-builder_1.0.0_1616777586907_0.9742916832553712"},"_hasShrinkwrap":false},"1.1.0":{"name":"algolia-search-builder","version":"1.1.0","description":"A query parser for algolia filters","repository":{"url":"git+https://github.com/khaledosama999/algolia-filter-query-builder.git"},"keywords":["algolia","search","query","filter","parser","builder","ORM","ODM"],"main":"./build/index.js","module":"./build/index.js","types":"./build/index.d.ts","source":"./src/index.ts","scripts":{"test":"mocha -r ts-node/register tests/**/*.spec.ts","build":"rollup -c","git-cz":"git-cz","husky":"husky init","_postinstall":"husky install","prepublishOnly":"pinst --disable","postpublish":"pinst --enable","lint":"eslint","release:major":"changelog -M && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version major","release:minor":"changelog -m && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version minor","release:patch":"changelog -p && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version patch"},"author":{"name":"khaled osama","email":"khaledosama52@gmail.com"},"contributors":[{"name":"Khaled osama","email":"khaledosama999","url":"https://github.com/khaledosama999"}],"license":"ISC","devDependencies":{"@rollup/plugin-typescript":"^8.2.0","@types/chai":"^4.2.15","@types/mocha":"^8.2.1","@typescript-eslint/eslint-plugin":"^4.15.2","@typescript-eslint/parser":"^4.15.2","chai":"^4.3.0","commitizen":"^4.2.3","cz-conventional-changelog":"^3.3.0","eslint":"^7.20.0","eslint-config-airbnb-base":"^14.2.1","eslint-plugin-import":"^2.22.1","generate-changelog":"^1.8.0","husky":"^5.1.1","mocha":"^8.3.0","pinst":"^2.1.6","rollup":"^2.41.0","ts-node":"^9.1.1","typescript":"^4.1.5"},"husky":{"hooks":{"pre-commit":"npm test && npm run lint","prepare-commit-msg":"exec < /dev/tty && git cz --hook || true"}},"config":{"commitizen":{"path":"./node_modules/cz-conventional-changelog"}},"gitHead":"8c488020286b46838b15b0a8dc274bf3ef97cece","bugs":{"url":"https://github.com/khaledosama999/algolia-filter-query-builder/issues"},"homepage":"https://github.com/khaledosama999/algolia-filter-query-builder#readme","_id":"algolia-search-builder@1.1.0","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ZuyrT1dU99QeTlm7N1+pxGeZ17g3GIauvm+27aiGyDEs4ZETKiXFzVGnR71s+iWf+QoZOJsIGe5RiJqsrBJkwg==","shasum":"042df2b7d87e0cd9b0859b75ad491382088ce2e1","tarball":"https://registry.npmjs.org/algolia-search-builder/-/algolia-search-builder-1.1.0.tgz","fileCount":53,"unpackedSize":59702,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYJM6CRA9TVsSAnZWagAAuPYQAIRhGx/J0WA8X92Q9/kf\nQ+X1MAlcevbejKwMTJJ0dT0jmr/xzQ5PcRVQ66U68K9zlM/sEYRCU/rypTRL\nh50uQdpDrqOqYuzU0MuCJSzU1r6VwcyGCHGb86XwARkHsJY1UYiBWL5uIDR/\nEC9ShjV7f2jk+bA3IoQQBAI2toRxUPec5/dIeJdMeB70zggaSw5xPjBq+KLh\ns1W5UY+4FpwQR0Ik8dhfS2GZ+GCN5+2whXDyKnZJ8GqxvSgvvy7o7bQLDQsj\nHiZt1Fovt6ZcKi6a2Mx5e2LhIJdkc0XvgA5ESEbTJpER9SmXe1HZJ90ter8e\ngX+Xg3DoKxbKJGPMcRLqn2K5paiEoplSGcy+i3MrSv7b1Bdf9iMIlbIF4OeX\nqKaA5PLVe1ZHMefoGG9tb+hkufHVOZ1d8XpnvskYfsRH6W7adjpcyiF8J3DM\nWgKmi8+ZGIIB7V+JzrURynbcW3YLIghmhQtJNHRyrVizU88/22LHui9VsBrE\nuXsLlxu8iqixhINmibONHmhhhlgyU7+7Kouv4MPlCqtaKwu1z2RRe08iiNoi\nv0LAxuX/Hhfm945KyBWyKGy6Fo4xjlQMgjq+uumydfX9D/ajKGp4aaHzBQjp\nObB4oRs8v0S7wcdgSRvN2i+wYau8h0EorY5e8S9NtcMPXYp6UOU2hgxlXg5U\nIk3E\r\n=i1Hd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCOKaNQTrq3pUhmnComlGuBInkTbO0tEthDGBws0N5KDQIhAJNTPtzgIj//uK6TviL0hO2HhOX9aiCbJXCATAjZEdFU"}]},"_npmUser":{"name":"khaledosama","email":"khaledosama52@gmail.com"},"directories":{},"maintainers":[{"name":"khaledosama","email":"khaledosama52@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/algolia-search-builder_1.1.0_1616941882235_0.018976131714374844"},"_hasShrinkwrap":false},"1.1.1":{"name":"algolia-search-builder","version":"1.1.1","description":"A query parser for algolia filters","repository":{"url":"git+https://github.com/khaledosama999/algolia-filter-query-builder.git"},"keywords":["algolia","search","query","filter","parser","builder","ORM","ODM"],"main":"./build/index.js","module":"./build/index.js","types":"./build/index.d.ts","source":"./src/index.ts","scripts":{"test":"mocha -r ts-node/register tests/**/*.spec.ts","build":"rollup -c","git-cz":"git-cz","husky":"husky init","_postinstall":"husky install","prepublishOnly":"pinst --disable","postpublish":"pinst --enable","lint":"eslint","release:major":"changelog -M && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version major","release:minor":"changelog -m && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version minor","release:patch":"changelog -p && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version patch"},"author":{"name":"khaled osama","email":"khaledosama52@gmail.com"},"contributors":[{"name":"Khaled osama","email":"khaledosama999","url":"https://github.com/khaledosama999"}],"license":"ISC","devDependencies":{"@rollup/plugin-typescript":"^8.2.0","@types/chai":"^4.2.15","@types/mocha":"^8.2.1","@typescript-eslint/eslint-plugin":"^4.15.2","@typescript-eslint/parser":"^4.15.2","chai":"^4.3.0","commitizen":"^4.2.3","cz-conventional-changelog":"^3.3.0","eslint":"^7.20.0","eslint-config-airbnb-base":"^14.2.1","eslint-plugin-import":"^2.22.1","generate-changelog":"^1.8.0","husky":"^5.1.1","mocha":"^8.3.0","pinst":"^2.1.6","rollup":"^2.41.0","rollup-plugin-uglify":"^6.0.4","ts-node":"^9.1.1","typescript":"^4.1.5"},"husky":{"hooks":{"pre-commit":"npm test && npm run lint","prepare-commit-msg":"exec < /dev/tty && git cz --hook || true"}},"config":{"commitizen":{"path":"./node_modules/cz-conventional-changelog"}},"gitHead":"a7d492b749b3da1ce5a03aa3675d3253af9d3915","bugs":{"url":"https://github.com/khaledosama999/algolia-filter-query-builder/issues"},"homepage":"https://github.com/khaledosama999/algolia-filter-query-builder#readme","_id":"algolia-search-builder@1.1.1","_nodeVersion":"14.16.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Gqb2rpluph1T9CyqtVyrZpOi/MY+v3iy8BcNs1M71ZP+1NMdPw7YJqip1IaByTo3AaKMfK+pM+LNO1MHQWPHQg==","shasum":"d9d84ae683efbb68203a31fc009d10af44fe2aee","tarball":"https://registry.npmjs.org/algolia-search-builder/-/algolia-search-builder-1.1.1.tgz","fileCount":53,"unpackedSize":52007,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYeayCRA9TVsSAnZWagAA8UUP/1Fr3TMqx5Zzc+7VWcM8\nc6UnPUSWTMJDzI5mQsMm1ff7xQSLHMlFZOc4jm61J2M3IPu1cq34qsLDwbAl\nWStbfGk6QYykVxPboO0Wqp/DOZ6PC+rVN4qBbgbadzRyB9ZuMwSPhQAThaaM\nlXT2JYrpVhcFqIQ7cBuuQnakP3+FOfWtKvn/hN9oLnMhAyuzNB9GRb2FVUny\n3OdS+NUAmiGdqTTDAiv9f2hFXKM/tpHYYpibzD4aphFBufCsNhuByBqg5Xvo\neD8ioCdaIg22A+FavO6bqshO7+/y/XhC762kurIPGD+ycoZipqv33dKCTuO2\nPNWXpImUJO8CgtJ9CubpUCTQhJwlJV/8Kx7uJAR/jp8sfY+nFFnwrWoDRneP\nascVc04ZePtBtnuWe2T2p7v6knvLomrmIhAu+c301bbxWXhqmAs16zz2DtFP\ncP+3RsGRIWs2R4YYQ/5agqNiSxLnSoiCvxvafbj7l+b1he4b4CZmLDYpf1qH\nlrLXawclMWqi3ETkhum3HCDbuqVrTWMkdwRtwx/0C3JJoVBmmjbSYhrqpZwM\nW0oFnmCUi/s4YiBwDoe+/JvfD74Sp/TSJpR35PcwyNvapTdS+GEmOqdZht0P\nDlt5xQophs2fVhgVuIR/smNWi+Syg+MYAtuZir2Ipb+ux0h5uUi+fSK83Ql9\n34Lr\r\n=K34N\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCFPQAqgv4IWXwP8kgipIbnajnf/gW/fbRICiOgrxnVGAIgU4Mbg6lLwLBzTAtPdiN26wyP4DD1zkN6m39uO+14PSc="}]},"_npmUser":{"name":"khaledosama","email":"khaledosama52@gmail.com"},"directories":{},"maintainers":[{"name":"khaledosama","email":"khaledosama52@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/algolia-search-builder_1.1.1_1617028785966_0.23227357822999295"},"_hasShrinkwrap":false},"1.1.2":{"name":"algolia-search-builder","version":"1.1.2","description":"A query parser for algolia filters","repository":{"url":"git+https://github.com/khaledosama999/algolia-filter-query-builder.git"},"keywords":["algolia","search","query","filter","parser","builder","ORM","ODM"],"main":"./build/index.js","module":"./build/index.js","types":"./build/index.d.ts","source":"./src/index.ts","scripts":{"test":"mocha -r ts-node/register tests/**/*.spec.ts","build":"rollup -c","git-cz":"git-cz","husky":"husky init","_postinstall":"husky install","prepublishOnly":"pinst --disable","postpublish":"pinst --enable","lint":"eslint","release:major":"changelog -M && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version major","release:minor":"changelog -m && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version minor","release:patch":"changelog -p && git add CHANGELOG.md && git commit -m 'updated CHANGELOG.md' && npm version patch"},"author":{"name":"khaled osama","email":"khaledosama52@gmail.com"},"contributors":[{"name":"Khaled osama","email":"khaledosama999","url":"https://github.com/khaledosama999"}],"license":"ISC","devDependencies":{"@rollup/plugin-typescript":"^8.2.0","@types/chai":"^4.2.15","@types/mocha":"^8.2.1","@typescript-eslint/eslint-plugin":"^4.15.2","@typescript-eslint/parser":"^4.15.2","chai":"^4.3.0","commitizen":"^4.2.3","cz-conventional-changelog":"^3.3.0","eslint":"^7.20.0","eslint-config-airbnb-base":"^14.2.1","eslint-plugin-import":"^2.22.1","generate-changelog":"^1.8.0","husky":"^5.1.1","mocha":"^8.3.0","pinst":"^2.1.6","rollup":"^2.41.0","rollup-plugin-uglify":"^6.0.4","ts-node":"^9.1.1","typescript":"^4.1.5"},"husky":{"hooks":{"pre-commit":"npm test && npm run lint","prepare-commit-msg":"exec < /dev/tty && git cz --hook || true"}},"config":{"commitizen":{"path":"./node_modules/cz-conventional-changelog"}},"gitHead":"28a5b5a1b5103f8ca96160f86bd4ea08594852cc","bugs":{"url":"https://github.com/khaledosama999/algolia-filter-query-builder/issues"},"homepage":"https://github.com/khaledosama999/algolia-filter-query-builder#readme","_id":"algolia-search-builder@1.1.2","_nodeVersion":"14.19.0","_npmVersion":"6.14.16","dist":{"integrity":"sha512-GXRcGWXwbHj806EgNgc77N1NQU0S1gdsRqT14sYIPjMQBm6/x5pLyxherzzazD3o/+N2YwzxG91vgeGOEewILA==","shasum":"de5ad4065da870981645ea77c3adc78271f91212","tarball":"https://registry.npmjs.org/algolia-search-builder/-/algolia-search-builder-1.1.2.tgz","fileCount":53,"unpackedSize":52223,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPK3fACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr9Pg/+IgZLR0EPifNV1WIZ7mXFpNRa7KAcfIxw+vUEpxq/onSiHCbs\r\niDyETLIMIyAMV7Mt/VSZ2DEjIsW9ZkO5xYeAZT3nG1TSTHBdYJnwYieXwhqc\r\nyyruEa/SuD/j+JjN0125K6BXv5b2S2Yg5m2wds569z8Cf2D0Apf3vCvAZSxE\r\nR/5S6eV4w31GhSmMIhl2cZco1p2YxEL3R87brVLFRy39jWzrbM5fz3chPp9r\r\nP5n5D9vRcIIR9r+BPa45M0mh3/t0NNUx9AW8vEkqx1tcNOdKOgFNY6wD44KW\r\nyrNTiUoMPp1Xyc1ecckOb7V5Ujef5eGyDupCA90UFaYxtX7j4fQW8hax8GUM\r\nS4GMiJyjQit1iecCIHoraU/pNjYjGR6Dk0kf6DXxYSnBoSIf+N4fkkfmOneA\r\n3OkMu0Bz02PhKbqa7MtlXTO4h6tcYC74Vpnk9fzzXVF8BgZTfVxKdIdVm87e\r\nGrjvhXn73Xrym6uWeT6klisMKCZBL6l8ORpSRxqtMrz+b25dNUEnP09CWvTF\r\nEM/H57ji5wad4kBBaiP9IaqHDZedEdI9MQjC8JMwsYjlw79lx8LmGZjbCOFD\r\nARNDoj7pp/BjcV6hGOJg257CeUqrQWH/WTOB9b3aqbKYlvCdUGcXxmzKKJmI\r\nxNKnX6q8LsZ7SKEtvFVuaen9WoX5zeHBXRg=\r\n=ahbC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH85dq1XZBIdqhp4R2wyZx7zo6WnLkM3eprA3deoO7v0AiBxhENwBBy0m954oNM1OsNdQe3RzpjAmPSUWaK1lGAt0g=="}]},"_npmUser":{"name":"khaledosama","email":"khaledosama52@gmail.com"},"directories":{},"maintainers":[{"name":"khaledosama","email":"khaledosama52@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/algolia-search-builder_1.1.2_1648143838936_0.20294581713562465"},"_hasShrinkwrap":false}},"time":{"created":"2021-03-13T21:33:21.019Z","0.0.1":"2021-03-13T21:33:21.225Z","modified":"2022-04-11T13:23:01.407Z","1.0.0":"2021-03-26T16:53:07.086Z","1.1.0":"2021-03-28T14:31:22.377Z","1.1.1":"2021-03-29T14:39:46.089Z","1.1.2":"2022-03-24T17:43:59.073Z"},"maintainers":[{"name":"khaledosama","email":"khaledosama52@gmail.com"}],"description":"A query parser for algolia filters","homepage":"https://github.com/khaledosama999/algolia-filter-query-builder#readme","keywords":["algolia","search","query","filter","parser","builder","ORM","ODM"],"repository":{"url":"git+https://github.com/khaledosama999/algolia-filter-query-builder.git"},"contributors":[{"name":"Khaled osama","email":"khaledosama999","url":"https://github.com/khaledosama999"}],"author":{"name":"khaled osama","email":"khaledosama52@gmail.com"},"bugs":{"url":"https://github.com/khaledosama999/algolia-filter-query-builder/issues"},"license":"ISC","readme":"# Algolia Filters Query Builder \n\nA parser for having a structured way for querying algolia similar to well known ODMs or ORMS.\n\n## Installation\n```\nnpm i algolia-search-builder\n```\n  - [Installation](#installation)\n  - [Motivation](#motivation)\n  - [Usage](#usage)\n  - [Operators](#operators)\n    - [Numeric](#numeric)\n      * [eq](#eq)\n      * [ne](#ne)\n      * [gt](#gt)\n      * [gte](#gte)\n      * [lt](#lt)\n      * [lte](#lte)\n      * [between](#between)\n      * [in](#in)\n    - [Logical](#logical)\n      * [not](#not)\n      * [or](#or)\n      * [and](#and)\n  - [Advanced Usage Examples](#advanced-usage-examples)\n  - [General Notes](#general-notes)\n\n## Motivation\n\nCurrently Algolia supports **string format only** for filtering the search results, which doesn't seem very functional for making complex dynamic queries (probably by string concatenation), which requires you to memorize the built in algolia operators. Using the algolia query builder making dynamic filter queries is easier and similar to sequelize and mongoose.\n\n## Usage\n\n```js\nconst algoliaQueryBuilder = new AlgoliaQueryBuilder({\n   x:{lt:3, gte:1},\n   y:{between:[1,2]} \n});\n\nconst filterQuery = algoliaQueryBuilder.exec(); // 'x < 3 AND x >= 1 AND y: 1 TO 2'\n\nconst results = algoliaIndex.search(\"str\",{\n    filters: filterQuery\n});\n\n```\n## Operators\n- ### Numeric \n  Operators used with **numeric** values only\n   - #### eq \n    \n     Checks if a field equals to the given value\n    ```json\n    { x: { eq: 3 } }\n    ```\n   - #### ne \n    \n     Checks if a field is not equal to the given value\n    ```json\n    { x: { ne: 3 } }\n    ```\n   - #### gt  \n    Checks if a field is greater than the given value\n    ```json\n    { x: { gt: 3 } }\n    ```\n   - #### gte\n    Checks if a field is greater than or equal the given value\n    ```json\n    { x: { gt: 3 } }\n    ```\n   - #### lt  \n    Checks if a field is less than the given value\n    ```json\n    { x: { lt: 3 } }\n    ```\n   - #### lte\n    Checks if a field is less than or equal the given value\n    ```json\n    { x: { lt: 3 } }\n    ```\n   - #### between\n    Checks if a field is between the two given values (inclusive)\n    ```json\n    { x: { between: [1,2] } }\n    ```\n   - #### in \n    Checks if a field is in the array of given values (can contain strings or number)\n    ```json\n    { x: { in: [1,2,3] } }\n    ```\n- ### Logical \n   - #### not\n    Negates the given query \n   ```json\n   { x: { not: { between:[ 1 , 2] } } }\n   ``` \n   - #### or\n   returns results that satisfy at least one of the given conditions\n   ```json\n   { or:\n    [\n       { x: { eq:1 } }, \n       { y: { eq:2 } }, \n    ]\n   }\n   ```  \n   - #### and\n   returns results that satisfy at all of the given conditions\n   ```json\n   { and:\n    [\n       { x: { eq:1 } }, \n       { y: { eq:2 } }, \n    ]\n   }\n   ```\n### Advanced Usage Examples\n\n   ```js\n    // Field don't have to use operators they can be equal to a value right away\n    const algoliaQueryBuilder1 = new AlgoliaQueryBuilder({ x:3, y: \"str\" });\n\n    // An and can contain an or \n    const algoliaQueryBuilder2 = new AlgoliaQueryBuilder({\n        and:[\n            {x:3},\n            {or:[{y:4},{z:5}]}\n        ]\n    });\n\n    // By default all the provided field queries are anded\n     const algoliaQueryBuilder2 = new AlgoliaQueryBuilder({\n         x:{\n             gt:3,\n             lt:6\n         }\n     }); // Return results with x greater than 3 and less than 6\n   ```\n     \n### General Notes\n\n- The query builder validates the query after parsing and before returning the query string the limitations and constraints of the query builder are mostly related to the limitations given by [algolia](https://www.algolia.com/doc/api-reference/api-parameters/filters/#boolean-operators)\n  \n- To use `_tags` for filtering just add the a custom field with name `_tags` and pass it the value\n  ```json\n  {_tags:\"published\"}\n  ```","readmeFilename":"README.md"}