@or-sdk/authorizer 0.24.14-beta.971.0 → 0.24.14
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/CHANGELOG.md +8 -0
- package/dist/cjs/Basic/BasicAuth.js +162 -0
- package/dist/cjs/Basic/BasicAuth.js.map +1 -0
- package/dist/cjs/Basic/BasicCollection.js +24 -117
- package/dist/cjs/Basic/BasicCollection.js.map +1 -1
- package/dist/cjs/OAuth/OAuth.js +49 -78
- package/dist/cjs/OAuth/OAuth.js.map +1 -1
- package/dist/cjs/OAuth/OAuthCollection.js +10 -25
- package/dist/cjs/OAuth/OAuthCollection.js.map +1 -1
- package/dist/cjs/OAuth/types.js.map +1 -1
- package/dist/cjs/Token/TokenAuth.js +140 -0
- package/dist/cjs/Token/TokenAuth.js.map +1 -0
- package/dist/cjs/Token/TokenCollection.js +22 -88
- package/dist/cjs/Token/TokenCollection.js.map +1 -1
- package/dist/cjs/index.js +13 -8
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/Basic/BasicAuth.js +88 -0
- package/dist/esm/Basic/BasicAuth.js.map +1 -0
- package/dist/esm/Basic/BasicCollection.js +21 -83
- package/dist/esm/Basic/BasicCollection.js.map +1 -1
- package/dist/esm/OAuth/OAuth.js +35 -60
- package/dist/esm/OAuth/OAuth.js.map +1 -1
- package/dist/esm/OAuth/OAuthCollection.js +10 -24
- package/dist/esm/OAuth/OAuthCollection.js.map +1 -1
- package/dist/esm/OAuth/types.js.map +1 -1
- package/dist/esm/Token/TokenAuth.js +66 -0
- package/dist/esm/Token/TokenAuth.js.map +1 -0
- package/dist/esm/Token/TokenCollection.js +20 -55
- package/dist/esm/Token/TokenCollection.js.map +1 -1
- package/dist/esm/index.js +6 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/types/Basic/BasicAuth.d.ts +20 -0
- package/dist/types/Basic/BasicAuth.d.ts.map +1 -0
- package/dist/types/Basic/BasicCollection.d.ts +7 -17
- package/dist/types/Basic/BasicCollection.d.ts.map +1 -1
- package/dist/types/Basic/types.d.ts +1 -3
- package/dist/types/Basic/types.d.ts.map +1 -1
- package/dist/types/OAuth/OAuth.d.ts +1 -1
- package/dist/types/OAuth/OAuth.d.ts.map +1 -1
- package/dist/types/OAuth/OAuthCollection.d.ts +6 -9
- package/dist/types/OAuth/OAuthCollection.d.ts.map +1 -1
- package/dist/types/OAuth/types.d.ts +1 -9
- package/dist/types/OAuth/types.d.ts.map +1 -1
- package/dist/types/Token/TokenAuth.d.ts +12 -0
- package/dist/types/Token/TokenAuth.d.ts.map +1 -0
- package/dist/types/Token/TokenCollection.d.ts +8 -9
- package/dist/types/Token/TokenCollection.d.ts.map +1 -1
- package/dist/types/Token/types.d.ts +0 -2
- package/dist/types/Token/types.d.ts.map +1 -1
- package/dist/types/index.d.ts +6 -3
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +6 -38
- package/src/Basic/BasicAuth.ts +129 -0
- package/src/Basic/BasicCollection.ts +30 -141
- package/src/Basic/types.ts +1 -3
- package/src/OAuth/OAuth.ts +51 -109
- package/src/OAuth/OAuthCollection.ts +18 -48
- package/src/OAuth/types.ts +3 -32
- package/src/Token/TokenAuth.ts +102 -0
- package/src/Token/TokenCollection.ts +28 -98
- package/src/Token/types.ts +0 -2
- package/src/index.ts +8 -3
- package/dist/cjs/Basic/index.js +0 -21
- package/dist/cjs/Basic/index.js.map +0 -1
- package/dist/cjs/OAuth/index.js +0 -23
- package/dist/cjs/OAuth/index.js.map +0 -1
- package/dist/cjs/Token/index.js +0 -21
- package/dist/cjs/Token/index.js.map +0 -1
- package/dist/esm/Basic/index.js +0 -3
- package/dist/esm/Basic/index.js.map +0 -1
- package/dist/esm/OAuth/index.js +0 -4
- package/dist/esm/OAuth/index.js.map +0 -1
- package/dist/esm/Token/index.js +0 -3
- package/dist/esm/Token/index.js.map +0 -1
- package/dist/types/Basic/index.d.ts +0 -3
- package/dist/types/Basic/index.d.ts.map +0 -1
- package/dist/types/OAuth/index.d.ts +0 -4
- package/dist/types/OAuth/index.d.ts.map +0 -1
- package/dist/types/Token/index.d.ts +0 -3
- package/dist/types/Token/index.d.ts.map +0 -1
- package/src/Basic/index.ts +0 -3
- package/src/OAuth/index.ts +0 -4
- package/src/Token/index.ts +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasicCollection.d.ts","sourceRoot":"","sources":["../../../src/Basic/BasicCollection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BasicCollection.d.ts","sourceRoot":"","sources":["../../../src/Basic/BasicCollection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EACL,qBAAqB,EACrB,iCAAiC,EAClC,MAAM,SAAS,CAAC;AAEjB,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;gBAE/B,MAAM,EAAE,qBAAqB;IAe5B,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IASvC,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IA0BjD,mBAAmB,CAC9B,MAAM,EAAE,iCAAiC,GACxC,OAAO,CAAC,SAAS,CAAC;CAUtB"}
|
|
@@ -6,7 +6,6 @@ export declare type BasicAuthConfig = {
|
|
|
6
6
|
authKey: string;
|
|
7
7
|
};
|
|
8
8
|
export declare type BasicAuthData = {
|
|
9
|
-
key: string;
|
|
10
9
|
auth_name: string;
|
|
11
10
|
access_token: string;
|
|
12
11
|
date_created: string;
|
|
@@ -23,7 +22,6 @@ export declare type CreateBasicAuthInCollectionConfig = Omit<CreateBasicAuthConf
|
|
|
23
22
|
export declare type BasicCollectionConfig = {
|
|
24
23
|
token: Token;
|
|
25
24
|
discoveryUrl: string;
|
|
26
|
-
|
|
27
|
-
serviceName?: string;
|
|
25
|
+
serviceName: string;
|
|
28
26
|
};
|
|
29
27
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/Basic/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,oBAAY,eAAe,GAAG;IAI5B,KAAK,EAAE,KAAK,CAAC;IAIb,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,aAAa,GAAG;IAC1B,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/Basic/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,oBAAY,eAAe,GAAG;IAI5B,KAAK,EAAE,KAAK,CAAC;IAIb,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,aAAa,GAAG;IAC1B,SAAS,EAAE,MAAM,CAAC;IAKlB,YAAY,EAAE,MAAM,CAAC;IAKrB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,oBAAY,qBAAqB,GAAG;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IAIrB,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AAEF,oBAAY,iCAAiC,GAAG,IAAI,CAAC,qBAAqB,EAAE,aAAa,GAAG,cAAc,GAAG,OAAO,CAAC,CAAC;AAEtH,oBAAY,qBAAqB,GAAG;IAIlC,KAAK,EAAE,KAAK,CAAC;IAIb,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC"}
|
|
@@ -5,7 +5,7 @@ export declare class OAuth {
|
|
|
5
5
|
private readonly serviceName;
|
|
6
6
|
private readonly keyValueCollection;
|
|
7
7
|
private readonly keyValueStorage;
|
|
8
|
-
private readonly
|
|
8
|
+
private readonly eventManager;
|
|
9
9
|
constructor(params: OAuthConfig);
|
|
10
10
|
static create(params: CreateOAuthConfig): Promise<CreateOAuthResult>;
|
|
11
11
|
private getOAuthAppById;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OAuth.d.ts","sourceRoot":"","sources":["../../../src/OAuth/OAuth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OAuth.d.ts","sourceRoot":"","sources":["../../../src/OAuth/OAuth.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,WAAW,EACX,SAAS,EACT,QAAQ,EACR,iBAAiB,EACjB,iBAAiB,EAElB,MAAM,SAAS,CAAC;AAejB,qBAAa,KAAK;IAChB,OAAO,CAAC,MAAM,CAAoB;IAElC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAC5C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;gBAEhC,MAAM,EAAE,WAAW;WA+ClB,MAAM,CACjB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,iBAAiB,CAAC;YA+If,eAAe;YAuBf,oBAAoB;IAqCrB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IA2ClC,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC;IAsCjC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA4CxB,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC;IAoChC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAQrC"}
|
|
@@ -1,17 +1,14 @@
|
|
|
1
|
-
import { List } from '@or-sdk/base';
|
|
2
1
|
import { OAuth } from './OAuth';
|
|
3
|
-
import { CreateOAuthInCollectionConfig, CreateOAuthResult,
|
|
2
|
+
import { OAuthCollectionConfig, CreateOAuthInCollectionConfig, CreateOAuthResult, OAuthApp } from './types';
|
|
4
3
|
export declare class OAuthCollection {
|
|
5
|
-
private serviceName;
|
|
6
|
-
private keyValueCollection;
|
|
7
|
-
private keyValueStorage;
|
|
8
|
-
private localAccountId;
|
|
4
|
+
private readonly serviceName;
|
|
5
|
+
private readonly keyValueCollection;
|
|
6
|
+
private readonly keyValueStorage;
|
|
9
7
|
private readonly localToken;
|
|
10
8
|
private readonly localDiscoveryUrl;
|
|
11
9
|
constructor(params: OAuthCollectionConfig);
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
listOAuthApps(): Promise<List<OAuthApp>>;
|
|
10
|
+
listAuthorizations(): Promise<string[]>;
|
|
11
|
+
listOAuthApps(): Promise<OAuthApp[]>;
|
|
15
12
|
getAuthorization(key: string): Promise<OAuth>;
|
|
16
13
|
createAuthorization(params: CreateOAuthInCollectionConfig): Promise<CreateOAuthResult>;
|
|
17
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OAuthCollection.d.ts","sourceRoot":"","sources":["../../../src/OAuth/OAuthCollection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OAuthCollection.d.ts","sourceRoot":"","sources":["../../../src/OAuth/OAuthCollection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE5G,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAC5C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;gBAE/B,MAAM,EAAE,qBAAqB;IAgB5B,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAWvC,aAAa,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAwBpC,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAwC7C,mBAAmB,CAC9B,MAAM,EAAE,6BAA6B,GACpC,OAAO,CAAC,iBAAiB,CAAC;CAW9B"}
|
|
@@ -6,9 +6,6 @@ export declare type OAuthConfig = {
|
|
|
6
6
|
serviceName: string;
|
|
7
7
|
keyValueCollection?: string;
|
|
8
8
|
authKey: string;
|
|
9
|
-
accountId?: string;
|
|
10
|
-
eventManagerUrl?: string;
|
|
11
|
-
providersAccountId?: string;
|
|
12
9
|
};
|
|
13
10
|
export declare type OAuthData = {
|
|
14
11
|
auth_name: string;
|
|
@@ -32,9 +29,6 @@ export declare type CreateOAuthConfig = {
|
|
|
32
29
|
scope?: Array<string>;
|
|
33
30
|
token: Token;
|
|
34
31
|
discoveryUrl: string;
|
|
35
|
-
eventManagerUrl?: string;
|
|
36
|
-
accountId?: string;
|
|
37
|
-
providersAccountId?: string;
|
|
38
32
|
};
|
|
39
33
|
export declare type CreateOAuthInCollectionConfig = Omit<CreateOAuthConfig, 'discoveryUrl' | 'serviceName' | 'token' | 'keyValueCollection'>;
|
|
40
34
|
export declare type CreateOAuthResult = {
|
|
@@ -59,11 +53,9 @@ export declare type CreateOAuthAppConfig = {
|
|
|
59
53
|
export declare type OAuthCollectionConfig = {
|
|
60
54
|
token: Token;
|
|
61
55
|
discoveryUrl: string;
|
|
62
|
-
|
|
63
|
-
serviceName?: string;
|
|
56
|
+
serviceName: string;
|
|
64
57
|
keyValueCollection?: string;
|
|
65
58
|
};
|
|
66
|
-
export declare type OAuthCollectionInitConfig = Pick<OAuthCollectionConfig, 'serviceName' | 'keyValueCollection'>;
|
|
67
59
|
export declare type ServiceDefinitionConfig = {
|
|
68
60
|
serviceName: string;
|
|
69
61
|
requestDataType: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/OAuth/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,oBAAY,WAAW,GAAG;IAIxB,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/OAuth/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TokenAuthConfig, TokenAuthData, CreateTokenAuthConfig } from './types';
|
|
2
|
+
export declare class TokenAuth {
|
|
3
|
+
private readonly authKey;
|
|
4
|
+
private readonly serviceName;
|
|
5
|
+
private readonly keyValueStorage;
|
|
6
|
+
constructor(params: TokenAuthConfig);
|
|
7
|
+
static create(params: CreateTokenAuthConfig): Promise<TokenAuth>;
|
|
8
|
+
update(newCredentials: Record<string, unknown>): Promise<TokenAuthData>;
|
|
9
|
+
getAuthData(): Promise<TokenAuthData>;
|
|
10
|
+
delete(): Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=TokenAuth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TokenAuth.d.ts","sourceRoot":"","sources":["../../../src/Token/TokenAuth.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEhF,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;gBAEtC,MAAM,EAAE,eAAe;WA2BtB,MAAM,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,SAAS,CAAC;IAkCzD,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAiBvE,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC;IAQrC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAGrC"}
|
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { TokenCollectionConfig, CreateTokenAuthInCollectionConfig
|
|
1
|
+
import { TokenAuth } from './TokenAuth';
|
|
2
|
+
import { TokenCollectionConfig, CreateTokenAuthInCollectionConfig } from './types';
|
|
3
3
|
export declare class TokenCollection {
|
|
4
|
-
private serviceName;
|
|
4
|
+
private readonly serviceName;
|
|
5
5
|
private readonly keyValueStorage;
|
|
6
|
+
private readonly localToken;
|
|
7
|
+
private readonly localDiscoveryUrl;
|
|
6
8
|
constructor(params: TokenCollectionConfig);
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
createAuthorization(params: CreateTokenAuthInCollectionConfig): Promise<TokenAuthData>;
|
|
11
|
-
updateAuthorization(tokenAuth: TokenAuthData, newCredentials: Record<string, unknown>): Promise<TokenAuthData>;
|
|
12
|
-
deleteAuthorization(key: string): Promise<void>;
|
|
9
|
+
listAuthorizations(): Promise<string[]>;
|
|
10
|
+
getAuthorization(key: string): Promise<TokenAuth>;
|
|
11
|
+
createAuthorization(params: CreateTokenAuthInCollectionConfig): Promise<TokenAuth>;
|
|
13
12
|
}
|
|
14
13
|
//# sourceMappingURL=TokenCollection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenCollection.d.ts","sourceRoot":"","sources":["../../../src/Token/TokenCollection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TokenCollection.d.ts","sourceRoot":"","sources":["../../../src/Token/TokenCollection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EACL,qBAAqB,EACrB,iCAAiC,EAClC,MAAM,SAAS,CAAC;AAEjB,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;gBAE/B,MAAM,EAAE,qBAAqB;IAe5B,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IASvC,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IA2BjD,mBAAmB,CAC9B,MAAM,EAAE,iCAAiC,GACxC,OAAO,CAAC,SAAS,CAAC;CAStB"}
|
|
@@ -7,7 +7,6 @@ export declare type TokenAuthConfig = {
|
|
|
7
7
|
};
|
|
8
8
|
export declare type TokenAuthData = {
|
|
9
9
|
auth_name: string;
|
|
10
|
-
key: string;
|
|
11
10
|
date_created: string;
|
|
12
11
|
[credentialKey: string]: string;
|
|
13
12
|
};
|
|
@@ -23,6 +22,5 @@ export declare type TokenCollectionConfig = {
|
|
|
23
22
|
token: Token;
|
|
24
23
|
discoveryUrl: string;
|
|
25
24
|
serviceName: string;
|
|
26
|
-
accountId?: string;
|
|
27
25
|
};
|
|
28
26
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/Token/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,oBAAY,eAAe,GAAG;IAI5B,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,aAAa,GAAG;IAC1B,SAAS,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/Token/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,oBAAY,eAAe,GAAG;IAI5B,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,aAAa,GAAG;IAC1B,SAAS,EAAE,MAAM,CAAC;IAIlB,YAAY,EAAE,MAAM,CAAC;IAKrB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;CACjC,CAAC;AAEF,oBAAY,qBAAqB,GAAG;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IAKjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAKrC,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,oBAAY,iCAAiC,GAAG,IAAI,CAAC,qBAAqB,EAAE,aAAa,GAAG,cAAc,GAAG,OAAO,CAAC,CAAC;AAEtH,oBAAY,qBAAqB,GAAG;IAIlC,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
1
|
+
export { BasicAuth } from './Basic/BasicAuth';
|
|
2
|
+
export { BasicCollection } from './Basic/BasicCollection';
|
|
3
|
+
export { TokenAuth } from './Token/TokenAuth';
|
|
4
|
+
export { TokenCollection } from './Token/TokenCollection';
|
|
5
|
+
export { OAuth } from './OAuth/OAuth';
|
|
6
|
+
export { OAuthCollection } from './OAuth/OAuthCollection';
|
|
4
7
|
export * from './types';
|
|
5
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,cAAc,SAAS,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,40 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@or-sdk/authorizer",
|
|
3
|
-
"version": "0.24.14
|
|
3
|
+
"version": "0.24.14",
|
|
4
4
|
"main": "dist/cjs/index.js",
|
|
5
5
|
"module": "dist/esm/index.js",
|
|
6
6
|
"types": "dist/types/index.d.ts",
|
|
7
|
-
"typesVersions": {
|
|
8
|
-
"*": {
|
|
9
|
-
"Basic": [
|
|
10
|
-
"dist/types/Basic/index.d.ts"
|
|
11
|
-
],
|
|
12
|
-
"OAuth": [
|
|
13
|
-
"dist/types/OAuth/index.d.ts"
|
|
14
|
-
],
|
|
15
|
-
"Token": [
|
|
16
|
-
"dist/types/Token/index.d.ts"
|
|
17
|
-
]
|
|
18
|
-
}
|
|
19
|
-
},
|
|
20
|
-
"exports": {
|
|
21
|
-
".": {
|
|
22
|
-
"import": "./dist/esm/index.js",
|
|
23
|
-
"require": "./dist/cjs/index.js"
|
|
24
|
-
},
|
|
25
|
-
"./Basic": {
|
|
26
|
-
"import": "./dist/esm/Basic/index.js",
|
|
27
|
-
"require": "./dist/cjs/Basic/index.js"
|
|
28
|
-
},
|
|
29
|
-
"./OAuth": {
|
|
30
|
-
"import": "./dist/esm/OAuth/index.js",
|
|
31
|
-
"require": "./dist/cjs/OAuth/index.js"
|
|
32
|
-
},
|
|
33
|
-
"./Token": {
|
|
34
|
-
"import": "./dist/esm/Token/index.js",
|
|
35
|
-
"require": "./dist/cjs/Token/index.js"
|
|
36
|
-
}
|
|
37
|
-
},
|
|
38
7
|
"scripts": {
|
|
39
8
|
"build": "pnpm clean && pnpm build:esm && pnpm build:cjs",
|
|
40
9
|
"build:cjs": "tsc --project tsconfig.json",
|
|
@@ -48,11 +17,9 @@
|
|
|
48
17
|
"dev": "pnpm build:watch:esm"
|
|
49
18
|
},
|
|
50
19
|
"dependencies": {
|
|
51
|
-
"@or-sdk/base": "^0.28.
|
|
52
|
-
"@or-sdk/
|
|
53
|
-
"@or-sdk/
|
|
54
|
-
"@or-sdk/key-value-storage": "^0.25.8",
|
|
55
|
-
"@or-sdk/providers": "^0.2.2-beta.971.0",
|
|
20
|
+
"@or-sdk/base": "^0.28.1",
|
|
21
|
+
"@or-sdk/event-manager": "^0.24.9",
|
|
22
|
+
"@or-sdk/key-value-storage": "^0.25.9",
|
|
56
23
|
"uuid": "^8.3.2"
|
|
57
24
|
},
|
|
58
25
|
"devDependencies": {
|
|
@@ -62,5 +29,6 @@
|
|
|
62
29
|
},
|
|
63
30
|
"publishConfig": {
|
|
64
31
|
"access": "public"
|
|
65
|
-
}
|
|
32
|
+
},
|
|
33
|
+
"gitHead": "8e38a61a989e142e8f8c90fdb5e2706ce2e396c5"
|
|
66
34
|
}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { KeyValueStorage } from '@or-sdk/key-value-storage';
|
|
2
|
+
|
|
3
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
4
|
+
|
|
5
|
+
import { BasicAuthConfig, BasicAuthData, CreateBasicAuthConfig } from './types';
|
|
6
|
+
|
|
7
|
+
import { createAuthKey } from './utils/createAuthKey';
|
|
8
|
+
|
|
9
|
+
export class BasicAuth {
|
|
10
|
+
private readonly authKey: string;
|
|
11
|
+
private readonly serviceName: string;
|
|
12
|
+
private readonly keyValueStorage: KeyValueStorage;
|
|
13
|
+
|
|
14
|
+
constructor(params: BasicAuthConfig) {
|
|
15
|
+
const { token, discoveryUrl, authKey, serviceName } = params;
|
|
16
|
+
|
|
17
|
+
this.authKey = authKey;
|
|
18
|
+
this.serviceName = serviceName;
|
|
19
|
+
this.keyValueStorage = new KeyValueStorage({
|
|
20
|
+
token,
|
|
21
|
+
discoveryUrl,
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Encodes username and passoword into Basic authorization token
|
|
27
|
+
*/
|
|
28
|
+
static encodeAccessToken(username: string, password: string): string {
|
|
29
|
+
return btoa(`${username}:${password}`);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Decodes base64 encoded token and parses it to username and password
|
|
34
|
+
*/
|
|
35
|
+
static decodeAccessToken(token: string): {username: string; password: string;} {
|
|
36
|
+
const [username, password] = atob(token).split(':');
|
|
37
|
+
return {
|
|
38
|
+
username,
|
|
39
|
+
password,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Creates a new auth record in specified collection with the given config.
|
|
45
|
+
* @returns BasicAuth instance connected to created auth
|
|
46
|
+
*
|
|
47
|
+
* ```typescript
|
|
48
|
+
* const basicAuthInstance = await BasicAuth.create({
|
|
49
|
+
* token: 'my-account-token-string',
|
|
50
|
+
* discoveryUrl: 'discovery.example.onereach.ai',
|
|
51
|
+
* serviceName: '__authorization_service_test_service',
|
|
52
|
+
* authName: 'my-auth-name',
|
|
53
|
+
* username: 'user',
|
|
54
|
+
* password: 'pass'
|
|
55
|
+
* });
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
static async create(params: CreateBasicAuthConfig): Promise<BasicAuth> {
|
|
59
|
+
if (!(params.serviceName && params.authName && params.username && params.password && params.discoveryUrl && params.token)) {
|
|
60
|
+
throw new Error('Invalid config passed');
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
const { serviceName, authName, username, password, discoveryUrl, token } = params;
|
|
64
|
+
|
|
65
|
+
const keyValueStorage = new KeyValueStorage({
|
|
66
|
+
token,
|
|
67
|
+
discoveryUrl,
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
const id = uuidv4();
|
|
71
|
+
const authKey = createAuthKey(id, authName);
|
|
72
|
+
|
|
73
|
+
const authData = {
|
|
74
|
+
auth_name: authName,
|
|
75
|
+
access_token: BasicAuth.encodeAccessToken(username, password),
|
|
76
|
+
date_created: new Date().toISOString(),
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
await keyValueStorage.setValueByKey(serviceName, authKey, authData);
|
|
80
|
+
|
|
81
|
+
return new BasicAuth({
|
|
82
|
+
serviceName,
|
|
83
|
+
authKey,
|
|
84
|
+
discoveryUrl,
|
|
85
|
+
token,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Updates username or password
|
|
91
|
+
*/
|
|
92
|
+
public async update(newCredentials: { username?: string; password?: string; }): Promise<BasicAuthData> {
|
|
93
|
+
const data = await this.getAuthData();
|
|
94
|
+
let { username, password } = BasicAuth.decodeAccessToken(data.access_token);
|
|
95
|
+
|
|
96
|
+
if (newCredentials.username) {
|
|
97
|
+
username = newCredentials.username;
|
|
98
|
+
}
|
|
99
|
+
if (newCredentials.password) {
|
|
100
|
+
password = newCredentials.password;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
const updatedAccessToken = BasicAuth.encodeAccessToken(username, password);
|
|
104
|
+
const updatedData = {
|
|
105
|
+
...data,
|
|
106
|
+
access_token: updatedAccessToken,
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
const response = await this.keyValueStorage.setValueByKey(this.serviceName, this.authKey, updatedData);
|
|
110
|
+
|
|
111
|
+
const updatedRecord = response.value;
|
|
112
|
+
return updatedRecord as BasicAuthData;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Returns authorization data
|
|
117
|
+
*/
|
|
118
|
+
public async getAuthData(): Promise<BasicAuthData> {
|
|
119
|
+
const { value } = await this.keyValueStorage.getValueByKey(this.serviceName, this.authKey);
|
|
120
|
+
return value as BasicAuthData;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* Deletes authorization from collection
|
|
125
|
+
*/
|
|
126
|
+
public async delete(): Promise<void> {
|
|
127
|
+
await this.keyValueStorage.deleteKey(this.serviceName, this.authKey);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Token } from '@or-sdk/base';
|
|
2
2
|
import { KeyValueStorage } from '@or-sdk/key-value-storage';
|
|
3
|
-
import {
|
|
4
|
-
import { createAuthKey } from './utils/createAuthKey';
|
|
5
|
-
import { v4 as uuidv4 } from 'uuid';
|
|
3
|
+
import { BasicAuth } from './BasicAuth';
|
|
6
4
|
|
|
7
5
|
import {
|
|
8
6
|
BasicCollectionConfig,
|
|
@@ -10,95 +8,55 @@ import {
|
|
|
10
8
|
} from './types';
|
|
11
9
|
|
|
12
10
|
export class BasicCollection {
|
|
13
|
-
private serviceName: string;
|
|
11
|
+
private readonly serviceName: string;
|
|
14
12
|
private readonly keyValueStorage: KeyValueStorage;
|
|
13
|
+
private readonly localToken: Token;
|
|
14
|
+
private readonly localDiscoveryUrl: string;
|
|
15
15
|
|
|
16
16
|
constructor(params: BasicCollectionConfig) {
|
|
17
|
-
const { token, discoveryUrl, serviceName
|
|
17
|
+
const { token, discoveryUrl, serviceName } = params;
|
|
18
18
|
|
|
19
|
-
this.
|
|
19
|
+
this.localToken = token;
|
|
20
|
+
this.localDiscoveryUrl = discoveryUrl;
|
|
21
|
+
this.serviceName = serviceName;
|
|
20
22
|
this.keyValueStorage = new KeyValueStorage({
|
|
21
23
|
token,
|
|
22
24
|
discoveryUrl,
|
|
23
|
-
accountId,
|
|
24
25
|
});
|
|
25
26
|
}
|
|
26
27
|
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Allows to explicitly (re-)set authorization service name
|
|
30
|
-
*/
|
|
31
|
-
public init(serviceName: string) {
|
|
32
|
-
if (!serviceName) throw new Error('Service name is required.');
|
|
33
|
-
|
|
34
|
-
this.serviceName = serviceName;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Encodes username and password into Basic authorization token
|
|
40
|
-
*/
|
|
41
|
-
static encodeAccessToken(username: string, password: string): string {
|
|
42
|
-
return btoa(`${username}:${password}`);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* Decodes base64 encoded token and parses it to username and password
|
|
47
|
-
*/
|
|
48
|
-
static decodeAccessToken(token: string): {username: string; password: string;} {
|
|
49
|
-
const [username, password] = atob(token).split(':');
|
|
50
|
-
return {
|
|
51
|
-
username,
|
|
52
|
-
password,
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
|
|
57
28
|
/**
|
|
58
29
|
* Returns array of auth keys from this collection
|
|
59
30
|
*/
|
|
60
|
-
public async listAuthorizations(): Promise<
|
|
31
|
+
public async listAuthorizations(): Promise<string[]> {
|
|
61
32
|
const { items: records } = await this.keyValueStorage.listKeys(this.serviceName);
|
|
62
33
|
|
|
63
|
-
return
|
|
34
|
+
return records.map((record) => record.key);
|
|
64
35
|
}
|
|
65
36
|
|
|
66
|
-
|
|
67
37
|
/**
|
|
68
38
|
* Returns BasicAuth instance for given key
|
|
69
39
|
*/
|
|
70
|
-
public async getAuthorization(key: string): Promise<
|
|
71
|
-
|
|
72
|
-
if (!key.includes('::basic')) throw new Error('The basic authorization key should contain "basic" type specifier.');
|
|
73
|
-
|
|
74
|
-
const record = await this.keyValueStorage.getValueByKey(this.serviceName, encodeURIComponent(key));
|
|
75
|
-
|
|
40
|
+
public async getAuthorization(key: string): Promise<BasicAuth> {
|
|
41
|
+
const record = await this.keyValueStorage.getValueByKey(this.serviceName, key);
|
|
76
42
|
if (!record.value) {
|
|
77
|
-
throw new Error('Authorization does not exist
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
const authRecord = record.value as Omit<BasicAuthData, 'key'>;
|
|
82
|
-
|
|
83
|
-
if (!authRecord.auth_name || !authRecord.access_token || !authRecord.date_created) {
|
|
84
|
-
throw new Error('Authorization does not exist or invalid.');
|
|
43
|
+
throw new Error('Authorization does not exist');
|
|
85
44
|
}
|
|
86
45
|
|
|
87
|
-
return {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}
|
|
46
|
+
return new BasicAuth({
|
|
47
|
+
serviceName: this.serviceName,
|
|
48
|
+
authKey: key,
|
|
49
|
+
discoveryUrl: this.localDiscoveryUrl,
|
|
50
|
+
token: this.localToken,
|
|
51
|
+
});
|
|
93
52
|
}
|
|
94
53
|
|
|
95
|
-
|
|
96
54
|
/**
|
|
97
55
|
* Creates a new auth record in current collection with the given config.
|
|
98
56
|
* @returns BasicAuth instance connected to created auth
|
|
99
57
|
*
|
|
100
58
|
* ```typescript
|
|
101
|
-
* const
|
|
59
|
+
* const basicAuthInstance = await basicCollectionInstance.createAuthorization({
|
|
102
60
|
* authName: 'my-auth-name',
|
|
103
61
|
* username: 'user',
|
|
104
62
|
* password: 'pass'
|
|
@@ -107,83 +65,14 @@ export class BasicCollection {
|
|
|
107
65
|
*/
|
|
108
66
|
public async createAuthorization(
|
|
109
67
|
params: CreateBasicAuthInCollectionConfig
|
|
110
|
-
): Promise<
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
const id = uuidv4();
|
|
122
|
-
const authKey = createAuthKey(id, authName);
|
|
123
|
-
|
|
124
|
-
const authData = {
|
|
125
|
-
auth_name: authName,
|
|
126
|
-
access_token: BasicCollection.encodeAccessToken(username, password),
|
|
127
|
-
date_created: new Date().toISOString(),
|
|
128
|
-
} as Omit<BasicAuthData, 'key'>;
|
|
129
|
-
|
|
130
|
-
await this.keyValueStorage.setValueByKey(this.serviceName, encodeURIComponent(authKey), authData);
|
|
131
|
-
|
|
132
|
-
return {
|
|
133
|
-
...authData,
|
|
134
|
-
key: authKey,
|
|
135
|
-
} as BasicAuthData;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
/**
|
|
140
|
-
* Returns array of auth keys from this collection
|
|
141
|
-
*/
|
|
142
|
-
public async updateAuthorization(
|
|
143
|
-
basicAuth: BasicAuthData,
|
|
144
|
-
newCredentials: { username?: string; password?: string; }
|
|
145
|
-
): Promise<BasicAuthData> {
|
|
146
|
-
if (!basicAuth || !basicAuth.key || !basicAuth.access_token) {
|
|
147
|
-
throw new Error('Authorization is invalid.');
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
if (!this.serviceName) throw new Error('Service name is not defined.');
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
let { username, password } = BasicCollection.decodeAccessToken(basicAuth.access_token);
|
|
154
|
-
|
|
155
|
-
if (newCredentials.username) {
|
|
156
|
-
username = newCredentials.username;
|
|
157
|
-
}
|
|
158
|
-
if (newCredentials.password) {
|
|
159
|
-
password = newCredentials.password;
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
const access_token = BasicCollection.encodeAccessToken(username, password);
|
|
163
|
-
const response = await this.keyValueStorage.setValueByKey(
|
|
164
|
-
this.serviceName,
|
|
165
|
-
encodeURIComponent(basicAuth.key),
|
|
166
|
-
{
|
|
167
|
-
auth_name: basicAuth.auth_name,
|
|
168
|
-
date_created: basicAuth.date_created,
|
|
169
|
-
access_token,
|
|
170
|
-
}
|
|
171
|
-
);
|
|
172
|
-
|
|
173
|
-
const updatedData = response.value as Omit<BasicAuthData, 'key'>;
|
|
174
|
-
return {
|
|
175
|
-
...updatedData,
|
|
176
|
-
key: basicAuth.key,
|
|
177
|
-
} as BasicAuthData;
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
/**
|
|
182
|
-
* Deletes authorization from collection
|
|
183
|
-
*/
|
|
184
|
-
public async deleteAuthorization(authKey: string): Promise<void> {
|
|
185
|
-
if (!this.serviceName) throw new Error('Service name is not defined.');
|
|
186
|
-
await this.keyValueStorage.deleteKey(this.serviceName, encodeURIComponent(authKey));
|
|
68
|
+
): Promise<BasicAuth> {
|
|
69
|
+
return await BasicAuth.create({
|
|
70
|
+
discoveryUrl: this.localDiscoveryUrl,
|
|
71
|
+
token: this.localToken,
|
|
72
|
+
serviceName: this.serviceName,
|
|
73
|
+
authName: params.authName,
|
|
74
|
+
password: params.password,
|
|
75
|
+
username: params.username,
|
|
76
|
+
});
|
|
187
77
|
}
|
|
188
78
|
}
|
|
189
|
-
|
package/src/Basic/types.ts
CHANGED
|
@@ -14,7 +14,6 @@ export type BasicAuthConfig = {
|
|
|
14
14
|
};
|
|
15
15
|
|
|
16
16
|
export type BasicAuthData = {
|
|
17
|
-
key: string;
|
|
18
17
|
auth_name: string;
|
|
19
18
|
|
|
20
19
|
/**
|
|
@@ -51,6 +50,5 @@ export type BasicCollectionConfig = {
|
|
|
51
50
|
* function which return token
|
|
52
51
|
*/
|
|
53
52
|
discoveryUrl: string;
|
|
54
|
-
|
|
55
|
-
serviceName?: string;
|
|
53
|
+
serviceName: string;
|
|
56
54
|
};
|