{"_id":"@alien-worlds/aw-storage-mongodb","_rev":"11-1c112349ebc68f1e730b30501e7463d2","name":"@alien-worlds/aw-storage-mongodb","dist-tags":{"latest":"0.0.16"},"versions":{"0.0.9":{"name":"@alien-worlds/aw-storage-mongodb","version":"0.0.9","license":"ISC","_id":"@alien-worlds/aw-storage-mongodb@0.0.9","maintainers":[{"name":"dallas.johnson","email":"dallasj001@gmail.com"},{"name":"atirmazi","email":"ahmad.t@dacoco.io"}],"homepage":"https://github.com/Alien-Worlds/aw-storage-mongodb#readme","bugs":{"url":"https://github.com/Alien-Worlds/aw-storage-mongodb/issues"},"dist":{"shasum":"e766dca11cc4cd863e0eb214c58e68fe73a6d7b3","tarball":"https://registry.npmjs.org/@alien-worlds/aw-storage-mongodb/-/aw-storage-mongodb-0.0.9.tgz","fileCount":23,"integrity":"sha512-Jg6CduwwW1zKp7MZjBvAJzTvwXy+/3WmHcB58HpAoSwZ3wb89FdKkCNuAwFIfCgo/LUgo79tErcKPbXJdGaC1g==","signatures":[{"sig":"MEUCIGl2REaQpgyPSRbDVxvCW1Yw0xcks3mxyZoria4v9GkdAiEAxCNgt+XrfIWbEscvd0jdTdMGbZOwcMMSeQtj7GUUMKY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41912},"main":"build/index.js","types":"build/index.d.ts","gitHead":"3982baef660913b7cb8629f9aeea7b9ade1192e3","scripts":{"lint":"eslint . --ext .ts","build":"yarn clean && tsc -b","clean":"rm -rf ./build","format":"prettier --write \"src/\"","lint-fix":"eslint . --ext .ts --fix","test:unit":"jest --config=jest.config.unit.js","prepublish":"yarn clean && tsc --project tsconfig.build.json","format-check":"prettier --check \"src/\""},"_npmUser":{"name":"atirmazi","email":"ahmad.t@dacoco.io"},"repository":{"url":"git+https://github.com/Alien-Worlds/aw-storage-mongodb.git","type":"git"},"_npmVersion":"9.5.0","description":"## Table of Contents","directories":{},"_nodeVersion":"19.7.0","dependencies":{"mongodb":"4.9.1","@alien-worlds/aw-core":"^0.0.13"},"_hasShrinkwrap":false,"packageManager":"yarn@3.2.3","devDependencies":{"jest":"^27.4.5","eslint":"^8.23.1","ts-jest":"^27.1.3","prettier":"^2.7.1","typescript":"^4.8.2","@types/jest":"^27.0.3","@types/node":"^18.7.14","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","@typescript-eslint/parser":"^5.37.0","@typescript-eslint/eslint-plugin":"^5.37.0"},"_npmOperationalInternal":{"tmp":"tmp/aw-storage-mongodb_0.0.9_1691505079405_0.6242679237557995","host":"s3://npm-registry-packages"}},"0.0.10":{"name":"@alien-worlds/aw-storage-mongodb","version":"0.0.10","license":"ISC","_id":"@alien-worlds/aw-storage-mongodb@0.0.10","maintainers":[{"name":"dallas.johnson","email":"dallasj001@gmail.com"},{"name":"atirmazi","email":"ahmad.t@dacoco.io"}],"homepage":"https://github.com/Alien-Worlds/aw-storage-mongodb#readme","bugs":{"url":"https://github.com/Alien-Worlds/aw-storage-mongodb/issues"},"dist":{"shasum":"9e923b768206aa24050fe93f18a4229654dc455e","tarball":"https://registry.npmjs.org/@alien-worlds/aw-storage-mongodb/-/aw-storage-mongodb-0.0.10.tgz","fileCount":23,"integrity":"sha512-BVTOGH4nUhzKzdnk6PeI4wQR2uZgHwUrUUySK8rAaq5DKUcip67lHJaI0rK7xIAujKPPxOKvo68cIXF6/0Z0jA==","signatures":[{"sig":"MEYCIQDbX24JF1s7dFetahBVeCxTfVwPJvgq2EFf+GK6KAX+KAIhAJmF/Dr4vqQ0gmOSQlxkbgwpBSFIgA97/s5hdSdnJLJU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41913},"main":"build/index.js","types":"build/index.d.ts","gitHead":"8b11bf5e180b766aba2ae383651c6856a34ff2c1","scripts":{"lint":"eslint . --ext .ts","build":"yarn clean && tsc -b","clean":"rm -rf ./build","format":"prettier --write \"src/\"","lint-fix":"eslint . --ext .ts --fix","test:unit":"jest --config=jest.config.unit.js","prepublish":"yarn clean && tsc --project tsconfig.build.json","format-check":"prettier --check \"src/\""},"_npmUser":{"name":"atirmazi","email":"ahmad.t@dacoco.io"},"repository":{"url":"git+https://github.com/Alien-Worlds/aw-storage-mongodb.git","type":"git"},"_npmVersion":"9.5.0","description":"## Table of Contents","directories":{},"_nodeVersion":"19.7.0","dependencies":{"mongodb":"4.9.1","@alien-worlds/aw-core":"^0.0.15"},"_hasShrinkwrap":false,"packageManager":"yarn@3.2.3","devDependencies":{"jest":"^27.4.5","eslint":"^8.23.1","ts-jest":"^27.1.3","prettier":"^2.7.1","typescript":"^4.8.2","@types/jest":"^27.0.3","@types/node":"^18.7.14","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","@typescript-eslint/parser":"^5.37.0","@typescript-eslint/eslint-plugin":"^5.37.0"},"_npmOperationalInternal":{"tmp":"tmp/aw-storage-mongodb_0.0.10_1691505441429_0.7341469426399632","host":"s3://npm-registry-packages"}},"0.0.11":{"name":"@alien-worlds/aw-storage-mongodb","version":"0.0.11","license":"ISC","_id":"@alien-worlds/aw-storage-mongodb@0.0.11","maintainers":[{"name":"rkamysz","email":"radoslaw.kamysz@gmail.com"},{"name":"lbobka","email":"volodymyr@dacoco.io"},{"name":"dallas.johnson","email":"dallasj001@gmail.com"},{"name":"atirmazi","email":"ahmad.t@dacoco.io"}],"homepage":"https://github.com/Alien-Worlds/aw-storage-mongodb#readme","bugs":{"url":"https://github.com/Alien-Worlds/aw-storage-mongodb/issues"},"dist":{"shasum":"96b0171ed8ebfff695c1bd231e2b88fb7a478a98","tarball":"https://registry.npmjs.org/@alien-worlds/aw-storage-mongodb/-/aw-storage-mongodb-0.0.11.tgz","fileCount":23,"integrity":"sha512-AgMyEcRp9uFMW6784jBJhkj2BZGPD6smGAaWYjBuHdmnep9lw6dTrxqFCu/VbJEJU46H+zQaLzhGhWVT3rzRGQ==","signatures":[{"sig":"MEQCIG4h1901T8YANvSZUbYiVgRZ4l2llhqMmn7zqzdV2SuuAiB2elLteXSf4YUJweoiO1Km7tv3f01+HAGBlgz44uzv8g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41913},"main":"build/index.js","types":"build/index.d.ts","gitHead":"486765aede65d05e80f90afa5dd6005bf98e8123","scripts":{"lint":"eslint . --ext .ts","build":"yarn clean && tsc -b","clean":"rm -rf ./build","format":"prettier --write \"src/\"","lint-fix":"eslint . --ext .ts --fix","test:unit":"jest --config=jest.config.unit.js","prepublish":"yarn clean && tsc --project tsconfig.build.json","format-check":"prettier --check \"src/\""},"_npmUser":{"name":"atirmazi","email":"ahmad.t@dacoco.io"},"repository":{"url":"git+https://github.com/Alien-Worlds/aw-storage-mongodb.git","type":"git"},"_npmVersion":"9.8.0","description":"## Table of Contents","directories":{},"_nodeVersion":"18.14.2","dependencies":{"mongodb":"4.9.1","@alien-worlds/aw-core":"^0.0.17"},"_hasShrinkwrap":false,"packageManager":"yarn@3.2.3","devDependencies":{"jest":"^27.4.5","eslint":"^8.23.1","ts-jest":"^27.1.3","prettier":"^2.7.1","typescript":"^4.8.2","@types/jest":"^27.0.3","@types/node":"^18.7.14","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","@typescript-eslint/parser":"^5.37.0","@typescript-eslint/eslint-plugin":"^5.37.0"},"_npmOperationalInternal":{"tmp":"tmp/aw-storage-mongodb_0.0.11_1692879920024_0.36534414343131294","host":"s3://npm-registry-packages"}},"0.0.12":{"name":"@alien-worlds/aw-storage-mongodb","version":"0.0.12","license":"ISC","_id":"@alien-worlds/aw-storage-mongodb@0.0.12","maintainers":[{"name":"rkamysz","email":"radoslaw.kamysz@gmail.com"},{"name":"lbobka","email":"volodymyr@dacoco.io"},{"name":"dallas.johnson","email":"dallasj001@gmail.com"},{"name":"atirmazi","email":"ahmad.t@dacoco.io"}],"homepage":"https://github.com/Alien-Worlds/aw-storage-mongodb#readme","bugs":{"url":"https://github.com/Alien-Worlds/aw-storage-mongodb/issues"},"dist":{"shasum":"105bf4f060976069b1a999b4edc8de6409ec4e80","tarball":"https://registry.npmjs.org/@alien-worlds/aw-storage-mongodb/-/aw-storage-mongodb-0.0.12.tgz","fileCount":23,"integrity":"sha512-HVSacOteKL3dPidErWRaybeFfzFawrAXiEi1mnZe3kp2Z5gJSphJI8DAoaVdgHiwfSbM73nEvsldMRimJDvfww==","signatures":[{"sig":"MEUCIQCNG4dz7FtvM2cWgJcUZALC7lRoQsTye46DCGra5OgGHAIgaGfQwEthWsVatWryiy7MW7GkuhoZK/P3BoGwZb3FBXQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41913},"main":"build/index.js","types":"build/index.d.ts","gitHead":"d8a02d3629ae94dd6c9b8c1f5d3af05aabb8f324","scripts":{"lint":"eslint . --ext .ts","build":"yarn clean && tsc -b","clean":"rm -rf ./build","format":"prettier --write \"src/\"","lint-fix":"eslint . --ext .ts --fix","test:unit":"jest --config=jest.config.unit.js","prepublish":"yarn clean && tsc --project tsconfig.build.json","format-check":"prettier --check \"src/\""},"_npmUser":{"name":"rkamysz","email":"radoslaw.kamysz@gmail.com"},"repository":{"url":"git+https://github.com/Alien-Worlds/aw-storage-mongodb.git","type":"git"},"_npmVersion":"8.3.1","description":"## Table of Contents","directories":{},"_nodeVersion":"17.4.0","dependencies":{"mongodb":"4.9.1","@alien-worlds/aw-core":"^0.0.18"},"_hasShrinkwrap":false,"packageManager":"yarn@3.2.3","devDependencies":{"jest":"^27.4.5","eslint":"^8.23.1","ts-jest":"^27.1.3","prettier":"^2.7.1","typescript":"^4.8.2","@types/jest":"^27.0.3","@types/node":"^18.7.14","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","@typescript-eslint/parser":"^5.37.0","@typescript-eslint/eslint-plugin":"^5.37.0"},"_npmOperationalInternal":{"tmp":"tmp/aw-storage-mongodb_0.0.12_1693312341762_0.6888902648040429","host":"s3://npm-registry-packages"}},"0.0.13":{"name":"@alien-worlds/aw-storage-mongodb","version":"0.0.13","license":"ISC","_id":"@alien-worlds/aw-storage-mongodb@0.0.13","maintainers":[{"name":"rkamysz","email":"radoslaw.kamysz@gmail.com"},{"name":"lbobka","email":"volodymyr@dacoco.io"},{"name":"dallas.johnson","email":"dallasj001@gmail.com"},{"name":"atirmazi","email":"ahmad.t@dacoco.io"}],"homepage":"https://github.com/Alien-Worlds/aw-storage-mongodb#readme","bugs":{"url":"https://github.com/Alien-Worlds/aw-storage-mongodb/issues"},"dist":{"shasum":"a562160493e183beec63f41b13f4ff651c8cf221","tarball":"https://registry.npmjs.org/@alien-worlds/aw-storage-mongodb/-/aw-storage-mongodb-0.0.13.tgz","fileCount":23,"integrity":"sha512-aQhy86ckmMMQ2N+HeZrMtMtWcKTtxmTTE1Wc4YLq3Bnz/MCZixZ/3bf7HZvPFC1pFVqaVnKuQiZKlUtQ5GHXVA==","signatures":[{"sig":"MEYCIQDi9oLICJfHMZCxQUjXXdQYkLVG+6WKpKe7gTVAkoPfRAIhAPTyogosf7RfS7sAg9ynkVrkqU76saguVqtniTXlrqDN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41913},"main":"build/index.js","types":"build/index.d.ts","gitHead":"f6d37284934e8bd030e8704f1c8b3b658491f63a","scripts":{"lint":"eslint . --ext .ts","build":"yarn clean && tsc -b","clean":"rm -rf ./build","format":"prettier --write \"src/\"","lint-fix":"eslint . --ext .ts --fix","test:unit":"jest --config=jest.config.unit.js","prepublish":"yarn clean && tsc --project tsconfig.build.json","format-check":"prettier --check \"src/\""},"_npmUser":{"name":"rkamysz","email":"radoslaw.kamysz@gmail.com"},"repository":{"url":"git+https://github.com/Alien-Worlds/aw-storage-mongodb.git","type":"git"},"_npmVersion":"8.3.1","description":"## Table of Contents","directories":{},"_nodeVersion":"17.4.0","dependencies":{"mongodb":"4.9.1","@alien-worlds/aw-core":"^0.0.19"},"_hasShrinkwrap":false,"packageManager":"yarn@3.2.3","devDependencies":{"jest":"^27.4.5","eslint":"^8.23.1","ts-jest":"^27.1.3","prettier":"^2.7.1","typescript":"^4.8.2","@types/jest":"^27.0.3","@types/node":"^18.7.14","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","@typescript-eslint/parser":"^5.37.0","@typescript-eslint/eslint-plugin":"^5.37.0"},"_npmOperationalInternal":{"tmp":"tmp/aw-storage-mongodb_0.0.13_1693319032750_0.971758697953","host":"s3://npm-registry-packages"}},"0.0.14":{"name":"@alien-worlds/aw-storage-mongodb","version":"0.0.14","license":"ISC","_id":"@alien-worlds/aw-storage-mongodb@0.0.14","maintainers":[{"name":"rkamysz","email":"radoslaw.kamysz@gmail.com"},{"name":"lbobka","email":"volodymyr@dacoco.io"},{"name":"dallas.johnson","email":"dallasj001@gmail.com"},{"name":"atirmazi","email":"ahmad.t@dacoco.io"}],"homepage":"https://github.com/Alien-Worlds/aw-storage-mongodb#readme","bugs":{"url":"https://github.com/Alien-Worlds/aw-storage-mongodb/issues"},"dist":{"shasum":"28bab35dfdbb3cd73880cb8469035170c54981f4","tarball":"https://registry.npmjs.org/@alien-worlds/aw-storage-mongodb/-/aw-storage-mongodb-0.0.14.tgz","fileCount":23,"integrity":"sha512-DME7OjOYovV5dEQxTnSqwyU1Uuq5UVJpbpfVDh1jggWDoV+MwZ6y8lhL53zGHHelMEsUZMBC5lffF4q2LOCuQA==","signatures":[{"sig":"MEUCIQDVP0FggDgyE0FmuOlUCjNKxnbf/vs4HNyuNc4lHTfHswIgDQyXL1eR8MLG/5pl11e5a7T5q/roBNntKs3c9bxHDv0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41913},"main":"build/index.js","types":"build/index.d.ts","gitHead":"c663686a53794cca40bc64fb9966b1d339db9e6b","scripts":{"lint":"eslint . --ext .ts","build":"yarn clean && tsc -b","clean":"rm -rf ./build","format":"prettier --write \"src/\"","lint-fix":"eslint . --ext .ts --fix","test:unit":"jest --config=jest.config.unit.js","prepublish":"yarn clean && tsc --project tsconfig.build.json","format-check":"prettier --check \"src/\""},"_npmUser":{"name":"rkamysz","email":"radoslaw.kamysz@gmail.com"},"repository":{"url":"git+https://github.com/Alien-Worlds/aw-storage-mongodb.git","type":"git"},"_npmVersion":"8.3.1","description":"## Table of Contents","directories":{},"_nodeVersion":"17.4.0","dependencies":{"mongodb":"4.9.1","@alien-worlds/aw-core":"^0.0.20"},"_hasShrinkwrap":false,"packageManager":"yarn@3.2.3","devDependencies":{"jest":"^27.4.5","eslint":"^8.23.1","ts-jest":"^27.1.3","prettier":"^2.7.1","typescript":"^4.8.2","@types/jest":"^27.0.3","@types/node":"^18.7.14","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","@typescript-eslint/parser":"^5.37.0","@typescript-eslint/eslint-plugin":"^5.37.0"},"_npmOperationalInternal":{"tmp":"tmp/aw-storage-mongodb_0.0.14_1693470561825_0.8895361755027376","host":"s3://npm-registry-packages"}},"0.0.15":{"name":"@alien-worlds/aw-storage-mongodb","version":"0.0.15","license":"ISC","_id":"@alien-worlds/aw-storage-mongodb@0.0.15","maintainers":[{"name":"rkamysz","email":"radoslaw.kamysz@gmail.com"},{"name":"lbobka","email":"volodymyr@dacoco.io"},{"name":"dallas.johnson","email":"dallasj001@gmail.com"},{"name":"atirmazi","email":"ahmad.t@dacoco.io"}],"homepage":"https://github.com/Alien-Worlds/aw-storage-mongodb#readme","bugs":{"url":"https://github.com/Alien-Worlds/aw-storage-mongodb/issues"},"dist":{"shasum":"b63514eebaab0a525637a5dfa151e7e35f7bdce6","tarball":"https://registry.npmjs.org/@alien-worlds/aw-storage-mongodb/-/aw-storage-mongodb-0.0.15.tgz","fileCount":23,"integrity":"sha512-SZ/xYdhQxrFXaZjcmOgv2VIwASMiZWP+9MV3dwP4gd/tD9AtjsWlDYY6Ui2mDL2hHWwbOcLt1DEpYQXf1+h56g==","signatures":[{"sig":"MEQCIBX388LsD6PxzMTB6VrrKfyXXMFdH7WgYJQswA7xX7vlAiB7JtPnHgqmLDX8JnkS07dNkKRK+GSpV4VBQXTufo/GWg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43643},"main":"build/index.js","types":"build/index.d.ts","gitHead":"7c3f35db5b94b37ac173077c791f296e7a68b429","scripts":{"lint":"eslint . --ext .ts","build":"yarn clean && tsc -b","clean":"rm -rf ./build","format":"prettier --write \"src/\"","lint-fix":"eslint . --ext .ts --fix","test:unit":"jest --config=jest.config.unit.js","prepublish":"yarn clean && tsc --project tsconfig.build.json","format-check":"prettier --check \"src/\""},"_npmUser":{"name":"rkamysz","email":"radoslaw.kamysz@gmail.com"},"repository":{"url":"git+https://github.com/Alien-Worlds/aw-storage-mongodb.git","type":"git"},"_npmVersion":"8.3.1","description":"## Table of Contents","directories":{},"_nodeVersion":"17.4.0","dependencies":{"mongodb":"4.9.1","@alien-worlds/aw-core":"^0.0.21"},"_hasShrinkwrap":false,"packageManager":"yarn@3.2.3","devDependencies":{"jest":"^27.4.5","eslint":"^8.23.1","ts-jest":"^27.1.3","prettier":"^2.7.1","typescript":"^4.8.2","@types/jest":"^27.0.3","@types/node":"^18.7.14","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","@typescript-eslint/parser":"^5.37.0","@typescript-eslint/eslint-plugin":"^5.37.0"},"_npmOperationalInternal":{"tmp":"tmp/aw-storage-mongodb_0.0.15_1693555952592_0.677539668055873","host":"s3://npm-registry-packages"}},"0.0.16":{"name":"@alien-worlds/aw-storage-mongodb","version":"0.0.16","license":"ISC","_id":"@alien-worlds/aw-storage-mongodb@0.0.16","maintainers":[{"name":"rkamysz","email":"radoslaw.kamysz@gmail.com"},{"name":"lbobka","email":"volodymyr@dacoco.io"},{"name":"dallas.johnson","email":"dallasj001@gmail.com"},{"name":"atirmazi","email":"ahmad.t@dacoco.io"}],"homepage":"https://github.com/Alien-Worlds/aw-storage-mongodb#readme","bugs":{"url":"https://github.com/Alien-Worlds/aw-storage-mongodb/issues"},"dist":{"shasum":"5475a041b02517796348256b688319f46ac887cf","tarball":"https://registry.npmjs.org/@alien-worlds/aw-storage-mongodb/-/aw-storage-mongodb-0.0.16.tgz","fileCount":23,"integrity":"sha512-l0eqrtdb9OclW6Y7jSetf2FyfcrPs8deLDHL0AA4vfkfp5CfUlErJXxSoWabLvjjwohcNbQAu6dmw2yQyGrXAw==","signatures":[{"sig":"MEUCIQDyFkkzYxeeKATYI8SqqrifPGY6V3SNLIwdx0I1wueaQQIgAagP3/7cszzFXzkYSHTL0gdHVeSHsqr/m3xAgkP7UGs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43677},"main":"build/index.js","types":"build/index.d.ts","gitHead":"2e466ab012564335b6d7acc70b0ecbd0a27fddd5","scripts":{"lint":"eslint . --ext .ts","build":"yarn clean && tsc -b","clean":"rm -rf ./build","format":"prettier --write \"src/\"","lint-fix":"eslint . --ext .ts --fix","test:unit":"jest --config=jest.config.unit.js","prepublish":"yarn clean && tsc --project tsconfig.build.json","format-check":"prettier --check \"src/\""},"_npmUser":{"name":"rkamysz","email":"radoslaw.kamysz@gmail.com"},"repository":{"url":"git+https://github.com/Alien-Worlds/aw-storage-mongodb.git","type":"git"},"_npmVersion":"8.3.1","description":"## Table of Contents","directories":{},"_nodeVersion":"17.4.0","dependencies":{"mongodb":"4.9.1","@alien-worlds/aw-core":"^0.0.21"},"_hasShrinkwrap":false,"packageManager":"yarn@3.2.3","devDependencies":{"jest":"^27.4.5","eslint":"^8.23.1","ts-jest":"^27.1.3","prettier":"^2.7.1","typescript":"^4.8.2","@types/jest":"^27.0.3","@types/node":"^18.7.14","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","@typescript-eslint/parser":"^5.37.0","@typescript-eslint/eslint-plugin":"^5.37.0"},"_npmOperationalInternal":{"tmp":"tmp/aw-storage-mongodb_0.0.16_1693573581256_0.925150546146746","host":"s3://npm-registry-packages"}}},"time":{"created":"2023-08-08T14:31:19.283Z","modified":"2026-04-20T11:32:46.904Z","0.0.9":"2023-08-08T14:31:19.634Z","0.0.10":"2023-08-08T14:37:21.632Z","0.0.11":"2023-08-24T12:25:20.252Z","0.0.12":"2023-08-29T12:32:21.988Z","0.0.13":"2023-08-29T14:23:52.895Z","0.0.14":"2023-08-31T08:29:22.019Z","0.0.15":"2023-09-01T08:12:32.860Z","0.0.16":"2023-09-01T13:06:21.486Z"},"bugs":{"url":"https://github.com/Alien-Worlds/aw-storage-mongodb/issues"},"license":"ISC","homepage":"https://github.com/Alien-Worlds/aw-storage-mongodb#readme","repository":{"url":"git+https://github.com/Alien-Worlds/aw-storage-mongodb.git","type":"git"},"description":"## Table of Contents","maintainers":[{"email":"dallasj001@gmail.com","name":"dallas.johnson"},{"email":"volodymyr@dacoco.io","name":"lbobka"},{"email":"muhammad.g@dacoco.io","name":"salman.gurmani"}],"readme":"# aw-storage-mongodb\n\n## Table of Contents\n\n1. [Installation](#installation)\n2. [Introduction](#introduction)\n3. [Dependencies](#dependencies)\n4. [Features](#features)\n   - [MongoCollectionSource Class](#mongocollectionsource-class)\n   - [MongoQueryBuilders Class](#mongoquerybuilders-class)\n   - [MongoSource Class](#mongosource-class)\n   - [MongoWhereParser Class](#mongowhereparser-class)\n   - [BuildMongoConfig Function](#buildmongoconfig-function)\n5. [Additional Tools and Helpers](#additional-tools-and-helpers)\n6. [Installation](#installation)\n\n## Installation\n\nTo install the `aw-storage-mongodb` package, use the following command:\n\n```bash\nyarn add @alien-worlds/aw-storage-mongodb\n```\n\n## Introduction\n\n`aw-storage-mongodb` is a versatile package designed as part of our API building components and history-tools. The goal is to decouple our modules and provide reusable MongoDB components that can be plugged into projects as needed, rather than relying on a monolithic structure.\n\nIf your project relies on MongoDB, `aw-storage-mongodb` is a great tool to execute commands built in the business domain. It's built upon the interfaces and types from the `@alien-worlds/aw-core` package and provides a MongoDB implementation.\n\n## Dependencies\n\n- [MongoDB](https://github.com/mongodb)\n- [@alien-worlds/aw-core](https://github.com/Alien-Worlds/api-core)\n\n## Features\n\n### MongoCollectionSource Class\n\nRepresents a MongoDB data source for a specific collection, with implemented methods like `find`, `count`, `aggregate`, `update`, `insert`, `remove` and more. It uses the native MongoDB client from the 'mongodb' package to perform all operations. Create custom collection class and extend this, create an instance and pass it to the constructor of the Repository.\n\n```java\n// An example of creating a collection data source for the planets collection\nexport class PlanetMongoSource extends CollectionMongoSource<PlanetMongoModel> {\n  constructor(mongoSource: MongoSource) {\n    super(mongoSource, 'planets');\n  }\n}\n\n// later use it in the repository\nconst planetRepository = new PlanetRepositoryImpl(\n  new PlanetMongoSource(mongoSOurce),\n  <planets_collection_mongo_maper>,\n  <mongo_query_builders>,\n);\n\n```\n\n### MongoQueryBuilders Class\n\nRepresents a MongoDB query builder to construct various types of queries. The methods like `buildFindQuery`, `buildCountQuery`, `buildUpdateQuery` and more take parameters defined in the domain layer in the `@alien-worlds/aw-core` and build query parameters suitable for MongoDB. Instances of this class must be used in the repository constructor.\n\n```java\nconst planetRepository = new PlanetRepositoryImpl(\n  <planets_collection_mongo_source>,\n  <planets_collection_mongo_maper>,\n  new MongoQueryBuilders()\n)\n```\n\n### MongoSource Class\n\nThis is a Facade class that encapsulates the MongoClient and exposes a client and database. It also contains a factory method to create instances. Instances of this class are used in the constructor of all `MongoCollectionSource`. This allows collections to share a client or, if required, use multiple clients.\n\n```java\nconst vars = new ConfigVars();\nconst config = buildMongoConfig(vars);\nconst mongoSource = await MongoSource.create(config);\n```\n\n### MongoWhereParser Class\n\nContains a static `parse` method for parsing Where clauses and converting them into MongoDB filter objects.\n\n```java\n// example\nconst where = Where.and([\nnew Where().valueOf('name').isEq('John').valueOf('age').isGt(25),\nnew Where().valueOf('department').isEq('Sales').valueOf('salary').isLte(5000),\n]);\nconst result = MongoWhereParser.parse(where);\n/*\nGenerated result:\n{\n  $and: [\n    { name: { $eq: 'John' }, age: { $gt: 25 } },\n    { department: { $eq: 'Sales' }, salary: { $lte: 5000 } },\n  ],\n}\n*/\n```\n\n### BuildMongoConfig Function\n\nBuilds a MongoDB configuration object based on provided configuration variables.\n\n```java\n// example\nconst vars = new ConfigVars();\nconst mongo = buildMongoConfig(vars); // or buildMongoConfig(vars, 'YOUR_PREFIX');\n\n```\n\nTo use this tool you have to set the following environment variables or create an .env file containing the following keys.\n\n```bash\n<your_prefix>MONGO_DB_NAME\n<your_prefix>MONGO_HOSTS\n<your_prefix>MONGO_PORTS\n<your_prefix>MONGO_USER\n<your_prefix>MONGO_PASSWORD\n<your_prefix>MONGO_AUTH_MECHANISM\n<your_prefix>MONGO_AUTH_SOURCE\n<your_prefix>MONGO_REPLICA_SET\n<your_prefix>MONGO_SSL\n<your_prefix>MONGO_SRV\n```\n\nIf a prefix is given, it must be included in the variable name. Note that each prefix will be automatically separated from the name by a `_` character if the given key does not end with it.\n\n## Additional Tools and Helpers\n\nThis package also includes various helper tools such as `buildMongoUrl`, for constructing a URL to connect to the MongoDB database, along with others that aid in internal processes.\n\nAdditionally, it contains standard error classes (`SessionError`, `UnknownUpdateMethodError`, `InconsistentUpdateParamsError`, etc.) and basic types of query params (`MongoFindQueryParams`, `MongoUpdateQueryParams`, etc.).\n\nBy using `aw-storage-mongodb`, you'll have a toolbox at your disposal to quickly and effectively interact with MongoDB, keeping your code clean and efficient.\n\n## Contributing\n\nWe encourage contributions from the community. If you have suggestions or features you'd like to see in the api-core package, please open an issue. For pull requests, ensure your changes are well documented and include tests where possible.\n\n## License\n\nThis project is licensed under the terms of the MIT license. For more information, refer to the [LICENSE](./LICENSE) file.\n","readmeFilename":"README.md"}