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

35 lines (34 loc) 1.51 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require("@open-tender/utils"); var hooks_1 = require("../app/hooks"); var slices_1 = require("../slices"); var ItemOptionSelected = function (_a) { var handlers = _a.handlers, group = _a.group, option = _a.option, levels = _a.levels, children = _a.children; var dispatch = (0, hooks_1.useAppDispatch)(); var apiUrl = (0, hooks_1.useAppSelector)(slices_1.selectKioskApi); var config = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig).itemOptionSelected; var toggleOption = handlers.toggleOption, incrementOption = handlers.incrementOption, decrementOption = handlers.decrementOption, setOptionQuantity = handlers.setOptionQuantity; var allergenAlerts = []; var modifier = (0, utils_1.useModifier)(group, option, levels, toggleOption, incrementOption, decrementOption, setOptionQuantity, allergenAlerts); var showNested = function () { // dispatch(setCurrentOption(modifier)) var currentOption = { groupId: group.id, optionId: option.id, levels: modifier.updatedLevels }; dispatch((0, slices_1.setCurrentOption)(currentOption)); }; if (!config) return null; return children({ config: config, handlers: { showNested: showNested }, group: group, groupOption: option, option: modifier, apiUrl: apiUrl }); }; exports.default = ItemOptionSelected;