oxygen-cli 1.40.2-beta.1 → 1.40.2

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 (442) hide show
  1. package/CHANGELOG.md +1750 -1742
  2. package/LICENSE +672 -672
  3. package/README.md +37 -37
  4. package/build/core/OxygenCore.js +1 -1
  5. package/build/core/OxygenEvents.js +1 -1
  6. package/build/core/OxygenModule.js +1 -1
  7. package/build/core/OxygenService.js +1 -1
  8. package/build/core/OxygenSubModule.js +1 -1
  9. package/build/core/WebDriverModule.js +1 -1
  10. package/build/core/utils.js +1 -1
  11. package/build/errors/HookError.js +1 -1
  12. package/build/errors/ModuleError.js +1 -1
  13. package/build/errors/ModuleUnavailableError.js +1 -1
  14. package/build/errors/OxygenError.js +1 -1
  15. package/build/errors/ScriptNotFound.js +1 -1
  16. package/build/errors/helper.js +1 -2
  17. package/build/index.js +1 -1
  18. package/build/lib/cli-util.js +1 -5
  19. package/build/lib/cli.js +1 -1
  20. package/build/lib/debugger.js +1 -1
  21. package/build/lib/img-merge.js +1 -1
  22. package/build/lib/launcher.js +1 -1
  23. package/build/lib/logger.js +43 -43
  24. package/build/lib/moduleRequire.js +1 -1
  25. package/build/lib/parallel-launcher.js +1 -1
  26. package/build/lib/param-manager.js +1 -1
  27. package/build/lib/param-reader-csv.js +1 -1
  28. package/build/lib/param-reader-excel.js +1 -1
  29. package/build/lib/param-reader-json.js +1 -1
  30. package/build/lib/text-to-image.js +1 -1
  31. package/build/lib/util.js +1 -1
  32. package/build/model/case-result.js +1 -1
  33. package/build/model/failure.js +1 -1
  34. package/build/model/status.js +1 -1
  35. package/build/model/step-result.js +1 -1
  36. package/build/model/suite-result.js +1 -1
  37. package/build/model/test-result.js +1 -1
  38. package/build/model/testcase.js +1 -1
  39. package/build/model/testsuite.js +1 -1
  40. package/build/ox_modules/index.js +1 -9
  41. package/build/ox_modules/module-assert.js +37 -37
  42. package/build/ox_modules/module-date.js +24 -24
  43. package/build/ox_modules/module-db.js +52 -52
  44. package/build/ox_modules/module-email.js +59 -59
  45. package/build/ox_modules/module-eyes.js +34 -34
  46. package/build/ox_modules/module-http/ntlm-util.js +10 -10
  47. package/build/ox_modules/module-http/ntlm.js +15 -15
  48. package/build/ox_modules/module-http.js +132 -132
  49. package/build/ox_modules/module-log.js +27 -27
  50. package/build/ox_modules/module-mailinator.js +87 -87
  51. package/build/ox_modules/module-mob/commands/alertAccept.js +17 -17
  52. package/build/ox_modules/module-mob/commands/alertDismiss.js +17 -17
  53. package/build/ox_modules/module-mob/commands/assertAlert.js +20 -20
  54. package/build/ox_modules/module-mob/commands/assertText.js +21 -21
  55. package/build/ox_modules/module-mob/commands/assertTitle.js +19 -19
  56. package/build/ox_modules/module-mob/commands/assertValue.js +18 -18
  57. package/build/ox_modules/module-mob/commands/back.js +16 -16
  58. package/build/ox_modules/module-mob/commands/clear.js +19 -19
  59. package/build/ox_modules/module-mob/commands/click.js +17 -17
  60. package/build/ox_modules/module-mob/commands/clickHidden.js +17 -17
  61. package/build/ox_modules/module-mob/commands/clickLong.js +18 -18
  62. package/build/ox_modules/module-mob/commands/clickMultipleTimes.js +18 -18
  63. package/build/ox_modules/module-mob/commands/closeApp.js +16 -16
  64. package/build/ox_modules/module-mob/commands/debug.js +16 -16
  65. package/build/ox_modules/module-mob/commands/dragAndDrop.js +19 -19
  66. package/build/ox_modules/module-mob/commands/enableNetwork.js +27 -27
  67. package/build/ox_modules/module-mob/commands/execute.js +21 -21
  68. package/build/ox_modules/module-mob/commands/findElement.js +20 -20
  69. package/build/ox_modules/module-mob/commands/findElements.js +23 -23
  70. package/build/ox_modules/module-mob/commands/getAlertText.js +17 -17
  71. package/build/ox_modules/module-mob/commands/getAppiumLogs.js +16 -16
  72. package/build/ox_modules/module-mob/commands/getBrowserLogs.js +16 -16
  73. package/build/ox_modules/module-mob/commands/getCurrentActivity.js +15 -15
  74. package/build/ox_modules/module-mob/commands/getCurrentPackage.js +15 -15
  75. package/build/ox_modules/module-mob/commands/getDeviceLogs.js +16 -16
  76. package/build/ox_modules/module-mob/commands/getDeviceTime.js +16 -16
  77. package/build/ox_modules/module-mob/commands/getLocation.js +20 -20
  78. package/build/ox_modules/module-mob/commands/getSource.js +16 -16
  79. package/build/ox_modules/module-mob/commands/getText.js +18 -18
  80. package/build/ox_modules/module-mob/commands/getTitle.js +13 -13
  81. package/build/ox_modules/module-mob/commands/getUrl.js +17 -17
  82. package/build/ox_modules/module-mob/commands/getValue.js +18 -18
  83. package/build/ox_modules/module-mob/commands/getWindowHandles.js +17 -17
  84. package/build/ox_modules/module-mob/commands/hideKeyboard.js +21 -21
  85. package/build/ox_modules/module-mob/commands/index.js +1 -1
  86. package/build/ox_modules/module-mob/commands/installApp.js +16 -16
  87. package/build/ox_modules/module-mob/commands/isAppInstalled.js +16 -16
  88. package/build/ox_modules/module-mob/commands/isCheckable.js +18 -18
  89. package/build/ox_modules/module-mob/commands/isChecked.js +18 -18
  90. package/build/ox_modules/module-mob/commands/isClickable.js +18 -18
  91. package/build/ox_modules/module-mob/commands/isExist.js +19 -19
  92. package/build/ox_modules/module-mob/commands/isSelected.js +23 -23
  93. package/build/ox_modules/module-mob/commands/isVisible.js +19 -19
  94. package/build/ox_modules/module-mob/commands/isWebViewContext.js +16 -16
  95. package/build/ox_modules/module-mob/commands/launchApp.js +15 -15
  96. package/build/ox_modules/module-mob/commands/longPressKeyCode.js +18 -18
  97. package/build/ox_modules/module-mob/commands/open.js +17 -17
  98. package/build/ox_modules/module-mob/commands/pause.js +16 -16
  99. package/build/ox_modules/module-mob/commands/removeApp.js +16 -16
  100. package/build/ox_modules/module-mob/commands/resetApp.js +15 -15
  101. package/build/ox_modules/module-mob/commands/scrollIntoElement.js +22 -22
  102. package/build/ox_modules/module-mob/commands/scrollIntoView.js +27 -27
  103. package/build/ox_modules/module-mob/commands/select.js +24 -24
  104. package/build/ox_modules/module-mob/commands/selectFrame.js +23 -23
  105. package/build/ox_modules/module-mob/commands/selectWindow.js +28 -28
  106. package/build/ox_modules/module-mob/commands/sendKeys.js +29 -29
  107. package/build/ox_modules/module-mob/commands/setContext.js +16 -16
  108. package/build/ox_modules/module-mob/commands/setNativeContext.js +15 -15
  109. package/build/ox_modules/module-mob/commands/setTimeout.js +21 -21
  110. package/build/ox_modules/module-mob/commands/setWebViewContext.js +16 -16
  111. package/build/ox_modules/module-mob/commands/shake.js +16 -16
  112. package/build/ox_modules/module-mob/commands/smsClickLink.js +19 -19
  113. package/build/ox_modules/module-mob/commands/smsGetText.js +20 -20
  114. package/build/ox_modules/module-mob/commands/swipe.js +20 -20
  115. package/build/ox_modules/module-mob/commands/swipeElement.js +20 -20
  116. package/build/ox_modules/module-mob/commands/swipeScreen.js +20 -20
  117. package/build/ox_modules/module-mob/commands/takeScreenshot.js +17 -17
  118. package/build/ox_modules/module-mob/commands/tap.js +17 -17
  119. package/build/ox_modules/module-mob/commands/type.js +20 -20
  120. package/build/ox_modules/module-mob/commands/unlockPattern.js +22 -22
  121. package/build/ox_modules/module-mob/commands/waitForExist.js +18 -18
  122. package/build/ox_modules/module-mob/commands/waitForInteractable.js +17 -17
  123. package/build/ox_modules/module-mob/commands/waitForVisible.js +17 -17
  124. package/build/ox_modules/module-mob.js +74 -74
  125. package/build/ox_modules/module-pdf.js +35 -35
  126. package/build/ox_modules/module-proxy.js +77 -77
  127. package/build/ox_modules/module-serial.js +55 -55
  128. package/build/ox_modules/module-shell.js +52 -33
  129. package/build/ox_modules/module-soap.js +72 -72
  130. package/build/ox_modules/module-twilio.js +41 -41
  131. package/build/ox_modules/module-utils.js +91 -91
  132. package/build/ox_modules/module-web/commands/alertAccept.js +17 -17
  133. package/build/ox_modules/module-web/commands/alertDismiss.js +17 -17
  134. package/build/ox_modules/module-web/commands/assertAlert.js +20 -20
  135. package/build/ox_modules/module-web/commands/assertExist.js +17 -17
  136. package/build/ox_modules/module-web/commands/assertSelectedLabel.js +21 -21
  137. package/build/ox_modules/module-web/commands/assertSelectedValue.js +21 -21
  138. package/build/ox_modules/module-web/commands/assertText.js +21 -21
  139. package/build/ox_modules/module-web/commands/assertTextNotPresent.js +18 -18
  140. package/build/ox_modules/module-web/commands/assertTextPresent.js +18 -18
  141. package/build/ox_modules/module-web/commands/assertTitle.js +19 -19
  142. package/build/ox_modules/module-web/commands/assertValue.js +20 -20
  143. package/build/ox_modules/module-web/commands/back.js +16 -16
  144. package/build/ox_modules/module-web/commands/clear.js +18 -18
  145. package/build/ox_modules/module-web/commands/click.js +25 -25
  146. package/build/ox_modules/module-web/commands/clickHidden.js +23 -23
  147. package/build/ox_modules/module-web/commands/closeWindow.js +15 -15
  148. package/build/ox_modules/module-web/commands/debug.js +15 -15
  149. package/build/ox_modules/module-web/commands/deleteCookies.js +12 -12
  150. package/build/ox_modules/module-web/commands/deselect.js +22 -22
  151. package/build/ox_modules/module-web/commands/doubleClick.js +17 -17
  152. package/build/ox_modules/module-web/commands/dragAndDrop.js +20 -20
  153. package/build/ox_modules/module-web/commands/execute.js +24 -24
  154. package/build/ox_modules/module-web/commands/fileBrowse.js +18 -18
  155. package/build/ox_modules/module-web/commands/findElement.js +19 -19
  156. package/build/ox_modules/module-web/commands/findElements.js +22 -22
  157. package/build/ox_modules/module-web/commands/fullscreenWindow.js +14 -14
  158. package/build/ox_modules/module-web/commands/getAlertText.js +16 -16
  159. package/build/ox_modules/module-web/commands/getAttribute.js +19 -19
  160. package/build/ox_modules/module-web/commands/getBrowserLogs.js +17 -17
  161. package/build/ox_modules/module-web/commands/getCookies.js +13 -13
  162. package/build/ox_modules/module-web/commands/getCssValue.js +19 -19
  163. package/build/ox_modules/module-web/commands/getElementCount.js +17 -17
  164. package/build/ox_modules/module-web/commands/getHTML.js +17 -17
  165. package/build/ox_modules/module-web/commands/getSource.js +16 -16
  166. package/build/ox_modules/module-web/commands/getText.js +18 -18
  167. package/build/ox_modules/module-web/commands/getTitle.js +12 -12
  168. package/build/ox_modules/module-web/commands/getUrl.js +16 -16
  169. package/build/ox_modules/module-web/commands/getValue.js +18 -18
  170. package/build/ox_modules/module-web/commands/getWindowHandles.js +16 -16
  171. package/build/ox_modules/module-web/commands/getWindowSize.js +16 -16
  172. package/build/ox_modules/module-web/commands/getXMLPageSource.js +16 -16
  173. package/build/ox_modules/module-web/commands/index.js +1 -1
  174. package/build/ox_modules/module-web/commands/isAlertPresent.js +16 -16
  175. package/build/ox_modules/module-web/commands/isChecked.js +18 -18
  176. package/build/ox_modules/module-web/commands/isExist.js +19 -19
  177. package/build/ox_modules/module-web/commands/isInteractable.js +22 -22
  178. package/build/ox_modules/module-web/commands/isSelected.js +23 -23
  179. package/build/ox_modules/module-web/commands/isVisible.js +19 -19
  180. package/build/ox_modules/module-web/commands/makeVisible.js +25 -25
  181. package/build/ox_modules/module-web/commands/maximizeWindow.js +14 -14
  182. package/build/ox_modules/module-web/commands/minimizeWindow.js +14 -14
  183. package/build/ox_modules/module-web/commands/mock.js +20 -20
  184. package/build/ox_modules/module-web/commands/mockClearAll.js +12 -12
  185. package/build/ox_modules/module-web/commands/mockRestoreAll.js +12 -12
  186. package/build/ox_modules/module-web/commands/newWindow.js +16 -16
  187. package/build/ox_modules/module-web/commands/open.js +16 -16
  188. package/build/ox_modules/module-web/commands/pause.js +15 -15
  189. package/build/ox_modules/module-web/commands/point.js +21 -21
  190. package/build/ox_modules/module-web/commands/pointJS.js +15 -15
  191. package/build/ox_modules/module-web/commands/refresh.js +15 -15
  192. package/build/ox_modules/module-web/commands/rightClick.js +17 -17
  193. package/build/ox_modules/module-web/commands/rightClickActions.js +19 -19
  194. package/build/ox_modules/module-web/commands/scrollToElement.js +21 -21
  195. package/build/ox_modules/module-web/commands/select.js +23 -23
  196. package/build/ox_modules/module-web/commands/selectFrame.js +24 -24
  197. package/build/ox_modules/module-web/commands/selectWindow.js +27 -27
  198. package/build/ox_modules/module-web/commands/sendKeys.js +22 -22
  199. package/build/ox_modules/module-web/commands/setAutoWaitForAngular.js +20 -20
  200. package/build/ox_modules/module-web/commands/setTimeout.js +21 -21
  201. package/build/ox_modules/module-web/commands/setWindowSize.js +17 -17
  202. package/build/ox_modules/module-web/commands/takeScreenshot.js +17 -17
  203. package/build/ox_modules/module-web/commands/type.js +20 -20
  204. package/build/ox_modules/module-web/commands/verifyAlert.js +20 -20
  205. package/build/ox_modules/module-web/commands/verifyExist.js +17 -17
  206. package/build/ox_modules/module-web/commands/verifySelectedLabel.js +21 -21
  207. package/build/ox_modules/module-web/commands/verifySelectedValue.js +21 -21
  208. package/build/ox_modules/module-web/commands/verifyText.js +21 -21
  209. package/build/ox_modules/module-web/commands/verifyTextNotPresent.js +18 -18
  210. package/build/ox_modules/module-web/commands/verifyTextPresent.js +18 -18
  211. package/build/ox_modules/module-web/commands/verifyTitle.js +19 -19
  212. package/build/ox_modules/module-web/commands/verifyValue.js +20 -20
  213. package/build/ox_modules/module-web/commands/waitForAngular.js +19 -19
  214. package/build/ox_modules/module-web/commands/waitForExist.js +17 -17
  215. package/build/ox_modules/module-web/commands/waitForInteractable.js +17 -17
  216. package/build/ox_modules/module-web/commands/waitForNotExist.js +17 -17
  217. package/build/ox_modules/module-web/commands/waitForNotText.js +20 -20
  218. package/build/ox_modules/module-web/commands/waitForNotValue.js +20 -20
  219. package/build/ox_modules/module-web/commands/waitForText.js +20 -20
  220. package/build/ox_modules/module-web/commands/waitForValue.js +20 -20
  221. package/build/ox_modules/module-web/commands/waitForVisible.js +17 -17
  222. package/build/ox_modules/module-web/commands/waitForWindow.js +22 -22
  223. package/build/ox_modules/module-web.js +94 -94
  224. package/build/ox_modules/module-win/commands/assertText.js +17 -17
  225. package/build/ox_modules/module-win/commands/assertTitle.js +15 -15
  226. package/build/ox_modules/module-win/commands/assertValue.js +14 -14
  227. package/build/ox_modules/module-win/commands/back.js +11 -11
  228. package/build/ox_modules/module-win/commands/clear.js +13 -13
  229. package/build/ox_modules/module-win/commands/click.js +13 -13
  230. package/build/ox_modules/module-win/commands/clickLong.js +14 -14
  231. package/build/ox_modules/module-win/commands/clickMultipleTimes.js +14 -14
  232. package/build/ox_modules/module-win/commands/findElement.js +15 -15
  233. package/build/ox_modules/module-win/commands/findElements.js +15 -15
  234. package/build/ox_modules/module-win/commands/getAppiumLogs.js +12 -12
  235. package/build/ox_modules/module-win/commands/getCurrentWindowHandle.js +15 -15
  236. package/build/ox_modules/module-win/commands/getLocation.js +14 -14
  237. package/build/ox_modules/module-win/commands/getSource.js +12 -12
  238. package/build/ox_modules/module-win/commands/getText.js +14 -14
  239. package/build/ox_modules/module-win/commands/getValue.js +14 -14
  240. package/build/ox_modules/module-win/commands/getWindowHandles.js +15 -15
  241. package/build/ox_modules/module-win/commands/index.js +1 -1
  242. package/build/ox_modules/module-win/commands/isCheckable.js +14 -14
  243. package/build/ox_modules/module-win/commands/isChecked.js +14 -14
  244. package/build/ox_modules/module-win/commands/isClickable.js +14 -14
  245. package/build/ox_modules/module-win/commands/isExist.js +15 -15
  246. package/build/ox_modules/module-win/commands/isSelected.js +14 -14
  247. package/build/ox_modules/module-win/commands/isVisible.js +15 -15
  248. package/build/ox_modules/module-win/commands/open.js +13 -13
  249. package/build/ox_modules/module-win/commands/pause.js +12 -12
  250. package/build/ox_modules/module-win/commands/rightClick.js +13 -13
  251. package/build/ox_modules/module-win/commands/selectWindow.js +23 -23
  252. package/build/ox_modules/module-win/commands/sendKeys.js +22 -22
  253. package/build/ox_modules/module-win/commands/setTimeout.js +17 -17
  254. package/build/ox_modules/module-win/commands/takeScreenshot.js +16 -16
  255. package/build/ox_modules/module-win/commands/tap.js +13 -13
  256. package/build/ox_modules/module-win/commands/type.js +16 -16
  257. package/build/ox_modules/module-win/commands/waitForExist.js +14 -14
  258. package/build/ox_modules/module-win/commands/waitForInteractable.js +16 -16
  259. package/build/ox_modules/module-win/commands/waitForVisible.js +13 -13
  260. package/build/ox_modules/module-win.js +47 -47
  261. package/build/ox_modules/utils.js +8 -8
  262. package/build/ox_reporters/excel/template.json +48 -48
  263. package/build/ox_reporters/html/index.ejs +163 -163
  264. package/build/ox_reporters/html/summary.ejs +77 -77
  265. package/build/ox_reporters/html/tests-details.ejs +134 -134
  266. package/build/ox_reporters/html/tests-devices-browsers.ejs +83 -83
  267. package/build/ox_reporters/reporter-excel.js +1 -1
  268. package/build/ox_reporters/reporter-html.js +1 -1
  269. package/build/ox_reporters/reporter-json.js +1 -1
  270. package/build/ox_reporters/reporter-junit.js +1 -1
  271. package/build/ox_reporters/reporter-pdf.js +1 -1
  272. package/build/ox_reporters/reporter-rp.js +73 -42
  273. package/build/ox_reporters/reporter-xml.js +1 -1
  274. package/build/ox_services/service-devtools/submodule-network.js +1 -1
  275. package/build/ox_services/service-devtools.js +1 -1
  276. package/build/reporter/FileReporterBase.js +1 -1
  277. package/build/reporter/ReportAggregator.js +5 -13
  278. package/build/reporter/ReporterBase.js +1 -1
  279. package/build/reporter/WebSocketReporter.js +1 -1
  280. package/build/runners/WorkerProcess.js +1 -1
  281. package/build/runners/cucumber/CucumberEventListener.js +1 -1
  282. package/build/runners/cucumber/CucumberReporter.js +1 -1
  283. package/build/runners/cucumber/CucumberWorker.js +1 -1
  284. package/build/runners/cucumber/index.js +1 -1
  285. package/build/runners/cucumber/worker.js +1 -1
  286. package/build/runners/index.js +1 -1
  287. package/build/runners/oxygen/OxygenWorker.js +1 -1
  288. package/build/runners/oxygen/index.js +1 -1
  289. package/build/runners/oxygen/worker.js +1 -1
  290. package/config/default.json +6 -6
  291. package/package.json +137 -139
  292. package/types/index.d.ts +70 -70
  293. package/types/module-eyes.d.ts +39 -39
  294. package/types/module-http.d.ts +163 -163
  295. package/types/module-log.d.ts +34 -34
  296. package/types/module-mob.d.ts +966 -966
  297. package/types/module-pdf.d.ts +40 -40
  298. package/types/module-proxy.d.ts +100 -100
  299. package/types/module-shell.d.ts +24 -24
  300. package/types/module-utils.d.ts +99 -99
  301. package/types/module-web.d.ts +1053 -1053
  302. package/types/module-win.d.ts +352 -352
  303. package/types/oxygen.d.ts +53 -53
  304. package/build/ox_modules/module-mongo.js +0 -302
  305. package/log.txt +0 -1614
  306. package/reports/2025-06-08_231627/report.html +0 -440
  307. package/reports/2025-06-09_223615/report.html +0 -440
  308. package/transpiled/mongodb/etc/prepare.js +0 -18
  309. package/transpiled/mongodb/lib/admin.js +0 -182
  310. package/transpiled/mongodb/lib/beta.js +0 -26
  311. package/transpiled/mongodb/lib/bson.js +0 -220
  312. package/transpiled/mongodb/lib/bulk/common.js +0 -1041
  313. package/transpiled/mongodb/lib/bulk/ordered.js +0 -76
  314. package/transpiled/mongodb/lib/bulk/unordered.js +0 -102
  315. package/transpiled/mongodb/lib/change_stream.js +0 -517
  316. package/transpiled/mongodb/lib/client-side-encryption/auto_encrypter.js +0 -329
  317. package/transpiled/mongodb/lib/client-side-encryption/client_encryption.js +0 -779
  318. package/transpiled/mongodb/lib/client-side-encryption/crypto_callbacks.js +0 -95
  319. package/transpiled/mongodb/lib/client-side-encryption/errors.js +0 -171
  320. package/transpiled/mongodb/lib/client-side-encryption/mongocryptd_manager.js +0 -98
  321. package/transpiled/mongodb/lib/client-side-encryption/providers/aws.js +0 -34
  322. package/transpiled/mongodb/lib/client-side-encryption/providers/azure.js +0 -186
  323. package/transpiled/mongodb/lib/client-side-encryption/providers/gcp.js +0 -29
  324. package/transpiled/mongodb/lib/client-side-encryption/providers/index.js +0 -58
  325. package/transpiled/mongodb/lib/client-side-encryption/state_machine.js +0 -505
  326. package/transpiled/mongodb/lib/cmap/auth/auth_provider.js +0 -63
  327. package/transpiled/mongodb/lib/cmap/auth/aws_temporary_credentials.js +0 -167
  328. package/transpiled/mongodb/lib/cmap/auth/gssapi.js +0 -207
  329. package/transpiled/mongodb/lib/cmap/auth/mongo_credentials.js +0 -193
  330. package/transpiled/mongodb/lib/cmap/auth/mongodb_aws.js +0 -181
  331. package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/automated_callback_workflow.js +0 -101
  332. package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/azure_machine_workflow.js +0 -81
  333. package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/callback_workflow.js +0 -174
  334. package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/command_builders.js +0 -59
  335. package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/gcp_machine_workflow.js +0 -58
  336. package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/human_callback_workflow.js +0 -138
  337. package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/k8s_machine_workflow.js +0 -42
  338. package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/token_cache.js +0 -71
  339. package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/token_machine_workflow.js +0 -34
  340. package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc.js +0 -111
  341. package/transpiled/mongodb/lib/cmap/auth/plain.js +0 -43
  342. package/transpiled/mongodb/lib/cmap/auth/providers.js +0 -22
  343. package/transpiled/mongodb/lib/cmap/auth/scram.js +0 -318
  344. package/transpiled/mongodb/lib/cmap/auth/x509.js +0 -61
  345. package/transpiled/mongodb/lib/cmap/command_monitoring_events.js +0 -266
  346. package/transpiled/mongodb/lib/cmap/commands.js +0 -605
  347. package/transpiled/mongodb/lib/cmap/connect.js +0 -418
  348. package/transpiled/mongodb/lib/cmap/connection.js +0 -673
  349. package/transpiled/mongodb/lib/cmap/connection_pool.js +0 -688
  350. package/transpiled/mongodb/lib/cmap/connection_pool_events.js +0 -254
  351. package/transpiled/mongodb/lib/cmap/errors.js +0 -128
  352. package/transpiled/mongodb/lib/cmap/handshake/client_metadata.js +0 -278
  353. package/transpiled/mongodb/lib/cmap/metrics.js +0 -67
  354. package/transpiled/mongodb/lib/cmap/stream_description.js +0 -74
  355. package/transpiled/mongodb/lib/cmap/wire_protocol/compression.js +0 -196
  356. package/transpiled/mongodb/lib/cmap/wire_protocol/constants.js +0 -19
  357. package/transpiled/mongodb/lib/cmap/wire_protocol/on_data.js +0 -144
  358. package/transpiled/mongodb/lib/cmap/wire_protocol/on_demand/document.js +0 -278
  359. package/transpiled/mongodb/lib/cmap/wire_protocol/responses.js +0 -376
  360. package/transpiled/mongodb/lib/cmap/wire_protocol/shared.js +0 -49
  361. package/transpiled/mongodb/lib/collection.js +0 -852
  362. package/transpiled/mongodb/lib/connection_string.js +0 -1452
  363. package/transpiled/mongodb/lib/constants.js +0 -162
  364. package/transpiled/mongodb/lib/cursor/abstract_cursor.js +0 -1082
  365. package/transpiled/mongodb/lib/cursor/aggregation_cursor.js +0 -227
  366. package/transpiled/mongodb/lib/cursor/change_stream_cursor.js +0 -136
  367. package/transpiled/mongodb/lib/cursor/client_bulk_write_cursor.js +0 -69
  368. package/transpiled/mongodb/lib/cursor/find_cursor.js +0 -476
  369. package/transpiled/mongodb/lib/cursor/list_collections_cursor.js +0 -48
  370. package/transpiled/mongodb/lib/cursor/list_indexes_cursor.js +0 -46
  371. package/transpiled/mongodb/lib/cursor/list_search_indexes_cursor.js +0 -30
  372. package/transpiled/mongodb/lib/cursor/run_command_cursor.js +0 -125
  373. package/transpiled/mongodb/lib/db.js +0 -467
  374. package/transpiled/mongodb/lib/deps.js +0 -174
  375. package/transpiled/mongodb/lib/encrypter.js +0 -129
  376. package/transpiled/mongodb/lib/error.js +0 -1550
  377. package/transpiled/mongodb/lib/explain.js +0 -122
  378. package/transpiled/mongodb/lib/gridfs/download.js +0 -369
  379. package/transpiled/mongodb/lib/gridfs/index.js +0 -240
  380. package/transpiled/mongodb/lib/gridfs/upload.js +0 -446
  381. package/transpiled/mongodb/lib/index.js +0 -975
  382. package/transpiled/mongodb/lib/mongo_client.js +0 -626
  383. package/transpiled/mongodb/lib/mongo_client_auth_providers.js +0 -98
  384. package/transpiled/mongodb/lib/mongo_logger.js +0 -812
  385. package/transpiled/mongodb/lib/mongo_types.js +0 -71
  386. package/transpiled/mongodb/lib/operations/aggregate.js +0 -129
  387. package/transpiled/mongodb/lib/operations/bulk_write.js +0 -48
  388. package/transpiled/mongodb/lib/operations/client_bulk_write/client_bulk_write.js +0 -96
  389. package/transpiled/mongodb/lib/operations/client_bulk_write/command_builder.js +0 -409
  390. package/transpiled/mongodb/lib/operations/client_bulk_write/common.js +0 -5
  391. package/transpiled/mongodb/lib/operations/client_bulk_write/executor.js +0 -144
  392. package/transpiled/mongodb/lib/operations/client_bulk_write/results_merger.js +0 -228
  393. package/transpiled/mongodb/lib/operations/collections.js +0 -49
  394. package/transpiled/mongodb/lib/operations/command.js +0 -102
  395. package/transpiled/mongodb/lib/operations/count.js +0 -60
  396. package/transpiled/mongodb/lib/operations/create_collection.js +0 -109
  397. package/transpiled/mongodb/lib/operations/delete.js +0 -134
  398. package/transpiled/mongodb/lib/operations/distinct.js +0 -77
  399. package/transpiled/mongodb/lib/operations/drop.js +0 -102
  400. package/transpiled/mongodb/lib/operations/estimated_document_count.js +0 -47
  401. package/transpiled/mongodb/lib/operations/execute_operation.js +0 -251
  402. package/transpiled/mongodb/lib/operations/find.js +0 -197
  403. package/transpiled/mongodb/lib/operations/find_and_modify.js +0 -191
  404. package/transpiled/mongodb/lib/operations/get_more.js +0 -84
  405. package/transpiled/mongodb/lib/operations/indexes.js +0 -197
  406. package/transpiled/mongodb/lib/operations/insert.js +0 -138
  407. package/transpiled/mongodb/lib/operations/is_capped.js +0 -44
  408. package/transpiled/mongodb/lib/operations/kill_cursors.js +0 -58
  409. package/transpiled/mongodb/lib/operations/list_collections.js +0 -66
  410. package/transpiled/mongodb/lib/operations/list_databases.js +0 -56
  411. package/transpiled/mongodb/lib/operations/operation.js +0 -88
  412. package/transpiled/mongodb/lib/operations/options_operation.js +0 -44
  413. package/transpiled/mongodb/lib/operations/profiling_level.js +0 -42
  414. package/transpiled/mongodb/lib/operations/remove_user.js +0 -35
  415. package/transpiled/mongodb/lib/operations/rename.js +0 -48
  416. package/transpiled/mongodb/lib/operations/run_command.js +0 -64
  417. package/transpiled/mongodb/lib/operations/search_indexes/create.js +0 -41
  418. package/transpiled/mongodb/lib/operations/search_indexes/drop.js +0 -51
  419. package/transpiled/mongodb/lib/operations/search_indexes/update.js +0 -40
  420. package/transpiled/mongodb/lib/operations/set_profiling_level.js +0 -70
  421. package/transpiled/mongodb/lib/operations/stats.js +0 -39
  422. package/transpiled/mongodb/lib/operations/update.js +0 -218
  423. package/transpiled/mongodb/lib/operations/validate_collection.js +0 -49
  424. package/transpiled/mongodb/lib/read_concern.js +0 -92
  425. package/transpiled/mongodb/lib/read_preference.js +0 -215
  426. package/transpiled/mongodb/lib/resource_management.js +0 -74
  427. package/transpiled/mongodb/lib/sdam/common.js +0 -53
  428. package/transpiled/mongodb/lib/sdam/events.js +0 -177
  429. package/transpiled/mongodb/lib/sdam/monitor.js +0 -656
  430. package/transpiled/mongodb/lib/sdam/server.js +0 -463
  431. package/transpiled/mongodb/lib/sdam/server_description.js +0 -196
  432. package/transpiled/mongodb/lib/sdam/server_selection.js +0 -283
  433. package/transpiled/mongodb/lib/sdam/server_selection_events.js +0 -112
  434. package/transpiled/mongodb/lib/sdam/srv_polling.js +0 -139
  435. package/transpiled/mongodb/lib/sdam/topology.js +0 -833
  436. package/transpiled/mongodb/lib/sdam/topology_description.js +0 -447
  437. package/transpiled/mongodb/lib/sessions.js +0 -988
  438. package/transpiled/mongodb/lib/sort.js +0 -123
  439. package/transpiled/mongodb/lib/timeout.js +0 -349
  440. package/transpiled/mongodb/lib/transactions.js +0 -149
  441. package/transpiled/mongodb/lib/utils.js +0 -1502
  442. package/transpiled/mongodb/lib/write_concern.js +0 -115
@@ -1,254 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.ConnectionPoolClearedEvent = exports.ConnectionCheckedInEvent = exports.ConnectionCheckedOutEvent = exports.ConnectionCheckOutFailedEvent = exports.ConnectionCheckOutStartedEvent = exports.ConnectionClosedEvent = exports.ConnectionReadyEvent = exports.ConnectionCreatedEvent = exports.ConnectionPoolClosedEvent = exports.ConnectionPoolReadyEvent = exports.ConnectionPoolCreatedEvent = exports.ConnectionPoolMonitoringEvent = void 0;
7
-
8
- const constants_1 = require("../constants");
9
-
10
- const utils_1 = require("../utils");
11
- /**
12
- * The base export class for all monitoring events published from the connection pool
13
- * @public
14
- * @category Event
15
- */
16
-
17
-
18
- class ConnectionPoolMonitoringEvent {
19
- /** @internal */
20
- constructor(pool) {
21
- this.time = new Date();
22
- this.address = pool.address;
23
- }
24
-
25
- }
26
-
27
- exports.ConnectionPoolMonitoringEvent = ConnectionPoolMonitoringEvent;
28
- /**
29
- * An event published when a connection pool is created
30
- * @public
31
- * @category Event
32
- */
33
-
34
- class ConnectionPoolCreatedEvent extends ConnectionPoolMonitoringEvent {
35
- /** @internal */
36
- constructor(pool) {
37
- super(pool);
38
- /** @internal */
39
-
40
- this.name = constants_1.CONNECTION_POOL_CREATED;
41
- const {
42
- maxConnecting,
43
- maxPoolSize,
44
- minPoolSize,
45
- maxIdleTimeMS,
46
- waitQueueTimeoutMS
47
- } = pool.options;
48
- this.options = {
49
- maxConnecting,
50
- maxPoolSize,
51
- minPoolSize,
52
- maxIdleTimeMS,
53
- waitQueueTimeoutMS
54
- };
55
- }
56
-
57
- }
58
-
59
- exports.ConnectionPoolCreatedEvent = ConnectionPoolCreatedEvent;
60
- /**
61
- * An event published when a connection pool is ready
62
- * @public
63
- * @category Event
64
- */
65
-
66
- class ConnectionPoolReadyEvent extends ConnectionPoolMonitoringEvent {
67
- /** @internal */
68
- constructor(pool) {
69
- super(pool);
70
- /** @internal */
71
-
72
- this.name = constants_1.CONNECTION_POOL_READY;
73
- }
74
-
75
- }
76
-
77
- exports.ConnectionPoolReadyEvent = ConnectionPoolReadyEvent;
78
- /**
79
- * An event published when a connection pool is closed
80
- * @public
81
- * @category Event
82
- */
83
-
84
- class ConnectionPoolClosedEvent extends ConnectionPoolMonitoringEvent {
85
- /** @internal */
86
- constructor(pool) {
87
- super(pool);
88
- /** @internal */
89
-
90
- this.name = constants_1.CONNECTION_POOL_CLOSED;
91
- }
92
-
93
- }
94
-
95
- exports.ConnectionPoolClosedEvent = ConnectionPoolClosedEvent;
96
- /**
97
- * An event published when a connection pool creates a new connection
98
- * @public
99
- * @category Event
100
- */
101
-
102
- class ConnectionCreatedEvent extends ConnectionPoolMonitoringEvent {
103
- /** @internal */
104
- constructor(pool, connection) {
105
- super(pool);
106
- /** @internal */
107
-
108
- this.name = constants_1.CONNECTION_CREATED;
109
- this.connectionId = connection.id;
110
- }
111
-
112
- }
113
-
114
- exports.ConnectionCreatedEvent = ConnectionCreatedEvent;
115
- /**
116
- * An event published when a connection is ready for use
117
- * @public
118
- * @category Event
119
- */
120
-
121
- class ConnectionReadyEvent extends ConnectionPoolMonitoringEvent {
122
- /** @internal */
123
- constructor(pool, connection, connectionCreatedEventTime) {
124
- super(pool);
125
- /** @internal */
126
-
127
- this.name = constants_1.CONNECTION_READY;
128
- this.durationMS = (0, utils_1.now)() - connectionCreatedEventTime;
129
- this.connectionId = connection.id;
130
- }
131
-
132
- }
133
-
134
- exports.ConnectionReadyEvent = ConnectionReadyEvent;
135
- /**
136
- * An event published when a connection is closed
137
- * @public
138
- * @category Event
139
- */
140
-
141
- class ConnectionClosedEvent extends ConnectionPoolMonitoringEvent {
142
- /** @internal */
143
- constructor(pool, connection, reason, error) {
144
- super(pool);
145
- /** @internal */
146
-
147
- this.name = constants_1.CONNECTION_CLOSED;
148
- this.connectionId = connection.id;
149
- this.reason = reason;
150
- this.serviceId = connection.serviceId;
151
- this.error = error ?? null;
152
- }
153
-
154
- }
155
-
156
- exports.ConnectionClosedEvent = ConnectionClosedEvent;
157
- /**
158
- * An event published when a request to check a connection out begins
159
- * @public
160
- * @category Event
161
- */
162
-
163
- class ConnectionCheckOutStartedEvent extends ConnectionPoolMonitoringEvent {
164
- /** @internal */
165
- constructor(pool) {
166
- super(pool);
167
- /** @internal */
168
-
169
- this.name = constants_1.CONNECTION_CHECK_OUT_STARTED;
170
- }
171
-
172
- }
173
-
174
- exports.ConnectionCheckOutStartedEvent = ConnectionCheckOutStartedEvent;
175
- /**
176
- * An event published when a request to check a connection out fails
177
- * @public
178
- * @category Event
179
- */
180
-
181
- class ConnectionCheckOutFailedEvent extends ConnectionPoolMonitoringEvent {
182
- /** @internal */
183
- constructor(pool, reason, checkoutTime, error) {
184
- super(pool);
185
- /** @internal */
186
-
187
- this.name = constants_1.CONNECTION_CHECK_OUT_FAILED;
188
- this.durationMS = (0, utils_1.now)() - checkoutTime;
189
- this.reason = reason;
190
- this.error = error;
191
- }
192
-
193
- }
194
-
195
- exports.ConnectionCheckOutFailedEvent = ConnectionCheckOutFailedEvent;
196
- /**
197
- * An event published when a connection is checked out of the connection pool
198
- * @public
199
- * @category Event
200
- */
201
-
202
- class ConnectionCheckedOutEvent extends ConnectionPoolMonitoringEvent {
203
- /** @internal */
204
- constructor(pool, connection, checkoutTime) {
205
- super(pool);
206
- /** @internal */
207
-
208
- this.name = constants_1.CONNECTION_CHECKED_OUT;
209
- this.durationMS = (0, utils_1.now)() - checkoutTime;
210
- this.connectionId = connection.id;
211
- }
212
-
213
- }
214
-
215
- exports.ConnectionCheckedOutEvent = ConnectionCheckedOutEvent;
216
- /**
217
- * An event published when a connection is checked into the connection pool
218
- * @public
219
- * @category Event
220
- */
221
-
222
- class ConnectionCheckedInEvent extends ConnectionPoolMonitoringEvent {
223
- /** @internal */
224
- constructor(pool, connection) {
225
- super(pool);
226
- /** @internal */
227
-
228
- this.name = constants_1.CONNECTION_CHECKED_IN;
229
- this.connectionId = connection.id;
230
- }
231
-
232
- }
233
-
234
- exports.ConnectionCheckedInEvent = ConnectionCheckedInEvent;
235
- /**
236
- * An event published when a connection pool is cleared
237
- * @public
238
- * @category Event
239
- */
240
-
241
- class ConnectionPoolClearedEvent extends ConnectionPoolMonitoringEvent {
242
- /** @internal */
243
- constructor(pool, options = {}) {
244
- super(pool);
245
- /** @internal */
246
-
247
- this.name = constants_1.CONNECTION_POOL_CLEARED;
248
- this.serviceId = options.serviceId;
249
- this.interruptInUseConnections = options.interruptInUseConnections;
250
- }
251
-
252
- }
253
-
254
- exports.ConnectionPoolClearedEvent = ConnectionPoolClearedEvent;
@@ -1,128 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.WaitQueueTimeoutError = exports.PoolClearedOnNetworkError = exports.PoolClearedError = exports.PoolClosedError = void 0;
7
-
8
- const error_1 = require("../error");
9
- /**
10
- * An error indicating a connection pool is closed
11
- * @category Error
12
- */
13
-
14
-
15
- class PoolClosedError extends error_1.MongoDriverError {
16
- /**
17
- * **Do not use this constructor!**
18
- *
19
- * Meant for internal use only.
20
- *
21
- * @remarks
22
- * This class is only meant to be constructed within the driver. This constructor is
23
- * not subject to semantic versioning compatibility guarantees and may change at any time.
24
- *
25
- * @public
26
- **/
27
- constructor(pool) {
28
- super('Attempted to check out a connection from closed connection pool');
29
- this.address = pool.address;
30
- }
31
-
32
- get name() {
33
- return 'MongoPoolClosedError';
34
- }
35
-
36
- }
37
-
38
- exports.PoolClosedError = PoolClosedError;
39
- /**
40
- * An error indicating a connection pool is currently paused
41
- * @category Error
42
- */
43
-
44
- class PoolClearedError extends error_1.MongoNetworkError {
45
- /**
46
- * **Do not use this constructor!**
47
- *
48
- * Meant for internal use only.
49
- *
50
- * @remarks
51
- * This class is only meant to be constructed within the driver. This constructor is
52
- * not subject to semantic versioning compatibility guarantees and may change at any time.
53
- *
54
- * @public
55
- **/
56
- constructor(pool, message) {
57
- const errorMessage = message ? message : `Connection pool for ${pool.address} was cleared because another operation failed with: "${pool.serverError?.message}"`;
58
- super(errorMessage, pool.serverError ? {
59
- cause: pool.serverError
60
- } : undefined);
61
- this.address = pool.address;
62
- this.addErrorLabel(error_1.MongoErrorLabel.PoolRequstedRetry);
63
- }
64
-
65
- get name() {
66
- return 'MongoPoolClearedError';
67
- }
68
-
69
- }
70
-
71
- exports.PoolClearedError = PoolClearedError;
72
- /**
73
- * An error indicating that a connection pool has been cleared after the monitor for that server timed out.
74
- * @category Error
75
- */
76
-
77
- class PoolClearedOnNetworkError extends PoolClearedError {
78
- /**
79
- * **Do not use this constructor!**
80
- *
81
- * Meant for internal use only.
82
- *
83
- * @remarks
84
- * This class is only meant to be constructed within the driver. This constructor is
85
- * not subject to semantic versioning compatibility guarantees and may change at any time.
86
- *
87
- * @public
88
- **/
89
- constructor(pool) {
90
- super(pool, `Connection to ${pool.address} interrupted due to server monitor timeout`);
91
- }
92
-
93
- get name() {
94
- return 'PoolClearedOnNetworkError';
95
- }
96
-
97
- }
98
-
99
- exports.PoolClearedOnNetworkError = PoolClearedOnNetworkError;
100
- /**
101
- * An error thrown when a request to check out a connection times out
102
- * @category Error
103
- */
104
-
105
- class WaitQueueTimeoutError extends error_1.MongoDriverError {
106
- /**
107
- * **Do not use this constructor!**
108
- *
109
- * Meant for internal use only.
110
- *
111
- * @remarks
112
- * This class is only meant to be constructed within the driver. This constructor is
113
- * not subject to semantic versioning compatibility guarantees and may change at any time.
114
- *
115
- * @public
116
- **/
117
- constructor(message, address) {
118
- super(message);
119
- this.address = address;
120
- }
121
-
122
- get name() {
123
- return 'MongoWaitQueueTimeoutError';
124
- }
125
-
126
- }
127
-
128
- exports.WaitQueueTimeoutError = WaitQueueTimeoutError;
@@ -1,278 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.LimitedSizeDocument = void 0;
7
- exports.makeClientMetadata = makeClientMetadata;
8
- exports.addContainerMetadata = addContainerMetadata;
9
- exports.getFAASEnv = getFAASEnv;
10
-
11
- const os = require("os");
12
-
13
- const process = require("process");
14
-
15
- const bson_1 = require("../../bson");
16
-
17
- const error_1 = require("../../error");
18
-
19
- const utils_1 = require("../../utils"); // eslint-disable-next-line @typescript-eslint/no-require-imports
20
-
21
-
22
- const NODE_DRIVER_VERSION = require('../../../package.json').version;
23
- /** @internal */
24
-
25
-
26
- class LimitedSizeDocument {
27
- constructor(maxSize) {
28
- this.maxSize = maxSize;
29
- this.document = new Map();
30
- /** BSON overhead: Int32 + Null byte */
31
-
32
- this.documentSize = 5;
33
- }
34
- /** Only adds key/value if the bsonByteLength is less than MAX_SIZE */
35
-
36
-
37
- ifItFitsItSits(key, value) {
38
- // The BSON byteLength of the new element is the same as serializing it to its own document
39
- // subtracting the document size int32 and the null terminator.
40
- const newElementSize = bson_1.BSON.serialize(new Map().set(key, value)).byteLength - 5;
41
-
42
- if (newElementSize + this.documentSize > this.maxSize) {
43
- return false;
44
- }
45
-
46
- this.documentSize += newElementSize;
47
- this.document.set(key, value);
48
- return true;
49
- }
50
-
51
- toObject() {
52
- return bson_1.BSON.deserialize(bson_1.BSON.serialize(this.document), {
53
- promoteLongs: false,
54
- promoteBuffers: false,
55
- promoteValues: false,
56
- useBigInt64: false
57
- });
58
- }
59
-
60
- }
61
-
62
- exports.LimitedSizeDocument = LimitedSizeDocument;
63
- /**
64
- * From the specs:
65
- * Implementors SHOULD cumulatively update fields in the following order until the document is under the size limit:
66
- * 1. Omit fields from `env` except `env.name`.
67
- * 2. Omit fields from `os` except `os.type`.
68
- * 3. Omit the `env` document entirely.
69
- * 4. Truncate `platform`. -- special we do not truncate this field
70
- */
71
-
72
- function makeClientMetadata(options) {
73
- const metadataDocument = new LimitedSizeDocument(512);
74
- const {
75
- appName = ''
76
- } = options; // Add app name first, it must be sent
77
-
78
- if (appName.length > 0) {
79
- const name = Buffer.byteLength(appName, 'utf8') <= 128 ? options.appName : Buffer.from(appName, 'utf8').subarray(0, 128).toString('utf8');
80
- metadataDocument.ifItFitsItSits('application', {
81
- name
82
- });
83
- }
84
-
85
- const {
86
- name = '',
87
- version = '',
88
- platform = ''
89
- } = options.driverInfo;
90
- const driverInfo = {
91
- name: name.length > 0 ? `nodejs|${name}` : 'nodejs',
92
- version: version.length > 0 ? `${NODE_DRIVER_VERSION}|${version}` : NODE_DRIVER_VERSION
93
- };
94
-
95
- if (!metadataDocument.ifItFitsItSits('driver', driverInfo)) {
96
- throw new error_1.MongoInvalidArgumentError('Unable to include driverInfo name and version, metadata cannot exceed 512 bytes');
97
- }
98
-
99
- let runtimeInfo = getRuntimeInfo();
100
-
101
- if (platform.length > 0) {
102
- runtimeInfo = `${runtimeInfo}|${platform}`;
103
- }
104
-
105
- if (!metadataDocument.ifItFitsItSits('platform', runtimeInfo)) {
106
- throw new error_1.MongoInvalidArgumentError('Unable to include driverInfo platform, metadata cannot exceed 512 bytes');
107
- } // Note: order matters, os.type is last so it will be removed last if we're at maxSize
108
-
109
-
110
- const osInfo = new Map().set('name', process.platform).set('architecture', process.arch).set('version', os.release()).set('type', os.type());
111
-
112
- if (!metadataDocument.ifItFitsItSits('os', osInfo)) {
113
- for (const key of osInfo.keys()) {
114
- osInfo.delete(key);
115
- if (osInfo.size === 0) break;
116
- if (metadataDocument.ifItFitsItSits('os', osInfo)) break;
117
- }
118
- }
119
-
120
- const faasEnv = getFAASEnv();
121
-
122
- if (faasEnv != null) {
123
- if (!metadataDocument.ifItFitsItSits('env', faasEnv)) {
124
- for (const key of faasEnv.keys()) {
125
- faasEnv.delete(key);
126
- if (faasEnv.size === 0) break;
127
- if (metadataDocument.ifItFitsItSits('env', faasEnv)) break;
128
- }
129
- }
130
- }
131
-
132
- return metadataDocument.toObject();
133
- }
134
-
135
- let dockerPromise;
136
- /** @internal */
137
-
138
- async function getContainerMetadata() {
139
- const containerMetadata = {};
140
- dockerPromise ??= (0, utils_1.fileIsAccessible)('/.dockerenv');
141
- const isDocker = await dockerPromise;
142
- const {
143
- KUBERNETES_SERVICE_HOST = ''
144
- } = process.env;
145
- const isKubernetes = KUBERNETES_SERVICE_HOST.length > 0 ? true : false;
146
- if (isDocker) containerMetadata.runtime = 'docker';
147
- if (isKubernetes) containerMetadata.orchestrator = 'kubernetes';
148
- return containerMetadata;
149
- }
150
- /**
151
- * @internal
152
- * Re-add each metadata value.
153
- * Attempt to add new env container metadata, but keep old data if it does not fit.
154
- */
155
-
156
-
157
- async function addContainerMetadata(originalMetadata) {
158
- const containerMetadata = await getContainerMetadata();
159
- if (Object.keys(containerMetadata).length === 0) return originalMetadata;
160
- const extendedMetadata = new LimitedSizeDocument(512);
161
- const extendedEnvMetadata = { ...originalMetadata?.env,
162
- container: containerMetadata
163
- };
164
-
165
- for (const [key, val] of Object.entries(originalMetadata)) {
166
- if (key !== 'env') {
167
- extendedMetadata.ifItFitsItSits(key, val);
168
- } else {
169
- if (!extendedMetadata.ifItFitsItSits('env', extendedEnvMetadata)) {
170
- // add in old data if newer / extended metadata does not fit
171
- extendedMetadata.ifItFitsItSits('env', val);
172
- }
173
- }
174
- }
175
-
176
- if (!('env' in originalMetadata)) {
177
- extendedMetadata.ifItFitsItSits('env', extendedEnvMetadata);
178
- }
179
-
180
- return extendedMetadata.toObject();
181
- }
182
- /**
183
- * Collects FaaS metadata.
184
- * - `name` MUST be the last key in the Map returned.
185
- */
186
-
187
-
188
- function getFAASEnv() {
189
- const {
190
- AWS_EXECUTION_ENV = '',
191
- AWS_LAMBDA_RUNTIME_API = '',
192
- FUNCTIONS_WORKER_RUNTIME = '',
193
- K_SERVICE = '',
194
- FUNCTION_NAME = '',
195
- VERCEL = '',
196
- AWS_LAMBDA_FUNCTION_MEMORY_SIZE = '',
197
- AWS_REGION = '',
198
- FUNCTION_MEMORY_MB = '',
199
- FUNCTION_REGION = '',
200
- FUNCTION_TIMEOUT_SEC = '',
201
- VERCEL_REGION = ''
202
- } = process.env;
203
- const isAWSFaaS = AWS_EXECUTION_ENV.startsWith('AWS_Lambda_') || AWS_LAMBDA_RUNTIME_API.length > 0;
204
- const isAzureFaaS = FUNCTIONS_WORKER_RUNTIME.length > 0;
205
- const isGCPFaaS = K_SERVICE.length > 0 || FUNCTION_NAME.length > 0;
206
- const isVercelFaaS = VERCEL.length > 0; // Note: order matters, name must always be the last key
207
-
208
- const faasEnv = new Map(); // When isVercelFaaS is true so is isAWSFaaS; Vercel inherits the AWS env
209
-
210
- if (isVercelFaaS && !(isAzureFaaS || isGCPFaaS)) {
211
- if (VERCEL_REGION.length > 0) {
212
- faasEnv.set('region', VERCEL_REGION);
213
- }
214
-
215
- faasEnv.set('name', 'vercel');
216
- return faasEnv;
217
- }
218
-
219
- if (isAWSFaaS && !(isAzureFaaS || isGCPFaaS || isVercelFaaS)) {
220
- if (AWS_REGION.length > 0) {
221
- faasEnv.set('region', AWS_REGION);
222
- }
223
-
224
- if (AWS_LAMBDA_FUNCTION_MEMORY_SIZE.length > 0 && Number.isInteger(+AWS_LAMBDA_FUNCTION_MEMORY_SIZE)) {
225
- faasEnv.set('memory_mb', new bson_1.Int32(AWS_LAMBDA_FUNCTION_MEMORY_SIZE));
226
- }
227
-
228
- faasEnv.set('name', 'aws.lambda');
229
- return faasEnv;
230
- }
231
-
232
- if (isAzureFaaS && !(isGCPFaaS || isAWSFaaS || isVercelFaaS)) {
233
- faasEnv.set('name', 'azure.func');
234
- return faasEnv;
235
- }
236
-
237
- if (isGCPFaaS && !(isAzureFaaS || isAWSFaaS || isVercelFaaS)) {
238
- if (FUNCTION_REGION.length > 0) {
239
- faasEnv.set('region', FUNCTION_REGION);
240
- }
241
-
242
- if (FUNCTION_MEMORY_MB.length > 0 && Number.isInteger(+FUNCTION_MEMORY_MB)) {
243
- faasEnv.set('memory_mb', new bson_1.Int32(FUNCTION_MEMORY_MB));
244
- }
245
-
246
- if (FUNCTION_TIMEOUT_SEC.length > 0 && Number.isInteger(+FUNCTION_TIMEOUT_SEC)) {
247
- faasEnv.set('timeout_sec', new bson_1.Int32(FUNCTION_TIMEOUT_SEC));
248
- }
249
-
250
- faasEnv.set('name', 'gcp.func');
251
- return faasEnv;
252
- }
253
-
254
- return null;
255
- }
256
- /**
257
- * @internal
258
- * Get current JavaScript runtime platform
259
- *
260
- * NOTE: The version information fetching is intentionally written defensively
261
- * to avoid having a released driver version that becomes incompatible
262
- * with a future change to these global objects.
263
- */
264
-
265
-
266
- function getRuntimeInfo() {
267
- if ('Deno' in globalThis) {
268
- const version = typeof Deno?.version?.deno === 'string' ? Deno?.version?.deno : '0.0.0-unknown';
269
- return `Deno v${version}, ${os.endianness()}`;
270
- }
271
-
272
- if ('Bun' in globalThis) {
273
- const version = typeof Bun?.version === 'string' ? Bun?.version : '0.0.0-unknown';
274
- return `Bun v${version}, ${os.endianness()}`;
275
- }
276
-
277
- return `Node.js ${process.version}, ${os.endianness()}`;
278
- }