@pax2pay/model-banking 0.1.283 → 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/Rule/Rule/Base.ts +3 -3
- package/Rule/Rule/Score.ts +2 -2
- package/Rule/index.ts +5 -1
- package/dist/Identity.d.ts +1 -1
- package/dist/Identity.js +9 -10
- package/dist/Identity.js.map +1 -1
- package/dist/Rule/Rule/Base.d.ts +2 -2
- package/dist/Rule/Rule/Base.js +1 -1
- package/dist/Rule/Rule/Base.js.map +1 -1
- package/dist/Rule/Rule/Score.d.ts +1 -1
- package/dist/Rule/Rule/Score.js +1 -1
- package/dist/Rule/Rule/Score.js.map +1 -1
- package/dist/Rule/index.d.ts +5 -3
- package/dist/Rule/index.js +6 -1
- package/dist/Rule/index.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/Rule/Rule/Base.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { isly } from "isly"
|
|
2
2
|
|
|
3
3
|
export interface Base {
|
|
4
|
-
code
|
|
4
|
+
code: string
|
|
5
5
|
name: string
|
|
6
6
|
description: string
|
|
7
7
|
type: Base.Kind
|
|
8
|
-
category
|
|
8
|
+
category: Base.Category
|
|
9
9
|
condition: string
|
|
10
10
|
flags: string[]
|
|
11
11
|
groups?: string[]
|
|
@@ -16,7 +16,7 @@ export namespace Base {
|
|
|
16
16
|
export const categories = ["customer", "product", "fincrime"] as const
|
|
17
17
|
export type Category = typeof categories[number]
|
|
18
18
|
export const type = isly.object<Base>({
|
|
19
|
-
code: isly.string(new RegExp(/^[a-z0-9\-_]+$/))
|
|
19
|
+
code: isly.string(new RegExp(/^[a-z0-9\-_]+$/)),
|
|
20
20
|
name: isly.string(),
|
|
21
21
|
description: isly.string(),
|
|
22
22
|
type: isly.string(kinds),
|
package/Rule/Rule/Score.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { Base } from "./Base"
|
|
|
3
3
|
|
|
4
4
|
export interface Score extends Base {
|
|
5
5
|
action: "score"
|
|
6
|
-
category
|
|
6
|
+
category: "fincrime"
|
|
7
7
|
risk: Score.Risk
|
|
8
8
|
}
|
|
9
9
|
export namespace Score {
|
|
@@ -11,7 +11,7 @@ export namespace Score {
|
|
|
11
11
|
export const Risk = isly.number<Risk>(["positive", "integer"])
|
|
12
12
|
export const type = Base.type.extend<Score>({
|
|
13
13
|
action: isly.string("score"),
|
|
14
|
-
category: isly.string("fincrime")
|
|
14
|
+
category: isly.string("fincrime"),
|
|
15
15
|
risk: Risk,
|
|
16
16
|
})
|
|
17
17
|
}
|
package/Rule/index.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { selectively } from "selectively"
|
|
2
|
+
import { isly } from "isly"
|
|
2
3
|
import { definitions } from "./definitions"
|
|
3
4
|
import { Rule as ModelRule, type as ruleType } from "./Rule"
|
|
4
5
|
import { State as RuleState } from "./State"
|
|
@@ -47,7 +48,10 @@ export namespace Rule {
|
|
|
47
48
|
other.forEach(rule => control(rule, state, macros) && result[rule.action].push(rule))
|
|
48
49
|
return result
|
|
49
50
|
}
|
|
51
|
+
export function isLegacy(rule: Rule): boolean {
|
|
52
|
+
return !isly.string(ModelRule.Base.categories).is(rule.category)
|
|
53
|
+
}
|
|
50
54
|
export function fromLegacy(rule: Rule): Rule {
|
|
51
|
-
return
|
|
55
|
+
return isLegacy(rule) ? { ...rule, category: "fincrime" } : rule
|
|
52
56
|
}
|
|
53
57
|
}
|
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":";;;;;;;;;;;;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,UAA+C,EAAE,KAAa,EAAE,YAAqB;QAC1F,OAAO,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;YAC/B,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACrC,CAAC,CAAC;gBACA,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,YAAY,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,UAAU,EAAE;gBAC/E,EAAE,CAAC,GAAG,YAAY,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,UAAU,EAAE;gBACxD,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE,UAAU,EAAE;gBAC5C,EAAE,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE;aACtB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAA;IAC5E,CAAC;IACD,eAAe,CAAC,UAAkB;QACjC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAC9C,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,KAAK,IAAI,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CACzE,CAAA;IACF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,YAAY,CACxB,MAAoF,EACpF,UAA+C,EAC/C,QAAY,EACZ,WAA+C,kBAAkB;QAEjE,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,EAAE,UAAU,CAAC,SAAS,CAAC;YAChE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;YAC7C,CAAC,CAAC,SAAS,CAAA;QACZ,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAA;QAC1D,MAAM,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QACzD,MAAM,QAAQ,GACb,GAAG;YACH,IAAI,QAAQ,CACX,GAAG,EACH,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAU,EACzD,CAAC,GAAG,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAW,CACnD,CAAA;QACF,MAAM,WAAW,GAAG,CACnB,KAA2B,EAGf,EAAE,CACd,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACnH,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,SAAS,CAAA;IACvF,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,MAAM,CAClB,aAAiC,EACjC,WAA+C,kBAAkB;QAEjE,OAAO,MAAM,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;IAC5C,CAAC;IACD,MAAM,CAAC,SAAS,CAAC,WAA4B;QAC5C,OAAO;YACN,GAAG,IAAI,GAAG,CACT,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CACvC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAClD,CACZ;SACD,CAAA;IACF,CAAC;CACD;;AACD,MAAM,SAAS,GACd,kuBAAkuB,CAAA;AACnuB,MAAM,kBAAkB,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAM,SAAS,CAAC,CAAA"}
|
package/dist/Rule/Rule/Base.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { isly } from "isly";
|
|
2
2
|
export interface Base {
|
|
3
|
-
code
|
|
3
|
+
code: string;
|
|
4
4
|
name: string;
|
|
5
5
|
description: string;
|
|
6
6
|
type: Base.Kind;
|
|
7
|
-
category
|
|
7
|
+
category: Base.Category;
|
|
8
8
|
condition: string;
|
|
9
9
|
flags: string[];
|
|
10
10
|
groups?: string[];
|
package/dist/Rule/Rule/Base.js
CHANGED
|
@@ -4,7 +4,7 @@ export var Base;
|
|
|
4
4
|
Base.kinds = ["authorization", "outbound", "inbound"];
|
|
5
5
|
Base.categories = ["customer", "product", "fincrime"];
|
|
6
6
|
Base.type = isly.object({
|
|
7
|
-
code: isly.string(new RegExp(/^[a-z0-9\-_]+$/))
|
|
7
|
+
code: isly.string(new RegExp(/^[a-z0-9\-_]+$/)),
|
|
8
8
|
name: isly.string(),
|
|
9
9
|
description: isly.string(),
|
|
10
10
|
type: isly.string(Base.kinds),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Base.js","sourceRoot":"../","sources":["Rule/Rule/Base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAY3B,MAAM,KAAW,IAAI,CAepB;AAfD,WAAiB,IAAI;IACP,UAAK,GAAG,CAAC,eAAe,EAAE,UAAU,EAAE,SAAS,CAAU,CAAA;IAEzD,eAAU,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,CAAU,CAAA;IAEzD,SAAI,GAAG,IAAI,CAAC,MAAM,CAAO;QACrC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,gBAAgB,CAAC,CAAC
|
|
1
|
+
{"version":3,"file":"Base.js","sourceRoot":"../","sources":["Rule/Rule/Base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAY3B,MAAM,KAAW,IAAI,CAepB;AAfD,WAAiB,IAAI;IACP,UAAK,GAAG,CAAC,eAAe,EAAE,UAAU,EAAE,SAAS,CAAU,CAAA;IAEzD,eAAU,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,CAAU,CAAA;IAEzD,SAAI,GAAG,IAAI,CAAC,MAAM,CAAO;QACrC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC/C,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE;QACnB,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE;QAC1B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,KAAA,KAAK,CAAC;QACxB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,KAAA,UAAU,CAAC;QACjC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE;QACxB,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE;QAC5B,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;KACxC,CAAC,CAAA;AACH,CAAC,EAfgB,IAAI,KAAJ,IAAI,QAepB"}
|
package/dist/Rule/Rule/Score.js
CHANGED
|
@@ -5,7 +5,7 @@ export var Score;
|
|
|
5
5
|
Score.Risk = isly.number(["positive", "integer"]);
|
|
6
6
|
Score.type = Base.type.extend({
|
|
7
7
|
action: isly.string("score"),
|
|
8
|
-
category: isly.string("fincrime")
|
|
8
|
+
category: isly.string("fincrime"),
|
|
9
9
|
risk: Score.Risk,
|
|
10
10
|
});
|
|
11
11
|
})(Score || (Score = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Score.js","sourceRoot":"../","sources":["Rule/Rule/Score.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAO7B,MAAM,KAAW,KAAK,CAQrB;AARD,WAAiB,KAAK;IAER,UAAI,GAAG,IAAI,CAAC,MAAM,CAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAA;IACjD,UAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAQ;QAC3C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QAC5B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC
|
|
1
|
+
{"version":3,"file":"Score.js","sourceRoot":"../","sources":["Rule/Rule/Score.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAO7B,MAAM,KAAW,KAAK,CAQrB;AARD,WAAiB,KAAK;IAER,UAAI,GAAG,IAAI,CAAC,MAAM,CAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAA;IACjD,UAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAQ;QAC3C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QAC5B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;QACjC,IAAI,EAAE,MAAA,IAAI;KACV,CAAC,CAAA;AACH,CAAC,EARgB,KAAK,KAAL,KAAK,QAQrB"}
|
package/dist/Rule/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { selectively } from "selectively";
|
|
2
|
+
import { isly } from "isly";
|
|
2
3
|
import { Rule as ModelRule } from "./Rule";
|
|
3
4
|
import { State as RuleState } from "./State";
|
|
4
5
|
export type Rule = ModelRule;
|
|
@@ -10,11 +11,12 @@ export declare namespace Rule {
|
|
|
10
11
|
export import Other = ModelRule.Other;
|
|
11
12
|
export import Score = ModelRule.Score;
|
|
12
13
|
export import State = RuleState;
|
|
13
|
-
const type:
|
|
14
|
-
const is:
|
|
15
|
-
const flaw:
|
|
14
|
+
const type: isly.Type<Other | Score>;
|
|
15
|
+
const is: isly.Type.IsFunction<Other | Score>;
|
|
16
|
+
const flaw: isly.Type.FlawFunction;
|
|
16
17
|
function evaluate(rules: Rule[], state: State, macros?: Record<string, selectively.Definition>): Record<ModelRule.Other.Action, Rule[]> & {
|
|
17
18
|
risk?: number;
|
|
18
19
|
};
|
|
20
|
+
function isLegacy(rule: Rule): boolean;
|
|
19
21
|
function fromLegacy(rule: Rule): Rule;
|
|
20
22
|
}
|
package/dist/Rule/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { selectively } from "selectively";
|
|
2
|
+
import { isly } from "isly";
|
|
2
3
|
import { definitions } from "./definitions";
|
|
3
4
|
import { Rule as ModelRule, type as ruleType } from "./Rule";
|
|
4
5
|
import { State as RuleState } from "./State";
|
|
@@ -30,8 +31,12 @@ export var Rule;
|
|
|
30
31
|
return result;
|
|
31
32
|
}
|
|
32
33
|
Rule.evaluate = evaluate;
|
|
34
|
+
function isLegacy(rule) {
|
|
35
|
+
return !isly.string(ModelRule.Base.categories).is(rule.category);
|
|
36
|
+
}
|
|
37
|
+
Rule.isLegacy = isLegacy;
|
|
33
38
|
function fromLegacy(rule) {
|
|
34
|
-
return
|
|
39
|
+
return isLegacy(rule) ? { ...rule, category: "fincrime" } : rule;
|
|
35
40
|
}
|
|
36
41
|
Rule.fromLegacy = fromLegacy;
|
|
37
42
|
})(Rule || (Rule = {}));
|
package/dist/Rule/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"../","sources":["Rule/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAC5D,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,SAAS,CAAA;AAI5C,MAAM,KAAW,IAAI,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../","sources":["Rule/index.ts"],"names":[],"mappings":"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"}
|