@expressms/smartapp-sdk 1.2.9 → 1.4.0-alpha
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.
- package/README.md +82 -52
- package/build/main/index.d.ts +2 -2
- package/build/main/index.js +6 -2
- package/build/main/lib/client/events.d.ts +20 -0
- package/build/main/lib/client/events.js +78 -0
- package/build/main/lib/client/index.d.ts +18 -2
- package/build/main/lib/client/index.js +47 -2
- package/build/main/lib/logging/index.js +5 -2
- package/build/main/types/bridge.d.ts +14 -2
- package/build/main/types/bridge.js +16 -2
- package/build/main/types/client.d.ts +19 -0
- package/build/main/types/client.js +8 -0
- package/build/main/types/index.d.ts +2 -0
- package/build/main/types/index.js +3 -1
- package/build/module/index.d.ts +2 -2
- package/build/module/index.js +3 -3
- package/build/module/lib/client/events.d.ts +20 -0
- package/build/module/lib/client/events.js +71 -0
- package/build/module/lib/client/index.d.ts +18 -2
- package/build/module/lib/client/index.js +32 -3
- package/build/module/lib/logging/index.js +5 -2
- package/build/module/types/bridge.d.ts +14 -2
- package/build/module/types/bridge.js +15 -1
- package/build/module/types/client.d.ts +19 -0
- package/build/module/types/client.js +5 -0
- package/build/module/types/index.d.ts +2 -0
- package/build/module/types/index.js +3 -1
- package/build/umd/index.js +215 -145
- package/package.json +13 -21
- package/workers/workbox.js +0 -80
package/README.md
CHANGED
|
@@ -88,7 +88,7 @@ __Реализации клиентских методов SmartApp Bridge__
|
|
|
88
88
|
|
|
89
89
|
- `getChats({ filter: string | null })` - запросить чаты;
|
|
90
90
|
|
|
91
|
-
- `
|
|
91
|
+
- `requestLocation()` - запросить геолокацию;
|
|
92
92
|
|
|
93
93
|
- `searchCorporatePhonebook({ filter: string | null })` - запросить результаты поиска по корпоративной phonebook и результат трастового поиска ;
|
|
94
94
|
|
|
@@ -431,7 +431,7 @@ __Открытие файла__
|
|
|
431
431
|
Метод отправляет клиенту запрос типа:
|
|
432
432
|
|
|
433
433
|
```
|
|
434
|
-
const response = yield openFile(file: {
|
|
434
|
+
const response = yield openFile(file: {
|
|
435
435
|
"type": <string> | null
|
|
436
436
|
"file": <string>
|
|
437
437
|
"fileMimeType": <string> | null
|
|
@@ -443,9 +443,9 @@ const response = yield openFile(file: {
|
|
|
443
443
|
"fileHash": <string> | null
|
|
444
444
|
"fileEncryptionAlgo": <string> | null
|
|
445
445
|
"chunkSize": <number> | null
|
|
446
|
-
"fileId": <string> | null
|
|
446
|
+
"fileId": <string> | null
|
|
447
447
|
"key": {} | null
|
|
448
|
-
}
|
|
448
|
+
}
|
|
449
449
|
)
|
|
450
450
|
```
|
|
451
451
|
|
|
@@ -538,76 +538,106 @@ const response = yield requestSelfProfile()
|
|
|
538
538
|
}
|
|
539
539
|
```
|
|
540
540
|
|
|
541
|
-
__
|
|
542
|
-
|
|
543
|
-
Если приложение было создано с помощью `create-react-app`, добавляем строчку в `package.json`:
|
|
541
|
+
__Открытие карточки контакта__
|
|
544
542
|
|
|
543
|
+
```
|
|
544
|
+
yield openContactCard({ userHuid: "123e4567-e89b-12d3-a456-426655440000" })
|
|
545
545
|
```
|
|
546
546
|
|
|
547
|
-
|
|
548
|
-
"eject": "react-scripts eject",
|
|
549
|
-
}
|
|
547
|
+
Метод отправляет клиенту запрос на открытие карточки контакта с указанным huid.
|
|
550
548
|
|
|
551
|
-
```
|
|
552
549
|
|
|
553
|
-
|
|
550
|
+
__Статус подключения клиента к серверу__
|
|
554
551
|
|
|
552
|
+
```
|
|
553
|
+
const response = yield getConnectionStatus()
|
|
555
554
|
```
|
|
556
555
|
|
|
557
|
-
|
|
558
|
-
|
|
556
|
+
Метод отправляет клиенту запрос типа:
|
|
557
|
+
```
|
|
558
|
+
{
|
|
559
|
+
"ref": <string>,
|
|
560
|
+
"handler": "express",
|
|
561
|
+
"type": "smartapp_rpc",
|
|
562
|
+
"method": "get_connection_status",
|
|
563
|
+
"payload": {},
|
|
564
|
+
"files": []
|
|
559
565
|
}
|
|
560
|
-
|
|
561
566
|
```
|
|
562
567
|
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
Далее, делаем следующие изменения в файлах:
|
|
566
|
-
|
|
567
|
-
Добавляем код в `index.tsx`:
|
|
568
|
-
|
|
568
|
+
И получает ответ:
|
|
569
569
|
```
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
})
|
|
570
|
+
{
|
|
571
|
+
"ref": <string>,
|
|
572
|
+
"status": "success|error",
|
|
573
|
+
"data": {
|
|
574
|
+
"connectionStatus": "connected" | "disconnected",
|
|
575
|
+
}
|
|
577
576
|
}
|
|
578
|
-
|
|
579
577
|
```
|
|
580
578
|
|
|
581
|
-
|
|
579
|
+
__Создание ссылки (deeplink)__
|
|
582
580
|
|
|
583
581
|
```
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
582
|
+
const response = yield createDeeplink({
|
|
583
|
+
appId: "email-app",
|
|
584
|
+
meta: [
|
|
585
|
+
{
|
|
586
|
+
key: "route",
|
|
587
|
+
value: "/send-email",
|
|
588
|
+
},
|
|
589
|
+
{
|
|
590
|
+
key: "email",
|
|
591
|
+
value: "test@mail.ru",
|
|
592
|
+
},
|
|
593
|
+
]
|
|
594
|
+
})
|
|
591
595
|
```
|
|
592
596
|
|
|
593
|
-
|
|
597
|
+
Метод отправляет клиенту запрос типа:
|
|
598
|
+
```
|
|
599
|
+
{
|
|
600
|
+
"ref": <string>,
|
|
601
|
+
"handler": "express",
|
|
602
|
+
"type": "smartapp_rpc",
|
|
603
|
+
"method": "create_deeplink",
|
|
604
|
+
"payload": {
|
|
605
|
+
"app_id": "email-app",
|
|
606
|
+
"meta": [
|
|
607
|
+
{
|
|
608
|
+
"key": "route",
|
|
609
|
+
"value": "/send-email",
|
|
610
|
+
},
|
|
611
|
+
{
|
|
612
|
+
"key": "email",
|
|
613
|
+
"value": "test@mail.ru",
|
|
614
|
+
},
|
|
615
|
+
]
|
|
616
|
+
},
|
|
617
|
+
"files": []
|
|
618
|
+
}
|
|
619
|
+
```
|
|
594
620
|
|
|
621
|
+
И получает ответ:
|
|
622
|
+
```
|
|
623
|
+
{
|
|
624
|
+
"ref": <string>,
|
|
625
|
+
"status": "success|error",
|
|
626
|
+
"data": {
|
|
627
|
+
"deeplink": "https://xlnk.ms/open/smartapp/email-app?route=%2Fsend-email&email=test%40mail.ru",
|
|
628
|
+
}
|
|
629
|
+
}
|
|
595
630
|
```
|
|
596
631
|
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
dontCacheBustURLsMatching: /\.[0-9a-f]{8}\./,
|
|
604
|
-
exclude: [/\.map$/, /asset-manifest\.json$/, /LICENSE/],
|
|
605
|
-
// Bump up the default maximum size (2mb) that"s precached,
|
|
606
|
-
// to make lazy-loading failure scenarios less likely.
|
|
607
|
-
// See <https://github.com/cra-template/pwa/issues/13#issuecomment-722667270>
|
|
608
|
-
maximumFileSizeToCacheInBytes: 5 _ 1024 _ 1024,
|
|
609
|
-
}),
|
|
632
|
+
Также можно подписаться на изменение статуса подключения:
|
|
633
|
+
```
|
|
634
|
+
yield subscribeClientEvents('connection_status', (event) => {
|
|
635
|
+
// TODO: обработать event.data.connectionStatus
|
|
636
|
+
})
|
|
637
|
+
```
|
|
610
638
|
|
|
639
|
+
Отписаться от изменения статуса подключения:
|
|
640
|
+
```
|
|
641
|
+
yield unsubscribeClientEvents('connection_status', functionName)
|
|
611
642
|
```
|
|
612
643
|
|
|
613
|
-
Запускаем приложение, проверяем регистрацию сервис-воркера.
|
package/build/main/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import Bridge from '@expressms/smartapp-bridge';
|
|
2
|
-
import { getChats, openClientSettings, openFile, openGroupChat, requestLocation, searchCorporatePhonebook, sendBotCommand } from './lib/client';
|
|
2
|
+
import { createDeeplink, getChats, getConnectionStatus, openClientSettings, openFile, openGroupChat, requestLocation, searchCorporatePhonebook, sendBotCommand, subscribeClientEvents, unsubscribeClientEvents } from './lib/client';
|
|
3
3
|
import { addContact, createPersonalChat, getContact, openContactCard, requestSelfProfile, sendMessage } from './lib/contacts';
|
|
4
4
|
import { useQuery } from './lib/helpers/helpers';
|
|
5
5
|
import { ready } from './lib/logging';
|
|
6
6
|
import { onNotification } from './lib/notification';
|
|
7
7
|
import { closeSmartApp, exitSmartAppToCatalog, onBackPressed, onMoveToRoot, openSmartApp, routingChanged } from './lib/routing';
|
|
8
|
-
export { Bridge, ready, routingChanged, onBackPressed, addContact, getContact, createPersonalChat, onNotification, sendMessage, openSmartApp, openFile, exitSmartAppToCatalog, useQuery, openClientSettings, getChats, searchCorporatePhonebook, sendBotCommand, openGroupChat, onMoveToRoot, requestLocation, openContactCard, requestSelfProfile, closeSmartApp, };
|
|
8
|
+
export { Bridge, ready, routingChanged, onBackPressed, addContact, getContact, createPersonalChat, onNotification, sendMessage, openSmartApp, openFile, exitSmartAppToCatalog, useQuery, openClientSettings, getChats, searchCorporatePhonebook, sendBotCommand, openGroupChat, onMoveToRoot, requestLocation, openContactCard, requestSelfProfile, closeSmartApp, getConnectionStatus, subscribeClientEvents, unsubscribeClientEvents, createDeeplink, };
|
package/build/main/index.js
CHANGED
|
@@ -3,17 +3,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.closeSmartApp = exports.requestSelfProfile = exports.openContactCard = exports.requestLocation = exports.onMoveToRoot = exports.openGroupChat = exports.sendBotCommand = exports.searchCorporatePhonebook = exports.getChats = exports.openClientSettings = exports.useQuery = exports.exitSmartAppToCatalog = exports.openFile = exports.openSmartApp = exports.sendMessage = exports.onNotification = exports.createPersonalChat = exports.getContact = exports.addContact = exports.onBackPressed = exports.routingChanged = exports.ready = exports.Bridge = void 0;
|
|
6
|
+
exports.createDeeplink = exports.unsubscribeClientEvents = exports.subscribeClientEvents = exports.getConnectionStatus = exports.closeSmartApp = exports.requestSelfProfile = exports.openContactCard = exports.requestLocation = exports.onMoveToRoot = exports.openGroupChat = exports.sendBotCommand = exports.searchCorporatePhonebook = exports.getChats = exports.openClientSettings = exports.useQuery = exports.exitSmartAppToCatalog = exports.openFile = exports.openSmartApp = exports.sendMessage = exports.onNotification = exports.createPersonalChat = exports.getContact = exports.addContact = exports.onBackPressed = exports.routingChanged = exports.ready = exports.Bridge = void 0;
|
|
7
7
|
const smartapp_bridge_1 = __importDefault(require("@expressms/smartapp-bridge"));
|
|
8
8
|
exports.Bridge = smartapp_bridge_1.default;
|
|
9
9
|
const client_1 = require("./lib/client");
|
|
10
|
+
Object.defineProperty(exports, "createDeeplink", { enumerable: true, get: function () { return client_1.createDeeplink; } });
|
|
10
11
|
Object.defineProperty(exports, "getChats", { enumerable: true, get: function () { return client_1.getChats; } });
|
|
12
|
+
Object.defineProperty(exports, "getConnectionStatus", { enumerable: true, get: function () { return client_1.getConnectionStatus; } });
|
|
11
13
|
Object.defineProperty(exports, "openClientSettings", { enumerable: true, get: function () { return client_1.openClientSettings; } });
|
|
12
14
|
Object.defineProperty(exports, "openFile", { enumerable: true, get: function () { return client_1.openFile; } });
|
|
13
15
|
Object.defineProperty(exports, "openGroupChat", { enumerable: true, get: function () { return client_1.openGroupChat; } });
|
|
14
16
|
Object.defineProperty(exports, "requestLocation", { enumerable: true, get: function () { return client_1.requestLocation; } });
|
|
15
17
|
Object.defineProperty(exports, "searchCorporatePhonebook", { enumerable: true, get: function () { return client_1.searchCorporatePhonebook; } });
|
|
16
18
|
Object.defineProperty(exports, "sendBotCommand", { enumerable: true, get: function () { return client_1.sendBotCommand; } });
|
|
19
|
+
Object.defineProperty(exports, "subscribeClientEvents", { enumerable: true, get: function () { return client_1.subscribeClientEvents; } });
|
|
20
|
+
Object.defineProperty(exports, "unsubscribeClientEvents", { enumerable: true, get: function () { return client_1.unsubscribeClientEvents; } });
|
|
17
21
|
const contacts_1 = require("./lib/contacts");
|
|
18
22
|
Object.defineProperty(exports, "addContact", { enumerable: true, get: function () { return contacts_1.addContact; } });
|
|
19
23
|
Object.defineProperty(exports, "createPersonalChat", { enumerable: true, get: function () { return contacts_1.createPersonalChat; } });
|
|
@@ -34,4 +38,4 @@ Object.defineProperty(exports, "onBackPressed", { enumerable: true, get: functio
|
|
|
34
38
|
Object.defineProperty(exports, "onMoveToRoot", { enumerable: true, get: function () { return routing_1.onMoveToRoot; } });
|
|
35
39
|
Object.defineProperty(exports, "openSmartApp", { enumerable: true, get: function () { return routing_1.openSmartApp; } });
|
|
36
40
|
Object.defineProperty(exports, "routingChanged", { enumerable: true, get: function () { return routing_1.routingChanged; } });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsaUZBQStDO0FBbUM3QyxpQkFuQ0sseUJBQU0sQ0FtQ0w7QUFsQ1IseUNBWXFCO0FBZ0RuQiwrRkEzREEsdUJBQWMsT0EyREE7QUFaZCx5RkE5Q0EsaUJBQVEsT0E4Q0E7QUFTUixvR0F0REEsNEJBQW1CLE9Bc0RBO0FBVm5CLG1HQTNDQSwyQkFBa0IsT0EyQ0E7QUFIbEIseUZBdkNBLGlCQUFRLE9BdUNBO0FBT1IsOEZBN0NBLHNCQUFhLE9BNkNBO0FBRWIsZ0dBOUNBLHdCQUFlLE9BOENBO0FBSmYseUdBekNBLGlDQUF3QixPQXlDQTtBQUN4QiwrRkF6Q0EsdUJBQWMsT0F5Q0E7QUFRZCxzR0FoREEsOEJBQXFCLE9BZ0RBO0FBQ3JCLHdHQWhEQSxnQ0FBdUIsT0FnREE7QUE5Q3pCLDZDQU91QjtBQWtCckIsMkZBeEJBLHFCQUFVLE9Bd0JBO0FBRVYsbUdBekJBLDZCQUFrQixPQXlCQTtBQURsQiwyRkF2QkEscUJBQVUsT0F1QkE7QUFlVixnR0FyQ0EsMEJBQWUsT0FxQ0E7QUFDZixtR0FyQ0EsNkJBQWtCLE9BcUNBO0FBYmxCLDRGQXZCQSxzQkFBVyxPQXVCQTtBQXJCYixtREFBOEM7QUF5QjVDLHlGQXpCTSxrQkFBUSxPQXlCTjtBQXhCViwyQ0FBbUM7QUFhakMsc0ZBYk0sZUFBSyxPQWFOO0FBWlAscURBQWlEO0FBa0IvQywrRkFsQk0sNkJBQWMsT0FrQk47QUFqQmhCLDJDQU9zQjtBQXlCcEIsOEZBL0JBLHVCQUFhLE9BK0JBO0FBWGIsc0dBbkJBLCtCQUFxQixPQW1CQTtBQVJyQiw4RkFWQSx1QkFBYSxPQVVBO0FBZWIsNkZBeEJBLHNCQUFZLE9Bd0JBO0FBVFosNkZBZEEsc0JBQVksT0FjQTtBQVBaLCtGQU5BLHdCQUFjLE9BTUEifQ==
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { SubscriptionEventType } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Subscribe to special client events
|
|
4
|
+
* @param eventType Event from SubscriptionEventType enum to be subscribed
|
|
5
|
+
* @param callback Function to be handled when event is coming
|
|
6
|
+
* @returns Promise that'll be fullfilled on successful subscription, otherwise rejected with reason
|
|
7
|
+
*/
|
|
8
|
+
declare const subscribeClientEvents: (eventType: SubscriptionEventType, callback: Function) => Promise<{
|
|
9
|
+
status: string;
|
|
10
|
+
}>;
|
|
11
|
+
/**
|
|
12
|
+
* Unsubscribe from previously subscribed client events
|
|
13
|
+
* @param eventType Event from SubscriptionEventType enum to be unsubscribed
|
|
14
|
+
* @param callback Function to be unsibscribed
|
|
15
|
+
* @returns Promise that'll be fullfilled on successful unsubscription, otherwise rejected with reason
|
|
16
|
+
*/
|
|
17
|
+
declare const unsubscribeClientEvents: (eventType: SubscriptionEventType, callback: Function) => Promise<{
|
|
18
|
+
status: string;
|
|
19
|
+
}>;
|
|
20
|
+
export { subscribeClientEvents, unsubscribeClientEvents };
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.unsubscribeClientEvents = exports.subscribeClientEvents = void 0;
|
|
7
|
+
const smartapp_bridge_1 = __importDefault(require("@expressms/smartapp-bridge"));
|
|
8
|
+
const types_1 = require("../../types");
|
|
9
|
+
const subscriptions = [];
|
|
10
|
+
let bridgeEventListenerInstalled = false;
|
|
11
|
+
const isAnySubscriptionsOfType = (eventType) => {
|
|
12
|
+
return subscriptions.some(sub => sub.eventType == eventType);
|
|
13
|
+
};
|
|
14
|
+
const installBridgeEventListener = () => {
|
|
15
|
+
if (bridgeEventListenerInstalled || !smartapp_bridge_1.default)
|
|
16
|
+
return;
|
|
17
|
+
bridgeEventListenerInstalled = true;
|
|
18
|
+
smartapp_bridge_1.default.onReceive(event => {
|
|
19
|
+
subscriptions.filter(sub => sub.eventType === event.type).map(sub => sub.callback(event));
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Subscribe to special client events
|
|
24
|
+
* @param eventType Event from SubscriptionEventType enum to be subscribed
|
|
25
|
+
* @param callback Function to be handled when event is coming
|
|
26
|
+
* @returns Promise that'll be fullfilled on successful subscription, otherwise rejected with reason
|
|
27
|
+
*/
|
|
28
|
+
const subscribeClientEvents = (eventType, callback) => {
|
|
29
|
+
const successResponse = { status: types_1.STATUS.SUCCESS };
|
|
30
|
+
// No need to subscribe event twice on client
|
|
31
|
+
if (isAnySubscriptionsOfType(eventType)) {
|
|
32
|
+
subscriptions.push({ eventType, callback });
|
|
33
|
+
return Promise.resolve(successResponse);
|
|
34
|
+
}
|
|
35
|
+
if (!smartapp_bridge_1.default)
|
|
36
|
+
return Promise.reject(types_1.ERROR_CODES.NO_BRIDGE);
|
|
37
|
+
return smartapp_bridge_1.default
|
|
38
|
+
.sendClientEvent({
|
|
39
|
+
method: types_1.METHODS.SUBSCRIBE_CLIENT_EVENTS,
|
|
40
|
+
params: {
|
|
41
|
+
event: eventType,
|
|
42
|
+
},
|
|
43
|
+
})
|
|
44
|
+
.then(() => {
|
|
45
|
+
installBridgeEventListener();
|
|
46
|
+
subscriptions.push({ eventType, callback });
|
|
47
|
+
return successResponse;
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
exports.subscribeClientEvents = subscribeClientEvents;
|
|
51
|
+
/**
|
|
52
|
+
* Unsubscribe from previously subscribed client events
|
|
53
|
+
* @param eventType Event from SubscriptionEventType enum to be unsubscribed
|
|
54
|
+
* @param callback Function to be unsibscribed
|
|
55
|
+
* @returns Promise that'll be fullfilled on successful unsubscription, otherwise rejected with reason
|
|
56
|
+
*/
|
|
57
|
+
const unsubscribeClientEvents = (eventType, callback) => {
|
|
58
|
+
const successResponse = { status: types_1.STATUS.SUCCESS };
|
|
59
|
+
const index = subscriptions.findIndex(sub => sub.eventType == eventType && sub.callback == callback);
|
|
60
|
+
if (!smartapp_bridge_1.default)
|
|
61
|
+
return Promise.reject(types_1.ERROR_CODES.NO_BRIDGE);
|
|
62
|
+
if (index == -1)
|
|
63
|
+
return Promise.reject(types_1.ERROR_CODES.SUBSCRIPTION_NOT_FOUND);
|
|
64
|
+
subscriptions.splice(index, 1);
|
|
65
|
+
// Send unsubscribe to client only at last subscription
|
|
66
|
+
if (isAnySubscriptionsOfType(eventType))
|
|
67
|
+
return Promise.resolve(successResponse);
|
|
68
|
+
return smartapp_bridge_1.default
|
|
69
|
+
.sendClientEvent({
|
|
70
|
+
method: types_1.METHODS.UNSUBSCRIBE_CLIENT_EVENTS,
|
|
71
|
+
params: {
|
|
72
|
+
event: eventType,
|
|
73
|
+
},
|
|
74
|
+
})
|
|
75
|
+
.then(() => successResponse);
|
|
76
|
+
};
|
|
77
|
+
exports.unsubscribeClientEvents = unsubscribeClientEvents;
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9jbGllbnQvZXZlbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGlGQUErQztBQUMvQyx1Q0FBaUY7QUFFakYsTUFBTSxhQUFhLEdBQW9FLEVBQUUsQ0FBQTtBQUN6RixJQUFJLDRCQUE0QixHQUFHLEtBQUssQ0FBQTtBQUV4QyxNQUFNLHdCQUF3QixHQUFHLENBQUMsU0FBZ0MsRUFBRSxFQUFFO0lBQ3BFLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDLENBQUE7QUFDOUQsQ0FBQyxDQUFBO0FBRUQsTUFBTSwwQkFBMEIsR0FBRyxHQUFHLEVBQUU7SUFDdEMsSUFBSSw0QkFBNEIsSUFBSSxDQUFDLHlCQUFNO1FBQUUsT0FBTTtJQUVuRCw0QkFBNEIsR0FBRyxJQUFJLENBQUE7SUFFbkMseUJBQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDdkIsYUFBYSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtJQUMzRixDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLFNBQWdDLEVBQUUsUUFBa0IsRUFBK0IsRUFBRTtJQUNsSCxNQUFNLGVBQWUsR0FBRyxFQUFFLE1BQU0sRUFBRSxjQUFNLENBQUMsT0FBTyxFQUFFLENBQUE7SUFFbEQsNkNBQTZDO0lBQzdDLElBQUksd0JBQXdCLENBQUMsU0FBUyxDQUFDLEVBQUU7UUFDdkMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFBO1FBQzNDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQTtLQUN4QztJQUVELElBQUksQ0FBQyx5QkFBTTtRQUFFLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxtQkFBVyxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBRXpELE9BQU8seUJBQU07U0FDVixlQUFlLENBQUM7UUFDZixNQUFNLEVBQUUsZUFBTyxDQUFDLHVCQUF1QjtRQUN2QyxNQUFNLEVBQUU7WUFDTixLQUFLLEVBQUUsU0FBUztTQUNqQjtLQUNGLENBQUM7U0FDRCxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ1QsMEJBQTBCLEVBQUUsQ0FBQTtRQUM1QixhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUE7UUFDM0MsT0FBTyxlQUFlLENBQUE7SUFDeEIsQ0FBQyxDQUFDLENBQUE7QUFDTixDQUFDLENBQUE7QUErQlEsc0RBQXFCO0FBN0I5Qjs7Ozs7R0FLRztBQUNILE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxTQUFnQyxFQUFFLFFBQWtCLEVBQStCLEVBQUU7SUFDcEgsTUFBTSxlQUFlLEdBQUcsRUFBRSxNQUFNLEVBQUUsY0FBTSxDQUFDLE9BQU8sRUFBRSxDQUFBO0lBRWxELE1BQU0sS0FBSyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsU0FBUyxJQUFJLFNBQVMsSUFBSSxHQUFHLENBQUMsUUFBUSxJQUFJLFFBQVEsQ0FBQyxDQUFBO0lBRXBHLElBQUksQ0FBQyx5QkFBTTtRQUFFLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxtQkFBVyxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQ3pELElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQztRQUFFLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxtQkFBVyxDQUFDLHNCQUFzQixDQUFDLENBQUE7SUFFMUUsYUFBYSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFFOUIsdURBQXVEO0lBQ3ZELElBQUksd0JBQXdCLENBQUMsU0FBUyxDQUFDO1FBQUUsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFBO0lBRWhGLE9BQU8seUJBQU07U0FDVixlQUFlLENBQUM7UUFDZixNQUFNLEVBQUUsZUFBTyxDQUFDLHlCQUF5QjtRQUN6QyxNQUFNLEVBQUU7WUFDTixLQUFLLEVBQUUsU0FBUztTQUNqQjtLQUNGLENBQUM7U0FDRCxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDLENBQUE7QUFDaEMsQ0FBQyxDQUFBO0FBRStCLDBEQUF1QiJ9
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { File } from '../../types';
|
|
1
|
+
import { CreateDeeplinkResponse, File, GetConnectionStatusResponse } from '../../types';
|
|
2
|
+
export * from './events';
|
|
2
3
|
declare const openClientSettings: () => Promise<import("@expressms/smartapp-bridge/build/main/types/eventEmitter").EmitterEventPayload> | undefined;
|
|
3
4
|
declare const getChats: ({ filter }: {
|
|
4
5
|
filter: string | null;
|
|
@@ -18,4 +19,19 @@ declare const sendBotCommand: ({ userHuid, body, data, }: {
|
|
|
18
19
|
} | null;
|
|
19
20
|
}) => Promise<import("@expressms/smartapp-bridge/build/main/types/eventEmitter").EmitterEventPayload> | undefined;
|
|
20
21
|
declare const requestLocation: () => Promise<import("@expressms/smartapp-bridge/build/main/types/eventEmitter").EmitterEventPayload> | undefined;
|
|
21
|
-
|
|
22
|
+
/**
|
|
23
|
+
* Get client current connection status. It's based on client's WebSocket connection state.
|
|
24
|
+
* @returns Promise that'll be fullfilled with status data on success, otherwise rejected with reason
|
|
25
|
+
*/
|
|
26
|
+
declare const getConnectionStatus: () => Promise<GetConnectionStatusResponse>;
|
|
27
|
+
/**
|
|
28
|
+
* Create deeplink URL to open SmartApp
|
|
29
|
+
* @param appId ID of SmartApp
|
|
30
|
+
* @param meta Array of params to be included in deeplink
|
|
31
|
+
* @returns Promise that'll be fullfilled with deeplink data on success, otherwise rejected with reason
|
|
32
|
+
*/
|
|
33
|
+
declare const createDeeplink: (appId: string, meta: Array<{
|
|
34
|
+
key: string;
|
|
35
|
+
value: null | boolean | string | number;
|
|
36
|
+
}>) => Promise<CreateDeeplinkResponse>;
|
|
37
|
+
export { openFile, openClientSettings, getChats, searchCorporatePhonebook, openGroupChat, sendBotCommand, requestLocation, getConnectionStatus, createDeeplink, };
|
|
@@ -1,11 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
18
|
};
|
|
5
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.requestLocation = exports.sendBotCommand = exports.openGroupChat = exports.searchCorporatePhonebook = exports.getChats = exports.openClientSettings = exports.openFile = void 0;
|
|
20
|
+
exports.createDeeplink = exports.getConnectionStatus = exports.requestLocation = exports.sendBotCommand = exports.openGroupChat = exports.searchCorporatePhonebook = exports.getChats = exports.openClientSettings = exports.openFile = void 0;
|
|
7
21
|
const smartapp_bridge_1 = __importDefault(require("@expressms/smartapp-bridge"));
|
|
8
22
|
const types_1 = require("../../types");
|
|
23
|
+
__exportStar(require("./events"), exports);
|
|
9
24
|
const openClientSettings = () => {
|
|
10
25
|
return smartapp_bridge_1.default === null || smartapp_bridge_1.default === void 0 ? void 0 : smartapp_bridge_1.default.sendClientEvent({
|
|
11
26
|
method: types_1.METHODS.OPEN_CLIENT_SETTINGS,
|
|
@@ -63,4 +78,34 @@ const requestLocation = () => {
|
|
|
63
78
|
});
|
|
64
79
|
};
|
|
65
80
|
exports.requestLocation = requestLocation;
|
|
66
|
-
|
|
81
|
+
/**
|
|
82
|
+
* Get client current connection status. It's based on client's WebSocket connection state.
|
|
83
|
+
* @returns Promise that'll be fullfilled with status data on success, otherwise rejected with reason
|
|
84
|
+
*/
|
|
85
|
+
const getConnectionStatus = async () => {
|
|
86
|
+
if (!smartapp_bridge_1.default)
|
|
87
|
+
return Promise.reject(types_1.ERROR_CODES.NO_BRIDGE);
|
|
88
|
+
const response = await smartapp_bridge_1.default.sendClientEvent({
|
|
89
|
+
method: types_1.METHODS.GET_CONNECTION_STATUS,
|
|
90
|
+
params: {},
|
|
91
|
+
});
|
|
92
|
+
return response;
|
|
93
|
+
};
|
|
94
|
+
exports.getConnectionStatus = getConnectionStatus;
|
|
95
|
+
/**
|
|
96
|
+
* Create deeplink URL to open SmartApp
|
|
97
|
+
* @param appId ID of SmartApp
|
|
98
|
+
* @param meta Array of params to be included in deeplink
|
|
99
|
+
* @returns Promise that'll be fullfilled with deeplink data on success, otherwise rejected with reason
|
|
100
|
+
*/
|
|
101
|
+
const createDeeplink = async (appId, meta) => {
|
|
102
|
+
if (!smartapp_bridge_1.default)
|
|
103
|
+
return Promise.reject(types_1.ERROR_CODES.NO_BRIDGE);
|
|
104
|
+
const response = await smartapp_bridge_1.default.sendClientEvent({
|
|
105
|
+
method: types_1.METHODS.CREATE_DEEPLINK,
|
|
106
|
+
params: { appId, meta },
|
|
107
|
+
});
|
|
108
|
+
return response;
|
|
109
|
+
};
|
|
110
|
+
exports.createDeeplink = createDeeplink;
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NsaWVudC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGlGQUErQztBQUMvQyx1Q0FBNkc7QUFDN0csMkNBQXdCO0FBRXhCLE1BQU0sa0JBQWtCLEdBQUcsR0FBRyxFQUFFO0lBQzlCLE9BQU8seUJBQU0sYUFBTix5QkFBTSx1QkFBTix5QkFBTSxDQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsZUFBTyxDQUFDLG9CQUFvQjtRQUNwQyxNQUFNLEVBQUUsRUFBRTtLQUNYLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQW1HQyxnREFBa0I7QUFqR3BCLE1BQU0sUUFBUSxHQUFHLENBQUMsRUFBQyxNQUFNLEdBQUcsSUFBSSxFQUE0QixFQUFFLEVBQUU7SUFDOUQsT0FBTyx5QkFBTSxhQUFOLHlCQUFNLHVCQUFOLHlCQUFNLENBQUUsZUFBZSxDQUFDO1FBQzdCLE1BQU0sRUFBRSxlQUFPLENBQUMsU0FBUztRQUN6QixNQUFNLEVBQUUsRUFBQyxNQUFNLEVBQUM7S0FDakIsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBNkZDLDRCQUFRO0FBM0ZWLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxFQUFDLE1BQU0sR0FBRyxJQUFJLEVBQTRCLEVBQUUsRUFBRTtJQUM5RSxPQUFPLHlCQUFNLGFBQU4seUJBQU0sdUJBQU4seUJBQU0sQ0FBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLGVBQU8sQ0FBQywwQkFBMEI7UUFDMUMsTUFBTSxFQUFFLEVBQUMsTUFBTSxFQUFDO0tBQ2pCLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQXVGQyw0REFBd0I7QUFyRjFCLE1BQU0sYUFBYSxHQUFHLENBQUMsRUFBQyxXQUFXLEVBQTBCLEVBQUUsRUFBRTtJQUMvRCxPQUFPLHlCQUFNLGFBQU4seUJBQU0sdUJBQU4seUJBQU0sQ0FBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLGVBQU8sQ0FBQyxlQUFlO1FBQy9CLE1BQU0sRUFBRSxFQUFDLFdBQVcsRUFBQztLQUN0QixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFpRkMsc0NBQWE7QUEvRWYsTUFBTSxRQUFRLEdBQUcsQ0FBQyxJQUFVLEVBQUUsRUFBRTtJQUM5QixPQUFPLHlCQUFNLGFBQU4seUJBQU0sdUJBQU4seUJBQU0sQ0FBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLGVBQU8sQ0FBQyxTQUFTO1FBQ3pCLE1BQU0sRUFBRSxJQUFJO0tBQ2IsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBc0VDLDRCQUFRO0FBcEVWLE1BQU0sY0FBYyxHQUFHLENBQ25CLEVBQ0UsUUFBUSxFQUNSLElBQUksRUFDSixJQUFJLEdBS0wsRUFDSCxFQUFFO0lBQ0YsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRO1FBQUUsT0FBTTtJQUVwQyxPQUFPLHlCQUFNLGFBQU4seUJBQU0sdUJBQU4seUJBQU0sQ0FBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLGVBQU8sQ0FBQyxnQkFBZ0I7UUFDaEMsTUFBTSxFQUFFO1lBQ04sUUFBUTtZQUNSLE9BQU8sRUFBRTtnQkFDUCxJQUFJO2dCQUNKLElBQUk7YUFDTDtTQUNGO0tBQ0YsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBa0RDLHdDQUFjO0FBaERoQixNQUFNLGVBQWUsR0FBRyxHQUFHLEVBQUU7SUFDM0IsT0FBTyx5QkFBTSxhQUFOLHlCQUFNLHVCQUFOLHlCQUFNLENBQUUsZUFBZSxDQUFDO1FBQzdCLE1BQU0sRUFBRSxlQUFPLENBQUMsZ0JBQWdCO1FBQ2hDLE1BQU0sRUFBRSxFQUFFO0tBQ1gsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBNENDLDBDQUFlO0FBMUNqQjs7O0dBR0c7QUFDSCxNQUFNLG1CQUFtQixHQUFHLEtBQUssSUFBMEMsRUFBRTtJQUMzRSxJQUFJLENBQUMseUJBQU07UUFBRSxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsbUJBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUV6RCxNQUFNLFFBQVEsR0FBRyxNQUFNLHlCQUFNLENBQUMsZUFBZSxDQUFDO1FBQzVDLE1BQU0sRUFBRSxlQUFPLENBQUMscUJBQXFCO1FBQ3JDLE1BQU0sRUFBRSxFQUFFO0tBQ1gsQ0FBQyxDQUFBO0lBRUYsT0FBTyxRQUF1QyxDQUFBO0FBQ2hELENBQUMsQ0FBQTtBQThCQyxrREFBbUI7QUE1QnJCOzs7OztHQUtHO0FBQ0gsTUFBTSxjQUFjLEdBQUcsS0FBSyxFQUMxQixLQUFhLEVBQ2IsSUFBcUUsRUFDcEMsRUFBRTtJQUNuQyxJQUFJLENBQUMseUJBQU07UUFBRSxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsbUJBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUV6RCxNQUFNLFFBQVEsR0FBRyxNQUFNLHlCQUFNLENBQUMsZUFBZSxDQUFDO1FBQzVDLE1BQU0sRUFBRSxlQUFPLENBQUMsZUFBZTtRQUMvQixNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO0tBQ3hCLENBQUMsQ0FBQTtJQUVGLE9BQU8sUUFBa0MsQ0FBQTtBQUMzQyxDQUFDLENBQUE7QUFXQyx3Q0FBYyJ9
|
|
@@ -5,14 +5,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ready = void 0;
|
|
7
7
|
const smartapp_bridge_1 = __importDefault(require("@expressms/smartapp-bridge"));
|
|
8
|
+
const types_1 = require("../../types");
|
|
8
9
|
const index_1 = require("../index");
|
|
9
10
|
const ready = async (timeout) => {
|
|
10
11
|
var _a, _b;
|
|
11
12
|
const response = await (0, index_1.bridgeSendReady)(timeout);
|
|
12
13
|
const isLogsEnabled = (_a = response === null || response === void 0 ? void 0 : response.payload) === null || _a === void 0 ? void 0 : _a.logsEnabled;
|
|
14
|
+
if (!smartapp_bridge_1.default)
|
|
15
|
+
return Promise.reject(types_1.ERROR_CODES.NO_BRIDGE);
|
|
13
16
|
if (isLogsEnabled)
|
|
14
|
-
(_b = smartapp_bridge_1.default
|
|
17
|
+
(_b = smartapp_bridge_1.default.enableLogs) === null || _b === void 0 ? void 0 : _b.call(smartapp_bridge_1.default);
|
|
15
18
|
return response;
|
|
16
19
|
};
|
|
17
20
|
exports.ready = ready;
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2xvZ2dpbmcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsaUZBQStDO0FBQy9DLHVDQUE2RDtBQUM3RCxvQ0FBMEM7QUFFMUMsTUFBTSxLQUFLLEdBQUcsS0FBSyxFQUFFLE9BQWdCLEVBQUUsRUFBRTs7SUFDdkMsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFBLHVCQUFlLEVBQUMsT0FBTyxDQUF1QixDQUFBO0lBQ3JFLE1BQU0sYUFBYSxHQUFHLE1BQUEsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLE9BQU8sMENBQUUsV0FBVyxDQUFBO0lBRXBELElBQUksQ0FBQyx5QkFBTTtRQUFFLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxtQkFBVyxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBRXpELElBQUksYUFBYTtRQUFFLE1BQUEseUJBQU0sQ0FBQyxVQUFVLHlFQUFJLENBQUE7SUFFeEMsT0FBTyxRQUFRLENBQUE7QUFDakIsQ0FBQyxDQUFBO0FBR0Msc0JBQUsifQ==
|
|
@@ -18,11 +18,23 @@ export declare enum METHODS {
|
|
|
18
18
|
REQUEST_LOCATION = "request_location",
|
|
19
19
|
REQUEST_SELF_PROFILE = "request_self_profile",
|
|
20
20
|
CLOSE_SMART_APP = "close_smart_app",
|
|
21
|
-
OPEN_FILE = "open_file"
|
|
21
|
+
OPEN_FILE = "open_file",
|
|
22
|
+
SUBSCRIBE_CLIENT_EVENTS = "subscribe_client_events",
|
|
23
|
+
UNSUBSCRIBE_CLIENT_EVENTS = "unsubscribe_client_events",
|
|
24
|
+
GET_CONNECTION_STATUS = "get_connection_status",
|
|
25
|
+
CREATE_DEEPLINK = "create_deeplink"
|
|
26
|
+
}
|
|
27
|
+
export declare enum STATUS {
|
|
28
|
+
SUCCESS = "success",
|
|
29
|
+
ERROR = "error"
|
|
30
|
+
}
|
|
31
|
+
export declare enum ERROR_CODES {
|
|
32
|
+
NO_BRIDGE = "no_bridge",
|
|
33
|
+
SUBSCRIPTION_NOT_FOUND = "subscription_not_found"
|
|
22
34
|
}
|
|
23
35
|
export type ReadyEventResponse = ({
|
|
24
36
|
ref: string;
|
|
25
|
-
status:
|
|
37
|
+
status: STATUS.SUCCESS;
|
|
26
38
|
payload: {
|
|
27
39
|
logsEnabled?: boolean;
|
|
28
40
|
isMain?: boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.METHODS = void 0;
|
|
3
|
+
exports.ERROR_CODES = exports.STATUS = exports.METHODS = void 0;
|
|
4
4
|
var METHODS;
|
|
5
5
|
(function (METHODS) {
|
|
6
6
|
METHODS["READY"] = "ready";
|
|
@@ -23,5 +23,19 @@ var METHODS;
|
|
|
23
23
|
METHODS["REQUEST_SELF_PROFILE"] = "request_self_profile";
|
|
24
24
|
METHODS["CLOSE_SMART_APP"] = "close_smart_app";
|
|
25
25
|
METHODS["OPEN_FILE"] = "open_file";
|
|
26
|
+
METHODS["SUBSCRIBE_CLIENT_EVENTS"] = "subscribe_client_events";
|
|
27
|
+
METHODS["UNSUBSCRIBE_CLIENT_EVENTS"] = "unsubscribe_client_events";
|
|
28
|
+
METHODS["GET_CONNECTION_STATUS"] = "get_connection_status";
|
|
29
|
+
METHODS["CREATE_DEEPLINK"] = "create_deeplink";
|
|
26
30
|
})(METHODS = exports.METHODS || (exports.METHODS = {}));
|
|
27
|
-
|
|
31
|
+
var STATUS;
|
|
32
|
+
(function (STATUS) {
|
|
33
|
+
STATUS["SUCCESS"] = "success";
|
|
34
|
+
STATUS["ERROR"] = "error";
|
|
35
|
+
})(STATUS = exports.STATUS || (exports.STATUS = {}));
|
|
36
|
+
var ERROR_CODES;
|
|
37
|
+
(function (ERROR_CODES) {
|
|
38
|
+
ERROR_CODES["NO_BRIDGE"] = "no_bridge";
|
|
39
|
+
ERROR_CODES["SUBSCRIPTION_NOT_FOUND"] = "subscription_not_found";
|
|
40
|
+
})(ERROR_CODES = exports.ERROR_CODES || (exports.ERROR_CODES = {}));
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJpZGdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3R5cGVzL2JyaWRnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFZLE9BeUJYO0FBekJELFdBQVksT0FBTztJQUNqQiwwQkFBZSxDQUFBO0lBQ2YsOENBQW1DLENBQUE7SUFDbkMsd0NBQTZCLENBQUE7SUFDN0Isd0NBQTZCLENBQUE7SUFDN0Isc0NBQTJCLENBQUE7SUFDM0Isc0NBQTJCLENBQUE7SUFDM0Isd0RBQTZDLENBQUE7SUFDN0Msd0NBQTZCLENBQUE7SUFDN0Isd0NBQTZCLENBQUE7SUFDN0IsNENBQWlDLENBQUE7SUFDakMsd0RBQTZDLENBQUE7SUFDN0Msa0NBQXVCLENBQUE7SUFDdkIsb0VBQXlELENBQUE7SUFDekQsZ0RBQXFDLENBQUE7SUFDckMsOENBQW1DLENBQUE7SUFDbkMsa0RBQXVDLENBQUE7SUFDdkMsZ0RBQXFDLENBQUE7SUFDckMsd0RBQTZDLENBQUE7SUFDN0MsOENBQW1DLENBQUE7SUFDbkMsa0NBQXVCLENBQUE7SUFDdkIsOERBQW1ELENBQUE7SUFDbkQsa0VBQXVELENBQUE7SUFDdkQsMERBQStDLENBQUE7SUFDL0MsOENBQW1DLENBQUE7QUFDckMsQ0FBQyxFQXpCVyxPQUFPLEdBQVAsZUFBTyxLQUFQLGVBQU8sUUF5QmxCO0FBRUQsSUFBWSxNQUdYO0FBSEQsV0FBWSxNQUFNO0lBQ2hCLDZCQUFtQixDQUFBO0lBQ25CLHlCQUFlLENBQUE7QUFDakIsQ0FBQyxFQUhXLE1BQU0sR0FBTixjQUFNLEtBQU4sY0FBTSxRQUdqQjtBQUVELElBQVksV0FHWDtBQUhELFdBQVksV0FBVztJQUNyQixzQ0FBdUIsQ0FBQTtJQUN2QixnRUFBaUQsQ0FBQTtBQUNuRCxDQUFDLEVBSFcsV0FBVyxHQUFYLG1CQUFXLEtBQVgsbUJBQVcsUUFHdEIifQ==
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare enum SubscriptionEventType {
|
|
2
|
+
CONNECTION_STATUS = "connection_status"
|
|
3
|
+
}
|
|
4
|
+
export type GetConnectionStatusResponse = ({
|
|
5
|
+
ref: string;
|
|
6
|
+
payload: {
|
|
7
|
+
connectionStatus: "connected" | "disconnected";
|
|
8
|
+
};
|
|
9
|
+
});
|
|
10
|
+
export type CreateDeeplinkResponse = ({
|
|
11
|
+
ref: string;
|
|
12
|
+
payload: {
|
|
13
|
+
status: 'error' | 'success';
|
|
14
|
+
errorCode?: string;
|
|
15
|
+
data?: {
|
|
16
|
+
deeplink: string;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
});
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SubscriptionEventType = void 0;
|
|
4
|
+
var SubscriptionEventType;
|
|
5
|
+
(function (SubscriptionEventType) {
|
|
6
|
+
SubscriptionEventType["CONNECTION_STATUS"] = "connection_status";
|
|
7
|
+
})(SubscriptionEventType = exports.SubscriptionEventType || (exports.SubscriptionEventType = {}));
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3R5cGVzL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFZLHFCQUVYO0FBRkQsV0FBWSxxQkFBcUI7SUFDL0IsZ0VBQXVDLENBQUE7QUFDekMsQ0FBQyxFQUZXLHFCQUFxQixHQUFyQiw2QkFBcUIsS0FBckIsNkJBQXFCLFFBRWhDIn0=
|
|
@@ -16,4 +16,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./bridge"), exports);
|
|
18
18
|
__exportStar(require("./routing"), exports);
|
|
19
|
-
|
|
19
|
+
__exportStar(require("./contacts"), exports);
|
|
20
|
+
__exportStar(require("./client"), exports);
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUF3QjtBQUN4Qiw0Q0FBeUI7QUFDekIsNkNBQTBCO0FBQzFCLDJDQUF3QiJ9
|
package/build/module/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import Bridge from '@expressms/smartapp-bridge';
|
|
2
|
-
import { getChats, openClientSettings, openFile, openGroupChat, requestLocation, searchCorporatePhonebook, sendBotCommand } from './lib/client';
|
|
2
|
+
import { createDeeplink, getChats, getConnectionStatus, openClientSettings, openFile, openGroupChat, requestLocation, searchCorporatePhonebook, sendBotCommand, subscribeClientEvents, unsubscribeClientEvents } from './lib/client';
|
|
3
3
|
import { addContact, createPersonalChat, getContact, openContactCard, requestSelfProfile, sendMessage } from './lib/contacts';
|
|
4
4
|
import { useQuery } from './lib/helpers/helpers';
|
|
5
5
|
import { ready } from './lib/logging';
|
|
6
6
|
import { onNotification } from './lib/notification';
|
|
7
7
|
import { closeSmartApp, exitSmartAppToCatalog, onBackPressed, onMoveToRoot, openSmartApp, routingChanged } from './lib/routing';
|
|
8
|
-
export { Bridge, ready, routingChanged, onBackPressed, addContact, getContact, createPersonalChat, onNotification, sendMessage, openSmartApp, openFile, exitSmartAppToCatalog, useQuery, openClientSettings, getChats, searchCorporatePhonebook, sendBotCommand, openGroupChat, onMoveToRoot, requestLocation, openContactCard, requestSelfProfile, closeSmartApp, };
|
|
8
|
+
export { Bridge, ready, routingChanged, onBackPressed, addContact, getContact, createPersonalChat, onNotification, sendMessage, openSmartApp, openFile, exitSmartAppToCatalog, useQuery, openClientSettings, getChats, searchCorporatePhonebook, sendBotCommand, openGroupChat, onMoveToRoot, requestLocation, openContactCard, requestSelfProfile, closeSmartApp, getConnectionStatus, subscribeClientEvents, unsubscribeClientEvents, createDeeplink, };
|
package/build/module/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import Bridge from '@expressms/smartapp-bridge';
|
|
2
|
-
import { getChats, openClientSettings, openFile, openGroupChat, requestLocation, searchCorporatePhonebook, sendBotCommand, } from './lib/client';
|
|
2
|
+
import { createDeeplink, getChats, getConnectionStatus, openClientSettings, openFile, openGroupChat, requestLocation, searchCorporatePhonebook, sendBotCommand, subscribeClientEvents, unsubscribeClientEvents, } from './lib/client';
|
|
3
3
|
import { addContact, createPersonalChat, getContact, openContactCard, requestSelfProfile, sendMessage, } from './lib/contacts';
|
|
4
4
|
import { useQuery } from './lib/helpers/helpers';
|
|
5
5
|
import { ready } from './lib/logging';
|
|
6
6
|
import { onNotification } from './lib/notification';
|
|
7
7
|
import { closeSmartApp, exitSmartAppToCatalog, onBackPressed, onMoveToRoot, openSmartApp, routingChanged, } from './lib/routing';
|
|
8
|
-
export { Bridge, ready, routingChanged, onBackPressed, addContact, getContact, createPersonalChat, onNotification, sendMessage, openSmartApp, openFile, exitSmartAppToCatalog, useQuery, openClientSettings, getChats, searchCorporatePhonebook, sendBotCommand, openGroupChat, onMoveToRoot, requestLocation, openContactCard, requestSelfProfile, closeSmartApp, };
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
export { Bridge, ready, routingChanged, onBackPressed, addContact, getContact, createPersonalChat, onNotification, sendMessage, openSmartApp, openFile, exitSmartAppToCatalog, useQuery, openClientSettings, getChats, searchCorporatePhonebook, sendBotCommand, openGroupChat, onMoveToRoot, requestLocation, openContactCard, requestSelfProfile, closeSmartApp, getConnectionStatus, subscribeClientEvents, unsubscribeClientEvents, createDeeplink, };
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sNEJBQTRCLENBQUE7QUFDL0MsT0FBTyxFQUNMLGNBQWMsRUFDZCxRQUFRLEVBQ1IsbUJBQW1CLEVBQ25CLGtCQUFrQixFQUNsQixRQUFRLEVBQ1IsYUFBYSxFQUNiLGVBQWUsRUFDZix3QkFBd0IsRUFDeEIsY0FBYyxFQUNkLHFCQUFxQixFQUNyQix1QkFBdUIsR0FDeEIsTUFBTSxjQUFjLENBQUE7QUFDckIsT0FBTyxFQUNMLFVBQVUsRUFDVixrQkFBa0IsRUFDbEIsVUFBVSxFQUNWLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsV0FBVyxHQUNaLE1BQU0sZ0JBQWdCLENBQUE7QUFDdkIsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLHVCQUF1QixDQUFBO0FBQzlDLE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUE7QUFDbkMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG9CQUFvQixDQUFBO0FBQ2pELE9BQU8sRUFDTCxhQUFhLEVBQ2IscUJBQXFCLEVBQ3JCLGFBQWEsRUFDYixZQUFZLEVBQ1osWUFBWSxFQUNaLGNBQWMsR0FDZixNQUFNLGVBQWUsQ0FBQTtBQUV0QixPQUFPLEVBQ0wsTUFBTSxFQUNOLEtBQUssRUFDTCxjQUFjLEVBQ2QsYUFBYSxFQUNiLFVBQVUsRUFDVixVQUFVLEVBQ1Ysa0JBQWtCLEVBQ2xCLGNBQWMsRUFDZCxXQUFXLEVBQ1gsWUFBWSxFQUNaLFFBQVEsRUFDUixxQkFBcUIsRUFDckIsUUFBUSxFQUNSLGtCQUFrQixFQUNsQixRQUFRLEVBQ1Isd0JBQXdCLEVBQ3hCLGNBQWMsRUFDZCxhQUFhLEVBQ2IsWUFBWSxFQUNaLGVBQWUsRUFDZixlQUFlLEVBQ2Ysa0JBQWtCLEVBQ2xCLGFBQWEsRUFDYixtQkFBbUIsRUFDbkIscUJBQXFCLEVBQ3JCLHVCQUF1QixFQUN2QixjQUFjLEdBQ2YsQ0FBQSJ9
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { SubscriptionEventType } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Subscribe to special client events
|
|
4
|
+
* @param eventType Event from SubscriptionEventType enum to be subscribed
|
|
5
|
+
* @param callback Function to be handled when event is coming
|
|
6
|
+
* @returns Promise that'll be fullfilled on successful subscription, otherwise rejected with reason
|
|
7
|
+
*/
|
|
8
|
+
declare const subscribeClientEvents: (eventType: SubscriptionEventType, callback: Function) => Promise<{
|
|
9
|
+
status: string;
|
|
10
|
+
}>;
|
|
11
|
+
/**
|
|
12
|
+
* Unsubscribe from previously subscribed client events
|
|
13
|
+
* @param eventType Event from SubscriptionEventType enum to be unsubscribed
|
|
14
|
+
* @param callback Function to be unsibscribed
|
|
15
|
+
* @returns Promise that'll be fullfilled on successful unsubscription, otherwise rejected with reason
|
|
16
|
+
*/
|
|
17
|
+
declare const unsubscribeClientEvents: (eventType: SubscriptionEventType, callback: Function) => Promise<{
|
|
18
|
+
status: string;
|
|
19
|
+
}>;
|
|
20
|
+
export { subscribeClientEvents, unsubscribeClientEvents };
|