@pax2pay/model-banking 0.1.331 → 0.1.333

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.
Files changed (41) hide show
  1. package/Analytics/index.ts +0 -2
  2. package/Card/Stack.ts +42 -0
  3. package/Settlement/Identifier.ts +17 -0
  4. package/Settlement/index.ts +13 -39
  5. package/dist/Analytics/index.d.ts +0 -2
  6. package/dist/Analytics/index.js +0 -2
  7. package/dist/Analytics/index.js.map +1 -1
  8. package/dist/Card/Stack.d.ts +5 -0
  9. package/dist/Card/Stack.js +43 -0
  10. package/dist/Card/Stack.js.map +1 -1
  11. package/dist/Settlement/Identifier.d.ts +9 -0
  12. package/dist/Settlement/Identifier.js +17 -0
  13. package/dist/Settlement/Identifier.js.map +1 -0
  14. package/dist/Settlement/index.d.ts +11 -36
  15. package/dist/Settlement/index.js +5 -4
  16. package/dist/Settlement/index.js.map +1 -1
  17. package/package.json +1 -2
  18. package/Analytics/Configuration/Base.ts +0 -36
  19. package/Analytics/Configuration/Mapping.ts +0 -13
  20. package/Analytics/Configuration/Operation.ts +0 -37
  21. package/Analytics/Configuration/Schema.ts +0 -7
  22. package/Analytics/Configuration/Transaction.ts +0 -106
  23. package/Analytics/Configuration/index.ts +0 -83
  24. package/dist/Analytics/Configuration/Base.d.ts +0 -18
  25. package/dist/Analytics/Configuration/Base.js +0 -24
  26. package/dist/Analytics/Configuration/Base.js.map +0 -1
  27. package/dist/Analytics/Configuration/Mapping.d.ts +0 -11
  28. package/dist/Analytics/Configuration/Mapping.js +0 -12
  29. package/dist/Analytics/Configuration/Mapping.js.map +0 -1
  30. package/dist/Analytics/Configuration/Operation.d.ts +0 -22
  31. package/dist/Analytics/Configuration/Operation.js +0 -34
  32. package/dist/Analytics/Configuration/Operation.js.map +0 -1
  33. package/dist/Analytics/Configuration/Schema.d.ts +0 -6
  34. package/dist/Analytics/Configuration/Schema.js +0 -7
  35. package/dist/Analytics/Configuration/Schema.js.map +0 -1
  36. package/dist/Analytics/Configuration/Transaction.d.ts +0 -86
  37. package/dist/Analytics/Configuration/Transaction.js +0 -103
  38. package/dist/Analytics/Configuration/Transaction.js.map +0 -1
  39. package/dist/Analytics/Configuration/index.d.ts +0 -22
  40. package/dist/Analytics/Configuration/index.js +0 -54
  41. package/dist/Analytics/Configuration/index.js.map +0 -1
@@ -1,7 +1,5 @@
1
- import { Configuration as AnalyticsConfiguration } from "./Configuration"
2
1
  import { Event as AnalyticsEvent } from "./Event"
3
2
 
4
3
  export namespace Analytics {
5
4
  export import Event = AnalyticsEvent
6
- export import Configuration = AnalyticsConfiguration
7
5
  }
package/Card/Stack.ts CHANGED
@@ -30,4 +30,46 @@ export namespace Stack {
30
30
  .map(e => (e == "tpl" ? "transact" : e))
31
31
  .join("-")
32
32
  }
33
+ export namespace Character {
34
+ export const values = [
35
+ "a",
36
+ "b",
37
+ "c",
38
+ "d",
39
+ "e",
40
+ "f",
41
+ "g",
42
+ "h",
43
+ "i",
44
+ "j",
45
+ "k",
46
+ "l",
47
+ "m",
48
+ "n",
49
+ "o",
50
+ "p",
51
+ "q",
52
+ "r",
53
+ "s",
54
+ "t",
55
+ "u",
56
+ "v",
57
+ "w",
58
+ "x",
59
+ "y",
60
+ "z",
61
+ ] as const
62
+ const table: Record<Stack, Stack.Character> = {
63
+ "test-paxgiro": "z",
64
+ "test-tpl-paxgiro": "y",
65
+ "testUK-marqeta": "x",
66
+ "testUK-tpl-marqeta": "w",
67
+ "testUK-diners-dpg": "u",
68
+ "uk-mc-tpl-marqeta": "a",
69
+ }
70
+ export function from(stack: Stack): Stack.Character {
71
+ return table[stack]
72
+ }
73
+ }
74
+ export type Character = typeof Character.values[number]
33
75
  }
@@ -0,0 +1,17 @@
1
+ import { isoly } from "isoly"
2
+ import { isly } from "isly"
3
+ import { Card } from "../Card"
4
+
5
+ //(date without dashed)(stack.Character)(single digit number representing batch)
6
+ //20200102a3
7
+ export type Identifier = `${isoly.Date}${string}`
8
+ export namespace Identifier {
9
+ export const type = isly.string()
10
+ export function create(date: isoly.Date, stack: Card.Stack, order: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9): Identifier {
11
+ return date.replace(/-/g, "") + Card.Stack.Character.from(stack) + order
12
+ }
13
+ export function getDate(identifier: Identifier): isoly.Date | undefined {
14
+ const date = identifier.substring(0, 4) + "-" + identifier.substring(4, 6) + "-" + identifier.substring(6, 8)
15
+ return isoly.Date.is(date) ? date : undefined
16
+ }
17
+ }
@@ -1,61 +1,35 @@
1
1
  import { isoly } from "isoly"
2
2
  import { isly } from "isly"
3
3
  import { Amounts } from "../Amounts"
4
- import { Identifier } from "../Identifier"
5
4
  import { Amount as SettlementAmount } from "./Amount"
6
5
  import { Batch as SettlementBatch } from "./Batch"
7
6
  import { Creatable as SettlementCreatable } from "./Creatable"
8
7
  import { Entry as SettlementEntry } from "./Entry"
9
8
  import { Fee as SettlementFee } from "./Fee"
9
+ import { Identifier as SettlementIdentifier } from "./Identifier"
10
10
  import { Status } from "./Status"
11
11
  import { Total as SettlementTotal } from "./Total"
12
12
  import { Totals as SettlementTotals } from "./Totals"
13
13
 
14
14
  export interface Settlement extends Settlement.Creatable {
15
- id: string
15
+ id: SettlementIdentifier | string // string is deprecated and there for legacy reasons
16
16
  by?: string
17
17
  created: isoly.DateTime
18
18
  status: Status
19
19
  entries: Settlement.Entry.Summary
20
20
  }
21
21
  export namespace Settlement {
22
- export const Total = SettlementTotal
23
- export type Total = SettlementTotal
24
- export const Totals = SettlementTotals
25
- export type Totals = SettlementTotals
26
- export const Amount = SettlementAmount
27
- export type Amount = SettlementAmount
28
- export const Fee = SettlementFee
29
- export type Fee = SettlementFee
30
- export type Creatable = SettlementCreatable
31
- export const Creatable = SettlementCreatable
32
- export type Entry = SettlementEntry
33
- export const Entry = SettlementEntry
34
- export type Batch = SettlementBatch
35
- export const Batch = SettlementBatch
36
- export namespace Entry {
37
- export type Summary = SettlementEntry.Summary
38
- export type Creatable = SettlementEntry.Creatable
39
- export type Refund = SettlementEntry.Refund
40
- export namespace Refund {
41
- export type Creatable = SettlementEntry.Refund.Creatable
42
- }
43
- export type Cancel = SettlementEntry.Cancel
44
- export namespace Cancel {
45
- export type Creatable = SettlementEntry.Cancel.Creatable
46
- }
47
- export type Capture = SettlementEntry.Capture
48
- export namespace Capture {
49
- export type Creatable = SettlementEntry.Capture.Creatable
50
- }
51
- export type Unknown = SettlementEntry.Unknown
52
- export namespace Unknown {
53
- export type Creatable = SettlementEntry.Unknown.Creatable
54
- }
55
- }
56
- export function from(creatable: Settlement.Creatable, by: string): Settlement {
22
+ export import Identifier = SettlementIdentifier
23
+ export import Total = SettlementTotal
24
+ export import Totals = SettlementTotals
25
+ export import Amount = SettlementAmount
26
+ export import Fee = SettlementFee
27
+ export import Creatable = SettlementCreatable
28
+ export import Entry = SettlementEntry
29
+ export import Batch = SettlementBatch
30
+ export function from(id: Settlement.Identifier, creatable: Settlement.Creatable, by: string): Settlement {
57
31
  return {
58
- id: Identifier.generate(),
32
+ id,
59
33
  status: { collected: "pending", settled: "pending" },
60
34
  by,
61
35
  ...creatable,
@@ -120,7 +94,7 @@ export namespace Settlement {
120
94
  return result
121
95
  }
122
96
  export const type = SettlementCreatable.type.extend<Settlement>({
123
- id: isly.string(),
97
+ id: isly.union(SettlementIdentifier.type, isly.string()),
124
98
  by: isly.string().optional(),
125
99
  created: isly.fromIs("isoly.DateTime", isoly.DateTime.is),
126
100
  status: Status.type,
@@ -1,6 +1,4 @@
1
- import { Configuration as AnalyticsConfiguration } from "./Configuration";
2
1
  import { Event as AnalyticsEvent } from "./Event";
3
2
  export declare namespace Analytics {
4
3
  export import Event = AnalyticsEvent;
5
- export import Configuration = AnalyticsConfiguration;
6
4
  }
@@ -1,8 +1,6 @@
1
- import { Configuration as AnalyticsConfiguration } from "./Configuration";
2
1
  import { Event as AnalyticsEvent } from "./Event";
3
2
  export var Analytics;
4
3
  (function (Analytics) {
5
4
  Analytics.Event = AnalyticsEvent;
6
- Analytics.Configuration = AnalyticsConfiguration;
7
5
  })(Analytics || (Analytics = {}));
8
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../","sources":["Analytics/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,IAAI,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AACzE,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,SAAS,CAAA;AAEjD,MAAM,KAAW,SAAS,CAGzB;AAHD,WAAiB,SAAS;IACX,eAAK,GAAG,cAAc,CAAA;IACtB,uBAAa,GAAG,sBAAsB,CAAA;AACrD,CAAC,EAHgB,SAAS,KAAT,SAAS,QAGzB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"../","sources":["Analytics/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,SAAS,CAAA;AAEjD,MAAM,KAAW,SAAS,CAEzB;AAFD,WAAiB,SAAS;IACX,eAAK,GAAG,cAAc,CAAA;AACrC,CAAC,EAFgB,SAAS,KAAT,SAAS,QAEzB"}
@@ -9,4 +9,9 @@ export declare namespace Stack {
9
9
  function toRealm(stack: Stack): Realm;
10
10
  function toScheme(stack: Stack): string;
11
11
  function toProcessor(stack: Stack): string;
12
+ namespace Character {
13
+ const values: readonly ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"];
14
+ function from(stack: Stack): Stack.Character;
15
+ }
16
+ type Character = typeof Character.values[number];
12
17
  }
@@ -29,5 +29,48 @@ export var Stack;
29
29
  .join("-");
30
30
  }
31
31
  Stack.toProcessor = toProcessor;
32
+ let Character;
33
+ (function (Character) {
34
+ Character.values = [
35
+ "a",
36
+ "b",
37
+ "c",
38
+ "d",
39
+ "e",
40
+ "f",
41
+ "g",
42
+ "h",
43
+ "i",
44
+ "j",
45
+ "k",
46
+ "l",
47
+ "m",
48
+ "n",
49
+ "o",
50
+ "p",
51
+ "q",
52
+ "r",
53
+ "s",
54
+ "t",
55
+ "u",
56
+ "v",
57
+ "w",
58
+ "x",
59
+ "y",
60
+ "z",
61
+ ];
62
+ const table = {
63
+ "test-paxgiro": "z",
64
+ "test-tpl-paxgiro": "y",
65
+ "testUK-marqeta": "x",
66
+ "testUK-tpl-marqeta": "w",
67
+ "testUK-diners-dpg": "u",
68
+ "uk-mc-tpl-marqeta": "a",
69
+ };
70
+ function from(stack) {
71
+ return table[stack];
72
+ }
73
+ Character.from = from;
74
+ })(Character = Stack.Character || (Stack.Character = {}));
32
75
  })(Stack || (Stack = {}));
33
76
  //# sourceMappingURL=Stack.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Stack.js","sourceRoot":"../","sources":["Card/Stack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAM3B,MAAM,KAAW,KAAK,CA0BrB;AA1BD,WAAiB,KAAK;IACR,YAAM,GAAG;QACrB,cAAc;QACd,kBAAkB;QAClB,gBAAgB;QAChB,oBAAoB;QACpB,mBAAmB;QACnB,mBAAmB;KACV,CAAA;IACG,UAAI,GAAG,IAAI,CAAC,MAAM,CAAC,MAAA,MAAM,CAAC,CAAA;IAC1B,QAAE,GAAG,MAAA,IAAI,CAAC,EAAE,CAAA;IACZ,UAAI,GAAG,MAAA,IAAI,CAAC,IAAI,CAAA;IAC7B,SAAgB,OAAO,CAAC,KAAY;QACnC,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAU,CAAA;IACpC,CAAC;IAFe,aAAO,UAEtB,CAAA;IACD,SAAgB,QAAQ,CAAC,KAAY;QACpC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QAClC,OAAO,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;IACjF,CAAC;IAHe,cAAQ,WAGvB,CAAA;IACD,SAAgB,WAAW,CAAC,KAAY;QACvC,OAAO,KAAK;aACV,KAAK,CAAC,GAAG,CAAC;aACV,KAAK,CAAC,CAAC,CAAC;aACR,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACvC,IAAI,CAAC,GAAG,CAAC,CAAA;IACZ,CAAC;IANe,iBAAW,cAM1B,CAAA;AACF,CAAC,EA1BgB,KAAK,KAAL,KAAK,QA0BrB"}
1
+ {"version":3,"file":"Stack.js","sourceRoot":"../","sources":["Card/Stack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAM3B,MAAM,KAAW,KAAK,CAoErB;AApED,WAAiB,KAAK;IACR,YAAM,GAAG;QACrB,cAAc;QACd,kBAAkB;QAClB,gBAAgB;QAChB,oBAAoB;QACpB,mBAAmB;QACnB,mBAAmB;KACV,CAAA;IACG,UAAI,GAAG,IAAI,CAAC,MAAM,CAAC,MAAA,MAAM,CAAC,CAAA;IAC1B,QAAE,GAAG,MAAA,IAAI,CAAC,EAAE,CAAA;IACZ,UAAI,GAAG,MAAA,IAAI,CAAC,IAAI,CAAA;IAC7B,SAAgB,OAAO,CAAC,KAAY;QACnC,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAU,CAAA;IACpC,CAAC;IAFe,aAAO,UAEtB,CAAA;IACD,SAAgB,QAAQ,CAAC,KAAY;QACpC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QAClC,OAAO,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;IACjF,CAAC;IAHe,cAAQ,WAGvB,CAAA;IACD,SAAgB,WAAW,CAAC,KAAY;QACvC,OAAO,KAAK;aACV,KAAK,CAAC,GAAG,CAAC;aACV,KAAK,CAAC,CAAC,CAAC;aACR,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACvC,IAAI,CAAC,GAAG,CAAC,CAAA;IACZ,CAAC;IANe,iBAAW,cAM1B,CAAA;IACD,IAAiB,SAAS,CAwCzB;IAxCD,WAAiB,SAAS;QACZ,gBAAM,GAAG;YACrB,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;SACM,CAAA;QACV,MAAM,KAAK,GAAmC;YAC7C,cAAc,EAAE,GAAG;YACnB,kBAAkB,EAAE,GAAG;YACvB,gBAAgB,EAAE,GAAG;YACrB,oBAAoB,EAAE,GAAG;YACzB,mBAAmB,EAAE,GAAG;YACxB,mBAAmB,EAAE,GAAG;SACxB,CAAA;QACD,SAAgB,IAAI,CAAC,KAAY;YAChC,OAAO,KAAK,CAAC,KAAK,CAAC,CAAA;QACpB,CAAC;QAFe,cAAI,OAEnB,CAAA;IACF,CAAC,EAxCgB,SAAS,GAAT,eAAS,KAAT,eAAS,QAwCzB;AAEF,CAAC,EApEgB,KAAK,KAAL,KAAK,QAoErB"}
@@ -0,0 +1,9 @@
1
+ import { isoly } from "isoly";
2
+ import { isly } from "isly";
3
+ import { Card } from "../Card";
4
+ export type Identifier = `${isoly.Date}${string}`;
5
+ export declare namespace Identifier {
6
+ const type: isly.Type<string>;
7
+ function create(date: isoly.Date, stack: Card.Stack, order: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9): Identifier;
8
+ function getDate(identifier: Identifier): isoly.Date | undefined;
9
+ }
@@ -0,0 +1,17 @@
1
+ import { isoly } from "isoly";
2
+ import { isly } from "isly";
3
+ import { Card } from "../Card";
4
+ export var Identifier;
5
+ (function (Identifier) {
6
+ Identifier.type = isly.string();
7
+ function create(date, stack, order) {
8
+ return date.replace(/-/g, "") + Card.Stack.Character.from(stack) + order;
9
+ }
10
+ Identifier.create = create;
11
+ function getDate(identifier) {
12
+ const date = identifier.substring(0, 4) + "-" + identifier.substring(4, 6) + "-" + identifier.substring(6, 8);
13
+ return isoly.Date.is(date) ? date : undefined;
14
+ }
15
+ Identifier.getDate = getDate;
16
+ })(Identifier || (Identifier = {}));
17
+ //# sourceMappingURL=Identifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Identifier.js","sourceRoot":"../","sources":["Settlement/Identifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAK9B,MAAM,KAAW,UAAU,CAS1B;AATD,WAAiB,UAAU;IACb,eAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;IACjC,SAAgB,MAAM,CAAC,IAAgB,EAAE,KAAiB,EAAE,KAAwC;QACnG,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;IACzE,CAAC;IAFe,iBAAM,SAErB,CAAA;IACD,SAAgB,OAAO,CAAC,UAAsB;QAC7C,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7G,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;IAC9C,CAAC;IAHe,kBAAO,UAGtB,CAAA;AACF,CAAC,EATgB,UAAU,KAAV,UAAU,QAS1B"}
@@ -6,52 +6,27 @@ import { Batch as SettlementBatch } from "./Batch";
6
6
  import { Creatable as SettlementCreatable } from "./Creatable";
7
7
  import { Entry as SettlementEntry } from "./Entry";
8
8
  import { Fee as SettlementFee } from "./Fee";
9
+ import { Identifier as SettlementIdentifier } from "./Identifier";
9
10
  import { Status } from "./Status";
10
11
  import { Total as SettlementTotal } from "./Total";
11
12
  import { Totals as SettlementTotals } from "./Totals";
12
13
  export interface Settlement extends Settlement.Creatable {
13
- id: string;
14
+ id: SettlementIdentifier | string;
14
15
  by?: string;
15
16
  created: isoly.DateTime;
16
17
  status: Status;
17
18
  entries: Settlement.Entry.Summary;
18
19
  }
19
20
  export declare namespace Settlement {
20
- export const Total: typeof SettlementTotal;
21
- export type Total = SettlementTotal;
22
- export const Totals: typeof SettlementTotals;
23
- export type Totals = SettlementTotals;
24
- export const Amount: typeof SettlementAmount;
25
- export type Amount = SettlementAmount;
26
- export const Fee: typeof SettlementFee;
27
- export type Fee = SettlementFee;
28
- export type Creatable = SettlementCreatable;
29
- export const Creatable: typeof SettlementCreatable;
30
- export type Entry = SettlementEntry;
31
- export const Entry: typeof SettlementEntry;
32
- export type Batch = SettlementBatch;
33
- export const Batch: typeof SettlementBatch;
34
- export namespace Entry {
35
- type Summary = SettlementEntry.Summary;
36
- type Creatable = SettlementEntry.Creatable;
37
- type Refund = SettlementEntry.Refund;
38
- namespace Refund {
39
- type Creatable = SettlementEntry.Refund.Creatable;
40
- }
41
- type Cancel = SettlementEntry.Cancel;
42
- namespace Cancel {
43
- type Creatable = SettlementEntry.Cancel.Creatable;
44
- }
45
- type Capture = SettlementEntry.Capture;
46
- namespace Capture {
47
- type Creatable = SettlementEntry.Capture.Creatable;
48
- }
49
- type Unknown = SettlementEntry.Unknown;
50
- namespace Unknown {
51
- type Creatable = SettlementEntry.Unknown.Creatable;
52
- }
53
- }
54
- export function from(creatable: Settlement.Creatable, by: string): Settlement;
21
+ export import Identifier = SettlementIdentifier;
22
+ export import Total = SettlementTotal;
23
+ export import Totals = SettlementTotals;
24
+ export import Amount = SettlementAmount;
25
+ export import Fee = SettlementFee;
26
+ export import Creatable = SettlementCreatable;
27
+ export import Entry = SettlementEntry;
28
+ export import Batch = SettlementBatch;
29
+ export function from(id: Settlement.Identifier, creatable: Settlement.Creatable, by: string): Settlement;
55
30
  export function compile(settlement: Settlement, entries: Settlement.Entry[]): Settlement;
56
31
  type OldTotal = {
57
32
  amount: Amounts;
@@ -1,16 +1,17 @@
1
1
  import { isoly } from "isoly";
2
2
  import { isly } from "isly";
3
- import { Identifier } from "../Identifier";
4
3
  import { Amount as SettlementAmount } from "./Amount";
5
4
  import { Batch as SettlementBatch } from "./Batch";
6
5
  import { Creatable as SettlementCreatable } from "./Creatable";
7
6
  import { Entry as SettlementEntry } from "./Entry";
8
7
  import { Fee as SettlementFee } from "./Fee";
8
+ import { Identifier as SettlementIdentifier } from "./Identifier";
9
9
  import { Status } from "./Status";
10
10
  import { Total as SettlementTotal } from "./Total";
11
11
  import { Totals as SettlementTotals } from "./Totals";
12
12
  export var Settlement;
13
13
  (function (Settlement) {
14
+ Settlement.Identifier = SettlementIdentifier;
14
15
  Settlement.Total = SettlementTotal;
15
16
  Settlement.Totals = SettlementTotals;
16
17
  Settlement.Amount = SettlementAmount;
@@ -18,9 +19,9 @@ export var Settlement;
18
19
  Settlement.Creatable = SettlementCreatable;
19
20
  Settlement.Entry = SettlementEntry;
20
21
  Settlement.Batch = SettlementBatch;
21
- function from(creatable, by) {
22
+ function from(id, creatable, by) {
22
23
  return {
23
- id: Identifier.generate(),
24
+ id,
24
25
  status: { collected: "pending", settled: "pending" },
25
26
  by,
26
27
  ...creatable,
@@ -79,7 +80,7 @@ export var Settlement;
79
80
  }
80
81
  Settlement.fromLegacy = fromLegacy;
81
82
  Settlement.type = SettlementCreatable.type.extend({
82
- id: isly.string(),
83
+ id: isly.union(SettlementIdentifier.type, isly.string()),
83
84
  by: isly.string().optional(),
84
85
  created: isly.fromIs("isoly.DateTime", isoly.DateTime.is),
85
86
  status: Status.type,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../","sources":["Settlement/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,UAAU,CAAA;AACrD,OAAO,EAAE,KAAK,IAAI,eAAe,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,SAAS,IAAI,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAC9D,OAAO,EAAE,KAAK,IAAI,eAAe,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,GAAG,IAAI,aAAa,EAAE,MAAM,OAAO,CAAA;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,KAAK,IAAI,eAAe,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,UAAU,CAAA;AASrD,MAAM,KAAW,UAAU,CA8G1B;AA9GD,WAAiB,UAAU;IACb,gBAAK,GAAG,eAAe,CAAA;IAEvB,iBAAM,GAAG,gBAAgB,CAAA;IAEzB,iBAAM,GAAG,gBAAgB,CAAA;IAEzB,cAAG,GAAG,aAAa,CAAA;IAGnB,oBAAS,GAAG,mBAAmB,CAAA;IAE/B,gBAAK,GAAG,eAAe,CAAA;IAEvB,gBAAK,GAAG,eAAe,CAAA;IAqBpC,SAAgB,IAAI,CAAC,SAA+B,EAAE,EAAU;QAC/D,OAAO;YACN,EAAE,EAAE,UAAU,CAAC,QAAQ,EAAE;YACzB,MAAM,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE;YACpD,EAAE;YACF,GAAG,SAAS;YACZ,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE;YAC7B,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;SACrB,CAAA;IACF,CAAC;IATe,eAAI,OASnB,CAAA;IACD,SAAgB,OAAO,CAAC,UAAsB,EAAE,OAA2B;QAC1E,MAAM,MAAM,GAAG,EAAE,GAAG,UAAU,EAAE,CAAA;QAChC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC7B,QAAQ,KAAK,CAAC,MAAM,EAAE,CAAC;gBACtB,KAAK,WAAW;oBACf,MAAM,CAAC,MAAM,GAAG,WAAA,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;oBACrD,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;oBACtB,MAAK;gBACN,KAAK,QAAQ;oBACZ,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;oBAC9F,MAAK;YACP,CAAC;QACF,CAAC;QACD,OAAO,MAAM,CAAA;IACd,CAAC;IAde,kBAAO,UActB,CAAA;IASD,SAAgB,UAAU,CAAC,UAAoB;QAC9C,IAAI,MAAkB,CAAA;QACtB,IAAI,CAAC,WAAA,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;YACrB,MAAM,aAAa,GAA2D,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;gBACtG,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACpC,GAAG,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;aAClD,CAAC,CAAA;YACF,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,iBAAiB,EAAE,GAAG,UAAU,CAAA;YAClF,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAC5B,IAAI,GAAG,CAAiB;gBACvB,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,CAAC;gBACtC,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,IAAI,EAAE,CAAC;gBACvC,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;gBACnC,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;aACV,CAAC,CACtB,CAAA;YACD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACpD,KAAK,CAAC,QAAQ,CAAC,GAAG;oBACjB,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC;oBAC3C,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjE,GAAG,CAAC,SAAS;wBACZ,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,GAAG,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE;wBAC9F,CAAC,CAAC,EAAE,CAAC;oBACN,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACzG,CAAA;gBACD,OAAO,KAAK,CAAA;YACb,CAAC,EAAE,EAAY,CAAC,CAAA;YAChB,MAAM,GAAG,EAAE,GAAG,iBAAiB,EAAE,MAAM,EAAE,CAAA;QAC1C,CAAC;aAAM,CAAC;YACP,MAAM,GAAG,UAAU,CAAA;QACpB,CAAC;QACD,OAAO,MAAM,CAAA;IACd,CAAC;IAhCe,qBAAU,aAgCzB,CAAA;IACY,eAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAa;QAC/D,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE;QACjB,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC5B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzD,MAAM,EAAE,MAAM,CAAC,IAAI;QACnB,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI;KACtC,CAAC,CAAA;IACW,aAAE,GAAG,WAAA,IAAI,CAAC,EAAE,CAAA;IACZ,eAAI,GAAG,WAAA,IAAI,CAAC,IAAI,CAAA;AAC9B,CAAC,EA9GgB,UAAU,KAAV,UAAU,QA8G1B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"../","sources":["Settlement/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.331",
3
+ "version": "0.1.333",
4
4
  "description": "Library containing data model types and functions for the Pax2Pay Banking API.",
5
5
  "author": "Pax2Pay Ltd",
6
6
  "license": "MIT",
@@ -73,7 +73,6 @@
73
73
  "dependencies": {
74
74
  "@userwidgets/model": "0.8.30",
75
75
  "authly": "^3.1.1",
76
- "cloudly-analytics-administration": "^0.3.25",
77
76
  "cloudly-http": "^0.1.7",
78
77
  "cloudly-rest": "^0.1.4",
79
78
  "cloudly-storage": "^0.10.8",
@@ -1,36 +0,0 @@
1
- import { Mapping } from "./Mapping"
2
- import { Schema } from "./Schema"
3
-
4
- export namespace Base {
5
- type Selectors =
6
- | "realm"
7
- | "entity.type"
8
- | "entity.id"
9
- | "action"
10
- | "created"
11
- | "isError"
12
- | "version"
13
- | "source"
14
- export const mapping = {
15
- realm: "realm",
16
- entity: "entity.type",
17
- entityId: "entity.id",
18
- action: "action",
19
- created: "created",
20
- isError: { selector: "isError", transform: "boolean" },
21
- version: "version",
22
- source: "source",
23
- // eslint-disable-next-line
24
- } as const satisfies Mapping<Selectors>;
25
- export type Fields = keyof typeof mapping
26
- export const schema: Schema<Fields> = [
27
- { name: "realm", type: "STRING" },
28
- { name: "entity", type: "STRING" },
29
- { name: "entityId", type: "STRING" },
30
- { name: "action", type: "STRING" },
31
- { name: "created", type: "TIMESTAMP" },
32
- { name: "isError", type: "BOOLEAN" },
33
- { name: "source", type: "STRING" },
34
- { name: "version", type: "STRING" },
35
- ]
36
- }
@@ -1,13 +0,0 @@
1
- import { Filter } from "cloudly-analytics-administration"
2
- import { isly } from "isly"
3
-
4
- export type Mapping<T extends string = string> = Filter.Mapping.RecordWithSelector<T>
5
-
6
- export namespace Mapping {
7
- export type Field = string | Filter.Mapping.Getter
8
- export namespace Field {
9
- export import Transform = Filter.Mapping.Transform
10
- export const type = isly.union(isly.string(), Filter.Mapping.Getter.type)
11
- }
12
- export const type = isly.record<Mapping>(isly.string(), Field.type)
13
- }
@@ -1,37 +0,0 @@
1
- import { Mapping } from "./Mapping"
2
- import { Schema } from "./Schema"
3
-
4
- export namespace Operation {
5
- export const mapping = {
6
- account: "value.account",
7
- currency: "value.currency",
8
- changes: { selector: "value.changes", transform: "array" },
9
- type: "value.type",
10
- transaction: "value.transaction",
11
- counter: { selector: "value.counter", transform: "integer"},
12
- operationCreated: "value.created",
13
- signature: "value.signature",
14
- previous: "value.previous",
15
- // eslint-disable-next-line
16
- } as const satisfies Mapping
17
- export type Fields = keyof typeof mapping
18
- export const schema: Schema<Fields> = [
19
- { name: "account", type: "STRING" },
20
- { name: "currency", type: "STRING" },
21
- { name: "changes", type: "RECORD", mode: "REPEATED", fields: [
22
- { name: "key", type: "STRING" },
23
- { name: "value", type: "RECORD", fields: [
24
- { name: "type", type: "STRING" },
25
- { name: "amount", type: "NUMERIC" },
26
- { name: "status", type: "STRING" },
27
- { name: "result", type: "STRING", mode: "NULLABLE" },
28
- ]}
29
- ] },
30
- { name: "type", type: "STRING" },
31
- { name: "transaction", type: "STRING" },
32
- { name: "counter", type: "NUMERIC" },
33
- { name: "operationCreated", type: "DATETIME" },
34
- { name: "signature", type: "STRING" },
35
- { name: "previous", type: "STRING" },
36
- ]
37
- }
@@ -1,7 +0,0 @@
1
- import { Listener } from "cloudly-analytics-administration"
2
-
3
- export type Schema<T extends string = string> = Schema.Field<T>[]
4
- export namespace Schema {
5
- export import Field = Listener.Configuration.BigQuery.Api.BaseField
6
- export const type = Field.type.array()
7
- }
@@ -1,106 +0,0 @@
1
- import { Mapping } from "./Mapping"
2
- import { Schema } from "./Schema"
3
-
4
- export namespace Transaction {
5
- export const mapping = {
6
- counterpartType: "value.counterpart.type",
7
- counterpart: { selector: "value.counterpart", transform: "stringify" },
8
- counterpartCode: "value.counterpart.code",
9
- currency: "value.currency",
10
- amount: { selector: "value.amount", transform: "number" },
11
- description: "value.description",
12
- organization: "value.organization",
13
- accountId: "value.accountId",
14
- accountName: "value.accountName",
15
- account: { selector: "value.account", transform: "stringify" },
16
- accountType: "value.account.type",
17
- type: "value.type",
18
- direction: "value.direction",
19
- id: "value.id",
20
- referenceSupplier: "value.reference.supplier",
21
- referenceReference: "value.reference.reference",
22
- referenceReturnId: "value.reference.returnId",
23
- referenceEndToEndId: "value.reference.endToEndId",
24
- posted: "value.posted",
25
- transacted: "value.transacted",
26
- by: "value.by",
27
- actualBalance: { selector: "value.balance.actual", transform: "number" },
28
- reservedBalance: { selector: "value.balance.reserved", transform: "number" },
29
- availableBalance: { selector: "value.balance.available", transform: "number" },
30
- operations: { selector: "value.operations[*]", transform: {
31
- account: "account",
32
- currency: "currency",
33
- changes: { selector: "changes", transform: "array" },
34
- type: "type",
35
- transaction: "transaction",
36
- counter: { selector: "counter", transform: "integer"},
37
- created: "created",
38
- signature: "signature",
39
- previous: "previous",
40
- }},
41
- status: "value.status",
42
- rail: "value.rail",
43
- railType: "value.rail.type",
44
- flags: "value.flags",
45
- oldFlags: "value.oldFlags",
46
- notes: { selector: "value.notes", transform: "stringify" },
47
- risk: { selector: "value.risk", transform: "number" },
48
- state: { selector: "value.state", transform: "stringify" },
49
- // eslint-disable-next-line
50
- } as const satisfies Mapping
51
- export type Fields = keyof typeof mapping
52
- export const schema: Schema<Fields> = [
53
- { name: "counterpartType", type: "STRING" },
54
- { name: "counterpart", type: "STRING" },
55
- { name: "counterpartCode", type: "STRING", mode: "NULLABLE" },
56
- { name: "currency", type: "STRING" },
57
- { name: "amount", type: "NUMERIC" },
58
- { name: "description", type: "STRING" },
59
- { name: "organization", type: "STRING" },
60
- { name: "accountId", type: "STRING" },
61
- { name: "accountName", type: "STRING", mode: "NULLABLE" },
62
- { name: "account", type: "STRING" },
63
- { name: "accountType", type: "STRING" },
64
- { name: "type", type: "STRING", mode: "NULLABLE" },
65
- { name: "direction", type: "STRING", mode: "NULLABLE" },
66
- { name: "id", type: "STRING" },
67
- { name: "referenceSupplier", type: "STRING", mode: "NULLABLE" },
68
- { name: "referenceReference", type: "STRING", mode: "NULLABLE" },
69
- { name: "referenceReturnId", type: "STRING", mode: "NULLABLE" },
70
- { name: "referenceEndToEndId", type: "STRING", mode: "NULLABLE" },
71
- { name: "posted", type: "DATETIME" },
72
- { name: "transacted", type: "DATETIME", mode: "NULLABLE" },
73
- { name: "by", type: "STRING", mode: "NULLABLE" },
74
- { name: "actualBalance", type: "NUMERIC" },
75
- { name: "reservedBalance", type: "NUMERIC" },
76
- { name: "availableBalance", type: "NUMERIC" },
77
- { name: "operations", type: "RECORD", mode: "REPEATED", fields: [
78
- { name: "account", type: "STRING" },
79
- { name: "currency", type: "STRING" },
80
- { name: "changes", type: "RECORD", mode: "REPEATED", fields: [
81
- { name: "key", type: "STRING" },
82
- { name: "value", type: "RECORD", fields: [
83
- { name: "type", type: "STRING" },
84
- { name: "amount", type: "NUMERIC" },
85
- { name: "status", type: "STRING" },
86
- { name: "result", type: "STRING", mode: "NULLABLE" },
87
- ]}
88
- ] },
89
- { name: "type", type: "STRING" },
90
- { name: "transaction", type: "STRING" },
91
- { name: "counter", type: "NUMERIC" },
92
- { name: "created", type: "DATETIME" },
93
- { name: "signature", type: "STRING" },
94
- { name: "previous", type: "STRING" },
95
- ]
96
- },
97
- { name: "status", type: "STRING" },
98
- { name: "rail", type: "STRING", mode: "NULLABLE" },
99
- { name: "railType", type: "STRING" },
100
- { name: "flags", type: "STRING", mode: "REPEATED" },
101
- { name: "oldFlags", type: "STRING", mode: "REPEATED" },
102
- { name: "notes", type: "STRING", mode: "REPEATED" },
103
- { name: "risk", type: "NUMERIC", mode: "NULLABLE" },
104
- { name: "state", type: "STRING", mode: "NULLABLE" },
105
- ]
106
- }
@@ -1,83 +0,0 @@
1
- import { Listener } from "cloudly-analytics-administration"
2
- import { Base as ConfigBase } from "./Base"
3
- import { Mapping as AnalyticsMapping } from "./Mapping"
4
- import { Operation as ConfigOperation } from "./Operation"
5
- import { Schema as AnalyticsSchema } from "./Schema"
6
- import { Transaction as ConfigTransaction } from "./Transaction"
7
-
8
- //cSpell: ignore: paxpay nonprod
9
- export namespace Configuration {
10
- export import Mapping = AnalyticsMapping
11
- export import Schema = AnalyticsSchema
12
- export import Base = ConfigBase
13
- export import Transaction = ConfigTransaction
14
- export import Operation = ConfigOperation
15
- export type BigQueryTableConfig = {
16
- projectName: "paxpay-prod" | "paxpay-nonprod"
17
- datasetName: string
18
- tableName: string
19
- }
20
- export function create(
21
- name: string,
22
- mapping: Mapping,
23
- schema: Schema,
24
- config: BigQueryTableConfig,
25
- filter: string
26
- ): Listener.Configuration.BigQuery.BaseConfiguration {
27
- return {
28
- name,
29
- type: "bigquery",
30
- filter: [
31
- {
32
- type: "selectively",
33
- expression: filter,
34
- },
35
- { type: "useragent" },
36
- {
37
- type: "mapping",
38
- mapping: {
39
- ...Base.mapping,
40
- ...mapping,
41
- },
42
- },
43
- ],
44
- batchSize: 10,
45
- batchInterval: 3,
46
- ...config,
47
- tableSchema: [...Base.schema, ...schema],
48
- }
49
- }
50
- export const backup = create(
51
- "backup",
52
- { value: { selector: "value", transform: "stringify" } },
53
- [{ name: "value", type: "STRING" }],
54
- {
55
- projectName: "paxpay-prod",
56
- datasetName: "pays_ledger",
57
- tableName: "backup",
58
- },
59
- "source:pax2pay-worker-banking-ledger realm:within(uk, eu)"
60
- )
61
- export const operation = create(
62
- "operations",
63
- Operation.mapping,
64
- Operation.schema,
65
- {
66
- projectName: "paxpay-prod",
67
- datasetName: "pays_ledger",
68
- tableName: "operations",
69
- },
70
- "source:pax2pay-worker-banking-ledger entity:operation realm:within(uk, eu)"
71
- )
72
- export const transaction = create(
73
- "transactions",
74
- Transaction.mapping,
75
- Transaction.schema,
76
- {
77
- projectName: "paxpay-prod",
78
- datasetName: "pays_ledger",
79
- tableName: "transactions",
80
- },
81
- "source:pax2pay-worker-banking-ledger entity:transaction realm:within(uk, eu)"
82
- )
83
- }
@@ -1,18 +0,0 @@
1
- import { Schema } from "./Schema";
2
- export declare namespace Base {
3
- const mapping: {
4
- readonly realm: "realm";
5
- readonly entity: "entity.type";
6
- readonly entityId: "entity.id";
7
- readonly action: "action";
8
- readonly created: "created";
9
- readonly isError: {
10
- readonly selector: "isError";
11
- readonly transform: "boolean";
12
- };
13
- readonly version: "version";
14
- readonly source: "source";
15
- };
16
- type Fields = keyof typeof mapping;
17
- const schema: Schema<Fields>;
18
- }
@@ -1,24 +0,0 @@
1
- export var Base;
2
- (function (Base) {
3
- Base.mapping = {
4
- realm: "realm",
5
- entity: "entity.type",
6
- entityId: "entity.id",
7
- action: "action",
8
- created: "created",
9
- isError: { selector: "isError", transform: "boolean" },
10
- version: "version",
11
- source: "source",
12
- };
13
- Base.schema = [
14
- { name: "realm", type: "STRING" },
15
- { name: "entity", type: "STRING" },
16
- { name: "entityId", type: "STRING" },
17
- { name: "action", type: "STRING" },
18
- { name: "created", type: "TIMESTAMP" },
19
- { name: "isError", type: "BOOLEAN" },
20
- { name: "source", type: "STRING" },
21
- { name: "version", type: "STRING" },
22
- ];
23
- })(Base || (Base = {}));
24
- //# sourceMappingURL=Base.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Base.js","sourceRoot":"../","sources":["Analytics/Configuration/Base.ts"],"names":[],"mappings":"AAGA,MAAM,KAAW,IAAI,CAgCpB;AAhCD,WAAiB,IAAI;IAUP,YAAO,GAAG;QACtB,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,aAAa;QACrB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE;QACtD,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,QAAQ;KAEsB,CAAC;IAE3B,WAAM,GAAmB;QACrC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;QACjC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE;QACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE;QACtC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;QACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;KACnC,CAAA;AACF,CAAC,EAhCgB,IAAI,KAAJ,IAAI,QAgCpB"}
@@ -1,11 +0,0 @@
1
- import { Filter } from "cloudly-analytics-administration";
2
- import { isly } from "isly";
3
- export type Mapping<T extends string = string> = Filter.Mapping.RecordWithSelector<T>;
4
- export declare namespace Mapping {
5
- type Field = string | Filter.Mapping.Getter;
6
- namespace Field {
7
- export import Transform = Filter.Mapping.Transform;
8
- const type: isly.Type<string | Filter.Mapping.Getter<string>>;
9
- }
10
- const type: isly.Type<Mapping<string>>;
11
- }
@@ -1,12 +0,0 @@
1
- import { Filter } from "cloudly-analytics-administration";
2
- import { isly } from "isly";
3
- export var Mapping;
4
- (function (Mapping) {
5
- let Field;
6
- (function (Field) {
7
- Field.Transform = Filter.Mapping.Transform;
8
- Field.type = isly.union(isly.string(), Filter.Mapping.Getter.type);
9
- })(Field = Mapping.Field || (Mapping.Field = {}));
10
- Mapping.type = isly.record(isly.string(), Field.type);
11
- })(Mapping || (Mapping = {}));
12
- //# sourceMappingURL=Mapping.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Mapping.js","sourceRoot":"../","sources":["Analytics/Configuration/Mapping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAI3B,MAAM,KAAW,OAAO,CAOvB;AAPD,WAAiB,OAAO;IAEvB,IAAiB,KAAK,CAGrB;IAHD,WAAiB,KAAK;QACP,eAAS,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAA;QACrC,UAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC1E,CAAC,EAHgB,KAAK,GAAL,aAAK,KAAL,aAAK,QAGrB;IACY,YAAI,GAAG,IAAI,CAAC,MAAM,CAAU,IAAI,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;AACpE,CAAC,EAPgB,OAAO,KAAP,OAAO,QAOvB"}
@@ -1,22 +0,0 @@
1
- import { Schema } from "./Schema";
2
- export declare namespace Operation {
3
- const mapping: {
4
- readonly account: "value.account";
5
- readonly currency: "value.currency";
6
- readonly changes: {
7
- readonly selector: "value.changes";
8
- readonly transform: "array";
9
- };
10
- readonly type: "value.type";
11
- readonly transaction: "value.transaction";
12
- readonly counter: {
13
- readonly selector: "value.counter";
14
- readonly transform: "integer";
15
- };
16
- readonly operationCreated: "value.created";
17
- readonly signature: "value.signature";
18
- readonly previous: "value.previous";
19
- };
20
- type Fields = keyof typeof mapping;
21
- const schema: Schema<Fields>;
22
- }
@@ -1,34 +0,0 @@
1
- export var Operation;
2
- (function (Operation) {
3
- Operation.mapping = {
4
- account: "value.account",
5
- currency: "value.currency",
6
- changes: { selector: "value.changes", transform: "array" },
7
- type: "value.type",
8
- transaction: "value.transaction",
9
- counter: { selector: "value.counter", transform: "integer" },
10
- operationCreated: "value.created",
11
- signature: "value.signature",
12
- previous: "value.previous",
13
- };
14
- Operation.schema = [
15
- { name: "account", type: "STRING" },
16
- { name: "currency", type: "STRING" },
17
- { name: "changes", type: "RECORD", mode: "REPEATED", fields: [
18
- { name: "key", type: "STRING" },
19
- { name: "value", type: "RECORD", fields: [
20
- { name: "type", type: "STRING" },
21
- { name: "amount", type: "NUMERIC" },
22
- { name: "status", type: "STRING" },
23
- { name: "result", type: "STRING", mode: "NULLABLE" },
24
- ] }
25
- ] },
26
- { name: "type", type: "STRING" },
27
- { name: "transaction", type: "STRING" },
28
- { name: "counter", type: "NUMERIC" },
29
- { name: "operationCreated", type: "DATETIME" },
30
- { name: "signature", type: "STRING" },
31
- { name: "previous", type: "STRING" },
32
- ];
33
- })(Operation || (Operation = {}));
34
- //# sourceMappingURL=Operation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Operation.js","sourceRoot":"../","sources":["Analytics/Configuration/Operation.ts"],"names":[],"mappings":"AAGA,MAAM,KAAW,SAAS,CAiCzB;AAjCD,WAAiB,SAAS;IACZ,iBAAO,GAAG;QACtB,OAAO,EAAE,eAAe;QACxB,QAAQ,EAAE,gBAAgB;QAC1B,OAAO,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO,EAAE;QAC1D,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,mBAAmB;QAChC,OAAO,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAC;QAC3D,gBAAgB,EAAE,eAAe;QACjC,SAAS,EAAE,iBAAiB;QAC5B,QAAQ,EAAE,gBAAgB;KAEC,CAAA;IAEf,gBAAM,GAAmB;QACrC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;QACnC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE;QACpC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE;gBAC5D,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC/B,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE;wBACxC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;wBAChC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;wBACnC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;wBAClC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE;qBACpD,EAAC;aACF,EAAE;QACH,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE;QACvC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;QACpC,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,EAAE;QAC9C,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE;QACrC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE;KACpC,CAAA;AACF,CAAC,EAjCgB,SAAS,KAAT,SAAS,QAiCzB"}
@@ -1,6 +0,0 @@
1
- import { Listener } from "cloudly-analytics-administration";
2
- export type Schema<T extends string = string> = Schema.Field<T>[];
3
- export declare namespace Schema {
4
- export import Field = Listener.Configuration.BigQuery.Api.BaseField;
5
- const type: import("isly/dist/cjs/Type").Type<Field<string>[]>;
6
- }
@@ -1,7 +0,0 @@
1
- import { Listener } from "cloudly-analytics-administration";
2
- export var Schema;
3
- (function (Schema) {
4
- Schema.Field = Listener.Configuration.BigQuery.Api.BaseField;
5
- Schema.type = Schema.Field.type.array();
6
- })(Schema || (Schema = {}));
7
- //# sourceMappingURL=Schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Schema.js","sourceRoot":"../","sources":["Analytics/Configuration/Schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAG3D,MAAM,KAAW,MAAM,CAGtB;AAHD,WAAiB,MAAM;IACR,YAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAA;IACtD,WAAI,GAAG,OAAA,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;AACvC,CAAC,EAHgB,MAAM,KAAN,MAAM,QAGtB"}
@@ -1,86 +0,0 @@
1
- import { Schema } from "./Schema";
2
- export declare namespace Transaction {
3
- const mapping: {
4
- readonly counterpartType: "value.counterpart.type";
5
- readonly counterpart: {
6
- readonly selector: "value.counterpart";
7
- readonly transform: "stringify";
8
- };
9
- readonly counterpartCode: "value.counterpart.code";
10
- readonly currency: "value.currency";
11
- readonly amount: {
12
- readonly selector: "value.amount";
13
- readonly transform: "number";
14
- };
15
- readonly description: "value.description";
16
- readonly organization: "value.organization";
17
- readonly accountId: "value.accountId";
18
- readonly accountName: "value.accountName";
19
- readonly account: {
20
- readonly selector: "value.account";
21
- readonly transform: "stringify";
22
- };
23
- readonly accountType: "value.account.type";
24
- readonly type: "value.type";
25
- readonly direction: "value.direction";
26
- readonly id: "value.id";
27
- readonly referenceSupplier: "value.reference.supplier";
28
- readonly referenceReference: "value.reference.reference";
29
- readonly referenceReturnId: "value.reference.returnId";
30
- readonly referenceEndToEndId: "value.reference.endToEndId";
31
- readonly posted: "value.posted";
32
- readonly transacted: "value.transacted";
33
- readonly by: "value.by";
34
- readonly actualBalance: {
35
- readonly selector: "value.balance.actual";
36
- readonly transform: "number";
37
- };
38
- readonly reservedBalance: {
39
- readonly selector: "value.balance.reserved";
40
- readonly transform: "number";
41
- };
42
- readonly availableBalance: {
43
- readonly selector: "value.balance.available";
44
- readonly transform: "number";
45
- };
46
- readonly operations: {
47
- readonly selector: "value.operations[*]";
48
- readonly transform: {
49
- readonly account: "account";
50
- readonly currency: "currency";
51
- readonly changes: {
52
- readonly selector: "changes";
53
- readonly transform: "array";
54
- };
55
- readonly type: "type";
56
- readonly transaction: "transaction";
57
- readonly counter: {
58
- readonly selector: "counter";
59
- readonly transform: "integer";
60
- };
61
- readonly created: "created";
62
- readonly signature: "signature";
63
- readonly previous: "previous";
64
- };
65
- };
66
- readonly status: "value.status";
67
- readonly rail: "value.rail";
68
- readonly railType: "value.rail.type";
69
- readonly flags: "value.flags";
70
- readonly oldFlags: "value.oldFlags";
71
- readonly notes: {
72
- readonly selector: "value.notes";
73
- readonly transform: "stringify";
74
- };
75
- readonly risk: {
76
- readonly selector: "value.risk";
77
- readonly transform: "number";
78
- };
79
- readonly state: {
80
- readonly selector: "value.state";
81
- readonly transform: "stringify";
82
- };
83
- };
84
- type Fields = keyof typeof mapping;
85
- const schema: Schema<Fields>;
86
- }
@@ -1,103 +0,0 @@
1
- export var Transaction;
2
- (function (Transaction) {
3
- Transaction.mapping = {
4
- counterpartType: "value.counterpart.type",
5
- counterpart: { selector: "value.counterpart", transform: "stringify" },
6
- counterpartCode: "value.counterpart.code",
7
- currency: "value.currency",
8
- amount: { selector: "value.amount", transform: "number" },
9
- description: "value.description",
10
- organization: "value.organization",
11
- accountId: "value.accountId",
12
- accountName: "value.accountName",
13
- account: { selector: "value.account", transform: "stringify" },
14
- accountType: "value.account.type",
15
- type: "value.type",
16
- direction: "value.direction",
17
- id: "value.id",
18
- referenceSupplier: "value.reference.supplier",
19
- referenceReference: "value.reference.reference",
20
- referenceReturnId: "value.reference.returnId",
21
- referenceEndToEndId: "value.reference.endToEndId",
22
- posted: "value.posted",
23
- transacted: "value.transacted",
24
- by: "value.by",
25
- actualBalance: { selector: "value.balance.actual", transform: "number" },
26
- reservedBalance: { selector: "value.balance.reserved", transform: "number" },
27
- availableBalance: { selector: "value.balance.available", transform: "number" },
28
- operations: { selector: "value.operations[*]", transform: {
29
- account: "account",
30
- currency: "currency",
31
- changes: { selector: "changes", transform: "array" },
32
- type: "type",
33
- transaction: "transaction",
34
- counter: { selector: "counter", transform: "integer" },
35
- created: "created",
36
- signature: "signature",
37
- previous: "previous",
38
- } },
39
- status: "value.status",
40
- rail: "value.rail",
41
- railType: "value.rail.type",
42
- flags: "value.flags",
43
- oldFlags: "value.oldFlags",
44
- notes: { selector: "value.notes", transform: "stringify" },
45
- risk: { selector: "value.risk", transform: "number" },
46
- state: { selector: "value.state", transform: "stringify" },
47
- };
48
- Transaction.schema = [
49
- { name: "counterpartType", type: "STRING" },
50
- { name: "counterpart", type: "STRING" },
51
- { name: "counterpartCode", type: "STRING", mode: "NULLABLE" },
52
- { name: "currency", type: "STRING" },
53
- { name: "amount", type: "NUMERIC" },
54
- { name: "description", type: "STRING" },
55
- { name: "organization", type: "STRING" },
56
- { name: "accountId", type: "STRING" },
57
- { name: "accountName", type: "STRING", mode: "NULLABLE" },
58
- { name: "account", type: "STRING" },
59
- { name: "accountType", type: "STRING" },
60
- { name: "type", type: "STRING", mode: "NULLABLE" },
61
- { name: "direction", type: "STRING", mode: "NULLABLE" },
62
- { name: "id", type: "STRING" },
63
- { name: "referenceSupplier", type: "STRING", mode: "NULLABLE" },
64
- { name: "referenceReference", type: "STRING", mode: "NULLABLE" },
65
- { name: "referenceReturnId", type: "STRING", mode: "NULLABLE" },
66
- { name: "referenceEndToEndId", type: "STRING", mode: "NULLABLE" },
67
- { name: "posted", type: "DATETIME" },
68
- { name: "transacted", type: "DATETIME", mode: "NULLABLE" },
69
- { name: "by", type: "STRING", mode: "NULLABLE" },
70
- { name: "actualBalance", type: "NUMERIC" },
71
- { name: "reservedBalance", type: "NUMERIC" },
72
- { name: "availableBalance", type: "NUMERIC" },
73
- { name: "operations", type: "RECORD", mode: "REPEATED", fields: [
74
- { name: "account", type: "STRING" },
75
- { name: "currency", type: "STRING" },
76
- { name: "changes", type: "RECORD", mode: "REPEATED", fields: [
77
- { name: "key", type: "STRING" },
78
- { name: "value", type: "RECORD", fields: [
79
- { name: "type", type: "STRING" },
80
- { name: "amount", type: "NUMERIC" },
81
- { name: "status", type: "STRING" },
82
- { name: "result", type: "STRING", mode: "NULLABLE" },
83
- ] }
84
- ] },
85
- { name: "type", type: "STRING" },
86
- { name: "transaction", type: "STRING" },
87
- { name: "counter", type: "NUMERIC" },
88
- { name: "created", type: "DATETIME" },
89
- { name: "signature", type: "STRING" },
90
- { name: "previous", type: "STRING" },
91
- ]
92
- },
93
- { name: "status", type: "STRING" },
94
- { name: "rail", type: "STRING", mode: "NULLABLE" },
95
- { name: "railType", type: "STRING" },
96
- { name: "flags", type: "STRING", mode: "REPEATED" },
97
- { name: "oldFlags", type: "STRING", mode: "REPEATED" },
98
- { name: "notes", type: "STRING", mode: "REPEATED" },
99
- { name: "risk", type: "NUMERIC", mode: "NULLABLE" },
100
- { name: "state", type: "STRING", mode: "NULLABLE" },
101
- ];
102
- })(Transaction || (Transaction = {}));
103
- //# sourceMappingURL=Transaction.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Transaction.js","sourceRoot":"../","sources":["Analytics/Configuration/Transaction.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import { Listener } from "cloudly-analytics-administration";
2
- import { Base as ConfigBase } from "./Base";
3
- import { Mapping as AnalyticsMapping } from "./Mapping";
4
- import { Operation as ConfigOperation } from "./Operation";
5
- import { Schema as AnalyticsSchema } from "./Schema";
6
- import { Transaction as ConfigTransaction } from "./Transaction";
7
- export declare namespace Configuration {
8
- export import Mapping = AnalyticsMapping;
9
- export import Schema = AnalyticsSchema;
10
- export import Base = ConfigBase;
11
- export import Transaction = ConfigTransaction;
12
- export import Operation = ConfigOperation;
13
- type BigQueryTableConfig = {
14
- projectName: "paxpay-prod" | "paxpay-nonprod";
15
- datasetName: string;
16
- tableName: string;
17
- };
18
- function create(name: string, mapping: Mapping, schema: Schema, config: BigQueryTableConfig, filter: string): Listener.Configuration.BigQuery.BaseConfiguration;
19
- const backup: import("cloudly-analytics-administration/dist/Listener/BigQuery").BigQuery.BaseConfiguration;
20
- const operation: import("cloudly-analytics-administration/dist/Listener/BigQuery").BigQuery.BaseConfiguration;
21
- const transaction: import("cloudly-analytics-administration/dist/Listener/BigQuery").BigQuery.BaseConfiguration;
22
- }
@@ -1,54 +0,0 @@
1
- import { Base as ConfigBase } from "./Base";
2
- import { Mapping as AnalyticsMapping } from "./Mapping";
3
- import { Operation as ConfigOperation } from "./Operation";
4
- import { Schema as AnalyticsSchema } from "./Schema";
5
- import { Transaction as ConfigTransaction } from "./Transaction";
6
- export var Configuration;
7
- (function (Configuration) {
8
- Configuration.Mapping = AnalyticsMapping;
9
- Configuration.Schema = AnalyticsSchema;
10
- Configuration.Base = ConfigBase;
11
- Configuration.Transaction = ConfigTransaction;
12
- Configuration.Operation = ConfigOperation;
13
- function create(name, mapping, schema, config, filter) {
14
- return {
15
- name,
16
- type: "bigquery",
17
- filter: [
18
- {
19
- type: "selectively",
20
- expression: filter,
21
- },
22
- { type: "useragent" },
23
- {
24
- type: "mapping",
25
- mapping: {
26
- ...Configuration.Base.mapping,
27
- ...mapping,
28
- },
29
- },
30
- ],
31
- batchSize: 10,
32
- batchInterval: 3,
33
- ...config,
34
- tableSchema: [...Configuration.Base.schema, ...schema],
35
- };
36
- }
37
- Configuration.create = create;
38
- Configuration.backup = create("backup", { value: { selector: "value", transform: "stringify" } }, [{ name: "value", type: "STRING" }], {
39
- projectName: "paxpay-prod",
40
- datasetName: "pays_ledger",
41
- tableName: "backup",
42
- }, "source:pax2pay-worker-banking-ledger realm:within(uk, eu)");
43
- Configuration.operation = create("operations", Configuration.Operation.mapping, Configuration.Operation.schema, {
44
- projectName: "paxpay-prod",
45
- datasetName: "pays_ledger",
46
- tableName: "operations",
47
- }, "source:pax2pay-worker-banking-ledger entity:operation realm:within(uk, eu)");
48
- Configuration.transaction = create("transactions", Configuration.Transaction.mapping, Configuration.Transaction.schema, {
49
- projectName: "paxpay-prod",
50
- datasetName: "pays_ledger",
51
- tableName: "transactions",
52
- }, "source:pax2pay-worker-banking-ledger entity:transaction realm:within(uk, eu)");
53
- })(Configuration || (Configuration = {}));
54
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../","sources":["Analytics/Configuration/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,QAAQ,CAAA;AAC3C,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,WAAW,CAAA;AACvD,OAAO,EAAE,SAAS,IAAI,eAAe,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,UAAU,CAAA;AACpD,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAGhE,MAAM,KAAW,aAAa,CA0E7B;AA1ED,WAAiB,aAAa;IACf,qBAAO,GAAG,gBAAgB,CAAA;IAC1B,oBAAM,GAAG,eAAe,CAAA;IACxB,kBAAI,GAAG,UAAU,CAAA;IACjB,yBAAW,GAAG,iBAAiB,CAAA;IAC/B,uBAAS,GAAG,eAAe,CAAA;IAMzC,SAAgB,MAAM,CACrB,IAAY,EACZ,OAAgB,EAChB,MAAc,EACd,MAA2B,EAC3B,MAAc;QAEd,OAAO;YACN,IAAI;YACJ,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE;gBACP;oBACC,IAAI,EAAE,aAAa;oBACnB,UAAU,EAAE,MAAM;iBAClB;gBACD,EAAE,IAAI,EAAE,WAAW,EAAE;gBACrB;oBACC,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE;wBACR,GAAG,cAAA,IAAI,CAAC,OAAO;wBACf,GAAG,OAAO;qBACV;iBACD;aACD;YACD,SAAS,EAAE,EAAE;YACb,aAAa,EAAE,CAAC;YAChB,GAAG,MAAM;YACT,WAAW,EAAE,CAAC,GAAG,cAAA,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC;SACxC,CAAA;IACF,CAAC;IA7Be,oBAAM,SA6BrB,CAAA;IACY,oBAAM,GAAG,MAAM,CAC3B,QAAQ,EACR,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,EACxD,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EACnC;QACC,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE,aAAa;QAC1B,SAAS,EAAE,QAAQ;KACnB,EACD,2DAA2D,CAC3D,CAAA;IACY,uBAAS,GAAG,MAAM,CAC9B,YAAY,EACZ,cAAA,SAAS,CAAC,OAAO,EACjB,cAAA,SAAS,CAAC,MAAM,EAChB;QACC,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE,aAAa;QAC1B,SAAS,EAAE,YAAY;KACvB,EACD,4EAA4E,CAC5E,CAAA;IACY,yBAAW,GAAG,MAAM,CAChC,cAAc,EACd,cAAA,WAAW,CAAC,OAAO,EACnB,cAAA,WAAW,CAAC,MAAM,EAClB;QACC,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE,aAAa;QAC1B,SAAS,EAAE,cAAc;KACzB,EACD,8EAA8E,CAC9E,CAAA;AACF,CAAC,EA1EgB,aAAa,KAAb,aAAa,QA0E7B"}