@nlabs/reaktor 0.10.0 → 0.10.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 (448) hide show
  1. package/.env +1 -0
  2. package/.env.example +1 -0
  3. package/DATABASE_I18N_GUIDE.md +434 -0
  4. package/TEST_UTILITIES_GUIDE.md +360 -0
  5. package/coverage/actions/index.html +21 -36
  6. package/coverage/actions/notifications.ts.html +223 -0
  7. package/coverage/actions/posts.ts.html +2356 -0
  8. package/coverage/adapters/arangoAdapter.ts.html +170 -20
  9. package/coverage/adapters/fileAdapter.ts.html +445 -0
  10. package/coverage/adapters/index.html +72 -42
  11. package/coverage/adapters/postAdapter.ts.html +436 -0
  12. package/coverage/adapters/reaktorAdapter.ts.html +201 -18
  13. package/coverage/adapters/tagAdapter.ts.html +274 -25
  14. package/coverage/adapters/userAdapter.ts.html +829 -0
  15. package/coverage/analyticsUtils.ts.html +286 -0
  16. package/coverage/config.ts.html +766 -0
  17. package/coverage/index.html +77 -77
  18. package/coverage/mocks/group.ts.html +5 -5
  19. package/coverage/mocks/image.ts.html +18 -12
  20. package/coverage/mocks/index.html +37 -7
  21. package/coverage/mocks/post.ts.html +8 -8
  22. package/coverage/mocks/tag.ts.html +2 -2
  23. package/coverage/mocks/user.ts.html +18 -15
  24. package/coverage/testUtils.ts.html +1309 -0
  25. package/coverage/translationQueue.ts.html +592 -0
  26. package/coverage/types/error.types.ts.html +148 -0
  27. package/coverage/types/index.html +2 -2
  28. package/coverage/utils/adapterUtils.ts.html +39 -27
  29. package/coverage/utils/analyticsUtils.ts.html +35 -41
  30. package/coverage/utils/authUtils.ts.html +328 -0
  31. package/coverage/utils/dbI18n.ts.html +280 -0
  32. package/coverage/utils/googleTranslate.ts.html +385 -0
  33. package/coverage/utils/index.html +29 -44
  34. package/coverage/utils/localeUtils.ts.html +193 -0
  35. package/coverage/utils/sessionUtils.ts.html +211 -0
  36. package/coverage/utils/testUtils.ts.html +1309 -0
  37. package/index.js +1 -1
  38. package/lex.config.mjs +34 -0
  39. package/lib/actions/apps.d.ts +4 -4
  40. package/lib/actions/apps.js +17 -239
  41. package/lib/actions/connections.d.ts +2 -1
  42. package/lib/actions/connections.js +6 -89
  43. package/lib/actions/content.d.ts +13 -0
  44. package/lib/actions/content.js +17 -0
  45. package/lib/actions/conversations.d.ts +4 -2
  46. package/lib/actions/conversations.js +19 -336
  47. package/lib/actions/dynamodb.d.ts +4 -0
  48. package/lib/actions/dynamodb.js +2 -150
  49. package/lib/actions/email.d.ts +5 -2
  50. package/lib/actions/email.js +2 -152
  51. package/lib/actions/files.d.ts +3 -3
  52. package/lib/actions/files.js +5 -283
  53. package/lib/actions/groups.d.ts +4 -5
  54. package/lib/actions/groups.js +19 -259
  55. package/lib/actions/images.d.ts +8 -1
  56. package/lib/actions/images.js +31 -700
  57. package/lib/actions/index.d.ts +27 -23
  58. package/lib/actions/index.js +2 -66
  59. package/lib/actions/ios.d.ts +3 -3
  60. package/lib/actions/ios.js +9 -162
  61. package/lib/actions/locations.d.ts +3 -3
  62. package/lib/actions/locations.js +7 -122
  63. package/lib/actions/messages.d.ts +3 -4
  64. package/lib/actions/messages.js +21 -196
  65. package/lib/actions/notifications.d.ts +5 -1
  66. package/lib/actions/notifications.js +2 -59
  67. package/lib/actions/payments.d.ts +3 -1
  68. package/lib/actions/payments.js +11 -464
  69. package/lib/actions/posts.d.ts +7 -4
  70. package/lib/actions/posts.js +75 -527
  71. package/lib/actions/profiles.d.ts +4 -0
  72. package/lib/actions/profiles.js +8 -0
  73. package/lib/actions/reactions.d.ts +3 -1
  74. package/lib/actions/reactions.js +25 -312
  75. package/lib/actions/s3.d.ts +4 -0
  76. package/lib/actions/s3.js +2 -133
  77. package/lib/actions/search.d.ts +2 -2
  78. package/lib/actions/search.js +5 -90
  79. package/lib/actions/sms.d.ts +2 -9
  80. package/lib/actions/sms.js +2 -108
  81. package/lib/actions/statistics.d.ts +2 -1
  82. package/lib/actions/statistics.js +6 -60
  83. package/lib/actions/{subscription.d.ts → subscriptions.d.ts} +2 -2
  84. package/lib/actions/subscriptions.js +12 -0
  85. package/lib/actions/tags.d.ts +3 -3
  86. package/lib/actions/tags.js +19 -287
  87. package/lib/actions/users.d.ts +13 -12
  88. package/lib/actions/users.js +66 -763
  89. package/lib/actions/websockets.d.ts +2 -2
  90. package/lib/actions/websockets.js +14 -158
  91. package/lib/adapters/arangoAdapter.d.ts +7 -1
  92. package/lib/adapters/arangoAdapter.js +2 -46
  93. package/lib/adapters/contentAdapter.d.ts +8 -0
  94. package/lib/adapters/contentAdapter.js +2 -0
  95. package/lib/adapters/fileAdapter.d.ts +8 -2
  96. package/lib/adapters/fileAdapter.js +2 -76
  97. package/lib/adapters/imageAdapter.d.ts +7 -1
  98. package/lib/adapters/imageAdapter.js +2 -40
  99. package/lib/adapters/index.d.ts +9 -0
  100. package/lib/adapters/index.js +2 -0
  101. package/lib/adapters/messageAdapter.d.ts +7 -1
  102. package/lib/adapters/messageAdapter.js +2 -49
  103. package/lib/adapters/postAdapter.d.ts +7 -1
  104. package/lib/adapters/postAdapter.js +2 -70
  105. package/lib/adapters/reaktorAdapter.d.ts +16 -6
  106. package/lib/adapters/reaktorAdapter.js +2 -44
  107. package/lib/adapters/tagAdapter.d.ts +8 -1
  108. package/lib/adapters/tagAdapter.js +2 -50
  109. package/lib/adapters/userAdapter.d.ts +12 -1
  110. package/lib/adapters/userAdapter.js +2 -115
  111. package/lib/config.d.ts +43 -6
  112. package/lib/config.js +2 -125
  113. package/lib/handlers/graphqlHandler.d.ts +4 -0
  114. package/lib/handlers/graphqlHandler.js +2 -0
  115. package/lib/index.d.ts +17 -10
  116. package/lib/index.js +2 -66
  117. package/lib/lambdas/actions/websockets.d.ts +3 -3
  118. package/lib/lambdas/actions/websockets.js +14 -116
  119. package/lib/lambdas/authorizer.js +2 -67
  120. package/lib/lambdas/connection.js +2 -91
  121. package/lib/lambdas/utils/message.js +2 -42
  122. package/lib/lambdas/utils/websocket.js +2 -105
  123. package/lib/mocks/conversation.js +2 -35
  124. package/lib/mocks/file.js +2 -38
  125. package/lib/mocks/group.js +2 -47
  126. package/lib/mocks/image.d.ts +1 -1
  127. package/lib/mocks/image.js +2 -44
  128. package/lib/mocks/post.js +2 -55
  129. package/lib/mocks/tag.d.ts +1 -1
  130. package/lib/mocks/tag.js +2 -37
  131. package/lib/mocks/user.d.ts +1 -1
  132. package/lib/mocks/user.js +2 -88
  133. package/lib/mutations/content.d.ts +2 -0
  134. package/lib/mutations/content.js +2 -0
  135. package/lib/mutations/index.d.ts +11 -3
  136. package/lib/mutations/index.js +2 -26
  137. package/lib/mutations/locations.d.ts +1 -1
  138. package/lib/mutations/locations.js +2 -44
  139. package/lib/mutations/messages.d.ts +1 -1
  140. package/lib/mutations/messages.js +2 -86
  141. package/lib/mutations/posts.d.ts +1 -1
  142. package/lib/mutations/posts.js +2 -53
  143. package/lib/mutations/profiles.d.ts +2 -0
  144. package/lib/mutations/profiles.js +2 -0
  145. package/lib/mutations/reactions.d.ts +1 -1
  146. package/lib/mutations/reactions.js +2 -51
  147. package/lib/mutations/statistics.d.ts +1 -1
  148. package/lib/mutations/statistics.js +2 -39
  149. package/lib/mutations/subscriptions.d.ts +1 -1
  150. package/lib/mutations/subscriptions.js +2 -56
  151. package/lib/mutations/tags.d.ts +1 -1
  152. package/lib/mutations/tags.js +2 -120
  153. package/lib/mutations/users.js +2 -116
  154. package/lib/objectTypes/app.js +2 -173
  155. package/lib/objectTypes/bankAccount.js +2 -76
  156. package/lib/objectTypes/connection.js +2 -48
  157. package/lib/objectTypes/content.d.ts +2 -0
  158. package/lib/objectTypes/content.js +2 -0
  159. package/lib/objectTypes/conversation.js +2 -77
  160. package/lib/objectTypes/creditCard.js +2 -86
  161. package/lib/objectTypes/document.js +2 -46
  162. package/lib/objectTypes/error.js +2 -46
  163. package/lib/objectTypes/external.js +2 -74
  164. package/lib/objectTypes/file.js +2 -100
  165. package/lib/objectTypes/filter.js +2 -43
  166. package/lib/objectTypes/group.js +2 -123
  167. package/lib/objectTypes/iapSubscription.js +2 -40
  168. package/lib/objectTypes/image.d.ts +4 -0
  169. package/lib/objectTypes/image.js +2 -129
  170. package/lib/objectTypes/index.d.ts +26 -24
  171. package/lib/objectTypes/index.js +2 -68
  172. package/lib/objectTypes/location.js +2 -109
  173. package/lib/objectTypes/message.js +2 -96
  174. package/lib/objectTypes/passcode.js +2 -42
  175. package/lib/objectTypes/plan.js +2 -95
  176. package/lib/objectTypes/post.js +2 -125
  177. package/lib/objectTypes/profile.d.ts +3 -0
  178. package/lib/objectTypes/profile.js +2 -0
  179. package/lib/objectTypes/reaction.js +2 -61
  180. package/lib/objectTypes/relation.js +2 -49
  181. package/lib/objectTypes/search.js +2 -72
  182. package/lib/objectTypes/statistics.js +2 -39
  183. package/lib/objectTypes/subscription.js +2 -117
  184. package/lib/objectTypes/tag.js +2 -65
  185. package/lib/objectTypes/user.js +2 -144
  186. package/lib/queries/content.d.ts +2 -0
  187. package/lib/queries/content.js +2 -0
  188. package/lib/queries/index.d.ts +10 -3
  189. package/lib/queries/index.js +2 -33
  190. package/lib/queries/locations.d.ts +1 -1
  191. package/lib/queries/locations.js +2 -45
  192. package/lib/queries/messages.d.ts +1 -1
  193. package/lib/queries/messages.js +2 -52
  194. package/lib/queries/posts.d.ts +1 -1
  195. package/lib/queries/posts.js +2 -154
  196. package/lib/queries/reactions.d.ts +1 -1
  197. package/lib/queries/reactions.js +2 -56
  198. package/lib/queries/statistics.d.ts +1 -1
  199. package/lib/queries/statistics.js +2 -39
  200. package/lib/queries/subscriptions.d.ts +1 -1
  201. package/lib/queries/subscriptions.js +2 -44
  202. package/lib/queries/tags.d.ts +1 -1
  203. package/lib/queries/tags.js +2 -75
  204. package/lib/queries/users.js +2 -64
  205. package/lib/templates/email/layout.js +3 -25
  206. package/lib/templates/email/passwordForgot.js +3 -25
  207. package/lib/templates/email/passwordRecovery.js +3 -25
  208. package/lib/templates/email/verifyEmail.js +3 -25
  209. package/lib/templates/email/welcome.js +3 -25
  210. package/lib/templates/sms/passwordForgot.js +2 -24
  211. package/lib/templates/sms/passwordRecovery.js +2 -24
  212. package/lib/templates/sms/verifyEmail.js +2 -24
  213. package/lib/templates/sms/verifyPhone.js +2 -24
  214. package/lib/templates/sms/welcome.js +2 -24
  215. package/lib/types/apps.types.d.ts +6 -2
  216. package/lib/types/apps.types.js +2 -32
  217. package/lib/types/arangodb.types.d.ts +8 -4
  218. package/lib/types/arangodb.types.js +1 -16
  219. package/lib/types/auth.types.d.ts +11 -5
  220. package/lib/types/auth.types.js +1 -16
  221. package/lib/types/connections.types.d.ts +5 -1
  222. package/lib/types/connections.types.js +1 -16
  223. package/lib/types/content.types.d.ts +31 -0
  224. package/lib/types/content.types.js +1 -0
  225. package/lib/types/conversations.types.d.ts +6 -2
  226. package/lib/types/conversations.types.js +1 -16
  227. package/lib/types/email.types.d.ts +9 -5
  228. package/lib/types/email.types.js +1 -16
  229. package/lib/types/error.types.d.ts +1 -0
  230. package/lib/types/error.types.js +2 -44
  231. package/lib/types/files.types.d.ts +5 -1
  232. package/lib/types/files.types.js +1 -16
  233. package/lib/types/google.types.d.ts +4 -0
  234. package/lib/types/google.types.js +1 -16
  235. package/lib/types/groups.types.d.ts +5 -1
  236. package/lib/types/groups.types.js +1 -16
  237. package/lib/types/images.types.d.ts +6 -2
  238. package/lib/types/images.types.js +1 -16
  239. package/lib/types/index.d.ts +26 -20
  240. package/lib/types/index.js +2 -60
  241. package/lib/types/locations.types.d.ts +5 -1
  242. package/lib/types/locations.types.js +1 -16
  243. package/lib/types/messages.types.d.ts +7 -3
  244. package/lib/types/messages.types.js +1 -16
  245. package/lib/types/notifications.types.d.ts +9 -5
  246. package/lib/types/notifications.types.js +1 -16
  247. package/lib/types/payments.types.d.ts +5 -1
  248. package/lib/types/payments.types.js +1 -16
  249. package/lib/types/posts.types.d.ts +7 -3
  250. package/lib/types/posts.types.js +1 -16
  251. package/lib/types/{personas.types.d.ts → profiles.types.d.ts} +3 -15
  252. package/lib/types/profiles.types.js +1 -0
  253. package/lib/types/statistics.types.js +1 -16
  254. package/lib/types/tags.types.d.ts +5 -1
  255. package/lib/types/tags.types.js +1 -16
  256. package/lib/types/users.types.d.ts +41 -10
  257. package/lib/types/users.types.js +1 -16
  258. package/lib/types/websockets.types.d.ts +5 -1
  259. package/lib/types/websockets.types.js +1 -16
  260. package/lib/utils/adapterUtils.d.ts +4 -0
  261. package/lib/utils/adapterUtils.js +2 -45
  262. package/lib/utils/analyticsUtils.d.ts +5 -1
  263. package/lib/utils/analyticsUtils.js +2 -72
  264. package/lib/utils/arangodbUtils.d.ts +6 -2
  265. package/lib/utils/arangodbUtils.js +5 -163
  266. package/lib/utils/{auth.d.ts → authUtils.d.ts} +3 -1
  267. package/lib/utils/authUtils.js +2 -0
  268. package/lib/utils/contextUtils.d.ts +3 -0
  269. package/lib/utils/contextUtils.js +2 -0
  270. package/lib/utils/dbI18n.d.ts +10 -0
  271. package/lib/utils/dbI18n.example.d.ts +20 -0
  272. package/lib/utils/dbI18n.example.js +6 -0
  273. package/lib/utils/dbI18n.js +2 -0
  274. package/lib/utils/googleTranslate.d.ts +6 -0
  275. package/lib/utils/googleTranslate.js +2 -0
  276. package/lib/utils/graphqlUtils.d.ts +10 -0
  277. package/lib/utils/graphqlUtils.js +2 -0
  278. package/lib/utils/index.d.ts +18 -5
  279. package/lib/utils/index.js +2 -30
  280. package/lib/utils/languageDetection.d.ts +8 -0
  281. package/lib/utils/languageDetection.js +2 -0
  282. package/lib/utils/localeUtils.d.ts +11 -0
  283. package/lib/utils/localeUtils.example.d.ts +5 -0
  284. package/lib/utils/localeUtils.example.js +2 -0
  285. package/lib/utils/localeUtils.js +2 -0
  286. package/lib/utils/middlewareUtils.d.ts +2 -0
  287. package/lib/utils/middlewareUtils.js +2 -0
  288. package/lib/utils/{session.d.ts → sessionUtils.d.ts} +1 -1
  289. package/lib/utils/sessionUtils.js +2 -0
  290. package/lib/utils/stripeUtils.d.ts +7 -3
  291. package/lib/utils/stripeUtils.js +2 -43
  292. package/lib/utils/templateUtils.d.ts +3 -0
  293. package/lib/utils/templateUtils.js +2 -0
  294. package/lib/utils/testUtils.d.ts +95 -0
  295. package/lib/utils/testUtils.js +2 -0
  296. package/lib/utils/translationQueue.d.ts +29 -0
  297. package/lib/utils/translationQueue.example.d.ts +33 -0
  298. package/lib/utils/translationQueue.example.js +2 -0
  299. package/lib/utils/translationQueue.js +2 -0
  300. package/package.json +32 -28
  301. package/tsconfig.build.json +21 -0
  302. package/tsconfig.lint.json +33 -0
  303. package/tsconfig.test.json +31 -0
  304. package/.prettierrc.js +0 -4
  305. package/dist/actions/apps.js +0 -242
  306. package/dist/actions/connections.js +0 -90
  307. package/dist/actions/conversations.js +0 -350
  308. package/dist/actions/dynamodb.js +0 -150
  309. package/dist/actions/email.js +0 -152
  310. package/dist/actions/files.js +0 -283
  311. package/dist/actions/groups.js +0 -292
  312. package/dist/actions/images.js +0 -735
  313. package/dist/actions/index.js +0 -66
  314. package/dist/actions/ios.js +0 -164
  315. package/dist/actions/locations.js +0 -122
  316. package/dist/actions/messages.js +0 -208
  317. package/dist/actions/notifications.js +0 -59
  318. package/dist/actions/payments.js +0 -497
  319. package/dist/actions/personas.js +0 -110
  320. package/dist/actions/posts.js +0 -595
  321. package/dist/actions/reactions.js +0 -322
  322. package/dist/actions/s3.js +0 -133
  323. package/dist/actions/search.js +0 -90
  324. package/dist/actions/sms.js +0 -108
  325. package/dist/actions/statistics.js +0 -62
  326. package/dist/actions/subscription.js +0 -220
  327. package/dist/actions/tags.js +0 -292
  328. package/dist/actions/users.js +0 -784
  329. package/dist/actions/websockets.js +0 -174
  330. package/dist/adapters/arangoAdapter.js +0 -46
  331. package/dist/adapters/fileAdapter.js +0 -76
  332. package/dist/adapters/imageAdapter.js +0 -40
  333. package/dist/adapters/messageAdapter.js +0 -49
  334. package/dist/adapters/postAdapter.js +0 -70
  335. package/dist/adapters/reaktorAdapter.js +0 -44
  336. package/dist/adapters/tagAdapter.js +0 -50
  337. package/dist/adapters/userAdapter.js +0 -115
  338. package/dist/config.js +0 -125
  339. package/dist/index.js +0 -66
  340. package/dist/lambdas/actions/websockets.js +0 -132
  341. package/dist/lambdas/authorizer.js +0 -67
  342. package/dist/lambdas/connection.js +0 -91
  343. package/dist/lambdas/utils/message.js +0 -42
  344. package/dist/lambdas/utils/websocket.js +0 -105
  345. package/dist/mocks/conversation.js +0 -35
  346. package/dist/mocks/file.js +0 -38
  347. package/dist/mocks/group.js +0 -47
  348. package/dist/mocks/image.js +0 -44
  349. package/dist/mocks/nlabs.png +0 -0
  350. package/dist/mocks/post.js +0 -55
  351. package/dist/mocks/tag.js +0 -37
  352. package/dist/mocks/user.js +0 -88
  353. package/dist/mutations/index.js +0 -26
  354. package/dist/mutations/locations.js +0 -44
  355. package/dist/mutations/messages.js +0 -86
  356. package/dist/mutations/personas.js +0 -100
  357. package/dist/mutations/posts.js +0 -53
  358. package/dist/mutations/reactions.js +0 -51
  359. package/dist/mutations/statistics.js +0 -39
  360. package/dist/mutations/subscriptions.js +0 -56
  361. package/dist/mutations/tags.js +0 -120
  362. package/dist/mutations/users.js +0 -116
  363. package/dist/objectTypes/app.js +0 -173
  364. package/dist/objectTypes/bankAccount.js +0 -76
  365. package/dist/objectTypes/connection.js +0 -48
  366. package/dist/objectTypes/conversation.js +0 -77
  367. package/dist/objectTypes/creditCard.js +0 -86
  368. package/dist/objectTypes/document.js +0 -46
  369. package/dist/objectTypes/error.js +0 -46
  370. package/dist/objectTypes/external.js +0 -74
  371. package/dist/objectTypes/file.js +0 -100
  372. package/dist/objectTypes/filter.js +0 -43
  373. package/dist/objectTypes/group.js +0 -123
  374. package/dist/objectTypes/iapSubscription.js +0 -40
  375. package/dist/objectTypes/image.js +0 -129
  376. package/dist/objectTypes/index.js +0 -68
  377. package/dist/objectTypes/location.js +0 -109
  378. package/dist/objectTypes/message.js +0 -96
  379. package/dist/objectTypes/passcode.js +0 -42
  380. package/dist/objectTypes/persona.js +0 -87
  381. package/dist/objectTypes/plan.js +0 -95
  382. package/dist/objectTypes/post.js +0 -125
  383. package/dist/objectTypes/reaction.js +0 -61
  384. package/dist/objectTypes/relation.js +0 -49
  385. package/dist/objectTypes/search.js +0 -72
  386. package/dist/objectTypes/statistics.js +0 -39
  387. package/dist/objectTypes/subscription.js +0 -117
  388. package/dist/objectTypes/tag.js +0 -65
  389. package/dist/objectTypes/user.js +0 -144
  390. package/dist/queries/index.js +0 -33
  391. package/dist/queries/locations.js +0 -45
  392. package/dist/queries/messages.js +0 -52
  393. package/dist/queries/posts.js +0 -154
  394. package/dist/queries/reactions.js +0 -56
  395. package/dist/queries/statistics.js +0 -39
  396. package/dist/queries/subscriptions.js +0 -44
  397. package/dist/queries/tags.js +0 -75
  398. package/dist/queries/users.js +0 -64
  399. package/dist/templates/email/layout.js +0 -302
  400. package/dist/templates/email/passwordForgot.js +0 -38
  401. package/dist/templates/email/passwordRecovery.js +0 -35
  402. package/dist/templates/email/verifyEmail.js +0 -38
  403. package/dist/templates/email/welcome.js +0 -38
  404. package/dist/templates/sms/passwordForgot.js +0 -24
  405. package/dist/templates/sms/passwordRecovery.js +0 -24
  406. package/dist/templates/sms/verifyEmail.js +0 -24
  407. package/dist/templates/sms/verifyPhone.js +0 -24
  408. package/dist/templates/sms/welcome.js +0 -24
  409. package/dist/types/apps.js +0 -32
  410. package/dist/types/arangodb.js +0 -16
  411. package/dist/types/auth.js +0 -16
  412. package/dist/types/connections.js +0 -16
  413. package/dist/types/conversations.js +0 -16
  414. package/dist/types/email.js +0 -16
  415. package/dist/types/error.js +0 -44
  416. package/dist/types/files.js +0 -16
  417. package/dist/types/google.js +0 -16
  418. package/dist/types/groups.js +0 -16
  419. package/dist/types/images.js +0 -16
  420. package/dist/types/index.js +0 -60
  421. package/dist/types/locations.js +0 -16
  422. package/dist/types/messages.js +0 -16
  423. package/dist/types/notifications.js +0 -16
  424. package/dist/types/payments.js +0 -16
  425. package/dist/types/personas.js +0 -16
  426. package/dist/types/posts.js +0 -16
  427. package/dist/types/statistics.js +0 -16
  428. package/dist/types/tags.js +0 -16
  429. package/dist/types/users.js +0 -16
  430. package/dist/types/websockets.js +0 -16
  431. package/dist/utils/adapterUtils.js +0 -45
  432. package/dist/utils/analyticsUtils.js +0 -72
  433. package/dist/utils/arangodbUtils.js +0 -165
  434. package/dist/utils/auth.js +0 -57
  435. package/dist/utils/index.js +0 -30
  436. package/dist/utils/session.js +0 -60
  437. package/jest.setup.js +0 -0
  438. package/lex.config.cjs +0 -13
  439. package/lib/actions/personas.d.ts +0 -3
  440. package/lib/actions/personas.js +0 -110
  441. package/lib/actions/subscription.js +0 -208
  442. package/lib/mutations/personas.d.ts +0 -2
  443. package/lib/mutations/personas.js +0 -100
  444. package/lib/objectTypes/persona.d.ts +0 -3
  445. package/lib/objectTypes/persona.js +0 -87
  446. package/lib/types/personas.types.js +0 -16
  447. package/lib/utils/auth.js +0 -57
  448. package/lib/utils/session.js +0 -60
package/lib/config.d.ts CHANGED
@@ -1,20 +1,57 @@
1
+ export interface ArangoDBConfig {
2
+ readonly database?: string;
3
+ readonly dump?: string;
4
+ readonly password?: string;
5
+ readonly port?: string;
6
+ readonly restore?: string;
7
+ readonly url?: string;
8
+ readonly username?: string;
9
+ }
1
10
  export interface AppConfig {
2
- readonly app?: object;
3
- readonly arangodb?: object;
4
- readonly aws?: object;
11
+ readonly [key: string]: any;
12
+ readonly details?: AppDetails;
13
+ readonly arangodb?: ArangoDBConfig;
14
+ readonly aws?: AwsConfig;
5
15
  readonly giphy?: object;
6
16
  readonly google?: object;
7
17
  readonly image?: object;
8
18
  readonly stripe?: object;
9
19
  readonly twilio?: object;
10
20
  }
21
+ export interface AppDetails {
22
+ readonly id?: string;
23
+ readonly locale?: string;
24
+ readonly name?: string;
25
+ readonly supportEmail?: string;
26
+ readonly supportName?: string;
27
+ readonly url?: string;
28
+ readonly version?: string;
29
+ }
30
+ export interface AwsConfig {
31
+ readonly credentials?: {
32
+ readonly accessKeyId?: string;
33
+ readonly secretAccessKey?: string;
34
+ };
35
+ readonly maxRetries?: number;
36
+ readonly region?: string;
37
+ readonly s3?: {
38
+ readonly Bucket?: string;
39
+ };
40
+ readonly signatureVersion?: string;
41
+ }
11
42
  export interface EnvConfig {
12
43
  readonly local: AppConfig;
13
- readonly dev: AppConfig;
14
- readonly prod: AppConfig;
44
+ readonly development: AppConfig;
45
+ readonly production: AppConfig;
15
46
  readonly test: AppConfig;
16
47
  }
48
+ export interface GoogleConfig {
49
+ readonly apiKey: string;
50
+ }
17
51
  export declare class Config {
52
+ private static updatedConfig;
18
53
  static values(): EnvConfig;
19
- static get(path: string | string[]): any;
54
+ static set(override: object, environment?: string): object;
55
+ static reset(): void;
56
+ static get<T = any>(path?: string | string[], defaultValue?: T): T;
20
57
  }
package/lib/config.js CHANGED
@@ -1,125 +1,2 @@
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
1
+ import{get as i}from"@nlabs/utils/objects/get";import{merge as t}from"@nlabs/utils/objects/merge";import{readFileSync as l}from"fs";import{dirname as g,join as A}from"path";import{fileURLToPath as u}from"url";const y=u(import.meta.url),m=g(y),f=A(m,"..","package.json"),p=JSON.parse(l(f,"utf8"));class k{static updatedConfig=null;static values(){return{development:{arangodb:{database:process.env.ARANGODB_DATABASE||"reaktor",password:process.env.ARANGODB_PASSWORD||"password",port:process.env.ARANGODB_PORT||"8529",url:process.env.ARANGODB_URL||"http://localhost",username:process.env.ARANGODB_USERNAME||"root"},aws:{s3:{Bucket:"dev.reaktor.io"}}},local:{arangodb:{database:process.env.ARANGODB_DATABASE||"reaktor",password:process.env.ARANGODB_PASSWORD||"password",port:process.env.ARANGODB_PORT||"8529",url:process.env.ARANGODB_URL||"http://localhost",username:process.env.ARANGODB_USERNAME||"root"},aws:{credentials:{accessKeyId:process.env.AWS_ACCESS_KEY_ID,secretAccessKey:process.env.AWS_SECRET_ACCESS_KEY},maxRetries:3,region:"us-east-1",s3:{Bucket:"dev.reaktor.io"},signatureVersion:"v4"},details:{id:"reaktor",locale:"en-US",name:"Reaktor",supportEmail:"support@reaktor.io",supportName:"Reaktor Support",url:"reaktor.io",version:p.version},giphy:{key:"dc6zaTOxFJmzC"},google:{analytics:{accountId:"78158717",trackingId:"UA-78158717-1"},geocode:{key:"AIzaSyBwjmpBjWhiJoBCZiYzRurM9m4WnCxslv0",url:"https://maps.googleapis.com/maps/api/geocode/json"},key:"AIzaSyC3_f2Us3y0qjbyMJ-4t5ObtCzfq_FHIgQ"},image:{imgQuality:90,imgSize:1500,thmQuality:80,thmSize:150},stripe:{token:"sk_test_LS956be57YUXTB5a4sLGb5BQ"},twilio:{number:"+15005550006",sid:"AC6bd7f513cbed2e5134c650be06cc732e",token:"520ae739e761bab759b147f1ad28278f"}},production:{arangodb:{database:process.env.ARANGODB_DATABASE||"reaktor",dump:"/usr/bin/arangodump",password:process.env.ARANGODB_PASSWORD||"password",port:process.env.ARANGODB_PORT||"8529",restore:"/usr/bin/arangorestore",url:process.env.ARANGODB_URL||"http://localhost",username:process.env.ARANGODB_USERNAME||"root"},aws:{s3:{Bucket:"box.reaktor.io"}},stripe:{token:"sk_live_bElZl8RLhMCJy33KG4lyLD4o"},twilio:{number:"+18554165227",sid:"AC90b0528a911e652d643329a4d7b4d2c7",token:"a7941d173bd4846d0966a186e9865b72"}},test:{arangodb:{database:process.env.ARANGODB_DATABASE||"reaktor-test",password:process.env.ARANGODB_PASSWORD||"password",port:process.env.ARANGODB_PORT||"8529",url:process.env.ARANGODB_URL||"http://localhost",username:process.env.ARANGODB_USERNAME||"root"},details:{id:"reaktor-test",locale:"en-US",name:"Reaktor Test",supportEmail:"support@reaktor.io",url:"reaktor.io",version:p.version}}}}static set(e,s){const o=this.get(),r=s||process.env.stage||process.env.NODE_ENV||"local";return e[r]?this.updatedConfig=t({},o,e[r]):this.updatedConfig=t({},o,e),{...this.updatedConfig}}static reset(){this.updatedConfig=null}static get(e,s){const o=this.updatedConfig||this.values(),r=process.env.stage||process.env.NODE_ENV||"local";if(this.updatedConfig){const d=this.updatedConfig[r]||{},a=t({},o,d);return e?i(a,e,s):a}const c=o.local,n=t({},c,o[r]||{});return e?i(n,e,s):n}}export{k as Config};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2NvbmZpZy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7Z2V0fSBmcm9tICdAbmxhYnMvdXRpbHMvb2JqZWN0cy9nZXQnO1xuaW1wb3J0IHttZXJnZX0gZnJvbSAnQG5sYWJzL3V0aWxzL29iamVjdHMvbWVyZ2UnO1xuaW1wb3J0IHtyZWFkRmlsZVN5bmN9IGZyb20gJ2ZzJztcbmltcG9ydCB7ZGlybmFtZSwgam9pbn0gZnJvbSAncGF0aCc7XG5pbXBvcnQge2ZpbGVVUkxUb1BhdGh9IGZyb20gJ3VybCc7XG5cbmNvbnN0IF9fZmlsZW5hbWUgPSBmaWxlVVJMVG9QYXRoKGltcG9ydC5tZXRhLnVybCk7XG5jb25zdCBfX2Rpcm5hbWUgPSBkaXJuYW1lKF9fZmlsZW5hbWUpO1xuY29uc3QgcGFja2FnZUpzb25QYXRoID0gam9pbihfX2Rpcm5hbWUsICcuLicsICdwYWNrYWdlLmpzb24nKTtcbmNvbnN0IGFwcFBhY2thZ2UgPSBKU09OLnBhcnNlKHJlYWRGaWxlU3luYyhwYWNrYWdlSnNvblBhdGgsICd1dGY4JykpO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFyYW5nb0RCQ29uZmlnIHtcbiAgcmVhZG9ubHkgZGF0YWJhc2U/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGR1bXA/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHBhc3N3b3JkPzogc3RyaW5nO1xuICByZWFkb25seSBwb3J0Pzogc3RyaW5nO1xuICByZWFkb25seSByZXN0b3JlPzogc3RyaW5nO1xuICByZWFkb25seSB1cmw/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHVzZXJuYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcENvbmZpZyB7XG4gIHJlYWRvbmx5IFtrZXk6IHN0cmluZ106IGFueTtcbiAgcmVhZG9ubHkgZGV0YWlscz86IEFwcERldGFpbHM7XG4gIHJlYWRvbmx5IGFyYW5nb2RiPzogQXJhbmdvREJDb25maWc7XG4gIHJlYWRvbmx5IGF3cz86IEF3c0NvbmZpZztcbiAgcmVhZG9ubHkgZ2lwaHk/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IGdvb2dsZT86IG9iamVjdDtcbiAgcmVhZG9ubHkgaW1hZ2U/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IHN0cmlwZT86IG9iamVjdDtcbiAgcmVhZG9ubHkgdHdpbGlvPzogb2JqZWN0O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcERldGFpbHMge1xuICByZWFkb25seSBpZD86IHN0cmluZztcbiAgcmVhZG9ubHkgbG9jYWxlPzogc3RyaW5nO1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuICByZWFkb25seSBzdXBwb3J0RW1haWw/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHN1cHBvcnROYW1lPzogc3RyaW5nO1xuICByZWFkb25seSB1cmw/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHZlcnNpb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXdzQ29uZmlnIHtcbiAgcmVhZG9ubHkgY3JlZGVudGlhbHM/OiB7XG4gICAgcmVhZG9ubHkgYWNjZXNzS2V5SWQ/OiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgc2VjcmV0QWNjZXNzS2V5Pzogc3RyaW5nO1xuICB9O1xuICByZWFkb25seSBtYXhSZXRyaWVzPzogbnVtYmVyO1xuICByZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHMzPzoge1xuICAgIHJlYWRvbmx5IEJ1Y2tldD86IHN0cmluZztcbiAgfTtcbiAgcmVhZG9ubHkgc2lnbmF0dXJlVmVyc2lvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbnZDb25maWcge1xuICByZWFkb25seSBsb2NhbDogQXBwQ29uZmlnO1xuICByZWFkb25seSBkZXZlbG9wbWVudDogQXBwQ29uZmlnO1xuICByZWFkb25seSBwcm9kdWN0aW9uOiBBcHBDb25maWc7XG4gIHJlYWRvbmx5IHRlc3Q6IEFwcENvbmZpZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHb29nbGVDb25maWcge1xuICByZWFkb25seSBhcGlLZXk6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIENvbmZpZyB7XG4gIHByaXZhdGUgc3RhdGljIHVwZGF0ZWRDb25maWcgPSBudWxsO1xuXG4gIHN0YXRpYyB2YWx1ZXMoKTogRW52Q29uZmlnIHtcbiAgICByZXR1cm4ge1xuICAgICAgZGV2ZWxvcG1lbnQ6IHtcbiAgICAgICAgYXJhbmdvZGI6IHtcbiAgICAgICAgICBkYXRhYmFzZTogcHJvY2Vzcy5lbnYuQVJBTkdPREJfREFUQUJBU0UgfHwgJ3JlYWt0b3InLFxuICAgICAgICAgIHBhc3N3b3JkOiBwcm9jZXNzLmVudi5BUkFOR09EQl9QQVNTV09SRCB8fCAncGFzc3dvcmQnLFxuICAgICAgICAgIHBvcnQ6IHByb2Nlc3MuZW52LkFSQU5HT0RCX1BPUlQgfHwgJzg1MjknLFxuICAgICAgICAgIHVybDogcHJvY2Vzcy5lbnYuQVJBTkdPREJfVVJMIHx8ICdodHRwOi8vbG9jYWxob3N0JyxcbiAgICAgICAgICB1c2VybmFtZTogcHJvY2Vzcy5lbnYuQVJBTkdPREJfVVNFUk5BTUUgfHwgJ3Jvb3QnXG4gICAgICAgIH0sXG4gICAgICAgIGF3czoge1xuICAgICAgICAgIHMzOiB7XG4gICAgICAgICAgICBCdWNrZXQ6ICdkZXYucmVha3Rvci5pbydcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBsb2NhbDoge1xuICAgICAgICBhcmFuZ29kYjoge1xuICAgICAgICAgIGRhdGFiYXNlOiBwcm9jZXNzLmVudi5BUkFOR09EQl9EQVRBQkFTRSB8fCAncmVha3RvcicsXG4gICAgICAgICAgcGFzc3dvcmQ6IHByb2Nlc3MuZW52LkFSQU5HT0RCX1BBU1NXT1JEIHx8ICdwYXNzd29yZCcsXG4gICAgICAgICAgcG9ydDogcHJvY2Vzcy5lbnYuQVJBTkdPREJfUE9SVCB8fCAnODUyOScsXG4gICAgICAgICAgdXJsOiBwcm9jZXNzLmVudi5BUkFOR09EQl9VUkwgfHwgJ2h0dHA6Ly9sb2NhbGhvc3QnLFxuICAgICAgICAgIHVzZXJuYW1lOiBwcm9jZXNzLmVudi5BUkFOR09EQl9VU0VSTkFNRSB8fCAncm9vdCdcbiAgICAgICAgfSxcbiAgICAgICAgYXdzOiB7XG4gICAgICAgICAgY3JlZGVudGlhbHM6IHtcbiAgICAgICAgICAgIGFjY2Vzc0tleUlkOiBwcm9jZXNzLmVudi5BV1NfQUNDRVNTX0tFWV9JRCxcbiAgICAgICAgICAgIHNlY3JldEFjY2Vzc0tleTogcHJvY2Vzcy5lbnYuQVdTX1NFQ1JFVF9BQ0NFU1NfS0VZXG4gICAgICAgICAgfSxcbiAgICAgICAgICBtYXhSZXRyaWVzOiAzLFxuICAgICAgICAgIHJlZ2lvbjogJ3VzLWVhc3QtMScsXG4gICAgICAgICAgczM6IHtcbiAgICAgICAgICAgIEJ1Y2tldDogJ2Rldi5yZWFrdG9yLmlvJ1xuICAgICAgICAgIH0sXG4gICAgICAgICAgc2lnbmF0dXJlVmVyc2lvbjogJ3Y0J1xuICAgICAgICB9LFxuICAgICAgICBkZXRhaWxzOiB7XG4gICAgICAgICAgaWQ6ICdyZWFrdG9yJyxcbiAgICAgICAgICBsb2NhbGU6ICdlbi1VUycsXG4gICAgICAgICAgbmFtZTogJ1JlYWt0b3InLFxuICAgICAgICAgIHN1cHBvcnRFbWFpbDogJ3N1cHBvcnRAcmVha3Rvci5pbycsXG4gICAgICAgICAgc3VwcG9ydE5hbWU6ICdSZWFrdG9yIFN1cHBvcnQnLFxuICAgICAgICAgIHVybDogJ3JlYWt0b3IuaW8nLFxuICAgICAgICAgIHZlcnNpb246IGFwcFBhY2thZ2UudmVyc2lvblxuICAgICAgICB9LFxuICAgICAgICBnaXBoeToge1xuICAgICAgICAgIGtleTogJ2RjNnphVE94RkptekMnXG4gICAgICAgIH0sXG4gICAgICAgIGdvb2dsZToge1xuICAgICAgICAgIGFuYWx5dGljczoge1xuICAgICAgICAgICAgYWNjb3VudElkOiAnNzgxNTg3MTcnLFxuICAgICAgICAgICAgdHJhY2tpbmdJZDogJ1VBLTc4MTU4NzE3LTEnXG4gICAgICAgICAgfSxcbiAgICAgICAgICBnZW9jb2RlOiB7XG4gICAgICAgICAgICBrZXk6ICdBSXphU3lCd2ptcEJqV2hpSm9CQ1ppWXpSdXJNOW00V25DeHNsdjAnLFxuICAgICAgICAgICAgdXJsOiAnaHR0cHM6Ly9tYXBzLmdvb2dsZWFwaXMuY29tL21hcHMvYXBpL2dlb2NvZGUvanNvbidcbiAgICAgICAgICB9LFxuICAgICAgICAgIGtleTogJ0FJemFTeUMzX2YyVXMzeTBxamJ5TUotNHQ1T2J0Q3pmcV9GSElnUSdcbiAgICAgICAgfSxcbiAgICAgICAgaW1hZ2U6IHtcbiAgICAgICAgICBpbWdRdWFsaXR5OiA5MCxcbiAgICAgICAgICBpbWdTaXplOiAxNTAwLFxuICAgICAgICAgIHRobVF1YWxpdHk6IDgwLFxuICAgICAgICAgIHRobVNpemU6IDE1MFxuICAgICAgICB9LFxuICAgICAgICBzdHJpcGU6IHtcbiAgICAgICAgICB0b2tlbjogJ3NrX3Rlc3RfTFM5NTZiZTU3WVVYVEI1YTRzTEdiNUJRJ1xuICAgICAgICB9LFxuICAgICAgICB0d2lsaW86IHtcbiAgICAgICAgICBudW1iZXI6ICcrMTUwMDU1NTAwMDYnLFxuICAgICAgICAgIHNpZDogJ0FDNmJkN2Y1MTNjYmVkMmU1MTM0YzY1MGJlMDZjYzczMmUnLFxuICAgICAgICAgIHRva2VuOiAnNTIwYWU3MzllNzYxYmFiNzU5YjE0N2YxYWQyODI3OGYnXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBwcm9kdWN0aW9uOiB7XG4gICAgICAgIGFyYW5nb2RiOiB7XG4gICAgICAgICAgZGF0YWJhc2U6IHByb2Nlc3MuZW52LkFSQU5HT0RCX0RBVEFCQVNFIHx8ICdyZWFrdG9yJyxcbiAgICAgICAgICBkdW1wOiAnL3Vzci9iaW4vYXJhbmdvZHVtcCcsXG4gICAgICAgICAgcGFzc3dvcmQ6IHByb2Nlc3MuZW52LkFSQU5HT0RCX1BBU1NXT1JEIHx8ICdwYXNzd29yZCcsXG4gICAgICAgICAgcG9ydDogcHJvY2Vzcy5lbnYuQVJBTkdPREJfUE9SVCB8fCAnODUyOScsXG4gICAgICAgICAgcmVzdG9yZTogJy91c3IvYmluL2FyYW5nb3Jlc3RvcmUnLFxuICAgICAgICAgIHVybDogcHJvY2Vzcy5lbnYuQVJBTkdPREJfVVJMIHx8ICdodHRwOi8vbG9jYWxob3N0JyxcbiAgICAgICAgICB1c2VybmFtZTogcHJvY2Vzcy5lbnYuQVJBTkdPREJfVVNFUk5BTUUgfHwgJ3Jvb3QnXG4gICAgICAgIH0sXG4gICAgICAgIGF3czoge1xuICAgICAgICAgIHMzOiB7XG4gICAgICAgICAgICBCdWNrZXQ6ICdib3gucmVha3Rvci5pbydcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHN0cmlwZToge1xuICAgICAgICAgIHRva2VuOiAnc2tfbGl2ZV9iRWxabDhSTGhNQ0p5MzNLRzRseUxENG8nXG4gICAgICAgIH0sXG4gICAgICAgIHR3aWxpbzoge1xuICAgICAgICAgIG51bWJlcjogJysxODU1NDE2NTIyNycsXG4gICAgICAgICAgc2lkOiAnQUM5MGIwNTI4YTkxMWU2NTJkNjQzMzI5YTRkN2I0ZDJjNycsXG4gICAgICAgICAgdG9rZW46ICdhNzk0MWQxNzNiZDQ4NDZkMDk2NmExODZlOTg2NWI3MidcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHRlc3Q6IHtcbiAgICAgICAgYXJhbmdvZGI6IHtcbiAgICAgICAgICBkYXRhYmFzZTogcHJvY2Vzcy5lbnYuQVJBTkdPREJfREFUQUJBU0UgfHwgJ3JlYWt0b3ItdGVzdCcsXG4gICAgICAgICAgcGFzc3dvcmQ6IHByb2Nlc3MuZW52LkFSQU5HT0RCX1BBU1NXT1JEIHx8ICdwYXNzd29yZCcsXG4gICAgICAgICAgcG9ydDogcHJvY2Vzcy5lbnYuQVJBTkdPREJfUE9SVCB8fCAnODUyOScsXG4gICAgICAgICAgdXJsOiBwcm9jZXNzLmVudi5BUkFOR09EQl9VUkwgfHwgJ2h0dHA6Ly9sb2NhbGhvc3QnLFxuICAgICAgICAgIHVzZXJuYW1lOiBwcm9jZXNzLmVudi5BUkFOR09EQl9VU0VSTkFNRSB8fCAncm9vdCdcbiAgICAgICAgfSxcbiAgICAgICAgZGV0YWlsczoge1xuICAgICAgICAgIGlkOiAncmVha3Rvci10ZXN0JyxcbiAgICAgICAgICBsb2NhbGU6ICdlbi1VUycsXG4gICAgICAgICAgbmFtZTogJ1JlYWt0b3IgVGVzdCcsXG4gICAgICAgICAgc3VwcG9ydEVtYWlsOiAnc3VwcG9ydEByZWFrdG9yLmlvJyxcbiAgICAgICAgICB1cmw6ICdyZWFrdG9yLmlvJyxcbiAgICAgICAgICB2ZXJzaW9uOiBhcHBQYWNrYWdlLnZlcnNpb25cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgc2V0KG92ZXJyaWRlOiBvYmplY3QsIGVudmlyb25tZW50Pzogc3RyaW5nKTogb2JqZWN0IHtcbiAgICBjb25zdCBjdXJyZW50Q29uZmlnID0gdGhpcy5nZXQoKTtcbiAgICBjb25zdCB0YXJnZXRFbnZpcm9ubWVudCA9IGVudmlyb25tZW50IHx8IHByb2Nlc3MuZW52LnN0YWdlIHx8IHByb2Nlc3MuZW52Lk5PREVfRU5WIHx8ICdsb2NhbCc7XG5cbiAgICBpZihvdmVycmlkZVt0YXJnZXRFbnZpcm9ubWVudF0pIHtcbiAgICAgIHRoaXMudXBkYXRlZENvbmZpZyA9IG1lcmdlKHt9LCBjdXJyZW50Q29uZmlnLCBvdmVycmlkZVt0YXJnZXRFbnZpcm9ubWVudF0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnVwZGF0ZWRDb25maWcgPSBtZXJnZSh7fSwgY3VycmVudENvbmZpZywgb3ZlcnJpZGUpO1xuICAgIH1cblxuICAgIHJldHVybiB7Li4uKHRoaXMudXBkYXRlZENvbmZpZyBhcyB1bmtub3duIGFzIG9iamVjdCl9O1xuICB9XG5cbiAgc3RhdGljIHJlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlZENvbmZpZyA9IG51bGw7XG4gIH1cblxuXG4gIHN0YXRpYyBnZXQ8VCA9IGFueT4ocGF0aD86IHN0cmluZyB8IHN0cmluZ1tdLCBkZWZhdWx0VmFsdWU/OiBUKTogVCB7XG4gICAgY29uc3QgYmFzZUNvbmZpZyA9IHRoaXMudXBkYXRlZENvbmZpZyB8fCB0aGlzLnZhbHVlcygpO1xuICAgIGNvbnN0IGVudmlyb25tZW50OiBzdHJpbmcgPSBwcm9jZXNzLmVudi5zdGFnZSB8fCBwcm9jZXNzLmVudi5OT0RFX0VOViB8fCAnbG9jYWwnO1xuXG4gICAgaWYodGhpcy51cGRhdGVkQ29uZmlnKSB7XG4gICAgICBjb25zdCBvdmVycmlkZUVudmlyb25tZW50Q29uZmlnID0gdGhpcy51cGRhdGVkQ29uZmlnW2Vudmlyb25tZW50XSB8fCB7fTtcbiAgICAgIGNvbnN0IGNvbmZpZyA9IG1lcmdlKHt9LCBiYXNlQ29uZmlnLCBvdmVycmlkZUVudmlyb25tZW50Q29uZmlnKTtcblxuICAgICAgcmV0dXJuIHBhdGggPyBnZXQoY29uZmlnLCBwYXRoLCBkZWZhdWx0VmFsdWUpIDogY29uZmlnO1xuICAgIH1cblxuICAgIGNvbnN0IGxvY2FsQ29uZmlnID0gYmFzZUNvbmZpZy5sb2NhbDtcbiAgICBjb25zdCBjb25maWcgPSBtZXJnZSh7fSwgbG9jYWxDb25maWcsIGJhc2VDb25maWdbZW52aXJvbm1lbnRdIHx8IHt9KTtcblxuICAgIHJldHVybiBwYXRoID8gZ2V0KGNvbmZpZywgcGF0aCwgZGVmYXVsdFZhbHVlKSA6IGNvbmZpZztcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIkFBSUEsT0FBUSxPQUFBQSxNQUFVLDJCQUNsQixPQUFRLFNBQUFDLE1BQVksNkJBQ3BCLE9BQVEsZ0JBQUFDLE1BQW1CLEtBQzNCLE9BQVEsV0FBQUMsRUFBUyxRQUFBQyxNQUFXLE9BQzVCLE9BQVEsaUJBQUFDLE1BQW9CLE1BRTVCLE1BQU1D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QyxFQUV6RSxLQUFLLGNBQWdCYixFQUFNLENBQUMsRUFBR1ksRUFBZUYsQ0FBUSxFQUdqRCxDQUFDLEdBQUksS0FBSyxhQUFtQyxDQUN0RCxDQUVBLE9BQU8sT0FBYyxDQUNuQixLQUFLLGNBQWdCLElBQ3ZCLENBR0EsT0FBTyxJQUFhSSxFQUEwQkMsRUFBcUIsQ0FDakUsTUFBTUMsRUFBYSxLQUFLLGVBQWlCLEtBQUssT0FBTyxFQUMvQ0wsRUFBc0IsUUFBUSxJQUFJLE9BQVMsUUFBUSxJQUFJLFVBQVksUUFFekUsR0FBRyxLQUFLLGNBQWUsQ0FDckIsTUFBTU0sRUFBNEIsS0FBSyxjQUFjTixDQUFXLEdBQUssQ0FBQyxFQUNoRU8sRUFBU2xCLEVBQU0sQ0FBQyxFQUFHZ0IsRUFBWUMsQ0FBeUIsRUFFOUQsT0FBT0gsRUFBT2YsRUFBSW1CLEVBQVFKLEVBQU1DLENBQVksRUFBSUcsQ0FDbEQsQ0FFQSxNQUFNQyxFQUFjSCxFQUFXLE1BQ3pCRSxFQUFTbEIsRUFBTSxDQUFDLEVBQUdtQixFQUFhSCxFQUFXTCxDQUFXLEdBQUssQ0FBQyxDQUFDLEVBRW5FLE9BQU9HLEVBQU9mLEVBQUltQixFQUFRSixFQUFNQyxDQUFZLEVBQUlHLENBQ2xELENBQ0YiLAogICJuYW1lcyI6IFsiZ2V0IiwgIm1lcmdlIiwgInJlYWRGaWxlU3luYyIsICJkaXJuYW1lIiwgImpvaW4iLCAiZmlsZVVSTFRvUGF0aCIsICJfX2ZpbGVuYW1lIiwgIl9fZGlybmFtZSIsICJwYWNrYWdlSnNvblBhdGgiLCAiYXBwUGFja2FnZSIsICJDb25maWciLCAib3ZlcnJpZGUiLCAiZW52aXJvbm1lbnQiLCAiY3VycmVudENvbmZpZyIsICJ0YXJnZXRFbnZpcm9ubWVudCIsICJwYXRoIiwgImRlZmF1bHRWYWx1ZSIsICJiYXNlQ29uZmlnIiwgIm92ZXJyaWRlRW52aXJvbm1lbnRDb25maWciLCAiY29uZmlnIiwgImxvY2FsQ29uZmlnIl0KfQo=
@@ -0,0 +1,4 @@
1
+ import type { ApiContext } from '../types/auth.types.js';
2
+ import type { APIGatewayEvent } from 'aws-lambda';
3
+ import type { ExecutionResult } from 'graphql';
4
+ export declare const createGraphqlHandler: (context: ApiContext) => (event: APIGatewayEvent) => Promise<ExecutionResult | Record<string, unknown>>;
@@ -0,0 +1,2 @@
1
+ import{graphql as m}from"graphql";import{schemaComposer as d}from"graphql-compose";import{Config as y}from"../config.js";import{extractLanguageContext as g}from"../utils/contextUtils.js";import{createContext as f,getGqlFields as h,getLambdaData as C}from"../utils/index.js";const k=(i,o,r,n,t)=>{const a={...n,fields:h(t)};return i(o,r,a,t)},N=i=>async o=>{try{const r=await f(i,o),n=g(o),t={config:y.get(),...r,languageContext:n,request:o},a=e=>{Object.keys(e.getFields()).forEach(s=>{try{e.hasResolver(s)&&e.wrapResolver(s,k)}catch{}})};a(d.Query),a(d.Mutation);const u=C(o),l=d.buildSchema(),{body:c}=u;if(!c?.query)return{body:JSON.stringify({data:null,errors:[{message:"No GraphQL query found in request body"}]}),headers:{"Content-Type":"application/json"},statusCode:200};try{const e=await Promise.resolve(m({contextValue:t,schema:l,source:c.query,variableValues:c.variables}));return e.errors&&e.errors.length>0,{body:JSON.stringify(e),headers:{"Content-Type":"application/json"},statusCode:200}}catch(e){const s=e instanceof Error?e.message:"GraphQL execution error",p=e instanceof Error?e.stack:void 0;return{body:JSON.stringify({data:null,errors:[{message:s,stack:process.env.NODE_ENV==="development"?p:void 0}]}),headers:{"Content-Type":"application/json"},statusCode:500}}}catch(r){const n=r instanceof Error?r.message:"An unknown error occurred in the handler",t=r instanceof Error?r.stack:void 0;return{body:JSON.stringify({data:null,errors:[{message:n,stack:process.env.NODE_ENV==="development"?t:void 0}]}),headers:{"Content-Type":"application/json"},statusCode:500}}};export{N as createGraphqlHandler};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2hhbmRsZXJzL2dyYXBocWxIYW5kbGVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQge2dyYXBocWx9IGZyb20gJ2dyYXBocWwnO1xuaW1wb3J0IHtPYmplY3RUeXBlQ29tcG9zZXIsIHNjaGVtYUNvbXBvc2VyfSBmcm9tICdncmFwaHFsLWNvbXBvc2UnO1xuXG5pbXBvcnQge0NvbmZpZ30gZnJvbSAnLi4vY29uZmlnLmpzJztcbmltcG9ydCB7ZXh0cmFjdExhbmd1YWdlQ29udGV4dH0gZnJvbSAnLi4vdXRpbHMvY29udGV4dFV0aWxzLmpzJztcbmltcG9ydCB7Y3JlYXRlQ29udGV4dCwgZ2V0R3FsRmllbGRzLCBnZXRMYW1iZGFEYXRhLCB0eXBlIExhbWJkYURhdGF9IGZyb20gJy4uL3V0aWxzL2luZGV4LmpzJztcblxuaW1wb3J0IHR5cGUge0FwaUNvbnRleHR9IGZyb20gJy4uL3R5cGVzL2F1dGgudHlwZXMuanMnO1xuaW1wb3J0IHR5cGUge0FQSUdhdGV3YXlFdmVudH0gZnJvbSAnYXdzLWxhbWJkYSc7XG5pbXBvcnQgdHlwZSB7RXhlY3V0aW9uUmVzdWx0fSBmcm9tICdncmFwaHFsJztcblxuY29uc3QgYWRkRmllbGRzTWlkZGxld2FyZSA9IChyZXNvbHZlLCBzb3VyY2UsIGFyZ3MsIGNvbnRleHQ6IEFwaUNvbnRleHQsIGluZm8pID0+IHtcbiAgY29uc3QgZW5oYW5jZWRDb250ZXh0ID0ge1xuICAgIC4uLmNvbnRleHQsXG4gICAgZmllbGRzOiBnZXRHcWxGaWVsZHMoaW5mbylcbiAgfTtcblxuICByZXR1cm4gcmVzb2x2ZShzb3VyY2UsIGFyZ3MsIGVuaGFuY2VkQ29udGV4dCwgaW5mbyk7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlR3JhcGhxbEhhbmRsZXIgPSAoY29udGV4dDogQXBpQ29udGV4dCkgPT5cbiAgYXN5bmMgKGV2ZW50OiBBUElHYXRld2F5RXZlbnQpOiBQcm9taXNlPEV4ZWN1dGlvblJlc3VsdCB8IFJlY29yZDxzdHJpbmcsIHVua25vd24+PiA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHVwZGF0ZWRDb250ZXh0OiBBcGlDb250ZXh0ID0gYXdhaXQgY3JlYXRlQ29udGV4dChjb250ZXh0LCBldmVudCk7XG4gICAgICBjb25zdCBsYW5ndWFnZUNvbnRleHQgPSBleHRyYWN0TGFuZ3VhZ2VDb250ZXh0KGV2ZW50KTtcblxuICAgICAgY29uc3QgY29udGV4dFdpdGhMYW5ndWFnZSA9IHtcbiAgICAgICAgY29uZmlnOiBDb25maWcuZ2V0KCksXG4gICAgICAgIC4uLnVwZGF0ZWRDb250ZXh0LFxuICAgICAgICBsYW5ndWFnZUNvbnRleHQsXG4gICAgICAgIHJlcXVlc3Q6IGV2ZW50XG4gICAgICB9O1xuXG4gICAgICBjb25zdCBhcHBseUZpZWxkc01pZGRsZXdhcmUgPSAodGM6IE9iamVjdFR5cGVDb21wb3Nlcjx1bmtub3duLCB1bmtub3duPikgPT4ge1xuICAgICAgICBPYmplY3Qua2V5cyh0Yy5nZXRGaWVsZHMoKSkuZm9yRWFjaCgoZmllbGROYW1lKSA9PiB7XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGlmKHRjLmhhc1Jlc29sdmVyKGZpZWxkTmFtZSkpIHtcbiAgICAgICAgICAgICAgdGMud3JhcFJlc29sdmVyKGZpZWxkTmFtZSwgYWRkRmllbGRzTWlkZGxld2FyZSBhcyBhbnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gY2F0Y2goZXJyb3IpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybihgU2tpcHBpbmcgZmllbGQgJHtmaWVsZE5hbWV9IC0gbm90IGEgcmVzb2x2ZXI6YCwgZXJyb3IubWVzc2FnZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH07XG5cbiAgICAgIGFwcGx5RmllbGRzTWlkZGxld2FyZShzY2hlbWFDb21wb3Nlci5RdWVyeSk7XG4gICAgICBhcHBseUZpZWxkc01pZGRsZXdhcmUoc2NoZW1hQ29tcG9zZXIuTXV0YXRpb24pO1xuXG4gICAgICBjb25zdCBwYXJzZURhdGEgPSBnZXRMYW1iZGFEYXRhKGV2ZW50IGFzIHVua25vd24gYXMgTGFtYmRhRGF0YSk7XG4gICAgICBjb25zdCBzY2hlbWEgPSBzY2hlbWFDb21wb3Nlci5idWlsZFNjaGVtYSgpO1xuICAgICAgY29uc3Qge2JvZHl9ID0gcGFyc2VEYXRhO1xuXG4gICAgICBpZighYm9keT8ucXVlcnkpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdObyBHcmFwaFFMIHF1ZXJ5IGZvdW5kIGluIHJlcXVlc3QgYm9keScpO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgZGF0YTogbnVsbCxcbiAgICAgICAgICAgIGVycm9yczogW3tcbiAgICAgICAgICAgICAgbWVzc2FnZTogJ05vIEdyYXBoUUwgcXVlcnkgZm91bmQgaW4gcmVxdWVzdCBib2R5J1xuICAgICAgICAgICAgfV1cbiAgICAgICAgICB9KSxcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nXG4gICAgICAgICAgfSxcbiAgICAgICAgICBzdGF0dXNDb2RlOiAyMDBcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgUHJvbWlzZS5yZXNvbHZlKGdyYXBocWwoe1xuICAgICAgICAgIGNvbnRleHRWYWx1ZTogY29udGV4dFdpdGhMYW5ndWFnZSxcbiAgICAgICAgICBzY2hlbWEsXG4gICAgICAgICAgc291cmNlOiBib2R5LnF1ZXJ5LFxuICAgICAgICAgIHZhcmlhYmxlVmFsdWVzOiBib2R5LnZhcmlhYmxlc1xuICAgICAgICB9KSk7XG5cbiAgICAgICAgaWYocmVzdWx0LmVycm9ycyAmJiByZXN1bHQuZXJyb3JzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdHcmFwaFFMIGV4ZWN1dGlvbiBlcnJvcnM6JywgcmVzdWx0LmVycm9ycyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHJlc3VsdCksXG4gICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ1xuICAgICAgICAgIH0sXG4gICAgICAgICAgc3RhdHVzQ29kZTogMjAwXG4gICAgICAgIH07XG4gICAgICB9IGNhdGNoKGdyYXBocWxFcnJvcjogdW5rbm93bikge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBkdXJpbmcgR3JhcGhRTCBleGVjdXRpb246JywgZ3JhcGhxbEVycm9yKTtcblxuICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBncmFwaHFsRXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGdyYXBocWxFcnJvci5tZXNzYWdlIDogJ0dyYXBoUUwgZXhlY3V0aW9uIGVycm9yJztcbiAgICAgICAgY29uc3QgZXJyb3JTdGFjayA9IGdyYXBocWxFcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZ3JhcGhxbEVycm9yLnN0YWNrIDogdW5kZWZpbmVkO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgZGF0YTogbnVsbCxcbiAgICAgICAgICAgIGVycm9yczogW3tcbiAgICAgICAgICAgICAgbWVzc2FnZTogZXJyb3JNZXNzYWdlLFxuICAgICAgICAgICAgICBzdGFjazogcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdkZXZlbG9wbWVudCcgPyBlcnJvclN0YWNrIDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9XVxuICAgICAgICAgIH0pLFxuICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbidcbiAgICAgICAgICB9LFxuICAgICAgICAgIHN0YXR1c0NvZGU6IDUwMFxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH0gY2F0Y2goZXJyOiB1bmtub3duKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdIYW5kbGVyIGVycm9yOicsIHtcbiAgICAgICAgbWVzc2FnZTogZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6ICdVbmtub3duIGVycm9yJyxcbiAgICAgICAgc3RhY2s6IGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLnN0YWNrIDogdW5kZWZpbmVkXG4gICAgICB9KTtcblxuICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6ICdBbiB1bmtub3duIGVycm9yIG9jY3VycmVkIGluIHRoZSBoYW5kbGVyJztcbiAgICAgIGNvbnN0IGVycm9yU3RhY2sgPSBlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5zdGFjayA6IHVuZGVmaW5lZDtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgIGRhdGE6IG51bGwsXG4gICAgICAgICAgZXJyb3JzOiBbe1xuICAgICAgICAgICAgbWVzc2FnZTogZXJyb3JNZXNzYWdlLFxuICAgICAgICAgICAgc3RhY2s6IHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAnZGV2ZWxvcG1lbnQnID8gZXJyb3JTdGFjayA6IHVuZGVmaW5lZFxuICAgICAgICAgIH1dXG4gICAgICAgIH0pLFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ1xuICAgICAgICB9LFxuICAgICAgICBzdGF0dXNDb2RlOiA1MDBcbiAgICAgIH07XG4gICAgfVxuICB9OyJdLAogICJtYXBwaW5ncyI6ICJBQUFBLE9BQVEsV0FBQUEsTUFBYyxVQUN0QixPQUE0QixrQkFBQUMsTUFBcUIsa0JBRWpELE9BQVEsVUFBQUMsTUFBYSxlQUNyQixPQUFRLDBCQUFBQyxNQUE2QiwyQkFDckMsT0FBUSxpQkFBQUMsRUFBZSxnQkFBQUMsRUFBYyxpQkFBQUMsTUFBcUMsb0JBTTFFLE1BQU1DLEVBQXNCLENBQUNDLEVBQVNDLEVBQVFDLEVBQU1DLEVBQXFCQyxJQUFTLENBQ2hGLE1BQU1DLEVBQWtCLENBQ3RCLEdBQUdGLEVBQ0gsT0FBUU4sRUFBYU8sQ0FBSSxDQUMzQixFQUVBLE9BQU9KLEVBQVFDLEVBQVFDLEVBQU1HLEVBQWlCRCxDQUFJLENBQ3BELEVBRWFFLEVBQXdCSCxHQUNuQyxNQUFPSSxHQUErRSxDQUNwRixHQUFJLENBQ0YsTUFBTUMsRUFBNkIsTUFBTVosRUFBY08sRUFBU0ksQ0FBSyxFQUMvREUsRUFBa0JkLEVBQXVCWSxDQUFLLEVBRTlDRyxFQUFzQixDQUMxQixPQUFRaEIsRUFBTyxJQUFJLEVBQ25CLEdBQUdjLEVBQ0gsZ0JBQUFDLEVBQ0EsUUFBU0YsQ0FDWCxFQUVNSSxFQUF5QkMsR0FBNkMsQ0FDMUUsT0FBTyxLQUFLQSxFQUFHLFVBQVUsQ0FBQyxFQUFFLFFBQVNDLEdBQWMsQ0FDakQsR0FBSSxDQUNDRCxFQUFHLFlBQVlDLENBQVMsR0FDekJELEVBQUcsYUFBYUMsRUFBV2QsQ0FBMEIsQ0FFekQsTUFBZSxDQUVmLENBQ0YsQ0FBQyxDQUNILEVBRUFZLEVBQXNCbEIsRUFBZSxLQUFLLEVBQzFDa0IsRUFBc0JsQixFQUFlLFFBQVEsRUFFN0MsTUFBTXFCLEVBQVloQixFQUFjUyxDQUE4QixFQUN4RFEsRUFBU3RCLEVBQWUsWUFBWSxFQUNwQyxDQUFDLEtBQUF1QixDQUFJLEVBQUlGLEVBRWYsR0FBRyxDQUFDRSxHQUFNLE1BR1IsTUFBTyxDQUNMLEtBQU0sS0FBSyxVQUFVLENBQ25CLEtBQU0sS0FDTixPQUFRLENBQUMsQ0FDUCxRQUFTLHdDQUNYLENBQUMsQ0FDSCxDQUFDLEVBQ0QsUUFBUyxDQUNQLGVBQWdCLGtCQUNsQixFQUNBLFdBQVksR0FDZCxFQUdGLEdBQUksQ0FDRixNQUFNQyxFQUFTLE1BQU0sUUFBUSxRQUFRekIsRUFBUSxDQUMzQyxhQUFja0IsRUFDZCxPQUFBSyxFQUNBLE9BQVFDLEVBQUssTUFDYixlQUFnQkEsRUFBSyxTQUN2QixDQUFDLENBQUMsRUFFRixPQUFHQyxFQUFPLFFBQVVBLEVBQU8sT0FBTyxPQUFTLEVBSXBDLENBQ0wsS0FBTSxLQUFLLFVBQVVBLENBQU0sRUFDM0IsUUFBUyxDQUNQLGVBQWdCLGtCQUNsQixFQUNBLFdBQVksR0FDZCxDQUNGLE9BQVFDLEVBQXVCLENBRzdCLE1BQU1DLEVBQWVELGFBQXdCLE1BQVFBLEVBQWEsUUFBVSwwQkFDdEVFLEVBQWFGLGFBQXdCLE1BQVFBLEVBQWEsTUFBUSxPQUV4RSxNQUFPLENBQ0wsS0FBTSxLQUFLLFVBQVUsQ0FDbkIsS0FBTSxLQUNOLE9BQVEsQ0FBQyxDQUNQLFFBQVNDLEVBQ1QsTUFBTyxRQUFRLElBQUksV0FBYSxjQUFnQkMsRUFBYSxNQUMvRCxDQUFDLENBQ0gsQ0FBQyxFQUNELFFBQVMsQ0FDUCxlQUFnQixrQkFDbEIsRUFDQSxXQUFZLEdBQ2QsQ0FDRixDQUNGLE9BQVFDLEVBQWMsQ0FNcEIsTUFBTUYsRUFBZUUsYUFBZSxNQUFRQSxFQUFJLFFBQVUsMkNBQ3BERCxFQUFhQyxhQUFlLE1BQVFBLEVBQUksTUFBUSxPQUV0RCxNQUFPLENBQ0wsS0FBTSxLQUFLLFVBQVUsQ0FDbkIsS0FBTSxLQUNOLE9BQVEsQ0FBQyxDQUNQLFFBQVNGLEVBQ1QsTUFBTyxRQUFRLElBQUksV0FBYSxjQUFnQkMsRUFBYSxNQUMvRCxDQUFDLENBQ0gsQ0FBQyxFQUNELFFBQVMsQ0FDUCxlQUFnQixrQkFDbEIsRUFDQSxXQUFZLEdBQ2QsQ0FDRixDQUNGIiwKICAibmFtZXMiOiBbImdyYXBocWwiLCAic2NoZW1hQ29tcG9zZXIiLCAiQ29uZmlnIiwgImV4dHJhY3RMYW5ndWFnZUNvbnRleHQiLCAiY3JlYXRlQ29udGV4dCIsICJnZXRHcWxGaWVsZHMiLCAiZ2V0TGFtYmRhRGF0YSIsICJhZGRGaWVsZHNNaWRkbGV3YXJlIiwgInJlc29sdmUiLCAic291cmNlIiwgImFyZ3MiLCAiY29udGV4dCIsICJpbmZvIiwgImVuaGFuY2VkQ29udGV4dCIsICJjcmVhdGVHcmFwaHFsSGFuZGxlciIsICJldmVudCIsICJ1cGRhdGVkQ29udGV4dCIsICJsYW5ndWFnZUNvbnRleHQiLCAiY29udGV4dFdpdGhMYW5ndWFnZSIsICJhcHBseUZpZWxkc01pZGRsZXdhcmUiLCAidGMiLCAiZmllbGROYW1lIiwgInBhcnNlRGF0YSIsICJzY2hlbWEiLCAiYm9keSIsICJyZXN1bHQiLCAiZ3JhcGhxbEVycm9yIiwgImVycm9yTWVzc2FnZSIsICJlcnJvclN0YWNrIiwgImVyciJdCn0K
package/lib/index.d.ts CHANGED
@@ -1,12 +1,19 @@
1
- export { graphql, graphqlSync, GraphQLBoolean, GraphQLFloat, GraphQLID, GraphQLInt, GraphQLList, GraphQLObjectType, GraphQLNonNull, GraphQLString } from 'graphql';
1
+ /**
2
+ * Copyright (c) 2019-Present, Nitrogen Labs, Inc.
3
+ * Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
4
+ */
5
+ export { graphql, GraphQLBoolean, GraphQLFloat, GraphQLID, GraphQLInt, GraphQLList, GraphQLNonNull, GraphQLObjectType, GraphQLString, graphqlSync } from 'graphql';
2
6
  export { schemaComposer } from 'graphql-compose';
3
- export type { InputTypeComposer, ObjectTypeComposer } from 'graphql-compose';
4
7
  export type { ExecutionResult } from 'graphql';
5
- export * from './actions';
6
- export * from './lambdas/authorizer';
7
- export * from './lambdas/connection';
8
- export * from './mutations';
9
- export * from './objectTypes';
10
- export * from './queries';
11
- export * from './utils';
12
- export * from './types';
8
+ export type { InputTypeComposer, ObjectTypeComposer } from 'graphql-compose';
9
+ export * from './actions/index.js';
10
+ export * from './adapters/index.js';
11
+ export * from './config.js';
12
+ export * from './handlers/graphqlHandler.js';
13
+ export * from './lambdas/authorizer.js';
14
+ export * from './lambdas/connection.js';
15
+ export * from './mutations/index.js';
16
+ export * from './objectTypes/index.js';
17
+ export * from './queries/index.js';
18
+ export * from './types/index.js';
19
+ export * from './utils/index.js';
package/lib/index.js CHANGED
@@ -1,66 +1,2 @@
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==
1
+ import{graphql as p,GraphQLBoolean as e,GraphQLFloat as t,GraphQLID as m,GraphQLInt as x,GraphQLList as a,GraphQLNonNull as f,GraphQLObjectType as h,GraphQLString as l,graphqlSync as L}from"graphql";import{schemaComposer as Q}from"graphql-compose";export*from"./actions/index.js";export*from"./adapters/index.js";export*from"./config.js";export*from"./handlers/graphqlHandler.js";export*from"./lambdas/authorizer.js";export*from"./lambdas/connection.js";export*from"./mutations/index.js";export*from"./objectTypes/index.js";export*from"./queries/index.js";export*from"./types/index.js";export*from"./utils/index.js";export{e as GraphQLBoolean,t as GraphQLFloat,m as GraphQLID,x as GraphQLInt,a as GraphQLList,f as GraphQLNonNull,h as GraphQLObjectType,l as GraphQLString,p as graphql,L as graphqlSync,Q as schemaComposer};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuZXhwb3J0IHtcbiAgZ3JhcGhxbCwgR3JhcGhRTEJvb2xlYW4sXG4gIEdyYXBoUUxGbG9hdCxcbiAgR3JhcGhRTElELFxuICBHcmFwaFFMSW50LFxuICBHcmFwaFFMTGlzdCwgR3JhcGhRTE5vbk51bGwsIEdyYXBoUUxPYmplY3RUeXBlLCBHcmFwaFFMU3RyaW5nLCBncmFwaHFsU3luY1xufSBmcm9tICdncmFwaHFsJztcbmV4cG9ydCB7c2NoZW1hQ29tcG9zZXJ9IGZyb20gJ2dyYXBocWwtY29tcG9zZSc7XG5cbmV4cG9ydCB0eXBlIHtFeGVjdXRpb25SZXN1bHR9IGZyb20gJ2dyYXBocWwnO1xuZXhwb3J0IHR5cGUge0lucHV0VHlwZUNvbXBvc2VyLCBPYmplY3RUeXBlQ29tcG9zZXJ9IGZyb20gJ2dyYXBocWwtY29tcG9zZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9ucy9pbmRleC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2FkYXB0ZXJzL2luZGV4LmpzJztcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlnLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vaGFuZGxlcnMvZ3JhcGhxbEhhbmRsZXIuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9sYW1iZGFzL2F1dGhvcml6ZXIuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9sYW1iZGFzL2Nvbm5lY3Rpb24uanMnO1xuZXhwb3J0ICogZnJvbSAnLi9tdXRhdGlvbnMvaW5kZXguanMnO1xuZXhwb3J0ICogZnJvbSAnLi9vYmplY3RUeXBlcy9pbmRleC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3F1ZXJpZXMvaW5kZXguanMnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcy9pbmRleC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL2luZGV4LmpzJztcblxuIl0sCiAgIm1hcHBpbmdzIjogIkFBSUEsT0FDRSxXQUFBQSxFQUFTLGtCQUFBQyxFQUNULGdCQUFBQyxFQUNBLGFBQUFDLEVBQ0EsY0FBQUMsRUFDQSxlQUFBQyxFQUFhLGtCQUFBQyxFQUFnQixxQkFBQUMsRUFBbUIsaUJBQUFDLEVBQWUsZUFBQUMsTUFDMUQsVUFDUCxPQUFRLGtCQUFBQyxNQUFxQixrQkFLN0IsV0FBYyxxQkFDZCxXQUFjLHNCQUNkLFdBQWMsY0FDZCxXQUFjLCtCQUNkLFdBQWMsMEJBQ2QsV0FBYywwQkFDZCxXQUFjLHVCQUNkLFdBQWMseUJBQ2QsV0FBYyxxQkFDZCxXQUFjLG1CQUNkLFdBQWMiLAogICJuYW1lcyI6IFsiZ3JhcGhxbCIsICJHcmFwaFFMQm9vbGVhbiIsICJHcmFwaFFMRmxvYXQiLCAiR3JhcGhRTElEIiwgIkdyYXBoUUxJbnQiLCAiR3JhcGhRTExpc3QiLCAiR3JhcGhRTE5vbk51bGwiLCAiR3JhcGhRTE9iamVjdFR5cGUiLCAiR3JhcGhRTFN0cmluZyIsICJncmFwaHFsU3luYyIsICJzY2hlbWFDb21wb3NlciJdCn0K
@@ -1,7 +1,7 @@
1
- import { ApiContext } from '../../types/auth.types';
2
- import { WebsocketConnection } from '../../types/websockets.types';
1
+ import type { ApiContext } from '../../types/auth.types.js';
2
+ import type { WebsocketConnection } from '../../types/websockets.types.js';
3
3
  export declare const addConnection: (connectionId: string, token: string) => Promise<WebsocketConnection>;
4
- export declare const getConnectionByUserId: (userId: string) => Promise<WebsocketConnection>;
4
+ export declare const getConnectionByUserId: (userId?: string) => Promise<WebsocketConnection>;
5
5
  export declare const getConnectionById: (socketId: string) => Promise<WebsocketConnection>;
6
6
  export declare const getConnectionByConvo: (context: ApiContext, convoId: string) => Promise<WebsocketConnection[]>;
7
7
  export declare const removeConnection: (connectionId: string) => Promise<WebsocketConnection>;
@@ -1,83 +1,11 @@
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}
1
+ import{aql as c}from"arangojs";import{createHash as m,parseId as R,parseString as E}from"@nlabs/utils/parsers/strings";import{useDb as i}from"../../utils/arangodbUtils.js";import{getSession as p}from"../../utils/sessionUtils.js";const{ARANGODB_DATABASE:a}=process.env,g=async(e,r)=>{const o=E(e,32),{userId:t}=p(r);if(!t)return{_key:"",socketId:"",userId:""};try{const n=i(a),I={connectionId:o,modified:Date.now()},d={...I,_key:m(`connection-${o}`),userId:t},s=c`UPSERT {userId: ${d.userId}}
2
+ INSERT ${d}
3
+ UPDATE ${I}
4
+ IN connections RETURN NEW`;return n.query(s).then(u=>u.next()).catch(u=>{throw u})}catch{throw new Error("Unauthorized Context")}},C=e=>{const r=R(e),o=i(a),t=c`FOR c IN connections
5
+ FILTER c.userId == ${r}
70
6
  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}
7
+ RETURN c`;return o.query(t).then(n=>n.next()).catch(n=>{throw n})},U=e=>{const r=E(e,32),o=i(a),t=c`FOR c IN connections
8
+ FILTER c.connectionId == ${r}
81
9
  LET user = FIRST(
82
10
  FOR u IN users
83
11
  FILTER u.userId == c.userId
@@ -85,48 +13,18 @@ const getConnectionById = (socketId) => {
85
13
  RETURN u;
86
14
  )
87
15
  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}
16
+ RETURN MERGE(c, {user:user}`;return o.query(t).then(n=>n.next()).catch(n=>{throw n})},D=(e,r)=>{const{session:{userId:o=""}={}}=e,t=`users/${R(o)}`,n=`conversations/${R(r)}`,I=i(a),d=c`FOR c, e IN 1..1 OUTBOUND ${t} hasConversation
17
+ FILTER c._id == ${n}
100
18
  LIMIT 1
101
19
  LET u = (
102
- FOR inUser, inEdge IN 1..1 INBOUND ${convoDocId} hasConversation
20
+ FOR inUser, inEdge IN 1..1 INBOUND ${n} hasConversation
103
21
  FOR n IN connections
104
22
  FILTER inUser.userId == n.userId
105
23
  RETURN n.connectionId
106
24
  )
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}
25
+ RETURN u`;return I.query(d).then(s=>s.all()).catch(s=>{throw s})},q=e=>{const r=E(e,32),o=i(a),t=c`FOR c IN connections
26
+ FILTER c.connectionId == ${r}
117
27
  LIMIT 1
118
28
  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,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2xhbWJkYXMvYWN0aW9ucy93ZWJzb2NrZXRzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAyMS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHtjcmVhdGVIYXNoLCBwYXJzZUlkLCBwYXJzZVN0cmluZ30gZnJvbSAnQG5sYWJzL3V0aWxzJztcbmltcG9ydCB7YXFsLCBEYXRhYmFzZX0gZnJvbSAnYXJhbmdvanMnO1xuaW1wb3J0IHtBcWxRdWVyeX0gZnJvbSAnYXJhbmdvanMvYXFsJztcblxuaW1wb3J0IHtBcGlDb250ZXh0fSBmcm9tICcuLi8uLi90eXBlcy9hdXRoLnR5cGVzJztcbmltcG9ydCB7V2Vic29ja2V0Q29ubmVjdGlvbn0gZnJvbSAnLi4vLi4vdHlwZXMvd2Vic29ja2V0cy50eXBlcyc7XG5pbXBvcnQge3VzZURifSBmcm9tICcuLi8uLi91dGlscy9hcmFuZ29kYlV0aWxzJztcbmltcG9ydCB7Z2V0U2Vzc2lvbn0gZnJvbSAnLi4vLi4vdXRpbHMvc2Vzc2lvbic7XG5cbmNvbnN0IHtBUkFOR09EQl9EQVRBQkFTRTogZGF0YWJhc2V9ID0gcHJvY2Vzcy5lbnY7XG5cbmV4cG9ydCBjb25zdCBhZGRDb25uZWN0aW9uID0gYXN5bmMgKGNvbm5lY3Rpb25JZDogc3RyaW5nLCB0b2tlbjogc3RyaW5nKTogUHJvbWlzZTxXZWJzb2NrZXRDb25uZWN0aW9uPiA9PiB7XG4gIC8vIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2RlbGV0ZSc7XG4gIGNvbnN0IGZvcm1hdENvbm5JZDogc3RyaW5nID0gcGFyc2VTdHJpbmcoY29ubmVjdGlvbklkLCAzMik7XG5cbiAgLy8gVmVyaWZpZXMgdG9rZW5cbiAgY29uc3Qge3VzZXJJZH0gPSBnZXRTZXNzaW9uKHRva2VuKTtcblxuICBpZighdXNlcklkKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIF9rZXk6ICcnLFxuICAgICAgc29ja2V0SWQ6ICcnLFxuICAgICAgdXNlcklkOiAnJ1xuICAgIH07XG4gIH1cblxuICB0cnkge1xuICAgIGNvbnN0IGRiOiBEYXRhYmFzZSA9IHVzZURiKGRhdGFiYXNlKTtcbiAgICBjb25zdCB1cGRhdGUgPSB7XG4gICAgICBjb25uZWN0aW9uSWQ6IGZvcm1hdENvbm5JZCxcbiAgICAgIG1vZGlmaWVkOiBEYXRlLm5vdygpXG4gICAgfTtcbiAgICBjb25zdCBpbnNlcnQgPSB7XG4gICAgICAuLi51cGRhdGUsXG4gICAgICBfa2V5OiBjcmVhdGVIYXNoKGBjb25uZWN0aW9uLSR7Zm9ybWF0Q29ubklkfWApLFxuICAgICAgdXNlcklkXG4gICAgfTtcbiAgICBjb25zdCBhcWxRcnk6IEFxbFF1ZXJ5ID0gYXFsYFVQU0VSVCB7dXNlcklkOiAke2luc2VydC51c2VySWR9fVxuICAgICAgSU5TRVJUICR7aW5zZXJ0fVxuICAgICAgVVBEQVRFICR7dXBkYXRlfVxuICAgICAgSU4gY29ubmVjdGlvbnMgUkVUVVJOIE5FV2A7XG5cbiAgICByZXR1cm4gZGIucXVlcnkoYXFsUXJ5KVxuICAgICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICAgIHRocm93IGVycm9yO1xuICAgICAgfSk7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICBjb25zb2xlLmxvZygncGFyc2VDb250ZXh0OjplcnJvcicsIGVycm9yKTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYXV0aG9yaXplZCBDb250ZXh0Jyk7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDb25uZWN0aW9uQnlVc2VySWQgPSAodXNlcklkOiBzdHJpbmcpOiBQcm9taXNlPFdlYnNvY2tldENvbm5lY3Rpb24+ID0+IHtcbiAgY29uc3QgZm9ybWF0VXNlcklkOiBzdHJpbmcgPSBwYXJzZUlkKHVzZXJJZCk7XG4gIGNvbnN0IGRiOiBEYXRhYmFzZSA9IHVzZURiKGRhdGFiYXNlKTtcbiAgY29uc3QgYXFsUXJ5ID0gYXFsYEZPUiBjIElOIGNvbm5lY3Rpb25zXG4gICAgRklMVEVSIGMudXNlcklkID09ICR7Zm9ybWF0VXNlcklkfVxuICAgIExJTUlUIDFcbiAgICBSRVRVUk4gY2A7XG5cbiAgcmV0dXJuIGRiLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDb25uZWN0aW9uQnlJZCA9IChzb2NrZXRJZDogc3RyaW5nKTogUHJvbWlzZTxXZWJzb2NrZXRDb25uZWN0aW9uPiA9PiB7XG4gIGNvbnN0IGZvcm1hdFNvY2tldElkOiBzdHJpbmcgPSBwYXJzZVN0cmluZyhzb2NrZXRJZCwgMzIpO1xuICBjb25zdCBkYjogRGF0YWJhc2UgPSB1c2VEYihkYXRhYmFzZSk7XG4gIGNvbnN0IGFxbFFyeSA9IGFxbGBGT1IgYyBJTiBjb25uZWN0aW9uc1xuICAgIEZJTFRFUiBjLmNvbm5lY3Rpb25JZCA9PSAke2Zvcm1hdFNvY2tldElkfVxuICAgIExFVCB1c2VyID0gRklSU1QoXG4gICAgICBGT1IgdSBJTiB1c2Vyc1xuICAgICAgRklMVEVSIHUudXNlcklkID09IGMudXNlcklkXG4gICAgICBMSU1JVCAxXG4gICAgICBSRVRVUk4gdTtcbiAgICApXG4gICAgTElNSVQgMVxuICAgIFJFVFVSTiBNRVJHRShjLCB7dXNlcjp1c2VyfWA7XG5cbiAgcmV0dXJuIGRiLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDb25uZWN0aW9uQnlDb252byA9IChjb250ZXh0OiBBcGlDb250ZXh0LCBjb252b0lkOiBzdHJpbmcpOiBQcm9taXNlPFdlYnNvY2tldENvbm5lY3Rpb25bXT4gPT4ge1xuICBjb25zdCB7c2Vzc2lvbjoge3VzZXJJZDogc2Vzc2lvbklkfX0gPSBjb250ZXh0O1xuICBjb25zdCBzZXNzaW9uRG9jSWQ6IHN0cmluZyA9IGB1c2Vycy8ke3BhcnNlSWQoc2Vzc2lvbklkKX1gO1xuICBjb25zdCBjb252b0RvY0lkOiBzdHJpbmcgPSBgY29udmVyc2F0aW9ucy8ke3BhcnNlSWQoY29udm9JZCl9YDtcbiAgY29uc3QgZGI6IERhdGFiYXNlID0gdXNlRGIoZGF0YWJhc2UpO1xuICBjb25zdCBhcWxRcnkgPSBhcWxgRk9SIGMsIGUgSU4gMS4uMSBPVVRCT1VORCAke3Nlc3Npb25Eb2NJZH0gaGFzQ29udmVyc2F0aW9uXG4gIEZJTFRFUiBjLl9pZCA9PSAke2NvbnZvRG9jSWR9XG4gIExJTUlUIDFcbiAgTEVUIHUgPSAoXG4gICAgRk9SIGluVXNlciwgaW5FZGdlIElOIDEuLjEgSU5CT1VORCAke2NvbnZvRG9jSWR9IGhhc0NvbnZlcnNhdGlvblxuICAgIEZPUiBuIElOIGNvbm5lY3Rpb25zXG4gICAgRklMVEVSIGluVXNlci51c2VySWQgPT0gbi51c2VySWRcbiAgICBSRVRVUk4gbi5jb25uZWN0aW9uSWRcbiAgKVxuICBSRVRVUk4gdWA7XG5cbiAgcmV0dXJuIGRiLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IHJlbW92ZUNvbm5lY3Rpb24gPSAoY29ubmVjdGlvbklkOiBzdHJpbmcpOiBQcm9taXNlPFdlYnNvY2tldENvbm5lY3Rpb24+ID0+IHtcbiAgLy8gY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnZGVsZXRlJztcbiAgY29uc3QgZm9ybWF0Q29ubklkOiBzdHJpbmcgPSBwYXJzZVN0cmluZyhjb25uZWN0aW9uSWQsIDMyKTtcbiAgY29uc3QgZGI6IERhdGFiYXNlID0gdXNlRGIoZGF0YWJhc2UpO1xuICBjb25zdCBhcWxRcnkgPSBhcWxgRk9SIGMgSU4gY29ubmVjdGlvbnNcbiAgICAgIEZJTFRFUiBjLmNvbm5lY3Rpb25JZCA9PSAke2Zvcm1hdENvbm5JZH1cbiAgICAgIExJTUlUIDFcbiAgICAgIFJFTU9WRSBjIElOIGNvbm5lY3Rpb25zXG4gICAgICBSRVRVUk4gT0xEYDtcblxuICByZXR1cm4gZGIucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0pO1xufTtcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUEsbUJBQStDO0FBQy9DLHNCQUE0QjtBQUs1QiwyQkFBb0I7QUFDcEIscUJBQXlCO0FBRXpCLE1BQU0sRUFBQyxtQkFBbUIsU0FBUSxJQUFJLFFBQVE7QUFFdkMsTUFBTSxnQkFBZ0IsT0FBTyxjQUFzQixVQUFnRDtBQUV4RyxRQUFNLG1CQUF1QiwwQkFBWSxjQUFjLEVBQUU7QUFHekQsUUFBTSxFQUFDLE9BQU0sUUFBSSwyQkFBVyxLQUFLO0FBRWpDLE1BQUcsQ0FBQyxRQUFRO0FBQ1YsV0FBTztBQUFBLE1BQ0wsTUFBTTtBQUFBLE1BQ04sVUFBVTtBQUFBLE1BQ1YsUUFBUTtBQUFBLElBQ1Y7QUFBQSxFQUNGO0FBRUEsTUFBSTtBQUNGLFVBQU0sU0FBZSw0QkFBTSxRQUFRO0FBQ25DLFVBQU0sU0FBUztBQUFBLE1BQ2IsY0FBYztBQUFBLE1BQ2QsVUFBVSxL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
29
+ RETURN OLD`;return o.query(t).then(n=>n.next()).catch(n=>{throw n})};export{g as addConnection,D as getConnectionByConvo,U as getConnectionById,C as getConnectionByUserId,q as removeConnection};
30
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2xhbWJkYXMvYWN0aW9ucy93ZWJzb2NrZXRzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAyMS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHthcWwsIERhdGFiYXNlfSBmcm9tICdhcmFuZ29qcyc7XG5cbmltcG9ydCB7Y3JlYXRlSGFzaCwgcGFyc2VJZCwgcGFyc2VTdHJpbmd9IGZyb20gJ0BubGFicy91dGlscy9wYXJzZXJzL3N0cmluZ3MnO1xuaW1wb3J0IHt1c2VEYn0gZnJvbSAnLi4vLi4vdXRpbHMvYXJhbmdvZGJVdGlscy5qcyc7XG5pbXBvcnQge2dldFNlc3Npb259IGZyb20gJy4uLy4uL3V0aWxzL3Nlc3Npb25VdGlscy5qcyc7XG5cbmltcG9ydCB0eXBlIHtBcWxRdWVyeX0gZnJvbSAnYXJhbmdvanMvYXFsJztcbmltcG9ydCB0eXBlIHtBcGlDb250ZXh0fSBmcm9tICcuLi8uLi90eXBlcy9hdXRoLnR5cGVzLmpzJztcbmltcG9ydCB0eXBlIHtXZWJzb2NrZXRDb25uZWN0aW9ufSBmcm9tICcuLi8uLi90eXBlcy93ZWJzb2NrZXRzLnR5cGVzLmpzJztcbmNvbnN0IHtBUkFOR09EQl9EQVRBQkFTRTogZGF0YWJhc2VOYW1lfSA9IHByb2Nlc3MuZW52O1xuXG5leHBvcnQgY29uc3QgYWRkQ29ubmVjdGlvbiA9IGFzeW5jIChjb25uZWN0aW9uSWQ6IHN0cmluZywgdG9rZW46IHN0cmluZyk6IFByb21pc2U8V2Vic29ja2V0Q29ubmVjdGlvbj4gPT4ge1xuICAvLyBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdkZWxldGUnO1xuICBjb25zdCBmb3JtYXRDb25uSWQ6IHN0cmluZyA9IHBhcnNlU3RyaW5nKGNvbm5lY3Rpb25JZCwgMzIpO1xuXG4gIC8vIFZlcmlmaWVzIHRva2VuXG4gIGNvbnN0IHt1c2VySWR9ID0gZ2V0U2Vzc2lvbih0b2tlbik7XG5cbiAgaWYoIXVzZXJJZCkge1xuICAgIHJldHVybiB7XG4gICAgICBfa2V5OiAnJyxcbiAgICAgIHNvY2tldElkOiAnJyxcbiAgICAgIHVzZXJJZDogJydcbiAgICB9O1xuICB9XG5cbiAgdHJ5IHtcbiAgICBjb25zdCBkYjogRGF0YWJhc2UgPSB1c2VEYihkYXRhYmFzZU5hbWUpO1xuICAgIGNvbnN0IHVwZGF0ZSA9IHtcbiAgICAgIGNvbm5lY3Rpb25JZDogZm9ybWF0Q29ubklkLFxuICAgICAgbW9kaWZpZWQ6IERhdGUubm93KClcbiAgICB9O1xuICAgIGNvbnN0IGluc2VydCA9IHtcbiAgICAgIC4uLnVwZGF0ZSxcbiAgICAgIF9rZXk6IGNyZWF0ZUhhc2goYGNvbm5lY3Rpb24tJHtmb3JtYXRDb25uSWR9YCksXG4gICAgICB1c2VySWRcbiAgICB9O1xuICAgIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgVVBTRVJUIHt1c2VySWQ6ICR7aW5zZXJ0LnVzZXJJZH19XG4gICAgICBJTlNFUlQgJHtpbnNlcnR9XG4gICAgICBVUERBVEUgJHt1cGRhdGV9XG4gICAgICBJTiBjb25uZWN0aW9ucyBSRVRVUk4gTkVXYDtcblxuICAgIHJldHVybiBkYi5xdWVyeShhcWxRcnkpXG4gICAgICAudGhlbigoY3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICB9KTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGNvbnNvbGUubG9nKCdwYXJzZUNvbnRleHQ6OmVycm9yJywgZXJyb3IpO1xuICAgIHRocm93IG5ldyBFcnJvcignVW5hdXRob3JpemVkIENvbnRleHQnKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGdldENvbm5lY3Rpb25CeVVzZXJJZCA9ICh1c2VySWQ/OiBzdHJpbmcpOiBQcm9taXNlPFdlYnNvY2tldENvbm5lY3Rpb24+ID0+IHtcbiAgY29uc3QgZm9ybWF0VXNlcklkOiBzdHJpbmcgPSBwYXJzZUlkKHVzZXJJZCk7XG4gIGNvbnN0IGRiOiBEYXRhYmFzZSA9IHVzZURiKGRhdGFiYXNlTmFtZSk7XG4gIGNvbnN0IGFxbFFyeSA9IGFxbGBGT1IgYyBJTiBjb25uZWN0aW9uc1xuICAgIEZJTFRFUiBjLnVzZXJJZCA9PSAke2Zvcm1hdFVzZXJJZH1cbiAgICBMSU1JVCAxXG4gICAgUkVUVVJOIGNgO1xuXG4gIHJldHVybiBkYi5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q29ubmVjdGlvbkJ5SWQgPSAoc29ja2V0SWQ6IHN0cmluZyk6IFByb21pc2U8V2Vic29ja2V0Q29ubmVjdGlvbj4gPT4ge1xuICBjb25zdCBmb3JtYXRTb2NrZXRJZDogc3RyaW5nID0gcGFyc2VTdHJpbmcoc29ja2V0SWQsIDMyKTtcbiAgY29uc3QgZGI6IERhdGFiYXNlID0gdXNlRGIoZGF0YWJhc2VOYW1lKTtcbiAgY29uc3QgYXFsUXJ5ID0gYXFsYEZPUiBjIElOIGNvbm5lY3Rpb25zXG4gICAgRklMVEVSIGMuY29ubmVjdGlvbklkID09ICR7Zm9ybWF0U29ja2V0SWR9XG4gICAgTEVUIHVzZXIgPSBGSVJTVChcbiAgICAgIEZPUiB1IElOIHVzZXJzXG4gICAgICBGSUxURVIgdS51c2VySWQgPT0gYy51c2VySWRcbiAgICAgIExJTUlUIDFcbiAgICAgIFJFVFVSTiB1O1xuICAgIClcbiAgICBMSU1JVCAxXG4gICAgUkVUVVJOIE1FUkdFKGMsIHt1c2VyOnVzZXJ9YDtcblxuICByZXR1cm4gZGIucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldENvbm5lY3Rpb25CeUNvbnZvID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIGNvbnZvSWQ6IHN0cmluZyk6IFByb21pc2U8V2Vic29ja2V0Q29ubmVjdGlvbltdPiA9PiB7XG4gIGNvbnN0IHtzZXNzaW9uOiB7dXNlcklkOiBzZXNzaW9uSWQgPSAnJ30gPSB7fX0gPSBjb250ZXh0O1xuICBjb25zdCBzZXNzaW9uRG9jSWQ6IHN0cmluZyA9IGB1c2Vycy8ke3BhcnNlSWQoc2Vzc2lvbklkKX1gO1xuICBjb25zdCBjb252b0RvY0lkOiBzdHJpbmcgPSBgY29udmVyc2F0aW9ucy8ke3BhcnNlSWQoY29udm9JZCl9YDtcbiAgY29uc3QgZGI6IERhdGFiYXNlID0gdXNlRGIoZGF0YWJhc2VOYW1lKTtcbiAgY29uc3QgYXFsUXJ5ID0gYXFsYEZPUiBjLCBlIElOIDEuLjEgT1VUQk9VTkQgJHtzZXNzaW9uRG9jSWR9IGhhc0NvbnZlcnNhdGlvblxuICBGSUxURVIgYy5faWQgPT0gJHtjb252b0RvY0lkfVxuICBMSU1JVCAxXG4gIExFVCB1ID0gKFxuICAgIEZPUiBpblVzZXIsIGluRWRnZSBJTiAxLi4xIElOQk9VTkQgJHtjb252b0RvY0lkfSBoYXNDb252ZXJzYXRpb25cbiAgICBGT1IgbiBJTiBjb25uZWN0aW9uc1xuICAgIEZJTFRFUiBpblVzZXIudXNlcklkID09IG4udXNlcklkXG4gICAgUkVUVVJOIG4uY29ubmVjdGlvbklkXG4gIClcbiAgUkVUVVJOIHVgO1xuXG4gIHJldHVybiBkYi5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLmFsbCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCByZW1vdmVDb25uZWN0aW9uID0gKGNvbm5lY3Rpb25JZDogc3RyaW5nKTogUHJvbWlzZTxXZWJzb2NrZXRDb25uZWN0aW9uPiA9PiB7XG4gIC8vIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2RlbGV0ZSc7XG4gIGNvbnN0IGZvcm1hdENvbm5JZDogc3RyaW5nID0gcGFyc2VTdHJpbmcoY29ubmVjdGlvbklkLCAzMik7XG4gIGNvbnN0IGRiOiBEYXRhYmFzZSA9IHVzZURiKGRhdGFiYXNlTmFtZSk7XG4gIGNvbnN0IGFxbFFyeSA9IGFxbGBGT1IgYyBJTiBjb25uZWN0aW9uc1xuICAgICAgRklMVEVSIGMuY29ubmVjdGlvbklkID09ICR7Zm9ybWF0Q29ubklkfVxuICAgICAgTElNSVQgMVxuICAgICAgUkVNT1ZFIGMgSU4gY29ubmVjdGlvbnNcbiAgICAgIFJFVFVSTiBPTERgO1xuXG4gIHJldHVybiBkYi5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSk7XG59O1xuIl0sCiAgIm1hcHBpbmdzIjogIkFBSUEsT0FBUSxPQUFBQSxNQUFvQixXQUU1QixPQUFRLGNBQUFDLEVBQVksV0FBQUMsRUFBUyxlQUFBQyxNQUFrQiwrQkFDL0MsT0FBUSxTQUFBQyxNQUFZLCtCQUNwQixPQUFRLGNBQUFDLE1BQWlCLDhCQUt6QixLQUFNLENBQUMsa0JBQW1CQyxDQUFZLEVBQUksUUFBUSxJQUVyQ0MsRUFBZ0IsTUFBT0MsRUFBc0JDLElBQWdELENBRXhHLE1BQU1DLEVBQXVCUCxFQUFZSyxFQUFjLEVBQUUsRUFHbkQsQ0FBQyxPQUFBRyxDQUFNLEVBQUlOLEVBQVdJLENBQUssRUFFakMsR0FBRyxDQUFDRSxFQUNGLE1BQU8sQ0FDTCxLQUFNLEdBQ04sU0FBVSxHQUNWLE9BQVEsRUFDVixFQUdGLEdBQUksQ0FDRixNQUFNQyxFQUFlUixFQUFNRSxDQUFZLEVBQ2pDTyxFQUFTLENBQ2IsYUFBY0gsRUFDZCxTQUFVLEtBQUssSUFBSSxDQUNyQixFQUNNSSxFQUFTLENBQ2IsR0FBR0QsRUFDSCxLQUFNWixFQUFXLGNBQWNTLENBQVksRUFBRSxFQUM3QyxPQUFBQyxDQUNGLEVBQ01JLEVBQW1CZixvQkFBc0JjLEVBQU8sTUFBTTtBQUFBLGVBQ2pEQSxDQUFNO0FBQUEsZUFDTkQsQ0FBTTtBQUFBLGlDQUdqQixPQUFPRCxFQUFHLE1BQU1HLENBQU0sRUFDbkIsS0FBTUMsR0FBV0EsRUFBTyxLQUFLLENBQUMsRUFDOUIsTUFBT0MsR0FBaUIsQ0FDdkIsTUFBTUEsQ0FDUixDQUFDLENBQ0wsTUFBZSxDQUViLE1BQU0sSUFBSSxNQUFNLHNCQUFzQixDQUN4QyxDQUNGLEVBRWFDLEVBQXlCUCxHQUFrRCxDQUN0RixNQUFNUSxFQUF1QmpCLEVBQVFTLENBQU0sRUFDckNDLEVBQWVSLEVBQU1FLENBQVksRUFDakNTLEVBQVNmO0FBQUEseUJBQ1FtQixDQUFZO0FBQUE7QUFBQSxjQUluQyxPQUFPUCxFQUFHLE1BQU1HLENBQU0sRUFDbkIsS0FBTUMsR0FBV0EsRUFBTyxLQUFLLENBQUMsRUFDOUIsTUFBT0MsR0FBaUIsQ0FDdkIsTUFBTUEsQ0FDUixDQUFDLENBQ0wsRUFFYUcsRUFBcUJDLEdBQW1ELENBQ25GLE1BQU1DLEVBQXlCbkIsRUFBWWtCLEVBQVUsRUFBRSxFQUNqRFQsRUFBZVIsRUFBTUUsQ0FBWSxFQUNqQ1MsRUFBU2Y7QUFBQSwrQkFDY3NCLENBQWM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLGlDQVUzQyxPQUFPVixFQUFHLE1BQU1HLENBQU0sRUFDbkIsS0FBTUMsR0FBV0EsRUFBTyxLQUFLLENBQUMsRUFDOUIsTUFBT0MsR0FBaUIsQ0FDdkIsTUFBTUEsQ0FDUixDQUFDLENBQ0wsRUFFYU0sRUFBdUIsQ0FBQ0MsRUFBcUJDLElBQW9ELENBQzVHLEtBQU0sQ0FBQyxRQUFTLENBQUMsT0FBUUMsRUFBWSxFQUFFLEVBQUksQ0FBQyxDQUFDLEVBQUlGLEVBQzNDRyxFQUF1QixTQUFTekIsRUFBUXdCLENBQVMsQ0FBQyxHQUNsREUsRUFBcUIsaUJBQWlCMUIsRUFBUXVCLENBQU8sQ0FBQyxHQUN0RGIsRUFBZVIsRUFBTUUsQ0FBWSxFQUNqQ1MsRUFBU2YsOEJBQWdDMkIsQ0FBWTtBQUFBLG9CQUN6Q0MsQ0FBVTtBQUFBO0FBQUE7QUFBQSx5Q0FHV0EsQ0FBVTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsWUFPakQsT0FBT2hCLEVBQUcsTUFBTUcsQ0FBTSxFQUNuQixLQUFNQyxHQUFXQSxFQUFPLElBQUksQ0FBQyxFQUM3QixNQUFPQyxHQUFpQixDQUN2QixNQUFNQSxDQUNSLENBQUMsQ0FDTCxFQUVhWSxFQUFvQnJCLEdBQXVELENBRXRGLE1BQU1FLEVBQXVCUCxFQUFZSyxFQUFjLEVBQUUsRUFDbkRJLEVBQWVSLEVBQU1FLENBQVksRUFDakNTLEVBQVNmO0FBQUEsaUNBQ2dCVSxDQUFZO0FBQUE7QUFBQTtBQUFBLGtCQUszQyxPQUFPRSxFQUFHLE1BQU1HLENBQU0sRUFDbkIsS0FBTUMsR0FBV0EsRUFBTyxLQUFLLENBQUMsRUFDOUIsTUFBT0MsR0FBaUIsQ0FDdkIsTUFBTUEsQ0FDUixDQUFDLENBQ0wiLAogICJuYW1lcyI6IFsiYXFsIiwgImNyZWF0ZUhhc2giLCAicGFyc2VJZCIsICJwYXJzZVN0cmluZyIsICJ1c2VEYiIsICJnZXRTZXNzaW9uIiwgImRhdGFiYXNlTmFtZSIsICJhZGRDb25uZWN0aW9uIiwgImNvbm5lY3Rpb25JZCIsICJ0b2tlbiIsICJmb3JtYXRDb25uSWQiLCAidXNlcklkIiwgImRiIiwgInVwZGF0ZSIsICJpbnNlcnQiLCAiYXFsUXJ5IiwgImN1cnNvciIsICJlcnJvciIsICJnZXRDb25uZWN0aW9uQnlVc2VySWQiLCAiZm9ybWF0VXNlcklkIiwgImdldENvbm5lY3Rpb25CeUlkIiwgInNvY2tldElkIiwgImZvcm1hdFNvY2tldElkIiwgImdldENvbm5lY3Rpb25CeUNvbnZvIiwgImNvbnRleHQiLCAiY29udm9JZCIsICJzZXNzaW9uSWQiLCAic2Vzc2lvbkRvY0lkIiwgImNvbnZvRG9jSWQiLCAicmVtb3ZlQ29ubmVjdGlvbiJdCn0K