@voicenter-team/events-sdk 0.0.5 → 0.0.7

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.
@@ -26,6 +26,7 @@ import EventsSdkClass from '@/index'
26
26
  import {eventsSdkDefaultOptions} from '@/classes/events-sdk/events-sdk-default-options'
27
27
  import {EventsEnum} from '@/enum/events.enum'
28
28
  import {EventTypeData} from '@/types/events'
29
+ import {LoginType} from "@/enum/auth.enum";
29
30
 
30
31
  /* Data */
31
32
  const token = ref('QMSVU9dwNYC9Le9VCBqx24AB9TYyWj9Xn5aCPV0GFHIWoShQqfPtnAPmnw24xpJIUSsDDtlac2OPpjx0t3MSkxH3AhiQGHCeGZ8e')
@@ -44,6 +45,7 @@ async function login() {
44
45
  const sdk = new EventsSdkClass({
45
46
  ...eventsSdkDefaultOptions,
46
47
  token: token.value,
48
+ loginType: LoginType.USER,
47
49
  })
48
50
 
49
51
  await sdk.init()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voicenter-team/events-sdk",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "description": "",
5
5
  "main": "dist/voicenter-events-sdk.cjs.js",
6
6
  "jsdelivr": "dist/voicenter-events-sdk.umd.js",
@@ -26,29 +26,29 @@
26
26
  "author": "",
27
27
  "license": "ISC",
28
28
  "devDependencies": {
29
- "@types/chrome": "^0.0.253",
30
- "@types/jest": "^29.5.10",
29
+ "@types/chrome": "0.0.259",
30
+ "@types/jest": "29.5.11",
31
31
  "@types/js-md5": "^0.7.2",
32
32
  "@types/lodash": "^4.14.200",
33
- "@types/node": "^18.14.2",
34
- "@typescript-eslint/eslint-plugin": "^5.53.0",
35
- "@typescript-eslint/parser": "^5.53.0",
33
+ "@types/node": "20.11.13",
34
+ "@typescript-eslint/eslint-plugin": "6.20.0",
35
+ "@typescript-eslint/parser": "6.20.0",
36
36
  "@voicenter-team/eslint-config-ts": "^1.0.22",
37
- "dotenv": "^16.0.3",
38
- "eslint": "^8.35.0",
39
- "eslint-plugin-jest": "^27.6.0",
37
+ "dotenv": "16.4.1",
38
+ "eslint": "8.56.0",
39
+ "eslint-plugin-jest": "27.6.3",
40
40
  "jest": "^29.7.0",
41
41
  "pre-commit": "^1.2.2",
42
- "socket.io-client": "^4.7.2",
43
- "swagger-axios-codegen": "^0.14.0",
44
- "ts-jest": "^29.1.1",
42
+ "socket.io-client": "4.7.4",
43
+ "swagger-axios-codegen": "0.16.8",
44
+ "ts-jest": "29.1.2",
45
45
  "tsc-alias": "^1.8.6",
46
- "typescript": "^4.9.5",
47
- "vite": "4.3.9",
48
- "vite-plugin-dts": "^3.6.0"
46
+ "typescript": "5.3.3",
47
+ "vite": "5.0.12",
48
+ "vite-plugin-dts": "3.7.2"
49
49
  },
50
50
  "dependencies": {
51
- "js-md5": "^0.7.3",
51
+ "js-md5": "0.8.3",
52
52
  "lodash": "^4.17.21"
53
53
  }
54
54
  }
@@ -1,27 +1,39 @@
1
1
  import md5 from 'js-md5'
2
2
 
3
3
  import EventsSdkClass from '@/classes/events-sdk/events-sdk.class'
4
- import { Environment, EventsSdkOptions, ServerParameter } from '@/classes/events-sdk/events-sdk.types'
5
- import { LoginSessionData, LoginSessionPayload } from '@/types/auth'
4
+ import { EventsSdkOptions, ServerParameter } from '@/classes/events-sdk/events-sdk.types'
5
+ import {
6
+ ExternalLoginRequestBody,
7
+ ExternalLoginResponse,
8
+ LoginSessionData,
9
+ LoginSessionPayload,
10
+ Settings
11
+ } from '@/types/auth'
12
+ import { LoginType } from '@/enum/auth.enum'
13
+ import { getSettingsUrl, newLoginUrl, refreshTokenUrl } from '@/classes/auth/auth.urls'
14
+ import { StorageClass } from '@/classes/storage/storage.class'
6
15
 
7
16
  class AuthClass{
8
17
  constructor (private readonly eventsSdkClass: EventsSdkClass) {
9
18
  this.eventsSdkClass = eventsSdkClass
19
+
20
+ this.storageKey = ''
10
21
  }
11
-
22
+
12
23
  private delay = 1000
13
24
  public lastLoginTimestamp: number | undefined
14
25
  public token: string | undefined
15
26
 
27
+ private storageKey: string
28
+
16
29
  public async login (options: EventsSdkOptions) {
17
30
  const payload: LoginSessionPayload = {
18
31
  token: options.token,
19
32
  email: options.email,
20
- username: options.username,
21
33
  password: options.password
22
34
  }
23
35
 
24
- const key = md5(JSON.stringify(payload))
36
+ this.storageKey = md5(JSON.stringify(payload))
25
37
 
26
38
  if (this.lastLoginTimestamp && this.lastLoginTimestamp + this.delay > new Date().getTime()) {
27
39
  return
@@ -29,10 +41,10 @@ class AuthClass{
29
41
 
30
42
  this.updateLastLoginTimestamp()
31
43
 
32
- const isLoggedIn = await this.checkLoginStatus(options, key)
44
+ const isLoggedIn = await this.checkLoginStatus(this.storageKey)
33
45
 
34
46
  if (!isLoggedIn) {
35
- await this.userLoginFunction(payload, key)
47
+ await this.userLoginFunction(payload, this.storageKey, options.loginType)
36
48
  }
37
49
  }
38
50
 
@@ -40,78 +52,62 @@ class AuthClass{
40
52
  this.lastLoginTimestamp = new Date().getTime()
41
53
  }
42
54
 
43
- private async checkLoginStatus (options: EventsSdkOptions, key: string): Promise<boolean> {
44
- let loginSessionData: LoginSessionData
45
- if (options.environment === Environment.BROWSER && window) {
46
- const loginSessionKey = window.sessionStorage.getItem(key)
55
+ private async checkLoginStatus (key: string): Promise<boolean> {
56
+ const loginSessionData = await StorageClass.getSessionStorageDataByKey(key)
47
57
 
48
- if (loginSessionKey) {
49
- loginSessionData = JSON.parse(loginSessionKey)
58
+ if (loginSessionData) {
59
+ this.onLoginResponse(loginSessionData)
50
60
 
51
- this.onLoginResponse(loginSessionData)
52
-
53
- return true
54
- }
61
+ return true
55
62
  }
56
- if (options.environment === Environment.CHROME_EXTENSION && chrome) {
57
- const loginSessionKey = await chrome.storage.session.get(key)
58
63
 
59
- if (loginSessionKey[key]) {
60
- loginSessionData = JSON.parse(loginSessionKey[key])
64
+ return false
65
+ }
61
66
 
62
- this.onLoginResponse(loginSessionData)
67
+ private async userLoginFunction (
68
+ payload: LoginSessionPayload,
69
+ key: string,
70
+ loginType: LoginType,
71
+ ) {
72
+ const externalLoginResponse = await this.externalLogin(
73
+ newLoginUrl,
74
+ payload,
75
+ loginType,
76
+ )
63
77
 
64
- return true
65
- }
78
+ const settings = await this.getSettings(externalLoginResponse.Data.AccessToken)
79
+
80
+ const loginSessionData: LoginSessionData = {
81
+ ...externalLoginResponse.Data,
82
+ ...settings
66
83
  }
67
- return false
84
+
85
+ this.onLoginResponse(loginSessionData)
86
+
87
+ await StorageClass.updateSessionStorageKey(key, loginSessionData)
68
88
  }
69
89
 
70
90
  private onLoginResponse (loginSessionData: LoginSessionData) {
71
- if (loginSessionData.Client) {
72
- this.eventsSdkClass.socketIoClass.getSocketIoFunction(loginSessionData.Client)
91
+ if (loginSessionData.MonitorList && loginSessionData.MonitorList.length) {
92
+ this.eventsSdkClass.servers = [ ...loginSessionData.MonitorList ]
93
+ this.eventsSdkClass.server = this.eventsSdkClass.servers.reduce((prev, current) =>
94
+ (prev.Priority > current.Priority) ? prev : current
95
+ )
73
96
  }
74
- if (loginSessionData.Url) {
75
- this.eventsSdkClass.server = {
76
- Priority: 0,
77
- Domain: loginSessionData.Url.replace('https://', '')
78
- }
79
- }
80
- if (loginSessionData.URLList) {
81
- this.eventsSdkClass.servers = loginSessionData.URLList.map((url, index) => {
82
- return {
83
- Priority: index,
84
- Domain: url.replace('https://', '')
85
- }
86
- })
97
+ if (this.eventsSdkClass.server) {
98
+ this.eventsSdkClass.socketIoClass.getSocketIoFunction(`v=${this.eventsSdkClass.server.Version}`)
87
99
  }
88
- if (loginSessionData.Token) {
89
- // this.options.token = loginSessionData.Token
90
- this.token = loginSessionData.Token
100
+ if (loginSessionData.IdentityCode) {
101
+ this.token = loginSessionData.IdentityCode
91
102
  this.eventsSdkClass.connect(ServerParameter.DEFAULT, true)
92
103
  }
93
- if (loginSessionData.RefreshToken && loginSessionData.TokenExpiry && this.eventsSdkClass.options.loginType === 'user') {
104
+ if (loginSessionData.RefreshToken && loginSessionData.IdentityCodeExpiry && this.eventsSdkClass.options.loginType === LoginType.USER) {
94
105
  this.eventsSdkClass.options.refreshToken = loginSessionData.RefreshToken
95
- this.eventsSdkClass.options.tokenExpiry = loginSessionData.TokenExpiry
106
+ this.eventsSdkClass.options.tokenExpiry = loginSessionData.IdentityCodeExpiry
96
107
  this.handleTokenExpiry()
97
108
  }
98
109
  }
99
110
 
100
- private async userLoginFunction (payload: LoginSessionPayload, key: string) {
101
- const externalLoginUrl = this.getExternalLoginUrl(this.eventsSdkClass.options.loginUrl, this.eventsSdkClass.options.loginType)
102
-
103
- const externalLoginResponse = await this.externalLogin(externalLoginUrl, payload, this.eventsSdkClass.options.loginType)
104
-
105
- this.onLoginResponse(externalLoginResponse)
106
-
107
- if (this.eventsSdkClass.options.environment === Environment.BROWSER) {
108
- window.sessionStorage.setItem(key, JSON.stringify(externalLoginResponse))
109
- }
110
- if (this.eventsSdkClass.options.environment === Environment.CHROME_EXTENSION) {
111
- await chrome.storage.session.set({ [key]: JSON.stringify(externalLoginResponse) })
112
- }
113
- }
114
-
115
111
  public handleTokenExpiry () {
116
112
  let date: Date
117
113
 
@@ -127,41 +123,44 @@ class AuthClass{
127
123
 
128
124
  setTimeout(
129
125
  async () => {
130
- if (this.eventsSdkClass.options.refreshTokenUrl && this.eventsSdkClass.options.refreshToken) {
131
- let Socket = null
132
- const res = await this.refreshToken(this.eventsSdkClass.options.refreshTokenUrl, this.eventsSdkClass.options.refreshToken)
126
+ if (refreshTokenUrl && this.eventsSdkClass.options.refreshToken) {
127
+ this.eventsSdkClass.socketIoClass.closeAllConnections()
128
+
129
+ const refreshTokenResponse = await this.refreshToken(refreshTokenUrl, this.eventsSdkClass.options.refreshToken)
133
130
 
134
- if (res.Data) {
135
- Socket = res.Data.Socket
136
- return this.onLoginResponse(Socket)
131
+ const settings = await this.getSettings(refreshTokenResponse.Data.AccessToken)
132
+
133
+ const loginSessionData: LoginSessionData = {
134
+ ...refreshTokenResponse.Data,
135
+ ...settings
137
136
  }
138
137
 
139
- throw new Error('Error on refreshToken')
138
+ this.onLoginResponse(loginSessionData)
139
+
140
+ await StorageClass.updateSessionStorageKey(this.storageKey, loginSessionData)
140
141
  }
141
142
  },
142
143
  maxAllowedTimeout)
143
144
  }
144
145
 
145
- private getExternalLoginUrl (baseUrl: string, loginType: string) {
146
- if (loginType === 'user') {
147
- return `${baseUrl}/User`
148
- }
149
- if (loginType === 'token') {
150
- return `${baseUrl}/Token`
151
- }
152
- return baseUrl
153
- }
154
-
155
- private async externalLogin (url: string, { password, token, email }: LoginSessionPayload, loginType: string) {
156
- let body: string
157
-
158
- if (loginType === 'token') {
159
- body = JSON.stringify({ token })
146
+ private async externalLogin (
147
+ url: string,
148
+ { password, token, email }: LoginSessionPayload,
149
+ loginType: LoginType,
150
+ ): Promise<ExternalLoginResponse> {
151
+ let body: ExternalLoginRequestBody
152
+
153
+ if (loginType === LoginType.TOKEN) {
154
+ body = {
155
+ identityType: LoginType.TOKEN,
156
+ token
157
+ }
160
158
  } else {
161
- body = JSON.stringify({
162
- email,
163
- pin: password
164
- })
159
+ body = {
160
+ identityType: LoginType.USER,
161
+ username: email,
162
+ password,
163
+ }
165
164
  }
166
165
 
167
166
  const res = await fetch(url, {
@@ -169,7 +168,7 @@ class AuthClass{
169
168
  headers: {
170
169
  'Content-Type': 'application/json'
171
170
  },
172
- body,
171
+ body: JSON.stringify(body),
173
172
  })
174
173
 
175
174
  const data = await res.json()
@@ -177,10 +176,20 @@ class AuthClass{
177
176
  if (data.error) {
178
177
  throw new Error(data.error)
179
178
  }
180
- return data.Data.Socket
179
+ return data
180
+ }
181
+
182
+ private async getSettings (token: string): Promise<Settings> {
183
+ const res = await fetch(getSettingsUrl, {
184
+ headers: {
185
+ Authorization: `Bearer ${token}`
186
+ }
187
+ })
188
+
189
+ return res.json()
181
190
  }
182
191
 
183
- private async refreshToken (refreshTokenUrl: string, oldRefreshToken: string) {
192
+ private async refreshToken (refreshTokenUrl: string, oldRefreshToken: string): Promise<ExternalLoginResponse> {
184
193
  const res = await fetch(refreshTokenUrl, {
185
194
  method: 'GET',
186
195
 
@@ -0,0 +1,10 @@
1
+ const newLoginUrl = 'http://loginapidev.voicenter.co.il/Auth/Login/Voicenter/Monitor'
2
+ const getSettingsUrl = 'http://loginapidev.voicenter.co.il/Application/GetSettings'
3
+ const refreshTokenUrl = 'http://loginapidev.voicenter.co.il/Auth/RefreshToken'
4
+
5
+
6
+ export {
7
+ newLoginUrl,
8
+ getSettingsUrl,
9
+ refreshTokenUrl
10
+ }
@@ -1,17 +1,15 @@
1
- import { EventsSdkOptions, Environment } from '@/classes/events-sdk/events-sdk.types'
1
+ import { EventsSdkOptions } from '@/classes/events-sdk/events-sdk.types'
2
+ import { LoginType } from '@/enum/auth.enum'
2
3
 
3
4
  export const eventsSdkDefaultOptions: EventsSdkOptions = {
4
- url: 'https://monitorapi.voicenter.co.il/monitorAPI/getMonitorUrls',
5
- environment: Environment.BROWSER,
6
5
  fallbackServer: {
7
6
  Domain: 'monitor5.voicenter.co.il',
8
7
  Priority: 0,
8
+ Version: '1.3.7',
9
+ URLID: 1
9
10
  },
10
- loginUrl: 'https://loginapi.voicenter.co.il/monitorAPI/Login',
11
- refreshTokenUrl: 'https://loginapi.voicenter.co.il/monitorAPI/RefreshIdentityToken',
12
- // servers: defaultServers, // commented temporary
13
11
  token: '',
14
- loginType: 'token',
12
+ loginType: LoginType.TOKEN,
15
13
  forceNew: true,
16
14
  reconnectionDelay: 10000,
17
15
  reconnectionDelayMax: 10000,
@@ -22,10 +20,6 @@ export const eventsSdkDefaultOptions: EventsSdkOptions = {
22
20
  protocol: 'https',
23
21
  transports: [ 'websocket' ],
24
22
  upgrade: false,
25
- store: '',
26
- extensionsModuleName: 'sdkExtensions',
27
- queuesModuleName: 'sdkQueues',
28
- dialersModuleName: 'sdkDialers',
29
23
  serverFetchStrategy: 'static',
30
24
  serverType: 0,
31
25
  useLogger: false,
@@ -47,6 +41,6 @@ export const eventsSdkDefaultOptions: EventsSdkOptions = {
47
41
  debug: false
48
42
  },
49
43
  username: 'username',
50
- password: '53070875445',
51
- email: 'FreshTest@Voicenter.com',
44
+ password: '78253050510',
45
+ email: 'test2@status.com',
52
46
  }
@@ -1,14 +1,13 @@
1
+ import { LoginType } from 'enum/auth.enum'
2
+
1
3
  export interface EventsSdkOptions {
2
- url?: string,
3
- environment?: string,
4
4
  fallbackServer: Server,
5
- loginUrl: string,
6
5
  refreshTokenUrl?: string,
7
6
  refreshToken?: string,
8
7
  servers?: string,
9
8
  token: string,
10
9
  tokenExpiry?: Date,
11
- loginType: string,
10
+ loginType: LoginType,
12
11
  forceNew?: boolean,
13
12
  reconnectionDelay: number,
14
13
  reconnectionDelayMax?: number,
@@ -19,10 +18,6 @@ export interface EventsSdkOptions {
19
18
  protocol: string,
20
19
  transports?: string[],
21
20
  upgrade?: boolean,
22
- store?: string,
23
- extensionsModuleName?: string,
24
- queuesModuleName?: string,
25
- dialersModuleName?: string,
26
21
  serverFetchStrategy?: string,
27
22
  serverType?: number,
28
23
  useLogger?: boolean,
@@ -32,17 +27,14 @@ export interface EventsSdkOptions {
32
27
  loggerConnectOptions?: LoggerConnectOptions,
33
28
  email: string,
34
29
  password: string,
35
- username: string
36
- }
37
-
38
- export enum Environment {
39
- BROWSER = 'browser',
40
- CHROME_EXTENSION = 'chrome-extension'
30
+ username: string,
41
31
  }
42
32
 
43
33
  export interface Server {
44
34
  Priority: number,
45
- Domain: string
35
+ Domain: string,
36
+ URLID: number,
37
+ Version: string,
46
38
  }
47
39
 
48
40
  export interface LoggerConfig {
@@ -74,4 +66,4 @@ export enum ServerParameter {
74
66
  DEFAULT = 'default',
75
67
  NEXT = 'next',
76
68
  PREVIOUS = 'previous'
77
- }
69
+ }
@@ -2,9 +2,10 @@ import { ManagerOptions, SocketOptions } from 'socket.io-client'
2
2
  import EventsSdkClass from '@/classes/events-sdk/events-sdk.class'
3
3
  import sockets, { TypedSocketIo } from '@/classes/socket-io/versions'
4
4
  import { SocketTyped } from '@/types/socket'
5
- import { Environment, ServerParameter } from '@/classes/events-sdk/events-sdk.types'
5
+ import { ServerParameter } from '@/classes/events-sdk/events-sdk.types'
6
6
  import { EventsEnum } from '@/enum/events.enum'
7
7
  import { KeepAliveResponseEvent } from '@/types/events'
8
+ import { StorageClass } from '@/classes/storage/storage.class'
8
9
 
9
10
  export class SocketIoClass{
10
11
  constructor (private readonly eventsSdkClass: EventsSdkClass) {
@@ -125,12 +126,7 @@ export class SocketIoClass{
125
126
  this.io = undefined
126
127
  }
127
128
 
128
- if (this.eventsSdkClass.options.environment === Environment.BROWSER && window) {
129
- window.sessionStorage.clear()
130
- }
131
- if (this.eventsSdkClass.options.environment === Environment.CHROME_EXTENSION && chrome) {
132
- chrome.storage.session.clear()
133
- }
129
+ StorageClass.clearSessionStorage()
134
130
  }
135
131
 
136
132
  private onKeepAliveResponse (data: KeepAliveResponseEvent) {
@@ -0,0 +1,43 @@
1
+ import { LoginSessionData } from '@/types/auth'
2
+
3
+ export class StorageClass{
4
+ public static async getSessionStorageDataByKey (key: string): Promise<LoginSessionData | undefined> {
5
+ if (typeof chrome !== 'undefined' && typeof chrome.storage !== 'undefined') {
6
+ const loginSessionKey = await chrome.storage.session.get(key)
7
+
8
+ if (loginSessionKey[key]) {
9
+ return JSON.parse(loginSessionKey[key])
10
+ }
11
+ }
12
+
13
+ if (typeof window !== 'undefined') {
14
+ const loginSessionKey = window.sessionStorage.getItem(key)
15
+
16
+ if (loginSessionKey) {
17
+ return JSON.parse(loginSessionKey)
18
+ }
19
+ }
20
+ }
21
+
22
+ public static async updateSessionStorageKey (key: string, storageData: LoginSessionData) {
23
+ if (typeof chrome !== 'undefined' && typeof chrome.storage !== 'undefined') {
24
+ await chrome.storage.session.set({
25
+ [key]: JSON.stringify(storageData)
26
+ })
27
+ }
28
+
29
+ if (typeof window !== 'undefined') {
30
+ window.sessionStorage.setItem(key, JSON.stringify(storageData))
31
+ }
32
+ }
33
+
34
+ public static clearSessionStorage () {
35
+ if (typeof chrome !== 'undefined' && typeof chrome.storage !== 'undefined') {
36
+ chrome.storage.session.clear()
37
+ }
38
+
39
+ if (typeof window !== 'undefined') {
40
+ window.sessionStorage.clear()
41
+ }
42
+ }
43
+ }
@@ -0,0 +1,4 @@
1
+ export enum LoginType {
2
+ USER = 'User',
3
+ TOKEN = 'Token'
4
+ }
package/src/index.ts CHANGED
@@ -1,9 +1,6 @@
1
1
  import EventsSdkClass from '@/classes/events-sdk/events-sdk.class'
2
- import { Environment } from '@/classes/events-sdk/events-sdk.types'
3
2
  import { EventsEnum } from '@/enum/events.enum'
4
3
 
5
- export {
6
- Environment,
7
- EventsEnum
8
- }
4
+ export { EventsEnum }
5
+
9
6
  export default EventsSdkClass
@@ -1,11 +1,31 @@
1
+ import { Server } from '@/classes/events-sdk/events-sdk.types'
2
+ import { LoginType } from '@/enum/auth.enum'
3
+
1
4
  export interface LoginSessionPayload {
2
5
  token: string,
3
6
  email: string,
4
- username: string,
5
7
  password: string
6
8
  }
7
9
 
8
- export interface LoginSessionData {
10
+ export interface ExternalLoginRequestBody {
11
+ identityType: LoginType,
12
+ username?: string,
13
+ password?: string,
14
+ token?: string
15
+ }
16
+
17
+ interface ExternalLoginResponseData {
18
+ AccessToken: string,
19
+ RefreshToken: string
20
+ }
21
+
22
+ export interface ExternalLoginResponse {
23
+ StatusCode: number,
24
+ Status: string,
25
+ Data: ExternalLoginResponseData
26
+ }
27
+
28
+ export interface Socket {
9
29
  Client: string,
10
30
  PersonId: number,
11
31
  RefreshToken: string,
@@ -15,4 +35,15 @@ export interface LoginSessionData {
15
35
  URLList: string[],
16
36
  Url: string,
17
37
  Version: string
18
- }
38
+ }
39
+
40
+ export interface Settings {
41
+ IdentityCode: string,
42
+ IdentityCodeExpiry: Date,
43
+ PersonID: number,
44
+ PersonType: number,
45
+ ExtensionMonitorID: number,
46
+ MonitorList: Server[]
47
+ }
48
+
49
+ export interface LoginSessionData extends Settings, ExternalLoginResponseData {}
@@ -47,7 +47,7 @@ export interface Queue {
47
47
  AnsweredAgent?: string,
48
48
  }
49
49
 
50
- interface ExtensionCall {
50
+ export interface ExtensionCall {
51
51
  callStarted: number,
52
52
  calldurationinterval: number,
53
53
  callAnswered: number,
@@ -1,14 +0,0 @@
1
- import AuthClass from '@/classes/auth/auth.class'
2
- import { eventsSdkDefaultOptions } from '@/classes/events-sdk/events-sdk-default-options'
3
- import EventsSdkClass from '@/classes/events-sdk/events-sdk.class'
4
-
5
- describe('AuthClass', () => {
6
- const sdk = new EventsSdkClass(eventsSdkDefaultOptions)
7
-
8
- const authClass = new AuthClass(sdk)
9
-
10
- it('should be cypher', () => {
11
- const key = authClass.login(eventsSdkDefaultOptions)
12
- expect(typeof key).toBe('string')
13
- })
14
- })