@etsoo/appscript 1.5.30 → 1.5.32
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/lib/cjs/app/CoreApp.js +18 -12
- package/lib/cjs/erp/AuthApi.d.ts +32 -0
- package/lib/cjs/erp/AuthApi.js +36 -0
- package/lib/cjs/erp/rq/GetSigninUrlRQ.d.ts +13 -0
- package/lib/cjs/erp/rq/GetSigninUrlRQ.js +2 -0
- package/lib/cjs/erp/rq/SignoutRQ.d.ts +13 -0
- package/lib/cjs/erp/rq/SignoutRQ.js +2 -0
- package/lib/cjs/erp/rq/TokenRQ.d.ts +9 -0
- package/lib/cjs/erp/rq/TokenRQ.js +2 -0
- package/lib/cjs/index.d.ts +3 -0
- package/lib/cjs/index.js +3 -0
- package/lib/mjs/app/CoreApp.js +18 -12
- package/lib/mjs/erp/AuthApi.d.ts +32 -0
- package/lib/mjs/erp/AuthApi.js +36 -0
- package/lib/mjs/erp/rq/GetSigninUrlRQ.d.ts +13 -0
- package/lib/mjs/erp/rq/GetSigninUrlRQ.js +1 -0
- package/lib/mjs/erp/rq/SignoutRQ.d.ts +13 -0
- package/lib/mjs/erp/rq/SignoutRQ.js +1 -0
- package/lib/mjs/erp/rq/TokenRQ.d.ts +9 -0
- package/lib/mjs/erp/rq/TokenRQ.js +1 -0
- package/lib/mjs/index.d.ts +3 -0
- package/lib/mjs/index.js +3 -0
- package/package.json +1 -1
- package/src/app/CoreApp.ts +26 -20
- package/src/erp/AuthApi.ts +44 -0
- package/src/erp/rq/GetSigninUrlRQ.ts +14 -0
- package/src/erp/rq/SignoutRQ.ts +14 -0
- package/src/erp/rq/TokenRQ.ts +9 -0
- package/src/index.ts +3 -0
package/lib/cjs/app/CoreApp.js
CHANGED
|
@@ -11,6 +11,7 @@ const EntityStatus_1 = require("../business/EntityStatus");
|
|
|
11
11
|
const ActionResultError_1 = require("../result/ActionResultError");
|
|
12
12
|
const IApp_1 = require("./IApp");
|
|
13
13
|
const UserRole_1 = require("./UserRole");
|
|
14
|
+
const AuthApi_1 = require("../erp/AuthApi");
|
|
14
15
|
let CJ;
|
|
15
16
|
const loadCrypto = () => import('crypto-js');
|
|
16
17
|
/**
|
|
@@ -1418,9 +1419,7 @@ class CoreApp {
|
|
|
1418
1419
|
*/
|
|
1419
1420
|
async exchangeToken(api, token) {
|
|
1420
1421
|
// Call the API quietly, no loading bar and no error popup
|
|
1421
|
-
const data = await
|
|
1422
|
-
token
|
|
1423
|
-
}, {
|
|
1422
|
+
const data = await new AuthApi_1.AuthApi(this).exchangeToken({ token }, {
|
|
1424
1423
|
showLoading: false,
|
|
1425
1424
|
onError: (error) => {
|
|
1426
1425
|
console.error(`CoreApp.${api.name}.ExchangeToken error`, error);
|
|
@@ -1470,9 +1469,7 @@ class CoreApp {
|
|
|
1470
1469
|
*/
|
|
1471
1470
|
async apiRefreshToken(api, token) {
|
|
1472
1471
|
// Call the API quietly, no loading bar and no error popup
|
|
1473
|
-
const data = await
|
|
1474
|
-
token
|
|
1475
|
-
}, {
|
|
1472
|
+
const data = await new AuthApi_1.AuthApi(this).apiRefreshToken({ token }, {
|
|
1476
1473
|
showLoading: false,
|
|
1477
1474
|
onError: (error) => {
|
|
1478
1475
|
console.error(`CoreApp.${api.name}.apiRefreshToken error`, error);
|
|
@@ -1549,13 +1546,22 @@ class CoreApp {
|
|
|
1549
1546
|
* @param apiUrl Signout API URL
|
|
1550
1547
|
*/
|
|
1551
1548
|
async signout() {
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
|
|
1549
|
+
const token = this.getCacheToken();
|
|
1550
|
+
if (token) {
|
|
1551
|
+
const result = await new AuthApi_1.AuthApi(this).signout({
|
|
1552
|
+
deviceId: this.deviceId,
|
|
1553
|
+
token: this.encrypt(token)
|
|
1554
|
+
}, {
|
|
1555
|
+
onError: (error) => {
|
|
1556
|
+
console.error(`CoreApp.${this.name}.signout error`, error);
|
|
1557
|
+
// Prevent further processing
|
|
1558
|
+
return false;
|
|
1559
|
+
}
|
|
1560
|
+
});
|
|
1561
|
+
if (result && !result.ok) {
|
|
1562
|
+
console.error(`CoreApp.${this.name}.signout failed`, result);
|
|
1557
1563
|
}
|
|
1558
|
-
}
|
|
1564
|
+
}
|
|
1559
1565
|
// Clear, noTrigger = true, avoid state update
|
|
1560
1566
|
this.userLogout(true, true);
|
|
1561
1567
|
// Go to login page
|
package/lib/cjs/erp/AuthApi.d.ts
CHANGED
|
@@ -5,10 +5,35 @@ import { ResultPayload } from './dto/ResultPayload';
|
|
|
5
5
|
import { LoginRQ } from './rq/LoginRQ';
|
|
6
6
|
import { ResetPasswordRQ } from './rq/ResetPasswordRQ';
|
|
7
7
|
import { IActionResult } from '@etsoo/shared';
|
|
8
|
+
import { SignoutRQ } from './rq/SignoutRQ';
|
|
9
|
+
import { GetSigninUrlRQ } from './rq/GetSigninUrlRQ';
|
|
10
|
+
import { TokenRQ } from './rq/TokenRQ';
|
|
11
|
+
import { ApiRefreshTokenDto } from './dto/ApiRefreshTokenDto';
|
|
8
12
|
/**
|
|
9
13
|
* Authentication API
|
|
10
14
|
*/
|
|
11
15
|
export declare class AuthApi extends BaseApi {
|
|
16
|
+
/**
|
|
17
|
+
* API refresh token
|
|
18
|
+
* @param rq Request data
|
|
19
|
+
* @param payload Payload
|
|
20
|
+
* @returns Result
|
|
21
|
+
*/
|
|
22
|
+
apiRefreshToken(rq: TokenRQ, payload?: IApiPayload<ApiRefreshTokenDto>): Promise<ApiRefreshTokenDto | undefined>;
|
|
23
|
+
/**
|
|
24
|
+
* Exchange token
|
|
25
|
+
* @param rq Request data
|
|
26
|
+
* @param payload Payload
|
|
27
|
+
* @returns Result
|
|
28
|
+
*/
|
|
29
|
+
exchangeToken(rq: TokenRQ, payload?: IApiPayload<ApiRefreshTokenDto>): Promise<ApiRefreshTokenDto | undefined>;
|
|
30
|
+
/**
|
|
31
|
+
* Get signin url
|
|
32
|
+
* @param rq Request data
|
|
33
|
+
* @param payload Payload
|
|
34
|
+
* @returns Result
|
|
35
|
+
*/
|
|
36
|
+
getSigninUrl(rq: GetSigninUrlRQ, payload?: IApiPayload<string>): Promise<string | undefined>;
|
|
12
37
|
/**
|
|
13
38
|
* Login
|
|
14
39
|
* @param rq Request data
|
|
@@ -31,4 +56,11 @@ export declare class AuthApi extends BaseApi {
|
|
|
31
56
|
* @returns Result
|
|
32
57
|
*/
|
|
33
58
|
resetPassword(rq: ResetPasswordRQ, payload?: ResultPayload): Promise<IActionResult<{}> | undefined>;
|
|
59
|
+
/**
|
|
60
|
+
* Signout
|
|
61
|
+
* @param rq Request data
|
|
62
|
+
* @param payload Payload
|
|
63
|
+
* @returns Result
|
|
64
|
+
*/
|
|
65
|
+
signout(rq: SignoutRQ, payload?: ResultPayload): Promise<IActionResult<{}> | undefined>;
|
|
34
66
|
}
|
package/lib/cjs/erp/AuthApi.js
CHANGED
|
@@ -6,6 +6,33 @@ const BaseApi_1 = require("./BaseApi");
|
|
|
6
6
|
* Authentication API
|
|
7
7
|
*/
|
|
8
8
|
class AuthApi extends BaseApi_1.BaseApi {
|
|
9
|
+
/**
|
|
10
|
+
* API refresh token
|
|
11
|
+
* @param rq Request data
|
|
12
|
+
* @param payload Payload
|
|
13
|
+
* @returns Result
|
|
14
|
+
*/
|
|
15
|
+
apiRefreshToken(rq, payload) {
|
|
16
|
+
return this.api.post('Auth/ApiRefreshToken', rq, payload);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Exchange token
|
|
20
|
+
* @param rq Request data
|
|
21
|
+
* @param payload Payload
|
|
22
|
+
* @returns Result
|
|
23
|
+
*/
|
|
24
|
+
exchangeToken(rq, payload) {
|
|
25
|
+
return this.api.post('Auth/ExchangeToken', rq, payload);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Get signin url
|
|
29
|
+
* @param rq Request data
|
|
30
|
+
* @param payload Payload
|
|
31
|
+
* @returns Result
|
|
32
|
+
*/
|
|
33
|
+
getSigninUrl(rq, payload) {
|
|
34
|
+
return this.api.post('Auth/GetSigninUrl', rq, payload);
|
|
35
|
+
}
|
|
9
36
|
/**
|
|
10
37
|
* Login
|
|
11
38
|
* @param rq Request data
|
|
@@ -46,5 +73,14 @@ class AuthApi extends BaseApi_1.BaseApi {
|
|
|
46
73
|
resetPassword(rq, payload) {
|
|
47
74
|
return this.api.put('Auth/ResetPassword', rq, payload);
|
|
48
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* Signout
|
|
78
|
+
* @param rq Request data
|
|
79
|
+
* @param payload Payload
|
|
80
|
+
* @returns Result
|
|
81
|
+
*/
|
|
82
|
+
signout(rq, payload) {
|
|
83
|
+
return this.api.put('Auth/Signout', rq, payload);
|
|
84
|
+
}
|
|
49
85
|
}
|
|
50
86
|
exports.AuthApi = AuthApi;
|
package/lib/cjs/index.d.ts
CHANGED
|
@@ -44,6 +44,7 @@ export * from './erp/dto/PlaceParsedDto';
|
|
|
44
44
|
export * from './erp/dto/ResponseActionMessageDto';
|
|
45
45
|
export * from './erp/dto/ResultPayload';
|
|
46
46
|
export * from './erp/rq/AuthRequest';
|
|
47
|
+
export * from './erp/rq/GetSigninUrlRQ';
|
|
47
48
|
export * from './erp/rq/LoginIdRQ';
|
|
48
49
|
export * from './erp/rq/LoginRQ';
|
|
49
50
|
export * from './erp/rq/MemberListRQ';
|
|
@@ -59,7 +60,9 @@ export * from './erp/rq/RefreshTokenRQ';
|
|
|
59
60
|
export * from './erp/rq/RegionsRQ';
|
|
60
61
|
export * from './erp/rq/ResetPasswordRQ';
|
|
61
62
|
export * from './erp/rq/SendActionMessageRQ';
|
|
63
|
+
export * from './erp/rq/SignoutRQ';
|
|
62
64
|
export * from './erp/rq/TiplistRQ';
|
|
65
|
+
export * from './erp/rq/TokenRQ';
|
|
63
66
|
export * from './erp/rq/UpdateStatusRQ';
|
|
64
67
|
export * from './erp/AddressApi';
|
|
65
68
|
export * from './erp/AuthApi';
|
package/lib/cjs/index.js
CHANGED
|
@@ -69,6 +69,7 @@ __exportStar(require("./erp/dto/ResponseActionMessageDto"), exports);
|
|
|
69
69
|
__exportStar(require("./erp/dto/ResultPayload"), exports);
|
|
70
70
|
// erp rq
|
|
71
71
|
__exportStar(require("./erp/rq/AuthRequest"), exports);
|
|
72
|
+
__exportStar(require("./erp/rq/GetSigninUrlRQ"), exports);
|
|
72
73
|
__exportStar(require("./erp/rq/LoginIdRQ"), exports);
|
|
73
74
|
__exportStar(require("./erp/rq/LoginRQ"), exports);
|
|
74
75
|
__exportStar(require("./erp/rq/MemberListRQ"), exports);
|
|
@@ -84,7 +85,9 @@ __exportStar(require("./erp/rq/RefreshTokenRQ"), exports);
|
|
|
84
85
|
__exportStar(require("./erp/rq/RegionsRQ"), exports);
|
|
85
86
|
__exportStar(require("./erp/rq/ResetPasswordRQ"), exports);
|
|
86
87
|
__exportStar(require("./erp/rq/SendActionMessageRQ"), exports);
|
|
88
|
+
__exportStar(require("./erp/rq/SignoutRQ"), exports);
|
|
87
89
|
__exportStar(require("./erp/rq/TiplistRQ"), exports);
|
|
90
|
+
__exportStar(require("./erp/rq/TokenRQ"), exports);
|
|
88
91
|
__exportStar(require("./erp/rq/UpdateStatusRQ"), exports);
|
|
89
92
|
// erp api
|
|
90
93
|
__exportStar(require("./erp/AddressApi"), exports);
|
package/lib/mjs/app/CoreApp.js
CHANGED
|
@@ -8,6 +8,7 @@ import { EntityStatus } from '../business/EntityStatus';
|
|
|
8
8
|
import { ActionResultError } from '../result/ActionResultError';
|
|
9
9
|
import { appFields } from './IApp';
|
|
10
10
|
import { UserRole } from './UserRole';
|
|
11
|
+
import { AuthApi } from '../erp/AuthApi';
|
|
11
12
|
let CJ;
|
|
12
13
|
const loadCrypto = () => import('crypto-js');
|
|
13
14
|
/**
|
|
@@ -1415,9 +1416,7 @@ export class CoreApp {
|
|
|
1415
1416
|
*/
|
|
1416
1417
|
async exchangeToken(api, token) {
|
|
1417
1418
|
// Call the API quietly, no loading bar and no error popup
|
|
1418
|
-
const data = await
|
|
1419
|
-
token
|
|
1420
|
-
}, {
|
|
1419
|
+
const data = await new AuthApi(this).exchangeToken({ token }, {
|
|
1421
1420
|
showLoading: false,
|
|
1422
1421
|
onError: (error) => {
|
|
1423
1422
|
console.error(`CoreApp.${api.name}.ExchangeToken error`, error);
|
|
@@ -1467,9 +1466,7 @@ export class CoreApp {
|
|
|
1467
1466
|
*/
|
|
1468
1467
|
async apiRefreshToken(api, token) {
|
|
1469
1468
|
// Call the API quietly, no loading bar and no error popup
|
|
1470
|
-
const data = await
|
|
1471
|
-
token
|
|
1472
|
-
}, {
|
|
1469
|
+
const data = await new AuthApi(this).apiRefreshToken({ token }, {
|
|
1473
1470
|
showLoading: false,
|
|
1474
1471
|
onError: (error) => {
|
|
1475
1472
|
console.error(`CoreApp.${api.name}.apiRefreshToken error`, error);
|
|
@@ -1546,13 +1543,22 @@ export class CoreApp {
|
|
|
1546
1543
|
* @param apiUrl Signout API URL
|
|
1547
1544
|
*/
|
|
1548
1545
|
async signout() {
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1546
|
+
const token = this.getCacheToken();
|
|
1547
|
+
if (token) {
|
|
1548
|
+
const result = await new AuthApi(this).signout({
|
|
1549
|
+
deviceId: this.deviceId,
|
|
1550
|
+
token: this.encrypt(token)
|
|
1551
|
+
}, {
|
|
1552
|
+
onError: (error) => {
|
|
1553
|
+
console.error(`CoreApp.${this.name}.signout error`, error);
|
|
1554
|
+
// Prevent further processing
|
|
1555
|
+
return false;
|
|
1556
|
+
}
|
|
1557
|
+
});
|
|
1558
|
+
if (result && !result.ok) {
|
|
1559
|
+
console.error(`CoreApp.${this.name}.signout failed`, result);
|
|
1554
1560
|
}
|
|
1555
|
-
}
|
|
1561
|
+
}
|
|
1556
1562
|
// Clear, noTrigger = true, avoid state update
|
|
1557
1563
|
this.userLogout(true, true);
|
|
1558
1564
|
// Go to login page
|
package/lib/mjs/erp/AuthApi.d.ts
CHANGED
|
@@ -5,10 +5,35 @@ import { ResultPayload } from './dto/ResultPayload';
|
|
|
5
5
|
import { LoginRQ } from './rq/LoginRQ';
|
|
6
6
|
import { ResetPasswordRQ } from './rq/ResetPasswordRQ';
|
|
7
7
|
import { IActionResult } from '@etsoo/shared';
|
|
8
|
+
import { SignoutRQ } from './rq/SignoutRQ';
|
|
9
|
+
import { GetSigninUrlRQ } from './rq/GetSigninUrlRQ';
|
|
10
|
+
import { TokenRQ } from './rq/TokenRQ';
|
|
11
|
+
import { ApiRefreshTokenDto } from './dto/ApiRefreshTokenDto';
|
|
8
12
|
/**
|
|
9
13
|
* Authentication API
|
|
10
14
|
*/
|
|
11
15
|
export declare class AuthApi extends BaseApi {
|
|
16
|
+
/**
|
|
17
|
+
* API refresh token
|
|
18
|
+
* @param rq Request data
|
|
19
|
+
* @param payload Payload
|
|
20
|
+
* @returns Result
|
|
21
|
+
*/
|
|
22
|
+
apiRefreshToken(rq: TokenRQ, payload?: IApiPayload<ApiRefreshTokenDto>): Promise<ApiRefreshTokenDto | undefined>;
|
|
23
|
+
/**
|
|
24
|
+
* Exchange token
|
|
25
|
+
* @param rq Request data
|
|
26
|
+
* @param payload Payload
|
|
27
|
+
* @returns Result
|
|
28
|
+
*/
|
|
29
|
+
exchangeToken(rq: TokenRQ, payload?: IApiPayload<ApiRefreshTokenDto>): Promise<ApiRefreshTokenDto | undefined>;
|
|
30
|
+
/**
|
|
31
|
+
* Get signin url
|
|
32
|
+
* @param rq Request data
|
|
33
|
+
* @param payload Payload
|
|
34
|
+
* @returns Result
|
|
35
|
+
*/
|
|
36
|
+
getSigninUrl(rq: GetSigninUrlRQ, payload?: IApiPayload<string>): Promise<string | undefined>;
|
|
12
37
|
/**
|
|
13
38
|
* Login
|
|
14
39
|
* @param rq Request data
|
|
@@ -31,4 +56,11 @@ export declare class AuthApi extends BaseApi {
|
|
|
31
56
|
* @returns Result
|
|
32
57
|
*/
|
|
33
58
|
resetPassword(rq: ResetPasswordRQ, payload?: ResultPayload): Promise<IActionResult<{}> | undefined>;
|
|
59
|
+
/**
|
|
60
|
+
* Signout
|
|
61
|
+
* @param rq Request data
|
|
62
|
+
* @param payload Payload
|
|
63
|
+
* @returns Result
|
|
64
|
+
*/
|
|
65
|
+
signout(rq: SignoutRQ, payload?: ResultPayload): Promise<IActionResult<{}> | undefined>;
|
|
34
66
|
}
|
package/lib/mjs/erp/AuthApi.js
CHANGED
|
@@ -3,6 +3,33 @@ import { BaseApi } from './BaseApi';
|
|
|
3
3
|
* Authentication API
|
|
4
4
|
*/
|
|
5
5
|
export class AuthApi extends BaseApi {
|
|
6
|
+
/**
|
|
7
|
+
* API refresh token
|
|
8
|
+
* @param rq Request data
|
|
9
|
+
* @param payload Payload
|
|
10
|
+
* @returns Result
|
|
11
|
+
*/
|
|
12
|
+
apiRefreshToken(rq, payload) {
|
|
13
|
+
return this.api.post('Auth/ApiRefreshToken', rq, payload);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Exchange token
|
|
17
|
+
* @param rq Request data
|
|
18
|
+
* @param payload Payload
|
|
19
|
+
* @returns Result
|
|
20
|
+
*/
|
|
21
|
+
exchangeToken(rq, payload) {
|
|
22
|
+
return this.api.post('Auth/ExchangeToken', rq, payload);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Get signin url
|
|
26
|
+
* @param rq Request data
|
|
27
|
+
* @param payload Payload
|
|
28
|
+
* @returns Result
|
|
29
|
+
*/
|
|
30
|
+
getSigninUrl(rq, payload) {
|
|
31
|
+
return this.api.post('Auth/GetSigninUrl', rq, payload);
|
|
32
|
+
}
|
|
6
33
|
/**
|
|
7
34
|
* Login
|
|
8
35
|
* @param rq Request data
|
|
@@ -43,4 +70,13 @@ export class AuthApi extends BaseApi {
|
|
|
43
70
|
resetPassword(rq, payload) {
|
|
44
71
|
return this.api.put('Auth/ResetPassword', rq, payload);
|
|
45
72
|
}
|
|
73
|
+
/**
|
|
74
|
+
* Signout
|
|
75
|
+
* @param rq Request data
|
|
76
|
+
* @param payload Payload
|
|
77
|
+
* @returns Result
|
|
78
|
+
*/
|
|
79
|
+
signout(rq, payload) {
|
|
80
|
+
return this.api.put('Auth/Signout', rq, payload);
|
|
81
|
+
}
|
|
46
82
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/lib/mjs/index.d.ts
CHANGED
|
@@ -44,6 +44,7 @@ export * from './erp/dto/PlaceParsedDto';
|
|
|
44
44
|
export * from './erp/dto/ResponseActionMessageDto';
|
|
45
45
|
export * from './erp/dto/ResultPayload';
|
|
46
46
|
export * from './erp/rq/AuthRequest';
|
|
47
|
+
export * from './erp/rq/GetSigninUrlRQ';
|
|
47
48
|
export * from './erp/rq/LoginIdRQ';
|
|
48
49
|
export * from './erp/rq/LoginRQ';
|
|
49
50
|
export * from './erp/rq/MemberListRQ';
|
|
@@ -59,7 +60,9 @@ export * from './erp/rq/RefreshTokenRQ';
|
|
|
59
60
|
export * from './erp/rq/RegionsRQ';
|
|
60
61
|
export * from './erp/rq/ResetPasswordRQ';
|
|
61
62
|
export * from './erp/rq/SendActionMessageRQ';
|
|
63
|
+
export * from './erp/rq/SignoutRQ';
|
|
62
64
|
export * from './erp/rq/TiplistRQ';
|
|
65
|
+
export * from './erp/rq/TokenRQ';
|
|
63
66
|
export * from './erp/rq/UpdateStatusRQ';
|
|
64
67
|
export * from './erp/AddressApi';
|
|
65
68
|
export * from './erp/AuthApi';
|
package/lib/mjs/index.js
CHANGED
|
@@ -52,6 +52,7 @@ export * from './erp/dto/ResponseActionMessageDto';
|
|
|
52
52
|
export * from './erp/dto/ResultPayload';
|
|
53
53
|
// erp rq
|
|
54
54
|
export * from './erp/rq/AuthRequest';
|
|
55
|
+
export * from './erp/rq/GetSigninUrlRQ';
|
|
55
56
|
export * from './erp/rq/LoginIdRQ';
|
|
56
57
|
export * from './erp/rq/LoginRQ';
|
|
57
58
|
export * from './erp/rq/MemberListRQ';
|
|
@@ -67,7 +68,9 @@ export * from './erp/rq/RefreshTokenRQ';
|
|
|
67
68
|
export * from './erp/rq/RegionsRQ';
|
|
68
69
|
export * from './erp/rq/ResetPasswordRQ';
|
|
69
70
|
export * from './erp/rq/SendActionMessageRQ';
|
|
71
|
+
export * from './erp/rq/SignoutRQ';
|
|
70
72
|
export * from './erp/rq/TiplistRQ';
|
|
73
|
+
export * from './erp/rq/TokenRQ';
|
|
71
74
|
export * from './erp/rq/UpdateStatusRQ';
|
|
72
75
|
// erp api
|
|
73
76
|
export * from './erp/AddressApi';
|
package/package.json
CHANGED
package/src/app/CoreApp.ts
CHANGED
|
@@ -46,6 +46,7 @@ import type CryptoJS from 'crypto-js';
|
|
|
46
46
|
import { Currency } from '../business/Currency';
|
|
47
47
|
import { ExternalEndpoint } from './ExternalSettings';
|
|
48
48
|
import { ApiRefreshTokenDto } from '../erp/dto/ApiRefreshTokenDto';
|
|
49
|
+
import { AuthApi } from '../erp/AuthApi';
|
|
49
50
|
|
|
50
51
|
type CJType = typeof CryptoJS;
|
|
51
52
|
let CJ: CJType;
|
|
@@ -1961,11 +1962,8 @@ export abstract class CoreApp<
|
|
|
1961
1962
|
*/
|
|
1962
1963
|
async exchangeToken(api: IApi, token: string) {
|
|
1963
1964
|
// Call the API quietly, no loading bar and no error popup
|
|
1964
|
-
const data = await
|
|
1965
|
-
|
|
1966
|
-
{
|
|
1967
|
-
token
|
|
1968
|
-
},
|
|
1965
|
+
const data = await new AuthApi(this).exchangeToken(
|
|
1966
|
+
{ token },
|
|
1969
1967
|
{
|
|
1970
1968
|
showLoading: false,
|
|
1971
1969
|
onError: (error) => {
|
|
@@ -2031,11 +2029,8 @@ export abstract class CoreApp<
|
|
|
2031
2029
|
token: string
|
|
2032
2030
|
): Promise<[string, number] | undefined> {
|
|
2033
2031
|
// Call the API quietly, no loading bar and no error popup
|
|
2034
|
-
const data = await
|
|
2035
|
-
|
|
2036
|
-
{
|
|
2037
|
-
token
|
|
2038
|
-
},
|
|
2032
|
+
const data = await new AuthApi(this).apiRefreshToken(
|
|
2033
|
+
{ token },
|
|
2039
2034
|
{
|
|
2040
2035
|
showLoading: false,
|
|
2041
2036
|
onError: (error) => {
|
|
@@ -2049,7 +2044,6 @@ export abstract class CoreApp<
|
|
|
2049
2044
|
}
|
|
2050
2045
|
}
|
|
2051
2046
|
);
|
|
2052
|
-
|
|
2053
2047
|
if (data == null) return undefined;
|
|
2054
2048
|
|
|
2055
2049
|
// Update the access token
|
|
@@ -2126,17 +2120,29 @@ export abstract class CoreApp<
|
|
|
2126
2120
|
* @param apiUrl Signout API URL
|
|
2127
2121
|
*/
|
|
2128
2122
|
async signout() {
|
|
2129
|
-
|
|
2130
|
-
|
|
2131
|
-
|
|
2132
|
-
|
|
2133
|
-
|
|
2134
|
-
|
|
2135
|
-
|
|
2136
|
-
|
|
2123
|
+
const token = this.getCacheToken();
|
|
2124
|
+
if (token) {
|
|
2125
|
+
const result = await new AuthApi(this).signout(
|
|
2126
|
+
{
|
|
2127
|
+
deviceId: this.deviceId,
|
|
2128
|
+
token: this.encrypt(token)
|
|
2129
|
+
},
|
|
2130
|
+
{
|
|
2131
|
+
onError: (error) => {
|
|
2132
|
+
console.error(
|
|
2133
|
+
`CoreApp.${this.name}.signout error`,
|
|
2134
|
+
error
|
|
2135
|
+
);
|
|
2136
|
+
// Prevent further processing
|
|
2137
|
+
return false;
|
|
2138
|
+
}
|
|
2137
2139
|
}
|
|
2140
|
+
);
|
|
2141
|
+
|
|
2142
|
+
if (result && !result.ok) {
|
|
2143
|
+
console.error(`CoreApp.${this.name}.signout failed`, result);
|
|
2138
2144
|
}
|
|
2139
|
-
|
|
2145
|
+
}
|
|
2140
2146
|
|
|
2141
2147
|
// Clear, noTrigger = true, avoid state update
|
|
2142
2148
|
this.userLogout(true, true);
|
package/src/erp/AuthApi.ts
CHANGED
|
@@ -6,11 +6,45 @@ import { LoginIdRQ } from './rq/LoginIdRQ';
|
|
|
6
6
|
import { LoginRQ } from './rq/LoginRQ';
|
|
7
7
|
import { ResetPasswordRQ } from './rq/ResetPasswordRQ';
|
|
8
8
|
import { IActionResult } from '@etsoo/shared';
|
|
9
|
+
import { SignoutRQ } from './rq/SignoutRQ';
|
|
10
|
+
import { GetSigninUrlRQ } from './rq/GetSigninUrlRQ';
|
|
11
|
+
import { TokenRQ } from './rq/TokenRQ';
|
|
12
|
+
import { ApiRefreshTokenDto } from './dto/ApiRefreshTokenDto';
|
|
9
13
|
|
|
10
14
|
/**
|
|
11
15
|
* Authentication API
|
|
12
16
|
*/
|
|
13
17
|
export class AuthApi extends BaseApi {
|
|
18
|
+
/**
|
|
19
|
+
* API refresh token
|
|
20
|
+
* @param rq Request data
|
|
21
|
+
* @param payload Payload
|
|
22
|
+
* @returns Result
|
|
23
|
+
*/
|
|
24
|
+
apiRefreshToken(rq: TokenRQ, payload?: IApiPayload<ApiRefreshTokenDto>) {
|
|
25
|
+
return this.api.post('Auth/ApiRefreshToken', rq, payload);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Exchange token
|
|
30
|
+
* @param rq Request data
|
|
31
|
+
* @param payload Payload
|
|
32
|
+
* @returns Result
|
|
33
|
+
*/
|
|
34
|
+
exchangeToken(rq: TokenRQ, payload?: IApiPayload<ApiRefreshTokenDto>) {
|
|
35
|
+
return this.api.post('Auth/ExchangeToken', rq, payload);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Get signin url
|
|
40
|
+
* @param rq Request data
|
|
41
|
+
* @param payload Payload
|
|
42
|
+
* @returns Result
|
|
43
|
+
*/
|
|
44
|
+
getSigninUrl(rq: GetSigninUrlRQ, payload?: IApiPayload<string>) {
|
|
45
|
+
return this.api.post('Auth/GetSigninUrl', rq, payload);
|
|
46
|
+
}
|
|
47
|
+
|
|
14
48
|
/**
|
|
15
49
|
* Login
|
|
16
50
|
* @param rq Request data
|
|
@@ -57,4 +91,14 @@ export class AuthApi extends BaseApi {
|
|
|
57
91
|
resetPassword(rq: ResetPasswordRQ, payload?: ResultPayload) {
|
|
58
92
|
return this.api.put('Auth/ResetPassword', rq, payload);
|
|
59
93
|
}
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Signout
|
|
97
|
+
* @param rq Request data
|
|
98
|
+
* @param payload Payload
|
|
99
|
+
* @returns Result
|
|
100
|
+
*/
|
|
101
|
+
signout(rq: SignoutRQ, payload?: ResultPayload) {
|
|
102
|
+
return this.api.put('Auth/Signout', rq, payload);
|
|
103
|
+
}
|
|
60
104
|
}
|
package/src/index.ts
CHANGED
|
@@ -59,6 +59,7 @@ export * from './erp/dto/ResultPayload';
|
|
|
59
59
|
|
|
60
60
|
// erp rq
|
|
61
61
|
export * from './erp/rq/AuthRequest';
|
|
62
|
+
export * from './erp/rq/GetSigninUrlRQ';
|
|
62
63
|
export * from './erp/rq/LoginIdRQ';
|
|
63
64
|
export * from './erp/rq/LoginRQ';
|
|
64
65
|
export * from './erp/rq/MemberListRQ';
|
|
@@ -74,7 +75,9 @@ export * from './erp/rq/RefreshTokenRQ';
|
|
|
74
75
|
export * from './erp/rq/RegionsRQ';
|
|
75
76
|
export * from './erp/rq/ResetPasswordRQ';
|
|
76
77
|
export * from './erp/rq/SendActionMessageRQ';
|
|
78
|
+
export * from './erp/rq/SignoutRQ';
|
|
77
79
|
export * from './erp/rq/TiplistRQ';
|
|
80
|
+
export * from './erp/rq/TokenRQ';
|
|
78
81
|
export * from './erp/rq/UpdateStatusRQ';
|
|
79
82
|
|
|
80
83
|
// erp api
|