UNPKG

@open-tender/store

Version:

A library of hooks, reducers, utility functions, and types for use with Open Tender applications that utilize our in-store POS API

44 lines (43 loc) 1.46 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var react_1 = require("react"); var hooks_1 = require("../app/hooks"); var slices_1 = require("../slices"); var endpoints = [ 'ACCOUNT', 'DEALS', 'FAVORITES', 'ORDERS', 'GIFT_CARDS', 'LOYALTY', 'REWARDS' ]; var SignInCheckout = function (_a) { var children = _a.children; var dispatch = (0, hooks_1.useAppDispatch)(); var config = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig).signInCheckout; var customer = (0, hooks_1.useAppSelector)(slices_1.selectCustomerIdentified); var customerId = ((customer === null || customer === void 0 ? void 0 : customer.customer) || {}).customer_id; var signIn = function () { dispatch((0, slices_1.openModal)({ type: 'SIGN_IN' })); }; var signOut = function () { dispatch((0, slices_1.resetCustomerIdentify)()); dispatch((0, slices_1.resetCustomer)()); dispatch((0, slices_1.resetMenu)()); }; var handlers = { signIn: signIn, signOut: signOut }; (0, react_1.useEffect)(function () { if (customerId) { dispatch((0, slices_1.fetchCustomer)({ customerId: customerId, endpoints: endpoints })); } }, [dispatch, customerId]); if (!config) return null; return children({ config: config, handlers: handlers, customer: customer }); }; exports.default = SignInCheckout;