@expressms/smartapp-sdk 1.1.4 → 1.1.6

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.
@@ -11,6 +11,8 @@ declare const openGroupChat: ({ groupChatId }: {
11
11
  declare const sendBotCommand: ({ userHuid, body, data }: {
12
12
  userHuid: string;
13
13
  body: string;
14
- data: string;
14
+ data: {
15
+ command: string;
16
+ } | null;
15
17
  }) => Promise<import("@expressms/smartapp-bridge/build/main/types/eventEmitter").EmitterEventPayload> | undefined;
16
18
  export { openClientSettings, getChats, searchCorporatePhonebook, sendBotCommand, openGroupChat, };
@@ -35,6 +35,8 @@ const openGroupChat = ({ groupChatId }) => {
35
35
  };
36
36
  exports.openGroupChat = openGroupChat;
37
37
  const sendBotCommand = ({ userHuid, body, data }) => {
38
+ if (typeof data !== 'object')
39
+ return;
38
40
  return smartapp_bridge_1.default === null || smartapp_bridge_1.default === void 0 ? void 0 : smartapp_bridge_1.default.sendClientEvent({
39
41
  method: types_1.METHODS.SEND_BOT_COMMAND,
40
42
  params: {
@@ -47,4 +49,4 @@ const sendBotCommand = ({ userHuid, body, data }) => {
47
49
  });
48
50
  };
49
51
  exports.sendBotCommand = sendBotCommand;
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NsaWVudC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxpRkFBK0M7QUFDL0MsdUNBQXFDO0FBRXJDLE1BQU0sa0JBQWtCLEdBQUcsR0FBRyxFQUFFO0lBQzlCLE9BQU8seUJBQU0sYUFBTix5QkFBTSx1QkFBTix5QkFBTSxDQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsZUFBTyxDQUFDLG9CQUFvQjtRQUNwQyxNQUFNLEVBQUUsRUFBRTtLQUNYLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQXVDQyxnREFBa0I7QUFyQ3BCLE1BQU0sUUFBUSxHQUFHLENBQUMsRUFBRSxNQUFNLEdBQUcsSUFBSSxFQUE2QixFQUFFLEVBQUU7SUFDaEUsT0FBTyx5QkFBTSxhQUFOLHlCQUFNLHVCQUFOLHlCQUFNLENBQUUsZUFBZSxDQUFDO1FBQzdCLE1BQU0sRUFBRSxlQUFPLENBQUMsU0FBUztRQUN6QixNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUU7S0FDbkIsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBaUNDLDRCQUFRO0FBL0JWLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxFQUFFLE1BQU0sR0FBRyxJQUFJLEVBQTZCLEVBQUUsRUFBRTtJQUNoRixPQUFPLHlCQUFNLGFBQU4seUJBQU0sdUJBQU4seUJBQU0sQ0FBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLGVBQU8sQ0FBQywwQkFBMEI7UUFDMUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFO0tBQ25CLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQTJCQyw0REFBd0I7QUF6QjFCLE1BQU0sYUFBYSxHQUFHLENBQUMsRUFBRSxXQUFXLEVBQTJCLEVBQUUsRUFBRTtJQUNqRSxPQUFPLHlCQUFNLGFBQU4seUJBQU0sdUJBQU4seUJBQU0sQ0FBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLGVBQU8sQ0FBQyxlQUFlO1FBQy9CLE1BQU0sRUFBRSxFQUFFLFdBQVcsRUFBRTtLQUN4QixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFzQkMsc0NBQWE7QUFwQmYsTUFBTSxjQUFjLEdBQUcsQ0FDckIsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBb0QsRUFDMUUsRUFBRTtJQUNGLE9BQU8seUJBQU0sYUFBTix5QkFBTSx1QkFBTix5QkFBTSxDQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsZUFBTyxDQUFDLGdCQUFnQjtRQUNoQyxNQUFNLEVBQUU7WUFDTixRQUFRO1lBQ1IsT0FBTyxFQUFFO2dCQUNQLElBQUk7Z0JBQ0osSUFBSTthQUNMO1NBQ0Y7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFNQyx3Q0FBYyJ9
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NsaWVudC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxpRkFBK0M7QUFDL0MsdUNBQXFDO0FBRXJDLE1BQU0sa0JBQWtCLEdBQUcsR0FBRyxFQUFFO0lBQzlCLE9BQU8seUJBQU0sYUFBTix5QkFBTSx1QkFBTix5QkFBTSxDQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsZUFBTyxDQUFDLG9CQUFvQjtRQUNwQyxNQUFNLEVBQUUsRUFBRTtLQUNYLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQWlEQyxnREFBa0I7QUEvQ3BCLE1BQU0sUUFBUSxHQUFHLENBQUMsRUFBRSxNQUFNLEdBQUcsSUFBSSxFQUE2QixFQUFFLEVBQUU7SUFDaEUsT0FBTyx5QkFBTSxhQUFOLHlCQUFNLHVCQUFOLHlCQUFNLENBQUUsZUFBZSxDQUFDO1FBQzdCLE1BQU0sRUFBRSxlQUFPLENBQUMsU0FBUztRQUN6QixNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUU7S0FDbkIsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBMkNDLDRCQUFRO0FBekNWLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxFQUFFLE1BQU0sR0FBRyxJQUFJLEVBQTZCLEVBQUUsRUFBRTtJQUNoRixPQUFPLHlCQUFNLGFBQU4seUJBQU0sdUJBQU4seUJBQU0sQ0FBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLGVBQU8sQ0FBQywwQkFBMEI7UUFDMUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFO0tBQ25CLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQXFDQyw0REFBd0I7QUFuQzFCLE1BQU0sYUFBYSxHQUFHLENBQUMsRUFBRSxXQUFXLEVBQTJCLEVBQUUsRUFBRTtJQUNqRSxPQUFPLHlCQUFNLGFBQU4seUJBQU0sdUJBQU4seUJBQU0sQ0FBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLGVBQU8sQ0FBQyxlQUFlO1FBQy9CLE1BQU0sRUFBRSxFQUFFLFdBQVcsRUFBRTtLQUN4QixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFnQ0Msc0NBQWE7QUE5QmYsTUFBTSxjQUFjLEdBQUcsQ0FDckIsRUFDRSxRQUFRLEVBQ1IsSUFBSSxFQUNKLElBQUksRUFLTCxFQUNELEVBQUU7SUFDRixJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVE7UUFBRSxPQUFNO0lBRXBDLE9BQU8seUJBQU0sYUFBTix5QkFBTSx1QkFBTix5QkFBTSxDQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsZUFBTyxDQUFDLGdCQUFnQjtRQUNoQyxNQUFNLEVBQUU7WUFDTixRQUFRO1lBQ1IsT0FBTyxFQUFFO2dCQUNQLElBQUk7Z0JBQ0osSUFBSTthQUNMO1NBQ0Y7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFNQyx3Q0FBYyJ9
@@ -11,6 +11,8 @@ declare const openGroupChat: ({ groupChatId }: {
11
11
  declare const sendBotCommand: ({ userHuid, body, data }: {
12
12
  userHuid: string;
13
13
  body: string;
14
- data: string;
14
+ data: {
15
+ command: string;
16
+ } | null;
15
17
  }) => Promise<import("@expressms/smartapp-bridge/build/main/types/eventEmitter").EmitterEventPayload> | undefined;
16
18
  export { openClientSettings, getChats, searchCorporatePhonebook, sendBotCommand, openGroupChat, };
@@ -25,6 +25,8 @@ const openGroupChat = ({ groupChatId }) => {
25
25
  });
26
26
  };
27
27
  const sendBotCommand = ({ userHuid, body, data }) => {
28
+ if (typeof data !== 'object')
29
+ return;
28
30
  return bridge?.sendClientEvent({
29
31
  method: METHODS.SEND_BOT_COMMAND,
30
32
  params: {
@@ -37,4 +39,4 @@ const sendBotCommand = ({ userHuid, body, data }) => {
37
39
  });
38
40
  };
39
41
  export { openClientSettings, getChats, searchCorporatePhonebook, sendBotCommand, openGroupChat, };
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NsaWVudC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU0sTUFBTSw0QkFBNEIsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRXJDLE1BQU0sa0JBQWtCLEdBQUcsR0FBRyxFQUFFO0lBQzlCLE9BQU8sTUFBTSxFQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsT0FBTyxDQUFDLG9CQUFvQjtRQUNwQyxNQUFNLEVBQUUsRUFBRTtLQUNYLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQUVELE1BQU0sUUFBUSxHQUFHLENBQUMsRUFBRSxNQUFNLEdBQUcsSUFBSSxFQUE2QixFQUFFLEVBQUU7SUFDaEUsT0FBTyxNQUFNLEVBQUUsZUFBZSxDQUFDO1FBQzdCLE1BQU0sRUFBRSxPQUFPLENBQUMsU0FBUztRQUN6QixNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUU7S0FDbkIsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBRUQsTUFBTSx3QkFBd0IsR0FBRyxDQUFDLEVBQUUsTUFBTSxHQUFHLElBQUksRUFBNkIsRUFBRSxFQUFFO0lBQ2hGLE9BQU8sTUFBTSxFQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsT0FBTyxDQUFDLDBCQUEwQjtRQUMxQyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUU7S0FDbkIsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBRUQsTUFBTSxhQUFhLEdBQUcsQ0FBQyxFQUFFLFdBQVcsRUFBMkIsRUFBRSxFQUFFO0lBQ2pFLE9BQU8sTUFBTSxFQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsT0FBTyxDQUFDLGVBQWU7UUFDL0IsTUFBTSxFQUFFLEVBQUUsV0FBVyxFQUFFO0tBQ3hCLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQUVELE1BQU0sY0FBYyxHQUFHLENBQ3JCLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQW9ELEVBQzFFLEVBQUU7SUFDRixPQUFPLE1BQU0sRUFBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLE9BQU8sQ0FBQyxnQkFBZ0I7UUFDaEMsTUFBTSxFQUFFO1lBQ04sUUFBUTtZQUNSLE9BQU8sRUFBRTtnQkFDUCxJQUFJO2dCQUNKLElBQUk7YUFDTDtTQUNGO0tBQ0YsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBRUQsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixRQUFRLEVBQ1Isd0JBQXdCLEVBQ3hCLGNBQWMsRUFDZCxhQUFhLEdBQ2QsQ0FBQSJ9
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NsaWVudC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU0sTUFBTSw0QkFBNEIsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRXJDLE1BQU0sa0JBQWtCLEdBQUcsR0FBRyxFQUFFO0lBQzlCLE9BQU8sTUFBTSxFQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsT0FBTyxDQUFDLG9CQUFvQjtRQUNwQyxNQUFNLEVBQUUsRUFBRTtLQUNYLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQUVELE1BQU0sUUFBUSxHQUFHLENBQUMsRUFBRSxNQUFNLEdBQUcsSUFBSSxFQUE2QixFQUFFLEVBQUU7SUFDaEUsT0FBTyxNQUFNLEVBQUUsZUFBZSxDQUFDO1FBQzdCLE1BQU0sRUFBRSxPQUFPLENBQUMsU0FBUztRQUN6QixNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUU7S0FDbkIsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBRUQsTUFBTSx3QkFBd0IsR0FBRyxDQUFDLEVBQUUsTUFBTSxHQUFHLElBQUksRUFBNkIsRUFBRSxFQUFFO0lBQ2hGLE9BQU8sTUFBTSxFQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsT0FBTyxDQUFDLDBCQUEwQjtRQUMxQyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUU7S0FDbkIsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBRUQsTUFBTSxhQUFhLEdBQUcsQ0FBQyxFQUFFLFdBQVcsRUFBMkIsRUFBRSxFQUFFO0lBQ2pFLE9BQU8sTUFBTSxFQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsT0FBTyxDQUFDLGVBQWU7UUFDL0IsTUFBTSxFQUFFLEVBQUUsV0FBVyxFQUFFO0tBQ3hCLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQUVELE1BQU0sY0FBYyxHQUFHLENBQ3JCLEVBQ0UsUUFBUSxFQUNSLElBQUksRUFDSixJQUFJLEVBS0wsRUFDRCxFQUFFO0lBQ0YsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRO1FBQUUsT0FBTTtJQUVwQyxPQUFPLE1BQU0sRUFBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLE9BQU8sQ0FBQyxnQkFBZ0I7UUFDaEMsTUFBTSxFQUFFO1lBQ04sUUFBUTtZQUNSLE9BQU8sRUFBRTtnQkFDUCxJQUFJO2dCQUNKLElBQUk7YUFDTDtTQUNGO0tBQ0YsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBRUQsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixRQUFRLEVBQ1Isd0JBQXdCLEVBQ3hCLGNBQWMsRUFDZCxhQUFhLEdBQ2QsQ0FBQSJ9
@@ -1381,16 +1381,10 @@
1381
1381
  * emitter.onceWithTimeout('d6910a9d-ea24-5fc6-a654-28781ef21f8f', 20000)
1382
1382
  * // => Promise
1383
1383
  * ```
1384
- * @param type - Event type, uuid or EVENT_TYPE.RECV for standalone events from client
1385
- * @param timeout - Timeout in ms
1386
- * @returns Promise.
1387
1384
  */
1388
1385
  onceWithTimeout(type, timeout) {
1389
1386
  return new Promise((resolve, reject) => {
1390
- const timer = setTimeout(() => {
1391
- console.error("Bridge ~ Timeout event", timer);
1392
- reject();
1393
- }, timeout);
1387
+ const timer = setTimeout(() => reject(), timeout);
1394
1388
  this.once(type, (event) => {
1395
1389
  clearTimeout(timer);
1396
1390
  resolve(event);
@@ -1575,6 +1569,12 @@
1575
1569
  this.isRenameParamsEnabled = false;
1576
1570
  console.log('Bridge ~ Disabled renaming event params from camelCase to snake_case and vice versa');
1577
1571
  }
1572
+ log(data) {
1573
+ if ((!this.hasCommunicationObject || !data) ||
1574
+ (typeof data !== 'string' && typeof data !== 'object'))
1575
+ return;
1576
+ window.express.handleSmartAppEvent(JSON.stringify({ 'SmartApp Log': data }, null, 2));
1577
+ }
1578
1578
  }
1579
1579
 
1580
1580
  class IosBridge {
@@ -1598,11 +1598,7 @@
1598
1598
  // Expect json data as string
1599
1599
  window.handleIosEvent = ({ ref, data, files, }) => {
1600
1600
  if (this.logsEnabled)
1601
- console.log('Bridge ~ Incoming event', JSON.stringify({
1602
- ref,
1603
- data,
1604
- files,
1605
- }, null, 2));
1601
+ console.log('Bridge ~ Incoming event', JSON.stringify({ ref, data, files }, null, 2));
1606
1602
  const { type, ...payload } = data;
1607
1603
  const emitterType = ref || EVENT_TYPE.RECEIVE;
1608
1604
  const eventFiles = this.isRenameParamsEnabled ?
@@ -1626,7 +1622,6 @@
1626
1622
  * console.log('event', type, handler, payload)
1627
1623
  * })
1628
1624
  * ```
1629
- * @param callback - Callback function.
1630
1625
  */
1631
1626
  onReceive(callback) {
1632
1627
  this.eventEmitter.on(EVENT_TYPE.RECEIVE, callback);
@@ -1670,14 +1665,16 @@
1670
1665
  * console.log('response', data)
1671
1666
  * })
1672
1667
  * ```
1673
- * @param method - Event type.
1674
- * @param params
1675
- * @param files
1676
- * @param timeout - Timeout in ms.
1677
- * @param guaranteed_delivery_required - boolean.
1678
1668
  */
1679
1669
  sendBotEvent({ method, params, files, timeout = RESPONSE_TIMEOUT, guaranteed_delivery_required, }) {
1680
- return this.sendEvent({ handler: HANDLER.BOTX, method, params, files, timeout, guaranteed_delivery_required });
1670
+ return this.sendEvent({
1671
+ handler: HANDLER.BOTX,
1672
+ method,
1673
+ params,
1674
+ files,
1675
+ timeout,
1676
+ guaranteed_delivery_required,
1677
+ });
1681
1678
  }
1682
1679
  /**
1683
1680
  * Send event and wait response from express client.
@@ -1698,12 +1695,14 @@
1698
1695
  * console.log('response', data)
1699
1696
  * })
1700
1697
  * ```
1701
- * @param method - Event type.
1702
- * @param params
1703
- * @param timeout - Timeout in ms.
1704
1698
  */
1705
- sendClientEvent({ method, params, timeout = RESPONSE_TIMEOUT }) {
1706
- return this.sendEvent({ handler: HANDLER.EXPRESS, method, params, timeout });
1699
+ sendClientEvent({ method, params, timeout = RESPONSE_TIMEOUT, }) {
1700
+ return this.sendEvent({
1701
+ handler: HANDLER.EXPRESS,
1702
+ method,
1703
+ params,
1704
+ timeout,
1705
+ });
1707
1706
  }
1708
1707
  /**
1709
1708
  * Enabling logs.
@@ -1749,6 +1748,20 @@
1749
1748
  this.isRenameParamsEnabled = false;
1750
1749
  console.log('Bridge ~ Disabled renaming event params from camelCase to snake_case and vice versa');
1751
1750
  }
1751
+ log(data) {
1752
+ if (!this.hasCommunicationObject || !data)
1753
+ return;
1754
+ let value = '';
1755
+ if (typeof data === 'string') {
1756
+ value = data;
1757
+ }
1758
+ else if (typeof data === 'object') {
1759
+ value = JSON.stringify(data, null, 2);
1760
+ }
1761
+ else
1762
+ return;
1763
+ window.webkit.messageHandlers.express.postMessage({ 'SmartApp Log': value });
1764
+ }
1752
1765
  }
1753
1766
 
1754
1767
  class WebBridge {
@@ -1762,18 +1775,18 @@
1762
1775
  this.isRenameParamsEnabled = true;
1763
1776
  }
1764
1777
  addGlobalListener() {
1765
- window.addEventListener("message", (event) => {
1778
+ window.addEventListener('message', (event) => {
1766
1779
  const isRenameParamsWasEnabled = this.isRenameParamsEnabled;
1767
1780
  if (getPlatform() === PLATFORM.WEB &&
1768
1781
  event.data.handler === HANDLER.EXPRESS &&
1769
1782
  this.isRenameParamsEnabled)
1770
1783
  this.isRenameParamsEnabled = false;
1771
- if (typeof event.data !== "object" ||
1772
- typeof event.data.data !== "object" ||
1773
- typeof event.data.data.type !== "string")
1784
+ if (typeof event.data !== 'object' ||
1785
+ typeof event.data.data !== 'object' ||
1786
+ typeof event.data.data.type !== 'string')
1774
1787
  return;
1775
1788
  if (this.logsEnabled)
1776
- console.log("Bridge ~ Incoming event", event.data);
1789
+ console.log('Bridge ~ Incoming event', event.data);
1777
1790
  const { ref, data: { type, ...payload }, files, } = event.data;
1778
1791
  const emitterType = ref || EVENT_TYPE.RECEIVE;
1779
1792
  const eventFiles = this.isRenameParamsEnabled ?
@@ -1798,17 +1811,16 @@
1798
1811
  * console.log('event', type, handler, payload)
1799
1812
  * })
1800
1813
  * ```
1801
- * @param callback - Callback function.
1802
1814
  */
1803
1815
  onReceive(callback) {
1804
1816
  this.eventEmitter.on(EVENT_TYPE.RECEIVE, callback);
1805
1817
  }
1806
1818
  sendEvent({ handler, method, params, files, timeout = RESPONSE_TIMEOUT, guaranteed_delivery_required = false, }) {
1807
- const isRenameParamsWasEnabled = this.isRenameParamsEnabled;
1819
+ const isRenameParamsInitiallyEnabled = this.isRenameParamsEnabled;
1808
1820
  if (getPlatform() === PLATFORM.WEB &&
1809
1821
  handler === HANDLER.EXPRESS &&
1810
1822
  this.isRenameParamsEnabled)
1811
- this.disableRenameParams();
1823
+ this.isRenameParamsEnabled = false;
1812
1824
  const ref = v4(); // UUID to detect express response.
1813
1825
  const payload = {
1814
1826
  ref,
@@ -1822,13 +1834,13 @@
1822
1834
  files?.map((file) => camelCaseToSnakeCase(file)) : files;
1823
1835
  const event = files ? { ...payload, files: eventFiles } : payload;
1824
1836
  if (this.logsEnabled)
1825
- console.log("Bridge ~ Outgoing event", event);
1837
+ console.log('Bridge ~ Outgoing event', event);
1826
1838
  window.parent.postMessage({
1827
1839
  type: WEB_COMMAND_TYPE,
1828
1840
  payload: event,
1829
- }, "*");
1830
- if (isRenameParamsWasEnabled)
1831
- this.enableRenameParams();
1841
+ }, '*');
1842
+ if (isRenameParamsInitiallyEnabled)
1843
+ this.isRenameParamsEnabled = true;
1832
1844
  return this.eventEmitter.onceWithTimeout(ref, timeout);
1833
1845
  }
1834
1846
  /**
@@ -1849,12 +1861,6 @@
1849
1861
  * console.log('response', data)
1850
1862
  * })
1851
1863
  * ```
1852
- * @param method - Event type.
1853
- * @param params
1854
- * @param files
1855
- * @param is_rename_params_fields - boolean.
1856
- * @param timeout - Timeout in ms.
1857
- * @param guaranteed_delivery_required - boolean.
1858
1864
  */
1859
1865
  sendBotEvent({ method, params, files, timeout, guaranteed_delivery_required, }) {
1860
1866
  return this.sendEvent({
@@ -1884,12 +1890,14 @@
1884
1890
  * console.log('response', data)
1885
1891
  * })
1886
1892
  * ```
1887
- * @param method - Event type.
1888
- * @param params
1889
- * @param timeout - Timeout in ms.
1890
1893
  */
1891
1894
  sendClientEvent({ method, params, timeout }) {
1892
- return this.sendEvent({ handler: HANDLER.EXPRESS, method, params, timeout });
1895
+ return this.sendEvent({
1896
+ handler: HANDLER.EXPRESS,
1897
+ method,
1898
+ params,
1899
+ timeout,
1900
+ });
1893
1901
  }
1894
1902
  /**
1895
1903
  * Enabling logs.
@@ -1906,7 +1914,7 @@
1906
1914
  window.parent.postMessage({
1907
1915
  type: WEB_COMMAND_TYPE_RPC_LOGS,
1908
1916
  payload: rest,
1909
- }, "*");
1917
+ }, '*');
1910
1918
  _log.apply(console, rest);
1911
1919
  };
1912
1920
  }
@@ -1930,7 +1938,7 @@
1930
1938
  */
1931
1939
  enableRenameParams() {
1932
1940
  this.isRenameParamsEnabled = true;
1933
- console.log("Bridge ~ Enabled renaming event params from camelCase to snake_case and vice versa");
1941
+ console.log('Bridge ~ Enabled renaming event params from camelCase to snake_case and vice versa');
1934
1942
  }
1935
1943
  /**
1936
1944
  * Enabling renaming event params from camelCase to snake_case and vice versa
@@ -1941,11 +1949,11 @@
1941
1949
  */
1942
1950
  disableRenameParams() {
1943
1951
  this.isRenameParamsEnabled = false;
1944
- console.log("Bridge ~ Disabled renaming event params from camelCase to snake_case and vice versa");
1952
+ console.log('Bridge ~ Disabled renaming event params from camelCase to snake_case and vice versa');
1945
1953
  }
1946
1954
  }
1947
1955
 
1948
- const LIB_VERSION = "1.1.5";
1956
+ const LIB_VERSION = "1.1.7";
1949
1957
 
1950
1958
  const getBridge = () => {
1951
1959
  if (process.env.NODE_ENV === 'test')
@@ -2016,6 +2024,8 @@
2016
2024
  });
2017
2025
  };
2018
2026
  const sendBotCommand = ({ userHuid, body, data }) => {
2027
+ if (typeof data !== 'object')
2028
+ return;
2019
2029
  return bridge?.sendClientEvent({
2020
2030
  method: METHODS.SEND_BOT_COMMAND,
2021
2031
  params: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expressms/smartapp-sdk",
3
- "version": "1.1.4",
3
+ "version": "1.1.6",
4
4
  "description": "Smartapp SDK",
5
5
  "main": "build/main/index.js",
6
6
  "typings": "build/main/index.d.ts",
@@ -38,7 +38,7 @@
38
38
  "typescript": "^4.0.2"
39
39
  },
40
40
  "dependencies": {
41
- "@expressms/smartapp-bridge": "^1.1.5",
41
+ "@expressms/smartapp-bridge": "^1.1.7",
42
42
  "webpack-manifest-plugin": "2.2.0",
43
43
  "workbox-cacheable-response": "^6.5.4",
44
44
  "workbox-expiration": "^6.5.4",