@nlabs/reaktor 0.2.3 → 0.4.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 (52) hide show
  1. package/lib/config.js +12 -4
  2. package/lib/data/conversations.d.ts +3 -1
  3. package/lib/data/conversations.js +150 -65
  4. package/lib/data/dynamodb.d.ts +8 -8
  5. package/lib/data/dynamodb.js +65 -33
  6. package/lib/data/email.d.ts +2 -2
  7. package/lib/data/email.js +52 -24
  8. package/lib/data/files.js +71 -11
  9. package/lib/data/groups.js +37 -3
  10. package/lib/data/images.d.ts +3 -2
  11. package/lib/data/images.js +425 -273
  12. package/lib/data/index.d.ts +1 -0
  13. package/lib/data/index.js +33 -1
  14. package/lib/data/ios.d.ts +5 -5
  15. package/lib/data/ios.js +47 -21
  16. package/lib/data/locations.js +28 -4
  17. package/lib/data/messages.js +89 -73
  18. package/lib/data/notifications.d.ts +2 -2
  19. package/lib/data/notifications.js +6 -6
  20. package/lib/data/payments.d.ts +3 -4
  21. package/lib/data/payments.js +228 -257
  22. package/lib/data/posts.d.ts +1 -1
  23. package/lib/data/posts.js +88 -12
  24. package/lib/data/reactions.d.ts +1 -1
  25. package/lib/data/reactions.js +56 -14
  26. package/lib/data/s3.d.ts +6 -6
  27. package/lib/data/s3.js +10 -2
  28. package/lib/data/search.js +46 -4
  29. package/lib/data/sms.js +5 -1
  30. package/lib/data/subscription.d.ts +1 -1
  31. package/lib/data/subscription.js +46 -20
  32. package/lib/data/tags.js +60 -8
  33. package/lib/data/users.d.ts +7 -4
  34. package/lib/data/users.js +83 -32
  35. package/lib/data/websockets.d.ts +6 -0
  36. package/lib/data/websockets.js +250 -0
  37. package/lib/index.js +4 -1
  38. package/lib/types/conversations.d.ts +2 -0
  39. package/lib/types/index.js +18 -1
  40. package/lib/types/payments.d.ts +1 -0
  41. package/lib/types/posts.d.ts +2 -0
  42. package/lib/types/reactions.d.ts +2 -0
  43. package/lib/types/users.d.ts +1 -0
  44. package/lib/utils/analytics.js +28 -6
  45. package/lib/utils/arangodb.d.ts +2 -1
  46. package/lib/utils/arangodb.js +31 -10
  47. package/lib/utils/auth.js +21 -3
  48. package/lib/utils/graphql.js +3 -1
  49. package/lib/utils/index.js +7 -1
  50. package/lib/utils/objects.js +9 -1
  51. package/lib/utils/redis.js +6 -2
  52. package/package.json +33 -31
package/lib/config.js CHANGED
@@ -1,5 +1,15 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.array.concat");
4
+
5
+ require("core-js/modules/es.array.iterator");
6
+
7
+ require("core-js/modules/es.object.define-property");
8
+
9
+ require("core-js/modules/es.object.to-string");
10
+
11
+ require("core-js/modules/web.dom-collections.iterator");
12
+
3
13
  Object.defineProperty(exports, "__esModule", {
4
14
  value: true
5
15
  });
@@ -32,9 +42,7 @@ var _process$env = process.env,
32
42
  _process$env$arangodb4 = _process$env.arangodbUsername,
33
43
  arangodbUsername = _process$env$arangodb4 === void 0 ? 'reaktor' : _process$env$arangodb4;
34
44
 
35
- var Config =
36
- /*#__PURE__*/
37
- function () {
45
+ var Config = /*#__PURE__*/function () {
38
46
  function Config() {
39
47
  _classCallCheck(this, Config);
40
48
  }
@@ -142,4 +150,4 @@ _defineProperty(Config, "values", {
142
150
  },
143
151
  test: {}
144
152
  });
145
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25maWcudHMiXSwibmFtZXMiOlsiYXBwUGFja2FnZSIsInJlcXVpcmUiLCJwcm9jZXNzIiwiZW52IiwiYXJhbmdvZGJEYXRhYmFzZSIsImFyYW5nb2RiUGFzc3dvcmQiLCJhcmFuZ29kYlBvcnQiLCJhcmFuZ29kYlVybCIsImFyYW5nb2RiVXNlcm5hbWUiLCJDb25maWciLCJwYXRoIiwiZW52aXJvbm1lbnQiLCJzdGFnZSIsImNvbmZpZ1ZhbHVlcyIsInZhbHVlcyIsImFwcCIsIm5hbWUiLCJ1cmwiLCJ2ZXJzaW9uIiwiYXJhbmdvZGIiLCJkYXRhYmFzZSIsImR1bXAiLCJwYXNzd29yZCIsInBvcnQiLCJyZXN0b3JlIiwidXNlcm5hbWUiLCJhd3MiLCJCdWNrZXQiLCJhY2Nlc3NLZXlJZCIsIm1heFJldHJpZXMiLCJyZWdpb24iLCJzZWNyZXRBY2Nlc3NLZXkiLCJzaWduYXR1cmVWZXJzaW9uIiwiZ2lwaHkiLCJrZXkiLCJnb29nbGUiLCJhbmFseXRpY3MiLCJhY2NvdW50SWQiLCJ0cmFja2luZ0lkIiwiZ2VvY29kZSIsImltYWdlIiwiaW1nUXVhbGl0eSIsImltZ1NpemUiLCJ0aG1RdWFsaXR5IiwidGhtU2l6ZSIsInJlZGlzIiwiaG9zdCIsInN0cmlwZSIsInRva2VuIiwidHdpbGlvIiwibnVtYmVyIiwic2lkIiwiZGV2IiwicHJvZCIsInRlc3QiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQTs7QUFDQTs7Ozs7Ozs7Ozs7O0FBcUJBLElBQU1BLFVBQWUsR0FBR0MsT0FBTyxDQUFDLGlCQUFELENBQS9COzttQkFRSUMsT0FBTyxDQUFDQyxHO3lDQUxWQyxnQjtJQUFBQSxnQixzQ0FBbUIsUztJQUNuQkMsZ0IsZ0JBQUFBLGdCOzBDQUNBQyxZO0lBQUFBLFksdUNBQWUsTTswQ0FDZkMsVztJQUFBQSxXLHVDQUFjLGU7MENBQ2RDLGdCO0lBQUFBLGdCLHVDQUFtQixTOztJQUdSQyxNOzs7Ozs7Ozs7d0JBMEZBQyxJLEVBQThCO0FBQ3ZDLFVB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O0FBUUprQixJQUFBQSxLQUFLLEVBQUU7QUFDTEMsTUFBQUEsSUFBSSxFQUFFO0FBREQsS0FSSDtBQVdKQyxJQUFBQSxNQUFNLEVBQUU7QUFDTkMsTUFBQUEsS0FBSyxFQUFFO0FBREQsS0FYSjtBQWNKQyxJQUFBQSxNQUFNLEVBQUU7QUFDTkMsTUFBQUEsTUFBTSxFQUFFLGNBREY7QUFFTkMsTUFBQUEsR0FBRyxFQUFFLG9DQUZDO0FBR05ILE1BQUFBLEtBQUssRUFBRTtBQUhEO0FBZEosR0FqRW1CO0FBcUZ6Qk0sRUFBQUEsSUFBSSxFQUFFO0FBckZtQixDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCBnZXQgZnJvbSAnbG9kYXNoL2dldCc7XG5pbXBvcnQgbWVyZ2UgZnJvbSAnbG9kYXNoL21lcmdlJztcblxuZXhwb3J0IGludGVyZmFjZSBBcHBDb25maWcge1xuICByZWFkb25seSBhcHA/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IGFyYW5nb2RiPzogb2JqZWN0O1xuICByZWFkb25seSBhd3M/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IGdpcGh5Pzogb2JqZWN0O1xuICByZWFkb25seSBnb29nbGU/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IGltYWdlPzogb2JqZWN0O1xuICByZWFkb25seSByZWRpcz86IG9iamVjdDtcbiAgcmVhZG9ubHkgc3RyaXBlPzogb2JqZWN0O1xuICByZWFkb25seSB0d2lsaW8/OiBvYmplY3Q7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW52Q29uZmlnIHtcbiAgcmVhZG9ubHkgZGVmYXVsdDogQXBwQ29uZmlnO1xuICByZWFkb25seSBkZXY6IEFwcENvbmZpZztcbiAgcmVhZG9ubHkgcHJvZDogQXBwQ29uZmlnO1xuICByZWFkb25seSB0ZXN0OiBBcHBDb25maWc7XG59XG5cbmNvbnN0IGFwcFBhY2thZ2U6IGFueSA9IHJlcXVpcmUoJy4uL3BhY2thZ2UuanNvbicpO1xuXG5jb25zdCB7XG4gIGFyYW5nb2RiRGF0YWJhc2UgPSAncmVha3RvcicsXG4gIGFyYW5nb2RiUGFzc3dvcmQsXG4gIGFyYW5nb2RiUG9ydCA9ICc4NTI5JyxcbiAgYXJhbmdvZGJVcmwgPSAnZGIucmVha3Rvci5pbycsXG4gIGFyYW5nb2RiVXNlcm5hbWUgPSAncmVha3Rvcidcbn0gPSBwcm9jZXNzLmVudjtcblxuZXhwb3J0IGNsYXNzIENvbmZpZyB7XG4gIHN0YXRpYyB2YWx1ZXM6IEVudkNvbmZpZyA9IHtcbiAgICBkZWZhdWx0OiB7XG4gICAgICBhcHA6IHtcbiAgICAgICAgbmFtZTogJ3JlYWt0b3InLFxuICAgICAgICB1cmw6ICdyZWFrdG9yLmlvJyxcbiAgICAgICAgdmVyc2lvbjogYXBwUGFja2FnZS52ZXJzaW9uXG4gICAgICB9LFxuICAgICAgYXJhbmdvZGI6IHtcbiAgICAgICAgZGF0YWJhc2U6IGFyYW5nb2RiRGF0YWJhc2UsXG4gICAgICAgIGR1bXA6ICcvQXBwbGljYXRpb25zL0FyYW5nb0RCLUNMSS5hcHAvQ29udGVudHMvTWFjT1MvYXJhbmdvZHVtcCcsXG4gICAgICAgIHBhc3N3b3JkOiBhcmFuZ29kYlBhc3N3b3JkLFxuICAgICAgICBwb3J0OiBhcmFuZ29kYlBvcnQsXG4gICAgICAgIHJlc3RvcmU6ICcvQXBwbGljYXRpb25zL0FyYW5nb0RCLUNMSS5hcHAvQ29udGVudHMvTWFjT1MvYXJhbmdvcmVzdG9yZScsXG4gICAgICAgIHVybDogYCR7YXJhbmdvZGJVcmx9OiR7YXJhbmdvZGJQb3J0fWAsXG4gICAgICAgIHVzZXJuYW1lOiBhcmFuZ29kYlVzZXJuYW1lXG4gICAgICB9LFxuICAgICAgYXdzOiB7XG4gICAgICAgIEJ1Y2tldDogJ2Rldi5yZWFrdG9yLmlvJyxcbiAgICAgICAgYWNjZXNzS2V5SWQ6ICdBS0lBSklZRFQzRUEyWkZNVEpOQScsXG4gICAgICAgIG1heFJldHJpZXM6IDMsXG4gICAgICAgIHJlZ2lvbjogJ3VzLWVhc3QtMScsXG4gICAgICAgIHNlY3JldEFjY2Vzc0tleTogJ2JVc3NRUnRKVFpDN2dlRjlSREg1S0NuOENhbFZuZjJWVDM0eXFTKzknLFxuICAgICAgICBzaWduYXR1cmVWZXJzaW9uOiAndjQnXG4gICAgICB9LFxuICAgICAgZ2lwaHk6IHtcbiAgICAgICAga2V5OiAnZGM2emFUT3hGSm16QydcbiAgICAgIH0sXG4gICAgICBnb29nbGU6IHtcbiAgICAgICAgYW5hbHl0aWNzOiB7XG4gICAgICAgICAgYWNjb3VudElkOiAnNzgxNTg3MTcnLFxuICAgICAgICAgIHRyYWNraW5nSWQ6ICdVQS03ODE1ODcxNy0xJ1xuICAgICAgICB9LFxuICAgICAgICBnZW9jb2RlOiB7XG4gICAgICAgICAga2V5OiAnQUl6YVN5QndqbXBCaldoaUpvQkNaaVl6UnVyTTltNFduQ3hzbHYwJyxcbiAgICAgICAgICB1cmw6ICdodHRwczovL21hcHMuZ29vZ2xlYXBpcy5jb20vbWFwcy9hcGkvZ2VvY29kZS9qc29uJ1xuICAgICAgICB9LFxuICAgICAgICBrZXk6ICdBSXphU3lDM19mMlVzM3kwcWpieU1KLTR0NU9idEN6ZnFfRkhJZ1EnXG4gICAgICB9LFxuICAgICAgaW1hZ2U6IHtcbiAgICAgICAgaW1nUXVhbGl0eTogOTAsXG4gICAgICAgIGltZ1NpemU6IDE1MDAsXG4gICAgICAgIHRobVF1YWxpdHk6IDgwLFxuICAgICAgICB0aG1TaXplOiAxNTBcbiAgICAgIH0sXG4gICAgICByZWRpczoge1xuICAgICAgICBob3N0OiAnMTI3LjAuMC4xJyxcbiAgICAgICAgcG9ydDogNjM3OVxuICAgICAgfSxcbiAgICAgIHN0cmlwZToge1xuICAgICAgICB0b2tlbjogJ3NrX3Rlc3RfTFM5NTZiZTU3WVVYVEI1YTRzTEdiNUJRJ1xuICAgICAgfSxcbiAgICAgIHR3aWxpbzoge1xuICAgICAgICBudW1iZXI6ICcrMTUwMDU1NTAwMDYnLFxuICAgICAgICBzaWQ6ICdBQzZiZDdmNTEzY2JlZDJlNTEzNGM2NTBiZTA2Y2M3MzJlJyxcbiAgICAgICAgdG9rZW46ICc1MjBhZTczOWU3NjFiYWI3NTliMTQ3ZjFhZDI4Mjc4ZidcbiAgICAgIH1cbiAgICB9LFxuICAgIGRldjoge1xuICAgICAgYXdzOiB7XG4gICAgICAgIEJ1Y2tldDogJ2Rldi5yZWFrdG9yLmlvJ1xuICAgICAgfSxcbiAgICAgIHJlZGlzOiB7XG4gICAgICAgIGhvc3Q6ICdubC1yZWRpcy5laGN2bnQubmcuMDAwMS51c2UxLmNhY2hlLmFtYXpvbmF3cy5jb20nXG4gICAgICB9XG4gICAgfSxcbiAgICBwcm9kOiB7XG4gICAgICBhcmFuZ29kYjoge1xuICAgICAgICBkdW1wOiAnL3Vzci9iaW4vYXJhbmdvZHVtcCcsXG4gICAgICAgIHJlc3RvcmU6ICcvdXNyL2Jpbi9hcmFuZ29yZXN0b3JlJ1xuICAgICAgfSxcbiAgICAgIGF3czoge1xuICAgICAgICBCdWNrZXQ6ICdib3gucmVha3Rvci5pbydcbiAgICAgIH0sXG4gICAgICByZWRpczoge1xuICAgICAgICBob3N0OiAnbmwtcmVkaXMuZWhjdm50Lm5nLjAwMDEudXNlMS5jYWNoZS5hbWF6b25hd3MuY29tJ1xuICAgICAgfSxcbiAgICAgIHN0cmlwZToge1xuICAgICAgICB0b2tlbjogJ3NrX2xpdmVfYkVsWmw4UkxoTUNKeTMzS0c0bHlMRDRvJ1xuICAgICAgfSxcbiAgICAgIHR3aWxpbzoge1xuICAgICAgICBudW1iZXI6ICcrMTg1NTQxNjUyMjcnLFxuICAgICAgICBzaWQ6ICdBQzkwYjA1MjhhOTExZTY1MmQ2NDMzMjlhNGQ3YjRkMmM3JyxcbiAgICAgICAgdG9rZW46ICdhNzk0MWQxNzNiZDQ4NDZkMDk2NmExODZlOTg2NWI3MidcbiAgICAgIH1cbiAgICB9LFxuICAgIHRlc3Q6IHtcbiAgICB9XG4gIH07XG5cbiAgc3RhdGljIGdldChwYXRoOiBzdHJpbmcgfCBzdHJpbmdbXSk6IGFueSB7XG4gICAgY29uc3QgZW52aXJvbm1lbnQ6IHN0cmluZyA9IHByb2Nlc3MuZW52LnN0YWdlIHx8ICdkZXYnO1xuICAgIGNvbnN0IGNvbmZpZ1ZhbHVlczogb2JqZWN0ID0gbWVyZ2UodGhpcy52YWx1ZXMuZGVmYXVsdCwgdGhpcy52YWx1ZXNbZW52aXJvbm1lbnRdLCB7ZW52aXJvbm1lbnR9KTtcbiAgICByZXR1cm4gZ2V0KGNvbmZpZ1ZhbHVlcywgcGF0aCk7XG4gIH1cbn1cbiJdfQ==
153
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25maWcudHMiXSwibmFtZXMiOlsiYXBwUGFja2FnZSIsInJlcXVpcmUiLCJwcm9jZXNzIiwiZW52IiwiYXJhbmdvZGJEYXRhYmFzZSIsImFyYW5nb2RiUGFzc3dvcmQiLCJhcmFuZ29kYlBvcnQiLCJhcmFuZ29kYlVybCIsImFyYW5nb2RiVXNlcm5hbWUiLCJDb25maWciLCJwYXRoIiwiZW52aXJvbm1lbnQiLCJzdGFnZSIsImNvbmZpZ1ZhbHVlcyIsInZhbHVlcyIsImFwcCIsIm5hbWUiLCJ1cmwiLCJ2ZXJzaW9uIiwiYXJhbmdvZGIiLCJkYXRhYmFzZSIsImR1bXAiLCJwYXNzd29yZCIsInBvcnQiLCJyZXN0b3JlIiwidXNlcm5hbWUiLCJhd3MiLCJCdWNrZXQiLCJhY2Nlc3NLZXlJZCIsIm1heFJldHJpZXMiLCJyZWdpb24iLCJzZWNyZXRBY2Nlc3NLZXkiLCJzaWduYXR1cmVWZXJzaW9uIiwiZ2lwaHkiLCJrZXkiLCJnb29nbGUiLCJhbmFseXRpY3MiLCJhY2NvdW50SWQiLCJ0cmFja2luZ0lkIiwiZ2VvY29kZSIsImltYWdlIiwiaW1nUXVhbGl0eSIsImltZ1NpemUiLCJ0aG1RdWFsaXR5IiwidGhtU2l6ZSIsInJlZGlzIiwiaG9zdCIsInN0cmlwZSIsInRva2VuIiwidHdpbGlvIiwibnVtYmVyIiwic2lkIiwiZGV2IiwicHJvZCIsInRlc3QiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBSUE7O0FBQ0E7Ozs7Ozs7Ozs7OztBQXFCQSxJQUFNQSxVQUFlLEdBQUdDLE9BQU8sQ0FBQyxpQkFBRCxDQUEvQjs7bUJBUUlDLE9BQU8sQ0FBQ0MsRzt5Q0FMVkMsZ0I7SUFBQUEsZ0Isc0NBQW1CLFM7SUFDbkJDLGdCLGdCQUFBQSxnQjswQ0FDQUMsWTtJQUFBQSxZLHVDQUFlLE07MENBQ2ZDLFc7SUFBQUEsVyx1Q0FBYyxlOzBDQUNkQyxnQjtJQUFBQSxnQix1Q0FBbUIsUzs7SUFHUkMsTTs7Ozs7Ozt3QkEwRkFDLEksRUFBOEI7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QURMLEtBTEQ7QUFRSmtCLElBQUFBLEtBQUssRUFBRTtBQUNMQyxNQUFBQSxJQUFJLEVBQUU7QUFERCxLQVJIO0FBV0pDLElBQUFBLE1BQU0sRUFBRTtBQUNOQyxNQUFBQSxLQUFLLEVBQUU7QUFERCxLQVhKO0FBY0pDLElBQUFBLE1BQU0sRUFBRTtBQUNOQyxNQUFBQSxNQUFNLEVBQUUsY0FERjtBQUVOQyxNQUFBQSxHQUFHLEVBQUUsb0NBRkM7QUFHTkgsTUFBQUEsS0FBSyxFQUFFO0FBSEQ7QUFkSixHQWpFbUI7QUFxRnpCTSxFQUFBQSxJQUFJLEVBQUU7QUFyRm1CLEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IGdldCBmcm9tICdsb2Rhc2gvZ2V0JztcbmltcG9ydCBtZXJnZSBmcm9tICdsb2Rhc2gvbWVyZ2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwcENvbmZpZyB7XG4gIHJlYWRvbmx5IGFwcD86IG9iamVjdDtcbiAgcmVhZG9ubHkgYXJhbmdvZGI/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IGF3cz86IG9iamVjdDtcbiAgcmVhZG9ubHkgZ2lwaHk/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IGdvb2dsZT86IG9iamVjdDtcbiAgcmVhZG9ubHkgaW1hZ2U/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IHJlZGlzPzogb2JqZWN0O1xuICByZWFkb25seSBzdHJpcGU/OiBvYmplY3Q7XG4gIHJlYWRvbmx5IHR3aWxpbz86IG9iamVjdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbnZDb25maWcge1xuICByZWFkb25seSBkZWZhdWx0OiBBcHBDb25maWc7XG4gIHJlYWRvbmx5IGRldjogQXBwQ29uZmlnO1xuICByZWFkb25seSBwcm9kOiBBcHBDb25maWc7XG4gIHJlYWRvbmx5IHRlc3Q6IEFwcENvbmZpZztcbn1cblxuY29uc3QgYXBwUGFja2FnZTogYW55ID0gcmVxdWlyZSgnLi4vcGFja2FnZS5qc29uJyk7XG5cbmNvbnN0IHtcbiAgYXJhbmdvZGJEYXRhYmFzZSA9ICdyZWFrdG9yJyxcbiAgYXJhbmdvZGJQYXNzd29yZCxcbiAgYXJhbmdvZGJQb3J0ID0gJzg1MjknLFxuICBhcmFuZ29kYlVybCA9ICdkYi5yZWFrdG9yLmlvJyxcbiAgYXJhbmdvZGJVc2VybmFtZSA9ICdyZWFrdG9yJ1xufSA9IHByb2Nlc3MuZW52O1xuXG5leHBvcnQgY2xhc3MgQ29uZmlnIHtcbiAgc3RhdGljIHZhbHVlczogRW52Q29uZmlnID0ge1xuICAgIGRlZmF1bHQ6IHtcbiAgICAgIGFwcDoge1xuICAgICAgICBuYW1lOiAncmVha3RvcicsXG4gICAgICAgIHVybDogJ3JlYWt0b3IuaW8nLFxuICAgICAgICB2ZXJzaW9uOiBhcHBQYWNrYWdlLnZlcnNpb25cbiAgICAgIH0sXG4gICAgICBhcmFuZ29kYjoge1xuICAgICAgICBkYXRhYmFzZTogYXJhbmdvZGJEYXRhYmFzZSxcbiAgICAgICAgZHVtcDogJy9BcHBsaWNhdGlvbnMvQXJhbmdvREItQ0xJLmFwcC9Db250ZW50cy9NYWNPUy9hcmFuZ29kdW1wJyxcbiAgICAgICAgcGFzc3dvcmQ6IGFyYW5nb2RiUGFzc3dvcmQsXG4gICAgICAgIHBvcnQ6IGFyYW5nb2RiUG9ydCxcbiAgICAgICAgcmVzdG9yZTogJy9BcHBsaWNhdGlvbnMvQXJhbmdvREItQ0xJLmFwcC9Db250ZW50cy9NYWNPUy9hcmFuZ29yZXN0b3JlJyxcbiAgICAgICAgdXJsOiBgJHthcmFuZ29kYlVybH06JHthcmFuZ29kYlBvcnR9YCxcbiAgICAgICAgdXNlcm5hbWU6IGFyYW5nb2RiVXNlcm5hbWVcbiAgICAgIH0sXG4gICAgICBhd3M6IHtcbiAgICAgICAgQnVja2V0OiAnZGV2LnJlYWt0b3IuaW8nLFxuICAgICAgICBhY2Nlc3NLZXlJZDogJ0FLSUFKSVlEVDNFQTJaRk1USk5BJyxcbiAgICAgICAgbWF4UmV0cmllczogMyxcbiAgICAgICAgcmVnaW9uOiAndXMtZWFzdC0xJyxcbiAgICAgICAgc2VjcmV0QWNjZXNzS2V5OiAnYlVzc1FSdEpUWkM3Z2VGOVJESDVLQ244Q2FsVm5mMlZUMzR5cVMrOScsXG4gICAgICAgIHNpZ25hdHVyZVZlcnNpb246ICd2NCdcbiAgICAgIH0sXG4gICAgICBnaXBoeToge1xuICAgICAgICBrZXk6ICdkYzZ6YVRPeEZKbXpDJ1xuICAgICAgfSxcbiAgICAgIGdvb2dsZToge1xuICAgICAgICBhbmFseXRpY3M6IHtcbiAgICAgICAgICBhY2NvdW50SWQ6ICc3ODE1ODcxNycsXG4gICAgICAgICAgdHJhY2tpbmdJZDogJ1VBLTc4MTU4NzE3LTEnXG4gICAgICAgIH0sXG4gICAgICAgIGdlb2NvZGU6IHtcbiAgICAgICAgICBrZXk6ICdBSXphU3lCd2ptcEJqV2hpSm9CQ1ppWXpSdXJNOW00V25DeHNsdjAnLFxuICAgICAgICAgIHVybDogJ2h0dHBzOi8vbWFwcy5nb29nbGVhcGlzLmNvbS9tYXBzL2FwaS9nZW9jb2RlL2pzb24nXG4gICAgICAgIH0sXG4gICAgICAgIGtleTogJ0FJemFTeUMzX2YyVXMzeTBxamJ5TUotNHQ1T2J0Q3pmcV9GSElnUSdcbiAgICAgIH0sXG4gICAgICBpbWFnZToge1xuICAgICAgICBpbWdRdWFsaXR5OiA5MCxcbiAgICAgICAgaW1nU2l6ZTogMTUwMCxcbiAgICAgICAgdGhtUXVhbGl0eTogODAsXG4gICAgICAgIHRobVNpemU6IDE1MFxuICAgICAgfSxcbiAgICAgIHJlZGlzOiB7XG4gICAgICAgIGhvc3Q6ICcxMjcuMC4wLjEnLFxuICAgICAgICBwb3J0OiA2Mzc5XG4gICAgICB9LFxuICAgICAgc3RyaXBlOiB7XG4gICAgICAgIHRva2VuOiAnc2tfdGVzdF9MUzk1NmJlNTdZVVhUQjVhNHNMR2I1QlEnXG4gICAgICB9LFxuICAgICAgdHdpbGlvOiB7XG4gICAgICAgIG51bWJlcjogJysxNTAwNTU1MDAwNicsXG4gICAgICAgIHNpZDogJ0FDNmJkN2Y1MTNjYmVkMmU1MTM0YzY1MGJlMDZjYzczMmUnLFxuICAgICAgICB0b2tlbjogJzUyMGFlNzM5ZTc2MWJhYjc1OWIxNDdmMWFkMjgyNzhmJ1xuICAgICAgfVxuICAgIH0sXG4gICAgZGV2OiB7XG4gICAgICBhd3M6IHtcbiAgICAgICAgQnVja2V0OiAnZGV2LnJlYWt0b3IuaW8nXG4gICAgICB9LFxuICAgICAgcmVkaXM6IHtcbiAgICAgICAgaG9zdDogJ25sLXJlZGlzLmVoY3ZudC5uZy4wMDAxLnVzZTEuY2FjaGUuYW1hem9uYXdzLmNvbSdcbiAgICAgIH1cbiAgICB9LFxuICAgIHByb2Q6IHtcbiAgICAgIGFyYW5nb2RiOiB7XG4gICAgICAgIGR1bXA6ICcvdXNyL2Jpbi9hcmFuZ29kdW1wJyxcbiAgICAgICAgcmVzdG9yZTogJy91c3IvYmluL2FyYW5nb3Jlc3RvcmUnXG4gICAgICB9LFxuICAgICAgYXdzOiB7XG4gICAgICAgIEJ1Y2tldDogJ2JveC5yZWFrdG9yLmlvJ1xuICAgICAgfSxcbiAgICAgIHJlZGlzOiB7XG4gICAgICAgIGhvc3Q6ICdubC1yZWRpcy5laGN2bnQubmcuMDAwMS51c2UxLmNhY2hlLmFtYXpvbmF3cy5jb20nXG4gICAgICB9LFxuICAgICAgc3RyaXBlOiB7XG4gICAgICAgIHRva2VuOiAnc2tfbGl2ZV9iRWxabDhSTGhNQ0p5MzNLRzRseUxENG8nXG4gICAgICB9LFxuICAgICAgdHdpbGlvOiB7XG4gICAgICAgIG51bWJlcjogJysxODU1NDE2NTIyNycsXG4gICAgICAgIHNpZDogJ0FDOTBiMDUyOGE5MTFlNjUyZDY0MzMyOWE0ZDdiNGQyYzcnLFxuICAgICAgICB0b2tlbjogJ2E3OTQxZDE3M2JkNDg0NmQwOTY2YTE4NmU5ODY1YjcyJ1xuICAgICAgfVxuICAgIH0sXG4gICAgdGVzdDoge1xuICAgIH1cbiAgfTtcblxuICBzdGF0aWMgZ2V0KHBhdGg6IHN0cmluZyB8IHN0cmluZ1tdKTogYW55IHtcbiAgICBjb25zdCBlbnZpcm9ubWVudDogc3RyaW5nID0gcHJvY2Vzcy5lbnYuc3RhZ2UgfHwgJ2Rldic7XG4gICAgY29uc3QgY29uZmlnVmFsdWVzOiBvYmplY3QgPSBtZXJnZSh0aGlzLnZhbHVlcy5kZWZhdWx0LCB0aGlzLnZhbHVlc1tlbnZpcm9ubWVudF0sIHtlbnZpcm9ubWVudH0pO1xuICAgIHJldHVybiBnZXQoY29uZmlnVmFsdWVzLCBwYXRoKTtcbiAgfVxufVxuIl19
@@ -3,4 +3,6 @@ import { ConversationType } from '../types';
3
3
  export declare const getConversationList: (context: ApiContext, from: number, to: number) => Promise<ConversationType[]>;
4
4
  export declare const getDirectConversation: (context: ApiContext, userId: string) => Promise<ConversationType>;
5
5
  export declare const getConversation: (context: ApiContext, convoId: string) => Promise<ConversationType>;
6
- export declare const updateConversation: (context: ApiContext, item: any) => Promise<ConversationType>;
6
+ export declare const updateConversation: (context: ApiContext, conversation: any) => Promise<ConversationType>;
7
+ export declare const addUserToConversation: (context: ApiContext, convoId: string, userId: string) => Promise<any>;
8
+ export declare const removeUserToConversation: (context: ApiContext, convoId: string, userId: string) => Promise<any>;
@@ -1,9 +1,43 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.symbol");
4
+
5
+ require("core-js/modules/es.array.concat");
6
+
7
+ require("core-js/modules/es.array.filter");
8
+
9
+ require("core-js/modules/es.array.for-each");
10
+
11
+ require("core-js/modules/es.array.map");
12
+
13
+ require("core-js/modules/es.array.slice");
14
+
15
+ require("core-js/modules/es.date.now");
16
+
17
+ require("core-js/modules/es.date.to-string");
18
+
19
+ require("core-js/modules/es.function.name");
20
+
21
+ require("core-js/modules/es.object.define-properties");
22
+
23
+ require("core-js/modules/es.object.define-property");
24
+
25
+ require("core-js/modules/es.object.freeze");
26
+
27
+ require("core-js/modules/es.object.get-own-property-descriptor");
28
+
29
+ require("core-js/modules/es.object.get-own-property-descriptors");
30
+
31
+ require("core-js/modules/es.object.keys");
32
+
33
+ require("core-js/modules/es.string.sub");
34
+
35
+ require("core-js/modules/web.dom-collections.for-each");
36
+
3
37
  Object.defineProperty(exports, "__esModule", {
4
38
  value: true
5
39
  });
6
- exports.updateConversation = exports.getConversation = exports.getDirectConversation = exports.getConversationList = void 0;
40
+ exports.removeUserToConversation = exports.addUserToConversation = exports.updateConversation = exports.getConversation = exports.getDirectConversation = exports.getConversationList = void 0;
7
41
 
8
42
  var _utils = require("@nlabs/utils");
9
43
 
@@ -11,12 +45,8 @@ var _arangojs = require("arangojs");
11
45
 
12
46
  var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
13
47
 
14
- var _identity = _interopRequireDefault(require("lodash/identity"));
15
-
16
48
  var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
17
49
 
18
- var _pick2 = _interopRequireDefault(require("lodash/pick"));
19
-
20
50
  var _utils2 = require("../utils");
21
51
 
22
52
  var _analytics = require("../utils/analytics");
@@ -27,20 +57,30 @@ var _users = require("./users");
27
57
 
28
58
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
29
59
 
30
- function _templateObject3() {
31
- var data = _taggedTemplateLiteral(["UPSERT {_key: ", "}\n INSERT ", "\n UPDATE ", "\n IN conversations RETURN NEW"]);
60
+ function _templateObject5() {
61
+ var data = _taggedTemplateLiteral(["FOR c IN hasConversations\n FILTER c._from == ", " && c._to == ", "\n LIMIT 1\n REMOVE c IN hasConversations\n RETURN OLD"]);
32
62
 
33
- _templateObject3 = function _templateObject3() {
63
+ _templateObject5 = function _templateObject5() {
34
64
  return data;
35
65
  };
36
66
 
37
67
  return data;
38
68
  }
39
69
 
40
- function _templateObject2() {
41
- var data = _taggedTemplateLiteral(["FOR c IN conversations\n FILTER c._key == ", " && IS_LIST(c.users) && POSITION(c.users, ", ", false)\n LET u = (\n FOR g IN c.users\n FOR u IN users\n FILTER g == u._key\n RETURN {_key:u._key, first:u.first, last:u.last, name:u.name, email:u.email, username:u.username, photo:u.photo }\n )\n FILTER LENGTH(u) > 1\n LIMIT 1\n RETURN MERGE(c, {users: u})"]);
70
+ function _templateObject4() {
71
+ var data = _taggedTemplateLiteral(["FOR c IN hasConversations\n FILTER c._from == ", " && c._to == ", "\n LIMIT 1\n RETURN c"]);
42
72
 
43
- _templateObject2 = function _templateObject2() {
73
+ _templateObject4 = function _templateObject4() {
74
+ return data;
75
+ };
76
+
77
+ return data;
78
+ }
79
+
80
+ function _templateObject3() {
81
+ var data = _taggedTemplateLiteral(["UPSERT {_key: ", " }\n INSERT ", "\n UPDATE ", "\n IN conversations RETURN NEW"]);
82
+
83
+ _templateObject3 = function _templateObject3() {
44
84
  return data;
45
85
  };
46
86
 
@@ -49,12 +89,22 @@ function _templateObject2() {
49
89
 
50
90
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
51
91
 
52
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
92
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
53
93
 
54
94
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
55
95
 
96
+ function _templateObject2() {
97
+ var data = _taggedTemplateLiteral(["FOR c, e IN 1..1 OUTBOUND ", " hasConversations\n FILTER c._id == ", "\n LET u = (\n FOR inUser, inEdge IN 1..1 INBOUND ", " hasConversations\n RETURN inUser\n )\n LIMIT 1\n RETURN MERGE(c, {users: u})"]);
98
+
99
+ _templateObject2 = function _templateObject2() {
100
+ return data;
101
+ };
102
+
103
+ return data;
104
+ }
105
+
56
106
  function _templateObject() {
57
- var data = _taggedTemplateLiteral(["FOR c IN conversations\n FILTER LENGTH(c.users) == 2 &&\n POSITION(c.users, ", ", true) &&\n POSITION(c.users, ", ", true)\n LET u = (\n FOR g IN c.users\n FOR user IN users\n FILTER user._key == g\n RETURN user\n )\n LIMIT 1\n RETURN MERGE(c, {users: u})"]);
107
+ var data = _taggedTemplateLiteral(["LET from = (\n FOR c, e IN 1..1 OUTBOUND ", " hasConversations\n FILTER c.direct == true\n RETURN c\n )\n LET to = (\n FOR c, e IN 1..1 OUTBOUND ", " hasConversations\n FILTER c.direct == true\n RETURN c\n )\n LET conversation = FIRST(INTERSECTION(from, to))\n LET users = !IS_NULL(conversation) && (\n FOR g IN[", ", ", "]\n FOR u IN users\n FILTER g == u._id\n RETURN u\n )\n RETURN IS_NULL(conversation) ? null : MERGE(conversation, {users: users})"]);
58
108
 
59
109
  _templateObject = function _templateObject() {
60
110
  return data;
@@ -65,10 +115,6 @@ function _templateObject() {
65
115
 
66
116
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
67
117
 
68
- /**
69
- * Copyright (c) 2019-Present, Nitrogen Labs, Inc.
70
- * Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
71
- */
72
118
  var eventCategory = 'conversations';
73
119
 
74
120
  var getConversationList = function getConversationList(context, from, to) {
@@ -76,7 +122,8 @@ var getConversationList = function getConversationList(context, from, to) {
76
122
  var database = context.database,
77
123
  sessionId = context.userId;
78
124
  var limit = (0, _utils2.getLimit)(from, to);
79
- var aqlQry = "FOR c IN conversations\n FILTER POSITION(c.users, \"".concat(sessionId, "\", false)\n LET u = (\n FOR g IN c.users\n FOR u IN users\n FILTER g == u._key\n RETURN {_key:u._key, first:u.first, last:u.last, name:u.name, email:u.email, username:u.username, photo:u.photo }\n )\n FILTER LENGTH(u) > 1\n ").concat(limit.aql, "\n RETURN {_key:c._key, name: c.name, direct: c.direct, users: u}");
125
+ var sessionDocId = "users/".concat(sessionId);
126
+ var aqlQry = "FOR c, e IN 1..1 OUTBOUND \"".concat(sessionDocId, "\" hasConversations\n ").concat(limit.aql, "\n LET users = (\n FOR u, uc IN 1..1 INBOUND c._id hasConversations\n FILTER u._id != \"").concat(sessionDocId, "\"\n RETURN u\n )\n RETURN MERGE(c, {users: users})");
80
127
  return (0, _utils2.useDb)(database).query(aqlQry).then(function (cursor) {
81
128
  return cursor.all();
82
129
  })["catch"](function (error) {
@@ -93,35 +140,14 @@ var getConversationList = function getConversationList(context, from, to) {
93
140
  exports.getConversationList = getConversationList;
94
141
 
95
142
  var getDirectConversation = function getDirectConversation(context, userId) {
96
- var action = 'getDirect';
143
+ var action = 'getDirectConversation';
97
144
  var database = context.database,
98
145
  sessionId = context.userId;
99
- var formatUserId = (0, _utils.parseId)(userId);
100
- var aqlQry = (0, _arangojs.aql)(_templateObject(), sessionId, formatUserId);
146
+ var sessionDocId = "users/".concat(sessionId);
147
+ var userDocId = "users/".concat((0, _utils.parseId)(userId));
148
+ var aqlQry = (0, _arangojs.aql)(_templateObject(), sessionDocId, userDocId, sessionDocId, userDocId);
101
149
  return (0, _utils2.useDb)(database).query(aqlQry).then(function (cursor) {
102
150
  return cursor.next();
103
- }).then(function () {
104
- var conversation = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
105
- var _conversation$users = conversation.users,
106
- users = _conversation$users === void 0 ? [] : _conversation$users;
107
-
108
- if (users.length) {
109
- conversation.users = users.map(function (user) {
110
- var imgId = user.imgId,
111
- sub = user.sub;
112
- var thumbUrlData = {
113
- imgId: imgId,
114
- isThumb: true,
115
- sub: sub
116
- };
117
- return _objectSpread({}, user, {
118
- name: (0, _users.getDisplayName)(user),
119
- thumb: (0, _images.getUserImageUrl)(thumbUrlData)
120
- });
121
- });
122
- }
123
-
124
- return conversation;
125
151
  })["catch"](function (error) {
126
152
  return (0, _analytics.logError)({
127
153
  action: action,
@@ -139,8 +165,9 @@ var getConversation = function getConversation(context, convoId) {
139
165
  var action = 'getItem';
140
166
  var database = context.database,
141
167
  sessionId = context.userId;
142
- var formatConvoId = (0, _utils.parseId)(convoId);
143
- var aqlQry = (0, _arangojs.aql)(_templateObject2(), formatConvoId, sessionId);
168
+ var sessionDocId = "users/".concat(sessionId);
169
+ var convoDocId = "conversations/".concat((0, _utils.parseId)(convoId));
170
+ var aqlQry = (0, _arangojs.aql)(_templateObject2(), sessionDocId, convoDocId, convoDocId);
144
171
  return (0, _utils2.useDb)(database).query(aqlQry).then(function (cursor) {
145
172
  return cursor.next();
146
173
  }).then(function () {
@@ -155,7 +182,7 @@ var getConversation = function getConversation(context, convoId) {
155
182
  isThumb: true,
156
183
  sub: sub
157
184
  };
158
- return _objectSpread({}, user, {
185
+ return _objectSpread(_objectSpread({}, user), {}, {
159
186
  name: (0, _users.getDisplayName)(user),
160
187
  thumb: (0, _images.getUserImageUrl)(thumbUrlData)
161
188
  });
@@ -177,35 +204,29 @@ var getConversation = function getConversation(context, convoId) {
177
204
 
178
205
  exports.getConversation = getConversation;
179
206
 
180
- var updateConversation = function updateConversation(context, item) {
181
- var action = 'update';
207
+ var updateConversation = function updateConversation(context, conversation) {
208
+ var action = 'updateConversation';
182
209
  var database = context.database,
183
210
  sessionId = context.userId;
184
-
185
- var _pick = (0, _pick2["default"])(item, _identity["default"]),
186
- direct = _pick.direct,
187
- id = _pick.id,
188
- name = _pick.name,
189
- users = _pick.users;
190
-
191
- var rcpt = users || [];
192
- var formatId = item.id || (0, _utils.createHash)("convo-".concat(sessionId, "-").concat(rcpt.join('')));
211
+ var direct = conversation.direct,
212
+ _conversation$convoId = conversation.convoId,
213
+ convoId = _conversation$convoId === void 0 ? (0, _utils.createHash)("convo - ".concat(sessionId, " ")) : _conversation$convoId,
214
+ name = conversation.name;
215
+ var formatConvoId = (0, _utils.parseId)(convoId);
193
216
  var now = Date.now();
194
217
  var update = {
195
218
  // Direct message
196
- direct: !!direct ? direct : undefined,
219
+ direct: direct,
197
220
  modified: now,
198
- name: !!name ? name : undefined,
199
- // Users
200
- users: !!users ? users : undefined
221
+ name: name
201
222
  };
202
223
 
203
- var insert = _objectSpread({}, (0, _cloneDeep["default"])(update), {
204
- _key: formatId,
224
+ var insert = _objectSpread(_objectSpread({}, (0, _cloneDeep["default"])(update)), {}, {
225
+ _key: formatConvoId,
205
226
  added: now
206
227
  });
207
228
 
208
- var aqlQry = (0, _arangojs.aql)(_templateObject3(), id, insert, update);
229
+ var aqlQry = (0, _arangojs.aql)(_templateObject3(), formatConvoId, insert, update);
209
230
  return (0, _utils2.useDb)(database).query(aqlQry).then(function (cursor) {
210
231
  return cursor.next();
211
232
  }).then(function () {
@@ -223,4 +244,68 @@ var updateConversation = function updateConversation(context, item) {
223
244
  };
224
245
 
225
246
  exports.updateConversation = updateConversation;
226
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhL2NvbnZlcnNhdGlvbnMudHMiXSwibmFtZXMiOlsiZXZlbnRDYXRlZ29yeSIsImdldENvbnZlcnNhdGlvbkxpc3QiLCJjb250ZXh0IiwiZnJvbSIsInRvIiwiYWN0aW9uIiwiZGF0YWJhc2UiLCJzZXNzaW9uSWQiLCJ1c2VySWQiLCJsaW1pdCIsImFxbFFyeSIsImFxbCIsInF1ZXJ5IiwidGhlbiIsImN1cnNvciIsImFsbCIsImVycm9yIiwiY2F0ZWdvcnkiLCJsYWJlbCIsImdldERpcmVjdENvbnZlcnNhdGlvbiIsImZvcm1hdFVzZXJJZCIsIm5leHQiLCJjb252ZXJzYXRpb24iLCJ1c2VycyIsImxlbmd0aCIsIm1hcCIsInVzZXIiLCJpbWdJZCIsInN1YiIsInRodW1iVXJsRGF0YSIsImlzVGh1bWIiLCJuYW1lIiwidGh1bWIiLCJnZXRDb252ZXJzYXRpb24iLCJjb252b0lkIiwiZm9ybWF0Q29udm9JZCIsInVwZGF0ZUNvbnZlcnNhdGlvbiIsIml0ZW0iLCJpZGVudGl0eSIsImRpcmVjdCIsImlkIiwicmNwdCIsImZvcm1hdElkIiwiam9pbiIsIm5vdyIsIkRhdGUiLCJ1cGRhdGUiLCJ1bmRlZmluZWQiLCJtb2RpZmllZCIsImluc2VydCIsIl9rZXkiLCJhZGRlZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUNBOztBQUdBOztBQUNBOztBQUNBOztBQUNBOztBQUlBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQTs7OztBQUlBLElBQU1BLGFBQXFCLEdBQUcsZUFBOUI7O0FBRU8sSUFBTUMsbUJBQW1CLEdBQUcsU0FBdEJBLG1CQUFzQixDQUFDQyxPQUFELEVBQXNCQyxJQUF0QixFQUFvQ0MsRUFBcEMsRUFBZ0Y7QUFDakgsTUFBTUMsTUFBYyxHQUFHLFNBQXZCO0FBRGlILE1BRTFHQyxRQUYwRyxHQUUzRUosT0FGMkUsQ0FFMUdJLFFBRjBHO0FBQUEs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LEdBQVNBLElBQVQsR0FBZ0JnQixTQUpKO0FBS2xCO0FBQ0F4QixJQUFBQSxLQUFLLEVBQUUsQ0FBQyxDQUFDQSxLQUFGLEdBQVVBLEtBQVYsR0FBa0J3QjtBQU5QLEdBQXBCOztBQVNBLE1BQU1FLE1BQVcscUJBQ1osMkJBQVVILE1BQVYsQ0FEWTtBQUVmSSxJQUFBQSxJQUFJLEVBQUVSLFFBRlM7QUFHZlMsSUFBQUEsS0FBSyxFQUFFUDtBQUhRLElBQWpCOztBQU1BLE1BQU1sQyxNQUFnQixPQUFHQyxhQUFILHNCQUF1QjZCLEVBQXZCLEVBQ1hTLE1BRFcsRUFFWEgsTUFGVyxDQUF0QjtBQUtBLFNBQU8sbUJBQU14QyxRQUFOLEVBQWdCTSxLQUFoQixDQUFzQkYsTUFBdEIsRUFDSkcsSUFESSxDQUNDLFVBQUNDLE1BQUQ7QUFBQSxXQUF5QkEsTUFBTSxDQUFDTyxJQUFQLEVBQXpCO0FBQUEsR0FERCxFQUVKUixJQUZJLENBRUM7QUFBQSxRQUFDUyxZQUFELHVFQUFrQyxFQUFsQztBQUFBLFdBQXlDQSxZQUF6QztBQUFBLEdBRkQsV0FHRSxVQUFDTixLQUFEO0FBQUEsV0FBa0IseUJBQVM7QUFDaENYLE1BQUFBLE1BQU0sRUFBTkEsTUFEZ0M7QUFFaENZLE1BQUFBLFFBQVEsRUFBRWpCLGFBRnNCO0FBR2hDa0IsTUFBQUEsS0FBSyxFQUFFO0FBSHlCLEtBQVQsRUFJdEJGLEtBSnNCLEVBSWZkLE9BSmUsRUFJTlcsSUFKTSxDQUlEO0FBQUEsYUFBTSxJQUFOO0FBQUEsS0FKQyxDQUFsQjtBQUFBLEdBSEYsQ0FBUDtBQVFELENBbkNNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtjcmVhdGVIYXNoLCBwYXJzZUlkfSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuaW1wb3J0IHthcWx9IGZyb20gJ2FyYW5nb2pzJztcbmltcG9ydCB7QXFsUXVlcnl9IGZyb20gJ2FyYW5nb2pzL2xpYi9janMvYXFsLXF1ZXJ5JztcbmltcG9ydCB7QXJyYXlDdXJzb3J9IGZyb20gJ2FyYW5nb2pzL2xpYi9janMvY3Vyc29yJztcbmltcG9ydCBjbG9uZURlZXAgZnJvbSAnbG9kYXNoL2Nsb25lRGVlcCc7XG5pbXBvcnQgaWRlbnRpdHkgZnJvbSAnbG9kYXNoL2lkZW50aXR5JztcbmltcG9ydCBpc0VtcHR5IGZyb20gJ2xvZGFzaC9pc0VtcHR5JztcbmltcG9ydCBwaWNrIGZyb20gJ2xvZGFzaC9waWNrJztcbmltcG9ydCB7QXBpQ29udGV4dH0gZnJvbSAndHlwZXMvYXV0aCc7XG5cbmltcG9ydCB7QXJhbmdvREJMaW1pdCwgQ29udmVyc2F0aW9uVHlwZSwgSW1hZ2VVcmxEYXRhLCBVc2VyVHlwZX0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHtnZXRMaW1pdCwgdXNlRGJ9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7bG9nRXJyb3J9IGZyb20gJy4uL3V0aWxzL2FuYWx5dGljcyc7XG5pbXBvcnQge2dldFVzZXJJbWFnZVVybH0gZnJvbSAnLi9pbWFnZXMnO1xuaW1wb3J0IHtnZXREaXNwbGF5TmFtZX0gZnJvbSAnLi91c2Vycyc7XG5cbi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE5LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5jb25zdCBldmVudENhdGVnb3J5OiBzdHJpbmcgPSAnY29udmVyc2F0aW9ucyc7XG5cbmV4cG9ydCBjb25zdCBnZXRDb252ZXJzYXRpb25MaXN0ID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIGZyb206IG51bWJlciwgdG86IG51bWJlcik6IFByb21pc2U8Q29udmVyc2F0aW9uVHlwZVtdPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2dldExpc3QnO1xuICBjb25zdCB7ZGF0YWJhc2UsIHVzZXJJZDogc2Vzc2lvbklkfSA9IGNvbnRleHQ7XG4gIGNvbnN0IGxpbWl0OiBBcmFuZ29EQkxpbWl0ID0gZ2V0TGltaXQoZnJvbSwgdG8pO1xuICBjb25zdCBhcWxRcnk6IHN0cmluZyA9IGBGT1IgYyBJTiBjb252ZXJzYXRpb25zXG4gICAgRklMVEVSIFBPU0lUSU9OKGMudXNlcnMsIFwiJHtzZXNzaW9uSWR9XCIsIGZhbHNlKVxuICAgIExFVCB1ID0gKFxuICAgICAgRk9SIGcgSU4gYy51c2Vyc1xuICAgICAgRk9SIHUgSU4gdXNlcnNcbiAgICAgIEZJTFRFUiBnID09IHUuX2tleVxuICAgICAgUkVUVVJOIHtfa2V5OnUuX2tleSwgZmlyc3Q6dS5maXJzdCwgbGFzdDp1Lmxhc3QsIG5hbWU6dS5uYW1lLCBlbWFpbDp1LmVtYWlsLCB1c2VybmFtZTp1LnVzZXJuYW1lLCBwaG90bzp1LnBob3RvIH1cbiAgICApXG4gICAgRklMVEVSIExFTkdUSCh1KSA+IDFcbiAgICAke2xpbWl0LmFxbH1cbiAgICBSRVRVUk4ge19rZXk6Yy5fa2V5LCBuYW1lOiBjLm5hbWUsIGRpcmVjdDogYy5kaXJlY3QsIHVzZXJzOiB1fWA7XG5cbiAgcmV0dXJuIHVzZURiKGRhdGFiYXNlKS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5hbGwoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4gbG9nRXJyb3Ioe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogJ2RiX2Vycm9yJ1xuICAgIH0sIGVycm9yLCBjb250ZXh0KS50aGVuKCgpID0+IG51bGwpKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXREaXJlY3RDb252ZXJzYXRpb24gPSAoY29udGV4dDogQXBpQ29udGV4dCwgdXNlcklkOiBzdHJpbmcpOiBQcm9taXNlPENvbnZlcnNhdGlvblR5cGU+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnZ2V0RGlyZWN0JztcbiAgY29uc3Qge2RhdGFiYXNlLCB1c2VySWQ6IHNlc3Npb25JZH0gPSBjb250ZXh0O1xuICBjb25zdCBmb3JtYXRVc2VySWQ6IHN0cmluZyA9IHBhcnNlSWQodXNlcklkKTtcblxuICBjb25zdCBhcWxRcnk6IEFxbFF1ZXJ5ID0gYXFsYEZPUiBjIElOIGNvbnZlcnNhdGlvbnNcbiAgICBGSUxURVIgTEVOR1RIKGMudXNlcnMpID09IDIgJiZcbiAgICBQT1NJVElPTihjLnVzZXJzLCAke3Nlc3Npb25JZH0sIHRydWUpICYmXG4gICAgUE9TSVRJT04oYy51c2VycywgJHtmb3JtYXRVc2VySWR9LCB0cnVlKVxuICAgIExFVCB1ID0gKFxuICAgICAgRk9SIGcgSU4gYy51c2Vyc1xuICAgICAgRk9SIHVzZXIgSU4gdXNlcnNcbiAgICAgIEZJTFRFUiB1c2VyLl9rZXkgPT0gZ1xuICAgICAgUkVUVVJOIHVzZXJcbiAgICApXG4gICAgTElNSVQgMVxuICAgIFJFVFVSTiBNRVJHRShjLCB7dXNlcnM6IHV9KWA7XG5cbiAgcmV0dXJuIHVzZURiKGRhdGFiYXNlKS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLnRoZW4oKGNvbnZlcnNhdGlvbjogQ29udmVyc2F0aW9uVHlwZSA9IHt9KSA9PiB7XG4gICAgICBjb25zdCB7dXNlcnMgPSBbXX0gPSBjb252ZXJzYXRpb247XG5cbiAgICAgIGlmKHVzZXJzLmxlbmd0aCkge1xuICAgICAgICBjb252ZXJzYXRpb24udXNlcnMgPSB1c2Vycy5tYXAoKHVzZXI6IFVzZXJUeXBlKSA9PiB7XG4gICAgICAgICAgY29uc3Qge2ltZ0lkLCBzdWJ9ID0gdXNlcjtcbiAgICAgICAgICBjb25zdCB0aHVtYlVybERhdGE6IEltYWdlVXJsRGF0YSA9IHtcbiAgICAgICAgICAgIGltZ0lkLFxuICAgICAgICAgICAgaXNUaHVtYjogdHJ1ZSxcbiAgICAgICAgICAgIHN1YlxuICAgICAgICAgIH07XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLnVzZXIsXG4gICAgICAgICAgICBuYW1lOiBnZXREaXNwbGF5TmFtZSh1c2VyKSxcbiAgICAgICAgICAgIHRodW1iOiBnZXRVc2VySW1hZ2VVcmwodGh1bWJVcmxEYXRhKVxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gY29udmVyc2F0aW9uO1xuICAgIH0pXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICB9LCBlcnJvciwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q29udmVyc2F0aW9uID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIGNvbnZvSWQ6IHN0cmluZyk6IFByb21pc2U8Q29udmVyc2F0aW9uVHlwZT4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdnZXRJdGVtJztcbiAgY29uc3Qge2RhdGFiYXNlLCB1c2VySWQ6IHNlc3Npb25JZH0gPSBjb250ZXh0O1xuICBjb25zdCBmb3JtYXRDb252b0lkOiBzdHJpbmcgPSBwYXJzZUlkKGNvbnZvSWQpO1xuXG4gIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgRk9SIGMgSU4gY29udmVyc2F0aW9uc1xuICAgIEZJTFRFUiBjLl9rZXkgPT0gJHtmb3JtYXRDb252b0lkfSAmJiBJU19MSVNUKGMudXNlcnMpICYmIFBPU0lUSU9OKGMudXNlcnMsICR7c2Vzc2lvbklkfSwgZmFsc2UpXG4gICAgTEVUIHUgPSAoXG4gICAgICBGT1IgZyBJTiBjLnVzZXJzXG4gICAgICBGT1IgdSBJTiB1c2Vyc1xuICAgICAgRklMVEVSIGcgPT0gdS5fa2V5XG4gICAgICBSRVRVUk4ge19rZXk6dS5fa2V5LCBmaXJzdDp1LmZpcnN0LCBsYXN0OnUubGFzdCwgbmFtZTp1Lm5hbWUsIGVtYWlsOnUuZW1haWwsIHVzZXJuYW1lOnUudXNlcm5hbWUsIHBob3RvOnUucGhvdG8gfVxuICAgIClcbiAgICBGSUxURVIgTEVOR1RIKHUpID4gMVxuICAgIExJTUlUIDFcbiAgICBSRVRVUk4gTUVSR0UoYywge3VzZXJzOiB1fSlgO1xuXG4gIHJldHVybiB1c2VEYihkYXRhYmFzZSkucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgIC50aGVuKChjb252ZXJzYXRpb246IENvbnZlcnNhdGlvblR5cGUgPSB7fSkgPT4ge1xuICAgICAgaWYoIWlzRW1wdHkoY29udmVyc2F0aW9uKSkge1xuICAgICAgICBjb252ZXJzYXRpb24udXNlcnMgPSBjb252ZXJzYXRpb24udXNlcnMubWFwKCh1c2VyOiBVc2VyVHlwZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHtpbWdJZCwgc3VifSA9IHVzZXI7XG4gICAgICAgICAgY29uc3QgdGh1bWJVcmxEYXRhOiBJbWFnZVVybERhdGEgPSB7XG4gICAgICAgICAgICBpbWdJZCxcbiAgICAgICAgICAgIGlzVGh1bWI6IHRydWUsXG4gICAgICAgICAgICBzdWJcbiAgICAgICAgICB9O1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi51c2VyLFxuICAgICAgICAgICAgbmFtZTogZ2V0RGlzcGxheU5hbWUodXNlciksXG4gICAgICAgICAgICB0aHVtYjogZ2V0VXNlckltYWdlVXJsKHRodW1iVXJsRGF0YSlcbiAgICAgICAgICB9O1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gY29udmVyc2F0aW9uO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHt9O1xuICAgIH0pXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICB9LCBlcnJvciwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKSk7XG59O1xuXG5leHBvcnQgY29uc3QgdXBkYXRlQ29udmVyc2F0aW9uID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIGl0ZW0pOiBQcm9taXNlPENvbnZlcnNhdGlvblR5cGU+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAndXBkYXRlJztcbiAgY29uc3Qge2RhdGFiYXNlLCB1c2VySWQ6IHNlc3Npb25JZH0gPSBjb250ZXh0O1xuICBjb25zdCB7ZGlyZWN0LCBpZCwgbmFtZSwgdXNlcnN9ID0gcGljayhpdGVtLCBpZGVudGl0eSk7XG4gIGNvbnN0IHJjcHQ6IFVzZXJUeXBlW10gPSB1c2VycyB8fCBbXTtcbiAgY29uc3QgZm9ybWF0SWQ6IHN0cmluZyA9IGl0ZW0uaWQgfHwgY3JlYXRlSGFzaChgY29udm8tJHtzZXNzaW9uSWR9LSR7cmNwdC5qb2luKCcnKX1gKTtcbiAgY29uc3Qgbm93OiBudW1iZXIgPSBEYXRlLm5vdygpO1xuICBjb25zdCB1cGRhdGU6IGFueSA9IHtcbiAgICAvLyBEaXJlY3QgbWVzc2FnZVxuICAgIGRpcmVjdDogISFkaXJlY3QgPyBkaXJlY3QgOiB1bmRlZmluZWQsXG4gICAgbW9kaWZpZWQ6IG5vdyxcbiAgICBuYW1lOiAhIW5hbWUgPyBuYW1lIDogdW5kZWZpbmVkLFxuICAgIC8vIFVzZXJzXG4gICAgdXNlcnM6ICEhdXNlcnMgPyB1c2VycyA6IHVuZGVmaW5lZFxuICB9O1xuXG4gIGNvbnN0IGluc2VydDogYW55ID0ge1xuICAgIC4uLmNsb25lRGVlcCh1cGRhdGUpLFxuICAgIF9rZXk6IGZvcm1hdElkLFxuICAgIGFkZGVkOiBub3dcbiAgfTtcblxuICBjb25zdCBhcWxRcnk6IEFxbFF1ZXJ5ID0gYXFsYFVQU0VSVCB7X2tleTogJHtpZH19XG4gICAgSU5TRVJUICR7aW5zZXJ0fVxuICAgIFVQREFURSAke3VwZGF0ZX1cbiAgICBJTiBjb252ZXJzYXRpb25zIFJFVFVSTiBORVdgO1xuXG4gIHJldHVybiB1c2VEYihkYXRhYmFzZSkucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgIC50aGVuKChjb252ZXJzYXRpb246IENvbnZlcnNhdGlvblR5cGUgPSB7fSkgPT4gY29udmVyc2F0aW9uKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFcnJvcih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAnZGJfZXJyb3InXG4gICAgfSwgZXJyb3IsIGNvbnRleHQpLnRoZW4oKCkgPT4gbnVsbCkpO1xufTtcbiJdfQ==
247
+
248
+ var addUserToConversation = function addUserToConversation(context, convoId, userId) {
249
+ var action = 'addUserToConversation';
250
+ var database = context.database;
251
+ var formatConvoId = (0, _utils.parseId)(convoId);
252
+ var formatUserId = (0, _utils.parseId)(userId);
253
+ var convoDocId = "conversations/".concat(formatConvoId, " ");
254
+ var userDocId = "users/".concat(formatUserId, " ");
255
+ var aqlQry = (0, _arangojs.aql)(_templateObject4(), userDocId, convoDocId);
256
+ return (0, _utils2.useDb)(database).query(aqlQry).then(function (cursor) {
257
+ return cursor.next();
258
+ }).then(function (conversationEdge) {
259
+ if (!!conversationEdge) {
260
+ return conversationEdge;
261
+ }
262
+
263
+ var edgeCollection = (0, _utils2.useDb)(database).collection('hasConversations');
264
+ var edgeId = (0, _utils.createHash)("convo - ".concat(formatConvoId, " -").concat(formatUserId, " "));
265
+ var edge = {
266
+ _from: userDocId,
267
+ _key: edgeId,
268
+ _to: convoDocId,
269
+ added: Date.now()
270
+ };
271
+ return edgeCollection.save(edge, {
272
+ returnNew: true
273
+ }).then(function () {
274
+ return edge;
275
+ });
276
+ })["catch"](function (error) {
277
+ return (0, _analytics.logError)({
278
+ action: action,
279
+ category: eventCategory,
280
+ label: 'db_error'
281
+ }, error, context).then(function () {
282
+ return null;
283
+ });
284
+ });
285
+ };
286
+
287
+ exports.addUserToConversation = addUserToConversation;
288
+
289
+ var removeUserToConversation = function removeUserToConversation(context, convoId, userId) {
290
+ var action = 'addUserToConversation';
291
+ var database = context.database;
292
+ var formatConvoId = (0, _utils.parseId)(convoId);
293
+ var formatUserId = (0, _utils.parseId)(userId);
294
+ var convoDocId = "conversations / ".concat(formatConvoId, " ");
295
+ var userDocId = "users/".concat(formatUserId, " ");
296
+ var aqlQry = (0, _arangojs.aql)(_templateObject5(), userDocId, convoDocId);
297
+ return (0, _utils2.useDb)(database).query(aqlQry).then(function (cursor) {
298
+ return cursor.next();
299
+ })["catch"](function (error) {
300
+ return (0, _analytics.logError)({
301
+ action: action,
302
+ category: eventCategory,
303
+ label: 'db_error'
304
+ }, error, context).then(function () {
305
+ return null;
306
+ });
307
+ });
308
+ };
309
+
310
+ exports.removeUserToConversation = removeUserToConversation;
311
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhL2NvbnZlcnNhdGlvbnMudHMiXSwibmFtZXMiOlsiZXZlbnRDYXRlZ29yeSIsImdldENvbnZlcnNhdGlvbkxpc3QiLCJjb250ZXh0IiwiZnJvbSIsInRvIiwiYWN0aW9uIiwiZGF0YWJhc2UiLCJzZXNzaW9uSWQiLCJ1c2VySWQiLCJsaW1pdCIsInNlc3Npb25Eb2NJZCIsImFxbFFyeSIsImFxbCIsInF1ZXJ5IiwidGhlbiIsImN1cnNvciIsImFsbCIsImVycm9yIiwiY2F0ZWdvcnkiLCJsYWJlbCIsImdldERpcmVjdENvbnZlcnNhdGlvbiIsInVzZXJEb2NJZCIsIm5leHQiLCJnZXRDb252ZXJzYXRpb24iLCJjb252b0lkIiwiY29udm9Eb2NJZCIsImNvbnZlcnNhdGlvbiIsInVzZXJzIiwibWFwIiwidXNlciIsImltZ0lkIiwic3ViIiwidGh1bWJVcmxEYXRhIiwiaXNUaHVtYiIsIm5hbWUiLCJ0aHVtYiIsInVwZGF0ZUNvbnZlcnNhdGlvbiIsImRpcmVjdCIsImZvcm1hdENvbnZvSWQiLCJub3ciLCJEYXRlIiwidXBkYXRlIiwibW9kaWZpZWQiLCJpbnNlcnQiLCJfa2V5IiwiYWRkZWQiLCJhZGRVc2VyVG9Db252ZXJzYXRpb24iLCJmb3JtYXRVc2VySWQiLCJjb252ZXJzYXRpb25FZGdlIiwiZWRnZUNvbGxlY3Rpb24iLCJjb2xsZWN0aW9uIiwiZWRnZUlkIiwiZWRnZSIsIl9mcm9tIiwiX3RvIiwic2F2ZSIsInJldHVybk5ldyIsInJlbW92ZVVzZXJUb0NvbnZlcnNhdGlvbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQTs7QUFDQTs7QUFJQTs7QUFDQTs7QUFJQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxJQUFNQSxhQUFxQixHQUFHLGVBQTlCOztBQUVP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QUFILHNCQUNBUyxTQURBLEVBQ3lCSSxVQUR6QixDQUF0QjtBQU1BLFNBQU8sbUJBQU1uQixRQUFOLEVBQWdCTyxLQUFoQixDQUFzQkYsTUFBdEIsRUFDSkcsSUFESSxDQUNDLFVBQUNDLE1BQUQ7QUFBQSxXQUF5QkEsTUFBTSxDQUFDTyxJQUFQLEVBQXpCO0FBQUEsR0FERCxXQUVFLFVBQUNMLEtBQUQ7QUFBQSxXQUFrQix5QkFBUztBQUNoQ1osTUFBQUEsTUFBTSxFQUFOQSxNQURnQztBQUVoQ2EsTUFBQUEsUUFBUSxFQUFFbEIsYUFGc0I7QUFHaENtQixNQUFBQSxLQUFLLEVBQUU7QUFIeUIsS0FBVCxFQUl0QkYsS0FKc0IsRUFJZmYsT0FKZSxFQUlOWSxJQUpNLENBSUQ7QUFBQSxhQUFNLElBQU47QUFBQSxLQUpDLENBQWxCO0FBQUEsR0FGRixDQUFQO0FBT0QsQ0FyQk0iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHtjcmVhdGVIYXNoLCBwYXJzZUlkfSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuaW1wb3J0IHthcWx9IGZyb20gJ2FyYW5nb2pzJztcbmltcG9ydCB7QXFsUXVlcnl9IGZyb20gJ2FyYW5nb2pzL2FxbCc7XG5pbXBvcnQge0VkZ2VDb2xsZWN0aW9ufSBmcm9tICdhcmFuZ29qcy9jb2xsZWN0aW9uJztcbmltcG9ydCB7QXJyYXlDdXJzb3J9IGZyb20gJ2FyYW5nb2pzL2N1cnNvcic7XG5pbXBvcnQgY2xvbmVEZWVwIGZyb20gJ2xvZGFzaC9jbG9uZURlZXAnO1xuaW1wb3J0IGlzRW1wdHkgZnJvbSAnbG9kYXNoL2lzRW1wdHknO1xuaW1wb3J0IHtBcGlDb250ZXh0fSBmcm9tICd0eXBlcy9hdXRoJztcblxuaW1wb3J0IHtBcmFuZ29EQkxpbWl0LCBDb252ZXJzYXRpb25UeXBlLCBJbWFnZVVybERhdGEsIFVzZXJUeXBlfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQge2dldExpbWl0LCB1c2VEYn0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHtsb2dFcnJvcn0gZnJvbSAnLi4vdXRpbHMvYW5hbHl0aWNzJztcbmltcG9ydCB7Z2V0VXNlckltYWdlVXJsfSBmcm9tICcuL2ltYWdlcyc7XG5pbXBvcnQge2dldERpc3BsYXlOYW1lfSBmcm9tICcuL3VzZXJzJztcblxuY29uc3QgZXZlbnRDYXRlZ29yeTogc3RyaW5nID0gJ2NvbnZlcnNhdGlvbnMnO1xuXG5leHBvcnQgY29uc3QgZ2V0Q29udmVyc2F0aW9uTGlzdCA9IChjb250ZXh0OiBBcGlDb250ZXh0LCBmcm9tOiBudW1iZXIsIHRvOiBudW1iZXIpOiBQcm9taXNlPENvbnZlcnNhdGlvblR5cGVbXT4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdnZXRMaXN0JztcbiAgY29uc3Qge2RhdGFiYXNlLCB1c2VySWQ6IHNlc3Npb25JZH0gPSBjb250ZXh0O1xuICBjb25zdCBsaW1pdDogQXJhbmdvREJMaW1pdCA9IGdldExpbWl0KGZyb20sIHRvKTtcbiAgY29uc3Qgc2Vzc2lvbkRvY0lkOiBzdHJpbmcgPSBgdXNlcnMvJHtzZXNzaW9uSWR9YDtcbiAgY29uc3QgYXFsUXJ5OiBzdHJpbmcgPSBgRk9SIGMsIGUgSU4gMS4uMSBPVVRCT1VORCBcIiR7c2Vzc2lvbkRvY0lkfVwiIGhhc0NvbnZlcnNhdGlvbnNcbiAgICAke2xpbWl0LmFxbH1cbiAgICBMRVQgdXNlcnMgPSAoXG4gICAgICBGT1IgdSwgdWMgSU4gMS4uMSBJTkJPVU5EIGMuX2lkIGhhc0NvbnZlcnNhdGlvbnNcbiAgICAgIEZJTFRFUiB1Ll9pZCAhPSBcIiR7c2Vzc2lvbkRvY0lkfVwiXG4gICAgICBSRVRVUk4gdVxuICAgIClcbiAgICBSRVRVUk4gTUVSR0UoYywge3VzZXJzOiB1c2Vyc30pYDtcblxuICByZXR1cm4gdXNlRGIoZGF0YWJhc2UpLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yOiBBcnJheUN1cnNvcikgPT4gY3Vyc29yLmFsbCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFcnJvcih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAnZGJfZXJyb3InXG4gICAgfSwgZXJyb3IsIGNvbnRleHQpLnRoZW4oKCkgPT4gbnVsbCkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldERpcmVjdENvbnZlcnNhdGlvbiA9IChjb250ZXh0OiBBcGlDb250ZXh0LCB1c2VySWQ6IHN0cmluZyk6IFByb21pc2U8Q29udmVyc2F0aW9uVHlwZT4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdnZXREaXJlY3RDb252ZXJzYXRpb24nO1xuICBjb25zdCB7ZGF0YWJhc2UsIHVzZXJJZDogc2Vzc2lvbklkfSA9IGNvbnRleHQ7XG4gIGNvbnN0IHNlc3Npb25Eb2NJZDogc3RyaW5nID0gYHVzZXJzLyR7c2Vzc2lvbklkfWA7XG4gIGNvbnN0IHVzZXJEb2NJZDogc3RyaW5nID0gYHVzZXJzLyR7cGFyc2VJZCh1c2VySWQpfWA7XG5cbiAgY29uc3QgYXFsUXJ5OiBBcWxRdWVyeSA9IGFxbGBMRVQgZnJvbSA9IChcbiAgICAgIEZPUiBjLCBlIElOIDEuLjEgT1VUQk9VTkQgJHtzZXNzaW9uRG9jSWR9IGhhc0NvbnZlcnNhdGlvbnNcbiAgICAgIEZJTFRFUiBjLmRpcmVjdCA9PSB0cnVlXG4gICAgICBSRVRVUk4gY1xuICAgIClcbiAgICBMRVQgdG8gPSAoXG4gICAgICBGT1IgYywgZSBJTiAxLi4xIE9VVEJPVU5EICR7dXNlckRvY0lkfSBoYXNDb252ZXJzYXRpb25zXG4gICAgICBGSUxURVIgYy5kaXJlY3QgPT0gdHJ1ZVxuICAgICAgUkVUVVJOIGNcbiAgICApXG4gICAgTEVUIGNvbnZlcnNhdGlvbiA9IEZJUlNUKElOVEVSU0VDVElPTihmcm9tLCB0bykpXG4gICAgTEVUIHVzZXJzID0gIUlTX05VTEwoY29udmVyc2F0aW9uKSAmJiAoXG4gICAgICBGT1IgZyBJTlske3Nlc3Npb25Eb2NJZH0sICR7dXNlckRvY0lkfV1cbiAgICAgIEZPUiB1IElOIHVzZXJzXG4gICAgICBGSUxURVIgZyA9PSB1Ll9pZFxuICAgICAgUkVUVVJOIHVcbiAgICApXG4gICAgUkVUVVJOIElTX05VTEwoY29udmVyc2F0aW9uKSA/IG51bGwgOiBNRVJHRShjb252ZXJzYXRpb24sIHt1c2VyczogdXNlcnN9KWA7XG5cbiAgcmV0dXJuIHVzZURiKGRhdGFiYXNlKS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICB9LCBlcnJvciwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q29udmVyc2F0aW9uID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIGNvbnZvSWQ6IHN0cmluZyk6IFByb21pc2U8Q29udmVyc2F0aW9uVHlwZT4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdnZXRJdGVtJztcbiAgY29uc3Qge2RhdGFiYXNlLCB1c2VySWQ6IHNlc3Npb25JZH0gPSBjb250ZXh0O1xuICBjb25zdCBzZXNzaW9uRG9jSWQ6IHN0cmluZyA9IGB1c2Vycy8ke3Nlc3Npb25JZH1gO1xuICBjb25zdCBjb252b0RvY0lkOiBzdHJpbmcgPSBgY29udmVyc2F0aW9ucy8ke3BhcnNlSWQoY29udm9JZCl9YDtcblxuICBjb25zdCBhcWxRcnk6IEFxbFF1ZXJ5ID0gYXFsYEZPUiBjLCBlIElOIDEuLjEgT1VUQk9VTkQgJHtzZXNzaW9uRG9jSWR9IGhhc0NvbnZlcnNhdGlvbnNcbiAgICBGSUxURVIgYy5faWQgPT0gJHtjb252b0RvY0lkfVxuICAgIExFVCB1ID0gKFxuICAgICAgRk9SIGluVXNlciwgaW5FZGdlIElOIDEuLjEgSU5CT1VORCAke2NvbnZvRG9jSWR9IGhhc0NvbnZlcnNhdGlvbnNcbiAgICAgIFJFVFVSTiBpblVzZXJcbiAgICApXG4gICAgTElNSVQgMVxuICAgIFJFVFVSTiBNRVJHRShjLCB7dXNlcnM6IHV9KWA7XG5cbiAgcmV0dXJuIHVzZURiKGRhdGFiYXNlKS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLnRoZW4oKGNvbnZlcnNhdGlvbjogQ29udmVyc2F0aW9uVHlwZSA9IHt9KSA9PiB7XG4gICAgICBpZighaXNFbXB0eShjb252ZXJzYXRpb24pKSB7XG4gICAgICAgIGNvbnZlcnNhdGlvbi51c2VycyA9IGNvbnZlcnNhdGlvbi51c2Vycy5tYXAoKHVzZXI6IFVzZXJUeXBlKSA9PiB7XG4gICAgICAgICAgY29uc3Qge2ltZ0lkLCBzdWJ9ID0gdXNlcjtcbiAgICAgICAgICBjb25zdCB0aHVtYlVybERhdGE6IEltYWdlVXJsRGF0YSA9IHtcbiAgICAgICAgICAgIGltZ0lkLFxuICAgICAgICAgICAgaXNUaHVtYjogdHJ1ZSxcbiAgICAgICAgICAgIHN1YlxuICAgICAgICAgIH07XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLnVzZXIsXG4gICAgICAgICAgICBuYW1lOiBnZXREaXNwbGF5TmFtZSh1c2VyKSxcbiAgICAgICAgICAgIHRodW1iOiBnZXRVc2VySW1hZ2VVcmwodGh1bWJVcmxEYXRhKVxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBjb252ZXJzYXRpb247XG4gICAgICB9XG4gICAgICByZXR1cm4ge307XG4gICAgfSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4gbG9nRXJyb3Ioe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogJ2RiX2Vycm9yJ1xuICAgIH0sIGVycm9yLCBjb250ZXh0KS50aGVuKCgpID0+IG51bGwpKTtcbn07XG5cbmV4cG9ydCBjb25zdCB1cGRhdGVDb252ZXJzYXRpb24gPSAoY29udGV4dDogQXBpQ29udGV4dCwgY29udmVyc2F0aW9uKTogUHJvbWlzZTxDb252ZXJzYXRpb25UeXBlPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ3VwZGF0ZUNvbnZlcnNhdGlvbic7XG4gIGNvbnN0IHtkYXRhYmFzZSwgdXNlcklkOiBzZXNzaW9uSWR9ID0gY29udGV4dDtcbiAgY29uc3Qge1xuICAgIGRpcmVjdCxcbiAgICBjb252b0lkID0gY3JlYXRlSGFzaChgY29udm8gLSAke3Nlc3Npb25JZH0gYCksXG4gICAgbmFtZVxuICB9ID0gY29udmVyc2F0aW9uO1xuICBjb25zdCBmb3JtYXRDb252b0lkOiBzdHJpbmcgPSBwYXJzZUlkKGNvbnZvSWQpO1xuICBjb25zdCBub3c6IG51bWJlciA9IERhdGUubm93KCk7XG4gIGNvbnN0IHVwZGF0ZTogYW55ID0ge1xuICAgIC8vIERpcmVjdCBtZXNzYWdlXG4gICAgZGlyZWN0LFxuICAgIG1vZGlmaWVkOiBub3csXG4gICAgbmFtZVxuICB9O1xuXG4gIGNvbnN0IGluc2VydDogYW55ID0ge1xuICAgIC4uLmNsb25lRGVlcCh1cGRhdGUpLFxuICAgIF9rZXk6IGZvcm1hdENvbnZvSWQsXG4gICAgYWRkZWQ6IG5vd1xuICB9O1xuXG4gIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgVVBTRVJUIHtfa2V5OiAke2Zvcm1hdENvbnZvSWR9IH1cbiAgICBJTlNFUlQgJHtpbnNlcnR9XG4gICAgVVBEQVRFICR7dXBkYXRlfVxuICAgIElOIGNvbnZlcnNhdGlvbnMgUkVUVVJOIE5FV2A7XG5cbiAgcmV0dXJuIHVzZURiKGRhdGFiYXNlKS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLnRoZW4oKGNvbnZlcnNhdGlvbjogQ29udmVyc2F0aW9uVHlwZSA9IHt9KSA9PiBjb252ZXJzYXRpb24pXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICB9LCBlcnJvciwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKSk7XG59O1xuXG5leHBvcnQgY29uc3QgYWRkVXNlclRvQ29udmVyc2F0aW9uID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIGNvbnZvSWQ6IHN0cmluZywgdXNlcklkOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnYWRkVXNlclRvQ29udmVyc2F0aW9uJztcbiAgY29uc3Qge2RhdGFiYXNlfSA9IGNvbnRleHQ7XG4gIGNvbnN0IGZvcm1hdENvbnZvSWQ6IHN0cmluZyA9IHBhcnNlSWQoY29udm9JZCk7XG4gIGNvbnN0IGZvcm1hdFVzZXJJZDogc3RyaW5nID0gcGFyc2VJZCh1c2VySWQpO1xuICBjb25zdCBjb252b0RvY0lkOiBzdHJpbmcgPSBgY29udmVyc2F0aW9ucy8ke2Zvcm1hdENvbnZvSWR9IGA7XG4gIGNvbnN0IHVzZXJEb2NJZDogc3RyaW5nID0gYHVzZXJzLyR7Zm9ybWF0VXNlcklkfSBgO1xuXG4gIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgRk9SIGMgSU4gaGFzQ29udmVyc2F0aW9uc1xuICAgIEZJTFRFUiBjLl9mcm9tID09ICR7dXNlckRvY0lkfSAmJiBjLl90byA9PSAke2NvbnZvRG9jSWR9XG4gICAgTElNSVQgMVxuICAgIFJFVFVSTiBjYDtcblxuICByZXR1cm4gdXNlRGIoZGF0YWJhc2UpLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yOiBBcnJheUN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAudGhlbigoY29udmVyc2F0aW9uRWRnZSkgPT4ge1xuICAgICAgaWYoISFjb252ZXJzYXRpb25FZGdlKSB7XG4gICAgICAgIHJldHVybiBjb252ZXJzYXRpb25FZGdlO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBlZGdlQ29sbGVjdGlvbjogRWRnZUNvbGxlY3Rpb24gPSB1c2VEYihkYXRhYmFzZSkuY29sbGVjdGlvbignaGFzQ29udmVyc2F0aW9ucycpO1xuICAgICAgY29uc3QgZWRnZUlkOiBzdHJpbmcgPSBjcmVhdGVIYXNoKGBjb252byAtICR7Zm9ybWF0Q29udm9JZH0gLSR7Zm9ybWF0VXNlcklkfSBgKTtcblxuICAgICAgY29uc3QgZWRnZTogQ29udmVyc2F0aW9uVHlwZSA9IHtcbiAgICAgICAgX2Zyb206IHVzZXJEb2NJZCxcbiAgICAgICAgX2tleTogZWRnZUlkLFxuICAgICAgICBfdG86IGNvbnZvRG9jSWQsXG4gICAgICAgIGFkZGVkOiBEYXRlLm5vdygpXG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gZWRnZUNvbGxlY3Rpb24uc2F2ZShlZGdlLCB7cmV0dXJuTmV3OiB0cnVlfSkudGhlbigoKSA9PiBlZGdlKTtcbiAgICB9KVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFcnJvcih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAnZGJfZXJyb3InXG4gICAgfSwgZXJyb3IsIGNvbnRleHQpLnRoZW4oKCkgPT4gbnVsbCkpO1xufTtcblxuZXhwb3J0IGNvbnN0IHJlbW92ZVVzZXJUb0NvbnZlcnNhdGlvbiA9IChjb250ZXh0OiBBcGlDb250ZXh0LCBjb252b0lkOiBzdHJpbmcsIHVzZXJJZDogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2FkZFVzZXJUb0NvbnZlcnNhdGlvbic7XG4gIGNvbnN0IHtkYXRhYmFzZX0gPSBjb250ZXh0O1xuICBjb25zdCBmb3JtYXRDb252b0lkOiBzdHJpbmcgPSBwYXJzZUlkKGNvbnZvSWQpO1xuICBjb25zdCBmb3JtYXRVc2VySWQ6IHN0cmluZyA9IHBhcnNlSWQodXNlcklkKTtcbiAgY29uc3QgY29udm9Eb2NJZDogc3RyaW5nID0gYGNvbnZlcnNhdGlvbnMgLyAke2Zvcm1hdENvbnZvSWR9IGA7XG4gIGNvbnN0IHVzZXJEb2NJZDogc3RyaW5nID0gYHVzZXJzLyR7Zm9ybWF0VXNlcklkfSBgO1xuXG4gIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgRk9SIGMgSU4gaGFzQ29udmVyc2F0aW9uc1xuICAgIEZJTFRFUiBjLl9mcm9tID09ICR7dXNlckRvY0lkfSAmJiBjLl90byA9PSAke2NvbnZvRG9jSWR9XG4gICAgTElNSVQgMVxuICAgIFJFTU9WRSBjIElOIGhhc0NvbnZlcnNhdGlvbnNcbiAgICBSRVRVUk4gT0xEYDtcblxuICByZXR1cm4gdXNlRGIoZGF0YWJhc2UpLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yOiBBcnJheUN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4gbG9nRXJyb3Ioe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogJ2RiX2Vycm9yJ1xuICAgIH0sIGVycm9yLCBjb250ZXh0KS50aGVuKCgpID0+IG51bGwpKTtcbn07XG4iXX0=
@@ -1,8 +1,8 @@
1
- import { DynamoDB } from 'aws-sdk';
2
- export declare const dynamoGet: (params: DynamoDB.GetItemInput) => Promise<DynamoDB.GetItemOutput>;
3
- export declare const dynamoGetList: (params: DynamoDB.QueryInput, index: any) => Promise<DynamoDB.GetItemOutput[]>;
4
- export declare const dynamoPut: (params: DynamoDB.PutItemInput) => Promise<DynamoDB.PutItemOutput>;
5
- export declare const dynamoUpdate: (params: DynamoDB.UpdateItemInput) => Promise<DynamoDB.UpdateItemOutput>;
6
- export declare const dynamoPutList: (params: DynamoDB.BatchWriteItemInput) => Promise<DynamoDB.BatchWriteItemOutput>;
7
- export declare const dynamoDel: (params: DynamoDB.DeleteItemInput) => Promise<DynamoDB.DeleteItemOutput>;
8
- export declare const parseDynamo: (results: DynamoDB.QueryOutput) => any[];
1
+ import { BatchWriteItemInput, BatchWriteItemOutput, DeleteItemInput, DeleteItemOutput, GetItemInput, GetItemOutput, PutItemInput, PutItemOutput, QueryInput, QueryOutput, UpdateItemInput, UpdateItemOutput } from 'aws-sdk/clients/dynamodb';
2
+ export declare const dynamoGet: (params: GetItemInput) => Promise<GetItemOutput>;
3
+ export declare const parseDynamo: (results: QueryOutput) => any[];
4
+ export declare const dynamoGetList: (params: QueryInput, index: any) => Promise<GetItemOutput[]>;
5
+ export declare const dynamoPut: (params: PutItemInput) => Promise<PutItemOutput>;
6
+ export declare const dynamoUpdate: (params: UpdateItemInput) => Promise<UpdateItemOutput>;
7
+ export declare const dynamoPutList: (params: BatchWriteItemInput) => Promise<BatchWriteItemOutput>;
8
+ export declare const dynamoDel: (params: DeleteItemInput) => Promise<DeleteItemOutput>;