@pax2pay/model-banking 0.1.45 → 0.1.47

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/Card/index.ts CHANGED
@@ -85,4 +85,6 @@ export namespace Card {
85
85
  export const Expiry = CardExpiry
86
86
  export type Changeable = CardChangeable
87
87
  export const Changeable = CardChangeable
88
+ export type Operation = CardOperation
89
+ export const Operation = CardOperation
88
90
  }
@@ -0,0 +1,24 @@
1
+ import { isly } from "isly"
2
+ import { Card } from "../Card"
3
+
4
+ export interface Mastercard {
5
+ type: "mastercard"
6
+ id: string
7
+ iin: string
8
+ last4: string
9
+ expiry: Card.Expiry
10
+ holder: string
11
+ }
12
+ export namespace Mastercard {
13
+ export const currencies = ["EUR", "GBP", "SEK", "USD"] as const
14
+ export const type = isly.object<Mastercard>({
15
+ type: isly.string("mastercard"),
16
+ id: isly.string(),
17
+ iin: isly.string(),
18
+ last4: isly.string(),
19
+ expiry: Card.Expiry.type,
20
+ holder: isly.string(),
21
+ })
22
+ export const is = type.is
23
+ export const flaw = type.flaw
24
+ }
package/Rail/Type.ts CHANGED
@@ -1 +1 @@
1
- export type Type = "paxgiro" | "internal" | "iban" | "scan" //| "swedish" |
1
+ export type Type = "paxgiro" | "internal" | "iban" | "scan" | "visa" | "mastercard" //| "swedish" |
package/Rail/Visa.ts ADDED
@@ -0,0 +1,24 @@
1
+ import { isly } from "isly"
2
+ import { Card } from "../Card"
3
+
4
+ export interface Visa {
5
+ type: "visa"
6
+ id: string
7
+ iin: string
8
+ last4: string
9
+ expiry: Card.Expiry
10
+ holder: string
11
+ }
12
+ export namespace Visa {
13
+ export const currencies = ["EUR", "GBP", "SEK", "USD"] as const
14
+ export const type = isly.object<Visa>({
15
+ type: isly.string("visa"),
16
+ id: isly.string(),
17
+ iin: isly.string(),
18
+ last4: isly.string(),
19
+ expiry: Card.Expiry.type,
20
+ holder: isly.string(),
21
+ })
22
+ export const is = type.is
23
+ export const flaw = type.flaw
24
+ }
package/Rail/index.ts CHANGED
@@ -1,10 +1,12 @@
1
1
  import { Iban as RailIban } from "./Iban"
2
2
  import { Internal as RailInternal } from "./internal"
3
+ import { Mastercard as RailMastercard } from "./Mastercard"
3
4
  import { PaxGiro as RailPaxGiro } from "./PaxGiro"
4
5
  import { Scan as RailScan } from "./Scan"
5
6
  import { Type as RailType } from "./Type"
7
+ import { Visa as RailVisa } from "./Visa"
6
8
 
7
- export type Rail = (RailPaxGiro | RailInternal | RailIban | RailScan) & {
9
+ export type Rail = (RailPaxGiro | RailInternal | RailIban | RailScan | RailMastercard | RailVisa) & {
8
10
  reference?: { supplier: string; value: string }
9
11
  }
10
12
 
@@ -43,6 +45,12 @@ export namespace Rail {
43
45
  case "scan":
44
46
  result = `scan-${rail.sort}-${rail.account}`
45
47
  break
48
+ case "visa":
49
+ result = `visa-${rail.id}`
50
+ break
51
+ case "mastercard":
52
+ result = `mastercard-${rail.id}`
53
+ break
46
54
  //case "swedish":
47
55
  // result = `swe-${rail.clearing}-${rail.account}`
48
56
  // break
@@ -64,6 +72,12 @@ export namespace Rail {
64
72
  case "scan":
65
73
  result = `${rail.sort} ${rail.account}`
66
74
  break
75
+ case "visa":
76
+ result = `visa-${rail.id}`
77
+ break
78
+ case "mastercard":
79
+ result = `mastercard-${rail.id}`
80
+ break
67
81
  //case "swedish":
68
82
  // result = `swe-${rail.clearing}-${rail.account}`
69
83
  // break
@@ -71,7 +85,16 @@ export namespace Rail {
71
85
  return result
72
86
  }
73
87
  export function is(value: Rail | any): value is Rail {
74
- return typeof value == "object" && (PaxGiro.is(value) || Iban.is(value) || Internal.is(value) || Scan.is(value))
88
+ return (
89
+ value &&
90
+ typeof value == "object" &&
91
+ (PaxGiro.is(value) ||
92
+ Iban.is(value) ||
93
+ Internal.is(value) ||
94
+ Scan.is(value) ||
95
+ Mastercard.is(value) ||
96
+ Visa.is(value))
97
+ )
75
98
  }
76
99
 
77
100
  export type Type = RailType
@@ -83,4 +106,8 @@ export namespace Rail {
83
106
  export const Scan = RailScan
84
107
  export type Internal = RailInternal
85
108
  export const Internal = RailInternal
109
+ export type Visa = RailVisa
110
+ export const Visa = RailVisa
111
+ export type Mastercard = RailMastercard
112
+ export const Mastercard = RailMastercard
86
113
  }
@@ -43,4 +43,6 @@ export declare namespace Card {
43
43
  const Expiry: typeof CardExpiry;
44
44
  type Changeable = CardChangeable;
45
45
  const Changeable: typeof CardChangeable;
46
+ type Operation = CardOperation;
47
+ const Operation: typeof CardOperation;
46
48
  }
@@ -58,5 +58,6 @@ export var Card;
58
58
  Card.Meta = CardMeta;
59
59
  Card.Expiry = CardExpiry;
60
60
  Card.Changeable = CardChangeable;
61
+ Card.Operation = CardOperation;
61
62
  })(Card || (Card = {}));
62
63
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../","sources":["Card/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"../","sources":["Card/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { isly } from "isly";
2
+ import { Card } from "../Card";
3
+ export interface Mastercard {
4
+ type: "mastercard";
5
+ id: string;
6
+ iin: string;
7
+ last4: string;
8
+ expiry: Card.Expiry;
9
+ holder: string;
10
+ }
11
+ export declare namespace Mastercard {
12
+ const currencies: readonly ["EUR", "GBP", "SEK", "USD"];
13
+ const type: isly.object.ExtendableType<Mastercard>;
14
+ const is: isly.Type.IsFunction<Mastercard>;
15
+ const flaw: isly.Type.FlawFunction;
16
+ }
@@ -0,0 +1,17 @@
1
+ import { isly } from "isly";
2
+ import { Card } from "../Card";
3
+ export var Mastercard;
4
+ (function (Mastercard) {
5
+ Mastercard.currencies = ["EUR", "GBP", "SEK", "USD"];
6
+ Mastercard.type = isly.object({
7
+ type: isly.string("mastercard"),
8
+ id: isly.string(),
9
+ iin: isly.string(),
10
+ last4: isly.string(),
11
+ expiry: Card.Expiry.type,
12
+ holder: isly.string(),
13
+ });
14
+ Mastercard.is = Mastercard.type.is;
15
+ Mastercard.flaw = Mastercard.type.flaw;
16
+ })(Mastercard || (Mastercard = {}));
17
+ //# sourceMappingURL=Mastercard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Mastercard.js","sourceRoot":"../","sources":["Rail/Mastercard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAU9B,MAAM,KAAW,UAAU,CAY1B;AAZD,WAAiB,UAAU;IACb,qBAAU,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAU,CAAA;IAClD,eAAI,GAAG,IAAI,CAAC,MAAM,CAAa;QAC3C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAC/B,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE;QACjB,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE;QAClB,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;QACpB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;QACxB,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;KACrB,CAAC,CAAA;IACW,aAAE,GAAG,WAAA,IAAI,CAAC,EAAE,CAAA;IACZ,eAAI,GAAG,WAAA,IAAI,CAAC,IAAI,CAAA;AAC9B,CAAC,EAZgB,UAAU,KAAV,UAAU,QAY1B"}
@@ -1 +1 @@
1
- export type Type = "paxgiro" | "internal" | "iban" | "scan";
1
+ export type Type = "paxgiro" | "internal" | "iban" | "scan" | "visa" | "mastercard";
@@ -0,0 +1,16 @@
1
+ import { isly } from "isly";
2
+ import { Card } from "../Card";
3
+ export interface Visa {
4
+ type: "visa";
5
+ id: string;
6
+ iin: string;
7
+ last4: string;
8
+ expiry: Card.Expiry;
9
+ holder: string;
10
+ }
11
+ export declare namespace Visa {
12
+ const currencies: readonly ["EUR", "GBP", "SEK", "USD"];
13
+ const type: isly.object.ExtendableType<Visa>;
14
+ const is: isly.Type.IsFunction<Visa>;
15
+ const flaw: isly.Type.FlawFunction;
16
+ }
@@ -0,0 +1,17 @@
1
+ import { isly } from "isly";
2
+ import { Card } from "../Card";
3
+ export var Visa;
4
+ (function (Visa) {
5
+ Visa.currencies = ["EUR", "GBP", "SEK", "USD"];
6
+ Visa.type = isly.object({
7
+ type: isly.string("visa"),
8
+ id: isly.string(),
9
+ iin: isly.string(),
10
+ last4: isly.string(),
11
+ expiry: Card.Expiry.type,
12
+ holder: isly.string(),
13
+ });
14
+ Visa.is = Visa.type.is;
15
+ Visa.flaw = Visa.type.flaw;
16
+ })(Visa || (Visa = {}));
17
+ //# sourceMappingURL=Visa.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Visa.js","sourceRoot":"../","sources":["Rail/Visa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAU9B,MAAM,KAAW,IAAI,CAYpB;AAZD,WAAiB,IAAI;IACP,eAAU,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAU,CAAA;IAClD,SAAI,GAAG,IAAI,CAAC,MAAM,CAAO;QACrC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QACzB,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE;QACjB,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE;QAClB,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;QACpB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;QACxB,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;KACrB,CAAC,CAAA;IACW,OAAE,GAAG,KAAA,IAAI,CAAC,EAAE,CAAA;IACZ,SAAI,GAAG,KAAA,IAAI,CAAC,IAAI,CAAA;AAC9B,CAAC,EAZgB,IAAI,KAAJ,IAAI,QAYpB"}
@@ -1,9 +1,11 @@
1
1
  import { Iban as RailIban } from "./Iban";
2
2
  import { Internal as RailInternal } from "./internal";
3
+ import { Mastercard as RailMastercard } from "./Mastercard";
3
4
  import { PaxGiro as RailPaxGiro } from "./PaxGiro";
4
5
  import { Scan as RailScan } from "./Scan";
5
6
  import { Type as RailType } from "./Type";
6
- export type Rail = (RailPaxGiro | RailInternal | RailIban | RailScan) & {
7
+ import { Visa as RailVisa } from "./Visa";
8
+ export type Rail = (RailPaxGiro | RailInternal | RailIban | RailScan | RailMastercard | RailVisa) & {
7
9
  reference?: {
8
10
  supplier: string;
9
11
  value: string;
@@ -23,4 +25,8 @@ export declare namespace Rail {
23
25
  const Scan: typeof RailScan;
24
26
  type Internal = RailInternal;
25
27
  const Internal: typeof RailInternal;
28
+ type Visa = RailVisa;
29
+ const Visa: typeof RailVisa;
30
+ type Mastercard = RailMastercard;
31
+ const Mastercard: typeof RailMastercard;
26
32
  }
@@ -1,7 +1,9 @@
1
1
  import { Iban as RailIban } from "./Iban";
2
2
  import { Internal as RailInternal } from "./internal";
3
+ import { Mastercard as RailMastercard } from "./Mastercard";
3
4
  import { PaxGiro as RailPaxGiro } from "./PaxGiro";
4
5
  import { Scan as RailScan } from "./Scan";
6
+ import { Visa as RailVisa } from "./Visa";
5
7
  export var Rail;
6
8
  (function (Rail) {
7
9
  function parse(value) {
@@ -30,6 +32,12 @@ export var Rail;
30
32
  case "scan":
31
33
  result = `scan-${rail.sort}-${rail.account}`;
32
34
  break;
35
+ case "visa":
36
+ result = `visa-${rail.id}`;
37
+ break;
38
+ case "mastercard":
39
+ result = `mastercard-${rail.id}`;
40
+ break;
33
41
  }
34
42
  return result;
35
43
  }
@@ -49,17 +57,32 @@ export var Rail;
49
57
  case "scan":
50
58
  result = `${rail.sort} ${rail.account}`;
51
59
  break;
60
+ case "visa":
61
+ result = `visa-${rail.id}`;
62
+ break;
63
+ case "mastercard":
64
+ result = `mastercard-${rail.id}`;
65
+ break;
52
66
  }
53
67
  return result;
54
68
  }
55
69
  Rail.beautify = beautify;
56
70
  function is(value) {
57
- return typeof value == "object" && (Rail.PaxGiro.is(value) || Rail.Iban.is(value) || Rail.Internal.is(value) || Rail.Scan.is(value));
71
+ return (value &&
72
+ typeof value == "object" &&
73
+ (Rail.PaxGiro.is(value) ||
74
+ Rail.Iban.is(value) ||
75
+ Rail.Internal.is(value) ||
76
+ Rail.Scan.is(value) ||
77
+ Rail.Mastercard.is(value) ||
78
+ Rail.Visa.is(value)));
58
79
  }
59
80
  Rail.is = is;
60
81
  Rail.PaxGiro = RailPaxGiro;
61
82
  Rail.Iban = RailIban;
62
83
  Rail.Scan = RailScan;
63
84
  Rail.Internal = RailInternal;
85
+ Rail.Visa = RailVisa;
86
+ Rail.Mastercard = RailMastercard;
64
87
  })(Rail || (Rail = {}));
65
88
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../","sources":["Rail/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACzC,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAOzC,MAAM,KAAW,IAAI,CA2EpB;AA3ED,WAAiB,IAAI;IACpB,SAAgB,KAAK,CAAC,KAAa;QAClC,IAAI,MAAwB,CAAA;QAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACjC,QAAQ,QAAQ,CAAC,CAAC,CAAC,EAAE;YAIpB,KAAK,KAAK;gBACT,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;gBACxF,MAAK;SAON;QACD,OAAO,MAAM,CAAA;IACd,CAAC;IAlBe,UAAK,QAkBpB,CAAA;IACD,SAAgB,SAAS,CAAC,IAAU;QACnC,IAAI,MAAc,CAAA;QAClB,QAAQ,IAAI,CAAC,IAAI,EAAE;YAClB,KAAK,MAAM;gBACV,MAAM,GAAG,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAA;gBAC5B,MAAK;YACN,KAAK,SAAS;gBACb,MAAM,GAAG,OAAO,IAAI,CAAC,UAAU,EAAE,CAAA;gBACjC,MAAK;YACN,KAAK,UAAU;gBACd,MAAM,GAAG,YAAY,IAAI,CAAC,UAAU,EAAE,CAAA;gBACtC,MAAK;YACN,KAAK,MAAM;gBACV,MAAM,GAAG,QAAQ,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAA;gBAC5C,MAAK;SAIN;QACD,OAAO,MAAM,CAAA;IACd,CAAC;IApBe,cAAS,YAoBxB,CAAA;IACD,SAAgB,QAAQ,CAAC,IAAU;QAClC,IAAI,MAAc,CAAA;QAClB,QAAQ,IAAI,CAAC,IAAI,EAAE;YAClB,KAAK,MAAM;gBACV,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;gBACvB,MAAK;YACN,KAAK,SAAS;gBACb,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;gBAC7B,MAAK;YACN,KAAK,UAAU;gBACd,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;gBAC7B,MAAK;YACN,KAAK,MAAM;gBACV,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAA;gBACvC,MAAK;SAIN;QACD,OAAO,MAAM,CAAA;IACd,CAAC;IApBe,aAAQ,WAoBvB,CAAA;IACD,SAAgB,EAAE,CAAC,KAAiB;QACnC,OAAO,OAAO,KAAK,IAAI,QAAQ,IAAI,CAAC,KAAA,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAA,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAA,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAA,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IACjH,CAAC;IAFe,OAAE,KAEjB,CAAA;IAIY,YAAO,GAAG,WAAW,CAAA;IAErB,SAAI,GAAG,QAAQ,CAAA;IAEf,SAAI,GAAG,QAAQ,CAAA;IAEf,aAAQ,GAAG,YAAY,CAAA;AACrC,CAAC,EA3EgB,IAAI,KAAJ,IAAI,QA2EpB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"../","sources":["Rail/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pax2pay/model-banking",
3
- "version": "0.1.45",
3
+ "version": "0.1.47",
4
4
  "description": "Library containing data model types and functions for the Pax2Pay Banking API.",
5
5
  "author": "Pax2Pay Ltd",
6
6
  "license": "MIT",