@pax2pay/model-banking 0.1.94 → 0.1.96

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.
@@ -14,4 +14,6 @@ export namespace Addresses {
14
14
  delivery: Address.type.optional(),
15
15
  visit: Address.type.optional(),
16
16
  })
17
+ export const is = type.is
18
+ export const flaw = type.flaw
17
19
  }
@@ -20,6 +20,7 @@ export namespace Contact {
20
20
  export const Addresses = ContactAddresses
21
21
  export type Addresses = ContactAddresses
22
22
  export const Address = ContactAddress
23
+
23
24
  export type Address = ContactAddress
24
25
  export const type = isly.object<Contact>({
25
26
  address: Addresses.type,
@@ -25,6 +25,10 @@ export namespace Organization {
25
25
  export const Changeable = OrganizationChangeable
26
26
  export type Contact = OrganizationContact
27
27
  export const Contact = OrganizationContact
28
+ export namespace Contact {
29
+ export type Address = OrganizationContact.Address
30
+ export type Addresses = OrganizationContact.Addresses
31
+ }
28
32
  export type Rule = OrganizationRule
29
33
  export const Rule = OrganizationRule
30
34
  export namespace Rule {
@@ -4,8 +4,8 @@ import { Card } from "./Card"
4
4
  import { Transaction } from "./Transaction"
5
5
 
6
6
  export interface State {
7
- authorization: Authorization
8
7
  transaction: Transaction
9
8
  account: Account
10
- card: Card
9
+ authorization?: Authorization
10
+ card?: Card
11
11
  }
@@ -1,7 +1,6 @@
1
1
  import { selectively } from "selectively"
2
2
 
3
3
  export const definitions: Record<string, selectively.Definition> = {
4
- exceedsAmount: { arguments: ["max"], definition: "amount>max" },
5
- isInternal: { arguments: [], definition: "counterpart.type:internal" },
6
- alwaysTrue: { arguments: [], definition: "amount>0|amount<0" },
4
+ isInternal: { arguments: [], definition: "transaction.counterpart.type:internal" },
5
+ alwaysTrue: { arguments: [], definition: "a:0|!a:0" },
7
6
  }
package/Rule/index.ts CHANGED
@@ -31,9 +31,9 @@ export namespace Rule {
31
31
  export function stringify(rule: Rule): string {
32
32
  return `{ label: ${rule.name}, action: ${rule.action}, type: ${rule.type}, condition: ${rule.condition}, description: ${rule.description}. }`
33
33
  }
34
- export function evaluate<S extends object>(
34
+ export function evaluate(
35
35
  rules: Rule[],
36
- state: S,
36
+ state: State,
37
37
  macros?: Record<string, selectively.Definition>
38
38
  ): Record<Action, Rule[]> {
39
39
  const result: Record<Action, Rule[]> = { review: [], reject: [], flag: [] }
@@ -8,4 +8,6 @@ export interface Addresses {
8
8
  }
9
9
  export declare namespace Addresses {
10
10
  const type: isly.object.ExtendableType<Addresses>;
11
+ const is: isly.Type.IsFunction<Addresses>;
12
+ const flaw: isly.Type.FlawFunction;
11
13
  }
@@ -8,5 +8,7 @@ export var Addresses;
8
8
  delivery: Address.type.optional(),
9
9
  visit: Address.type.optional(),
10
10
  });
11
+ Addresses.is = Addresses.type.is;
12
+ Addresses.flaw = Addresses.type.flaw;
11
13
  })(Addresses || (Addresses = {}));
12
14
  //# sourceMappingURL=Addresses.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Addresses.js","sourceRoot":"../","sources":["Organization/Contact/Addresses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAQnC,MAAM,KAAW,SAAS,CAOzB;AAPD,WAAiB,SAAS;IACZ,cAAI,GAAG,IAAI,CAAC,MAAM,CAAY;QAC1C,OAAO,EAAE,OAAO,CAAC,IAAI;QACrB,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE;QAChC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE;QACjC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE;KAC9B,CAAC,CAAA;AACH,CAAC,EAPgB,SAAS,KAAT,SAAS,QAOzB"}
1
+ {"version":3,"file":"Addresses.js","sourceRoot":"../","sources":["Organization/Contact/Addresses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAQnC,MAAM,KAAW,SAAS,CASzB;AATD,WAAiB,SAAS;IACZ,cAAI,GAAG,IAAI,CAAC,MAAM,CAAY;QAC1C,OAAO,EAAE,OAAO,CAAC,IAAI;QACrB,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE;QAChC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE;QACjC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE;KAC9B,CAAC,CAAA;IACW,YAAE,GAAG,UAAA,IAAI,CAAC,EAAE,CAAA;IACZ,cAAI,GAAG,UAAA,IAAI,CAAC,IAAI,CAAA;AAC9B,CAAC,EATgB,SAAS,KAAT,SAAS,QASzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../","sources":["Organization/Contact/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,WAAW,CAAA;AACrD,OAAO,EAAE,SAAS,IAAI,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAe3D,MAAM,KAAW,OAAO,CAiBvB;AAjBD,WAAiB,OAAO;IACV,iBAAS,GAAG,gBAAgB,CAAA;IAE5B,eAAO,GAAG,cAAc,CAAA;IAExB,YAAI,GAAG,IAAI,CAAC,MAAM,CAAU;QACxC,OAAO,EAAE,QAAA,SAAS,CAAC,IAAI;QACvB,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;QACpB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAkB;YAClC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;YACpB,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE;SACnB,CAAC;QACF,KAAK,EAAE,IAAI,CAAC,MAAM,CAAmB;YACpC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;YACrB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;SACtD,CAAC;KACF,CAAC,CAAA;AACH,CAAC,EAjBgB,OAAO,KAAP,OAAO,QAiBvB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"../","sources":["Organization/Contact/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,WAAW,CAAA;AACrD,OAAO,EAAE,SAAS,IAAI,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAe3D,MAAM,KAAW,OAAO,CAkBvB;AAlBD,WAAiB,OAAO;IACV,iBAAS,GAAG,gBAAgB,CAAA;IAE5B,eAAO,GAAG,cAAc,CAAA;IAGxB,YAAI,GAAG,IAAI,CAAC,MAAM,CAAU;QACxC,OAAO,EAAE,QAAA,SAAS,CAAC,IAAI;QACvB,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;QACpB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAkB;YAClC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;YACpB,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE;SACnB,CAAC;QACF,KAAK,EAAE,IAAI,CAAC,MAAM,CAAmB;YACpC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;YACrB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;SACtD,CAAC;KACF,CAAC,CAAA;AACH,CAAC,EAlBgB,OAAO,KAAP,OAAO,QAkBvB"}
@@ -16,6 +16,10 @@ export declare namespace Organization {
16
16
  const Changeable: typeof OrganizationChangeable;
17
17
  type Contact = OrganizationContact;
18
18
  const Contact: typeof OrganizationContact;
19
+ namespace Contact {
20
+ type Address = OrganizationContact.Address;
21
+ type Addresses = OrganizationContact.Addresses;
22
+ }
19
23
  type Rule = OrganizationRule;
20
24
  const Rule: typeof OrganizationRule;
21
25
  namespace Rule {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../","sources":["Organization/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,UAAU,IAAI,sBAAsB,EAAE,MAAM,cAAc,CAAA;AACnE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,WAAW,CAAA;AAC1D,OAAO,EAAE,SAAS,IAAI,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,EAAE,IAAI,IAAI,gBAAgB,EAAE,MAAM,QAAQ,CAAA;AAMjD,MAAM,KAAW,YAAY,CAsB5B;AAtBD,WAAiB,YAAY;IAC5B,SAAgB,EAAE,CAAC,KAAyB;QAC3C,OAAO,KAAK,IAAI,qBAAqB,CAAC,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,IAAI,OAAO,KAAK,CAAC,EAAE,IAAI,QAAQ,CAAA;IACtF,CAAC;IAFe,eAAE,KAEjB,CAAA;IACD,SAAgB,aAAa,CAAC,YAAuB;QACpD,OAAO,EAAE,GAAG,YAAY,EAAE,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAA;IAC/D,CAAC;IAFe,0BAAa,gBAE5B,CAAA;IACD,SAAgB,YAAY,CAAC,KAA+B;QAC3D,OAAO,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IACvC,CAAC;IAFe,yBAAY,eAE3B,CAAA;IAGY,sBAAS,GAAG,qBAAqB,CAAA;IAEjC,uBAAU,GAAG,sBAAsB,CAAA;IAEnC,oBAAO,GAAG,mBAAmB,CAAA;IAE7B,iBAAI,GAAG,gBAAgB,CAAA;AAIrC,CAAC,EAtBgB,YAAY,KAAZ,YAAY,QAsB5B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"../","sources":["Organization/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,UAAU,IAAI,sBAAsB,EAAE,MAAM,cAAc,CAAA;AACnE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,WAAW,CAAA;AAC1D,OAAO,EAAE,SAAS,IAAI,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,EAAE,IAAI,IAAI,gBAAgB,EAAE,MAAM,QAAQ,CAAA;AAMjD,MAAM,KAAW,YAAY,CA0B5B;AA1BD,WAAiB,YAAY;IAC5B,SAAgB,EAAE,CAAC,KAAyB;QAC3C,OAAO,KAAK,IAAI,qBAAqB,CAAC,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,IAAI,OAAO,KAAK,CAAC,EAAE,IAAI,QAAQ,CAAA;IACtF,CAAC;IAFe,eAAE,KAEjB,CAAA;IACD,SAAgB,aAAa,CAAC,YAAuB;QACpD,OAAO,EAAE,GAAG,YAAY,EAAE,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAA;IAC/D,CAAC;IAFe,0BAAa,gBAE5B,CAAA;IACD,SAAgB,YAAY,CAAC,KAA+B;QAC3D,OAAO,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IACvC,CAAC;IAFe,yBAAY,eAE3B,CAAA;IAGY,sBAAS,GAAG,qBAAqB,CAAA;IAEjC,uBAAU,GAAG,sBAAsB,CAAA;IAEnC,oBAAO,GAAG,mBAAmB,CAAA;IAM7B,iBAAI,GAAG,gBAAgB,CAAA;AAIrC,CAAC,EA1BgB,YAAY,KAAZ,YAAY,QA0B5B"}
@@ -3,8 +3,8 @@ import { Authorization } from "./Authorization";
3
3
  import { Card } from "./Card";
4
4
  import { Transaction } from "./Transaction";
5
5
  export interface State {
6
- authorization: Authorization;
7
6
  transaction: Transaction;
8
7
  account: Account;
9
- card: Card;
8
+ authorization?: Authorization;
9
+ card?: Card;
10
10
  }
@@ -1,6 +1,5 @@
1
1
  export const definitions = {
2
- exceedsAmount: { arguments: ["max"], definition: "amount>max" },
3
- isInternal: { arguments: [], definition: "counterpart.type:internal" },
4
- alwaysTrue: { arguments: [], definition: "amount>0|amount<0" },
2
+ isInternal: { arguments: [], definition: "transaction.counterpart.type:internal" },
3
+ alwaysTrue: { arguments: [], definition: "a:0|!a:0" },
5
4
  };
6
5
  //# sourceMappingURL=definitions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.js","sourceRoot":"../","sources":["Rule/definitions.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAA2C;IAClE,aAAa,EAAE,EAAE,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE;IAC/D,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,2BAA2B,EAAE;IACtE,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,mBAAmB,EAAE;CAC9D,CAAA"}
1
+ {"version":3,"file":"definitions.js","sourceRoot":"../","sources":["Rule/definitions.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAA2C;IAClE,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,uCAAuC,EAAE;IAClF,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;CACrD,CAAA"}
@@ -19,5 +19,5 @@ export declare namespace Rule {
19
19
  const is: isly.Type.IsFunction<Rule>;
20
20
  const flaw: isly.Type.FlawFunction;
21
21
  function stringify(rule: Rule): string;
22
- function evaluate<S extends object>(rules: Rule[], state: S, macros?: Record<string, selectively.Definition>): Record<Action, Rule[]>;
22
+ function evaluate(rules: Rule[], state: State, macros?: Record<string, selectively.Definition>): Record<Action, Rule[]>;
23
23
  }
@@ -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,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAY3C,MAAM,KAAW,IAAI,CAgCpB;AAhCD,WAAiB,IAAI;IACP,YAAO,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAA;IAE/C,UAAK,GAAG,CAAC,eAAe,EAAE,UAAU,EAAE,SAAS,CAAU,CAAA;IAGzD,SAAI,GAAG,IAAI,CAAC,MAAM,CAAO;QACrC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE;QACnB,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE;QAC1B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,KAAA,OAAO,CAAC;QAC5B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,KAAA,KAAK,CAAC;QACxB,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE;QACxB,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE;KAC5B,CAAC,CAAA;IACW,OAAE,GAAG,KAAA,IAAI,CAAC,EAAE,CAAA;IACZ,SAAI,GAAG,KAAA,IAAI,CAAC,IAAI,CAAA;IAC7B,SAAgB,SAAS,CAAC,IAAU;QACnC,OAAO,YAAY,IAAI,CAAC,IAAI,aAAa,IAAI,CAAC,MAAM,WAAW,IAAI,CAAC,IAAI,gBAAgB,IAAI,CAAC,SAAS,kBAAkB,IAAI,CAAC,WAAW,KAAK,CAAA;IAC9I,CAAC;IAFe,cAAS,YAExB,CAAA;IACD,SAAgB,QAAQ,CACvB,KAAa,EACb,KAAQ,EACR,MAA+C;QAE/C,MAAM,MAAM,GAA2B,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;QAC3E,KAAK,CAAC,OAAO,CACZ,CAAC,CAAC,EAAE,CACH,WAAW,CAAC,OAAO,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,WAAW,EAAE,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;YAC5F,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACzB,CAAA;QACD,OAAO,MAAM,CAAA;IACd,CAAC;IAZe,aAAQ,WAYvB,CAAA;AACF,CAAC,EAhCgB,IAAI,KAAJ,IAAI,QAgCpB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"../","sources":["Rule/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAY3C,MAAM,KAAW,IAAI,CAgCpB;AAhCD,WAAiB,IAAI;IACP,YAAO,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAA;IAE/C,UAAK,GAAG,CAAC,eAAe,EAAE,UAAU,EAAE,SAAS,CAAU,CAAA;IAGzD,SAAI,GAAG,IAAI,CAAC,MAAM,CAAO;QACrC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE;QACnB,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE;QAC1B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,KAAA,OAAO,CAAC;QAC5B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,KAAA,KAAK,CAAC;QACxB,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE;QACxB,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE;KAC5B,CAAC,CAAA;IACW,OAAE,GAAG,KAAA,IAAI,CAAC,EAAE,CAAA;IACZ,SAAI,GAAG,KAAA,IAAI,CAAC,IAAI,CAAA;IAC7B,SAAgB,SAAS,CAAC,IAAU;QACnC,OAAO,YAAY,IAAI,CAAC,IAAI,aAAa,IAAI,CAAC,MAAM,WAAW,IAAI,CAAC,IAAI,gBAAgB,IAAI,CAAC,SAAS,kBAAkB,IAAI,CAAC,WAAW,KAAK,CAAA;IAC9I,CAAC;IAFe,cAAS,YAExB,CAAA;IACD,SAAgB,QAAQ,CACvB,KAAa,EACb,KAAY,EACZ,MAA+C;QAE/C,MAAM,MAAM,GAA2B,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;QAC3E,KAAK,CAAC,OAAO,CACZ,CAAC,CAAC,EAAE,CACH,WAAW,CAAC,OAAO,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,WAAW,EAAE,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;YAC5F,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACzB,CAAA;QACD,OAAO,MAAM,CAAA;IACd,CAAC;IAZe,aAAQ,WAYvB,CAAA;AACF,CAAC,EAhCgB,IAAI,KAAJ,IAAI,QAgCpB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pax2pay/model-banking",
3
- "version": "0.1.94",
3
+ "version": "0.1.96",
4
4
  "description": "Library containing data model types and functions for the Pax2Pay Banking API.",
5
5
  "author": "Pax2Pay Ltd",
6
6
  "license": "MIT",