@open-tender/store 0.2.111 → 0.3.1
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/dist/cjs/app/hooks.d.ts +1 -8
- package/dist/cjs/app/store.d.ts +3 -24
- package/dist/cjs/slices/config.js +2 -2
- package/dist/cjs/slices/kds.d.ts +183 -82
- package/dist/cjs/slices/kds.js +354 -17
- package/dist/cjs/slices/orders.d.ts +4 -61
- package/dist/cjs/slices/orders.js +6 -345
- package/dist/cjs/types/api/order.d.ts +8 -3
- package/dist/cjs/types/global.d.ts +2 -1
- package/dist/cjs/utils/orders.d.ts +7 -6
- package/dist/cjs/utils/orders.js +17 -13
- package/dist/esm/app/hooks.d.ts +1 -8
- package/dist/esm/app/store.d.ts +3 -24
- package/dist/esm/slices/config.js +2 -2
- package/dist/esm/slices/kds.d.ts +183 -82
- package/dist/esm/slices/kds.js +347 -15
- package/dist/esm/slices/orders.d.ts +4 -61
- package/dist/esm/slices/orders.js +7 -342
- package/dist/esm/types/api/order.d.ts +8 -3
- package/dist/esm/types/global.d.ts +2 -1
- package/dist/esm/utils/orders.d.ts +7 -6
- package/dist/esm/utils/orders.js +14 -11
- package/package.json +1 -1
|
@@ -1,53 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.ordersReducer = exports.
|
|
4
|
+
exports.ordersReducer = exports.selectOrdersRefund = exports.selectOrdersCurrent = exports.selectOrders = exports.setOrdersRefund = exports.setOrdersCurrent = exports.resetOrders = exports.fetchOrders = exports.OrdersActionType = void 0;
|
|
5
5
|
var tslib_1 = require("tslib");
|
|
6
6
|
var toolkit_1 = require("@reduxjs/toolkit");
|
|
7
7
|
var types_1 = require("./types");
|
|
8
8
|
var utils_1 = require("../utils");
|
|
9
|
-
var alerts_1 = require("./alerts");
|
|
10
9
|
var initialState = {
|
|
11
|
-
// businessDate: null,
|
|
12
|
-
// receiptType: 'BOTH',
|
|
13
|
-
// channelType: ['POS', 'KIOSK'],
|
|
14
|
-
// prepStatus: ['COMPLETED'],
|
|
15
|
-
// search: null,
|
|
16
10
|
entities: [],
|
|
17
11
|
loading: 'idle',
|
|
18
12
|
error: null,
|
|
19
13
|
current: null,
|
|
20
|
-
refund: null
|
|
21
|
-
counts: { current: null, future: null, qa: null },
|
|
22
|
-
itemTypes: null
|
|
14
|
+
refund: null
|
|
23
15
|
};
|
|
24
16
|
var OrdersActionType;
|
|
25
17
|
(function (OrdersActionType) {
|
|
26
18
|
OrdersActionType["FetchOrders"] = "orders/fetchOrders";
|
|
27
|
-
OrdersActionType["RefreshOrders"] = "orders/refreshOrders";
|
|
28
|
-
OrdersActionType["UpdateOrder"] = "orders/updateOrder";
|
|
29
|
-
OrdersActionType["PrintTickets"] = "orders/printTickets";
|
|
30
|
-
OrdersActionType["ResetTickets"] = "orders/resetTickets";
|
|
31
|
-
OrdersActionType["PrintReceipt"] = "orders/printReceipt";
|
|
32
|
-
OrdersActionType["PrintTicket"] = "orders/printTicket";
|
|
33
|
-
OrdersActionType["UpdateTicket"] = "orders/updateTicket";
|
|
34
19
|
})(OrdersActionType = exports.OrdersActionType || (exports.OrdersActionType = {}));
|
|
35
20
|
exports.fetchOrders = (0, toolkit_1.createAsyncThunk)(OrdersActionType.FetchOrders, function (params, _a) {
|
|
36
21
|
var getState = _a.getState, rejectWithValue = _a.rejectWithValue;
|
|
37
22
|
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
38
|
-
var api,
|
|
23
|
+
var api, args, err_1;
|
|
39
24
|
return tslib_1.__generator(this, function (_b) {
|
|
40
25
|
switch (_b.label) {
|
|
41
26
|
case 0:
|
|
42
27
|
_b.trys.push([0, 2, , 3]);
|
|
43
28
|
api = getState().config.api;
|
|
44
|
-
itemTypes = getState().orders.itemTypes;
|
|
45
29
|
args = (0, utils_1.makeFetchOrdersArgs)(params);
|
|
46
30
|
return [4 /*yield*/, api.getOrders(args)];
|
|
47
|
-
case 1:
|
|
48
|
-
orders = _b.sent();
|
|
49
|
-
counts = (0, utils_1.makeOrdersCounts)(itemTypes, orders);
|
|
50
|
-
return [2 /*return*/, { orders: orders, counts: counts }];
|
|
31
|
+
case 1: return [2 /*return*/, _b.sent()];
|
|
51
32
|
case 2:
|
|
52
33
|
err_1 = _b.sent();
|
|
53
34
|
return [2 /*return*/, rejectWithValue(err_1)];
|
|
@@ -56,226 +37,22 @@ exports.fetchOrders = (0, toolkit_1.createAsyncThunk)(OrdersActionType.FetchOrde
|
|
|
56
37
|
});
|
|
57
38
|
});
|
|
58
39
|
});
|
|
59
|
-
exports.updateOrder = (0, toolkit_1.createAsyncThunk)(OrdersActionType.UpdateOrder, function (_a, _b) {
|
|
60
|
-
var orderId = _a.orderId, data = _a.data;
|
|
61
|
-
var getState = _b.getState, dispatch = _b.dispatch;
|
|
62
|
-
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
63
|
-
var api, order, err_2, detail;
|
|
64
|
-
return tslib_1.__generator(this, function (_c) {
|
|
65
|
-
switch (_c.label) {
|
|
66
|
-
case 0:
|
|
67
|
-
_c.trys.push([0, 2, , 3]);
|
|
68
|
-
api = getState().config.api;
|
|
69
|
-
return [4 /*yield*/, api.patchOrder(orderId, data)];
|
|
70
|
-
case 1:
|
|
71
|
-
order = _c.sent();
|
|
72
|
-
dispatch((0, exports.updateOrdersOrder)(order));
|
|
73
|
-
return [3 /*break*/, 3];
|
|
74
|
-
case 2:
|
|
75
|
-
err_2 = _c.sent();
|
|
76
|
-
detail = err_2.detail;
|
|
77
|
-
dispatch((0, alerts_1.addAlert)(detail));
|
|
78
|
-
return [3 /*break*/, 3];
|
|
79
|
-
case 3: return [2 /*return*/];
|
|
80
|
-
}
|
|
81
|
-
});
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
exports.printReceipt = (0, toolkit_1.createAsyncThunk)(OrdersActionType.PrintReceipt, function (orderId, _a) {
|
|
85
|
-
var getState = _a.getState, dispatch = _a.dispatch;
|
|
86
|
-
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
87
|
-
var api, order, err_3, detail;
|
|
88
|
-
return tslib_1.__generator(this, function (_b) {
|
|
89
|
-
switch (_b.label) {
|
|
90
|
-
case 0:
|
|
91
|
-
_b.trys.push([0, 2, , 3]);
|
|
92
|
-
api = getState().config.api;
|
|
93
|
-
return [4 /*yield*/, api.postReceipt(orderId)];
|
|
94
|
-
case 1:
|
|
95
|
-
order = _b.sent();
|
|
96
|
-
dispatch((0, exports.updateOrdersOrder)(order));
|
|
97
|
-
return [3 /*break*/, 3];
|
|
98
|
-
case 2:
|
|
99
|
-
err_3 = _b.sent();
|
|
100
|
-
detail = err_3.detail;
|
|
101
|
-
dispatch((0, alerts_1.addAlert)(detail));
|
|
102
|
-
return [3 /*break*/, 3];
|
|
103
|
-
case 3: return [2 /*return*/];
|
|
104
|
-
}
|
|
105
|
-
});
|
|
106
|
-
});
|
|
107
|
-
});
|
|
108
|
-
exports.printTickets = (0, toolkit_1.createAsyncThunk)(OrdersActionType.PrintTickets, function (_a, _b) {
|
|
109
|
-
var orderId = _a.orderId, data = _a.data;
|
|
110
|
-
var getState = _b.getState, dispatch = _b.dispatch;
|
|
111
|
-
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
112
|
-
var api, order, err_4, detail;
|
|
113
|
-
return tslib_1.__generator(this, function (_c) {
|
|
114
|
-
switch (_c.label) {
|
|
115
|
-
case 0:
|
|
116
|
-
_c.trys.push([0, 2, , 3]);
|
|
117
|
-
api = getState().config.api;
|
|
118
|
-
return [4 /*yield*/, api.postTicketsPrint(orderId, data)];
|
|
119
|
-
case 1:
|
|
120
|
-
order = _c.sent();
|
|
121
|
-
dispatch((0, exports.updateOrdersOrder)(order));
|
|
122
|
-
return [3 /*break*/, 3];
|
|
123
|
-
case 2:
|
|
124
|
-
err_4 = _c.sent();
|
|
125
|
-
detail = err_4.detail;
|
|
126
|
-
dispatch((0, alerts_1.addAlert)(detail));
|
|
127
|
-
return [3 /*break*/, 3];
|
|
128
|
-
case 3: return [2 /*return*/];
|
|
129
|
-
}
|
|
130
|
-
});
|
|
131
|
-
});
|
|
132
|
-
});
|
|
133
|
-
exports.resetTickets = (0, toolkit_1.createAsyncThunk)(OrdersActionType.ResetTickets, function (orderId, _a) {
|
|
134
|
-
var getState = _a.getState, dispatch = _a.dispatch;
|
|
135
|
-
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
136
|
-
var api, order, err_5, detail;
|
|
137
|
-
return tslib_1.__generator(this, function (_b) {
|
|
138
|
-
switch (_b.label) {
|
|
139
|
-
case 0:
|
|
140
|
-
_b.trys.push([0, 2, , 3]);
|
|
141
|
-
api = getState().config.api;
|
|
142
|
-
return [4 /*yield*/, api.postTicketsReset(orderId)];
|
|
143
|
-
case 1:
|
|
144
|
-
order = _b.sent();
|
|
145
|
-
dispatch((0, exports.updateOrdersOrder)(order));
|
|
146
|
-
return [3 /*break*/, 3];
|
|
147
|
-
case 2:
|
|
148
|
-
err_5 = _b.sent();
|
|
149
|
-
detail = err_5.detail;
|
|
150
|
-
dispatch((0, alerts_1.addAlert)(detail));
|
|
151
|
-
return [3 /*break*/, 3];
|
|
152
|
-
case 3: return [2 /*return*/];
|
|
153
|
-
}
|
|
154
|
-
});
|
|
155
|
-
});
|
|
156
|
-
});
|
|
157
|
-
exports.printTicket = (0, toolkit_1.createAsyncThunk)(OrdersActionType.PrintTicket, function (_a, _b) {
|
|
158
|
-
var orderId = _a.orderId, ticketNo = _a.ticketNo, status = _a.status;
|
|
159
|
-
var getState = _b.getState, dispatch = _b.dispatch;
|
|
160
|
-
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
161
|
-
var api, data, order, err_6, detail;
|
|
162
|
-
return tslib_1.__generator(this, function (_c) {
|
|
163
|
-
switch (_c.label) {
|
|
164
|
-
case 0:
|
|
165
|
-
_c.trys.push([0, 2, , 3]);
|
|
166
|
-
api = getState().config.api;
|
|
167
|
-
data = status ? { ticket_status: status } : {};
|
|
168
|
-
return [4 /*yield*/, api.postTicketPrint(orderId, ticketNo, data)];
|
|
169
|
-
case 1:
|
|
170
|
-
order = _c.sent();
|
|
171
|
-
dispatch((0, exports.updateOrdersOrder)(order));
|
|
172
|
-
return [3 /*break*/, 3];
|
|
173
|
-
case 2:
|
|
174
|
-
err_6 = _c.sent();
|
|
175
|
-
detail = err_6.detail;
|
|
176
|
-
dispatch((0, alerts_1.addAlert)(detail));
|
|
177
|
-
return [3 /*break*/, 3];
|
|
178
|
-
case 3: return [2 /*return*/];
|
|
179
|
-
}
|
|
180
|
-
});
|
|
181
|
-
});
|
|
182
|
-
});
|
|
183
|
-
exports.updateTicket = (0, toolkit_1.createAsyncThunk)(OrdersActionType.UpdateTicket, function (_a, _b) {
|
|
184
|
-
var orderId = _a.orderId, ticketNo = _a.ticketNo, status = _a.status;
|
|
185
|
-
var getState = _b.getState, dispatch = _b.dispatch;
|
|
186
|
-
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
187
|
-
var api, order, err_7, detail;
|
|
188
|
-
return tslib_1.__generator(this, function (_c) {
|
|
189
|
-
switch (_c.label) {
|
|
190
|
-
case 0:
|
|
191
|
-
_c.trys.push([0, 2, , 3]);
|
|
192
|
-
api = getState().config.api;
|
|
193
|
-
return [4 /*yield*/, api.postTicketStatus(orderId, ticketNo, status)];
|
|
194
|
-
case 1:
|
|
195
|
-
order = _c.sent();
|
|
196
|
-
dispatch((0, exports.updateOrdersOrder)(order));
|
|
197
|
-
return [3 /*break*/, 3];
|
|
198
|
-
case 2:
|
|
199
|
-
err_7 = _c.sent();
|
|
200
|
-
detail = err_7.detail;
|
|
201
|
-
dispatch((0, alerts_1.addAlert)(detail));
|
|
202
|
-
return [3 /*break*/, 3];
|
|
203
|
-
case 3: return [2 /*return*/];
|
|
204
|
-
}
|
|
205
|
-
});
|
|
206
|
-
});
|
|
207
|
-
});
|
|
208
|
-
// export const refreshOrders = createAsyncThunk<
|
|
209
|
-
// OrdersAndCounts,
|
|
210
|
-
// void,
|
|
211
|
-
// { state: AppState; rejectValue: RequestError }
|
|
212
|
-
// >(OrdersActionType.RefreshOrders, async (_, { getState, rejectWithValue }) => {
|
|
213
|
-
// try {
|
|
214
|
-
// const { api, itemTypes } = getState().config
|
|
215
|
-
// const { businessDate, receiptType, channelType, prepStatus, search } =
|
|
216
|
-
// getState().orders
|
|
217
|
-
// const args = makeFetchOrdersArgs({
|
|
218
|
-
// businessDate,
|
|
219
|
-
// receiptType,
|
|
220
|
-
// channelType,
|
|
221
|
-
// prepStatus,
|
|
222
|
-
// search
|
|
223
|
-
// })
|
|
224
|
-
// const orders = await api.getOrders(args)
|
|
225
|
-
// const counts = makeOrdersCounts(itemTypes, orders)
|
|
226
|
-
// return { orders, counts }
|
|
227
|
-
// } catch (err) {
|
|
228
|
-
// return rejectWithValue(err as RequestError)
|
|
229
|
-
// }
|
|
230
|
-
// })
|
|
231
40
|
var ordersSlice = (0, toolkit_1.createSlice)({
|
|
232
41
|
name: types_1.ReducerType.Orders,
|
|
233
42
|
initialState: initialState,
|
|
234
43
|
reducers: {
|
|
235
44
|
resetOrders: function () { return initialState; },
|
|
236
|
-
setOrdersItemTypes: function (state, action) {
|
|
237
|
-
state.itemTypes = action.payload;
|
|
238
|
-
},
|
|
239
|
-
// setOrdersBusinessDate: (state, action) => {
|
|
240
|
-
// state.businessDate = action.payload
|
|
241
|
-
// },
|
|
242
|
-
// setOrdersChannelType: (state, action) => {
|
|
243
|
-
// state.channelType = action.payload
|
|
244
|
-
// },
|
|
245
|
-
// setOrdersPrepStatus: (state, action) => {
|
|
246
|
-
// state.prepStatus = action.payload
|
|
247
|
-
// },
|
|
248
|
-
// setOrdersSearch: (state, action) => {
|
|
249
|
-
// state.search = action.payload
|
|
250
|
-
// },
|
|
251
45
|
setOrdersCurrent: function (state, action) {
|
|
252
46
|
state.current = action.payload;
|
|
253
47
|
},
|
|
254
48
|
setOrdersRefund: function (state, action) {
|
|
255
49
|
state.refund = action.payload;
|
|
256
|
-
},
|
|
257
|
-
updateOrdersOrder: function (state, action) {
|
|
258
|
-
var order = action.payload;
|
|
259
|
-
var tz = utils_1.timezoneMap[order.timezone];
|
|
260
|
-
var updated = state.entities
|
|
261
|
-
.map(function (i) {
|
|
262
|
-
return i.order_uuid === order.order_uuid ? order : i;
|
|
263
|
-
})
|
|
264
|
-
.filter(function (i) { return i.fire_at; });
|
|
265
|
-
var entities = updated
|
|
266
|
-
.map(function (i) { return (tslib_1.__assign(tslib_1.__assign({}, i), { fireAt: (0, utils_1.isoToDate)(i.fire_at, tz) })); })
|
|
267
|
-
.sort(function (a, b) { return a.fireAt.getTime() - b.fireAt.getTime(); });
|
|
268
|
-
var counts = (0, utils_1.makeOrdersCounts)(state.itemTypes, entities);
|
|
269
|
-
var current = state.current ? order : null;
|
|
270
|
-
return tslib_1.__assign(tslib_1.__assign({}, state), { entities: entities, current: current, counts: counts });
|
|
271
50
|
}
|
|
272
51
|
},
|
|
273
52
|
extraReducers: function (builder) {
|
|
274
53
|
builder
|
|
275
54
|
.addCase(exports.fetchOrders.fulfilled, function (state, action) {
|
|
276
|
-
|
|
277
|
-
state.entities = orders;
|
|
278
|
-
state.counts = counts;
|
|
55
|
+
state.entities = action.payload;
|
|
279
56
|
state.loading = 'idle';
|
|
280
57
|
state.error = null;
|
|
281
58
|
})
|
|
@@ -285,130 +62,14 @@ var ordersSlice = (0, toolkit_1.createSlice)({
|
|
|
285
62
|
.addCase(exports.fetchOrders.rejected, function (state, action) {
|
|
286
63
|
state.error = action.payload;
|
|
287
64
|
state.loading = 'idle';
|
|
288
|
-
})
|
|
289
|
-
.addCase(exports.updateOrder.fulfilled, function (state) {
|
|
290
|
-
state.loading = 'idle';
|
|
291
|
-
state.error = null;
|
|
292
|
-
})
|
|
293
|
-
.addCase(exports.updateOrder.pending, function (state) {
|
|
294
|
-
state.loading = 'pending';
|
|
295
|
-
})
|
|
296
|
-
.addCase(exports.updateOrder.rejected, function (state) {
|
|
297
|
-
state.loading = 'idle';
|
|
298
|
-
})
|
|
299
|
-
.addCase(exports.printReceipt.fulfilled, function (state) {
|
|
300
|
-
state.loading = 'idle';
|
|
301
|
-
state.error = null;
|
|
302
|
-
})
|
|
303
|
-
.addCase(exports.printReceipt.pending, function (state) {
|
|
304
|
-
state.loading = 'pending';
|
|
305
|
-
})
|
|
306
|
-
.addCase(exports.printReceipt.rejected, function (state) {
|
|
307
|
-
state.loading = 'idle';
|
|
308
|
-
})
|
|
309
|
-
.addCase(exports.printTickets.fulfilled, function (state) {
|
|
310
|
-
state.loading = 'idle';
|
|
311
|
-
state.error = null;
|
|
312
|
-
})
|
|
313
|
-
.addCase(exports.printTickets.pending, function (state) {
|
|
314
|
-
state.loading = 'pending';
|
|
315
|
-
})
|
|
316
|
-
.addCase(exports.printTickets.rejected, function (state) {
|
|
317
|
-
state.loading = 'idle';
|
|
318
|
-
})
|
|
319
|
-
.addCase(exports.resetTickets.fulfilled, function (state) {
|
|
320
|
-
state.loading = 'idle';
|
|
321
|
-
state.error = null;
|
|
322
|
-
})
|
|
323
|
-
.addCase(exports.resetTickets.pending, function (state) {
|
|
324
|
-
state.loading = 'pending';
|
|
325
|
-
})
|
|
326
|
-
.addCase(exports.resetTickets.rejected, function (state) {
|
|
327
|
-
state.loading = 'idle';
|
|
328
|
-
})
|
|
329
|
-
.addCase(exports.printTicket.fulfilled, function (state) {
|
|
330
|
-
state.loading = 'idle';
|
|
331
|
-
state.error = null;
|
|
332
|
-
})
|
|
333
|
-
.addCase(exports.printTicket.pending, function (state) {
|
|
334
|
-
state.loading = 'pending';
|
|
335
|
-
})
|
|
336
|
-
.addCase(exports.printTicket.rejected, function (state) {
|
|
337
|
-
state.loading = 'idle';
|
|
338
|
-
})
|
|
339
|
-
.addCase(exports.updateTicket.fulfilled, function (state) {
|
|
340
|
-
state.loading = 'idle';
|
|
341
|
-
state.error = null;
|
|
342
|
-
})
|
|
343
|
-
.addCase(exports.updateTicket.pending, function (state) {
|
|
344
|
-
state.loading = 'pending';
|
|
345
|
-
})
|
|
346
|
-
.addCase(exports.updateTicket.rejected, function (state) {
|
|
347
|
-
state.loading = 'idle';
|
|
348
65
|
});
|
|
349
|
-
// .addCase(refreshOrders.fulfilled, (state, action) => {
|
|
350
|
-
// const { orders, counts } = action.payload
|
|
351
|
-
// state.entities = orders
|
|
352
|
-
// state.counts = counts
|
|
353
|
-
// state.loading = 'idle'
|
|
354
|
-
// state.error = null
|
|
355
|
-
// })
|
|
356
|
-
// .addCase(refreshOrders.pending, state => {
|
|
357
|
-
// state.loading = 'pending'
|
|
358
|
-
// })
|
|
359
|
-
// .addCase(refreshOrders.rejected, (state, action) => {
|
|
360
|
-
// state.error = action.payload
|
|
361
|
-
// state.loading = 'idle'
|
|
362
|
-
// })
|
|
363
66
|
}
|
|
364
67
|
});
|
|
365
|
-
exports.resetOrders = (_a = ordersSlice.actions, _a.resetOrders), exports.
|
|
366
|
-
// setOrdersBusinessDate,
|
|
367
|
-
// setOrdersChannelType,
|
|
368
|
-
// setOrdersPrepStatus,
|
|
369
|
-
// setOrdersSearch,
|
|
370
|
-
exports.setOrdersCurrent = _a.setOrdersCurrent, exports.setOrdersRefund = _a.setOrdersRefund, exports.updateOrdersOrder = _a.updateOrdersOrder;
|
|
371
|
-
var selectItemTypes = function (state) { return state.orders.itemTypes; };
|
|
372
|
-
exports.selectItemTypes = selectItemTypes;
|
|
68
|
+
exports.resetOrders = (_a = ordersSlice.actions, _a.resetOrders), exports.setOrdersCurrent = _a.setOrdersCurrent, exports.setOrdersRefund = _a.setOrdersRefund;
|
|
373
69
|
var selectOrders = function (state) { return state.orders; };
|
|
374
70
|
exports.selectOrders = selectOrders;
|
|
375
|
-
// export const selectOrdersArgs = (state: AppState) => {
|
|
376
|
-
// const { businessDate, receiptType, channelType, prepStatus, search } =
|
|
377
|
-
// state.orders
|
|
378
|
-
// return { businessDate, receiptType, channelType, prepStatus, search }
|
|
379
|
-
// }
|
|
380
|
-
// export const selectOrdersBusinessDate = (state: AppState) =>
|
|
381
|
-
// state.orders.businessDate
|
|
382
|
-
// export const selectOrdersSearch = (state: AppState) => state.orders.search
|
|
383
71
|
var selectOrdersCurrent = function (state) { return state.orders.current; };
|
|
384
72
|
exports.selectOrdersCurrent = selectOrdersCurrent;
|
|
385
73
|
var selectOrdersRefund = function (state) { return state.orders.refund; };
|
|
386
74
|
exports.selectOrdersRefund = selectOrdersRefund;
|
|
387
|
-
var selectCurrentOrders = function (state) {
|
|
388
|
-
var _a = state.orders, entities = _a.entities, loading = _a.loading, error = _a.error;
|
|
389
|
-
var orders = entities.filter(function (i) {
|
|
390
|
-
var tz = utils_1.timezoneMap[i.timezone];
|
|
391
|
-
var fireDate = i.fire_at ? (0, utils_1.isoToDate)(i.fire_at, tz) : null;
|
|
392
|
-
var currentDate = (0, utils_1.currentLocalDate)(tz);
|
|
393
|
-
return (0, utils_1.notDone)(i.prep_status) && fireDate && fireDate < currentDate;
|
|
394
|
-
});
|
|
395
|
-
return { orders: orders, loading: loading, error: error };
|
|
396
|
-
};
|
|
397
|
-
exports.selectCurrentOrders = selectCurrentOrders;
|
|
398
|
-
var selectFutureOrders = function (state) {
|
|
399
|
-
var _a = state.orders, entities = _a.entities, loading = _a.loading, error = _a.error;
|
|
400
|
-
var orders = entities.filter(function (i) {
|
|
401
|
-
var tz = utils_1.timezoneMap[i.timezone];
|
|
402
|
-
var fireDate = i.fire_at ? (0, utils_1.isoToDate)(i.fire_at, tz) : null;
|
|
403
|
-
var currentDate = (0, utils_1.currentLocalDate)(tz);
|
|
404
|
-
return (0, utils_1.notDone)(i.prep_status) && fireDate && fireDate > currentDate;
|
|
405
|
-
});
|
|
406
|
-
return { orders: orders, loading: loading, error: error };
|
|
407
|
-
};
|
|
408
|
-
exports.selectFutureOrders = selectFutureOrders;
|
|
409
|
-
var selectOrdersCounts = function (state) {
|
|
410
|
-
var _a = state.orders.counts, current = _a.current, future = _a.future, qa = _a.qa;
|
|
411
|
-
return { current: current, future: future, qa: qa };
|
|
412
|
-
};
|
|
413
|
-
exports.selectOrdersCounts = selectOrdersCounts;
|
|
414
75
|
exports.ordersReducer = ordersSlice.reducer;
|
|
@@ -309,12 +309,12 @@ export interface Order {
|
|
|
309
309
|
totals: OrderTotals;
|
|
310
310
|
}
|
|
311
311
|
export declare type Orders = Array<Order>;
|
|
312
|
-
export interface
|
|
312
|
+
export interface OrderKds extends Omit<Order, 'fire_at' | 'tickets' | 'expected_at'> {
|
|
313
313
|
expected_at: ISOStringOffset;
|
|
314
314
|
fire_at: ISOStringOffset;
|
|
315
315
|
tickets: OrderTickets;
|
|
316
316
|
}
|
|
317
|
-
export declare type
|
|
317
|
+
export declare type OrdersKds = Array<OrderKds>;
|
|
318
318
|
export interface FetchOrdersArgs {
|
|
319
319
|
businessDate?: DateString | null;
|
|
320
320
|
receiptType?: ReceiptType | 'BOTH';
|
|
@@ -341,7 +341,7 @@ export interface OrderCounts {
|
|
|
341
341
|
qa: Record<string, number> | null;
|
|
342
342
|
}
|
|
343
343
|
export interface OrdersAndCounts {
|
|
344
|
-
orders:
|
|
344
|
+
orders: OrdersKds;
|
|
345
345
|
counts: OrderCounts;
|
|
346
346
|
}
|
|
347
347
|
export interface OrderUpdate {
|
|
@@ -385,3 +385,8 @@ export interface Ticket {
|
|
|
385
385
|
}
|
|
386
386
|
export declare type TicketGroup = Ticket[];
|
|
387
387
|
export declare type TicketGroups = TicketGroup[];
|
|
388
|
+
export interface OrderKdsStatus {
|
|
389
|
+
NOT_DONE: boolean;
|
|
390
|
+
DONE: boolean;
|
|
391
|
+
COMPLETED: boolean;
|
|
392
|
+
}
|
|
@@ -33,4 +33,5 @@ export declare type TicketStatus = 'TODO' | 'IN_PROGRESS' | 'DONE' | 'COMPLETED'
|
|
|
33
33
|
export declare type OrderStatus = 'OPEN' | 'HELD' | 'CLOSED' | 'VOID';
|
|
34
34
|
export declare type TenderStatus = 'AUTHORIZED' | 'PAID' | 'REFUNDED' | 'VOID' | 'FAILED';
|
|
35
35
|
export declare type EntityType = 'TIME_PUNCH' | 'CASH_EVENT' | 'ORDER' | 'DEPARTMENT' | 'DEVICES' | 'DISCOUNT' | 'EMPLOYEE' | 'HOUSE_ACCOUNT' | 'LOCATION' | 'MENU' | 'MENU_PAGE' | 'SELECT_OPTION' | 'SURCHARGE' | 'TAX' | 'STORE' | 'REVENUE_CENTER' | 'ITEM_TYPE' | 'QRCODE';
|
|
36
|
-
export declare type KdsView = 'column' | 'grid' | 'list';
|
|
36
|
+
export declare type KdsView = 'column' | 'grid' | 'list' | 'tiles';
|
|
37
|
+
export declare type KdsFontSize = 'xsmall' | 'small' | 'medium' | 'large';
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { FetchOrdersAPIArgs, FetchOrdersArgs, ItemType, ItemTypes, ModifiersMetadata, OrderBuckets, OrderCart, OrderItem,
|
|
1
|
+
import { FetchOrdersAPIArgs, FetchOrdersArgs, ItemType, ItemTypes, ModifiersMetadata, OrderBuckets, OrderCart, OrderItem, OrderKds, Orders, OrdersKds, OrderTickets, OrderTimes, PrepStatus, PrepStatusMap, Store, TicketGroups, Timezone } from '../types';
|
|
2
2
|
export declare const prepStatus: PrepStatusMap;
|
|
3
3
|
export declare const makeFetchOrdersArgs: ({ businessDate, receiptType, channelType, prepStatus, search, sortBy, sortDirection, parentOrderId }: FetchOrdersArgs) => FetchOrdersAPIArgs;
|
|
4
4
|
export declare const notDone: (prep_status: PrepStatus) => boolean;
|
|
5
5
|
export declare const isDone: (prep_status: PrepStatus) => boolean;
|
|
6
6
|
export declare const notCompleted: (prep_status: PrepStatus) => boolean;
|
|
7
7
|
export declare const isCompleted: (prep_status: PrepStatus) => boolean;
|
|
8
|
-
export declare const
|
|
8
|
+
export declare const makeKdsOrders: (orders: Orders) => OrdersKds;
|
|
9
|
+
export declare const makeKdsCounts: (itemTypes: ItemTypes | null, orders: OrdersKds | null) => {
|
|
9
10
|
current: null;
|
|
10
11
|
future: null;
|
|
11
12
|
qa: null;
|
|
@@ -14,8 +15,8 @@ export declare const makeOrdersCounts: (itemTypes: ItemTypes | null, orders: Ord
|
|
|
14
15
|
future: Record<string, number>;
|
|
15
16
|
qa: Record<string, number>;
|
|
16
17
|
};
|
|
17
|
-
export declare const makeOrderBuckets: (orders:
|
|
18
|
-
export declare const makeOrderBucketsCounts: (itemTypes?: ItemTypes, orders?:
|
|
18
|
+
export declare const makeOrderBuckets: (orders: OrdersKds, tz: Timezone, prepStates?: Array<PrepStatus>) => OrderBuckets;
|
|
19
|
+
export declare const makeOrderBucketsCounts: (itemTypes?: ItemTypes, orders?: OrdersKds) => Record<string, number>;
|
|
19
20
|
export declare const makeTicketCounts: (tickets: OrderTickets) => Record<string, number>;
|
|
20
21
|
export declare const makeItemTypeSettings: (itemType: ItemType) => {
|
|
21
22
|
is_default: boolean;
|
|
@@ -24,11 +25,11 @@ export declare const makeItemTypeSettings: (itemType: ItemType) => {
|
|
|
24
25
|
is_hidden_qa: boolean;
|
|
25
26
|
print_on_completed: boolean;
|
|
26
27
|
};
|
|
27
|
-
export declare const makeItemTypesMap: (itemTypes: ItemTypes) =>
|
|
28
|
+
export declare const makeItemTypesMap: (itemTypes: ItemTypes) => Record<string, ItemType>;
|
|
28
29
|
export declare const makeCartLookup: (cart: OrderCart) => Record<string, OrderItem>;
|
|
29
30
|
export declare const makeModifiersMetadataLookup: (cart: ModifiersMetadata) => Record<string, OrderItem>;
|
|
30
31
|
export declare const makeTicketGroups: (tickets: OrderTickets, itemTypes: ItemTypes, isAssembly: boolean, cart: OrderCart, modifiersMetadata?: ModifiersMetadata | null) => TicketGroups;
|
|
31
32
|
export declare const makeDisplayCounts: (counts: Record<string, number>) => number[] | "";
|
|
32
33
|
export declare const displayCounts: (counts: Record<string, number>) => string;
|
|
33
34
|
export declare const makeBucketColor: (settings: Store, minutes: number) => "" | "error" | "alert" | "text";
|
|
34
|
-
export declare const makeOrderTimes: (order:
|
|
35
|
+
export declare const makeOrderTimes: (order: OrderKds, amPm?: boolean, warningMinutes?: number, alertMinutes?: number) => OrderTimes;
|
package/dist/cjs/utils/orders.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.makeOrderTimes = exports.makeBucketColor = exports.displayCounts = exports.makeDisplayCounts = exports.makeTicketGroups = exports.makeModifiersMetadataLookup = exports.makeCartLookup = exports.makeItemTypesMap = exports.makeItemTypeSettings = exports.makeTicketCounts = exports.makeOrderBucketsCounts = exports.makeOrderBuckets = exports.
|
|
3
|
+
exports.makeOrderTimes = exports.makeBucketColor = exports.displayCounts = exports.makeDisplayCounts = exports.makeTicketGroups = exports.makeModifiersMetadataLookup = exports.makeCartLookup = exports.makeItemTypesMap = exports.makeItemTypeSettings = exports.makeTicketCounts = exports.makeOrderBucketsCounts = exports.makeOrderBuckets = exports.makeKdsCounts = exports.makeKdsOrders = exports.isCompleted = exports.notCompleted = exports.isDone = exports.notDone = exports.makeFetchOrdersArgs = exports.prepStatus = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var datetimes_1 = require("./datetimes");
|
|
6
6
|
exports.prepStatus = {
|
|
@@ -68,6 +68,10 @@ var isCompleted = function (prep_status) {
|
|
|
68
68
|
return completeStates.includes(prep_status);
|
|
69
69
|
};
|
|
70
70
|
exports.isCompleted = isCompleted;
|
|
71
|
+
var makeKdsOrders = function (orders) {
|
|
72
|
+
return orders.filter(function (i) { return i.expected_at && i.fire_at && i.tickets; });
|
|
73
|
+
};
|
|
74
|
+
exports.makeKdsOrders = makeKdsOrders;
|
|
71
75
|
var updateCounts = function (counts, ticketCounts) {
|
|
72
76
|
// console.log('BEFORE', counts, ticketCounts)
|
|
73
77
|
var updated = Object.entries(counts).reduce(function (obj, _a) {
|
|
@@ -79,11 +83,11 @@ var updateCounts = function (counts, ticketCounts) {
|
|
|
79
83
|
// console.log('AFTER', updated)
|
|
80
84
|
return updated;
|
|
81
85
|
};
|
|
82
|
-
var
|
|
86
|
+
var makeKdsCounts = function (itemTypes, orders) {
|
|
83
87
|
if (!itemTypes || !orders) {
|
|
84
88
|
return { current: null, future: null, qa: null };
|
|
85
89
|
}
|
|
86
|
-
console.time('
|
|
90
|
+
console.time('makeKdsCounts');
|
|
87
91
|
var itemTypeCounts = itemTypes
|
|
88
92
|
.filter(function (i) { return i.is_default; })
|
|
89
93
|
.reduce(function (obj, i) {
|
|
@@ -117,10 +121,10 @@ var makeOrdersCounts = function (itemTypes, orders) {
|
|
|
117
121
|
future = updateCounts(future, ticketCounts);
|
|
118
122
|
}
|
|
119
123
|
});
|
|
120
|
-
console.timeEnd('
|
|
124
|
+
console.timeEnd('makeKdsCounts');
|
|
121
125
|
return { current: current, future: future, qa: qa };
|
|
122
126
|
};
|
|
123
|
-
exports.
|
|
127
|
+
exports.makeKdsCounts = makeKdsCounts;
|
|
124
128
|
var makeOrderBuckets = function (orders, tz, prepStates) {
|
|
125
129
|
if (prepStates === void 0) { prepStates = []; }
|
|
126
130
|
var intervals = (0, datetimes_1.makeIntervals)(tz);
|
|
@@ -178,12 +182,10 @@ var makeItemTypeSettings = function (itemType) {
|
|
|
178
182
|
};
|
|
179
183
|
exports.makeItemTypeSettings = makeItemTypeSettings;
|
|
180
184
|
var makeItemTypesMap = function (itemTypes) {
|
|
181
|
-
return itemTypes
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
}, {})
|
|
186
|
-
: null;
|
|
185
|
+
return itemTypes.reduce(function (obj, i) {
|
|
186
|
+
var _a;
|
|
187
|
+
return (tslib_1.__assign(tslib_1.__assign({}, obj), (_a = {}, _a[i.item_type_id] = i, _a)));
|
|
188
|
+
}, {});
|
|
187
189
|
};
|
|
188
190
|
exports.makeItemTypesMap = makeItemTypesMap;
|
|
189
191
|
var makeCartLookup = function (cart) {
|
|
@@ -206,17 +208,19 @@ var makeTicketGroups = function (tickets, itemTypes, isAssembly, cart, modifiers
|
|
|
206
208
|
: modifiersMetadata
|
|
207
209
|
? (0, exports.makeModifiersMetadataLookup)(modifiersMetadata)
|
|
208
210
|
: {};
|
|
211
|
+
var itemTypesMap = (0, exports.makeItemTypesMap)(itemTypes);
|
|
209
212
|
var grouped = tickets.reduce(function (obj, i) {
|
|
210
213
|
var _a;
|
|
211
214
|
var items = i.item_nos.map(function (n) { return lookup[n.toString()]; });
|
|
212
|
-
var settings = (0, exports.makeItemTypeSettings)(
|
|
215
|
+
var settings = (0, exports.makeItemTypeSettings)(itemTypesMap[i.item_type_id]);
|
|
213
216
|
var hideTicket = isAssembly && settings.is_hidden_assembly;
|
|
214
217
|
var ticket = tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, i), { items: items }), settings);
|
|
215
218
|
var group = obj[i.item_type_id.toString()] || [];
|
|
216
219
|
var newGroup = hideTicket ? group : tslib_1.__spreadArray(tslib_1.__spreadArray([], group, true), [ticket], false);
|
|
217
220
|
return tslib_1.__assign(tslib_1.__assign({}, obj), (_a = {}, _a[i.item_type_id] = newGroup, _a));
|
|
218
221
|
}, {});
|
|
219
|
-
|
|
222
|
+
var groups = Object.values(grouped);
|
|
223
|
+
return groups.filter(function (group) { return group.length; });
|
|
220
224
|
};
|
|
221
225
|
exports.makeTicketGroups = makeTicketGroups;
|
|
222
226
|
var makeDisplayCounts = function (counts) {
|
package/dist/esm/app/hooks.d.ts
CHANGED
|
@@ -8,14 +8,7 @@ export declare const useAppDispatch: () => import("redux-thunk").ThunkDispatch<i
|
|
|
8
8
|
config: import("..").ConfigState;
|
|
9
9
|
discounts: import("..").DiscountsState;
|
|
10
10
|
errorAlerts: import("..").ErrorAlertsState;
|
|
11
|
-
kds:
|
|
12
|
-
summary: boolean;
|
|
13
|
-
page: null;
|
|
14
|
-
view: null;
|
|
15
|
-
order: null;
|
|
16
|
-
businessDate: null;
|
|
17
|
-
alarm: boolean;
|
|
18
|
-
};
|
|
11
|
+
kds: import("..").KdsState;
|
|
19
12
|
menu: import("..").MenuState;
|
|
20
13
|
menuPages: import("..").MenuPagesState;
|
|
21
14
|
modal: import("..").ModalState;
|
package/dist/esm/app/store.d.ts
CHANGED
|
@@ -7,14 +7,7 @@ export declare const appReducer: import("redux").Reducer<import("redux").Combine
|
|
|
7
7
|
config: import("../slices").ConfigState;
|
|
8
8
|
discounts: import("../slices").DiscountsState;
|
|
9
9
|
errorAlerts: import("../slices").ErrorAlertsState;
|
|
10
|
-
kds:
|
|
11
|
-
summary: boolean;
|
|
12
|
-
page: null;
|
|
13
|
-
view: null;
|
|
14
|
-
order: null;
|
|
15
|
-
businessDate: null;
|
|
16
|
-
alarm: boolean;
|
|
17
|
-
};
|
|
10
|
+
kds: import("../slices").KdsState;
|
|
18
11
|
menu: import("../slices").MenuState;
|
|
19
12
|
menuPages: import("../slices").MenuPagesState;
|
|
20
13
|
modal: import("../slices").ModalState;
|
|
@@ -39,14 +32,7 @@ declare const store: import("@reduxjs/toolkit").EnhancedStore<import("redux").Co
|
|
|
39
32
|
config: import("../slices").ConfigState;
|
|
40
33
|
discounts: import("../slices").DiscountsState;
|
|
41
34
|
errorAlerts: import("../slices").ErrorAlertsState;
|
|
42
|
-
kds:
|
|
43
|
-
summary: boolean;
|
|
44
|
-
page: null;
|
|
45
|
-
view: null;
|
|
46
|
-
order: null;
|
|
47
|
-
businessDate: null;
|
|
48
|
-
alarm: boolean;
|
|
49
|
-
};
|
|
35
|
+
kds: import("../slices").KdsState;
|
|
50
36
|
menu: import("../slices").MenuState;
|
|
51
37
|
menuPages: import("../slices").MenuPagesState;
|
|
52
38
|
modal: import("../slices").ModalState;
|
|
@@ -69,14 +55,7 @@ declare const store: import("@reduxjs/toolkit").EnhancedStore<import("redux").Co
|
|
|
69
55
|
config: import("../slices").ConfigState;
|
|
70
56
|
discounts: import("../slices").DiscountsState;
|
|
71
57
|
errorAlerts: import("../slices").ErrorAlertsState;
|
|
72
|
-
kds:
|
|
73
|
-
summary: boolean;
|
|
74
|
-
page: null;
|
|
75
|
-
view: null;
|
|
76
|
-
order: null;
|
|
77
|
-
businessDate: null;
|
|
78
|
-
alarm: boolean;
|
|
79
|
-
};
|
|
58
|
+
kds: import("../slices").KdsState;
|
|
80
59
|
menu: import("../slices").MenuState;
|
|
81
60
|
menuPages: import("../slices").MenuPagesState;
|
|
82
61
|
modal: import("../slices").ModalState;
|
|
@@ -6,7 +6,7 @@ import { ReducerType } from './types';
|
|
|
6
6
|
import { timezoneMap, getUserTimezone, currentLocalDateStr } from '../utils';
|
|
7
7
|
import { errorsApi } from '../services/errors';
|
|
8
8
|
import { setCashier } from './pos';
|
|
9
|
-
import {
|
|
9
|
+
import { setKdsItemTypes } from './kds';
|
|
10
10
|
var initialState = {
|
|
11
11
|
api: null,
|
|
12
12
|
app: null,
|
|
@@ -67,7 +67,7 @@ export var fetchConfig = createAsyncThunk(ConfigActionType.FetchConfig, function
|
|
|
67
67
|
err_1 = _g.sent();
|
|
68
68
|
return [3 /*break*/, 5];
|
|
69
69
|
case 5:
|
|
70
|
-
dispatch(
|
|
70
|
+
dispatch(setKdsItemTypes(itemTypes));
|
|
71
71
|
revenueCenterId = store.revenue_center_id;
|
|
72
72
|
name_1 = config.name, ipAddress = config.ip_address, hasPinpad = config.has_pinpad, hasCashDrawer = config.has_cashdrawer;
|
|
73
73
|
return [2 /*return*/, {
|