@riocrypto/common 1.0.2196 → 1.0.2197

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,4 @@
1
+ import { DeferredPaymentType } from "../types/deferred-payment-type";
2
+ import { OrderStatus } from "../types/order-status";
3
+ import { Side } from "../types/side";
4
+ export declare const getLowerOrderStatuses: (side: Side, deferredPaymentType: DeferredPaymentType, currentStatus: OrderStatus, lessThanOrEqualTo?: boolean) => OrderStatus[];
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLowerOrderStatuses = void 0;
4
+ const get_order_status_rankings_1 = require("./get-order-status-rankings");
5
+ const getLowerOrderStatuses = (side, deferredPaymentType, currentStatus, lessThanOrEqualTo = false) => {
6
+ const orderStatusRanking = (0, get_order_status_rankings_1.getOrderStatusRanking)(side, deferredPaymentType);
7
+ if (lessThanOrEqualTo) {
8
+ return Object.entries(orderStatusRanking)
9
+ .filter(([_, ranking]) => ranking <=
10
+ orderStatusRanking[currentStatus])
11
+ .map(([statusKey]) => statusKey);
12
+ }
13
+ else {
14
+ return Object.entries(orderStatusRanking)
15
+ .filter(([_, ranking]) => ranking <
16
+ orderStatusRanking[currentStatus])
17
+ .map(([statusKey]) => statusKey);
18
+ }
19
+ };
20
+ exports.getLowerOrderStatuses = getLowerOrderStatuses;
@@ -0,0 +1,99 @@
1
+ import { DeferredPaymentType } from "../types/deferred-payment-type";
2
+ import { Side } from "../types/side";
3
+ export declare const BuyOrderStatusRanking: {
4
+ awaitingLimitPriceCondition: number;
5
+ created: number;
6
+ addressCheckPassed: number;
7
+ awaitingPayment: number;
8
+ processing: number;
9
+ paid: number;
10
+ sourcingLiquidity: number;
11
+ liquiditySourced: number;
12
+ filled: number;
13
+ complete: number;
14
+ };
15
+ export declare const SellOrderStatusRanking: {
16
+ awaitingLimitPriceCondition: number;
17
+ created: number;
18
+ depositAddressCreated: number;
19
+ awaitingBankPayoutDetails: number;
20
+ bankPayoutDetailsAdded: number;
21
+ awaitingPayment: number;
22
+ depositConfirmed: number;
23
+ sourcingLiquidity: number;
24
+ liquiditySourced: number;
25
+ awaitingPayout: number;
26
+ complete: number;
27
+ };
28
+ export declare const AsyncBuyOrderStatusRanking: {
29
+ awaitingLimitPriceCondition: number;
30
+ created: number;
31
+ addressCheckPassed: number;
32
+ awaitingAsyncPayout: number;
33
+ sourcingLiquidity: number;
34
+ liquiditySourced: number;
35
+ filled: number;
36
+ awaitingAsyncPayment: number;
37
+ processing: number;
38
+ complete: number;
39
+ };
40
+ export declare const AsyncSellOrderStatusRanking: {
41
+ awaitingLimitPriceCondition: number;
42
+ created: number;
43
+ depositAddressCreated: number;
44
+ awaitingBankPayoutDetails: number;
45
+ bankPayoutDetailsAdded: number;
46
+ sourcingLiquidity: number;
47
+ liquiditySourced: number;
48
+ awaitingAsyncPayout: number;
49
+ awaitingAsyncPayment: number;
50
+ processing: number;
51
+ complete: number;
52
+ };
53
+ export declare const getOrderStatusRanking: (side: Side, deferredPaymentType: DeferredPaymentType) => {
54
+ awaitingLimitPriceCondition: number;
55
+ created: number;
56
+ addressCheckPassed: number;
57
+ awaitingPayment: number;
58
+ processing: number;
59
+ paid: number;
60
+ sourcingLiquidity: number;
61
+ liquiditySourced: number;
62
+ filled: number;
63
+ complete: number;
64
+ } | {
65
+ awaitingLimitPriceCondition: number;
66
+ created: number;
67
+ depositAddressCreated: number;
68
+ awaitingBankPayoutDetails: number;
69
+ bankPayoutDetailsAdded: number;
70
+ awaitingPayment: number;
71
+ depositConfirmed: number;
72
+ sourcingLiquidity: number;
73
+ liquiditySourced: number;
74
+ awaitingPayout: number;
75
+ complete: number;
76
+ } | {
77
+ awaitingLimitPriceCondition: number;
78
+ created: number;
79
+ addressCheckPassed: number;
80
+ awaitingAsyncPayout: number;
81
+ sourcingLiquidity: number;
82
+ liquiditySourced: number;
83
+ filled: number;
84
+ awaitingAsyncPayment: number;
85
+ processing: number;
86
+ complete: number;
87
+ } | {
88
+ awaitingLimitPriceCondition: number;
89
+ created: number;
90
+ depositAddressCreated: number;
91
+ awaitingBankPayoutDetails: number;
92
+ bankPayoutDetailsAdded: number;
93
+ sourcingLiquidity: number;
94
+ liquiditySourced: number;
95
+ awaitingAsyncPayout: number;
96
+ awaitingAsyncPayment: number;
97
+ processing: number;
98
+ complete: number;
99
+ };
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOrderStatusRanking = exports.AsyncSellOrderStatusRanking = exports.AsyncBuyOrderStatusRanking = exports.SellOrderStatusRanking = exports.BuyOrderStatusRanking = void 0;
4
+ const deferred_payment_type_1 = require("../types/deferred-payment-type");
5
+ const order_status_1 = require("../types/order-status");
6
+ const side_1 = require("../types/side");
7
+ // Does not include all possible order statuses, just for a happy path flow
8
+ exports.BuyOrderStatusRanking = {
9
+ [order_status_1.OrderStatus.AwaitingLimitPriceCondition]: 0,
10
+ [order_status_1.OrderStatus.Created]: 1,
11
+ [order_status_1.OrderStatus.AddressCheckPassed]: 2,
12
+ [order_status_1.OrderStatus.AwaitingPayment]: 3,
13
+ [order_status_1.OrderStatus.Processing]: 4,
14
+ [order_status_1.OrderStatus.Paid]: 5,
15
+ [order_status_1.OrderStatus.SourcingLiquidity]: 6,
16
+ [order_status_1.OrderStatus.LiquiditySourced]: 7,
17
+ [order_status_1.OrderStatus.Filled]: 8,
18
+ [order_status_1.OrderStatus.Complete]: 10,
19
+ };
20
+ exports.SellOrderStatusRanking = {
21
+ [order_status_1.OrderStatus.AwaitingLimitPriceCondition]: 0,
22
+ [order_status_1.OrderStatus.Created]: 1,
23
+ [order_status_1.OrderStatus.DepositAddressCreated]: 2,
24
+ [order_status_1.OrderStatus.AwaitingBankPayoutDetails]: 3,
25
+ [order_status_1.OrderStatus.BankPayoutDetailsAdded]: 4,
26
+ [order_status_1.OrderStatus.AwaitingPayment]: 5,
27
+ [order_status_1.OrderStatus.DepositConfirmed]: 6,
28
+ [order_status_1.OrderStatus.SourcingLiquidity]: 7,
29
+ [order_status_1.OrderStatus.LiquiditySourced]: 8,
30
+ [order_status_1.OrderStatus.AwaitingPayout]: 9,
31
+ [order_status_1.OrderStatus.Complete]: 10,
32
+ };
33
+ exports.AsyncBuyOrderStatusRanking = {
34
+ [order_status_1.OrderStatus.AwaitingLimitPriceCondition]: 0,
35
+ [order_status_1.OrderStatus.Created]: 1,
36
+ [order_status_1.OrderStatus.AddressCheckPassed]: 2,
37
+ [order_status_1.OrderStatus.AwaitingAsyncPayout]: 3,
38
+ [order_status_1.OrderStatus.SourcingLiquidity]: 4,
39
+ [order_status_1.OrderStatus.LiquiditySourced]: 5,
40
+ [order_status_1.OrderStatus.Filled]: 6,
41
+ [order_status_1.OrderStatus.AwaitingAsyncPayment]: 7,
42
+ [order_status_1.OrderStatus.Processing]: 8,
43
+ [order_status_1.OrderStatus.Complete]: 9,
44
+ };
45
+ exports.AsyncSellOrderStatusRanking = {
46
+ [order_status_1.OrderStatus.AwaitingLimitPriceCondition]: 0,
47
+ [order_status_1.OrderStatus.Created]: 1,
48
+ [order_status_1.OrderStatus.DepositAddressCreated]: 2,
49
+ [order_status_1.OrderStatus.AwaitingBankPayoutDetails]: 3,
50
+ [order_status_1.OrderStatus.BankPayoutDetailsAdded]: 4,
51
+ [order_status_1.OrderStatus.SourcingLiquidity]: 5,
52
+ [order_status_1.OrderStatus.LiquiditySourced]: 6,
53
+ [order_status_1.OrderStatus.AwaitingAsyncPayout]: 7,
54
+ [order_status_1.OrderStatus.AwaitingAsyncPayment]: 8,
55
+ [order_status_1.OrderStatus.Processing]: 9,
56
+ [order_status_1.OrderStatus.Complete]: 10,
57
+ };
58
+ const getOrderStatusRanking = (side, deferredPaymentType) => {
59
+ if (side === side_1.Side.Buy && deferredPaymentType === deferred_payment_type_1.DeferredPaymentType.None) {
60
+ return exports.BuyOrderStatusRanking;
61
+ }
62
+ else if (side === side_1.Side.Sell &&
63
+ deferredPaymentType === deferred_payment_type_1.DeferredPaymentType.None) {
64
+ return exports.SellOrderStatusRanking;
65
+ }
66
+ else if (side === side_1.Side.Buy &&
67
+ deferredPaymentType !== deferred_payment_type_1.DeferredPaymentType.None) {
68
+ return exports.AsyncBuyOrderStatusRanking;
69
+ }
70
+ else if (side === side_1.Side.Sell &&
71
+ deferredPaymentType !== deferred_payment_type_1.DeferredPaymentType.None) {
72
+ return exports.AsyncSellOrderStatusRanking;
73
+ }
74
+ else {
75
+ throw new Error("Invalid side or deferred payment type");
76
+ }
77
+ };
78
+ exports.getOrderStatusRanking = getOrderStatusRanking;
package/build/index.d.ts CHANGED
@@ -404,5 +404,7 @@ export * from "./helpers/get-country-timezone";
404
404
  export * from "./helpers/get-days-between-agreed-two-way-settlement-date-and-payment-date";
405
405
  export * from "./helpers/get-days-until-two-way-settlement-date";
406
406
  export * from "./helpers/get-two-way-settlement-date";
407
+ export * from "./helpers/get-order-status-rankings";
408
+ export * from "./helpers/get-lower-order-statuses";
407
409
  export * from "./constants/mexico-fiscal-regimens";
408
410
  export * from "./constants/mexican-banks";
package/build/index.js CHANGED
@@ -420,5 +420,7 @@ __exportStar(require("./helpers/get-country-timezone"), exports);
420
420
  __exportStar(require("./helpers/get-days-between-agreed-two-way-settlement-date-and-payment-date"), exports);
421
421
  __exportStar(require("./helpers/get-days-until-two-way-settlement-date"), exports);
422
422
  __exportStar(require("./helpers/get-two-way-settlement-date"), exports);
423
+ __exportStar(require("./helpers/get-order-status-rankings"), exports);
424
+ __exportStar(require("./helpers/get-lower-order-statuses"), exports);
423
425
  __exportStar(require("./constants/mexico-fiscal-regimens"), exports);
424
426
  __exportStar(require("./constants/mexican-banks"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@riocrypto/common",
3
- "version": "1.0.2196",
3
+ "version": "1.0.2197",
4
4
  "description": "",
5
5
  "main": "./build/index.js",
6
6
  "types": "./build/index.d.ts",