@popmenu/ordering-ui 0.127.0 → 0.127.2

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.
Files changed (172) hide show
  1. package/build/cjs/components/Button/index.d.ts +1 -1
  2. package/build/cjs/components/DishCheckoutCard/index.d.ts +2 -2
  3. package/build/cjs/components/DishDetailsReview/index.d.ts +2 -2
  4. package/build/cjs/components/DishModifierCard/index.d.ts +2 -2
  5. package/build/cjs/components/ItemTag/index.d.ts +2 -2
  6. package/build/cjs/components/ItemTagGroup/index.d.ts +1 -1
  7. package/build/cjs/components/LocationCard/index.d.ts +2 -2
  8. package/build/cjs/components/MenuBanner/index.d.ts +1 -1
  9. package/build/cjs/components/MenuDropdown/index.d.ts +2 -2
  10. package/build/cjs/components/MenuFilter/index.d.ts +2 -2
  11. package/build/cjs/components/MenuItem/index.d.ts +1 -1
  12. package/build/cjs/components/MenuSection/index.d.ts +1 -1
  13. package/build/cjs/components/MenuTab/MenuTab.styles.d.ts +4 -1
  14. package/build/cjs/components/MenuTab/index.d.ts +2 -2
  15. package/build/cjs/components/MenuTabGroup/MenuTabGroupProps.d.ts +1 -4
  16. package/build/cjs/components/MenuTabGroup/index.d.ts +2 -2
  17. package/build/cjs/components/QuantityPicker/index.d.ts +2 -2
  18. package/build/cjs/components/ReactionCounter/index.d.ts +2 -2
  19. package/build/cjs/components/ReactionCounterGroup/index.d.ts +1 -1
  20. package/build/cjs/components/SelectableChip/index.d.ts +2 -2
  21. package/build/cjs/components/SelectableChipGroup/SelectableChipGroupProps.d.ts +1 -4
  22. package/build/cjs/components/SelectableChipGroup/index.d.ts +2 -2
  23. package/build/cjs/components/SelectedMenuFiltersList/index.d.ts +1 -1
  24. package/build/cjs/components/StatusTag/index.d.ts +2 -2
  25. package/build/cjs/components/index.d.ts +41 -22
  26. package/build/cjs/index.js +524 -674
  27. package/build/cjs/index.js.map +1 -1
  28. package/build/esm/components/Button/Button.js +4 -5
  29. package/build/esm/components/Button/Button.js.map +1 -1
  30. package/build/esm/components/Button/index.d.ts +1 -1
  31. package/build/esm/components/Checkbox/Checkbox.js +7 -10
  32. package/build/esm/components/Checkbox/Checkbox.js.map +1 -1
  33. package/build/esm/components/DialogSection/DialogSection.js +3 -4
  34. package/build/esm/components/DialogSection/DialogSection.js.map +1 -1
  35. package/build/esm/components/DialogTitle/DialogTitle.js +5 -5
  36. package/build/esm/components/DialogTitle/DialogTitle.js.map +1 -1
  37. package/build/esm/components/DishCheckoutCard/DishCheckoutCard.js +18 -28
  38. package/build/esm/components/DishCheckoutCard/DishCheckoutCard.js.map +1 -1
  39. package/build/esm/components/DishCheckoutCard/DishCheckoutCard.styles.js +3 -6
  40. package/build/esm/components/DishCheckoutCard/DishCheckoutCard.styles.js.map +1 -1
  41. package/build/esm/components/DishCheckoutCard/index.d.ts +2 -2
  42. package/build/esm/components/DishDetailsReview/DishDetailsReview.js +2 -2
  43. package/build/esm/components/DishDetailsReview/DishDetailsReview.js.map +1 -1
  44. package/build/esm/components/DishDetailsReview/index.d.ts +2 -2
  45. package/build/esm/components/DishModifierCard/DishModifierCard.js +15 -17
  46. package/build/esm/components/DishModifierCard/DishModifierCard.js.map +1 -1
  47. package/build/esm/components/DishModifierCard/DishModifierCard.styles.js +11 -11
  48. package/build/esm/components/DishModifierCard/DishModifierCard.styles.js.map +1 -1
  49. package/build/esm/components/DishModifierCard/ModifierControls.js +44 -51
  50. package/build/esm/components/DishModifierCard/ModifierControls.js.map +1 -1
  51. package/build/esm/components/DishModifierCard/index.d.ts +2 -2
  52. package/build/esm/components/ItemTag/ItemTag.js +3 -3
  53. package/build/esm/components/ItemTag/ItemTag.js.map +1 -1
  54. package/build/esm/components/ItemTag/index.d.ts +2 -2
  55. package/build/esm/components/ItemTag/itemTag.styles.js +2 -2
  56. package/build/esm/components/ItemTag/itemTag.styles.js.map +1 -1
  57. package/build/esm/components/ItemTagGroup/ItemTagGroup.js +2 -2
  58. package/build/esm/components/ItemTagGroup/ItemTagGroup.js.map +1 -1
  59. package/build/esm/components/ItemTagGroup/index.d.ts +1 -1
  60. package/build/esm/components/LocationCard/LocationCard.js +7 -8
  61. package/build/esm/components/LocationCard/LocationCard.js.map +1 -1
  62. package/build/esm/components/LocationCard/LocationCard.styles.js +6 -12
  63. package/build/esm/components/LocationCard/LocationCard.styles.js.map +1 -1
  64. package/build/esm/components/LocationCard/index.d.ts +2 -2
  65. package/build/esm/components/MenuBanner/MenuBanner.js +9 -10
  66. package/build/esm/components/MenuBanner/MenuBanner.js.map +1 -1
  67. package/build/esm/components/MenuBanner/MenuBanner.styles.js +12 -16
  68. package/build/esm/components/MenuBanner/MenuBanner.styles.js.map +1 -1
  69. package/build/esm/components/MenuBanner/MenuBannerIcons.js +2 -2
  70. package/build/esm/components/MenuBanner/MenuBannerIcons.js.map +1 -1
  71. package/build/esm/components/MenuBanner/index.d.ts +1 -1
  72. package/build/esm/components/MenuDropdown/MenuDropdown.js +12 -15
  73. package/build/esm/components/MenuDropdown/MenuDropdown.js.map +1 -1
  74. package/build/esm/components/MenuDropdown/MenuDropdown.styles.js +29 -33
  75. package/build/esm/components/MenuDropdown/MenuDropdown.styles.js.map +1 -1
  76. package/build/esm/components/MenuDropdown/index.d.ts +2 -2
  77. package/build/esm/components/MenuFilter/MenuFilter.js +18 -18
  78. package/build/esm/components/MenuFilter/MenuFilter.js.map +1 -1
  79. package/build/esm/components/MenuFilter/MenuFilter.styles.js +2 -2
  80. package/build/esm/components/MenuFilter/MenuFilter.styles.js.map +1 -1
  81. package/build/esm/components/MenuFilter/index.d.ts +2 -2
  82. package/build/esm/components/MenuItem/MenuItem.js +10 -11
  83. package/build/esm/components/MenuItem/MenuItem.js.map +1 -1
  84. package/build/esm/components/MenuItem/MenuItem.styles.js +56 -60
  85. package/build/esm/components/MenuItem/MenuItem.styles.js.map +1 -1
  86. package/build/esm/components/MenuItem/MenuItemImg.js +6 -6
  87. package/build/esm/components/MenuItem/MenuItemImg.js.map +1 -1
  88. package/build/esm/components/MenuItem/MenuItemInfo.js +1 -1
  89. package/build/esm/components/MenuItem/MenuItemInfo.js.map +1 -1
  90. package/build/esm/components/MenuItem/MenuItemPrice.js +12 -15
  91. package/build/esm/components/MenuItem/MenuItemPrice.js.map +1 -1
  92. package/build/esm/components/MenuItem/MenuItemReactions.js +7 -7
  93. package/build/esm/components/MenuItem/MenuItemReactions.js.map +1 -1
  94. package/build/esm/components/MenuItem/MenuItemTags.js +3 -3
  95. package/build/esm/components/MenuItem/MenuItemTags.js.map +1 -1
  96. package/build/esm/components/MenuItem/index.d.ts +1 -1
  97. package/build/esm/components/MenuItemGroup/MenuItemGroup.js +5 -6
  98. package/build/esm/components/MenuItemGroup/MenuItemGroup.js.map +1 -1
  99. package/build/esm/components/MenuItemGroup/MenuItemGroupStyles.js +12 -16
  100. package/build/esm/components/MenuItemGroup/MenuItemGroupStyles.js.map +1 -1
  101. package/build/esm/components/MenuSection/MenuSection.js +4 -5
  102. package/build/esm/components/MenuSection/MenuSection.js.map +1 -1
  103. package/build/esm/components/MenuSection/MenuSectionStyles.js +2 -2
  104. package/build/esm/components/MenuSection/MenuSectionStyles.js.map +1 -1
  105. package/build/esm/components/MenuSection/index.d.ts +1 -1
  106. package/build/esm/components/MenuSectionGroup/MenuSectionGroup.js +3 -4
  107. package/build/esm/components/MenuSectionGroup/MenuSectionGroup.js.map +1 -1
  108. package/build/esm/components/MenuTab/MenuTab.js +5 -6
  109. package/build/esm/components/MenuTab/MenuTab.js.map +1 -1
  110. package/build/esm/components/MenuTab/MenuTab.styles.d.ts +4 -1
  111. package/build/esm/components/MenuTab/MenuTab.styles.js +11 -16
  112. package/build/esm/components/MenuTab/MenuTab.styles.js.map +1 -1
  113. package/build/esm/components/MenuTab/index.d.ts +2 -2
  114. package/build/esm/components/MenuTabGroup/MenuTabGroup.js +4 -5
  115. package/build/esm/components/MenuTabGroup/MenuTabGroup.js.map +1 -1
  116. package/build/esm/components/MenuTabGroup/MenuTabGroupProps.d.ts +1 -4
  117. package/build/esm/components/MenuTabGroup/index.d.ts +2 -2
  118. package/build/esm/components/OrderingAppContext/OrderingAppContext.js +6 -6
  119. package/build/esm/components/OrderingAppContext/OrderingAppContext.js.map +1 -1
  120. package/build/esm/components/PageSection/PageSection.js +1 -1
  121. package/build/esm/components/PageSection/PageSection.js.map +1 -1
  122. package/build/esm/components/QuantityPicker/QuantityPicker.js +16 -17
  123. package/build/esm/components/QuantityPicker/QuantityPicker.js.map +1 -1
  124. package/build/esm/components/QuantityPicker/QuantityPicker.styles.js +17 -17
  125. package/build/esm/components/QuantityPicker/QuantityPicker.styles.js.map +1 -1
  126. package/build/esm/components/QuantityPicker/index.d.ts +2 -2
  127. package/build/esm/components/Radio/Radio.js +7 -10
  128. package/build/esm/components/Radio/Radio.js.map +1 -1
  129. package/build/esm/components/ReactionCounter/ReactionCounter.js +2 -2
  130. package/build/esm/components/ReactionCounter/ReactionCounter.js.map +1 -1
  131. package/build/esm/components/ReactionCounter/index.d.ts +2 -2
  132. package/build/esm/components/ReactionCounterGroup/ReactionCounterGroup.js +2 -2
  133. package/build/esm/components/ReactionCounterGroup/ReactionCounterGroup.js.map +1 -1
  134. package/build/esm/components/ReactionCounterGroup/index.d.ts +1 -1
  135. package/build/esm/components/SelectableChip/SelectableChip.js +4 -5
  136. package/build/esm/components/SelectableChip/SelectableChip.js.map +1 -1
  137. package/build/esm/components/SelectableChip/SelectableChip.styles.js +2 -2
  138. package/build/esm/components/SelectableChip/SelectableChip.styles.js.map +1 -1
  139. package/build/esm/components/SelectableChip/index.d.ts +2 -2
  140. package/build/esm/components/SelectableChipGroup/SelectableChipGroup.js +5 -6
  141. package/build/esm/components/SelectableChipGroup/SelectableChipGroup.js.map +1 -1
  142. package/build/esm/components/SelectableChipGroup/SelectableChipGroup.styles.js +12 -16
  143. package/build/esm/components/SelectableChipGroup/SelectableChipGroup.styles.js.map +1 -1
  144. package/build/esm/components/SelectableChipGroup/SelectableChipGroupProps.d.ts +1 -4
  145. package/build/esm/components/SelectableChipGroup/index.d.ts +2 -2
  146. package/build/esm/components/SelectedMenuFiltersList/SelectedMenuFiltersList.js +20 -23
  147. package/build/esm/components/SelectedMenuFiltersList/SelectedMenuFiltersList.js.map +1 -1
  148. package/build/esm/components/SelectedMenuFiltersList/index.d.ts +1 -1
  149. package/build/esm/components/StatusTag/StatusTag.js +3 -4
  150. package/build/esm/components/StatusTag/StatusTag.js.map +1 -1
  151. package/build/esm/components/StatusTag/StatusTag.styles.js +3 -3
  152. package/build/esm/components/StatusTag/StatusTag.styles.js.map +1 -1
  153. package/build/esm/components/StatusTag/index.d.ts +2 -2
  154. package/build/esm/components/Switch/Switch.js +14 -17
  155. package/build/esm/components/Switch/Switch.js.map +1 -1
  156. package/build/esm/components/index.d.ts +41 -22
  157. package/build/esm/index.js +3 -3
  158. package/build/esm/theme/overrides.js +1 -1
  159. package/build/esm/theme/overrides.js.map +1 -1
  160. package/build/esm/theme/palette.js +1 -1
  161. package/build/esm/theme/palette.js.map +1 -1
  162. package/build/esm/theme/props.js +1 -1
  163. package/build/esm/theme/props.js.map +1 -1
  164. package/build/esm/theme/theme.js +5 -5
  165. package/build/esm/theme/theme.js.map +1 -1
  166. package/build/esm/theme/typography.js +2 -2
  167. package/build/esm/theme/typography.js.map +1 -1
  168. package/package.json +4 -4
  169. package/build/esm/_virtual/index.js +0 -4
  170. package/build/esm/_virtual/index.js.map +0 -1
  171. package/build/esm/node_modules/classnames/index.js +0 -81
  172. package/build/esm/node_modules/classnames/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ModifierControls.js","sources":["../../../../src/components/DishModifierCard/ModifierControls.tsx"],"sourcesContent":["import {\n Box,\n Checkbox,\n FormControl,\n FormControlLabel,\n FormGroup,\n Radio,\n RadioGroup,\n Typography,\n} from '@material-ui/core'\nimport { Icon } from '@popmenu/common-ui'\nimport { ChevronRight } from '@popmenu/web-icons'\nimport classNames from 'classnames'\nimport React from 'react'\nimport { Button } from '../Button'\nimport QuantityPicker, { QuantityChangeEvent } from '../QuantityPicker'\nimport StatusTag from '../StatusTag'\nimport {\n useCheckboxModifierFormStyles,\n useLabelStyles,\n useOptionsStyles,\n useRadioModifierFormStyles,\n} from './DishModifierCard.styles'\nimport { Modifier, ModifierOptionsControlProps } from './DishModifierCardProps'\n\nconst Label = (props: { name: string; price: string; disabled?: boolean }) => {\n const { name, price, disabled = false } = props\n const classes = useLabelStyles()\n\n return (\n <Box display=\"flex\" flexDirection=\"column\" className={classes.label}>\n <Box display=\"flex\" alignItems=\"center\" gridGap={8}>\n <Typography className={classNames({ [classes.disabled]: disabled })}>{name}</Typography>\n </Box>\n {price && (\n <Typography className={classNames({ [classes.price]: !disabled }, { [classes.disabled]: disabled })}>\n + {price}\n </Typography>\n )}\n </Box>\n )\n}\n\nconst Options = (props: { handleOptionsClick: () => void }) => {\n const { handleOptionsClick } = props\n const classes = useOptionsStyles()\n\n return (\n <Box>\n <Button variation=\"none\" className={classes.options} onClick={handleOptionsClick}>\n <Typography variant=\"caption\">OPTIONS</Typography>\n <Icon icon={ChevronRight} />\n </Button>\n </Box>\n )\n}\n\nconst SingleSelectModifierControl = (props: ModifierOptionsControlProps) => {\n const { modifiers, name, isOutOfStock, onChange, value, handleOptionsClick, aggregatePrice, isRequired } = props\n const radioClasses = useRadioModifierFormStyles()\n const makeHandleChange = (modifier: Modifier) => (e: React.ChangeEvent<HTMLInputElement>) => {\n const isModifierInValue = Boolean(value.find((v) => v.modifierId === modifier.id))\n if (!isModifierInValue && modifier.hasModifiers) {\n handleOptionsClick(modifier.id)\n }\n\n onChange({\n isRadio: true,\n modifierId: Number(e.target.value),\n groupId: modifier.parentModifierGroupId,\n parentModifierId: modifier.parentModifierGroupItemId,\n price: modifier.price || 0,\n quantity: 1,\n })\n }\n return (\n <FormControl fullWidth>\n <RadioGroup aria-label={name}>\n {modifiers.map((modifier) => (\n <Box key={modifier.id}>\n <FormControlLabel\n key={modifier.id}\n value={modifier.id}\n className={radioClasses.root}\n control={\n <Radio\n checked={value[0]?.modifierId === modifier.id}\n className={classNames({\n [radioClasses.hideRadio]: modifier.outOfStock,\n [radioClasses.radio]: !modifier.outOfStock,\n })}\n disabled={isOutOfStock || modifier.outOfStock}\n onChange={makeHandleChange(modifier)}\n required={isRequired}\n />\n }\n label={\n <Box className={radioClasses.label}>\n <Label\n name={modifier.name}\n price={aggregatePrice[modifier.id] || modifier.formattedPrice}\n disabled={isOutOfStock || modifier.outOfStock}\n />\n {modifier.outOfStock && (\n <Box minWidth=\"90px\" marginLeft={2}>\n <StatusTag color=\"warning\" label=\"Out of stock\" variant=\"outlined\" size=\"md\" />\n </Box>\n )}\n </Box>\n }\n labelPlacement=\"start\"\n />\n {modifier.hasModifiers && !modifier.outOfStock && (\n <Options handleOptionsClick={() => handleOptionsClick(modifier.id)} />\n )}\n </Box>\n ))}\n </RadioGroup>\n </FormControl>\n )\n}\n\nconst MultipleSelectControl = (props: ModifierOptionsControlProps) => {\n const { modifiers, value, isOutOfStock, onChange, disableNewSelections, handleOptionsClick, aggregatePrice } = props\n const classes = useCheckboxModifierFormStyles()\n const makeHandleChange = (modifier: Modifier) => () => {\n const isModifierInValue = Boolean(value.find((v) => v.modifierId === modifier.id))\n if (!isModifierInValue && modifier.hasModifiers) {\n handleOptionsClick(modifier.id)\n }\n\n onChange({\n isRadio: false,\n modifierId: modifier.id,\n groupId: modifier.parentModifierGroupId,\n parentModifierId: modifier.parentModifierGroupItemId,\n price: modifier.price || 0,\n quantity: isModifierInValue ? 0 : 1,\n })\n }\n\n return (\n <FormControl fullWidth>\n <FormGroup>\n {modifiers.map((modifier) => {\n return (\n <Box key={modifier.id}>\n <FormControlLabel\n key={modifier.id}\n value={modifier.id}\n className={classes.root}\n checked={value.some((v) => v.modifierId === modifier.id)}\n onChange={makeHandleChange(modifier)}\n control={\n <Checkbox\n className={classNames(\n { [classes.hideCheckbox]: modifier.outOfStock },\n { [classes.checkbox]: !modifier.outOfStock },\n )}\n disabled={isOutOfStock || modifier.outOfStock || (!modifier.quantity && disableNewSelections)}\n />\n }\n label={\n <Box className={classes.label}>\n <Label\n name={modifier.name}\n price={aggregatePrice[modifier.id] || modifier.formattedPrice}\n disabled={isOutOfStock || modifier.outOfStock}\n />\n {modifier.outOfStock && (\n <Box minWidth=\"90px\" marginLeft={2}>\n <StatusTag color=\"warning\" label=\"Out of stock\" variant=\"outlined\" size=\"md\" />\n </Box>\n )}\n </Box>\n }\n labelPlacement=\"start\"\n />\n {modifier.hasModifiers && !modifier.outOfStock && (\n <Options handleOptionsClick={() => handleOptionsClick(modifier.id)} />\n )}\n </Box>\n )\n })}\n </FormGroup>\n </FormControl>\n )\n}\nconst MultipleQuantitySelectControl = (props: ModifierOptionsControlProps) => {\n const { modifiers, isOutOfStock, onChange, disableNewSelections, handleOptionsClick, selectionQuantity } = props\n const makeHandleChange = (modifier: Modifier) => (_e: any, customEvent: QuantityChangeEvent) => {\n onChange({\n isRadio: false,\n modifierId: modifier.id,\n groupId: modifier.parentModifierGroupId,\n parentModifierId: modifier.parentModifierGroupItemId,\n price: modifier.price || 0,\n quantity: customEvent.quantity,\n })\n }\n return (\n <FormControl fullWidth>\n <FormGroup>\n {modifiers.map((modifier) => (\n <Box key={modifier.id} style={{ justifyContent: 'space-between', flexDirection: 'column' }} display=\"flex\">\n <Box display=\"flex\" alignItems=\"center\" justifyContent=\"space-between\" width=\"100%\">\n <Label\n name={modifier.name}\n price={modifier.formattedPrice}\n disabled={isOutOfStock || modifier.outOfStock}\n />\n {modifier.outOfStock && (\n <Box minWidth=\"90px\" marginLeft={2}>\n <StatusTag color=\"warning\" label=\"Out of stock\" variant=\"outlined\" size=\"md\" />\n </Box>\n )}\n {!modifier.outOfStock && (\n <QuantityPicker\n variation=\"modifierCount\"\n value={modifier.quantity}\n disableIncrement={disableNewSelections}\n preventManualChange={true}\n onChange={makeHandleChange(modifier)}\n disabled={isOutOfStock || modifier.outOfStock}\n name={modifier.name}\n />\n )}\n </Box>\n <Box display=\"flex\" alignItems=\"flex-start\" gridGap={4}>\n {modifier.hasModifiers && !modifier.outOfStock && (\n <Options handleOptionsClick={() => handleOptionsClick(modifier.id)} />\n )}\n {selectionQuantity[modifier.id] &&\n selectionQuantity[modifier.id].requiredSelectionCount > 0 &&\n selectionQuantity[modifier.id].requiredSelectionCount !==\n selectionQuantity[modifier.id].currentSelectionCount && (\n <Typography variant=\"caption\" color=\"error\">\n {selectionQuantity[modifier.id].currentSelectionCount}/\n {selectionQuantity[modifier.id].requiredSelectionCount} selected\n </Typography>\n )}\n </Box>\n </Box>\n ))}\n </FormGroup>\n </FormControl>\n )\n}\n\nexport const ModifierControls = (props: ModifierOptionsControlProps) => {\n switch (props.type) {\n case 'singleSelect':\n return <SingleSelectModifierControl {...props} />\n case 'multipleSelect':\n return <MultipleSelectControl {...props} />\n case 'multipleQuantitySelect':\n return <MultipleQuantitySelectControl {...props} />\n default:\n return null\n }\n}\n"],"names":["React"],"mappings":"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"}
1
+ {"version":3,"file":"ModifierControls.js","sources":["../../../../src/components/DishModifierCard/ModifierControls.tsx"],"sourcesContent":["import {\n Box,\n Checkbox,\n FormControl,\n FormControlLabel,\n FormGroup,\n Radio,\n RadioGroup,\n Typography,\n} from '@material-ui/core'\nimport { Icon } from '@popmenu/common-ui'\nimport { ChevronRight } from '@popmenu/web-icons'\nimport classNames from 'classnames'\nimport React from 'react'\nimport { Button } from '../Button'\nimport type { QuantityChangeEvent } from '../QuantityPicker'\nimport { QuantityPicker } from '../QuantityPicker'\nimport { StatusTag } from '../StatusTag'\nimport {\n useCheckboxModifierFormStyles,\n useLabelStyles,\n useOptionsStyles,\n useRadioModifierFormStyles,\n} from './DishModifierCard.styles'\nimport { Modifier, ModifierOptionsControlProps } from './DishModifierCardProps'\n\nconst Label = (props: { name: string; price: string; disabled?: boolean }) => {\n const { name, price, disabled = false } = props\n const classes = useLabelStyles()\n\n return (\n <Box display=\"flex\" flexDirection=\"column\" className={classes.label}>\n <Box display=\"flex\" alignItems=\"center\" gridGap={8}>\n <Typography className={classNames({ [classes.disabled]: disabled })}>{name}</Typography>\n </Box>\n {price && (\n <Typography className={classNames({ [classes.price]: !disabled }, { [classes.disabled]: disabled })}>\n + {price}\n </Typography>\n )}\n </Box>\n )\n}\n\nconst Options = (props: { handleOptionsClick: () => void }) => {\n const { handleOptionsClick } = props\n const classes = useOptionsStyles()\n\n return (\n <Box>\n <Button variation=\"none\" className={classes.options} onClick={handleOptionsClick}>\n <Typography variant=\"caption\">OPTIONS</Typography>\n <Icon icon={ChevronRight} />\n </Button>\n </Box>\n )\n}\n\nconst SingleSelectModifierControl = (props: ModifierOptionsControlProps) => {\n const { modifiers, name, isOutOfStock, onChange, value, handleOptionsClick, aggregatePrice, isRequired } = props\n const radioClasses = useRadioModifierFormStyles()\n const makeHandleChange = (modifier: Modifier) => (e: React.ChangeEvent<HTMLInputElement>) => {\n const isModifierInValue = Boolean(value.find((v) => v.modifierId === modifier.id))\n if (!isModifierInValue && modifier.hasModifiers) {\n handleOptionsClick(modifier.id)\n }\n\n onChange({\n isRadio: true,\n modifierId: Number(e.target.value),\n groupId: modifier.parentModifierGroupId,\n parentModifierId: modifier.parentModifierGroupItemId,\n price: modifier.price || 0,\n quantity: 1,\n })\n }\n return (\n <FormControl fullWidth>\n <RadioGroup aria-label={name}>\n {modifiers.map((modifier) => (\n <Box key={modifier.id}>\n <FormControlLabel\n key={modifier.id}\n value={modifier.id}\n className={radioClasses.root}\n control={\n <Radio\n checked={value[0]?.modifierId === modifier.id}\n className={classNames({\n [radioClasses.hideRadio]: modifier.outOfStock,\n [radioClasses.radio]: !modifier.outOfStock,\n })}\n disabled={isOutOfStock || modifier.outOfStock}\n onChange={makeHandleChange(modifier)}\n required={isRequired}\n />\n }\n label={\n <Box className={radioClasses.label}>\n <Label\n name={modifier.name}\n price={aggregatePrice[modifier.id] || modifier.formattedPrice}\n disabled={isOutOfStock || modifier.outOfStock}\n />\n {modifier.outOfStock && (\n <Box minWidth=\"90px\" marginLeft={2}>\n <StatusTag color=\"warning\" label=\"Out of stock\" variant=\"outlined\" size=\"md\" />\n </Box>\n )}\n </Box>\n }\n labelPlacement=\"start\"\n />\n {modifier.hasModifiers && !modifier.outOfStock && (\n <Options handleOptionsClick={() => handleOptionsClick(modifier.id)} />\n )}\n </Box>\n ))}\n </RadioGroup>\n </FormControl>\n )\n}\n\nconst MultipleSelectControl = (props: ModifierOptionsControlProps) => {\n const { modifiers, value, isOutOfStock, onChange, disableNewSelections, handleOptionsClick, aggregatePrice } = props\n const classes = useCheckboxModifierFormStyles()\n const makeHandleChange = (modifier: Modifier) => () => {\n const isModifierInValue = Boolean(value.find((v) => v.modifierId === modifier.id))\n if (!isModifierInValue && modifier.hasModifiers) {\n handleOptionsClick(modifier.id)\n }\n\n onChange({\n isRadio: false,\n modifierId: modifier.id,\n groupId: modifier.parentModifierGroupId,\n parentModifierId: modifier.parentModifierGroupItemId,\n price: modifier.price || 0,\n quantity: isModifierInValue ? 0 : 1,\n })\n }\n\n return (\n <FormControl fullWidth>\n <FormGroup>\n {modifiers.map((modifier) => {\n return (\n <Box key={modifier.id}>\n <FormControlLabel\n key={modifier.id}\n value={modifier.id}\n className={classes.root}\n checked={value.some((v) => v.modifierId === modifier.id)}\n onChange={makeHandleChange(modifier)}\n control={\n <Checkbox\n className={classNames(\n { [classes.hideCheckbox]: modifier.outOfStock },\n { [classes.checkbox]: !modifier.outOfStock },\n )}\n disabled={isOutOfStock || modifier.outOfStock || (!modifier.quantity && disableNewSelections)}\n />\n }\n label={\n <Box className={classes.label}>\n <Label\n name={modifier.name}\n price={aggregatePrice[modifier.id] || modifier.formattedPrice}\n disabled={isOutOfStock || modifier.outOfStock}\n />\n {modifier.outOfStock && (\n <Box minWidth=\"90px\" marginLeft={2}>\n <StatusTag color=\"warning\" label=\"Out of stock\" variant=\"outlined\" size=\"md\" />\n </Box>\n )}\n </Box>\n }\n labelPlacement=\"start\"\n />\n {modifier.hasModifiers && !modifier.outOfStock && (\n <Options handleOptionsClick={() => handleOptionsClick(modifier.id)} />\n )}\n </Box>\n )\n })}\n </FormGroup>\n </FormControl>\n )\n}\nconst MultipleQuantitySelectControl = (props: ModifierOptionsControlProps) => {\n const { modifiers, isOutOfStock, onChange, disableNewSelections, handleOptionsClick, selectionQuantity } = props\n const makeHandleChange = (modifier: Modifier) => (_e: any, customEvent: QuantityChangeEvent) => {\n onChange({\n isRadio: false,\n modifierId: modifier.id,\n groupId: modifier.parentModifierGroupId,\n parentModifierId: modifier.parentModifierGroupItemId,\n price: modifier.price || 0,\n quantity: customEvent.quantity,\n })\n }\n return (\n <FormControl fullWidth>\n <FormGroup>\n {modifiers.map((modifier) => (\n <Box key={modifier.id} style={{ justifyContent: 'space-between', flexDirection: 'column' }} display=\"flex\">\n <Box display=\"flex\" alignItems=\"center\" justifyContent=\"space-between\" width=\"100%\">\n <Label\n name={modifier.name}\n price={modifier.formattedPrice}\n disabled={isOutOfStock || modifier.outOfStock}\n />\n {modifier.outOfStock && (\n <Box minWidth=\"90px\" marginLeft={2}>\n <StatusTag color=\"warning\" label=\"Out of stock\" variant=\"outlined\" size=\"md\" />\n </Box>\n )}\n {!modifier.outOfStock && (\n <QuantityPicker\n variation=\"modifierCount\"\n value={modifier.quantity}\n disableIncrement={disableNewSelections}\n preventManualChange={true}\n onChange={makeHandleChange(modifier)}\n disabled={isOutOfStock || modifier.outOfStock}\n name={modifier.name}\n />\n )}\n </Box>\n <Box display=\"flex\" alignItems=\"flex-start\" gridGap={4}>\n {modifier.hasModifiers && !modifier.outOfStock && (\n <Options handleOptionsClick={() => handleOptionsClick(modifier.id)} />\n )}\n {selectionQuantity[modifier.id] &&\n selectionQuantity[modifier.id].requiredSelectionCount > 0 &&\n selectionQuantity[modifier.id].requiredSelectionCount !==\n selectionQuantity[modifier.id].currentSelectionCount && (\n <Typography variant=\"caption\" color=\"error\">\n {selectionQuantity[modifier.id].currentSelectionCount}/\n {selectionQuantity[modifier.id].requiredSelectionCount} selected\n </Typography>\n )}\n </Box>\n </Box>\n ))}\n </FormGroup>\n </FormControl>\n )\n}\n\nexport const ModifierControls = (props: ModifierOptionsControlProps) => {\n switch (props.type) {\n case 'singleSelect':\n return <SingleSelectModifierControl {...props} />\n case 'multipleSelect':\n return <MultipleSelectControl {...props} />\n case 'multipleQuantitySelect':\n return <MultipleQuantitySelectControl {...props} />\n default:\n return null\n }\n}\n"],"names":["React"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { DishModifierCard as default } from './DishModifierCard';
2
- export { DishModifierCardProps } from './DishModifierCardProps';
1
+ export { DishModifierCard } from './DishModifierCard';
2
+ export type { DishModifierCardProps } from './DishModifierCardProps';
@@ -3,9 +3,9 @@ import { Avatar } from '@material-ui/core';
3
3
  import { Typography } from '@popmenu/common-ui';
4
4
  import { useItemTagStyles } from './itemTag.styles.js';
5
5
 
6
- var ItemTag = forwardRef(function (props, ref) {
7
- var alt = props.alt, children = props.children;
8
- var classes = useItemTagStyles();
6
+ const ItemTag = forwardRef((props, ref) => {
7
+ const { alt, children } = props;
8
+ const classes = useItemTagStyles();
9
9
  return (React__default.createElement(Avatar, { ref: ref, alt: alt, classes: { root: classes.root } },
10
10
  React__default.createElement(Typography, { variant: "caption", className: classes.text }, children)));
11
11
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ItemTag.js","sources":["../../../../src/components/ItemTag/ItemTag.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\nimport { Avatar } from '@material-ui/core'\nimport { Typography } from '@popmenu/common-ui'\n\nimport { ItemTagProps } from './ItemTagProps'\nimport { useItemTagStyles } from './itemTag.styles'\n\nexport const ItemTag = forwardRef<HTMLDivElement, ItemTagProps>((props, ref) => {\n const { alt, children } = props\n const classes = useItemTagStyles()\n\n return (\n <Avatar ref={ref} alt={alt} classes={{ root: classes.root }}>\n <Typography variant=\"caption\" className={classes.text}>\n {children}\n </Typography>\n </Avatar>\n )\n})\n\nItemTag.displayName = 'ItemTag'\n"],"names":["React"],"mappings":";;;;;IAOa,OAAO,GAAG,UAAU,CAA+B,UAAC,KAAK,EAAE,GAAG,EAAA;IACjE,IAAA,GAAG,GAAe,KAAK,CAAA,GAApB,EAAE,QAAQ,GAAK,KAAK,CAAA,QAAV;AACrB,IAAA,IAAM,OAAO,GAAG,gBAAgB,EAAE;IAElC,QACEA,6BAAC,MAAM,EAAA,EAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAA;AACzD,QAAAA,cAAA,CAAA,aAAA,CAAC,UAAU,EAAC,EAAA,OAAO,EAAC,SAAS,EAAC,SAAS,EAAE,OAAO,CAAC,IAAI,EAClD,EAAA,QAAQ,CACE,CACN;AAEb,CAAC;AAED,OAAO,CAAC,WAAW,GAAG,SAAS;;;;"}
1
+ {"version":3,"file":"ItemTag.js","sources":["../../../../src/components/ItemTag/ItemTag.tsx"],"sourcesContent":["import React, { forwardRef } from 'react'\nimport { Avatar } from '@material-ui/core'\nimport { Typography } from '@popmenu/common-ui'\n\nimport { ItemTagProps } from './ItemTagProps'\nimport { useItemTagStyles } from './itemTag.styles'\n\nexport const ItemTag = forwardRef<HTMLDivElement, ItemTagProps>((props, ref) => {\n const { alt, children } = props\n const classes = useItemTagStyles()\n\n return (\n <Avatar ref={ref} alt={alt} classes={{ root: classes.root }}>\n <Typography variant=\"caption\" className={classes.text}>\n {children}\n </Typography>\n </Avatar>\n )\n})\n\nItemTag.displayName = 'ItemTag'\n"],"names":["React"],"mappings":";;;;;AAOa,MAAA,OAAO,GAAG,UAAU,CAA+B,CAAC,KAAK,EAAE,GAAG,KAAI;AAC7E,IAAA,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,KAAK;AAC/B,IAAA,MAAM,OAAO,GAAG,gBAAgB,EAAE;IAElC,QACEA,6BAAC,MAAM,EAAA,EAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAA;AACzD,QAAAA,cAAA,CAAA,aAAA,CAAC,UAAU,EAAC,EAAA,OAAO,EAAC,SAAS,EAAC,SAAS,EAAE,OAAO,CAAC,IAAI,EAClD,EAAA,QAAQ,CACE,CACN;AAEb,CAAC;AAED,OAAO,CAAC,WAAW,GAAG,SAAS;;;;"}
@@ -1,2 +1,2 @@
1
- export { ItemTag as default } from './ItemTag';
2
- export { ItemTagProps } from './ItemTagProps';
1
+ export { ItemTag } from './ItemTag';
2
+ export type { ItemTagProps } from './ItemTagProps';
@@ -1,6 +1,6 @@
1
1
  import { makeStyles } from '@material-ui/core';
2
2
 
3
- var useItemTagStyles = makeStyles(function (theme) { return ({
3
+ const useItemTagStyles = makeStyles((theme) => ({
4
4
  root: {
5
5
  color: theme.palette.text.primary,
6
6
  borderColor: theme.palette.text.primary,
@@ -14,7 +14,7 @@ var useItemTagStyles = makeStyles(function (theme) { return ({
14
14
  text: {
15
15
  lineHeight: 1.5,
16
16
  },
17
- }); });
17
+ }));
18
18
 
19
19
  export { useItemTagStyles };
20
20
  //# sourceMappingURL=itemTag.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"itemTag.styles.js","sources":["../../../../src/components/ItemTag/itemTag.styles.ts"],"sourcesContent":["import { makeStyles } from '@material-ui/core'\n\nexport const useItemTagStyles = makeStyles((theme) => ({\n root: {\n color: theme.palette.text.primary,\n borderColor: theme.palette.text.primary,\n border: '1.5px solid',\n background: 'none',\n height: '24px',\n lineHeight: 1.5,\n position: 'static',\n width: '24px',\n },\n text: {\n lineHeight: 1.5,\n },\n}))\n"],"names":[],"mappings":";;AAEa,IAAA,gBAAgB,GAAG,UAAU,CAAC,UAAC,KAAK,EAAK,EAAA,QAAC;AACrD,IAAA,IAAI,EAAE;AACJ,QAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;AACjC,QAAA,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;AACvC,QAAA,MAAM,EAAE,aAAa;AACrB,QAAA,UAAU,EAAE,MAAM;AAClB,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,UAAU,EAAE,GAAG;AACf,QAAA,QAAQ,EAAE,QAAQ;AAClB,QAAA,KAAK,EAAE,MAAM;AACd,KAAA;AACD,IAAA,IAAI,EAAE;AACJ,QAAA,UAAU,EAAE,GAAG;AAChB,KAAA;CACF,EAAC,EAAA;;;;"}
1
+ {"version":3,"file":"itemTag.styles.js","sources":["../../../../src/components/ItemTag/itemTag.styles.ts"],"sourcesContent":["import { makeStyles } from '@material-ui/core'\n\nexport const useItemTagStyles = makeStyles((theme) => ({\n root: {\n color: theme.palette.text.primary,\n borderColor: theme.palette.text.primary,\n border: '1.5px solid',\n background: 'none',\n height: '24px',\n lineHeight: 1.5,\n position: 'static',\n width: '24px',\n },\n text: {\n lineHeight: 1.5,\n },\n}))\n"],"names":[],"mappings":";;AAEa,MAAA,gBAAgB,GAAG,UAAU,CAAC,CAAC,KAAK,MAAM;AACrD,IAAA,IAAI,EAAE;AACJ,QAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;AACjC,QAAA,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;AACvC,QAAA,MAAM,EAAE,aAAa;AACrB,QAAA,UAAU,EAAE,MAAM;AAClB,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,UAAU,EAAE,GAAG;AACf,QAAA,QAAQ,EAAE,QAAQ;AAClB,QAAA,KAAK,EAAE,MAAM;AACd,KAAA;AACD,IAAA,IAAI,EAAE;AACJ,QAAA,UAAU,EAAE,GAAG;AAChB,KAAA;AACF,CAAA,CAAC;;;;"}
@@ -1,8 +1,8 @@
1
1
  import React__default from 'react';
2
2
  import { Box } from '@material-ui/core';
3
3
 
4
- var ItemTagGroup = function (props) {
5
- var children = props.children;
4
+ const ItemTagGroup = (props) => {
5
+ const { children } = props;
6
6
  return (React__default.createElement(Box, { display: "flex", gridGap: 6, ml: 1, flexWrap: "wrap" }, children));
7
7
  };
8
8
 
@@ -1 +1 @@
1
- {"version":3,"file":"ItemTagGroup.js","sources":["../../../../src/components/ItemTagGroup/ItemTagGroup.tsx"],"sourcesContent":["import React, { HTMLAttributes, PropsWithChildren } from 'react'\nimport { Box } from '@material-ui/core'\n\nexport const ItemTagGroup = (props: PropsWithChildren<HTMLAttributes<HTMLElement>>) => {\n const { children } = props\n\n return (\n <Box display=\"flex\" gridGap={6} ml={1} flexWrap=\"wrap\">\n {children}\n </Box>\n )\n}\n"],"names":["React"],"mappings":";;;AAGO,IAAM,YAAY,GAAG,UAAC,KAAqD,EAAA;AACxE,IAAA,IAAA,QAAQ,GAAK,KAAK,CAAA,QAAV;IAEhB,QACEA,6BAAC,GAAG,EAAA,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAC,MAAM,EACnD,EAAA,QAAQ,CACL;AAEV;;;;"}
1
+ {"version":3,"file":"ItemTagGroup.js","sources":["../../../../src/components/ItemTagGroup/ItemTagGroup.tsx"],"sourcesContent":["import React, { HTMLAttributes, PropsWithChildren } from 'react'\nimport { Box } from '@material-ui/core'\n\nexport const ItemTagGroup = (props: PropsWithChildren<HTMLAttributes<HTMLElement>>) => {\n const { children } = props\n\n return (\n <Box display=\"flex\" gridGap={6} ml={1} flexWrap=\"wrap\">\n {children}\n </Box>\n )\n}\n"],"names":["React"],"mappings":";;;AAGa,MAAA,YAAY,GAAG,CAAC,KAAqD,KAAI;AACpF,IAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK;IAE1B,QACEA,6BAAC,GAAG,EAAA,EAAC,OAAO,EAAC,MAAM,EAAC,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAC,MAAM,EACnD,EAAA,QAAQ,CACL;AAEV;;;;"}
@@ -1 +1 @@
1
- export { ItemTagGroup as default } from './ItemTagGroup';
1
+ export { ItemTagGroup } from './ItemTagGroup';
@@ -1,19 +1,18 @@
1
- import { __rest, __assign } from 'tslib';
2
1
  import React__default from 'react';
3
2
  import { Card, CardActionArea, CardContent, Box, Typography } from '@material-ui/core';
4
3
  import { Icon } from '@popmenu/common-ui';
5
4
  import { Check, Clock, Info } from '@popmenu/web-icons';
6
5
  import { useLocationCardStyles } from './LocationCard.styles.js';
7
6
 
8
- var LocationCard = function (props) {
9
- var name = props.name, address = props.address, distance = props.distance, generalAvailability = props.generalAvailability, pickupAvailability = props.pickupAvailability, deliveryAvailability = props.deliveryAvailability, onClick = props.onClick, selected = props.selected, value = props.value, outOfRange = props.outOfRange, outOfRangeMessage = props.outOfRangeMessage, CardActionAreaProps = props.CardActionAreaProps, muiProps = __rest(props, ["name", "address", "distance", "generalAvailability", "pickupAvailability", "deliveryAvailability", "onClick", "selected", "value", "outOfRange", "outOfRangeMessage", "CardActionAreaProps"]);
10
- var classes = useLocationCardStyles(props);
11
- var anyAvailability = generalAvailability || pickupAvailability || deliveryAvailability;
12
- var handleClick = function () {
7
+ const LocationCard = (props) => {
8
+ const { name, address, distance, generalAvailability, pickupAvailability, deliveryAvailability, onClick, selected, value, outOfRange, outOfRangeMessage, CardActionAreaProps, ...muiProps } = props;
9
+ const classes = useLocationCardStyles(props);
10
+ const anyAvailability = generalAvailability || pickupAvailability || deliveryAvailability;
11
+ const handleClick = () => {
13
12
  onClick(value);
14
13
  };
15
- return (React__default.createElement(Card, __assign({ className: classes.root }, muiProps),
16
- React__default.createElement(CardActionArea, __assign({ onClick: handleClick, role: "radio", "aria-checked": selected, disabled: outOfRange || Boolean(anyAvailability), classes: { focusHighlight: classes.actionAreaFocusHighlight } }, CardActionAreaProps),
14
+ return (React__default.createElement(Card, { className: classes.root, ...muiProps },
15
+ React__default.createElement(CardActionArea, { onClick: handleClick, role: "radio", "aria-checked": selected, disabled: outOfRange || Boolean(anyAvailability), classes: { focusHighlight: classes.actionAreaFocusHighlight }, ...CardActionAreaProps },
17
16
  React__default.createElement(CardContent, { className: classes.content },
18
17
  React__default.createElement(Box, { className: classes.locationInfo },
19
18
  React__default.createElement(Box, { display: "flex", justifyContent: "space-between" },
@@ -1 +1 @@
1
- {"version":3,"file":"LocationCard.js","sources":["../../../../src/components/LocationCard/LocationCard.tsx"],"sourcesContent":["import React from 'react'\nimport { Box, Typography, Card, CardActionArea, CardContent } from '@material-ui/core'\nimport { Icon } from '@popmenu/common-ui'\nimport { Clock, Check, Info } from '@popmenu/web-icons'\nimport { LocationCardProps } from './LocationCardProps'\nimport { useLocationCardStyles } from './LocationCard.styles'\n\nexport const LocationCard = (props: LocationCardProps) => {\n const {\n name,\n address,\n distance,\n generalAvailability,\n pickupAvailability,\n deliveryAvailability,\n onClick,\n selected,\n value,\n outOfRange,\n outOfRangeMessage,\n CardActionAreaProps,\n ...muiProps\n } = props\n const classes = useLocationCardStyles(props)\n const anyAvailability = generalAvailability || pickupAvailability || deliveryAvailability\n\n const handleClick = () => {\n onClick(value)\n }\n\n return (\n <Card className={classes.root} {...muiProps}>\n <CardActionArea\n onClick={handleClick}\n role=\"radio\"\n aria-checked={selected}\n disabled={outOfRange || Boolean(anyAvailability)}\n classes={{ focusHighlight: classes.actionAreaFocusHighlight }}\n {...CardActionAreaProps}\n >\n <CardContent className={classes.content}>\n <Box className={classes.locationInfo}>\n <Box display=\"flex\" justifyContent=\"space-between\">\n <Typography className={classes.name}>{name}</Typography>\n {selected && <Icon icon={Check} size=\"extra-large\" className={classes.checkIcon} />}\n </Box>\n {address && (\n <Typography className={classes.greyText} variant=\"body2\">\n {address}\n </Typography>\n )}\n {!outOfRange && <Typography className={classes.distance}>{distance}</Typography>}\n </Box>\n {anyAvailability && (\n <Box className={classes.availability}>\n <Icon icon={Clock} size=\"large\" />\n {generalAvailability && (\n <Typography className={classes.availabilityMessage} variant=\"body2\">\n {generalAvailability}\n </Typography>\n )}\n {pickupAvailability && (\n <Typography className={classes.availabilityMessage} variant=\"body2\">\n {pickupAvailability}\n </Typography>\n )}\n {deliveryAvailability && (\n <Typography className={classes.availabilityMessage} variant=\"body2\">\n {deliveryAvailability}\n </Typography>\n )}\n </Box>\n )}\n {outOfRange && (\n <Box display=\"flex\" gridGap={8} alignItems=\"center\" color=\"grey.800\">\n <Icon icon={Info} size=\"large\" color=\"inherit\" />\n <Typography variant=\"body2\" className={classes.greyText}>\n {outOfRangeMessage}\n </Typography>\n </Box>\n )}\n </CardContent>\n </CardActionArea>\n </Card>\n )\n}\n"],"names":["React"],"mappings":"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"}
1
+ {"version":3,"file":"LocationCard.js","sources":["../../../../src/components/LocationCard/LocationCard.tsx"],"sourcesContent":["import React from 'react'\nimport { Box, Typography, Card, CardActionArea, CardContent } from '@material-ui/core'\nimport { Icon } from '@popmenu/common-ui'\nimport { Clock, Check, Info } from '@popmenu/web-icons'\nimport { LocationCardProps } from './LocationCardProps'\nimport { useLocationCardStyles } from './LocationCard.styles'\n\nexport const LocationCard = (props: LocationCardProps) => {\n const {\n name,\n address,\n distance,\n generalAvailability,\n pickupAvailability,\n deliveryAvailability,\n onClick,\n selected,\n value,\n outOfRange,\n outOfRangeMessage,\n CardActionAreaProps,\n ...muiProps\n } = props\n const classes = useLocationCardStyles(props)\n const anyAvailability = generalAvailability || pickupAvailability || deliveryAvailability\n\n const handleClick = () => {\n onClick(value)\n }\n\n return (\n <Card className={classes.root} {...muiProps}>\n <CardActionArea\n onClick={handleClick}\n role=\"radio\"\n aria-checked={selected}\n disabled={outOfRange || Boolean(anyAvailability)}\n classes={{ focusHighlight: classes.actionAreaFocusHighlight }}\n {...CardActionAreaProps}\n >\n <CardContent className={classes.content}>\n <Box className={classes.locationInfo}>\n <Box display=\"flex\" justifyContent=\"space-between\">\n <Typography className={classes.name}>{name}</Typography>\n {selected && <Icon icon={Check} size=\"extra-large\" className={classes.checkIcon} />}\n </Box>\n {address && (\n <Typography className={classes.greyText} variant=\"body2\">\n {address}\n </Typography>\n )}\n {!outOfRange && <Typography className={classes.distance}>{distance}</Typography>}\n </Box>\n {anyAvailability && (\n <Box className={classes.availability}>\n <Icon icon={Clock} size=\"large\" />\n {generalAvailability && (\n <Typography className={classes.availabilityMessage} variant=\"body2\">\n {generalAvailability}\n </Typography>\n )}\n {pickupAvailability && (\n <Typography className={classes.availabilityMessage} variant=\"body2\">\n {pickupAvailability}\n </Typography>\n )}\n {deliveryAvailability && (\n <Typography className={classes.availabilityMessage} variant=\"body2\">\n {deliveryAvailability}\n </Typography>\n )}\n </Box>\n )}\n {outOfRange && (\n <Box display=\"flex\" gridGap={8} alignItems=\"center\" color=\"grey.800\">\n <Icon icon={Info} size=\"large\" color=\"inherit\" />\n <Typography variant=\"body2\" className={classes.greyText}>\n {outOfRangeMessage}\n </Typography>\n </Box>\n )}\n </CardContent>\n </CardActionArea>\n </Card>\n )\n}\n"],"names":["React"],"mappings":"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"}
@@ -1,22 +1,16 @@
1
1
  import { makeStyles, lighten } from '@material-ui/core';
2
2
 
3
- var useLocationCardStyles = makeStyles(function (theme) {
4
- var _a = theme.palette, info = _a.info, grey = _a.grey, secondary = _a.secondary, background = _a.background, spacing = theme.spacing;
5
- var selectedBackgroundColor = lighten(info.light, 0.9);
6
- var backgroundColor = background.default;
3
+ const useLocationCardStyles = makeStyles((theme) => {
4
+ const { palette: { info, grey, secondary, background }, spacing, } = theme;
5
+ const selectedBackgroundColor = lighten(info.light, 0.9);
6
+ const backgroundColor = background.default;
7
7
  return {
8
8
  root: {
9
- border: function (_a) {
10
- var selected = _a.selected;
11
- return selected ? "1px solid " + info.light : '1px solid var(--surfaces-card-stroke, #E0E0E0)';
12
- },
9
+ border: ({ selected }) => selected ? `1px solid ${info.light}` : '1px solid var(--surfaces-card-stroke, #E0E0E0)',
13
10
  display: 'flex',
14
11
  borderRadius: '10px',
15
12
  color: grey[900],
16
- backgroundColor: function (_a) {
17
- var selected = _a.selected, outOfRange = _a.outOfRange;
18
- return selected ? selectedBackgroundColor : outOfRange ? grey[200] : backgroundColor;
19
- },
13
+ backgroundColor: ({ selected, outOfRange }) => selected ? selectedBackgroundColor : outOfRange ? grey[200] : backgroundColor,
20
14
  },
21
15
  actionAreaFocusHighlight: {
22
16
  '&:disabled': {
@@ -1 +1 @@
1
- {"version":3,"file":"LocationCard.styles.js","sources":["../../../../src/components/LocationCard/LocationCard.styles.ts"],"sourcesContent":["import { lighten, makeStyles, Theme } from '@material-ui/core'\nimport { LocationCardProps } from './LocationCardProps'\n\nexport const useLocationCardStyles = makeStyles<Theme, LocationCardProps>((theme) => {\n const {\n palette: { info, grey, secondary, background },\n spacing,\n } = theme\n const selectedBackgroundColor = lighten(info.light, 0.9)\n const backgroundColor = background.default\n\n return {\n root: {\n border: ({ selected }) =>\n selected ? `1px solid ${info.light}` : '1px solid var(--surfaces-card-stroke, #E0E0E0)',\n display: 'flex',\n borderRadius: '10px',\n color: grey[900],\n backgroundColor: ({ selected, outOfRange }) =>\n selected ? selectedBackgroundColor : outOfRange ? grey[200] : backgroundColor,\n },\n actionAreaFocusHighlight: {\n '&:disabled': {\n backgroundColor: 'inherit',\n },\n },\n availability: {\n color: secondary.light,\n display: 'grid',\n gridGap: spacing(0.5),\n gridTemplateColumns: 'auto 1fr',\n },\n availabilityMessage: {\n gridColumn: '2 / 3',\n },\n checkIcon: {\n color: info.main,\n },\n content: {\n padding: spacing(3),\n display: 'flex',\n flexDirection: 'column',\n gridGap: spacing(2),\n },\n distance: {\n fontSize: '0.75rem',\n fontWeight: 600,\n },\n locationInfo: {\n display: 'flex',\n flexDirection: 'column',\n gridGap: spacing(0.75),\n },\n name: {\n fontSize: '1.125rem',\n fontWeight: 500,\n },\n greyText: {\n color: grey[800],\n },\n }\n})\n"],"names":[],"mappings":";;AAGa,IAAA,qBAAqB,GAAG,UAAU,CAA2B,UAAC,KAAK,EAAA;IAE5E,IAAA,EAAA,GAEE,KAAK,CAFuC,OAAA,EAAnC,IAAI,GAAA,EAAA,CAAA,IAAA,EAAE,IAAI,GAAA,EAAA,CAAA,IAAA,EAAE,SAAS,GAAA,EAAA,CAAA,SAAA,EAAE,UAAU,GAAA,EAAA,CAAA,UAAA,EAC5C,OAAO,GACL,KAAK,QADA;IAET,IAAM,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC;AACxD,IAAA,IAAM,eAAe,GAAG,UAAU,CAAC,OAAO;IAE1C,OAAO;AACL,QAAA,IAAI,EAAE;YACJ,MAAM,EAAE,UAAC,EAAY,EAAA;AAAV,gBAAA,IAAA,QAAQ,GAAA,EAAA,CAAA,QAAA;gBACjB,OAAA,QAAQ,GAAG,YAAA,GAAa,IAAI,CAAC,KAAO,GAAG,gDAAgD;aAAA;AACzF,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,YAAY,EAAE,MAAM;AACpB,YAAA,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;YAChB,eAAe,EAAE,UAAC,EAAwB,EAAA;oBAAtB,QAAQ,GAAA,EAAA,CAAA,QAAA,EAAE,UAAU,GAAA,EAAA,CAAA,UAAA;AACtC,gBAAA,OAAA,QAAQ,GAAG,uBAAuB,GAAG,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,eAAe;aAAA;AAChF,SAAA;AACD,QAAA,wBAAwB,EAAE;AACxB,YAAA,YAAY,EAAE;AACZ,gBAAA,eAAe,EAAE,SAAS;AAC3B,aAAA;AACF,SAAA;AACD,QAAA,YAAY,EAAE;YACZ,KAAK,EAAE,SAAS,CAAC,KAAK;AACtB,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC;AACrB,YAAA,mBAAmB,EAAE,UAAU;AAChC,SAAA;AACD,QAAA,mBAAmB,EAAE;AACnB,YAAA,UAAU,EAAE,OAAO;AACpB,SAAA;AACD,QAAA,SAAS,EAAE;YACT,KAAK,EAAE,IAAI,CAAC,IAAI;AACjB,SAAA;AACD,QAAA,OAAO,EAAE;AACP,YAAA,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AACnB,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AACpB,SAAA;AACD,QAAA,QAAQ,EAAE;AACR,YAAA,QAAQ,EAAE,SAAS;AACnB,YAAA,UAAU,EAAE,GAAG;AAChB,SAAA;AACD,QAAA,YAAY,EAAE;AACZ,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC;AACvB,SAAA;AACD,QAAA,IAAI,EAAE;AACJ,YAAA,QAAQ,EAAE,UAAU;AACpB,YAAA,UAAU,EAAE,GAAG;AAChB,SAAA;AACD,QAAA,QAAQ,EAAE;AACR,YAAA,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;AACjB,SAAA;KACF;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"LocationCard.styles.js","sources":["../../../../src/components/LocationCard/LocationCard.styles.ts"],"sourcesContent":["import { lighten, makeStyles, Theme } from '@material-ui/core'\nimport { LocationCardProps } from './LocationCardProps'\n\nexport const useLocationCardStyles = makeStyles<Theme, LocationCardProps>((theme) => {\n const {\n palette: { info, grey, secondary, background },\n spacing,\n } = theme\n const selectedBackgroundColor = lighten(info.light, 0.9)\n const backgroundColor = background.default\n\n return {\n root: {\n border: ({ selected }) =>\n selected ? `1px solid ${info.light}` : '1px solid var(--surfaces-card-stroke, #E0E0E0)',\n display: 'flex',\n borderRadius: '10px',\n color: grey[900],\n backgroundColor: ({ selected, outOfRange }) =>\n selected ? selectedBackgroundColor : outOfRange ? grey[200] : backgroundColor,\n },\n actionAreaFocusHighlight: {\n '&:disabled': {\n backgroundColor: 'inherit',\n },\n },\n availability: {\n color: secondary.light,\n display: 'grid',\n gridGap: spacing(0.5),\n gridTemplateColumns: 'auto 1fr',\n },\n availabilityMessage: {\n gridColumn: '2 / 3',\n },\n checkIcon: {\n color: info.main,\n },\n content: {\n padding: spacing(3),\n display: 'flex',\n flexDirection: 'column',\n gridGap: spacing(2),\n },\n distance: {\n fontSize: '0.75rem',\n fontWeight: 600,\n },\n locationInfo: {\n display: 'flex',\n flexDirection: 'column',\n gridGap: spacing(0.75),\n },\n name: {\n fontSize: '1.125rem',\n fontWeight: 500,\n },\n greyText: {\n color: grey[800],\n },\n }\n})\n"],"names":[],"mappings":";;MAGa,qBAAqB,GAAG,UAAU,CAA2B,CAAC,KAAK,KAAI;AAClF,IAAA,MAAM,EACJ,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,EAC9C,OAAO,GACR,GAAG,KAAK;IACT,MAAM,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC;AACxD,IAAA,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO;IAE1C,OAAO;AACL,QAAA,IAAI,EAAE;YACJ,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,KACnB,QAAQ,GAAG,CAAA,UAAA,EAAa,IAAI,CAAC,KAAK,EAAE,GAAG,gDAAgD;AACzF,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,YAAY,EAAE,MAAM;AACpB,YAAA,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;AAChB,YAAA,eAAe,EAAE,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,KACxC,QAAQ,GAAG,uBAAuB,GAAG,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,eAAe;AAChF,SAAA;AACD,QAAA,wBAAwB,EAAE;AACxB,YAAA,YAAY,EAAE;AACZ,gBAAA,eAAe,EAAE,SAAS;AAC3B,aAAA;AACF,SAAA;AACD,QAAA,YAAY,EAAE;YACZ,KAAK,EAAE,SAAS,CAAC,KAAK;AACtB,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC;AACrB,YAAA,mBAAmB,EAAE,UAAU;AAChC,SAAA;AACD,QAAA,mBAAmB,EAAE;AACnB,YAAA,UAAU,EAAE,OAAO;AACpB,SAAA;AACD,QAAA,SAAS,EAAE;YACT,KAAK,EAAE,IAAI,CAAC,IAAI;AACjB,SAAA;AACD,QAAA,OAAO,EAAE;AACP,YAAA,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AACnB,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AACpB,SAAA;AACD,QAAA,QAAQ,EAAE;AACR,YAAA,QAAQ,EAAE,SAAS;AACnB,YAAA,UAAU,EAAE,GAAG;AAChB,SAAA;AACD,QAAA,YAAY,EAAE;AACZ,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC;AACvB,SAAA;AACD,QAAA,IAAI,EAAE;AACJ,YAAA,QAAQ,EAAE,UAAU;AACpB,YAAA,UAAU,EAAE,GAAG;AAChB,SAAA;AACD,QAAA,QAAQ,EAAE;AACR,YAAA,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;AACjB,SAAA;KACF;AACH,CAAC;;;;"}
@@ -1,2 +1,2 @@
1
- export { LocationCard as default } from './LocationCard';
2
- export { LocationCardProps } from './LocationCardProps';
1
+ export { LocationCard } from './LocationCard';
2
+ export type { LocationCardProps } from './LocationCardProps';
@@ -1,33 +1,32 @@
1
- import { __assign } from 'tslib';
2
1
  import React__default from 'react';
3
2
  import { Card, CardHeader, CardContent, Typography, Link } from '@material-ui/core';
4
3
  import { useStyles } from './MenuBanner.styles.js';
5
4
  import { BannerTypeIcons } from './MenuBannerIcons.js';
6
5
 
7
- var MenuBanner = function (props) {
8
- var show = props.show;
9
- var classes = useStyles(props);
6
+ const MenuBanner = (props) => {
7
+ const { show } = props;
8
+ const classes = useStyles(props);
10
9
  if (!show)
11
10
  return null;
12
11
  return (React__default.createElement(Card, { classes: { root: classes.root }, variant: "outlined" },
13
12
  React__default.createElement(CardHeader, { avatar: BannerTypeIcons[props.type], title: props.title, titleTypographyProps: { variant: 'body1' }, classes: { root: classes.header, title: classes.headerTitle } }),
14
- React__default.createElement(MenuBannerDescription, __assign({}, props)),
15
- React__default.createElement(MenuBannerButton, __assign({}, props))));
13
+ React__default.createElement(MenuBannerDescription, { ...props }),
14
+ React__default.createElement(MenuBannerButton, { ...props })));
16
15
  };
17
16
  function MenuBannerDescription(props) {
18
- var classes = useStyles(props);
19
- var description = props.description;
17
+ const classes = useStyles(props);
18
+ const { description } = props;
20
19
  if (!description)
21
20
  return null;
22
21
  return (React__default.createElement(CardContent, { classes: { root: classes.content } },
23
22
  React__default.createElement(Typography, { className: classes.description, variant: "body2" }, props.description)));
24
23
  }
25
24
  function MenuBannerButton(props) {
26
- var classes = useStyles(props);
25
+ const classes = useStyles(props);
27
26
  if (!props.buttonLabel)
28
27
  return null;
29
28
  return (React__default.createElement(CardContent, { classes: { root: classes.content } },
30
- React__default.createElement(Link, __assign({}, { component: 'button', variant: 'body2', className: classes.button }, props.ButtonProps), props.buttonLabel)));
29
+ React__default.createElement(Link, { ...{ component: 'button', variant: 'body2', className: classes.button }, ...props.ButtonProps }, props.buttonLabel)));
31
30
  }
32
31
 
33
32
  export { MenuBanner };
@@ -1 +1 @@
1
- {"version":3,"file":"MenuBanner.js","sources":["../../../../src/components/MenuBanner/MenuBanner.tsx"],"sourcesContent":["import React from 'react'\nimport { Card, CardContent, CardHeader, Link, Typography } from '@material-ui/core'\nimport { useStyles } from './MenuBanner.styles'\nimport { MenuBannerProps } from './MenuBannerProps'\nimport { BannerTypeIcons } from './MenuBannerIcons'\n\nexport const MenuBanner = (props: MenuBannerProps) => {\n const { show } = props\n const classes = useStyles(props)\n\n if (!show) return null\n\n return (\n <Card classes={{ root: classes.root }} variant=\"outlined\">\n <CardHeader\n avatar={BannerTypeIcons[props.type]}\n title={props.title}\n titleTypographyProps={{ variant: 'body1' }}\n classes={{ root: classes.header, title: classes.headerTitle }}\n />\n <MenuBannerDescription {...props} />\n <MenuBannerButton {...props} />\n </Card>\n )\n}\n\nfunction MenuBannerDescription(props: MenuBannerProps) {\n const classes = useStyles(props)\n const { description } = props\n if (!description) return null\n return (\n <CardContent classes={{ root: classes.content }}>\n <Typography className={classes.description} variant=\"body2\">\n {props.description}\n </Typography>\n </CardContent>\n )\n}\n\nfunction MenuBannerButton(props: MenuBannerProps) {\n const classes = useStyles(props)\n if (!props.buttonLabel) return null\n return (\n <CardContent classes={{ root: classes.content }}>\n <Link {...{ component: 'button', variant: 'body2', className: classes.button }} {...props.ButtonProps}>\n {props.buttonLabel}\n </Link>\n </CardContent>\n )\n}\n"],"names":["React"],"mappings":";;;;;;AAMO,IAAM,UAAU,GAAG,UAAC,KAAsB,EAAA;AACvC,IAAA,IAAA,IAAI,GAAK,KAAK,CAAA,IAAV;AACZ,IAAA,IAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC;AAEhC,IAAA,IAAI,CAAC,IAAI;AAAE,QAAA,OAAO,IAAI;AAEtB,IAAA,QACEA,cAAC,CAAA,aAAA,CAAA,IAAI,EAAC,EAAA,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,OAAO,EAAC,UAAU,EAAA;AACvD,QAAAA,cAAA,CAAA,aAAA,CAAC,UAAU,EACT,EAAA,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,EACnC,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,oBAAoB,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAC1C,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE,EAC7D,CAAA;QACFA,cAAC,CAAA,aAAA,CAAA,qBAAqB,EAAK,QAAA,CAAA,EAAA,EAAA,KAAK,CAAI,CAAA;AACpC,QAAAA,cAAA,CAAA,aAAA,CAAC,gBAAgB,EAAK,QAAA,CAAA,EAAA,EAAA,KAAK,CAAI,CAAA,CAC1B;AAEX;AAEA,SAAS,qBAAqB,CAAC,KAAsB,EAAA;AACnD,IAAA,IAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC;AACxB,IAAA,IAAA,WAAW,GAAK,KAAK,CAAA,WAAV;AACnB,IAAA,IAAI,CAAC,WAAW;AAAE,QAAA,OAAO,IAAI;AAC7B,IAAA,QACEA,cAAA,CAAA,aAAA,CAAC,WAAW,EAAA,EAAC,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,EAAA;AAC7C,QAAAA,cAAA,CAAA,aAAA,CAAC,UAAU,EAAC,EAAA,SAAS,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,EAAC,OAAO,IACxD,KAAK,CAAC,WAAW,CACP,CACD;AAElB;AAEA,SAAS,gBAAgB,CAAC,KAAsB,EAAA;AAC9C,IAAA,IAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC;IAChC,IAAI,CAAC,KAAK,CAAC,WAAW;AAAE,QAAA,OAAO,IAAI;AACnC,IAAA,QACEA,cAAA,CAAA,aAAA,CAAC,WAAW,EAAA,EAAC,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,EAAA;AAC7C,QAAAA,cAAA,CAAA,aAAA,CAAC,IAAI,EAAA,QAAA,CAAA,EAAA,EAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,EAAM,KAAK,CAAC,WAAW,CAAA,EAClG,KAAK,CAAC,WAAW,CACb,CACK;AAElB;;;;"}
1
+ {"version":3,"file":"MenuBanner.js","sources":["../../../../src/components/MenuBanner/MenuBanner.tsx"],"sourcesContent":["import React from 'react'\nimport { Card, CardContent, CardHeader, Link, Typography } from '@material-ui/core'\nimport { useStyles } from './MenuBanner.styles'\nimport { MenuBannerProps } from './MenuBannerProps'\nimport { BannerTypeIcons } from './MenuBannerIcons'\n\nexport const MenuBanner = (props: MenuBannerProps) => {\n const { show } = props\n const classes = useStyles(props)\n\n if (!show) return null\n\n return (\n <Card classes={{ root: classes.root }} variant=\"outlined\">\n <CardHeader\n avatar={BannerTypeIcons[props.type]}\n title={props.title}\n titleTypographyProps={{ variant: 'body1' }}\n classes={{ root: classes.header, title: classes.headerTitle }}\n />\n <MenuBannerDescription {...props} />\n <MenuBannerButton {...props} />\n </Card>\n )\n}\n\nfunction MenuBannerDescription(props: MenuBannerProps) {\n const classes = useStyles(props)\n const { description } = props\n if (!description) return null\n return (\n <CardContent classes={{ root: classes.content }}>\n <Typography className={classes.description} variant=\"body2\">\n {props.description}\n </Typography>\n </CardContent>\n )\n}\n\nfunction MenuBannerButton(props: MenuBannerProps) {\n const classes = useStyles(props)\n if (!props.buttonLabel) return null\n return (\n <CardContent classes={{ root: classes.content }}>\n <Link {...{ component: 'button', variant: 'body2', className: classes.button }} {...props.ButtonProps}>\n {props.buttonLabel}\n </Link>\n </CardContent>\n )\n}\n"],"names":["React"],"mappings":";;;;;AAMa,MAAA,UAAU,GAAG,CAAC,KAAsB,KAAI;AACnD,IAAA,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK;AACtB,IAAA,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC;AAEhC,IAAA,IAAI,CAAC,IAAI;AAAE,QAAA,OAAO,IAAI;AAEtB,IAAA,QACEA,cAAC,CAAA,aAAA,CAAA,IAAI,EAAC,EAAA,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,OAAO,EAAC,UAAU,EAAA;AACvD,QAAAA,cAAA,CAAA,aAAA,CAAC,UAAU,EACT,EAAA,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,EACnC,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,oBAAoB,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAC1C,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE,EAC7D,CAAA;QACFA,cAAC,CAAA,aAAA,CAAA,qBAAqB,EAAK,EAAA,GAAA,KAAK,EAAI,CAAA;AACpC,QAAAA,cAAA,CAAA,aAAA,CAAC,gBAAgB,EAAK,EAAA,GAAA,KAAK,EAAI,CAAA,CAC1B;AAEX;AAEA,SAAS,qBAAqB,CAAC,KAAsB,EAAA;AACnD,IAAA,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC;AAChC,IAAA,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK;AAC7B,IAAA,IAAI,CAAC,WAAW;AAAE,QAAA,OAAO,IAAI;AAC7B,IAAA,QACEA,cAAA,CAAA,aAAA,CAAC,WAAW,EAAA,EAAC,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,EAAA;AAC7C,QAAAA,cAAA,CAAA,aAAA,CAAC,UAAU,EAAC,EAAA,SAAS,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,EAAC,OAAO,IACxD,KAAK,CAAC,WAAW,CACP,CACD;AAElB;AAEA,SAAS,gBAAgB,CAAC,KAAsB,EAAA;AAC9C,IAAA,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC;IAChC,IAAI,CAAC,KAAK,CAAC,WAAW;AAAE,QAAA,OAAO,IAAI;AACnC,IAAA,QACEA,cAAA,CAAA,aAAA,CAAC,WAAW,EAAA,EAAC,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,EAAA;AAC7C,QAAAA,cAAA,CAAA,aAAA,CAAC,IAAI,EAAA,EAAA,GAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,EAAA,GAAM,KAAK,CAAC,WAAW,EAAA,EAClG,KAAK,CAAC,WAAW,CACb,CACK;AAElB;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { makeStyles } from '@material-ui/core';
2
2
 
3
- var useStyles = makeStyles(function (theme) { return ({
3
+ const useStyles = makeStyles((theme) => ({
4
4
  root: {
5
5
  '& > div': {
6
6
  padding: 0,
@@ -22,28 +22,24 @@ var useStyles = makeStyles(function (theme) { return ({
22
22
  color: theme.palette.grey[700],
23
23
  },
24
24
  header: {
25
- color: function (props) {
26
- return ({
27
- alert: theme.palette.error.main,
28
- info: theme.palette.info.main,
29
- offer: theme.palette.success.main,
30
- }[props.type]);
31
- },
25
+ color: (props) => ({
26
+ alert: theme.palette.error.main,
27
+ info: theme.palette.info.main,
28
+ offer: theme.palette.success.main,
29
+ }[props.type]),
32
30
  },
33
31
  headerTitle: {
34
- color: function (props) {
35
- return ({
36
- alert: theme.palette.error.main,
37
- info: theme.palette.info.main,
38
- offer: theme.palette.success.main,
39
- }[props.type]);
40
- },
32
+ color: (props) => ({
33
+ alert: theme.palette.error.main,
34
+ info: theme.palette.info.main,
35
+ offer: theme.palette.success.main,
36
+ }[props.type]),
41
37
  fontWeight: 600,
42
38
  },
43
39
  content: {
44
40
  marginLeft: theme.spacing(5),
45
41
  },
46
- }); });
42
+ }));
47
43
 
48
44
  export { useStyles };
49
45
  //# sourceMappingURL=MenuBanner.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MenuBanner.styles.js","sources":["../../../../src/components/MenuBanner/MenuBanner.styles.ts"],"sourcesContent":["import { makeStyles, Theme } from '@material-ui/core'\nimport { MenuBannerProps } from './MenuBannerProps'\n\nexport const useStyles = makeStyles<Theme, MenuBannerProps>((theme) => ({\n root: {\n '& > div': {\n padding: 0,\n '&:last-child': {\n padding: 0,\n },\n },\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'start',\n gridGap: theme.spacing(1),\n padding: theme.spacing(2),\n borderRadius: theme.spacing(2),\n },\n button: {\n color: theme.palette.info.main,\n },\n description: {\n color: theme.palette.grey[700],\n },\n header: {\n color: (props) =>\n ({\n alert: theme.palette.error.main,\n info: theme.palette.info.main,\n offer: theme.palette.success.main,\n }[props.type]),\n },\n headerTitle: {\n color: (props) =>\n ({\n alert: theme.palette.error.main,\n info: theme.palette.info.main,\n offer: theme.palette.success.main,\n }[props.type]),\n fontWeight: 600,\n },\n content: {\n marginLeft: theme.spacing(5),\n },\n}))\n"],"names":[],"mappings":";;AAGa,IAAA,SAAS,GAAG,UAAU,CAAyB,UAAC,KAAK,EAAK,EAAA,QAAC;AACtE,IAAA,IAAI,EAAE;AACJ,QAAA,SAAS,EAAE;AACT,YAAA,OAAO,EAAE,CAAC;AACV,YAAA,cAAc,EAAE;AACd,gBAAA,OAAO,EAAE,CAAC;AACX,aAAA;AACF,SAAA;AACD,QAAA,OAAO,EAAE,MAAM;AACf,QAAA,aAAa,EAAE,QAAQ;AACvB,QAAA,UAAU,EAAE,OAAO;AACnB,QAAA,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AACzB,QAAA,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AACzB,QAAA,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/B,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;AAC/B,KAAA;AACD,IAAA,WAAW,EAAE;QACX,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;AAC/B,KAAA;AACD,IAAA,MAAM,EAAE;QACN,KAAK,EAAE,UAAC,KAAK,EAAA;AACX,YAAA,QAAC;AACC,gBAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI;AAC/B,gBAAA,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;AAC7B,gBAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI;AAClC,aAAA,CAAC,KAAK,CAAC,IAAI,CAAC;SAAC;AACjB,KAAA;AACD,IAAA,WAAW,EAAE;QACX,KAAK,EAAE,UAAC,KAAK,EAAA;AACX,YAAA,QAAC;AACC,gBAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI;AAC/B,gBAAA,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;AAC7B,gBAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI;AAClC,aAAA,CAAC,KAAK,CAAC,IAAI,CAAC;SAAC;AAChB,QAAA,UAAU,EAAE,GAAG;AAChB,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC7B,KAAA;CACF,EAAC,EAAA;;;;"}
1
+ {"version":3,"file":"MenuBanner.styles.js","sources":["../../../../src/components/MenuBanner/MenuBanner.styles.ts"],"sourcesContent":["import { makeStyles, Theme } from '@material-ui/core'\nimport { MenuBannerProps } from './MenuBannerProps'\n\nexport const useStyles = makeStyles<Theme, MenuBannerProps>((theme) => ({\n root: {\n '& > div': {\n padding: 0,\n '&:last-child': {\n padding: 0,\n },\n },\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'start',\n gridGap: theme.spacing(1),\n padding: theme.spacing(2),\n borderRadius: theme.spacing(2),\n },\n button: {\n color: theme.palette.info.main,\n },\n description: {\n color: theme.palette.grey[700],\n },\n header: {\n color: (props) =>\n ({\n alert: theme.palette.error.main,\n info: theme.palette.info.main,\n offer: theme.palette.success.main,\n }[props.type]),\n },\n headerTitle: {\n color: (props) =>\n ({\n alert: theme.palette.error.main,\n info: theme.palette.info.main,\n offer: theme.palette.success.main,\n }[props.type]),\n fontWeight: 600,\n },\n content: {\n marginLeft: theme.spacing(5),\n },\n}))\n"],"names":[],"mappings":";;AAGa,MAAA,SAAS,GAAG,UAAU,CAAyB,CAAC,KAAK,MAAM;AACtE,IAAA,IAAI,EAAE;AACJ,QAAA,SAAS,EAAE;AACT,YAAA,OAAO,EAAE,CAAC;AACV,YAAA,cAAc,EAAE;AACd,gBAAA,OAAO,EAAE,CAAC;AACX,aAAA;AACF,SAAA;AACD,QAAA,OAAO,EAAE,MAAM;AACf,QAAA,aAAa,EAAE,QAAQ;AACvB,QAAA,UAAU,EAAE,OAAO;AACnB,QAAA,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AACzB,QAAA,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AACzB,QAAA,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/B,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;AAC/B,KAAA;AACD,IAAA,WAAW,EAAE;QACX,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;AAC/B,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,CAAC,KAAK,MACV;AACC,YAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI;AAC/B,YAAA,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;AAC7B,YAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI;AAClC,SAAA,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACjB,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,KAAK,EAAE,CAAC,KAAK,MACV;AACC,YAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI;AAC/B,YAAA,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;AAC7B,YAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI;AAClC,SAAA,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAChB,QAAA,UAAU,EAAE,GAAG;AAChB,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC7B,KAAA;AACF,CAAA,CAAC;;;;"}
@@ -1,8 +1,8 @@
1
1
  import { DollarSign, Info, Warning } from '@popmenu/web-icons';
2
2
  import React__default from 'react';
3
3
 
4
- var bannerIconStyles = { color: 'inherit', width: 24, height: 24 };
5
- var BannerTypeIcons = {
4
+ const bannerIconStyles = { color: 'inherit', width: 24, height: 24 };
5
+ const BannerTypeIcons = {
6
6
  alert: React__default.createElement(Warning, { style: bannerIconStyles }),
7
7
  info: React__default.createElement(Info, { style: bannerIconStyles }),
8
8
  offer: React__default.createElement(DollarSign, { style: bannerIconStyles }),
@@ -1 +1 @@
1
- {"version":3,"file":"MenuBannerIcons.js","sources":["../../../../src/components/MenuBanner/MenuBannerIcons.tsx"],"sourcesContent":["import { DollarSign, Info, Warning } from '@popmenu/web-icons'\nimport React from 'react'\n\nconst bannerIconStyles = { color: 'inherit', width: 24, height: 24 }\nexport const BannerTypeIcons = {\n alert: <Warning style={bannerIconStyles} />,\n info: <Info style={bannerIconStyles} />,\n offer: <DollarSign style={bannerIconStyles} />,\n}\n"],"names":["React"],"mappings":";;;AAGA,IAAM,gBAAgB,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;AACvD,IAAA,eAAe,GAAG;AAC7B,IAAA,KAAK,EAAEA,cAAC,CAAA,aAAA,CAAA,OAAO,IAAC,KAAK,EAAE,gBAAgB,EAAI,CAAA;AAC3C,IAAA,IAAI,EAAEA,cAAC,CAAA,aAAA,CAAA,IAAI,IAAC,KAAK,EAAE,gBAAgB,EAAI,CAAA;AACvC,IAAA,KAAK,EAAEA,cAAC,CAAA,aAAA,CAAA,UAAU,IAAC,KAAK,EAAE,gBAAgB,EAAI,CAAA;;;;;"}
1
+ {"version":3,"file":"MenuBannerIcons.js","sources":["../../../../src/components/MenuBanner/MenuBannerIcons.tsx"],"sourcesContent":["import { DollarSign, Info, Warning } from '@popmenu/web-icons'\nimport React from 'react'\n\nconst bannerIconStyles = { color: 'inherit', width: 24, height: 24 }\nexport const BannerTypeIcons = {\n alert: <Warning style={bannerIconStyles} />,\n info: <Info style={bannerIconStyles} />,\n offer: <DollarSign style={bannerIconStyles} />,\n}\n"],"names":["React"],"mappings":";;;AAGA,MAAM,gBAAgB,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;AACvD,MAAA,eAAe,GAAG;AAC7B,IAAA,KAAK,EAAEA,cAAC,CAAA,aAAA,CAAA,OAAO,IAAC,KAAK,EAAE,gBAAgB,EAAI,CAAA;AAC3C,IAAA,IAAI,EAAEA,cAAC,CAAA,aAAA,CAAA,IAAI,IAAC,KAAK,EAAE,gBAAgB,EAAI,CAAA;AACvC,IAAA,KAAK,EAAEA,cAAC,CAAA,aAAA,CAAA,UAAU,IAAC,KAAK,EAAE,gBAAgB,EAAI,CAAA;;;;;"}
@@ -1,2 +1,2 @@
1
1
  export { MenuBanner } from './MenuBanner';
2
- export { MenuBannerProps } from './MenuBannerProps';
2
+ export type { MenuBannerProps } from './MenuBannerProps';
@@ -1,23 +1,20 @@
1
- import React__default, { useState } from 'react';
2
1
  import { useMediaQuery, FormControl, Select, InputAdornment, MenuItem } from '@material-ui/core';
3
2
  import { Icon } from '@popmenu/common-ui';
4
3
  import { ChevronUp, ChevronDown, RestaurantMenu, Clock } from '@popmenu/web-icons';
4
+ import classNames from 'classnames';
5
+ import React__default, { useState } from 'react';
5
6
  import { useMenuDropdownStyles } from './MenuDropdown.styles.js';
6
- import classNames from '../../node_modules/classnames/index.js';
7
7
 
8
- var MenuDropdown = function (props) {
9
- var menuOptions = props.menuOptions, onSelect = props.onSelect, selectedOptionId = props.selectedOptionId;
10
- var classes = useMenuDropdownStyles(props);
11
- var _a = useState(false), open = _a[0], setOpen = _a[1];
12
- var isMobile = useMediaQuery(function (_a) {
13
- var breakpoints = _a.breakpoints;
14
- return breakpoints.down('md');
15
- });
8
+ const MenuDropdown = (props) => {
9
+ const { menuOptions, onSelect, selectedOptionId } = props;
10
+ const classes = useMenuDropdownStyles(props);
11
+ const [open, setOpen] = useState(false);
12
+ const isMobile = useMediaQuery((theme) => theme.breakpoints.down('md'));
16
13
  return (React__default.createElement(FormControl, { hiddenLabel: true, classes: { root: classes.formControl } },
17
14
  React__default.createElement("label", { id: "menu-dropdown-label", className: "sr-only" }, props.label),
18
- React__default.createElement(Select, { SelectDisplayProps: { 'aria-labelledby': 'menu-dropdown-label' }, value: selectedOptionId, onOpen: function () { return setOpen(true); }, onClose: function () { return setOpen(false); }, disableUnderline: true, onChange: function (event) { return onSelect(event.target.value); }, fullWidth: true, open: open, startAdornment: React__default.createElement(InputAdornment, { position: "start", onClick: function () { return setOpen(true); } },
19
- React__default.createElement(Icon, { icon: RestaurantMenu, size: isMobile ? 'extra-large' : 'large' })), IconComponent: function () { return (React__default.createElement(InputAdornment, { position: "end", onClick: function () { return setOpen(true); } },
20
- React__default.createElement(Icon, { color: "#0076CB", icon: open ? ChevronUp : ChevronDown, size: "large" }))); }, MenuProps: {
15
+ React__default.createElement(Select, { SelectDisplayProps: { 'aria-labelledby': 'menu-dropdown-label' }, value: selectedOptionId, onOpen: () => setOpen(true), onClose: () => setOpen(false), disableUnderline: true, onChange: (event) => onSelect(event.target.value), fullWidth: true, open: open, startAdornment: React__default.createElement(InputAdornment, { position: "start", onClick: () => setOpen(true) },
16
+ React__default.createElement(Icon, { icon: RestaurantMenu, size: isMobile ? 'extra-large' : 'large' })), IconComponent: () => (React__default.createElement(InputAdornment, { position: "end", onClick: () => setOpen(true) },
17
+ React__default.createElement(Icon, { color: "#0076CB", icon: open ? ChevronUp : ChevronDown, size: "large" }))), MenuProps: {
21
18
  disablePortal: true,
22
19
  anchorOrigin: {
23
20
  vertical: 'bottom',
@@ -28,9 +25,9 @@ var MenuDropdown = function (props) {
28
25
  horizontal: 'left',
29
26
  },
30
27
  getContentAnchorEl: null,
31
- }, className: classes.select, renderValue: function (selected) { var _a; return (_a = menuOptions.find(function (menuOption) { return menuOption.id === selected; })) === null || _a === void 0 ? void 0 : _a.name; } }, menuOptions.map(function (option, index) { return (React__default.createElement(MenuItem, { key: index, value: option.id, className: classNames(classes.menuItem, option.isUnavailable ? classes.unavailable : '') },
28
+ }, className: classes.select, renderValue: (selected) => menuOptions.find((menuOption) => menuOption.id === selected)?.name }, menuOptions.map((option, index) => (React__default.createElement(MenuItem, { key: index, value: option.id, className: classNames(classes.menuItem, option.isUnavailable ? classes.unavailable : '') },
32
29
  option.name,
33
- option.isUnavailable && React__default.createElement(Icon, { icon: Clock, size: "large" }))); }))));
30
+ option.isUnavailable && React__default.createElement(Icon, { icon: Clock, size: "large" })))))));
34
31
  };
35
32
 
36
33
  export { MenuDropdown };
@@ -1 +1 @@
1
- {"version":3,"file":"MenuDropdown.js","sources":["../../../../src/components/MenuDropdown/MenuDropdown.tsx"],"sourcesContent":["import React, { ChangeEvent, useState } from 'react'\nimport { FormControl, InputAdornment, MenuItem, Select, useMediaQuery } from '@material-ui/core'\nimport { Icon } from '@popmenu/common-ui'\nimport { MenuDropdownOption, MenuDropdownProps } from './MenuDropdownProps'\nimport { ChevronDown, ChevronUp, Clock, RestaurantMenu } from '@popmenu/web-icons'\nimport { useMenuDropdownStyles } from './MenuDropdown.styles'\nimport classNames from 'classnames'\n\nexport const MenuDropdown = (props: MenuDropdownProps): JSX.Element => {\n const { menuOptions, onSelect, selectedOptionId } = props\n const classes = useMenuDropdownStyles(props)\n const [open, setOpen] = useState(false)\n const isMobile = useMediaQuery(({ breakpoints }) => breakpoints.down('md'))\n\n return (\n <FormControl hiddenLabel={true} classes={{ root: classes.formControl }}>\n <label id=\"menu-dropdown-label\" className=\"sr-only\">\n {props.label}\n </label>\n <Select\n SelectDisplayProps={{ 'aria-labelledby': 'menu-dropdown-label' }}\n value={selectedOptionId}\n onOpen={() => setOpen(true)}\n onClose={() => setOpen(false)}\n disableUnderline\n onChange={(event: ChangeEvent<HTMLInputElement>) => onSelect(event.target.value)}\n fullWidth\n open={open}\n startAdornment={\n <InputAdornment position=\"start\" onClick={() => setOpen(true)}>\n <Icon icon={RestaurantMenu} size={isMobile ? 'extra-large' : 'large'} />\n </InputAdornment>\n }\n IconComponent={() => (\n <InputAdornment position=\"end\" onClick={() => setOpen(true)}>\n <Icon color=\"#0076CB\" icon={open ? ChevronUp : ChevronDown} size=\"large\" />\n </InputAdornment>\n )}\n MenuProps={{\n disablePortal: true,\n anchorOrigin: {\n vertical: 'bottom',\n horizontal: 'left',\n },\n transformOrigin: {\n vertical: 'top',\n horizontal: 'left',\n },\n getContentAnchorEl: null,\n }}\n className={classes.select}\n renderValue={(selected) => menuOptions.find((menuOption) => menuOption.id === selected)?.name}\n >\n {menuOptions.map((option: MenuDropdownOption, index) => (\n <MenuItem\n key={index}\n value={option.id}\n className={classNames(classes.menuItem, option.isUnavailable ? classes.unavailable : '')}\n >\n {option.name}\n {option.isUnavailable && <Icon icon={Clock} size=\"large\" />}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n )\n}\n"],"names":["React"],"mappings":"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"}
1
+ {"version":3,"file":"MenuDropdown.js","sources":["../../../../src/components/MenuDropdown/MenuDropdown.tsx"],"sourcesContent":["import { FormControl, InputAdornment, MenuItem, Select, Theme, useMediaQuery } from '@material-ui/core'\nimport { Icon } from '@popmenu/common-ui'\nimport { ChevronDown, ChevronUp, Clock, RestaurantMenu } from '@popmenu/web-icons'\nimport classNames from 'classnames'\nimport React, { useState } from 'react'\nimport { useMenuDropdownStyles } from './MenuDropdown.styles'\nimport { MenuDropdownOption, MenuDropdownProps } from './MenuDropdownProps'\n\nexport const MenuDropdown = (props: MenuDropdownProps): JSX.Element => {\n const { menuOptions, onSelect, selectedOptionId } = props\n const classes = useMenuDropdownStyles(props)\n const [open, setOpen] = useState(false)\n const isMobile = useMediaQuery((theme: Theme) => theme.breakpoints.down('md'))\n\n return (\n <FormControl hiddenLabel={true} classes={{ root: classes.formControl }}>\n <label id=\"menu-dropdown-label\" className=\"sr-only\">\n {props.label}\n </label>\n <Select\n SelectDisplayProps={{ 'aria-labelledby': 'menu-dropdown-label' }}\n value={selectedOptionId}\n onOpen={() => setOpen(true)}\n onClose={() => setOpen(false)}\n disableUnderline\n onChange={(event) => onSelect(event.target.value as string)}\n fullWidth\n open={open}\n startAdornment={\n <InputAdornment position=\"start\" onClick={() => setOpen(true)}>\n <Icon icon={RestaurantMenu} size={isMobile ? 'extra-large' : 'large'} />\n </InputAdornment>\n }\n IconComponent={() => (\n <InputAdornment position=\"end\" onClick={() => setOpen(true)}>\n <Icon color=\"#0076CB\" icon={open ? ChevronUp : ChevronDown} size=\"large\" />\n </InputAdornment>\n )}\n MenuProps={{\n disablePortal: true,\n anchorOrigin: {\n vertical: 'bottom',\n horizontal: 'left',\n },\n transformOrigin: {\n vertical: 'top',\n horizontal: 'left',\n },\n getContentAnchorEl: null,\n }}\n className={classes.select}\n renderValue={(selected) => menuOptions.find((menuOption) => menuOption.id === selected)?.name}\n >\n {menuOptions.map((option: MenuDropdownOption, index) => (\n <MenuItem\n key={index}\n value={option.id}\n className={classNames(classes.menuItem, option.isUnavailable ? classes.unavailable : '')}\n >\n {option.name}\n {option.isUnavailable && <Icon icon={Clock} size=\"large\" />}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n )\n}\n"],"names":["React"],"mappings":"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"}