@pax2pay/model-banking 0.1.457 → 0.1.459
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/Quarter.ts +32 -0
- package/Settlement/Entry/fromCreatable.ts +2 -7
- package/dist/Quarter.d.ts +17 -0
- package/dist/Quarter.js +37 -0
- package/dist/Quarter.js.map +1 -0
- package/dist/Settlement/Entry/fromCreatable.d.ts +1 -2
- package/dist/Settlement/Entry/fromCreatable.js +2 -5
- package/dist/Settlement/Entry/fromCreatable.js.map +1 -1
- package/dist/pax2pay.d.ts +1 -0
- package/dist/pax2pay.js +1 -0
- package/dist/pax2pay.js.map +1 -1
- package/package.json +1 -1
- package/pax2pay.ts +1 -0
package/Quarter.ts
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { isoly } from "isoly"
|
|
2
|
+
import { isly } from "isly"
|
|
3
|
+
|
|
4
|
+
export type Quarter = typeof Quarter.values[number]
|
|
5
|
+
export namespace Quarter {
|
|
6
|
+
export const values = ["Q1", "Q2", "Q3", "Q4"] as const
|
|
7
|
+
export const type = isly.string<Quarter>(values)
|
|
8
|
+
export function from(date: isoly.Date): Quarter {
|
|
9
|
+
const month = isoly.Date.getMonth(date)
|
|
10
|
+
return month < 3 ? "Q1" : month < 6 ? "Q2" : month < 9 ? "Q3" : "Q4"
|
|
11
|
+
}
|
|
12
|
+
export function now() {
|
|
13
|
+
return from(isoly.Date.now())
|
|
14
|
+
}
|
|
15
|
+
export namespace DateRange {
|
|
16
|
+
export const converter: Record<Quarter, { start: string; end: string }> = {
|
|
17
|
+
Q1: { start: "01-01", end: "03-31" },
|
|
18
|
+
Q2: { start: "04-01", end: "06-30" },
|
|
19
|
+
Q3: { start: "07-01", end: "09-30" },
|
|
20
|
+
Q4: { start: "10-01", end: "12-31" },
|
|
21
|
+
}
|
|
22
|
+
export function from(year: number | string, quarter: Quarter): isoly.DateRange | undefined {
|
|
23
|
+
const start = year + "-" + converter[quarter].start
|
|
24
|
+
const end = year + "-" + converter[quarter].end
|
|
25
|
+
return isoly.Date.is(start) && isoly.Date.is(end) ? { start, end } : undefined
|
|
26
|
+
}
|
|
27
|
+
export function now(): isoly.DateRange | undefined {
|
|
28
|
+
const now = isoly.Date.now()
|
|
29
|
+
return from(isoly.Date.getYear(now), Quarter.from(now))
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
import { gracely } from "gracely"
|
|
2
2
|
import { isoly } from "isoly"
|
|
3
|
-
import { Card } from "../../Card"
|
|
4
|
-
import { Rail } from "../../Rail"
|
|
5
3
|
import { Transaction } from "../../Transaction"
|
|
6
4
|
import type { Entry } from "."
|
|
7
5
|
import { Creatable } from "./Creatable"
|
|
8
6
|
|
|
9
7
|
export function fromCreatable(
|
|
10
8
|
creatable: Creatable,
|
|
11
|
-
transaction: Transaction.CardTransaction | gracely.Error | string
|
|
12
|
-
card?: Card
|
|
9
|
+
transaction: Transaction.CardTransaction | gracely.Error | string
|
|
13
10
|
): Entry {
|
|
14
11
|
let result: Entry
|
|
15
12
|
const reasons: string[] = []
|
|
@@ -24,14 +21,12 @@ export function fromCreatable(
|
|
|
24
21
|
reasons.push(`Transaction ${transaction.id} on account ${transaction.accountId} unable to be finalized.`)
|
|
25
22
|
if (reasons.length > 0)
|
|
26
23
|
result = { status: "failed", reason: reasons.join("\n"), ...creatable, created }
|
|
27
|
-
else if (!card)
|
|
28
|
-
result = { status: "failed", reason: "Missing card", ...creatable, created }
|
|
29
24
|
else
|
|
30
25
|
result = {
|
|
31
26
|
status: "succeeded",
|
|
32
27
|
...(creatable as Creatable.Known),
|
|
33
28
|
created,
|
|
34
|
-
card:
|
|
29
|
+
card: (transaction as Transaction.CardTransaction).account,
|
|
35
30
|
transaction: {
|
|
36
31
|
id: (transaction as Transaction.CardTransaction).id,
|
|
37
32
|
posted: (transaction as Transaction.CardTransaction).posted,
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { isoly } from "isoly";
|
|
2
|
+
import { isly } from "isly";
|
|
3
|
+
export type Quarter = typeof Quarter.values[number];
|
|
4
|
+
export declare namespace Quarter {
|
|
5
|
+
const values: readonly ["Q1", "Q2", "Q3", "Q4"];
|
|
6
|
+
const type: isly.Type<"Q1" | "Q2" | "Q3" | "Q4">;
|
|
7
|
+
function from(date: isoly.Date): Quarter;
|
|
8
|
+
function now(): "Q1" | "Q2" | "Q3" | "Q4";
|
|
9
|
+
namespace DateRange {
|
|
10
|
+
const converter: Record<Quarter, {
|
|
11
|
+
start: string;
|
|
12
|
+
end: string;
|
|
13
|
+
}>;
|
|
14
|
+
function from(year: number | string, quarter: Quarter): isoly.DateRange | undefined;
|
|
15
|
+
function now(): isoly.DateRange | undefined;
|
|
16
|
+
}
|
|
17
|
+
}
|
package/dist/Quarter.js
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { isoly } from "isoly";
|
|
2
|
+
import { isly } from "isly";
|
|
3
|
+
export var Quarter;
|
|
4
|
+
(function (Quarter) {
|
|
5
|
+
Quarter.values = ["Q1", "Q2", "Q3", "Q4"];
|
|
6
|
+
Quarter.type = isly.string(Quarter.values);
|
|
7
|
+
function from(date) {
|
|
8
|
+
const month = isoly.Date.getMonth(date);
|
|
9
|
+
return month < 3 ? "Q1" : month < 6 ? "Q2" : month < 9 ? "Q3" : "Q4";
|
|
10
|
+
}
|
|
11
|
+
Quarter.from = from;
|
|
12
|
+
function now() {
|
|
13
|
+
return from(isoly.Date.now());
|
|
14
|
+
}
|
|
15
|
+
Quarter.now = now;
|
|
16
|
+
let DateRange;
|
|
17
|
+
(function (DateRange) {
|
|
18
|
+
DateRange.converter = {
|
|
19
|
+
Q1: { start: "01-01", end: "03-31" },
|
|
20
|
+
Q2: { start: "04-01", end: "06-30" },
|
|
21
|
+
Q3: { start: "07-01", end: "09-30" },
|
|
22
|
+
Q4: { start: "10-01", end: "12-31" },
|
|
23
|
+
};
|
|
24
|
+
function from(year, quarter) {
|
|
25
|
+
const start = year + "-" + DateRange.converter[quarter].start;
|
|
26
|
+
const end = year + "-" + DateRange.converter[quarter].end;
|
|
27
|
+
return isoly.Date.is(start) && isoly.Date.is(end) ? { start, end } : undefined;
|
|
28
|
+
}
|
|
29
|
+
DateRange.from = from;
|
|
30
|
+
function now() {
|
|
31
|
+
const now = isoly.Date.now();
|
|
32
|
+
return from(isoly.Date.getYear(now), Quarter.from(now));
|
|
33
|
+
}
|
|
34
|
+
DateRange.now = now;
|
|
35
|
+
})(DateRange = Quarter.DateRange || (Quarter.DateRange = {}));
|
|
36
|
+
})(Quarter || (Quarter = {}));
|
|
37
|
+
//# sourceMappingURL=Quarter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Quarter.js","sourceRoot":"../","sources":["Quarter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,MAAM,KAAW,OAAO,CA2BvB;AA3BD,WAAiB,OAAO;IACV,cAAM,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAU,CAAA;IAC1C,YAAI,GAAG,IAAI,CAAC,MAAM,CAAU,QAAA,MAAM,CAAC,CAAA;IAChD,SAAgB,IAAI,CAAC,IAAgB;QACpC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACvC,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IACrE,CAAC;IAHe,YAAI,OAGnB,CAAA;IACD,SAAgB,GAAG;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;IAC9B,CAAC;IAFe,WAAG,MAElB,CAAA;IACD,IAAiB,SAAS,CAgBzB;IAhBD,WAAiB,SAAS;QACZ,mBAAS,GAAoD;YACzE,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE;YACpC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE;YACpC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE;YACpC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE;SACpC,CAAA;QACD,SAAgB,IAAI,CAAC,IAAqB,EAAE,OAAgB;YAC3D,MAAM,KAAK,GAAG,IAAI,GAAG,GAAG,GAAG,UAAA,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAA;YACnD,MAAM,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,UAAA,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,CAAA;YAC/C,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;QAC/E,CAAC;QAJe,cAAI,OAInB,CAAA;QACD,SAAgB,GAAG;YAClB,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;YAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;QACxD,CAAC;QAHe,aAAG,MAGlB,CAAA;IACF,CAAC,EAhBgB,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAgBzB;AACF,CAAC,EA3BgB,OAAO,KAAP,OAAO,QA2BvB"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { gracely } from "gracely";
|
|
2
|
-
import { Card } from "../../Card";
|
|
3
2
|
import { Transaction } from "../../Transaction";
|
|
4
3
|
import type { Entry } from ".";
|
|
5
4
|
import { Creatable } from "./Creatable";
|
|
6
|
-
export declare function fromCreatable(creatable: Creatable, transaction: Transaction.CardTransaction | gracely.Error | string
|
|
5
|
+
export declare function fromCreatable(creatable: Creatable, transaction: Transaction.CardTransaction | gracely.Error | string): Entry;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { gracely } from "gracely";
|
|
2
2
|
import { isoly } from "isoly";
|
|
3
|
-
|
|
4
|
-
export function fromCreatable(creatable, transaction, card) {
|
|
3
|
+
export function fromCreatable(creatable, transaction) {
|
|
5
4
|
let result;
|
|
6
5
|
const reasons = [];
|
|
7
6
|
const created = isoly.DateTime.now();
|
|
@@ -15,14 +14,12 @@ export function fromCreatable(creatable, transaction, card) {
|
|
|
15
14
|
reasons.push(`Transaction ${transaction.id} on account ${transaction.accountId} unable to be finalized.`);
|
|
16
15
|
if (reasons.length > 0)
|
|
17
16
|
result = { status: "failed", reason: reasons.join("\n"), ...creatable, created };
|
|
18
|
-
else if (!card)
|
|
19
|
-
result = { status: "failed", reason: "Missing card", ...creatable, created };
|
|
20
17
|
else
|
|
21
18
|
result = {
|
|
22
19
|
status: "succeeded",
|
|
23
20
|
...creatable,
|
|
24
21
|
created,
|
|
25
|
-
card:
|
|
22
|
+
card: transaction.account,
|
|
26
23
|
transaction: {
|
|
27
24
|
id: transaction.id,
|
|
28
25
|
posted: transaction.posted,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fromCreatable.js","sourceRoot":"../","sources":["Settlement/Entry/fromCreatable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"fromCreatable.js","sourceRoot":"../","sources":["Settlement/Entry/fromCreatable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAK7B,MAAM,UAAU,aAAa,CAC5B,SAAoB,EACpB,WAAiE;IAEjE,IAAI,MAAa,CAAA;IACjB,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAA;IACpC,IAAI,SAAS,CAAC,IAAI,IAAI,SAAS;QAC9B,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;IACpC,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC;QAChC,OAAO,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;SACzD,IAAI,OAAO,WAAW,IAAI,QAAQ;QACtC,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,qBAAqB,CAAC,CAAA;SAC9C,IAAI,WAAW,CAAC,MAAM,IAAI,WAAW;QACzC,OAAO,CAAC,IAAI,CAAC,eAAe,WAAW,CAAC,EAAE,eAAe,WAAW,CAAC,SAAS,0BAA0B,CAAC,CAAA;IAC1G,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QACrB,MAAM,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,SAAS,EAAE,OAAO,EAAE,CAAA;;QAEhF,MAAM,GAAG;YACR,MAAM,EAAE,WAAW;YACnB,GAAI,SAA6B;YACjC,OAAO;YACP,IAAI,EAAG,WAA2C,CAAC,OAAO;YAC1D,WAAW,EAAE;gBACZ,EAAE,EAAG,WAA2C,CAAC,EAAE;gBACnD,MAAM,EAAG,WAA2C,CAAC,MAAM;gBAC3D,WAAW,EAAG,WAA2C,CAAC,WAAW;aACrE;SACD,CAAA;IACF,OAAO,MAAM,CAAA;AACd,CAAC"}
|
package/dist/pax2pay.d.ts
CHANGED
package/dist/pax2pay.js
CHANGED
package/dist/pax2pay.js.map
CHANGED
|
@@ -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,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,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,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,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,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,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,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,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,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,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,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA"}
|
package/package.json
CHANGED
package/pax2pay.ts
CHANGED