@escapenavigator/utils 1.4.82 → 1.4.83
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.
|
@@ -9,7 +9,9 @@ const questroom_cancelation_type_enum_1 = require("@escapenavigator/types/dist/q
|
|
|
9
9
|
const transaction_type_enum_1 = require("@escapenavigator/types/dist/transaction/enum/transaction-type.enum");
|
|
10
10
|
const differenceInHours_1 = __importDefault(require("date-fns/differenceInHours"));
|
|
11
11
|
const get_cancelation_fee_amount_1 = require("../get-cancelation-fee-amount");
|
|
12
|
-
const getReceivedTransactions = (transactions) => transactions.filter((transaction) => transaction.type === transaction_type_enum_1.TransactionTypeEnum.INSIDE ||
|
|
12
|
+
const getReceivedTransactions = (transactions) => transactions.filter((transaction) => transaction.type === transaction_type_enum_1.TransactionTypeEnum.INSIDE ||
|
|
13
|
+
transaction.type === transaction_type_enum_1.TransactionTypeEnum.PROCESSING ||
|
|
14
|
+
transaction.type === transaction_type_enum_1.TransactionTypeEnum.SUCCEEDED);
|
|
13
15
|
var FineDescriptions;
|
|
14
16
|
(function (FineDescriptions) {
|
|
15
17
|
FineDescriptions["FINE_TON_SETUP"] = "descriptionFineNotSetup";
|
|
@@ -27,14 +29,18 @@ function getOrderCancelationState({ cancelationReason, cancelationRule, transact
|
|
|
27
29
|
* В срок ли отменяется игра. Если в срок, то мы отменяем все промокоды и сертификаты, учитываем сумму возврата только с транзакций
|
|
28
30
|
*/
|
|
29
31
|
const minHours = cancelationRule === questroom_cancelation_type_enum_1.QuestroomCancelationTypeEnum.NO ? 0 : minHoursForFreeCanceling;
|
|
30
|
-
const allowedCancelation = cancelationReason === order_cancel_reson_enum_1.OrderCancelReasonEnum.QUESTROOM ||
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
const allowedCancelation = cancelationReason === order_cancel_reson_enum_1.OrderCancelReasonEnum.QUESTROOM ||
|
|
33
|
+
(0, exports.isCancelationAllowed)({
|
|
34
|
+
date,
|
|
35
|
+
minHoursForFreeCanceling: minHours,
|
|
36
|
+
});
|
|
34
37
|
const receivedTransactions = getReceivedTransactions(transactions);
|
|
35
38
|
const receivedTransactionsAmount = receivedTransactions.reduce((acc, tr) => acc + tr.amount, 0);
|
|
36
|
-
const autoReturtAvailable = receivedTransactions.length === 1 &&
|
|
37
|
-
|
|
39
|
+
const autoReturtAvailable = receivedTransactions.length === 1 &&
|
|
40
|
+
((_a = receivedTransactions[0]) === null || _a === void 0 ? void 0 : _a.type) !== transaction_type_enum_1.TransactionTypeEnum.INSIDE;
|
|
41
|
+
const orderPayment = returnCertificates
|
|
42
|
+
? payed - certificates.reduce((acc, c) => acc + c.nominal, 0)
|
|
43
|
+
: payed;
|
|
38
44
|
const fineAmount = (0, get_cancelation_fee_amount_1.getCancelationFeeAmount)({ cancelationRule, total, minimalPrice });
|
|
39
45
|
const chargeAmount = fineAmount - orderPayment;
|
|
40
46
|
/**
|
|
@@ -74,10 +74,12 @@ describe('getOrderCancelationState function', () => {
|
|
|
74
74
|
const result = (0, _1.getOrderCancelationState)({
|
|
75
75
|
cancelationReason: order_cancel_reson_enum_1.OrderCancelReasonEnum.CLIENT,
|
|
76
76
|
cancelationRule: questroom_cancelation_type_enum_1.QuestroomCancelationTypeEnum.FULL_PRICE,
|
|
77
|
-
transactions: [
|
|
77
|
+
transactions: [
|
|
78
|
+
{
|
|
78
79
|
amount: 100,
|
|
79
80
|
type: transaction_type_enum_1.TransactionTypeEnum.INSIDE,
|
|
80
|
-
}
|
|
81
|
+
},
|
|
82
|
+
],
|
|
81
83
|
date: (0, date_fns_1.addHours)(new Date(), 50).toISOString(),
|
|
82
84
|
returnCertificates: true,
|
|
83
85
|
certificates: [],
|
|
@@ -98,10 +100,12 @@ describe('getOrderCancelationState function', () => {
|
|
|
98
100
|
const result = (0, _1.getOrderCancelationState)({
|
|
99
101
|
cancelationReason: order_cancel_reson_enum_1.OrderCancelReasonEnum.CLIENT,
|
|
100
102
|
cancelationRule: questroom_cancelation_type_enum_1.QuestroomCancelationTypeEnum.NO,
|
|
101
|
-
transactions: [
|
|
103
|
+
transactions: [
|
|
104
|
+
{
|
|
102
105
|
amount: 100,
|
|
103
106
|
type: transaction_type_enum_1.TransactionTypeEnum.INSIDE,
|
|
104
|
-
}
|
|
107
|
+
},
|
|
108
|
+
],
|
|
105
109
|
date: new Date().toISOString(),
|
|
106
110
|
returnCertificates: true,
|
|
107
111
|
certificates: [],
|
|
@@ -122,10 +126,12 @@ describe('getOrderCancelationState function', () => {
|
|
|
122
126
|
const result = (0, _1.getOrderCancelationState)({
|
|
123
127
|
cancelationReason: order_cancel_reson_enum_1.OrderCancelReasonEnum.CLIENT,
|
|
124
128
|
cancelationRule: questroom_cancelation_type_enum_1.QuestroomCancelationTypeEnum.FULL_PRICE,
|
|
125
|
-
transactions: [
|
|
129
|
+
transactions: [
|
|
130
|
+
{
|
|
126
131
|
amount: 100,
|
|
127
132
|
type: transaction_type_enum_1.TransactionTypeEnum.SUCCEEDED,
|
|
128
|
-
}
|
|
133
|
+
},
|
|
134
|
+
],
|
|
129
135
|
date: new Date().toISOString(),
|
|
130
136
|
returnCertificates: true,
|
|
131
137
|
certificates: [],
|
|
@@ -146,10 +152,12 @@ describe('getOrderCancelationState function', () => {
|
|
|
146
152
|
const result = (0, _1.getOrderCancelationState)({
|
|
147
153
|
cancelationReason: order_cancel_reson_enum_1.OrderCancelReasonEnum.CLIENT,
|
|
148
154
|
cancelationRule: questroom_cancelation_type_enum_1.QuestroomCancelationTypeEnum.HALF_PRICE,
|
|
149
|
-
transactions: [
|
|
155
|
+
transactions: [
|
|
156
|
+
{
|
|
150
157
|
amount: 100,
|
|
151
158
|
type: transaction_type_enum_1.TransactionTypeEnum.SUCCEEDED,
|
|
152
|
-
}
|
|
159
|
+
},
|
|
160
|
+
],
|
|
153
161
|
date: new Date().toISOString(),
|
|
154
162
|
returnCertificates: true,
|
|
155
163
|
certificates: [],
|
|
@@ -170,10 +178,12 @@ describe('getOrderCancelationState function', () => {
|
|
|
170
178
|
const result = (0, _1.getOrderCancelationState)({
|
|
171
179
|
cancelationReason: order_cancel_reson_enum_1.OrderCancelReasonEnum.CLIENT,
|
|
172
180
|
cancelationRule: questroom_cancelation_type_enum_1.QuestroomCancelationTypeEnum.FULL_PRICE,
|
|
173
|
-
transactions: [
|
|
181
|
+
transactions: [
|
|
182
|
+
{
|
|
174
183
|
amount: 50,
|
|
175
184
|
type: transaction_type_enum_1.TransactionTypeEnum.SUCCEEDED,
|
|
176
|
-
}
|
|
185
|
+
},
|
|
186
|
+
],
|
|
177
187
|
date: new Date().toISOString(),
|
|
178
188
|
returnCertificates: true,
|
|
179
189
|
certificates: [],
|
|
@@ -15,7 +15,10 @@ const tz_date_1 = require("../tz-date");
|
|
|
15
15
|
function getSlotCancelationDate({ date, time, minHoursForFreeCanceling, cancelationRule, timeZone, }) {
|
|
16
16
|
const minHours = cancelationRule === questroom_cancelation_type_enum_1.QuestroomCancelationTypeEnum.NO ? 0 : minHoursForFreeCanceling;
|
|
17
17
|
const zondedDate = (0, tz_date_1.convertDateToZonedDate)({
|
|
18
|
-
date,
|
|
18
|
+
date,
|
|
19
|
+
timeZone,
|
|
20
|
+
time,
|
|
21
|
+
offset: minHours * -1,
|
|
19
22
|
});
|
|
20
23
|
const d = (0, utcToZonedTime_1.default)(zondedDate.toISOString(), timeZone);
|
|
21
24
|
return {
|
package/dist/serialize-slot.js
CHANGED
|
@@ -48,7 +48,6 @@ const serializeSlot = ({ slot, order }) => {
|
|
|
48
48
|
end: (0, exports.convertTime)(slot.end),
|
|
49
49
|
tariff: (_a = slot.tariff) === null || _a === void 0 ? void 0 : _a.price,
|
|
50
50
|
breakReason: slot.breakReason,
|
|
51
|
-
customMinHours: slot.customMinHours,
|
|
52
51
|
rule: {
|
|
53
52
|
prepayment,
|
|
54
53
|
prepaymentType,
|
package/dist/tz-date.js
CHANGED
|
@@ -4,7 +4,9 @@ exports.convertUTCDateToZonedDate = exports.convertDateToZonedDate = void 0;
|
|
|
4
4
|
const date_fns_1 = require("date-fns");
|
|
5
5
|
const date_fns_tz_1 = require("date-fns-tz");
|
|
6
6
|
const convertDateToZonedDate = ({ date, timeZone, time, offset, }) => {
|
|
7
|
-
let d = typeof date === 'string'
|
|
7
|
+
let d = typeof date === 'string'
|
|
8
|
+
? (0, date_fns_1.parse)(time ? `${date} ${time}` : date, time ? 'yyyy-MM-dd HH:mm' : 'yyyy-MM-dd', new Date())
|
|
9
|
+
: date;
|
|
8
10
|
if (offset)
|
|
9
11
|
d = (0, date_fns_1.addHours)(d, offset);
|
|
10
12
|
return (0, date_fns_tz_1.zonedTimeToUtc)(d, timeZone);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@escapenavigator/utils",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.83",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"test": "jest"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@escapenavigator/types": "^1.4.
|
|
17
|
+
"@escapenavigator/types": "^1.4.81",
|
|
18
18
|
"axios": "^0.21.4",
|
|
19
19
|
"class-transformer": "^0.5.1",
|
|
20
20
|
"class-validator": "^0.13.1",
|
|
@@ -55,5 +55,5 @@
|
|
|
55
55
|
"node_modules"
|
|
56
56
|
]
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "a487b83fa9969e33854d06b3af8e5034a4bacc90"
|
|
59
59
|
}
|