@open-tender/cloud 0.1.51 → 0.1.53

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.
@@ -118,25 +118,217 @@ export declare const selectCartQuantity: (state: AppState) => number;
118
118
  export declare const selectCartTotal: (state: AppState) => number;
119
119
  export declare const selectCartCounts: (state: AppState) => CartCounts;
120
120
  export declare const selectCanOrder: (state: AppState) => RequestedAt | null;
121
- export declare const selectOrderLimits: (state: AppState) => {
121
+ export declare const selectOrderLimits: ((state: import("redux").EmptyObject & {
122
+ alerts: import("@open-tender/types").Alerts;
123
+ notifications: import("@open-tender/types").Notifications;
124
+ allergens: import("./allergens").AllergensState;
125
+ announcements: import("./announcements").AnnouncementsState;
126
+ customer: import("redux").CombinedState<{
127
+ account: import("./customer").AccountState;
128
+ allergens: import("./customer").CustomerAllergensState;
129
+ addresses: import("./customer").CustomerAddressesState;
130
+ communicationPreferences: import("./customer").CustomerCommunicationPrefsState;
131
+ creditCards: import("./customer").CustomerCreditCardsState;
132
+ favorites: import("./customer").CustomerFavoritesState;
133
+ fcmToken: import("./customer").CustomerFcmTokenState;
134
+ giftCards: import("./customer").CustomerGiftCardsState;
135
+ orders: import("./customer").CustomerOrdersState;
136
+ order: import("./customer").CustomerOrderState;
137
+ loyalty: import("./customer").CustomerLoyaltyState;
138
+ groupOrders: import("./customer").CustomerGroupOrdersState;
139
+ houseAccounts: import("./customer").CustomerHouseAccountsState;
140
+ rewards: import("./customer").CustomerRewardsState;
141
+ qrcode: import("./customer").CustomerQRCodeState;
142
+ thanx: import("./customer").CustomerThanxState;
143
+ levelup: import("./customer").CustomerLevelUpState;
144
+ }>;
145
+ signUp: import("./signUp").SignUpState;
146
+ revenueCenters: import("./revenueCenters").RevenueCentersState;
147
+ completedOrders: import("./completedOrders").CompletedOrdersState;
148
+ checkout: import("./checkout").CheckoutState;
149
+ order: OrderState;
150
+ orderFulfillment: import("./orderFulfillment").OrderFulfillmentState;
151
+ orderRating: import("./orderRating").OrderRatingState;
152
+ deals: import("./deals").DealState;
153
+ confirmation: import("./confirmation").ConfirmationState;
154
+ donations: import("./donations").DonationState;
155
+ guest: import("./guest").GuestState;
156
+ verifyAccount: import("./verifyAccount").VerifyAccountState;
157
+ menu: import("./menu").MenuState;
158
+ resetPassword: import("./resetPassword").ResetPasswordState;
159
+ validTimes: import("./validTimes").ValidTimesState;
160
+ menuItems: import("./menuItems").MenuItemsState;
161
+ menuDisplay: import("./menuDisplay").MenuDisplayState;
162
+ giftCards: import("./giftCards").GiftCardsState;
163
+ groupOrder: import("./groupOrder").GroupOrderState;
164
+ levelup: import("./levelup").LevelupState;
165
+ config: import("./config").ConfigState;
166
+ geolocation: import("./geolocation").GeoLocationState;
167
+ loader: import("./loader").LoaderState;
168
+ qr: import("./qr").QrState;
169
+ misc: import("./misc").MiscState;
170
+ modal: Modal;
171
+ navSite: import("./navSite").NavSiteState;
172
+ nav: import("./nav").NavState;
173
+ posts: import("./posts").PostsSlice;
174
+ sidebarModal: import("./sidebarModal").SidebarModalState;
175
+ sidebar: import("./sidebar").SidebarState;
176
+ tags: import("./tags").TagsState;
177
+ }) => {
122
178
  orderMinimum: number | null;
123
179
  orderMaximum: number | null;
180
+ }) & import("reselect").OutputSelectorFields<(args_0: {
181
+ revenueCenter: RevenueCenter | null;
182
+ serviceType: ServiceType | null;
183
+ cartGuest: import("./groupOrder").GroupOrderGuestState | null;
184
+ spendingLimit: string | null;
185
+ }) => {
186
+ orderMinimum: number | null;
187
+ orderMaximum: number | null;
188
+ }, {
189
+ clearCache: () => void;
190
+ }> & {
191
+ clearCache: () => void;
192
+ };
193
+ export declare const selectCartIds: ((state: import("redux").EmptyObject & {
194
+ alerts: import("@open-tender/types").Alerts;
195
+ notifications: import("@open-tender/types").Notifications;
196
+ allergens: import("./allergens").AllergensState;
197
+ announcements: import("./announcements").AnnouncementsState;
198
+ customer: import("redux").CombinedState<{
199
+ account: import("./customer").AccountState;
200
+ allergens: import("./customer").CustomerAllergensState;
201
+ addresses: import("./customer").CustomerAddressesState;
202
+ communicationPreferences: import("./customer").CustomerCommunicationPrefsState;
203
+ creditCards: import("./customer").CustomerCreditCardsState;
204
+ favorites: import("./customer").CustomerFavoritesState;
205
+ fcmToken: import("./customer").CustomerFcmTokenState;
206
+ giftCards: import("./customer").CustomerGiftCardsState;
207
+ orders: import("./customer").CustomerOrdersState;
208
+ order: import("./customer").CustomerOrderState;
209
+ loyalty: import("./customer").CustomerLoyaltyState;
210
+ groupOrders: import("./customer").CustomerGroupOrdersState;
211
+ houseAccounts: import("./customer").CustomerHouseAccountsState;
212
+ rewards: import("./customer").CustomerRewardsState;
213
+ qrcode: import("./customer").CustomerQRCodeState;
214
+ thanx: import("./customer").CustomerThanxState;
215
+ levelup: import("./customer").CustomerLevelUpState;
216
+ }>;
217
+ signUp: import("./signUp").SignUpState;
218
+ revenueCenters: import("./revenueCenters").RevenueCentersState;
219
+ completedOrders: import("./completedOrders").CompletedOrdersState;
220
+ checkout: import("./checkout").CheckoutState;
221
+ order: OrderState;
222
+ orderFulfillment: import("./orderFulfillment").OrderFulfillmentState;
223
+ orderRating: import("./orderRating").OrderRatingState;
224
+ deals: import("./deals").DealState;
225
+ confirmation: import("./confirmation").ConfirmationState;
226
+ donations: import("./donations").DonationState;
227
+ guest: import("./guest").GuestState;
228
+ verifyAccount: import("./verifyAccount").VerifyAccountState;
229
+ menu: import("./menu").MenuState;
230
+ resetPassword: import("./resetPassword").ResetPasswordState;
231
+ validTimes: import("./validTimes").ValidTimesState;
232
+ menuItems: import("./menuItems").MenuItemsState;
233
+ menuDisplay: import("./menuDisplay").MenuDisplayState;
234
+ giftCards: import("./giftCards").GiftCardsState;
235
+ groupOrder: import("./groupOrder").GroupOrderState;
236
+ levelup: import("./levelup").LevelupState;
237
+ config: import("./config").ConfigState;
238
+ geolocation: import("./geolocation").GeoLocationState;
239
+ loader: import("./loader").LoaderState;
240
+ qr: import("./qr").QrState;
241
+ misc: import("./misc").MiscState;
242
+ modal: Modal;
243
+ navSite: import("./navSite").NavSiteState;
244
+ nav: import("./nav").NavState;
245
+ posts: import("./posts").PostsSlice;
246
+ sidebarModal: import("./sidebarModal").SidebarModalState;
247
+ sidebar: import("./sidebar").SidebarState;
248
+ tags: import("./tags").TagsState;
249
+ }) => number[]) & import("reselect").OutputSelectorFields<(args_0: Cart | null) => number[], {
250
+ clearCache: () => void;
251
+ }> & {
252
+ clearCache: () => void;
124
253
  };
125
- export declare const selectCartIds: (state: AppState) => number[];
126
254
  export declare const selectMenuSlug: (state: AppState) => string;
127
255
  export declare const selectRevenueCenter: (state: AppState) => RevenueCenter | null;
128
256
  export declare const selectCart: (state: AppState) => Cart | null;
129
257
  export declare const selectCurrentVendor: (state: AppState) => MenuRevenueCenter | null;
130
258
  export declare const selectMessages: (state: AppState) => Messages;
131
259
  export declare const selectCurrentItem: (state: AppState) => CartItem | null;
132
- export declare const selectMenuVars: (state: AppState) => {
133
- revenueCenterId?: undefined;
134
- serviceType?: undefined;
135
- requestedAt?: undefined;
136
- } | {
137
- revenueCenterId: number;
260
+ export declare const selectMenuVars: ((state: import("redux").EmptyObject & {
261
+ alerts: import("@open-tender/types").Alerts;
262
+ notifications: import("@open-tender/types").Notifications;
263
+ allergens: import("./allergens").AllergensState;
264
+ announcements: import("./announcements").AnnouncementsState;
265
+ customer: import("redux").CombinedState<{
266
+ account: import("./customer").AccountState;
267
+ allergens: import("./customer").CustomerAllergensState;
268
+ addresses: import("./customer").CustomerAddressesState;
269
+ communicationPreferences: import("./customer").CustomerCommunicationPrefsState;
270
+ creditCards: import("./customer").CustomerCreditCardsState;
271
+ favorites: import("./customer").CustomerFavoritesState;
272
+ fcmToken: import("./customer").CustomerFcmTokenState;
273
+ giftCards: import("./customer").CustomerGiftCardsState;
274
+ orders: import("./customer").CustomerOrdersState;
275
+ order: import("./customer").CustomerOrderState;
276
+ loyalty: import("./customer").CustomerLoyaltyState;
277
+ groupOrders: import("./customer").CustomerGroupOrdersState;
278
+ houseAccounts: import("./customer").CustomerHouseAccountsState;
279
+ rewards: import("./customer").CustomerRewardsState;
280
+ qrcode: import("./customer").CustomerQRCodeState;
281
+ thanx: import("./customer").CustomerThanxState;
282
+ levelup: import("./customer").CustomerLevelUpState;
283
+ }>;
284
+ signUp: import("./signUp").SignUpState;
285
+ revenueCenters: import("./revenueCenters").RevenueCentersState;
286
+ completedOrders: import("./completedOrders").CompletedOrdersState;
287
+ checkout: import("./checkout").CheckoutState;
288
+ order: OrderState;
289
+ orderFulfillment: import("./orderFulfillment").OrderFulfillmentState;
290
+ orderRating: import("./orderRating").OrderRatingState;
291
+ deals: import("./deals").DealState;
292
+ confirmation: import("./confirmation").ConfirmationState;
293
+ donations: import("./donations").DonationState;
294
+ guest: import("./guest").GuestState;
295
+ verifyAccount: import("./verifyAccount").VerifyAccountState;
296
+ menu: import("./menu").MenuState;
297
+ resetPassword: import("./resetPassword").ResetPasswordState;
298
+ validTimes: import("./validTimes").ValidTimesState;
299
+ menuItems: import("./menuItems").MenuItemsState;
300
+ menuDisplay: import("./menuDisplay").MenuDisplayState;
301
+ giftCards: import("./giftCards").GiftCardsState;
302
+ groupOrder: import("./groupOrder").GroupOrderState;
303
+ levelup: import("./levelup").LevelupState;
304
+ config: import("./config").ConfigState;
305
+ geolocation: import("./geolocation").GeoLocationState;
306
+ loader: import("./loader").LoaderState;
307
+ qr: import("./qr").QrState;
308
+ misc: import("./misc").MiscState;
309
+ modal: Modal;
310
+ navSite: import("./navSite").NavSiteState;
311
+ nav: import("./nav").NavState;
312
+ posts: import("./posts").PostsSlice;
313
+ sidebarModal: import("./sidebarModal").SidebarModalState;
314
+ sidebar: import("./sidebar").SidebarState;
315
+ tags: import("./tags").TagsState;
316
+ }) => {
317
+ revenueCenterId: number | null;
138
318
  serviceType: ServiceType | null;
139
319
  requestedAt: RequestedAt | null;
320
+ }) & import("reselect").OutputSelectorFields<(args_0: {
321
+ revenueCenter: RevenueCenter | null;
322
+ serviceType: ServiceType | null;
323
+ requestedAt: RequestedAt | null;
324
+ }) => {
325
+ revenueCenterId: number | null;
326
+ serviceType: ServiceType | null;
327
+ requestedAt: RequestedAt | null;
328
+ }, {
329
+ clearCache: () => void;
330
+ }> & {
331
+ clearCache: () => void;
140
332
  };
141
333
  export declare const selectAutoSelect: (state: AppState) => boolean | undefined;
142
334
  export declare const selectCurrentCategory: (state: AppState) => MenuCategory | null;
@@ -450,12 +450,14 @@ const selectCanOrder = (state) => state.order.revenueCenter &&
450
450
  state.order.serviceType &&
451
451
  state.order.requestedAt;
452
452
  exports.selectCanOrder = selectCanOrder;
453
- const selectOrderLimits = (state) => {
453
+ exports.selectOrderLimits = (0, toolkit_1.createSelector)((state) => {
454
454
  const { revenueCenter, serviceType } = state.order;
455
+ const { cartGuest, spendingLimit } = state.groupOrder;
456
+ return { revenueCenter, serviceType, cartGuest, spendingLimit };
457
+ }, ({ revenueCenter, serviceType, cartGuest, spendingLimit }) => {
455
458
  if (!revenueCenter || !serviceType) {
456
459
  return { orderMinimum: null, orderMaximum: null };
457
460
  }
458
- const { cartGuest, spendingLimit } = state.groupOrder;
459
461
  const { order_maximum, order_minimum } = revenueCenter;
460
462
  const orderMax = cartGuest && spendingLimit
461
463
  ? parseFloat(spendingLimit)
@@ -470,12 +472,10 @@ const selectOrderLimits = (state) => {
470
472
  orderMinimum: orderMinimum > 0 ? orderMinimum : null,
471
473
  orderMaximum: orderMaximum > 0 ? orderMaximum : null
472
474
  };
473
- };
474
- exports.selectOrderLimits = selectOrderLimits;
475
- const selectCartIds = (state) => {
476
- return state.order.cart ? state.order.cart.map(i => i.id) : [];
477
- };
478
- exports.selectCartIds = selectCartIds;
475
+ });
476
+ exports.selectCartIds = (0, toolkit_1.createSelector)((state) => {
477
+ return state.order.cart;
478
+ }, cart => (cart ? cart.map(i => i.id) : []));
479
479
  const selectMenuSlug = (state) => {
480
480
  const { revenueCenter } = state.order;
481
481
  return revenueCenter ? `/menu/${revenueCenter.slug}` : '/';
@@ -491,16 +491,16 @@ const selectMessages = (state) => state.order.messages;
491
491
  exports.selectMessages = selectMessages;
492
492
  const selectCurrentItem = (state) => state.order.currentItem;
493
493
  exports.selectCurrentItem = selectCurrentItem;
494
- const selectMenuVars = (state) => {
495
- if (!state.order.revenueCenter)
496
- return {};
494
+ exports.selectMenuVars = (0, toolkit_1.createSelector)((state) => {
495
+ const { revenueCenter, serviceType, requestedAt } = state.order;
496
+ return { revenueCenter, serviceType, requestedAt };
497
+ }, ({ revenueCenter, serviceType, requestedAt }) => {
497
498
  return {
498
- revenueCenterId: state.order.revenueCenter.revenue_center_id,
499
- serviceType: state.order.serviceType,
500
- requestedAt: state.order.requestedAt
499
+ revenueCenterId: (revenueCenter === null || revenueCenter === void 0 ? void 0 : revenueCenter.revenue_center_id) || null,
500
+ serviceType: serviceType,
501
+ requestedAt: requestedAt
501
502
  };
502
- };
503
- exports.selectMenuVars = selectMenuVars;
503
+ });
504
504
  const selectAutoSelect = (state) => {
505
505
  var _a, _b;
506
506
  const autoSelect = (_b = (_a = state.config) === null || _a === void 0 ? void 0 : _a.settings) === null || _b === void 0 ? void 0 : _b.autoSelect;
@@ -118,25 +118,217 @@ export declare const selectCartQuantity: (state: AppState) => number;
118
118
  export declare const selectCartTotal: (state: AppState) => number;
119
119
  export declare const selectCartCounts: (state: AppState) => CartCounts;
120
120
  export declare const selectCanOrder: (state: AppState) => RequestedAt | null;
121
- export declare const selectOrderLimits: (state: AppState) => {
121
+ export declare const selectOrderLimits: ((state: import("redux").EmptyObject & {
122
+ alerts: import("@open-tender/types").Alerts;
123
+ notifications: import("@open-tender/types").Notifications;
124
+ allergens: import("./allergens").AllergensState;
125
+ announcements: import("./announcements").AnnouncementsState;
126
+ customer: import("redux").CombinedState<{
127
+ account: import("./customer").AccountState;
128
+ allergens: import("./customer").CustomerAllergensState;
129
+ addresses: import("./customer").CustomerAddressesState;
130
+ communicationPreferences: import("./customer").CustomerCommunicationPrefsState;
131
+ creditCards: import("./customer").CustomerCreditCardsState;
132
+ favorites: import("./customer").CustomerFavoritesState;
133
+ fcmToken: import("./customer").CustomerFcmTokenState;
134
+ giftCards: import("./customer").CustomerGiftCardsState;
135
+ orders: import("./customer").CustomerOrdersState;
136
+ order: import("./customer").CustomerOrderState;
137
+ loyalty: import("./customer").CustomerLoyaltyState;
138
+ groupOrders: import("./customer").CustomerGroupOrdersState;
139
+ houseAccounts: import("./customer").CustomerHouseAccountsState;
140
+ rewards: import("./customer").CustomerRewardsState;
141
+ qrcode: import("./customer").CustomerQRCodeState;
142
+ thanx: import("./customer").CustomerThanxState;
143
+ levelup: import("./customer").CustomerLevelUpState;
144
+ }>;
145
+ signUp: import("./signUp").SignUpState;
146
+ revenueCenters: import("./revenueCenters").RevenueCentersState;
147
+ completedOrders: import("./completedOrders").CompletedOrdersState;
148
+ checkout: import("./checkout").CheckoutState;
149
+ order: OrderState;
150
+ orderFulfillment: import("./orderFulfillment").OrderFulfillmentState;
151
+ orderRating: import("./orderRating").OrderRatingState;
152
+ deals: import("./deals").DealState;
153
+ confirmation: import("./confirmation").ConfirmationState;
154
+ donations: import("./donations").DonationState;
155
+ guest: import("./guest").GuestState;
156
+ verifyAccount: import("./verifyAccount").VerifyAccountState;
157
+ menu: import("./menu").MenuState;
158
+ resetPassword: import("./resetPassword").ResetPasswordState;
159
+ validTimes: import("./validTimes").ValidTimesState;
160
+ menuItems: import("./menuItems").MenuItemsState;
161
+ menuDisplay: import("./menuDisplay").MenuDisplayState;
162
+ giftCards: import("./giftCards").GiftCardsState;
163
+ groupOrder: import("./groupOrder").GroupOrderState;
164
+ levelup: import("./levelup").LevelupState;
165
+ config: import("./config").ConfigState;
166
+ geolocation: import("./geolocation").GeoLocationState;
167
+ loader: import("./loader").LoaderState;
168
+ qr: import("./qr").QrState;
169
+ misc: import("./misc").MiscState;
170
+ modal: Modal;
171
+ navSite: import("./navSite").NavSiteState;
172
+ nav: import("./nav").NavState;
173
+ posts: import("./posts").PostsSlice;
174
+ sidebarModal: import("./sidebarModal").SidebarModalState;
175
+ sidebar: import("./sidebar").SidebarState;
176
+ tags: import("./tags").TagsState;
177
+ }) => {
122
178
  orderMinimum: number | null;
123
179
  orderMaximum: number | null;
180
+ }) & import("reselect").OutputSelectorFields<(args_0: {
181
+ revenueCenter: RevenueCenter | null;
182
+ serviceType: ServiceType | null;
183
+ cartGuest: import("./groupOrder").GroupOrderGuestState | null;
184
+ spendingLimit: string | null;
185
+ }) => {
186
+ orderMinimum: number | null;
187
+ orderMaximum: number | null;
188
+ }, {
189
+ clearCache: () => void;
190
+ }> & {
191
+ clearCache: () => void;
192
+ };
193
+ export declare const selectCartIds: ((state: import("redux").EmptyObject & {
194
+ alerts: import("@open-tender/types").Alerts;
195
+ notifications: import("@open-tender/types").Notifications;
196
+ allergens: import("./allergens").AllergensState;
197
+ announcements: import("./announcements").AnnouncementsState;
198
+ customer: import("redux").CombinedState<{
199
+ account: import("./customer").AccountState;
200
+ allergens: import("./customer").CustomerAllergensState;
201
+ addresses: import("./customer").CustomerAddressesState;
202
+ communicationPreferences: import("./customer").CustomerCommunicationPrefsState;
203
+ creditCards: import("./customer").CustomerCreditCardsState;
204
+ favorites: import("./customer").CustomerFavoritesState;
205
+ fcmToken: import("./customer").CustomerFcmTokenState;
206
+ giftCards: import("./customer").CustomerGiftCardsState;
207
+ orders: import("./customer").CustomerOrdersState;
208
+ order: import("./customer").CustomerOrderState;
209
+ loyalty: import("./customer").CustomerLoyaltyState;
210
+ groupOrders: import("./customer").CustomerGroupOrdersState;
211
+ houseAccounts: import("./customer").CustomerHouseAccountsState;
212
+ rewards: import("./customer").CustomerRewardsState;
213
+ qrcode: import("./customer").CustomerQRCodeState;
214
+ thanx: import("./customer").CustomerThanxState;
215
+ levelup: import("./customer").CustomerLevelUpState;
216
+ }>;
217
+ signUp: import("./signUp").SignUpState;
218
+ revenueCenters: import("./revenueCenters").RevenueCentersState;
219
+ completedOrders: import("./completedOrders").CompletedOrdersState;
220
+ checkout: import("./checkout").CheckoutState;
221
+ order: OrderState;
222
+ orderFulfillment: import("./orderFulfillment").OrderFulfillmentState;
223
+ orderRating: import("./orderRating").OrderRatingState;
224
+ deals: import("./deals").DealState;
225
+ confirmation: import("./confirmation").ConfirmationState;
226
+ donations: import("./donations").DonationState;
227
+ guest: import("./guest").GuestState;
228
+ verifyAccount: import("./verifyAccount").VerifyAccountState;
229
+ menu: import("./menu").MenuState;
230
+ resetPassword: import("./resetPassword").ResetPasswordState;
231
+ validTimes: import("./validTimes").ValidTimesState;
232
+ menuItems: import("./menuItems").MenuItemsState;
233
+ menuDisplay: import("./menuDisplay").MenuDisplayState;
234
+ giftCards: import("./giftCards").GiftCardsState;
235
+ groupOrder: import("./groupOrder").GroupOrderState;
236
+ levelup: import("./levelup").LevelupState;
237
+ config: import("./config").ConfigState;
238
+ geolocation: import("./geolocation").GeoLocationState;
239
+ loader: import("./loader").LoaderState;
240
+ qr: import("./qr").QrState;
241
+ misc: import("./misc").MiscState;
242
+ modal: Modal;
243
+ navSite: import("./navSite").NavSiteState;
244
+ nav: import("./nav").NavState;
245
+ posts: import("./posts").PostsSlice;
246
+ sidebarModal: import("./sidebarModal").SidebarModalState;
247
+ sidebar: import("./sidebar").SidebarState;
248
+ tags: import("./tags").TagsState;
249
+ }) => number[]) & import("reselect").OutputSelectorFields<(args_0: Cart | null) => number[], {
250
+ clearCache: () => void;
251
+ }> & {
252
+ clearCache: () => void;
124
253
  };
125
- export declare const selectCartIds: (state: AppState) => number[];
126
254
  export declare const selectMenuSlug: (state: AppState) => string;
127
255
  export declare const selectRevenueCenter: (state: AppState) => RevenueCenter | null;
128
256
  export declare const selectCart: (state: AppState) => Cart | null;
129
257
  export declare const selectCurrentVendor: (state: AppState) => MenuRevenueCenter | null;
130
258
  export declare const selectMessages: (state: AppState) => Messages;
131
259
  export declare const selectCurrentItem: (state: AppState) => CartItem | null;
132
- export declare const selectMenuVars: (state: AppState) => {
133
- revenueCenterId?: undefined;
134
- serviceType?: undefined;
135
- requestedAt?: undefined;
136
- } | {
137
- revenueCenterId: number;
260
+ export declare const selectMenuVars: ((state: import("redux").EmptyObject & {
261
+ alerts: import("@open-tender/types").Alerts;
262
+ notifications: import("@open-tender/types").Notifications;
263
+ allergens: import("./allergens").AllergensState;
264
+ announcements: import("./announcements").AnnouncementsState;
265
+ customer: import("redux").CombinedState<{
266
+ account: import("./customer").AccountState;
267
+ allergens: import("./customer").CustomerAllergensState;
268
+ addresses: import("./customer").CustomerAddressesState;
269
+ communicationPreferences: import("./customer").CustomerCommunicationPrefsState;
270
+ creditCards: import("./customer").CustomerCreditCardsState;
271
+ favorites: import("./customer").CustomerFavoritesState;
272
+ fcmToken: import("./customer").CustomerFcmTokenState;
273
+ giftCards: import("./customer").CustomerGiftCardsState;
274
+ orders: import("./customer").CustomerOrdersState;
275
+ order: import("./customer").CustomerOrderState;
276
+ loyalty: import("./customer").CustomerLoyaltyState;
277
+ groupOrders: import("./customer").CustomerGroupOrdersState;
278
+ houseAccounts: import("./customer").CustomerHouseAccountsState;
279
+ rewards: import("./customer").CustomerRewardsState;
280
+ qrcode: import("./customer").CustomerQRCodeState;
281
+ thanx: import("./customer").CustomerThanxState;
282
+ levelup: import("./customer").CustomerLevelUpState;
283
+ }>;
284
+ signUp: import("./signUp").SignUpState;
285
+ revenueCenters: import("./revenueCenters").RevenueCentersState;
286
+ completedOrders: import("./completedOrders").CompletedOrdersState;
287
+ checkout: import("./checkout").CheckoutState;
288
+ order: OrderState;
289
+ orderFulfillment: import("./orderFulfillment").OrderFulfillmentState;
290
+ orderRating: import("./orderRating").OrderRatingState;
291
+ deals: import("./deals").DealState;
292
+ confirmation: import("./confirmation").ConfirmationState;
293
+ donations: import("./donations").DonationState;
294
+ guest: import("./guest").GuestState;
295
+ verifyAccount: import("./verifyAccount").VerifyAccountState;
296
+ menu: import("./menu").MenuState;
297
+ resetPassword: import("./resetPassword").ResetPasswordState;
298
+ validTimes: import("./validTimes").ValidTimesState;
299
+ menuItems: import("./menuItems").MenuItemsState;
300
+ menuDisplay: import("./menuDisplay").MenuDisplayState;
301
+ giftCards: import("./giftCards").GiftCardsState;
302
+ groupOrder: import("./groupOrder").GroupOrderState;
303
+ levelup: import("./levelup").LevelupState;
304
+ config: import("./config").ConfigState;
305
+ geolocation: import("./geolocation").GeoLocationState;
306
+ loader: import("./loader").LoaderState;
307
+ qr: import("./qr").QrState;
308
+ misc: import("./misc").MiscState;
309
+ modal: Modal;
310
+ navSite: import("./navSite").NavSiteState;
311
+ nav: import("./nav").NavState;
312
+ posts: import("./posts").PostsSlice;
313
+ sidebarModal: import("./sidebarModal").SidebarModalState;
314
+ sidebar: import("./sidebar").SidebarState;
315
+ tags: import("./tags").TagsState;
316
+ }) => {
317
+ revenueCenterId: number | null;
138
318
  serviceType: ServiceType | null;
139
319
  requestedAt: RequestedAt | null;
320
+ }) & import("reselect").OutputSelectorFields<(args_0: {
321
+ revenueCenter: RevenueCenter | null;
322
+ serviceType: ServiceType | null;
323
+ requestedAt: RequestedAt | null;
324
+ }) => {
325
+ revenueCenterId: number | null;
326
+ serviceType: ServiceType | null;
327
+ requestedAt: RequestedAt | null;
328
+ }, {
329
+ clearCache: () => void;
330
+ }> & {
331
+ clearCache: () => void;
140
332
  };
141
333
  export declare const selectAutoSelect: (state: AppState) => boolean | undefined;
142
334
  export declare const selectCurrentCategory: (state: AppState) => MenuCategory | null;
@@ -1,5 +1,5 @@
1
1
  import { __awaiter } from "tslib";
2
- import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
2
+ import { createAsyncThunk, createSelector, createSlice } from '@reduxjs/toolkit';
3
3
  import { ReducerType } from './types';
4
4
  import { addItem, calcCartCounts, decrementItem, getUserTimezone, incrementItem, makeFirstRequestedAt, makeFirstTimes, makeRandomNumberString, makeRequestedAtStr, rehydrateCart, rehydrateCheckoutForm, removeItem, timezoneMap } from '@open-tender/utils';
5
5
  import { updateForm } from './checkout';
@@ -438,12 +438,14 @@ export const selectCartCounts = (state) => state.order.cartCounts || {};
438
438
  export const selectCanOrder = (state) => state.order.revenueCenter &&
439
439
  state.order.serviceType &&
440
440
  state.order.requestedAt;
441
- export const selectOrderLimits = (state) => {
441
+ export const selectOrderLimits = createSelector((state) => {
442
442
  const { revenueCenter, serviceType } = state.order;
443
+ const { cartGuest, spendingLimit } = state.groupOrder;
444
+ return { revenueCenter, serviceType, cartGuest, spendingLimit };
445
+ }, ({ revenueCenter, serviceType, cartGuest, spendingLimit }) => {
443
446
  if (!revenueCenter || !serviceType) {
444
447
  return { orderMinimum: null, orderMaximum: null };
445
448
  }
446
- const { cartGuest, spendingLimit } = state.groupOrder;
447
449
  const { order_maximum, order_minimum } = revenueCenter;
448
450
  const orderMax = cartGuest && spendingLimit
449
451
  ? parseFloat(spendingLimit)
@@ -458,10 +460,10 @@ export const selectOrderLimits = (state) => {
458
460
  orderMinimum: orderMinimum > 0 ? orderMinimum : null,
459
461
  orderMaximum: orderMaximum > 0 ? orderMaximum : null
460
462
  };
461
- };
462
- export const selectCartIds = (state) => {
463
- return state.order.cart ? state.order.cart.map(i => i.id) : [];
464
- };
463
+ });
464
+ export const selectCartIds = createSelector((state) => {
465
+ return state.order.cart;
466
+ }, cart => (cart ? cart.map(i => i.id) : []));
465
467
  export const selectMenuSlug = (state) => {
466
468
  const { revenueCenter } = state.order;
467
469
  return revenueCenter ? `/menu/${revenueCenter.slug}` : '/';
@@ -471,15 +473,16 @@ export const selectCart = (state) => state.order.cart;
471
473
  export const selectCurrentVendor = (state) => state.order.currentVendor;
472
474
  export const selectMessages = (state) => state.order.messages;
473
475
  export const selectCurrentItem = (state) => state.order.currentItem;
474
- export const selectMenuVars = (state) => {
475
- if (!state.order.revenueCenter)
476
- return {};
476
+ export const selectMenuVars = createSelector((state) => {
477
+ const { revenueCenter, serviceType, requestedAt } = state.order;
478
+ return { revenueCenter, serviceType, requestedAt };
479
+ }, ({ revenueCenter, serviceType, requestedAt }) => {
477
480
  return {
478
- revenueCenterId: state.order.revenueCenter.revenue_center_id,
479
- serviceType: state.order.serviceType,
480
- requestedAt: state.order.requestedAt
481
+ revenueCenterId: (revenueCenter === null || revenueCenter === void 0 ? void 0 : revenueCenter.revenue_center_id) || null,
482
+ serviceType: serviceType,
483
+ requestedAt: requestedAt
481
484
  };
482
- };
485
+ });
483
486
  export const selectAutoSelect = (state) => {
484
487
  var _a, _b;
485
488
  const autoSelect = (_b = (_a = state.config) === null || _a === void 0 ? void 0 : _a.settings) === null || _b === void 0 ? void 0 : _b.autoSelect;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-tender/cloud",
3
- "version": "0.1.51",
3
+ "version": "0.1.53",
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",
package/dist/.DS_Store DELETED
Binary file