@pax2pay/model-banking 0.1.284 → 0.1.285
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/Identity.ts +10 -13
- package/dist/Identity.d.ts +1 -1
- package/dist/Identity.js +9 -10
- package/dist/Identity.js.map +1 -1
- package/package.json +1 -1
package/Identity.ts
CHANGED
|
@@ -9,13 +9,15 @@ export class Identity {
|
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
constructor(readonly key: Key, readonly realm?: Realm, readonly organization?: string) {}
|
|
12
|
-
check(constraint: Key.Permissions, realm?: Realm, organization?: string): boolean {
|
|
13
|
-
return
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
12
|
+
check(constraint: Key.Permissions | Key.Permissions[], realm?: Realm, organization?: string): boolean {
|
|
13
|
+
return Array.isArray(constraint)
|
|
14
|
+
? constraint.some(c => this.check(c))
|
|
15
|
+
: [
|
|
16
|
+
{ [`${realm ?? this.realm}-${organization ?? this.organization}`]: constraint },
|
|
17
|
+
{ [`${organization ?? this.organization}`]: constraint },
|
|
18
|
+
{ [`${realm ?? this.realm}-*`]: constraint },
|
|
19
|
+
{ [`*-*`]: constraint },
|
|
20
|
+
].some(e => userwidgets.User.Permissions.check(this.key.permissions, e))
|
|
19
21
|
}
|
|
20
22
|
collectionCheck(collection: string): boolean {
|
|
21
23
|
return Object.values(this.key.permissions).some(
|
|
@@ -47,12 +49,7 @@ export class Identity {
|
|
|
47
49
|
| (keyof T extends keyof Identity ? Required<Pick<Identity, keyof T>> & Identity : Identity)
|
|
48
50
|
| undefined =>
|
|
49
51
|
(requires?.organization ? !!identity?.organization : true) && (requires?.realm ? Realm.is(identity?.realm) : true)
|
|
50
|
-
return (
|
|
51
|
-
((Array.isArray(constraint) ? constraint.some(c => identity?.check(c)) : identity?.check(constraint)) &&
|
|
52
|
-
requirement(identity) &&
|
|
53
|
-
identity) ||
|
|
54
|
-
undefined
|
|
55
|
-
)
|
|
52
|
+
return (identity?.check(constraint) && requirement(identity) && identity) || undefined
|
|
56
53
|
}
|
|
57
54
|
static async verify(
|
|
58
55
|
authorization: string | undefined,
|
package/dist/Identity.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ export declare class Identity {
|
|
|
8
8
|
readonly organization?: string | undefined;
|
|
9
9
|
get realms(): Realm[] | undefined;
|
|
10
10
|
constructor(key: Key, realm?: "eu" | "uk" | "test" | "testUK" | "upcheck" | undefined, organization?: string | undefined);
|
|
11
|
-
check(constraint: Key.Permissions, realm?: Realm, organization?: string): boolean;
|
|
11
|
+
check(constraint: Key.Permissions | Key.Permissions[], realm?: Realm, organization?: string): boolean;
|
|
12
12
|
collectionCheck(collection: string): boolean;
|
|
13
13
|
static authenticate<T extends Partial<Record<"realm" | "organization", true>> = Record<string, never>>(header: {
|
|
14
14
|
authorization?: string | undefined;
|
package/dist/Identity.js
CHANGED
|
@@ -23,12 +23,14 @@ export class Identity {
|
|
|
23
23
|
_Identity_realms.set(this, void 0);
|
|
24
24
|
}
|
|
25
25
|
check(constraint, realm, organization) {
|
|
26
|
-
return
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
26
|
+
return Array.isArray(constraint)
|
|
27
|
+
? constraint.some(c => this.check(c))
|
|
28
|
+
: [
|
|
29
|
+
{ [`${realm ?? this.realm}-${organization ?? this.organization}`]: constraint },
|
|
30
|
+
{ [`${organization ?? this.organization}`]: constraint },
|
|
31
|
+
{ [`${realm ?? this.realm}-*`]: constraint },
|
|
32
|
+
{ [`*-*`]: constraint },
|
|
33
|
+
].some(e => userwidgets.User.Permissions.check(this.key.permissions, e));
|
|
32
34
|
}
|
|
33
35
|
collectionCheck(collection) {
|
|
34
36
|
return Object.values(this.key.permissions).some(value => (typeof value == "object" && value[collection]) || value == true);
|
|
@@ -42,10 +44,7 @@ export class Identity {
|
|
|
42
44
|
const identity = key &&
|
|
43
45
|
new Identity(key, (realms?.length == 1 ? realms[0] : header.realm), (key.organization ?? header.organization));
|
|
44
46
|
const requirement = (value) => (requires?.organization ? !!identity?.organization : true) && (requires?.realm ? Realm.is(identity?.realm) : true);
|
|
45
|
-
return ((
|
|
46
|
-
requirement(identity) &&
|
|
47
|
-
identity) ||
|
|
48
|
-
undefined);
|
|
47
|
+
return (identity?.check(constraint) && requirement(identity) && identity) || undefined;
|
|
49
48
|
}
|
|
50
49
|
static async verify(authorization, verifier = productionVerifier) {
|
|
51
50
|
return await verifier.verify(authorization);
|
package/dist/Identity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Identity.js","sourceRoot":"../","sources":["Identity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAEhD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAE/B,MAAM,OAAO,QAAQ;IAEpB,IAAI,MAAM;QACT,OAAO,CAAC,sGAAiB,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAA,CAAC,CAAA;IACnE,CAAC;IAED,YAAqB,GAAQ,EAAW,KAAa,EAAW,YAAqB;QAAhE,QAAG,GAAH,GAAG,CAAK;QAAW,UAAK,GAAL,KAAK,CAAQ;QAAW,iBAAY,GAAZ,YAAY,CAAS;QALrF,mCAA4B;IAK4D,CAAC;IACzF,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"Identity.js","sourceRoot":"../","sources":["Identity.ts"],"names":[],"mappings":"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"}
|