@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
33 lines (32 loc) • 1.42 kB
JavaScript
import { useModifier } from '@open-tender/utils';
import { useAppDispatch, useAppSelector } from '../app/hooks';
import { selectKioskApi, selectKioskConfig, setCurrentOption } from '../slices';
var ItemOptionSelected = function (_a) {
var handlers = _a.handlers, group = _a.group, option = _a.option, levels = _a.levels, children = _a.children;
var dispatch = useAppDispatch();
var apiUrl = useAppSelector(selectKioskApi);
var config = useAppSelector(selectKioskConfig).itemOptionSelected;
var toggleOption = handlers.toggleOption, incrementOption = handlers.incrementOption, decrementOption = handlers.decrementOption, setOptionQuantity = handlers.setOptionQuantity;
var allergenAlerts = [];
var modifier = 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(setCurrentOption(currentOption));
};
if (!config)
return null;
return children({
config: config,
handlers: { showNested: showNested },
group: group,
groupOption: option,
option: modifier,
apiUrl: apiUrl
});
};
export default ItemOptionSelected;