@popmenu/ordering-ui 0.101.0 → 0.103.0

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.
package/build/index.js CHANGED
@@ -268,6 +268,24 @@ function SvgChevronUp(props) {
268
268
  })));
269
269
  }
270
270
 
271
+ var _path$2m;
272
+
273
+ function _extends$5m() { _extends$5m = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$5m.apply(this, arguments); }
274
+
275
+ function SvgChevronRight(props) {
276
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$5m({
277
+ viewBox: "0 0 16 16",
278
+ fill: "none",
279
+ strokeLinecap: "round",
280
+ strokeLinejoin: "round",
281
+ width: "1em",
282
+ height: "1em"
283
+ }, props), _path$2m || (_path$2m = /*#__PURE__*/React__namespace.createElement("path", {
284
+ d: "M6 12l4-4-4-4",
285
+ stroke: "currentColor"
286
+ })));
287
+ }
288
+
271
289
  var _path$27;
272
290
 
273
291
  function _extends$4K() { _extends$4K = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$4K.apply(this, arguments); }
@@ -1709,6 +1727,11 @@ var useLabelStyles = styles.makeStyles(function (theme) { return ({
1709
1727
  price: {
1710
1728
  color: theme.palette.grey[700],
1711
1729
  },
1730
+ }); });
1731
+ var useOptionsStyles = styles.makeStyles(function (theme) { return ({
1732
+ options: {
1733
+ color: theme.palette.info.main,
1734
+ },
1712
1735
  }); });
1713
1736
 
1714
1737
  var useQuantityPickerStyles = styles.makeStyles(function (theme) { return ({
@@ -1794,8 +1817,16 @@ var Label = function (props) {
1794
1817
  "+ ",
1795
1818
  price)));
1796
1819
  };
1820
+ var Options = function (props) {
1821
+ var handleOptionsClick = props.handleOptionsClick, modifierId = props.modifierId;
1822
+ var classes = useOptionsStyles();
1823
+ return (React__default['default'].createElement(core.Box, { marginLeft: 3 },
1824
+ React__default['default'].createElement(Button, { variation: "none", className: classes.options, onClick: function () { return handleOptionsClick(modifierId); } },
1825
+ React__default['default'].createElement(core.Typography, { variant: "caption" }, "OPTIONS"),
1826
+ React__default['default'].createElement(Icon, { icon: SvgChevronRight }))));
1827
+ };
1797
1828
  var SingleSelectModifierControl = function (props) {
1798
- var modifiers = props.modifiers, isOutOfStock = props.isOutOfStock, onChange = props.onChange, value = props.value, messages = props.messages;
1829
+ var modifiers = props.modifiers, isOutOfStock = props.isOutOfStock, onChange = props.onChange, value = props.value, messages = props.messages, handleOptionsClick = props.handleOptionsClick;
1799
1830
  var radioClasses = useRadioModifierFormStyles();
1800
1831
  var makeHandleChange = function (modifier) { return function (e) {
1801
1832
  onChange([
@@ -1809,11 +1840,13 @@ var SingleSelectModifierControl = function (props) {
1809
1840
  return (React__default['default'].createElement(core.FormControl, { fullWidth: true },
1810
1841
  React__default['default'].createElement(core.RadioGroup, null, modifiers.map(function (modifier) {
1811
1842
  var _a;
1812
- return (React__default['default'].createElement(core.FormControlLabel, { key: modifier.id, value: modifier.id, control: React__default['default'].createElement(core.Radio, { checked: ((_a = value[0]) === null || _a === void 0 ? void 0 : _a.id) === modifier.id, className: radioClasses.radio, disabled: isOutOfStock || modifier.outOfStock, onChange: makeHandleChange(modifier) }), label: React__default['default'].createElement(Label, { messages: messages, name: modifier.name, price: modifier.formattedPrice, disabled: isOutOfStock || modifier.outOfStock, outOfStock: isOutOfStock }) }));
1843
+ return (React__default['default'].createElement(core.Box, { key: modifier.id },
1844
+ React__default['default'].createElement(core.FormControlLabel, { key: modifier.id, value: modifier.id, control: React__default['default'].createElement(core.Radio, { checked: ((_a = value[0]) === null || _a === void 0 ? void 0 : _a.id) === modifier.id, className: radioClasses.radio, disabled: isOutOfStock || modifier.outOfStock, onChange: makeHandleChange(modifier) }), label: React__default['default'].createElement(Label, { messages: messages, name: modifier.name, price: modifier.formattedPrice, disabled: isOutOfStock || modifier.outOfStock, outOfStock: isOutOfStock }) }),
1845
+ modifier.hasModifiers && React__default['default'].createElement(Options, { handleOptionsClick: handleOptionsClick, modifierId: modifier.id })));
1813
1846
  }))));
1814
1847
  };
1815
1848
  var MultipleSelectControl = function (props) {
1816
- var modifiers = props.modifiers, value = props.value, isOutOfStock = props.isOutOfStock, onChange = props.onChange, messages = props.messages, disableNewSelections = props.disableNewSelections;
1849
+ var modifiers = props.modifiers, value = props.value, isOutOfStock = props.isOutOfStock, onChange = props.onChange, messages = props.messages, disableNewSelections = props.disableNewSelections, handleOptionsClick = props.handleOptionsClick;
1817
1850
  var classes = useCheckboxModifierFormStyles();
1818
1851
  var makeHandleChange = function (modifier) { return function () {
1819
1852
  var isModifierInValue = Boolean(value.find(function (v) { return v.id === modifier.id; }));
@@ -1825,7 +1858,11 @@ var MultipleSelectControl = function (props) {
1825
1858
  }
1826
1859
  }; };
1827
1860
  return (React__default['default'].createElement(core.FormControl, { fullWidth: true },
1828
- React__default['default'].createElement(core.FormGroup, null, modifiers.map(function (modifier) { return (React__default['default'].createElement(core.FormControlLabel, { key: modifier.id, value: modifier.id, className: classes.root, checked: value.some(function (v) { return v.id === modifier.id; }), onChange: makeHandleChange(modifier), control: React__default['default'].createElement(core.Checkbox, { className: classes.radio, disabled: isOutOfStock || modifier.outOfStock || (!modifier.quantity && disableNewSelections) }), label: React__default['default'].createElement(Label, { messages: messages, name: modifier.name, price: modifier.formattedPrice, disabled: isOutOfStock || modifier.outOfStock, outOfStock: isOutOfStock }) })); }))));
1861
+ React__default['default'].createElement(core.FormGroup, null, modifiers.map(function (modifier) {
1862
+ return (React__default['default'].createElement(core.Box, { key: modifier.id },
1863
+ React__default['default'].createElement(core.FormControlLabel, { key: modifier.id, value: modifier.id, className: classes.root, checked: value.some(function (v) { return v.id === modifier.id; }), onChange: makeHandleChange(modifier), control: React__default['default'].createElement(core.Checkbox, { className: classes.radio, disabled: isOutOfStock || modifier.outOfStock || (!modifier.quantity && disableNewSelections) }), label: React__default['default'].createElement(Label, { messages: messages, name: modifier.name, price: modifier.formattedPrice, disabled: isOutOfStock || modifier.outOfStock, outOfStock: isOutOfStock }) }),
1864
+ modifier.hasModifiers && React__default['default'].createElement(Options, { handleOptionsClick: handleOptionsClick, modifierId: modifier.id })));
1865
+ }))));
1829
1866
  };
1830
1867
  var MultipleQuantitySelectControl = function (props) {
1831
1868
  var modifiers = props.modifiers, value = props.value, isOutOfStock = props.isOutOfStock, onChange = props.onChange, messages = props.messages, disableNewSelections = props.disableNewSelections;
@@ -1886,7 +1923,7 @@ var getStatusTagProps = function (props) {
1886
1923
  return { color: color, label: label, variant: variant };
1887
1924
  };
1888
1925
  var DishModifierCard = function (props) {
1889
- var name = props.name, disableNewSelections = props.disableNewSelections, modifiers = props.modifiers, value = props.value, messages = props.messages, onChange = props.onChange, type = props.type, error = props.error, isOutOfStock = props.isOutOfStock;
1926
+ var name = props.name, disableNewSelections = props.disableNewSelections, modifiers = props.modifiers, value = props.value, messages = props.messages, onChange = props.onChange, type = props.type, error = props.error, isOutOfStock = props.isOutOfStock, handleOptionsClick = props.handleOptionsClick;
1890
1927
  var classes = useDishModifierCardStyles();
1891
1928
  return (React__default['default'].createElement(core.Box, { className: classes.root },
1892
1929
  React__default['default'].createElement(core.Box, { display: "flex", justifyContent: "space-between", width: "100%", alignItems: "center", height: "fit-content", marginBottom: 2 },
@@ -1894,7 +1931,7 @@ var DishModifierCard = function (props) {
1894
1931
  !isOutOfStock && (React__default['default'].createElement(Typography, { variant: "subtitle1", className: error ? classes.error : undefined }, messages.helperText))),
1895
1932
  React__default['default'].createElement(Typography, { className: classes.name }, name),
1896
1933
  React__default['default'].createElement(core.Box, null,
1897
- React__default['default'].createElement(ModifierControls, { value: value, modifiers: modifiers, isOutOfStock: isOutOfStock, onChange: onChange, disableNewSelections: disableNewSelections, type: type, messages: messages }))));
1934
+ React__default['default'].createElement(ModifierControls, { value: value, modifiers: modifiers, isOutOfStock: isOutOfStock, onChange: onChange, disableNewSelections: disableNewSelections, type: type, messages: messages, handleOptionsClick: handleOptionsClick }))));
1898
1935
  };
1899
1936
  DishModifierCard.displayName = 'DishModifierCard';
1900
1937