create-mern-omar 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1565) hide show
  1. package/README.md +34 -0
  2. package/index.js +26 -22
  3. package/package.json +3 -11
  4. package/templates/.env.example +2 -0
  5. package/templates/.gitignore.template +2 -0
  6. package/templates/controllers/users.routes.js +10 -0
  7. package/templates/models/User.js +26 -0
  8. package/{test-proj/package-lock.json → templates/node_modules/.package-lock.json} +0 -11
  9. package/templates/node_modules/@mongodb-js/saslprep/LICENSE +22 -0
  10. package/templates/node_modules/@mongodb-js/saslprep/dist/.esm-wrapper.mjs +4 -0
  11. package/templates/node_modules/@mongodb-js/saslprep/dist/browser.d.ts +5 -0
  12. package/templates/node_modules/@mongodb-js/saslprep/dist/browser.d.ts.map +1 -0
  13. package/templates/node_modules/@mongodb-js/saslprep/dist/browser.js +12 -0
  14. package/templates/node_modules/@mongodb-js/saslprep/dist/browser.js.map +1 -0
  15. package/templates/node_modules/@mongodb-js/saslprep/dist/code-points-data-browser.d.ts +3 -0
  16. package/templates/node_modules/@mongodb-js/saslprep/dist/code-points-data-browser.d.ts.map +1 -0
  17. package/templates/node_modules/@mongodb-js/saslprep/dist/code-points-data-browser.js +5 -0
  18. package/templates/node_modules/@mongodb-js/saslprep/dist/code-points-data-browser.js.map +1 -0
  19. package/templates/node_modules/@mongodb-js/saslprep/dist/code-points-data.d.ts +3 -0
  20. package/templates/node_modules/@mongodb-js/saslprep/dist/code-points-data.d.ts.map +1 -0
  21. package/templates/node_modules/@mongodb-js/saslprep/dist/code-points-data.js +5 -0
  22. package/templates/node_modules/@mongodb-js/saslprep/dist/code-points-data.js.map +1 -0
  23. package/templates/node_modules/@mongodb-js/saslprep/dist/code-points-src.d.ts +7 -0
  24. package/templates/node_modules/@mongodb-js/saslprep/dist/code-points-src.d.ts.map +1 -0
  25. package/templates/node_modules/@mongodb-js/saslprep/dist/code-points-src.js +881 -0
  26. package/templates/node_modules/@mongodb-js/saslprep/dist/code-points-src.js.map +1 -0
  27. package/templates/node_modules/@mongodb-js/saslprep/dist/generate-code-points.d.ts +2 -0
  28. package/templates/node_modules/@mongodb-js/saslprep/dist/generate-code-points.d.ts.map +1 -0
  29. package/templates/node_modules/@mongodb-js/saslprep/dist/generate-code-points.js +83 -0
  30. package/templates/node_modules/@mongodb-js/saslprep/dist/generate-code-points.js.map +1 -0
  31. package/templates/node_modules/@mongodb-js/saslprep/dist/index.d.ts +11 -0
  32. package/templates/node_modules/@mongodb-js/saslprep/dist/index.d.ts.map +1 -0
  33. package/templates/node_modules/@mongodb-js/saslprep/dist/index.js +65 -0
  34. package/templates/node_modules/@mongodb-js/saslprep/dist/index.js.map +1 -0
  35. package/templates/node_modules/@mongodb-js/saslprep/dist/memory-code-points.d.ts +10 -0
  36. package/templates/node_modules/@mongodb-js/saslprep/dist/memory-code-points.d.ts.map +1 -0
  37. package/templates/node_modules/@mongodb-js/saslprep/dist/memory-code-points.js +32 -0
  38. package/templates/node_modules/@mongodb-js/saslprep/dist/memory-code-points.js.map +1 -0
  39. package/templates/node_modules/@mongodb-js/saslprep/dist/node.d.ts +10 -0
  40. package/templates/node_modules/@mongodb-js/saslprep/dist/node.d.ts.map +1 -0
  41. package/templates/node_modules/@mongodb-js/saslprep/dist/node.js +15 -0
  42. package/templates/node_modules/@mongodb-js/saslprep/dist/node.js.map +1 -0
  43. package/templates/node_modules/@mongodb-js/saslprep/dist/util.d.ts +2 -0
  44. package/templates/node_modules/@mongodb-js/saslprep/dist/util.d.ts.map +1 -0
  45. package/templates/node_modules/@mongodb-js/saslprep/dist/util.js +11 -0
  46. package/templates/node_modules/@mongodb-js/saslprep/dist/util.js.map +1 -0
  47. package/templates/node_modules/@mongodb-js/saslprep/package.json +87 -0
  48. package/templates/node_modules/@mongodb-js/saslprep/readme.md +29 -0
  49. package/templates/node_modules/@types/webidl-conversions/LICENSE +21 -0
  50. package/templates/node_modules/@types/webidl-conversions/README.md +15 -0
  51. package/templates/node_modules/@types/webidl-conversions/index.d.ts +91 -0
  52. package/templates/node_modules/@types/webidl-conversions/package.json +30 -0
  53. package/templates/node_modules/@types/whatwg-url/LICENSE +21 -0
  54. package/templates/node_modules/@types/whatwg-url/README.md +15 -0
  55. package/templates/node_modules/@types/whatwg-url/index.d.ts +172 -0
  56. package/templates/node_modules/@types/whatwg-url/lib/URL-impl.d.ts +22 -0
  57. package/templates/node_modules/@types/whatwg-url/lib/URL.d.ts +66 -0
  58. package/templates/node_modules/@types/whatwg-url/lib/URLSearchParams-impl.d.ts +20 -0
  59. package/templates/node_modules/@types/whatwg-url/lib/URLSearchParams.d.ts +92 -0
  60. package/templates/node_modules/@types/whatwg-url/package.json +38 -0
  61. package/templates/node_modules/@types/whatwg-url/webidl2js-wrapper.d.ts +4 -0
  62. package/templates/node_modules/accepts/HISTORY.md +250 -0
  63. package/templates/node_modules/accepts/LICENSE +23 -0
  64. package/templates/node_modules/accepts/README.md +140 -0
  65. package/templates/node_modules/accepts/index.js +238 -0
  66. package/templates/node_modules/accepts/package.json +47 -0
  67. package/templates/node_modules/basic-auth/HISTORY.md +52 -0
  68. package/templates/node_modules/basic-auth/LICENSE +24 -0
  69. package/templates/node_modules/basic-auth/README.md +113 -0
  70. package/templates/node_modules/basic-auth/index.js +133 -0
  71. package/templates/node_modules/basic-auth/package.json +41 -0
  72. package/templates/node_modules/body-parser/LICENSE +23 -0
  73. package/templates/node_modules/body-parser/README.md +494 -0
  74. package/templates/node_modules/body-parser/index.js +80 -0
  75. package/templates/node_modules/body-parser/lib/read.js +250 -0
  76. package/templates/node_modules/body-parser/lib/types/json.js +166 -0
  77. package/templates/node_modules/body-parser/lib/types/raw.js +43 -0
  78. package/templates/node_modules/body-parser/lib/types/text.js +37 -0
  79. package/templates/node_modules/body-parser/lib/types/urlencoded.js +142 -0
  80. package/templates/node_modules/body-parser/lib/utils.js +96 -0
  81. package/templates/node_modules/body-parser/package.json +52 -0
  82. package/templates/node_modules/bson/LICENSE.md +201 -0
  83. package/templates/node_modules/bson/README.md +291 -0
  84. package/templates/node_modules/bson/bson.d.ts +1729 -0
  85. package/templates/node_modules/bson/etc/prepare.js +19 -0
  86. package/templates/node_modules/bson/lib/bson.bundle.js +4675 -0
  87. package/templates/node_modules/bson/lib/bson.bundle.js.map +1 -0
  88. package/templates/node_modules/bson/lib/bson.cjs +4670 -0
  89. package/templates/node_modules/bson/lib/bson.cjs.map +1 -0
  90. package/templates/node_modules/bson/lib/bson.mjs +4639 -0
  91. package/templates/node_modules/bson/lib/bson.mjs.map +1 -0
  92. package/templates/node_modules/bson/lib/bson.node.mjs +4639 -0
  93. package/templates/node_modules/bson/lib/bson.node.mjs.map +1 -0
  94. package/templates/node_modules/bson/lib/bson.rn.cjs +4680 -0
  95. package/templates/node_modules/bson/lib/bson.rn.cjs.map +1 -0
  96. package/templates/node_modules/bson/package.json +118 -0
  97. package/templates/node_modules/bson/src/binary.ts +751 -0
  98. package/templates/node_modules/bson/src/bson.ts +248 -0
  99. package/templates/node_modules/bson/src/bson_value.ts +55 -0
  100. package/templates/node_modules/bson/src/code.ts +69 -0
  101. package/templates/node_modules/bson/src/constants.ts +147 -0
  102. package/templates/node_modules/bson/src/db_ref.ts +128 -0
  103. package/templates/node_modules/bson/src/decimal128.ts +855 -0
  104. package/templates/node_modules/bson/src/double.ts +115 -0
  105. package/templates/node_modules/bson/src/error.ts +105 -0
  106. package/templates/node_modules/bson/src/extended_json.ts +513 -0
  107. package/templates/node_modules/bson/src/index.ts +19 -0
  108. package/templates/node_modules/bson/src/int_32.ts +101 -0
  109. package/templates/node_modules/bson/src/long.ts +1240 -0
  110. package/templates/node_modules/bson/src/max_key.ts +31 -0
  111. package/templates/node_modules/bson/src/min_key.ts +31 -0
  112. package/templates/node_modules/bson/src/objectid.ts +382 -0
  113. package/templates/node_modules/bson/src/parse_utf8.ts +35 -0
  114. package/templates/node_modules/bson/src/parser/calculate_size.ts +218 -0
  115. package/templates/node_modules/bson/src/parser/deserializer.ts +627 -0
  116. package/templates/node_modules/bson/src/parser/on_demand/index.ts +32 -0
  117. package/templates/node_modules/bson/src/parser/on_demand/parse_to_elements.ts +190 -0
  118. package/templates/node_modules/bson/src/parser/serializer.ts +954 -0
  119. package/templates/node_modules/bson/src/parser/utils.ts +69 -0
  120. package/templates/node_modules/bson/src/regexp.ts +114 -0
  121. package/templates/node_modules/bson/src/symbol.ts +55 -0
  122. package/templates/node_modules/bson/src/timestamp.ts +176 -0
  123. package/templates/node_modules/bson/src/utils/byte_utils.ts +63 -0
  124. package/templates/node_modules/bson/src/utils/latin.ts +104 -0
  125. package/templates/node_modules/bson/src/utils/node_byte_utils.ts +161 -0
  126. package/templates/node_modules/bson/src/utils/number_utils.ts +204 -0
  127. package/templates/node_modules/bson/src/utils/string_utils.ts +44 -0
  128. package/templates/node_modules/bson/src/utils/web_byte_utils.ts +216 -0
  129. package/templates/node_modules/bytes/History.md +97 -0
  130. package/templates/node_modules/bytes/LICENSE +23 -0
  131. package/templates/node_modules/bytes/Readme.md +152 -0
  132. package/templates/node_modules/bytes/index.js +170 -0
  133. package/templates/node_modules/bytes/package.json +42 -0
  134. package/templates/node_modules/call-bind-apply-helpers/.eslintrc +17 -0
  135. package/templates/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +12 -0
  136. package/templates/node_modules/call-bind-apply-helpers/.nycrc +9 -0
  137. package/templates/node_modules/call-bind-apply-helpers/CHANGELOG.md +30 -0
  138. package/templates/node_modules/call-bind-apply-helpers/LICENSE +21 -0
  139. package/templates/node_modules/call-bind-apply-helpers/README.md +62 -0
  140. package/templates/node_modules/call-bind-apply-helpers/actualApply.d.ts +1 -0
  141. package/templates/node_modules/call-bind-apply-helpers/actualApply.js +10 -0
  142. package/templates/node_modules/call-bind-apply-helpers/applyBind.d.ts +19 -0
  143. package/templates/node_modules/call-bind-apply-helpers/applyBind.js +10 -0
  144. package/templates/node_modules/call-bind-apply-helpers/functionApply.d.ts +1 -0
  145. package/templates/node_modules/call-bind-apply-helpers/functionApply.js +4 -0
  146. package/templates/node_modules/call-bind-apply-helpers/functionCall.d.ts +1 -0
  147. package/templates/node_modules/call-bind-apply-helpers/functionCall.js +4 -0
  148. package/templates/node_modules/call-bind-apply-helpers/index.d.ts +64 -0
  149. package/templates/node_modules/call-bind-apply-helpers/index.js +15 -0
  150. package/templates/node_modules/call-bind-apply-helpers/package.json +85 -0
  151. package/templates/node_modules/call-bind-apply-helpers/reflectApply.d.ts +3 -0
  152. package/templates/node_modules/call-bind-apply-helpers/reflectApply.js +4 -0
  153. package/templates/node_modules/call-bind-apply-helpers/test/index.js +63 -0
  154. package/templates/node_modules/call-bind-apply-helpers/tsconfig.json +9 -0
  155. package/templates/node_modules/call-bound/.eslintrc +13 -0
  156. package/templates/node_modules/call-bound/.github/FUNDING.yml +12 -0
  157. package/templates/node_modules/call-bound/.nycrc +9 -0
  158. package/templates/node_modules/call-bound/CHANGELOG.md +42 -0
  159. package/templates/node_modules/call-bound/LICENSE +21 -0
  160. package/templates/node_modules/call-bound/README.md +53 -0
  161. package/templates/node_modules/call-bound/index.d.ts +94 -0
  162. package/templates/node_modules/call-bound/index.js +19 -0
  163. package/templates/node_modules/call-bound/package.json +99 -0
  164. package/templates/node_modules/call-bound/test/index.js +61 -0
  165. package/templates/node_modules/call-bound/tsconfig.json +10 -0
  166. package/templates/node_modules/content-disposition/HISTORY.md +72 -0
  167. package/templates/node_modules/content-disposition/LICENSE +22 -0
  168. package/templates/node_modules/content-disposition/README.md +142 -0
  169. package/templates/node_modules/content-disposition/index.js +458 -0
  170. package/templates/node_modules/content-disposition/package.json +43 -0
  171. package/templates/node_modules/content-type/HISTORY.md +29 -0
  172. package/templates/node_modules/content-type/LICENSE +22 -0
  173. package/templates/node_modules/content-type/README.md +94 -0
  174. package/templates/node_modules/content-type/index.js +225 -0
  175. package/templates/node_modules/content-type/package.json +42 -0
  176. package/templates/node_modules/cookie/LICENSE +24 -0
  177. package/templates/node_modules/cookie/README.md +317 -0
  178. package/templates/node_modules/cookie/SECURITY.md +25 -0
  179. package/templates/node_modules/cookie/index.js +335 -0
  180. package/templates/node_modules/cookie/package.json +44 -0
  181. package/templates/node_modules/cookie-signature/History.md +70 -0
  182. package/templates/node_modules/cookie-signature/LICENSE +22 -0
  183. package/templates/node_modules/cookie-signature/Readme.md +23 -0
  184. package/templates/node_modules/cookie-signature/index.js +47 -0
  185. package/templates/node_modules/cookie-signature/package.json +24 -0
  186. package/templates/node_modules/debug/LICENSE +20 -0
  187. package/templates/node_modules/debug/README.md +481 -0
  188. package/templates/node_modules/debug/package.json +64 -0
  189. package/templates/node_modules/debug/src/browser.js +272 -0
  190. package/templates/node_modules/debug/src/common.js +292 -0
  191. package/templates/node_modules/debug/src/index.js +10 -0
  192. package/templates/node_modules/debug/src/node.js +263 -0
  193. package/templates/node_modules/depd/History.md +103 -0
  194. package/templates/node_modules/depd/LICENSE +22 -0
  195. package/templates/node_modules/depd/Readme.md +280 -0
  196. package/templates/node_modules/depd/index.js +538 -0
  197. package/templates/node_modules/depd/lib/browser/index.js +77 -0
  198. package/templates/node_modules/depd/package.json +45 -0
  199. package/templates/node_modules/dotenv/CHANGELOG.md +598 -0
  200. package/templates/node_modules/dotenv/LICENSE +23 -0
  201. package/templates/node_modules/dotenv/README-es.md +405 -0
  202. package/templates/node_modules/dotenv/README.md +692 -0
  203. package/templates/node_modules/dotenv/SECURITY.md +1 -0
  204. package/templates/node_modules/dotenv/config.d.ts +1 -0
  205. package/templates/node_modules/dotenv/config.js +9 -0
  206. package/templates/node_modules/dotenv/lib/cli-options.js +17 -0
  207. package/templates/node_modules/dotenv/lib/env-options.js +28 -0
  208. package/templates/node_modules/dotenv/lib/main.d.ts +179 -0
  209. package/templates/node_modules/dotenv/lib/main.js +434 -0
  210. package/templates/node_modules/dotenv/package.json +62 -0
  211. package/templates/node_modules/dunder-proto/.eslintrc +5 -0
  212. package/templates/node_modules/dunder-proto/.github/FUNDING.yml +12 -0
  213. package/templates/node_modules/dunder-proto/.nycrc +13 -0
  214. package/templates/node_modules/dunder-proto/CHANGELOG.md +24 -0
  215. package/templates/node_modules/dunder-proto/LICENSE +21 -0
  216. package/templates/node_modules/dunder-proto/README.md +54 -0
  217. package/templates/node_modules/dunder-proto/get.d.ts +5 -0
  218. package/templates/node_modules/dunder-proto/get.js +30 -0
  219. package/templates/node_modules/dunder-proto/package.json +76 -0
  220. package/templates/node_modules/dunder-proto/set.d.ts +5 -0
  221. package/templates/node_modules/dunder-proto/set.js +35 -0
  222. package/templates/node_modules/dunder-proto/test/get.js +34 -0
  223. package/templates/node_modules/dunder-proto/test/index.js +4 -0
  224. package/templates/node_modules/dunder-proto/test/set.js +50 -0
  225. package/templates/node_modules/dunder-proto/tsconfig.json +9 -0
  226. package/templates/node_modules/ee-first/LICENSE +22 -0
  227. package/templates/node_modules/ee-first/README.md +80 -0
  228. package/templates/node_modules/ee-first/index.js +95 -0
  229. package/templates/node_modules/ee-first/package.json +29 -0
  230. package/templates/node_modules/encodeurl/LICENSE +22 -0
  231. package/templates/node_modules/encodeurl/README.md +109 -0
  232. package/templates/node_modules/encodeurl/index.js +60 -0
  233. package/templates/node_modules/encodeurl/package.json +40 -0
  234. package/templates/node_modules/es-define-property/.eslintrc +13 -0
  235. package/templates/node_modules/es-define-property/.github/FUNDING.yml +12 -0
  236. package/templates/node_modules/es-define-property/.nycrc +9 -0
  237. package/templates/node_modules/es-define-property/CHANGELOG.md +29 -0
  238. package/templates/node_modules/es-define-property/LICENSE +21 -0
  239. package/templates/node_modules/es-define-property/README.md +49 -0
  240. package/templates/node_modules/es-define-property/index.d.ts +3 -0
  241. package/templates/node_modules/es-define-property/index.js +14 -0
  242. package/templates/node_modules/es-define-property/package.json +81 -0
  243. package/templates/node_modules/es-define-property/test/index.js +56 -0
  244. package/templates/node_modules/es-define-property/tsconfig.json +10 -0
  245. package/templates/node_modules/es-errors/.eslintrc +5 -0
  246. package/templates/node_modules/es-errors/.github/FUNDING.yml +12 -0
  247. package/templates/node_modules/es-errors/CHANGELOG.md +40 -0
  248. package/templates/node_modules/es-errors/LICENSE +21 -0
  249. package/templates/node_modules/es-errors/README.md +55 -0
  250. package/templates/node_modules/es-errors/eval.d.ts +3 -0
  251. package/templates/node_modules/es-errors/eval.js +4 -0
  252. package/templates/node_modules/es-errors/index.d.ts +3 -0
  253. package/templates/node_modules/es-errors/index.js +4 -0
  254. package/templates/node_modules/es-errors/package.json +80 -0
  255. package/templates/node_modules/es-errors/range.d.ts +3 -0
  256. package/templates/node_modules/es-errors/range.js +4 -0
  257. package/templates/node_modules/es-errors/ref.d.ts +3 -0
  258. package/templates/node_modules/es-errors/ref.js +4 -0
  259. package/templates/node_modules/es-errors/syntax.d.ts +3 -0
  260. package/templates/node_modules/es-errors/syntax.js +4 -0
  261. package/templates/node_modules/es-errors/test/index.js +19 -0
  262. package/templates/node_modules/es-errors/tsconfig.json +49 -0
  263. package/templates/node_modules/es-errors/type.d.ts +3 -0
  264. package/templates/node_modules/es-errors/type.js +4 -0
  265. package/templates/node_modules/es-errors/uri.d.ts +3 -0
  266. package/templates/node_modules/es-errors/uri.js +4 -0
  267. package/templates/node_modules/es-object-atoms/.eslintrc +16 -0
  268. package/templates/node_modules/es-object-atoms/.github/FUNDING.yml +12 -0
  269. package/templates/node_modules/es-object-atoms/CHANGELOG.md +37 -0
  270. package/templates/node_modules/es-object-atoms/LICENSE +21 -0
  271. package/templates/node_modules/es-object-atoms/README.md +63 -0
  272. package/templates/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +3 -0
  273. package/templates/node_modules/es-object-atoms/RequireObjectCoercible.js +11 -0
  274. package/templates/node_modules/es-object-atoms/ToObject.d.ts +7 -0
  275. package/templates/node_modules/es-object-atoms/ToObject.js +10 -0
  276. package/templates/node_modules/es-object-atoms/index.d.ts +3 -0
  277. package/templates/node_modules/es-object-atoms/index.js +4 -0
  278. package/templates/node_modules/es-object-atoms/isObject.d.ts +3 -0
  279. package/templates/node_modules/es-object-atoms/isObject.js +6 -0
  280. package/templates/node_modules/es-object-atoms/package.json +80 -0
  281. package/templates/node_modules/es-object-atoms/test/index.js +38 -0
  282. package/templates/node_modules/es-object-atoms/tsconfig.json +6 -0
  283. package/templates/node_modules/escape-html/LICENSE +24 -0
  284. package/templates/node_modules/escape-html/Readme.md +43 -0
  285. package/templates/node_modules/escape-html/index.js +78 -0
  286. package/templates/node_modules/escape-html/package.json +24 -0
  287. package/templates/node_modules/etag/HISTORY.md +83 -0
  288. package/templates/node_modules/etag/LICENSE +22 -0
  289. package/templates/node_modules/etag/README.md +159 -0
  290. package/templates/node_modules/etag/index.js +131 -0
  291. package/templates/node_modules/etag/package.json +47 -0
  292. package/templates/node_modules/express/LICENSE +24 -0
  293. package/templates/node_modules/express/Readme.md +276 -0
  294. package/templates/node_modules/express/index.js +11 -0
  295. package/templates/node_modules/express/lib/application.js +631 -0
  296. package/templates/node_modules/express/lib/express.js +81 -0
  297. package/templates/node_modules/express/lib/request.js +514 -0
  298. package/templates/node_modules/express/lib/response.js +1053 -0
  299. package/templates/node_modules/express/lib/utils.js +271 -0
  300. package/templates/node_modules/express/lib/view.js +205 -0
  301. package/templates/node_modules/express/package.json +99 -0
  302. package/templates/node_modules/finalhandler/HISTORY.md +239 -0
  303. package/templates/node_modules/finalhandler/LICENSE +22 -0
  304. package/templates/node_modules/finalhandler/README.md +150 -0
  305. package/templates/node_modules/finalhandler/index.js +293 -0
  306. package/templates/node_modules/finalhandler/package.json +47 -0
  307. package/templates/node_modules/forwarded/HISTORY.md +21 -0
  308. package/templates/node_modules/forwarded/LICENSE +22 -0
  309. package/templates/node_modules/forwarded/README.md +57 -0
  310. package/templates/node_modules/forwarded/index.js +90 -0
  311. package/templates/node_modules/forwarded/package.json +45 -0
  312. package/templates/node_modules/fresh/HISTORY.md +80 -0
  313. package/templates/node_modules/fresh/LICENSE +23 -0
  314. package/templates/node_modules/fresh/README.md +117 -0
  315. package/templates/node_modules/fresh/index.js +136 -0
  316. package/templates/node_modules/fresh/package.json +46 -0
  317. package/templates/node_modules/function-bind/.eslintrc +21 -0
  318. package/templates/node_modules/function-bind/.github/FUNDING.yml +12 -0
  319. package/templates/node_modules/function-bind/.github/SECURITY.md +3 -0
  320. package/templates/node_modules/function-bind/.nycrc +13 -0
  321. package/templates/node_modules/function-bind/CHANGELOG.md +136 -0
  322. package/templates/node_modules/function-bind/LICENSE +20 -0
  323. package/templates/node_modules/function-bind/README.md +46 -0
  324. package/templates/node_modules/function-bind/implementation.js +84 -0
  325. package/templates/node_modules/function-bind/index.js +5 -0
  326. package/templates/node_modules/function-bind/package.json +87 -0
  327. package/templates/node_modules/function-bind/test/.eslintrc +9 -0
  328. package/templates/node_modules/function-bind/test/index.js +252 -0
  329. package/templates/node_modules/get-intrinsic/.eslintrc +42 -0
  330. package/templates/node_modules/get-intrinsic/.github/FUNDING.yml +12 -0
  331. package/templates/node_modules/get-intrinsic/.nycrc +9 -0
  332. package/templates/node_modules/get-intrinsic/CHANGELOG.md +186 -0
  333. package/templates/node_modules/get-intrinsic/LICENSE +21 -0
  334. package/templates/node_modules/get-intrinsic/README.md +71 -0
  335. package/templates/node_modules/get-intrinsic/index.js +378 -0
  336. package/templates/node_modules/get-intrinsic/package.json +97 -0
  337. package/templates/node_modules/get-intrinsic/test/GetIntrinsic.js +274 -0
  338. package/templates/node_modules/get-proto/.eslintrc +10 -0
  339. package/templates/node_modules/get-proto/.github/FUNDING.yml +12 -0
  340. package/templates/node_modules/get-proto/.nycrc +9 -0
  341. package/templates/node_modules/get-proto/CHANGELOG.md +21 -0
  342. package/templates/node_modules/get-proto/LICENSE +21 -0
  343. package/templates/node_modules/get-proto/Object.getPrototypeOf.d.ts +5 -0
  344. package/templates/node_modules/get-proto/Object.getPrototypeOf.js +6 -0
  345. package/templates/node_modules/get-proto/README.md +50 -0
  346. package/templates/node_modules/get-proto/Reflect.getPrototypeOf.d.ts +3 -0
  347. package/templates/node_modules/get-proto/Reflect.getPrototypeOf.js +4 -0
  348. package/templates/node_modules/get-proto/index.d.ts +5 -0
  349. package/templates/node_modules/get-proto/index.js +27 -0
  350. package/templates/node_modules/get-proto/package.json +81 -0
  351. package/templates/node_modules/get-proto/test/index.js +68 -0
  352. package/templates/node_modules/get-proto/tsconfig.json +9 -0
  353. package/templates/node_modules/gopd/.eslintrc +16 -0
  354. package/templates/node_modules/gopd/.github/FUNDING.yml +12 -0
  355. package/templates/node_modules/gopd/CHANGELOG.md +45 -0
  356. package/templates/node_modules/gopd/LICENSE +21 -0
  357. package/templates/node_modules/gopd/README.md +40 -0
  358. package/templates/node_modules/gopd/gOPD.d.ts +1 -0
  359. package/templates/node_modules/gopd/gOPD.js +4 -0
  360. package/templates/node_modules/gopd/index.d.ts +5 -0
  361. package/templates/node_modules/gopd/index.js +15 -0
  362. package/templates/node_modules/gopd/package.json +77 -0
  363. package/templates/node_modules/gopd/test/index.js +36 -0
  364. package/templates/node_modules/gopd/tsconfig.json +9 -0
  365. package/templates/node_modules/has-symbols/.eslintrc +11 -0
  366. package/templates/node_modules/has-symbols/.github/FUNDING.yml +12 -0
  367. package/templates/node_modules/has-symbols/.nycrc +9 -0
  368. package/templates/node_modules/has-symbols/CHANGELOG.md +91 -0
  369. package/templates/node_modules/has-symbols/LICENSE +21 -0
  370. package/templates/node_modules/has-symbols/README.md +46 -0
  371. package/templates/node_modules/has-symbols/index.d.ts +3 -0
  372. package/templates/node_modules/has-symbols/index.js +14 -0
  373. package/templates/node_modules/has-symbols/package.json +111 -0
  374. package/templates/node_modules/has-symbols/shams.d.ts +3 -0
  375. package/templates/node_modules/has-symbols/shams.js +45 -0
  376. package/templates/node_modules/has-symbols/test/index.js +22 -0
  377. package/templates/node_modules/has-symbols/test/shams/core-js.js +29 -0
  378. package/templates/node_modules/has-symbols/test/shams/get-own-property-symbols.js +29 -0
  379. package/templates/node_modules/has-symbols/test/tests.js +58 -0
  380. package/templates/node_modules/has-symbols/tsconfig.json +10 -0
  381. package/templates/node_modules/hasown/.eslintrc +5 -0
  382. package/templates/node_modules/hasown/.github/FUNDING.yml +12 -0
  383. package/templates/node_modules/hasown/.nycrc +13 -0
  384. package/templates/node_modules/hasown/CHANGELOG.md +40 -0
  385. package/templates/node_modules/hasown/LICENSE +21 -0
  386. package/templates/node_modules/hasown/README.md +40 -0
  387. package/templates/node_modules/hasown/index.d.ts +3 -0
  388. package/templates/node_modules/hasown/index.js +8 -0
  389. package/templates/node_modules/hasown/package.json +92 -0
  390. package/templates/node_modules/hasown/tsconfig.json +6 -0
  391. package/templates/node_modules/http-errors/HISTORY.md +186 -0
  392. package/templates/node_modules/http-errors/LICENSE +23 -0
  393. package/templates/node_modules/http-errors/README.md +169 -0
  394. package/templates/node_modules/http-errors/index.js +290 -0
  395. package/templates/node_modules/http-errors/package.json +54 -0
  396. package/templates/node_modules/iconv-lite/Changelog.md +241 -0
  397. package/templates/node_modules/iconv-lite/LICENSE +21 -0
  398. package/templates/node_modules/iconv-lite/README.md +138 -0
  399. package/templates/node_modules/iconv-lite/encodings/dbcs-codec.js +532 -0
  400. package/templates/node_modules/iconv-lite/encodings/dbcs-data.js +185 -0
  401. package/templates/node_modules/iconv-lite/encodings/index.js +23 -0
  402. package/templates/node_modules/iconv-lite/encodings/internal.js +218 -0
  403. package/templates/node_modules/iconv-lite/encodings/sbcs-codec.js +75 -0
  404. package/templates/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  405. package/templates/node_modules/iconv-lite/encodings/sbcs-data.js +178 -0
  406. package/templates/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  407. package/templates/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  408. package/templates/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  409. package/templates/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  410. package/templates/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  411. package/templates/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  412. package/templates/node_modules/iconv-lite/encodings/tables/gbk-added.json +56 -0
  413. package/templates/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  414. package/templates/node_modules/iconv-lite/encodings/utf16.js +187 -0
  415. package/templates/node_modules/iconv-lite/encodings/utf32.js +307 -0
  416. package/templates/node_modules/iconv-lite/encodings/utf7.js +283 -0
  417. package/templates/node_modules/iconv-lite/lib/bom-handling.js +48 -0
  418. package/templates/node_modules/iconv-lite/lib/helpers/merge-exports.js +13 -0
  419. package/templates/node_modules/iconv-lite/lib/index.d.ts +131 -0
  420. package/templates/node_modules/iconv-lite/lib/index.js +183 -0
  421. package/templates/node_modules/iconv-lite/lib/streams.js +105 -0
  422. package/templates/node_modules/iconv-lite/package.json +65 -0
  423. package/templates/node_modules/iconv-lite/types/encodings.d.ts +423 -0
  424. package/templates/node_modules/inherits/LICENSE +16 -0
  425. package/templates/node_modules/inherits/README.md +42 -0
  426. package/templates/node_modules/inherits/inherits.js +9 -0
  427. package/templates/node_modules/inherits/inherits_browser.js +27 -0
  428. package/templates/node_modules/inherits/package.json +29 -0
  429. package/templates/node_modules/ipaddr.js/LICENSE +19 -0
  430. package/templates/node_modules/ipaddr.js/README.md +233 -0
  431. package/templates/node_modules/ipaddr.js/ipaddr.min.js +1 -0
  432. package/templates/node_modules/ipaddr.js/lib/ipaddr.js +673 -0
  433. package/templates/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +68 -0
  434. package/templates/node_modules/ipaddr.js/package.json +35 -0
  435. package/templates/node_modules/is-promise/LICENSE +19 -0
  436. package/templates/node_modules/is-promise/index.d.ts +2 -0
  437. package/templates/node_modules/is-promise/index.js +6 -0
  438. package/templates/node_modules/is-promise/index.mjs +3 -0
  439. package/templates/node_modules/is-promise/package.json +30 -0
  440. package/templates/node_modules/is-promise/readme.md +33 -0
  441. package/templates/node_modules/kareem/.nyc_output/fa57d6c4-9e78-4624-9229-f77b87a07481.json +1 -0
  442. package/templates/node_modules/kareem/.nyc_output/processinfo/fa57d6c4-9e78-4624-9229-f77b87a07481.json +1 -0
  443. package/templates/node_modules/kareem/.nyc_output/processinfo/index.json +1 -0
  444. package/templates/node_modules/kareem/CHANGELOG.md +830 -0
  445. package/templates/node_modules/kareem/LICENSE +202 -0
  446. package/templates/node_modules/kareem/README.md +408 -0
  447. package/templates/node_modules/kareem/SECURITY.md +5 -0
  448. package/templates/node_modules/kareem/coverage/lcov-report/base.css +224 -0
  449. package/templates/node_modules/kareem/coverage/lcov-report/block-navigation.js +87 -0
  450. package/templates/node_modules/kareem/coverage/lcov-report/favicon.png +0 -0
  451. package/templates/node_modules/kareem/coverage/lcov-report/index.html +116 -0
  452. package/templates/node_modules/kareem/coverage/lcov-report/index.js.html +1603 -0
  453. package/templates/node_modules/kareem/coverage/lcov-report/prettify.css +1 -0
  454. package/templates/node_modules/kareem/coverage/lcov-report/prettify.js +2 -0
  455. package/templates/node_modules/kareem/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  456. package/templates/node_modules/kareem/coverage/lcov-report/sorter.js +196 -0
  457. package/templates/node_modules/kareem/coverage/lcov.info +423 -0
  458. package/templates/node_modules/kareem/index.d.ts +31 -0
  459. package/templates/node_modules/kareem/index.js +509 -0
  460. package/templates/node_modules/kareem/package.json +28 -0
  461. package/templates/node_modules/math-intrinsics/.eslintrc +16 -0
  462. package/templates/node_modules/math-intrinsics/.github/FUNDING.yml +12 -0
  463. package/templates/node_modules/math-intrinsics/CHANGELOG.md +24 -0
  464. package/templates/node_modules/math-intrinsics/LICENSE +21 -0
  465. package/templates/node_modules/math-intrinsics/README.md +50 -0
  466. package/templates/node_modules/math-intrinsics/abs.d.ts +1 -0
  467. package/templates/node_modules/math-intrinsics/abs.js +4 -0
  468. package/templates/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +3 -0
  469. package/templates/node_modules/math-intrinsics/constants/maxArrayLength.js +4 -0
  470. package/templates/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +3 -0
  471. package/templates/node_modules/math-intrinsics/constants/maxSafeInteger.js +5 -0
  472. package/templates/node_modules/math-intrinsics/constants/maxValue.d.ts +3 -0
  473. package/templates/node_modules/math-intrinsics/constants/maxValue.js +5 -0
  474. package/templates/node_modules/math-intrinsics/floor.d.ts +1 -0
  475. package/templates/node_modules/math-intrinsics/floor.js +4 -0
  476. package/templates/node_modules/math-intrinsics/isFinite.d.ts +3 -0
  477. package/templates/node_modules/math-intrinsics/isFinite.js +12 -0
  478. package/templates/node_modules/math-intrinsics/isInteger.d.ts +3 -0
  479. package/templates/node_modules/math-intrinsics/isInteger.js +16 -0
  480. package/templates/node_modules/math-intrinsics/isNaN.d.ts +1 -0
  481. package/templates/node_modules/math-intrinsics/isNaN.js +6 -0
  482. package/templates/node_modules/math-intrinsics/isNegativeZero.d.ts +3 -0
  483. package/templates/node_modules/math-intrinsics/isNegativeZero.js +6 -0
  484. package/templates/node_modules/math-intrinsics/max.d.ts +1 -0
  485. package/templates/node_modules/math-intrinsics/max.js +4 -0
  486. package/templates/node_modules/math-intrinsics/min.d.ts +1 -0
  487. package/templates/node_modules/math-intrinsics/min.js +4 -0
  488. package/templates/node_modules/math-intrinsics/mod.d.ts +3 -0
  489. package/templates/node_modules/math-intrinsics/mod.js +9 -0
  490. package/templates/node_modules/math-intrinsics/package.json +86 -0
  491. package/templates/node_modules/math-intrinsics/pow.d.ts +1 -0
  492. package/templates/node_modules/math-intrinsics/pow.js +4 -0
  493. package/templates/node_modules/math-intrinsics/round.d.ts +1 -0
  494. package/templates/node_modules/math-intrinsics/round.js +4 -0
  495. package/templates/node_modules/math-intrinsics/sign.d.ts +3 -0
  496. package/templates/node_modules/math-intrinsics/sign.js +11 -0
  497. package/templates/node_modules/math-intrinsics/test/index.js +192 -0
  498. package/templates/node_modules/math-intrinsics/tsconfig.json +3 -0
  499. package/templates/node_modules/media-typer/HISTORY.md +50 -0
  500. package/templates/node_modules/media-typer/LICENSE +22 -0
  501. package/templates/node_modules/media-typer/README.md +93 -0
  502. package/templates/node_modules/media-typer/index.js +143 -0
  503. package/templates/node_modules/media-typer/package.json +33 -0
  504. package/templates/node_modules/memory-pager/.travis.yml +4 -0
  505. package/templates/node_modules/memory-pager/LICENSE +21 -0
  506. package/templates/node_modules/memory-pager/README.md +65 -0
  507. package/templates/node_modules/memory-pager/index.js +160 -0
  508. package/templates/node_modules/memory-pager/package.json +24 -0
  509. package/templates/node_modules/memory-pager/test.js +80 -0
  510. package/templates/node_modules/merge-descriptors/index.d.ts +11 -0
  511. package/templates/node_modules/merge-descriptors/index.js +26 -0
  512. package/templates/node_modules/merge-descriptors/license +11 -0
  513. package/templates/node_modules/merge-descriptors/package.json +50 -0
  514. package/templates/node_modules/merge-descriptors/readme.md +55 -0
  515. package/templates/node_modules/mime-db/HISTORY.md +541 -0
  516. package/templates/node_modules/mime-db/LICENSE +23 -0
  517. package/templates/node_modules/mime-db/README.md +109 -0
  518. package/templates/node_modules/mime-db/db.json +9342 -0
  519. package/templates/node_modules/mime-db/index.js +12 -0
  520. package/templates/node_modules/mime-db/package.json +56 -0
  521. package/templates/node_modules/mime-types/HISTORY.md +428 -0
  522. package/templates/node_modules/mime-types/LICENSE +23 -0
  523. package/templates/node_modules/mime-types/README.md +126 -0
  524. package/templates/node_modules/mime-types/index.js +211 -0
  525. package/templates/node_modules/mime-types/mimeScore.js +57 -0
  526. package/templates/node_modules/mime-types/package.json +49 -0
  527. package/templates/node_modules/mongodb/LICENSE.md +201 -0
  528. package/templates/node_modules/mongodb/README.md +355 -0
  529. package/templates/node_modules/mongodb/etc/prepare.js +12 -0
  530. package/templates/node_modules/mongodb/lib/admin.js +136 -0
  531. package/templates/node_modules/mongodb/lib/admin.js.map +1 -0
  532. package/templates/node_modules/mongodb/lib/bson.js +84 -0
  533. package/templates/node_modules/mongodb/lib/bson.js.map +1 -0
  534. package/templates/node_modules/mongodb/lib/bulk/common.js +835 -0
  535. package/templates/node_modules/mongodb/lib/bulk/common.js.map +1 -0
  536. package/templates/node_modules/mongodb/lib/bulk/ordered.js +67 -0
  537. package/templates/node_modules/mongodb/lib/bulk/ordered.js.map +1 -0
  538. package/templates/node_modules/mongodb/lib/bulk/unordered.js +92 -0
  539. package/templates/node_modules/mongodb/lib/bulk/unordered.js.map +1 -0
  540. package/templates/node_modules/mongodb/lib/change_stream.js +511 -0
  541. package/templates/node_modules/mongodb/lib/change_stream.js.map +1 -0
  542. package/templates/node_modules/mongodb/lib/client-side-encryption/auto_encrypter.js +272 -0
  543. package/templates/node_modules/mongodb/lib/client-side-encryption/auto_encrypter.js.map +1 -0
  544. package/templates/node_modules/mongodb/lib/client-side-encryption/client_encryption.js +609 -0
  545. package/templates/node_modules/mongodb/lib/client-side-encryption/client_encryption.js.map +1 -0
  546. package/templates/node_modules/mongodb/lib/client-side-encryption/errors.js +138 -0
  547. package/templates/node_modules/mongodb/lib/client-side-encryption/errors.js.map +1 -0
  548. package/templates/node_modules/mongodb/lib/client-side-encryption/mongocryptd_manager.js +85 -0
  549. package/templates/node_modules/mongodb/lib/client-side-encryption/mongocryptd_manager.js.map +1 -0
  550. package/templates/node_modules/mongodb/lib/client-side-encryption/providers/aws.js +23 -0
  551. package/templates/node_modules/mongodb/lib/client-side-encryption/providers/aws.js.map +1 -0
  552. package/templates/node_modules/mongodb/lib/client-side-encryption/providers/azure.js +132 -0
  553. package/templates/node_modules/mongodb/lib/client-side-encryption/providers/azure.js.map +1 -0
  554. package/templates/node_modules/mongodb/lib/client-side-encryption/providers/gcp.js +16 -0
  555. package/templates/node_modules/mongodb/lib/client-side-encryption/providers/gcp.js.map +1 -0
  556. package/templates/node_modules/mongodb/lib/client-side-encryption/providers/index.js +43 -0
  557. package/templates/node_modules/mongodb/lib/client-side-encryption/providers/index.js.map +1 -0
  558. package/templates/node_modules/mongodb/lib/client-side-encryption/state_machine.js +426 -0
  559. package/templates/node_modules/mongodb/lib/client-side-encryption/state_machine.js.map +1 -0
  560. package/templates/node_modules/mongodb/lib/cmap/auth/auth_provider.js +51 -0
  561. package/templates/node_modules/mongodb/lib/cmap/auth/auth_provider.js.map +1 -0
  562. package/templates/node_modules/mongodb/lib/cmap/auth/aws_temporary_credentials.js +102 -0
  563. package/templates/node_modules/mongodb/lib/cmap/auth/aws_temporary_credentials.js.map +1 -0
  564. package/templates/node_modules/mongodb/lib/cmap/auth/gssapi.js +154 -0
  565. package/templates/node_modules/mongodb/lib/cmap/auth/gssapi.js.map +1 -0
  566. package/templates/node_modules/mongodb/lib/cmap/auth/mongo_credentials.js +168 -0
  567. package/templates/node_modules/mongodb/lib/cmap/auth/mongo_credentials.js.map +1 -0
  568. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_aws.js +133 -0
  569. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_aws.js.map +1 -0
  570. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/automated_callback_workflow.js +84 -0
  571. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/automated_callback_workflow.js.map +1 -0
  572. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/azure_machine_workflow.js +62 -0
  573. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/azure_machine_workflow.js.map +1 -0
  574. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/callback_workflow.js +141 -0
  575. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/callback_workflow.js.map +1 -0
  576. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/command_builders.js +44 -0
  577. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/command_builders.js.map +1 -0
  578. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/gcp_machine_workflow.js +39 -0
  579. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/gcp_machine_workflow.js.map +1 -0
  580. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/human_callback_workflow.js +122 -0
  581. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/human_callback_workflow.js.map +1 -0
  582. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/k8s_machine_workflow.js +31 -0
  583. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/k8s_machine_workflow.js.map +1 -0
  584. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/token_cache.js +52 -0
  585. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/token_cache.js.map +1 -0
  586. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/token_machine_workflow.js +22 -0
  587. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc/token_machine_workflow.js.map +1 -0
  588. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc.js +73 -0
  589. package/templates/node_modules/mongodb/lib/cmap/auth/mongodb_oidc.js.map +1 -0
  590. package/templates/node_modules/mongodb/lib/cmap/auth/plain.js +26 -0
  591. package/templates/node_modules/mongodb/lib/cmap/auth/plain.js.map +1 -0
  592. package/templates/node_modules/mongodb/lib/cmap/auth/providers.js +22 -0
  593. package/templates/node_modules/mongodb/lib/cmap/auth/providers.js.map +1 -0
  594. package/templates/node_modules/mongodb/lib/cmap/auth/scram.js +254 -0
  595. package/templates/node_modules/mongodb/lib/cmap/auth/scram.js.map +1 -0
  596. package/templates/node_modules/mongodb/lib/cmap/auth/x509.js +36 -0
  597. package/templates/node_modules/mongodb/lib/cmap/auth/x509.js.map +1 -0
  598. package/templates/node_modules/mongodb/lib/cmap/command_monitoring_events.js +223 -0
  599. package/templates/node_modules/mongodb/lib/cmap/command_monitoring_events.js.map +1 -0
  600. package/templates/node_modules/mongodb/lib/cmap/commands.js +535 -0
  601. package/templates/node_modules/mongodb/lib/cmap/commands.js.map +1 -0
  602. package/templates/node_modules/mongodb/lib/cmap/connect.js +366 -0
  603. package/templates/node_modules/mongodb/lib/cmap/connect.js.map +1 -0
  604. package/templates/node_modules/mongodb/lib/cmap/connection.js +571 -0
  605. package/templates/node_modules/mongodb/lib/cmap/connection.js.map +1 -0
  606. package/templates/node_modules/mongodb/lib/cmap/connection_pool.js +558 -0
  607. package/templates/node_modules/mongodb/lib/cmap/connection_pool.js.map +1 -0
  608. package/templates/node_modules/mongodb/lib/cmap/connection_pool_events.js +190 -0
  609. package/templates/node_modules/mongodb/lib/cmap/connection_pool_events.js.map +1 -0
  610. package/templates/node_modules/mongodb/lib/cmap/errors.js +108 -0
  611. package/templates/node_modules/mongodb/lib/cmap/errors.js.map +1 -0
  612. package/templates/node_modules/mongodb/lib/cmap/handshake/client_metadata.js +241 -0
  613. package/templates/node_modules/mongodb/lib/cmap/handshake/client_metadata.js.map +1 -0
  614. package/templates/node_modules/mongodb/lib/cmap/metrics.js +62 -0
  615. package/templates/node_modules/mongodb/lib/cmap/metrics.js.map +1 -0
  616. package/templates/node_modules/mongodb/lib/cmap/stream_description.js +70 -0
  617. package/templates/node_modules/mongodb/lib/cmap/stream_description.js.map +1 -0
  618. package/templates/node_modules/mongodb/lib/cmap/wire_protocol/compression.js +163 -0
  619. package/templates/node_modules/mongodb/lib/cmap/wire_protocol/compression.js.map +1 -0
  620. package/templates/node_modules/mongodb/lib/cmap/wire_protocol/constants.js +21 -0
  621. package/templates/node_modules/mongodb/lib/cmap/wire_protocol/constants.js.map +1 -0
  622. package/templates/node_modules/mongodb/lib/cmap/wire_protocol/on_data.js +111 -0
  623. package/templates/node_modules/mongodb/lib/cmap/wire_protocol/on_data.js.map +1 -0
  624. package/templates/node_modules/mongodb/lib/cmap/wire_protocol/on_demand/document.js +222 -0
  625. package/templates/node_modules/mongodb/lib/cmap/wire_protocol/on_demand/document.js.map +1 -0
  626. package/templates/node_modules/mongodb/lib/cmap/wire_protocol/responses.js +315 -0
  627. package/templates/node_modules/mongodb/lib/cmap/wire_protocol/responses.js.map +1 -0
  628. package/templates/node_modules/mongodb/lib/cmap/wire_protocol/shared.js +35 -0
  629. package/templates/node_modules/mongodb/lib/cmap/wire_protocol/shared.js.map +1 -0
  630. package/templates/node_modules/mongodb/lib/collection.js +751 -0
  631. package/templates/node_modules/mongodb/lib/collection.js.map +1 -0
  632. package/templates/node_modules/mongodb/lib/connection_string.js +1089 -0
  633. package/templates/node_modules/mongodb/lib/connection_string.js.map +1 -0
  634. package/templates/node_modules/mongodb/lib/constants.js +170 -0
  635. package/templates/node_modules/mongodb/lib/constants.js.map +1 -0
  636. package/templates/node_modules/mongodb/lib/cursor/abstract_cursor.js +924 -0
  637. package/templates/node_modules/mongodb/lib/cursor/abstract_cursor.js.map +1 -0
  638. package/templates/node_modules/mongodb/lib/cursor/aggregation_cursor.js +164 -0
  639. package/templates/node_modules/mongodb/lib/cursor/aggregation_cursor.js.map +1 -0
  640. package/templates/node_modules/mongodb/lib/cursor/change_stream_cursor.js +104 -0
  641. package/templates/node_modules/mongodb/lib/cursor/change_stream_cursor.js.map +1 -0
  642. package/templates/node_modules/mongodb/lib/cursor/client_bulk_write_cursor.js +52 -0
  643. package/templates/node_modules/mongodb/lib/cursor/client_bulk_write_cursor.js.map +1 -0
  644. package/templates/node_modules/mongodb/lib/cursor/explainable_cursor.js +36 -0
  645. package/templates/node_modules/mongodb/lib/cursor/explainable_cursor.js.map +1 -0
  646. package/templates/node_modules/mongodb/lib/cursor/find_cursor.js +399 -0
  647. package/templates/node_modules/mongodb/lib/cursor/find_cursor.js.map +1 -0
  648. package/templates/node_modules/mongodb/lib/cursor/list_collections_cursor.js +34 -0
  649. package/templates/node_modules/mongodb/lib/cursor/list_collections_cursor.js.map +1 -0
  650. package/templates/node_modules/mongodb/lib/cursor/list_indexes_cursor.js +32 -0
  651. package/templates/node_modules/mongodb/lib/cursor/list_indexes_cursor.js.map +1 -0
  652. package/templates/node_modules/mongodb/lib/cursor/list_search_indexes_cursor.js +14 -0
  653. package/templates/node_modules/mongodb/lib/cursor/list_search_indexes_cursor.js.map +1 -0
  654. package/templates/node_modules/mongodb/lib/cursor/run_command_cursor.js +94 -0
  655. package/templates/node_modules/mongodb/lib/cursor/run_command_cursor.js.map +1 -0
  656. package/templates/node_modules/mongodb/lib/db.js +420 -0
  657. package/templates/node_modules/mongodb/lib/db.js.map +1 -0
  658. package/templates/node_modules/mongodb/lib/deps.js +125 -0
  659. package/templates/node_modules/mongodb/lib/deps.js.map +1 -0
  660. package/templates/node_modules/mongodb/lib/encrypter.js +106 -0
  661. package/templates/node_modules/mongodb/lib/encrypter.js.map +1 -0
  662. package/templates/node_modules/mongodb/lib/error.js +1383 -0
  663. package/templates/node_modules/mongodb/lib/error.js.map +1 -0
  664. package/templates/node_modules/mongodb/lib/explain.js +59 -0
  665. package/templates/node_modules/mongodb/lib/explain.js.map +1 -0
  666. package/templates/node_modules/mongodb/lib/gridfs/download.js +305 -0
  667. package/templates/node_modules/mongodb/lib/gridfs/download.js.map +1 -0
  668. package/templates/node_modules/mongodb/lib/gridfs/index.js +164 -0
  669. package/templates/node_modules/mongodb/lib/gridfs/index.js.map +1 -0
  670. package/templates/node_modules/mongodb/lib/gridfs/upload.js +358 -0
  671. package/templates/node_modules/mongodb/lib/gridfs/upload.js.map +1 -0
  672. package/templates/node_modules/mongodb/lib/index.js +193 -0
  673. package/templates/node_modules/mongodb/lib/index.js.map +1 -0
  674. package/templates/node_modules/mongodb/lib/mongo_client.js +557 -0
  675. package/templates/node_modules/mongodb/lib/mongo_client.js.map +1 -0
  676. package/templates/node_modules/mongodb/lib/mongo_client_auth_providers.js +80 -0
  677. package/templates/node_modules/mongodb/lib/mongo_client_auth_providers.js.map +1 -0
  678. package/templates/node_modules/mongodb/lib/mongo_logger.js +649 -0
  679. package/templates/node_modules/mongodb/lib/mongo_logger.js.map +1 -0
  680. package/templates/node_modules/mongodb/lib/mongo_types.js +56 -0
  681. package/templates/node_modules/mongodb/lib/mongo_types.js.map +1 -0
  682. package/templates/node_modules/mongodb/lib/operations/aggregate.js +90 -0
  683. package/templates/node_modules/mongodb/lib/operations/aggregate.js.map +1 -0
  684. package/templates/node_modules/mongodb/lib/operations/client_bulk_write/client_bulk_write.js +51 -0
  685. package/templates/node_modules/mongodb/lib/operations/client_bulk_write/client_bulk_write.js.map +1 -0
  686. package/templates/node_modules/mongodb/lib/operations/client_bulk_write/command_builder.js +340 -0
  687. package/templates/node_modules/mongodb/lib/operations/client_bulk_write/command_builder.js.map +1 -0
  688. package/templates/node_modules/mongodb/lib/operations/client_bulk_write/common.js +3 -0
  689. package/templates/node_modules/mongodb/lib/operations/client_bulk_write/common.js.map +1 -0
  690. package/templates/node_modules/mongodb/lib/operations/client_bulk_write/executor.js +120 -0
  691. package/templates/node_modules/mongodb/lib/operations/client_bulk_write/executor.js.map +1 -0
  692. package/templates/node_modules/mongodb/lib/operations/client_bulk_write/results_merger.js +204 -0
  693. package/templates/node_modules/mongodb/lib/operations/client_bulk_write/results_merger.js.map +1 -0
  694. package/templates/node_modules/mongodb/lib/operations/command.js +83 -0
  695. package/templates/node_modules/mongodb/lib/operations/command.js.map +1 -0
  696. package/templates/node_modules/mongodb/lib/operations/count.js +45 -0
  697. package/templates/node_modules/mongodb/lib/operations/count.js.map +1 -0
  698. package/templates/node_modules/mongodb/lib/operations/create_collection.js +109 -0
  699. package/templates/node_modules/mongodb/lib/operations/create_collection.js.map +1 -0
  700. package/templates/node_modules/mongodb/lib/operations/delete.js +125 -0
  701. package/templates/node_modules/mongodb/lib/operations/delete.js.map +1 -0
  702. package/templates/node_modules/mongodb/lib/operations/distinct.js +61 -0
  703. package/templates/node_modules/mongodb/lib/operations/distinct.js.map +1 -0
  704. package/templates/node_modules/mongodb/lib/operations/drop.js +93 -0
  705. package/templates/node_modules/mongodb/lib/operations/drop.js.map +1 -0
  706. package/templates/node_modules/mongodb/lib/operations/end_sessions.js +34 -0
  707. package/templates/node_modules/mongodb/lib/operations/end_sessions.js.map +1 -0
  708. package/templates/node_modules/mongodb/lib/operations/estimated_document_count.js +41 -0
  709. package/templates/node_modules/mongodb/lib/operations/estimated_document_count.js.map +1 -0
  710. package/templates/node_modules/mongodb/lib/operations/execute_operation.js +238 -0
  711. package/templates/node_modules/mongodb/lib/operations/execute_operation.js.map +1 -0
  712. package/templates/node_modules/mongodb/lib/operations/find.js +148 -0
  713. package/templates/node_modules/mongodb/lib/operations/find.js.map +1 -0
  714. package/templates/node_modules/mongodb/lib/operations/find_and_modify.js +158 -0
  715. package/templates/node_modules/mongodb/lib/operations/find_and_modify.js.map +1 -0
  716. package/templates/node_modules/mongodb/lib/operations/get_more.js +62 -0
  717. package/templates/node_modules/mongodb/lib/operations/get_more.js.map +1 -0
  718. package/templates/node_modules/mongodb/lib/operations/indexes.js +186 -0
  719. package/templates/node_modules/mongodb/lib/operations/indexes.js.map +1 -0
  720. package/templates/node_modules/mongodb/lib/operations/insert.js +70 -0
  721. package/templates/node_modules/mongodb/lib/operations/insert.js.map +1 -0
  722. package/templates/node_modules/mongodb/lib/operations/kill_cursors.js +43 -0
  723. package/templates/node_modules/mongodb/lib/operations/kill_cursors.js.map +1 -0
  724. package/templates/node_modules/mongodb/lib/operations/list_collections.js +53 -0
  725. package/templates/node_modules/mongodb/lib/operations/list_collections.js.map +1 -0
  726. package/templates/node_modules/mongodb/lib/operations/list_databases.js +40 -0
  727. package/templates/node_modules/mongodb/lib/operations/list_databases.js.map +1 -0
  728. package/templates/node_modules/mongodb/lib/operations/operation.js +102 -0
  729. package/templates/node_modules/mongodb/lib/operations/operation.js.map +1 -0
  730. package/templates/node_modules/mongodb/lib/operations/profiling_level.js +43 -0
  731. package/templates/node_modules/mongodb/lib/operations/profiling_level.js.map +1 -0
  732. package/templates/node_modules/mongodb/lib/operations/remove_user.js +27 -0
  733. package/templates/node_modules/mongodb/lib/operations/remove_user.js.map +1 -0
  734. package/templates/node_modules/mongodb/lib/operations/rename.js +38 -0
  735. package/templates/node_modules/mongodb/lib/operations/rename.js.map +1 -0
  736. package/templates/node_modules/mongodb/lib/operations/run_command.js +47 -0
  737. package/templates/node_modules/mongodb/lib/operations/run_command.js.map +1 -0
  738. package/templates/node_modules/mongodb/lib/operations/search_indexes/create.js +33 -0
  739. package/templates/node_modules/mongodb/lib/operations/search_indexes/create.js.map +1 -0
  740. package/templates/node_modules/mongodb/lib/operations/search_indexes/drop.js +43 -0
  741. package/templates/node_modules/mongodb/lib/operations/search_indexes/drop.js.map +1 -0
  742. package/templates/node_modules/mongodb/lib/operations/search_indexes/update.js +35 -0
  743. package/templates/node_modules/mongodb/lib/operations/search_indexes/update.js.map +1 -0
  744. package/templates/node_modules/mongodb/lib/operations/set_profiling_level.js +53 -0
  745. package/templates/node_modules/mongodb/lib/operations/set_profiling_level.js.map +1 -0
  746. package/templates/node_modules/mongodb/lib/operations/stats.js +27 -0
  747. package/templates/node_modules/mongodb/lib/operations/stats.js.map +1 -0
  748. package/templates/node_modules/mongodb/lib/operations/update.js +188 -0
  749. package/templates/node_modules/mongodb/lib/operations/update.js.map +1 -0
  750. package/templates/node_modules/mongodb/lib/operations/validate_collection.js +37 -0
  751. package/templates/node_modules/mongodb/lib/operations/validate_collection.js.map +1 -0
  752. package/templates/node_modules/mongodb/lib/read_concern.js +73 -0
  753. package/templates/node_modules/mongodb/lib/read_concern.js.map +1 -0
  754. package/templates/node_modules/mongodb/lib/read_preference.js +191 -0
  755. package/templates/node_modules/mongodb/lib/read_preference.js.map +1 -0
  756. package/templates/node_modules/mongodb/lib/sdam/common.js +49 -0
  757. package/templates/node_modules/mongodb/lib/sdam/common.js.map +1 -0
  758. package/templates/node_modules/mongodb/lib/sdam/events.js +146 -0
  759. package/templates/node_modules/mongodb/lib/sdam/events.js.map +1 -0
  760. package/templates/node_modules/mongodb/lib/sdam/monitor.js +544 -0
  761. package/templates/node_modules/mongodb/lib/sdam/monitor.js.map +1 -0
  762. package/templates/node_modules/mongodb/lib/sdam/server.js +392 -0
  763. package/templates/node_modules/mongodb/lib/sdam/server.js.map +1 -0
  764. package/templates/node_modules/mongodb/lib/sdam/server_description.js +204 -0
  765. package/templates/node_modules/mongodb/lib/sdam/server_description.js.map +1 -0
  766. package/templates/node_modules/mongodb/lib/sdam/server_selection.js +231 -0
  767. package/templates/node_modules/mongodb/lib/sdam/server_selection.js.map +1 -0
  768. package/templates/node_modules/mongodb/lib/sdam/server_selection_events.js +85 -0
  769. package/templates/node_modules/mongodb/lib/sdam/server_selection_events.js.map +1 -0
  770. package/templates/node_modules/mongodb/lib/sdam/srv_polling.js +108 -0
  771. package/templates/node_modules/mongodb/lib/sdam/srv_polling.js.map +1 -0
  772. package/templates/node_modules/mongodb/lib/sdam/topology.js +650 -0
  773. package/templates/node_modules/mongodb/lib/sdam/topology.js.map +1 -0
  774. package/templates/node_modules/mongodb/lib/sdam/topology_description.js +383 -0
  775. package/templates/node_modules/mongodb/lib/sdam/topology_description.js.map +1 -0
  776. package/templates/node_modules/mongodb/lib/sessions.js +828 -0
  777. package/templates/node_modules/mongodb/lib/sessions.js.map +1 -0
  778. package/templates/node_modules/mongodb/lib/sort.js +103 -0
  779. package/templates/node_modules/mongodb/lib/sort.js.map +1 -0
  780. package/templates/node_modules/mongodb/lib/timeout.js +296 -0
  781. package/templates/node_modules/mongodb/lib/timeout.js.map +1 -0
  782. package/templates/node_modules/mongodb/lib/transactions.js +135 -0
  783. package/templates/node_modules/mongodb/lib/transactions.js.map +1 -0
  784. package/templates/node_modules/mongodb/lib/utils.js +1189 -0
  785. package/templates/node_modules/mongodb/lib/utils.js.map +1 -0
  786. package/templates/node_modules/mongodb/lib/write_concern.js +100 -0
  787. package/templates/node_modules/mongodb/lib/write_concern.js.map +1 -0
  788. package/templates/node_modules/mongodb/mongodb.d.ts +9010 -0
  789. package/templates/node_modules/mongodb/package.json +175 -0
  790. package/templates/node_modules/mongodb/src/admin.ts +173 -0
  791. package/templates/node_modules/mongodb/src/bson.ts +148 -0
  792. package/templates/node_modules/mongodb/src/bulk/common.ts +1251 -0
  793. package/templates/node_modules/mongodb/src/bulk/ordered.ts +83 -0
  794. package/templates/node_modules/mongodb/src/bulk/unordered.ts +115 -0
  795. package/templates/node_modules/mongodb/src/change_stream.ts +1158 -0
  796. package/templates/node_modules/mongodb/src/client-side-encryption/auto_encrypter.ts +469 -0
  797. package/templates/node_modules/mongodb/src/client-side-encryption/client_encryption.ts +1150 -0
  798. package/templates/node_modules/mongodb/src/client-side-encryption/errors.ts +144 -0
  799. package/templates/node_modules/mongodb/src/client-side-encryption/mongocryptd_manager.ts +100 -0
  800. package/templates/node_modules/mongodb/src/client-side-encryption/providers/aws.ts +33 -0
  801. package/templates/node_modules/mongodb/src/client-side-encryption/providers/azure.ts +181 -0
  802. package/templates/node_modules/mongodb/src/client-side-encryption/providers/gcp.ts +16 -0
  803. package/templates/node_modules/mongodb/src/client-side-encryption/providers/index.ts +207 -0
  804. package/templates/node_modules/mongodb/src/client-side-encryption/state_machine.ts +650 -0
  805. package/templates/node_modules/mongodb/src/cmap/auth/auth_provider.ts +77 -0
  806. package/templates/node_modules/mongodb/src/cmap/auth/aws_temporary_credentials.ts +127 -0
  807. package/templates/node_modules/mongodb/src/cmap/auth/gssapi.ts +202 -0
  808. package/templates/node_modules/mongodb/src/cmap/auth/mongo_credentials.ts +291 -0
  809. package/templates/node_modules/mongodb/src/cmap/auth/mongodb_aws.ts +186 -0
  810. package/templates/node_modules/mongodb/src/cmap/auth/mongodb_oidc/automated_callback_workflow.ts +88 -0
  811. package/templates/node_modules/mongodb/src/cmap/auth/mongodb_oidc/azure_machine_workflow.ts +73 -0
  812. package/templates/node_modules/mongodb/src/cmap/auth/mongodb_oidc/callback_workflow.ts +188 -0
  813. package/templates/node_modules/mongodb/src/cmap/auth/mongodb_oidc/command_builders.ts +53 -0
  814. package/templates/node_modules/mongodb/src/cmap/auth/mongodb_oidc/gcp_machine_workflow.ts +46 -0
  815. package/templates/node_modules/mongodb/src/cmap/auth/mongodb_oidc/human_callback_workflow.ts +141 -0
  816. package/templates/node_modules/mongodb/src/cmap/auth/mongodb_oidc/k8s_machine_workflow.ts +30 -0
  817. package/templates/node_modules/mongodb/src/cmap/auth/mongodb_oidc/token_cache.ts +62 -0
  818. package/templates/node_modules/mongodb/src/cmap/auth/mongodb_oidc/token_machine_workflow.ts +21 -0
  819. package/templates/node_modules/mongodb/src/cmap/auth/mongodb_oidc.ts +185 -0
  820. package/templates/node_modules/mongodb/src/cmap/auth/plain.ts +25 -0
  821. package/templates/node_modules/mongodb/src/cmap/auth/providers.ts +22 -0
  822. package/templates/node_modules/mongodb/src/cmap/auth/scram.ts +344 -0
  823. package/templates/node_modules/mongodb/src/cmap/auth/x509.ts +43 -0
  824. package/templates/node_modules/mongodb/src/cmap/command_monitoring_events.ts +316 -0
  825. package/templates/node_modules/mongodb/src/cmap/commands.ts +788 -0
  826. package/templates/node_modules/mongodb/src/cmap/connect.ts +499 -0
  827. package/templates/node_modules/mongodb/src/cmap/connection.ts +931 -0
  828. package/templates/node_modules/mongodb/src/cmap/connection_pool.ts +831 -0
  829. package/templates/node_modules/mongodb/src/cmap/connection_pool_events.ts +300 -0
  830. package/templates/node_modules/mongodb/src/cmap/errors.ts +119 -0
  831. package/templates/node_modules/mongodb/src/cmap/handshake/client_metadata.ts +352 -0
  832. package/templates/node_modules/mongodb/src/cmap/metrics.ts +58 -0
  833. package/templates/node_modules/mongodb/src/cmap/stream_description.ts +96 -0
  834. package/templates/node_modules/mongodb/src/cmap/wire_protocol/compression.ts +197 -0
  835. package/templates/node_modules/mongodb/src/cmap/wire_protocol/constants.ts +17 -0
  836. package/templates/node_modules/mongodb/src/cmap/wire_protocol/on_data.ts +139 -0
  837. package/templates/node_modules/mongodb/src/cmap/wire_protocol/on_demand/document.ts +358 -0
  838. package/templates/node_modules/mongodb/src/cmap/wire_protocol/responses.ts +393 -0
  839. package/templates/node_modules/mongodb/src/cmap/wire_protocol/shared.ts +48 -0
  840. package/templates/node_modules/mongodb/src/collection.ts +1314 -0
  841. package/templates/node_modules/mongodb/src/connection_string.ts +1296 -0
  842. package/templates/node_modules/mongodb/src/constants.ts +176 -0
  843. package/templates/node_modules/mongodb/src/cursor/abstract_cursor.ts +1247 -0
  844. package/templates/node_modules/mongodb/src/cursor/aggregation_cursor.ts +245 -0
  845. package/templates/node_modules/mongodb/src/cursor/change_stream_cursor.ts +171 -0
  846. package/templates/node_modules/mongodb/src/cursor/client_bulk_write_cursor.ts +83 -0
  847. package/templates/node_modules/mongodb/src/cursor/explainable_cursor.ts +51 -0
  848. package/templates/node_modules/mongodb/src/cursor/find_cursor.ts +497 -0
  849. package/templates/node_modules/mongodb/src/cursor/list_collections_cursor.ts +50 -0
  850. package/templates/node_modules/mongodb/src/cursor/list_indexes_cursor.ts +37 -0
  851. package/templates/node_modules/mongodb/src/cursor/list_search_indexes_cursor.ts +20 -0
  852. package/templates/node_modules/mongodb/src/cursor/run_command_cursor.ts +178 -0
  853. package/templates/node_modules/mongodb/src/db.ts +622 -0
  854. package/templates/node_modules/mongodb/src/deps.ts +287 -0
  855. package/templates/node_modules/mongodb/src/encrypter.ts +127 -0
  856. package/templates/node_modules/mongodb/src/error.ts +1571 -0
  857. package/templates/node_modules/mongodb/src/explain.ts +124 -0
  858. package/templates/node_modules/mongodb/src/gridfs/download.ts +483 -0
  859. package/templates/node_modules/mongodb/src/gridfs/index.ts +264 -0
  860. package/templates/node_modules/mongodb/src/gridfs/upload.ts +537 -0
  861. package/templates/node_modules/mongodb/src/index.ts +633 -0
  862. package/templates/node_modules/mongodb/src/mongo_client.ts +1155 -0
  863. package/templates/node_modules/mongodb/src/mongo_client_auth_providers.ts +87 -0
  864. package/templates/node_modules/mongodb/src/mongo_logger.ts +1076 -0
  865. package/templates/node_modules/mongodb/src/mongo_types.ts +678 -0
  866. package/templates/node_modules/mongodb/src/operations/aggregate.ts +153 -0
  867. package/templates/node_modules/mongodb/src/operations/client_bulk_write/client_bulk_write.ts +72 -0
  868. package/templates/node_modules/mongodb/src/operations/client_bulk_write/command_builder.ts +487 -0
  869. package/templates/node_modules/mongodb/src/operations/client_bulk_write/common.ts +276 -0
  870. package/templates/node_modules/mongodb/src/operations/client_bulk_write/executor.ts +149 -0
  871. package/templates/node_modules/mongodb/src/operations/client_bulk_write/results_merger.ts +260 -0
  872. package/templates/node_modules/mongodb/src/operations/command.ts +171 -0
  873. package/templates/node_modules/mongodb/src/operations/count.ts +74 -0
  874. package/templates/node_modules/mongodb/src/operations/create_collection.ts +218 -0
  875. package/templates/node_modules/mongodb/src/operations/delete.ts +183 -0
  876. package/templates/node_modules/mongodb/src/operations/distinct.ts +92 -0
  877. package/templates/node_modules/mongodb/src/operations/drop.ts +130 -0
  878. package/templates/node_modules/mongodb/src/operations/end_sessions.ts +44 -0
  879. package/templates/node_modules/mongodb/src/operations/estimated_document_count.ts +61 -0
  880. package/templates/node_modules/mongodb/src/operations/execute_operation.ts +318 -0
  881. package/templates/node_modules/mongodb/src/operations/find.ts +254 -0
  882. package/templates/node_modules/mongodb/src/operations/find_and_modify.ts +319 -0
  883. package/templates/node_modules/mongodb/src/operations/get_more.ts +108 -0
  884. package/templates/node_modules/mongodb/src/operations/indexes.ts +418 -0
  885. package/templates/node_modules/mongodb/src/operations/insert.ts +108 -0
  886. package/templates/node_modules/mongodb/src/operations/kill_cursors.ts +64 -0
  887. package/templates/node_modules/mongodb/src/operations/list_collections.ts +108 -0
  888. package/templates/node_modules/mongodb/src/operations/list_databases.ts +68 -0
  889. package/templates/node_modules/mongodb/src/operations/operation.ts +181 -0
  890. package/templates/node_modules/mongodb/src/operations/profiling_level.ts +46 -0
  891. package/templates/node_modules/mongodb/src/operations/remove_user.ts +36 -0
  892. package/templates/node_modules/mongodb/src/operations/rename.ts +55 -0
  893. package/templates/node_modules/mongodb/src/operations/run_command.ts +79 -0
  894. package/templates/node_modules/mongodb/src/operations/search_indexes/create.ts +56 -0
  895. package/templates/node_modules/mongodb/src/operations/search_indexes/drop.ts +58 -0
  896. package/templates/node_modules/mongodb/src/operations/search_indexes/update.ts +45 -0
  897. package/templates/node_modules/mongodb/src/operations/set_profiling_level.ts +74 -0
  898. package/templates/node_modules/mongodb/src/operations/stats.ts +37 -0
  899. package/templates/node_modules/mongodb/src/operations/update.ts +318 -0
  900. package/templates/node_modules/mongodb/src/operations/validate_collection.ts +50 -0
  901. package/templates/node_modules/mongodb/src/read_concern.ts +88 -0
  902. package/templates/node_modules/mongodb/src/read_preference.ts +256 -0
  903. package/templates/node_modules/mongodb/src/sdam/common.ts +74 -0
  904. package/templates/node_modules/mongodb/src/sdam/events.ts +219 -0
  905. package/templates/node_modules/mongodb/src/sdam/monitor.ts +771 -0
  906. package/templates/node_modules/mongodb/src/sdam/server.ts +577 -0
  907. package/templates/node_modules/mongodb/src/sdam/server_description.ts +291 -0
  908. package/templates/node_modules/mongodb/src/sdam/server_selection.ts +323 -0
  909. package/templates/node_modules/mongodb/src/sdam/server_selection_events.ts +142 -0
  910. package/templates/node_modules/mongodb/src/sdam/srv_polling.ts +146 -0
  911. package/templates/node_modules/mongodb/src/sdam/topology.ts +1096 -0
  912. package/templates/node_modules/mongodb/src/sdam/topology_description.ts +548 -0
  913. package/templates/node_modules/mongodb/src/sessions.ts +1160 -0
  914. package/templates/node_modules/mongodb/src/sort.ts +141 -0
  915. package/templates/node_modules/mongodb/src/timeout.ts +405 -0
  916. package/templates/node_modules/mongodb/src/transactions.ts +181 -0
  917. package/templates/node_modules/mongodb/src/utils.ts +1491 -0
  918. package/templates/node_modules/mongodb/src/write_concern.ts +183 -0
  919. package/templates/node_modules/mongodb/tsconfig.json +46 -0
  920. package/templates/node_modules/mongodb-connection-string-url/.esm-wrapper.mjs +6 -0
  921. package/templates/node_modules/mongodb-connection-string-url/LICENSE +192 -0
  922. package/templates/node_modules/mongodb-connection-string-url/README.md +25 -0
  923. package/templates/node_modules/mongodb-connection-string-url/lib/index.d.ts +63 -0
  924. package/templates/node_modules/mongodb-connection-string-url/lib/index.js +239 -0
  925. package/templates/node_modules/mongodb-connection-string-url/lib/index.js.map +1 -0
  926. package/templates/node_modules/mongodb-connection-string-url/lib/redact.d.ts +7 -0
  927. package/templates/node_modules/mongodb-connection-string-url/lib/redact.js +97 -0
  928. package/templates/node_modules/mongodb-connection-string-url/lib/redact.js.map +1 -0
  929. package/templates/node_modules/mongodb-connection-string-url/package.json +71 -0
  930. package/templates/node_modules/mongoose/LICENSE.md +22 -0
  931. package/templates/node_modules/mongoose/README.md +397 -0
  932. package/templates/node_modules/mongoose/SECURITY.md +1 -0
  933. package/templates/node_modules/mongoose/eslint.config.mjs +198 -0
  934. package/templates/node_modules/mongoose/index.js +64 -0
  935. package/templates/node_modules/mongoose/lib/aggregate.js +1189 -0
  936. package/templates/node_modules/mongoose/lib/cast/bigint.js +46 -0
  937. package/templates/node_modules/mongoose/lib/cast/boolean.js +32 -0
  938. package/templates/node_modules/mongoose/lib/cast/date.js +41 -0
  939. package/templates/node_modules/mongoose/lib/cast/decimal128.js +39 -0
  940. package/templates/node_modules/mongoose/lib/cast/double.js +50 -0
  941. package/templates/node_modules/mongoose/lib/cast/int32.js +36 -0
  942. package/templates/node_modules/mongoose/lib/cast/number.js +42 -0
  943. package/templates/node_modules/mongoose/lib/cast/objectid.js +29 -0
  944. package/templates/node_modules/mongoose/lib/cast/string.js +37 -0
  945. package/templates/node_modules/mongoose/lib/cast/uuid.js +35 -0
  946. package/templates/node_modules/mongoose/lib/cast.js +444 -0
  947. package/templates/node_modules/mongoose/lib/collection.js +321 -0
  948. package/templates/node_modules/mongoose/lib/connection.js +1849 -0
  949. package/templates/node_modules/mongoose/lib/connectionState.js +26 -0
  950. package/templates/node_modules/mongoose/lib/constants.js +73 -0
  951. package/templates/node_modules/mongoose/lib/cursor/aggregationCursor.js +466 -0
  952. package/templates/node_modules/mongoose/lib/cursor/changeStream.js +198 -0
  953. package/templates/node_modules/mongoose/lib/cursor/queryCursor.js +622 -0
  954. package/templates/node_modules/mongoose/lib/document.js +5481 -0
  955. package/templates/node_modules/mongoose/lib/driver.js +15 -0
  956. package/templates/node_modules/mongoose/lib/drivers/SPEC.md +4 -0
  957. package/templates/node_modules/mongoose/lib/drivers/node-mongodb-native/bulkWriteResult.js +5 -0
  958. package/templates/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.js +405 -0
  959. package/templates/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js +521 -0
  960. package/templates/node_modules/mongoose/lib/drivers/node-mongodb-native/index.js +10 -0
  961. package/templates/node_modules/mongoose/lib/error/browserMissingSchema.js +29 -0
  962. package/templates/node_modules/mongoose/lib/error/bulkSaveIncompleteError.js +44 -0
  963. package/templates/node_modules/mongoose/lib/error/bulkWriteError.js +41 -0
  964. package/templates/node_modules/mongoose/lib/error/cast.js +158 -0
  965. package/templates/node_modules/mongoose/lib/error/createCollectionsError.js +26 -0
  966. package/templates/node_modules/mongoose/lib/error/divergentArray.js +40 -0
  967. package/templates/node_modules/mongoose/lib/error/eachAsyncMultiError.js +41 -0
  968. package/templates/node_modules/mongoose/lib/error/index.js +237 -0
  969. package/templates/node_modules/mongoose/lib/error/invalidSchemaOption.js +32 -0
  970. package/templates/node_modules/mongoose/lib/error/messages.js +47 -0
  971. package/templates/node_modules/mongoose/lib/error/missingSchema.js +33 -0
  972. package/templates/node_modules/mongoose/lib/error/mongooseError.js +13 -0
  973. package/templates/node_modules/mongoose/lib/error/notFound.js +47 -0
  974. package/templates/node_modules/mongoose/lib/error/objectExpected.js +31 -0
  975. package/templates/node_modules/mongoose/lib/error/objectParameter.js +31 -0
  976. package/templates/node_modules/mongoose/lib/error/overwriteModel.js +31 -0
  977. package/templates/node_modules/mongoose/lib/error/parallelSave.js +33 -0
  978. package/templates/node_modules/mongoose/lib/error/parallelValidate.js +33 -0
  979. package/templates/node_modules/mongoose/lib/error/serverSelection.js +62 -0
  980. package/templates/node_modules/mongoose/lib/error/setOptionError.js +103 -0
  981. package/templates/node_modules/mongoose/lib/error/strict.js +35 -0
  982. package/templates/node_modules/mongoose/lib/error/strictPopulate.js +31 -0
  983. package/templates/node_modules/mongoose/lib/error/syncIndexes.js +30 -0
  984. package/templates/node_modules/mongoose/lib/error/validation.js +97 -0
  985. package/templates/node_modules/mongoose/lib/error/validator.js +100 -0
  986. package/templates/node_modules/mongoose/lib/error/version.js +38 -0
  987. package/templates/node_modules/mongoose/lib/helpers/aggregate/prepareDiscriminatorPipeline.js +39 -0
  988. package/templates/node_modules/mongoose/lib/helpers/aggregate/stringifyFunctionOperators.js +50 -0
  989. package/templates/node_modules/mongoose/lib/helpers/arrayDepth.js +33 -0
  990. package/templates/node_modules/mongoose/lib/helpers/clone.js +204 -0
  991. package/templates/node_modules/mongoose/lib/helpers/common.js +127 -0
  992. package/templates/node_modules/mongoose/lib/helpers/createJSONSchemaTypeDefinition.js +24 -0
  993. package/templates/node_modules/mongoose/lib/helpers/cursor/eachAsync.js +225 -0
  994. package/templates/node_modules/mongoose/lib/helpers/discriminator/applyEmbeddedDiscriminators.js +36 -0
  995. package/templates/node_modules/mongoose/lib/helpers/discriminator/areDiscriminatorValuesEqual.js +16 -0
  996. package/templates/node_modules/mongoose/lib/helpers/discriminator/checkEmbeddedDiscriminatorKeyProjection.js +12 -0
  997. package/templates/node_modules/mongoose/lib/helpers/discriminator/getConstructor.js +29 -0
  998. package/templates/node_modules/mongoose/lib/helpers/discriminator/getDiscriminatorByValue.js +28 -0
  999. package/templates/node_modules/mongoose/lib/helpers/discriminator/getSchemaDiscriminatorByValue.js +27 -0
  1000. package/templates/node_modules/mongoose/lib/helpers/discriminator/mergeDiscriminatorSchema.js +91 -0
  1001. package/templates/node_modules/mongoose/lib/helpers/document/applyDefaults.js +132 -0
  1002. package/templates/node_modules/mongoose/lib/helpers/document/applyTimestamps.js +105 -0
  1003. package/templates/node_modules/mongoose/lib/helpers/document/applyVirtuals.js +146 -0
  1004. package/templates/node_modules/mongoose/lib/helpers/document/cleanModifiedSubpaths.js +45 -0
  1005. package/templates/node_modules/mongoose/lib/helpers/document/compile.js +238 -0
  1006. package/templates/node_modules/mongoose/lib/helpers/document/getDeepestSubdocumentForPath.js +38 -0
  1007. package/templates/node_modules/mongoose/lib/helpers/document/getEmbeddedDiscriminatorPath.js +53 -0
  1008. package/templates/node_modules/mongoose/lib/helpers/document/handleSpreadDoc.js +35 -0
  1009. package/templates/node_modules/mongoose/lib/helpers/each.js +25 -0
  1010. package/templates/node_modules/mongoose/lib/helpers/error/combinePathErrors.js +22 -0
  1011. package/templates/node_modules/mongoose/lib/helpers/firstKey.js +8 -0
  1012. package/templates/node_modules/mongoose/lib/helpers/get.js +65 -0
  1013. package/templates/node_modules/mongoose/lib/helpers/getConstructorName.js +16 -0
  1014. package/templates/node_modules/mongoose/lib/helpers/getDefaultBulkwriteResult.js +18 -0
  1015. package/templates/node_modules/mongoose/lib/helpers/getFunctionName.js +10 -0
  1016. package/templates/node_modules/mongoose/lib/helpers/immediate.js +16 -0
  1017. package/templates/node_modules/mongoose/lib/helpers/indexes/applySchemaCollation.js +13 -0
  1018. package/templates/node_modules/mongoose/lib/helpers/indexes/decorateDiscriminatorIndexOptions.js +14 -0
  1019. package/templates/node_modules/mongoose/lib/helpers/indexes/getRelatedIndexes.js +63 -0
  1020. package/templates/node_modules/mongoose/lib/helpers/indexes/isDefaultIdIndex.js +18 -0
  1021. package/templates/node_modules/mongoose/lib/helpers/indexes/isIndexEqual.js +95 -0
  1022. package/templates/node_modules/mongoose/lib/helpers/indexes/isIndexSpecEqual.js +32 -0
  1023. package/templates/node_modules/mongoose/lib/helpers/indexes/isTextIndex.js +16 -0
  1024. package/templates/node_modules/mongoose/lib/helpers/indexes/isTimeseriesIndex.js +16 -0
  1025. package/templates/node_modules/mongoose/lib/helpers/isAsyncFunction.js +9 -0
  1026. package/templates/node_modules/mongoose/lib/helpers/isBsonType.js +15 -0
  1027. package/templates/node_modules/mongoose/lib/helpers/isMongooseObject.js +22 -0
  1028. package/templates/node_modules/mongoose/lib/helpers/isObject.js +16 -0
  1029. package/templates/node_modules/mongoose/lib/helpers/isPOJO.js +12 -0
  1030. package/templates/node_modules/mongoose/lib/helpers/isPromise.js +6 -0
  1031. package/templates/node_modules/mongoose/lib/helpers/isSimpleValidator.js +22 -0
  1032. package/templates/node_modules/mongoose/lib/helpers/minimize.js +41 -0
  1033. package/templates/node_modules/mongoose/lib/helpers/model/applyDefaultsToPOJO.js +52 -0
  1034. package/templates/node_modules/mongoose/lib/helpers/model/applyHooks.js +140 -0
  1035. package/templates/node_modules/mongoose/lib/helpers/model/applyMethods.js +70 -0
  1036. package/templates/node_modules/mongoose/lib/helpers/model/applyStaticHooks.js +33 -0
  1037. package/templates/node_modules/mongoose/lib/helpers/model/applyStatics.js +13 -0
  1038. package/templates/node_modules/mongoose/lib/helpers/model/castBulkWrite.js +320 -0
  1039. package/templates/node_modules/mongoose/lib/helpers/model/decorateBulkWriteResult.js +8 -0
  1040. package/templates/node_modules/mongoose/lib/helpers/model/discriminator.js +265 -0
  1041. package/templates/node_modules/mongoose/lib/helpers/model/pushNestedArrayPaths.js +15 -0
  1042. package/templates/node_modules/mongoose/lib/helpers/omitUndefined.js +20 -0
  1043. package/templates/node_modules/mongoose/lib/helpers/once.js +12 -0
  1044. package/templates/node_modules/mongoose/lib/helpers/parallelLimit.js +37 -0
  1045. package/templates/node_modules/mongoose/lib/helpers/path/parentPaths.js +18 -0
  1046. package/templates/node_modules/mongoose/lib/helpers/path/setDottedPath.js +33 -0
  1047. package/templates/node_modules/mongoose/lib/helpers/pluralize.js +95 -0
  1048. package/templates/node_modules/mongoose/lib/helpers/populate/assignRawDocsToIdStructure.js +129 -0
  1049. package/templates/node_modules/mongoose/lib/helpers/populate/assignVals.js +360 -0
  1050. package/templates/node_modules/mongoose/lib/helpers/populate/createPopulateQueryFilter.js +97 -0
  1051. package/templates/node_modules/mongoose/lib/helpers/populate/getModelsMapForPopulate.js +774 -0
  1052. package/templates/node_modules/mongoose/lib/helpers/populate/getSchemaTypes.js +229 -0
  1053. package/templates/node_modules/mongoose/lib/helpers/populate/getVirtual.js +103 -0
  1054. package/templates/node_modules/mongoose/lib/helpers/populate/leanPopulateMap.js +7 -0
  1055. package/templates/node_modules/mongoose/lib/helpers/populate/lookupLocalFields.js +40 -0
  1056. package/templates/node_modules/mongoose/lib/helpers/populate/markArraySubdocsPopulated.js +49 -0
  1057. package/templates/node_modules/mongoose/lib/helpers/populate/modelNamesFromRefPath.js +66 -0
  1058. package/templates/node_modules/mongoose/lib/helpers/populate/removeDeselectedForeignField.js +31 -0
  1059. package/templates/node_modules/mongoose/lib/helpers/populate/setPopulatedVirtualValue.js +33 -0
  1060. package/templates/node_modules/mongoose/lib/helpers/populate/skipPopulateValue.js +10 -0
  1061. package/templates/node_modules/mongoose/lib/helpers/populate/validateRef.js +19 -0
  1062. package/templates/node_modules/mongoose/lib/helpers/printJestWarning.js +21 -0
  1063. package/templates/node_modules/mongoose/lib/helpers/processConnectionOptions.js +65 -0
  1064. package/templates/node_modules/mongoose/lib/helpers/projection/applyProjection.js +83 -0
  1065. package/templates/node_modules/mongoose/lib/helpers/projection/hasIncludedChildren.js +41 -0
  1066. package/templates/node_modules/mongoose/lib/helpers/projection/isDefiningProjection.js +18 -0
  1067. package/templates/node_modules/mongoose/lib/helpers/projection/isExclusive.js +37 -0
  1068. package/templates/node_modules/mongoose/lib/helpers/projection/isInclusive.js +39 -0
  1069. package/templates/node_modules/mongoose/lib/helpers/projection/isNestedProjection.js +8 -0
  1070. package/templates/node_modules/mongoose/lib/helpers/projection/isPathExcluded.js +40 -0
  1071. package/templates/node_modules/mongoose/lib/helpers/projection/isPathSelectedInclusive.js +28 -0
  1072. package/templates/node_modules/mongoose/lib/helpers/projection/isSubpath.js +14 -0
  1073. package/templates/node_modules/mongoose/lib/helpers/projection/parseProjection.js +33 -0
  1074. package/templates/node_modules/mongoose/lib/helpers/query/applyGlobalOption.js +29 -0
  1075. package/templates/node_modules/mongoose/lib/helpers/query/cast$expr.js +287 -0
  1076. package/templates/node_modules/mongoose/lib/helpers/query/castFilterPath.js +54 -0
  1077. package/templates/node_modules/mongoose/lib/helpers/query/castUpdate.js +643 -0
  1078. package/templates/node_modules/mongoose/lib/helpers/query/getEmbeddedDiscriminatorPath.js +103 -0
  1079. package/templates/node_modules/mongoose/lib/helpers/query/handleImmutable.js +44 -0
  1080. package/templates/node_modules/mongoose/lib/helpers/query/handleReadPreferenceAliases.js +23 -0
  1081. package/templates/node_modules/mongoose/lib/helpers/query/hasDollarKeys.js +23 -0
  1082. package/templates/node_modules/mongoose/lib/helpers/query/isOperator.js +14 -0
  1083. package/templates/node_modules/mongoose/lib/helpers/query/sanitizeFilter.js +38 -0
  1084. package/templates/node_modules/mongoose/lib/helpers/query/sanitizeProjection.js +14 -0
  1085. package/templates/node_modules/mongoose/lib/helpers/query/selectPopulatedFields.js +62 -0
  1086. package/templates/node_modules/mongoose/lib/helpers/query/trusted.js +13 -0
  1087. package/templates/node_modules/mongoose/lib/helpers/query/validOps.js +3 -0
  1088. package/templates/node_modules/mongoose/lib/helpers/schema/addAutoId.js +7 -0
  1089. package/templates/node_modules/mongoose/lib/helpers/schema/applyBuiltinPlugins.js +12 -0
  1090. package/templates/node_modules/mongoose/lib/helpers/schema/applyPlugins.js +55 -0
  1091. package/templates/node_modules/mongoose/lib/helpers/schema/applyReadConcern.js +20 -0
  1092. package/templates/node_modules/mongoose/lib/helpers/schema/applyWriteConcern.js +37 -0
  1093. package/templates/node_modules/mongoose/lib/helpers/schema/cleanPositionalOperators.js +12 -0
  1094. package/templates/node_modules/mongoose/lib/helpers/schema/getIndexes.js +171 -0
  1095. package/templates/node_modules/mongoose/lib/helpers/schema/getKeysInSchemaOrder.js +28 -0
  1096. package/templates/node_modules/mongoose/lib/helpers/schema/getPath.js +43 -0
  1097. package/templates/node_modules/mongoose/lib/helpers/schema/getSubdocumentStrictValue.js +32 -0
  1098. package/templates/node_modules/mongoose/lib/helpers/schema/handleIdOption.js +20 -0
  1099. package/templates/node_modules/mongoose/lib/helpers/schema/handleTimestampOption.js +24 -0
  1100. package/templates/node_modules/mongoose/lib/helpers/schema/idGetter.js +34 -0
  1101. package/templates/node_modules/mongoose/lib/helpers/schema/merge.js +36 -0
  1102. package/templates/node_modules/mongoose/lib/helpers/schematype/handleImmutable.js +50 -0
  1103. package/templates/node_modules/mongoose/lib/helpers/setDefaultsOnInsert.js +161 -0
  1104. package/templates/node_modules/mongoose/lib/helpers/specialProperties.js +3 -0
  1105. package/templates/node_modules/mongoose/lib/helpers/symbols.js +20 -0
  1106. package/templates/node_modules/mongoose/lib/helpers/timers.js +3 -0
  1107. package/templates/node_modules/mongoose/lib/helpers/timestamps/setDocumentTimestamps.js +26 -0
  1108. package/templates/node_modules/mongoose/lib/helpers/timestamps/setupTimestamps.js +107 -0
  1109. package/templates/node_modules/mongoose/lib/helpers/topology/allServersUnknown.js +12 -0
  1110. package/templates/node_modules/mongoose/lib/helpers/topology/isAtlas.js +31 -0
  1111. package/templates/node_modules/mongoose/lib/helpers/topology/isSSLError.js +16 -0
  1112. package/templates/node_modules/mongoose/lib/helpers/update/applyTimestampsToChildren.js +193 -0
  1113. package/templates/node_modules/mongoose/lib/helpers/update/applyTimestampsToUpdate.js +130 -0
  1114. package/templates/node_modules/mongoose/lib/helpers/update/castArrayFilters.js +113 -0
  1115. package/templates/node_modules/mongoose/lib/helpers/update/decorateUpdateWithVersionKey.js +35 -0
  1116. package/templates/node_modules/mongoose/lib/helpers/update/modifiedPaths.js +33 -0
  1117. package/templates/node_modules/mongoose/lib/helpers/update/moveImmutableProperties.js +53 -0
  1118. package/templates/node_modules/mongoose/lib/helpers/update/removeUnusedArrayFilters.js +32 -0
  1119. package/templates/node_modules/mongoose/lib/helpers/update/updatedPathsByArrayFilter.js +27 -0
  1120. package/templates/node_modules/mongoose/lib/helpers/updateValidators.js +193 -0
  1121. package/templates/node_modules/mongoose/lib/index.js +17 -0
  1122. package/templates/node_modules/mongoose/lib/internal.js +46 -0
  1123. package/templates/node_modules/mongoose/lib/model.js +5021 -0
  1124. package/templates/node_modules/mongoose/lib/modifiedPathsSnapshot.js +9 -0
  1125. package/templates/node_modules/mongoose/lib/mongoose.js +1411 -0
  1126. package/templates/node_modules/mongoose/lib/options/populateOptions.js +36 -0
  1127. package/templates/node_modules/mongoose/lib/options/propertyOptions.js +8 -0
  1128. package/templates/node_modules/mongoose/lib/options/saveOptions.js +16 -0
  1129. package/templates/node_modules/mongoose/lib/options/schemaArrayOptions.js +78 -0
  1130. package/templates/node_modules/mongoose/lib/options/schemaBufferOptions.js +38 -0
  1131. package/templates/node_modules/mongoose/lib/options/schemaDateOptions.js +71 -0
  1132. package/templates/node_modules/mongoose/lib/options/schemaDocumentArrayOptions.js +68 -0
  1133. package/templates/node_modules/mongoose/lib/options/schemaMapOptions.js +43 -0
  1134. package/templates/node_modules/mongoose/lib/options/schemaNumberOptions.js +101 -0
  1135. package/templates/node_modules/mongoose/lib/options/schemaObjectIdOptions.js +64 -0
  1136. package/templates/node_modules/mongoose/lib/options/schemaStringOptions.js +138 -0
  1137. package/templates/node_modules/mongoose/lib/options/schemaSubdocumentOptions.js +66 -0
  1138. package/templates/node_modules/mongoose/lib/options/schemaTypeOptions.js +244 -0
  1139. package/templates/node_modules/mongoose/lib/options/schemaUnionOptions.js +32 -0
  1140. package/templates/node_modules/mongoose/lib/options/virtualOptions.js +164 -0
  1141. package/templates/node_modules/mongoose/lib/options.js +17 -0
  1142. package/templates/node_modules/mongoose/lib/plugins/index.js +6 -0
  1143. package/templates/node_modules/mongoose/lib/plugins/saveSubdocs.js +75 -0
  1144. package/templates/node_modules/mongoose/lib/plugins/sharding.js +84 -0
  1145. package/templates/node_modules/mongoose/lib/plugins/trackTransaction.js +85 -0
  1146. package/templates/node_modules/mongoose/lib/plugins/validateBeforeSave.js +41 -0
  1147. package/templates/node_modules/mongoose/lib/query.js +5649 -0
  1148. package/templates/node_modules/mongoose/lib/queryHelpers.js +390 -0
  1149. package/templates/node_modules/mongoose/lib/schema/array.js +701 -0
  1150. package/templates/node_modules/mongoose/lib/schema/bigint.js +282 -0
  1151. package/templates/node_modules/mongoose/lib/schema/boolean.js +332 -0
  1152. package/templates/node_modules/mongoose/lib/schema/buffer.js +343 -0
  1153. package/templates/node_modules/mongoose/lib/schema/date.js +467 -0
  1154. package/templates/node_modules/mongoose/lib/schema/decimal128.js +263 -0
  1155. package/templates/node_modules/mongoose/lib/schema/documentArray.js +664 -0
  1156. package/templates/node_modules/mongoose/lib/schema/documentArrayElement.js +107 -0
  1157. package/templates/node_modules/mongoose/lib/schema/double.js +246 -0
  1158. package/templates/node_modules/mongoose/lib/schema/index.js +31 -0
  1159. package/templates/node_modules/mongoose/lib/schema/int32.js +289 -0
  1160. package/templates/node_modules/mongoose/lib/schema/map.js +201 -0
  1161. package/templates/node_modules/mongoose/lib/schema/mixed.js +146 -0
  1162. package/templates/node_modules/mongoose/lib/schema/number.js +492 -0
  1163. package/templates/node_modules/mongoose/lib/schema/objectId.js +333 -0
  1164. package/templates/node_modules/mongoose/lib/schema/operators/bitwise.js +38 -0
  1165. package/templates/node_modules/mongoose/lib/schema/operators/exists.js +12 -0
  1166. package/templates/node_modules/mongoose/lib/schema/operators/geospatial.js +107 -0
  1167. package/templates/node_modules/mongoose/lib/schema/operators/helpers.js +32 -0
  1168. package/templates/node_modules/mongoose/lib/schema/operators/text.js +39 -0
  1169. package/templates/node_modules/mongoose/lib/schema/operators/type.js +20 -0
  1170. package/templates/node_modules/mongoose/lib/schema/string.js +733 -0
  1171. package/templates/node_modules/mongoose/lib/schema/subdocument.js +439 -0
  1172. package/templates/node_modules/mongoose/lib/schema/symbols.js +5 -0
  1173. package/templates/node_modules/mongoose/lib/schema/union.js +113 -0
  1174. package/templates/node_modules/mongoose/lib/schema/uuid.js +305 -0
  1175. package/templates/node_modules/mongoose/lib/schema.js +3227 -0
  1176. package/templates/node_modules/mongoose/lib/schemaType.js +1835 -0
  1177. package/templates/node_modules/mongoose/lib/stateMachine.js +232 -0
  1178. package/templates/node_modules/mongoose/lib/types/array/index.js +119 -0
  1179. package/templates/node_modules/mongoose/lib/types/array/isMongooseArray.js +5 -0
  1180. package/templates/node_modules/mongoose/lib/types/array/methods/index.js +1065 -0
  1181. package/templates/node_modules/mongoose/lib/types/arraySubdocument.js +197 -0
  1182. package/templates/node_modules/mongoose/lib/types/buffer.js +294 -0
  1183. package/templates/node_modules/mongoose/lib/types/decimal128.js +13 -0
  1184. package/templates/node_modules/mongoose/lib/types/documentArray/index.js +113 -0
  1185. package/templates/node_modules/mongoose/lib/types/documentArray/isMongooseDocumentArray.js +5 -0
  1186. package/templates/node_modules/mongoose/lib/types/documentArray/methods/index.js +415 -0
  1187. package/templates/node_modules/mongoose/lib/types/double.js +13 -0
  1188. package/templates/node_modules/mongoose/lib/types/index.js +23 -0
  1189. package/templates/node_modules/mongoose/lib/types/map.js +419 -0
  1190. package/templates/node_modules/mongoose/lib/types/objectid.js +41 -0
  1191. package/templates/node_modules/mongoose/lib/types/subdocument.js +454 -0
  1192. package/templates/node_modules/mongoose/lib/types/uuid.js +13 -0
  1193. package/templates/node_modules/mongoose/lib/utils.js +1038 -0
  1194. package/templates/node_modules/mongoose/lib/validOptions.js +42 -0
  1195. package/templates/node_modules/mongoose/lib/virtualType.js +204 -0
  1196. package/templates/node_modules/mongoose/package.json +143 -0
  1197. package/templates/node_modules/mongoose/types/aggregate.d.ts +180 -0
  1198. package/templates/node_modules/mongoose/types/augmentations.d.ts +9 -0
  1199. package/templates/node_modules/mongoose/types/callback.d.ts +8 -0
  1200. package/templates/node_modules/mongoose/types/collection.d.ts +49 -0
  1201. package/templates/node_modules/mongoose/types/connection.d.ts +297 -0
  1202. package/templates/node_modules/mongoose/types/cursor.d.ts +67 -0
  1203. package/templates/node_modules/mongoose/types/document.d.ts +374 -0
  1204. package/templates/node_modules/mongoose/types/error.d.ts +143 -0
  1205. package/templates/node_modules/mongoose/types/expressions.d.ts +3053 -0
  1206. package/templates/node_modules/mongoose/types/helpers.d.ts +32 -0
  1207. package/templates/node_modules/mongoose/types/index.d.ts +1046 -0
  1208. package/templates/node_modules/mongoose/types/indexes.d.ts +97 -0
  1209. package/templates/node_modules/mongoose/types/inferhydrateddoctype.d.ts +115 -0
  1210. package/templates/node_modules/mongoose/types/inferrawdoctype.d.ts +135 -0
  1211. package/templates/node_modules/mongoose/types/inferschematype.d.ts +337 -0
  1212. package/templates/node_modules/mongoose/types/middlewares.d.ts +48 -0
  1213. package/templates/node_modules/mongoose/types/models.d.ts +1291 -0
  1214. package/templates/node_modules/mongoose/types/mongooseoptions.d.ts +228 -0
  1215. package/templates/node_modules/mongoose/types/pipelinestage.d.ts +333 -0
  1216. package/templates/node_modules/mongoose/types/populate.d.ts +53 -0
  1217. package/templates/node_modules/mongoose/types/query.d.ts +934 -0
  1218. package/templates/node_modules/mongoose/types/schemaoptions.d.ts +280 -0
  1219. package/templates/node_modules/mongoose/types/schematypes.d.ts +645 -0
  1220. package/templates/node_modules/mongoose/types/session.d.ts +32 -0
  1221. package/templates/node_modules/mongoose/types/types.d.ts +109 -0
  1222. package/templates/node_modules/mongoose/types/utility.d.ts +175 -0
  1223. package/templates/node_modules/mongoose/types/validation.d.ts +39 -0
  1224. package/templates/node_modules/mongoose/types/virtuals.d.ts +14 -0
  1225. package/templates/node_modules/morgan/HISTORY.md +221 -0
  1226. package/templates/node_modules/morgan/LICENSE +23 -0
  1227. package/templates/node_modules/morgan/README.md +436 -0
  1228. package/templates/node_modules/morgan/index.js +544 -0
  1229. package/templates/node_modules/morgan/node_modules/debug/.coveralls.yml +1 -0
  1230. package/templates/node_modules/morgan/node_modules/debug/.eslintrc +11 -0
  1231. package/templates/node_modules/morgan/node_modules/debug/.travis.yml +14 -0
  1232. package/templates/node_modules/morgan/node_modules/debug/CHANGELOG.md +362 -0
  1233. package/templates/node_modules/morgan/node_modules/debug/LICENSE +19 -0
  1234. package/templates/node_modules/morgan/node_modules/debug/Makefile +50 -0
  1235. package/templates/node_modules/morgan/node_modules/debug/README.md +312 -0
  1236. package/templates/node_modules/morgan/node_modules/debug/component.json +19 -0
  1237. package/templates/node_modules/morgan/node_modules/debug/karma.conf.js +70 -0
  1238. package/templates/node_modules/morgan/node_modules/debug/node.js +1 -0
  1239. package/templates/node_modules/morgan/node_modules/debug/package.json +49 -0
  1240. package/templates/node_modules/morgan/node_modules/debug/src/browser.js +185 -0
  1241. package/templates/node_modules/morgan/node_modules/debug/src/debug.js +202 -0
  1242. package/templates/node_modules/morgan/node_modules/debug/src/index.js +10 -0
  1243. package/templates/node_modules/morgan/node_modules/debug/src/inspector-log.js +15 -0
  1244. package/templates/node_modules/morgan/node_modules/debug/src/node.js +248 -0
  1245. package/templates/node_modules/morgan/node_modules/ms/index.js +152 -0
  1246. package/templates/node_modules/morgan/node_modules/ms/license.md +21 -0
  1247. package/templates/node_modules/morgan/node_modules/ms/package.json +37 -0
  1248. package/templates/node_modules/morgan/node_modules/ms/readme.md +51 -0
  1249. package/templates/node_modules/morgan/node_modules/on-finished/HISTORY.md +88 -0
  1250. package/templates/node_modules/morgan/node_modules/on-finished/LICENSE +23 -0
  1251. package/templates/node_modules/morgan/node_modules/on-finished/README.md +154 -0
  1252. package/templates/node_modules/morgan/node_modules/on-finished/index.js +196 -0
  1253. package/templates/node_modules/morgan/node_modules/on-finished/package.json +31 -0
  1254. package/templates/node_modules/morgan/package.json +52 -0
  1255. package/templates/node_modules/mpath/.travis.yml +9 -0
  1256. package/templates/node_modules/mpath/History.md +88 -0
  1257. package/templates/node_modules/mpath/LICENSE +22 -0
  1258. package/templates/node_modules/mpath/README.md +278 -0
  1259. package/templates/node_modules/mpath/SECURITY.md +5 -0
  1260. package/templates/node_modules/mpath/index.js +3 -0
  1261. package/templates/node_modules/mpath/lib/index.js +336 -0
  1262. package/templates/node_modules/mpath/lib/stringToParts.js +48 -0
  1263. package/templates/node_modules/mpath/package.json +144 -0
  1264. package/templates/node_modules/mpath/test/.eslintrc.yml +4 -0
  1265. package/templates/node_modules/mpath/test/index.js +1879 -0
  1266. package/templates/node_modules/mpath/test/stringToParts.js +30 -0
  1267. package/templates/node_modules/mquery/.github/ISSUE_TEMPLATE.md +11 -0
  1268. package/templates/node_modules/mquery/.github/PULL_REQUEST_TEMPLATE.md +9 -0
  1269. package/templates/node_modules/mquery/History.md +393 -0
  1270. package/templates/node_modules/mquery/LICENSE +22 -0
  1271. package/templates/node_modules/mquery/README.md +1387 -0
  1272. package/templates/node_modules/mquery/SECURITY.md +1 -0
  1273. package/templates/node_modules/mquery/lib/collection/collection.js +47 -0
  1274. package/templates/node_modules/mquery/lib/collection/index.js +13 -0
  1275. package/templates/node_modules/mquery/lib/collection/node.js +128 -0
  1276. package/templates/node_modules/mquery/lib/env.js +22 -0
  1277. package/templates/node_modules/mquery/lib/mquery.js +2748 -0
  1278. package/templates/node_modules/mquery/lib/permissions.js +93 -0
  1279. package/templates/node_modules/mquery/lib/utils.js +297 -0
  1280. package/templates/node_modules/mquery/package.json +35 -0
  1281. package/templates/node_modules/ms/index.js +162 -0
  1282. package/templates/node_modules/ms/license.md +21 -0
  1283. package/templates/node_modules/ms/package.json +38 -0
  1284. package/templates/node_modules/ms/readme.md +59 -0
  1285. package/templates/node_modules/negotiator/HISTORY.md +114 -0
  1286. package/templates/node_modules/negotiator/LICENSE +24 -0
  1287. package/templates/node_modules/negotiator/README.md +212 -0
  1288. package/templates/node_modules/negotiator/index.js +83 -0
  1289. package/templates/node_modules/negotiator/lib/charset.js +169 -0
  1290. package/templates/node_modules/negotiator/lib/encoding.js +205 -0
  1291. package/templates/node_modules/negotiator/lib/language.js +179 -0
  1292. package/templates/node_modules/negotiator/lib/mediaType.js +294 -0
  1293. package/templates/node_modules/negotiator/package.json +43 -0
  1294. package/templates/node_modules/object-inspect/.eslintrc +53 -0
  1295. package/templates/node_modules/object-inspect/.github/FUNDING.yml +12 -0
  1296. package/templates/node_modules/object-inspect/.nycrc +13 -0
  1297. package/templates/node_modules/object-inspect/CHANGELOG.md +424 -0
  1298. package/templates/node_modules/object-inspect/LICENSE +21 -0
  1299. package/templates/node_modules/object-inspect/example/all.js +23 -0
  1300. package/templates/node_modules/object-inspect/example/circular.js +6 -0
  1301. package/templates/node_modules/object-inspect/example/fn.js +5 -0
  1302. package/templates/node_modules/object-inspect/example/inspect.js +10 -0
  1303. package/templates/node_modules/object-inspect/index.js +544 -0
  1304. package/templates/node_modules/object-inspect/package-support.json +20 -0
  1305. package/templates/node_modules/object-inspect/package.json +105 -0
  1306. package/templates/node_modules/object-inspect/readme.markdown +84 -0
  1307. package/templates/node_modules/object-inspect/test/bigint.js +58 -0
  1308. package/templates/node_modules/object-inspect/test/browser/dom.js +15 -0
  1309. package/templates/node_modules/object-inspect/test/circular.js +16 -0
  1310. package/templates/node_modules/object-inspect/test/deep.js +12 -0
  1311. package/templates/node_modules/object-inspect/test/element.js +53 -0
  1312. package/templates/node_modules/object-inspect/test/err.js +48 -0
  1313. package/templates/node_modules/object-inspect/test/fakes.js +29 -0
  1314. package/templates/node_modules/object-inspect/test/fn.js +76 -0
  1315. package/templates/node_modules/object-inspect/test/global.js +17 -0
  1316. package/templates/node_modules/object-inspect/test/has.js +15 -0
  1317. package/templates/node_modules/object-inspect/test/holes.js +15 -0
  1318. package/templates/node_modules/object-inspect/test/indent-option.js +271 -0
  1319. package/templates/node_modules/object-inspect/test/inspect.js +139 -0
  1320. package/templates/node_modules/object-inspect/test/lowbyte.js +12 -0
  1321. package/templates/node_modules/object-inspect/test/number.js +58 -0
  1322. package/templates/node_modules/object-inspect/test/quoteStyle.js +26 -0
  1323. package/templates/node_modules/object-inspect/test/toStringTag.js +40 -0
  1324. package/templates/node_modules/object-inspect/test/undef.js +12 -0
  1325. package/templates/node_modules/object-inspect/test/values.js +261 -0
  1326. package/templates/node_modules/object-inspect/test-core-js.js +26 -0
  1327. package/templates/node_modules/object-inspect/util.inspect.js +1 -0
  1328. package/templates/node_modules/on-finished/HISTORY.md +98 -0
  1329. package/templates/node_modules/on-finished/LICENSE +23 -0
  1330. package/templates/node_modules/on-finished/README.md +162 -0
  1331. package/templates/node_modules/on-finished/index.js +234 -0
  1332. package/templates/node_modules/on-finished/package.json +39 -0
  1333. package/templates/node_modules/on-headers/HISTORY.md +26 -0
  1334. package/templates/node_modules/on-headers/LICENSE +22 -0
  1335. package/templates/node_modules/on-headers/README.md +81 -0
  1336. package/templates/node_modules/on-headers/index.js +180 -0
  1337. package/templates/node_modules/on-headers/package.json +44 -0
  1338. package/templates/node_modules/once/LICENSE +15 -0
  1339. package/templates/node_modules/once/README.md +79 -0
  1340. package/templates/node_modules/once/once.js +42 -0
  1341. package/templates/node_modules/once/package.json +33 -0
  1342. package/templates/node_modules/parseurl/HISTORY.md +58 -0
  1343. package/templates/node_modules/parseurl/LICENSE +24 -0
  1344. package/templates/node_modules/parseurl/README.md +133 -0
  1345. package/templates/node_modules/parseurl/index.js +158 -0
  1346. package/templates/node_modules/parseurl/package.json +40 -0
  1347. package/templates/node_modules/path-to-regexp/LICENSE +21 -0
  1348. package/templates/node_modules/path-to-regexp/Readme.md +224 -0
  1349. package/templates/node_modules/path-to-regexp/dist/index.d.ts +144 -0
  1350. package/templates/node_modules/path-to-regexp/dist/index.js +409 -0
  1351. package/templates/node_modules/path-to-regexp/dist/index.js.map +1 -0
  1352. package/templates/node_modules/path-to-regexp/package.json +64 -0
  1353. package/templates/node_modules/proxy-addr/HISTORY.md +161 -0
  1354. package/templates/node_modules/proxy-addr/LICENSE +22 -0
  1355. package/templates/node_modules/proxy-addr/README.md +139 -0
  1356. package/templates/node_modules/proxy-addr/index.js +327 -0
  1357. package/templates/node_modules/proxy-addr/package.json +47 -0
  1358. package/templates/node_modules/punycode/LICENSE-MIT.txt +20 -0
  1359. package/templates/node_modules/punycode/README.md +148 -0
  1360. package/templates/node_modules/punycode/package.json +58 -0
  1361. package/templates/node_modules/punycode/punycode.es6.js +444 -0
  1362. package/templates/node_modules/punycode/punycode.js +443 -0
  1363. package/templates/node_modules/qs/.editorconfig +46 -0
  1364. package/templates/node_modules/qs/.eslintrc +39 -0
  1365. package/templates/node_modules/qs/.github/FUNDING.yml +12 -0
  1366. package/templates/node_modules/qs/.nycrc +13 -0
  1367. package/templates/node_modules/qs/CHANGELOG.md +622 -0
  1368. package/templates/node_modules/qs/LICENSE.md +29 -0
  1369. package/templates/node_modules/qs/README.md +733 -0
  1370. package/templates/node_modules/qs/dist/qs.js +141 -0
  1371. package/templates/node_modules/qs/lib/formats.js +23 -0
  1372. package/templates/node_modules/qs/lib/index.js +11 -0
  1373. package/templates/node_modules/qs/lib/parse.js +328 -0
  1374. package/templates/node_modules/qs/lib/stringify.js +356 -0
  1375. package/templates/node_modules/qs/lib/utils.js +268 -0
  1376. package/templates/node_modules/qs/package.json +93 -0
  1377. package/templates/node_modules/qs/test/empty-keys-cases.js +267 -0
  1378. package/templates/node_modules/qs/test/parse.js +1276 -0
  1379. package/templates/node_modules/qs/test/stringify.js +1306 -0
  1380. package/templates/node_modules/qs/test/utils.js +262 -0
  1381. package/templates/node_modules/range-parser/HISTORY.md +56 -0
  1382. package/templates/node_modules/range-parser/LICENSE +23 -0
  1383. package/templates/node_modules/range-parser/README.md +84 -0
  1384. package/templates/node_modules/range-parser/index.js +162 -0
  1385. package/templates/node_modules/range-parser/package.json +44 -0
  1386. package/templates/node_modules/raw-body/LICENSE +22 -0
  1387. package/templates/node_modules/raw-body/README.md +223 -0
  1388. package/templates/node_modules/raw-body/index.d.ts +85 -0
  1389. package/templates/node_modules/raw-body/index.js +336 -0
  1390. package/templates/node_modules/raw-body/package.json +46 -0
  1391. package/templates/node_modules/router/HISTORY.md +228 -0
  1392. package/templates/node_modules/router/LICENSE +23 -0
  1393. package/templates/node_modules/router/README.md +416 -0
  1394. package/templates/node_modules/router/index.js +748 -0
  1395. package/templates/node_modules/router/lib/layer.js +247 -0
  1396. package/templates/node_modules/router/lib/route.js +242 -0
  1397. package/templates/node_modules/router/package.json +44 -0
  1398. package/templates/node_modules/safe-buffer/LICENSE +21 -0
  1399. package/templates/node_modules/safe-buffer/README.md +584 -0
  1400. package/templates/node_modules/safe-buffer/index.d.ts +187 -0
  1401. package/templates/node_modules/safe-buffer/index.js +62 -0
  1402. package/templates/node_modules/safe-buffer/package.json +37 -0
  1403. package/templates/node_modules/safer-buffer/LICENSE +21 -0
  1404. package/templates/node_modules/safer-buffer/Porting-Buffer.md +268 -0
  1405. package/templates/node_modules/safer-buffer/Readme.md +156 -0
  1406. package/templates/node_modules/safer-buffer/dangerous.js +58 -0
  1407. package/templates/node_modules/safer-buffer/package.json +34 -0
  1408. package/templates/node_modules/safer-buffer/safer.js +77 -0
  1409. package/templates/node_modules/safer-buffer/tests.js +406 -0
  1410. package/templates/node_modules/send/LICENSE +23 -0
  1411. package/templates/node_modules/send/README.md +317 -0
  1412. package/templates/node_modules/send/index.js +997 -0
  1413. package/templates/node_modules/send/package.json +63 -0
  1414. package/templates/node_modules/serve-static/LICENSE +25 -0
  1415. package/templates/node_modules/serve-static/README.md +253 -0
  1416. package/templates/node_modules/serve-static/index.js +208 -0
  1417. package/templates/node_modules/serve-static/package.json +44 -0
  1418. package/templates/node_modules/setprototypeof/LICENSE +13 -0
  1419. package/templates/node_modules/setprototypeof/README.md +31 -0
  1420. package/templates/node_modules/setprototypeof/index.d.ts +2 -0
  1421. package/templates/node_modules/setprototypeof/index.js +17 -0
  1422. package/templates/node_modules/setprototypeof/package.json +38 -0
  1423. package/templates/node_modules/setprototypeof/test/index.js +24 -0
  1424. package/templates/node_modules/side-channel/.editorconfig +9 -0
  1425. package/templates/node_modules/side-channel/.eslintrc +12 -0
  1426. package/templates/node_modules/side-channel/.github/FUNDING.yml +12 -0
  1427. package/templates/node_modules/side-channel/.nycrc +13 -0
  1428. package/templates/node_modules/side-channel/CHANGELOG.md +110 -0
  1429. package/templates/node_modules/side-channel/LICENSE +21 -0
  1430. package/templates/node_modules/side-channel/README.md +61 -0
  1431. package/templates/node_modules/side-channel/index.d.ts +14 -0
  1432. package/templates/node_modules/side-channel/index.js +43 -0
  1433. package/templates/node_modules/side-channel/package.json +85 -0
  1434. package/templates/node_modules/side-channel/test/index.js +104 -0
  1435. package/templates/node_modules/side-channel/tsconfig.json +9 -0
  1436. package/templates/node_modules/side-channel-list/.editorconfig +9 -0
  1437. package/templates/node_modules/side-channel-list/.eslintrc +11 -0
  1438. package/templates/node_modules/side-channel-list/.github/FUNDING.yml +12 -0
  1439. package/templates/node_modules/side-channel-list/.nycrc +13 -0
  1440. package/templates/node_modules/side-channel-list/CHANGELOG.md +15 -0
  1441. package/templates/node_modules/side-channel-list/LICENSE +21 -0
  1442. package/templates/node_modules/side-channel-list/README.md +62 -0
  1443. package/templates/node_modules/side-channel-list/index.d.ts +13 -0
  1444. package/templates/node_modules/side-channel-list/index.js +113 -0
  1445. package/templates/node_modules/side-channel-list/list.d.ts +14 -0
  1446. package/templates/node_modules/side-channel-list/package.json +77 -0
  1447. package/templates/node_modules/side-channel-list/test/index.js +104 -0
  1448. package/templates/node_modules/side-channel-list/tsconfig.json +9 -0
  1449. package/templates/node_modules/side-channel-map/.editorconfig +9 -0
  1450. package/templates/node_modules/side-channel-map/.eslintrc +11 -0
  1451. package/templates/node_modules/side-channel-map/.github/FUNDING.yml +12 -0
  1452. package/templates/node_modules/side-channel-map/.nycrc +13 -0
  1453. package/templates/node_modules/side-channel-map/CHANGELOG.md +22 -0
  1454. package/templates/node_modules/side-channel-map/LICENSE +21 -0
  1455. package/templates/node_modules/side-channel-map/README.md +62 -0
  1456. package/templates/node_modules/side-channel-map/index.d.ts +15 -0
  1457. package/templates/node_modules/side-channel-map/index.js +68 -0
  1458. package/templates/node_modules/side-channel-map/package.json +80 -0
  1459. package/templates/node_modules/side-channel-map/test/index.js +114 -0
  1460. package/templates/node_modules/side-channel-map/tsconfig.json +9 -0
  1461. package/templates/node_modules/side-channel-weakmap/.editorconfig +9 -0
  1462. package/templates/node_modules/side-channel-weakmap/.eslintrc +12 -0
  1463. package/templates/node_modules/side-channel-weakmap/.github/FUNDING.yml +12 -0
  1464. package/templates/node_modules/side-channel-weakmap/.nycrc +13 -0
  1465. package/templates/node_modules/side-channel-weakmap/CHANGELOG.md +28 -0
  1466. package/templates/node_modules/side-channel-weakmap/LICENSE +21 -0
  1467. package/templates/node_modules/side-channel-weakmap/README.md +62 -0
  1468. package/templates/node_modules/side-channel-weakmap/index.d.ts +15 -0
  1469. package/templates/node_modules/side-channel-weakmap/index.js +84 -0
  1470. package/templates/node_modules/side-channel-weakmap/package.json +87 -0
  1471. package/templates/node_modules/side-channel-weakmap/test/index.js +114 -0
  1472. package/templates/node_modules/side-channel-weakmap/tsconfig.json +9 -0
  1473. package/templates/node_modules/sift/MIT-LICENSE.txt +20 -0
  1474. package/templates/node_modules/sift/README.md +465 -0
  1475. package/templates/node_modules/sift/es/index.js +632 -0
  1476. package/templates/node_modules/sift/es/index.js.map +1 -0
  1477. package/templates/node_modules/sift/es5m/index.js +743 -0
  1478. package/templates/node_modules/sift/es5m/index.js.map +1 -0
  1479. package/templates/node_modules/sift/index.d.ts +4 -0
  1480. package/templates/node_modules/sift/index.js +4 -0
  1481. package/templates/node_modules/sift/lib/core.d.ts +116 -0
  1482. package/templates/node_modules/sift/lib/index.d.ts +6 -0
  1483. package/templates/node_modules/sift/lib/index.js +781 -0
  1484. package/templates/node_modules/sift/lib/index.js.map +1 -0
  1485. package/templates/node_modules/sift/lib/operations.d.ts +88 -0
  1486. package/templates/node_modules/sift/lib/utils.d.ts +11 -0
  1487. package/templates/node_modules/sift/package.json +61 -0
  1488. package/templates/node_modules/sift/sift.csp.min.js +778 -0
  1489. package/templates/node_modules/sift/sift.csp.min.js.map +1 -0
  1490. package/templates/node_modules/sift/sift.min.js +2 -0
  1491. package/templates/node_modules/sift/sift.min.js.map +1 -0
  1492. package/templates/node_modules/sift/src/core.ts +494 -0
  1493. package/templates/node_modules/sift/src/index.ts +54 -0
  1494. package/templates/node_modules/sift/src/operations.ts +422 -0
  1495. package/templates/node_modules/sift/src/utils.ts +74 -0
  1496. package/templates/node_modules/sparse-bitfield/.travis.yml +6 -0
  1497. package/templates/node_modules/sparse-bitfield/LICENSE +21 -0
  1498. package/templates/node_modules/sparse-bitfield/README.md +62 -0
  1499. package/templates/node_modules/sparse-bitfield/index.js +95 -0
  1500. package/templates/node_modules/sparse-bitfield/package.json +27 -0
  1501. package/templates/node_modules/sparse-bitfield/test.js +79 -0
  1502. package/templates/node_modules/statuses/HISTORY.md +87 -0
  1503. package/templates/node_modules/statuses/LICENSE +23 -0
  1504. package/templates/node_modules/statuses/README.md +139 -0
  1505. package/templates/node_modules/statuses/codes.json +65 -0
  1506. package/templates/node_modules/statuses/index.js +146 -0
  1507. package/templates/node_modules/statuses/package.json +49 -0
  1508. package/templates/node_modules/toidentifier/HISTORY.md +9 -0
  1509. package/templates/node_modules/toidentifier/LICENSE +21 -0
  1510. package/templates/node_modules/toidentifier/README.md +61 -0
  1511. package/templates/node_modules/toidentifier/index.js +32 -0
  1512. package/templates/node_modules/toidentifier/package.json +38 -0
  1513. package/templates/node_modules/tr46/LICENSE.md +21 -0
  1514. package/templates/node_modules/tr46/README.md +76 -0
  1515. package/templates/node_modules/tr46/index.js +344 -0
  1516. package/templates/node_modules/tr46/lib/mappingTable.json +1 -0
  1517. package/templates/node_modules/tr46/lib/regexes.js +29 -0
  1518. package/templates/node_modules/tr46/lib/statusMapping.js +9 -0
  1519. package/templates/node_modules/tr46/package.json +44 -0
  1520. package/templates/node_modules/type-is/HISTORY.md +292 -0
  1521. package/templates/node_modules/type-is/LICENSE +23 -0
  1522. package/templates/node_modules/type-is/README.md +198 -0
  1523. package/templates/node_modules/type-is/index.js +250 -0
  1524. package/templates/node_modules/type-is/package.json +47 -0
  1525. package/templates/node_modules/unpipe/HISTORY.md +4 -0
  1526. package/templates/node_modules/unpipe/LICENSE +22 -0
  1527. package/templates/node_modules/unpipe/README.md +43 -0
  1528. package/templates/node_modules/unpipe/index.js +69 -0
  1529. package/templates/node_modules/unpipe/package.json +27 -0
  1530. package/templates/node_modules/vary/HISTORY.md +39 -0
  1531. package/templates/node_modules/vary/LICENSE +22 -0
  1532. package/templates/node_modules/vary/README.md +101 -0
  1533. package/templates/node_modules/vary/index.js +149 -0
  1534. package/templates/node_modules/vary/package.json +43 -0
  1535. package/templates/node_modules/webidl-conversions/LICENSE.md +12 -0
  1536. package/templates/node_modules/webidl-conversions/README.md +99 -0
  1537. package/templates/node_modules/webidl-conversions/lib/index.js +450 -0
  1538. package/templates/node_modules/webidl-conversions/package.json +35 -0
  1539. package/templates/node_modules/whatwg-url/LICENSE.txt +21 -0
  1540. package/templates/node_modules/whatwg-url/README.md +106 -0
  1541. package/templates/node_modules/whatwg-url/index.js +27 -0
  1542. package/templates/node_modules/whatwg-url/lib/Function.js +42 -0
  1543. package/templates/node_modules/whatwg-url/lib/URL-impl.js +233 -0
  1544. package/templates/node_modules/whatwg-url/lib/URL.js +499 -0
  1545. package/templates/node_modules/whatwg-url/lib/URLSearchParams-impl.js +135 -0
  1546. package/templates/node_modules/whatwg-url/lib/URLSearchParams.js +505 -0
  1547. package/templates/node_modules/whatwg-url/lib/VoidFunction.js +26 -0
  1548. package/templates/node_modules/whatwg-url/lib/encoding.js +16 -0
  1549. package/templates/node_modules/whatwg-url/lib/infra.js +26 -0
  1550. package/templates/node_modules/whatwg-url/lib/percent-encoding.js +142 -0
  1551. package/templates/node_modules/whatwg-url/lib/url-state-machine.js +1274 -0
  1552. package/templates/node_modules/whatwg-url/lib/urlencoded.js +89 -0
  1553. package/templates/node_modules/whatwg-url/lib/utils.js +190 -0
  1554. package/templates/node_modules/whatwg-url/package.json +53 -0
  1555. package/templates/node_modules/whatwg-url/webidl2js-wrapper.js +7 -0
  1556. package/templates/node_modules/wrappy/LICENSE +15 -0
  1557. package/templates/node_modules/wrappy/README.md +36 -0
  1558. package/templates/node_modules/wrappy/package.json +29 -0
  1559. package/templates/node_modules/wrappy/wrappy.js +33 -0
  1560. package/templates/package-lock.json +23 -0
  1561. package/templates/package.json +1 -0
  1562. package/templates/server.js +7 -8
  1563. package/test-proj/db/index.js +0 -15
  1564. package/test-proj/package.json +0 -19
  1565. package/test-proj/server.js +0 -55
@@ -0,0 +1,557 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MongoClient = exports.ServerApiVersion = void 0;
4
+ const fs_1 = require("fs");
5
+ const _1 = require(".");
6
+ const bson_1 = require("./bson");
7
+ const change_stream_1 = require("./change_stream");
8
+ const mongo_credentials_1 = require("./cmap/auth/mongo_credentials");
9
+ const providers_1 = require("./cmap/auth/providers");
10
+ const client_metadata_1 = require("./cmap/handshake/client_metadata");
11
+ const connection_string_1 = require("./connection_string");
12
+ const constants_1 = require("./constants");
13
+ const db_1 = require("./db");
14
+ const error_1 = require("./error");
15
+ const mongo_client_auth_providers_1 = require("./mongo_client_auth_providers");
16
+ const mongo_logger_1 = require("./mongo_logger");
17
+ const mongo_types_1 = require("./mongo_types");
18
+ const executor_1 = require("./operations/client_bulk_write/executor");
19
+ const end_sessions_1 = require("./operations/end_sessions");
20
+ const execute_operation_1 = require("./operations/execute_operation");
21
+ const read_preference_1 = require("./read_preference");
22
+ const server_selection_1 = require("./sdam/server_selection");
23
+ const topology_1 = require("./sdam/topology");
24
+ const sessions_1 = require("./sessions");
25
+ const utils_1 = require("./utils");
26
+ /** @public */
27
+ exports.ServerApiVersion = Object.freeze({
28
+ v1: '1'
29
+ });
30
+ /**
31
+ * @public
32
+ *
33
+ * The **MongoClient** class is a class that allows for making Connections to MongoDB.
34
+ *
35
+ * **NOTE:** The programmatically provided options take precedence over the URI options.
36
+ *
37
+ * @remarks
38
+ *
39
+ * A MongoClient is the entry point to connecting to a MongoDB server.
40
+ *
41
+ * It handles a multitude of features on your application's behalf:
42
+ * - **Server Host Connection Configuration**: A MongoClient is responsible for reading TLS cert, ca, and crl files if provided.
43
+ * - **SRV Record Polling**: A "`mongodb+srv`" style connection string is used to have the MongoClient resolve DNS SRV records of all server hostnames which the driver periodically monitors for changes and adjusts its current view of hosts correspondingly.
44
+ * - **Server Monitoring**: The MongoClient automatically keeps monitoring the health of server nodes in your cluster to reach out to the correct and lowest latency one available.
45
+ * - **Connection Pooling**: To avoid paying the cost of rebuilding a connection to the server on every operation the MongoClient keeps idle connections preserved for reuse.
46
+ * - **Session Pooling**: The MongoClient creates logical sessions that enable retryable writes, causal consistency, and transactions. It handles pooling these sessions for reuse in subsequent operations.
47
+ * - **Cursor Operations**: A MongoClient's cursors use the health monitoring system to send the request for more documents to the same server the query began on.
48
+ * - **Mongocryptd process**: When using auto encryption, a MongoClient will launch a `mongocryptd` instance for handling encryption if the mongocrypt shared library isn't in use.
49
+ *
50
+ * There are many more features of a MongoClient that are not listed above.
51
+ *
52
+ * In order to enable these features, a number of asynchronous Node.js resources are established by the driver: Timers, FS Requests, Sockets, etc.
53
+ * For details on cleanup, please refer to the MongoClient `close()` documentation.
54
+ *
55
+ * @example
56
+ * ```ts
57
+ * import { MongoClient } from 'mongodb';
58
+ * // Enable command monitoring for debugging
59
+ * const client = new MongoClient('mongodb://localhost:27017?appName=mflix', { monitorCommands: true });
60
+ * ```
61
+ */
62
+ class MongoClient extends mongo_types_1.TypedEventEmitter {
63
+ constructor(url, options) {
64
+ super();
65
+ this.driverInfoList = [];
66
+ this.on('error', utils_1.noop);
67
+ this.options = (0, connection_string_1.parseOptions)(url, this, options);
68
+ this.appendMetadata(this.options.driverInfo);
69
+ const shouldSetLogger = Object.values(this.options.mongoLoggerOptions.componentSeverities).some(value => value !== mongo_logger_1.SeverityLevel.OFF);
70
+ this.mongoLogger = shouldSetLogger
71
+ ? new mongo_logger_1.MongoLogger(this.options.mongoLoggerOptions)
72
+ : undefined;
73
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
74
+ const client = this;
75
+ // The internal state
76
+ this.s = {
77
+ url,
78
+ bsonOptions: (0, bson_1.resolveBSONOptions)(this.options),
79
+ namespace: (0, utils_1.ns)('admin'),
80
+ hasBeenClosed: false,
81
+ sessionPool: new sessions_1.ServerSessionPool(this),
82
+ activeSessions: new Set(),
83
+ activeCursors: new Set(),
84
+ authProviders: new mongo_client_auth_providers_1.MongoClientAuthProviders(),
85
+ get options() {
86
+ return client.options;
87
+ },
88
+ get readConcern() {
89
+ return client.options.readConcern;
90
+ },
91
+ get writeConcern() {
92
+ return client.options.writeConcern;
93
+ },
94
+ get readPreference() {
95
+ return client.options.readPreference;
96
+ },
97
+ get isMongoClient() {
98
+ return true;
99
+ }
100
+ };
101
+ this.checkForNonGenuineHosts();
102
+ }
103
+ /**
104
+ * @experimental
105
+ * An alias for {@link MongoClient.close|MongoClient.close()}.
106
+ */
107
+ async [Symbol.asyncDispose]() {
108
+ await this.close();
109
+ }
110
+ /**
111
+ * Append metadata to the client metadata after instantiation.
112
+ * @param driverInfo - Information about the application or library.
113
+ */
114
+ appendMetadata(driverInfo) {
115
+ const isDuplicateDriverInfo = this.driverInfoList.some(info => (0, client_metadata_1.isDriverInfoEqual)(info, driverInfo));
116
+ if (isDuplicateDriverInfo)
117
+ return;
118
+ this.driverInfoList.push(driverInfo);
119
+ this.options.metadata = (0, client_metadata_1.makeClientMetadata)(this.driverInfoList, this.options)
120
+ .then(undefined, utils_1.squashError)
121
+ .then(result => result ?? {}); // ensure Promise<Document>
122
+ }
123
+ /** @internal */
124
+ checkForNonGenuineHosts() {
125
+ const documentDBHostnames = this.options.hosts.filter((hostAddress) => (0, utils_1.isHostMatch)(utils_1.DOCUMENT_DB_CHECK, hostAddress.host));
126
+ const srvHostIsDocumentDB = (0, utils_1.isHostMatch)(utils_1.DOCUMENT_DB_CHECK, this.options.srvHost);
127
+ const cosmosDBHostnames = this.options.hosts.filter((hostAddress) => (0, utils_1.isHostMatch)(utils_1.COSMOS_DB_CHECK, hostAddress.host));
128
+ const srvHostIsCosmosDB = (0, utils_1.isHostMatch)(utils_1.COSMOS_DB_CHECK, this.options.srvHost);
129
+ if (documentDBHostnames.length !== 0 || srvHostIsDocumentDB) {
130
+ this.mongoLogger?.info('client', utils_1.DOCUMENT_DB_MSG);
131
+ }
132
+ else if (cosmosDBHostnames.length !== 0 || srvHostIsCosmosDB) {
133
+ this.mongoLogger?.info('client', utils_1.COSMOS_DB_MSG);
134
+ }
135
+ }
136
+ get serverApi() {
137
+ return this.options.serverApi && Object.freeze({ ...this.options.serverApi });
138
+ }
139
+ /**
140
+ * Intended for APM use only
141
+ * @internal
142
+ */
143
+ get monitorCommands() {
144
+ return this.options.monitorCommands;
145
+ }
146
+ set monitorCommands(value) {
147
+ this.options.monitorCommands = value;
148
+ }
149
+ /** @internal */
150
+ get autoEncrypter() {
151
+ return this.options.autoEncrypter;
152
+ }
153
+ get readConcern() {
154
+ return this.s.readConcern;
155
+ }
156
+ get writeConcern() {
157
+ return this.s.writeConcern;
158
+ }
159
+ get readPreference() {
160
+ return this.s.readPreference;
161
+ }
162
+ get bsonOptions() {
163
+ return this.s.bsonOptions;
164
+ }
165
+ get timeoutMS() {
166
+ return this.s.options.timeoutMS;
167
+ }
168
+ /**
169
+ * Executes a client bulk write operation, available on server 8.0+.
170
+ * @param models - The client bulk write models.
171
+ * @param options - The client bulk write options.
172
+ * @returns A ClientBulkWriteResult for acknowledged writes and ok: 1 for unacknowledged writes.
173
+ */
174
+ async bulkWrite(models, options) {
175
+ if (this.autoEncrypter) {
176
+ throw new error_1.MongoInvalidArgumentError('MongoClient bulkWrite does not currently support automatic encryption.');
177
+ }
178
+ // We do not need schema type information past this point ("as any" is fine)
179
+ return await new executor_1.ClientBulkWriteExecutor(this, models, (0, utils_1.resolveOptions)(this, options)).execute();
180
+ }
181
+ /**
182
+ * An optional method to verify a handful of assumptions that are generally useful at application boot-time before using a MongoClient.
183
+ * For detailed information about the connect process see the MongoClient.connect static method documentation.
184
+ *
185
+ * @param url - The MongoDB connection string (supports `mongodb://` and `mongodb+srv://` schemes)
186
+ * @param options - Optional configuration options for the client
187
+ *
188
+ * @see https://www.mongodb.com/docs/manual/reference/connection-string/
189
+ */
190
+ async connect() {
191
+ if (this.connectionLock) {
192
+ return await this.connectionLock;
193
+ }
194
+ try {
195
+ this.connectionLock = this._connect();
196
+ await this.connectionLock;
197
+ }
198
+ finally {
199
+ // release
200
+ this.connectionLock = undefined;
201
+ }
202
+ return this;
203
+ }
204
+ /**
205
+ * Create a topology to open the connection, must be locked to avoid topology leaks in concurrency scenario.
206
+ * Locking is enforced by the connect method.
207
+ *
208
+ * @internal
209
+ */
210
+ async _connect() {
211
+ if (this.topology && this.topology.isConnected()) {
212
+ return this;
213
+ }
214
+ const options = this.options;
215
+ if (options.tls) {
216
+ if (typeof options.tlsCAFile === 'string') {
217
+ options.ca ??= await fs_1.promises.readFile(options.tlsCAFile);
218
+ }
219
+ if (typeof options.tlsCRLFile === 'string') {
220
+ options.crl ??= await fs_1.promises.readFile(options.tlsCRLFile);
221
+ }
222
+ if (typeof options.tlsCertificateKeyFile === 'string') {
223
+ if (!options.key || !options.cert) {
224
+ const contents = await fs_1.promises.readFile(options.tlsCertificateKeyFile);
225
+ options.key ??= contents;
226
+ options.cert ??= contents;
227
+ }
228
+ }
229
+ }
230
+ if (typeof options.srvHost === 'string') {
231
+ const hosts = await (0, connection_string_1.resolveSRVRecord)(options);
232
+ for (const [index, host] of hosts.entries()) {
233
+ options.hosts[index] = host;
234
+ }
235
+ }
236
+ // It is important to perform validation of hosts AFTER SRV resolution, to check the real hostname,
237
+ // but BEFORE we even attempt connecting with a potentially not allowed hostname
238
+ if (options.credentials?.mechanism === providers_1.AuthMechanism.MONGODB_OIDC) {
239
+ const allowedHosts = options.credentials?.mechanismProperties?.ALLOWED_HOSTS || mongo_credentials_1.DEFAULT_ALLOWED_HOSTS;
240
+ const isServiceAuth = !!options.credentials?.mechanismProperties?.ENVIRONMENT;
241
+ if (!isServiceAuth) {
242
+ for (const host of options.hosts) {
243
+ if (!(0, utils_1.hostMatchesWildcards)(host.toHostPort().host, allowedHosts)) {
244
+ throw new error_1.MongoInvalidArgumentError(`Host '${host}' is not valid for OIDC authentication with ALLOWED_HOSTS of '${allowedHosts.join(',')}'`);
245
+ }
246
+ }
247
+ }
248
+ }
249
+ this.topology = new topology_1.Topology(this, options.hosts, options);
250
+ // Events can be emitted before initialization is complete so we have to
251
+ // save the reference to the topology on the client ASAP if the event handlers need to access it
252
+ this.topology.once(topology_1.Topology.OPEN, () => this.emit('open', this));
253
+ for (const event of constants_1.MONGO_CLIENT_EVENTS) {
254
+ this.topology.on(event, (...args) => this.emit(event, ...args));
255
+ }
256
+ const topologyConnect = async () => {
257
+ try {
258
+ await this.topology?.connect(options);
259
+ }
260
+ catch (error) {
261
+ this.topology?.close();
262
+ throw error;
263
+ }
264
+ };
265
+ if (this.autoEncrypter) {
266
+ await this.autoEncrypter?.init();
267
+ await topologyConnect();
268
+ await options.encrypter.connectInternalClient();
269
+ }
270
+ else {
271
+ await topologyConnect();
272
+ }
273
+ return this;
274
+ }
275
+ /**
276
+ * Cleans up resources managed by the MongoClient.
277
+ *
278
+ * The close method clears and closes all resources whose lifetimes are managed by the MongoClient.
279
+ * Please refer to the `MongoClient` class documentation for a high level overview of the client's key features and responsibilities.
280
+ *
281
+ * **However,** the close method does not handle the cleanup of resources explicitly created by the user.
282
+ * Any user-created driver resource with its own `close()` method should be explicitly closed by the user before calling MongoClient.close().
283
+ * This method is written as a "best effort" attempt to leave behind the least amount of resources server-side when possible.
284
+ *
285
+ * The following list defines ideal preconditions and consequent pitfalls if they are not met.
286
+ * The MongoClient, ClientSession, Cursors and ChangeStreams all support [explicit resource management](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-2.html).
287
+ * By using explicit resource management to manage the lifetime of driver resources instead of manually managing their lifetimes, the pitfalls outlined below can be avoided.
288
+ *
289
+ * The close method performs the following in the order listed:
290
+ * - Client-side:
291
+ * - **Close in-use connections**: Any connections that are currently waiting on a response from the server will be closed.
292
+ * This is performed _first_ to avoid reaching the next step (server-side clean up) and having no available connections to check out.
293
+ * - _Ideal_: All operations have been awaited or cancelled, and the outcomes, regardless of success or failure, have been processed before closing the client servicing the operation.
294
+ * - _Pitfall_: When `client.close()` is called and all connections are in use, after closing them, the client must create new connections for cleanup operations, which comes at the cost of new TLS/TCP handshakes and authentication steps.
295
+ * - Server-side:
296
+ * - **Close active cursors**: All cursors that haven't been completed will have a `killCursor` operation sent to the server they were initialized on, freeing the server-side resource.
297
+ * - _Ideal_: Cursors are explicitly closed or completed before `client.close()` is called.
298
+ * - _Pitfall_: `killCursors` may have to build a new connection if the in-use closure ended all pooled connections.
299
+ * - **End active sessions**: In-use sessions created with `client.startSession()` or `client.withSession()` or implicitly by the driver will have their `.endSession()` method called.
300
+ * Contrary to the name of the method, `endSession()` returns the session to the client's pool of sessions rather than end them on the server.
301
+ * - _Ideal_: Transaction outcomes are awaited and their corresponding explicit sessions are ended before `client.close()` is called.
302
+ * - _Pitfall_: **This step aborts in-progress transactions**. It is advisable to observe the outcome of a transaction before closing your client.
303
+ * - **End all pooled sessions**: The `endSessions` command with all session IDs the client has pooled is sent to the server to inform the cluster it can clean them up.
304
+ * - _Ideal_: No user intervention is expected.
305
+ * - _Pitfall_: None.
306
+ *
307
+ * The remaining shutdown is of the MongoClient resources that are intended to be entirely internal but is documented here as their existence relates to the JS event loop.
308
+ *
309
+ * - Client-side (again):
310
+ * - **Stop all server monitoring**: Connections kept live for detecting cluster changes and roundtrip time measurements are shutdown.
311
+ * - **Close all pooled connections**: Each server node in the cluster has a corresponding connection pool and all connections in the pool are closed. Any operations waiting to check out a connection will have an error thrown instead of a connection returned.
312
+ * - **Clear out server selection queue**: Any operations that are in the process of waiting for a server to be selected will have an error thrown instead of a server returned.
313
+ * - **Close encryption-related resources**: An internal MongoClient created for communicating with `mongocryptd` or other encryption purposes is closed. (Using this same method of course!)
314
+ *
315
+ * After the close method completes there should be no MongoClient related resources [ref-ed in Node.js' event loop](https://docs.libuv.org/en/v1.x/handle.html#reference-counting).
316
+ * This should allow Node.js to exit gracefully if MongoClient resources were the only active handles in the event loop.
317
+ *
318
+ * @param _force - currently an unused flag that has no effect. Defaults to `false`.
319
+ */
320
+ async close(_force = false) {
321
+ if (this.closeLock) {
322
+ return await this.closeLock;
323
+ }
324
+ try {
325
+ this.closeLock = this._close();
326
+ await this.closeLock;
327
+ }
328
+ finally {
329
+ // release
330
+ this.closeLock = undefined;
331
+ }
332
+ }
333
+ /* @internal */
334
+ async _close() {
335
+ // There's no way to set hasBeenClosed back to false
336
+ Object.defineProperty(this.s, 'hasBeenClosed', {
337
+ value: true,
338
+ enumerable: true,
339
+ configurable: false,
340
+ writable: false
341
+ });
342
+ this.topology?.closeCheckedOutConnections();
343
+ const activeCursorCloses = Array.from(this.s.activeCursors, cursor => cursor.close());
344
+ this.s.activeCursors.clear();
345
+ await Promise.all(activeCursorCloses);
346
+ const activeSessionEnds = Array.from(this.s.activeSessions, session => session.endSession());
347
+ this.s.activeSessions.clear();
348
+ await Promise.all(activeSessionEnds);
349
+ if (this.topology == null) {
350
+ return;
351
+ }
352
+ const supportsSessions = this.topology.description.type === _1.TopologyType.LoadBalanced ||
353
+ this.topology.description.logicalSessionTimeoutMinutes != null;
354
+ if (supportsSessions) {
355
+ await endSessions(this, this.topology);
356
+ }
357
+ // clear out references to old topology
358
+ const topology = this.topology;
359
+ this.topology = undefined;
360
+ topology.close();
361
+ const { encrypter } = this.options;
362
+ if (encrypter) {
363
+ await encrypter.close(this);
364
+ }
365
+ async function endSessions(client, { description: topologyDescription }) {
366
+ // If we would attempt to select a server and get nothing back we short circuit
367
+ // to avoid the server selection timeout.
368
+ const selector = (0, server_selection_1.readPreferenceServerSelector)(read_preference_1.ReadPreference.primaryPreferred);
369
+ const serverDescriptions = Array.from(topologyDescription.servers.values());
370
+ const servers = selector(topologyDescription, serverDescriptions);
371
+ if (servers.length !== 0) {
372
+ const endSessions = Array.from(client.s.sessionPool.sessions, ({ id }) => id);
373
+ if (endSessions.length !== 0) {
374
+ try {
375
+ await (0, execute_operation_1.executeOperation)(client, new end_sessions_1.EndSessionsOperation(endSessions));
376
+ }
377
+ catch (error) {
378
+ (0, utils_1.squashError)(error);
379
+ }
380
+ }
381
+ }
382
+ }
383
+ }
384
+ /**
385
+ * Create a new Db instance sharing the current socket connections.
386
+ *
387
+ * @param dbName - The name of the database we want to use. If not provided, use database name from connection string.
388
+ * @param options - Optional settings for Db construction
389
+ */
390
+ db(dbName, options) {
391
+ options = options ?? {};
392
+ // Default to db from connection string if not provided
393
+ if (!dbName) {
394
+ dbName = this.s.options.dbName;
395
+ }
396
+ // Copy the options and add out internal override of the not shared flag
397
+ const finalOptions = Object.assign({}, this.options, options);
398
+ // Return the db object
399
+ const db = new db_1.Db(this, dbName, finalOptions);
400
+ // Return the database
401
+ return db;
402
+ }
403
+ /**
404
+ * Creates a new MongoClient instance and immediately connects it to MongoDB.
405
+ * This convenience method combines `new MongoClient(url, options)` and `client.connect()` in a single step.
406
+ *
407
+ * Connect can be helpful to detect configuration issues early by validating:
408
+ * - **DNS Resolution**: Verifies that SRV records and hostnames in the connection string resolve DNS entries
409
+ * - **Network Connectivity**: Confirms that host addresses are reachable and ports are open
410
+ * - **TLS Configuration**: Validates SSL/TLS certificates, CA files, and encryption settings are correct
411
+ * - **Authentication**: Verifies that provided credentials are valid
412
+ * - **Server Compatibility**: Ensures the MongoDB server version is supported by this driver version
413
+ * - **Load Balancer Setup**: For load-balanced deployments, confirms the service is properly configured
414
+ *
415
+ * @returns A promise that resolves to the same MongoClient instance once connected
416
+ *
417
+ * @remarks
418
+ * **Connection is Optional:** Calling `connect` is optional since any operation method (`find`, `insertOne`, etc.)
419
+ * will automatically perform these same validation steps if the client is not already connected.
420
+ * However, explicitly calling `connect` can make sense for:
421
+ * - **Fail-fast Error Detection**: Non-transient connection issues (hostname unresolved, port refused connection) are discovered immediately rather than during your first operation
422
+ * - **Predictable Performance**: Eliminates first connection overhead from your first database operation
423
+ *
424
+ * @remarks
425
+ * **Connection Pooling Impact:** Calling `connect` will populate the connection pool with one connection
426
+ * to a server selected by the client's configured `readPreference` (defaults to primary).
427
+ *
428
+ * @remarks
429
+ * **Timeout Behavior:** When using `timeoutMS`, the connection establishment time does not count against
430
+ * the timeout for subsequent operations. This means `connect` runs without a `timeoutMS` limit, while
431
+ * your database operations will still respect the configured timeout. If you need predictable operation
432
+ * timing with `timeoutMS`, call `connect` explicitly before performing operations.
433
+ *
434
+ * @see https://www.mongodb.com/docs/manual/reference/connection-string/
435
+ */
436
+ static async connect(url, options) {
437
+ const client = new this(url, options);
438
+ return await client.connect();
439
+ }
440
+ /**
441
+ * Creates a new ClientSession. When using the returned session in an operation
442
+ * a corresponding ServerSession will be created.
443
+ *
444
+ * @remarks
445
+ * A ClientSession instance may only be passed to operations being performed on the same
446
+ * MongoClient it was started from.
447
+ */
448
+ startSession(options) {
449
+ const session = new sessions_1.ClientSession(this, this.s.sessionPool, { explicit: true, ...options }, this.options);
450
+ this.s.activeSessions.add(session);
451
+ session.once('ended', () => {
452
+ this.s.activeSessions.delete(session);
453
+ });
454
+ return session;
455
+ }
456
+ async withSession(optionsOrExecutor, executor) {
457
+ const options = {
458
+ // Always define an owner
459
+ owner: Symbol(),
460
+ // If it's an object inherit the options
461
+ ...(typeof optionsOrExecutor === 'object' ? optionsOrExecutor : {})
462
+ };
463
+ const withSessionCallback = typeof optionsOrExecutor === 'function' ? optionsOrExecutor : executor;
464
+ if (withSessionCallback == null) {
465
+ throw new error_1.MongoInvalidArgumentError('Missing required callback parameter');
466
+ }
467
+ const session = this.startSession(options);
468
+ try {
469
+ return await withSessionCallback(session);
470
+ }
471
+ finally {
472
+ try {
473
+ await session.endSession();
474
+ }
475
+ catch (error) {
476
+ (0, utils_1.squashError)(error);
477
+ }
478
+ }
479
+ }
480
+ /**
481
+ * Create a new Change Stream, watching for new changes (insertions, updates,
482
+ * replacements, deletions, and invalidations) in this cluster. Will ignore all
483
+ * changes to system collections, as well as the local, admin, and config databases.
484
+ *
485
+ * @remarks
486
+ * watch() accepts two generic arguments for distinct use cases:
487
+ * - The first is to provide the schema that may be defined for all the data within the current cluster
488
+ * - The second is to override the shape of the change stream document entirely, if it is not provided the type will default to ChangeStreamDocument of the first argument
489
+ *
490
+ * @remarks
491
+ * When `timeoutMS` is configured for a change stream, it will have different behaviour depending
492
+ * on whether the change stream is in iterator mode or emitter mode. In both cases, a change
493
+ * stream will time out if it does not receive a change event within `timeoutMS` of the last change
494
+ * event.
495
+ *
496
+ * Note that if a change stream is consistently timing out when watching a collection, database or
497
+ * client that is being changed, then this may be due to the server timing out before it can finish
498
+ * processing the existing oplog. To address this, restart the change stream with a higher
499
+ * `timeoutMS`.
500
+ *
501
+ * If the change stream times out the initial aggregate operation to establish the change stream on
502
+ * the server, then the client will close the change stream. If the getMore calls to the server
503
+ * time out, then the change stream will be left open, but will throw a MongoOperationTimeoutError
504
+ * when in iterator mode and emit an error event that returns a MongoOperationTimeoutError in
505
+ * emitter mode.
506
+ *
507
+ * To determine whether or not the change stream is still open following a timeout, check the
508
+ * {@link ChangeStream.closed} getter.
509
+ *
510
+ * @example
511
+ * In iterator mode, if a next() call throws a timeout error, it will attempt to resume the change stream.
512
+ * The next call can just be retried after this succeeds.
513
+ * ```ts
514
+ * const changeStream = collection.watch([], { timeoutMS: 100 });
515
+ * try {
516
+ * await changeStream.next();
517
+ * } catch (e) {
518
+ * if (e instanceof MongoOperationTimeoutError && !changeStream.closed) {
519
+ * await changeStream.next();
520
+ * }
521
+ * throw e;
522
+ * }
523
+ * ```
524
+ *
525
+ * @example
526
+ * In emitter mode, if the change stream goes `timeoutMS` without emitting a change event, it will
527
+ * emit an error event that returns a MongoOperationTimeoutError, but will not close the change
528
+ * stream unless the resume attempt fails. There is no need to re-establish change listeners as
529
+ * this will automatically continue emitting change events once the resume attempt completes.
530
+ *
531
+ * ```ts
532
+ * const changeStream = collection.watch([], { timeoutMS: 100 });
533
+ * changeStream.on('change', console.log);
534
+ * changeStream.on('error', e => {
535
+ * if (e instanceof MongoOperationTimeoutError && !changeStream.closed) {
536
+ * // do nothing
537
+ * } else {
538
+ * changeStream.close();
539
+ * }
540
+ * });
541
+ * ```
542
+ * @param pipeline - An array of {@link https://www.mongodb.com/docs/manual/reference/operator/aggregation-pipeline/|aggregation pipeline stages} through which to pass change stream documents. This allows for filtering (using $match) and manipulating the change stream documents.
543
+ * @param options - Optional settings for the command
544
+ * @typeParam TSchema - Type of the data being detected by the change stream
545
+ * @typeParam TChange - Type of the whole change stream document emitted
546
+ */
547
+ watch(pipeline = [], options = {}) {
548
+ // Allow optionally not specifying a pipeline
549
+ if (!Array.isArray(pipeline)) {
550
+ options = pipeline;
551
+ pipeline = [];
552
+ }
553
+ return new change_stream_1.ChangeStream(this, pipeline, (0, utils_1.resolveOptions)(this, options));
554
+ }
555
+ }
556
+ exports.MongoClient = MongoClient;
557
+ //# sourceMappingURL=mongo_client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongo_client.js","sourceRoot":"","sources":["../src/mongo_client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MongoClientAuthProviders = void 0;
4
+ const gssapi_1 = require("./cmap/auth/gssapi");
5
+ const mongodb_aws_1 = require("./cmap/auth/mongodb_aws");
6
+ const mongodb_oidc_1 = require("./cmap/auth/mongodb_oidc");
7
+ const automated_callback_workflow_1 = require("./cmap/auth/mongodb_oidc/automated_callback_workflow");
8
+ const human_callback_workflow_1 = require("./cmap/auth/mongodb_oidc/human_callback_workflow");
9
+ const token_cache_1 = require("./cmap/auth/mongodb_oidc/token_cache");
10
+ const plain_1 = require("./cmap/auth/plain");
11
+ const providers_1 = require("./cmap/auth/providers");
12
+ const scram_1 = require("./cmap/auth/scram");
13
+ const x509_1 = require("./cmap/auth/x509");
14
+ const error_1 = require("./error");
15
+ /** @internal */
16
+ const AUTH_PROVIDERS = new Map([
17
+ [
18
+ providers_1.AuthMechanism.MONGODB_AWS,
19
+ ({ AWS_CREDENTIAL_PROVIDER }) => new mongodb_aws_1.MongoDBAWS(AWS_CREDENTIAL_PROVIDER)
20
+ ],
21
+ [providers_1.AuthMechanism.MONGODB_GSSAPI, () => new gssapi_1.GSSAPI()],
22
+ [providers_1.AuthMechanism.MONGODB_OIDC, properties => new mongodb_oidc_1.MongoDBOIDC(getWorkflow(properties))],
23
+ [providers_1.AuthMechanism.MONGODB_PLAIN, () => new plain_1.Plain()],
24
+ [providers_1.AuthMechanism.MONGODB_SCRAM_SHA1, () => new scram_1.ScramSHA1()],
25
+ [providers_1.AuthMechanism.MONGODB_SCRAM_SHA256, () => new scram_1.ScramSHA256()],
26
+ [providers_1.AuthMechanism.MONGODB_X509, () => new x509_1.X509()]
27
+ ]);
28
+ /**
29
+ * Create a set of providers per client
30
+ * to avoid sharing the provider's cache between different clients.
31
+ * @internal
32
+ */
33
+ class MongoClientAuthProviders {
34
+ constructor() {
35
+ this.existingProviders = new Map();
36
+ }
37
+ /**
38
+ * Get or create an authentication provider based on the provided mechanism.
39
+ * We don't want to create all providers at once, as some providers may not be used.
40
+ * @param name - The name of the provider to get or create.
41
+ * @param credentials - The credentials.
42
+ * @returns The provider.
43
+ * @throws MongoInvalidArgumentError if the mechanism is not supported.
44
+ * @internal
45
+ */
46
+ getOrCreateProvider(name, authMechanismProperties) {
47
+ const authProvider = this.existingProviders.get(name);
48
+ if (authProvider) {
49
+ return authProvider;
50
+ }
51
+ const providerFunction = AUTH_PROVIDERS.get(name);
52
+ if (!providerFunction) {
53
+ throw new error_1.MongoInvalidArgumentError(`authMechanism ${name} not supported`);
54
+ }
55
+ const provider = providerFunction(authMechanismProperties);
56
+ this.existingProviders.set(name, provider);
57
+ return provider;
58
+ }
59
+ }
60
+ exports.MongoClientAuthProviders = MongoClientAuthProviders;
61
+ /**
62
+ * Gets either a device workflow or callback workflow.
63
+ */
64
+ function getWorkflow(authMechanismProperties) {
65
+ if (authMechanismProperties.OIDC_HUMAN_CALLBACK) {
66
+ return new human_callback_workflow_1.HumanCallbackWorkflow(new token_cache_1.TokenCache(), authMechanismProperties.OIDC_HUMAN_CALLBACK);
67
+ }
68
+ else if (authMechanismProperties.OIDC_CALLBACK) {
69
+ return new automated_callback_workflow_1.AutomatedCallbackWorkflow(new token_cache_1.TokenCache(), authMechanismProperties.OIDC_CALLBACK);
70
+ }
71
+ else {
72
+ const environment = authMechanismProperties.ENVIRONMENT;
73
+ const workflow = mongodb_oidc_1.OIDC_WORKFLOWS.get(environment)?.();
74
+ if (!workflow) {
75
+ throw new error_1.MongoInvalidArgumentError(`Could not load workflow for environment ${authMechanismProperties.ENVIRONMENT}`);
76
+ }
77
+ return workflow;
78
+ }
79
+ }
80
+ //# sourceMappingURL=mongo_client_auth_providers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongo_client_auth_providers.js","sourceRoot":"","sources":["../src/mongo_client_auth_providers.ts"],"names":[],"mappings":";;;AACA,+CAA4C;AAE5C,yDAAqD;AACrD,2DAAsF;AACtF,sGAAiG;AACjG,8FAAyF;AACzF,sEAAkE;AAClE,6CAA0C;AAC1C,qDAAsD;AACtD,6CAA2D;AAC3D,2CAAwC;AACxC,mCAAoD;AAEpD,gBAAgB;AAChB,MAAM,cAAc,GAAG,IAAI,GAAG,CAG5B;IACA;QACE,yBAAa,CAAC,WAAW;QACzB,CAAC,EAAE,uBAAuB,EAAE,EAAE,EAAE,CAAC,IAAI,wBAAU,CAAC,uBAAuB,CAAC;KACzE;IACD,CAAC,yBAAa,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI,eAAM,EAAE,CAAC;IAClD,CAAC,yBAAa,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC,IAAI,0BAAW,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC;IACpF,CAAC,yBAAa,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,aAAK,EAAE,CAAC;IAChD,CAAC,yBAAa,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,IAAI,iBAAS,EAAE,CAAC;IACzD,CAAC,yBAAa,CAAC,oBAAoB,EAAE,GAAG,EAAE,CAAC,IAAI,mBAAW,EAAE,CAAC;IAC7D,CAAC,yBAAa,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,WAAI,EAAE,CAAC;CAC/C,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAa,wBAAwB;IAArC;QACU,sBAAiB,GAA8C,IAAI,GAAG,EAAE,CAAC;IA6BnF,CAAC;IA3BC;;;;;;;;OAQG;IACH,mBAAmB,CACjB,IAA4B,EAC5B,uBAAgD;QAEhD,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,YAAY,CAAC;QACtB,CAAC;QAED,MAAM,gBAAgB,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,iCAAyB,CAAC,iBAAiB,IAAI,gBAAgB,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;QAC3D,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC3C,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AA9BD,4DA8BC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,uBAAgD;IACnE,IAAI,uBAAuB,CAAC,mBAAmB,EAAE,CAAC;QAChD,OAAO,IAAI,+CAAqB,CAAC,IAAI,wBAAU,EAAE,EAAE,uBAAuB,CAAC,mBAAmB,CAAC,CAAC;IAClG,CAAC;SAAM,IAAI,uBAAuB,CAAC,aAAa,EAAE,CAAC;QACjD,OAAO,IAAI,uDAAyB,CAAC,IAAI,wBAAU,EAAE,EAAE,uBAAuB,CAAC,aAAa,CAAC,CAAC;IAChG,CAAC;SAAM,CAAC;QACN,MAAM,WAAW,GAAG,uBAAuB,CAAC,WAAW,CAAC;QACxD,MAAM,QAAQ,GAAG,6BAAc,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC;QACrD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,iCAAyB,CACjC,2CAA2C,uBAAuB,CAAC,WAAW,EAAE,CACjF,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC"}