@wazo/sdk 0.39.9 → 0.39.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/wazo-sdk.js +1 -1
- package/esm/domain/Session.js +1 -1
- package/esm/domain/__tests__/Session.test.js +6 -3
- package/esm/types/domain/Session.d.ts +4 -6
- package/esm/types/domain/Session.d.ts.map +1 -1
- package/lib/domain/Session.js +2 -2
- package/lib/domain/__tests__/Session.test.js +6 -3
- package/lib/types/domain/Session.d.ts +4 -6
- package/lib/types/domain/Session.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/domain/Session.ts +4 -6
- package/src/domain/__tests__/Session.test.ts +7 -3
package/esm/domain/Session.js
CHANGED
|
@@ -47,7 +47,7 @@ export default class Session {
|
|
|
47
47
|
expiresAt: new Date(`${plain.data.utc_expires_at}z`),
|
|
48
48
|
stackUuid: plain.data.xivo_uuid,
|
|
49
49
|
// eslint-disable-next-line
|
|
50
|
-
stackHostFromHeader: plain._headers?.
|
|
50
|
+
stackHostFromHeader: plain._headers?.get?.('wazo-stack-host'),
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
53
|
static newFrom(profile) {
|
|
@@ -3,10 +3,12 @@ import Profile from '../Profile';
|
|
|
3
3
|
import Line from '../Line';
|
|
4
4
|
describe('Session domain', () => {
|
|
5
5
|
it('can parse a plain session to domain', () => {
|
|
6
|
+
// Can't use `new Headers` because it's not supported on node 16.
|
|
7
|
+
const headers = {
|
|
8
|
+
get: () => 'new-stack',
|
|
9
|
+
};
|
|
6
10
|
const plain = {
|
|
7
|
-
_headers:
|
|
8
|
-
'wazo-stack-host': 'new-stack',
|
|
9
|
-
},
|
|
11
|
+
_headers: headers,
|
|
10
12
|
data: {
|
|
11
13
|
token: 'b93ae6bd-08d7-4001-9e61-057e72bbc4b3',
|
|
12
14
|
acl: ['calld.lines.*.presences.read', 'calld.switchboards.#', 'calld.transfers.*.complete.update', 'calld.transfers.*.delete', 'calld.transfers.*.read', 'calld.users.*.presences.read', 'calld.users.me.#', 'confd.infos.read', 'confd.users.me.#.read', 'confd.users.me.forwards.*.*', 'confd.users.me.funckeys.*', 'confd.users.me.funckeys.*.*', 'confd.users.me.read', 'confd.users.me.services.*.*', 'confd.users.me.update', 'dird.#.me.read', 'dird.directories.favorites.#', 'dird.directories.lookup.*.headers.read', 'dird.directories.lookup.*.read', 'dird.directories.personal.*.read', 'dird.personal.#', 'events.calls.me', 'events.chat.message.*.me', 'events.config.users.me.#', 'events.statuses.*', 'events.switchboards.#', 'events.transfers.me', 'events.users.me.#', 'events.directory.me.#', 'websocketd', 'call-logd.users.me.cdr.read'],
|
|
@@ -23,6 +25,7 @@ describe('Session domain', () => {
|
|
|
23
25
|
xivo_user_uuid: null,
|
|
24
26
|
},
|
|
25
27
|
};
|
|
28
|
+
// @ts-ignore
|
|
26
29
|
const session = Session.parse(plain);
|
|
27
30
|
expect(session).toEqual(new Session({
|
|
28
31
|
token: 'b93ae6bd-08d7-4001-9e61-057e72bbc4b3',
|
|
@@ -4,9 +4,7 @@ import Line from './Line';
|
|
|
4
4
|
import SipLine from './SipLine';
|
|
5
5
|
import type { UUID, Token } from './types';
|
|
6
6
|
export type Response = {
|
|
7
|
-
_headers:
|
|
8
|
-
'wazo-stack-host': string;
|
|
9
|
-
};
|
|
7
|
+
_headers: Headers;
|
|
10
8
|
data: {
|
|
11
9
|
token: Token;
|
|
12
10
|
refresh_token?: Token;
|
|
@@ -56,7 +54,7 @@ type SessionArguments = {
|
|
|
56
54
|
engineVersion?: string | null | undefined;
|
|
57
55
|
engineUuid?: string | null | undefined;
|
|
58
56
|
stackUuid?: string | null | undefined;
|
|
59
|
-
stackHostFromHeader?: string;
|
|
57
|
+
stackHostFromHeader?: string | null | undefined;
|
|
60
58
|
};
|
|
61
59
|
export default class Session {
|
|
62
60
|
acl: string[];
|
|
@@ -68,7 +66,7 @@ export default class Session {
|
|
|
68
66
|
stackUuid: string | null | undefined;
|
|
69
67
|
sessionUuid: string | null | undefined;
|
|
70
68
|
engineVersion: string | null | undefined;
|
|
71
|
-
_stackHostFromHeader: string | undefined;
|
|
69
|
+
_stackHostFromHeader: string | undefined | null;
|
|
72
70
|
profile: Profile | null | undefined;
|
|
73
71
|
expiresAt: Date;
|
|
74
72
|
authorizations: Array<Authorization>;
|
|
@@ -92,7 +90,7 @@ export default class Session {
|
|
|
92
90
|
allLines(): Line[];
|
|
93
91
|
allNumbers(): string[];
|
|
94
92
|
hasExtension(extension: string): boolean;
|
|
95
|
-
getHostFromHeader(): string | undefined;
|
|
93
|
+
getHostFromHeader(): string | null | undefined;
|
|
96
94
|
get acls(): Array<string> | null | undefined;
|
|
97
95
|
get engineUuid(): string | null | undefined;
|
|
98
96
|
toJSON(): this & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/domain/Session.ts"],"names":[],"mappings":"AAGA,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAS3C,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE
|
|
1
|
+
{"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/domain/Session.ts"],"names":[],"mappings":"AAGA,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAS3C,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE;QACJ,KAAK,EAAE,KAAK,CAAC;QACb,aAAa,CAAC,EAAE,KAAK,CAAC;QACtB,YAAY,EAAE,IAAI,CAAC;QACnB,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAErB,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;QAC1C,QAAQ,EAAE;YACR,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,IAAI,EAAE,IAAI,CAAC;YACX,WAAW,CAAC,EAAE,IAAI,CAAC;YACnB,cAAc,CAAC,EAAE,IAAI,CAAC;YACtB,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YACvB,SAAS,CAAC,EAAE,IAAI,CAAC;YACjB,OAAO,CAAC,EAAE,KAAK,CAAC;gBACd,IAAI,EAAE,IAAI,CAAC;aACZ,CAAC,CAAC;YACH,OAAO,CAAC,EAAE,IAAI,CAAC;SAChB,GAAG,IAAI,GAAG,SAAS,CAAC;KACtB,CAAC;CACH,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC9B,CAAC,CAAC;IACH,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACpC,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACxC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACvC,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,SAAS,EAAE,IAAI,CAAC;IAChB,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAE1C,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACtC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACjD,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,OAAO;IAC1B,GAAG,EAAE,MAAM,EAAE,CAAC;IAEd,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,KAAK,EAAE,MAAM,CAAC;IAEd,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAExC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAEhC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAEtC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAErC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAEvC,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAEzC,oBAAoB,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IAEhD,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;IAEpC,SAAS,EAAE,IAAI,CAAC;IAEhB,cAAc,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IAErC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS;IAiCzD,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO;gBAInB,EACV,KAAK,EACL,IAAI,EACJ,UAAU,EACV,OAAO,EACP,SAAS,EACT,cAAc,EACd,GAAG,EACH,aAAa,EACb,YAAY,EACZ,WAAW,EACX,SAAS,EACT,mBAA+B,GAChC,EAAE,gBAAgB;IAenB,UAAU,CAAC,IAAI,GAAE,IAAiB,GAAG,OAAO;IAI5C,EAAE,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO;IAI7B,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO;IAKhC,iBAAiB;IAIjB,WAAW,IAAI,MAAM;IAIrB,oBAAoB,IAAI,OAAO;IAQ/B,WAAW,IAAI,IAAI,GAAG,IAAI,GAAG,SAAS;IAItC,cAAc,IAAI,OAAO,GAAG,IAAI,GAAG,SAAS;IAI5C,iBAAiB,IAAI,OAAO,GAAG,IAAI,GAAG,SAAS;IAI/C,cAAc,IAAI,OAAO,GAAG,IAAI,GAAG,SAAS;IAI5C,UAAU,IAAI,OAAO;IA0BrB,cAAc,IAAI,MAAM;IAWxB,mBAAmB,CAAC,OAAO,EAAE,MAAM;IAInC,aAAa,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS;IAK1C,QAAQ,IAAI,IAAI,EAAE;IAIlB,UAAU,IAAI,MAAM,EAAE;IAUtB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIxC,iBAAiB;IAIjB,IAAI,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,CAG3C;IAED,IAAI,UAAU,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS,CAG1C;IAED,MAAM;;;CAOP"}
|
package/lib/domain/Session.js
CHANGED
|
@@ -14,7 +14,7 @@ const swarmKey = (jsrsasign_1.KEYUTIL.getKey(pubkey_1.default));
|
|
|
14
14
|
const MINIMUM_WAZO_ENGINE_VERSION_FOR_DEFAULT_CONTEXT = '19.08';
|
|
15
15
|
class Session {
|
|
16
16
|
static parse(plain) {
|
|
17
|
-
var _a;
|
|
17
|
+
var _a, _b;
|
|
18
18
|
const token = plain.data.metadata ? plain.data.metadata.jwt : null;
|
|
19
19
|
let authorizations = [];
|
|
20
20
|
// Add authorizations from JWT
|
|
@@ -40,7 +40,7 @@ class Session {
|
|
|
40
40
|
expiresAt: new Date(`${plain.data.utc_expires_at}z`),
|
|
41
41
|
stackUuid: plain.data.xivo_uuid,
|
|
42
42
|
// eslint-disable-next-line
|
|
43
|
-
stackHostFromHeader: (_a = plain._headers) === null || _a === void 0 ? void 0 : _a
|
|
43
|
+
stackHostFromHeader: (_b = (_a = plain._headers) === null || _a === void 0 ? void 0 : _a.get) === null || _b === void 0 ? void 0 : _b.call(_a, 'wazo-stack-host'),
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
46
|
static newFrom(profile) {
|
|
@@ -17,10 +17,12 @@ const Profile_1 = __importDefault(require("../Profile"));
|
|
|
17
17
|
const Line_1 = __importDefault(require("../Line"));
|
|
18
18
|
describe('Session domain', () => {
|
|
19
19
|
it('can parse a plain session to domain', () => {
|
|
20
|
+
// Can't use `new Headers` because it's not supported on node 16.
|
|
21
|
+
const headers = {
|
|
22
|
+
get: () => 'new-stack',
|
|
23
|
+
};
|
|
20
24
|
const plain = {
|
|
21
|
-
_headers:
|
|
22
|
-
'wazo-stack-host': 'new-stack',
|
|
23
|
-
},
|
|
25
|
+
_headers: headers,
|
|
24
26
|
data: {
|
|
25
27
|
token: 'b93ae6bd-08d7-4001-9e61-057e72bbc4b3',
|
|
26
28
|
acl: ['calld.lines.*.presences.read', 'calld.switchboards.#', 'calld.transfers.*.complete.update', 'calld.transfers.*.delete', 'calld.transfers.*.read', 'calld.users.*.presences.read', 'calld.users.me.#', 'confd.infos.read', 'confd.users.me.#.read', 'confd.users.me.forwards.*.*', 'confd.users.me.funckeys.*', 'confd.users.me.funckeys.*.*', 'confd.users.me.read', 'confd.users.me.services.*.*', 'confd.users.me.update', 'dird.#.me.read', 'dird.directories.favorites.#', 'dird.directories.lookup.*.headers.read', 'dird.directories.lookup.*.read', 'dird.directories.personal.*.read', 'dird.personal.#', 'events.calls.me', 'events.chat.message.*.me', 'events.config.users.me.#', 'events.statuses.*', 'events.switchboards.#', 'events.transfers.me', 'events.users.me.#', 'events.directory.me.#', 'websocketd', 'call-logd.users.me.cdr.read'],
|
|
@@ -37,6 +39,7 @@ describe('Session domain', () => {
|
|
|
37
39
|
xivo_user_uuid: null,
|
|
38
40
|
},
|
|
39
41
|
};
|
|
42
|
+
// @ts-ignore
|
|
40
43
|
const session = Session_1.default.parse(plain);
|
|
41
44
|
expect(session).toEqual(new Session_1.default({
|
|
42
45
|
token: 'b93ae6bd-08d7-4001-9e61-057e72bbc4b3',
|
|
@@ -4,9 +4,7 @@ import Line from './Line';
|
|
|
4
4
|
import SipLine from './SipLine';
|
|
5
5
|
import type { UUID, Token } from './types';
|
|
6
6
|
export type Response = {
|
|
7
|
-
_headers:
|
|
8
|
-
'wazo-stack-host': string;
|
|
9
|
-
};
|
|
7
|
+
_headers: Headers;
|
|
10
8
|
data: {
|
|
11
9
|
token: Token;
|
|
12
10
|
refresh_token?: Token;
|
|
@@ -56,7 +54,7 @@ type SessionArguments = {
|
|
|
56
54
|
engineVersion?: string | null | undefined;
|
|
57
55
|
engineUuid?: string | null | undefined;
|
|
58
56
|
stackUuid?: string | null | undefined;
|
|
59
|
-
stackHostFromHeader?: string;
|
|
57
|
+
stackHostFromHeader?: string | null | undefined;
|
|
60
58
|
};
|
|
61
59
|
export default class Session {
|
|
62
60
|
acl: string[];
|
|
@@ -68,7 +66,7 @@ export default class Session {
|
|
|
68
66
|
stackUuid: string | null | undefined;
|
|
69
67
|
sessionUuid: string | null | undefined;
|
|
70
68
|
engineVersion: string | null | undefined;
|
|
71
|
-
_stackHostFromHeader: string | undefined;
|
|
69
|
+
_stackHostFromHeader: string | undefined | null;
|
|
72
70
|
profile: Profile | null | undefined;
|
|
73
71
|
expiresAt: Date;
|
|
74
72
|
authorizations: Array<Authorization>;
|
|
@@ -92,7 +90,7 @@ export default class Session {
|
|
|
92
90
|
allLines(): Line[];
|
|
93
91
|
allNumbers(): string[];
|
|
94
92
|
hasExtension(extension: string): boolean;
|
|
95
|
-
getHostFromHeader(): string | undefined;
|
|
93
|
+
getHostFromHeader(): string | null | undefined;
|
|
96
94
|
get acls(): Array<string> | null | undefined;
|
|
97
95
|
get engineUuid(): string | null | undefined;
|
|
98
96
|
toJSON(): this & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/domain/Session.ts"],"names":[],"mappings":"AAGA,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAS3C,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE
|
|
1
|
+
{"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/domain/Session.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/domain/Session.ts
CHANGED
|
@@ -15,9 +15,7 @@ const swarmKey = <unknown>(KEYUTIL.getKey(swarmPublicKey)) as string;
|
|
|
15
15
|
const MINIMUM_WAZO_ENGINE_VERSION_FOR_DEFAULT_CONTEXT = '19.08';
|
|
16
16
|
|
|
17
17
|
export type Response = {
|
|
18
|
-
_headers:
|
|
19
|
-
'wazo-stack-host': string,
|
|
20
|
-
},
|
|
18
|
+
_headers: Headers,
|
|
21
19
|
data: {
|
|
22
20
|
token: Token;
|
|
23
21
|
refresh_token?: Token;
|
|
@@ -72,7 +70,7 @@ type SessionArguments = {
|
|
|
72
70
|
// Deprecated, use `stackUuid`
|
|
73
71
|
engineUuid?: string | null | undefined;
|
|
74
72
|
stackUuid?: string | null | undefined;
|
|
75
|
-
stackHostFromHeader?: string;
|
|
73
|
+
stackHostFromHeader?: string | null | undefined;
|
|
76
74
|
};
|
|
77
75
|
|
|
78
76
|
export default class Session {
|
|
@@ -94,7 +92,7 @@ export default class Session {
|
|
|
94
92
|
|
|
95
93
|
engineVersion: string | null | undefined;
|
|
96
94
|
|
|
97
|
-
_stackHostFromHeader: string | undefined;
|
|
95
|
+
_stackHostFromHeader: string | undefined | null;
|
|
98
96
|
|
|
99
97
|
profile: Profile | null | undefined;
|
|
100
98
|
|
|
@@ -131,7 +129,7 @@ export default class Session {
|
|
|
131
129
|
expiresAt: new Date(`${plain.data.utc_expires_at}z`),
|
|
132
130
|
stackUuid: plain.data.xivo_uuid,
|
|
133
131
|
// eslint-disable-next-line
|
|
134
|
-
stackHostFromHeader: plain._headers?.
|
|
132
|
+
stackHostFromHeader: plain._headers?.get?.('wazo-stack-host'),
|
|
135
133
|
});
|
|
136
134
|
}
|
|
137
135
|
|
|
@@ -4,10 +4,13 @@ import Line from '../Line';
|
|
|
4
4
|
|
|
5
5
|
describe('Session domain', () => {
|
|
6
6
|
it('can parse a plain session to domain', () => {
|
|
7
|
+
// Can't use `new Headers` because it's not supported on node 16.
|
|
8
|
+
const headers = {
|
|
9
|
+
get: () => 'new-stack',
|
|
10
|
+
};
|
|
11
|
+
|
|
7
12
|
const plain = {
|
|
8
|
-
_headers:
|
|
9
|
-
'wazo-stack-host': 'new-stack',
|
|
10
|
-
},
|
|
13
|
+
_headers: headers,
|
|
11
14
|
data: {
|
|
12
15
|
token: 'b93ae6bd-08d7-4001-9e61-057e72bbc4b3',
|
|
13
16
|
acl: ['calld.lines.*.presences.read', 'calld.switchboards.#', 'calld.transfers.*.complete.update', 'calld.transfers.*.delete', 'calld.transfers.*.read', 'calld.users.*.presences.read', 'calld.users.me.#', 'confd.infos.read', 'confd.users.me.#.read', 'confd.users.me.forwards.*.*', 'confd.users.me.funckeys.*', 'confd.users.me.funckeys.*.*', 'confd.users.me.read', 'confd.users.me.services.*.*', 'confd.users.me.update', 'dird.#.me.read', 'dird.directories.favorites.#', 'dird.directories.lookup.*.headers.read', 'dird.directories.lookup.*.read', 'dird.directories.personal.*.read', 'dird.personal.#', 'events.calls.me', 'events.chat.message.*.me', 'events.config.users.me.#', 'events.statuses.*', 'events.switchboards.#', 'events.transfers.me', 'events.users.me.#', 'events.directory.me.#', 'websocketd', 'call-logd.users.me.cdr.read'],
|
|
@@ -24,6 +27,7 @@ describe('Session domain', () => {
|
|
|
24
27
|
xivo_user_uuid: null,
|
|
25
28
|
},
|
|
26
29
|
};
|
|
30
|
+
// @ts-ignore
|
|
27
31
|
const session = Session.parse(plain);
|
|
28
32
|
expect(session).toEqual(new Session({
|
|
29
33
|
token: 'b93ae6bd-08d7-4001-9e61-057e72bbc4b3',
|