@open-tender/store 1.1.236 → 1.1.238

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,4 +1,4 @@
1
- import { Allergens, Customer, CustomerEndpoints, CustomerEntities, Discounts, Favorites, GiftCards, LoyaltyPrograms, LoyaltyProgramSummary, Orders, RequestError, RequestStatus } from '@open-tender/types';
1
+ import { Allergens, Customer, CustomerEndpoints, CustomerEntities, Discounts, Favorites, GiftCards, LoyaltyPrograms, LoyaltyProgramSummary, Orders, OrderType, RequestError, RequestStatus } from '@open-tender/types';
2
2
  import { AppState } from '../app';
3
3
  export interface CustomerState {
4
4
  account: Customer | null;
@@ -88,21 +88,131 @@ export declare const selectCustomerLoyaltySummary: ((state: {
88
88
  memoize: typeof import("reselect").weakMapMemoize;
89
89
  };
90
90
  export declare const selectCustomerLoyalty: (state: AppState) => LoyaltyPrograms;
91
- export declare const selectCustomerLoyaltyProgram: (state: AppState) => {
92
- description?: string | undefined;
93
- earn_order_type?: import("@open-tender/types").OrderType | null | undefined;
94
- is_points_shop_enabled?: boolean | undefined;
95
- loyalty_program_id?: number | undefined;
96
- loyalty_type?: import("@open-tender/types").LoyaltyType | undefined;
97
- name?: string | undefined;
98
- perk?: import("@open-tender/types").LoyaltyPerk | null | undefined;
99
- redeem_order_type?: import("@open-tender/types").OrderType | null | undefined;
100
- reward_order_type?: import("@open-tender/types").OrderType | null | undefined;
101
- spend_name?: string | undefined;
102
- status?: import("@open-tender/types").LoyaltyStatus | null | undefined;
91
+ export declare const selectCustomerLoyaltyProgram: ((state: {
92
+ alerts: import("@open-tender/types").Alerts;
93
+ allergens: import("./allergens").AllergensState;
94
+ arrivals: import("./arrivals").ArrivalsState;
95
+ cartSummary: import("./cartSummary").CartSummaryState;
96
+ checkout: import("./checkout").CheckoutState;
97
+ config: import("./config").ConfigState;
98
+ customer: CustomerState;
99
+ customerIdentify: import("./customerIdentify").CustomerIdentifyState;
100
+ deals: import("./deals").DealsState;
101
+ discounts: import("./discounts").DiscountsState;
102
+ errorAlerts: import("./errorAlerts").ErrorAlertsState;
103
+ kds: import("./kds").KdsState;
104
+ kiosk: import("./kiosk").KioskState;
105
+ menu: import("./menu").MenuState;
106
+ menuPages: import("./menuPages").MenuPagesState;
107
+ modal: import("./modal").ModalState;
108
+ notifications: import("@open-tender/types").Notifications;
109
+ offlineAuths: import("./offlineAuths").OfflineAuthsState;
110
+ order: import("./order").OrderState;
111
+ pos: import("./pos").PosState;
112
+ punches: import("./punches").PunchesState;
113
+ refund: import("./refund").RefundState;
114
+ sendReceipt: import("./sendReceipt").SendReceiptState;
115
+ settings: import("./settings").SettingsState;
116
+ sidebar: import("./sidebar").SidebarState;
117
+ surcharges: import("./surcharges").SurchargesState;
118
+ taxes: import("./taxes").TaxesState;
119
+ idle: import("./idle").IdleState;
120
+ tags: import("./tags").TagsState;
121
+ }) => {
122
+ program: import("@open-tender/types").LoyaltyProgram | null;
123
+ loading: RequestStatus;
124
+ error: RequestError;
125
+ }) & {
126
+ clearCache: () => void;
127
+ resultsCount: () => number;
128
+ resetResultsCount: () => void;
129
+ } & {
130
+ resultFunc: (resultFuncArgs_0: CustomerState) => {
131
+ program: import("@open-tender/types").LoyaltyProgram | null;
132
+ loading: RequestStatus;
133
+ error: RequestError;
134
+ };
135
+ memoizedResultFunc: ((resultFuncArgs_0: CustomerState) => {
136
+ program: import("@open-tender/types").LoyaltyProgram | null;
137
+ loading: RequestStatus;
138
+ error: RequestError;
139
+ }) & {
140
+ clearCache: () => void;
141
+ resultsCount: () => number;
142
+ resetResultsCount: () => void;
143
+ };
144
+ lastResult: () => {
145
+ program: import("@open-tender/types").LoyaltyProgram | null;
146
+ loading: RequestStatus;
147
+ error: RequestError;
148
+ };
149
+ dependencies: [(state: AppState) => CustomerState];
150
+ recomputations: () => number;
151
+ resetRecomputations: () => void;
152
+ dependencyRecomputations: () => number;
153
+ resetDependencyRecomputations: () => void;
154
+ } & {
155
+ argsMemoize: typeof import("reselect").weakMapMemoize;
156
+ memoize: typeof import("reselect").weakMapMemoize;
157
+ };
158
+ export declare const selectCustomerPointsProgram: (orderType: OrderType | null) => ((state: {
159
+ alerts: import("@open-tender/types").Alerts;
160
+ allergens: import("./allergens").AllergensState;
161
+ arrivals: import("./arrivals").ArrivalsState;
162
+ cartSummary: import("./cartSummary").CartSummaryState;
163
+ checkout: import("./checkout").CheckoutState;
164
+ config: import("./config").ConfigState;
165
+ customer: CustomerState;
166
+ customerIdentify: import("./customerIdentify").CustomerIdentifyState;
167
+ deals: import("./deals").DealsState;
168
+ discounts: import("./discounts").DiscountsState;
169
+ errorAlerts: import("./errorAlerts").ErrorAlertsState;
170
+ kds: import("./kds").KdsState;
171
+ kiosk: import("./kiosk").KioskState;
172
+ menu: import("./menu").MenuState;
173
+ menuPages: import("./menuPages").MenuPagesState;
174
+ modal: import("./modal").ModalState;
175
+ notifications: import("@open-tender/types").Notifications;
176
+ offlineAuths: import("./offlineAuths").OfflineAuthsState;
177
+ order: import("./order").OrderState;
178
+ pos: import("./pos").PosState;
179
+ punches: import("./punches").PunchesState;
180
+ refund: import("./refund").RefundState;
181
+ sendReceipt: import("./sendReceipt").SendReceiptState;
182
+ settings: import("./settings").SettingsState;
183
+ sidebar: import("./sidebar").SidebarState;
184
+ surcharges: import("./surcharges").SurchargesState;
185
+ taxes: import("./taxes").TaxesState;
186
+ idle: import("./idle").IdleState;
187
+ tags: import("./tags").TagsState;
188
+ }) => import("@open-tender/types").LoyaltyProgram | null) & {
189
+ clearCache: () => void;
190
+ resultsCount: () => number;
191
+ resetResultsCount: () => void;
192
+ } & {
193
+ resultFunc: (resultFuncArgs_0: {
194
+ loyaltyPrograms: LoyaltyPrograms;
195
+ }) => import("@open-tender/types").LoyaltyProgram | null;
196
+ memoizedResultFunc: ((resultFuncArgs_0: {
197
+ loyaltyPrograms: LoyaltyPrograms;
198
+ }) => import("@open-tender/types").LoyaltyProgram | null) & {
199
+ clearCache: () => void;
200
+ resultsCount: () => number;
201
+ resetResultsCount: () => void;
202
+ };
203
+ lastResult: () => import("@open-tender/types").LoyaltyProgram | null;
204
+ dependencies: [(state: AppState) => {
205
+ loyaltyPrograms: LoyaltyPrograms;
206
+ }];
207
+ recomputations: () => number;
208
+ resetRecomputations: () => void;
209
+ dependencyRecomputations: () => number;
210
+ resetDependencyRecomputations: () => void;
211
+ } & {
212
+ argsMemoize: typeof import("reselect").weakMapMemoize;
213
+ memoize: typeof import("reselect").weakMapMemoize;
103
214
  };
104
- export declare const selectCustomerPointsProgram: (state: AppState) => import("@open-tender/types").LoyaltyProgram | null;
105
- export declare const selectCustomerPoints: (state: AppState) => {
215
+ export declare const selectCustomerPoints: (orderType: OrderType | null) => (state: AppState) => {
106
216
  name: string;
107
217
  points: `${number}.${number}` | null;
108
218
  } | null;
@@ -111,37 +111,40 @@ exports.selectCustomerLoyaltySummary = (0, toolkit_1.createSelector)(function (s
111
111
  });
112
112
  var selectCustomerLoyalty = function (state) { return state.customer.loyalty; };
113
113
  exports.selectCustomerLoyalty = selectCustomerLoyalty;
114
- var selectCustomerLoyaltyProgram = function (state) {
115
- var loyaltyPrograms = state.customer.loyalty;
116
- var programs = loyaltyPrograms.filter(function (i) { return i.earn_order_type === null || i.earn_order_type === 'OLO'; });
114
+ exports.selectCustomerLoyaltyProgram = (0, toolkit_1.createSelector)(function (state) { return state.customer; }, function (_a) {
115
+ var entities = _a.loyalty, loading = _a.loading, error = _a.error;
116
+ var programs = entities.filter(function (i) { return i.earn_order_type === null || i.earn_order_type === 'OLO'; });
117
117
  var program = programs.length ? programs[0] : null;
118
- return tslib_1.__assign({}, program);
119
- };
120
- exports.selectCustomerLoyaltyProgram = selectCustomerLoyaltyProgram;
121
- var selectCustomerPointsProgram = function (state) {
122
- var orderType = state.order.orderType;
123
- var loyaltyPrograms = state.customer.loyalty;
124
- if (!loyaltyPrograms)
125
- return null;
126
- var programs = loyaltyPrograms.filter(function (i) {
127
- var _a;
128
- return ((_a = i.perk) === null || _a === void 0 ? void 0 : _a.loyalty_perk) === 'BANKABLE_POINTS' &&
129
- (i.earn_order_type === null || i.earn_order_type === orderType);
118
+ return { program: program, loading: loading, error: error };
119
+ });
120
+ var selectCustomerPointsProgram = function (orderType) {
121
+ return (0, toolkit_1.createSelector)(function (state) {
122
+ var loyaltyPrograms = state.customer.loyalty;
123
+ return { loyaltyPrograms: loyaltyPrograms };
124
+ }, function (_a) {
125
+ var loyaltyPrograms = _a.loyaltyPrograms;
126
+ if (!loyaltyPrograms)
127
+ return null;
128
+ var programs = loyaltyPrograms.filter(function (i) {
129
+ var _a;
130
+ return ((_a = i.perk) === null || _a === void 0 ? void 0 : _a.loyalty_perk) === 'BANKABLE_POINTS' &&
131
+ (i.earn_order_type === null || i.earn_order_type === orderType);
132
+ });
133
+ return programs.length ? programs[0] : null;
130
134
  });
131
- return programs.length ? programs[0] : null;
132
135
  };
133
136
  exports.selectCustomerPointsProgram = selectCustomerPointsProgram;
134
- var selectCustomerPoints = function (state) {
135
- var program = (0, exports.selectCustomerPointsProgram)(state);
137
+ var selectCustomerPoints = function (orderType) { return function (state) {
138
+ var program = (0, exports.selectCustomerPointsProgram)(orderType)(state);
136
139
  if (!program || !program.perk)
137
140
  return null;
138
141
  var spend_name = program.spend_name, perk = program.perk;
139
142
  return { name: spend_name, points: perk.credit };
140
- };
143
+ }; };
141
144
  exports.selectCustomerPoints = selectCustomerPoints;
142
145
  var selectPointsProgram = function (state) {
143
146
  var orderType = state.order.orderType;
144
- return orderType ? (0, exports.selectCustomerPointsProgram)(state) : null;
147
+ return orderType ? (0, exports.selectCustomerPointsProgram)(orderType)(state) : null;
145
148
  };
146
149
  exports.selectPointsProgram = selectPointsProgram;
147
150
  exports.customerReducer = CustomerSlice.reducer;
@@ -1,4 +1,4 @@
1
- import { Allergens, Customer, CustomerEndpoints, CustomerEntities, Discounts, Favorites, GiftCards, LoyaltyPrograms, LoyaltyProgramSummary, Orders, RequestError, RequestStatus } from '@open-tender/types';
1
+ import { Allergens, Customer, CustomerEndpoints, CustomerEntities, Discounts, Favorites, GiftCards, LoyaltyPrograms, LoyaltyProgramSummary, Orders, OrderType, RequestError, RequestStatus } from '@open-tender/types';
2
2
  import { AppState } from '../app';
3
3
  export interface CustomerState {
4
4
  account: Customer | null;
@@ -88,21 +88,131 @@ export declare const selectCustomerLoyaltySummary: ((state: {
88
88
  memoize: typeof import("reselect").weakMapMemoize;
89
89
  };
90
90
  export declare const selectCustomerLoyalty: (state: AppState) => LoyaltyPrograms;
91
- export declare const selectCustomerLoyaltyProgram: (state: AppState) => {
92
- description?: string | undefined;
93
- earn_order_type?: import("@open-tender/types").OrderType | null | undefined;
94
- is_points_shop_enabled?: boolean | undefined;
95
- loyalty_program_id?: number | undefined;
96
- loyalty_type?: import("@open-tender/types").LoyaltyType | undefined;
97
- name?: string | undefined;
98
- perk?: import("@open-tender/types").LoyaltyPerk | null | undefined;
99
- redeem_order_type?: import("@open-tender/types").OrderType | null | undefined;
100
- reward_order_type?: import("@open-tender/types").OrderType | null | undefined;
101
- spend_name?: string | undefined;
102
- status?: import("@open-tender/types").LoyaltyStatus | null | undefined;
91
+ export declare const selectCustomerLoyaltyProgram: ((state: {
92
+ alerts: import("@open-tender/types").Alerts;
93
+ allergens: import("./allergens").AllergensState;
94
+ arrivals: import("./arrivals").ArrivalsState;
95
+ cartSummary: import("./cartSummary").CartSummaryState;
96
+ checkout: import("./checkout").CheckoutState;
97
+ config: import("./config").ConfigState;
98
+ customer: CustomerState;
99
+ customerIdentify: import("./customerIdentify").CustomerIdentifyState;
100
+ deals: import("./deals").DealsState;
101
+ discounts: import("./discounts").DiscountsState;
102
+ errorAlerts: import("./errorAlerts").ErrorAlertsState;
103
+ kds: import("./kds").KdsState;
104
+ kiosk: import("./kiosk").KioskState;
105
+ menu: import("./menu").MenuState;
106
+ menuPages: import("./menuPages").MenuPagesState;
107
+ modal: import("./modal").ModalState;
108
+ notifications: import("@open-tender/types").Notifications;
109
+ offlineAuths: import("./offlineAuths").OfflineAuthsState;
110
+ order: import("./order").OrderState;
111
+ pos: import("./pos").PosState;
112
+ punches: import("./punches").PunchesState;
113
+ refund: import("./refund").RefundState;
114
+ sendReceipt: import("./sendReceipt").SendReceiptState;
115
+ settings: import("./settings").SettingsState;
116
+ sidebar: import("./sidebar").SidebarState;
117
+ surcharges: import("./surcharges").SurchargesState;
118
+ taxes: import("./taxes").TaxesState;
119
+ idle: import("./idle").IdleState;
120
+ tags: import("./tags").TagsState;
121
+ }) => {
122
+ program: import("@open-tender/types").LoyaltyProgram | null;
123
+ loading: RequestStatus;
124
+ error: RequestError;
125
+ }) & {
126
+ clearCache: () => void;
127
+ resultsCount: () => number;
128
+ resetResultsCount: () => void;
129
+ } & {
130
+ resultFunc: (resultFuncArgs_0: CustomerState) => {
131
+ program: import("@open-tender/types").LoyaltyProgram | null;
132
+ loading: RequestStatus;
133
+ error: RequestError;
134
+ };
135
+ memoizedResultFunc: ((resultFuncArgs_0: CustomerState) => {
136
+ program: import("@open-tender/types").LoyaltyProgram | null;
137
+ loading: RequestStatus;
138
+ error: RequestError;
139
+ }) & {
140
+ clearCache: () => void;
141
+ resultsCount: () => number;
142
+ resetResultsCount: () => void;
143
+ };
144
+ lastResult: () => {
145
+ program: import("@open-tender/types").LoyaltyProgram | null;
146
+ loading: RequestStatus;
147
+ error: RequestError;
148
+ };
149
+ dependencies: [(state: AppState) => CustomerState];
150
+ recomputations: () => number;
151
+ resetRecomputations: () => void;
152
+ dependencyRecomputations: () => number;
153
+ resetDependencyRecomputations: () => void;
154
+ } & {
155
+ argsMemoize: typeof import("reselect").weakMapMemoize;
156
+ memoize: typeof import("reselect").weakMapMemoize;
157
+ };
158
+ export declare const selectCustomerPointsProgram: (orderType: OrderType | null) => ((state: {
159
+ alerts: import("@open-tender/types").Alerts;
160
+ allergens: import("./allergens").AllergensState;
161
+ arrivals: import("./arrivals").ArrivalsState;
162
+ cartSummary: import("./cartSummary").CartSummaryState;
163
+ checkout: import("./checkout").CheckoutState;
164
+ config: import("./config").ConfigState;
165
+ customer: CustomerState;
166
+ customerIdentify: import("./customerIdentify").CustomerIdentifyState;
167
+ deals: import("./deals").DealsState;
168
+ discounts: import("./discounts").DiscountsState;
169
+ errorAlerts: import("./errorAlerts").ErrorAlertsState;
170
+ kds: import("./kds").KdsState;
171
+ kiosk: import("./kiosk").KioskState;
172
+ menu: import("./menu").MenuState;
173
+ menuPages: import("./menuPages").MenuPagesState;
174
+ modal: import("./modal").ModalState;
175
+ notifications: import("@open-tender/types").Notifications;
176
+ offlineAuths: import("./offlineAuths").OfflineAuthsState;
177
+ order: import("./order").OrderState;
178
+ pos: import("./pos").PosState;
179
+ punches: import("./punches").PunchesState;
180
+ refund: import("./refund").RefundState;
181
+ sendReceipt: import("./sendReceipt").SendReceiptState;
182
+ settings: import("./settings").SettingsState;
183
+ sidebar: import("./sidebar").SidebarState;
184
+ surcharges: import("./surcharges").SurchargesState;
185
+ taxes: import("./taxes").TaxesState;
186
+ idle: import("./idle").IdleState;
187
+ tags: import("./tags").TagsState;
188
+ }) => import("@open-tender/types").LoyaltyProgram | null) & {
189
+ clearCache: () => void;
190
+ resultsCount: () => number;
191
+ resetResultsCount: () => void;
192
+ } & {
193
+ resultFunc: (resultFuncArgs_0: {
194
+ loyaltyPrograms: LoyaltyPrograms;
195
+ }) => import("@open-tender/types").LoyaltyProgram | null;
196
+ memoizedResultFunc: ((resultFuncArgs_0: {
197
+ loyaltyPrograms: LoyaltyPrograms;
198
+ }) => import("@open-tender/types").LoyaltyProgram | null) & {
199
+ clearCache: () => void;
200
+ resultsCount: () => number;
201
+ resetResultsCount: () => void;
202
+ };
203
+ lastResult: () => import("@open-tender/types").LoyaltyProgram | null;
204
+ dependencies: [(state: AppState) => {
205
+ loyaltyPrograms: LoyaltyPrograms;
206
+ }];
207
+ recomputations: () => number;
208
+ resetRecomputations: () => void;
209
+ dependencyRecomputations: () => number;
210
+ resetDependencyRecomputations: () => void;
211
+ } & {
212
+ argsMemoize: typeof import("reselect").weakMapMemoize;
213
+ memoize: typeof import("reselect").weakMapMemoize;
103
214
  };
104
- export declare const selectCustomerPointsProgram: (state: AppState) => import("@open-tender/types").LoyaltyProgram | null;
105
- export declare const selectCustomerPoints: (state: AppState) => {
215
+ export declare const selectCustomerPoints: (orderType: OrderType | null) => (state: AppState) => {
106
216
  name: string;
107
217
  points: `${number}.${number}` | null;
108
218
  } | null;
@@ -1,4 +1,4 @@
1
- import { __assign, __awaiter, __generator } from "tslib";
1
+ import { __awaiter, __generator } from "tslib";
2
2
  import { createAsyncThunk, createSelector, createSlice } from '@reduxjs/toolkit';
3
3
  import { ReducerType } from './types';
4
4
  var initialState = {
@@ -100,33 +100,37 @@ export var selectCustomerLoyaltySummary = createSelector(function (state) {
100
100
  };
101
101
  });
102
102
  export var selectCustomerLoyalty = function (state) { return state.customer.loyalty; };
103
- export var selectCustomerLoyaltyProgram = function (state) {
104
- var loyaltyPrograms = state.customer.loyalty;
105
- var programs = loyaltyPrograms.filter(function (i) { return i.earn_order_type === null || i.earn_order_type === 'OLO'; });
103
+ export var selectCustomerLoyaltyProgram = createSelector(function (state) { return state.customer; }, function (_a) {
104
+ var entities = _a.loyalty, loading = _a.loading, error = _a.error;
105
+ var programs = entities.filter(function (i) { return i.earn_order_type === null || i.earn_order_type === 'OLO'; });
106
106
  var program = programs.length ? programs[0] : null;
107
- return __assign({}, program);
108
- };
109
- export var selectCustomerPointsProgram = function (state) {
110
- var orderType = state.order.orderType;
111
- var loyaltyPrograms = state.customer.loyalty;
112
- if (!loyaltyPrograms)
113
- return null;
114
- var programs = loyaltyPrograms.filter(function (i) {
115
- var _a;
116
- return ((_a = i.perk) === null || _a === void 0 ? void 0 : _a.loyalty_perk) === 'BANKABLE_POINTS' &&
117
- (i.earn_order_type === null || i.earn_order_type === orderType);
107
+ return { program: program, loading: loading, error: error };
108
+ });
109
+ export var selectCustomerPointsProgram = function (orderType) {
110
+ return createSelector(function (state) {
111
+ var loyaltyPrograms = state.customer.loyalty;
112
+ return { loyaltyPrograms: loyaltyPrograms };
113
+ }, function (_a) {
114
+ var loyaltyPrograms = _a.loyaltyPrograms;
115
+ if (!loyaltyPrograms)
116
+ return null;
117
+ var programs = loyaltyPrograms.filter(function (i) {
118
+ var _a;
119
+ return ((_a = i.perk) === null || _a === void 0 ? void 0 : _a.loyalty_perk) === 'BANKABLE_POINTS' &&
120
+ (i.earn_order_type === null || i.earn_order_type === orderType);
121
+ });
122
+ return programs.length ? programs[0] : null;
118
123
  });
119
- return programs.length ? programs[0] : null;
120
124
  };
121
- export var selectCustomerPoints = function (state) {
122
- var program = selectCustomerPointsProgram(state);
125
+ export var selectCustomerPoints = function (orderType) { return function (state) {
126
+ var program = selectCustomerPointsProgram(orderType)(state);
123
127
  if (!program || !program.perk)
124
128
  return null;
125
129
  var spend_name = program.spend_name, perk = program.perk;
126
130
  return { name: spend_name, points: perk.credit };
127
- };
131
+ }; };
128
132
  export var selectPointsProgram = function (state) {
129
133
  var orderType = state.order.orderType;
130
- return orderType ? selectCustomerPointsProgram(state) : null;
134
+ return orderType ? selectCustomerPointsProgram(orderType)(state) : null;
131
135
  };
132
136
  export var customerReducer = CustomerSlice.reducer;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-tender/store",
3
- "version": "1.1.236",
3
+ "version": "1.1.238",
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",