bb-fca 2.0.9 → 2.0.11

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 (84) hide show
  1. package/dist/deltas/apis/messaging/editMessage.js +13 -24
  2. package/dist/deltas/apis/messaging/editMessage.js.map +1 -1
  3. package/dist/deltas/apis/messaging/emoji.js +34 -88
  4. package/dist/deltas/apis/messaging/emoji.js.map +1 -1
  5. package/dist/deltas/apis/messaging/gcmember.js +48 -101
  6. package/dist/deltas/apis/messaging/gcmember.js.map +1 -1
  7. package/dist/deltas/apis/messaging/gcname.js +28 -79
  8. package/dist/deltas/apis/messaging/gcname.js.map +1 -1
  9. package/dist/deltas/apis/messaging/gcrule.js +47 -105
  10. package/dist/deltas/apis/messaging/gcrule.js.map +1 -1
  11. package/dist/deltas/apis/messaging/markAsDelivered.js +10 -12
  12. package/dist/deltas/apis/messaging/markAsDelivered.js.map +1 -1
  13. package/dist/deltas/apis/messaging/markAsRead.js +25 -60
  14. package/dist/deltas/apis/messaging/markAsRead.js.map +1 -1
  15. package/dist/deltas/apis/messaging/markAsReadAll.js +9 -11
  16. package/dist/deltas/apis/messaging/markAsReadAll.js.map +1 -1
  17. package/dist/deltas/apis/messaging/markAsSeen.js +10 -37
  18. package/dist/deltas/apis/messaging/markAsSeen.js.map +1 -1
  19. package/dist/deltas/apis/messaging/nickname.js +38 -98
  20. package/dist/deltas/apis/messaging/nickname.js.map +1 -1
  21. package/dist/deltas/apis/messaging/notes.js +52 -90
  22. package/dist/deltas/apis/messaging/notes.js.map +1 -1
  23. package/dist/deltas/apis/messaging/resolvePhotoUrl.js +17 -42
  24. package/dist/deltas/apis/messaging/resolvePhotoUrl.js.map +1 -1
  25. package/dist/deltas/apis/messaging/sendMessage.js +14 -15
  26. package/dist/deltas/apis/messaging/sendMessage.js.map +1 -1
  27. package/dist/deltas/apis/messaging/sendTypingIndicator.js +7 -13
  28. package/dist/deltas/apis/messaging/sendTypingIndicator.js.map +1 -1
  29. package/dist/deltas/apis/messaging/setMessageReaction.js +24 -14
  30. package/dist/deltas/apis/messaging/setMessageReaction.js.map +1 -1
  31. package/dist/deltas/apis/messaging/shareContact.js +14 -12
  32. package/dist/deltas/apis/messaging/shareContact.js.map +1 -1
  33. package/dist/deltas/apis/messaging/stickers.js +4 -5
  34. package/dist/deltas/apis/messaging/stickers.js.map +1 -1
  35. package/dist/deltas/apis/messaging/theme.js +142 -213
  36. package/dist/deltas/apis/messaging/theme.js.map +1 -1
  37. package/dist/deltas/apis/messaging/unsendMessage.js +14 -7
  38. package/dist/deltas/apis/messaging/unsendMessage.js.map +1 -1
  39. package/dist/deltas/apis/posting/group.js +440 -11
  40. package/dist/deltas/apis/posting/group.js.map +1 -1
  41. package/dist/index.d.ts +18 -0
  42. package/dist/types/deltas/apis/messaging/editMessage.d.ts +4 -5
  43. package/dist/types/deltas/apis/messaging/emoji.d.ts +7 -1
  44. package/dist/types/deltas/apis/messaging/gcmember.d.ts +7 -1
  45. package/dist/types/deltas/apis/messaging/gcname.d.ts +9 -1
  46. package/dist/types/deltas/apis/messaging/gcrule.d.ts +7 -1
  47. package/dist/types/deltas/apis/messaging/markAsDelivered.d.ts +1 -2
  48. package/dist/types/deltas/apis/messaging/markAsRead.d.ts +1 -1
  49. package/dist/types/deltas/apis/messaging/markAsReadAll.d.ts +1 -2
  50. package/dist/types/deltas/apis/messaging/markAsSeen.d.ts +1 -1
  51. package/dist/types/deltas/apis/messaging/nickname.d.ts +7 -1
  52. package/dist/types/deltas/apis/messaging/notes.d.ts +13 -11
  53. package/dist/types/deltas/apis/messaging/resolvePhotoUrl.d.ts +4 -6
  54. package/dist/types/deltas/apis/messaging/sendMessage.d.ts +1 -1
  55. package/dist/types/deltas/apis/messaging/sendTypingIndicator.d.ts +1 -1
  56. package/dist/types/deltas/apis/messaging/setMessageReaction.d.ts +6 -1
  57. package/dist/types/deltas/apis/messaging/shareContact.d.ts +1 -2
  58. package/dist/types/deltas/apis/messaging/stickers.d.ts +1 -1
  59. package/dist/types/deltas/apis/messaging/theme.d.ts +8 -1
  60. package/dist/types/deltas/apis/messaging/unsendMessage.d.ts +6 -1
  61. package/dist/types/deltas/apis/posting/group.d.ts +88 -0
  62. package/package.json +1 -1
  63. package/src/deltas/apis/messaging/editMessage.ts +16 -26
  64. package/src/deltas/apis/messaging/emoji.ts +45 -97
  65. package/src/deltas/apis/messaging/gcmember.ts +68 -113
  66. package/src/deltas/apis/messaging/gcname.ts +42 -91
  67. package/src/deltas/apis/messaging/gcrule.ts +61 -111
  68. package/src/deltas/apis/messaging/markAsDelivered.ts +19 -14
  69. package/src/deltas/apis/messaging/markAsRead.ts +45 -72
  70. package/src/deltas/apis/messaging/markAsReadAll.ts +17 -17
  71. package/src/deltas/apis/messaging/markAsSeen.ts +17 -41
  72. package/src/deltas/apis/messaging/nickname.ts +50 -116
  73. package/src/deltas/apis/messaging/notes.ts +59 -95
  74. package/src/deltas/apis/messaging/resolvePhotoUrl.ts +27 -50
  75. package/src/deltas/apis/messaging/sendMessage.ts +28 -26
  76. package/src/deltas/apis/messaging/sendTypingIndicator.ts +13 -12
  77. package/src/deltas/apis/messaging/setMessageReaction.ts +45 -20
  78. package/src/deltas/apis/messaging/shareContact.ts +25 -15
  79. package/src/deltas/apis/messaging/stickers.ts +4 -4
  80. package/src/deltas/apis/messaging/theme.ts +172 -259
  81. package/src/deltas/apis/messaging/unsendMessage.ts +23 -7
  82. package/src/deltas/apis/posting/group.ts +516 -11
  83. package/src/types/index.d.ts +18 -0
  84. package/request.txt +0 -60
@@ -1,38 +1,30 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = default_1;
3
+ exports.default = editMessage;
4
4
  /**
5
5
  * @author RFS-ADRENO
6
6
  * @rewrittenBy Isai Ivanov
7
7
  */
8
- //fixed march 30
9
8
  const utils = require("../../../utils");
10
- function canBeCalled(func) {
11
- try {
12
- Reflect.apply(func, null, []);
13
- return true;
14
- }
15
- catch (error) {
16
- return false;
17
- }
18
- }
19
9
  /**
20
- * A function for editing bot's messages.
21
- * @param {string} text - The text with which the bot will edit its messages.
22
- * @param {string} messageID - The message ID of the message the bot will edit.
23
- * @param {Object} callback - Callback for the function.
10
+ * @param {Object} defaultFuncs
11
+ * @param {Object} api
12
+ * @param {Object} ctx
24
13
  */
25
- function default_1(defaultFuncs, api, ctx) {
26
- return function editMessage(text, messageID, callback) {
14
+ function editMessage(defaultFuncs, api, ctx) {
15
+ /**
16
+ * Edits a message previously sent by the bot via MQTT.
17
+ * @param {string} text - The new text for the message.
18
+ * @param {string} messageID - The ID of the message to edit.
19
+ * @returns {void}
20
+ */
21
+ return function editMessage(text, messageID) {
27
22
  if (!ctx.mqttClient) {
28
23
  throw new Error('Not connected to MQTT');
29
24
  }
30
25
  ctx.wsReqNumber += 1;
31
26
  ctx.wsTaskNumber += 1;
32
- const queryPayload = {
33
- message_id: messageID,
34
- text,
35
- };
27
+ const queryPayload = { message_id: messageID, text };
36
28
  const query = {
37
29
  failure_count: null,
38
30
  label: '742',
@@ -52,9 +44,6 @@ function default_1(defaultFuncs, api, ctx) {
52
44
  type: 3,
53
45
  };
54
46
  context.payload = JSON.stringify(context.payload);
55
- // if (canBeCalled(callback)) {
56
- // ctx.reqCallbacks[ctx.wsReqNumber] = callback;
57
- // }
58
47
  ctx.mqttClient.publish('/ls_req', JSON.stringify(context), {
59
48
  qos: 1,
60
49
  retain: false,
@@ -1 +1 @@
1
- {"version":3,"file":"editMessage.js","sourceRoot":"","sources":["../../../../src/deltas/apis/messaging/editMessage.ts"],"names":[],"mappings":";;AAuBA,4BA6CC;AApED;;;GAGG;AACH,gBAAgB;AAChB,wCAAyC;AAEzC,SAAS,WAAW,CAAC,IAAI;IACvB,IAAI,CAAC;QACH,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;GAKG;AAEH,mBAAwB,YAAiB,EAAE,GAAQ,EAAE,GAAQ;IAC3D,OAAO,SAAS,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ;QACnD,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC;QACrB,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC;QAEtB,MAAM,YAAY,GAAG;YACnB,UAAU,EAAE,SAAS;YACrB,IAAI;SACL,CAAC;QAEF,MAAM,KAAK,GAAG;YACZ,aAAa,EAAE,IAAI;YACnB,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YACrC,UAAU,EAAE,cAAc;YAC1B,OAAO,EAAE,GAAG,CAAC,YAAY;SAC1B,CAAC;QAEF,MAAM,OAAO,GAAQ;YACnB,MAAM,EAAE,kBAAkB;YAC1B,OAAO,EAAE;gBACP,aAAa,EAAE,IAAI;gBACnB,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,0BAA0B,EAAE,CAAC;gBACtD,KAAK,EAAE,CAAC,KAAK,CAAC;gBACd,UAAU,EAAE,kBAAkB;aAC/B;YACD,UAAU,EAAE,GAAG,CAAC,WAAW;YAC3B,IAAI,EAAE,CAAC;SACR,CAAC;QAEF,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAElD,+BAA+B;QAC/B,iDAAiD;QACjD,IAAI;QAEJ,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;YACzD,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"editMessage.js","sourceRoot":"","sources":["../../../../src/deltas/apis/messaging/editMessage.ts"],"names":[],"mappings":";;AAWA,8BA+CC;AA1DD;;;GAGG;AACH,wCAAyC;AAEzC;;;;GAIG;AACH,SAAwB,WAAW,CACjC,YAAiB,EACjB,GAAQ,EACR,GAAQ;IAER;;;;;OAKG;IACH,OAAO,SAAS,WAAW,CAAC,IAAY,EAAE,SAAiB;QACzD,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC;QACrB,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC;QAEtB,MAAM,YAAY,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAErD,MAAM,KAAK,GAAG;YACZ,aAAa,EAAE,IAAI;YACnB,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YACrC,UAAU,EAAE,cAAc;YAC1B,OAAO,EAAE,GAAG,CAAC,YAAY;SAC1B,CAAC;QAEF,MAAM,OAAO,GAAQ;YACnB,MAAM,EAAE,kBAAkB;YAC1B,OAAO,EAAE;gBACP,aAAa,EAAE,IAAI;gBACnB,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,0BAA0B,EAAE,CAAC;gBACtD,KAAK,EAAE,CAAC,KAAK,CAAC;gBACd,UAAU,EAAE,kBAAkB;aAC/B;YACD,UAAU,EAAE,GAAG,CAAC,WAAW;YAC3B,IAAI,EAAE,CAAC;SACR,CAAC;QACF,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAElD,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;YACzD,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
@@ -1,84 +1,34 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = default_1;
3
+ exports.default = emoji;
4
4
  const utils = require("../../../utils");
5
- function default_1(defaultFuncs, api, ctx) {
5
+ /**
6
+ * @module emoji
7
+ * @param {Object} defaultFuncs
8
+ * @param {Object} api
9
+ * @param {Object} ctx
10
+ */
11
+ function emoji(defaultFuncs, api, ctx) {
6
12
  /**
7
- * Made by Choru Official
8
- * Mqtt
9
- * Sets the custom emoji for a specific Facebook thread via MQTT.
10
- *
11
- * @param {string} emoji The emoji character to set as the custom emoji (e.g., "👍", "❤️").
12
- * @param {string} threadID The ID of the thread where the emoji will be set.
13
- * @param {Function} [callback] Optional callback function to be invoked upon completion.
14
- * @param {string} [initiatorID] The ID of the user who initiated the emoji change (e.g., from event.senderID).
15
- * @returns {Promise<object>} A promise that resolves with a structured event object on success or rejects on error.
13
+ * Made by Choru Official — sets the custom emoji for a thread via MQTT.
14
+ * @param {string} emoji - The emoji character to set (e.g., "👍", "❤️").
15
+ * @param {string} threadID - The ID of the thread.
16
+ * @param {string} [initiatorID] - The ID of the initiating user.
17
+ * @returns {Promise<object>}
16
18
  */
17
- return function emoji(emoji, threadID, callback, initiatorID) {
18
- let _callback;
19
- let _initiatorID;
20
- let _resolvePromise;
21
- let _rejectPromise;
22
- const returnPromise = new Promise((resolve, reject) => {
23
- _resolvePromise = resolve;
24
- _rejectPromise = reject;
25
- });
26
- if (utils.getType(callback) === 'Function' ||
27
- utils.getType(callback) === 'AsyncFunction') {
28
- _callback = callback;
29
- _initiatorID = initiatorID;
30
- }
31
- else if (utils.getType(threadID) === 'Function' ||
32
- utils.getType(threadID) === 'AsyncFunction') {
33
- _callback = threadID;
34
- threadID = null;
35
- _initiatorID = callback;
36
- }
37
- else if (utils.getType(callback) === 'string') {
38
- _initiatorID = callback;
39
- _callback = undefined;
40
- }
41
- else {
42
- _callback = undefined;
43
- _initiatorID = undefined;
44
- }
45
- if (!_callback) {
46
- _callback = function (__err, __data) {
47
- if (__err)
48
- _rejectPromise(__err);
49
- else
50
- _resolvePromise(__data);
51
- };
52
- }
53
- else {
54
- const originalCallback = _callback;
55
- _callback = function (__err, __data) {
56
- if (__err) {
57
- originalCallback(__err);
58
- _rejectPromise(__err);
59
- }
60
- else {
61
- originalCallback(null, __data);
62
- _resolvePromise(__data);
63
- }
64
- };
65
- }
66
- _initiatorID = _initiatorID || ctx.userID;
67
- threadID = threadID || ctx.threadID;
68
- if (!threadID) {
69
- return _callback(new Error('threadID is required to set an emoji.'));
70
- }
71
- if (!emoji) {
72
- return _callback(new Error('An emoji character is required.'));
73
- }
74
- if (!ctx.mqttClient) {
75
- return _callback(new Error('Not connected to MQTT'));
76
- }
19
+ return async function emoji(emojiChar, threadID, initiatorID) {
20
+ const _initiatorID = initiatorID || ctx.userID;
21
+ if (!threadID)
22
+ throw new Error('threadID is required to set an emoji.');
23
+ if (!emojiChar)
24
+ throw new Error('An emoji character is required.');
25
+ if (!ctx.mqttClient)
26
+ throw new Error('Not connected to MQTT');
77
27
  ctx.wsReqNumber += 1;
78
28
  ctx.wsTaskNumber += 1;
79
29
  const queryPayload = {
80
30
  thread_key: threadID.toString(),
81
- custom_emoji: emoji,
31
+ custom_emoji: emojiChar,
82
32
  avatar_sticker_instruction_key_id: null,
83
33
  sync_group: 1,
84
34
  };
@@ -92,7 +42,7 @@ function default_1(defaultFuncs, api, ctx) {
92
42
  const context = {
93
43
  app_id: ctx.appID,
94
44
  payload: {
95
- epoch_id: parseInt(utils.generateOfflineThreadingID()),
45
+ epoch_id: Number.parseInt(utils.generateOfflineThreadingID()),
96
46
  tasks: [query],
97
47
  version_id: '24631415369801570',
98
48
  },
@@ -100,21 +50,17 @@ function default_1(defaultFuncs, api, ctx) {
100
50
  type: 3,
101
51
  };
102
52
  context.payload = JSON.stringify(context.payload);
103
- ctx.mqttClient.publish('/ls_req', JSON.stringify(context), { qos: 1, retain: false }, (err) => {
104
- if (err) {
105
- return _callback(new Error(`MQTT publish failed for emoji: ${err.message || err}`));
106
- }
107
- const emojiChangeEvent = {
108
- type: 'thread_emoji_update',
109
- threadID: threadID,
110
- newEmoji: emoji,
111
- senderID: _initiatorID,
112
- BotID: ctx.userID,
113
- timestamp: Date.now(),
114
- };
115
- _callback(null, emojiChangeEvent);
116
- });
117
- return returnPromise;
53
+ await new Promise((resolve, reject) => ctx.mqttClient.publish('/ls_req', JSON.stringify(context), { qos: 1, retain: false }, (err) => err
54
+ ? reject(new Error(`MQTT publish failed for emoji: ${err.message || err}`))
55
+ : resolve()));
56
+ return {
57
+ type: 'thread_emoji_update',
58
+ threadID,
59
+ newEmoji: emojiChar,
60
+ senderID: _initiatorID,
61
+ BotID: ctx.userID,
62
+ timestamp: Date.now(),
63
+ };
118
64
  };
119
65
  }
120
66
  //# sourceMappingURL=emoji.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"emoji.js","sourceRoot":"","sources":["../../../../src/deltas/apis/messaging/emoji.ts"],"names":[],"mappings":";;AAEA,4BAoIC;AAtID,wCAAyC;AAEzC,mBAAwB,YAAiB,EAAE,GAAQ,EAAE,GAAQ;IAC3D;;;;;;;;;;OAUG;IACH,OAAO,SAAS,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW;QAC1D,IAAI,SAAS,CAAC;QACd,IAAI,YAAY,CAAC;QAEjB,IAAI,eAAe,CAAC;QACpB,IAAI,cAAc,CAAC;QACnB,MAAM,aAAa,GAAG,IAAI,OAAO,CAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACzD,eAAe,GAAG,OAAO,CAAC;YAC1B,cAAc,GAAG,MAAM,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,IACE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,UAAU;YACtC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,eAAe,EAC3C,CAAC;YACD,SAAS,GAAG,QAAQ,CAAC;YACrB,YAAY,GAAG,WAAW,CAAC;QAC7B,CAAC;aAAM,IACL,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,UAAU;YACtC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,eAAe,EAC3C,CAAC;YACD,SAAS,GAAG,QAAQ,CAAC;YACrB,QAAQ,GAAG,IAAI,CAAC;YAChB,YAAY,GAAG,QAAQ,CAAC;QAC1B,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,QAAQ,EAAE,CAAC;YAChD,YAAY,GAAG,QAAQ,CAAC;YACxB,SAAS,GAAG,SAAS,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,SAAS,CAAC;YACtB,YAAY,GAAG,SAAS,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,GAAG,UAAS,KAAK,EAAE,MAAM;gBAChC,IAAI,KAAK;oBAAE,cAAc,CAAC,KAAK,CAAC,CAAC;;oBAC5B,eAAe,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,gBAAgB,GAAG,SAAS,CAAC;YACnC,SAAS,GAAG,UAAS,KAAK,EAAE,MAAM;gBAChC,IAAI,KAAK,EAAE,CAAC;oBACV,gBAAgB,CAAC,KAAK,CAAC,CAAC;oBACxB,cAAc,CAAC,KAAK,CAAC,CAAC;gBACxB,CAAC;qBAAM,CAAC;oBACN,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;oBAC/B,eAAe,CAAC,MAAM,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC,CAAC;QACJ,CAAC;QAED,YAAY,GAAG,YAAY,IAAI,GAAG,CAAC,MAAM,CAAC;QAE1C,QAAQ,GAAG,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC;QAEpC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,SAAS,CAAC,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,SAAS,CAAC,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACvD,CAAC;QAED,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC;QACrB,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC;QAEtB,MAAM,YAAY,GAAG;YACnB,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE;YAC/B,YAAY,EAAE,KAAK;YACnB,iCAAiC,EAAE,IAAI;YACvC,UAAU,EAAE,CAAC;SACd,CAAC;QAEF,MAAM,KAAK,GAAG;YACZ,aAAa,EAAE,IAAI;YACnB,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YACrC,UAAU,EAAE,uBAAuB;YACnC,OAAO,EAAE,GAAG,CAAC,YAAY;SAC1B,CAAC;QAEF,MAAM,OAAO,GAAQ;YACnB,MAAM,EAAE,GAAG,CAAC,KAAK;YACjB,OAAO,EAAE;gBACP,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,0BAA0B,EAAE,CAAC;gBACtD,KAAK,EAAE,CAAC,KAAK,CAAC;gBACd,UAAU,EAAE,mBAAmB;aAChC;YACD,UAAU,EAAE,GAAG,CAAC,WAAW;YAC3B,IAAI,EAAE,CAAC;SACR,CAAC;QACF,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAElD,GAAG,CAAC,UAAU,CAAC,OAAO,CACpB,SAAS,EACT,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EACvB,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EACzB,CAAC,GAAG,EAAE,EAAE;YACN,IAAI,GAAG,EAAE,CAAC;gBACR,OAAO,SAAS,CACd,IAAI,KAAK,CAAC,kCAAkC,GAAG,CAAC,OAAO,IAAI,GAAG,EAAE,CAAC,CAClE,CAAC;YACJ,CAAC;YAED,MAAM,gBAAgB,GAAG;gBACvB,IAAI,EAAE,qBAAqB;gBAC3B,QAAQ,EAAE,QAAQ;gBAClB,QAAQ,EAAE,KAAK;gBACf,QAAQ,EAAE,YAAY;gBACtB,KAAK,EAAE,GAAG,CAAC,MAAM;gBACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB,CAAC;YACF,SAAS,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACpC,CAAC,CACF,CAAC;QAEF,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"emoji.js","sourceRoot":"","sources":["../../../../src/deltas/apis/messaging/emoji.ts"],"names":[],"mappings":";;AAQA,wBA0EC;AAlFD,wCAAyC;AAEzC;;;;;GAKG;AACH,SAAwB,KAAK,CAC3B,YAAiB,EACjB,GAAQ,EACR,GAAQ;IAER;;;;;;OAMG;IACH,OAAO,KAAK,UAAU,KAAK,CACzB,SAAiB,EACjB,QAAgB,EAChB,WAAoB;QAEpB,MAAM,YAAY,GAAG,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC;QAE/C,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACxE,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACnE,IAAI,CAAC,GAAG,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAE9D,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC;QACrB,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC;QAEtB,MAAM,YAAY,GAAG;YACnB,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE;YAC/B,YAAY,EAAE,SAAS;YACvB,iCAAiC,EAAE,IAAI;YACvC,UAAU,EAAE,CAAC;SACd,CAAC;QAEF,MAAM,KAAK,GAAG;YACZ,aAAa,EAAE,IAAI;YACnB,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YACrC,UAAU,EAAE,uBAAuB;YACnC,OAAO,EAAE,GAAG,CAAC,YAAY;SAC1B,CAAC;QAEF,MAAM,OAAO,GAAQ;YACnB,MAAM,EAAE,GAAG,CAAC,KAAK;YACjB,OAAO,EAAE;gBACP,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,0BAA0B,EAAE,CAAC;gBAC7D,KAAK,EAAE,CAAC,KAAK,CAAC;gBACd,UAAU,EAAE,mBAAmB;aAChC;YACD,UAAU,EAAE,GAAG,CAAC,WAAW;YAC3B,IAAI,EAAE,CAAC;SACR,CAAC;QACF,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAElD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAC1C,GAAG,CAAC,UAAU,CAAC,OAAO,CACpB,SAAS,EACT,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EACvB,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EACzB,CAAC,GAAG,EAAE,EAAE,CACN,GAAG;YACD,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,GAAG,CAAC,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC;YAC3E,CAAC,CAAC,OAAO,EAAE,CAChB,CACF,CAAC;QAEF,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,QAAQ;YACR,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,YAAY;YACtB,KAAK,EAAE,GAAG,CAAC,MAAM;YACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
@@ -1,100 +1,59 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = default_1;
3
+ exports.default = gcmember;
4
4
  const utils = require("../../../utils");
5
- function default_1(defaultFuncs, api, ctx) {
5
+ /**
6
+ * @module gcmember
7
+ * @param {Object} defaultFuncs
8
+ * @param {Object} api
9
+ * @param {Object} ctx
10
+ */
11
+ function gcmember(defaultFuncs, api, ctx) {
6
12
  /**
7
- * Made by ChoruOfficial
8
- * Mqtt
9
- * Adds or removes members from a group chat with pre-checking.
10
- *
11
- * @param {"add" | "remove"} action The action to perform.
12
- * @param {string|string[]} userIDs The user ID or array of user IDs.
13
- * @param {string} threadID The ID of the group chat.
14
- * @param {Function} [callback] Optional callback function.
15
- * @returns {Promise<object>} A promise that resolves with information about the action.
13
+ * Made by ChoruOfficial — Adds or removes members from a group chat via MQTT.
14
+ * @param {"add" | "remove"} action - The action to perform.
15
+ * @param {string | string[]} userIDs - The user ID or array of user IDs.
16
+ * @param {string} threadID - The ID of the group chat.
17
+ * @returns {Promise<object>}
16
18
  */
17
- return async function gcmember(action, userIDs, threadID, callback) {
18
- let _callback;
19
- if (typeof threadID === 'function') {
20
- _callback = threadID;
21
- threadID = null;
19
+ return async function gcmember(action, userIDs, threadID) {
20
+ const validActions = ['add', 'remove'];
21
+ const normalizedAction = (action || '').toLowerCase();
22
+ if (!validActions.includes(normalizedAction)) {
23
+ return { type: 'error_gc', error: `Invalid action. Must be one of: ${validActions.join(', ')}` };
22
24
  }
23
- else if (typeof callback === 'function') {
24
- _callback = callback;
25
+ if (!userIDs || (Array.isArray(userIDs) && userIDs.length === 0)) {
26
+ return { type: 'error_gc', error: 'userIDs is required.' };
25
27
  }
26
- let resolvePromise, rejectPromise;
27
- const returnPromise = new Promise((resolve, reject) => {
28
- resolvePromise = resolve;
29
- rejectPromise = reject;
30
- });
31
- if (typeof _callback != 'function') {
32
- _callback = (err, data) => {
33
- // Note: We will now rarely use the 'err' parameter for validation errors
34
- if (err)
35
- return rejectPromise(err);
36
- resolvePromise(data);
37
- };
28
+ if (!threadID) {
29
+ return { type: 'error_gc', error: 'threadID is required.' };
30
+ }
31
+ if (!ctx.mqttClient) {
32
+ return { type: 'error_gc', error: 'Not connected to MQTT' };
38
33
  }
39
34
  try {
40
- const validActions = ['add', 'remove'];
41
- action = action ? action.toLowerCase() : '';
42
- // --- ERROR CHECKS NOW RETURN AN OBJECT INSTEAD OF THROWING ---
43
- if (!validActions.includes(action)) {
44
- return _callback(null, {
45
- type: 'error_gc',
46
- error: `Invalid action. Must be one of: ${validActions.join(', ')}`,
47
- });
48
- }
49
- if (!userIDs || userIDs.length === 0) {
50
- return _callback(null, {
51
- type: 'error_gc',
52
- error: 'userIDs is required.',
53
- });
54
- }
55
- if (!threadID) {
56
- return _callback(null, {
57
- type: 'error_gc',
58
- error: 'threadID is required.',
59
- });
60
- }
61
- if (!ctx.mqttClient) {
62
- return _callback(null, {
63
- type: 'error_gc',
64
- error: 'Not connected to MQTT',
65
- });
66
- }
67
35
  const threadInfo = await api.getThreadInfo(threadID);
68
36
  if (!threadInfo) {
69
- return _callback(null, {
70
- type: 'error_gc',
71
- error: 'Could not retrieve thread information.',
72
- });
37
+ return { type: 'error_gc', error: 'Could not retrieve thread information.' };
73
38
  }
74
39
  if (threadInfo.isGroup === false) {
75
- return _callback(null, {
76
- type: 'error_gc',
77
- error: 'This feature is only for group chats, not private messages.',
78
- });
40
+ return { type: 'error_gc', error: 'This feature is only for group chats, not private messages.' };
79
41
  }
80
42
  const currentMembers = threadInfo.participantIDs;
81
43
  const usersToModify = Array.isArray(userIDs) ? userIDs : [userIDs];
82
- let queryPayload, query;
83
- let finalUsers = usersToModify;
84
44
  ctx.wsReqNumber = (ctx.wsReqNumber || 0) + 1;
85
45
  ctx.wsTaskNumber = (ctx.wsTaskNumber || 0) + 1;
86
- if (action === 'add') {
46
+ let query;
47
+ let finalUsers;
48
+ if (normalizedAction === 'add') {
87
49
  const usersToAdd = usersToModify.filter((id) => !currentMembers.includes(id));
88
50
  if (usersToAdd.length === 0) {
89
- return _callback(null, {
90
- type: 'error_gc',
91
- error: 'All specified users are already in the group.',
92
- });
51
+ return { type: 'error_gc', error: 'All specified users are already in the group.' };
93
52
  }
94
53
  finalUsers = usersToAdd;
95
- queryPayload = {
96
- thread_key: parseInt(threadID),
97
- contact_ids: finalUsers.map((id) => parseInt(id)),
54
+ const queryPayload = {
55
+ thread_key: Number.parseInt(threadID),
56
+ contact_ids: finalUsers.map((id) => Number.parseInt(id)),
98
57
  sync_group: 1,
99
58
  };
100
59
  query = {
@@ -105,16 +64,12 @@ function default_1(defaultFuncs, api, ctx) {
105
64
  };
106
65
  }
107
66
  else {
108
- // action is 'remove'
109
67
  const userToRemove = usersToModify[0];
110
68
  if (!currentMembers.includes(userToRemove)) {
111
- return _callback(null, {
112
- type: 'error_gc',
113
- error: `User with ID ${userToRemove} is not in this group chat.`,
114
- });
69
+ return { type: 'error_gc', error: `User with ID ${userToRemove} is not in this group chat.` };
115
70
  }
116
71
  finalUsers = [userToRemove];
117
- queryPayload = {
72
+ const queryPayload = {
118
73
  thread_id: threadID,
119
74
  contact_id: userToRemove,
120
75
  sync_group: 1,
@@ -129,7 +84,7 @@ function default_1(defaultFuncs, api, ctx) {
129
84
  const context = {
130
85
  app_id: ctx.appID,
131
86
  payload: {
132
- epoch_id: parseInt(utils.generateOfflineThreadingID()),
87
+ epoch_id: Number.parseInt(utils.generateOfflineThreadingID()),
133
88
  tasks: [query],
134
89
  version_id: '24631415369801570',
135
90
  },
@@ -137,28 +92,20 @@ function default_1(defaultFuncs, api, ctx) {
137
92
  type: 3,
138
93
  };
139
94
  context.payload = JSON.stringify(context.payload);
140
- ctx.mqttClient.publish('/ls_req', JSON.stringify(context), { qos: 1, retain: false }, (err) => {
141
- if (err)
142
- return _callback(err); // For network errors, we still reject
143
- const gcmemberInfo = {
144
- type: 'gc_member_update',
145
- threadID: threadID,
146
- userIDs: finalUsers,
147
- action: action,
148
- senderID: ctx.userID,
149
- BotID: ctx.userID,
150
- timestamp: Date.now(),
151
- };
152
- return _callback(null, gcmemberInfo);
153
- });
95
+ await new Promise((resolve, reject) => ctx.mqttClient.publish('/ls_req', JSON.stringify(context), { qos: 1, retain: false }, (err) => (err ? reject(err) : resolve())));
96
+ return {
97
+ type: 'gc_member_update',
98
+ threadID,
99
+ userIDs: finalUsers,
100
+ action: normalizedAction,
101
+ senderID: ctx.userID,
102
+ BotID: ctx.userID,
103
+ timestamp: Date.now(),
104
+ };
154
105
  }
155
106
  catch (err) {
156
- return _callback(null, {
157
- type: 'error_gc',
158
- error: err.message || 'An unknown error occurred.',
159
- });
107
+ return { type: 'error_gc', error: err.message || 'An unknown error occurred.' };
160
108
  }
161
- return returnPromise;
162
109
  };
163
110
  }
164
111
  //# sourceMappingURL=gcmember.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gcmember.js","sourceRoot":"","sources":["../../../../src/deltas/apis/messaging/gcmember.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gcmember.js","sourceRoot":"","sources":["../../../../src/deltas/apis/messaging/gcmember.ts"],"names":[],"mappings":"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"}
@@ -1,81 +1,36 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = default_1;
3
+ exports.default = gcname;
4
4
  const utils = require("../../../utils");
5
- function default_1(defaultFuncs, api, ctx) {
5
+ /**
6
+ * Made by Choru Official
7
+ * Sets the name of a group chat thread via MQTT.
8
+ *
9
+ * @param {Object} defaultFuncs
10
+ * @param {Object} api
11
+ * @param {Object} ctx
12
+ */
13
+ function gcname(defaultFuncs, api, ctx) {
6
14
  /**
7
- * Made by Choru Official
8
- * Mqtt
9
15
  * Sets the name of a group chat thread via MQTT.
10
- *
11
- * @param {string} newName The new name for the group chat.
12
- * @param {string} threadID The ID of the group chat thread.
13
- * @param {Function} [callback] Optional callback function to be invoked upon completion.
14
- * @param {string} [initiatorID] The ID of the user who initiated the group name change (e.g., from event.senderID).
15
- * @returns {Promise<object>} A promise that resolves with a structured event object on success or rejects on error.
16
+ * @param {string} newName - The new name for the group chat.
17
+ * @param {string} threadID - The ID of the group chat thread.
18
+ * @param {string} [initiatorID] - The ID of the user who initiated the change.
19
+ * @returns {Promise<object>}
16
20
  */
17
- return function gcname(newName, threadID, callback, initiatorID) {
18
- let _callback;
19
- let _initiatorID;
20
- let _resolvePromise;
21
- let _rejectPromise;
22
- const returnPromise = new Promise((resolve, reject) => {
23
- _resolvePromise = resolve;
24
- _rejectPromise = reject;
25
- });
26
- if (utils.getType(callback) === 'Function' ||
27
- utils.getType(callback) === 'AsyncFunction') {
28
- _callback = callback;
29
- _initiatorID = initiatorID;
30
- }
31
- else if (utils.getType(threadID) === 'Function' ||
32
- utils.getType(threadID) === 'AsyncFunction') {
33
- _callback = threadID;
34
- threadID = null;
35
- _initiatorID = callback;
36
- }
37
- else if (utils.getType(callback) === 'string') {
38
- _initiatorID = callback;
39
- _callback = undefined;
40
- }
41
- else {
42
- _callback = undefined;
43
- _initiatorID = undefined;
44
- }
45
- if (!_callback) {
46
- _callback = function (__err, __data) {
47
- if (__err)
48
- _rejectPromise(__err);
49
- else
50
- _resolvePromise(__data);
51
- };
52
- }
53
- else {
54
- const originalCallback = _callback;
55
- _callback = function (__err, __data) {
56
- if (__err) {
57
- originalCallback(__err);
58
- _rejectPromise(__err);
59
- }
60
- else {
61
- originalCallback(null, __data);
62
- _resolvePromise(__data);
63
- }
64
- };
65
- }
66
- _initiatorID = _initiatorID || ctx.userID;
67
- threadID = threadID || ctx.threadID;
21
+ return async function gcname(newName, threadID, initiatorID) {
68
22
  if (!threadID) {
69
- return _callback(new Error('threadID is required to change the group chat name.'));
23
+ throw new Error('threadID is required to change the group chat name.');
70
24
  }
71
25
  if (typeof newName !== 'string') {
72
- return _callback(new Error('newName must be a string.'));
26
+ throw new Error('newName must be a string.');
73
27
  }
74
28
  if (!ctx.mqttClient) {
75
- return _callback(new Error('Not connected to MQTT'));
29
+ throw new Error('Not connected to MQTT');
76
30
  }
77
31
  ctx.wsReqNumber += 1;
78
32
  ctx.wsTaskNumber += 1;
33
+ const _initiatorID = initiatorID || ctx.userID;
79
34
  const queryPayload = {
80
35
  thread_key: threadID.toString(),
81
36
  thread_name: newName,
@@ -99,21 +54,15 @@ function default_1(defaultFuncs, api, ctx) {
99
54
  type: 3,
100
55
  };
101
56
  context.payload = JSON.stringify(context.payload);
102
- ctx.mqttClient.publish('/ls_req', JSON.stringify(context), { qos: 1, retain: false }, (err) => {
103
- if (err) {
104
- return _callback(new Error(`MQTT publish failed for gcname: ${err.message || err}`));
105
- }
106
- const gcnameChangeEvent = {
107
- type: 'thread_name_update',
108
- threadID: threadID,
109
- newName: newName,
110
- senderID: _initiatorID,
111
- BotID: ctx.userID,
112
- timestamp: Date.now(),
113
- };
114
- _callback(null, gcnameChangeEvent);
115
- });
116
- return returnPromise;
57
+ await new Promise((resolve, reject) => ctx.mqttClient.publish('/ls_req', JSON.stringify(context), { qos: 1, retain: false }, (err) => (err ? reject(new Error(`MQTT publish failed for gcname: ${err.message || err}`)) : resolve())));
58
+ return {
59
+ type: 'thread_name_update',
60
+ threadID,
61
+ newName,
62
+ senderID: _initiatorID,
63
+ BotID: ctx.userID,
64
+ timestamp: Date.now(),
65
+ };
117
66
  };
118
67
  }
119
68
  //# sourceMappingURL=gcname.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gcname.js","sourceRoot":"","sources":["../../../../src/deltas/apis/messaging/gcname.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gcname.js","sourceRoot":"","sources":["../../../../src/deltas/apis/messaging/gcname.ts"],"names":[],"mappings":";;AAUA,yBA4EC;AAtFD,wCAAyC;AAEzC;;;;;;;GAOG;AACH,SAAwB,MAAM,CAC5B,YAAiB,EACjB,GAAQ,EACR,GAAQ;IAER;;;;;;OAMG;IACH,OAAO,KAAK,UAAU,MAAM,CAC1B,OAAe,EACf,QAAgB,EAChB,WAAoB;QAEpB,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC;QACrB,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC;QAEtB,MAAM,YAAY,GAAG,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC;QAE/C,MAAM,YAAY,GAAG;YACnB,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE;YAC/B,WAAW,EAAE,OAAO;YACpB,UAAU,EAAE,CAAC;SACd,CAAC;QAEF,MAAM,KAAK,GAAG;YACZ,aAAa,EAAE,IAAI;YACnB,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YACrC,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE;YAC/B,OAAO,EAAE,GAAG,CAAC,YAAY;SAC1B,CAAC;QAEF,MAAM,OAAO,GAAQ;YACnB,MAAM,EAAE,GAAG,CAAC,KAAK;YACjB,OAAO,EAAE;gBACP,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,0BAA0B,EAAE,CAAC;gBACtD,KAAK,EAAE,CAAC,KAAK,CAAC;gBACd,UAAU,EAAE,mBAAmB;aAChC;YACD,UAAU,EAAE,GAAG,CAAC,WAAW;YAC3B,IAAI,EAAE,CAAC;SACR,CAAC;QACF,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAElD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAC1C,GAAG,CAAC,UAAU,CAAC,OAAO,CACpB,SAAS,EACT,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EACvB,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EACzB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,GAAG,CAAC,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CACxG,CACF,CAAC;QAEF,OAAO;YACL,IAAI,EAAE,oBAAoB;YAC1B,QAAQ;YACR,OAAO;YACP,QAAQ,EAAE,YAAY;YACtB,KAAK,EAAE,GAAG,CAAC,MAAM;YACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}