@amityco/ts-sdk 6.21.0 → 6.21.1-4d1bb69.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 (29) hide show
  1. package/.env +26 -26
  2. package/dist/client/api/index.d.ts +1 -0
  3. package/dist/client/api/index.d.ts.map +1 -1
  4. package/dist/client/api/logout.d.ts +2 -2
  5. package/dist/client/api/secureLogout.d.ts +15 -0
  6. package/dist/client/api/secureLogout.d.ts.map +1 -0
  7. package/dist/commentRepository/events/onCommentReactionRemoved.d.ts.map +1 -1
  8. package/dist/index.cjs.js +49 -13
  9. package/dist/index.esm.js +49 -13
  10. package/dist/index.umd.js +1 -1
  11. package/dist/postRepository/observers/getPost.d.ts.map +1 -1
  12. package/dist/reactionRepository/utils/index.d.ts +1 -1
  13. package/dist/reactionRepository/utils/{prepareReactionPayloadFormEvent.d.ts → prepareReactionPayloadFromEvent.d.ts} +2 -2
  14. package/dist/reactionRepository/utils/prepareReactionPayloadFromEvent.d.ts.map +1 -0
  15. package/package.json +1 -1
  16. package/src/client/api/index.ts +1 -0
  17. package/src/client/api/logout.ts +2 -2
  18. package/src/client/api/secureLogout.ts +33 -0
  19. package/src/commentRepository/events/onCommentReactionAdded.ts +2 -2
  20. package/src/commentRepository/events/onCommentReactionRemoved.ts +3 -2
  21. package/src/commentRepository/events/utils.ts +1 -1
  22. package/src/postRepository/events/onPostReactionAdded.ts +2 -2
  23. package/src/postRepository/events/onPostReactionRemoved.ts +2 -2
  24. package/src/postRepository/observers/getPost.ts +12 -2
  25. package/src/reactionRepository/utils/index.ts +1 -1
  26. package/src/reactionRepository/utils/{prepareReactionPayloadFormEvent.ts → prepareReactionPayloadFromEvent.ts} +1 -1
  27. package/src/subChannelRepository/observers/getSubChannel.ts +1 -1
  28. package/src/utils/linkedObject/postLinkedObject.ts +2 -2
  29. package/dist/reactionRepository/utils/prepareReactionPayloadFormEvent.d.ts.map +0 -1
package/.env CHANGED
@@ -1,28 +1,28 @@
1
1
  LIVE_STREAM_KEY='-----BEGIN PRIVATE KEY-----
2
- MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDHo80SecH7FuF2
3
- hFYnb+l26/VN8UMLXAQFLnxciNTEwkGVFMpdezlH8rU2HtUJL4RETogbAOLVY0XM
4
- js6sPn8G1nALmh9qeDpUtVqFOVtBHxEZ910TLOtQiunjqJKO5nWdqZ71EC3OFluR
5
- iGQkO84BiIFbv37ub7xl3S8XarbtKoLcyVpkDHi+1wx1pgCAn6gtBUgckPL5NR8j
6
- Lseabl3HAXQfhTCKo4tmOFM2Dxwl1IUMmIJrJg/aIU/U0tj/1Eoo7mG0JcNWX19l
7
- W3EecCbi0ncCJOrkUdwlBrcjaMayaX/ubEwyUeTGiLdyc4L3GRLHjyK8xgVNXRMH
8
- bZWJ2a5NAgMBAAECggEASxuE+35zTFO/XydKgmvIGcWL9FbgMlXb7Vcf0nBoG945
9
- biz0NVc2paraIhJXc608xbYF3qLmtAE1MVBI0ORyRdBHNxY024l/6H6SH60Ed+uI
10
- M4ysp5ourY6Vj+DLwpdRiI9YDjqYAQDIUmhNxJP7XPhOMoZI6st+xZQBM34ic/bv
11
- AMSJm9OZphSp3+qXVkFZztr2mxD2EZSJJLYxi8BCdgM2qhazalbcJ6zDKHCZWVWm
12
- 8RRxDGldyMb/237JxETzP40tAlzOZDmBAbUgEnurDJ93RVDIE3rbZUshwgeQd18a
13
- em096mWgvB1AIKYgsTAR3pw+V19YWAjq/glP6fz8wQKBgQD/oQq+ukKF0PRgBeM5
14
- geTjSwsdGppQLmf5ndujvoiz/TpdjDEPu6R8kigQr1rG2t4K/yfdZoI8RdmJD1al
15
- 3Q7N9hofooSy4rj6E3txzWZCHJjHad2cnCp/O26HiReGAl7wTcfTmNdiFHhZQzm5
16
- JBkvWAiwuvQMNfEbnXxw6/vIDwKBgQDH7fX8gsc77JLvAWgp1MaQN/sbqVb6JeT1
17
- FQfR8E/WFCSmzQBtNzd5KgYuCeelwr/8DyYytvN2BzCYZXp73gI1jF3YlW5jVn74
18
- OY6TwQ095digwo6Z0yuxopdIOApKgAkL9PRKgNrqAf3NAyMua6lOGifzjDojC3KU
19
- fylQmxMn4wKBgHp2B9O/H0dEBw5JQ8W0+JX6yWQz7mEjGiR2/1W+XXb8hQ1zr709
20
- w1r6Gb+EghRpnZ3fBpYGGbYOMFx8wKHM+N6qW3F0ReX8v2juFGE8aRSa5oYBrWzt
21
- U16Idjbv8hj84cZ1PJmdyvDtpYn9rpWHOZl4rxEbPvbqkIsOMyNVqdT5AoGAOSge
22
- mwIIU2le2FVeohbibXiToWTYKMuMmURZ5/r72AgKMmWJKbAPe+Q3wBG01/7FRBpQ
23
- oU8Ma0HC8s6QJbliiEyIx9JwrJWd1vkdecBHONrtA4ibm/5zD2WcOllLF+FitLhi
24
- 3qnX6+6F0IaFGFBPJrTzlv0P4dTz/OAdv52V7GECgYEA2TttOKBAqWllgOaZOkql
25
- LVMJVmgR7s6tLi1+cEP8ZcapV9aRbRzTAKXm4f8AEhtlG9F9kCOvHYCYGi6JaiWJ
26
- ZkHjeex3T+eE6Di6y5Bm/Ift5jtVhJ4jCVwHOKTMej79NPUFTJfv8hCo29haBDv6
27
- RXFrv+T21KCcw8k3sJeJWWQ=
2
+ MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDAARz+hmBgi8pJ
3
+ Qb8LeY41gtHhk+ACMwRfhsn7GqpqRQNG2qU0755mzZuVDUqjQMGSo8THJB7O+OJs
4
+ flbZRkFXlFoFOVNw1UpNOgwEQZ6wB9oRwzepTJAfF1sVhm/o/ixvXh1zDFNDy6yZ
5
+ pXyiiJHUVxqyjllZhxnwdvjoVtDs6hW6awG09bB9nh/TTejlUKXoAgzqVwu/1QMu
6
+ UVViET495elEe19aUarEy+oL2iKeXCEvqda/pWNBdbieFyJvvZ08HN8dPuT88wq2
7
+ jZLEAth1vrwQ2IAa4ktaLcBQdLJgIkrbDvAiVZ8lQAjS/bq5vXQikTGvoPlC5bbn
8
+ vuOM/3eLAgMBAAECggEAVZ+peHAghq2QVj71nX5lxsNCKaCyYwixSJBpfouTt7Rz
9
+ E6PpzMOXFi1W1o+I22jDakuSM2SOQKqI/u0QefB0r0O/KVk5NrZHXk0mkrdYtxOp
10
+ UgaGyf8UvmjB+8VqHrNKyZdk9qtmbnNj01kTTcAtmE4H39zPR7eR/8Rul94vaZbs
11
+ wCnKJS3mLT3JxyGug6lxanveKkjG+CKC1nJQYWaxCJxaFSzbwXQPvDhB+TvrIbee
12
+ pd5v4EAyEJohpr+T9oDGGJkb/KARBZCtwLyB976PKJwwBA8MRVL1i5QwawuMiMq5
13
+ UtnOnbGKtCeFzaLbNU0Qi8bqyims84EQxC6DOu1fkQKBgQDdvsoBsEhsOXV7hlIJ
14
+ aEd0eSJZVkdqimxH8uGoMM2FeNaOrcB6yBXqTSP0R3OIyf8eaY6yjRvP30ZNXcll
15
+ /gD3O1Mu6YmWQdt1W2WA6pKOsUuPXasf0pdOF7IiFZKlSabz5YHXFqwVuqm8loaj
16
+ sXel3YWqPVdHiankE7tz+3ssnQKBgQDdqi4TNdD1MdEpihx19jr0QjUiXW3939FK
17
+ qp30HESPEGDGQzXdmJgif9HhZb+cJSuWaHEbjgBrYahvgCF+y6LbEpOD+D/dmT+s
18
+ DEAQaR84sah6dokwPjV8fjBSrcVFjCS+doxv0d3p/9OUEeyUhFrY03nxtIEYkLIE
19
+ /Zvn37b4RwKBgQCLENVFe9XfsaVhQ5r9dV2iyTlmh7qgMZG5CbTFs12hQGhm8McO
20
+ +Z7s41YSJCFr/yq1WwP4LJDtrBw99vyQr1zRsG35tNLp3gGRNzGQSQyC2uQFVHw2
21
+ p+7mNewsfhUK/gbrXNsyFnDz6635rPlhfbII3sWuP2wWXFqkxE9CbMwR7QKBgQC6
22
+ awDMzxmo2/iYArrkyevSuEuPVxvFwpF1RgAI6C0QVCnPE38dmdN4UB7mfHekje4W
23
+ VEercMURidPp0cxZolCYBQtilUjAyL0vqC3In1/Ogjq6oy3FEMxSop1pKxMY5j+Q
24
+ noqFD+6deLUrddeNH7J3X4LSr4dSbX4JjG+tlgt+yQKBgQCuwTL4hA6KqeInQ0Ta
25
+ 9VQX5Qr8hFlqJz1gpymi/k63tW/Ob8yedbg3WWNWyShwRMFYyY9S81ITFWM95uL6
26
+ vF3x9rmRjwElJw9PMwVu6dmf/CO0Z1wzXSp2VVD12gbrUD/0/d7MUoJ9LgC8X8f/
27
+ n0txLHYGHbx+nf95+JUg6lV3hg==
28
28
  -----END PRIVATE KEY-----'
@@ -3,6 +3,7 @@ export * from './activeUser';
3
3
  export * from './createClient';
4
4
  export * from './login';
5
5
  export * from './logout';
6
+ export * from './secureLogout';
6
7
  export * from './isConnected';
7
8
  export * from './getFeedSettings';
8
9
  export * from './renewal';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,cAAc,cAAc,CAAC;AAE7B,cAAc,gBAAgB,CAAC;AAE/B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AAEzB,cAAc,eAAe,CAAC;AAE9B,cAAc,mBAAmB,CAAC;AAElC,cAAc,WAAW,CAAC;AAE1B,cAAc,cAAc,CAAC;AAE7B,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,cAAc,cAAc,CAAC;AAE7B,cAAc,gBAAgB,CAAC;AAE/B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAE/B,cAAc,eAAe,CAAC;AAE9B,cAAc,mBAAmB,CAAC;AAElC,cAAc,WAAW,CAAC;AAE1B,cAAc,cAAc,CAAC;AAE7B,cAAc,qBAAqB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * ```js
3
- * import { disconnectClient } from '@amityco/ts-sdk'
4
- * const success = await disconnectClient()
3
+ * import { Client } from '@amityco/ts-sdk';
4
+ * const success = await Client.logout()
5
5
  * ```
6
6
  *
7
7
  * Disconnects an {@link Amity.Client} instance from ASC servers
@@ -0,0 +1,15 @@
1
+ /**
2
+ * ```js
3
+ * import { Client } from '@amityco/ts-sdk'
4
+ * const success = await Client.secureLogout()
5
+ * ```
6
+ *
7
+ * Revoke access token for current user and disconnects an {@link Amity.Client} instance from ASC servers
8
+ *
9
+ * @returns a success boolean if disconnected
10
+ *
11
+ * @category Client API
12
+ * @async
13
+ */
14
+ export declare const secureLogout: () => Promise<boolean>;
15
+ //# sourceMappingURL=secureLogout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secureLogout.d.ts","sourceRoot":"","sources":["../../../src/client/api/secureLogout.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,YAAY,QAAa,QAAQ,OAAO,CAYpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"onCommentReactionRemoved.d.ts","sourceRoot":"","sources":["../../../src/commentRepository/events/onCommentReactionRemoved.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,wBAAwB,aACzB,MAAM,QAAQ,CAAC,MAAM,eAAe,CAAC,KAC9C,MAAM,YAuBR,CAAC"}
1
+ {"version":3,"file":"onCommentReactionRemoved.d.ts","sourceRoot":"","sources":["../../../src/commentRepository/events/onCommentReactionRemoved.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,wBAAwB,aACzB,MAAM,QAAQ,CAAC,MAAM,eAAe,CAAC,KAC9C,MAAM,YAuBR,CAAC"}
package/dist/index.cjs.js CHANGED
@@ -5351,9 +5351,9 @@ const postLinkedObject = (post) => {
5351
5351
  },
5352
5352
  get creator() {
5353
5353
  const cacheData = pullFromCache(['user', 'get', post.postedUserId]);
5354
- if (cacheData === null || cacheData === void 0 ? void 0 : cacheData.data)
5355
- return userLinkedObject(cacheData.data);
5356
- return undefined;
5354
+ if (!(cacheData === null || cacheData === void 0 ? void 0 : cacheData.data))
5355
+ return;
5356
+ return userLinkedObject(cacheData.data);
5357
5357
  } });
5358
5358
  };
5359
5359
 
@@ -7727,8 +7727,8 @@ var objectResolverEngineOnLoginHandler = () => {
7727
7727
  */
7728
7728
  /**
7729
7729
  * ```js
7730
- * import { disconnectClient } from '@amityco/ts-sdk'
7731
- * const success = await disconnectClient()
7730
+ * import { Client } from '@amityco/ts-sdk';
7731
+ * const success = await Client.logout()
7732
7732
  * ```
7733
7733
  *
7734
7734
  * Disconnects an {@link Amity.Client} instance from ASC servers
@@ -8995,6 +8995,33 @@ const createClient = (apiKey, apiRegion = API_REGIONS.SG, { debugSession = DEFAU
8995
8995
  return client;
8996
8996
  };
8997
8997
 
8998
+ /* begin_public_function
8999
+ id: client.secureLogout
9000
+ */
9001
+ /**
9002
+ * ```js
9003
+ * import { Client } from '@amityco/ts-sdk'
9004
+ * const success = await Client.secureLogout()
9005
+ * ```
9006
+ *
9007
+ * Revoke access token for current user and disconnects an {@link Amity.Client} instance from ASC servers
9008
+ *
9009
+ * @returns a success boolean if disconnected
9010
+ *
9011
+ * @category Client API
9012
+ * @async
9013
+ */
9014
+ const secureLogout = async () => {
9015
+ const client = getActiveClient();
9016
+ const { data: { success }, } = await client.http.delete('/api/v4/sessions');
9017
+ if (!success) {
9018
+ throw new Error('Failed to logout');
9019
+ }
9020
+ const result = await logout();
9021
+ return result;
9022
+ };
9023
+ /* end_public_function */
9024
+
8998
9025
  /**
8999
9026
  * ```js
9000
9027
  * import { isConnected } from '@amityco/ts-sdk'
@@ -9525,6 +9552,7 @@ var index$k = /*#__PURE__*/Object.freeze({
9525
9552
  createClient: createClient,
9526
9553
  login: login,
9527
9554
  logout: logout,
9555
+ secureLogout: secureLogout,
9528
9556
  isConnected: isConnected,
9529
9557
  getFeedSettings: getFeedSettings,
9530
9558
  renewal: renewal,
@@ -12411,7 +12439,7 @@ const remappingMyReaction = (event, userId, reactionName, myReactions = []) => {
12411
12439
  return newMyReactions;
12412
12440
  };
12413
12441
  /** @hidden */
12414
- const prepareReactionPayloadFormEvent = (event, payload) => {
12442
+ const prepareReactionPayloadFromEvent = (event, payload) => {
12415
12443
  const eventPrefix = event.split('.')[0]; // 'post' | 'comment'
12416
12444
  const myReactions = getMyReactionsInCache(payload, eventPrefix);
12417
12445
  const newMyReaction = remappingMyReaction(event, payload.reactor.userId, payload.reactor.reactionName, myReactions);
@@ -12802,7 +12830,7 @@ const onPostReactionAdded = (callback) => {
12802
12830
  callback(payload.posts[0]);
12803
12831
  }
12804
12832
  else {
12805
- const processed = prepareReactionPayloadFormEvent('post.addReaction', payload);
12833
+ const processed = prepareReactionPayloadFromEvent('post.addReaction', payload);
12806
12834
  const postPayload = __rest(processed, ["reactor"]);
12807
12835
  ingestInCache(postPayload);
12808
12836
  const post = pullFromCache(['post', 'get', payload.posts[0].postId]);
@@ -12834,7 +12862,7 @@ const onPostReactionRemoved = (callback) => {
12834
12862
  callback(payload.posts[0]);
12835
12863
  }
12836
12864
  else {
12837
- const processed = prepareReactionPayloadFormEvent('post.removeReaction', payload);
12865
+ const processed = prepareReactionPayloadFromEvent('post.removeReaction', payload);
12838
12866
  const postPayload = __rest(processed, ["reactor"]);
12839
12867
  ingestInCache(postPayload);
12840
12868
  const post = pullFromCache(['post', 'get', payload.posts[0].postId]);
@@ -12992,7 +13020,7 @@ const onCommentReactionAdded = (callback) => {
12992
13020
  callback(LinkedObject.comment(payload.comments[0]));
12993
13021
  }
12994
13022
  else {
12995
- const processed = prepareReactionPayloadFormEvent('comment.addReaction', payload);
13023
+ const processed = prepareReactionPayloadFromEvent('comment.addReaction', payload);
12996
13024
  const commentPayload = __rest(processed, ["reactor"]);
12997
13025
  ingestInCache(commentPayload);
12998
13026
  const comment = pullFromCache([
@@ -13028,7 +13056,7 @@ const onCommentReactionRemoved = (callback) => {
13028
13056
  callback(LinkedObject.comment(payload.comments[0]));
13029
13057
  }
13030
13058
  else {
13031
- const processed = prepareReactionPayloadFormEvent('comment.removeReaction', payload);
13059
+ const processed = prepareReactionPayloadFromEvent('comment.removeReaction', payload);
13032
13060
  const commentPayload = __rest(processed, ["reactor"]);
13033
13061
  ingestInCache(commentPayload);
13034
13062
  const comment = pullFromCache([
@@ -20321,8 +20349,16 @@ const getPost = (postId, callback) => {
20321
20349
  });
20322
20350
  },
20323
20351
  onPostFlagged,
20324
- onPostReactionAdded,
20325
- onPostReactionRemoved,
20352
+ (callback) => {
20353
+ return onPostReactionAdded((post) => {
20354
+ callback(LinkedObject.post(post));
20355
+ });
20356
+ },
20357
+ (callback) => {
20358
+ return onPostReactionRemoved((post) => {
20359
+ callback(LinkedObject.post(post));
20360
+ });
20361
+ },
20326
20362
  onPostUnflagged,
20327
20363
  onPostUpdated,
20328
20364
  ]);
@@ -22187,7 +22223,7 @@ var index$2 = /*#__PURE__*/Object.freeze({
22187
22223
  getPoll: getPoll
22188
22224
  });
22189
22225
 
22190
- const privateKey = "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDHo80SecH7FuF2\nhFYnb+l26/VN8UMLXAQFLnxciNTEwkGVFMpdezlH8rU2HtUJL4RETogbAOLVY0XM\njs6sPn8G1nALmh9qeDpUtVqFOVtBHxEZ910TLOtQiunjqJKO5nWdqZ71EC3OFluR\niGQkO84BiIFbv37ub7xl3S8XarbtKoLcyVpkDHi+1wx1pgCAn6gtBUgckPL5NR8j\nLseabl3HAXQfhTCKo4tmOFM2Dxwl1IUMmIJrJg/aIU/U0tj/1Eoo7mG0JcNWX19l\nW3EecCbi0ncCJOrkUdwlBrcjaMayaX/ubEwyUeTGiLdyc4L3GRLHjyK8xgVNXRMH\nbZWJ2a5NAgMBAAECggEASxuE+35zTFO/XydKgmvIGcWL9FbgMlXb7Vcf0nBoG945\nbiz0NVc2paraIhJXc608xbYF3qLmtAE1MVBI0ORyRdBHNxY024l/6H6SH60Ed+uI\nM4ysp5ourY6Vj+DLwpdRiI9YDjqYAQDIUmhNxJP7XPhOMoZI6st+xZQBM34ic/bv\nAMSJm9OZphSp3+qXVkFZztr2mxD2EZSJJLYxi8BCdgM2qhazalbcJ6zDKHCZWVWm\n8RRxDGldyMb/237JxETzP40tAlzOZDmBAbUgEnurDJ93RVDIE3rbZUshwgeQd18a\nem096mWgvB1AIKYgsTAR3pw+V19YWAjq/glP6fz8wQKBgQD/oQq+ukKF0PRgBeM5\ngeTjSwsdGppQLmf5ndujvoiz/TpdjDEPu6R8kigQr1rG2t4K/yfdZoI8RdmJD1al\n3Q7N9hofooSy4rj6E3txzWZCHJjHad2cnCp/O26HiReGAl7wTcfTmNdiFHhZQzm5\nJBkvWAiwuvQMNfEbnXxw6/vIDwKBgQDH7fX8gsc77JLvAWgp1MaQN/sbqVb6JeT1\nFQfR8E/WFCSmzQBtNzd5KgYuCeelwr/8DyYytvN2BzCYZXp73gI1jF3YlW5jVn74\nOY6TwQ095digwo6Z0yuxopdIOApKgAkL9PRKgNrqAf3NAyMua6lOGifzjDojC3KU\nfylQmxMn4wKBgHp2B9O/H0dEBw5JQ8W0+JX6yWQz7mEjGiR2/1W+XXb8hQ1zr709\nw1r6Gb+EghRpnZ3fBpYGGbYOMFx8wKHM+N6qW3F0ReX8v2juFGE8aRSa5oYBrWzt\nU16Idjbv8hj84cZ1PJmdyvDtpYn9rpWHOZl4rxEbPvbqkIsOMyNVqdT5AoGAOSge\nmwIIU2le2FVeohbibXiToWTYKMuMmURZ5/r72AgKMmWJKbAPe+Q3wBG01/7FRBpQ\noU8Ma0HC8s6QJbliiEyIx9JwrJWd1vkdecBHONrtA4ibm/5zD2WcOllLF+FitLhi\n3qnX6+6F0IaFGFBPJrTzlv0P4dTz/OAdv52V7GECgYEA2TttOKBAqWllgOaZOkql\nLVMJVmgR7s6tLi1+cEP8ZcapV9aRbRzTAKXm4f8AEhtlG9F9kCOvHYCYGi6JaiWJ\nZkHjeex3T+eE6Di6y5Bm/Ift5jtVhJ4jCVwHOKTMej79NPUFTJfv8hCo29haBDv6\nRXFrv+T21KCcw8k3sJeJWWQ=\n-----END PRIVATE KEY-----";
22226
+ const privateKey = "-----BEGIN PRIVATE KEY-----\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDAARz+hmBgi8pJ\nQb8LeY41gtHhk+ACMwRfhsn7GqpqRQNG2qU0755mzZuVDUqjQMGSo8THJB7O+OJs\nflbZRkFXlFoFOVNw1UpNOgwEQZ6wB9oRwzepTJAfF1sVhm/o/ixvXh1zDFNDy6yZ\npXyiiJHUVxqyjllZhxnwdvjoVtDs6hW6awG09bB9nh/TTejlUKXoAgzqVwu/1QMu\nUVViET495elEe19aUarEy+oL2iKeXCEvqda/pWNBdbieFyJvvZ08HN8dPuT88wq2\njZLEAth1vrwQ2IAa4ktaLcBQdLJgIkrbDvAiVZ8lQAjS/bq5vXQikTGvoPlC5bbn\nvuOM/3eLAgMBAAECggEAVZ+peHAghq2QVj71nX5lxsNCKaCyYwixSJBpfouTt7Rz\nE6PpzMOXFi1W1o+I22jDakuSM2SOQKqI/u0QefB0r0O/KVk5NrZHXk0mkrdYtxOp\nUgaGyf8UvmjB+8VqHrNKyZdk9qtmbnNj01kTTcAtmE4H39zPR7eR/8Rul94vaZbs\nwCnKJS3mLT3JxyGug6lxanveKkjG+CKC1nJQYWaxCJxaFSzbwXQPvDhB+TvrIbee\npd5v4EAyEJohpr+T9oDGGJkb/KARBZCtwLyB976PKJwwBA8MRVL1i5QwawuMiMq5\nUtnOnbGKtCeFzaLbNU0Qi8bqyims84EQxC6DOu1fkQKBgQDdvsoBsEhsOXV7hlIJ\naEd0eSJZVkdqimxH8uGoMM2FeNaOrcB6yBXqTSP0R3OIyf8eaY6yjRvP30ZNXcll\n/gD3O1Mu6YmWQdt1W2WA6pKOsUuPXasf0pdOF7IiFZKlSabz5YHXFqwVuqm8loaj\nsXel3YWqPVdHiankE7tz+3ssnQKBgQDdqi4TNdD1MdEpihx19jr0QjUiXW3939FK\nqp30HESPEGDGQzXdmJgif9HhZb+cJSuWaHEbjgBrYahvgCF+y6LbEpOD+D/dmT+s\nDEAQaR84sah6dokwPjV8fjBSrcVFjCS+doxv0d3p/9OUEeyUhFrY03nxtIEYkLIE\n/Zvn37b4RwKBgQCLENVFe9XfsaVhQ5r9dV2iyTlmh7qgMZG5CbTFs12hQGhm8McO\n+Z7s41YSJCFr/yq1WwP4LJDtrBw99vyQr1zRsG35tNLp3gGRNzGQSQyC2uQFVHw2\np+7mNewsfhUK/gbrXNsyFnDz6635rPlhfbII3sWuP2wWXFqkxE9CbMwR7QKBgQC6\nawDMzxmo2/iYArrkyevSuEuPVxvFwpF1RgAI6C0QVCnPE38dmdN4UB7mfHekje4W\nVEercMURidPp0cxZolCYBQtilUjAyL0vqC3In1/Ogjq6oy3FEMxSop1pKxMY5j+Q\nnoqFD+6deLUrddeNH7J3X4LSr4dSbX4JjG+tlgt+yQKBgQCuwTL4hA6KqeInQ0Ta\n9VQX5Qr8hFlqJz1gpymi/k63tW/Ob8yedbg3WWNWyShwRMFYyY9S81ITFWM95uL6\nvF3x9rmRjwElJw9PMwVu6dmf/CO0Z1wzXSp2VVD12gbrUD/0/d7MUoJ9LgC8X8f/\nn0txLHYGHbx+nf95+JUg6lV3hg==\n-----END PRIVATE KEY-----";
22191
22227
  /*
22192
22228
  * The crypto algorithm used for importing key and signing string
22193
22229
  */
package/dist/index.esm.js CHANGED
@@ -21441,9 +21441,9 @@ const postLinkedObject = (post) => {
21441
21441
  },
21442
21442
  get creator() {
21443
21443
  const cacheData = pullFromCache(['user', 'get', post.postedUserId]);
21444
- if (cacheData === null || cacheData === void 0 ? void 0 : cacheData.data)
21445
- return userLinkedObject(cacheData.data);
21446
- return undefined;
21444
+ if (!(cacheData === null || cacheData === void 0 ? void 0 : cacheData.data))
21445
+ return;
21446
+ return userLinkedObject(cacheData.data);
21447
21447
  } });
21448
21448
  };
21449
21449
 
@@ -23817,8 +23817,8 @@ var objectResolverEngineOnLoginHandler = () => {
23817
23817
  */
23818
23818
  /**
23819
23819
  * ```js
23820
- * import { disconnectClient } from '@amityco/ts-sdk'
23821
- * const success = await disconnectClient()
23820
+ * import { Client } from '@amityco/ts-sdk';
23821
+ * const success = await Client.logout()
23822
23822
  * ```
23823
23823
  *
23824
23824
  * Disconnects an {@link Amity.Client} instance from ASC servers
@@ -25085,6 +25085,33 @@ const createClient = (apiKey, apiRegion = API_REGIONS.SG, { debugSession = DEFAU
25085
25085
  return client;
25086
25086
  };
25087
25087
 
25088
+ /* begin_public_function
25089
+ id: client.secureLogout
25090
+ */
25091
+ /**
25092
+ * ```js
25093
+ * import { Client } from '@amityco/ts-sdk'
25094
+ * const success = await Client.secureLogout()
25095
+ * ```
25096
+ *
25097
+ * Revoke access token for current user and disconnects an {@link Amity.Client} instance from ASC servers
25098
+ *
25099
+ * @returns a success boolean if disconnected
25100
+ *
25101
+ * @category Client API
25102
+ * @async
25103
+ */
25104
+ const secureLogout = async () => {
25105
+ const client = getActiveClient();
25106
+ const { data: { success }, } = await client.http.delete('/api/v4/sessions');
25107
+ if (!success) {
25108
+ throw new Error('Failed to logout');
25109
+ }
25110
+ const result = await logout();
25111
+ return result;
25112
+ };
25113
+ /* end_public_function */
25114
+
25088
25115
  /**
25089
25116
  * ```js
25090
25117
  * import { isConnected } from '@amityco/ts-sdk'
@@ -25615,6 +25642,7 @@ var index$k = /*#__PURE__*/Object.freeze({
25615
25642
  createClient: createClient,
25616
25643
  login: login,
25617
25644
  logout: logout,
25645
+ secureLogout: secureLogout,
25618
25646
  isConnected: isConnected,
25619
25647
  getFeedSettings: getFeedSettings,
25620
25648
  renewal: renewal,
@@ -28501,7 +28529,7 @@ const remappingMyReaction = (event, userId, reactionName, myReactions = []) => {
28501
28529
  return newMyReactions;
28502
28530
  };
28503
28531
  /** @hidden */
28504
- const prepareReactionPayloadFormEvent = (event, payload) => {
28532
+ const prepareReactionPayloadFromEvent = (event, payload) => {
28505
28533
  const eventPrefix = event.split('.')[0]; // 'post' | 'comment'
28506
28534
  const myReactions = getMyReactionsInCache(payload, eventPrefix);
28507
28535
  const newMyReaction = remappingMyReaction(event, payload.reactor.userId, payload.reactor.reactionName, myReactions);
@@ -28892,7 +28920,7 @@ const onPostReactionAdded = (callback) => {
28892
28920
  callback(payload.posts[0]);
28893
28921
  }
28894
28922
  else {
28895
- const processed = prepareReactionPayloadFormEvent('post.addReaction', payload);
28923
+ const processed = prepareReactionPayloadFromEvent('post.addReaction', payload);
28896
28924
  const postPayload = __rest(processed, ["reactor"]);
28897
28925
  ingestInCache(postPayload);
28898
28926
  const post = pullFromCache(['post', 'get', payload.posts[0].postId]);
@@ -28924,7 +28952,7 @@ const onPostReactionRemoved = (callback) => {
28924
28952
  callback(payload.posts[0]);
28925
28953
  }
28926
28954
  else {
28927
- const processed = prepareReactionPayloadFormEvent('post.removeReaction', payload);
28955
+ const processed = prepareReactionPayloadFromEvent('post.removeReaction', payload);
28928
28956
  const postPayload = __rest(processed, ["reactor"]);
28929
28957
  ingestInCache(postPayload);
28930
28958
  const post = pullFromCache(['post', 'get', payload.posts[0].postId]);
@@ -29082,7 +29110,7 @@ const onCommentReactionAdded = (callback) => {
29082
29110
  callback(LinkedObject.comment(payload.comments[0]));
29083
29111
  }
29084
29112
  else {
29085
- const processed = prepareReactionPayloadFormEvent('comment.addReaction', payload);
29113
+ const processed = prepareReactionPayloadFromEvent('comment.addReaction', payload);
29086
29114
  const commentPayload = __rest(processed, ["reactor"]);
29087
29115
  ingestInCache(commentPayload);
29088
29116
  const comment = pullFromCache([
@@ -29118,7 +29146,7 @@ const onCommentReactionRemoved = (callback) => {
29118
29146
  callback(LinkedObject.comment(payload.comments[0]));
29119
29147
  }
29120
29148
  else {
29121
- const processed = prepareReactionPayloadFormEvent('comment.removeReaction', payload);
29149
+ const processed = prepareReactionPayloadFromEvent('comment.removeReaction', payload);
29122
29150
  const commentPayload = __rest(processed, ["reactor"]);
29123
29151
  ingestInCache(commentPayload);
29124
29152
  const comment = pullFromCache([
@@ -36411,8 +36439,16 @@ const getPost = (postId, callback) => {
36411
36439
  });
36412
36440
  },
36413
36441
  onPostFlagged,
36414
- onPostReactionAdded,
36415
- onPostReactionRemoved,
36442
+ (callback) => {
36443
+ return onPostReactionAdded((post) => {
36444
+ callback(LinkedObject.post(post));
36445
+ });
36446
+ },
36447
+ (callback) => {
36448
+ return onPostReactionRemoved((post) => {
36449
+ callback(LinkedObject.post(post));
36450
+ });
36451
+ },
36416
36452
  onPostUnflagged,
36417
36453
  onPostUpdated,
36418
36454
  ]);
@@ -38277,7 +38313,7 @@ var index$2 = /*#__PURE__*/Object.freeze({
38277
38313
  getPoll: getPoll
38278
38314
  });
38279
38315
 
38280
- const privateKey = "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDHo80SecH7FuF2\nhFYnb+l26/VN8UMLXAQFLnxciNTEwkGVFMpdezlH8rU2HtUJL4RETogbAOLVY0XM\njs6sPn8G1nALmh9qeDpUtVqFOVtBHxEZ910TLOtQiunjqJKO5nWdqZ71EC3OFluR\niGQkO84BiIFbv37ub7xl3S8XarbtKoLcyVpkDHi+1wx1pgCAn6gtBUgckPL5NR8j\nLseabl3HAXQfhTCKo4tmOFM2Dxwl1IUMmIJrJg/aIU/U0tj/1Eoo7mG0JcNWX19l\nW3EecCbi0ncCJOrkUdwlBrcjaMayaX/ubEwyUeTGiLdyc4L3GRLHjyK8xgVNXRMH\nbZWJ2a5NAgMBAAECggEASxuE+35zTFO/XydKgmvIGcWL9FbgMlXb7Vcf0nBoG945\nbiz0NVc2paraIhJXc608xbYF3qLmtAE1MVBI0ORyRdBHNxY024l/6H6SH60Ed+uI\nM4ysp5ourY6Vj+DLwpdRiI9YDjqYAQDIUmhNxJP7XPhOMoZI6st+xZQBM34ic/bv\nAMSJm9OZphSp3+qXVkFZztr2mxD2EZSJJLYxi8BCdgM2qhazalbcJ6zDKHCZWVWm\n8RRxDGldyMb/237JxETzP40tAlzOZDmBAbUgEnurDJ93RVDIE3rbZUshwgeQd18a\nem096mWgvB1AIKYgsTAR3pw+V19YWAjq/glP6fz8wQKBgQD/oQq+ukKF0PRgBeM5\ngeTjSwsdGppQLmf5ndujvoiz/TpdjDEPu6R8kigQr1rG2t4K/yfdZoI8RdmJD1al\n3Q7N9hofooSy4rj6E3txzWZCHJjHad2cnCp/O26HiReGAl7wTcfTmNdiFHhZQzm5\nJBkvWAiwuvQMNfEbnXxw6/vIDwKBgQDH7fX8gsc77JLvAWgp1MaQN/sbqVb6JeT1\nFQfR8E/WFCSmzQBtNzd5KgYuCeelwr/8DyYytvN2BzCYZXp73gI1jF3YlW5jVn74\nOY6TwQ095digwo6Z0yuxopdIOApKgAkL9PRKgNrqAf3NAyMua6lOGifzjDojC3KU\nfylQmxMn4wKBgHp2B9O/H0dEBw5JQ8W0+JX6yWQz7mEjGiR2/1W+XXb8hQ1zr709\nw1r6Gb+EghRpnZ3fBpYGGbYOMFx8wKHM+N6qW3F0ReX8v2juFGE8aRSa5oYBrWzt\nU16Idjbv8hj84cZ1PJmdyvDtpYn9rpWHOZl4rxEbPvbqkIsOMyNVqdT5AoGAOSge\nmwIIU2le2FVeohbibXiToWTYKMuMmURZ5/r72AgKMmWJKbAPe+Q3wBG01/7FRBpQ\noU8Ma0HC8s6QJbliiEyIx9JwrJWd1vkdecBHONrtA4ibm/5zD2WcOllLF+FitLhi\n3qnX6+6F0IaFGFBPJrTzlv0P4dTz/OAdv52V7GECgYEA2TttOKBAqWllgOaZOkql\nLVMJVmgR7s6tLi1+cEP8ZcapV9aRbRzTAKXm4f8AEhtlG9F9kCOvHYCYGi6JaiWJ\nZkHjeex3T+eE6Di6y5Bm/Ift5jtVhJ4jCVwHOKTMej79NPUFTJfv8hCo29haBDv6\nRXFrv+T21KCcw8k3sJeJWWQ=\n-----END PRIVATE KEY-----";
38316
+ const privateKey = "-----BEGIN PRIVATE KEY-----\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDAARz+hmBgi8pJ\nQb8LeY41gtHhk+ACMwRfhsn7GqpqRQNG2qU0755mzZuVDUqjQMGSo8THJB7O+OJs\nflbZRkFXlFoFOVNw1UpNOgwEQZ6wB9oRwzepTJAfF1sVhm/o/ixvXh1zDFNDy6yZ\npXyiiJHUVxqyjllZhxnwdvjoVtDs6hW6awG09bB9nh/TTejlUKXoAgzqVwu/1QMu\nUVViET495elEe19aUarEy+oL2iKeXCEvqda/pWNBdbieFyJvvZ08HN8dPuT88wq2\njZLEAth1vrwQ2IAa4ktaLcBQdLJgIkrbDvAiVZ8lQAjS/bq5vXQikTGvoPlC5bbn\nvuOM/3eLAgMBAAECggEAVZ+peHAghq2QVj71nX5lxsNCKaCyYwixSJBpfouTt7Rz\nE6PpzMOXFi1W1o+I22jDakuSM2SOQKqI/u0QefB0r0O/KVk5NrZHXk0mkrdYtxOp\nUgaGyf8UvmjB+8VqHrNKyZdk9qtmbnNj01kTTcAtmE4H39zPR7eR/8Rul94vaZbs\nwCnKJS3mLT3JxyGug6lxanveKkjG+CKC1nJQYWaxCJxaFSzbwXQPvDhB+TvrIbee\npd5v4EAyEJohpr+T9oDGGJkb/KARBZCtwLyB976PKJwwBA8MRVL1i5QwawuMiMq5\nUtnOnbGKtCeFzaLbNU0Qi8bqyims84EQxC6DOu1fkQKBgQDdvsoBsEhsOXV7hlIJ\naEd0eSJZVkdqimxH8uGoMM2FeNaOrcB6yBXqTSP0R3OIyf8eaY6yjRvP30ZNXcll\n/gD3O1Mu6YmWQdt1W2WA6pKOsUuPXasf0pdOF7IiFZKlSabz5YHXFqwVuqm8loaj\nsXel3YWqPVdHiankE7tz+3ssnQKBgQDdqi4TNdD1MdEpihx19jr0QjUiXW3939FK\nqp30HESPEGDGQzXdmJgif9HhZb+cJSuWaHEbjgBrYahvgCF+y6LbEpOD+D/dmT+s\nDEAQaR84sah6dokwPjV8fjBSrcVFjCS+doxv0d3p/9OUEeyUhFrY03nxtIEYkLIE\n/Zvn37b4RwKBgQCLENVFe9XfsaVhQ5r9dV2iyTlmh7qgMZG5CbTFs12hQGhm8McO\n+Z7s41YSJCFr/yq1WwP4LJDtrBw99vyQr1zRsG35tNLp3gGRNzGQSQyC2uQFVHw2\np+7mNewsfhUK/gbrXNsyFnDz6635rPlhfbII3sWuP2wWXFqkxE9CbMwR7QKBgQC6\nawDMzxmo2/iYArrkyevSuEuPVxvFwpF1RgAI6C0QVCnPE38dmdN4UB7mfHekje4W\nVEercMURidPp0cxZolCYBQtilUjAyL0vqC3In1/Ogjq6oy3FEMxSop1pKxMY5j+Q\nnoqFD+6deLUrddeNH7J3X4LSr4dSbX4JjG+tlgt+yQKBgQCuwTL4hA6KqeInQ0Ta\n9VQX5Qr8hFlqJz1gpymi/k63tW/Ob8yedbg3WWNWyShwRMFYyY9S81ITFWM95uL6\nvF3x9rmRjwElJw9PMwVu6dmf/CO0Z1wzXSp2VVD12gbrUD/0/d7MUoJ9LgC8X8f/\nn0txLHYGHbx+nf95+JUg6lV3hg==\n-----END PRIVATE KEY-----";
38281
38317
  /*
38282
38318
  * The crypto algorithm used for importing key and signing string
38283
38319
  */