@nlabs/reaktor 0.8.1 → 0.10.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 (445) hide show
  1. package/.prettierrc.js +4 -0
  2. package/README.md +10 -1
  3. package/coverage/actions/groups.ts.html +1039 -0
  4. package/coverage/actions/images.ts.html +2500 -0
  5. package/coverage/actions/index.html +131 -0
  6. package/coverage/actions/tags.ts.html +1000 -0
  7. package/coverage/adapters/arangoAdapter.ts.html +151 -0
  8. package/coverage/adapters/index.html +146 -0
  9. package/coverage/adapters/reaktorAdapter.ts.html +127 -0
  10. package/coverage/adapters/tagAdapter.ts.html +160 -0
  11. package/coverage/base.css +224 -0
  12. package/coverage/block-navigation.js +87 -0
  13. package/coverage/clover.xml +6 -0
  14. package/coverage/coverage-final.json +1 -0
  15. package/coverage/favicon.png +0 -0
  16. package/coverage/index.html +221 -0
  17. package/coverage/lcov-report/base.css +224 -0
  18. package/coverage/lcov-report/block-navigation.js +87 -0
  19. package/coverage/lcov-report/favicon.png +0 -0
  20. package/coverage/lcov-report/index.html +101 -0
  21. package/coverage/lcov-report/prettify.css +1 -0
  22. package/coverage/lcov-report/prettify.js +2 -0
  23. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  24. package/coverage/lcov-report/sorter.js +196 -0
  25. package/coverage/lcov.info +0 -0
  26. package/coverage/mocks/file.ts.html +118 -0
  27. package/coverage/mocks/group.ts.html +145 -0
  28. package/coverage/mocks/image.ts.html +136 -0
  29. package/coverage/mocks/index.html +146 -0
  30. package/coverage/mocks/post.ts.html +169 -0
  31. package/coverage/mocks/tag.ts.html +121 -0
  32. package/coverage/mocks/user.ts.html +268 -0
  33. package/coverage/prettify.css +1 -0
  34. package/coverage/prettify.js +2 -0
  35. package/coverage/sort-arrow-sprite.png +0 -0
  36. package/coverage/sorter.js +196 -0
  37. package/coverage/types/error.ts.html +145 -0
  38. package/coverage/types/index.html +116 -0
  39. package/coverage/utils/adapterUtils.ts.html +151 -0
  40. package/coverage/utils/analyticsUtils.ts.html +292 -0
  41. package/coverage/utils/arangodbUtils.ts.html +463 -0
  42. package/coverage/utils/index.html +146 -0
  43. package/dist/actions/apps.js +242 -0
  44. package/dist/actions/connections.js +90 -0
  45. package/dist/actions/conversations.js +350 -0
  46. package/dist/actions/dynamodb.js +150 -0
  47. package/dist/actions/email.js +152 -0
  48. package/dist/actions/files.js +283 -0
  49. package/dist/actions/groups.js +292 -0
  50. package/dist/actions/images.js +735 -0
  51. package/dist/actions/index.js +66 -0
  52. package/dist/actions/ios.js +164 -0
  53. package/dist/actions/locations.js +122 -0
  54. package/dist/actions/messages.js +208 -0
  55. package/dist/actions/notifications.js +59 -0
  56. package/dist/actions/payments.js +497 -0
  57. package/dist/actions/personas.js +110 -0
  58. package/dist/actions/posts.js +595 -0
  59. package/dist/actions/reactions.js +322 -0
  60. package/dist/actions/s3.js +133 -0
  61. package/dist/actions/search.js +90 -0
  62. package/dist/actions/sms.js +108 -0
  63. package/dist/actions/statistics.js +62 -0
  64. package/dist/actions/subscription.js +220 -0
  65. package/dist/actions/tags.js +292 -0
  66. package/dist/actions/users.js +784 -0
  67. package/dist/actions/websockets.js +174 -0
  68. package/dist/adapters/arangoAdapter.js +46 -0
  69. package/dist/adapters/fileAdapter.js +76 -0
  70. package/dist/adapters/imageAdapter.js +40 -0
  71. package/dist/adapters/messageAdapter.js +49 -0
  72. package/dist/adapters/postAdapter.js +70 -0
  73. package/dist/adapters/reaktorAdapter.js +44 -0
  74. package/dist/adapters/tagAdapter.js +50 -0
  75. package/dist/adapters/userAdapter.js +115 -0
  76. package/dist/config.js +125 -0
  77. package/dist/index.js +66 -0
  78. package/dist/lambdas/actions/websockets.js +132 -0
  79. package/dist/lambdas/authorizer.js +67 -0
  80. package/dist/lambdas/connection.js +91 -0
  81. package/dist/lambdas/utils/message.js +42 -0
  82. package/dist/lambdas/utils/websocket.js +105 -0
  83. package/dist/mocks/conversation.js +35 -0
  84. package/dist/mocks/file.js +38 -0
  85. package/dist/mocks/group.js +47 -0
  86. package/dist/mocks/image.js +44 -0
  87. package/dist/mocks/nlabs.png +0 -0
  88. package/dist/mocks/post.js +55 -0
  89. package/dist/mocks/tag.js +37 -0
  90. package/dist/mocks/user.js +88 -0
  91. package/dist/mutations/index.js +26 -0
  92. package/dist/mutations/locations.js +44 -0
  93. package/dist/mutations/messages.js +86 -0
  94. package/dist/mutations/personas.js +100 -0
  95. package/dist/mutations/posts.js +53 -0
  96. package/dist/mutations/reactions.js +51 -0
  97. package/dist/mutations/statistics.js +39 -0
  98. package/dist/mutations/subscriptions.js +56 -0
  99. package/dist/mutations/tags.js +120 -0
  100. package/dist/mutations/users.js +116 -0
  101. package/dist/objectTypes/app.js +173 -0
  102. package/dist/objectTypes/bankAccount.js +76 -0
  103. package/dist/objectTypes/connection.js +48 -0
  104. package/dist/objectTypes/conversation.js +77 -0
  105. package/dist/objectTypes/creditCard.js +86 -0
  106. package/dist/objectTypes/document.js +46 -0
  107. package/dist/objectTypes/error.js +46 -0
  108. package/dist/objectTypes/external.js +74 -0
  109. package/dist/objectTypes/file.js +100 -0
  110. package/dist/objectTypes/filter.js +43 -0
  111. package/dist/objectTypes/group.js +123 -0
  112. package/dist/objectTypes/iapSubscription.js +40 -0
  113. package/dist/objectTypes/image.js +129 -0
  114. package/dist/objectTypes/index.js +68 -0
  115. package/dist/objectTypes/location.js +109 -0
  116. package/dist/objectTypes/message.js +96 -0
  117. package/dist/objectTypes/passcode.js +42 -0
  118. package/dist/objectTypes/persona.js +87 -0
  119. package/dist/objectTypes/plan.js +95 -0
  120. package/dist/objectTypes/post.js +125 -0
  121. package/dist/objectTypes/reaction.js +61 -0
  122. package/dist/objectTypes/relation.js +49 -0
  123. package/dist/objectTypes/search.js +72 -0
  124. package/dist/objectTypes/statistics.js +39 -0
  125. package/dist/objectTypes/subscription.js +117 -0
  126. package/dist/objectTypes/tag.js +65 -0
  127. package/dist/objectTypes/user.js +144 -0
  128. package/dist/queries/index.js +33 -0
  129. package/dist/queries/locations.js +45 -0
  130. package/dist/queries/messages.js +52 -0
  131. package/dist/queries/posts.js +154 -0
  132. package/dist/queries/reactions.js +56 -0
  133. package/dist/queries/statistics.js +39 -0
  134. package/dist/queries/subscriptions.js +44 -0
  135. package/dist/queries/tags.js +75 -0
  136. package/dist/queries/users.js +64 -0
  137. package/dist/templates/email/layout.js +302 -0
  138. package/dist/templates/email/passwordForgot.js +38 -0
  139. package/dist/templates/email/passwordRecovery.js +35 -0
  140. package/dist/templates/email/verifyEmail.js +38 -0
  141. package/dist/templates/email/welcome.js +38 -0
  142. package/dist/templates/sms/passwordForgot.js +24 -0
  143. package/dist/templates/sms/passwordRecovery.js +24 -0
  144. package/dist/templates/sms/verifyEmail.js +24 -0
  145. package/dist/templates/sms/verifyPhone.js +24 -0
  146. package/dist/templates/sms/welcome.js +24 -0
  147. package/dist/types/apps.js +32 -0
  148. package/dist/types/arangodb.js +16 -0
  149. package/{lib → dist}/types/auth.js +1 -1
  150. package/{lib → dist}/types/connections.js +1 -1
  151. package/{lib → dist}/types/conversations.js +1 -1
  152. package/{lib → dist}/types/email.js +1 -1
  153. package/dist/types/error.js +44 -0
  154. package/{lib → dist}/types/files.js +1 -1
  155. package/dist/types/google.js +16 -0
  156. package/{lib → dist}/types/groups.js +1 -1
  157. package/dist/types/images.js +16 -0
  158. package/dist/types/index.js +60 -0
  159. package/{lib → dist}/types/locations.js +1 -1
  160. package/dist/types/messages.js +16 -0
  161. package/{lib → dist}/types/notifications.js +1 -1
  162. package/dist/types/payments.js +16 -0
  163. package/dist/types/personas.js +16 -0
  164. package/dist/types/posts.js +16 -0
  165. package/{lib → dist}/types/statistics.js +1 -1
  166. package/{lib → dist}/types/tags.js +1 -1
  167. package/dist/types/users.js +16 -0
  168. package/dist/types/websockets.js +16 -0
  169. package/dist/utils/adapterUtils.js +45 -0
  170. package/dist/utils/analyticsUtils.js +72 -0
  171. package/dist/utils/arangodbUtils.js +165 -0
  172. package/dist/utils/auth.js +57 -0
  173. package/dist/utils/index.js +30 -0
  174. package/dist/utils/session.js +60 -0
  175. package/jest.setup.js +0 -0
  176. package/jpg:- +0 -0
  177. package/lex.config.cjs +13 -0
  178. package/lib/actions/apps.d.ts +25 -0
  179. package/lib/actions/apps.js +242 -0
  180. package/lib/actions/connections.d.ts +4 -0
  181. package/lib/actions/connections.js +90 -0
  182. package/lib/actions/conversations.d.ts +12 -12
  183. package/lib/actions/conversations.js +147 -131
  184. package/lib/actions/dynamodb.d.ts +8 -8
  185. package/lib/actions/dynamodb.js +35 -32
  186. package/lib/actions/email.d.ts +3 -5
  187. package/lib/actions/email.js +33 -63
  188. package/lib/actions/files.d.ts +17 -14
  189. package/lib/actions/files.js +184 -202
  190. package/lib/actions/groups.d.ts +4 -4
  191. package/lib/actions/groups.js +47 -45
  192. package/lib/actions/images.d.ts +17 -13
  193. package/lib/actions/images.js +325 -264
  194. package/lib/actions/index.d.ts +3 -0
  195. package/lib/actions/index.js +7 -1
  196. package/lib/actions/ios.js +11 -10
  197. package/lib/actions/locations.d.ts +5 -2
  198. package/lib/actions/locations.js +41 -37
  199. package/lib/actions/messages.d.ts +4 -3
  200. package/lib/actions/messages.js +35 -32
  201. package/lib/actions/notifications.d.ts +2 -2
  202. package/lib/actions/notifications.js +1 -1
  203. package/lib/actions/payments.d.ts +2 -2
  204. package/lib/actions/payments.js +87 -83
  205. package/lib/actions/personas.d.ts +3 -0
  206. package/lib/actions/personas.js +110 -0
  207. package/lib/actions/posts.d.ts +11 -10
  208. package/lib/actions/posts.js +186 -152
  209. package/lib/actions/reactions.d.ts +5 -5
  210. package/lib/actions/reactions.js +30 -28
  211. package/lib/actions/s3.d.ts +7 -7
  212. package/lib/actions/s3.js +37 -32
  213. package/lib/actions/search.d.ts +3 -3
  214. package/lib/actions/search.js +13 -11
  215. package/lib/actions/sms.d.ts +9 -3
  216. package/lib/actions/sms.js +60 -34
  217. package/lib/actions/statistics.d.ts +3 -2
  218. package/lib/actions/statistics.js +21 -18
  219. package/lib/actions/subscription.d.ts +2 -2
  220. package/lib/actions/subscription.js +32 -39
  221. package/lib/actions/tags.d.ts +23 -20
  222. package/lib/actions/tags.js +161 -205
  223. package/lib/actions/users.d.ts +50 -22
  224. package/lib/actions/users.js +441 -217
  225. package/lib/actions/websockets.d.ts +19 -5
  226. package/lib/actions/websockets.js +89 -61
  227. package/lib/adapters/arangoAdapter.d.ts +2 -0
  228. package/lib/adapters/arangoAdapter.js +46 -0
  229. package/lib/adapters/fileAdapter.d.ts +3 -0
  230. package/lib/adapters/fileAdapter.js +76 -0
  231. package/lib/adapters/imageAdapter.d.ts +2 -0
  232. package/lib/adapters/imageAdapter.js +40 -0
  233. package/lib/adapters/messageAdapter.d.ts +2 -0
  234. package/lib/adapters/messageAdapter.js +49 -0
  235. package/lib/adapters/postAdapter.d.ts +2 -0
  236. package/lib/adapters/postAdapter.js +70 -0
  237. package/lib/adapters/reaktorAdapter.d.ts +6 -0
  238. package/lib/adapters/reaktorAdapter.js +44 -0
  239. package/lib/adapters/tagAdapter.d.ts +2 -0
  240. package/lib/adapters/tagAdapter.js +50 -0
  241. package/lib/adapters/userAdapter.d.ts +2 -0
  242. package/lib/adapters/userAdapter.js +115 -0
  243. package/lib/config.js +16 -17
  244. package/lib/index.d.ts +7 -0
  245. package/lib/index.js +44 -8
  246. package/lib/lambdas/actions/websockets.d.ts +7 -6
  247. package/lib/lambdas/actions/websockets.js +15 -11
  248. package/lib/lambdas/authorizer.js +4 -4
  249. package/lib/lambdas/connection.js +20 -20
  250. package/lib/lambdas/utils/message.js +1 -1
  251. package/lib/lambdas/utils/websocket.js +8 -7
  252. package/lib/mocks/conversation.d.ts +8 -0
  253. package/lib/mocks/conversation.js +35 -0
  254. package/lib/mocks/file.d.ts +11 -0
  255. package/lib/mocks/file.js +38 -0
  256. package/lib/mocks/group.d.ts +17 -0
  257. package/lib/mocks/group.js +47 -0
  258. package/lib/mocks/image.d.ts +3 -0
  259. package/lib/mocks/image.js +44 -0
  260. package/lib/mocks/nlabs.png +0 -0
  261. package/lib/mocks/post.d.ts +38 -0
  262. package/lib/mocks/post.js +55 -0
  263. package/lib/mocks/tag.d.ts +2 -0
  264. package/lib/mocks/tag.js +37 -0
  265. package/lib/mocks/user.d.ts +4 -0
  266. package/lib/mocks/user.js +88 -0
  267. package/lib/mutations/index.d.ts +3 -0
  268. package/lib/mutations/index.js +26 -0
  269. package/lib/mutations/locations.d.ts +2 -0
  270. package/lib/mutations/locations.js +44 -0
  271. package/lib/mutations/messages.d.ts +2 -0
  272. package/lib/mutations/messages.js +86 -0
  273. package/lib/mutations/personas.d.ts +2 -0
  274. package/lib/mutations/personas.js +100 -0
  275. package/lib/mutations/posts.d.ts +2 -0
  276. package/lib/mutations/posts.js +53 -0
  277. package/lib/mutations/reactions.d.ts +2 -0
  278. package/lib/mutations/reactions.js +51 -0
  279. package/lib/mutations/statistics.d.ts +2 -0
  280. package/lib/mutations/statistics.js +39 -0
  281. package/lib/mutations/subscriptions.d.ts +2 -0
  282. package/lib/mutations/subscriptions.js +56 -0
  283. package/lib/mutations/tags.d.ts +2 -0
  284. package/lib/mutations/tags.js +120 -0
  285. package/lib/mutations/users.d.ts +1 -0
  286. package/lib/mutations/users.js +116 -0
  287. package/lib/objectTypes/app.d.ts +3 -0
  288. package/lib/objectTypes/app.js +173 -0
  289. package/lib/objectTypes/bankAccount.d.ts +1 -0
  290. package/lib/objectTypes/bankAccount.js +76 -0
  291. package/lib/objectTypes/connection.d.ts +1 -0
  292. package/lib/objectTypes/connection.js +48 -0
  293. package/lib/objectTypes/conversation.d.ts +2 -0
  294. package/lib/objectTypes/conversation.js +77 -0
  295. package/lib/objectTypes/creditCard.d.ts +1 -0
  296. package/lib/objectTypes/creditCard.js +86 -0
  297. package/lib/objectTypes/document.d.ts +1 -0
  298. package/lib/objectTypes/document.js +46 -0
  299. package/lib/objectTypes/error.d.ts +1 -0
  300. package/lib/objectTypes/error.js +46 -0
  301. package/lib/objectTypes/external.d.ts +1 -0
  302. package/lib/objectTypes/external.js +74 -0
  303. package/lib/objectTypes/file.d.ts +2 -0
  304. package/lib/objectTypes/file.js +100 -0
  305. package/lib/objectTypes/filter.d.ts +1 -0
  306. package/lib/objectTypes/filter.js +43 -0
  307. package/lib/objectTypes/group.d.ts +3 -0
  308. package/lib/objectTypes/group.js +123 -0
  309. package/lib/objectTypes/iapSubscription.d.ts +1 -0
  310. package/lib/objectTypes/iapSubscription.js +40 -0
  311. package/lib/objectTypes/image.d.ts +2 -0
  312. package/lib/objectTypes/image.js +129 -0
  313. package/lib/objectTypes/index.d.ts +24 -0
  314. package/lib/objectTypes/index.js +68 -0
  315. package/lib/objectTypes/location.d.ts +2 -0
  316. package/lib/objectTypes/location.js +109 -0
  317. package/lib/objectTypes/message.d.ts +2 -0
  318. package/lib/objectTypes/message.js +96 -0
  319. package/lib/objectTypes/passcode.d.ts +1 -0
  320. package/lib/objectTypes/passcode.js +42 -0
  321. package/lib/objectTypes/persona.d.ts +3 -0
  322. package/lib/objectTypes/persona.js +87 -0
  323. package/lib/objectTypes/plan.d.ts +2 -0
  324. package/lib/objectTypes/plan.js +95 -0
  325. package/lib/objectTypes/post.d.ts +2 -0
  326. package/lib/objectTypes/post.js +125 -0
  327. package/lib/objectTypes/reaction.d.ts +2 -0
  328. package/lib/objectTypes/reaction.js +61 -0
  329. package/lib/objectTypes/relation.d.ts +1 -0
  330. package/lib/objectTypes/relation.js +49 -0
  331. package/lib/objectTypes/search.d.ts +1 -0
  332. package/lib/objectTypes/search.js +72 -0
  333. package/lib/objectTypes/statistics.d.ts +1 -0
  334. package/lib/objectTypes/statistics.js +39 -0
  335. package/lib/objectTypes/subscription.d.ts +2 -0
  336. package/lib/objectTypes/subscription.js +117 -0
  337. package/lib/objectTypes/tag.d.ts +2 -0
  338. package/lib/objectTypes/tag.js +65 -0
  339. package/lib/objectTypes/user.d.ts +4 -0
  340. package/lib/objectTypes/user.js +144 -0
  341. package/lib/queries/index.d.ts +3 -0
  342. package/lib/queries/index.js +33 -0
  343. package/lib/queries/locations.d.ts +2 -0
  344. package/lib/queries/locations.js +45 -0
  345. package/lib/queries/messages.d.ts +2 -0
  346. package/lib/queries/messages.js +52 -0
  347. package/lib/queries/posts.d.ts +2 -0
  348. package/lib/queries/posts.js +154 -0
  349. package/lib/queries/reactions.d.ts +2 -0
  350. package/lib/queries/reactions.js +56 -0
  351. package/lib/queries/statistics.d.ts +2 -0
  352. package/lib/queries/statistics.js +39 -0
  353. package/lib/queries/subscriptions.d.ts +2 -0
  354. package/lib/queries/subscriptions.js +44 -0
  355. package/lib/queries/tags.d.ts +2 -0
  356. package/lib/queries/tags.js +75 -0
  357. package/lib/queries/users.d.ts +1 -0
  358. package/lib/queries/users.js +64 -0
  359. package/lib/types/{apps.d.ts → apps.types.d.ts} +19 -17
  360. package/lib/types/apps.types.js +32 -0
  361. package/lib/types/arangodb.types.d.ts +34 -0
  362. package/lib/types/arangodb.types.js +16 -0
  363. package/lib/types/auth.types.d.ts +9 -0
  364. package/lib/types/auth.types.js +16 -0
  365. package/lib/types/connections.types.d.ts +5 -0
  366. package/lib/types/connections.types.js +16 -0
  367. package/lib/types/conversations.types.d.ts +27 -0
  368. package/lib/types/conversations.types.js +16 -0
  369. package/lib/types/email.types.d.ts +13 -0
  370. package/lib/types/email.types.js +16 -0
  371. package/lib/types/error.types.d.ts +20 -0
  372. package/lib/types/error.types.js +44 -0
  373. package/lib/types/{files.d.ts → files.types.d.ts} +9 -12
  374. package/lib/types/files.types.js +16 -0
  375. package/lib/types/google.types.d.ts +29 -0
  376. package/lib/types/google.types.js +16 -0
  377. package/lib/types/{groups.d.ts → groups.types.d.ts} +6 -10
  378. package/lib/types/groups.types.js +16 -0
  379. package/lib/types/images.types.d.ts +52 -0
  380. package/lib/types/images.types.js +16 -0
  381. package/lib/types/index.d.ts +20 -18
  382. package/lib/types/index.js +41 -37
  383. package/lib/types/{locations.d.ts → locations.types.d.ts} +4 -6
  384. package/lib/types/locations.types.js +16 -0
  385. package/lib/types/messages.types.d.ts +16 -0
  386. package/lib/types/messages.types.js +16 -0
  387. package/lib/types/notifications.types.d.ts +19 -0
  388. package/lib/types/notifications.types.js +16 -0
  389. package/lib/types/{payments.d.ts → payments.types.d.ts} +13 -19
  390. package/lib/types/payments.types.js +16 -0
  391. package/lib/types/personas.types.d.ts +32 -0
  392. package/lib/types/personas.types.js +16 -0
  393. package/lib/types/posts.types.d.ts +28 -0
  394. package/lib/types/posts.types.js +16 -0
  395. package/lib/types/statistics.types.d.ts +3 -0
  396. package/lib/types/statistics.types.js +16 -0
  397. package/lib/types/tags.types.d.ts +15 -0
  398. package/lib/types/tags.types.js +16 -0
  399. package/lib/types/{users.d.ts → users.types.d.ts} +21 -22
  400. package/lib/types/users.types.js +16 -0
  401. package/lib/types/{websocket.d.ts → websockets.types.d.ts} +7 -3
  402. package/lib/types/websockets.types.js +16 -0
  403. package/lib/utils/adapterUtils.d.ts +1 -0
  404. package/lib/utils/adapterUtils.js +45 -0
  405. package/lib/utils/analyticsUtils.d.ts +21 -0
  406. package/lib/utils/analyticsUtils.js +72 -0
  407. package/lib/utils/arangodbUtils.d.ts +66 -0
  408. package/lib/utils/arangodbUtils.js +165 -0
  409. package/lib/utils/auth.d.ts +19 -3
  410. package/lib/utils/auth.js +20 -30
  411. package/lib/utils/index.d.ts +3 -4
  412. package/lib/utils/index.js +7 -9
  413. package/lib/utils/session.d.ts +10 -10
  414. package/lib/utils/session.js +15 -3
  415. package/lib/utils/stripeUtils.d.ts +3 -0
  416. package/lib/utils/{graphql.js → stripeUtils.js} +12 -15
  417. package/package.json +38 -30
  418. package/lib/types/apps.js +0 -16
  419. package/lib/types/arangodb.d.ts +0 -17
  420. package/lib/types/arangodb.js +0 -16
  421. package/lib/types/auth.d.ts +0 -7
  422. package/lib/types/connections.d.ts +0 -8
  423. package/lib/types/conversations.d.ts +0 -16
  424. package/lib/types/email.d.ts +0 -12
  425. package/lib/types/google.d.ts +0 -27
  426. package/lib/types/google.js +0 -16
  427. package/lib/types/images.d.ts +0 -42
  428. package/lib/types/images.js +0 -16
  429. package/lib/types/messages.d.ts +0 -27
  430. package/lib/types/messages.js +0 -16
  431. package/lib/types/notifications.d.ts +0 -19
  432. package/lib/types/payments.js +0 -16
  433. package/lib/types/posts.d.ts +0 -47
  434. package/lib/types/posts.js +0 -16
  435. package/lib/types/statistics.d.ts +0 -3
  436. package/lib/types/tags.d.ts +0 -15
  437. package/lib/types/users.js +0 -16
  438. package/lib/types/websocket.js +0 -16
  439. package/lib/utils/analytics.d.ts +0 -14
  440. package/lib/utils/analytics.js +0 -88
  441. package/lib/utils/arangodb.d.ts +0 -9
  442. package/lib/utils/arangodb.js +0 -118
  443. package/lib/utils/graphql.d.ts +0 -1
  444. package/lib/utils/objects.d.ts +0 -3
  445. package/lib/utils/objects.js +0 -59
@@ -0,0 +1,115 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var userAdapter_exports = {};
19
+ __export(userAdapter_exports, {
20
+ parseUser: () => parseUser
21
+ });
22
+ module.exports = __toCommonJS(userAdapter_exports);
23
+ var import_utils = require("@nlabs/utils");
24
+ var import_arangoAdapter = require("./arangoAdapter");
25
+ var import_reaktorAdapter = require("./reaktorAdapter");
26
+ var import_tagAdapter = require("./tagAdapter");
27
+ var import_adapterUtils = require("../utils/adapterUtils");
28
+ const parseUser = (user) => {
29
+ const {
30
+ _key,
31
+ active,
32
+ bankId,
33
+ city,
34
+ country,
35
+ currency,
36
+ deviceToken,
37
+ dob,
38
+ email,
39
+ first,
40
+ gender,
41
+ imageId,
42
+ last,
43
+ lastActive,
44
+ locale,
45
+ mailingList,
46
+ name,
47
+ password,
48
+ phone,
49
+ salt,
50
+ state,
51
+ street1,
52
+ street2,
53
+ stripeAccountId,
54
+ stripeCustomerId,
55
+ tags,
56
+ timezone,
57
+ type,
58
+ userAccess,
59
+ userId,
60
+ username,
61
+ verifiedEmail,
62
+ verifiedEmailCode,
63
+ verifiedEmailExpires,
64
+ verifiedPhone,
65
+ verifiedPhoneCode,
66
+ verifiedPhoneExpires,
67
+ zip
68
+ } = user;
69
+ return (0, import_adapterUtils.removeEmptyKeys)({
70
+ ...(0, import_arangoAdapter.parseDocument)(user),
71
+ active: !!active,
72
+ bankId: bankId ? (0, import_utils.parseVarChar)(bankId, 160) : void 0,
73
+ city: city ? (0, import_utils.parseVarChar)(city, 160) : void 0,
74
+ country: country ? (0, import_utils.parseChar)(country, 2).toUpperCase() : void 0,
75
+ currency: currency ? (0, import_utils.parseChar)(currency, 3).toUpperCase() : void 0,
76
+ deviceToken: deviceToken ? (0, import_utils.parseVarChar)(deviceToken, 160) : void 0,
77
+ dob: (0, import_reaktorAdapter.parseReaktorDate)(dob),
78
+ email: email ? (0, import_utils.parseEmail)(email) : void 0,
79
+ first: first ? (0, import_utils.parseVarChar)(first, 160) : void 0,
80
+ gender: gender ? (0, import_utils.parseChar)(gender, 1).toUpperCase() : void 0,
81
+ id: userId ? (0, import_utils.parseArangoId)(`users/${userId}`) : void 0,
82
+ imageId: (0, import_reaktorAdapter.parseReaktorItemId)(imageId),
83
+ last: last ? (0, import_utils.parseVarChar)(last, 160) : void 0,
84
+ lastActive: (0, import_reaktorAdapter.parseReaktorDate)(lastActive),
85
+ locale: locale ? (0, import_utils.parseString)(locale, 5) : void 0,
86
+ mailingList: !!mailingList,
87
+ name: (0, import_reaktorAdapter.parseReaktorName)(name),
88
+ password: password ? (0, import_utils.parseVarChar)(password, 160) : void 0,
89
+ phone: phone ? (0, import_utils.parseVarChar)(phone, 20) : void 0,
90
+ salt: salt ? (0, import_utils.parseVarChar)(salt, 160) : void 0,
91
+ state: state ? (0, import_utils.parseChar)(state, 2).toUpperCase() : void 0,
92
+ street1: street1 ? (0, import_utils.parseVarChar)(street1, 160) : void 0,
93
+ street2: street2 ? (0, import_utils.parseVarChar)(street2, 160) : void 0,
94
+ stripeAccountId: stripeAccountId ? (0, import_utils.parseVarChar)(stripeAccountId, 160) : void 0,
95
+ stripeCustomerId: stripeCustomerId ? (0, import_utils.parseVarChar)(stripeCustomerId, 160) : void 0,
96
+ tags: tags?.length ? tags?.filter((tag) => !!tag).map((tag) => (0, import_tagAdapter.parseTag)(tag)) : void 0,
97
+ timezone: timezone ? (0, import_utils.parseString)(timezone, 160) : void 0,
98
+ type: (0, import_reaktorAdapter.parseReaktorType)(type),
99
+ userAccess: userAccess ? (0, import_utils.parseNum)(userAccess) : 0,
100
+ userId: (0, import_utils.parseId)(_key || userId),
101
+ username: username ? (0, import_utils.parseVarChar)(username, 160) : void 0,
102
+ verifiedEmail: !!verifiedEmail,
103
+ verifiedEmailCode: verifiedEmailCode ? (0, import_utils.parseNum)(verifiedEmailCode, 10) : void 0,
104
+ verifiedEmailExpires: verifiedEmailExpires ? (0, import_utils.parseNum)(verifiedEmailExpires, 10) : void 0,
105
+ verifiedPhone: !!verifiedPhone,
106
+ verifiedPhoneCode: verifiedPhoneCode ? (0, import_utils.parseNum)(verifiedPhoneCode, 10) : void 0,
107
+ verifiedPhoneExpires: verifiedPhoneExpires ? (0, import_utils.parseNum)(verifiedPhoneExpires, 10) : void 0,
108
+ zip: zip ? (0, import_utils.parseVarChar)(zip, 20) : void 0
109
+ });
110
+ };
111
+ // Annotate the CommonJS export names for ESM import in node:
112
+ 0 && (module.exports = {
113
+ parseUser
114
+ });
115
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FkYXB0ZXJzL3VzZXJBZGFwdGVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQge3BhcnNlQXJhbmdvSWQsIHBhcnNlQ2hhciwgcGFyc2VFbWFpbCwgcGFyc2VJZCwgcGFyc2VOdW0sIHBhcnNlU3RyaW5nLCBwYXJzZVZhckNoYXJ9IGZyb20gJ0BubGFicy91dGlscyc7XG5cbmltcG9ydCB7VXNlclR5cGV9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7cGFyc2VEb2N1bWVudH0gZnJvbSAnLi9hcmFuZ29BZGFwdGVyJztcbmltcG9ydCB7cGFyc2VSZWFrdG9yRGF0ZSwgcGFyc2VSZWFrdG9ySXRlbUlkLCBwYXJzZVJlYWt0b3JOYW1lLCBwYXJzZVJlYWt0b3JUeXBlfSBmcm9tICcuL3JlYWt0b3JBZGFwdGVyJztcbmltcG9ydCB7cGFyc2VUYWd9IGZyb20gJy4vdGFnQWRhcHRlcic7XG5pbXBvcnQge3JlbW92ZUVtcHR5S2V5c30gZnJvbSAnLi4vdXRpbHMvYWRhcHRlclV0aWxzJztcblxuZXhwb3J0IGNvbnN0IHBhcnNlVXNlciA9ICh1c2VyOiBVc2VyVHlwZSk6IFVzZXJUeXBlID0+IHtcbiAgY29uc3Qge1xuICAgIF9rZXksXG4gICAgYWN0aXZlLFxuICAgIGJhbmtJZCxcbiAgICBjaXR5LFxuICAgIGNvdW50cnksXG4gICAgY3VycmVuY3ksXG4gICAgZGV2aWNlVG9rZW4sXG4gICAgZG9iLFxuICAgIGVtYWlsLFxuICAgIGZpcnN0LFxuICAgIGdlbmRlcixcbiAgICBpbWFnZUlkLFxuICAgIGxhc3QsXG4gICAgbGFzdEFjdGl2ZSxcbiAgICBsb2NhbGUsXG4gICAgbWFpbGluZ0xpc3QsXG4gICAgbmFtZSxcbiAgICBwYXNzd29yZCxcbiAgICBwaG9uZSxcbiAgICBzYWx0LFxuICAgIHN0YXRlLFxuICAgIHN0cmVldDEsXG4gICAgc3RyZWV0MixcbiAgICBzdHJpcGVBY2NvdW50SWQsXG4gICAgc3RyaXBlQ3VzdG9tZXJJZCxcbiAgICB0YWdzLFxuICAgIHRpbWV6b25lLFxuICAgIHR5cGUsXG4gICAgdXNlckFjY2VzcyxcbiAgICB1c2VySWQsXG4gICAgdXNlcm5hbWUsXG4gICAgdmVyaWZpZWRFbWFpbCxcbiAgICB2ZXJpZmllZEVtYWlsQ29kZSxcbiAgICB2ZXJpZmllZEVtYWlsRXhwaXJlcyxcbiAgICB2ZXJpZmllZFBob25lLFxuICAgIHZlcmlmaWVkUGhvbmVDb2RlLFxuICAgIHZlcmlmaWVkUGhvbmVFeHBpcmVzLFxuICAgIHppcFxuICB9ID0gdXNlcjtcblxuICByZXR1cm4gcmVtb3ZlRW1wdHlLZXlzKHtcbiAgICAuLi5wYXJzZURvY3VtZW50KHVzZXIpLFxuICAgIGFjdGl2ZTogISFhY3RpdmUsXG4gICAgYmFua0lkOiBiYW5rSWQgPyBwYXJzZVZhckNoYXIoYmFua0lkLCAxNjApIDogdW5kZWZpbmVkLFxuICAgIGNpdHk6IGNpdHkgPyBwYXJzZVZhckNoYXIoY2l0eSwgMTYwKSA6IHVuZGVmaW5lZCxcbiAgICBjb3VudHJ5OiBjb3VudHJ5ID8gcGFyc2VDaGFyKGNvdW50cnksIDIpLnRvVXBwZXJDYXNlKCkgOiB1bmRlZmluZWQsXG4gICAgY3VycmVuY3k6IGN1cnJlbmN5ID8gcGFyc2VDaGFyKGN1cnJlbmN5LCAzKS50b1VwcGVyQ2FzZSgpIDogdW5kZWZpbmVkLFxuICAgIGRldmljZVRva2VuOiBkZXZpY2VUb2tlbiA/IHBhcnNlVmFyQ2hhcihkZXZpY2VUb2tlbiwgMTYwKSA6IHVuZGVmaW5lZCxcbiAgICBkb2I6IHBhcnNlUmVha3RvckRhdGUoZG9iKSxcbiAgICBlbWFpbDogZW1haWwgPyBwYXJzZUVtYWlsKGVtYWlsKSA6IHVuZGVmaW5lZCxcbiAgICBmaXJzdDogZmlyc3QgPyBwYXJzZVZhckNoYXIoZmlyc3QsIDE2MCkgOiB1bmRlZmluZWQsXG4gICAgZ2VuZGVyOiBnZW5kZXIgPyBwYXJzZUNoYXIoZ2VuZGVyLCAxKS50b1VwcGVyQ2FzZSgpIDogdW5kZWZpbmVkLFxuICAgIGlkOiB1c2VySWQgPyBwYXJzZUFyYW5nb0lkKGB1c2Vycy8ke3VzZXJJZH1gKSA6IHVuZGVmaW5lZCxcbiAgICBpbWFnZUlkOiBwYXJzZVJlYWt0b3JJdGVtSWQoaW1hZ2VJZCksXG4gICAgbGFzdDogbGFzdCA/IHBhcnNlVmFyQ2hhcihsYXN0LCAxNjApIDogdW5kZWZpbmVkLFxuICAgIGxhc3RBY3RpdmU6IHBhcnNlUmVha3RvckRhdGUobGFzdEFjdGl2ZSksXG4gICAgbG9jYWxlOiBsb2NhbGUgPyBwYXJzZVN0cmluZyhsb2NhbGUsIDUpIDogdW5kZWZpbmVkLFxuICAgIG1haWxpbmdMaXN0OiAhIW1haWxpbmdMaXN0LFxuICAgIG5hbWU6IHBhcnNlUmVha3Rvck5hbWUobmFtZSksXG4gICAgcGFzc3dvcmQ6IHBhc3N3b3JkID8gcGFyc2VWYXJDaGFyKHBhc3N3b3JkLCAxNjApIDogdW5kZWZpbmVkLFxuICAgIHBob25lOiBwaG9uZSA/IHBhcnNlVmFyQ2hhcihwaG9uZSwgMjApIDogdW5kZWZpbmVkLFxuICAgIHNhbHQ6IHNhbHQgPyBwYXJzZVZhckNoYXIoc2FsdCwgMTYwKSA6IHVuZGVmaW5lZCxcbiAgICBzdGF0ZTogc3RhdGUgPyBwYXJzZUNoYXIoc3RhdGUsIDIpLnRvVXBwZXJDYXNlKCkgOiB1bmRlZmluZWQsXG4gICAgc3RyZWV0MTogc3RyZWV0MSA/IHBhcnNlVmFyQ2hhcihzdHJlZXQxLCAxNjApIDogdW5kZWZpbmVkLFxuICAgIHN0cmVldDI6IHN0cmVldDIgPyBwYXJzZVZhckNoYXIoc3RyZWV0MiwgMTYwKSA6IHVuZGVmaW5lZCxcbiAgICBzdHJpcGVBY2NvdW50SWQ6IHN0cmlwZUFjY291bnRJZCA/IHBhcnNlVmFyQ2hhcihzdHJpcGVBY2NvdW50SWQsIDE2MCkgOiB1bmRlZmluZWQsXG4gICAgc3RyaXBlQ3VzdG9tZXJJZDogc3RyaXBlQ3VzdG9tZXJJZCA/IHBhcnNlVmFyQ2hhcihzdHJpcGVDdXN0b21lcklkLCAxNjApIDogdW5kZWZpbmVkLFxuICAgIHRhZ3M6IHRhZ3M/Lmxlbmd0aCA/IHRhZ3M/LmZpbHRlcigodGFnKSA9PiAhIXRhZykubWFwKCh0YWcpID0+IHBhcnNlVGFnKHRhZykpIDogdW5kZWZpbmVkLFxuICAgIHRpbWV6b25lOiB0aW1lem9uZSA/IHBhcnNlU3RyaW5nKHRpbWV6b25lLCAxNjApIDogdW5kZWZpbmVkLFxuICAgIHR5cGU6IHBhcnNlUmVha3RvclR5cGUodHlwZSksXG4gICAgdXNlckFjY2VzczogdXNlckFjY2VzcyA/IHBhcnNlTnVtKHVzZXJBY2Nlc3MpIDogMCxcbiAgICB1c2VySWQ6IHBhcnNlSWQoX2tleSB8fCB1c2VySWQpLFxuICAgIHVzZXJuYW1lOiB1c2VybmFtZSA/IHBhcnNlVmFyQ2hhcih1c2VybmFtZSwgMTYwKSA6IHVuZGVmaW5lZCxcbiAgICB2ZXJpZmllZEVtYWlsOiAhIXZlcmlmaWVkRW1haWwsXG4gICAgdmVyaWZpZWRFbWFpbENvZGU6IHZlcmlmaWVkRW1haWxDb2RlID8gcGFyc2VOdW0odmVyaWZpZWRFbWFpbENvZGUsIDEwKSA6IHVuZGVmaW5lZCxcbiAgICB2ZXJpZmllZEVtYWlsRXhwaXJlczogdmVyaWZpZWRFbWFpbEV4cGlyZXMgPyBwYXJzZU51bSh2ZXJpZmllZEVtYWlsRXhwaXJlcywgMTApIDogdW5kZWZpbmVkLFxuICAgIHZlcmlmaWVkUGhvbmU6ICEhdmVyaWZpZWRQaG9uZSxcbiAgICB2ZXJpZmllZFBob25lQ29kZTogdmVyaWZpZWRQaG9uZUNvZGUgPyBwYXJzZU51bSh2ZXJpZmllZFBob25lQ29kZSwgMTApIDogdW5kZWZpbmVkLFxuICAgIHZlcmlmaWVkUGhvbmVFeHBpcmVzOiB2ZXJpZmllZFBob25lRXhwaXJlcyA/IHBhcnNlTnVtKHZlcmlmaWVkUGhvbmVFeHBpcmVzLCAxMCkgOiB1bmRlZmluZWQsXG4gICAgemlwOiB6aXAgPyBwYXJzZVZhckNoYXIoemlwLCAyMCkgOiB1bmRlZmluZWRcbiAgfSk7XG59OyJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFB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
package/dist/config.js ADDED
@@ -0,0 +1,125 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+ var config_exports = {};
29
+ __export(config_exports, {
30
+ Config: () => Config
31
+ });
32
+ module.exports = __toCommonJS(config_exports);
33
+ var import_get = __toESM(require("lodash/get"), 1);
34
+ var import_merge = __toESM(require("lodash/merge"), 1);
35
+ const appPackage = require("../package.json");
36
+ class Config {
37
+ static values() {
38
+ return {
39
+ local: {
40
+ app: {
41
+ id: "reaktor",
42
+ url: "reaktor.io",
43
+ version: appPackage.version
44
+ },
45
+ aws: {
46
+ credentials: {
47
+ accessKeyId: process.env.AWS_ACCESS_KEY_ID,
48
+ secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY
49
+ },
50
+ maxRetries: 3,
51
+ region: "us-east-1",
52
+ s3: {
53
+ Bucket: "dev.reaktor.io"
54
+ },
55
+ signatureVersion: "v4"
56
+ },
57
+ giphy: {
58
+ key: "dc6zaTOxFJmzC"
59
+ },
60
+ google: {
61
+ analytics: {
62
+ accountId: "78158717",
63
+ trackingId: "UA-78158717-1"
64
+ },
65
+ geocode: {
66
+ key: "AIzaSyBwjmpBjWhiJoBCZiYzRurM9m4WnCxslv0",
67
+ url: "https://maps.googleapis.com/maps/api/geocode/json"
68
+ },
69
+ key: "AIzaSyC3_f2Us3y0qjbyMJ-4t5ObtCzfq_FHIgQ"
70
+ },
71
+ image: {
72
+ imgQuality: 90,
73
+ imgSize: 1500,
74
+ thmQuality: 80,
75
+ thmSize: 150
76
+ },
77
+ stripe: {
78
+ token: "sk_test_LS956be57YUXTB5a4sLGb5BQ"
79
+ },
80
+ twilio: {
81
+ number: "+15005550006",
82
+ sid: "AC6bd7f513cbed2e5134c650be06cc732e",
83
+ token: "520ae739e761bab759b147f1ad28278f"
84
+ }
85
+ },
86
+ dev: {
87
+ aws: {
88
+ Bucket: "dev.reaktor.io"
89
+ }
90
+ },
91
+ prod: {
92
+ arangodb: {
93
+ dump: "/usr/bin/arangodump",
94
+ restore: "/usr/bin/arangorestore"
95
+ },
96
+ aws: {
97
+ Bucket: "box.reaktor.io"
98
+ },
99
+ stripe: {
100
+ token: "sk_live_bElZl8RLhMCJy33KG4lyLD4o"
101
+ },
102
+ twilio: {
103
+ number: "+18554165227",
104
+ sid: "AC90b0528a911e652d643329a4d7b4d2c7",
105
+ token: "a7941d173bd4846d0966a186e9865b72"
106
+ }
107
+ },
108
+ test: {
109
+ app: {
110
+ id: "reaktor-test"
111
+ }
112
+ }
113
+ };
114
+ }
115
+ static get(path) {
116
+ const environment = process.env.stage || "local";
117
+ const configValues = (0, import_merge.default)(this.values().local, this.values()[environment], { environment });
118
+ return (0, import_get.default)(configValues, path);
119
+ }
120
+ }
121
+ // Annotate the CommonJS export names for ESM import in node:
122
+ 0 && (module.exports = {
123
+ Config
124
+ });
125
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2NvbmZpZy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCBnZXQgZnJvbSAnbG9kYXNoL2dldCc7XG5pbXBvcnQgbWVyZ2UgZnJvbSAnbG9kYXNoL21lcmdlJztcblxuZXhwb3J0IGludGVyZmFjZSBBcHBDb25maWcge1xuICByZWFkb25seSBhcHA/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IGFyYW5nb2RiPzogb2JqZWN0O1xuICByZWFkb25seSBhd3M/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IGdpcGh5Pzogb2JqZWN0O1xuICByZWFkb25seSBnb29nbGU/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IGltYWdlPzogb2JqZWN0O1xuICByZWFkb25seSBzdHJpcGU/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IHR3aWxpbz86IG9iamVjdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbnZDb25maWcge1xuICByZWFkb25seSBsb2NhbDogQXBwQ29uZmlnO1xuICByZWFkb25seSBkZXY6IEFwcENvbmZpZztcbiAgcmVhZG9ubHkgcHJvZDogQXBwQ29uZmlnO1xuICByZWFkb25seSB0ZXN0OiBBcHBDb25maWc7XG59XG5cbmNvbnN0IGFwcFBhY2thZ2U6IGFueSA9IHJlcXVpcmUoJy4uL3BhY2thZ2UuanNvbicpO1xuXG5leHBvcnQgY2xhc3MgQ29uZmlnIHtcbiAgc3RhdGljIHZhbHVlcygpOiBFbnZDb25maWcge1xuICAgIHJldHVybiB7XG4gICAgICBsb2NhbDoge1xuICAgICAgICBhcHA6IHtcbiAgICAgICAgICBpZDogJ3JlYWt0b3InLFxuICAgICAgICAgIHVybDogJ3JlYWt0b3IuaW8nLFxuICAgICAgICAgIHZlcnNpb246IGFwcFBhY2thZ2UudmVyc2lvblxuICAgICAgICB9LFxuICAgICAgICBhd3M6IHtcbiAgICAgICAgICBjcmVkZW50aWFsczoge1xuICAgICAgICAgICAgYWNjZXNzS2V5SWQ6IHByb2Nlc3MuZW52LkFXU19BQ0NFU1NfS0VZX0lELFxuICAgICAgICAgICAgc2VjcmV0QWNjZXNzS2V5OiBwcm9jZXNzLmVudi5BV1NfU0VDUkVUX0FDQ0VTU19LRVlcbiAgICAgICAgICB9LFxuICAgICAgICAgIG1heFJldHJpZXM6IDMsXG4gICAgICAgICAgcmVnaW9uOiAndXMtZWFzdC0xJyxcbiAgICAgICAgICBzMzoge1xuICAgICAgICAgICAgQnVja2V0OiAnZGV2LnJlYWt0b3IuaW8nXG4gICAgICAgICAgfSxcbiAgICAgICAgICBzaWduYXR1cmVWZXJzaW9uOiAndjQnXG4gICAgICAgIH0sXG4gICAgICAgIGdpcGh5OiB7XG4gICAgICAgICAga2V5OiAnZGM2emFUT3hGSm16QydcbiAgICAgICAgfSxcbiAgICAgICAgZ29vZ2xlOiB7XG4gICAgICAgICAgYW5hbHl0aWNzOiB7XG4gICAgICAgICAgICBhY2NvdW50SWQ6ICc3ODE1ODcxNycsXG4gICAgICAgICAgICB0cmFja2luZ0lkOiAnVUEtNzgxNTg3MTctMSdcbiAgICAgICAgICB9LFxuICAgICAgICAgIGdlb2NvZGU6IHtcbiAgICAgICAgICAgIGtleTogJ0FJemFTeUJ3am1wQmpXaGlKb0JDWmlZelJ1ck05bTRXbkN4c2x2MCcsXG4gICAgICAgICAgICB1cmw6ICdodHRwczovL21hcHMuZ29vZ2xlYXBpcy5jb20vbWFwcy9hcGkvZ2VvY29kZS9qc29uJ1xuICAgICAgICAgIH0sXG4gICAgICAgICAga2V5OiAnQUl6YVN5QzNfZjJVczN5MHFqYnlNSi00dDVPYnRDemZxX0ZISWdRJ1xuICAgICAgICB9LFxuICAgICAgICBpbWFnZToge1xuICAgICAgICAgIGltZ1F1YWxpdHk6IDkwLFxuICAgICAgICAgIGltZ1NpemU6IDE1MDAsXG4gICAgICAgICAgdGhtUXVhbGl0eTogODAsXG4gICAgICAgICAgdGhtU2l6ZTogMTUwXG4gICAgICAgIH0sXG4gICAgICAgIHN0cmlwZToge1xuICAgICAgICAgIHRva2VuOiAnc2tfdGVzdF9MUzk1NmJlNTdZVVhUQjVhNHNMR2I1QlEnXG4gICAgICAgIH0sXG4gICAgICAgIHR3aWxpbzoge1xuICAgICAgICAgIG51bWJlcjogJysxNTAwNTU1MDAwNicsXG4gICAgICAgICAgc2lkOiAnQUM2YmQ3ZjUxM2NiZWQyZTUxMzRjNjUwYmUwNmNjNzMyZScsXG4gICAgICAgICAgdG9rZW46ICc1MjBhZTczOWU3NjFiYWI3NTliMTQ3ZjFhZDI4Mjc4ZidcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGRldjoge1xuICAgICAgICBhd3M6IHtcbiAgICAgICAgICBCdWNrZXQ6ICdkZXYucmVha3Rvci5pbydcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHByb2Q6IHtcbiAgICAgICAgYXJhbmdvZGI6IHtcbiAgICAgICAgICBkdW1wOiAnL3Vzci9iaW4vYXJhbmdvZHVtcCcsXG4gICAgICAgICAgcmVzdG9yZTogJy91c3IvYmluL2FyYW5nb3Jlc3RvcmUnXG4gICAgICAgIH0sXG4gICAgICAgIGF3czoge1xuICAgICAgICAgIEJ1Y2tldDogJ2JveC5yZWFrdG9yLmlvJ1xuICAgICAgICB9LFxuICAgICAgICBzdHJpcGU6IHtcbiAgICAgICAgICB0b2tlbjogJ3NrX2xpdmVfYkVsWmw4UkxoTUNKeTMzS0c0bHlMRDRvJ1xuICAgICAgICB9LFxuICAgICAgICB0d2lsaW86IHtcbiAgICAgICAgICBudW1iZXI6ICcrMTg1NTQxNjUyMjcnLFxuICAgICAgICAgIHNpZDogJ0FDOTBiMDUyOGE5MTFlNjUyZDY0MzMyOWE0ZDdiNGQyYzcnLFxuICAgICAgICAgIHRva2VuOiAnYTc5NDFkMTczYmQ0ODQ2ZDA5NjZhMTg2ZTk4NjViNzInXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB0ZXN0OiB7XG4gICAgICAgIGFwcDoge1xuICAgICAgICAgIGlkOiAncmVha3Rvci10ZXN0J1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQocGF0aDogc3RyaW5nIHwgc3RyaW5nW10pOiBhbnkge1xuICAgIGNvbnN0IGVudmlyb25tZW50OiBzdHJpbmcgPSBwcm9jZXNzLmVudi5zdGFnZSB8fCAnbG9jYWwnO1xuICAgIGNvbnN0IGNvbmZpZ1ZhbHVlczogb2JqZWN0ID0gbWVyZ2UodGhpcy52YWx1ZXMoKS5sb2NhbCwgdGhpcy52YWx1ZXMoKVtlbnZpcm9ubWVudF0sIHtlbnZpcm9ubWVudH0pO1xuICAgIHJldHVybiBnZXQoY29uZmlnVmFsdWVzLCBwYXRoKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBLGlCQUFnQjtBQUNoQixtQkFBa0I7QUFvQmxCLE1BQU0sYUFBa0IsUUFBUSxpQkFBaUI7QUFFMUMsTUFBTSxPQUFPO0FBQUEsRUFDbEIsT0FBTyxTQUFvQjtBQUN6QixXQUFPO0FBQUEsTUFDTCxPQUFPO0FBQUEsUUFDTCxLQUFLO0FBQUEsVUFDSCxJQUFJO0FBQUEsVUFDSixLQUFLO0FBQUEsVUFDTCxTQUFTLFdBQVc7QUFBQSxRQUN0QjtBQUFBLFFBQ0EsS0FBSztBQUFBLFVBQ0gsYUFBYTtBQUFBLFlBQ1gsYUFBYSxRQUFRLElBQUk7QUFBQSxZQUN6QixpQkFBaUIsUUFBUSxJQUFJO0FBQUEsVUFDL0I7QUFBQSxVQUNBLFlBQVk7QUFBQSxVQUNaLFFBQVE7QUFBQSxVQUNSLElBQUk7QUFBQSxZQUNGLFFBQVE7QUFBQSxVQUNWO0FBQUEsVUFDQSxrQkFBa0I7QUFBQSxRQUNwQjtBQUFBLFFBQ0EsT0FBTztBQUFBLFVBQ0wsS0FBSztBQUFBLFFBQ1A7QUFBQSxRQUNBLFFBQVE7QUFBQSxVQUNOLFdBQVc7QUFBQSxZQUNULFdBQVc7QUFBQSxZQUNYLFlBQVk7QUFBQSxVQUNkO0FBQUEsVUFDQSxTQUFTO0FBQUEsWUFDUCxLQUFLO0FBQUEsWUFDTCxLQUFLO0FBQUEsVUFDUDtBQUFBLFVBQ0EsS0FBSztBQUFBLFFBQ1A7QUFBQSxRQUNBLE9BQU87QUFBQSxVQUNMLFlBQVk7QUFBQSxVQUNaLFNBQVM7QUFBQSxVQUNULFlBQVk7QUFBQSxVQUNaLFNBQVM7QUFBQSxRQUNYO0FBQUEsUUFDQSxRQUFRO0FBQUEsVUFDTixPQUFPO0FBQUEsUUFDVDtBQUFBLFFBQ0EsUUFBUTtBQUFBLFVBQ04sUUFBUTtBQUFBLFVBQ1IsS0FBSztBQUFBLFVBQ0wsT0FBTztBQUFBLFFBQ1Q7QUFBQSxNQUNGO0FBQUEsTUFDQSxLQUFLO0FBQUEsUUFDSCxLQUFLO0FBQUEsVUFDSCxRQUFRO0FBQUEsUUFDVjtBQUFBLE1BQ0Y7QUFBQSxNQUNBLE1BQU07QUFBQSxRQUNKLFVBQVU7QUFBQSxVQUNSLE1BQU07QUFBQSxVQUNOLFNBQVM7QUFBQSxRQUNYO0FBQUEsUUFDQSxLQUFLO0FBQUEsVUFDSCxRQUFRO0FBQUEsUUFDVjtBQUFBLFFBQ0EsUUFBUTtBQUFBLFVBQ04sT0FBTztBQUFBLFFBQ1Q7QUFBQSxRQUNBLFFBQVE7QUFBQSxVQUNOLFFBQVE7QUFBQSxVQUNSLEtBQUs7QUFBQSxVQUNMLE9BQU87QUFBQSxRQUNUO0FBQUEsTUFDRjtBQUFBLE1BQ0EsTUFBTTtBQUFBLFFBQ0osS0FBSztBQUFBLFVBQ0gsSUFBSTtBQUFBLFFBQ047QUFBQSxNQUNGO0FBQUEsSUFDRjtBQUFBLEVBQ0Y7QUFBQSxFQUVBLE9BQU8sSUFBSSxNQUE4QjtBQUN2QyxVQUFNLGNBQXNCLFFBQVEsSUFBSSxTQUFTO0FBQ2pELFVBQU0sbUJBQXVCLGFBQUFBLFNBQU0sS0FBSyxPQUFPLEVBQUUsT0FBTyxLQUFLLE9BQU8sRUFBRSxXQUFXLEdBQUcsRUFBQyxZQUFXLENBQUM7QUFDakcsZUFBTyxXQUFBQyxTQUFJLGNBQWMsSUFBSTtBQUFBLEVBQy9CO0FBQ0Y7IiwKICAibmFtZXMiOiBbIm1lcmdlIiwgImdldCJdCn0K
package/dist/index.js ADDED
@@ -0,0 +1,66 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var index_exports = {};
20
+ __export(index_exports, {
21
+ GraphQLBoolean: () => import_graphql.GraphQLBoolean,
22
+ GraphQLFloat: () => import_graphql.GraphQLFloat,
23
+ GraphQLID: () => import_graphql.GraphQLID,
24
+ GraphQLInt: () => import_graphql.GraphQLInt,
25
+ GraphQLList: () => import_graphql.GraphQLList,
26
+ GraphQLNonNull: () => import_graphql.GraphQLNonNull,
27
+ GraphQLObjectType: () => import_graphql.GraphQLObjectType,
28
+ GraphQLString: () => import_graphql.GraphQLString,
29
+ graphql: () => import_graphql.graphql,
30
+ graphqlSync: () => import_graphql.graphqlSync,
31
+ schemaComposer: () => import_graphql_compose.schemaComposer
32
+ });
33
+ module.exports = __toCommonJS(index_exports);
34
+ var import_graphql = require("graphql");
35
+ var import_graphql_compose = require("graphql-compose");
36
+ __reExport(index_exports, require("./actions"), module.exports);
37
+ __reExport(index_exports, require("./lambdas/authorizer"), module.exports);
38
+ __reExport(index_exports, require("./lambdas/connection"), module.exports);
39
+ __reExport(index_exports, require("./mutations"), module.exports);
40
+ __reExport(index_exports, require("./objectTypes"), module.exports);
41
+ __reExport(index_exports, require("./queries"), module.exports);
42
+ __reExport(index_exports, require("./utils"), module.exports);
43
+ __reExport(index_exports, require("./types"), module.exports);
44
+ // Annotate the CommonJS export names for ESM import in node:
45
+ 0 && (module.exports = {
46
+ GraphQLBoolean,
47
+ GraphQLFloat,
48
+ GraphQLID,
49
+ GraphQLInt,
50
+ GraphQLList,
51
+ GraphQLNonNull,
52
+ GraphQLObjectType,
53
+ GraphQLString,
54
+ graphql,
55
+ graphqlSync,
56
+ schemaComposer,
57
+ ...require("./actions"),
58
+ ...require("./lambdas/authorizer"),
59
+ ...require("./lambdas/connection"),
60
+ ...require("./mutations"),
61
+ ...require("./objectTypes"),
62
+ ...require("./queries"),
63
+ ...require("./utils"),
64
+ ...require("./types")
65
+ });
66
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuZXhwb3J0IHtcbiAgZ3JhcGhxbCxcbiAgZ3JhcGhxbFN5bmMsXG4gIEdyYXBoUUxCb29sZWFuLFxuICBHcmFwaFFMRmxvYXQsXG4gIEdyYXBoUUxJRCxcbiAgR3JhcGhRTEludCxcbiAgR3JhcGhRTExpc3QsXG4gIEdyYXBoUUxPYmplY3RUeXBlLFxuICBHcmFwaFFMTm9uTnVsbCxcbiAgR3JhcGhRTFN0cmluZ1xufSBmcm9tICdncmFwaHFsJztcbmV4cG9ydCB7c2NoZW1hQ29tcG9zZXJ9IGZyb20gJ2dyYXBocWwtY29tcG9zZSc7XG5cbmV4cG9ydCB0eXBlIHtJbnB1dFR5cGVDb21wb3NlciwgT2JqZWN0VHlwZUNvbXBvc2VyfSBmcm9tICdncmFwaHFsLWNvbXBvc2UnO1xuZXhwb3J0IHR5cGUge0V4ZWN1dGlvblJlc3VsdH0gZnJvbSAnZ3JhcGhxbCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL2xhbWJkYXMvYXV0aG9yaXplcic7XG5leHBvcnQgKiBmcm9tICcuL2xhbWJkYXMvY29ubmVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL211dGF0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL29iamVjdFR5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vcXVlcmllcyc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnOyJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBLHFCQVdPO0FBQ1AsNkJBQTZCO0FBSzdCLDBCQUFjLHNCQXJCZDtBQXNCQSwwQkFBYyxpQ0F0QmQ7QUF1QkEsMEJBQWMsaUNBdkJkO0FBd0JBLDBCQUFjLHdCQXhCZDtBQXlCQSwwQkFBYywwQkF6QmQ7QUEwQkEsMEJBQWMsc0JBMUJkO0FBMkJBLDBCQUFjLG9CQTNCZDtBQTRCQSwwQkFBYyxvQkE1QmQ7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -0,0 +1,132 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var websockets_exports = {};
19
+ __export(websockets_exports, {
20
+ addConnection: () => addConnection,
21
+ getConnectionByConvo: () => getConnectionByConvo,
22
+ getConnectionById: () => getConnectionById,
23
+ getConnectionByUserId: () => getConnectionByUserId,
24
+ removeConnection: () => removeConnection
25
+ });
26
+ module.exports = __toCommonJS(websockets_exports);
27
+ var import_utils = require("@nlabs/utils");
28
+ var import_arangojs = require("arangojs");
29
+ var import_arangodbUtils = require("../../utils/arangodbUtils");
30
+ var import_session = require("../../utils/session");
31
+ const { ARANGODB_DATABASE: database } = process.env;
32
+ const addConnection = async (connectionId, token) => {
33
+ const formatConnId = (0, import_utils.parseString)(connectionId, 32);
34
+ const { userId } = (0, import_session.getSession)(token);
35
+ if (!userId) {
36
+ return {
37
+ _key: "",
38
+ socketId: "",
39
+ userId: ""
40
+ };
41
+ }
42
+ try {
43
+ const db = (0, import_arangodbUtils.useDb)(database);
44
+ const update = {
45
+ connectionId: formatConnId,
46
+ modified: Date.now()
47
+ };
48
+ const insert = {
49
+ ...update,
50
+ _key: (0, import_utils.createHash)(`connection-${formatConnId}`),
51
+ userId
52
+ };
53
+ const aqlQry = import_arangojs.aql`UPSERT {userId: ${insert.userId}}
54
+ INSERT ${insert}
55
+ UPDATE ${update}
56
+ IN connections RETURN NEW`;
57
+ return db.query(aqlQry).then((cursor) => cursor.next()).catch((error) => {
58
+ throw error;
59
+ });
60
+ } catch (error) {
61
+ console.log("parseContext::error", error);
62
+ throw new Error("Unauthorized Context");
63
+ }
64
+ };
65
+ const getConnectionByUserId = (userId) => {
66
+ const formatUserId = (0, import_utils.parseId)(userId);
67
+ const db = (0, import_arangodbUtils.useDb)(database);
68
+ const aqlQry = import_arangojs.aql`FOR c IN connections
69
+ FILTER c.userId == ${formatUserId}
70
+ LIMIT 1
71
+ RETURN c`;
72
+ return db.query(aqlQry).then((cursor) => cursor.next()).catch((error) => {
73
+ throw error;
74
+ });
75
+ };
76
+ const getConnectionById = (socketId) => {
77
+ const formatSocketId = (0, import_utils.parseString)(socketId, 32);
78
+ const db = (0, import_arangodbUtils.useDb)(database);
79
+ const aqlQry = import_arangojs.aql`FOR c IN connections
80
+ FILTER c.connectionId == ${formatSocketId}
81
+ LET user = FIRST(
82
+ FOR u IN users
83
+ FILTER u.userId == c.userId
84
+ LIMIT 1
85
+ RETURN u;
86
+ )
87
+ LIMIT 1
88
+ RETURN MERGE(c, {user:user}`;
89
+ return db.query(aqlQry).then((cursor) => cursor.next()).catch((error) => {
90
+ throw error;
91
+ });
92
+ };
93
+ const getConnectionByConvo = (context, convoId) => {
94
+ const { session: { userId: sessionId } } = context;
95
+ const sessionDocId = `users/${(0, import_utils.parseId)(sessionId)}`;
96
+ const convoDocId = `conversations/${(0, import_utils.parseId)(convoId)}`;
97
+ const db = (0, import_arangodbUtils.useDb)(database);
98
+ const aqlQry = import_arangojs.aql`FOR c, e IN 1..1 OUTBOUND ${sessionDocId} hasConversation
99
+ FILTER c._id == ${convoDocId}
100
+ LIMIT 1
101
+ LET u = (
102
+ FOR inUser, inEdge IN 1..1 INBOUND ${convoDocId} hasConversation
103
+ FOR n IN connections
104
+ FILTER inUser.userId == n.userId
105
+ RETURN n.connectionId
106
+ )
107
+ RETURN u`;
108
+ return db.query(aqlQry).then((cursor) => cursor.all()).catch((error) => {
109
+ throw error;
110
+ });
111
+ };
112
+ const removeConnection = (connectionId) => {
113
+ const formatConnId = (0, import_utils.parseString)(connectionId, 32);
114
+ const db = (0, import_arangodbUtils.useDb)(database);
115
+ const aqlQry = import_arangojs.aql`FOR c IN connections
116
+ FILTER c.connectionId == ${formatConnId}
117
+ LIMIT 1
118
+ REMOVE c IN connections
119
+ RETURN OLD`;
120
+ return db.query(aqlQry).then((cursor) => cursor.next()).catch((error) => {
121
+ throw error;
122
+ });
123
+ };
124
+ // Annotate the CommonJS export names for ESM import in node:
125
+ 0 && (module.exports = {
126
+ addConnection,
127
+ getConnectionByConvo,
128
+ getConnectionById,
129
+ getConnectionByUserId,
130
+ removeConnection
131
+ });
132
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2xhbWJkYXMvYWN0aW9ucy93ZWJzb2NrZXRzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAyMS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHtjcmVhdGVIYXNoLCBwYXJzZUlkLCBwYXJzZVN0cmluZ30gZnJvbSAnQG5sYWJzL3V0aWxzJztcbmltcG9ydCB7YXFsLCBEYXRhYmFzZX0gZnJvbSAnYXJhbmdvanMnO1xuaW1wb3J0IHtBcWxRdWVyeX0gZnJvbSAnYXJhbmdvanMvYXFsJztcblxuaW1wb3J0IHtBcGlDb250ZXh0fSBmcm9tICcuLi8uLi90eXBlcy9hdXRoJztcbmltcG9ydCB7V2Vic29ja2V0Q29ubmVjdGlvbn0gZnJvbSAnLi4vLi4vdHlwZXMvd2Vic29ja2V0cyc7XG5pbXBvcnQge3VzZURifSBmcm9tICcuLi8uLi91dGlscy9hcmFuZ29kYlV0aWxzJztcbmltcG9ydCB7Z2V0U2Vzc2lvbn0gZnJvbSAnLi4vLi4vdXRpbHMvc2Vzc2lvbic7XG5cbmNvbnN0IHtBUkFOR09EQl9EQVRBQkFTRTogZGF0YWJhc2V9ID0gcHJvY2Vzcy5lbnY7XG5cbmV4cG9ydCBjb25zdCBhZGRDb25uZWN0aW9uID0gYXN5bmMgKGNvbm5lY3Rpb25JZDogc3RyaW5nLCB0b2tlbjogc3RyaW5nKTogUHJvbWlzZTxXZWJzb2NrZXRDb25uZWN0aW9uPiA9PiB7XG4gIC8vIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2RlbGV0ZSc7XG4gIGNvbnN0IGZvcm1hdENvbm5JZDogc3RyaW5nID0gcGFyc2VTdHJpbmcoY29ubmVjdGlvbklkLCAzMik7XG5cbiAgLy8gVmVyaWZpZXMgdG9rZW5cbiAgY29uc3Qge3VzZXJJZH0gPSBnZXRTZXNzaW9uKHRva2VuKTtcblxuICBpZighdXNlcklkKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIF9rZXk6ICcnLFxuICAgICAgc29ja2V0SWQ6ICcnLFxuICAgICAgdXNlcklkOiAnJ1xuICAgIH07XG4gIH1cblxuICB0cnkge1xuICAgIGNvbnN0IGRiOiBEYXRhYmFzZSA9IHVzZURiKGRhdGFiYXNlKTtcbiAgICBjb25zdCB1cGRhdGUgPSB7XG4gICAgICBjb25uZWN0aW9uSWQ6IGZvcm1hdENvbm5JZCxcbiAgICAgIG1vZGlmaWVkOiBEYXRlLm5vdygpXG4gICAgfTtcbiAgICBjb25zdCBpbnNlcnQgPSB7XG4gICAgICAuLi51cGRhdGUsXG4gICAgICBfa2V5OiBjcmVhdGVIYXNoKGBjb25uZWN0aW9uLSR7Zm9ybWF0Q29ubklkfWApLFxuICAgICAgdXNlcklkXG4gICAgfTtcbiAgICBjb25zdCBhcWxRcnk6IEFxbFF1ZXJ5ID0gYXFsYFVQU0VSVCB7dXNlcklkOiAke2luc2VydC51c2VySWR9fVxuICAgICAgSU5TRVJUICR7aW5zZXJ0fVxuICAgICAgVVBEQVRFICR7dXBkYXRlfVxuICAgICAgSU4gY29ubmVjdGlvbnMgUkVUVVJOIE5FV2A7XG5cbiAgICByZXR1cm4gZGIucXVlcnkoYXFsUXJ5KVxuICAgICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICAgIHRocm93IGVycm9yO1xuICAgICAgfSk7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICBjb25zb2xlLmxvZygncGFyc2VDb250ZXh0OjplcnJvcicsIGVycm9yKTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYXV0aG9yaXplZCBDb250ZXh0Jyk7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDb25uZWN0aW9uQnlVc2VySWQgPSAodXNlcklkOiBzdHJpbmcpOiBQcm9taXNlPFdlYnNvY2tldENvbm5lY3Rpb24+ID0+IHtcbiAgY29uc3QgZm9ybWF0VXNlcklkOiBzdHJpbmcgPSBwYXJzZUlkKHVzZXJJZCk7XG4gIGNvbnN0IGRiOiBEYXRhYmFzZSA9IHVzZURiKGRhdGFiYXNlKTtcbiAgY29uc3QgYXFsUXJ5ID0gYXFsYEZPUiBjIElOIGNvbm5lY3Rpb25zXG4gICAgRklMVEVSIGMudXNlcklkID09ICR7Zm9ybWF0VXNlcklkfVxuICAgIExJTUlUIDFcbiAgICBSRVRVUk4gY2A7XG5cbiAgcmV0dXJuIGRiLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDb25uZWN0aW9uQnlJZCA9IChzb2NrZXRJZDogc3RyaW5nKTogUHJvbWlzZTxXZWJzb2NrZXRDb25uZWN0aW9uPiA9PiB7XG4gIGNvbnN0IGZvcm1hdFNvY2tldElkOiBzdHJpbmcgPSBwYXJzZVN0cmluZyhzb2NrZXRJZCwgMzIpO1xuICBjb25zdCBkYjogRGF0YWJhc2UgPSB1c2VEYihkYXRhYmFzZSk7XG4gIGNvbnN0IGFxbFFyeSA9IGFxbGBGT1IgYyBJTiBjb25uZWN0aW9uc1xuICAgIEZJTFRFUiBjLmNvbm5lY3Rpb25JZCA9PSAke2Zvcm1hdFNvY2tldElkfVxuICAgIExFVCB1c2VyID0gRklSU1QoXG4gICAgICBGT1IgdSBJTiB1c2Vyc1xuICAgICAgRklMVEVSIHUudXNlcklkID09IGMudXNlcklkXG4gICAgICBMSU1JVCAxXG4gICAgICBSRVRVUk4gdTtcbiAgICApXG4gICAgTElNSVQgMVxuICAgIFJFVFVSTiBNRVJHRShjLCB7dXNlcjp1c2VyfWA7XG5cbiAgcmV0dXJuIGRiLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDb25uZWN0aW9uQnlDb252byA9IChjb250ZXh0OiBBcGlDb250ZXh0LCBjb252b0lkOiBzdHJpbmcpOiBQcm9taXNlPFdlYnNvY2tldENvbm5lY3Rpb25bXT4gPT4ge1xuICBjb25zdCB7c2Vzc2lvbjoge3VzZXJJZDogc2Vzc2lvbklkfX0gPSBjb250ZXh0O1xuICBjb25zdCBzZXNzaW9uRG9jSWQ6IHN0cmluZyA9IGB1c2Vycy8ke3BhcnNlSWQoc2Vzc2lvbklkKX1gO1xuICBjb25zdCBjb252b0RvY0lkOiBzdHJpbmcgPSBgY29udmVyc2F0aW9ucy8ke3BhcnNlSWQoY29udm9JZCl9YDtcbiAgY29uc3QgZGI6IERhdGFiYXNlID0gdXNlRGIoZGF0YWJhc2UpO1xuICBjb25zdCBhcWxRcnkgPSBhcWxgRk9SIGMsIGUgSU4gMS4uMSBPVVRCT1VORCAke3Nlc3Npb25Eb2NJZH0gaGFzQ29udmVyc2F0aW9uXG4gIEZJTFRFUiBjLl9pZCA9PSAke2NvbnZvRG9jSWR9XG4gIExJTUlUIDFcbiAgTEVUIHUgPSAoXG4gICAgRk9SIGluVXNlciwgaW5FZGdlIElOIDEuLjEgSU5CT1VORCAke2NvbnZvRG9jSWR9IGhhc0NvbnZlcnNhdGlvblxuICAgIEZPUiBuIElOIGNvbm5lY3Rpb25zXG4gICAgRklMVEVSIGluVXNlci51c2VySWQgPT0gbi51c2VySWRcbiAgICBSRVRVUk4gbi5jb25uZWN0aW9uSWRcbiAgKVxuICBSRVRVUk4gdWA7XG5cbiAgcmV0dXJuIGRiLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IHJlbW92ZUNvbm5lY3Rpb24gPSAoY29ubmVjdGlvbklkOiBzdHJpbmcpOiBQcm9taXNlPFdlYnNvY2tldENvbm5lY3Rpb24+ID0+IHtcbiAgLy8gY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnZGVsZXRlJztcbiAgY29uc3QgZm9ybWF0Q29ubklkOiBzdHJpbmcgPSBwYXJzZVN0cmluZyhjb25uZWN0aW9uSWQsIDMyKTtcbiAgY29uc3QgZGI6IERhdGFiYXNlID0gdXNlRGIoZGF0YWJhc2UpO1xuICBjb25zdCBhcWxRcnkgPSBhcWxgRk9SIGMgSU4gY29ubmVjdGlvbnNcbiAgICAgIEZJTFRFUiBjLmNvbm5lY3Rpb25JZCA9PSAke2Zvcm1hdENvbm5JZH1cbiAgICAgIExJTUlUIDFcbiAgICAgIFJFTU9WRSBjIElOIGNvbm5lY3Rpb25zXG4gICAgICBSRVRVUk4gT0xEYDtcblxuICByZXR1cm4gZGIucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0pO1xufTtcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUEsbUJBQStDO0FBQy9DLHNCQUE0QjtBQUs1QiwyQkFBb0I7QUFDcEIscUJBQXlCO0FBRXpCLE1BQU0sRUFBQyxtQkFBbUIsU0FBUSxJQUFJLFFBQVE7QUFFdkMsTUFBTSxnQkFBZ0IsT0FBTyxjQUFzQixVQUFnRDtBQUV4RyxRQUFNLG1CQUF1QiwwQkFBWSxjQUFjLEVBQUU7QUFHekQsUUFBTSxFQUFDLE9BQU0sUUFBSSwyQkFBVyxLQUFLO0FBRWpDLE1BQUcsQ0FBQyxRQUFRO0FBQ1YsV0FBTztBQUFBLE1BQ0wsTUFBTTtBQUFBLE1BQ04sVUFBVTtBQUFBLE1BQ1YsUUFBUTtBQUFBLElBQ1Y7QUFBQSxFQUNGO0FBRUEsTUFBSTtBQUNGLFVBQU0sU0FBZSw0QkFBTSxRQUFRO0FBQ25DLFVBQU0sU0FBUztBQUFBLE1BQ2IsY0FBYztBQUFBLE1BQ2QsVUFBVSxLQUFLLElBQUk7QUFBQSxJQUNyQjtBQUNBLFVBQU0sU0FBUztBQUFBLE1BQ2IsR0FBRztBQUFBLE1BQ0gsVUFBTSx5QkFBVyxjQUFjLFlBQVksRUFBRTtBQUFBLE1BQzdDO0FBQUEsSUFDRjtBQUNBLFVBQU0sU0FBbUIsc0NBQXNCLE9BQU8sTUFBTTtBQUFBLGVBQ2pELE1BQU07QUFBQSxlQUNOLE1BQU07QUFBQTtBQUdqQixXQUFPLEdBQUcsTUFBTSxNQUFNLEVBQ25CLEtBQUssQ0FBQyxXQUFXLE9BQU8sS0FBSyxDQUFDLEVBQzlCLE1BQU0sQ0FBQyxVQUFpQjtBQUN2QixZQUFNO0FBQUEsSUFDUixDQUFDO0FBQUEsRUFDTCxTQUFRLE9BQU87QUFDYixZQUFRLElBQUksdUJBQXVCLEtBQUs7QUFDeEMsVUFBTSxJQUFJLE1BQU0sc0JBQXNCO0FBQUEsRUFDeEM7QUFDRjtBQUVPLE1BQU0sd0JBQXdCLENBQUMsV0FBaUQ7QUFDckYsUUFBTSxtQkFBdUIsc0JBQVEsTUFBTTtBQUMzQyxRQUFNLFNBQWUsNEJBQU0sUUFBUTtBQUNuQyxRQUFNLFNBQVM7QUFBQSx5QkFDUSxZQUFZO0FBQUE7QUFBQTtBQUluQyxTQUFPLEdBQUcsTUFBTSxNQUFNLEVBQ25CLEtBQUssQ0FBQyxXQUFXLE9BQU8sS0FBSyxDQUFDLEVBQzlCLE1BQU0sQ0FBQyxVQUFpQjtBQUN2QixVQUFNO0FBQUEsRUFDUixDQUFDO0FBQ0w7QUFFTyxNQUFNLG9CQUFvQixDQUFDLGFBQW1EO0FBQ25GLFFBQU0scUJBQXlCLDBCQUFZLFVBQVUsRUFBRTtBQUN2RCxRQUFNLFNBQWUsNEJBQU0sUUFBUTtBQUNuQyxRQUFNLFNBQVM7QUFBQSwrQkFDYyxjQUFjO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVUzQyxTQUFPLEdBQUcsTUFBTSxNQUFNLEVBQ25CLEtBQUssQ0FBQyxXQUFXLE9BQU8sS0FBSyxDQUFDLEVBQzlCLE1BQU0sQ0FBQyxVQUFpQjtBQUN2QixVQUFNO0FBQUEsRUFDUixDQUFDO0FBQ0w7QUFFTyxNQUFNLHVCQUF1QixDQUFDLFNBQXFCLFlBQW9EO0FBQzVHLFFBQU0sRUFBQyxTQUFTLEVBQUMsUUFBUSxVQUFTLEVBQUMsSUFBSTtBQUN2QyxRQUFNLGVBQXVCLGFBQVMsc0JBQVEsU0FBUyxDQUFDO0FBQ3hELFFBQU0sYUFBcUIscUJBQWlCLHNCQUFRLE9BQU8sQ0FBQztBQUM1RCxRQUFNLFNBQWUsNEJBQU0sUUFBUTtBQUNuQyxRQUFNLFNBQVMsZ0RBQWdDLFlBQVk7QUFBQSxvQkFDekMsVUFBVTtBQUFBO0FBQUE7QUFBQSx5Q0FHVyxVQUFVO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9qRCxTQUFPLEdBQUcsTUFBTSxNQUFNLEVBQ25CLEtBQUssQ0FBQyxXQUFXLE9BQU8sSUFBSSxDQUFDLEVBQzdCLE1BQU0sQ0FBQyxVQUFpQjtBQUN2QixVQUFNO0FBQUEsRUFDUixDQUFDO0FBQ0w7QUFFTyxNQUFNLG1CQUFtQixDQUFDLGlCQUF1RDtBQUV0RixRQUFNLG1CQUF1QiwwQkFBWSxjQUFjLEVBQUU7QUFDekQsUUFBTSxTQUFlLDRCQUFNLFFBQVE7QUFDbkMsUUFBTSxTQUFTO0FBQUEsaUNBQ2dCLFlBQVk7QUFBQTtBQUFBO0FBQUE7QUFLM0MsU0FBTyxHQUFHLE1BQU0sTUFBTSxFQUNuQixLQUFLLENBQUMsV0FBVyxPQUFPLEtBQUssQ0FBQyxFQUM5QixNQUFNLENBQUMsVUFBaUI7QUFDdkIsVUFBTTtBQUFBLEVBQ1IsQ0FBQztBQUNMOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,67 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var authorizer_exports = {};
19
+ __export(authorizer_exports, {
20
+ authorizer: () => authorizer,
21
+ generateAuthResponse: () => generateAuthResponse,
22
+ generatePolicyDocument: () => generatePolicyDocument
23
+ });
24
+ module.exports = __toCommonJS(authorizer_exports);
25
+ var import__ = require("..");
26
+ const generatePolicyDocument = (effect, methodArn) => {
27
+ if (!effect || !methodArn) {
28
+ return null;
29
+ }
30
+ const policyDocument = {
31
+ Version: "2012-10-17",
32
+ Statement: [
33
+ {
34
+ Action: "execute-api:Invoke",
35
+ Effect: effect,
36
+ Resource: methodArn
37
+ }
38
+ ]
39
+ };
40
+ return policyDocument;
41
+ };
42
+ const generateAuthResponse = (principalId, effect, methodArn) => {
43
+ const policyDocument = generatePolicyDocument(effect, methodArn);
44
+ return {
45
+ principalId,
46
+ policyDocument
47
+ };
48
+ };
49
+ const authorizer = (event, context, callback) => {
50
+ const { authorizationToken = "", methodArn } = event;
51
+ const token = authorizationToken.replace(/bearer/i, "").trim();
52
+ if (!token || !methodArn) {
53
+ return callback(null, "Unauthorized");
54
+ }
55
+ const session = (0, import__.getSession)(token);
56
+ if (session?.userId) {
57
+ return callback(null, generateAuthResponse(session.userId, "Allow", methodArn));
58
+ }
59
+ return callback(null, generateAuthResponse(session?.userId, "Deny", methodArn));
60
+ };
61
+ // Annotate the CommonJS export names for ESM import in node:
62
+ 0 && (module.exports = {
63
+ authorizer,
64
+ generateAuthResponse,
65
+ generatePolicyDocument
66
+ });
67
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2xhbWJkYXMvYXV0aG9yaXplci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjEtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7Z2V0U2Vzc2lvbn0gZnJvbSAnLi4nO1xuXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVQb2xpY3lEb2N1bWVudCA9IChlZmZlY3QsIG1ldGhvZEFybikgPT4ge1xuICBpZighZWZmZWN0IHx8ICFtZXRob2RBcm4pIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IHBvbGljeURvY3VtZW50ID0ge1xuICAgIFZlcnNpb246ICcyMDEyLTEwLTE3JyxcbiAgICBTdGF0ZW1lbnQ6IFtcbiAgICAgIHtcbiAgICAgICAgQWN0aW9uOiAnZXhlY3V0ZS1hcGk6SW52b2tlJyxcbiAgICAgICAgRWZmZWN0OiBlZmZlY3QsXG4gICAgICAgIFJlc291cmNlOiBtZXRob2RBcm5cbiAgICAgIH1cbiAgICBdXG4gIH07XG5cbiAgcmV0dXJuIHBvbGljeURvY3VtZW50O1xufTtcblxuZXhwb3J0IGNvbnN0IGdlbmVyYXRlQXV0aFJlc3BvbnNlID0gKHByaW5jaXBhbElkLCBlZmZlY3QsIG1ldGhvZEFybikgPT4ge1xuICBjb25zdCBwb2xpY3lEb2N1bWVudCA9IGdlbmVyYXRlUG9saWN5RG9jdW1lbnQoZWZmZWN0LCBtZXRob2RBcm4pO1xuXG4gIHJldHVybiB7XG4gICAgcHJpbmNpcGFsSWQsXG4gICAgcG9saWN5RG9jdW1lbnRcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBhdXRob3JpemVyID0gKGV2ZW50LCBjb250ZXh0LCBjYWxsYmFjaykgPT4ge1xuICBjb25zdCB7YXV0aG9yaXphdGlvblRva2VuID0gJycsIG1ldGhvZEFybn0gPSBldmVudDtcbiAgY29uc3QgdG9rZW4gPSBhdXRob3JpemF0aW9uVG9rZW4ucmVwbGFjZSgvYmVhcmVyL2ksICcnKS50cmltKCk7XG5cbiAgaWYoIXRva2VuIHx8ICFtZXRob2RBcm4pIHtcbiAgICByZXR1cm4gY2FsbGJhY2sobnVsbCwgJ1VuYXV0aG9yaXplZCcpO1xuICB9XG5cbiAgY29uc3Qgc2Vzc2lvbiA9IGdldFNlc3Npb24odG9rZW4pO1xuXG4gIGlmKHNlc3Npb24/LnVzZXJJZCkge1xuICAgIHJldHVybiBjYWxsYmFjayhudWxsLCBnZW5lcmF0ZUF1dGhSZXNwb25zZShzZXNzaW9uLnVzZXJJZCwgJ0FsbG93JywgbWV0aG9kQXJuKSk7XG4gIH1cblxuICByZXR1cm4gY2FsbGJhY2sobnVsbCwgZ2VuZXJhdGVBdXRoUmVzcG9uc2Uoc2Vzc2lvbj8udXNlcklkLCAnRGVueScsIG1ldGhvZEFybikpO1xufTtcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQSxlQUF5QjtBQUVsQixNQUFNLHlCQUF5QixDQUFDLFFBQVEsY0FBYztBQUMzRCxNQUFHLENBQUMsVUFBVSxDQUFDLFdBQVc7QUFDeEIsV0FBTztBQUFBLEVBQ1Q7QUFFQSxRQUFNLGlCQUFpQjtBQUFBLElBQ3JCLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxNQUNUO0FBQUEsUUFDRSxRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixVQUFVO0FBQUEsTUFDWjtBQUFBLElBQ0Y7QUFBQSxFQUNGO0FBRUEsU0FBTztBQUNUO0FBRU8sTUFBTSx1QkFBdUIsQ0FBQyxhQUFhLFFBQVEsY0FBYztBQUN0RSxRQUFNLGlCQUFpQix1QkFBdUIsUUFBUSxTQUFTO0FBRS9ELFNBQU87QUFBQSxJQUNMO0FBQUEsSUFDQTtBQUFBLEVBQ0Y7QUFDRjtBQUVPLE1BQU0sYUFBYSxDQUFDLE9BQU8sU0FBUyxhQUFhO0FBQ3RELFFBQU0sRUFBQyxxQkFBcUIsSUFBSSxVQUFTLElBQUk7QUFDN0MsUUFBTSxRQUFRLG1CQUFtQixRQUFRLFdBQVcsRUFBRSxFQUFFLEtBQUs7QUFFN0QsTUFBRyxDQUFDLFNBQVMsQ0FBQyxXQUFXO0FBQ3ZCLFdBQU8sU0FBUyxNQUFNLGNBQWM7QUFBQSxFQUN0QztBQUVBLFFBQU0sY0FBVSxxQkFBVyxLQUFLO0FBRWhDLE1BQUcsU0FBUyxRQUFRO0FBQ2xCLFdBQU8sU0FBUyxNQUFNLHFCQUFxQixRQUFRLFFBQVEsU0FBUyxTQUFTLENBQUM7QUFBQSxFQUNoRjtBQUVBLFNBQU8sU0FBUyxNQUFNLHFCQUFxQixTQUFTLFFBQVEsUUFBUSxTQUFTLENBQUM7QUFDaEY7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -0,0 +1,91 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var connection_exports = {};
19
+ __export(connection_exports, {
20
+ connectHandler: () => connectHandler,
21
+ defaultHandler: () => defaultHandler,
22
+ messageHandler: () => messageHandler
23
+ });
24
+ module.exports = __toCommonJS(connection_exports);
25
+ var import_conversations = require("../actions/conversations");
26
+ var import_arangodbUtils = require("../utils/arangodbUtils");
27
+ var import_websockets2 = require("./actions/websockets");
28
+ var import_message = require("./utils/message");
29
+ var import_websocket = require("./utils/websocket");
30
+ const successStatus = { statusCode: 200 };
31
+ const errorStatus = { statusCode: 500 };
32
+ const { ARANGODB_DATABASE: databaseName } = process.env;
33
+ const getBasicContext = (userId) => ({ database: (0, import_arangodbUtils.useDb)(databaseName), session: { userId } });
34
+ const connectHandler = async (event) => {
35
+ import_websocket.wsClient.setupClient(event);
36
+ const { queryStringParameters = {}, requestContext } = event;
37
+ const { connectionId, eventType } = requestContext;
38
+ const { token } = queryStringParameters;
39
+ try {
40
+ if (eventType === "CONNECT") {
41
+ await (0, import_websockets2.addConnection)(connectionId, token);
42
+ return successStatus;
43
+ } else if (eventType === "DISCONNECT") {
44
+ await (0, import_websockets2.removeConnection)(connectionId);
45
+ return successStatus;
46
+ }
47
+ return { ...errorStatus, message: "Unknown type" };
48
+ } catch (error) {
49
+ return { ...errorStatus, message: error.message };
50
+ }
51
+ };
52
+ const defaultHandler = async (event) => {
53
+ await import_websocket.wsClient.send(event, {
54
+ event: "error",
55
+ message: "invalid action type"
56
+ });
57
+ return successStatus;
58
+ };
59
+ const messageHandler = async (event) => {
60
+ const { body, requestContext } = event;
61
+ const { socketId } = requestContext;
62
+ const message = JSON.parse(body).data;
63
+ const { conversationId, content } = message;
64
+ const formatContent = (0, import_message.parseMessage)(content);
65
+ const connection = await (0, import_websockets2.getConnectionById)(socketId);
66
+ const { userId } = connection;
67
+ const authContext = getBasicContext(userId);
68
+ const conversation = await (0, import_conversations.getConversation)(authContext, conversationId);
69
+ const { users = [] } = conversation;
70
+ await Promise.all(users.map(async (user) => {
71
+ const { userId: userId2 } = user;
72
+ const connection2 = await (0, import_websockets2.getConnectionByUserId)(userId2);
73
+ if (connection2) {
74
+ const { socketId: socketId2 } = connection2;
75
+ if (socketId2) {
76
+ import_websocket.wsClient.send(socketId2, {
77
+ action: "reaktorMessage",
78
+ data: formatContent
79
+ });
80
+ }
81
+ }
82
+ }));
83
+ return successStatus;
84
+ };
85
+ // Annotate the CommonJS export names for ESM import in node:
86
+ 0 && (module.exports = {
87
+ connectHandler,
88
+ defaultHandler,
89
+ messageHandler
90
+ });
91
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2xhbWJkYXMvY29ubmVjdGlvbi50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjEtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7Z2V0Q29udmVyc2F0aW9ufSBmcm9tICcuLi9hY3Rpb25zL2NvbnZlcnNhdGlvbnMnO1xuaW1wb3J0IHtXZWJzb2NrZXRNZXNzYWdlVHlwZX0gZnJvbSAnLi4vdHlwZXMvd2Vic29ja2V0cyc7XG5pbXBvcnQge3VzZURifSBmcm9tICcuLi91dGlscy9hcmFuZ29kYlV0aWxzJztcbmltcG9ydCB7YWRkQ29ubmVjdGlvbiwgZ2V0Q29ubmVjdGlvbkJ5SWQsIGdldENvbm5lY3Rpb25CeVVzZXJJZCwgcmVtb3ZlQ29ubmVjdGlvbn0gZnJvbSAnLi9hY3Rpb25zL3dlYnNvY2tldHMnO1xuaW1wb3J0IHtwYXJzZU1lc3NhZ2V9IGZyb20gJy4vdXRpbHMvbWVzc2FnZSc7XG5pbXBvcnQge3dzQ2xpZW50fSBmcm9tICcuL3V0aWxzL3dlYnNvY2tldCc7XG5cbmNvbnN0IHN1Y2Nlc3NTdGF0dXMgPSB7c3RhdHVzQ29kZTogMjAwfTtcbmNvbnN0IGVycm9yU3RhdHVzID0ge3N0YXR1c0NvZGU6IDUwMH07XG5jb25zdCB7QVJBTkdPREJfREFUQUJBU0U6IGRhdGFiYXNlTmFtZX0gPSBwcm9jZXNzLmVudjtcbmNvbnN0IGdldEJhc2ljQ29udGV4dCA9ICh1c2VySWQ6IHN0cmluZykgPT4gKHtkYXRhYmFzZTogdXNlRGIoZGF0YWJhc2VOYW1lKSwgc2Vzc2lvbjoge3VzZXJJZH19KTtcblxuZXhwb3J0IGNvbnN0IGNvbm5lY3RIYW5kbGVyID0gYXN5bmMgKGV2ZW50KSA9PiB7XG4gIC8vIFdlIGRvIHRoaXMgc28gZmlyc3QgY29ubmVjdCBFVkVSIHNldHMgdXAgc29tZSBuZWVkZWQgY29uZmlnIHN0YXRlIGluIGRiXG4gIC8vIHRoaXMgZ29lcyBhd2F5IGFmdGVyIENsb3VkRm9ybWF0aW9uIHN1cHBvcnQgaXMgYWRkZWQgZm9yIHdlYiBzb2NrZXRzXG4gIHdzQ2xpZW50LnNldHVwQ2xpZW50KGV2ZW50KTtcbiAgY29uc3Qge3F1ZXJ5U3RyaW5nUGFyYW1ldGVycyA9IHt9LCByZXF1ZXN0Q29udGV4dH0gPSBldmVudDtcbiAgY29uc3Qge2Nvbm5lY3Rpb25JZCwgZXZlbnRUeXBlfSA9IHJlcXVlc3RDb250ZXh0O1xuICBjb25zdCB7dG9rZW59ID0gcXVlcnlTdHJpbmdQYXJhbWV0ZXJzO1xuXG4gIHRyeSB7XG4gICAgaWYoZXZlbnRUeXBlID09PSAnQ09OTkVDVCcpIHtcbiAgICAgIGF3YWl0IGFkZENvbm5lY3Rpb24oY29ubmVjdGlvbklkLCB0b2tlbik7XG4gICAgICByZXR1cm4gc3VjY2Vzc1N0YXR1cztcbiAgICB9IGVsc2UgaWYoZXZlbnRUeXBlID09PSAnRElTQ09OTkVDVCcpIHtcbiAgICAgIGF3YWl0IHJlbW92ZUNvbm5lY3Rpb24oY29ubmVjdGlvbklkKTtcbiAgICAgIHJldHVybiBzdWNjZXNzU3RhdHVzO1xuICAgIH1cblxuICAgIHJldHVybiB7Li4uZXJyb3JTdGF0dXMsIG1lc3NhZ2U6ICdVbmtub3duIHR5cGUnfTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIHJldHVybiB7Li4uZXJyb3JTdGF0dXMsIG1lc3NhZ2U6IGVycm9yLm1lc3NhZ2V9O1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgZGVmYXVsdEhhbmRsZXIgPSBhc3luYyAoZXZlbnQpID0+IHtcbiAgYXdhaXQgd3NDbGllbnQuc2VuZChldmVudCwge1xuICAgIGV2ZW50OiAnZXJyb3InLFxuICAgIG1lc3NhZ2U6ICdpbnZhbGlkIGFjdGlvbiB0eXBlJ1xuICB9KTtcblxuICByZXR1cm4gc3VjY2Vzc1N0YXR1cztcbn07XG5cbmV4cG9ydCBjb25zdCBtZXNzYWdlSGFuZGxlciA9IGFzeW5jIChldmVudCkgPT4ge1xuICBjb25zdCB7Ym9keSwgcmVxdWVzdENvbnRleHR9ID0gZXZlbnQ7XG4gIGNvbnN0IHtzb2NrZXRJZH0gPSByZXF1ZXN0Q29udGV4dDtcbiAgY29uc3QgbWVzc2FnZTogV2Vic29ja2V0TWVzc2FnZVR5cGUgPSBKU09OLnBhcnNlKGJvZHkpLmRhdGE7XG4gIGNvbnN0IHtjb252ZXJzYXRpb25JZCwgY29udGVudH0gPSBtZXNzYWdlO1xuICBjb25zdCBmb3JtYXRDb250ZW50OiBzdHJpbmcgPSBwYXJzZU1lc3NhZ2UoY29udGVudCk7XG5cbiAgLy8gR2V0IGN1cnJlbnQgdXNlciBieSBjb25uZWN0aW9uXG4gIGNvbnN0IGNvbm5lY3Rpb24gPSBhd2FpdCBnZXRDb25uZWN0aW9uQnlJZChzb2NrZXRJZCk7XG4gIGNvbnN0IHt1c2VySWR9ID0gY29ubmVjdGlvbjtcbiAgY29uc3QgYXV0aENvbnRleHQgPSBnZXRCYXNpY0NvbnRleHQodXNlcklkKTtcbiAgY29uc3QgY29udmVyc2F0aW9uID0gYXdhaXQgZ2V0Q29udmVyc2F0aW9uKGF1dGhDb250ZXh0LCBjb252ZXJzYXRpb25JZCk7XG4gIGNvbnN0IHt1c2VycyA9IFtdfSA9IGNvbnZlcnNhdGlvbjtcblxuICBhd2FpdCBQcm9taXNlLmFsbCh1c2Vycy5tYXAoYXN5bmMgKHVzZXIpID0+IHtcbiAgICBjb25zdCB7dXNlcklkfSA9IHVzZXI7XG4gICAgY29uc3QgY29ubmVjdGlvbiA9IGF3YWl0IGdldENvbm5lY3Rpb25CeVVzZXJJZCh1c2VySWQpO1xuXG4gICAgaWYoY29ubmVjdGlvbikge1xuICAgICAgY29uc3Qge3NvY2tldElkfSA9IGNvbm5lY3Rpb247XG5cbiAgICAgIGlmKHNvY2tldElkKSB7XG4gICAgICAgIHdzQ2xpZW50LnNlbmQoc29ja2V0SWQsIHtcbiAgICAgICAgICBhY3Rpb246ICdyZWFrdG9yTWVzc2FnZScsXG4gICAgICAgICAgZGF0YTogZm9ybWF0Q29udGVudFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH0pKTtcblxuICByZXR1cm4gc3VjY2Vzc1N0YXR1cztcbn07XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUEsMkJBQThCO0FBRTlCLDJCQUFvQjtBQUNwQixJQUFBQSxxQkFBd0Y7QUFDeEYscUJBQTJCO0FBQzNCLHVCQUF1QjtBQUV2QixNQUFNLGdCQUFnQixFQUFDLFlBQVksSUFBRztBQUN0QyxNQUFNLGNBQWMsRUFBQyxZQUFZLElBQUc7QUFDcEMsTUFBTSxFQUFDLG1CQUFtQixhQUFZLElBQUksUUFBUTtBQUNsRCxNQUFNLGtCQUFrQixDQUFDLFlBQW9CLEVBQUMsY0FBVSw0QkFBTSxZQUFZLEdBQUcsU0FBUyxFQUFDLE9BQU0sRUFBQztBQUV2RixNQUFNLGlCQUFpQixPQUFPLFVBQVU7QUFHN0MsNEJBQVMsWUFBWSxLQUFLO0FBQzFCLFFBQU0sRUFBQyx3QkFBd0IsQ0FBQyxHQUFHLGVBQWMsSUFBSTtBQUNyRCxRQUFNLEVBQUMsY0FBYyxVQUFTLElBQUk7QUFDbEMsUUFBTSxFQUFDLE1BQUssSUFBSTtBQUVoQixNQUFJO0FBQ0YsUUFBRyxjQUFjLFdBQVc7QUFDMUIsZ0JBQU0sa0NBQWMsY0FBYyxLQUFLO0FBQ3ZDLGFBQU87QUFBQSxJQUNULFdBQVUsY0FBYyxjQUFjO0FBQ3BDLGdCQUFNLHFDQUFpQixZQUFZO0FBQ25DLGFBQU87QUFBQSxJQUNUO0FBRUEsV0FBTyxFQUFDLEdBQUcsYUFBYSxTQUFTLGVBQWM7QUFBQSxFQUNqRCxTQUFRLE9BQU87QUFDYixXQUFPLEVBQUMsR0FBRyxhQUFhLFNBQVMsTUFBTSxRQUFPO0FBQUEsRUFDaEQ7QUFDRjtBQUVPLE1BQU0saUJBQWlCLE9BQU8sVUFBVTtBQUM3QyxRQUFNLDBCQUFTLEtBQUssT0FBTztBQUFBLElBQ3pCLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxFQUNYLENBQUM7QUFFRCxTQUFPO0FBQ1Q7QUFFTyxNQUFNLGlCQUFpQixPQUFPLFVBQVU7QUFDN0MsUUFBTSxFQUFDLE1BQU0sZUFBYyxJQUFJO0FBQy9CLFFBQU0sRUFBQyxTQUFRLElBQUk7QUFDbkIsUUFBTSxVQUFnQyxLQUFLLE1BQU0sSUFBSSxFQUFFO0FBQ3ZELFFBQU0sRUFBQyxnQkFBZ0IsUUFBTyxJQUFJO0FBQ2xDLFFBQU0sb0JBQXdCLDZCQUFhLE9BQU87QUFHbEQsUUFBTSxhQUFhLFVBQU0sc0NBQWtCLFFBQVE7QUFDbkQsUUFBTSxFQUFDLE9BQU0sSUFBSTtBQUNqQixRQUFNLGNBQWMsZ0JBQWdCLE1BQU07QUFDMUMsUUFBTSxlQUFlLFVBQU0sc0NBQWdCLGFBQWEsY0FBYztBQUN0RSxRQUFNLEVBQUMsUUFBUSxDQUFDLEVBQUMsSUFBSTtBQUVyQixRQUFNLFFBQVEsSUFBSSxNQUFNLElBQUksT0FBTyxTQUFTO0FBQzFDLFVBQU0sRUFBQyxRQUFBQyxRQUFNLElBQUk7QUFDakIsVUFBTUMsY0FBYSxVQUFNLDBDQUFzQkQsT0FBTTtBQUVyRCxRQUFHQyxhQUFZO0FBQ2IsWUFBTSxFQUFDLFVBQUFDLFVBQVEsSUFBSUQ7QUFFbkIsVUFBR0MsV0FBVTtBQUNYLGtDQUFTLEtBQUtBLFdBQVU7QUFBQSxVQUN0QixRQUFRO0FBQUEsVUFDUixNQUFNO0FBQUEsUUFDUixDQUFDO0FBQUEsTUFDSDtBQUFBLElBQ0Y7QUFBQSxFQUNGLENBQUMsQ0FBQztBQUVGLFNBQU87QUFDVDsiLAogICJuYW1lcyI6IFsiaW1wb3J0X3dlYnNvY2tldHMiLCAidXNlcklkIiwgImNvbm5lY3Rpb24iLCAic29ja2V0SWQiXQp9Cg==