@data-loom/service-js 0.2.1-alpha.7 → 0.3.0-alpha.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/dist/main/index.d.ts +2 -0
- package/dist/main/index.d.ts.map +1 -1
- package/dist/main/index.js +2 -0
- package/dist/main/index.js.map +1 -1
- package/dist/main/services/DataloomServiceBase.js +1 -1
- package/dist/main/services/DataloomServiceBase.js.map +1 -1
- package/dist/main/services/session-service/index.d.ts +21 -0
- package/dist/main/services/session-service/index.d.ts.map +1 -0
- package/dist/main/services/session-service/index.js +89 -0
- package/dist/main/services/session-service/index.js.map +1 -0
- package/dist/main/services/session-service/types.d.ts +34 -0
- package/dist/main/services/session-service/types.d.ts.map +1 -0
- package/dist/main/services/session-service/types.js +3 -0
- package/dist/main/services/session-service/types.js.map +1 -0
- package/dist/main/utils/index.d.ts +2 -0
- package/dist/main/utils/index.d.ts.map +1 -0
- package/dist/main/utils/index.js +6 -0
- package/dist/main/utils/index.js.map +1 -0
- package/dist/main/utils/types.d.ts +3 -1
- package/dist/main/utils/types.d.ts.map +1 -1
- package/dist/main/utils/types.js +1 -0
- package/dist/main/utils/types.js.map +1 -1
- package/dist/module/index.d.ts +2 -0
- package/dist/module/index.d.ts.map +1 -1
- package/dist/module/index.js +2 -0
- package/dist/module/index.js.map +1 -1
- package/dist/module/services/DataloomServiceBase.js +1 -1
- package/dist/module/services/DataloomServiceBase.js.map +1 -1
- package/dist/module/services/session-service/index.d.ts +21 -0
- package/dist/module/services/session-service/index.d.ts.map +1 -0
- package/dist/module/services/session-service/index.js +83 -0
- package/dist/module/services/session-service/index.js.map +1 -0
- package/dist/module/services/session-service/types.d.ts +34 -0
- package/dist/module/services/session-service/types.d.ts.map +1 -0
- package/dist/module/services/session-service/types.js +2 -0
- package/dist/module/services/session-service/types.js.map +1 -0
- package/dist/module/utils/index.d.ts +2 -0
- package/dist/module/utils/index.d.ts.map +1 -0
- package/dist/module/utils/index.js +2 -0
- package/dist/module/utils/index.js.map +1 -0
- package/dist/module/utils/types.d.ts +3 -1
- package/dist/module/utils/types.d.ts.map +1 -1
- package/dist/module/utils/types.js +1 -0
- package/dist/module/utils/types.js.map +1 -1
- package/package.json +2 -2
package/dist/main/index.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { default as UserService } from './services/user-service';
|
|
2
|
+
import { default as SessionService } from './services/session-service';
|
|
2
3
|
export default class DataloomService {
|
|
3
4
|
user: UserService;
|
|
5
|
+
session: SessionService;
|
|
4
6
|
constructor(baseUrl: string, options: {
|
|
5
7
|
headers: Record<string, string>;
|
|
6
8
|
fetch: typeof fetch;
|
package/dist/main/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEvE,MAAM,CAAC,OAAO,OAAO,eAAe;IAClC,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,cAAc,CAAC;gBAGtB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,KAAK,EAAE,OAAO,KAAK,CAAC;QACpB,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB;CAKJ"}
|
package/dist/main/index.js
CHANGED
|
@@ -4,9 +4,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const user_service_1 = __importDefault(require("./services/user-service"));
|
|
7
|
+
const session_service_1 = __importDefault(require("./services/session-service"));
|
|
7
8
|
class DataloomService {
|
|
8
9
|
constructor(baseUrl, options) {
|
|
9
10
|
this.user = new user_service_1.default(baseUrl, options);
|
|
11
|
+
this.session = new session_service_1.default(baseUrl, options);
|
|
10
12
|
}
|
|
11
13
|
}
|
|
12
14
|
exports.default = DataloomService;
|
package/dist/main/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;AAAA,2EAAiE;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;AAAA,2EAAiE;AACjE,iFAAuE;AAEvE,MAAqB,eAAe;IAIlC,YACE,OAAe,EACf,OAIC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,sBAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,GAAG,IAAI,yBAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;CACF;AAfD,kCAeC"}
|
|
@@ -26,7 +26,7 @@ class DataloomServiceBase {
|
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
async fetchData(url, options) {
|
|
29
|
-
const fetchUrl = `${this.baseUrl.toString()}${url}`;
|
|
29
|
+
const fetchUrl = (options === null || options === void 0 ? void 0 : options.withoutBaseUrl) ? url : `${this.baseUrl.toString()}${url}`;
|
|
30
30
|
let traceId = -1;
|
|
31
31
|
if (this.logger) {
|
|
32
32
|
traceId = trace_id_1.traceIdGenerator.next();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataloomServiceBase.js","sourceRoot":"","sources":["../../../src/services/DataloomServiceBase.ts"],"names":[],"mappings":";;;;;AAAA,aAAa;AACb,uEAA8C;AAE9C,gDAAqD;AACrD,4CAA0D;AAC1D,0CAMwB;AAExB,MAA8B,mBAAmB;IAO/C,YAAY,OAAe,EAAE,OAA+B;;QAC1D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,MAAA,OAAO,CAAC,OAAO,mCAAI,EAAE,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,KAAK,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,mBAAW,CAAC,OAAO,CAAC;QAEvC,IAAI,OAAO,CAAC,KAAK,EAAE;YACjB,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;SAC5B;aAAM,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YACvC,IAAI,CAAC,KAAK,GAAG,oBAAS,CAAC;SACxB;aAAM;YACL,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;SACpB;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAI,GAAW,EAAE,OAAqB;QACnD,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"DataloomServiceBase.js","sourceRoot":"","sources":["../../../src/services/DataloomServiceBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import DataloomServiceBase from '../DataloomServiceBase';
|
|
2
|
+
import { ServiceName } from '../../utils/types';
|
|
3
|
+
import type { SignInRedirectionOptions, UserInfoResponse } from './types';
|
|
4
|
+
import type { DataloomServiceResponse } from '../../utils/types';
|
|
5
|
+
export default class SessionService extends DataloomServiceBase {
|
|
6
|
+
serviceName: ServiceName;
|
|
7
|
+
/**
|
|
8
|
+
* Redirect to login page within app runtime environment.
|
|
9
|
+
* Example: brand = 1
|
|
10
|
+
*/
|
|
11
|
+
redirectToLogin(brand: string, appId: string, options?: SignInRedirectionOptions): DataloomServiceResponse<'success'>;
|
|
12
|
+
/**
|
|
13
|
+
* Sign out current user session.
|
|
14
|
+
*/
|
|
15
|
+
signOut(): Promise<DataloomServiceResponse<null>>;
|
|
16
|
+
/**
|
|
17
|
+
* Gets the current user information if there is an existing session.
|
|
18
|
+
*/
|
|
19
|
+
getUserInfo(brand: string, appId: string): Promise<DataloomServiceResponse<UserInfoResponse>>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/session-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC1E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAgBjE,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,mBAAmB;IACpD,WAAW,cAA8B;IAElD;;;OAGG;IACH,eAAe,CACb,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,wBAAwB,GACjC,uBAAuB,CAAC,SAAS,CAAC;IA0BrC;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAevD;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;CA0B9F"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const DataloomServiceBase_1 = __importDefault(require("../DataloomServiceBase"));
|
|
7
|
+
const types_1 = require("../../utils/types");
|
|
8
|
+
const utils_1 = require("../../utils");
|
|
9
|
+
const browserEnvError = {
|
|
10
|
+
data: null,
|
|
11
|
+
error: {
|
|
12
|
+
code: 400,
|
|
13
|
+
message: 'Incompatible runtime environment',
|
|
14
|
+
hint: 'Please check if the current environment is browser.',
|
|
15
|
+
details: 'This method can only be invoked in browser environment.',
|
|
16
|
+
},
|
|
17
|
+
status: 400,
|
|
18
|
+
statusText: 'Bad Request',
|
|
19
|
+
};
|
|
20
|
+
class SessionService extends DataloomServiceBase_1.default {
|
|
21
|
+
constructor() {
|
|
22
|
+
super(...arguments);
|
|
23
|
+
this.serviceName = types_1.ServiceName.SessionService;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Redirect to login page within app runtime environment.
|
|
27
|
+
* Example: brand = 1
|
|
28
|
+
*/
|
|
29
|
+
redirectToLogin(brand, appId, options) {
|
|
30
|
+
if (!(0, utils_1.isBrowser)()) {
|
|
31
|
+
console.log('[Dataloom][Auth] dataloom.service.session.redirectToLogin can only be invoked in browser environment.');
|
|
32
|
+
return browserEnvError;
|
|
33
|
+
}
|
|
34
|
+
const { returnUrl, newTab = false } = options !== null && options !== void 0 ? options : {};
|
|
35
|
+
const encodedRedirectUrl = encodeURIComponent(returnUrl || window.location.href);
|
|
36
|
+
const loginPageUrl = `/signin?brand=${brand}&appId=${appId}&redirectUrl=${encodedRedirectUrl}`;
|
|
37
|
+
if (newTab) {
|
|
38
|
+
window.open(loginPageUrl, '_blank');
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
window.location.href = loginPageUrl;
|
|
42
|
+
}
|
|
43
|
+
return {
|
|
44
|
+
data: 'success',
|
|
45
|
+
error: null,
|
|
46
|
+
status: 200,
|
|
47
|
+
statusText: 'OK',
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Sign out current user session.
|
|
52
|
+
*/
|
|
53
|
+
async signOut() {
|
|
54
|
+
if (!(0, utils_1.isBrowser)()) {
|
|
55
|
+
console.log('[Dataloom][Auth] dataloom.service.session.signOut can only be invoked in browser environment.');
|
|
56
|
+
return browserEnvError;
|
|
57
|
+
}
|
|
58
|
+
return this.fetchData(`/suda/api/runtime/v1/idp/logout`, {
|
|
59
|
+
method: 'GET',
|
|
60
|
+
withoutBaseUrl: true,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Gets the current user information if there is an existing session.
|
|
65
|
+
*/
|
|
66
|
+
getUserInfo(brand, appId) {
|
|
67
|
+
if (!(0, utils_1.isBrowser)()) {
|
|
68
|
+
console.log('[Dataloom][Auth] dataloom.service.session.getUserInfo can only be invoked in browser environment.');
|
|
69
|
+
return Promise.resolve(browserEnvError);
|
|
70
|
+
}
|
|
71
|
+
let url = '/suda/api/session/v1/idp/user_info';
|
|
72
|
+
const searchParams = new URLSearchParams();
|
|
73
|
+
if (brand) {
|
|
74
|
+
searchParams.append('brand', brand);
|
|
75
|
+
}
|
|
76
|
+
if (appId) {
|
|
77
|
+
searchParams.append('app_id', appId);
|
|
78
|
+
}
|
|
79
|
+
if (brand || appId) {
|
|
80
|
+
url += `?${searchParams.toString()}`;
|
|
81
|
+
}
|
|
82
|
+
return this.fetchData(url, {
|
|
83
|
+
method: 'GET',
|
|
84
|
+
withoutBaseUrl: true,
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
exports.default = SessionService;
|
|
89
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/session-service/index.ts"],"names":[],"mappings":";;;;;AAAA,iFAAyD;AACzD,6CAAgD;AAIhD,uCAAwC;AAExC,MAAM,eAAe,GAAG;IACtB,IAAI,EAAE,IAAI;IACV,KAAK,EAAE;QACL,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,kCAAkC;QAC3C,IAAI,EAAE,qDAAqD;QAC3D,OAAO,EAAE,yDAAyD;KACnE;IACD,MAAM,EAAE,GAAG;IACX,UAAU,EAAE,aAAa;CAC1B,CAAC;AAEF,MAAqB,cAAe,SAAQ,6BAAmB;IAA/D;;QACW,gBAAW,GAAG,mBAAW,CAAC,cAAc,CAAC;IAmFpD,CAAC;IAjFC;;;OAGG;IACH,eAAe,CACb,KAAa,EACb,KAAa,EACb,OAAkC;QAElC,IAAI,CAAC,IAAA,iBAAS,GAAE,EAAE;YAChB,OAAO,CAAC,GAAG,CACT,uGAAuG,CACxG,CAAC;YACF,OAAO,eAAe,CAAC;SACxB;QACD,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;QAEpD,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjF,MAAM,YAAY,GAAG,iBAAiB,KAAK,UAAU,KAAK,gBAAgB,kBAAkB,EAAE,CAAC;QAE/F,IAAI,MAAM,EAAE;YACV,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;SACrC;aAAM;YACL,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,YAAY,CAAC;SACrC;QAED,OAAO;YACL,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,GAAG;YACX,UAAU,EAAE,IAAI;SACjB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,IAAA,iBAAS,GAAE,EAAE;YAChB,OAAO,CAAC,GAAG,CACT,+FAA+F,CAChG,CAAC;YAEF,OAAO,eAAe,CAAC;SACxB;QAED,OAAO,IAAI,CAAC,SAAS,CAAO,iCAAiC,EAAE;YAC7D,MAAM,EAAE,KAAK;YACb,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAa,EAAE,KAAa;QACtC,IAAI,CAAC,IAAA,iBAAS,GAAE,EAAE;YAChB,OAAO,CAAC,GAAG,CACT,mGAAmG,CACpG,CAAC;YACF,OAAO,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;SACzC;QAED,IAAI,GAAG,GAAG,oCAAoC,CAAC;QAC/C,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;QAC3C,IAAI,KAAK,EAAE;YACT,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SACrC;QACD,IAAI,KAAK,EAAE;YACT,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;SACtC;QAED,IAAI,KAAK,IAAI,KAAK,EAAE;YAClB,GAAG,IAAI,IAAI,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC;SACtC;QAED,OAAO,IAAI,CAAC,SAAS,CAAmB,GAAG,EAAE;YAC3C,MAAM,EAAE,KAAK;YACb,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;IACL,CAAC;CACF;AApFD,iCAoFC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export interface I18n {
|
|
2
|
+
language_code: number;
|
|
3
|
+
text: string;
|
|
4
|
+
}
|
|
5
|
+
export type I18ns = I18n[];
|
|
6
|
+
export interface Avatar {
|
|
7
|
+
source?: string;
|
|
8
|
+
image?: {
|
|
9
|
+
large?: string;
|
|
10
|
+
};
|
|
11
|
+
color?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface SignInRedirectionOptions {
|
|
14
|
+
/**
|
|
15
|
+
* The URL to redirect to after a successful login. Defaults to the current URL.
|
|
16
|
+
*/
|
|
17
|
+
returnUrl?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Whether to open the login page in a new tab. Defaults to `false`.
|
|
20
|
+
*/
|
|
21
|
+
newTab?: boolean;
|
|
22
|
+
}
|
|
23
|
+
export interface UserBaseInfo {
|
|
24
|
+
user_id?: number;
|
|
25
|
+
name?: I18ns;
|
|
26
|
+
avatar?: Avatar;
|
|
27
|
+
email?: string;
|
|
28
|
+
phone_number?: string;
|
|
29
|
+
tenant_name?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface UserInfoResponse {
|
|
32
|
+
user_info?: UserBaseInfo;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/services/session-service/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC;AAE3B,MAAM,WAAW,MAAM;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QACN,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,YAAY,CAAC;CAC1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/services/session-service/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,eAAyE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";;;AAAO,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,QAAQ,KAAK,WAAW,CAAC;AAAnF,QAAA,SAAS,aAA0E"}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
export declare enum ServiceName {
|
|
2
2
|
DEFAULT = "default",
|
|
3
|
-
UserService = "user-service"
|
|
3
|
+
UserService = "user-service",
|
|
4
|
+
SessionService = "session-service"
|
|
4
5
|
}
|
|
5
6
|
export type Fetch = typeof fetch;
|
|
6
7
|
export type FetchMethod = 'GET' | 'HEAD' | 'POST' | 'PATCH' | 'DELETE';
|
|
7
8
|
export type FetchOptions = {
|
|
8
9
|
method: FetchMethod;
|
|
9
10
|
body?: any;
|
|
11
|
+
withoutBaseUrl?: boolean;
|
|
10
12
|
};
|
|
11
13
|
export type DataloomServiceOptions = {
|
|
12
14
|
headers?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACrB,OAAO,YAAY;IACnB,WAAW,iBAAiB;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACrB,OAAO,YAAY;IACnB,WAAW,iBAAiB;IAC5B,cAAc,oBAAoB;CACnC;AAED,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC;AAEjC,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEvE,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,WAAW,CAAC;IACpB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IAEnC,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAEpC,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,UAAU,mBAAmB;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AACD,MAAM,WAAW,sBAAsB,CAAC,CAAC,CAAE,SAAQ,mBAAmB;IACpE,KAAK,EAAE,IAAI,CAAC;IACZ,IAAI,EAAE,CAAC,CAAC;CACT;AACD,MAAM,WAAW,sBAAuB,SAAQ,mBAAmB;IACjE,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,MAAM,uBAAuB,CAAC,CAAC,IAAI,sBAAsB,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC"}
|
package/dist/main/utils/types.js
CHANGED
|
@@ -5,5 +5,6 @@ var ServiceName;
|
|
|
5
5
|
(function (ServiceName) {
|
|
6
6
|
ServiceName["DEFAULT"] = "default";
|
|
7
7
|
ServiceName["UserService"] = "user-service";
|
|
8
|
+
ServiceName["SessionService"] = "session-service";
|
|
8
9
|
})(ServiceName = exports.ServiceName || (exports.ServiceName = {}));
|
|
9
10
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":";;;AAAA,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,kCAAmB,CAAA;IACnB,2CAA4B,CAAA;IAC5B,iDAAkC,CAAA;AACpC,CAAC,EAJW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAItB"}
|
package/dist/module/index.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { default as UserService } from './services/user-service';
|
|
2
|
+
import { default as SessionService } from './services/session-service';
|
|
2
3
|
export default class DataloomService {
|
|
3
4
|
user: UserService;
|
|
5
|
+
session: SessionService;
|
|
4
6
|
constructor(baseUrl: string, options: {
|
|
5
7
|
headers: Record<string, string>;
|
|
6
8
|
fetch: typeof fetch;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEvE,MAAM,CAAC,OAAO,OAAO,eAAe;IAClC,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,cAAc,CAAC;gBAGtB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,KAAK,EAAE,OAAO,KAAK,CAAC;QACpB,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB;CAKJ"}
|
package/dist/module/index.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { default as UserService } from './services/user-service';
|
|
2
|
+
import { default as SessionService } from './services/session-service';
|
|
2
3
|
export default class DataloomService {
|
|
3
4
|
constructor(baseUrl, options) {
|
|
4
5
|
this.user = new UserService(baseUrl, options);
|
|
6
|
+
this.session = new SessionService(baseUrl, options);
|
|
5
7
|
}
|
|
6
8
|
}
|
|
7
9
|
//# sourceMappingURL=index.js.map
|
package/dist/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEvE,MAAM,CAAC,OAAO,OAAO,eAAe;IAIlC,YACE,OAAe,EACf,OAIC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,GAAG,IAAI,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;CACF"}
|
|
@@ -21,7 +21,7 @@ export default class DataloomServiceBase {
|
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
async fetchData(url, options) {
|
|
24
|
-
const fetchUrl = `${this.baseUrl.toString()}${url}`;
|
|
24
|
+
const fetchUrl = (options === null || options === void 0 ? void 0 : options.withoutBaseUrl) ? url : `${this.baseUrl.toString()}${url}`;
|
|
25
25
|
let traceId = -1;
|
|
26
26
|
if (this.logger) {
|
|
27
27
|
traceId = traceIdGenerator.next();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataloomServiceBase.js","sourceRoot":"","sources":["../../../src/services/DataloomServiceBase.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,OAAO,SAAS,MAAM,uBAAuB,CAAC;AAE9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAIL,WAAW,GAEZ,MAAM,gBAAgB,CAAC;AAExB,MAAM,CAAC,OAAO,OAAgB,mBAAmB;IAO/C,YAAY,OAAe,EAAE,OAA+B;;QAC1D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,MAAA,OAAO,CAAC,OAAO,mCAAI,EAAE,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,KAAK,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC;QAEvC,IAAI,OAAO,CAAC,KAAK,EAAE;YACjB,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;SAC5B;aAAM,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YACvC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;SACxB;aAAM;YACL,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;SACpB;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAI,GAAW,EAAE,OAAqB;QACnD,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"DataloomServiceBase.js","sourceRoot":"","sources":["../../../src/services/DataloomServiceBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import DataloomServiceBase from '../DataloomServiceBase';
|
|
2
|
+
import { ServiceName } from '../../utils/types';
|
|
3
|
+
import type { SignInRedirectionOptions, UserInfoResponse } from './types';
|
|
4
|
+
import type { DataloomServiceResponse } from '../../utils/types';
|
|
5
|
+
export default class SessionService extends DataloomServiceBase {
|
|
6
|
+
serviceName: ServiceName;
|
|
7
|
+
/**
|
|
8
|
+
* Redirect to login page within app runtime environment.
|
|
9
|
+
* Example: brand = 1
|
|
10
|
+
*/
|
|
11
|
+
redirectToLogin(brand: string, appId: string, options?: SignInRedirectionOptions): DataloomServiceResponse<'success'>;
|
|
12
|
+
/**
|
|
13
|
+
* Sign out current user session.
|
|
14
|
+
*/
|
|
15
|
+
signOut(): Promise<DataloomServiceResponse<null>>;
|
|
16
|
+
/**
|
|
17
|
+
* Gets the current user information if there is an existing session.
|
|
18
|
+
*/
|
|
19
|
+
getUserInfo(brand: string, appId: string): Promise<DataloomServiceResponse<UserInfoResponse>>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/session-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC1E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAgBjE,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,mBAAmB;IACpD,WAAW,cAA8B;IAElD;;;OAGG;IACH,eAAe,CACb,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,wBAAwB,GACjC,uBAAuB,CAAC,SAAS,CAAC;IA0BrC;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAevD;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;CA0B9F"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import DataloomServiceBase from '../DataloomServiceBase';
|
|
2
|
+
import { ServiceName } from '../../utils/types';
|
|
3
|
+
import { isBrowser } from '../../utils';
|
|
4
|
+
const browserEnvError = {
|
|
5
|
+
data: null,
|
|
6
|
+
error: {
|
|
7
|
+
code: 400,
|
|
8
|
+
message: 'Incompatible runtime environment',
|
|
9
|
+
hint: 'Please check if the current environment is browser.',
|
|
10
|
+
details: 'This method can only be invoked in browser environment.',
|
|
11
|
+
},
|
|
12
|
+
status: 400,
|
|
13
|
+
statusText: 'Bad Request',
|
|
14
|
+
};
|
|
15
|
+
export default class SessionService extends DataloomServiceBase {
|
|
16
|
+
constructor() {
|
|
17
|
+
super(...arguments);
|
|
18
|
+
this.serviceName = ServiceName.SessionService;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Redirect to login page within app runtime environment.
|
|
22
|
+
* Example: brand = 1
|
|
23
|
+
*/
|
|
24
|
+
redirectToLogin(brand, appId, options) {
|
|
25
|
+
if (!isBrowser()) {
|
|
26
|
+
console.log('[Dataloom][Auth] dataloom.service.session.redirectToLogin can only be invoked in browser environment.');
|
|
27
|
+
return browserEnvError;
|
|
28
|
+
}
|
|
29
|
+
const { returnUrl, newTab = false } = options !== null && options !== void 0 ? options : {};
|
|
30
|
+
const encodedRedirectUrl = encodeURIComponent(returnUrl || window.location.href);
|
|
31
|
+
const loginPageUrl = `/signin?brand=${brand}&appId=${appId}&redirectUrl=${encodedRedirectUrl}`;
|
|
32
|
+
if (newTab) {
|
|
33
|
+
window.open(loginPageUrl, '_blank');
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
window.location.href = loginPageUrl;
|
|
37
|
+
}
|
|
38
|
+
return {
|
|
39
|
+
data: 'success',
|
|
40
|
+
error: null,
|
|
41
|
+
status: 200,
|
|
42
|
+
statusText: 'OK',
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Sign out current user session.
|
|
47
|
+
*/
|
|
48
|
+
async signOut() {
|
|
49
|
+
if (!isBrowser()) {
|
|
50
|
+
console.log('[Dataloom][Auth] dataloom.service.session.signOut can only be invoked in browser environment.');
|
|
51
|
+
return browserEnvError;
|
|
52
|
+
}
|
|
53
|
+
return this.fetchData(`/suda/api/runtime/v1/idp/logout`, {
|
|
54
|
+
method: 'GET',
|
|
55
|
+
withoutBaseUrl: true,
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Gets the current user information if there is an existing session.
|
|
60
|
+
*/
|
|
61
|
+
getUserInfo(brand, appId) {
|
|
62
|
+
if (!isBrowser()) {
|
|
63
|
+
console.log('[Dataloom][Auth] dataloom.service.session.getUserInfo can only be invoked in browser environment.');
|
|
64
|
+
return Promise.resolve(browserEnvError);
|
|
65
|
+
}
|
|
66
|
+
let url = '/suda/api/session/v1/idp/user_info';
|
|
67
|
+
const searchParams = new URLSearchParams();
|
|
68
|
+
if (brand) {
|
|
69
|
+
searchParams.append('brand', brand);
|
|
70
|
+
}
|
|
71
|
+
if (appId) {
|
|
72
|
+
searchParams.append('app_id', appId);
|
|
73
|
+
}
|
|
74
|
+
if (brand || appId) {
|
|
75
|
+
url += `?${searchParams.toString()}`;
|
|
76
|
+
}
|
|
77
|
+
return this.fetchData(url, {
|
|
78
|
+
method: 'GET',
|
|
79
|
+
withoutBaseUrl: true,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/session-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIhD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,eAAe,GAAG;IACtB,IAAI,EAAE,IAAI;IACV,KAAK,EAAE;QACL,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,kCAAkC;QAC3C,IAAI,EAAE,qDAAqD;QAC3D,OAAO,EAAE,yDAAyD;KACnE;IACD,MAAM,EAAE,GAAG;IACX,UAAU,EAAE,aAAa;CAC1B,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,mBAAmB;IAA/D;;QACW,gBAAW,GAAG,WAAW,CAAC,cAAc,CAAC;IAmFpD,CAAC;IAjFC;;;OAGG;IACH,eAAe,CACb,KAAa,EACb,KAAa,EACb,OAAkC;QAElC,IAAI,CAAC,SAAS,EAAE,EAAE;YAChB,OAAO,CAAC,GAAG,CACT,uGAAuG,CACxG,CAAC;YACF,OAAO,eAAe,CAAC;SACxB;QACD,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;QAEpD,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjF,MAAM,YAAY,GAAG,iBAAiB,KAAK,UAAU,KAAK,gBAAgB,kBAAkB,EAAE,CAAC;QAE/F,IAAI,MAAM,EAAE;YACV,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;SACrC;aAAM;YACL,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,YAAY,CAAC;SACrC;QAED,OAAO;YACL,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,GAAG;YACX,UAAU,EAAE,IAAI;SACjB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,SAAS,EAAE,EAAE;YAChB,OAAO,CAAC,GAAG,CACT,+FAA+F,CAChG,CAAC;YAEF,OAAO,eAAe,CAAC;SACxB;QAED,OAAO,IAAI,CAAC,SAAS,CAAO,iCAAiC,EAAE;YAC7D,MAAM,EAAE,KAAK;YACb,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAa,EAAE,KAAa;QACtC,IAAI,CAAC,SAAS,EAAE,EAAE;YAChB,OAAO,CAAC,GAAG,CACT,mGAAmG,CACpG,CAAC;YACF,OAAO,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;SACzC;QAED,IAAI,GAAG,GAAG,oCAAoC,CAAC;QAC/C,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;QAC3C,IAAI,KAAK,EAAE;YACT,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SACrC;QACD,IAAI,KAAK,EAAE;YACT,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;SACtC;QAED,IAAI,KAAK,IAAI,KAAK,EAAE;YAClB,GAAG,IAAI,IAAI,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC;SACtC;QAED,OAAO,IAAI,CAAC,SAAS,CAAmB,GAAG,EAAE;YAC3C,MAAM,EAAE,KAAK;YACb,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export interface I18n {
|
|
2
|
+
language_code: number;
|
|
3
|
+
text: string;
|
|
4
|
+
}
|
|
5
|
+
export type I18ns = I18n[];
|
|
6
|
+
export interface Avatar {
|
|
7
|
+
source?: string;
|
|
8
|
+
image?: {
|
|
9
|
+
large?: string;
|
|
10
|
+
};
|
|
11
|
+
color?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface SignInRedirectionOptions {
|
|
14
|
+
/**
|
|
15
|
+
* The URL to redirect to after a successful login. Defaults to the current URL.
|
|
16
|
+
*/
|
|
17
|
+
returnUrl?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Whether to open the login page in a new tab. Defaults to `false`.
|
|
20
|
+
*/
|
|
21
|
+
newTab?: boolean;
|
|
22
|
+
}
|
|
23
|
+
export interface UserBaseInfo {
|
|
24
|
+
user_id?: number;
|
|
25
|
+
name?: I18ns;
|
|
26
|
+
avatar?: Avatar;
|
|
27
|
+
email?: string;
|
|
28
|
+
phone_number?: string;
|
|
29
|
+
tenant_name?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface UserInfoResponse {
|
|
32
|
+
user_info?: UserBaseInfo;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/services/session-service/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC;AAE3B,MAAM,WAAW,MAAM;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QACN,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,YAAY,CAAC;CAC1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/services/session-service/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,eAAyE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,QAAQ,KAAK,WAAW,CAAC"}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
export declare enum ServiceName {
|
|
2
2
|
DEFAULT = "default",
|
|
3
|
-
UserService = "user-service"
|
|
3
|
+
UserService = "user-service",
|
|
4
|
+
SessionService = "session-service"
|
|
4
5
|
}
|
|
5
6
|
export type Fetch = typeof fetch;
|
|
6
7
|
export type FetchMethod = 'GET' | 'HEAD' | 'POST' | 'PATCH' | 'DELETE';
|
|
7
8
|
export type FetchOptions = {
|
|
8
9
|
method: FetchMethod;
|
|
9
10
|
body?: any;
|
|
11
|
+
withoutBaseUrl?: boolean;
|
|
10
12
|
};
|
|
11
13
|
export type DataloomServiceOptions = {
|
|
12
14
|
headers?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACrB,OAAO,YAAY;IACnB,WAAW,iBAAiB;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACrB,OAAO,YAAY;IACnB,WAAW,iBAAiB;IAC5B,cAAc,oBAAoB;CACnC;AAED,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC;AAEjC,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEvE,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,WAAW,CAAC;IACpB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IAEnC,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAEpC,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,UAAU,mBAAmB;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AACD,MAAM,WAAW,sBAAsB,CAAC,CAAC,CAAE,SAAQ,mBAAmB;IACpE,KAAK,EAAE,IAAI,CAAC;IACZ,IAAI,EAAE,CAAC,CAAC;CACT;AACD,MAAM,WAAW,sBAAuB,SAAQ,mBAAmB;IACjE,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,MAAM,uBAAuB,CAAC,CAAC,IAAI,sBAAsB,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,kCAAmB,CAAA;IACnB,2CAA4B,CAAA;IAC5B,iDAAkC,CAAA;AACpC,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@data-loom/service-js",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0-alpha.1",
|
|
4
4
|
"description": "Dataloom service",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"service",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"test:types:watch": "run-s build && tsd --files 'test/**/*.test-d.ts' --watch"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@data-loom/node-fetch": "0.
|
|
36
|
+
"@data-loom/node-fetch": "0.3.0-alpha.1"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"@types/jest": "~29.2.4",
|