@open-tender/cloud 0.4.45 → 0.4.46

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.
@@ -14,10 +14,20 @@ export declare enum CheckoutActionType {
14
14
  ValidateOrder = "checkout/validateOrder",
15
15
  SubmitOrder = "checkout/SubmitOrder",
16
16
  SubmitOrderPay = "checkout/SubmitOrderPay",
17
- UpdateForm = "checkout/updateForm"
17
+ UpdateForm = "checkout/updateForm",
18
+ UpdateCheck = "checkout/updateCheck"
18
19
  }
20
+ export declare const updateCheck: import("@reduxjs/toolkit").AsyncThunk<CheckoutState, Partial<CheckoutCheck>, {
21
+ state: AppState;
22
+ rejectValue: CheckoutErrorMessages;
23
+ dispatch?: Dispatch<import("redux").AnyAction> | undefined;
24
+ extra?: unknown;
25
+ serializedErrorType?: unknown;
26
+ pendingMeta?: unknown;
27
+ fulfilledMeta?: unknown;
28
+ rejectedMeta?: unknown;
29
+ }>;
19
30
  export declare const validateOrder: import("@reduxjs/toolkit").AsyncThunk<{
20
- check: CheckoutCheck;
21
31
  errors: any;
22
32
  }, OrderCreate | null | undefined, {
23
33
  state: AppState;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var _a;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.checkoutReducer = exports.selectDiscounts = exports.selectCompletedOrder = exports.selectCheck = exports.selectCheckout = exports.setRecaptchaToken = exports.updateCheckoutCustomer = exports.setSubmitting = exports.setGuest = exports.setCompletedOrder = exports.resetTip = exports.resetErrors = exports.resetCompletedOrder = exports.resetCheck = exports.resetCheckout = exports.submitOrderPay = exports.updateForm = exports.submitOrder = exports.validateOrder = exports.CheckoutActionType = void 0;
4
+ exports.checkoutReducer = exports.selectDiscounts = exports.selectCompletedOrder = exports.selectCheck = exports.selectCheckout = exports.setRecaptchaToken = exports.updateCheckoutCustomer = exports.setSubmitting = exports.setGuest = exports.setCompletedOrder = exports.resetTip = exports.resetErrors = exports.resetCompletedOrder = exports.resetCheck = exports.resetCheckout = exports.submitOrderPay = exports.updateForm = exports.submitOrder = exports.validateOrder = exports.updateCheck = exports.CheckoutActionType = 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");
@@ -35,6 +35,7 @@ var CheckoutActionType;
35
35
  CheckoutActionType["SubmitOrder"] = "checkout/SubmitOrder";
36
36
  CheckoutActionType["SubmitOrderPay"] = "checkout/SubmitOrderPay";
37
37
  CheckoutActionType["UpdateForm"] = "checkout/updateForm";
38
+ CheckoutActionType["UpdateCheck"] = "checkout/updateCheck";
38
39
  })(CheckoutActionType = exports.CheckoutActionType || (exports.CheckoutActionType = {}));
39
40
  const assembleOrder = (orderData, save = false) => {
40
41
  const { order, checkout, groupOrder } = orderData;
@@ -106,6 +107,15 @@ const handleOrderErrors = (err, preparedOrder, dispatch) => {
106
107
  return errors;
107
108
  }
108
109
  };
110
+ exports.updateCheck = (0, toolkit_1.createAsyncThunk)(CheckoutActionType.UpdateCheck, (payload, { getState }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
111
+ const { checkout } = getState();
112
+ if (checkout.check) {
113
+ const check = Object.assign(Object.assign({}, checkout.check), payload);
114
+ return Object.assign(Object.assign({}, checkout), { check });
115
+ }
116
+ else
117
+ return checkout;
118
+ }));
109
119
  exports.validateOrder = (0, toolkit_1.createAsyncThunk)(CheckoutActionType.ValidateOrder, (order, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
110
120
  try {
111
121
  const { api } = getState().config;
@@ -141,7 +151,8 @@ exports.validateOrder = (0, toolkit_1.createAsyncThunk)(CheckoutActionType.Valid
141
151
  else if ((0, utils_1.contains)(keys, ['customer'])) {
142
152
  errors['customer'] = errMessages.customer;
143
153
  }
144
- return { check, errors, loading: 'idle' };
154
+ yield dispatch((0, exports.updateCheck)(check));
155
+ return { errors };
145
156
  }
146
157
  catch (err) {
147
158
  const errors = (0, utils_1.makeFormErrorsNested)(err);
@@ -276,7 +287,7 @@ const checkoutSlice = (0, toolkit_1.createSlice)({
276
287
  extraReducers: builder => {
277
288
  builder
278
289
  .addCase(exports.validateOrder.fulfilled, (state, action) => {
279
- return Object.assign(Object.assign(Object.assign({}, state), action.payload), { error: null });
290
+ return Object.assign(Object.assign(Object.assign({}, state), action.payload), { loading: 'idle', error: null });
280
291
  })
281
292
  .addCase(exports.validateOrder.pending, state => {
282
293
  state.loading = 'pending';
@@ -287,6 +298,9 @@ const checkoutSlice = (0, toolkit_1.createSlice)({
287
298
  })
288
299
  .addCase(exports.updateForm.fulfilled, (state, action) => {
289
300
  return Object.assign(Object.assign({}, state), action.payload);
301
+ })
302
+ .addCase(exports.updateCheck.fulfilled, (state, action) => {
303
+ return Object.assign(Object.assign({}, state), action.payload);
290
304
  })
291
305
  .addCase(exports.submitOrder.fulfilled, (_, action) => {
292
306
  return Object.assign(Object.assign({}, initialState), { completedOrder: action.payload });
@@ -14,10 +14,20 @@ export declare enum CheckoutActionType {
14
14
  ValidateOrder = "checkout/validateOrder",
15
15
  SubmitOrder = "checkout/SubmitOrder",
16
16
  SubmitOrderPay = "checkout/SubmitOrderPay",
17
- UpdateForm = "checkout/updateForm"
17
+ UpdateForm = "checkout/updateForm",
18
+ UpdateCheck = "checkout/updateCheck"
18
19
  }
20
+ export declare const updateCheck: import("@reduxjs/toolkit").AsyncThunk<CheckoutState, Partial<CheckoutCheck>, {
21
+ state: AppState;
22
+ rejectValue: CheckoutErrorMessages;
23
+ dispatch?: Dispatch<import("redux").AnyAction> | undefined;
24
+ extra?: unknown;
25
+ serializedErrorType?: unknown;
26
+ pendingMeta?: unknown;
27
+ fulfilledMeta?: unknown;
28
+ rejectedMeta?: unknown;
29
+ }>;
19
30
  export declare const validateOrder: import("@reduxjs/toolkit").AsyncThunk<{
20
- check: CheckoutCheck;
21
31
  errors: any;
22
32
  }, OrderCreate | null | undefined, {
23
33
  state: AppState;
@@ -31,6 +31,7 @@ export var CheckoutActionType;
31
31
  CheckoutActionType["SubmitOrder"] = "checkout/SubmitOrder";
32
32
  CheckoutActionType["SubmitOrderPay"] = "checkout/SubmitOrderPay";
33
33
  CheckoutActionType["UpdateForm"] = "checkout/updateForm";
34
+ CheckoutActionType["UpdateCheck"] = "checkout/updateCheck";
34
35
  })(CheckoutActionType || (CheckoutActionType = {}));
35
36
  const assembleOrder = (orderData, save = false) => {
36
37
  const { order, checkout, groupOrder } = orderData;
@@ -102,6 +103,15 @@ const handleOrderErrors = (err, preparedOrder, dispatch) => {
102
103
  return errors;
103
104
  }
104
105
  };
106
+ export const updateCheck = createAsyncThunk(CheckoutActionType.UpdateCheck, (payload, { getState }) => __awaiter(void 0, void 0, void 0, function* () {
107
+ const { checkout } = getState();
108
+ if (checkout.check) {
109
+ const check = Object.assign(Object.assign({}, checkout.check), payload);
110
+ return Object.assign(Object.assign({}, checkout), { check });
111
+ }
112
+ else
113
+ return checkout;
114
+ }));
105
115
  export const validateOrder = createAsyncThunk(CheckoutActionType.ValidateOrder, (order, { dispatch, getState, rejectWithValue }) => __awaiter(void 0, void 0, void 0, function* () {
106
116
  try {
107
117
  const { api } = getState().config;
@@ -137,7 +147,8 @@ export const validateOrder = createAsyncThunk(CheckoutActionType.ValidateOrder,
137
147
  else if (contains(keys, ['customer'])) {
138
148
  errors['customer'] = errMessages.customer;
139
149
  }
140
- return { check, errors, loading: 'idle' };
150
+ yield dispatch(updateCheck(check));
151
+ return { errors };
141
152
  }
142
153
  catch (err) {
143
154
  const errors = makeFormErrorsNested(err);
@@ -272,7 +283,7 @@ const checkoutSlice = createSlice({
272
283
  extraReducers: builder => {
273
284
  builder
274
285
  .addCase(validateOrder.fulfilled, (state, action) => {
275
- return Object.assign(Object.assign(Object.assign({}, state), action.payload), { error: null });
286
+ return Object.assign(Object.assign(Object.assign({}, state), action.payload), { loading: 'idle', error: null });
276
287
  })
277
288
  .addCase(validateOrder.pending, state => {
278
289
  state.loading = 'pending';
@@ -283,6 +294,9 @@ const checkoutSlice = createSlice({
283
294
  })
284
295
  .addCase(updateForm.fulfilled, (state, action) => {
285
296
  return Object.assign(Object.assign({}, state), action.payload);
297
+ })
298
+ .addCase(updateCheck.fulfilled, (state, action) => {
299
+ return Object.assign(Object.assign({}, state), action.payload);
286
300
  })
287
301
  .addCase(submitOrder.fulfilled, (_, action) => {
288
302
  return Object.assign(Object.assign({}, initialState), { completedOrder: action.payload });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-tender/cloud",
3
- "version": "0.4.45",
3
+ "version": "0.4.46",
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",