@or-sdk/auth 0.21.2-auth.0
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/cjs/Auth.js +618 -0
- package/dist/cjs/Auth.js.map +1 -0
- package/dist/cjs/constants.js +2 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/index.js +17 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/cjs/utils/NoRightsError.js +29 -0
- package/dist/cjs/utils/NoRightsError.js.map +1 -0
- package/dist/cjs/utils/generateFingerPrint.js +80 -0
- package/dist/cjs/utils/generateFingerPrint.js.map +1 -0
- package/dist/cjs/utils/index.js +11 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/esm/Auth.js +450 -0
- package/dist/esm/Auth.js.map +1 -0
- package/dist/esm/constants.js +2 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utils/NoRightsError.js +8 -0
- package/dist/esm/utils/NoRightsError.js.map +1 -0
- package/dist/esm/utils/generateFingerPrint.js +40 -0
- package/dist/esm/utils/generateFingerPrint.js.map +1 -0
- package/dist/esm/utils/index.js +3 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/types/Auth.d.ts +56 -0
- package/dist/types/constants.d.ts +0 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/types.d.ts +85 -0
- package/dist/types/utils/NoRightsError.d.ts +4 -0
- package/dist/types/utils/generateFingerPrint.d.ts +2 -0
- package/dist/types/utils/index.d.ts +2 -0
- package/package.json +40 -0
- package/src/Auth.ts +772 -0
- package/src/constants.ts +0 -0
- package/src/index.ts +2 -0
- package/src/types.ts +109 -0
- package/src/utils/NoRightsError.ts +9 -0
- package/src/utils/generateFingerPrint.ts +37 -0
- package/src/utils/index.ts +5 -0
- package/tsconfig.esm.json +9 -0
- package/tsconfig.json +7 -0
- package/tsconfig.types.json +9 -0
package/src/constants.ts
ADDED
|
File without changes
|
package/src/index.ts
ADDED
package/src/types.ts
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
export type AuthConfig = {
|
|
2
|
+
/**
|
|
3
|
+
* Url of OneReach service discovery api
|
|
4
|
+
*/
|
|
5
|
+
discoveryUrl?: string;
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Direct service url, can be used to avoid discovery api call
|
|
9
|
+
*/
|
|
10
|
+
serviceUrl?: string;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Url of OneReach SDK api
|
|
14
|
+
*/
|
|
15
|
+
sdkUrl?: string;
|
|
16
|
+
|
|
17
|
+
cookieDomain?: string;
|
|
18
|
+
|
|
19
|
+
userCookieName?: string;
|
|
20
|
+
|
|
21
|
+
allowGuestLogin?: boolean;
|
|
22
|
+
userExpireCookieName?: string;
|
|
23
|
+
cookiePrefix?: string;
|
|
24
|
+
multiUserCookieName?: string;
|
|
25
|
+
cookiePollingInterval?: number;
|
|
26
|
+
expireInShort?: number;
|
|
27
|
+
expireInLong?: number;
|
|
28
|
+
allowIframe?: boolean;
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export type Domain = {
|
|
32
|
+
domain?: string;
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
export type User = {
|
|
36
|
+
allow: boolean;
|
|
37
|
+
tokenType: string;
|
|
38
|
+
username: string;
|
|
39
|
+
accountId: string;
|
|
40
|
+
userId: string;
|
|
41
|
+
role: string;
|
|
42
|
+
twoFactorEnabled: string;
|
|
43
|
+
multiUserId?: string;
|
|
44
|
+
identityProvider?: any;
|
|
45
|
+
token?: string;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
export type AuthResponse = User & {
|
|
49
|
+
captchaCheck?: boolean;
|
|
50
|
+
twoFactorCheck?: boolean;
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
export type MultiUserResponse = {
|
|
54
|
+
username: string;
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
export type MultiUserUploadIconResponse = {
|
|
58
|
+
uploadParams: {
|
|
59
|
+
url: string;
|
|
60
|
+
fields: {
|
|
61
|
+
[key: string]: unknown;
|
|
62
|
+
}; };
|
|
63
|
+
downloadUrl: string;
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
export type HeadersObj = {
|
|
67
|
+
headers: {
|
|
68
|
+
Authorization: string;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
export type SaveUserArgs = {
|
|
73
|
+
long?: boolean;
|
|
74
|
+
user: User;
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
export type SignInArgs = {
|
|
78
|
+
credentials?: {
|
|
79
|
+
username: string;
|
|
80
|
+
password: string;
|
|
81
|
+
};
|
|
82
|
+
long?: boolean;
|
|
83
|
+
allowGuestLogin?: boolean;
|
|
84
|
+
captchaToken?: string;
|
|
85
|
+
isCaptchaV2Checkbox?: boolean;
|
|
86
|
+
verificationCode?: string;
|
|
87
|
+
userToken?: string;
|
|
88
|
+
rememberTwoFactor?: boolean;
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
export type MultiUserLoginUserArgs = {
|
|
92
|
+
accountId: string;
|
|
93
|
+
id: string;
|
|
94
|
+
long?: boolean;
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
export type MultiUserUploadIconArgs = {
|
|
98
|
+
name: string;
|
|
99
|
+
contentType: string;
|
|
100
|
+
cacheControl: string;
|
|
101
|
+
file: File;
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
export type MultiUserUpdateTwoFactorArgs = {
|
|
105
|
+
secret: string;
|
|
106
|
+
enabled: boolean;
|
|
107
|
+
codes: any;
|
|
108
|
+
verificationCode: string;
|
|
109
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import _ from 'lodash';
|
|
2
|
+
import Fingerprint2 from 'fingerprintjs2';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* generate browser fingerprint
|
|
6
|
+
*/
|
|
7
|
+
const generateFingerPrint = async (): Promise<string> => {
|
|
8
|
+
const options = {
|
|
9
|
+
excludes: {
|
|
10
|
+
adBlock: true,
|
|
11
|
+
fonts: true,
|
|
12
|
+
enumerateDevices: true,
|
|
13
|
+
pixelRatio: true,
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
const fingerPrintComponents: Fingerprint2.Component[] = await new Promise(resolve => {
|
|
18
|
+
/* global window */
|
|
19
|
+
if (window.requestIdleCallback) {
|
|
20
|
+
window.requestIdleCallback(() => {
|
|
21
|
+
Fingerprint2.get(options, components => {
|
|
22
|
+
resolve(components);
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
} else {
|
|
26
|
+
window.setTimeout(() => {
|
|
27
|
+
Fingerprint2.get(options, components => {
|
|
28
|
+
resolve(components);
|
|
29
|
+
});
|
|
30
|
+
}, 500);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
return Fingerprint2.x64hash128(_.flatMap(fingerPrintComponents, 'value').join(''), 31);
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export default generateFingerPrint;
|
package/tsconfig.json
ADDED