@wildix/xbees-connect 1.2.13 → 1.2.15
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/dist-cjs/package.json +1 -4
- package/dist-cjs/src/Client.js +26 -9
- package/dist-cjs/src/enums/index.js +1 -0
- package/dist-cjs/types/Platform.js +7 -0
- package/dist-cjs/types/XBeesUser.js +2 -0
- package/dist-cjs/types/index.js +3 -0
- package/dist-es/package.json +1 -4
- package/dist-es/src/Client.js +26 -9
- package/dist-es/src/enums/index.js +1 -0
- package/dist-es/types/Platform.js +6 -1
- package/dist-es/types/XBeesUser.js +1 -0
- package/dist-es/types/index.js +1 -1
- package/dist-types/src/Client.d.ts +7 -3
- package/dist-types/src/enums/index.d.ts +2 -1
- package/dist-types/types/Client.d.ts +6 -1
- package/dist-types/types/Event.d.ts +7 -1
- package/dist-types/types/Platform.d.ts +5 -1
- package/dist-types/types/XBeesUser.d.ts +6 -0
- package/dist-types/types/index.d.ts +2 -1
- package/package.json +2 -5
- package/dist-cjs/src/utils/getPbxDomainFromJwt.js +0 -18
- package/dist-es/src/utils/getPbxDomainFromJwt.js +0 -14
- package/dist-types/src/utils/getPbxDomainFromJwt.d.ts +0 -1
package/dist-cjs/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wildix/xbees-connect",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.15",
|
|
4
4
|
"description": "This library provides easy communication between x-bees and integrated web applications",
|
|
5
5
|
"author": "dimitri.chernykh <dimitri.chernykh@wildix.com>",
|
|
6
6
|
"homepage": "",
|
|
@@ -42,8 +42,5 @@
|
|
|
42
42
|
},
|
|
43
43
|
"engines": {
|
|
44
44
|
"node": ">=16"
|
|
45
|
-
},
|
|
46
|
-
"dependencies": {
|
|
47
|
-
"jwt-decode": "^4.0.0"
|
|
48
45
|
}
|
|
49
46
|
}
|
package/dist-cjs/src/Client.js
CHANGED
|
@@ -5,13 +5,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.Client = void 0;
|
|
7
7
|
const package_json_1 = __importDefault(require("../package.json"));
|
|
8
|
+
const types_1 = require("../types");
|
|
8
9
|
const enums_1 = require("./enums");
|
|
9
10
|
const LocalStorageManager_1 = __importDefault(require("./helpers/LocalStorageManager"));
|
|
10
11
|
const MessageListener_1 = require("./helpers/MessageListener");
|
|
11
12
|
const PostMessageControllerNative_1 = __importDefault(require("./helpers/PostMessageControllerNative"));
|
|
12
13
|
const PostMessageControllerWeb_1 = __importDefault(require("./helpers/PostMessageControllerWeb"));
|
|
13
14
|
const TechnicalSupport_1 = __importDefault(require("./helpers/TechnicalSupport"));
|
|
14
|
-
const getPbxDomainFromJwt_1 = require("./utils/getPbxDomainFromJwt");
|
|
15
15
|
const getUrlSearchParamsMap_1 = require("./utils/url/getUrlSearchParamsMap");
|
|
16
16
|
/**
|
|
17
17
|
* Client provides functionality of communication between xBees and integrated web applications via iFrame or ReactNative WebView
|
|
@@ -34,9 +34,6 @@ class Client {
|
|
|
34
34
|
console.error('Error on init rendering widget:', error);
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
|
-
else {
|
|
38
|
-
void this.getInstance().ready();
|
|
39
|
-
}
|
|
40
37
|
}
|
|
41
38
|
worker;
|
|
42
39
|
listeners = [];
|
|
@@ -44,6 +41,8 @@ class Client {
|
|
|
44
41
|
userToken = '';
|
|
45
42
|
pbxDomain = '';
|
|
46
43
|
visible = false;
|
|
44
|
+
user = null;
|
|
45
|
+
userExtension = null;
|
|
47
46
|
userEmail;
|
|
48
47
|
referrer;
|
|
49
48
|
needAuthorize;
|
|
@@ -51,13 +50,11 @@ class Client {
|
|
|
51
50
|
iframeId;
|
|
52
51
|
variant = null;
|
|
53
52
|
localStorageManager = LocalStorageManager_1.default.getInstance();
|
|
54
|
-
userExtension;
|
|
55
53
|
constructor() {
|
|
56
54
|
const params = (0, getUrlSearchParamsMap_1.getUrlSearchParamsMap)();
|
|
57
55
|
this.iframeId = params.get(enums_1.UrlParams.ID);
|
|
58
56
|
this.variant = params.get(enums_1.UrlParams.VARIANT);
|
|
59
57
|
this.userEmail = params.get(enums_1.UrlParams.USER);
|
|
60
|
-
this.userExtension = params.get(enums_1.UrlParams.EXTENSION);
|
|
61
58
|
this.referrer = params.get(enums_1.UrlParams.REFERRER);
|
|
62
59
|
this.needAuthorize = params.has(enums_1.UrlParams.AUTHORIZE);
|
|
63
60
|
// @ts-expect-error window.ReactNativeWebView will be provided by ReactNative WebView
|
|
@@ -65,7 +62,6 @@ class Client {
|
|
|
65
62
|
this.worker = this.isParentReactNativeWebView ? new PostMessageControllerNative_1.default() : new PostMessageControllerWeb_1.default();
|
|
66
63
|
this.addEventListener(enums_1.EventType.PBX_TOKEN, (token) => {
|
|
67
64
|
this.userToken = token;
|
|
68
|
-
this.pbxDomain = (0, getPbxDomainFromJwt_1.getPbxDomainFromJwt)(token);
|
|
69
65
|
});
|
|
70
66
|
this.addEventListener(enums_1.EventType.VISIBILITY, (isActive) => (this.visible = isActive));
|
|
71
67
|
}
|
|
@@ -124,12 +120,33 @@ class Client {
|
|
|
124
120
|
this.saveToStorage('sendedUsageAnalyticsDate', today);
|
|
125
121
|
}
|
|
126
122
|
}
|
|
127
|
-
ready(
|
|
123
|
+
ready(props = types_1.SupportedPlatformVariant.ALL) {
|
|
124
|
+
const payload = typeof props === 'string' ? { version: this.version(), platform: props } : { version: this.version(), ...props };
|
|
125
|
+
this.getXBeesUser();
|
|
128
126
|
return this.sendAsync({
|
|
129
127
|
type: enums_1.ClientEventType.READY,
|
|
130
|
-
payload
|
|
128
|
+
payload,
|
|
131
129
|
});
|
|
132
130
|
}
|
|
131
|
+
async requestXbeesUser() {
|
|
132
|
+
const responseMessageUser = await this.sendAsync({ type: enums_1.ClientEventType.USER });
|
|
133
|
+
if (responseMessageUser.payload) {
|
|
134
|
+
const { extension, domain } = responseMessageUser.payload;
|
|
135
|
+
this.user = { ...responseMessageUser.payload, email: this.getUserEmail() };
|
|
136
|
+
if (extension) {
|
|
137
|
+
this.userExtension = extension;
|
|
138
|
+
}
|
|
139
|
+
if (domain) {
|
|
140
|
+
this.pbxDomain = domain;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
getXBeesUser() {
|
|
145
|
+
if (!this.user) {
|
|
146
|
+
this.requestXbeesUser();
|
|
147
|
+
}
|
|
148
|
+
return this.user;
|
|
149
|
+
}
|
|
133
150
|
version() {
|
|
134
151
|
return package_json_1.default.version;
|
|
135
152
|
}
|
|
@@ -39,6 +39,7 @@ var ClientEventType;
|
|
|
39
39
|
ClientEventType["LOGOUT_IS_SUPPORTED"] = "xBeesLogoutIsSupported";
|
|
40
40
|
ClientEventType["SEND_ANALYTICS"] = "xBeesSendAnalytics";
|
|
41
41
|
ClientEventType["SEND_TECHNICAL_SUPPORT_INFORMATION"] = "xBeesSendTechInfo";
|
|
42
|
+
ClientEventType["USER"] = "xBeesUser";
|
|
42
43
|
})(ClientEventType || (exports.ClientEventType = ClientEventType = {}));
|
|
43
44
|
var UrlParams;
|
|
44
45
|
(function (UrlParams) {
|
|
@@ -1,2 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SupportedPlatformVariant = void 0;
|
|
4
|
+
var SupportedPlatformVariant;
|
|
5
|
+
(function (SupportedPlatformVariant) {
|
|
6
|
+
SupportedPlatformVariant["ALL"] = "all";
|
|
7
|
+
SupportedPlatformVariant["MOBILE"] = "mobile";
|
|
8
|
+
SupportedPlatformVariant["WEB"] = "web";
|
|
9
|
+
})(SupportedPlatformVariant || (exports.SupportedPlatformVariant = SupportedPlatformVariant = {}));
|
package/dist-cjs/types/index.js
CHANGED
|
@@ -1,2 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SupportedPlatformVariant = void 0;
|
|
4
|
+
var Platform_1 = require("./Platform");
|
|
5
|
+
Object.defineProperty(exports, "SupportedPlatformVariant", { enumerable: true, get: function () { return Platform_1.SupportedPlatformVariant; } });
|
package/dist-es/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wildix/xbees-connect",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.15",
|
|
4
4
|
"description": "This library provides easy communication between x-bees and integrated web applications",
|
|
5
5
|
"author": "dimitri.chernykh <dimitri.chernykh@wildix.com>",
|
|
6
6
|
"homepage": "",
|
|
@@ -42,8 +42,5 @@
|
|
|
42
42
|
},
|
|
43
43
|
"engines": {
|
|
44
44
|
"node": ">=16"
|
|
45
|
-
},
|
|
46
|
-
"dependencies": {
|
|
47
|
-
"jwt-decode": "^4.0.0"
|
|
48
45
|
}
|
|
49
46
|
}
|
package/dist-es/src/Client.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import packageJson from '../package.json';
|
|
2
|
+
import { SupportedPlatformVariant, } from '../types';
|
|
2
3
|
import { ClientEventType, EventType, UrlParams } from './enums';
|
|
3
4
|
import LocalStorageManager from './helpers/LocalStorageManager';
|
|
4
5
|
import { MessageListener } from './helpers/MessageListener';
|
|
5
6
|
import PostMessageControllerNative from './helpers/PostMessageControllerNative';
|
|
6
7
|
import PostMessageControllerWeb from './helpers/PostMessageControllerWeb';
|
|
7
8
|
import TechnicalSupport from './helpers/TechnicalSupport';
|
|
8
|
-
import { getPbxDomainFromJwt } from './utils/getPbxDomainFromJwt';
|
|
9
9
|
import { getUrlSearchParamsMap } from './utils/url/getUrlSearchParamsMap';
|
|
10
10
|
/**
|
|
11
11
|
* Client provides functionality of communication between xBees and integrated web applications via iFrame or ReactNative WebView
|
|
@@ -28,9 +28,6 @@ export class Client {
|
|
|
28
28
|
console.error('Error on init rendering widget:', error);
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
|
-
else {
|
|
32
|
-
void this.getInstance().ready();
|
|
33
|
-
}
|
|
34
31
|
}
|
|
35
32
|
worker;
|
|
36
33
|
listeners = [];
|
|
@@ -38,6 +35,8 @@ export class Client {
|
|
|
38
35
|
userToken = '';
|
|
39
36
|
pbxDomain = '';
|
|
40
37
|
visible = false;
|
|
38
|
+
user = null;
|
|
39
|
+
userExtension = null;
|
|
41
40
|
userEmail;
|
|
42
41
|
referrer;
|
|
43
42
|
needAuthorize;
|
|
@@ -45,13 +44,11 @@ export class Client {
|
|
|
45
44
|
iframeId;
|
|
46
45
|
variant = null;
|
|
47
46
|
localStorageManager = LocalStorageManager.getInstance();
|
|
48
|
-
userExtension;
|
|
49
47
|
constructor() {
|
|
50
48
|
const params = getUrlSearchParamsMap();
|
|
51
49
|
this.iframeId = params.get(UrlParams.ID);
|
|
52
50
|
this.variant = params.get(UrlParams.VARIANT);
|
|
53
51
|
this.userEmail = params.get(UrlParams.USER);
|
|
54
|
-
this.userExtension = params.get(UrlParams.EXTENSION);
|
|
55
52
|
this.referrer = params.get(UrlParams.REFERRER);
|
|
56
53
|
this.needAuthorize = params.has(UrlParams.AUTHORIZE);
|
|
57
54
|
// @ts-expect-error window.ReactNativeWebView will be provided by ReactNative WebView
|
|
@@ -59,7 +56,6 @@ export class Client {
|
|
|
59
56
|
this.worker = this.isParentReactNativeWebView ? new PostMessageControllerNative() : new PostMessageControllerWeb();
|
|
60
57
|
this.addEventListener(EventType.PBX_TOKEN, (token) => {
|
|
61
58
|
this.userToken = token;
|
|
62
|
-
this.pbxDomain = getPbxDomainFromJwt(token);
|
|
63
59
|
});
|
|
64
60
|
this.addEventListener(EventType.VISIBILITY, (isActive) => (this.visible = isActive));
|
|
65
61
|
}
|
|
@@ -118,12 +114,33 @@ export class Client {
|
|
|
118
114
|
this.saveToStorage('sendedUsageAnalyticsDate', today);
|
|
119
115
|
}
|
|
120
116
|
}
|
|
121
|
-
ready(
|
|
117
|
+
ready(props = SupportedPlatformVariant.ALL) {
|
|
118
|
+
const payload = typeof props === 'string' ? { version: this.version(), platform: props } : { version: this.version(), ...props };
|
|
119
|
+
this.getXBeesUser();
|
|
122
120
|
return this.sendAsync({
|
|
123
121
|
type: ClientEventType.READY,
|
|
124
|
-
payload
|
|
122
|
+
payload,
|
|
125
123
|
});
|
|
126
124
|
}
|
|
125
|
+
async requestXbeesUser() {
|
|
126
|
+
const responseMessageUser = await this.sendAsync({ type: ClientEventType.USER });
|
|
127
|
+
if (responseMessageUser.payload) {
|
|
128
|
+
const { extension, domain } = responseMessageUser.payload;
|
|
129
|
+
this.user = { ...responseMessageUser.payload, email: this.getUserEmail() };
|
|
130
|
+
if (extension) {
|
|
131
|
+
this.userExtension = extension;
|
|
132
|
+
}
|
|
133
|
+
if (domain) {
|
|
134
|
+
this.pbxDomain = domain;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
getXBeesUser() {
|
|
139
|
+
if (!this.user) {
|
|
140
|
+
this.requestXbeesUser();
|
|
141
|
+
}
|
|
142
|
+
return this.user;
|
|
143
|
+
}
|
|
127
144
|
version() {
|
|
128
145
|
return packageJson.version;
|
|
129
146
|
}
|
|
@@ -36,6 +36,7 @@ export var ClientEventType;
|
|
|
36
36
|
ClientEventType["LOGOUT_IS_SUPPORTED"] = "xBeesLogoutIsSupported";
|
|
37
37
|
ClientEventType["SEND_ANALYTICS"] = "xBeesSendAnalytics";
|
|
38
38
|
ClientEventType["SEND_TECHNICAL_SUPPORT_INFORMATION"] = "xBeesSendTechInfo";
|
|
39
|
+
ClientEventType["USER"] = "xBeesUser";
|
|
39
40
|
})(ClientEventType || (ClientEventType = {}));
|
|
40
41
|
export var UrlParams;
|
|
41
42
|
(function (UrlParams) {
|
|
@@ -1 +1,6 @@
|
|
|
1
|
-
export
|
|
1
|
+
export var SupportedPlatformVariant;
|
|
2
|
+
(function (SupportedPlatformVariant) {
|
|
3
|
+
SupportedPlatformVariant["ALL"] = "all";
|
|
4
|
+
SupportedPlatformVariant["MOBILE"] = "mobile";
|
|
5
|
+
SupportedPlatformVariant["WEB"] = "web";
|
|
6
|
+
})(SupportedPlatformVariant || (SupportedPlatformVariant = {}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist-es/types/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export { SupportedPlatformVariant } from './Platform';
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Callback, ConnectClient, Contact, ContactQuery, IPayloadViewPort, LookupAndMatchContactsResolver, Message, Reject, RemoveEventListener, ResponseMessage, StorageEventCallback, SuggestContactsResolver, SupportedPlatformVariant, ToastSeverity } from '../types';
|
|
1
|
+
import { Callback, ConnectClient, Contact, ContactQuery, IPayloadViewPort, LookupAndMatchContactsResolver, Message, Reject, RemoveEventListener, ResponseMessage, StorageEventCallback, SuggestContactsResolver, SupportedPlatformVariant, ToastSeverity, XBeesUser } from '../types';
|
|
2
|
+
import { ReadyExtendedProps } from '../types/Event';
|
|
2
3
|
import { ClientEventType, EventType } from './enums';
|
|
3
4
|
import TechnicalSupport from './helpers/TechnicalSupport';
|
|
4
5
|
/**
|
|
@@ -15,6 +16,8 @@ export declare class Client implements ConnectClient {
|
|
|
15
16
|
private userToken;
|
|
16
17
|
private pbxDomain;
|
|
17
18
|
private visible;
|
|
19
|
+
private user;
|
|
20
|
+
private userExtension;
|
|
18
21
|
private readonly userEmail;
|
|
19
22
|
private readonly referrer;
|
|
20
23
|
private readonly needAuthorize;
|
|
@@ -22,14 +25,15 @@ export declare class Client implements ConnectClient {
|
|
|
22
25
|
private readonly iframeId;
|
|
23
26
|
private readonly variant;
|
|
24
27
|
private readonly localStorageManager;
|
|
25
|
-
private readonly userExtension;
|
|
26
28
|
constructor();
|
|
27
29
|
private sendAsync;
|
|
28
30
|
private sendAsyncErrorSafe;
|
|
29
31
|
private parseMessage;
|
|
30
32
|
private onMessage;
|
|
31
33
|
private sendDailyIntegrationUsageAnalytics;
|
|
32
|
-
ready(
|
|
34
|
+
ready(props?: SupportedPlatformVariant | ReadyExtendedProps | undefined): Promise<ResponseMessage>;
|
|
35
|
+
private requestXbeesUser;
|
|
36
|
+
getXBeesUser(): XBeesUser | null;
|
|
33
37
|
version(): string;
|
|
34
38
|
isPlatformNative(): boolean;
|
|
35
39
|
isPlatformWeb(): boolean;
|
|
@@ -33,7 +33,8 @@ export declare enum ClientEventType {
|
|
|
33
33
|
CONTACT_LOOK_UP_AND_MATCH_IS_SUPPORTED = "xBeesContactLookupAndMatchIsSupported",
|
|
34
34
|
LOGOUT_IS_SUPPORTED = "xBeesLogoutIsSupported",
|
|
35
35
|
SEND_ANALYTICS = "xBeesSendAnalytics",
|
|
36
|
-
SEND_TECHNICAL_SUPPORT_INFORMATION = "xBeesSendTechInfo"
|
|
36
|
+
SEND_TECHNICAL_SUPPORT_INFORMATION = "xBeesSendTechInfo",
|
|
37
|
+
USER = "xBeesUser"
|
|
37
38
|
}
|
|
38
39
|
export declare enum UrlParams {
|
|
39
40
|
TOKEN = "t",
|
|
@@ -2,6 +2,7 @@ import { ClientEventType, EventType } from '../src/enums';
|
|
|
2
2
|
import TechnicalSupport from '../src/helpers/TechnicalSupport';
|
|
3
3
|
import { Callback } from './Callback';
|
|
4
4
|
import { Contact, ContactQuery } from './Contact';
|
|
5
|
+
import { ReadyExtendedProps } from './Event';
|
|
5
6
|
import { RemoveEventListener } from './Listener';
|
|
6
7
|
import { ResponseMessage } from './Message';
|
|
7
8
|
import { IPayloadViewPort } from './Payload';
|
|
@@ -9,16 +10,20 @@ import { SupportedPlatformVariant } from './Platform';
|
|
|
9
10
|
import { LookupAndMatchContactsResolver, Reject, SuggestContactsResolver } from './Resolver';
|
|
10
11
|
import { StorageEventCallback } from './Storage';
|
|
11
12
|
import { ToastSeverity } from './Toast';
|
|
13
|
+
import { XBeesUser } from './XBeesUser';
|
|
12
14
|
export interface ConnectClient {
|
|
13
15
|
/**
|
|
14
16
|
* Sends to x-bees signal that iFrame is ready to be shown. iFrame should send it when the application starts and ready */
|
|
15
|
-
ready: (
|
|
17
|
+
ready: (props?: SupportedPlatformVariant | ReadyExtendedProps) => Promise<ResponseMessage>;
|
|
16
18
|
/**
|
|
17
19
|
* Retrieves current pbx token */
|
|
18
20
|
getUserPbxToken: () => string;
|
|
19
21
|
/**
|
|
20
22
|
* Retrieves current user's email */
|
|
21
23
|
getUserEmail: () => string;
|
|
24
|
+
/**
|
|
25
|
+
* Retrieves current user's data */
|
|
26
|
+
getXBeesUser: () => XBeesUser | null;
|
|
22
27
|
/**
|
|
23
28
|
* Retrieves current pbx domain */
|
|
24
29
|
getPbxDomain: () => string;
|
|
@@ -2,7 +2,9 @@ import { ClientEventType, EventType } from '../src/enums';
|
|
|
2
2
|
import { ContactQuery } from './Contact';
|
|
3
3
|
import { Message, MessageType } from './Message';
|
|
4
4
|
import { IPayloadAutoSuggestResult, IPayloadCallStart, IPayloadCallStartedInfo, IPayloadContactMatchResult, IPayloadContactMatchResultNotFound, IPayloadContactResult, IPayloadContextResult, IPayloadConversationResult, IPayloadSendAnalytics, IPayloadTechSupport, IPayloadThemeChange, IPayloadToast, IPayloadVersion, IPayloadViewPort } from './Payload';
|
|
5
|
-
|
|
5
|
+
import { SupportedPlatformVariant } from './Platform';
|
|
6
|
+
import { XBeesUser } from './XBeesUser';
|
|
7
|
+
export type EventPayload<T extends MessageType> = T extends EventType.GET_CONTACTS_AUTO_SUGGEST ? string : T extends ClientEventType.CONTACTS_AUTO_SUGGEST ? IPayloadAutoSuggestResult : T extends ClientEventType.CONTACT_LOOKUP_AND_MATCH | ClientEventType.CONTACT_CREATE_OR_UPDATE | ClientEventType.CONTACT_MATCH_UPDATE ? IPayloadContactMatchResult : T extends ClientEventType.CONTACT_LOOKUP_AND_MATCH_NOT_FOUND ? IPayloadContactMatchResultNotFound : T extends ClientEventType.CONTEXT ? IPayloadContextResult : T extends ClientEventType.CURRENT_CONTACT ? IPayloadContactResult : T extends ClientEventType.CURRENT_CONVERSATION ? IPayloadConversationResult : T extends EventType.ADD_CALL ? IPayloadCallStartedInfo : T extends ClientEventType.START_CALL ? IPayloadCallStart : T extends ClientEventType.READY ? IPayloadVersion : T extends ClientEventType.VIEW_PORT ? IPayloadViewPort : T extends ClientEventType.THEME ? IPayloadThemeChange : T extends EventType.USE_THEME ? IPayloadThemeChange : T extends ClientEventType.TOAST ? IPayloadToast : T extends ClientEventType.SEND_ANALYTICS ? IPayloadSendAnalytics : T extends ClientEventType.SEND_TECHNICAL_SUPPORT_INFORMATION ? IPayloadTechSupport : T extends EventType.PBX_TOKEN ? string : T extends ClientEventType.TOKEN ? string : T extends ClientEventType.TO_CLIPBOARD ? string : T extends EventType.GET_LOOK_UP_AND_MATCH ? ContactQuery : T extends EventType.VISIBILITY ? boolean : T extends ClientEventType.USER ? XBeesUser : never;
|
|
6
8
|
export type EventPayloadMap = {
|
|
7
9
|
[EventType.GET_CONTACTS_AUTO_SUGGEST]: string;
|
|
8
10
|
[EventType.GET_LOOK_UP_AND_MATCH]: ContactQuery;
|
|
@@ -22,3 +24,7 @@ export type EventCallbackMap = {
|
|
|
22
24
|
[EventType.REDIRECT_QUERY]: (query: EventPayloadMap[EventType.REDIRECT_QUERY]) => void;
|
|
23
25
|
};
|
|
24
26
|
export type RawMessageEvent = MessageEvent<string | Message>;
|
|
27
|
+
export type ReadyExtendedProps = {
|
|
28
|
+
templateId?: string;
|
|
29
|
+
platform?: SupportedPlatformVariant;
|
|
30
|
+
};
|
|
@@ -7,8 +7,9 @@ export type { Listener, RemoveEventListener } from './Listener';
|
|
|
7
7
|
export type { Message, MessageIFrameResponse, MessageType, ResponseMessage } from './Message';
|
|
8
8
|
export type { MessageSender } from './MessageSender';
|
|
9
9
|
export type { IPayloadAutoSuggestResult, IPayloadCallStart, IPayloadCallStartedInfo, IPayloadContactMatchResult, IPayloadContactMatchResultNotFound, IPayloadContactResult, IPayloadContextResult, IPayloadConversationResult, IPayloadSendAnalytics, IPayloadTechSupport, IPayloadThemeChange, IPayloadToast, IPayloadVersion, IPayloadViewPort, } from './Payload';
|
|
10
|
-
export
|
|
10
|
+
export { SupportedPlatformVariant } from './Platform';
|
|
11
11
|
export type { LookupAndMatchContactsResolver, Reject, SuggestContactsResolver } from './Resolver';
|
|
12
12
|
export type { StorageEventCallback } from './Storage';
|
|
13
13
|
export type { ToastSeverity } from './Toast';
|
|
14
14
|
export type { WorkVariants } from './WorkVariant';
|
|
15
|
+
export type { XBeesUser } from './XBeesUser';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wildix/xbees-connect",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.15",
|
|
4
4
|
"description": "This library provides easy communication between x-bees and integrated web applications",
|
|
5
5
|
"author": "dimitri.chernykh <dimitri.chernykh@wildix.com>",
|
|
6
6
|
"homepage": "",
|
|
@@ -43,8 +43,5 @@
|
|
|
43
43
|
"engines": {
|
|
44
44
|
"node": ">=16"
|
|
45
45
|
},
|
|
46
|
-
"
|
|
47
|
-
"jwt-decode": "^4.0.0"
|
|
48
|
-
},
|
|
49
|
-
"gitHead": "0f28736f8508d1ec0520f8f4cad83aa49546c141"
|
|
46
|
+
"gitHead": "c2fd946559ddb3cb6efce78cd93f605dc6280d38"
|
|
50
47
|
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getPbxDomainFromJwt = void 0;
|
|
4
|
-
const jwt_decode_1 = require("jwt-decode");
|
|
5
|
-
function getPbxDomainFromJwt(jwt) {
|
|
6
|
-
try {
|
|
7
|
-
if (!jwt) {
|
|
8
|
-
return '';
|
|
9
|
-
}
|
|
10
|
-
const tokenDecode = (0, jwt_decode_1.jwtDecode)(jwt);
|
|
11
|
-
return tokenDecode['custom:pbx_domain'] || '';
|
|
12
|
-
}
|
|
13
|
-
catch (error) {
|
|
14
|
-
console.error('Failed to decode JWT:', error);
|
|
15
|
-
return '';
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.getPbxDomainFromJwt = getPbxDomainFromJwt;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { jwtDecode } from 'jwt-decode';
|
|
2
|
-
export function getPbxDomainFromJwt(jwt) {
|
|
3
|
-
try {
|
|
4
|
-
if (!jwt) {
|
|
5
|
-
return '';
|
|
6
|
-
}
|
|
7
|
-
const tokenDecode = jwtDecode(jwt);
|
|
8
|
-
return tokenDecode['custom:pbx_domain'] || '';
|
|
9
|
-
}
|
|
10
|
-
catch (error) {
|
|
11
|
-
console.error('Failed to decode JWT:', error);
|
|
12
|
-
return '';
|
|
13
|
-
}
|
|
14
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function getPbxDomainFromJwt(jwt: string): string;
|