webs-sdk 0.3.6 → 0.3.7
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/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/libraries/auth.d.ts +1 -0
- package/dist/libraries/auth.d.ts.map +1 -1
- package/dist/libraries/auth.js +62 -0
- package/dist/libraries/auth.js.map +1 -1
- package/dist/libraries/corp_auth.d.ts +45 -0
- package/dist/libraries/corp_auth.d.ts.map +1 -0
- package/dist/libraries/corp_auth.js +273 -0
- package/dist/libraries/corp_auth.js.map +1 -0
- package/dist/libraries/index.d.ts +2 -0
- package/dist/libraries/index.d.ts.map +1 -1
- package/dist/libraries/index.js +3 -1
- package/dist/libraries/index.js.map +1 -1
- package/package.json +1 -1
- package/types/index.d.ts +49 -0
package/dist/index.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ import ContentManagerClass from './libraries/content';
|
|
|
8
8
|
import SessionClass from './libraries/session';
|
|
9
9
|
import MixPanelClass from './libraries/mixpanel';
|
|
10
10
|
import AudioClass from './libraries/audio';
|
|
11
|
+
import CorporateAuthManagerClass from './libraries/corp_auth';
|
|
11
12
|
declare const WebsSDK: {
|
|
12
13
|
Networking: NetworkingClass;
|
|
13
14
|
AuthManager: AuthManagerClass;
|
|
@@ -19,6 +20,7 @@ declare const WebsSDK: {
|
|
|
19
20
|
Session: SessionClass;
|
|
20
21
|
MixPanel: MixPanelClass;
|
|
21
22
|
Audio: AudioClass;
|
|
23
|
+
CorporateAuthManager: CorporateAuthManagerClass;
|
|
22
24
|
Config: import("./config").Config;
|
|
23
25
|
};
|
|
24
26
|
export default WebsSDK;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,wBAAwB,CAAC;AACrD,OAAO,gBAAgB,MAAM,kBAAkB,CAAC;AAChD,OAAO,gBAAgB,MAAM,kBAAkB,CAAC;AAChD,OAAO,YAAY,MAAM,qBAAqB,CAAC;AAC/C,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,cAAc,MAAM,uBAAuB,CAAC;AACnD,OAAO,mBAAmB,MAAM,qBAAqB,CAAC;AACtD,OAAO,YAAY,MAAM,qBAAqB,CAAC;AAC/C,OAAO,aAAa,MAAM,sBAAsB,CAAC;AACjD,OAAO,UAAU,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,wBAAwB,CAAC;AACrD,OAAO,gBAAgB,MAAM,kBAAkB,CAAC;AAChD,OAAO,gBAAgB,MAAM,kBAAkB,CAAC;AAChD,OAAO,YAAY,MAAM,qBAAqB,CAAC;AAC/C,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,cAAc,MAAM,uBAAuB,CAAC;AACnD,OAAO,mBAAmB,MAAM,qBAAqB,CAAC;AACtD,OAAO,YAAY,MAAM,qBAAqB,CAAC;AAC/C,OAAO,aAAa,MAAM,sBAAsB,CAAC;AACjD,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,yBAAyB,MAAM,uBAAuB,CAAC;AAG9D,QAAA,MAAM,OAAO;;;;;;;;;;;;;CAaZ,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -13,6 +13,7 @@ const content_1 = __importDefault(require("./libraries/content"));
|
|
|
13
13
|
const session_1 = __importDefault(require("./libraries/session"));
|
|
14
14
|
const mixpanel_1 = __importDefault(require("./libraries/mixpanel"));
|
|
15
15
|
const audio_1 = __importDefault(require("./libraries/audio"));
|
|
16
|
+
const corp_auth_1 = __importDefault(require("./libraries/corp_auth"));
|
|
16
17
|
const config_1 = __importDefault(require("./config"));
|
|
17
18
|
const WebsSDK = {
|
|
18
19
|
Networking: new networking_1.default(),
|
|
@@ -25,6 +26,7 @@ const WebsSDK = {
|
|
|
25
26
|
Session: new session_1.default(),
|
|
26
27
|
MixPanel: new mixpanel_1.default(),
|
|
27
28
|
Audio: new audio_1.default(),
|
|
29
|
+
CorporateAuthManager: new corp_auth_1.default(),
|
|
28
30
|
Config: config_1.default
|
|
29
31
|
};
|
|
30
32
|
exports.default = WebsSDK;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAAA,wEAAqD;AACrD,4DAAgD;AAChD,4DAAgD;AAChD,kEAA+C;AAC/C,8DAA2C;AAC3C,sEAAmD;AACnD,kEAAsD;AACtD,kEAA+C;AAC/C,oEAAiD;AACjD,8DAA2C;AAC3C,sDAA8B;AAE9B,MAAM,OAAO,GAAG;IACZ,UAAU,EAAE,IAAI,oBAAe,EAAE;IACjC,WAAW,EAAE,IAAI,cAAgB,EAAE;IACnC,WAAW,EAAE,IAAI,cAAgB,EAAE;IACnC,OAAO,EAAE,IAAI,iBAAY,EAAE;IAC3B,KAAK,EAAE,IAAI,eAAU,EAAE;IACvB,SAAS,EAAE,IAAI,mBAAc,EAAE;IAC/B,cAAc,EAAE,IAAI,iBAAmB,EAAE;IACzC,OAAO,EAAE,IAAI,iBAAY,EAAE;IAC3B,QAAQ,EAAE,IAAI,kBAAa,EAAE;IAC7B,KAAK,EAAE,IAAI,eAAU,EAAE;IACvB,MAAM,EAAE,gBAAM;CACjB,CAAC;AAEF,kBAAe,OAAO,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAAA,wEAAqD;AACrD,4DAAgD;AAChD,4DAAgD;AAChD,kEAA+C;AAC/C,8DAA2C;AAC3C,sEAAmD;AACnD,kEAAsD;AACtD,kEAA+C;AAC/C,oEAAiD;AACjD,8DAA2C;AAC3C,sEAA8D;AAC9D,sDAA8B;AAE9B,MAAM,OAAO,GAAG;IACZ,UAAU,EAAE,IAAI,oBAAe,EAAE;IACjC,WAAW,EAAE,IAAI,cAAgB,EAAE;IACnC,WAAW,EAAE,IAAI,cAAgB,EAAE;IACnC,OAAO,EAAE,IAAI,iBAAY,EAAE;IAC3B,KAAK,EAAE,IAAI,eAAU,EAAE;IACvB,SAAS,EAAE,IAAI,mBAAc,EAAE;IAC/B,cAAc,EAAE,IAAI,iBAAmB,EAAE;IACzC,OAAO,EAAE,IAAI,iBAAY,EAAE;IAC3B,QAAQ,EAAE,IAAI,kBAAa,EAAE;IAC7B,KAAK,EAAE,IAAI,eAAU,EAAE;IACvB,oBAAoB,EAAE,IAAI,mBAAyB,EAAE;IACrD,MAAM,EAAE,gBAAM;CACjB,CAAC;AAEF,kBAAe,OAAO,CAAC"}
|
package/dist/libraries/auth.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/libraries/auth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/libraries/auth.ts"],"names":[],"mappings":"AAsDA,UAAU,WAAW;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;QACpC,MAAM,EAAE,OAAO,CAAC;QAChB,QAAQ,EAAE,OAAO,CAAC;QAClB,OAAO,CAAC,EAAE,IAAI,CAAC;KAClB,CAAC;CACL;AAED,UAAU,eAAe;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,WAAW;IACpB,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,OAAO,CAAU;;YAQX,IAAI;IAMZ,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;YAiEzF,eAAe;YAqDf,uBAAuB;YA0DvB,QAAQ;IAuHtB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,aAAa;YAQP,eAAe;IAwFtB,gBAAgB,IAAI,OAAO;IAQ3B,MAAM,IAAI,IAAI;CAKxB;AAED,eAAe,WAAW,CAAC"}
|
package/dist/libraries/auth.js
CHANGED
|
@@ -245,6 +245,68 @@ class AuthManager {
|
|
|
245
245
|
onAuthFailure(error) {
|
|
246
246
|
console.error("❌ User authentication failed: ", error);
|
|
247
247
|
}
|
|
248
|
+
async unsubscribeUser(unsubscribeParams) {
|
|
249
|
+
var _a, _b;
|
|
250
|
+
console.log("AuthManager unsubscribeUser called with params:", Object.assign({}, unsubscribeParams));
|
|
251
|
+
const { uid, user, website_id, callback_url, org } = unsubscribeParams;
|
|
252
|
+
if (!uid || !user || !website_id) {
|
|
253
|
+
return {
|
|
254
|
+
status: 'error',
|
|
255
|
+
errorKey: 'invalidData',
|
|
256
|
+
error: 'Required fields: uid, user and website_id'
|
|
257
|
+
};
|
|
258
|
+
}
|
|
259
|
+
try {
|
|
260
|
+
const apiUrl = `${this.backendBaseUrl}/auth/unsubscribe-user`;
|
|
261
|
+
const formData = new URLSearchParams();
|
|
262
|
+
formData.append('uid', uid);
|
|
263
|
+
formData.append('user', user);
|
|
264
|
+
formData.append('website_id', website_id);
|
|
265
|
+
if (callback_url) {
|
|
266
|
+
formData.append('callback_url', callback_url);
|
|
267
|
+
}
|
|
268
|
+
if (org) {
|
|
269
|
+
formData.append('org', org);
|
|
270
|
+
}
|
|
271
|
+
const apiResponse = await fetch(apiUrl, {
|
|
272
|
+
method: 'POST',
|
|
273
|
+
headers: {
|
|
274
|
+
'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
|
|
275
|
+
},
|
|
276
|
+
body: formData
|
|
277
|
+
});
|
|
278
|
+
if (!apiResponse.ok) {
|
|
279
|
+
throw new Error(`Error en la API externa: ${apiResponse.status}`);
|
|
280
|
+
}
|
|
281
|
+
const apiData = await apiResponse.json();
|
|
282
|
+
console.log('🔍 Auth API Response RAW:', JSON.stringify(apiData, null, 2));
|
|
283
|
+
if (apiData.success === 1 || apiData.success === '1') {
|
|
284
|
+
return Object.assign({ status: 'success', data: apiData }, apiData);
|
|
285
|
+
}
|
|
286
|
+
else {
|
|
287
|
+
if (((_a = apiData.error) === null || _a === void 0 ? void 0 : _a.id) && ((_b = apiData.error) === null || _b === void 0 ? void 0 : _b.reason)) {
|
|
288
|
+
return {
|
|
289
|
+
status: 'error',
|
|
290
|
+
errorKey: apiData.error.id,
|
|
291
|
+
error: apiData.error.reason
|
|
292
|
+
};
|
|
293
|
+
}
|
|
294
|
+
return {
|
|
295
|
+
status: 'error',
|
|
296
|
+
errorKey: 'unsubscribeFailed',
|
|
297
|
+
error: apiData.error || 'Unsubscribe error'
|
|
298
|
+
};
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
catch (apiError) {
|
|
302
|
+
console.error('Error:', apiError);
|
|
303
|
+
return {
|
|
304
|
+
status: 'error',
|
|
305
|
+
errorKey: 'server-error',
|
|
306
|
+
error: 'Server communication error'
|
|
307
|
+
};
|
|
308
|
+
}
|
|
309
|
+
}
|
|
248
310
|
hasActiveSession() {
|
|
249
311
|
const token = this.storage.get(config_1.default.storage.tokenKey);
|
|
250
312
|
return !!token;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/libraries/auth.ts"],"names":[],"mappings":";;;;;;AAAA,uDAA+B;AAC/B,wDAAgC;
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/libraries/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
interface UserData {
|
|
2
|
+
id: string;
|
|
3
|
+
email: string;
|
|
4
|
+
name: string;
|
|
5
|
+
role: string;
|
|
6
|
+
local_validation?: boolean;
|
|
7
|
+
}
|
|
8
|
+
interface CorporateAuthConfig {
|
|
9
|
+
authDomain: string;
|
|
10
|
+
authValidateUrl: string;
|
|
11
|
+
authLogoutUrl: string;
|
|
12
|
+
authLoginUrl: string;
|
|
13
|
+
appDomain: string;
|
|
14
|
+
authCookieDuration: number;
|
|
15
|
+
authRevalidationInterval: number;
|
|
16
|
+
jwtSecret: string;
|
|
17
|
+
authJwtIssuer: string;
|
|
18
|
+
}
|
|
19
|
+
export declare class CorporateAuthManager {
|
|
20
|
+
private config;
|
|
21
|
+
private storage;
|
|
22
|
+
private lastValidation;
|
|
23
|
+
constructor();
|
|
24
|
+
private init;
|
|
25
|
+
configure(customConfig: Partial<CorporateAuthConfig>): void;
|
|
26
|
+
private getAuthToken;
|
|
27
|
+
private setAuthToken;
|
|
28
|
+
private clearAuthToken;
|
|
29
|
+
private validateTokenWithAuthService;
|
|
30
|
+
private validateTokenLocally;
|
|
31
|
+
validateUser(autoRedirect?: boolean): Promise<UserData | null>;
|
|
32
|
+
checkAuthStatus(): Promise<{
|
|
33
|
+
authenticated: boolean;
|
|
34
|
+
user?: UserData;
|
|
35
|
+
}>;
|
|
36
|
+
login(returnTo?: string): void;
|
|
37
|
+
logout(redirectTo?: string): Promise<void>;
|
|
38
|
+
isAdmin(userData?: UserData): Promise<boolean>;
|
|
39
|
+
getCurrentUser(): Promise<UserData | null>;
|
|
40
|
+
hasActiveSession(): Promise<boolean>;
|
|
41
|
+
handleAuthCallback(): Promise<boolean>;
|
|
42
|
+
forceRevalidation(): Promise<UserData | null>;
|
|
43
|
+
}
|
|
44
|
+
export default CorporateAuthManager;
|
|
45
|
+
//# sourceMappingURL=corp_auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"corp_auth.d.ts","sourceRoot":"","sources":["../../src/libraries/corp_auth.ts"],"names":[],"mappings":"AAGA,UAAU,QAAQ;IACd,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAiBD,UAAU,mBAAmB;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,wBAAwB,EAAE,MAAM,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,oBAAoB;IAC7B,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,cAAc,CAAa;;YAoBrB,IAAI;IAaX,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,IAAI;IASlE,OAAO,CAAC,YAAY;IA4BpB,OAAO,CAAC,YAAY;IAsBpB,OAAO,CAAC,cAAc;YAeR,4BAA4B;IA6C1C,OAAO,CAAC,oBAAoB;IA2Cf,YAAY,CAAC,YAAY,GAAE,OAAe,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAiDrE,eAAe,IAAI,OAAO,CAAC;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,QAAQ,CAAA;KAAE,CAAC;IAiB7E,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAcxB,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0C1C,OAAO,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAiB9C,cAAc,IAAI,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAO1C,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;IASpC,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAsCtC,iBAAiB,IAAI,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;CAI7D;AAED,eAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,273 @@
|
|
|
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
|
+
exports.CorporateAuthManager = void 0;
|
|
7
|
+
const storage_1 = __importDefault(require("./storage"));
|
|
8
|
+
class CorporateAuthManager {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.lastValidation = 0;
|
|
11
|
+
this.config = {
|
|
12
|
+
authDomain: 'https://auth.telecoming.com',
|
|
13
|
+
authValidateUrl: 'https://auth.telecoming.com/auth/api/validate',
|
|
14
|
+
authLogoutUrl: 'https://auth.telecoming.com/auth/logout',
|
|
15
|
+
authLoginUrl: 'https://auth.telecoming.com',
|
|
16
|
+
appDomain: typeof window !== 'undefined' ? window.location.origin : '',
|
|
17
|
+
authCookieDuration: 86400,
|
|
18
|
+
authRevalidationInterval: 300,
|
|
19
|
+
jwtSecret: 'telecoming_shared_secret_2024',
|
|
20
|
+
authJwtIssuer: 'auth.telecoming.com'
|
|
21
|
+
};
|
|
22
|
+
this.storage = new storage_1.default();
|
|
23
|
+
this.init();
|
|
24
|
+
}
|
|
25
|
+
async init() {
|
|
26
|
+
console.debug("CorporateAuthManager init");
|
|
27
|
+
const customConfig = await this.storage.getData('CORP_AUTH_CONFIG');
|
|
28
|
+
if (customConfig) {
|
|
29
|
+
this.config = Object.assign(Object.assign({}, this.config), customConfig);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
configure(customConfig) {
|
|
33
|
+
this.config = Object.assign(Object.assign({}, this.config), customConfig);
|
|
34
|
+
this.storage.storeData('CORP_AUTH_CONFIG', this.config);
|
|
35
|
+
console.debug("Corporate auth configured:", this.config);
|
|
36
|
+
}
|
|
37
|
+
getAuthToken() {
|
|
38
|
+
if (typeof window !== 'undefined') {
|
|
39
|
+
const urlParams = new URLSearchParams(window.location.search);
|
|
40
|
+
const tokenFromUrl = urlParams.get('auth_token');
|
|
41
|
+
if (tokenFromUrl) {
|
|
42
|
+
return tokenFromUrl;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
if (typeof document !== 'undefined') {
|
|
46
|
+
const cookies = document.cookie.split(';');
|
|
47
|
+
for (const cookie of cookies) {
|
|
48
|
+
const [name, value] = cookie.trim().split('=');
|
|
49
|
+
if (name === 'auth_token') {
|
|
50
|
+
return value;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return this.storage.get('corp_auth_token');
|
|
55
|
+
}
|
|
56
|
+
setAuthToken(token) {
|
|
57
|
+
if (typeof document !== 'undefined') {
|
|
58
|
+
const isSecure = window.location.protocol === 'https:';
|
|
59
|
+
const cookieString = [
|
|
60
|
+
`auth_token=${token}`,
|
|
61
|
+
`max-age=${this.config.authCookieDuration}`,
|
|
62
|
+
'path=/',
|
|
63
|
+
'SameSite=Lax',
|
|
64
|
+
isSecure ? 'Secure' : ''
|
|
65
|
+
].filter(Boolean).join('; ');
|
|
66
|
+
document.cookie = cookieString;
|
|
67
|
+
}
|
|
68
|
+
this.storage.set('corp_auth_token', token);
|
|
69
|
+
}
|
|
70
|
+
clearAuthToken() {
|
|
71
|
+
if (typeof document !== 'undefined') {
|
|
72
|
+
document.cookie = 'auth_token=; max-age=0; path=/;';
|
|
73
|
+
}
|
|
74
|
+
this.storage.remove('corp_auth_token');
|
|
75
|
+
this.storage.removeData('corp_user_data');
|
|
76
|
+
this.storage.removeData('corp_auth_validated');
|
|
77
|
+
}
|
|
78
|
+
async validateTokenWithAuthService(token) {
|
|
79
|
+
try {
|
|
80
|
+
console.debug("Validating token with central auth service");
|
|
81
|
+
const response = await fetch(this.config.authValidateUrl, {
|
|
82
|
+
method: 'POST',
|
|
83
|
+
headers: {
|
|
84
|
+
'Content-Type': 'application/json',
|
|
85
|
+
'Authorization': `Bearer ${token}`
|
|
86
|
+
},
|
|
87
|
+
body: JSON.stringify({ token }),
|
|
88
|
+
credentials: 'include'
|
|
89
|
+
});
|
|
90
|
+
if (!response.ok) {
|
|
91
|
+
console.warn(`Auth service returned ${response.status}`);
|
|
92
|
+
return null;
|
|
93
|
+
}
|
|
94
|
+
const result = await response.json();
|
|
95
|
+
if (result.authenticated && result.user) {
|
|
96
|
+
console.debug("Token validated successfully:", result.user.email);
|
|
97
|
+
if (result.token && result.token !== token) {
|
|
98
|
+
this.setAuthToken(result.token);
|
|
99
|
+
}
|
|
100
|
+
return result.user;
|
|
101
|
+
}
|
|
102
|
+
console.warn("Token validation failed:", result.error);
|
|
103
|
+
return null;
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
console.error("Error validating token with auth service:", error);
|
|
107
|
+
return this.validateTokenLocally(token);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
validateTokenLocally(token) {
|
|
111
|
+
try {
|
|
112
|
+
console.debug("Using local JWT validation as fallback");
|
|
113
|
+
const tokenParts = token.split('.');
|
|
114
|
+
if (tokenParts.length !== 3) {
|
|
115
|
+
return null;
|
|
116
|
+
}
|
|
117
|
+
const payload = JSON.parse(atob(tokenParts[1]));
|
|
118
|
+
if (payload.exp && Date.now() / 1000 > payload.exp) {
|
|
119
|
+
console.warn("Token expired locally");
|
|
120
|
+
return null;
|
|
121
|
+
}
|
|
122
|
+
if (payload.iss && payload.iss !== this.config.authJwtIssuer) {
|
|
123
|
+
console.warn("Invalid token issuer");
|
|
124
|
+
return null;
|
|
125
|
+
}
|
|
126
|
+
return {
|
|
127
|
+
id: payload.sub || payload.user_id,
|
|
128
|
+
email: payload.email,
|
|
129
|
+
name: payload.name,
|
|
130
|
+
role: payload.role || 'user',
|
|
131
|
+
local_validation: true
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
catch (error) {
|
|
135
|
+
console.error("Local JWT validation failed:", error);
|
|
136
|
+
return null;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
async validateUser(autoRedirect = false) {
|
|
140
|
+
const now = Date.now();
|
|
141
|
+
const timeSinceLastValidation = (now - this.lastValidation) / 1000;
|
|
142
|
+
if (timeSinceLastValidation < this.config.authRevalidationInterval) {
|
|
143
|
+
const cachedUser = await this.storage.getData('corp_user_data');
|
|
144
|
+
if (cachedUser) {
|
|
145
|
+
console.debug("Using cached user data");
|
|
146
|
+
return cachedUser;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
const token = this.getAuthToken();
|
|
150
|
+
if (!token) {
|
|
151
|
+
console.debug("No auth token found");
|
|
152
|
+
if (autoRedirect) {
|
|
153
|
+
this.login();
|
|
154
|
+
}
|
|
155
|
+
return null;
|
|
156
|
+
}
|
|
157
|
+
const userData = await this.validateTokenWithAuthService(token);
|
|
158
|
+
if (userData) {
|
|
159
|
+
await this.storage.storeData('corp_user_data', userData);
|
|
160
|
+
await this.storage.storeData('corp_auth_validated', true);
|
|
161
|
+
this.lastValidation = now;
|
|
162
|
+
console.debug("User validated:", userData.email);
|
|
163
|
+
return userData;
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
this.clearAuthToken();
|
|
167
|
+
if (autoRedirect) {
|
|
168
|
+
this.login();
|
|
169
|
+
}
|
|
170
|
+
return null;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
async checkAuthStatus() {
|
|
174
|
+
const cachedUser = await this.storage.getData('corp_user_data');
|
|
175
|
+
const token = this.getAuthToken();
|
|
176
|
+
if (cachedUser && token) {
|
|
177
|
+
return {
|
|
178
|
+
authenticated: true,
|
|
179
|
+
user: cachedUser
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
return { authenticated: false };
|
|
183
|
+
}
|
|
184
|
+
login(returnTo) {
|
|
185
|
+
const destination = returnTo || (typeof window !== 'undefined' ? window.location.href : this.config.appDomain);
|
|
186
|
+
const loginUrl = `${this.config.authLoginUrl}?return_to=${encodeURIComponent(destination)}`;
|
|
187
|
+
console.debug("Redirecting to login:", loginUrl);
|
|
188
|
+
if (typeof window !== 'undefined') {
|
|
189
|
+
window.location.href = loginUrl;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
async logout(redirectTo) {
|
|
193
|
+
const token = this.getAuthToken();
|
|
194
|
+
const destination = redirectTo || this.config.appDomain;
|
|
195
|
+
try {
|
|
196
|
+
if (token) {
|
|
197
|
+
const response = await fetch(this.config.authLogoutUrl, {
|
|
198
|
+
method: 'POST',
|
|
199
|
+
headers: {
|
|
200
|
+
'Content-Type': 'application/json',
|
|
201
|
+
'Authorization': `Bearer ${token}`
|
|
202
|
+
},
|
|
203
|
+
body: JSON.stringify({
|
|
204
|
+
token,
|
|
205
|
+
redirect_to: destination
|
|
206
|
+
}),
|
|
207
|
+
credentials: 'include'
|
|
208
|
+
});
|
|
209
|
+
if (response.ok) {
|
|
210
|
+
const result = await response.json();
|
|
211
|
+
console.debug("Logout successful:", result.message);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
catch (error) {
|
|
216
|
+
console.error("Error during logout:", error);
|
|
217
|
+
}
|
|
218
|
+
finally {
|
|
219
|
+
this.clearAuthToken();
|
|
220
|
+
if (typeof window !== 'undefined') {
|
|
221
|
+
const logoutUrl = `${this.config.authLogoutUrl}?redirect_to=${encodeURIComponent(destination)}`;
|
|
222
|
+
window.location.href = logoutUrl;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
async isAdmin(userData) {
|
|
227
|
+
let user = userData;
|
|
228
|
+
if (!user) {
|
|
229
|
+
user = await this.storage.getData('corp_user_data');
|
|
230
|
+
}
|
|
231
|
+
if (!user) {
|
|
232
|
+
return false;
|
|
233
|
+
}
|
|
234
|
+
return user.role === 'admin';
|
|
235
|
+
}
|
|
236
|
+
async getCurrentUser() {
|
|
237
|
+
return await this.storage.getData('corp_user_data');
|
|
238
|
+
}
|
|
239
|
+
async hasActiveSession() {
|
|
240
|
+
const token = this.getAuthToken();
|
|
241
|
+
const validated = await this.storage.getData('corp_auth_validated');
|
|
242
|
+
return !!(token && validated);
|
|
243
|
+
}
|
|
244
|
+
async handleAuthCallback() {
|
|
245
|
+
if (typeof window === 'undefined') {
|
|
246
|
+
return false;
|
|
247
|
+
}
|
|
248
|
+
const urlParams = new URLSearchParams(window.location.search);
|
|
249
|
+
const token = urlParams.get('auth_token');
|
|
250
|
+
const returnTo = urlParams.get('return_to');
|
|
251
|
+
if (token) {
|
|
252
|
+
console.debug("Processing auth callback with token");
|
|
253
|
+
this.setAuthToken(token);
|
|
254
|
+
const userData = await this.validateUser(false);
|
|
255
|
+
if (userData) {
|
|
256
|
+
const cleanUrl = window.location.pathname + window.location.hash;
|
|
257
|
+
window.history.replaceState({}, document.title, cleanUrl);
|
|
258
|
+
if (returnTo) {
|
|
259
|
+
window.location.href = decodeURIComponent(returnTo);
|
|
260
|
+
}
|
|
261
|
+
return true;
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
return false;
|
|
265
|
+
}
|
|
266
|
+
async forceRevalidation() {
|
|
267
|
+
this.lastValidation = 0;
|
|
268
|
+
return await this.validateUser(false);
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
exports.CorporateAuthManager = CorporateAuthManager;
|
|
272
|
+
exports.default = CorporateAuthManager;
|
|
273
|
+
//# sourceMappingURL=corp_auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"corp_auth.js","sourceRoot":"","sources":["../../src/libraries/corp_auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ import ContentManagerClass from './content';
|
|
|
8
8
|
import SessionClass from './session';
|
|
9
9
|
import MixPanelClass from './mixpanel';
|
|
10
10
|
import AudioClass from './audio';
|
|
11
|
+
import CorporateAuthManagerClass from './corp_auth';
|
|
11
12
|
export declare const Networking: NetworkingClass;
|
|
12
13
|
export declare const AuthManager: AuthManagerClass;
|
|
13
14
|
export declare const I18nManager: I18nManagerClass;
|
|
@@ -18,4 +19,5 @@ export declare const ContentManager: ContentManagerClass;
|
|
|
18
19
|
export declare const Session: SessionClass;
|
|
19
20
|
export declare const MixPanel: MixPanelClass;
|
|
20
21
|
export declare const Audio: AudioClass;
|
|
22
|
+
export declare const CorporateAuthManager: CorporateAuthManagerClass;
|
|
21
23
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/libraries/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,cAAc,CAAC;AAC3C,OAAO,gBAAgB,MAAM,QAAQ,CAAC;AACtC,OAAO,gBAAgB,MAAM,QAAQ,CAAC;AACtC,OAAO,YAAY,MAAM,WAAW,CAAC;AACrC,OAAO,UAAU,MAAM,SAAS,CAAC;AACjC,OAAO,cAAc,MAAM,aAAa,CAAC;AACzC,OAAO,mBAAmB,MAAM,WAAW,CAAC;AAC5C,OAAO,YAAY,MAAM,WAAW,CAAC;AACrC,OAAO,aAAa,MAAM,YAAY,CAAC;AACvC,OAAO,UAAU,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/libraries/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,cAAc,CAAC;AAC3C,OAAO,gBAAgB,MAAM,QAAQ,CAAC;AACtC,OAAO,gBAAgB,MAAM,QAAQ,CAAC;AACtC,OAAO,YAAY,MAAM,WAAW,CAAC;AACrC,OAAO,UAAU,MAAM,SAAS,CAAC;AACjC,OAAO,cAAc,MAAM,aAAa,CAAC;AACzC,OAAO,mBAAmB,MAAM,WAAW,CAAC;AAC5C,OAAO,YAAY,MAAM,WAAW,CAAC;AACrC,OAAO,aAAa,MAAM,YAAY,CAAC;AACvC,OAAO,UAAU,MAAM,SAAS,CAAC;AACjC,OAAO,yBAAyB,MAAM,aAAa,CAAC;AAEpD,eAAO,MAAM,UAAU,iBAAwB,CAAC;AAChD,eAAO,MAAM,WAAW,kBAAyB,CAAC;AAClD,eAAO,MAAM,WAAW,kBAAyB,CAAC;AAClD,eAAO,MAAM,OAAO,cAAqB,CAAC;AAC1C,eAAO,MAAM,KAAK,YAAmB,CAAC;AACtC,eAAO,MAAM,SAAS,gBAAuB,CAAC;AAC9C,eAAO,MAAM,cAAc,qBAA4B,CAAC;AACxD,eAAO,MAAM,OAAO,cAAqB,CAAC;AAC1C,eAAO,MAAM,QAAQ,eAAsB,CAAC;AAC5C,eAAO,MAAM,KAAK,YAAmB,CAAC;AACtC,eAAO,MAAM,oBAAoB,2BAAkC,CAAC"}
|
package/dist/libraries/index.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.Audio = exports.MixPanel = exports.Session = exports.ContentManager = exports.Andromeda = exports.Utils = exports.Storage = exports.I18nManager = exports.AuthManager = exports.Networking = void 0;
|
|
6
|
+
exports.CorporateAuthManager = exports.Audio = exports.MixPanel = exports.Session = exports.ContentManager = exports.Andromeda = exports.Utils = exports.Storage = exports.I18nManager = exports.AuthManager = exports.Networking = void 0;
|
|
7
7
|
const networking_1 = __importDefault(require("./networking"));
|
|
8
8
|
const auth_1 = __importDefault(require("./auth"));
|
|
9
9
|
const i18n_1 = __importDefault(require("./i18n"));
|
|
@@ -14,6 +14,7 @@ const content_1 = __importDefault(require("./content"));
|
|
|
14
14
|
const session_1 = __importDefault(require("./session"));
|
|
15
15
|
const mixpanel_1 = __importDefault(require("./mixpanel"));
|
|
16
16
|
const audio_1 = __importDefault(require("./audio"));
|
|
17
|
+
const corp_auth_1 = __importDefault(require("./corp_auth"));
|
|
17
18
|
exports.Networking = new networking_1.default();
|
|
18
19
|
exports.AuthManager = new auth_1.default();
|
|
19
20
|
exports.I18nManager = new i18n_1.default();
|
|
@@ -24,4 +25,5 @@ exports.ContentManager = new content_1.default();
|
|
|
24
25
|
exports.Session = new session_1.default();
|
|
25
26
|
exports.MixPanel = new mixpanel_1.default();
|
|
26
27
|
exports.Audio = new audio_1.default();
|
|
28
|
+
exports.CorporateAuthManager = new corp_auth_1.default();
|
|
27
29
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/libraries/index.ts"],"names":[],"mappings":";;;;;;AAAA,8DAA2C;AAC3C,kDAAsC;AACtC,kDAAsC;AACtC,wDAAqC;AACrC,oDAAiC;AACjC,4DAAyC;AACzC,wDAA4C;AAC5C,wDAAqC;AACrC,0DAAuC;AACvC,oDAAiC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/libraries/index.ts"],"names":[],"mappings":";;;;;;AAAA,8DAA2C;AAC3C,kDAAsC;AACtC,kDAAsC;AACtC,wDAAqC;AACrC,oDAAiC;AACjC,4DAAyC;AACzC,wDAA4C;AAC5C,wDAAqC;AACrC,0DAAuC;AACvC,oDAAiC;AACjC,4DAAoD;AAEvC,QAAA,UAAU,GAAG,IAAI,oBAAe,EAAE,CAAC;AACnC,QAAA,WAAW,GAAG,IAAI,cAAgB,EAAE,CAAC;AACrC,QAAA,WAAW,GAAG,IAAI,cAAgB,EAAE,CAAC;AACrC,QAAA,OAAO,GAAG,IAAI,iBAAY,EAAE,CAAC;AAC7B,QAAA,KAAK,GAAG,IAAI,eAAU,EAAE,CAAC;AACzB,QAAA,SAAS,GAAG,IAAI,mBAAc,EAAE,CAAC;AACjC,QAAA,cAAc,GAAG,IAAI,iBAAmB,EAAE,CAAC;AAC3C,QAAA,OAAO,GAAG,IAAI,iBAAY,EAAE,CAAC;AAC7B,QAAA,QAAQ,GAAG,IAAI,kBAAa,EAAE,CAAC;AAC/B,QAAA,KAAK,GAAG,IAAI,eAAU,EAAE,CAAC;AACzB,QAAA,oBAAoB,GAAG,IAAI,mBAAyB,EAAE,CAAC"}
|
package/package.json
CHANGED
package/types/index.d.ts
CHANGED
|
@@ -282,6 +282,54 @@ declare module "webs-sdk" {
|
|
|
282
282
|
speakWithEffect(text: string, effect: 'slow' | 'fast' | 'robot' | 'whisper'): Promise<void>;
|
|
283
283
|
}
|
|
284
284
|
|
|
285
|
+
interface CorporateUserData {
|
|
286
|
+
id: string;
|
|
287
|
+
email: string;
|
|
288
|
+
name: string;
|
|
289
|
+
role: string;
|
|
290
|
+
local_validation?: boolean;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
interface CorporateValidationResponse {
|
|
294
|
+
authenticated: boolean;
|
|
295
|
+
user?: CorporateUserData;
|
|
296
|
+
token?: string;
|
|
297
|
+
expires_at?: number;
|
|
298
|
+
error?: string;
|
|
299
|
+
code?: string;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
interface CorporateLogoutResponse {
|
|
303
|
+
success: boolean;
|
|
304
|
+
message?: string;
|
|
305
|
+
redirect_url?: string;
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
interface CorporateAuthConfig {
|
|
309
|
+
authDomain: string;
|
|
310
|
+
authValidateUrl: string;
|
|
311
|
+
authLogoutUrl: string;
|
|
312
|
+
authLoginUrl: string;
|
|
313
|
+
appDomain: string;
|
|
314
|
+
authCookieDuration: number;
|
|
315
|
+
authRevalidationInterval: number;
|
|
316
|
+
jwtSecret: string;
|
|
317
|
+
authJwtIssuer: string;
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
interface CorporateAuthManager {
|
|
321
|
+
configure(customConfig: Partial<CorporateAuthConfig>): void;
|
|
322
|
+
validateUser(autoRedirect?: boolean): Promise<CorporateUserData | null>;
|
|
323
|
+
checkAuthStatus(): Promise<{ authenticated: boolean; user?: CorporateUserData }>;
|
|
324
|
+
login(returnTo?: string): void;
|
|
325
|
+
logout(redirectTo?: string): Promise<void>;
|
|
326
|
+
isAdmin(userData?: CorporateUserData): Promise<boolean>;
|
|
327
|
+
getCurrentUser(): Promise<CorporateUserData | null>;
|
|
328
|
+
hasActiveSession(): Promise<boolean>;
|
|
329
|
+
handleAuthCallback(): Promise<boolean>;
|
|
330
|
+
forceRevalidation(): Promise<CorporateUserData | null>;
|
|
331
|
+
}
|
|
332
|
+
|
|
285
333
|
interface WebsSDK {
|
|
286
334
|
Networking: Networking;
|
|
287
335
|
AuthManager: AuthManager;
|
|
@@ -293,6 +341,7 @@ declare module "webs-sdk" {
|
|
|
293
341
|
Session: Session;
|
|
294
342
|
MixPanel: MixPanel;
|
|
295
343
|
Audio: Audio;
|
|
344
|
+
CorporateAuthManager: CorporateAuthManager;
|
|
296
345
|
Config: Config;
|
|
297
346
|
}
|
|
298
347
|
|