@mu-cabin/opms-permission 0.7.0 → 0.8.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/index.cjs +52 -18
- package/dist/index.d.mts +3 -2
- package/dist/index.d.ts +3 -2
- package/dist/index.mjs +52 -18
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
@@ -272,18 +272,38 @@ var Permission = class {
|
|
272
272
|
/**
|
273
273
|
* Login using code from URL, save userInfo
|
274
274
|
*/
|
275
|
-
async login() {
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
275
|
+
async login(code) {
|
276
|
+
try {
|
277
|
+
const url = new URL(window.location.href);
|
278
|
+
const authCode = code || url.searchParams.get("code");
|
279
|
+
if (!authCode) {
|
280
|
+
return Promise.reject({
|
281
|
+
code: 400,
|
282
|
+
msg: "No code found in URL"
|
283
|
+
});
|
284
|
+
}
|
285
|
+
const {
|
286
|
+
obj,
|
287
|
+
success,
|
288
|
+
msg,
|
289
|
+
code: loginCode
|
290
|
+
} = await login(this.baseUrl, authCode);
|
291
|
+
if (!success || loginCode !== 200) {
|
292
|
+
return Promise.reject({
|
293
|
+
code: loginCode,
|
294
|
+
msg
|
295
|
+
});
|
296
|
+
}
|
297
|
+
const { token } = obj;
|
298
|
+
url.searchParams.delete("code");
|
299
|
+
storage.setItem(TOKEN_KEY, token);
|
300
|
+
return token;
|
301
|
+
} catch (error) {
|
302
|
+
return Promise.reject({
|
303
|
+
code: 500,
|
304
|
+
msg: "Internal server error"
|
305
|
+
});
|
282
306
|
}
|
283
|
-
const { token } = obj;
|
284
|
-
url.searchParams.delete("code");
|
285
|
-
storage.setItem(TOKEN_KEY, token);
|
286
|
-
return token;
|
287
307
|
}
|
288
308
|
/**
|
289
309
|
* Logout and clear userInfo
|
@@ -308,9 +328,12 @@ var Permission = class {
|
|
308
328
|
}
|
309
329
|
async getUserInfo() {
|
310
330
|
const data = await getUserInfo(this.baseUrl);
|
311
|
-
const { obj, success, msg } = data;
|
331
|
+
const { obj, success, msg, code } = data;
|
312
332
|
if (!success) {
|
313
|
-
return Promise.reject(
|
333
|
+
return Promise.reject({
|
334
|
+
code,
|
335
|
+
msg
|
336
|
+
});
|
314
337
|
}
|
315
338
|
this._userInfo = obj;
|
316
339
|
return this.userInfo;
|
@@ -330,11 +353,14 @@ var Permission = class {
|
|
330
353
|
menuMap: menuMap2
|
331
354
|
};
|
332
355
|
}
|
333
|
-
const { obj, success, msg } = await queryResource(this.baseUrl, {
|
356
|
+
const { obj, success, msg, code } = await queryResource(this.baseUrl, {
|
334
357
|
systemId: this.systemId
|
335
358
|
});
|
336
359
|
if (!success) {
|
337
|
-
return Promise.reject(
|
360
|
+
return Promise.reject({
|
361
|
+
code,
|
362
|
+
msg
|
363
|
+
});
|
338
364
|
}
|
339
365
|
const resources = obj;
|
340
366
|
const { resourceMap, widgetMap } = createResourceMap(resources);
|
@@ -371,9 +397,12 @@ var Permission = class {
|
|
371
397
|
systemId: this.systemId,
|
372
398
|
name: "COS"
|
373
399
|
});
|
374
|
-
const { obj, success, msg } = data;
|
400
|
+
const { obj, success, msg, code } = data;
|
375
401
|
if (!success) {
|
376
|
-
return Promise.reject(
|
402
|
+
return Promise.reject({
|
403
|
+
code,
|
404
|
+
msg
|
405
|
+
});
|
377
406
|
}
|
378
407
|
const orgTree = obj;
|
379
408
|
const newTree = iterateNestedArray([orgTree], (item) => {
|
@@ -399,7 +428,9 @@ var Permission = class {
|
|
399
428
|
try {
|
400
429
|
let orgCompanyList = storage.getItem(ORG_COMPANY_KEY);
|
401
430
|
if (!orgCompanyList) {
|
402
|
-
const { obj } = await queryOrgCompanies(this.baseUrl, {
|
431
|
+
const { obj } = await queryOrgCompanies(this.baseUrl, {
|
432
|
+
queryAllBranches: true
|
433
|
+
});
|
403
434
|
orgCompanyList = obj;
|
404
435
|
storage.setItem(ORG_COMPANY_KEY, orgCompanyList);
|
405
436
|
}
|
@@ -414,6 +445,9 @@ var Permission = class {
|
|
414
445
|
getToken() {
|
415
446
|
return storage.getItem(TOKEN_KEY);
|
416
447
|
}
|
448
|
+
setToken(token) {
|
449
|
+
storage.setItem(TOKEN_KEY, token);
|
450
|
+
}
|
417
451
|
// --- Getters ---
|
418
452
|
get userInfo() {
|
419
453
|
if (!this._userInfo) {
|
package/dist/index.d.mts
CHANGED
@@ -61,7 +61,7 @@ declare class Permission {
|
|
61
61
|
/**
|
62
62
|
* Login using code from URL, save userInfo
|
63
63
|
*/
|
64
|
-
login(): Promise<string>;
|
64
|
+
login(code?: string): Promise<string>;
|
65
65
|
/**
|
66
66
|
* Logout and clear userInfo
|
67
67
|
*/
|
@@ -88,7 +88,8 @@ declare class Permission {
|
|
88
88
|
queryOrgs(): Promise<any>;
|
89
89
|
queryCompanies(): Promise<void>;
|
90
90
|
isLogin(): boolean;
|
91
|
-
getToken():
|
91
|
+
getToken(): string | null;
|
92
|
+
setToken(token: string): void;
|
92
93
|
get userInfo(): UserInfo | null;
|
93
94
|
get hasRootAuth(): boolean;
|
94
95
|
get userOrganizations(): UserOrganization[];
|
package/dist/index.d.ts
CHANGED
@@ -61,7 +61,7 @@ declare class Permission {
|
|
61
61
|
/**
|
62
62
|
* Login using code from URL, save userInfo
|
63
63
|
*/
|
64
|
-
login(): Promise<string>;
|
64
|
+
login(code?: string): Promise<string>;
|
65
65
|
/**
|
66
66
|
* Logout and clear userInfo
|
67
67
|
*/
|
@@ -88,7 +88,8 @@ declare class Permission {
|
|
88
88
|
queryOrgs(): Promise<any>;
|
89
89
|
queryCompanies(): Promise<void>;
|
90
90
|
isLogin(): boolean;
|
91
|
-
getToken():
|
91
|
+
getToken(): string | null;
|
92
|
+
setToken(token: string): void;
|
92
93
|
get userInfo(): UserInfo | null;
|
93
94
|
get hasRootAuth(): boolean;
|
94
95
|
get userOrganizations(): UserOrganization[];
|
package/dist/index.mjs
CHANGED
@@ -234,18 +234,38 @@ var Permission = class {
|
|
234
234
|
/**
|
235
235
|
* Login using code from URL, save userInfo
|
236
236
|
*/
|
237
|
-
async login() {
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
237
|
+
async login(code) {
|
238
|
+
try {
|
239
|
+
const url = new URL(window.location.href);
|
240
|
+
const authCode = code || url.searchParams.get("code");
|
241
|
+
if (!authCode) {
|
242
|
+
return Promise.reject({
|
243
|
+
code: 400,
|
244
|
+
msg: "No code found in URL"
|
245
|
+
});
|
246
|
+
}
|
247
|
+
const {
|
248
|
+
obj,
|
249
|
+
success,
|
250
|
+
msg,
|
251
|
+
code: loginCode
|
252
|
+
} = await login(this.baseUrl, authCode);
|
253
|
+
if (!success || loginCode !== 200) {
|
254
|
+
return Promise.reject({
|
255
|
+
code: loginCode,
|
256
|
+
msg
|
257
|
+
});
|
258
|
+
}
|
259
|
+
const { token } = obj;
|
260
|
+
url.searchParams.delete("code");
|
261
|
+
storage.setItem(TOKEN_KEY, token);
|
262
|
+
return token;
|
263
|
+
} catch (error) {
|
264
|
+
return Promise.reject({
|
265
|
+
code: 500,
|
266
|
+
msg: "Internal server error"
|
267
|
+
});
|
244
268
|
}
|
245
|
-
const { token } = obj;
|
246
|
-
url.searchParams.delete("code");
|
247
|
-
storage.setItem(TOKEN_KEY, token);
|
248
|
-
return token;
|
249
269
|
}
|
250
270
|
/**
|
251
271
|
* Logout and clear userInfo
|
@@ -270,9 +290,12 @@ var Permission = class {
|
|
270
290
|
}
|
271
291
|
async getUserInfo() {
|
272
292
|
const data = await getUserInfo(this.baseUrl);
|
273
|
-
const { obj, success, msg } = data;
|
293
|
+
const { obj, success, msg, code } = data;
|
274
294
|
if (!success) {
|
275
|
-
return Promise.reject(
|
295
|
+
return Promise.reject({
|
296
|
+
code,
|
297
|
+
msg
|
298
|
+
});
|
276
299
|
}
|
277
300
|
this._userInfo = obj;
|
278
301
|
return this.userInfo;
|
@@ -292,11 +315,14 @@ var Permission = class {
|
|
292
315
|
menuMap: menuMap2
|
293
316
|
};
|
294
317
|
}
|
295
|
-
const { obj, success, msg } = await queryResource(this.baseUrl, {
|
318
|
+
const { obj, success, msg, code } = await queryResource(this.baseUrl, {
|
296
319
|
systemId: this.systemId
|
297
320
|
});
|
298
321
|
if (!success) {
|
299
|
-
return Promise.reject(
|
322
|
+
return Promise.reject({
|
323
|
+
code,
|
324
|
+
msg
|
325
|
+
});
|
300
326
|
}
|
301
327
|
const resources = obj;
|
302
328
|
const { resourceMap, widgetMap } = createResourceMap(resources);
|
@@ -333,9 +359,12 @@ var Permission = class {
|
|
333
359
|
systemId: this.systemId,
|
334
360
|
name: "COS"
|
335
361
|
});
|
336
|
-
const { obj, success, msg } = data;
|
362
|
+
const { obj, success, msg, code } = data;
|
337
363
|
if (!success) {
|
338
|
-
return Promise.reject(
|
364
|
+
return Promise.reject({
|
365
|
+
code,
|
366
|
+
msg
|
367
|
+
});
|
339
368
|
}
|
340
369
|
const orgTree = obj;
|
341
370
|
const newTree = iterateNestedArray([orgTree], (item) => {
|
@@ -361,7 +390,9 @@ var Permission = class {
|
|
361
390
|
try {
|
362
391
|
let orgCompanyList = storage.getItem(ORG_COMPANY_KEY);
|
363
392
|
if (!orgCompanyList) {
|
364
|
-
const { obj } = await queryOrgCompanies(this.baseUrl, {
|
393
|
+
const { obj } = await queryOrgCompanies(this.baseUrl, {
|
394
|
+
queryAllBranches: true
|
395
|
+
});
|
365
396
|
orgCompanyList = obj;
|
366
397
|
storage.setItem(ORG_COMPANY_KEY, orgCompanyList);
|
367
398
|
}
|
@@ -376,6 +407,9 @@ var Permission = class {
|
|
376
407
|
getToken() {
|
377
408
|
return storage.getItem(TOKEN_KEY);
|
378
409
|
}
|
410
|
+
setToken(token) {
|
411
|
+
storage.setItem(TOKEN_KEY, token);
|
412
|
+
}
|
379
413
|
// --- Getters ---
|
380
414
|
get userInfo() {
|
381
415
|
if (!this._userInfo) {
|