@open-tender/store 0.3.4 → 0.3.6

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.
@@ -1,14 +1,17 @@
1
1
  import { AppState } from '../app';
2
- import { DateString, FetchOrdersArgs, ItemTypes, KdsFontSize, KdsView, OrderCounts, OrderKds, OrdersAndCounts, OrdersKds, OrderUpdate, RequestError, RequestErrorAPI, RequestStatus, TicketStatus, TicketStatusUpdate } from '../types';
2
+ import { DateString, FetchOrdersArgs, ItemTypes, KdsFontSize, KdsOrderType, KdsView, OrderCounts, OrderKds, OrdersAndCounts, OrdersKds, OrderUpdate, PrepStations, RequestError, RequestErrorAPI, RequestStatus, TicketStatus, TicketStatusUpdate } from '../types';
3
3
  import { ReducerType } from './types';
4
4
  export interface KdsState {
5
5
  itemTypes: ItemTypes | null;
6
+ prepStations: PrepStations;
7
+ prepStationId: number | null;
8
+ orderType: KdsOrderType;
6
9
  columns: number;
7
10
  boxes: number;
8
11
  cardWidth: number;
9
12
  fontSize: KdsFontSize;
10
13
  view: KdsView | null;
11
- page: number | null;
14
+ page: number;
12
15
  search: string | null;
13
16
  businessDate: DateString | null;
14
17
  summary: boolean;
@@ -20,10 +23,10 @@ export interface KdsState {
20
23
  }
21
24
  export declare enum KdsActionType {
22
25
  FetchKdsOrders = "kds/fetchKdsOrders",
23
- UpdateOrder = "kds/updateOrder",
26
+ UpdateKdsOrder = "kds/updateKdsOrder",
27
+ PrintKdsOrder = "kds/printKdsOrder",
24
28
  PrintTickets = "kds/printTickets",
25
29
  ResetTickets = "kds/resetTickets",
26
- PrintReceipt = "kds/printKdsOrder",
27
30
  PrintTicket = "kds/printTicket",
28
31
  UpdateTicket = "kds/updateTicket"
29
32
  }
@@ -163,12 +166,15 @@ export declare const kdsSlice: import("@reduxjs/toolkit").Slice<KdsState, {
163
166
  qa: Record<string, number>;
164
167
  };
165
168
  itemTypes: import("immer/dist/internal").WritableDraft<import("../types").ItemType>[] | null;
169
+ prepStations: import("immer/dist/internal").WritableDraft<import("../types").PrepStation>[];
170
+ prepStationId: number | null;
171
+ orderType: KdsOrderType;
166
172
  columns: number;
167
173
  boxes: number;
168
174
  cardWidth: number;
169
175
  fontSize: KdsFontSize;
170
176
  view: KdsView | null;
171
- page: number | null;
177
+ page: number;
172
178
  search: string | null;
173
179
  businessDate: DateString | null;
174
180
  summary: boolean;
@@ -184,7 +190,7 @@ export declare const selectKdsBoxes: (state: AppState) => number;
184
190
  export declare const selectKdsCardWidth: (state: AppState) => number;
185
191
  export declare const selectKdsFontSize: (state: AppState) => KdsFontSize;
186
192
  export declare const selectKdsSummary: (state: AppState) => boolean;
187
- export declare const selectKdsPage: (state: AppState) => number | null;
193
+ export declare const selectKdsPage: (state: AppState) => number;
188
194
  export declare const selectKdsPageIndex: (state: AppState) => number;
189
195
  export declare const selectKdsView: (state: AppState) => KdsView | null;
190
196
  export declare const selectKdsBusinessDate: (state: AppState) => `${number}${number}${number}${number}-${number}${number}-${number}${number}` | null;
@@ -199,11 +205,14 @@ export declare const selectKdsCurrentOrders: (state: AppState) => {
199
205
  loading: RequestStatus;
200
206
  error: RequestError;
201
207
  };
208
+ export declare const selectKdsCurrentCount: (state: AppState) => number;
202
209
  export declare const selectKdsFutureOrders: (state: AppState) => {
203
210
  orders: OrderKds[];
204
211
  loading: RequestStatus;
205
212
  error: RequestError;
206
213
  };
214
+ export declare const selectKdsFutureCount: (state: AppState) => number;
215
+ export declare const selectKdsPrepStationOrders: (state: AppState) => OrdersKds;
207
216
  export declare const selectKdsOrdersCounts: (state: AppState) => {
208
217
  current: Record<string, number> | null;
209
218
  future: Record<string, number> | null;
@@ -1,14 +1,55 @@
1
1
  "use strict";
2
2
  var _a;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.kdsReducer = exports.selectKdsOrdersCounts = exports.selectKdsFutureOrders = exports.selectKdsCurrentOrders = exports.selectKdsOrders = exports.selectKdsOrder = exports.selectKdsBusinessDate = exports.selectKdsView = exports.selectKdsPageIndex = exports.selectKdsPage = exports.selectKdsSummary = exports.selectKdsFontSize = exports.selectKdsCardWidth = exports.selectKdsBoxes = exports.selectKdsColumns = exports.selectKdsItemTypes = exports.selectKds = exports.replaceKdsOrder = exports.setKdsOrder = exports.toggleKdsSummary = exports.setKdsSearch = exports.setKdsBusinessDate = exports.setKdsView = exports.setKdsPage = exports.setKdsFontSize = exports.setKdsCardWidth = exports.setKdsBoxes = exports.setKdsColumns = exports.setKdsItemTypes = exports.resetkds = exports.kdsSlice = exports.updateTicket = exports.printTicket = exports.resetTickets = exports.printTickets = exports.printKdsOrder = exports.updateKdsOrder = exports.fetchKdsOrders = exports.KdsActionType = void 0;
4
+ exports.kdsReducer = exports.selectKdsOrdersCounts = exports.selectKdsPrepStationOrders = exports.selectKdsFutureCount = exports.selectKdsFutureOrders = exports.selectKdsCurrentCount = exports.selectKdsCurrentOrders = exports.selectKdsOrders = exports.selectKdsOrder = exports.selectKdsBusinessDate = exports.selectKdsView = exports.selectKdsPageIndex = exports.selectKdsPage = exports.selectKdsSummary = exports.selectKdsFontSize = exports.selectKdsCardWidth = exports.selectKdsBoxes = exports.selectKdsColumns = exports.selectKdsItemTypes = exports.selectKds = exports.replaceKdsOrder = exports.setKdsOrder = exports.toggleKdsSummary = exports.setKdsSearch = exports.setKdsBusinessDate = exports.setKdsView = exports.setKdsPage = exports.setKdsFontSize = exports.setKdsCardWidth = exports.setKdsBoxes = exports.setKdsColumns = exports.setKdsItemTypes = exports.resetkds = exports.kdsSlice = exports.updateTicket = exports.printTicket = exports.resetTickets = exports.printTickets = exports.printKdsOrder = exports.updateKdsOrder = exports.fetchKdsOrders = exports.KdsActionType = 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
9
  var alerts_1 = require("./alerts");
10
+ var prepStations = [
11
+ {
12
+ prep_station_id: 1,
13
+ name: 'Entrees',
14
+ item_type_ids: [4],
15
+ prep_type: 'ASSEMBLY',
16
+ assembly_options: 'PRINT_DONE',
17
+ show_print: false,
18
+ show_reset: false
19
+ },
20
+ {
21
+ prep_station_id: 2,
22
+ name: 'Sides',
23
+ item_type_ids: [5],
24
+ prep_type: 'ASSEMBLY',
25
+ assembly_options: 'MARK_DONE',
26
+ show_print: false,
27
+ show_reset: false
28
+ },
29
+ {
30
+ prep_station_id: 3,
31
+ name: 'Drinks',
32
+ item_type_ids: [6],
33
+ prep_type: 'ASSEMBLY',
34
+ assembly_options: 'PRINT_AND_DONE',
35
+ show_print: false,
36
+ show_reset: false
37
+ },
38
+ {
39
+ prep_station_id: 4,
40
+ name: 'Expo',
41
+ item_type_ids: [4, 5, 6],
42
+ prep_type: 'EXPO',
43
+ assembly_options: null,
44
+ show_print: false,
45
+ show_reset: false
46
+ }
47
+ ];
10
48
  var initialState = {
11
49
  itemTypes: null,
50
+ prepStations: prepStations,
51
+ prepStationId: null,
52
+ orderType: 'CURRENT',
12
53
  columns: 4,
13
54
  boxes: 8,
14
55
  cardWidth: 300,
@@ -27,10 +68,10 @@ var initialState = {
27
68
  var KdsActionType;
28
69
  (function (KdsActionType) {
29
70
  KdsActionType["FetchKdsOrders"] = "kds/fetchKdsOrders";
30
- KdsActionType["UpdateOrder"] = "kds/updateOrder";
71
+ KdsActionType["UpdateKdsOrder"] = "kds/updateKdsOrder";
72
+ KdsActionType["PrintKdsOrder"] = "kds/printKdsOrder";
31
73
  KdsActionType["PrintTickets"] = "kds/printTickets";
32
74
  KdsActionType["ResetTickets"] = "kds/resetTickets";
33
- KdsActionType["PrintReceipt"] = "kds/printKdsOrder";
34
75
  KdsActionType["PrintTicket"] = "kds/printTicket";
35
76
  KdsActionType["UpdateTicket"] = "kds/updateTicket";
36
77
  })(KdsActionType = exports.KdsActionType || (exports.KdsActionType = {}));
@@ -59,7 +100,7 @@ exports.fetchKdsOrders = (0, toolkit_1.createAsyncThunk)(KdsActionType.FetchKdsO
59
100
  });
60
101
  });
61
102
  });
62
- exports.updateKdsOrder = (0, toolkit_1.createAsyncThunk)(KdsActionType.UpdateOrder, function (_a, _b) {
103
+ exports.updateKdsOrder = (0, toolkit_1.createAsyncThunk)(KdsActionType.UpdateKdsOrder, function (_a, _b) {
63
104
  var orderId = _a.orderId, data = _a.data;
64
105
  var getState = _b.getState, dispatch = _b.dispatch;
65
106
  return tslib_1.__awaiter(void 0, void 0, void 0, function () {
@@ -84,7 +125,7 @@ exports.updateKdsOrder = (0, toolkit_1.createAsyncThunk)(KdsActionType.UpdateOrd
84
125
  });
85
126
  });
86
127
  });
87
- exports.printKdsOrder = (0, toolkit_1.createAsyncThunk)(KdsActionType.PrintReceipt, function (orderId, _a) {
128
+ exports.printKdsOrder = (0, toolkit_1.createAsyncThunk)(KdsActionType.PrintKdsOrder, function (orderId, _a) {
88
129
  var getState = _a.getState, dispatch = _a.dispatch;
89
130
  return tslib_1.__awaiter(void 0, void 0, void 0, function () {
90
131
  var api, order, err_3, detail;
@@ -357,9 +398,7 @@ var selectKdsSummary = function (state) { return state.kds.summary; };
357
398
  exports.selectKdsSummary = selectKdsSummary;
358
399
  var selectKdsPage = function (state) { return state.kds.page; };
359
400
  exports.selectKdsPage = selectKdsPage;
360
- var selectKdsPageIndex = function (state) {
361
- return state.kds.page ? state.kds.page - 1 : 0;
362
- };
401
+ var selectKdsPageIndex = function (state) { return state.kds.page - 1; };
363
402
  exports.selectKdsPageIndex = selectKdsPageIndex;
364
403
  var selectKdsView = function (state) { return state.kds.view; };
365
404
  exports.selectKdsView = selectKdsView;
@@ -383,6 +422,11 @@ var selectKdsCurrentOrders = function (state) {
383
422
  return { orders: filtered, loading: loading, error: error };
384
423
  };
385
424
  exports.selectKdsCurrentOrders = selectKdsCurrentOrders;
425
+ var selectKdsCurrentCount = function (state) {
426
+ var orders = (0, exports.selectKdsCurrentOrders)(state).orders;
427
+ return orders.length;
428
+ };
429
+ exports.selectKdsCurrentCount = selectKdsCurrentCount;
386
430
  var selectKdsFutureOrders = function (state) {
387
431
  var _a = state.kds, orders = _a.orders, loading = _a.loading, error = _a.error;
388
432
  var filtered = orders.filter(function (i) {
@@ -394,6 +438,19 @@ var selectKdsFutureOrders = function (state) {
394
438
  return { orders: filtered, loading: loading, error: error };
395
439
  };
396
440
  exports.selectKdsFutureOrders = selectKdsFutureOrders;
441
+ var selectKdsFutureCount = function (state) {
442
+ var orders = (0, exports.selectKdsFutureOrders)(state).orders;
443
+ return orders.length;
444
+ };
445
+ exports.selectKdsFutureCount = selectKdsFutureCount;
446
+ var selectKdsPrepStationOrders = function (state) {
447
+ var _a = state.kds, prepStations = _a.prepStations, prepStationId = _a.prepStationId, orderType = _a.orderType, orders = _a.orders;
448
+ var prepStation = prepStations.find(function (i) { return i.prep_station_id === prepStationId; });
449
+ if (!prepStation)
450
+ return [];
451
+ return (0, utils_1.makeOrdersForPrepStation)(orders, prepStation, orderType);
452
+ };
453
+ exports.selectKdsPrepStationOrders = selectKdsPrepStationOrders;
397
454
  var selectKdsOrdersCounts = function (state) {
398
455
  var _a = state.kds.counts, current = _a.current, future = _a.future, qa = _a.qa;
399
456
  return { current: current, future: future, qa: qa };
@@ -1,4 +1,5 @@
1
- import { IpAddress, PrepStatus } from '../global';
1
+ import { IpAddress } from '../global';
2
+ import { PrepStatus } from './kds';
2
3
  export interface Config {
3
4
  backup_printer_ip_address: IpAddress | null;
4
5
  backup_printer_use_beeper: boolean;
@@ -10,6 +10,7 @@ export * from './employee';
10
10
  export * from './errorAlerts';
11
11
  export * from './favorite';
12
12
  export * from './giftCard';
13
+ export * from './kds';
13
14
  export * from './menu';
14
15
  export * from './menuPages';
15
16
  export * from './messages';
@@ -13,6 +13,7 @@ tslib_1.__exportStar(require("./employee"), exports);
13
13
  tslib_1.__exportStar(require("./errorAlerts"), exports);
14
14
  tslib_1.__exportStar(require("./favorite"), exports);
15
15
  tslib_1.__exportStar(require("./giftCard"), exports);
16
+ tslib_1.__exportStar(require("./kds"), exports);
16
17
  tslib_1.__exportStar(require("./menu"), exports);
17
18
  tslib_1.__exportStar(require("./menuPages"), exports);
18
19
  tslib_1.__exportStar(require("./messages"), exports);
@@ -0,0 +1,30 @@
1
+ export declare type PrepStatus = 'TODO' | 'IN_PROGRESS' | 'DONE' | 'COMPLETED' | 'FULFILLED';
2
+ export declare type PrepStatusMap = {
3
+ [Property in PrepStatus]: PrepStatus;
4
+ };
5
+ export declare type TicketStatus = 'TODO' | 'IN_PROGRESS' | 'DONE' | 'COMPLETED';
6
+ export declare type KdsView = 'column' | 'grid' | 'list' | 'tiles';
7
+ export declare type KdsFontSize = 'xsmall' | 'small' | 'medium' | 'large';
8
+ export declare type KdsPrepType = 'ASSEMBLY' | 'EXPO';
9
+ export declare type KdsOrderType = 'CURRENT' | 'FUTURE' | 'COMPLETED';
10
+ export declare type KdsAssemblyOptions = 'AUTO_PRINT' | 'PRINT_DONE' | 'MARK_DONE' | 'PRINT_AND_DONE' | null;
11
+ export interface PrepStation {
12
+ prep_station_id: number;
13
+ name: string;
14
+ item_type_ids: number[];
15
+ prep_type: KdsPrepType;
16
+ assembly_options: KdsAssemblyOptions;
17
+ show_print: boolean;
18
+ show_reset: boolean;
19
+ }
20
+ export declare type PrepStations = PrepStation[];
21
+ export interface KdsTerminal {
22
+ name: string;
23
+ ipAddress: string;
24
+ prepStations: PrepStations;
25
+ defaultView: KdsView;
26
+ columns: number;
27
+ boxes: number;
28
+ cardWidth: number;
29
+ fontSize: KdsFontSize;
30
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,6 +1,7 @@
1
1
  import { DateString, ISOStringOffset, TimezonePython } from '../datetimes';
2
- import { CardType, ChannelType, Decimal, Money, NegativeMoney, OrderStatus, OrderType, PrepStatus, ReceiptType, ServiceType, SurchargeType, Temperature, TenderStatus, TenderType, TicketStatus } from '../global';
2
+ import { CardType, ChannelType, Decimal, Money, NegativeMoney, OrderStatus, OrderType, ReceiptType, ServiceType, SurchargeType, Temperature, TenderStatus, TenderType } from '../global';
3
3
  import { Address, Customer } from './customer';
4
+ import { PrepStatus, TicketStatus } from './kds';
4
5
  export interface OrderChannel {
5
6
  ext_id?: string | null;
6
7
  ext_name?: string | null;
@@ -25,16 +25,9 @@ export declare type TaxTypeInt = 1 | 2;
25
25
  export declare type Temperature = 'Hot' | 'Cold';
26
26
  export declare type ReceiptType = 'SALE' | 'REFUND';
27
27
  export declare type ChannelType = 'POS' | 'ONLINE' | 'APP' | 'PHONE' | 'KIOSK' | 'PORTAL';
28
- export declare type PrepStatus = 'TODO' | 'IN_PROGRESS' | 'DONE' | 'COMPLETED' | 'FULFILLED';
29
- export declare type PrepStatusMap = {
30
- [Property in PrepStatus]: PrepStatus;
31
- };
32
- export declare type TicketStatus = 'TODO' | 'IN_PROGRESS' | 'DONE' | 'COMPLETED';
33
28
  export declare type OrderStatus = 'OPEN' | 'HELD' | 'CLOSED' | 'VOID';
34
29
  export declare type TenderStatus = 'AUTHORIZED' | 'PAID' | 'REFUNDED' | 'VOID' | 'FAILED';
35
30
  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' | 'tiles';
37
- export declare type KdsFontSize = 'xsmall' | 'small' | 'medium' | 'large';
38
31
  export interface PicklistOption {
39
32
  name: string;
40
33
  value: string | number;
@@ -1,4 +1,4 @@
1
- import { FetchOrdersAPIArgs, FetchOrdersArgs, ItemType, ItemTypes, ModifiersMetadata, OrderBuckets, OrderCart, OrderItem, OrderKds, Orders, OrdersKds, OrderTickets, OrderTimes, PrepStatus, PrepStatusMap, Store, TicketGroups, Timezone } from '../types';
1
+ import { FetchOrdersAPIArgs, FetchOrdersArgs, ItemType, ItemTypes, KdsOrderType, ModifiersMetadata, OrderBuckets, OrderCart, OrderItem, OrderKds, Orders, OrdersKds, OrderTickets, OrderTimes, PrepStation, 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;
@@ -6,6 +6,12 @@ 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
8
  export declare const makeKdsOrders: (orders: Orders) => OrdersKds;
9
+ export declare const makeCurrentOrders: (orders: OrdersKds) => OrdersKds;
10
+ export declare const makeFutureOrders: (orders: OrdersKds) => OrdersKds;
11
+ export declare const makeCompletedOrders: (orders: OrdersKds) => OrdersKds;
12
+ export declare const makeOrdersOfType: (orders: OrdersKds, orderType: KdsOrderType) => OrdersKds;
13
+ export declare const filterOrdersByItemType: (orders: OrdersKds, itemTypeIds: number[]) => OrdersKds;
14
+ export declare const makeOrdersForPrepStation: (orders: OrdersKds, prepStation: PrepStation, orderType: KdsOrderType) => OrdersKds;
9
15
  export declare const makeKdsCounts: (itemTypes: ItemTypes | null, orders: OrdersKds | null) => {
10
16
  current: null;
11
17
  future: null;
@@ -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.makeKdsCounts = exports.makeKdsOrders = exports.isCompleted = exports.notCompleted = exports.isDone = exports.notDone = exports.makeFetchOrdersArgs = exports.prepStatus = void 0;
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.makeOrdersForPrepStation = exports.filterOrdersByItemType = exports.makeOrdersOfType = exports.makeCompletedOrders = exports.makeFutureOrders = exports.makeCurrentOrders = 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 = {
@@ -72,6 +72,69 @@ var makeKdsOrders = function (orders) {
72
72
  return orders.filter(function (i) { return i.expected_at && i.fire_at && i.tickets; });
73
73
  };
74
74
  exports.makeKdsOrders = makeKdsOrders;
75
+ var makeCurrentOrders = function (orders) {
76
+ return orders.filter(function (i) {
77
+ var tz = datetimes_1.timezoneMap[i.timezone];
78
+ var fireDate = i.fire_at ? (0, datetimes_1.isoToDate)(i.fire_at, tz) : null;
79
+ var currentDate = (0, datetimes_1.currentLocalDate)(tz);
80
+ return (0, exports.notCompleted)(i.prep_status) && fireDate && fireDate < currentDate;
81
+ });
82
+ };
83
+ exports.makeCurrentOrders = makeCurrentOrders;
84
+ var makeFutureOrders = function (orders) {
85
+ return orders.filter(function (i) {
86
+ var tz = datetimes_1.timezoneMap[i.timezone];
87
+ var fireDate = i.fire_at ? (0, datetimes_1.isoToDate)(i.fire_at, tz) : null;
88
+ var currentDate = (0, datetimes_1.currentLocalDate)(tz);
89
+ return (0, exports.notCompleted)(i.prep_status) && fireDate && fireDate > currentDate;
90
+ });
91
+ };
92
+ exports.makeFutureOrders = makeFutureOrders;
93
+ var makeCompletedOrders = function (orders) {
94
+ return orders.filter(function (i) {
95
+ var tz = datetimes_1.timezoneMap[i.timezone];
96
+ var fireDate = i.fire_at ? (0, datetimes_1.isoToDate)(i.fire_at, tz) : null;
97
+ var fireDateStr = fireDate ? (0, datetimes_1.formatDate)(fireDate, 'yyyy-MM-dd') : null;
98
+ var currentDate = (0, datetimes_1.currentLocalDate)(tz);
99
+ var currentDateStr = (0, datetimes_1.formatDate)(currentDate, 'yyyy-MM-dd');
100
+ return ((0, exports.isCompleted)(i.prep_status) && fireDate && fireDateStr === currentDateStr);
101
+ });
102
+ };
103
+ exports.makeCompletedOrders = makeCompletedOrders;
104
+ var makeOrdersOfType = function (orders, orderType) {
105
+ switch (orderType) {
106
+ case 'FUTURE':
107
+ return (0, exports.makeFutureOrders)(orders);
108
+ case 'COMPLETED':
109
+ return (0, exports.makeCompletedOrders)(orders);
110
+ default:
111
+ return (0, exports.makeCurrentOrders)(orders);
112
+ }
113
+ };
114
+ exports.makeOrdersOfType = makeOrdersOfType;
115
+ var filterOrdersByItemType = function (orders, itemTypeIds) {
116
+ return orders
117
+ .reduce(function (arr, i) {
118
+ var tickets = i.tickets.filter(function (t) {
119
+ return itemTypeIds.includes(t.item_type_id);
120
+ });
121
+ return tslib_1.__spreadArray(tslib_1.__spreadArray([], arr, true), [tslib_1.__assign(tslib_1.__assign({}, i), { tickets: tickets })], false);
122
+ }, [])
123
+ .filter(function (i) { return i.tickets.length; });
124
+ };
125
+ exports.filterOrdersByItemType = filterOrdersByItemType;
126
+ var makeOrdersForPrepStation = function (orders, prepStation, orderType) {
127
+ var item_type_ids = prepStation.item_type_ids, prep_type = prepStation.prep_type;
128
+ var ordersOfType = (0, exports.makeOrdersOfType)(orders, orderType);
129
+ if (orderType === 'COMPLETED') {
130
+ return (0, exports.filterOrdersByItemType)(ordersOfType, item_type_ids);
131
+ }
132
+ var filteredOrders = prep_type === 'ASSEMBLY'
133
+ ? ordersOfType.filter(function (i) { return (0, exports.notDone)(i.prep_status); })
134
+ : ordersOfType.filter(function (i) { return i.prep_status === 'DONE'; });
135
+ return (0, exports.filterOrdersByItemType)(filteredOrders, item_type_ids);
136
+ };
137
+ exports.makeOrdersForPrepStation = makeOrdersForPrepStation;
75
138
  var updateCounts = function (counts, ticketCounts) {
76
139
  // console.log('BEFORE', counts, ticketCounts)
77
140
  var updated = Object.entries(counts).reduce(function (obj, _a) {
@@ -1,14 +1,17 @@
1
1
  import { AppState } from '../app';
2
- import { DateString, FetchOrdersArgs, ItemTypes, KdsFontSize, KdsView, OrderCounts, OrderKds, OrdersAndCounts, OrdersKds, OrderUpdate, RequestError, RequestErrorAPI, RequestStatus, TicketStatus, TicketStatusUpdate } from '../types';
2
+ import { DateString, FetchOrdersArgs, ItemTypes, KdsFontSize, KdsOrderType, KdsView, OrderCounts, OrderKds, OrdersAndCounts, OrdersKds, OrderUpdate, PrepStations, RequestError, RequestErrorAPI, RequestStatus, TicketStatus, TicketStatusUpdate } from '../types';
3
3
  import { ReducerType } from './types';
4
4
  export interface KdsState {
5
5
  itemTypes: ItemTypes | null;
6
+ prepStations: PrepStations;
7
+ prepStationId: number | null;
8
+ orderType: KdsOrderType;
6
9
  columns: number;
7
10
  boxes: number;
8
11
  cardWidth: number;
9
12
  fontSize: KdsFontSize;
10
13
  view: KdsView | null;
11
- page: number | null;
14
+ page: number;
12
15
  search: string | null;
13
16
  businessDate: DateString | null;
14
17
  summary: boolean;
@@ -20,10 +23,10 @@ export interface KdsState {
20
23
  }
21
24
  export declare enum KdsActionType {
22
25
  FetchKdsOrders = "kds/fetchKdsOrders",
23
- UpdateOrder = "kds/updateOrder",
26
+ UpdateKdsOrder = "kds/updateKdsOrder",
27
+ PrintKdsOrder = "kds/printKdsOrder",
24
28
  PrintTickets = "kds/printTickets",
25
29
  ResetTickets = "kds/resetTickets",
26
- PrintReceipt = "kds/printKdsOrder",
27
30
  PrintTicket = "kds/printTicket",
28
31
  UpdateTicket = "kds/updateTicket"
29
32
  }
@@ -163,12 +166,15 @@ export declare const kdsSlice: import("@reduxjs/toolkit").Slice<KdsState, {
163
166
  qa: Record<string, number>;
164
167
  };
165
168
  itemTypes: import("immer/dist/internal").WritableDraft<import("../types").ItemType>[] | null;
169
+ prepStations: import("immer/dist/internal").WritableDraft<import("../types").PrepStation>[];
170
+ prepStationId: number | null;
171
+ orderType: KdsOrderType;
166
172
  columns: number;
167
173
  boxes: number;
168
174
  cardWidth: number;
169
175
  fontSize: KdsFontSize;
170
176
  view: KdsView | null;
171
- page: number | null;
177
+ page: number;
172
178
  search: string | null;
173
179
  businessDate: DateString | null;
174
180
  summary: boolean;
@@ -184,7 +190,7 @@ export declare const selectKdsBoxes: (state: AppState) => number;
184
190
  export declare const selectKdsCardWidth: (state: AppState) => number;
185
191
  export declare const selectKdsFontSize: (state: AppState) => KdsFontSize;
186
192
  export declare const selectKdsSummary: (state: AppState) => boolean;
187
- export declare const selectKdsPage: (state: AppState) => number | null;
193
+ export declare const selectKdsPage: (state: AppState) => number;
188
194
  export declare const selectKdsPageIndex: (state: AppState) => number;
189
195
  export declare const selectKdsView: (state: AppState) => KdsView | null;
190
196
  export declare const selectKdsBusinessDate: (state: AppState) => `${number}${number}${number}${number}-${number}${number}-${number}${number}` | null;
@@ -199,11 +205,14 @@ export declare const selectKdsCurrentOrders: (state: AppState) => {
199
205
  loading: RequestStatus;
200
206
  error: RequestError;
201
207
  };
208
+ export declare const selectKdsCurrentCount: (state: AppState) => number;
202
209
  export declare const selectKdsFutureOrders: (state: AppState) => {
203
210
  orders: OrderKds[];
204
211
  loading: RequestStatus;
205
212
  error: RequestError;
206
213
  };
214
+ export declare const selectKdsFutureCount: (state: AppState) => number;
215
+ export declare const selectKdsPrepStationOrders: (state: AppState) => OrdersKds;
207
216
  export declare const selectKdsOrdersCounts: (state: AppState) => {
208
217
  current: Record<string, number> | null;
209
218
  future: Record<string, number> | null;
@@ -2,10 +2,51 @@ var _a;
2
2
  import { __assign, __awaiter, __generator } from "tslib";
3
3
  import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
4
4
  import { ReducerType } from './types';
5
- import { currentLocalDate, isoToDate, makeFetchOrdersArgs, makeKdsCounts, makeKdsOrders, notDone, timezoneMap } from '../utils';
5
+ import { currentLocalDate, isoToDate, makeFetchOrdersArgs, makeKdsCounts, makeKdsOrders, makeOrdersForPrepStation, notDone, timezoneMap } from '../utils';
6
6
  import { addAlert } from './alerts';
7
+ var prepStations = [
8
+ {
9
+ prep_station_id: 1,
10
+ name: 'Entrees',
11
+ item_type_ids: [4],
12
+ prep_type: 'ASSEMBLY',
13
+ assembly_options: 'PRINT_DONE',
14
+ show_print: false,
15
+ show_reset: false
16
+ },
17
+ {
18
+ prep_station_id: 2,
19
+ name: 'Sides',
20
+ item_type_ids: [5],
21
+ prep_type: 'ASSEMBLY',
22
+ assembly_options: 'MARK_DONE',
23
+ show_print: false,
24
+ show_reset: false
25
+ },
26
+ {
27
+ prep_station_id: 3,
28
+ name: 'Drinks',
29
+ item_type_ids: [6],
30
+ prep_type: 'ASSEMBLY',
31
+ assembly_options: 'PRINT_AND_DONE',
32
+ show_print: false,
33
+ show_reset: false
34
+ },
35
+ {
36
+ prep_station_id: 4,
37
+ name: 'Expo',
38
+ item_type_ids: [4, 5, 6],
39
+ prep_type: 'EXPO',
40
+ assembly_options: null,
41
+ show_print: false,
42
+ show_reset: false
43
+ }
44
+ ];
7
45
  var initialState = {
8
46
  itemTypes: null,
47
+ prepStations: prepStations,
48
+ prepStationId: null,
49
+ orderType: 'CURRENT',
9
50
  columns: 4,
10
51
  boxes: 8,
11
52
  cardWidth: 300,
@@ -24,10 +65,10 @@ var initialState = {
24
65
  export var KdsActionType;
25
66
  (function (KdsActionType) {
26
67
  KdsActionType["FetchKdsOrders"] = "kds/fetchKdsOrders";
27
- KdsActionType["UpdateOrder"] = "kds/updateOrder";
68
+ KdsActionType["UpdateKdsOrder"] = "kds/updateKdsOrder";
69
+ KdsActionType["PrintKdsOrder"] = "kds/printKdsOrder";
28
70
  KdsActionType["PrintTickets"] = "kds/printTickets";
29
71
  KdsActionType["ResetTickets"] = "kds/resetTickets";
30
- KdsActionType["PrintReceipt"] = "kds/printKdsOrder";
31
72
  KdsActionType["PrintTicket"] = "kds/printTicket";
32
73
  KdsActionType["UpdateTicket"] = "kds/updateTicket";
33
74
  })(KdsActionType || (KdsActionType = {}));
@@ -56,7 +97,7 @@ export var fetchKdsOrders = createAsyncThunk(KdsActionType.FetchKdsOrders, funct
56
97
  });
57
98
  });
58
99
  });
59
- export var updateKdsOrder = createAsyncThunk(KdsActionType.UpdateOrder, function (_a, _b) {
100
+ export var updateKdsOrder = createAsyncThunk(KdsActionType.UpdateKdsOrder, function (_a, _b) {
60
101
  var orderId = _a.orderId, data = _a.data;
61
102
  var getState = _b.getState, dispatch = _b.dispatch;
62
103
  return __awaiter(void 0, void 0, void 0, function () {
@@ -81,7 +122,7 @@ export var updateKdsOrder = createAsyncThunk(KdsActionType.UpdateOrder, function
81
122
  });
82
123
  });
83
124
  });
84
- export var printKdsOrder = createAsyncThunk(KdsActionType.PrintReceipt, function (orderId, _a) {
125
+ export var printKdsOrder = createAsyncThunk(KdsActionType.PrintKdsOrder, function (orderId, _a) {
85
126
  var getState = _a.getState, dispatch = _a.dispatch;
86
127
  return __awaiter(void 0, void 0, void 0, function () {
87
128
  var api, order, err_3, detail;
@@ -346,9 +387,7 @@ export var selectKdsCardWidth = function (state) { return state.kds.cardWidth; }
346
387
  export var selectKdsFontSize = function (state) { return state.kds.fontSize; };
347
388
  export var selectKdsSummary = function (state) { return state.kds.summary; };
348
389
  export var selectKdsPage = function (state) { return state.kds.page; };
349
- export var selectKdsPageIndex = function (state) {
350
- return state.kds.page ? state.kds.page - 1 : 0;
351
- };
390
+ export var selectKdsPageIndex = function (state) { return state.kds.page - 1; };
352
391
  export var selectKdsView = function (state) { return state.kds.view; };
353
392
  export var selectKdsBusinessDate = function (state) { return state.kds.businessDate; };
354
393
  export var selectKdsOrder = function (state) { return state.kds.order; };
@@ -366,6 +405,10 @@ export var selectKdsCurrentOrders = function (state) {
366
405
  });
367
406
  return { orders: filtered, loading: loading, error: error };
368
407
  };
408
+ export var selectKdsCurrentCount = function (state) {
409
+ var orders = selectKdsCurrentOrders(state).orders;
410
+ return orders.length;
411
+ };
369
412
  export var selectKdsFutureOrders = function (state) {
370
413
  var _a = state.kds, orders = _a.orders, loading = _a.loading, error = _a.error;
371
414
  var filtered = orders.filter(function (i) {
@@ -376,6 +419,17 @@ export var selectKdsFutureOrders = function (state) {
376
419
  });
377
420
  return { orders: filtered, loading: loading, error: error };
378
421
  };
422
+ export var selectKdsFutureCount = function (state) {
423
+ var orders = selectKdsFutureOrders(state).orders;
424
+ return orders.length;
425
+ };
426
+ export var selectKdsPrepStationOrders = function (state) {
427
+ var _a = state.kds, prepStations = _a.prepStations, prepStationId = _a.prepStationId, orderType = _a.orderType, orders = _a.orders;
428
+ var prepStation = prepStations.find(function (i) { return i.prep_station_id === prepStationId; });
429
+ if (!prepStation)
430
+ return [];
431
+ return makeOrdersForPrepStation(orders, prepStation, orderType);
432
+ };
379
433
  export var selectKdsOrdersCounts = function (state) {
380
434
  var _a = state.kds.counts, current = _a.current, future = _a.future, qa = _a.qa;
381
435
  return { current: current, future: future, qa: qa };
@@ -1,4 +1,5 @@
1
- import { IpAddress, PrepStatus } from '../global';
1
+ import { IpAddress } from '../global';
2
+ import { PrepStatus } from './kds';
2
3
  export interface Config {
3
4
  backup_printer_ip_address: IpAddress | null;
4
5
  backup_printer_use_beeper: boolean;
@@ -10,6 +10,7 @@ export * from './employee';
10
10
  export * from './errorAlerts';
11
11
  export * from './favorite';
12
12
  export * from './giftCard';
13
+ export * from './kds';
13
14
  export * from './menu';
14
15
  export * from './menuPages';
15
16
  export * from './messages';
@@ -10,6 +10,7 @@ export * from './employee';
10
10
  export * from './errorAlerts';
11
11
  export * from './favorite';
12
12
  export * from './giftCard';
13
+ export * from './kds';
13
14
  export * from './menu';
14
15
  export * from './menuPages';
15
16
  export * from './messages';
@@ -0,0 +1,30 @@
1
+ export declare type PrepStatus = 'TODO' | 'IN_PROGRESS' | 'DONE' | 'COMPLETED' | 'FULFILLED';
2
+ export declare type PrepStatusMap = {
3
+ [Property in PrepStatus]: PrepStatus;
4
+ };
5
+ export declare type TicketStatus = 'TODO' | 'IN_PROGRESS' | 'DONE' | 'COMPLETED';
6
+ export declare type KdsView = 'column' | 'grid' | 'list' | 'tiles';
7
+ export declare type KdsFontSize = 'xsmall' | 'small' | 'medium' | 'large';
8
+ export declare type KdsPrepType = 'ASSEMBLY' | 'EXPO';
9
+ export declare type KdsOrderType = 'CURRENT' | 'FUTURE' | 'COMPLETED';
10
+ export declare type KdsAssemblyOptions = 'AUTO_PRINT' | 'PRINT_DONE' | 'MARK_DONE' | 'PRINT_AND_DONE' | null;
11
+ export interface PrepStation {
12
+ prep_station_id: number;
13
+ name: string;
14
+ item_type_ids: number[];
15
+ prep_type: KdsPrepType;
16
+ assembly_options: KdsAssemblyOptions;
17
+ show_print: boolean;
18
+ show_reset: boolean;
19
+ }
20
+ export declare type PrepStations = PrepStation[];
21
+ export interface KdsTerminal {
22
+ name: string;
23
+ ipAddress: string;
24
+ prepStations: PrepStations;
25
+ defaultView: KdsView;
26
+ columns: number;
27
+ boxes: number;
28
+ cardWidth: number;
29
+ fontSize: KdsFontSize;
30
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -1,6 +1,7 @@
1
1
  import { DateString, ISOStringOffset, TimezonePython } from '../datetimes';
2
- import { CardType, ChannelType, Decimal, Money, NegativeMoney, OrderStatus, OrderType, PrepStatus, ReceiptType, ServiceType, SurchargeType, Temperature, TenderStatus, TenderType, TicketStatus } from '../global';
2
+ import { CardType, ChannelType, Decimal, Money, NegativeMoney, OrderStatus, OrderType, ReceiptType, ServiceType, SurchargeType, Temperature, TenderStatus, TenderType } from '../global';
3
3
  import { Address, Customer } from './customer';
4
+ import { PrepStatus, TicketStatus } from './kds';
4
5
  export interface OrderChannel {
5
6
  ext_id?: string | null;
6
7
  ext_name?: string | null;
@@ -25,16 +25,9 @@ export declare type TaxTypeInt = 1 | 2;
25
25
  export declare type Temperature = 'Hot' | 'Cold';
26
26
  export declare type ReceiptType = 'SALE' | 'REFUND';
27
27
  export declare type ChannelType = 'POS' | 'ONLINE' | 'APP' | 'PHONE' | 'KIOSK' | 'PORTAL';
28
- export declare type PrepStatus = 'TODO' | 'IN_PROGRESS' | 'DONE' | 'COMPLETED' | 'FULFILLED';
29
- export declare type PrepStatusMap = {
30
- [Property in PrepStatus]: PrepStatus;
31
- };
32
- export declare type TicketStatus = 'TODO' | 'IN_PROGRESS' | 'DONE' | 'COMPLETED';
33
28
  export declare type OrderStatus = 'OPEN' | 'HELD' | 'CLOSED' | 'VOID';
34
29
  export declare type TenderStatus = 'AUTHORIZED' | 'PAID' | 'REFUNDED' | 'VOID' | 'FAILED';
35
30
  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' | 'tiles';
37
- export declare type KdsFontSize = 'xsmall' | 'small' | 'medium' | 'large';
38
31
  export interface PicklistOption {
39
32
  name: string;
40
33
  value: string | number;
@@ -1,4 +1,4 @@
1
- import { FetchOrdersAPIArgs, FetchOrdersArgs, ItemType, ItemTypes, ModifiersMetadata, OrderBuckets, OrderCart, OrderItem, OrderKds, Orders, OrdersKds, OrderTickets, OrderTimes, PrepStatus, PrepStatusMap, Store, TicketGroups, Timezone } from '../types';
1
+ import { FetchOrdersAPIArgs, FetchOrdersArgs, ItemType, ItemTypes, KdsOrderType, ModifiersMetadata, OrderBuckets, OrderCart, OrderItem, OrderKds, Orders, OrdersKds, OrderTickets, OrderTimes, PrepStation, 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;
@@ -6,6 +6,12 @@ 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
8
  export declare const makeKdsOrders: (orders: Orders) => OrdersKds;
9
+ export declare const makeCurrentOrders: (orders: OrdersKds) => OrdersKds;
10
+ export declare const makeFutureOrders: (orders: OrdersKds) => OrdersKds;
11
+ export declare const makeCompletedOrders: (orders: OrdersKds) => OrdersKds;
12
+ export declare const makeOrdersOfType: (orders: OrdersKds, orderType: KdsOrderType) => OrdersKds;
13
+ export declare const filterOrdersByItemType: (orders: OrdersKds, itemTypeIds: number[]) => OrdersKds;
14
+ export declare const makeOrdersForPrepStation: (orders: OrdersKds, prepStation: PrepStation, orderType: KdsOrderType) => OrdersKds;
9
15
  export declare const makeKdsCounts: (itemTypes: ItemTypes | null, orders: OrdersKds | null) => {
10
16
  current: null;
11
17
  future: null;
@@ -63,6 +63,63 @@ export var isCompleted = function (prep_status) {
63
63
  export var makeKdsOrders = function (orders) {
64
64
  return orders.filter(function (i) { return i.expected_at && i.fire_at && i.tickets; });
65
65
  };
66
+ export var makeCurrentOrders = function (orders) {
67
+ return orders.filter(function (i) {
68
+ var tz = timezoneMap[i.timezone];
69
+ var fireDate = i.fire_at ? isoToDate(i.fire_at, tz) : null;
70
+ var currentDate = currentLocalDate(tz);
71
+ return notCompleted(i.prep_status) && fireDate && fireDate < currentDate;
72
+ });
73
+ };
74
+ export var makeFutureOrders = function (orders) {
75
+ return orders.filter(function (i) {
76
+ var tz = timezoneMap[i.timezone];
77
+ var fireDate = i.fire_at ? isoToDate(i.fire_at, tz) : null;
78
+ var currentDate = currentLocalDate(tz);
79
+ return notCompleted(i.prep_status) && fireDate && fireDate > currentDate;
80
+ });
81
+ };
82
+ export var makeCompletedOrders = function (orders) {
83
+ return orders.filter(function (i) {
84
+ var tz = timezoneMap[i.timezone];
85
+ var fireDate = i.fire_at ? isoToDate(i.fire_at, tz) : null;
86
+ var fireDateStr = fireDate ? formatDate(fireDate, 'yyyy-MM-dd') : null;
87
+ var currentDate = currentLocalDate(tz);
88
+ var currentDateStr = formatDate(currentDate, 'yyyy-MM-dd');
89
+ return (isCompleted(i.prep_status) && fireDate && fireDateStr === currentDateStr);
90
+ });
91
+ };
92
+ export var makeOrdersOfType = function (orders, orderType) {
93
+ switch (orderType) {
94
+ case 'FUTURE':
95
+ return makeFutureOrders(orders);
96
+ case 'COMPLETED':
97
+ return makeCompletedOrders(orders);
98
+ default:
99
+ return makeCurrentOrders(orders);
100
+ }
101
+ };
102
+ export var filterOrdersByItemType = function (orders, itemTypeIds) {
103
+ return orders
104
+ .reduce(function (arr, i) {
105
+ var tickets = i.tickets.filter(function (t) {
106
+ return itemTypeIds.includes(t.item_type_id);
107
+ });
108
+ return __spreadArray(__spreadArray([], arr, true), [__assign(__assign({}, i), { tickets: tickets })], false);
109
+ }, [])
110
+ .filter(function (i) { return i.tickets.length; });
111
+ };
112
+ export var makeOrdersForPrepStation = function (orders, prepStation, orderType) {
113
+ var item_type_ids = prepStation.item_type_ids, prep_type = prepStation.prep_type;
114
+ var ordersOfType = makeOrdersOfType(orders, orderType);
115
+ if (orderType === 'COMPLETED') {
116
+ return filterOrdersByItemType(ordersOfType, item_type_ids);
117
+ }
118
+ var filteredOrders = prep_type === 'ASSEMBLY'
119
+ ? ordersOfType.filter(function (i) { return notDone(i.prep_status); })
120
+ : ordersOfType.filter(function (i) { return i.prep_status === 'DONE'; });
121
+ return filterOrdersByItemType(filteredOrders, item_type_ids);
122
+ };
66
123
  var updateCounts = function (counts, ticketCounts) {
67
124
  // console.log('BEFORE', counts, ticketCounts)
68
125
  var updated = Object.entries(counts).reduce(function (obj, _a) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-tender/store",
3
- "version": "0.3.4",
3
+ "version": "0.3.6",
4
4
  "description": "A library of hooks, reducers, utility functions, and types for use with Open Tender applications that utilize our in-store POS API",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",