@pax2pay/model-banking 0.1.241 → 0.1.242

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.
@@ -0,0 +1,14 @@
1
+ import { gracely } from "gracely"
2
+ import { isoly } from "isoly"
3
+ import { http } from "cloudly-http"
4
+ import * as rest from "cloudly-rest"
5
+ import { Exchange } from "../Exchange"
6
+
7
+ export class Exchanges extends rest.Collection<gracely.Error> {
8
+ constructor(client: http.Client) {
9
+ super(client)
10
+ }
11
+ async fetch(currency: isoly.Currency): Promise<Exchange.Rates | gracely.Error> {
12
+ return this.client.get<Exchange.Rates>(`/exchangerates/${currency}`)
13
+ }
14
+ }
package/Client/index.ts CHANGED
@@ -4,6 +4,7 @@ import { http } from "cloudly-http"
4
4
  import { rest } from "cloudly-rest"
5
5
  import { Accounts } from "./Accounts"
6
6
  import { Cards } from "./Cards"
7
+ import { Exchanges } from "./Exchanges"
7
8
  import { Flags } from "./Flags"
8
9
  import { Operations } from "./Operations"
9
10
  import { Organizations } from "./Organizations"
@@ -20,6 +21,7 @@ export class Client extends rest.Client<gracely.Error> {
20
21
  readonly accounts = new Accounts(this.client)
21
22
  readonly cards = new Cards(this.client)
22
23
  readonly operations = new Operations(this.client)
24
+ readonly exchanges = new Exchanges(this.client)
23
25
  readonly organizations = new Organizations(this.client)
24
26
  readonly reports = new Reports(this.client)
25
27
  readonly rules = new Rules(this.client)
package/Exchange.ts ADDED
@@ -0,0 +1,21 @@
1
+ import { isoly } from "isoly"
2
+ import { isly } from "isly"
3
+
4
+ export namespace Exchange {
5
+ export type Rates = Partial<Record<isoly.Currency, Partial<Record<isoly.Currency, number>>>>
6
+ export const type = isly.record(
7
+ isly.fromIs("Currency", isoly.Currency.is),
8
+ isly.record(isly.fromIs("Currency", isoly.Currency.is), isly.number())
9
+ )
10
+ export const is = type.is
11
+ export const flaw = type.flaw
12
+ export function convert(
13
+ amount: number,
14
+ from: isoly.Currency,
15
+ to: isoly.Currency,
16
+ table: Exchange.Rates
17
+ ): number | undefined {
18
+ const rate = table[from]?.[to]
19
+ return rate && isoly.Currency.multiply(to, amount, rate)
20
+ }
21
+ }
@@ -0,0 +1,9 @@
1
+ import { gracely } from "gracely";
2
+ import { isoly } from "isoly";
3
+ import { http } from "cloudly-http";
4
+ import * as rest from "cloudly-rest";
5
+ import { Exchange } from "../Exchange";
6
+ export declare class Exchanges extends rest.Collection<gracely.Error> {
7
+ constructor(client: http.Client);
8
+ fetch(currency: isoly.Currency): Promise<Exchange.Rates | gracely.Error>;
9
+ }
@@ -0,0 +1,10 @@
1
+ import * as rest from "cloudly-rest";
2
+ export class Exchanges extends rest.Collection {
3
+ constructor(client) {
4
+ super(client);
5
+ }
6
+ async fetch(currency) {
7
+ return this.client.get(`/exchangerates/${currency}`);
8
+ }
9
+ }
10
+ //# sourceMappingURL=Exchanges.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Exchanges.js","sourceRoot":"../","sources":["Client/Exchanges.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,IAAI,MAAM,cAAc,CAAA;AAGpC,MAAM,OAAO,SAAU,SAAQ,IAAI,CAAC,UAAyB;IAC5D,YAAY,MAAmB;QAC9B,KAAK,CAAC,MAAM,CAAC,CAAA;IACd,CAAC;IACD,KAAK,CAAC,KAAK,CAAC,QAAwB;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAiB,kBAAkB,QAAQ,EAAE,CAAC,CAAA;IACrE,CAAC;CACD"}
@@ -4,6 +4,7 @@ import { http } from "cloudly-http";
4
4
  import { rest } from "cloudly-rest";
5
5
  import { Accounts } from "./Accounts";
6
6
  import { Cards } from "./Cards";
7
+ import { Exchanges } from "./Exchanges";
7
8
  import { Flags } from "./Flags";
8
9
  import { Operations } from "./Operations";
9
10
  import { Organizations } from "./Organizations";
@@ -19,6 +20,7 @@ export declare class Client extends rest.Client<gracely.Error> {
19
20
  readonly accounts: Accounts;
20
21
  readonly cards: Cards;
21
22
  readonly operations: Operations;
23
+ readonly exchanges: Exchanges;
22
24
  readonly organizations: Organizations;
23
25
  readonly reports: Reports;
24
26
  readonly rules: Rules;
@@ -3,6 +3,7 @@ import { http } from "cloudly-http";
3
3
  import { rest } from "cloudly-rest";
4
4
  import { Accounts } from "./Accounts";
5
5
  import { Cards } from "./Cards";
6
+ import { Exchanges } from "./Exchanges";
6
7
  import { Flags } from "./Flags";
7
8
  import { Operations } from "./Operations";
8
9
  import { Organizations } from "./Organizations";
@@ -18,6 +19,7 @@ export class Client extends rest.Client {
18
19
  this.accounts = new Accounts(this.client);
19
20
  this.cards = new Cards(this.client);
20
21
  this.operations = new Operations(this.client);
22
+ this.exchanges = new Exchanges(this.client);
21
23
  this.organizations = new Organizations(this.client);
22
24
  this.reports = new Reports(this.client);
23
25
  this.rules = new Rules(this.client);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../","sources":["Client/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,MAAM,OAAO,MAAO,SAAQ,IAAI,CAAC,MAAqB;IAAtD;;QAGU,aAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACpC,UAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9B,eAAU,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACxC,kBAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9C,YAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAClC,UAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9B,gBAAW,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC1C,iBAAY,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC5C,aAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACpC,UAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9B,gBAAW,GAAG,CAAC,MAAc,EAAE,WAAmB,EAAE,EAAE,CAC9D,IAAI,WAAW,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAA;QAClE,YAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAa5C,CAAC;IAXA,MAAM,CAAC,MAAM,CAA0B,MAAc,EAAE,GAAY,EAAE,IAAiC;QACrG,IAAI,UAAsC,CAAA;QAC1C,MAAM,MAAM,GAAW,IAAI,MAAM,CAChC,CAAC,UAAU,GAAG,IAAI,IAAI,CAAC,MAAM,CAAgB,MAAM,EAAE,GAAG,EAAE;YACzD,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC;SACxG,CAAC,CAAC,CACH,CAAA;QACD,IAAI,IAAI;YACP,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAA;QACxC,OAAO,MAAoB,CAAA;IAC5B,CAAC;CACD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"../","sources":["Client/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,MAAM,OAAO,MAAO,SAAQ,IAAI,CAAC,MAAqB;IAAtD;;QAGU,aAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACpC,UAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9B,eAAU,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACxC,cAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACtC,kBAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9C,YAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAClC,UAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9B,gBAAW,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC1C,iBAAY,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC5C,aAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACpC,UAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9B,gBAAW,GAAG,CAAC,MAAc,EAAE,WAAmB,EAAE,EAAE,CAC9D,IAAI,WAAW,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAA;QAClE,YAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAa5C,CAAC;IAXA,MAAM,CAAC,MAAM,CAA0B,MAAc,EAAE,GAAY,EAAE,IAAiC;QACrG,IAAI,UAAsC,CAAA;QAC1C,MAAM,MAAM,GAAW,IAAI,MAAM,CAChC,CAAC,UAAU,GAAG,IAAI,IAAI,CAAC,MAAM,CAAgB,MAAM,EAAE,GAAG,EAAE;YACzD,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC;SACxG,CAAC,CAAC,CACH,CAAA;QACD,IAAI,IAAI;YACP,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAA;QACxC,OAAO,MAAoB,CAAA;IAC5B,CAAC;CACD"}
@@ -0,0 +1,369 @@
1
+ import { isoly } from "isoly";
2
+ import { isly } from "isly";
3
+ export declare namespace Exchange {
4
+ type Rates = Partial<Record<isoly.Currency, Partial<Record<isoly.Currency, number>>>>;
5
+ const type: isly.Type<{
6
+ BTN: any;
7
+ CHE: any;
8
+ MKD: any;
9
+ AED: any;
10
+ AFN: any;
11
+ ALL: any;
12
+ AMD: any;
13
+ ANG: any;
14
+ AOA: any;
15
+ ARS: any;
16
+ AUD: any;
17
+ AWG: any;
18
+ AZN: any;
19
+ BAM: any;
20
+ BBD: any;
21
+ BDT: any;
22
+ BGN: any;
23
+ BHD: any;
24
+ BIF: any;
25
+ BMD: any;
26
+ BND: any;
27
+ BOB: any;
28
+ BOV: any;
29
+ BRL: any;
30
+ BSD: any;
31
+ BWP: any;
32
+ BYN: any;
33
+ BZD: any;
34
+ CAD: any;
35
+ CDF: any;
36
+ CHF: any;
37
+ CHW: any;
38
+ CLF: any;
39
+ CLP: any;
40
+ CNY: any;
41
+ COP: any;
42
+ COU: any;
43
+ CRC: any;
44
+ CUC: any;
45
+ CUP: any;
46
+ CVE: any;
47
+ CZK: any;
48
+ DJF: any;
49
+ DKK: any;
50
+ DOP: any;
51
+ DZD: any;
52
+ EGP: any;
53
+ ERN: any;
54
+ ETB: any;
55
+ EUR: any;
56
+ FJD: any;
57
+ FKP: any;
58
+ GBP: any;
59
+ GEL: any;
60
+ GHS: any;
61
+ GIP: any;
62
+ GMD: any;
63
+ GNF: any;
64
+ GTQ: any;
65
+ GYD: any;
66
+ HKD: any;
67
+ HNL: any;
68
+ HRK: any;
69
+ HTG: any;
70
+ HUF: any;
71
+ IDR: any;
72
+ ILS: any;
73
+ INR: any;
74
+ IQD: any;
75
+ IRR: any;
76
+ ISK: any;
77
+ JMD: any;
78
+ JOD: any;
79
+ JPY: any;
80
+ KES: any;
81
+ KGS: any;
82
+ KHR: any;
83
+ KMF: any;
84
+ KPW: any;
85
+ KRW: any;
86
+ KWD: any;
87
+ KYD: any;
88
+ KZT: any;
89
+ LAK: any;
90
+ LBP: any;
91
+ LKR: any;
92
+ LRD: any;
93
+ LSL: any;
94
+ LYD: any;
95
+ MAD: any;
96
+ MDL: any;
97
+ MGA: any;
98
+ MMK: any;
99
+ MNT: any;
100
+ MOP: any;
101
+ MRU: any;
102
+ MUR: any;
103
+ MVR: any;
104
+ MWK: any;
105
+ MXN: any;
106
+ MXV: any;
107
+ MYR: any;
108
+ MZN: any;
109
+ NAD: any;
110
+ NGN: any;
111
+ NIO: any;
112
+ NOK: any;
113
+ NPR: any;
114
+ NZD: any;
115
+ OMR: any;
116
+ PAB: any;
117
+ PEN: any;
118
+ PGK: any;
119
+ PHP: any;
120
+ PKR: any;
121
+ PLN: any;
122
+ PYG: any;
123
+ QAR: any;
124
+ RON: any;
125
+ RSD: any;
126
+ RUB: any;
127
+ RWF: any;
128
+ SAR: any;
129
+ SBD: any;
130
+ SCR: any;
131
+ SDG: any;
132
+ SEK: any;
133
+ SGD: any;
134
+ SHP: any;
135
+ SLL: any;
136
+ SOS: any;
137
+ SRD: any;
138
+ SSP: any;
139
+ STN: any;
140
+ SVC: any;
141
+ SYP: any;
142
+ SZL: any;
143
+ THB: any;
144
+ TJS: any;
145
+ TMT: any;
146
+ TND: any;
147
+ TOP: any;
148
+ TRY: any;
149
+ TTD: any;
150
+ TWD: any;
151
+ TZS: any;
152
+ UAH: any;
153
+ UGX: any;
154
+ USD: any;
155
+ USN: any;
156
+ UYI: any;
157
+ UYU: any;
158
+ UYW: any;
159
+ UZS: any;
160
+ VES: any;
161
+ VND: any;
162
+ VUV: any;
163
+ WST: any;
164
+ XAF: any;
165
+ XAG: any;
166
+ XAU: any;
167
+ XBA: any;
168
+ XBB: any;
169
+ XBC: any;
170
+ XBD: any;
171
+ XCD: any;
172
+ XDR: any;
173
+ XOF: any;
174
+ XPD: any;
175
+ XPF: any;
176
+ XPT: any;
177
+ XSU: any;
178
+ XTS: any;
179
+ XUA: any;
180
+ XXX: any;
181
+ YER: any;
182
+ ZAR: any;
183
+ ZMW: any;
184
+ ZWL: any;
185
+ }>;
186
+ const is: isly.Type.IsFunction<{
187
+ BTN: any;
188
+ CHE: any;
189
+ MKD: any;
190
+ AED: any;
191
+ AFN: any;
192
+ ALL: any;
193
+ AMD: any;
194
+ ANG: any;
195
+ AOA: any;
196
+ ARS: any;
197
+ AUD: any;
198
+ AWG: any;
199
+ AZN: any;
200
+ BAM: any;
201
+ BBD: any;
202
+ BDT: any;
203
+ BGN: any;
204
+ BHD: any;
205
+ BIF: any;
206
+ BMD: any;
207
+ BND: any;
208
+ BOB: any;
209
+ BOV: any;
210
+ BRL: any;
211
+ BSD: any;
212
+ BWP: any;
213
+ BYN: any;
214
+ BZD: any;
215
+ CAD: any;
216
+ CDF: any;
217
+ CHF: any;
218
+ CHW: any;
219
+ CLF: any;
220
+ CLP: any;
221
+ CNY: any;
222
+ COP: any;
223
+ COU: any;
224
+ CRC: any;
225
+ CUC: any;
226
+ CUP: any;
227
+ CVE: any;
228
+ CZK: any;
229
+ DJF: any;
230
+ DKK: any;
231
+ DOP: any;
232
+ DZD: any;
233
+ EGP: any;
234
+ ERN: any;
235
+ ETB: any;
236
+ EUR: any;
237
+ FJD: any;
238
+ FKP: any;
239
+ GBP: any;
240
+ GEL: any;
241
+ GHS: any;
242
+ GIP: any;
243
+ GMD: any;
244
+ GNF: any;
245
+ GTQ: any;
246
+ GYD: any;
247
+ HKD: any;
248
+ HNL: any;
249
+ HRK: any;
250
+ HTG: any;
251
+ HUF: any;
252
+ IDR: any;
253
+ ILS: any;
254
+ INR: any;
255
+ IQD: any;
256
+ IRR: any;
257
+ ISK: any;
258
+ JMD: any;
259
+ JOD: any;
260
+ JPY: any;
261
+ KES: any;
262
+ KGS: any;
263
+ KHR: any;
264
+ KMF: any;
265
+ KPW: any;
266
+ KRW: any;
267
+ KWD: any;
268
+ KYD: any;
269
+ KZT: any;
270
+ LAK: any;
271
+ LBP: any;
272
+ LKR: any;
273
+ LRD: any;
274
+ LSL: any;
275
+ LYD: any;
276
+ MAD: any;
277
+ MDL: any;
278
+ MGA: any;
279
+ MMK: any;
280
+ MNT: any;
281
+ MOP: any;
282
+ MRU: any;
283
+ MUR: any;
284
+ MVR: any;
285
+ MWK: any;
286
+ MXN: any;
287
+ MXV: any;
288
+ MYR: any;
289
+ MZN: any;
290
+ NAD: any;
291
+ NGN: any;
292
+ NIO: any;
293
+ NOK: any;
294
+ NPR: any;
295
+ NZD: any;
296
+ OMR: any;
297
+ PAB: any;
298
+ PEN: any;
299
+ PGK: any;
300
+ PHP: any;
301
+ PKR: any;
302
+ PLN: any;
303
+ PYG: any;
304
+ QAR: any;
305
+ RON: any;
306
+ RSD: any;
307
+ RUB: any;
308
+ RWF: any;
309
+ SAR: any;
310
+ SBD: any;
311
+ SCR: any;
312
+ SDG: any;
313
+ SEK: any;
314
+ SGD: any;
315
+ SHP: any;
316
+ SLL: any;
317
+ SOS: any;
318
+ SRD: any;
319
+ SSP: any;
320
+ STN: any;
321
+ SVC: any;
322
+ SYP: any;
323
+ SZL: any;
324
+ THB: any;
325
+ TJS: any;
326
+ TMT: any;
327
+ TND: any;
328
+ TOP: any;
329
+ TRY: any;
330
+ TTD: any;
331
+ TWD: any;
332
+ TZS: any;
333
+ UAH: any;
334
+ UGX: any;
335
+ USD: any;
336
+ USN: any;
337
+ UYI: any;
338
+ UYU: any;
339
+ UYW: any;
340
+ UZS: any;
341
+ VES: any;
342
+ VND: any;
343
+ VUV: any;
344
+ WST: any;
345
+ XAF: any;
346
+ XAG: any;
347
+ XAU: any;
348
+ XBA: any;
349
+ XBB: any;
350
+ XBC: any;
351
+ XBD: any;
352
+ XCD: any;
353
+ XDR: any;
354
+ XOF: any;
355
+ XPD: any;
356
+ XPF: any;
357
+ XPT: any;
358
+ XSU: any;
359
+ XTS: any;
360
+ XUA: any;
361
+ XXX: any;
362
+ YER: any;
363
+ ZAR: any;
364
+ ZMW: any;
365
+ ZWL: any;
366
+ }>;
367
+ const flaw: isly.Type.FlawFunction;
368
+ function convert(amount: number, from: isoly.Currency, to: isoly.Currency, table: Exchange.Rates): number | undefined;
369
+ }
@@ -0,0 +1,14 @@
1
+ import { isoly } from "isoly";
2
+ import { isly } from "isly";
3
+ export var Exchange;
4
+ (function (Exchange) {
5
+ Exchange.type = isly.record(isly.fromIs("Currency", isoly.Currency.is), isly.record(isly.fromIs("Currency", isoly.Currency.is), isly.number()));
6
+ Exchange.is = Exchange.type.is;
7
+ Exchange.flaw = Exchange.type.flaw;
8
+ function convert(amount, from, to, table) {
9
+ const rate = table[from]?.[to];
10
+ return rate && isoly.Currency.multiply(to, amount, rate);
11
+ }
12
+ Exchange.convert = convert;
13
+ })(Exchange || (Exchange = {}));
14
+ //# sourceMappingURL=Exchange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Exchange.js","sourceRoot":"../","sources":["Exchange.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,MAAM,KAAW,QAAQ,CAiBxB;AAjBD,WAAiB,QAAQ;IAEX,aAAI,GAAG,IAAI,CAAC,MAAM,CAC9B,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,EAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CACtE,CAAA;IACY,WAAE,GAAG,SAAA,IAAI,CAAC,EAAE,CAAA;IACZ,aAAI,GAAG,SAAA,IAAI,CAAC,IAAI,CAAA;IAC7B,SAAgB,OAAO,CACtB,MAAc,EACd,IAAoB,EACpB,EAAkB,EAClB,KAAqB;QAErB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QAC9B,OAAO,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IACzD,CAAC;IARe,gBAAO,UAQtB,CAAA;AACF,CAAC,EAjBgB,QAAQ,KAAR,QAAQ,QAiBxB"}
package/dist/pax2pay.d.ts CHANGED
@@ -23,3 +23,4 @@ export { Report } from "./Report";
23
23
  export { Flag } from "./Flag";
24
24
  export { Identity } from "./Identity";
25
25
  export { Key } from "./Key";
26
+ export { Exchange } from "./Exchange";
package/dist/pax2pay.js CHANGED
@@ -23,4 +23,5 @@ export { Report } from "./Report";
23
23
  export { Flag } from "./Flag";
24
24
  export { Identity } from "./Identity";
25
25
  export { Key } from "./Key";
26
+ export { Exchange } from "./Exchange";
26
27
  //# sourceMappingURL=pax2pay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pax2pay.js","sourceRoot":"../","sources":["pax2pay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA"}
1
+ {"version":3,"file":"pax2pay.js","sourceRoot":"../","sources":["pax2pay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pax2pay/model-banking",
3
- "version": "0.1.241",
3
+ "version": "0.1.242",
4
4
  "description": "Library containing data model types and functions for the Pax2Pay Banking API.",
5
5
  "author": "Pax2Pay Ltd",
6
6
  "license": "MIT",
package/pax2pay.ts CHANGED
@@ -23,3 +23,4 @@ export { Report } from "./Report"
23
23
  export { Flag } from "./Flag"
24
24
  export { Identity } from "./Identity"
25
25
  export { Key } from "./Key"
26
+ export { Exchange } from "./Exchange"