@wildix/xbees-connect 1.0.6-alpha.1 → 1.0.6-alpha.10
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-es/index.js +3 -1
- package/dist-es/package.json +1 -1
- package/dist-es/src/Client.js +1 -1
- package/dist-es/types/index.js +1 -0
- package/dist-types/index.d.ts +3 -1
- package/dist-types/src/Client.d.ts +2 -1
- package/dist-types/src/enums/index.d.ts +31 -0
- package/dist-types/src/helpers/PostMessageControllerNative.d.ts +1 -1
- package/dist-types/src/helpers/PostMessageControllerWeb.d.ts +1 -1
- package/dist-types/{src/types.d.ts → types/index.d.ts} +7 -52
- package/package.json +2 -2
- /package/dist-es/src/{types.js → enums/index.js} +0 -0
package/dist-es/index.js
CHANGED
package/dist-es/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wildix/xbees-connect",
|
|
3
|
-
"version": "1.0.6-alpha.
|
|
3
|
+
"version": "1.0.6-alpha.9",
|
|
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": "",
|
package/dist-es/src/Client.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import packageJson from '../package.json';
|
|
2
|
+
import { ClientEventType, EventType, UrlParams } from './enums';
|
|
2
3
|
import PostMessageControllerNative from './helpers/PostMessageControllerNative';
|
|
3
4
|
import PostMessageControllerWeb from './helpers/PostMessageControllerWeb';
|
|
4
|
-
import { ClientEventType, EventType, UrlParams, } from './types';
|
|
5
5
|
/**
|
|
6
6
|
* Client provides functionality of communication between xBees and integrated web applications via iFrame or ReactNative WebView
|
|
7
7
|
* integration creates na instance with new Client()
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { EventType } from '../src/enums';
|
package/dist-types/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Callback,
|
|
1
|
+
import { Callback, ConnectClient, ContactQuery, IPayloadAutoSuggestResult, IPayloadContactMatchResult, IPayloadViewPort, LookupAndMatchContactsResolver, Message, Reject, RemoveEventListener, ResponseMessage, SuggestContactsResolver } from '../types';
|
|
2
|
+
import { ClientEventType, EventType } from './enums';
|
|
2
3
|
/**
|
|
3
4
|
* Client provides functionality of communication between xBees and integrated web applications via iFrame or ReactNative WebView
|
|
4
5
|
* integration creates na instance with new Client()
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export declare enum EventType {
|
|
2
|
+
GET_CONTACTS_AUTO_SUGGEST = "xBeesGetContactsAutoSuggest",
|
|
3
|
+
GET_LOOK_UP_AND_MATCH = "xBeesGetLookUpAndMatch",
|
|
4
|
+
ADD_CALL = "xBeesAddCall",
|
|
5
|
+
TERMINATE_CALL = "xBeesTerminateCall",
|
|
6
|
+
USE_THEME = "xBeesUseTheme",
|
|
7
|
+
PBX_TOKEN = "xBeesPbxToken"
|
|
8
|
+
}
|
|
9
|
+
export declare enum ClientEventType {
|
|
10
|
+
READY = "xBeesReady",
|
|
11
|
+
CONTEXT = "xBeesContext",
|
|
12
|
+
CURRENT_CONTACT = "xBeesCurrentContact",
|
|
13
|
+
THEME_MODE = "xBeesThemeMode",
|
|
14
|
+
THEME = "xBeesTheme",
|
|
15
|
+
START_CALL = "xBeesStartCall",
|
|
16
|
+
VIEW_PORT = "xBeesViewPort",
|
|
17
|
+
REBOOT = "xBeesReboot",
|
|
18
|
+
TO_CLIPBOARD = "xBeesToClipboard",
|
|
19
|
+
NOT_AUTHORIZED = "xBeesNotAuthorized",
|
|
20
|
+
AUTHORIZED = "xBeesAuthorized",
|
|
21
|
+
CONTACTS_AUTO_SUGGEST = "xBeesContactsAutoSuggest",
|
|
22
|
+
CONTACT_LOOKUP_AND_MATCH = "xBeesContactLookupAndMatch"
|
|
23
|
+
}
|
|
24
|
+
export declare enum UrlParams {
|
|
25
|
+
TOKEN = "t",
|
|
26
|
+
ID = "i",
|
|
27
|
+
VARIANT = "v",
|
|
28
|
+
USER = "u",
|
|
29
|
+
REFERRER = "r",
|
|
30
|
+
AUTHORIZE = "a"
|
|
31
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MessageIFrameResponse, MessageType, PostMessageController, ResponseMessage } from '
|
|
1
|
+
import { MessageIFrameResponse, MessageType, PostMessageController, ResponseMessage } from '../../types';
|
|
2
2
|
export default class PostMessageControllerNative implements PostMessageController {
|
|
3
3
|
private readonly target;
|
|
4
4
|
private timeout;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MessageIFrameResponse, MessageType, PostMessageController, ResponseMessage } from '
|
|
1
|
+
import { MessageIFrameResponse, MessageType, PostMessageController, ResponseMessage } from '../../types';
|
|
2
2
|
export default class PostMessageControllerWeb implements PostMessageController {
|
|
3
3
|
private readonly target;
|
|
4
4
|
private timeout;
|
|
@@ -1,26 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
GET_CONTACTS_AUTO_SUGGEST = "xBeesGetContactsAutoSuggest",
|
|
3
|
-
GET_LOOK_UP_AND_MATCH = "xBeesGetLookUpAndMatch",
|
|
4
|
-
ADD_CALL = "xBeesAddCall",
|
|
5
|
-
TERMINATE_CALL = "xBeesTerminateCall",
|
|
6
|
-
USE_THEME = "xBeesUseTheme",
|
|
7
|
-
PBX_TOKEN = "xBeesPbxToken"
|
|
8
|
-
}
|
|
9
|
-
export declare enum ClientEventType {
|
|
10
|
-
READY = "xBeesReady",
|
|
11
|
-
CONTEXT = "xBeesContext",
|
|
12
|
-
CURRENT_CONTACT = "xBeesCurrentContact",
|
|
13
|
-
THEME_MODE = "xBeesThemeMode",
|
|
14
|
-
THEME = "xBeesTheme",
|
|
15
|
-
START_CALL = "xBeesStartCall",
|
|
16
|
-
VIEW_PORT = "xBeesViewPort",
|
|
17
|
-
REBOOT = "xBeesReboot",
|
|
18
|
-
TO_CLIPBOARD = "xBeesToClipboard",
|
|
19
|
-
NOT_AUTHORIZED = "xBeesNotAuthorized",
|
|
20
|
-
AUTHORIZED = "xBeesAuthorized",
|
|
21
|
-
CONTACTS_AUTO_SUGGEST = "xBeesContactsAutoSuggest",
|
|
22
|
-
CONTACT_LOOKUP_AND_MATCH = "xBeesContactLookupAndMatch"
|
|
23
|
-
}
|
|
1
|
+
import { ClientEventType, EventType } from '../src/enums';
|
|
24
2
|
export type MessageType = ClientEventType | EventType;
|
|
25
3
|
interface ContactShape {
|
|
26
4
|
id: string;
|
|
@@ -41,13 +19,9 @@ export type Contact = (ContactShape & {
|
|
|
41
19
|
phone: string;
|
|
42
20
|
});
|
|
43
21
|
export type ContactQuery = {
|
|
44
|
-
|
|
45
|
-
phone?: string;
|
|
46
|
-
} | {
|
|
22
|
+
id?: string;
|
|
47
23
|
email?: string;
|
|
48
|
-
phone
|
|
49
|
-
} | {
|
|
50
|
-
id: string;
|
|
24
|
+
phone?: string;
|
|
51
25
|
};
|
|
52
26
|
export interface IPayloadViewPort {
|
|
53
27
|
height: number | string;
|
|
@@ -83,13 +57,13 @@ export interface IPayloadContactResult {
|
|
|
83
57
|
}
|
|
84
58
|
export interface IPayloadContextResult extends IPayloadContactResult {
|
|
85
59
|
}
|
|
86
|
-
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 ? IPayloadContactMatchResult : T extends ClientEventType.CONTEXT ? IPayloadContextResult : 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 ?
|
|
60
|
+
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 ? IPayloadContactMatchResult : T extends ClientEventType.CONTEXT ? IPayloadContextResult : 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 EventType.PBX_TOKEN ? string : T extends ClientEventType.TO_CLIPBOARD ? string : never;
|
|
87
61
|
export type Message<T extends MessageType = MessageType> = {
|
|
88
62
|
type: T;
|
|
89
63
|
payload?: EventPayload<T>;
|
|
90
64
|
};
|
|
91
65
|
export type ErrorMessage = {
|
|
92
|
-
errorMessage
|
|
66
|
+
errorMessage?: string;
|
|
93
67
|
};
|
|
94
68
|
export type MessageIFrameResponse<T extends MessageType = MessageType> = Message<T> & {
|
|
95
69
|
iframeId: string;
|
|
@@ -101,40 +75,21 @@ export type EventPayloadMap = {
|
|
|
101
75
|
[EventType.GET_CONTACTS_AUTO_SUGGEST]: string;
|
|
102
76
|
[EventType.GET_LOOK_UP_AND_MATCH]: ContactQuery;
|
|
103
77
|
[EventType.ADD_CALL]: IPayloadCallStartedInfo;
|
|
104
|
-
[EventType.USE_THEME]:
|
|
78
|
+
[EventType.USE_THEME]: IPayloadThemeChange;
|
|
105
79
|
[EventType.PBX_TOKEN]: string;
|
|
106
80
|
};
|
|
107
81
|
export type EventCallbackMap = {
|
|
108
82
|
[EventType.GET_CONTACTS_AUTO_SUGGEST]: (query: EventPayloadMap[EventType.GET_CONTACTS_AUTO_SUGGEST]) => void;
|
|
109
83
|
[EventType.GET_LOOK_UP_AND_MATCH]: (query: EventPayloadMap[EventType.GET_LOOK_UP_AND_MATCH]) => void;
|
|
110
84
|
[EventType.ADD_CALL]: (callStartInfo: EventPayloadMap[EventType.ADD_CALL]) => void;
|
|
111
|
-
[EventType.USE_THEME]: (
|
|
85
|
+
[EventType.USE_THEME]: (theme: EventPayloadMap[EventType.USE_THEME]) => void;
|
|
112
86
|
[EventType.PBX_TOKEN]: (token: EventPayloadMap[EventType.PBX_TOKEN]) => void;
|
|
113
87
|
};
|
|
114
|
-
export type ClientEventCallbackMap = {
|
|
115
|
-
[ClientEventType.READY]: () => void;
|
|
116
|
-
[ClientEventType.CONTEXT]: (context: any) => void;
|
|
117
|
-
[ClientEventType.CURRENT_CONTACT]: (contact: Contact) => void;
|
|
118
|
-
[ClientEventType.THEME_MODE]: (themeMode: string) => void;
|
|
119
|
-
[ClientEventType.REBOOT]: () => void;
|
|
120
|
-
[ClientEventType.TO_CLIPBOARD]: (text: string) => void;
|
|
121
|
-
[ClientEventType.NOT_AUTHORIZED]: () => void;
|
|
122
|
-
[ClientEventType.AUTHORIZED]: () => void;
|
|
123
|
-
[ClientEventType.CONTACTS_AUTO_SUGGEST]: (suggestions: string[]) => void;
|
|
124
|
-
};
|
|
125
88
|
export type Callback<T extends EventType = EventType> = T extends keyof EventCallbackMap ? EventCallbackMap[T] : DefaultCallback;
|
|
126
89
|
export interface Listener<T extends EventType = EventType> {
|
|
127
90
|
eventName: T;
|
|
128
91
|
callback: Callback<T>;
|
|
129
92
|
}
|
|
130
|
-
export declare enum UrlParams {
|
|
131
|
-
TOKEN = "t",
|
|
132
|
-
ID = "i",
|
|
133
|
-
VARIANT = "v",
|
|
134
|
-
USER = "u",
|
|
135
|
-
REFERRER = "r",
|
|
136
|
-
AUTHORIZE = "a"
|
|
137
|
-
}
|
|
138
93
|
export type WorkVariants = 'ui' | 'no-ui' | 'd';
|
|
139
94
|
export interface PostMessageController {
|
|
140
95
|
sendAsync<T extends MessageType>(data: MessageIFrameResponse<T>): Promise<ResponseMessage<T>>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wildix/xbees-connect",
|
|
3
|
-
"version": "1.0.6-alpha.
|
|
3
|
+
"version": "1.0.6-alpha.10",
|
|
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": "",
|
|
@@ -41,5 +41,5 @@
|
|
|
41
41
|
"engines": {
|
|
42
42
|
"node": ">=16"
|
|
43
43
|
},
|
|
44
|
-
"gitHead": "
|
|
44
|
+
"gitHead": "d021b2f6d303686b804e535100d6d3cfa511ae50"
|
|
45
45
|
}
|
|
File without changes
|