@pax2pay/model-banking 0.1.275 → 0.1.276
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/Transaction/index.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { isly } from "isly"
|
|
|
4
4
|
import { Identifier } from "../Identifier"
|
|
5
5
|
import { Operation } from "../Operation"
|
|
6
6
|
import { Rail } from "../Rail"
|
|
7
|
+
import { Report } from "../Report"
|
|
7
8
|
import { Collect as TransactionCollect } from "./Collect"
|
|
8
9
|
import { Creatable as TransactionCreatable } from "./Creatable"
|
|
9
10
|
import { Incoming as TransactionIncoming } from "./Incoming"
|
|
@@ -192,4 +193,30 @@ export namespace Transaction {
|
|
|
192
193
|
result = "inbound"
|
|
193
194
|
return result
|
|
194
195
|
}
|
|
196
|
+
|
|
197
|
+
const csvMap: Record<string, (transaction: Transaction) => string | number | undefined> = {
|
|
198
|
+
id: (transaction: Transaction) => transaction.id,
|
|
199
|
+
created: (transaction: Transaction) => transaction.posted,
|
|
200
|
+
changed: (transaction: Transaction) => transaction.transacted,
|
|
201
|
+
by: (transaction: Transaction) => transaction.by,
|
|
202
|
+
organization: (transaction: Transaction) => transaction.organization,
|
|
203
|
+
account: (transaction: Transaction) => transaction.accountId,
|
|
204
|
+
rail: (transaction: Transaction) => transaction.rail + " " + Rail.Address.stringify(transaction.account),
|
|
205
|
+
counterpart: (transaction: Transaction) => transaction.rail + " " + Rail.Address.stringify(transaction.counterpart),
|
|
206
|
+
amount: (transaction: Transaction) => transaction.amount,
|
|
207
|
+
currency: (transaction: Transaction) => transaction.currency,
|
|
208
|
+
status: (transaction: Transaction) => transaction.status,
|
|
209
|
+
}
|
|
210
|
+
export function toCsv(transactions: Transaction[]): string {
|
|
211
|
+
return Report.toCsv(
|
|
212
|
+
Object.keys(csvMap),
|
|
213
|
+
transactions.map(transaction =>
|
|
214
|
+
Report.Row.toCsv(
|
|
215
|
+
Object.values(csvMap).map(c => c(transaction)),
|
|
216
|
+
","
|
|
217
|
+
)
|
|
218
|
+
),
|
|
219
|
+
","
|
|
220
|
+
)
|
|
221
|
+
}
|
|
195
222
|
}
|
|
@@ -75,4 +75,5 @@ export declare namespace Transaction {
|
|
|
75
75
|
function flag(transaction: Transaction, flags: string[] | undefined): void;
|
|
76
76
|
function getType(transaction: TransactionCreatable, accountName: string): Types;
|
|
77
77
|
function getDirection(amount: number): Direction;
|
|
78
|
+
function toCsv(transactions: Transaction[]): string;
|
|
78
79
|
}
|
|
@@ -4,6 +4,7 @@ import { isly } from "isly";
|
|
|
4
4
|
import { Identifier } from "../Identifier";
|
|
5
5
|
import { Operation } from "../Operation";
|
|
6
6
|
import { Rail } from "../Rail";
|
|
7
|
+
import { Report } from "../Report";
|
|
7
8
|
import { Collect as TransactionCollect } from "./Collect";
|
|
8
9
|
import { Creatable as TransactionCreatable } from "./Creatable";
|
|
9
10
|
import { Incoming as TransactionIncoming } from "./Incoming";
|
|
@@ -135,5 +136,22 @@ export var Transaction;
|
|
|
135
136
|
return result;
|
|
136
137
|
}
|
|
137
138
|
Transaction.getDirection = getDirection;
|
|
139
|
+
const csvMap = {
|
|
140
|
+
id: (transaction) => transaction.id,
|
|
141
|
+
created: (transaction) => transaction.posted,
|
|
142
|
+
changed: (transaction) => transaction.transacted,
|
|
143
|
+
by: (transaction) => transaction.by,
|
|
144
|
+
organization: (transaction) => transaction.organization,
|
|
145
|
+
account: (transaction) => transaction.accountId,
|
|
146
|
+
rail: (transaction) => transaction.rail + " " + Rail.Address.stringify(transaction.account),
|
|
147
|
+
counterpart: (transaction) => transaction.rail + " " + Rail.Address.stringify(transaction.counterpart),
|
|
148
|
+
amount: (transaction) => transaction.amount,
|
|
149
|
+
currency: (transaction) => transaction.currency,
|
|
150
|
+
status: (transaction) => transaction.status,
|
|
151
|
+
};
|
|
152
|
+
function toCsv(transactions) {
|
|
153
|
+
return Report.toCsv(Object.keys(csvMap), transactions.map(transaction => Report.Row.toCsv(Object.values(csvMap).map(c => c(transaction)), ",")), ",");
|
|
154
|
+
}
|
|
155
|
+
Transaction.toCsv = toCsv;
|
|
138
156
|
})(Transaction || (Transaction = {}));
|
|
139
157
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"../","sources":["Transaction/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAC9B,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,WAAW,CAAA;AACzD,OAAO,EAAE,SAAS,IAAI,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAC/D,OAAO,EAAE,QAAQ,IAAI,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAE,IAAI,IAAI,eAAe,EAAE,MAAM,QAAQ,CAAA;AAChD,OAAO,EAAE,SAAS,IAAI,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAC/D,OAAO,EAAE,MAAM,IAAI,iBAAiB,EAAE,MAAM,UAAU,CAAA;AA2BtD,MAAM,KAAW,WAAW,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../","sources":["Transaction/index.ts"],"names":[],"mappings":"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"}
|