@open-tender/cloud 0.1.1 → 0.1.2

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.
Files changed (57) hide show
  1. package/dist/cjs/app/hooks.d.ts +1 -2
  2. package/dist/cjs/app/store.d.ts +3 -6
  3. package/dist/cjs/app/store.js +0 -1
  4. package/dist/cjs/slices/checkout.d.ts +7 -7
  5. package/dist/cjs/slices/checkout.js +59 -52
  6. package/dist/cjs/slices/customer/groupOrders.d.ts +2 -2
  7. package/dist/cjs/slices/donations.d.ts +2 -2
  8. package/dist/cjs/slices/groupOrder.d.ts +1 -1
  9. package/dist/cjs/slices/groupOrder.js +1 -2
  10. package/dist/cjs/slices/index.d.ts +24 -25
  11. package/dist/cjs/slices/index.js +24 -25
  12. package/dist/cjs/slices/{modalSlice.d.ts → modal.d.ts} +3 -7
  13. package/dist/cjs/slices/{modalSlice.js → modal.js} +1 -1
  14. package/dist/cjs/slices/order.d.ts +21 -25
  15. package/dist/cjs/slices/order.js +16 -16
  16. package/dist/cjs/slices/revenueCenters.d.ts +4 -16
  17. package/dist/esm/app/hooks.d.ts +1 -2
  18. package/dist/esm/app/store.d.ts +3 -6
  19. package/dist/esm/app/store.js +1 -2
  20. package/dist/esm/slices/checkout.d.ts +7 -7
  21. package/dist/esm/slices/checkout.js +59 -52
  22. package/dist/esm/slices/customer/groupOrders.d.ts +2 -2
  23. package/dist/esm/slices/donations.d.ts +2 -2
  24. package/dist/esm/slices/groupOrder.d.ts +1 -1
  25. package/dist/esm/slices/groupOrder.js +1 -2
  26. package/dist/esm/slices/index.d.ts +24 -25
  27. package/dist/esm/slices/index.js +24 -25
  28. package/dist/esm/slices/{modalSlice.d.ts → modal.d.ts} +3 -7
  29. package/dist/esm/slices/{modalSlice.js → modal.js} +1 -1
  30. package/dist/esm/slices/order.d.ts +21 -25
  31. package/dist/esm/slices/order.js +16 -16
  32. package/dist/esm/slices/revenueCenters.d.ts +4 -16
  33. package/package.json +3 -3
  34. package/dist/cjs/slices/orders.d.ts +0 -128
  35. package/dist/cjs/slices/orders.js +0 -311
  36. package/dist/esm/slices/orders.d.ts +0 -128
  37. package/dist/esm/slices/orders.js +0 -302
  38. /package/dist/cjs/slices/{navSlice.d.ts → nav.d.ts} +0 -0
  39. /package/dist/cjs/slices/{navSlice.js → nav.js} +0 -0
  40. /package/dist/cjs/slices/{navSiteSlice.d.ts → navSite.d.ts} +0 -0
  41. /package/dist/cjs/slices/{navSiteSlice.js → navSite.js} +0 -0
  42. /package/dist/cjs/slices/{postsSlice.d.ts → posts.d.ts} +0 -0
  43. /package/dist/cjs/slices/{postsSlice.js → posts.js} +0 -0
  44. /package/dist/cjs/slices/{sidebarSlice.d.ts → sidebar.d.ts} +0 -0
  45. /package/dist/cjs/slices/{sidebarSlice.js → sidebar.js} +0 -0
  46. /package/dist/cjs/slices/{sidebarModalSlice.d.ts → sidebarModal.d.ts} +0 -0
  47. /package/dist/cjs/slices/{sidebarModalSlice.js → sidebarModal.js} +0 -0
  48. /package/dist/esm/slices/{navSlice.d.ts → nav.d.ts} +0 -0
  49. /package/dist/esm/slices/{navSlice.js → nav.js} +0 -0
  50. /package/dist/esm/slices/{navSiteSlice.d.ts → navSite.d.ts} +0 -0
  51. /package/dist/esm/slices/{navSiteSlice.js → navSite.js} +0 -0
  52. /package/dist/esm/slices/{postsSlice.d.ts → posts.d.ts} +0 -0
  53. /package/dist/esm/slices/{postsSlice.js → posts.js} +0 -0
  54. /package/dist/esm/slices/{sidebarSlice.d.ts → sidebar.d.ts} +0 -0
  55. /package/dist/esm/slices/{sidebarSlice.js → sidebar.js} +0 -0
  56. /package/dist/esm/slices/{sidebarModalSlice.d.ts → sidebarModal.d.ts} +0 -0
  57. /package/dist/esm/slices/{sidebarModalSlice.js → sidebarModal.js} +0 -0
@@ -1,28 +1,26 @@
1
1
  import { AppState } from '../app';
2
- import { Address, Cart, CartItem, ISOString, MenuCategory, Order, OrderRevenueCenter, OrderType, PrepStatus, RequestError, RequestStatus, ServiceType, SimpleCart } from '@open-tender/types';
2
+ import { Address, Cart, CartCounts, CartItem, DeviceType, MenuCategory, MenuRevenueCenter, Messages, Modal, Order, OrderType, PrepType, RequestedAt, RequestError, RequestStatus, RevenueCenter, ServiceType, SimpleCart } from '@open-tender/types';
3
3
  export interface OrderState {
4
- error: RequestError | string;
5
- loading: RequestStatus;
6
4
  address: Address | null;
7
- alert: any;
5
+ alert: Modal | null;
8
6
  cart: Cart | null;
9
- cartCounts: {
10
- [key: number]: number;
11
- } | null;
7
+ cartCounts: CartCounts | null;
12
8
  currentCategory: MenuCategory | null;
13
9
  currentItem: CartItem | null;
14
- currentVendor: any;
15
- deviceType: any;
10
+ currentVendor: MenuRevenueCenter | null;
11
+ deviceType: DeviceType | null;
12
+ error: RequestError | string;
16
13
  isCurbside: boolean;
17
14
  isOutpost: boolean;
18
- messages: any[];
15
+ loading: RequestStatus;
16
+ messages: Messages;
19
17
  orderId: number | null;
20
18
  orderType: OrderType | null;
21
- prepType: PrepStatus | null;
22
- requestedAt: ISOString | string | null;
23
- revenueCenter: OrderRevenueCenter | null;
19
+ prepType: PrepType | null;
20
+ requestedAt: RequestedAt | null;
21
+ revenueCenter: RevenueCenter | null;
24
22
  serviceType: ServiceType | null;
25
- table: any;
23
+ table: string | null;
26
24
  }
27
25
  export declare enum OrderActionType {
28
26
  FetchRevenueCenter = "order/fetchRevenueCenter",
@@ -55,7 +53,7 @@ export declare const fetchLocation: import("@reduxjs/toolkit").AsyncThunk<void,
55
53
  fulfilledMeta?: unknown;
56
54
  rejectedMeta?: unknown;
57
55
  }>;
58
- export declare const revertMenu: import("@reduxjs/toolkit").AsyncThunk<void | OrderRevenueCenter, {
56
+ export declare const revertMenu: import("@reduxjs/toolkit").AsyncThunk<void | RevenueCenter, {
59
57
  revenueCenterId: number;
60
58
  serviceType: ServiceType;
61
59
  requestedAt: string;
@@ -84,7 +82,7 @@ export declare const refreshRevenueCenter: import("@reduxjs/toolkit").AsyncThunk
84
82
  fulfilledMeta?: unknown;
85
83
  rejectedMeta?: unknown;
86
84
  }>;
87
- export declare const editOrder: import("@reduxjs/toolkit").AsyncThunk<void | Partial<OrderState>, Partial<Order>, {
85
+ export declare const editOrder: import("@reduxjs/toolkit").AsyncThunk<void | Partial<OrderState>, Order, {
88
86
  state: AppState;
89
87
  rejectValue: RequestError;
90
88
  dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
@@ -113,25 +111,23 @@ export declare const resetOrder: import("@reduxjs/toolkit").ActionCreatorWithout
113
111
  serviceType: ServiceType;
114
112
  isOutpost?: boolean | undefined;
115
113
  }, "order/setOrderServiceType">, setOrderType: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "order/setOrderType">, setPrepType: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "order/setPrepType">, setRequestedAt: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "order/setRequestedAt">, setRevenueCenter: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "order/setRevenueCenter">, setServiceType: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "order/setServiceType">, setTable: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "order/setTable">, checkout: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"order/checkout">, setCurrentVendor: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "order/setCurrentVendor">;
116
- export declare const selectAlert: (state: AppState) => any;
114
+ export declare const selectAlert: (state: AppState) => Modal | null;
117
115
  export declare const selectTimezone: (state: AppState) => string;
118
116
  export declare const selectOrder: (state: AppState) => OrderState;
119
117
  export declare const selectCartQuantity: (state: AppState) => number;
120
118
  export declare const selectCartTotal: (state: AppState) => number;
121
- export declare const selectCartCounts: (state: AppState) => {
122
- [key: number]: number;
123
- };
124
- export declare const selectCanOrder: (state: AppState) => string | null;
119
+ export declare const selectCartCounts: (state: AppState) => CartCounts;
120
+ export declare const selectCanOrder: (state: AppState) => RequestedAt | null;
125
121
  export declare const selectOrderLimits: (state: AppState) => {
126
122
  orderMinimum: number | null;
127
123
  orderMaximum: number | null;
128
124
  };
129
125
  export declare const selectCartIds: (state: AppState) => number[];
130
126
  export declare const selectMenuSlug: (state: AppState) => string;
131
- export declare const selectRevenueCenter: (state: AppState) => OrderRevenueCenter | null;
127
+ export declare const selectRevenueCenter: (state: AppState) => RevenueCenter | null;
132
128
  export declare const selectCart: (state: AppState) => Cart | null;
133
- export declare const selectCurrentVendor: (state: AppState) => any;
134
- export declare const selectMessages: (state: AppState) => any[];
129
+ export declare const selectCurrentVendor: (state: AppState) => MenuRevenueCenter | null;
130
+ export declare const selectMessages: (state: AppState) => Messages;
135
131
  export declare const selectCurrentItem: (state: AppState) => CartItem | null;
136
132
  export declare const selectMenuVars: (state: AppState) => {
137
133
  revenueCenterId?: undefined;
@@ -140,7 +136,7 @@ export declare const selectMenuVars: (state: AppState) => {
140
136
  } | {
141
137
  revenueCenterId: number;
142
138
  serviceType: ServiceType | null;
143
- requestedAt: string | null;
139
+ requestedAt: RequestedAt | null;
144
140
  };
145
141
  export declare const selectAutoSelect: (state: AppState) => boolean | undefined;
146
142
  export declare const selectCurrentCategory: (state: AppState) => MenuCategory | null;
@@ -6,26 +6,26 @@ import { updateForm } from './checkout';
6
6
  import { resetMenuVars } from './menu';
7
7
  import { setMenuItems } from './menuItems';
8
8
  const initialState = {
9
- orderId: null,
10
- orderType: null,
11
- serviceType: null,
12
- deviceType: null,
13
- isOutpost: false,
14
- isCurbside: false,
15
- revenueCenter: null,
16
- table: null,
17
- prepType: null,
18
- requestedAt: 'asap',
19
9
  address: null,
20
- currentCategory: null,
21
- currentItem: null,
10
+ alert: null,
22
11
  cart: [],
23
12
  cartCounts: {},
24
- messages: [],
25
- alert: null,
13
+ currentCategory: null,
14
+ currentItem: null,
15
+ currentVendor: null,
16
+ deviceType: null,
26
17
  error: null,
18
+ isCurbside: false,
19
+ isOutpost: false,
27
20
  loading: 'idle',
28
- currentVendor: null
21
+ messages: [],
22
+ orderId: null,
23
+ prepType: null,
24
+ orderType: null,
25
+ requestedAt: 'asap',
26
+ revenueCenter: null,
27
+ serviceType: null,
28
+ table: null
29
29
  };
30
30
  export var OrderActionType;
31
31
  (function (OrderActionType) {
@@ -449,7 +449,7 @@ export const selectOrderLimits = (state) => {
449
449
  return { orderMinimum: null, orderMaximum: null };
450
450
  }
451
451
  const { cartGuest, spendingLimit } = state.groupOrder;
452
- const { order_maximum, order_minimum } = revenueCenter.settings || revenueCenter;
452
+ const { order_maximum, order_minimum } = revenueCenter;
453
453
  const orderMax = cartGuest && spendingLimit
454
454
  ? parseFloat(spendingLimit)
455
455
  : order_maximum
@@ -1,7 +1,7 @@
1
1
  import { AppState } from '../app';
2
- import { CustomerRevenueCenters, RequestError, RequestStatus } from '@open-tender/types';
2
+ import { RevenueCenters, RevenueCenterParams, RequestError, RequestStatus } from '@open-tender/types';
3
3
  export interface RevenueCentersState {
4
- revenueCenters: CustomerRevenueCenters;
4
+ revenueCenters: RevenueCenters;
5
5
  error: RequestError;
6
6
  loading: RequestStatus;
7
7
  }
@@ -9,13 +9,7 @@ export declare enum RevenueCentersActionType {
9
9
  FetchRevenueCenters = "revenueCenters/fetchRevenueCenters",
10
10
  FetchLocations = "revenueCenters/fetchLocations"
11
11
  }
12
- export declare const fetchRevenueCenters: import("@reduxjs/toolkit").AsyncThunk<CustomerRevenueCenters, {
13
- type: string;
14
- is_outpost: boolean;
15
- lat: number;
16
- lng: number;
17
- requestedAt: string;
18
- }, {
12
+ export declare const fetchRevenueCenters: import("@reduxjs/toolkit").AsyncThunk<RevenueCenters, RevenueCenterParams, {
19
13
  state: AppState;
20
14
  rejectValue: RequestError;
21
15
  dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
@@ -25,13 +19,7 @@ export declare const fetchRevenueCenters: import("@reduxjs/toolkit").AsyncThunk<
25
19
  fulfilledMeta?: unknown;
26
20
  rejectedMeta?: unknown;
27
21
  }>;
28
- export declare const fetchLocations: import("@reduxjs/toolkit").AsyncThunk<CustomerRevenueCenters, {
29
- type: string;
30
- is_outpost: boolean;
31
- lat: number;
32
- lng: number;
33
- requestedAt: string;
34
- }, {
22
+ export declare const fetchLocations: import("@reduxjs/toolkit").AsyncThunk<RevenueCenters, RevenueCenterParams, {
35
23
  state: AppState;
36
24
  rejectValue: RequestError;
37
25
  dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-tender/cloud",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "A library of hooks, reducers, utility functions, and types for use with Open Tender applications that utilize our cloud-based Order API.",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -49,8 +49,8 @@
49
49
  "typescript": "^4.8.2"
50
50
  },
51
51
  "peerDependencies": {
52
- "@open-tender/types": "^0.0.136",
53
- "@open-tender/utils": "^0.0.66",
52
+ "@open-tender/types": "^0.1.8",
53
+ "@open-tender/utils": "^0.1.11",
54
54
  "@reduxjs/toolkit": "^1.8.5",
55
55
  "react": "^18.2.0"
56
56
  },
@@ -1,128 +0,0 @@
1
- import { AppState } from '../app';
2
- import { Order, Orders, OrdersCount, RequestError, RequestStatus } from '@open-tender/types';
3
- export interface OrdersState {
4
- entities: Orders;
5
- error: RequestError;
6
- loading: RequestStatus;
7
- skipped: number;
8
- currentOrder: Order | null;
9
- counts: OrdersCount;
10
- }
11
- export declare enum OrdersActionType {
12
- FetchOrders = "orders/fetchOrders",
13
- FetchOrdersToday = "orders/fetchOrdersToday",
14
- PrintTicket = "order/printTicket",
15
- UpdateOrders = "orders/updateOrders",
16
- UpdateTicket = "orders/updateTicket",
17
- PrintTickets = "orders/printTickets",
18
- ResetTickets = "orders/resetTickets",
19
- UpdateOrderPrep = "orders/updateOrderPrep",
20
- PrintReceipt = "orders/printReceipt"
21
- }
22
- export declare const fetchOrders: import("@reduxjs/toolkit").AsyncThunk<any, any, {
23
- state: AppState;
24
- rejectValue: RequestError;
25
- dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
26
- extra?: unknown;
27
- serializedErrorType?: unknown;
28
- pendingMeta?: unknown;
29
- fulfilledMeta?: unknown;
30
- rejectedMeta?: unknown;
31
- }>;
32
- export declare const printTicket: import("@reduxjs/toolkit").AsyncThunk<void, {
33
- order_uuid: number;
34
- ticket_no: number;
35
- status: any;
36
- }, {
37
- state: AppState;
38
- rejectValue: RequestError;
39
- dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
40
- extra?: unknown;
41
- serializedErrorType?: unknown;
42
- pendingMeta?: unknown;
43
- fulfilledMeta?: unknown;
44
- rejectedMeta?: unknown;
45
- }>;
46
- export declare const updateTicket: import("@reduxjs/toolkit").AsyncThunk<void, {
47
- order_uuid: number;
48
- ticket_no: number;
49
- status: any;
50
- }, {
51
- state: AppState;
52
- rejectValue: RequestError;
53
- dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
54
- extra?: unknown;
55
- serializedErrorType?: unknown;
56
- pendingMeta?: unknown;
57
- fulfilledMeta?: unknown;
58
- rejectedMeta?: unknown;
59
- }>;
60
- export declare const printTickets: import("@reduxjs/toolkit").AsyncThunk<void, {
61
- order_uuid: number;
62
- status: any;
63
- }, {
64
- state: AppState;
65
- rejectValue: RequestError;
66
- dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
67
- extra?: unknown;
68
- serializedErrorType?: unknown;
69
- pendingMeta?: unknown;
70
- fulfilledMeta?: unknown;
71
- rejectedMeta?: unknown;
72
- }>;
73
- export declare const resetTickets: import("@reduxjs/toolkit").AsyncThunk<void, number, {
74
- state: AppState;
75
- rejectValue: RequestError;
76
- dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
77
- extra?: unknown;
78
- serializedErrorType?: unknown;
79
- pendingMeta?: unknown;
80
- fulfilledMeta?: unknown;
81
- rejectedMeta?: unknown;
82
- }>;
83
- export declare const updateOrderPrep: import("@reduxjs/toolkit").AsyncThunk<void, {
84
- order_uuid: number;
85
- data: any;
86
- }, {
87
- state: AppState;
88
- rejectValue: RequestError;
89
- dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
90
- extra?: unknown;
91
- serializedErrorType?: unknown;
92
- pendingMeta?: unknown;
93
- fulfilledMeta?: unknown;
94
- rejectedMeta?: unknown;
95
- }>;
96
- export declare const printReceipt: import("@reduxjs/toolkit").AsyncThunk<void, number, {
97
- state: AppState;
98
- rejectValue: RequestError;
99
- dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
100
- extra?: unknown;
101
- serializedErrorType?: unknown;
102
- pendingMeta?: unknown;
103
- fulfilledMeta?: unknown;
104
- rejectedMeta?: unknown;
105
- }>;
106
- export declare const resetOrders: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"orders/resetOrders">, setCurrentOrder: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "orders/setCurrentOrder">, skipFetchOrders: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"orders/skipFetchOrders">, updateOrder: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "orders/updateOrder">;
107
- export declare const selectOrders: (state: AppState) => {
108
- orders: Orders;
109
- loading: RequestStatus;
110
- error: RequestError;
111
- };
112
- export declare const selectCurrentOrder: (state: AppState) => Order | null;
113
- export declare const selectCurrentOrders: (state: AppState) => {
114
- orders: Order[];
115
- loading: RequestStatus;
116
- error: RequestError;
117
- };
118
- export declare const selectFutureOrders: (state: AppState) => {
119
- orders: Order[];
120
- loading: RequestStatus;
121
- error: RequestError;
122
- };
123
- export declare const selectOrdersCounts: (state: AppState) => {
124
- current: any;
125
- future: any;
126
- qa: any;
127
- };
128
- export declare const ordersReducer: import("redux").Reducer<OrdersState, import("redux").AnyAction>;
@@ -1,311 +0,0 @@
1
- "use strict";
2
- var _a;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.ordersReducer = exports.selectOrdersCounts = exports.selectFutureOrders = exports.selectCurrentOrders = exports.selectCurrentOrder = exports.selectOrders = exports.updateOrder = exports.skipFetchOrders = exports.setCurrentOrder = exports.resetOrders = exports.printReceipt = exports.updateOrderPrep = exports.resetTickets = exports.printTickets = exports.updateTicket = exports.printTicket = exports.fetchOrders = exports.OrdersActionType = void 0;
5
- const tslib_1 = require("tslib");
6
- const toolkit_1 = require("@reduxjs/toolkit");
7
- const types_1 = require("./types");
8
- const alerts_1 = require("./alerts");
9
- const utils_1 = require("@open-tender/utils");
10
- const initialState = {
11
- entities: [],
12
- loading: 'idle',
13
- error: null,
14
- skipped: 0,
15
- currentOrder: null,
16
- counts: { current: null, future: null, qa: null }
17
- };
18
- var OrdersActionType;
19
- (function (OrdersActionType) {
20
- OrdersActionType["FetchOrders"] = "orders/fetchOrders";
21
- OrdersActionType["FetchOrdersToday"] = "orders/fetchOrdersToday";
22
- OrdersActionType["PrintTicket"] = "order/printTicket";
23
- OrdersActionType["UpdateOrders"] = "orders/updateOrders";
24
- OrdersActionType["UpdateTicket"] = "orders/updateTicket";
25
- OrdersActionType["PrintTickets"] = "orders/printTickets";
26
- OrdersActionType["ResetTickets"] = "orders/resetTickets";
27
- OrdersActionType["UpdateOrderPrep"] = "orders/updateOrderPrep";
28
- OrdersActionType["PrintReceipt"] = "orders/printReceipt";
29
- })(OrdersActionType = exports.OrdersActionType || (exports.OrdersActionType = {}));
30
- exports.fetchOrders = (0, toolkit_1.createAsyncThunk)(OrdersActionType.FetchOrders, (args, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
31
- const { api, itemTypes } = getState().config;
32
- if (!api)
33
- return;
34
- try {
35
- const orders = yield api.getOrders(args);
36
- const counts = (0, utils_1.makeOrdersCounts)(itemTypes, orders);
37
- return { orders, counts };
38
- }
39
- catch (err) {
40
- const error = err;
41
- dispatch((0, alerts_1.addAlert)((error === null || error === void 0 ? void 0 : error.detail) || (error === null || error === void 0 ? void 0 : error.message)));
42
- return rejectWithValue(error);
43
- }
44
- }));
45
- // export const fetchOrdersToday = createAsyncThunk<
46
- // any,
47
- // any,
48
- // { state: AppState; rejectValue: RequestError }
49
- // >(
50
- // OrdersActionType.FetchOrdersToday,
51
- // async (args, { dispatch, getState, rejectWithValue }) => {
52
- // const { api, itemTypes, store } = getState().config
53
- // if (!api || !store) return
54
- // const tz: TimezonePython = store.timezone ? timezoneMap[store.timezone as TimezonePython] : getUserTimezone()
55
- // const business_date = currentLocalDateStr(tz)
56
- // const params = {
57
- // business_date,
58
- // prep_status: 'TODO,IN_PROGRESS,DONE',
59
- // sort_by: 'fire_at',
60
- // sort_direction: 'ASC',
61
- // ...args
62
- // }
63
- // try {
64
- // const ordersToday = await api.getOrders(params)
65
- // const existing = getState().orders.entities.filter(
66
- // i => !i.requested_at.startsWith(business_date)
67
- // )
68
- // const orders = [...ordersToday, ...existing]
69
- // .map(i => ({
70
- // ...i,
71
- // fireAt: isoToDate(i.fire_at, tz)
72
- // }))
73
- // .sort((a, b) => a.fireAt - b.fireAt)
74
- // const counts = makeOrdersCounts(itemTypes, orders)
75
- // return { orders, counts }
76
- // } catch (err) {
77
- // const error = err as RequestError
78
- // dispatch(addAlert(error?.detail || error?.message))
79
- // return rejectWithValue(error)
80
- // }
81
- // }
82
- // )
83
- exports.printTicket = (0, toolkit_1.createAsyncThunk)(OrdersActionType.PrintTicket, (args, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
84
- const { api, itemTypes } = getState().config;
85
- if (!api)
86
- return;
87
- try {
88
- const data = args.status ? { ticket_status: args.status } : {};
89
- const order = yield api.postTicketPrint(args.order_uuid, args.ticket_no, data);
90
- dispatch((0, exports.updateOrder)({ order, itemTypes }));
91
- return;
92
- }
93
- catch (err) {
94
- const error = err;
95
- dispatch((0, alerts_1.addAlert)((error === null || error === void 0 ? void 0 : error.detail) || (error === null || error === void 0 ? void 0 : error.message)));
96
- return rejectWithValue(error);
97
- }
98
- }));
99
- exports.updateTicket = (0, toolkit_1.createAsyncThunk)(OrdersActionType.UpdateTicket, (args, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
100
- const { api, itemTypes } = getState().config;
101
- if (!api)
102
- return;
103
- try {
104
- const order = yield api.postTicketStatus(args.order_uuid, args.ticket_no, args.status);
105
- dispatch((0, exports.updateOrder)({ order, itemTypes }));
106
- return;
107
- }
108
- catch (err) {
109
- const error = err;
110
- dispatch((0, alerts_1.addAlert)((error === null || error === void 0 ? void 0 : error.detail) || (error === null || error === void 0 ? void 0 : error.message)));
111
- return rejectWithValue(error);
112
- }
113
- }));
114
- exports.printTickets = (0, toolkit_1.createAsyncThunk)(OrdersActionType.PrintTickets, (args, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
115
- const { api, itemTypes } = getState().config;
116
- if (!api)
117
- return;
118
- try {
119
- const data = args.status ? { prep_status: args.status } : {};
120
- const order = yield api.postTicketsPrint(args.order_uuid, data);
121
- dispatch((0, exports.updateOrder)({ order, itemTypes }));
122
- return;
123
- }
124
- catch (err) {
125
- const error = err;
126
- dispatch((0, alerts_1.addAlert)((error === null || error === void 0 ? void 0 : error.detail) || (error === null || error === void 0 ? void 0 : error.message)));
127
- return rejectWithValue(error);
128
- }
129
- }));
130
- exports.resetTickets = (0, toolkit_1.createAsyncThunk)(OrdersActionType.ResetTickets, (order_uuid, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
131
- const { api, itemTypes } = getState().config;
132
- if (!api)
133
- return;
134
- try {
135
- const order = yield api.postTicketsReset(order_uuid);
136
- dispatch((0, exports.updateOrder)({ order, itemTypes }));
137
- return;
138
- }
139
- catch (err) {
140
- const error = err;
141
- dispatch((0, alerts_1.addAlert)((error === null || error === void 0 ? void 0 : error.detail) || (error === null || error === void 0 ? void 0 : error.message)));
142
- return rejectWithValue(error);
143
- }
144
- }));
145
- exports.updateOrderPrep = (0, toolkit_1.createAsyncThunk)(OrdersActionType.UpdateOrderPrep, (args, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
146
- const { api, itemTypes } = getState().config;
147
- if (!api)
148
- return;
149
- try {
150
- const order = yield api.patchOrder(args.order_uuid, args.data);
151
- dispatch((0, exports.updateOrder)({ order, itemTypes }));
152
- return;
153
- }
154
- catch (err) {
155
- const error = err;
156
- dispatch((0, alerts_1.addAlert)((error === null || error === void 0 ? void 0 : error.detail) || (error === null || error === void 0 ? void 0 : error.message)));
157
- return rejectWithValue(error);
158
- }
159
- }));
160
- exports.printReceipt = (0, toolkit_1.createAsyncThunk)(OrdersActionType.PrintReceipt, (order_uuid, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
161
- const { api } = getState().config;
162
- if (!api)
163
- return;
164
- try {
165
- yield api.postReceipt(order_uuid);
166
- return;
167
- }
168
- catch (err) {
169
- const error = err;
170
- dispatch((0, alerts_1.addAlert)((error === null || error === void 0 ? void 0 : error.detail) || (error === null || error === void 0 ? void 0 : error.message)));
171
- return rejectWithValue(error);
172
- }
173
- }));
174
- const ordersSlice = (0, toolkit_1.createSlice)({
175
- name: types_1.ReducerType.Orders,
176
- initialState,
177
- reducers: {
178
- resetOrders: () => initialState,
179
- setCurrentOrder: (state, action) => {
180
- state.currentOrder = action.payload;
181
- },
182
- skipFetchOrders: state => {
183
- state.skipped = state.skipped + 1;
184
- },
185
- updateOrder: (state, action) => {
186
- const { order, itemTypes } = action.payload;
187
- const entities = state.entities
188
- .map(i => {
189
- return i.order_uuid === order.order_uuid ? order : i;
190
- })
191
- .map(i => (Object.assign(Object.assign({}, i), { fireAt: (0, utils_1.parseIsoToDate)(i.fire_at) })))
192
- .sort((a, b) => a.fireAt - b.fireAt);
193
- const counts = (0, utils_1.makeOrdersCounts)(itemTypes, entities);
194
- const currentOrder = state.currentOrder ? order : null;
195
- state.entities = entities;
196
- state.currentOrder = currentOrder;
197
- state.counts = counts;
198
- }
199
- },
200
- extraReducers: builder => {
201
- builder
202
- .addCase(exports.fetchOrders.fulfilled, (state, action) => {
203
- const { orders, counts } = action.payload;
204
- state.entities = orders;
205
- state.counts = counts;
206
- state.loading = 'idle';
207
- state.skipped = 0;
208
- })
209
- .addCase(exports.fetchOrders.pending, state => {
210
- state.loading = 'pending';
211
- })
212
- .addCase(exports.fetchOrders.rejected, state => {
213
- state.loading = 'idle';
214
- })
215
- // .addCase(fetchOrdersToday.fulfilled, (state, action) => {
216
- // const { orders, counts } = action.payload
217
- // state.entities = orders
218
- // state.counts = counts
219
- // state.loading = 'idle'
220
- // })
221
- // .addCase(fetchOrdersToday.pending, state => {
222
- // state.loading = 'pending'
223
- // })
224
- // .addCase(fetchOrdersToday.rejected, state => {
225
- // state.loading = 'idle'
226
- // })
227
- .addCase(exports.printTicket.fulfilled, state => {
228
- state.loading = 'idle';
229
- })
230
- .addCase(exports.printTicket.pending, state => {
231
- state.loading = 'pending';
232
- })
233
- .addCase(exports.printTicket.rejected, state => {
234
- state.loading = 'idle';
235
- })
236
- .addCase(exports.updateTicket.fulfilled, state => {
237
- state.loading = 'idle';
238
- })
239
- .addCase(exports.updateTicket.pending, state => {
240
- state.loading = 'pending';
241
- })
242
- .addCase(exports.updateTicket.rejected, state => {
243
- state.loading = 'idle';
244
- })
245
- .addCase(exports.printTickets.fulfilled, state => {
246
- state.loading = 'idle';
247
- })
248
- .addCase(exports.printTickets.pending, state => {
249
- state.loading = 'pending';
250
- })
251
- .addCase(exports.printTickets.rejected, state => {
252
- state.loading = 'idle';
253
- })
254
- .addCase(exports.updateOrderPrep.fulfilled, state => {
255
- state.loading = 'idle';
256
- })
257
- .addCase(exports.updateOrderPrep.pending, state => {
258
- state.loading = 'pending';
259
- })
260
- .addCase(exports.updateOrderPrep.rejected, state => {
261
- state.loading = 'idle';
262
- })
263
- .addCase(exports.printReceipt.fulfilled, state => {
264
- state.loading = 'idle';
265
- })
266
- .addCase(exports.printReceipt.pending, state => {
267
- state.loading = 'pending';
268
- })
269
- .addCase(exports.printReceipt.rejected, state => {
270
- state.loading = 'idle';
271
- });
272
- }
273
- });
274
- _a = ordersSlice.actions, exports.resetOrders = _a.resetOrders, exports.setCurrentOrder = _a.setCurrentOrder, exports.skipFetchOrders = _a.skipFetchOrders, exports.updateOrder = _a.updateOrder;
275
- const selectOrders = (state) => {
276
- const { entities: orders, loading, error } = state.orders;
277
- return { orders, loading, error };
278
- };
279
- exports.selectOrders = selectOrders;
280
- const selectCurrentOrder = (state) => {
281
- return state.orders.currentOrder;
282
- };
283
- exports.selectCurrentOrder = selectCurrentOrder;
284
- const selectCurrentOrders = (state) => {
285
- const { entities, loading, error } = state.orders;
286
- const orders = entities.filter(i => {
287
- const tz = utils_1.timezoneMap[i.timezone];
288
- const fireDate = (0, utils_1.isoToDate)(i.fire_at, tz);
289
- const currentDate = (0, utils_1.currentLocalDate)(tz);
290
- return (0, utils_1.notDone)(i.prep_status) && fireDate < currentDate;
291
- });
292
- return { orders, loading, error };
293
- };
294
- exports.selectCurrentOrders = selectCurrentOrders;
295
- const selectFutureOrders = (state) => {
296
- const { entities, loading, error } = state.orders;
297
- const orders = entities.filter(i => {
298
- const tz = utils_1.timezoneMap[i.timezone];
299
- const fireDate = (0, utils_1.isoToDate)(i.fire_at, tz);
300
- const currentDate = (0, utils_1.currentLocalDate)(tz);
301
- return (0, utils_1.notDone)(i.prep_status) && fireDate > currentDate;
302
- });
303
- return { orders, loading, error };
304
- };
305
- exports.selectFutureOrders = selectFutureOrders;
306
- const selectOrdersCounts = (state) => {
307
- const { current, future, qa } = state.orders.counts;
308
- return { current, future, qa };
309
- };
310
- exports.selectOrdersCounts = selectOrdersCounts;
311
- exports.ordersReducer = ordersSlice.reducer;