@webex/webex-core 2.59.2 → 2.59.3-next.1
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/.eslintrc.js +6 -6
- package/README.md +79 -79
- package/babel.config.js +3 -3
- package/dist/config.js +24 -24
- package/dist/config.js.map +1 -1
- package/dist/credentials-config.js +56 -56
- package/dist/credentials-config.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/interceptors/auth.js +28 -28
- package/dist/interceptors/auth.js.map +1 -1
- package/dist/interceptors/default-options.js +24 -24
- package/dist/interceptors/default-options.js.map +1 -1
- package/dist/interceptors/embargo.js +9 -9
- package/dist/interceptors/embargo.js.map +1 -1
- package/dist/interceptors/network-timing.js +19 -19
- package/dist/interceptors/network-timing.js.map +1 -1
- package/dist/interceptors/payload-transformer.js +19 -19
- package/dist/interceptors/payload-transformer.js.map +1 -1
- package/dist/interceptors/rate-limit.js +40 -40
- package/dist/interceptors/rate-limit.js.map +1 -1
- package/dist/interceptors/redirect.js +13 -13
- package/dist/interceptors/redirect.js.map +1 -1
- package/dist/interceptors/request-event.js +23 -23
- package/dist/interceptors/request-event.js.map +1 -1
- package/dist/interceptors/request-logger.js +13 -13
- package/dist/interceptors/request-logger.js.map +1 -1
- package/dist/interceptors/request-timing.js +23 -23
- package/dist/interceptors/request-timing.js.map +1 -1
- package/dist/interceptors/response-logger.js +19 -19
- package/dist/interceptors/response-logger.js.map +1 -1
- package/dist/interceptors/user-agent.js +29 -29
- package/dist/interceptors/user-agent.js.map +1 -1
- package/dist/interceptors/webex-tracking-id.js +15 -15
- package/dist/interceptors/webex-tracking-id.js.map +1 -1
- package/dist/interceptors/webex-user-agent.js +13 -13
- package/dist/interceptors/webex-user-agent.js.map +1 -1
- package/dist/lib/batcher.js +83 -83
- package/dist/lib/batcher.js.map +1 -1
- package/dist/lib/credentials/credentials.js +103 -103
- package/dist/lib/credentials/credentials.js.map +1 -1
- package/dist/lib/credentials/grant-errors.js +17 -17
- package/dist/lib/credentials/grant-errors.js.map +1 -1
- package/dist/lib/credentials/index.js +2 -2
- package/dist/lib/credentials/index.js.map +1 -1
- package/dist/lib/credentials/scope.js +11 -11
- package/dist/lib/credentials/scope.js.map +1 -1
- package/dist/lib/credentials/token-collection.js +2 -2
- package/dist/lib/credentials/token-collection.js.map +1 -1
- package/dist/lib/credentials/token.js +145 -145
- package/dist/lib/credentials/token.js.map +1 -1
- package/dist/lib/page.js +49 -49
- package/dist/lib/page.js.map +1 -1
- package/dist/lib/services/constants.js.map +1 -1
- package/dist/lib/services/index.js +2 -2
- package/dist/lib/services/index.js.map +1 -1
- package/dist/lib/services/interceptors/server-error.js +9 -9
- package/dist/lib/services/interceptors/server-error.js.map +1 -1
- package/dist/lib/services/interceptors/service.js +24 -24
- package/dist/lib/services/interceptors/service.js.map +1 -1
- package/dist/lib/services/metrics.js.map +1 -1
- package/dist/lib/services/service-catalog.js +104 -104
- package/dist/lib/services/service-catalog.js.map +1 -1
- package/dist/lib/services/service-fed-ramp.js.map +1 -1
- package/dist/lib/services/service-host.js +134 -134
- package/dist/lib/services/service-host.js.map +1 -1
- package/dist/lib/services/service-registry.js +175 -175
- package/dist/lib/services/service-registry.js.map +1 -1
- package/dist/lib/services/service-state.js +38 -38
- package/dist/lib/services/service-state.js.map +1 -1
- package/dist/lib/services/service-url.js +31 -31
- package/dist/lib/services/service-url.js.map +1 -1
- package/dist/lib/services/services.js +245 -245
- package/dist/lib/services/services.js.map +1 -1
- package/dist/lib/stateless-webex-plugin.js +28 -28
- package/dist/lib/stateless-webex-plugin.js.map +1 -1
- package/dist/lib/storage/decorators.js +27 -27
- package/dist/lib/storage/decorators.js.map +1 -1
- package/dist/lib/storage/errors.js +4 -4
- package/dist/lib/storage/errors.js.map +1 -1
- package/dist/lib/storage/index.js.map +1 -1
- package/dist/lib/storage/make-webex-plugin-store.js +44 -44
- package/dist/lib/storage/make-webex-plugin-store.js.map +1 -1
- package/dist/lib/storage/make-webex-store.js +40 -40
- package/dist/lib/storage/make-webex-store.js.map +1 -1
- package/dist/lib/storage/memory-store-adapter.js +9 -9
- package/dist/lib/storage/memory-store-adapter.js.map +1 -1
- package/dist/lib/webex-core-plugin-mixin.js +13 -13
- package/dist/lib/webex-core-plugin-mixin.js.map +1 -1
- package/dist/lib/webex-http-error.js +9 -9
- package/dist/lib/webex-http-error.js.map +1 -1
- package/dist/lib/webex-internal-core-plugin-mixin.js +13 -13
- package/dist/lib/webex-internal-core-plugin-mixin.js.map +1 -1
- package/dist/lib/webex-plugin.js +36 -36
- package/dist/lib/webex-plugin.js.map +1 -1
- package/dist/plugins/logger.js +9 -9
- package/dist/plugins/logger.js.map +1 -1
- package/dist/webex-core.js +104 -104
- package/dist/webex-core.js.map +1 -1
- package/dist/webex-internal-core.js +12 -12
- package/dist/webex-internal-core.js.map +1 -1
- package/jest.config.js +3 -3
- package/package.json +20 -19
- package/process +1 -1
- package/src/config.js +90 -90
- package/src/credentials-config.js +212 -212
- package/src/index.js +62 -62
- package/src/interceptors/auth.js +186 -186
- package/src/interceptors/default-options.js +55 -55
- package/src/interceptors/embargo.js +43 -43
- package/src/interceptors/network-timing.js +54 -54
- package/src/interceptors/payload-transformer.js +55 -55
- package/src/interceptors/rate-limit.js +169 -169
- package/src/interceptors/redirect.js +106 -106
- package/src/interceptors/request-event.js +93 -93
- package/src/interceptors/request-logger.js +78 -78
- package/src/interceptors/request-timing.js +65 -65
- package/src/interceptors/response-logger.js +98 -98
- package/src/interceptors/user-agent.js +77 -77
- package/src/interceptors/webex-tracking-id.js +73 -73
- package/src/interceptors/webex-user-agent.js +79 -79
- package/src/lib/batcher.js +307 -307
- package/src/lib/credentials/credentials.js +552 -552
- package/src/lib/credentials/grant-errors.js +92 -92
- package/src/lib/credentials/index.js +16 -16
- package/src/lib/credentials/scope.js +34 -34
- package/src/lib/credentials/token-collection.js +17 -17
- package/src/lib/credentials/token.js +559 -559
- package/src/lib/page.js +159 -159
- package/src/lib/services/constants.js +9 -9
- package/src/lib/services/index.js +26 -26
- package/src/lib/services/interceptors/server-error.js +48 -48
- package/src/lib/services/interceptors/service.js +101 -101
- package/src/lib/services/metrics.js +4 -4
- package/src/lib/services/service-catalog.js +435 -435
- package/src/lib/services/service-fed-ramp.js +4 -4
- package/src/lib/services/service-host.js +267 -267
- package/src/lib/services/service-registry.js +465 -465
- package/src/lib/services/service-state.js +78 -78
- package/src/lib/services/service-url.js +124 -124
- package/src/lib/services/services.js +1018 -1018
- package/src/lib/stateless-webex-plugin.js +98 -98
- package/src/lib/storage/decorators.js +220 -220
- package/src/lib/storage/errors.js +15 -15
- package/src/lib/storage/index.js +10 -10
- package/src/lib/storage/make-webex-plugin-store.js +211 -211
- package/src/lib/storage/make-webex-store.js +140 -140
- package/src/lib/storage/memory-store-adapter.js +79 -79
- package/src/lib/webex-core-plugin-mixin.js +114 -114
- package/src/lib/webex-http-error.js +61 -61
- package/src/lib/webex-internal-core-plugin-mixin.js +107 -107
- package/src/lib/webex-plugin.js +222 -222
- package/src/plugins/logger.js +60 -60
- package/src/webex-core.js +745 -745
- package/src/webex-internal-core.js +46 -46
- package/test/integration/spec/credentials/credentials.js +139 -139
- package/test/integration/spec/credentials/token.js +102 -102
- package/test/integration/spec/services/service-catalog.js +838 -838
- package/test/integration/spec/services/services.js +1221 -1221
- package/test/integration/spec/webex-core.js +178 -178
- package/test/unit/spec/_setup.js +44 -44
- package/test/unit/spec/credentials/credentials.js +1017 -1017
- package/test/unit/spec/credentials/token.js +441 -441
- package/test/unit/spec/interceptors/auth.js +521 -521
- package/test/unit/spec/interceptors/default-options.js +84 -84
- package/test/unit/spec/interceptors/embargo.js +144 -144
- package/test/unit/spec/interceptors/network-timing.js +49 -49
- package/test/unit/spec/interceptors/payload-transformer.js +155 -155
- package/test/unit/spec/interceptors/rate-limit.js +302 -302
- package/test/unit/spec/interceptors/redirect.js +102 -102
- package/test/unit/spec/interceptors/request-timing.js +92 -92
- package/test/unit/spec/interceptors/user-agent.js +76 -76
- package/test/unit/spec/interceptors/webex-tracking-id.js +76 -76
- package/test/unit/spec/interceptors/webex-user-agent.js +159 -159
- package/test/unit/spec/lib/batcher.js +330 -330
- package/test/unit/spec/lib/page.js +148 -148
- package/test/unit/spec/lib/webex-plugin.js +48 -48
- package/test/unit/spec/services/interceptors/server-error.js +204 -204
- package/test/unit/spec/services/interceptors/service.js +188 -188
- package/test/unit/spec/services/service-catalog.js +194 -194
- package/test/unit/spec/services/service-host.js +260 -260
- package/test/unit/spec/services/service-registry.js +747 -747
- package/test/unit/spec/services/service-state.js +60 -60
- package/test/unit/spec/services/service-url.js +258 -258
- package/test/unit/spec/services/services.js +348 -348
- package/test/unit/spec/storage/persist.js +50 -50
- package/test/unit/spec/storage/storage-adapter.js +12 -12
- package/test/unit/spec/storage/wait-for-value.js +81 -81
- package/test/unit/spec/webex-core.js +253 -253
- package/test/unit/spec/webex-internal-core.js +91 -91
|
@@ -1,92 +1,92 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
/* eslint camelcase: [0] */
|
|
6
|
-
|
|
7
|
-
import {Exception} from '@webex/common';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Error thrown during oauth flow
|
|
11
|
-
*/
|
|
12
|
-
export class OAuthError extends Exception {
|
|
13
|
-
/**
|
|
14
|
-
* @param {HttpResponse} res
|
|
15
|
-
* @returns {string}
|
|
16
|
-
*/
|
|
17
|
-
parse(res) {
|
|
18
|
-
// This error may be returned in an HTTPResponse or as part of a querystring
|
|
19
|
-
const body = res.body || res;
|
|
20
|
-
|
|
21
|
-
Object.defineProperties(this, {
|
|
22
|
-
error: {
|
|
23
|
-
enumerable: true,
|
|
24
|
-
value: body.error,
|
|
25
|
-
},
|
|
26
|
-
errorDescription: {
|
|
27
|
-
enumerable: true,
|
|
28
|
-
value: body.error_description,
|
|
29
|
-
},
|
|
30
|
-
errorUri: {
|
|
31
|
-
enumerable: true,
|
|
32
|
-
value: body.error_uri,
|
|
33
|
-
},
|
|
34
|
-
res: {
|
|
35
|
-
enumerable: false,
|
|
36
|
-
value: res,
|
|
37
|
-
},
|
|
38
|
-
});
|
|
39
|
-
|
|
40
|
-
return this.errorDescription;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* InvalidRequestError
|
|
45
|
-
*/
|
|
46
|
-
class InvalidRequestError extends OAuthError {}
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* InvalidClientError
|
|
50
|
-
*/
|
|
51
|
-
class InvalidClientError extends OAuthError {}
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* InvalidGrantError
|
|
55
|
-
*/
|
|
56
|
-
class InvalidGrantError extends OAuthError {}
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* UnauthorizedClientError
|
|
60
|
-
*/
|
|
61
|
-
class UnauthorizedClientError extends OAuthError {}
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* UnsupportGrantTypeError
|
|
65
|
-
*/
|
|
66
|
-
class UnsupportGrantTypeError extends OAuthError {}
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* InvalidScopeError
|
|
70
|
-
*/
|
|
71
|
-
class InvalidScopeError extends OAuthError {}
|
|
72
|
-
|
|
73
|
-
const errors = {
|
|
74
|
-
OAuthError,
|
|
75
|
-
InvalidRequestError,
|
|
76
|
-
InvalidClientError,
|
|
77
|
-
InvalidGrantError,
|
|
78
|
-
UnauthorizedClientError,
|
|
79
|
-
UnsupportGrantTypeError,
|
|
80
|
-
InvalidScopeError,
|
|
81
|
-
invalid_request: InvalidRequestError,
|
|
82
|
-
invalid_client: InvalidClientError,
|
|
83
|
-
invalid_grant: InvalidGrantError,
|
|
84
|
-
unauthorized_client: UnauthorizedClientError,
|
|
85
|
-
unsupported_grant_type: UnsupportGrantTypeError,
|
|
86
|
-
invalid_scope: InvalidScopeError,
|
|
87
|
-
select(errorString) {
|
|
88
|
-
return errors[errorString] || OAuthError;
|
|
89
|
-
},
|
|
90
|
-
};
|
|
91
|
-
|
|
92
|
-
export default errors;
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
/* eslint camelcase: [0] */
|
|
6
|
+
|
|
7
|
+
import {Exception} from '@webex/common';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Error thrown during oauth flow
|
|
11
|
+
*/
|
|
12
|
+
export class OAuthError extends Exception {
|
|
13
|
+
/**
|
|
14
|
+
* @param {HttpResponse} res
|
|
15
|
+
* @returns {string}
|
|
16
|
+
*/
|
|
17
|
+
parse(res) {
|
|
18
|
+
// This error may be returned in an HTTPResponse or as part of a querystring
|
|
19
|
+
const body = res.body || res;
|
|
20
|
+
|
|
21
|
+
Object.defineProperties(this, {
|
|
22
|
+
error: {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
value: body.error,
|
|
25
|
+
},
|
|
26
|
+
errorDescription: {
|
|
27
|
+
enumerable: true,
|
|
28
|
+
value: body.error_description,
|
|
29
|
+
},
|
|
30
|
+
errorUri: {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
value: body.error_uri,
|
|
33
|
+
},
|
|
34
|
+
res: {
|
|
35
|
+
enumerable: false,
|
|
36
|
+
value: res,
|
|
37
|
+
},
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
return this.errorDescription;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* InvalidRequestError
|
|
45
|
+
*/
|
|
46
|
+
class InvalidRequestError extends OAuthError {}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* InvalidClientError
|
|
50
|
+
*/
|
|
51
|
+
class InvalidClientError extends OAuthError {}
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* InvalidGrantError
|
|
55
|
+
*/
|
|
56
|
+
class InvalidGrantError extends OAuthError {}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* UnauthorizedClientError
|
|
60
|
+
*/
|
|
61
|
+
class UnauthorizedClientError extends OAuthError {}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* UnsupportGrantTypeError
|
|
65
|
+
*/
|
|
66
|
+
class UnsupportGrantTypeError extends OAuthError {}
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* InvalidScopeError
|
|
70
|
+
*/
|
|
71
|
+
class InvalidScopeError extends OAuthError {}
|
|
72
|
+
|
|
73
|
+
const errors = {
|
|
74
|
+
OAuthError,
|
|
75
|
+
InvalidRequestError,
|
|
76
|
+
InvalidClientError,
|
|
77
|
+
InvalidGrantError,
|
|
78
|
+
UnauthorizedClientError,
|
|
79
|
+
UnsupportGrantTypeError,
|
|
80
|
+
InvalidScopeError,
|
|
81
|
+
invalid_request: InvalidRequestError,
|
|
82
|
+
invalid_client: InvalidClientError,
|
|
83
|
+
invalid_grant: InvalidGrantError,
|
|
84
|
+
unauthorized_client: UnauthorizedClientError,
|
|
85
|
+
unsupported_grant_type: UnsupportGrantTypeError,
|
|
86
|
+
invalid_scope: InvalidScopeError,
|
|
87
|
+
select(errorString) {
|
|
88
|
+
return errors[errorString] || OAuthError;
|
|
89
|
+
},
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
export default errors;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import {registerPlugin} from '../../webex-core';
|
|
6
|
-
|
|
7
|
-
import Credentials from './credentials';
|
|
8
|
-
|
|
9
|
-
registerPlugin('credentials', Credentials, {
|
|
10
|
-
proxies: ['canAuthorize', 'canRefresh'],
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
export {default as Credentials} from './credentials';
|
|
14
|
-
export {filterScope, sortScope} from './scope';
|
|
15
|
-
export {default as Token} from './token';
|
|
16
|
-
export {default as grantErrors} from './grant-errors';
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import {registerPlugin} from '../../webex-core';
|
|
6
|
+
|
|
7
|
+
import Credentials from './credentials';
|
|
8
|
+
|
|
9
|
+
registerPlugin('credentials', Credentials, {
|
|
10
|
+
proxies: ['canAuthorize', 'canRefresh'],
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
export {default as Credentials} from './credentials';
|
|
14
|
+
export {filterScope, sortScope} from './scope';
|
|
15
|
+
export {default as Token} from './token';
|
|
16
|
+
export {default as grantErrors} from './grant-errors';
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* sorts a list of scopes
|
|
7
|
-
* @param {string} scope
|
|
8
|
-
* @returns {string}
|
|
9
|
-
*/
|
|
10
|
-
export function sortScope(scope) {
|
|
11
|
-
if (!scope) {
|
|
12
|
-
return '';
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
return scope.split(' ').sort().join(' ');
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* sorts a list of scopes and filters the specified scope
|
|
20
|
-
* @param {string} toFilter
|
|
21
|
-
* @param {string} scope
|
|
22
|
-
* @returns {string}
|
|
23
|
-
*/
|
|
24
|
-
export function filterScope(toFilter, scope) {
|
|
25
|
-
if (!scope) {
|
|
26
|
-
return '';
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
return scope
|
|
30
|
-
.split(' ')
|
|
31
|
-
.filter((item) => item !== toFilter)
|
|
32
|
-
.sort()
|
|
33
|
-
.join(' ');
|
|
34
|
-
}
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* sorts a list of scopes
|
|
7
|
+
* @param {string} scope
|
|
8
|
+
* @returns {string}
|
|
9
|
+
*/
|
|
10
|
+
export function sortScope(scope) {
|
|
11
|
+
if (!scope) {
|
|
12
|
+
return '';
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
return scope.split(' ').sort().join(' ');
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* sorts a list of scopes and filters the specified scope
|
|
20
|
+
* @param {string} toFilter
|
|
21
|
+
* @param {string} scope
|
|
22
|
+
* @returns {string}
|
|
23
|
+
*/
|
|
24
|
+
export function filterScope(toFilter, scope) {
|
|
25
|
+
if (!scope) {
|
|
26
|
+
return '';
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
return scope
|
|
30
|
+
.split(' ')
|
|
31
|
+
.filter((item) => item !== toFilter)
|
|
32
|
+
.sort()
|
|
33
|
+
.join(' ');
|
|
34
|
+
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import AmpCollection from 'ampersand-collection';
|
|
6
|
-
|
|
7
|
-
import Token from './token';
|
|
8
|
-
|
|
9
|
-
const TokenCollection = AmpCollection.extend({
|
|
10
|
-
mainIndex: 'scope',
|
|
11
|
-
|
|
12
|
-
model: Token,
|
|
13
|
-
|
|
14
|
-
namespace: 'Credentials',
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
export default TokenCollection;
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import AmpCollection from 'ampersand-collection';
|
|
6
|
+
|
|
7
|
+
import Token from './token';
|
|
8
|
+
|
|
9
|
+
const TokenCollection = AmpCollection.extend({
|
|
10
|
+
mainIndex: 'scope',
|
|
11
|
+
|
|
12
|
+
model: Token,
|
|
13
|
+
|
|
14
|
+
namespace: 'Credentials',
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
export default TokenCollection;
|