@open-tender/cloud 0.4.21 → 0.4.22

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.
@@ -163,6 +163,76 @@ export declare const selectOptIns: ((state: import("redux").EmptyObject & {
163
163
  }> & {
164
164
  clearCache: () => void;
165
165
  };
166
+ export declare const selectShowLoyalty: ((state: import("redux").EmptyObject & {
167
+ alerts: import("@open-tender/types").Alerts;
168
+ allergens: import("./allergens").AllergensState;
169
+ announcements: import("./announcements").AnnouncementsState;
170
+ checkout: import("./checkout").CheckoutState;
171
+ completedOrders: import("./completedOrders").CompletedOrdersState;
172
+ config: ConfigState;
173
+ confirmation: import("./confirmation").ConfirmationState;
174
+ customer: import("redux").CombinedState<{
175
+ account: import("./customer").AccountState;
176
+ communicationPreferences: import("./customer").CustomerCommunicationPrefsState;
177
+ creditCards: import("./customer").CustomerCreditCardsState;
178
+ allergens: import("./customer").CustomerAllergensState;
179
+ addresses: import("./customer").CustomerAddressesState;
180
+ favorites: import("./customer").CustomerFavoritesState;
181
+ fcmToken: import("./customer").CustomerFcmTokenState;
182
+ giftCards: import("./customer").CustomerGiftCardsState;
183
+ groupOrders: import("./customer").CustomerGroupOrdersState;
184
+ history: import("./customer").CustomerHistoryState;
185
+ houseAccounts: import("./customer").CustomerHouseAccountsState;
186
+ loyalty: import("./customer").CustomerLoyaltyState;
187
+ order: import("./customer").CustomerOrderState;
188
+ orders: import("./customer").CustomerOrdersState;
189
+ pointsShop: import("./customer").PointsShopState;
190
+ tplsPointsShop: import("./customer").TplsPointsShopState;
191
+ qrcode: import("./customer").CustomerQRCodeState;
192
+ rewards: import("./customer").CustomerRewardsState;
193
+ thanx: import("./customer").CustomerThanxState;
194
+ tpls: import("./customer").CustomerTplsState;
195
+ }>;
196
+ deals: import("./deals").DealsState;
197
+ donations: import("./donations").DonationState;
198
+ geolocation: import("./geolocation").GeoLocationState;
199
+ giftCards: import("./giftCards").GiftCardsState;
200
+ groupOrder: import("./groupOrder").GroupOrderState;
201
+ guest: import("./guest").GuestState;
202
+ loader: import("./loader").LoaderState;
203
+ menu: import("./menu").MenuState;
204
+ menuDisplay: import("./menuDisplay").MenuDisplayState;
205
+ menuItems: import("./menuItems").MenuItemsState;
206
+ modal: import("@open-tender/types").Modal;
207
+ misc: import("./misc").MiscState;
208
+ nav: import("./nav").NavState;
209
+ navSite: import("./navSite").NavSiteState;
210
+ notifications: import("@open-tender/types").Notifications;
211
+ oneTimePasscode: import("./oneTimePasscode").OneTimePasscodeState;
212
+ order: import("./order").OrderState;
213
+ orderFulfillment: import("./orderFulfillment").OrderFulfillmentState;
214
+ orderRating: import("./orderRating").OrderRatingState;
215
+ posts: import("./posts").PostsSlice;
216
+ pushNotifications: import("./pushNotifications").PushNotificationsState;
217
+ qr: import("./qr").QrState;
218
+ quote: import("./quote").QuoteState;
219
+ resetPassword: import("./resetPassword").ResetPasswordState;
220
+ revenueCenters: import("./revenueCenters").RevenueCentersState;
221
+ sidebar: import("./sidebar").SidebarState;
222
+ sidebarModal: import("./sidebarModal").SidebarModalState;
223
+ signUp: import("./signUp").SignUpState;
224
+ tags: import("./tags").TagsState;
225
+ terms: import("./terms").TermsSlice;
226
+ validTimes: import("./validTimes").ValidTimesState;
227
+ verifyAccount: import("./verifyAccount").VerifyAccountState;
228
+ }) => boolean) & import("reselect").OutputSelectorFields<(args_0: {
229
+ has_loyalty: boolean | undefined;
230
+ tpls: "COMO" | "THANX" | "PUNCHH" | "SPARKFLY" | null | undefined;
231
+ }) => boolean, {
232
+ clearCache: () => void;
233
+ }> & {
234
+ clearCache: () => void;
235
+ };
166
236
  export declare const selectFulfillment: (state: AppState) => import("@open-tender/types").ConfigFulfillment | undefined;
167
237
  export declare const selectRecaptcha: (state: AppState) => import("@open-tender/types").ConfigRecaptcha | undefined;
168
238
  export declare const selectContentSection: <T extends keyof ConfigContent>(page: T) => (state: AppState) => ConfigContent[T] | undefined;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var _a;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.configReducer = exports.selectCategoryType = exports.selectHasCatering = exports.selectOutpostName = exports.selectHeaderHeight = exports.selectSoldOutMsg = exports.selectBottomTabsTitles = exports.selectBottomTabsDisplayed = exports.selectPage = exports.selectContentSection = exports.selectRecaptcha = exports.selectFulfillment = exports.selectOptIns = exports.selectLightColor = exports.selectConfigRetries = exports.selectDisplaySettings = exports.selectCateringOnly = exports.selectAccountConfig = exports.selectApi = exports.selectPages = exports.selectStylesheet = exports.selectSettings = exports.selectContent = exports.selectTheme = exports.selectBrand = exports.selectConfig = exports.incrementRetries = exports.resetRetries = exports.resetConfig = exports.fetchConfig = exports.ConfigActionType = void 0;
4
+ exports.configReducer = exports.selectCategoryType = exports.selectHasCatering = exports.selectOutpostName = exports.selectHeaderHeight = exports.selectSoldOutMsg = exports.selectBottomTabsTitles = exports.selectBottomTabsDisplayed = exports.selectPage = exports.selectContentSection = exports.selectRecaptcha = exports.selectFulfillment = exports.selectShowLoyalty = exports.selectOptIns = exports.selectLightColor = exports.selectConfigRetries = exports.selectDisplaySettings = exports.selectCateringOnly = exports.selectAccountConfig = exports.selectApi = exports.selectPages = exports.selectStylesheet = exports.selectSettings = exports.selectContent = exports.selectTheme = exports.selectBrand = exports.selectConfig = exports.incrementRetries = exports.resetRetries = exports.resetConfig = exports.fetchConfig = exports.ConfigActionType = void 0;
5
5
  const tslib_1 = require("tslib");
6
6
  const toolkit_1 = require("@reduxjs/toolkit");
7
7
  const utils_1 = require("@open-tender/utils");
@@ -125,6 +125,16 @@ exports.selectOptIns = (0, toolkit_1.createSelector)((state) => {
125
125
  }, ({ accepts_marketing, order_notifications }) => {
126
126
  return { accepts_marketing, order_notifications };
127
127
  });
128
+ exports.selectShowLoyalty = (0, toolkit_1.createSelector)((state) => {
129
+ const { has_loyalty, tpls } = state.config.brand || {};
130
+ return { has_loyalty, tpls };
131
+ }, ({ has_loyalty, tpls }) => {
132
+ if (has_loyalty)
133
+ return true;
134
+ if (tpls === 'PUNCHH' || tpls === 'COMO')
135
+ return true;
136
+ return false;
137
+ });
128
138
  const selectFulfillment = (state) => { var _a; return (_a = state.config.brand) === null || _a === void 0 ? void 0 : _a.fulfillment; };
129
139
  exports.selectFulfillment = selectFulfillment;
130
140
  const selectRecaptcha = (state) => { var _a; return (_a = state.config.settings) === null || _a === void 0 ? void 0 : _a.recaptcha; };
@@ -23,4 +23,5 @@ export declare const fetchCustomerOrders: import("@reduxjs/toolkit").AsyncThunk<
23
23
  }>;
24
24
  export declare const resetCustomerOrders: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"orders/resetCustomerOrders">, resetCustomerOrdersError: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"orders/resetCustomerOrdersError">, setCustomerOrders: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "orders/setCustomerOrders">;
25
25
  export declare const selectCustomerOrders: (state: AppState) => CustomerOrdersState;
26
+ export declare const selectHasOrders: (state: AppState) => boolean;
26
27
  export declare const customerOrdersReducer: import("redux").Reducer<CustomerOrdersState, import("redux").AnyAction>;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var _a;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.customerOrdersReducer = exports.selectCustomerOrders = exports.setCustomerOrders = exports.resetCustomerOrdersError = exports.resetCustomerOrders = exports.fetchCustomerOrders = exports.CustomerOrdersActionType = void 0;
4
+ exports.customerOrdersReducer = exports.selectHasOrders = exports.selectCustomerOrders = exports.setCustomerOrders = exports.resetCustomerOrdersError = exports.resetCustomerOrders = exports.fetchCustomerOrders = exports.CustomerOrdersActionType = void 0;
5
5
  const tslib_1 = require("tslib");
6
6
  const toolkit_1 = require("@reduxjs/toolkit");
7
7
  const types_1 = require("../types");
@@ -64,4 +64,6 @@ const customerOrdersSlice = (0, toolkit_1.createSlice)({
64
64
  _a = customerOrdersSlice.actions, exports.resetCustomerOrders = _a.resetCustomerOrders, exports.resetCustomerOrdersError = _a.resetCustomerOrdersError, exports.setCustomerOrders = _a.setCustomerOrders;
65
65
  const selectCustomerOrders = (state) => state.customer.orders;
66
66
  exports.selectCustomerOrders = selectCustomerOrders;
67
+ const selectHasOrders = (state) => state.customer.orders.entities.length > 0;
68
+ exports.selectHasOrders = selectHasOrders;
67
69
  exports.customerOrdersReducer = customerOrdersSlice.reducer;
@@ -163,6 +163,76 @@ export declare const selectOptIns: ((state: import("redux").EmptyObject & {
163
163
  }> & {
164
164
  clearCache: () => void;
165
165
  };
166
+ export declare const selectShowLoyalty: ((state: import("redux").EmptyObject & {
167
+ alerts: import("@open-tender/types").Alerts;
168
+ allergens: import("./allergens").AllergensState;
169
+ announcements: import("./announcements").AnnouncementsState;
170
+ checkout: import("./checkout").CheckoutState;
171
+ completedOrders: import("./completedOrders").CompletedOrdersState;
172
+ config: ConfigState;
173
+ confirmation: import("./confirmation").ConfirmationState;
174
+ customer: import("redux").CombinedState<{
175
+ account: import("./customer").AccountState;
176
+ communicationPreferences: import("./customer").CustomerCommunicationPrefsState;
177
+ creditCards: import("./customer").CustomerCreditCardsState;
178
+ allergens: import("./customer").CustomerAllergensState;
179
+ addresses: import("./customer").CustomerAddressesState;
180
+ favorites: import("./customer").CustomerFavoritesState;
181
+ fcmToken: import("./customer").CustomerFcmTokenState;
182
+ giftCards: import("./customer").CustomerGiftCardsState;
183
+ groupOrders: import("./customer").CustomerGroupOrdersState;
184
+ history: import("./customer").CustomerHistoryState;
185
+ houseAccounts: import("./customer").CustomerHouseAccountsState;
186
+ loyalty: import("./customer").CustomerLoyaltyState;
187
+ order: import("./customer").CustomerOrderState;
188
+ orders: import("./customer").CustomerOrdersState;
189
+ pointsShop: import("./customer").PointsShopState;
190
+ tplsPointsShop: import("./customer").TplsPointsShopState;
191
+ qrcode: import("./customer").CustomerQRCodeState;
192
+ rewards: import("./customer").CustomerRewardsState;
193
+ thanx: import("./customer").CustomerThanxState;
194
+ tpls: import("./customer").CustomerTplsState;
195
+ }>;
196
+ deals: import("./deals").DealsState;
197
+ donations: import("./donations").DonationState;
198
+ geolocation: import("./geolocation").GeoLocationState;
199
+ giftCards: import("./giftCards").GiftCardsState;
200
+ groupOrder: import("./groupOrder").GroupOrderState;
201
+ guest: import("./guest").GuestState;
202
+ loader: import("./loader").LoaderState;
203
+ menu: import("./menu").MenuState;
204
+ menuDisplay: import("./menuDisplay").MenuDisplayState;
205
+ menuItems: import("./menuItems").MenuItemsState;
206
+ modal: import("@open-tender/types").Modal;
207
+ misc: import("./misc").MiscState;
208
+ nav: import("./nav").NavState;
209
+ navSite: import("./navSite").NavSiteState;
210
+ notifications: import("@open-tender/types").Notifications;
211
+ oneTimePasscode: import("./oneTimePasscode").OneTimePasscodeState;
212
+ order: import("./order").OrderState;
213
+ orderFulfillment: import("./orderFulfillment").OrderFulfillmentState;
214
+ orderRating: import("./orderRating").OrderRatingState;
215
+ posts: import("./posts").PostsSlice;
216
+ pushNotifications: import("./pushNotifications").PushNotificationsState;
217
+ qr: import("./qr").QrState;
218
+ quote: import("./quote").QuoteState;
219
+ resetPassword: import("./resetPassword").ResetPasswordState;
220
+ revenueCenters: import("./revenueCenters").RevenueCentersState;
221
+ sidebar: import("./sidebar").SidebarState;
222
+ sidebarModal: import("./sidebarModal").SidebarModalState;
223
+ signUp: import("./signUp").SignUpState;
224
+ tags: import("./tags").TagsState;
225
+ terms: import("./terms").TermsSlice;
226
+ validTimes: import("./validTimes").ValidTimesState;
227
+ verifyAccount: import("./verifyAccount").VerifyAccountState;
228
+ }) => boolean) & import("reselect").OutputSelectorFields<(args_0: {
229
+ has_loyalty: boolean | undefined;
230
+ tpls: "COMO" | "THANX" | "PUNCHH" | "SPARKFLY" | null | undefined;
231
+ }) => boolean, {
232
+ clearCache: () => void;
233
+ }> & {
234
+ clearCache: () => void;
235
+ };
166
236
  export declare const selectFulfillment: (state: AppState) => import("@open-tender/types").ConfigFulfillment | undefined;
167
237
  export declare const selectRecaptcha: (state: AppState) => import("@open-tender/types").ConfigRecaptcha | undefined;
168
238
  export declare const selectContentSection: <T extends keyof ConfigContent>(page: T) => (state: AppState) => ConfigContent[T] | undefined;
@@ -108,6 +108,16 @@ export const selectOptIns = createSelector((state) => {
108
108
  }, ({ accepts_marketing, order_notifications }) => {
109
109
  return { accepts_marketing, order_notifications };
110
110
  });
111
+ export const selectShowLoyalty = createSelector((state) => {
112
+ const { has_loyalty, tpls } = state.config.brand || {};
113
+ return { has_loyalty, tpls };
114
+ }, ({ has_loyalty, tpls }) => {
115
+ if (has_loyalty)
116
+ return true;
117
+ if (tpls === 'PUNCHH' || tpls === 'COMO')
118
+ return true;
119
+ return false;
120
+ });
111
121
  export const selectFulfillment = (state) => { var _a; return (_a = state.config.brand) === null || _a === void 0 ? void 0 : _a.fulfillment; };
112
122
  export const selectRecaptcha = (state) => { var _a; return (_a = state.config.settings) === null || _a === void 0 ? void 0 : _a.recaptcha; };
113
123
  export const selectContentSection = (page) => (state) => state.config.content ? state.config.content[page] : undefined;
@@ -23,4 +23,5 @@ export declare const fetchCustomerOrders: import("@reduxjs/toolkit").AsyncThunk<
23
23
  }>;
24
24
  export declare const resetCustomerOrders: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"orders/resetCustomerOrders">, resetCustomerOrdersError: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"orders/resetCustomerOrdersError">, setCustomerOrders: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "orders/setCustomerOrders">;
25
25
  export declare const selectCustomerOrders: (state: AppState) => CustomerOrdersState;
26
+ export declare const selectHasOrders: (state: AppState) => boolean;
26
27
  export declare const customerOrdersReducer: import("redux").Reducer<CustomerOrdersState, import("redux").AnyAction>;
@@ -59,4 +59,5 @@ const customerOrdersSlice = createSlice({
59
59
  });
60
60
  export const { resetCustomerOrders, resetCustomerOrdersError, setCustomerOrders } = customerOrdersSlice.actions;
61
61
  export const selectCustomerOrders = (state) => state.customer.orders;
62
+ export const selectHasOrders = (state) => state.customer.orders.entities.length > 0;
62
63
  export const customerOrdersReducer = customerOrdersSlice.reducer;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-tender/cloud",
3
- "version": "0.4.21",
3
+ "version": "0.4.22",
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",