@popmenu/ordering-ui 0.126.0 → 0.126.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 (337) hide show
  1. package/build/{components → cjs/components}/Button/Button.d.ts +3 -3
  2. package/build/{components → cjs/components}/Button/ButtonProps.d.ts +5 -5
  3. package/build/{components → cjs/components}/Button/index.d.ts +2 -2
  4. package/build/cjs/components/Checkbox/Checkbox.d.ts +2 -0
  5. package/build/{components → cjs/components}/Checkbox/index.d.ts +1 -1
  6. package/build/{components → cjs/components}/DialogSection/DialogSection.d.ts +8 -8
  7. package/build/{components → cjs/components}/DialogSection/index.d.ts +1 -1
  8. package/build/{components → cjs/components}/DialogTitle/DialogTitle.d.ts +9 -9
  9. package/build/{components → cjs/components}/DialogTitle/index.d.ts +1 -1
  10. package/build/{components → cjs/components}/DishCheckoutCard/DishCheckoutCard.d.ts +3 -3
  11. package/build/{components → cjs/components}/DishCheckoutCard/DishCheckoutCard.styles.d.ts +2 -2
  12. package/build/{components → cjs/components}/DishCheckoutCard/DishCheckoutCardProps.d.ts +44 -44
  13. package/build/{components → cjs/components}/DishCheckoutCard/index.d.ts +2 -2
  14. package/build/{components → cjs/components}/DishDetailsReview/DishDetailsReview.d.ts +3 -3
  15. package/build/{components → cjs/components}/DishDetailsReview/DishDetailsReviewProps.d.ts +12 -12
  16. package/build/{components → cjs/components}/DishDetailsReview/index.d.ts +2 -2
  17. package/build/{components → cjs/components}/DishModifierCard/DishModifierCard.d.ts +6 -6
  18. package/build/{components → cjs/components}/DishModifierCard/DishModifierCard.styles.d.ts +5 -5
  19. package/build/{components → cjs/components}/DishModifierCard/DishModifierCardProps.d.ts +71 -71
  20. package/build/{components → cjs/components}/DishModifierCard/ModifierControls.d.ts +3 -3
  21. package/build/{components → cjs/components}/DishModifierCard/ModifierForm.d.ts +4 -4
  22. package/build/{components → cjs/components}/DishModifierCard/index.d.ts +2 -2
  23. package/build/{components → cjs/components}/ItemTag/ItemTag.d.ts +3 -3
  24. package/build/{components → cjs/components}/ItemTag/ItemTagProps.d.ts +5 -5
  25. package/build/{components → cjs/components}/ItemTag/index.d.ts +2 -2
  26. package/build/{components → cjs/components}/ItemTag/itemTag.styles.d.ts +1 -1
  27. package/build/{components → cjs/components}/ItemTagGroup/ItemTagGroup.d.ts +2 -2
  28. package/build/{components → cjs/components}/ItemTagGroup/index.d.ts +1 -1
  29. package/build/{components → cjs/components}/LocationCard/LocationCard.d.ts +3 -3
  30. package/build/{components → cjs/components}/LocationCard/LocationCard.styles.d.ts +2 -2
  31. package/build/{components → cjs/components}/LocationCard/LocationCardProps.d.ts +27 -28
  32. package/build/{components → cjs/components}/LocationCard/index.d.ts +2 -2
  33. package/build/{components → cjs/components}/MenuBanner/MenuBanner.d.ts +3 -3
  34. package/build/{components → cjs/components}/MenuBanner/MenuBanner.styles.d.ts +2 -2
  35. package/build/{components → cjs/components}/MenuBanner/MenuBannerIcons.d.ts +6 -6
  36. package/build/{components → cjs/components}/MenuBanner/MenuBannerProps.d.ts +15 -15
  37. package/build/{components → cjs/components}/MenuBanner/index.d.ts +2 -2
  38. package/build/{components → cjs/components}/MenuDropdown/MenuDropdown.d.ts +3 -3
  39. package/build/{components → cjs/components}/MenuDropdown/MenuDropdown.styles.d.ts +2 -2
  40. package/build/{components → cjs/components}/MenuDropdown/MenuDropdownProps.d.ts +15 -15
  41. package/build/{components → cjs/components}/MenuDropdown/index.d.ts +2 -2
  42. package/build/cjs/components/MenuFilter/LeafIcon.d.ts +1 -0
  43. package/build/{components → cjs/components}/MenuFilter/MenuFilter.d.ts +3 -3
  44. package/build/{components → cjs/components}/MenuFilter/MenuFilter.styles.d.ts +1 -1
  45. package/build/{components → cjs/components}/MenuFilter/MenuFilterProps.d.ts +23 -23
  46. package/build/{components → cjs/components}/MenuFilter/index.d.ts +2 -2
  47. package/build/{components → cjs/components}/MenuItem/MenuItem.d.ts +3 -3
  48. package/build/{components → cjs/components}/MenuItem/MenuItem.styles.d.ts +1 -1
  49. package/build/{components → cjs/components}/MenuItem/MenuItemImg.d.ts +3 -3
  50. package/build/{components → cjs/components}/MenuItem/MenuItemInfo.d.ts +4 -4
  51. package/build/{components → cjs/components}/MenuItem/MenuItemPrice.d.ts +3 -3
  52. package/build/{components → cjs/components}/MenuItem/MenuItemProps.d.ts +41 -41
  53. package/build/{components → cjs/components}/MenuItem/MenuItemReactions.d.ts +3 -3
  54. package/build/{components → cjs/components}/MenuItem/MenuItemTags.d.ts +3 -3
  55. package/build/{components → cjs/components}/MenuItem/index.d.ts +2 -2
  56. package/build/{components → cjs/components}/MenuItemGroup/MenuItemGroup.d.ts +5 -5
  57. package/build/{components → cjs/components}/MenuItemGroup/MenuItemGroupStyles.d.ts +1 -1
  58. package/build/{components → cjs/components}/MenuItemGroup/index.d.ts +1 -1
  59. package/build/{components → cjs/components}/MenuSection/MenuSection.d.ts +3 -3
  60. package/build/{components → cjs/components}/MenuSection/MenuSectionProps.d.ts +9 -9
  61. package/build/{components → cjs/components}/MenuSection/MenuSectionStyles.d.ts +1 -1
  62. package/build/{components → cjs/components}/MenuSection/index.d.ts +2 -2
  63. package/build/{components → cjs/components}/MenuSectionGroup/MenuSectionGroup.d.ts +5 -5
  64. package/build/{components → cjs/components}/MenuSectionGroup/index.d.ts +1 -1
  65. package/build/{components → cjs/components}/OrderingAppContext/OrderingAppContext.d.ts +18 -18
  66. package/build/{components → cjs/components}/OrderingAppContext/index.d.ts +1 -1
  67. package/build/{components → cjs/components}/PageSection/PageSection.d.ts +4 -4
  68. package/build/{components → cjs/components}/PageSection/index.d.ts +1 -1
  69. package/build/{components → cjs/components}/QuantityPicker/QuantityPicker.d.ts +3 -3
  70. package/build/{components → cjs/components}/QuantityPicker/QuantityPicker.styles.d.ts +5 -5
  71. package/build/{components → cjs/components}/QuantityPicker/QuantityPickerProps.d.ts +21 -21
  72. package/build/{components → cjs/components}/QuantityPicker/index.d.ts +2 -2
  73. package/build/cjs/components/Radio/Radio.d.ts +2 -0
  74. package/build/{components → cjs/components}/Radio/index.d.ts +1 -1
  75. package/build/{components → cjs/components}/ReactionCounter/ReactionCounter.d.ts +3 -3
  76. package/build/{components → cjs/components}/ReactionCounter/ReactionCounterProps.d.ts +6 -6
  77. package/build/{components → cjs/components}/ReactionCounter/index.d.ts +2 -2
  78. package/build/{components → cjs/components}/ReactionCounterGroup/ReactionCounterGroup.d.ts +4 -4
  79. package/build/{components → cjs/components}/ReactionCounterGroup/index.d.ts +1 -1
  80. package/build/{components → cjs/components}/SelectableChip/SelectableChip.d.ts +3 -3
  81. package/build/{components → cjs/components}/SelectableChip/SelectableChip.styles.d.ts +2 -2
  82. package/build/{components → cjs/components}/SelectableChip/SelectableChipProps.d.ts +2 -2
  83. package/build/{components → cjs/components}/SelectableChip/index.d.ts +2 -2
  84. package/build/{components → cjs/components}/SelectableChipGroup/SelectableChipGroup.d.ts +3 -3
  85. package/build/{components → cjs/components}/SelectableChipGroup/SelectableChipGroup.styles.d.ts +1 -1
  86. package/build/{components → cjs/components}/SelectableChipGroup/SelectableChipGroupProps.d.ts +5 -5
  87. package/build/{components → cjs/components}/SelectableChipGroup/index.d.ts +2 -2
  88. package/build/{components → cjs/components}/SelectedMenuFiltersList/SelectedMenuFiltersList.d.ts +3 -3
  89. package/build/{components → cjs/components}/SelectedMenuFiltersList/SelectedMenuFiltersListProps.d.ts +6 -6
  90. package/build/{components → cjs/components}/SelectedMenuFiltersList/index.d.ts +2 -2
  91. package/build/{components → cjs/components}/StatusTag/StatusTag.d.ts +10 -10
  92. package/build/{components → cjs/components}/StatusTag/StatusTag.styles.d.ts +2 -2
  93. package/build/{components → cjs/components}/StatusTag/StatusTagProps.d.ts +10 -10
  94. package/build/{components → cjs/components}/StatusTag/index.d.ts +2 -2
  95. package/build/cjs/components/Switch/Switch.d.ts +2 -0
  96. package/build/{components → cjs/components}/Switch/index.d.ts +1 -1
  97. package/build/{components → cjs/components}/index.d.ts +29 -29
  98. package/build/{index.d.ts → cjs/index.d.ts} +2 -2
  99. package/build/cjs/index.js +1576 -0
  100. package/build/cjs/index.js.map +1 -0
  101. package/build/{theme → cjs/theme}/index.d.ts +1 -1
  102. package/build/cjs/theme/overrides.d.ts +2 -0
  103. package/build/{theme → cjs/theme}/palette.d.ts +26 -26
  104. package/build/cjs/theme/props.d.ts +2 -0
  105. package/build/{theme → cjs/theme}/theme.d.ts +2 -2
  106. package/build/cjs/theme/typography.d.ts +2 -0
  107. package/build/esm/_virtual/index.js +4 -0
  108. package/build/esm/_virtual/index.js.map +1 -0
  109. package/build/esm/assets/leaf-icon.svg.js +21 -0
  110. package/build/esm/assets/leaf-icon.svg.js.map +1 -0
  111. package/build/esm/components/Button/Button.d.ts +3 -0
  112. package/build/esm/components/Button/Button.js +23 -0
  113. package/build/esm/components/Button/Button.js.map +1 -0
  114. package/build/esm/components/Button/ButtonProps.d.ts +5 -0
  115. package/build/esm/components/Button/index.d.ts +2 -0
  116. package/build/esm/components/Checkbox/Checkbox.d.ts +2 -0
  117. package/build/esm/components/Checkbox/Checkbox.js +16 -0
  118. package/build/esm/components/Checkbox/Checkbox.js.map +1 -0
  119. package/build/esm/components/Checkbox/index.d.ts +1 -0
  120. package/build/esm/components/DialogSection/DialogSection.d.ts +8 -0
  121. package/build/esm/components/DialogSection/DialogSection.js +11 -0
  122. package/build/esm/components/DialogSection/DialogSection.js.map +1 -0
  123. package/build/esm/components/DialogSection/index.d.ts +1 -0
  124. package/build/esm/components/DialogTitle/DialogTitle.d.ts +9 -0
  125. package/build/esm/components/DialogTitle/DialogTitle.js +22 -0
  126. package/build/esm/components/DialogTitle/DialogTitle.js.map +1 -0
  127. package/build/esm/components/DialogTitle/index.d.ts +1 -0
  128. package/build/esm/components/DishCheckoutCard/DishCheckoutCard.d.ts +3 -0
  129. package/build/esm/components/DishCheckoutCard/DishCheckoutCard.js +94 -0
  130. package/build/esm/components/DishCheckoutCard/DishCheckoutCard.js.map +1 -0
  131. package/build/esm/components/DishCheckoutCard/DishCheckoutCard.styles.d.ts +2 -0
  132. package/build/esm/components/DishCheckoutCard/DishCheckoutCard.styles.js +85 -0
  133. package/build/esm/components/DishCheckoutCard/DishCheckoutCard.styles.js.map +1 -0
  134. package/build/esm/components/DishCheckoutCard/DishCheckoutCardProps.d.ts +44 -0
  135. package/build/esm/components/DishCheckoutCard/index.d.ts +2 -0
  136. package/build/esm/components/DishDetailsReview/DishDetailsReview.d.ts +3 -0
  137. package/build/esm/components/DishDetailsReview/DishDetailsReview.js +18 -0
  138. package/build/esm/components/DishDetailsReview/DishDetailsReview.js.map +1 -0
  139. package/build/esm/components/DishDetailsReview/DishDetailsReviewProps.d.ts +12 -0
  140. package/build/esm/components/DishDetailsReview/index.d.ts +2 -0
  141. package/build/esm/components/DishModifierCard/DishModifierCard.d.ts +6 -0
  142. package/build/esm/components/DishModifierCard/DishModifierCard.js +48 -0
  143. package/build/esm/components/DishModifierCard/DishModifierCard.js.map +1 -0
  144. package/build/esm/components/DishModifierCard/DishModifierCard.styles.d.ts +5 -0
  145. package/build/esm/components/DishModifierCard/DishModifierCard.styles.js +95 -0
  146. package/build/esm/components/DishModifierCard/DishModifierCard.styles.js.map +1 -0
  147. package/build/esm/components/DishModifierCard/DishModifierCardProps.d.ts +71 -0
  148. package/build/esm/components/DishModifierCard/ModifierControls.d.ts +3 -0
  149. package/build/esm/components/DishModifierCard/ModifierControls.js +135 -0
  150. package/build/esm/components/DishModifierCard/ModifierControls.js.map +1 -0
  151. package/build/esm/components/DishModifierCard/ModifierForm.d.ts +4 -0
  152. package/build/esm/components/DishModifierCard/index.d.ts +2 -0
  153. package/build/esm/components/ItemTag/ItemTag.d.ts +3 -0
  154. package/build/esm/components/ItemTag/ItemTag.js +15 -0
  155. package/build/esm/components/ItemTag/ItemTag.js.map +1 -0
  156. package/build/esm/components/ItemTag/ItemTagProps.d.ts +5 -0
  157. package/build/esm/components/ItemTag/index.d.ts +2 -0
  158. package/build/esm/components/ItemTag/itemTag.styles.d.ts +1 -0
  159. package/build/esm/components/ItemTag/itemTag.styles.js +20 -0
  160. package/build/esm/components/ItemTag/itemTag.styles.js.map +1 -0
  161. package/build/esm/components/ItemTagGroup/ItemTagGroup.d.ts +2 -0
  162. package/build/esm/components/ItemTagGroup/ItemTagGroup.js +10 -0
  163. package/build/esm/components/ItemTagGroup/ItemTagGroup.js.map +1 -0
  164. package/build/esm/components/ItemTagGroup/index.d.ts +1 -0
  165. package/build/esm/components/LocationCard/LocationCard.d.ts +3 -0
  166. package/build/esm/components/LocationCard/LocationCard.js +35 -0
  167. package/build/esm/components/LocationCard/LocationCard.js.map +1 -0
  168. package/build/esm/components/LocationCard/LocationCard.styles.d.ts +2 -0
  169. package/build/esm/components/LocationCard/LocationCard.styles.js +64 -0
  170. package/build/esm/components/LocationCard/LocationCard.styles.js.map +1 -0
  171. package/build/esm/components/LocationCard/LocationCardProps.d.ts +27 -0
  172. package/build/esm/components/LocationCard/index.d.ts +2 -0
  173. package/build/esm/components/MenuBanner/MenuBanner.d.ts +3 -0
  174. package/build/esm/components/MenuBanner/MenuBanner.js +34 -0
  175. package/build/esm/components/MenuBanner/MenuBanner.js.map +1 -0
  176. package/build/esm/components/MenuBanner/MenuBanner.styles.d.ts +2 -0
  177. package/build/esm/components/MenuBanner/MenuBanner.styles.js +49 -0
  178. package/build/esm/components/MenuBanner/MenuBanner.styles.js.map +1 -0
  179. package/build/esm/components/MenuBanner/MenuBannerIcons.d.ts +6 -0
  180. package/build/esm/components/MenuBanner/MenuBannerIcons.js +12 -0
  181. package/build/esm/components/MenuBanner/MenuBannerIcons.js.map +1 -0
  182. package/build/esm/components/MenuBanner/MenuBannerProps.d.ts +15 -0
  183. package/build/esm/components/MenuBanner/index.d.ts +2 -0
  184. package/build/esm/components/MenuDropdown/MenuDropdown.d.ts +3 -0
  185. package/build/esm/components/MenuDropdown/MenuDropdown.js +37 -0
  186. package/build/esm/components/MenuDropdown/MenuDropdown.js.map +1 -0
  187. package/build/esm/components/MenuDropdown/MenuDropdown.styles.d.ts +2 -0
  188. package/build/esm/components/MenuDropdown/MenuDropdown.styles.js +40 -0
  189. package/build/esm/components/MenuDropdown/MenuDropdown.styles.js.map +1 -0
  190. package/build/esm/components/MenuDropdown/MenuDropdownProps.d.ts +15 -0
  191. package/build/esm/components/MenuDropdown/index.d.ts +2 -0
  192. package/build/esm/components/MenuFilter/LeafIcon.d.ts +1 -0
  193. package/build/esm/components/MenuFilter/MenuFilter.d.ts +3 -0
  194. package/build/esm/components/MenuFilter/MenuFilter.js +47 -0
  195. package/build/esm/components/MenuFilter/MenuFilter.js.map +1 -0
  196. package/build/esm/components/MenuFilter/MenuFilter.styles.d.ts +1 -0
  197. package/build/esm/components/MenuFilter/MenuFilter.styles.js +11 -0
  198. package/build/esm/components/MenuFilter/MenuFilter.styles.js.map +1 -0
  199. package/build/esm/components/MenuFilter/MenuFilterProps.d.ts +23 -0
  200. package/build/esm/components/MenuFilter/index.d.ts +2 -0
  201. package/build/esm/components/MenuItem/MenuItem.d.ts +3 -0
  202. package/build/esm/components/MenuItem/MenuItem.js +40 -0
  203. package/build/esm/components/MenuItem/MenuItem.js.map +1 -0
  204. package/build/esm/components/MenuItem/MenuItem.styles.d.ts +1 -0
  205. package/build/esm/components/MenuItem/MenuItem.styles.js +67 -0
  206. package/build/esm/components/MenuItem/MenuItem.styles.js.map +1 -0
  207. package/build/esm/components/MenuItem/MenuItemImg.d.ts +3 -0
  208. package/build/esm/components/MenuItem/MenuItemImg.js +22 -0
  209. package/build/esm/components/MenuItem/MenuItemImg.js.map +1 -0
  210. package/build/esm/components/MenuItem/MenuItemInfo.d.ts +4 -0
  211. package/build/esm/components/MenuItem/MenuItemInfo.js +9 -0
  212. package/build/esm/components/MenuItem/MenuItemInfo.js.map +1 -0
  213. package/build/esm/components/MenuItem/MenuItemPrice.d.ts +3 -0
  214. package/build/esm/components/MenuItem/MenuItemPrice.js +28 -0
  215. package/build/esm/components/MenuItem/MenuItemPrice.js.map +1 -0
  216. package/build/esm/components/MenuItem/MenuItemProps.d.ts +41 -0
  217. package/build/esm/components/MenuItem/MenuItemReactions.d.ts +3 -0
  218. package/build/esm/components/MenuItem/MenuItemReactions.js +16 -0
  219. package/build/esm/components/MenuItem/MenuItemReactions.js.map +1 -0
  220. package/build/esm/components/MenuItem/MenuItemTags.d.ts +3 -0
  221. package/build/esm/components/MenuItem/MenuItemTags.js +11 -0
  222. package/build/esm/components/MenuItem/MenuItemTags.js.map +1 -0
  223. package/build/esm/components/MenuItem/index.d.ts +2 -0
  224. package/build/esm/components/MenuItemGroup/MenuItemGroup.d.ts +5 -0
  225. package/build/esm/components/MenuItemGroup/MenuItemGroup.js +15 -0
  226. package/build/esm/components/MenuItemGroup/MenuItemGroup.js.map +1 -0
  227. package/build/esm/components/MenuItemGroup/MenuItemGroupStyles.d.ts +1 -0
  228. package/build/esm/components/MenuItemGroup/MenuItemGroupStyles.js +21 -0
  229. package/build/esm/components/MenuItemGroup/MenuItemGroupStyles.js.map +1 -0
  230. package/build/esm/components/MenuItemGroup/index.d.ts +1 -0
  231. package/build/esm/components/MenuSection/MenuSection.d.ts +3 -0
  232. package/build/esm/components/MenuSection/MenuSection.js +18 -0
  233. package/build/esm/components/MenuSection/MenuSection.js.map +1 -0
  234. package/build/esm/components/MenuSection/MenuSectionProps.d.ts +9 -0
  235. package/build/esm/components/MenuSection/MenuSectionStyles.d.ts +1 -0
  236. package/build/esm/components/MenuSection/MenuSectionStyles.js +12 -0
  237. package/build/esm/components/MenuSection/MenuSectionStyles.js.map +1 -0
  238. package/build/esm/components/MenuSection/index.d.ts +2 -0
  239. package/build/esm/components/MenuSectionGroup/MenuSectionGroup.d.ts +5 -0
  240. package/build/esm/components/MenuSectionGroup/MenuSectionGroup.js +12 -0
  241. package/build/esm/components/MenuSectionGroup/MenuSectionGroup.js.map +1 -0
  242. package/build/esm/components/MenuSectionGroup/index.d.ts +1 -0
  243. package/build/esm/components/OrderingAppContext/OrderingAppContext.d.ts +18 -0
  244. package/build/esm/components/OrderingAppContext/OrderingAppContext.js +17 -0
  245. package/build/esm/components/OrderingAppContext/OrderingAppContext.js.map +1 -0
  246. package/build/esm/components/OrderingAppContext/index.d.ts +1 -0
  247. package/build/esm/components/PageSection/PageSection.d.ts +4 -0
  248. package/build/esm/components/PageSection/PageSection.js +7 -0
  249. package/build/esm/components/PageSection/PageSection.js.map +1 -0
  250. package/build/esm/components/PageSection/index.d.ts +1 -0
  251. package/build/esm/components/QuantityPicker/QuantityPicker.d.ts +3 -0
  252. package/build/esm/components/QuantityPicker/QuantityPicker.js +38 -0
  253. package/build/esm/components/QuantityPicker/QuantityPicker.js.map +1 -0
  254. package/build/esm/components/QuantityPicker/QuantityPicker.styles.d.ts +5 -0
  255. package/build/esm/components/QuantityPicker/QuantityPicker.styles.js +46 -0
  256. package/build/esm/components/QuantityPicker/QuantityPicker.styles.js.map +1 -0
  257. package/build/esm/components/QuantityPicker/QuantityPickerProps.d.ts +21 -0
  258. package/build/esm/components/QuantityPicker/index.d.ts +2 -0
  259. package/build/esm/components/Radio/Radio.d.ts +2 -0
  260. package/build/esm/components/Radio/Radio.js +16 -0
  261. package/build/esm/components/Radio/Radio.js.map +1 -0
  262. package/build/esm/components/Radio/index.d.ts +1 -0
  263. package/build/esm/components/ReactionCounter/ReactionCounter.d.ts +3 -0
  264. package/build/esm/components/ReactionCounter/ReactionCounter.js +12 -0
  265. package/build/esm/components/ReactionCounter/ReactionCounter.js.map +1 -0
  266. package/build/esm/components/ReactionCounter/ReactionCounterProps.d.ts +6 -0
  267. package/build/esm/components/ReactionCounter/index.d.ts +2 -0
  268. package/build/esm/components/ReactionCounterGroup/ReactionCounterGroup.d.ts +4 -0
  269. package/build/esm/components/ReactionCounterGroup/ReactionCounterGroup.js +10 -0
  270. package/build/esm/components/ReactionCounterGroup/ReactionCounterGroup.js.map +1 -0
  271. package/build/esm/components/ReactionCounterGroup/index.d.ts +1 -0
  272. package/build/esm/components/SelectableChip/SelectableChip.d.ts +3 -0
  273. package/build/esm/components/SelectableChip/SelectableChip.js +15 -0
  274. package/build/esm/components/SelectableChip/SelectableChip.js.map +1 -0
  275. package/build/esm/components/SelectableChip/SelectableChip.styles.d.ts +2 -0
  276. package/build/esm/components/SelectableChip/SelectableChip.styles.js +34 -0
  277. package/build/esm/components/SelectableChip/SelectableChip.styles.js.map +1 -0
  278. package/build/esm/components/SelectableChip/SelectableChipProps.d.ts +2 -0
  279. package/build/esm/components/SelectableChip/index.d.ts +2 -0
  280. package/build/esm/components/SelectableChipGroup/SelectableChipGroup.d.ts +3 -0
  281. package/build/esm/components/SelectableChipGroup/SelectableChipGroup.js +15 -0
  282. package/build/esm/components/SelectableChipGroup/SelectableChipGroup.js.map +1 -0
  283. package/build/esm/components/SelectableChipGroup/SelectableChipGroup.styles.d.ts +1 -0
  284. package/build/esm/components/SelectableChipGroup/SelectableChipGroup.styles.js +21 -0
  285. package/build/esm/components/SelectableChipGroup/SelectableChipGroup.styles.js.map +1 -0
  286. package/build/esm/components/SelectableChipGroup/SelectableChipGroupProps.d.ts +5 -0
  287. package/build/esm/components/SelectableChipGroup/index.d.ts +2 -0
  288. package/build/esm/components/SelectedMenuFiltersList/SelectedMenuFiltersList.d.ts +3 -0
  289. package/build/esm/components/SelectedMenuFiltersList/SelectedMenuFiltersList.js +33 -0
  290. package/build/esm/components/SelectedMenuFiltersList/SelectedMenuFiltersList.js.map +1 -0
  291. package/build/esm/components/SelectedMenuFiltersList/SelectedMenuFiltersListProps.d.ts +6 -0
  292. package/build/esm/components/SelectedMenuFiltersList/index.d.ts +2 -0
  293. package/build/esm/components/StatusTag/StatusTag.d.ts +10 -0
  294. package/build/esm/components/StatusTag/StatusTag.js +19 -0
  295. package/build/esm/components/StatusTag/StatusTag.js.map +1 -0
  296. package/build/esm/components/StatusTag/StatusTag.styles.d.ts +2 -0
  297. package/build/esm/components/StatusTag/StatusTag.styles.js +40 -0
  298. package/build/esm/components/StatusTag/StatusTag.styles.js.map +1 -0
  299. package/build/esm/components/StatusTag/StatusTagProps.d.ts +10 -0
  300. package/build/esm/components/StatusTag/index.d.ts +2 -0
  301. package/build/esm/components/Switch/Switch.d.ts +2 -0
  302. package/build/esm/components/Switch/Switch.js +24 -0
  303. package/build/esm/components/Switch/Switch.js.map +1 -0
  304. package/build/esm/components/Switch/index.d.ts +1 -0
  305. package/build/esm/components/index.d.ts +29 -0
  306. package/build/esm/index.d.ts +2 -0
  307. package/build/esm/index.js +31 -0
  308. package/build/esm/index.js.map +1 -0
  309. package/build/esm/node_modules/classnames/index.js +81 -0
  310. package/build/esm/node_modules/classnames/index.js.map +1 -0
  311. package/build/esm/theme/index.d.ts +1 -0
  312. package/build/esm/theme/overrides.d.ts +2 -0
  313. package/build/esm/theme/overrides.js +75 -0
  314. package/build/esm/theme/overrides.js.map +1 -0
  315. package/build/esm/theme/palette.d.ts +26 -0
  316. package/build/esm/theme/palette.js +29 -0
  317. package/build/esm/theme/palette.js.map +1 -0
  318. package/build/esm/theme/props.d.ts +2 -0
  319. package/build/esm/theme/props.js +11 -0
  320. package/build/esm/theme/props.js.map +1 -0
  321. package/build/esm/theme/theme.d.ts +2 -0
  322. package/build/esm/theme/theme.js +14 -0
  323. package/build/esm/theme/theme.js.map +1 -0
  324. package/build/esm/theme/typography.d.ts +2 -0
  325. package/build/esm/theme/typography.js +60 -0
  326. package/build/esm/theme/typography.js.map +1 -0
  327. package/package.json +8 -9
  328. package/build/components/Checkbox/Checkbox.d.ts +0 -2
  329. package/build/components/Radio/Radio.d.ts +0 -2
  330. package/build/components/Switch/Switch.d.ts +0 -2
  331. package/build/index.es.js +0 -2713
  332. package/build/index.es.js.map +0 -1
  333. package/build/index.js +0 -2788
  334. package/build/index.js.map +0 -1
  335. package/build/theme/overrides.d.ts +0 -2
  336. package/build/theme/props.d.ts +0 -2
  337. package/build/theme/typography.d.ts +0 -2
package/build/index.es.js DELETED
@@ -1,2713 +0,0 @@
1
- import { Button as Button$1, makeStyles as makeStyles$1, Box, Typography as Typography$1, Link as Link$1, Paper as Paper$1, Avatar as Avatar$1, Card, CardActionArea, FormControl, Select, InputAdornment, MenuItem as MenuItem$1, TextField, RadioGroup, FormControlLabel as FormControlLabel$1, Radio as Radio$2, FormGroup, Checkbox as Checkbox$2, CardContent, useMediaQuery, Menu, Tabs, Chip, DialogTitle as DialogTitle$1, IconButton as IconButton$1, withStyles, Switch as Switch$2, CardHeader } from '@material-ui/core';
2
- export * from '@material-ui/core';
3
- import * as React from 'react';
4
- import React__default, { forwardRef, createContext, createElement, useContext, useState } from 'react';
5
- import { makeStyles, lighten } from '@material-ui/core/styles';
6
- import '@material-ui/lab/Alert';
7
- import '@material-ui/core/AppBar';
8
- import MuiAvatar from '@material-ui/core/Avatar';
9
- import '@material-ui/core/Badge';
10
- import '@material-ui/core/Button';
11
- import '@material-ui/core/CircularProgress';
12
- import '@material-ui/core/ButtonGroup';
13
- import '@material-ui/core/Card';
14
- import '@material-ui/core/CardActionArea';
15
- import '@material-ui/core/CardActions';
16
- import '@material-ui/core/CardContent';
17
- import '@material-ui/core/CardHeader';
18
- import '@material-ui/core/CardMedia';
19
- import MuiCheckbox from '@material-ui/core/Checkbox';
20
- import FormControlLabel from '@material-ui/core/FormControlLabel';
21
- import '@material-ui/core/Chip';
22
- import '@material-ui/core/Collapse';
23
- import '@material-ui/core/Dialog';
24
- import '@material-ui/core/DialogActions';
25
- import '@material-ui/core/DialogContent';
26
- import '@material-ui/core/DialogTitle';
27
- import '@material-ui/core/Drawer';
28
- import '@material-ui/core/FormControl';
29
- import '@material-ui/core/Grid';
30
- import MuiIconButton from '@material-ui/core/IconButton';
31
- import '@material-ui/core/InputAdornment';
32
- import '@material-ui/core/LinearProgress';
33
- import '@material-ui/core/List';
34
- import '@material-ui/core/ListItem';
35
- import '@material-ui/core/ListItemAvatar';
36
- import '@material-ui/core/ListItemIcon';
37
- import '@material-ui/core/ListItemSecondaryAction';
38
- import '@material-ui/core/ListItemText';
39
- import '@material-ui/core/Menu';
40
- import '@material-ui/core/MenuItem';
41
- import '@material-ui/core/MenuList';
42
- import MuiRadio from '@material-ui/core/Radio';
43
- import '@material-ui/core/TextField';
44
- import MuiSwitch from '@material-ui/core/Switch';
45
- import Tab from '@material-ui/core/Tab';
46
- import '@material-ui/core/Tabs';
47
- import MuiToggleButton from '@material-ui/lab/ToggleButton';
48
- import MuiToggleButtonGroup from '@material-ui/lab/ToggleButtonGroup';
49
- import MuiTooltip from '@material-ui/core/Tooltip';
50
- import { Skeleton } from '@material-ui/lab';
51
-
52
- /*! *****************************************************************************
53
- Copyright (c) Microsoft Corporation.
54
-
55
- Permission to use, copy, modify, and/or distribute this software for any
56
- purpose with or without fee is hereby granted.
57
-
58
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
59
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
60
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
61
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
62
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
63
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
64
- PERFORMANCE OF THIS SOFTWARE.
65
- ***************************************************************************** */
66
-
67
- var __assign$1 = function() {
68
- __assign$1 = Object.assign || function __assign(t) {
69
- for (var s, i = 1, n = arguments.length; i < n; i++) {
70
- s = arguments[i];
71
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
72
- }
73
- return t;
74
- };
75
- return __assign$1.apply(this, arguments);
76
- };
77
-
78
- function __rest$1(s, e) {
79
- var t = {};
80
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
81
- t[p] = s[p];
82
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
83
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
84
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
85
- t[p[i]] = s[p[i]];
86
- }
87
- return t;
88
- }
89
-
90
- var Button = forwardRef(function (props, ref) {
91
- var _a = props.variation, variation = _a === void 0 ? 'primary' : _a, muiProps = __rest$1(props, ["variation"]);
92
- var variationProps = {};
93
- switch (variation) {
94
- case 'primary':
95
- variationProps.variant = 'contained';
96
- variationProps.color = 'primary';
97
- break;
98
- case 'secondary':
99
- variationProps.variant = 'outlined';
100
- variationProps.color = 'primary';
101
- break;
102
- }
103
- return React__default.createElement(Button$1, __assign$1({}, variationProps, muiProps, { ref: ref }));
104
- });
105
- Button.displayName = 'Button';
106
-
107
- var useMenuItemStyles = makeStyles(function (theme) {
108
- var _a, _b;
109
- return ({
110
- cardActionArea: (_a = {
111
- display: 'flex',
112
- gridGap: 16,
113
- height: '100%'
114
- },
115
- _a[theme.breakpoints.up('lg')] = {
116
- border: '1px solid #E0E0E0',
117
- borderRadius: theme.spacing(2),
118
- padding: theme.spacing(2),
119
- },
120
- _a),
121
- card: (_b = {},
122
- _b[theme.breakpoints.down('md')] = {
123
- '&:after': {
124
- content: '""',
125
- position: 'absolute',
126
- backgroundColor: '#E0E0E0',
127
- width: '100%',
128
- height: 1,
129
- bottom: -16,
130
- left: 0,
131
- },
132
- },
133
- _b.height = 185,
134
- _b.position = 'relative',
135
- _b.overflow = 'visible',
136
- _b),
137
- cardTitle: {
138
- flexGrow: 1,
139
- fontWeight: 500,
140
- fontSize: 18,
141
- lineHeight: '27px',
142
- color: theme.palette.grey[900],
143
- '-webkit-line-clamp': 2,
144
- display: '-webkit-box',
145
- '-webkit-box-orient': 'vertical',
146
- textOverflow: 'ellipsis',
147
- overflow: 'hidden',
148
- },
149
- cardDescription: {
150
- fontWeight: 400,
151
- fontSize: 14,
152
- lineHeight: '20px',
153
- margin: theme.spacing(0.5, 0, 1, 0),
154
- color: theme.palette.grey[800],
155
- '-webkit-line-clamp': 2,
156
- display: '-webkit-box',
157
- '-webkit-box-orient': 'vertical',
158
- textOverflow: 'ellipsis',
159
- overflow: 'hidden',
160
- },
161
- outOfStockTag: {
162
- minWidth: '90px',
163
- marginLeft: theme.spacing(1),
164
- display: 'inline-block',
165
- verticalAlign: 'bottom',
166
- },
167
- });
168
- });
169
-
170
- var useStyles$6 = makeStyles$1(function () { return ({
171
- img: {
172
- objectFit: 'cover',
173
- width: '100%',
174
- height: '100%',
175
- },
176
- }); });
177
- var MenuItemImg = function (props) {
178
- var _a = props.image, image = _a === void 0 ? {} : _a;
179
- var src = image.src;
180
- var classes = useStyles$6();
181
- if (!src) {
182
- return null;
183
- }
184
- return (React__default.createElement(Box, { width: 125, height: "100%", borderRadius: 16, overflow: "hidden", flexShrink: 0 }, React__default.createElement("img", { src: src, alt: "", className: classes.img })));
185
- };
186
-
187
- var MenuItemInfo = function (props) {
188
- return (React__default.createElement(Box, { display: "flex", flexGrow: 1, flexDirection: "column", height: "100%" }, props.children));
189
- };
190
-
191
- var _path$2p;
192
-
193
- function _extends$5q() { _extends$5q = 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$5q.apply(this, arguments); }
194
-
195
- function SvgChevronDown(props) {
196
- return /*#__PURE__*/React.createElement("svg", _extends$5q({
197
- viewBox: "0 0 16 16",
198
- fill: "none",
199
- strokeLinecap: "round",
200
- strokeLinejoin: "round",
201
- width: "1em",
202
- height: "1em"
203
- }, props), _path$2p || (_path$2p = /*#__PURE__*/React.createElement("path", {
204
- d: "M4 6l4 4 4-4",
205
- stroke: "currentColor"
206
- })));
207
- }
208
-
209
- var _path$2o;
210
-
211
- function _extends$5p() { _extends$5p = 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$5p.apply(this, arguments); }
212
-
213
- function SvgChevronUp(props) {
214
- return /*#__PURE__*/React.createElement("svg", _extends$5p({
215
- viewBox: "0 0 16 16",
216
- fill: "none",
217
- strokeLinecap: "round",
218
- strokeLinejoin: "round",
219
- width: "1em",
220
- height: "1em"
221
- }, props), _path$2o || (_path$2o = /*#__PURE__*/React.createElement("path", {
222
- d: "M12 10L8 6l-4 4",
223
- stroke: "currentColor"
224
- })));
225
- }
226
-
227
- var _path$2m;
228
-
229
- function _extends$5n() { _extends$5n = 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$5n.apply(this, arguments); }
230
-
231
- function SvgChevronRight(props) {
232
- return /*#__PURE__*/React.createElement("svg", _extends$5n({
233
- viewBox: "0 0 16 16",
234
- fill: "none",
235
- strokeLinecap: "round",
236
- strokeLinejoin: "round",
237
- width: "1em",
238
- height: "1em"
239
- }, props), _path$2m || (_path$2m = /*#__PURE__*/React.createElement("path", {
240
- d: "M6 12l4-4-4-4",
241
- stroke: "currentColor"
242
- })));
243
- }
244
-
245
- var _path$27;
246
-
247
- function _extends$4L() { _extends$4L = 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$4L.apply(this, arguments); }
248
-
249
- function SvgCheck(props) {
250
- return /*#__PURE__*/React.createElement("svg", _extends$4L({
251
- viewBox: "0 0 16 16",
252
- fill: "none",
253
- strokeLinecap: "round",
254
- strokeLinejoin: "round",
255
- width: "1em",
256
- height: "1em"
257
- }, props), _path$27 || (_path$27 = /*#__PURE__*/React.createElement("path", {
258
- d: "M13.333 4L6 11.333 2.667 8",
259
- stroke: "currentColor"
260
- })));
261
- }
262
-
263
- var _g$2A, _defs$1E;
264
-
265
- function _extends$4I() { _extends$4I = 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$4I.apply(this, arguments); }
266
-
267
- function SvgClock(props) {
268
- return /*#__PURE__*/React.createElement("svg", _extends$4I({
269
- viewBox: "0 0 16 16",
270
- fill: "none",
271
- strokeLinecap: "round",
272
- strokeLinejoin: "round",
273
- width: "1em",
274
- height: "1em"
275
- }, props), _g$2A || (_g$2A = /*#__PURE__*/React.createElement("g", {
276
- clipPath: "url(#clock_svg__clip0_8_5092)",
277
- stroke: "currentColor"
278
- }, /*#__PURE__*/React.createElement("path", {
279
- d: "M8 14.667A6.667 6.667 0 108 1.334a6.667 6.667 0 000 13.333z"
280
- }), /*#__PURE__*/React.createElement("path", {
281
- d: "M8 4v4l2.667 1.333"
282
- }))), _defs$1E || (_defs$1E = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
283
- id: "clock_svg__clip0_8_5092"
284
- }, /*#__PURE__*/React.createElement("path", {
285
- fill: "currentColor",
286
- d: "M0 0h16v16H0z"
287
- })))));
288
- }
289
-
290
- var _path$26;
291
-
292
- function _extends$4H() { _extends$4H = 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$4H.apply(this, arguments); }
293
-
294
- function SvgX(props) {
295
- return /*#__PURE__*/React.createElement("svg", _extends$4H({
296
- viewBox: "0 0 16 16",
297
- fill: "none",
298
- strokeLinecap: "round",
299
- strokeLinejoin: "round",
300
- width: "1em",
301
- height: "1em"
302
- }, props), _path$26 || (_path$26 = /*#__PURE__*/React.createElement("path", {
303
- d: "M12 4l-8 8m0-8l8 8",
304
- stroke: "currentColor"
305
- })));
306
- }
307
-
308
- var _g$2z, _defs$1D;
309
-
310
- function _extends$4G() { _extends$4G = 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$4G.apply(this, arguments); }
311
-
312
- function SvgXCircle(props) {
313
- return /*#__PURE__*/React.createElement("svg", _extends$4G({
314
- viewBox: "0 0 16 16",
315
- fill: "none",
316
- strokeLinecap: "round",
317
- strokeLinejoin: "round",
318
- width: "1em",
319
- height: "1em"
320
- }, props), _g$2z || (_g$2z = /*#__PURE__*/React.createElement("g", {
321
- clipPath: "url(#x-circle_svg__clip0_8_6136)",
322
- stroke: "currentColor"
323
- }, /*#__PURE__*/React.createElement("path", {
324
- d: "M8 14.667A6.667 6.667 0 108 1.334a6.667 6.667 0 000 13.333zM10 6l-4 4m0-4l4 4"
325
- }))), _defs$1D || (_defs$1D = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
326
- id: "x-circle_svg__clip0_8_6136"
327
- }, /*#__PURE__*/React.createElement("path", {
328
- fill: "currentColor",
329
- d: "M0 0h16v16H0z"
330
- })))));
331
- }
332
-
333
- var _path$1$;
334
-
335
- function _extends$4q() { _extends$4q = 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$4q.apply(this, arguments); }
336
-
337
- function SvgHeart(props) {
338
- return /*#__PURE__*/React.createElement("svg", _extends$4q({
339
- viewBox: "0 0 16 16",
340
- fill: "none",
341
- strokeLinecap: "round",
342
- strokeLinejoin: "round",
343
- width: "1em",
344
- height: "1em"
345
- }, props), _path$1$ || (_path$1$ = /*#__PURE__*/React.createElement("path", {
346
- d: "M13.893 3.074a3.667 3.667 0 00-5.186 0L8 3.78l-.707-.706A3.668 3.668 0 002.107 8.26l.706.707L8 14.154l5.187-5.187.706-.707a3.667 3.667 0 000-5.186v0z",
347
- stroke: "currentColor"
348
- })));
349
- }
350
-
351
- var _g$2m, _defs$1t;
352
-
353
- function _extends$4m() { _extends$4m = 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$4m.apply(this, arguments); }
354
-
355
- function SvgInfo(props) {
356
- return /*#__PURE__*/React.createElement("svg", _extends$4m({
357
- viewBox: "0 0 16 16",
358
- fill: "none",
359
- strokeLinecap: "round",
360
- strokeLinejoin: "round",
361
- width: "1em",
362
- height: "1em"
363
- }, props), _g$2m || (_g$2m = /*#__PURE__*/React.createElement("g", {
364
- clipPath: "url(#info_svg__clip0_8_5377)",
365
- stroke: "currentColor"
366
- }, /*#__PURE__*/React.createElement("path", {
367
- d: "M8 14.667A6.667 6.667 0 108 1.334a6.667 6.667 0 000 13.333zm0-4V8m0-2.667h.007"
368
- }))), _defs$1t || (_defs$1t = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
369
- id: "info_svg__clip0_8_5377"
370
- }, /*#__PURE__*/React.createElement("path", {
371
- fill: "currentColor",
372
- d: "M0 0h16v16H0z"
373
- })))));
374
- }
375
-
376
- var _g$2l;
377
-
378
- function _extends$4l() { _extends$4l = 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$4l.apply(this, arguments); }
379
-
380
- function SvgLock(props) {
381
- return /*#__PURE__*/React.createElement("svg", _extends$4l({
382
- viewBox: "0 0 16 16",
383
- fill: "none",
384
- strokeLinecap: "round",
385
- strokeLinejoin: "round",
386
- width: "1em",
387
- height: "1em"
388
- }, props), _g$2l || (_g$2l = /*#__PURE__*/React.createElement("g", {
389
- stroke: "currentColor"
390
- }, /*#__PURE__*/React.createElement("path", {
391
- d: "M12.667 7.333H3.333C2.597 7.333 2 7.93 2 8.668v4.667c0 .736.597 1.333 1.333 1.333h9.334c.736 0 1.333-.597 1.333-1.333V8.667c0-.737-.597-1.333-1.333-1.333z"
392
- }), /*#__PURE__*/React.createElement("path", {
393
- d: "M4.667 7.333V4.668a3.333 3.333 0 116.666 0v2.667"
394
- }))));
395
- }
396
-
397
- var _g$2h, _defs$1r;
398
-
399
- function _extends$47() { _extends$47 = 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$47.apply(this, arguments); }
400
-
401
- function SvgMinusCircle(props) {
402
- return /*#__PURE__*/React.createElement("svg", _extends$47({
403
- viewBox: "0 0 16 16",
404
- fill: "none",
405
- strokeLinecap: "round",
406
- strokeLinejoin: "round",
407
- width: "1em",
408
- height: "1em"
409
- }, props), _g$2h || (_g$2h = /*#__PURE__*/React.createElement("g", {
410
- clipPath: "url(#minus-circle_svg__clip0_8_5970)",
411
- stroke: "currentColor"
412
- }, /*#__PURE__*/React.createElement("path", {
413
- d: "M8 14.667A6.667 6.667 0 108 1.334a6.667 6.667 0 000 13.333zM5.333 8h5.334"
414
- }))), _defs$1r || (_defs$1r = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
415
- id: "minus-circle_svg__clip0_8_5970"
416
- }, /*#__PURE__*/React.createElement("path", {
417
- fill: "currentColor",
418
- d: "M0 0h16v16H0z"
419
- })))));
420
- }
421
-
422
- var _path$1M;
423
-
424
- function _extends$40() { _extends$40 = 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$40.apply(this, arguments); }
425
-
426
- function SvgPlus(props) {
427
- return /*#__PURE__*/React.createElement("svg", _extends$40({
428
- viewBox: "0 0 16 16",
429
- fill: "none",
430
- strokeLinecap: "round",
431
- strokeLinejoin: "round",
432
- width: "1em",
433
- height: "1em"
434
- }, props), _path$1M || (_path$1M = /*#__PURE__*/React.createElement("path", {
435
- d: "M8 3.333v9.334M3.333 8h9.334",
436
- stroke: "currentColor"
437
- })));
438
- }
439
-
440
- var _g$2e, _defs$1o;
441
-
442
- function _extends$3$() { _extends$3$ = 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$3$.apply(this, arguments); }
443
-
444
- function SvgPlusCircle(props) {
445
- return /*#__PURE__*/React.createElement("svg", _extends$3$({
446
- viewBox: "0 0 16 16",
447
- fill: "none",
448
- strokeLinecap: "round",
449
- strokeLinejoin: "round",
450
- width: "1em",
451
- height: "1em"
452
- }, props), _g$2e || (_g$2e = /*#__PURE__*/React.createElement("g", {
453
- clipPath: "url(#plus-circle_svg__clip0_8_5870)",
454
- stroke: "currentColor"
455
- }, /*#__PURE__*/React.createElement("path", {
456
- d: "M8 14.667A6.667 6.667 0 108 1.334a6.667 6.667 0 000 13.333zm0-9.334v5.334M5.333 8h5.334"
457
- }))), _defs$1o || (_defs$1o = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
458
- id: "plus-circle_svg__clip0_8_5870"
459
- }, /*#__PURE__*/React.createElement("path", {
460
- fill: "currentColor",
461
- d: "M0 0h16v16H0z"
462
- })))));
463
- }
464
-
465
- var _path$1u;
466
-
467
- function _extends$3v() { _extends$3v = 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$3v.apply(this, arguments); }
468
-
469
- function SvgWarning(props) {
470
- return /*#__PURE__*/React.createElement("svg", _extends$3v({
471
- viewBox: "0 0 16 16",
472
- fill: "none",
473
- strokeLinecap: "round",
474
- strokeLinejoin: "round",
475
- width: "1em",
476
- height: "1em"
477
- }, props), _path$1u || (_path$1u = /*#__PURE__*/React.createElement("path", {
478
- d: "M6.86 2.573L1.213 12a1.334 1.334 0 001.14 2h11.294a1.332 1.332 0 001.14-2L9.14 2.573a1.333 1.333 0 00-2.28 0v0zM8 6v2.667m0 2.667h.007",
479
- stroke: "currentColor"
480
- })));
481
- }
482
-
483
- var _path$18;
484
-
485
- function _extends$2V() { _extends$2V = 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$2V.apply(this, arguments); }
486
-
487
- function SvgTrash(props) {
488
- return /*#__PURE__*/React.createElement("svg", _extends$2V({
489
- viewBox: "0 0 16 16",
490
- fill: "none",
491
- strokeLinecap: "round",
492
- strokeLinejoin: "round",
493
- width: "1em",
494
- height: "1em"
495
- }, props), _path$18 || (_path$18 = /*#__PURE__*/React.createElement("path", {
496
- d: "M2 4h12M5.333 4V2.667a1.333 1.333 0 011.334-1.333h2.666a1.333 1.333 0 011.334 1.333V4m2 0v9.334a1.333 1.333 0 01-1.334 1.333H4.667a1.333 1.333 0 01-1.334-1.333V4h9.334zm-6 3.333v4m2.666-4v4",
497
- stroke: "currentColor"
498
- })));
499
- }
500
-
501
- var _g$12;
502
-
503
- function _extends$1H() { _extends$1H = 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$1H.apply(this, arguments); }
504
-
505
- function SvgRestaurantMenu(props) {
506
- return /*#__PURE__*/React.createElement("svg", _extends$1H({
507
- viewBox: "0 0 16 16",
508
- fill: "none",
509
- strokeLinecap: "round",
510
- strokeLinejoin: "round",
511
- width: "1em",
512
- height: "1em"
513
- }, props), _g$12 || (_g$12 = /*#__PURE__*/React.createElement("g", {
514
- stroke: "currentColor"
515
- }, /*#__PURE__*/React.createElement("path", {
516
- d: "M11.334.667l-8 2.666h8V.667zM3.333 3.333h9.333v11.333H3.333zM5.333 8h5.334m-5.334 2.333h1m2 0h2.334"
517
- }))));
518
- }
519
-
520
- var _path$x;
521
-
522
- function _extends$1q() { _extends$1q = 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$1q.apply(this, arguments); }
523
-
524
- function SvgDollarSign(props) {
525
- return /*#__PURE__*/React.createElement("svg", _extends$1q({
526
- viewBox: "0 0 16 16",
527
- fill: "none",
528
- strokeLinecap: "round",
529
- strokeLinejoin: "round",
530
- width: "1em",
531
- height: "1em"
532
- }, props), _path$x || (_path$x = /*#__PURE__*/React.createElement("path", {
533
- d: "M8 .667v14.666m3.333-12h-5a2.333 2.333 0 100 4.667h3.334a2.333 2.333 0 010 4.667H4",
534
- stroke: "currentColor"
535
- })));
536
- }
537
-
538
- var _path$h, _path2$3;
539
-
540
- function _extends$D() { _extends$D = 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$D.apply(this, arguments); }
541
-
542
- function SvgReviews(props) {
543
- return /*#__PURE__*/React.createElement("svg", _extends$D({
544
- viewBox: "0 0 16 16",
545
- fill: "none",
546
- strokeLinecap: "round",
547
- strokeLinejoin: "round",
548
- width: "1em",
549
- height: "1em"
550
- }, props), _path$h || (_path$h = /*#__PURE__*/React.createElement("path", {
551
- d: "M14 7.667a5.587 5.587 0 01-.6 2.533 5.666 5.666 0 01-5.067 3.133 5.588 5.588 0 01-2.533-.6L2 14l1.267-3.8a5.586 5.586 0 01-.6-2.533A5.667 5.667 0 015.8 2.6 5.587 5.587 0 018.333 2h.334A5.654 5.654 0 0114 7.333v.334z",
552
- stroke: "currentColor"
553
- })), _path2$3 || (_path2$3 = /*#__PURE__*/React.createElement("path", {
554
- d: "M8.375 5.363a.2.2 0 01.358 0l.578 1.17a.2.2 0 00.15.11l1.292.189a.2.2 0 01.11.34l-.934.911a.2.2 0 00-.057.177l.22 1.286a.2.2 0 01-.29.21L8.647 9.15a.2.2 0 00-.186 0l-1.155.608a.2.2 0 01-.29-.211l.22-1.286a.2.2 0 00-.058-.177l-.934-.91a.2.2 0 01.11-.341l1.293-.19a.2.2 0 00.15-.109l.578-1.17z",
555
- fill: "currentColor"
556
- })));
557
- }
558
-
559
- /*! *****************************************************************************
560
- Copyright (c) Microsoft Corporation.
561
-
562
- Permission to use, copy, modify, and/or distribute this software for any
563
- purpose with or without fee is hereby granted.
564
-
565
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
566
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
567
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
568
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
569
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
570
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
571
- PERFORMANCE OF THIS SOFTWARE.
572
- ***************************************************************************** */
573
-
574
- var __assign = function() {
575
- __assign = Object.assign || function __assign(t) {
576
- for (var s, i = 1, n = arguments.length; i < n; i++) {
577
- s = arguments[i];
578
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
579
- }
580
- return t;
581
- };
582
- return __assign.apply(this, arguments);
583
- };
584
-
585
- function __rest(s, e) {
586
- var t = {};
587
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
588
- t[p] = s[p];
589
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
590
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
591
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
592
- t[p[i]] = s[p[i]];
593
- }
594
- return t;
595
- }
596
-
597
- var _path$1D;
598
-
599
- function _extends$3H() { _extends$3H = 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$3H.apply(this, arguments); }
600
-
601
- function SvgUser(props) {
602
- return /*#__PURE__*/React.createElement("svg", _extends$3H({
603
- viewBox: "0 0 16 16",
604
- fill: "none",
605
- strokeLinecap: "round",
606
- strokeLinejoin: "round",
607
- width: "1em",
608
- height: "1em"
609
- }, props), _path$1D || (_path$1D = /*#__PURE__*/React.createElement("path", {
610
- d: "M13.333 14v-1.333A2.667 2.667 0 0010.667 10H5.333a2.667 2.667 0 00-2.666 2.667V14M8 7.333A2.667 2.667 0 108 2a2.667 2.667 0 000 5.333z",
611
- stroke: "currentColor"
612
- })));
613
- }
614
-
615
- var useIconStyles = makeStyles$1(function (_a) {
616
- var spacing = _a.spacing, palette = _a.palette;
617
- var getFontSize = function (_a) {
618
- var size = _a.size;
619
- var sizes = {
620
- inherit: 'inherit',
621
- small: spacing(1.5),
622
- medium: spacing(2),
623
- large: spacing(2.5),
624
- 'extra-large': spacing(3),
625
- };
626
- return size ? sizes[size] : 'inherit';
627
- };
628
- var getColor = function (props) {
629
- var semanticColors = ['primary', 'secondary', 'info', 'success', 'warning', 'error'];
630
- var value = 'inherit';
631
- if (props.color) {
632
- if (semanticColors.includes(props.color.split('.')[0])) {
633
- var _a = props.color.split('.'), color = _a[0], _b = _a[1], variant = _b === void 0 ? 'main' : _b;
634
- // @ts-expect-error - todo.
635
- value = palette[color][variant];
636
- }
637
- else if (props.color.search(/^(rgb|hsla|#)/) !== -1) {
638
- value = props.color;
639
- }
640
- }
641
- return value;
642
- };
643
- return {
644
- root: {
645
- color: getColor,
646
- fontSize: getFontSize,
647
- strokeWidth: '1.3px',
648
- },
649
- };
650
- });
651
-
652
- var classnames$1 = {exports: {}};
653
-
654
- /*!
655
- Copyright (c) 2018 Jed Watson.
656
- Licensed under the MIT License (MIT), see
657
- http://jedwatson.github.io/classnames
658
- */
659
-
660
- (function (module) {
661
- /* global define */
662
-
663
- (function () {
664
-
665
- var hasOwn = {}.hasOwnProperty;
666
-
667
- function classNames() {
668
- var classes = [];
669
-
670
- for (var i = 0; i < arguments.length; i++) {
671
- var arg = arguments[i];
672
- if (!arg) continue;
673
-
674
- var argType = typeof arg;
675
-
676
- if (argType === 'string' || argType === 'number') {
677
- classes.push(arg);
678
- } else if (Array.isArray(arg)) {
679
- if (arg.length) {
680
- var inner = classNames.apply(null, arg);
681
- if (inner) {
682
- classes.push(inner);
683
- }
684
- }
685
- } else if (argType === 'object') {
686
- if (arg.toString === Object.prototype.toString) {
687
- for (var key in arg) {
688
- if (hasOwn.call(arg, key) && arg[key]) {
689
- classes.push(key);
690
- }
691
- }
692
- } else {
693
- classes.push(arg.toString());
694
- }
695
- }
696
- }
697
-
698
- return classes.join(' ');
699
- }
700
-
701
- if (module.exports) {
702
- classNames.default = classNames;
703
- module.exports = classNames;
704
- } else {
705
- window.classNames = classNames;
706
- }
707
- }());
708
- }(classnames$1));
709
-
710
- var classNames$1 = classnames$1.exports;
711
-
712
- var iconStaticClassName = 'pop-icon';
713
- var Icon = function (props) {
714
- var icon = props.icon, className = props.className, restProps = __rest(props, ["icon", "className"]);
715
- var hasAccessibleAttr = Boolean(restProps['aria-describedby'] || restProps['aria-label']);
716
- if (!hasAccessibleAttr && restProps['aria-hidden'] === undefined) {
717
- restProps['aria-hidden'] = true;
718
- }
719
- var classes = useIconStyles(props);
720
- var isValid = true;
721
- if (!icon || (typeof icon === 'function' && icon({}) === undefined)) {
722
- isValid = false;
723
- }
724
- return isValid
725
- ? createElement(icon, __assign({ className: classNames$1([classes.root, iconStaticClassName, className]) }, restProps))
726
- : null;
727
- };
728
- Icon.defaultProps = {
729
- size: 'inherit',
730
- color: 'inherit',
731
- };
732
- Icon.displayName = 'Icon';
733
-
734
- var LoadingStatus;
735
- (function (LoadingStatus) {
736
- LoadingStatus["ERROR"] = "ERROR";
737
- LoadingStatus["LOADED"] = "LOADED";
738
- LoadingStatus["PENDING"] = "PENDING";
739
- })(LoadingStatus || (LoadingStatus = {}));
740
- var useImgProps = function (avatarProps) {
741
- var _a = React__default.useState(LoadingStatus.PENDING), loaded = _a[0], setLoaded = _a[1];
742
- var imgProps = __assign(__assign({}, avatarProps.imgProps), { onLoad: function (event) {
743
- var _a, _b;
744
- setLoaded(LoadingStatus.LOADED);
745
- (_b = (_a = avatarProps.imgProps) === null || _a === void 0 ? void 0 : _a.onLoad) === null || _b === void 0 ? void 0 : _b.call(_a, event);
746
- } });
747
- return { imgProps: imgProps, loaded: loaded };
748
- };
749
-
750
- var getAvatarDimensions = function (theme, props) {
751
- var factors = {
752
- 'extra-small': 3,
753
- small: 4,
754
- medium: 5,
755
- large: 6,
756
- 'extra-large': 12.5,
757
- };
758
- var sizeFactor = factors[props.size || 'medium'];
759
- return theme.spacing(sizeFactor);
760
- };
761
- var getAvatarFontSize = function (props) {
762
- var fontSizes = {
763
- 'extra-small': '0.75rem',
764
- small: '1rem',
765
- medium: '1rem',
766
- large: '1.25rem',
767
- 'extra-large': '3.5rem',
768
- };
769
- return fontSizes[props.size];
770
- };
771
- var useAvatarStyles = makeStyles(function (theme) { return ({
772
- root: function (props) { return ({
773
- width: getAvatarDimensions(theme, props),
774
- height: getAvatarDimensions(theme, props),
775
- fontSize: getAvatarFontSize(props),
776
- backgroundColor: props.loaded === LoadingStatus.LOADED ? 'transparent' : props.background,
777
- color: theme.palette.getContrastText(props.background),
778
- objectFit: props.fit,
779
- }); },
780
- fallback: function (props) { return ({
781
- fontSize: getAvatarDimensions(theme, props),
782
- strokeWidth: 1,
783
- }); },
784
- }); });
785
-
786
- var Avatar = forwardRef(function (props, ref) {
787
- var children = props.children, src = props.src, alt = props.alt, fallback = props.fallback, muiProps = __rest(props, ["children", "src", "alt", "fallback"]);
788
- var _a = useImgProps(props), imgProps = _a.imgProps, loaded = _a.loaded;
789
- var classes = useAvatarStyles(__assign(__assign({}, props), { loaded: loaded }));
790
- var displayAltTextFallback = src && alt;
791
- var displayNoFallback = fallback === 'none';
792
- var displayCustomFallback = fallback !== 'none' && typeof fallback !== 'undefined';
793
- var Fallback;
794
- if (displayAltTextFallback) {
795
- Fallback = null;
796
- }
797
- else if (displayNoFallback) {
798
- Fallback = ' ';
799
- }
800
- else if (displayCustomFallback) {
801
- Fallback = fallback;
802
- }
803
- else {
804
- Fallback = React__default.createElement(Icon, { icon: SvgUser, className: classes.fallback });
805
- }
806
- return (React__default.createElement(MuiAvatar, __assign({ ref: ref, classes: { root: classes.root }, src: src, alt: alt }, muiProps, { imgProps: imgProps }), children || Fallback));
807
- });
808
- Avatar.defaultProps = {
809
- size: 'medium',
810
- fit: 'cover',
811
- background: '#E0E0E0',
812
- };
813
- Avatar.displayName = 'Avatar';
814
-
815
- makeStyles(function (theme) { return ({
816
- circle: {
817
- backgroundColor: theme.palette.grey[300],
818
- borderRadius: '50%',
819
- height: theme.spacing(0.65),
820
- width: theme.spacing(0.65),
821
- margin: theme.spacing(1) + "px 0 " + theme.spacing(1) + "px " + theme.spacing(1) + "px",
822
- },
823
- container: {
824
- border: "1px solid " + theme.palette.secondary.light,
825
- borderRadius: theme.spacing(0.5),
826
- flexGrow: 1,
827
- },
828
- titleBar: {
829
- display: 'flex',
830
- flexDirection: 'row',
831
- borderBottom: "1px solid " + theme.palette.secondary.light,
832
- width: '100%',
833
- },
834
- }); });
835
-
836
- makeStyles(function () { return ({
837
- root: {
838
- minWidth: 'unset',
839
- },
840
- label: {
841
- textTransform: function (_a) {
842
- var textTransform = _a.textTransform;
843
- return textTransform;
844
- },
845
- },
846
- }); });
847
-
848
- var Checkbox$1 = forwardRef(function (props, ref) {
849
- var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest(props, ["label", "disabled", "LabelProps"]);
850
- var control = React__default.createElement(MuiCheckbox, __assign({ disabled: label ? undefined : disabled }, muiProps));
851
- return label ? (React__default.createElement(FormControlLabel, __assign({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
852
- });
853
- Checkbox$1.displayName = 'Checkbox';
854
-
855
- var getBackground = function (theme) { return function (props) {
856
- var variant = props.variant, severity = props.severity;
857
- var background = theme.palette.grey[100];
858
- var backgrounds = {
859
- outlined: 'none',
860
- error: 'error.main',
861
- warning: 'warning.main',
862
- info: 'info.light',
863
- success: 'success.light',
864
- };
865
- if (variant === 'outlined') {
866
- background = backgrounds[variant];
867
- }
868
- else if (severity) {
869
- var _a = backgrounds[severity].split('.'), color = _a[0], colorVariant = _a[1];
870
- // @ts-expect-error - todo.
871
- background = theme.palette[color][colorVariant];
872
- }
873
- return background;
874
- }; };
875
- var getColor = function (theme) { return function (props) {
876
- var variant = props.variant, severity = props.severity;
877
- var textColor;
878
- if (variant === 'outlined' && severity) {
879
- var textColors = {
880
- error: theme.palette.error.main,
881
- info: theme.palette.info.main,
882
- warning: theme.palette.warning.dark,
883
- success: theme.palette.success.dark,
884
- };
885
- textColor = textColors[severity];
886
- }
887
- else if (variant === 'outlined' && !severity) {
888
- textColor = theme.palette.grey[700];
889
- }
890
- else if ((variant === 'default' || variant === undefined) && severity) {
891
- var textColors = {
892
- error: theme.palette.common.white,
893
- info: theme.palette.secondary.main,
894
- warning: theme.palette.secondary.main,
895
- success: theme.palette.secondary.main,
896
- };
897
- textColor = textColors[severity];
898
- }
899
- return textColor;
900
- }; };
901
- var getBorder = function (theme) { return function (props) {
902
- var variant = props.variant, severity = props.severity;
903
- var borderColor;
904
- if (variant === 'outlined' && severity) {
905
- var borderColors = {
906
- error: theme.palette.error.main,
907
- info: theme.palette.info.main,
908
- warning: theme.palette.warning.dark,
909
- success: theme.palette.success.dark,
910
- };
911
- borderColor = borderColors[severity];
912
- }
913
- return borderColor;
914
- }; };
915
- // using `any` here is a bit of cheating but it doesn't matter since this doesn't depend on
916
- // any component-specific props
917
- makeStyles(function (theme) { return ({
918
- root: {
919
- background: getBackground(theme),
920
- color: getColor(theme),
921
- borderColor: getBorder(theme),
922
- borderRadius: theme.spacing(0.5),
923
- },
924
- icon: {
925
- color: 'inherit',
926
- height: theme.spacing(2),
927
- width: theme.spacing(2),
928
- },
929
- deleteIcon: {
930
- color: theme.palette.grey[500],
931
- },
932
- }); });
933
-
934
- var defaultTypographyProps = {
935
- variant: 'body1',
936
- };
937
-
938
- var weights = {
939
- regular: 400,
940
- medium: 500,
941
- 'semi-bold': 600,
942
- bold: 700,
943
- };
944
- var getCustomColor = function (theme, color) {
945
- var isCommonColor = color && ['white', 'black'].includes(color);
946
- var isGreyColor = color && color.match(/^grey\.\d{3}/);
947
- var isSemanticColor = color && color.match(/(primary|secondary|info|success|error|warning).?(light|dark)?/);
948
- var isTextColor = color && ['textPrimary', 'textSecondary'].includes(color);
949
- switch (true) {
950
- case isCommonColor:
951
- // @ts-expect-error - todo.
952
- return theme.palette.common[color];
953
- case Boolean(isGreyColor):
954
- var scale = color.split('.')[1];
955
- // @ts-expect-error - todo.
956
- return theme.palette.grey[scale] || theme.palette.grey[900];
957
- case Boolean(isSemanticColor):
958
- var _a = color.split('.'), paletteKey = _a[0], _b = _a[1], variant = _b === void 0 ? 'main' : _b;
959
- // @ts-expect-error - todo.
960
- return theme.palette[paletteKey][variant];
961
- case isTextColor:
962
- // @ts-expect-error - todo.
963
- return theme.palette.text[color.slice(4).toLowerCase()];
964
- default:
965
- return undefined;
966
- }
967
- };
968
- var useTypographyStyles = makeStyles(function (theme) {
969
- var _a;
970
- return ({
971
- root: (_a = {},
972
- _a["& ." + iconStaticClassName] = {
973
- position: 'relative',
974
- top: '0.125em',
975
- padding: '0 0.125em',
976
- boxSizing: 'content-box',
977
- },
978
- _a.fontFamily = theme.typography.fontFamily,
979
- _a.fontWeight = function (_a) {
980
- var variant = _a.variant, weight = _a.weight;
981
- return (weight ? weights[weight] : theme.typography[variant].fontWeight);
982
- },
983
- _a.fontSize = function (_a) {
984
- var variant = _a.variant;
985
- return theme.typography[variant].fontSize;
986
- },
987
- _a.lineHeight = function (_a) {
988
- var variant = _a.variant;
989
- return theme.typography[variant].lineHeight;
990
- },
991
- _a.textTransform = function (_a) {
992
- var variant = _a.variant;
993
- return theme.typography[variant].textTransform;
994
- },
995
- _a.color = function (_a) {
996
- var color = _a.color, variant = _a.variant;
997
- return (color && getCustomColor(theme, color)) || theme.typography[variant].color;
998
- },
999
- _a),
1000
- caption: {
1001
- display: 'inline',
1002
- },
1003
- overline: {
1004
- display: 'inline',
1005
- },
1006
- });
1007
- });
1008
-
1009
- var Typography = function (props) {
1010
- props.weight; props.color; var TypographyRef = props.TypographyRef, restProps = __rest(props, ["weight", "color", "TypographyRef"]);
1011
- var classes = useTypographyStyles(__assign({}, props));
1012
- var variantMapping = { subtitle1: 'p' };
1013
- return React__default.createElement(Typography$1, __assign({ classes: classes, variantMapping: variantMapping, ref: TypographyRef }, restProps));
1014
- };
1015
- Typography.displayName = 'Typography';
1016
- Typography.defaultProps = defaultTypographyProps;
1017
-
1018
- var getFadeStop = function (_a, typographyVariant) {
1019
- var typography = _a.typography;
1020
- // @ts-expect-error - todo.
1021
- return !isNaN(Number(typography[typographyVariant].lineHeight))
1022
- ? // @ts-expect-error - todo.
1023
- typography[typographyVariant].lineHeight + "rem"
1024
- : // @ts-expect-error - todo.
1025
- typography[typographyVariant].lineHeight;
1026
- };
1027
- makeStyles$1(function (theme) { return ({
1028
- overlay: {
1029
- position: 'absolute',
1030
- top: 0,
1031
- left: 0,
1032
- height: '100%',
1033
- width: '100%',
1034
- background: function (props) { return "linear-gradient(to top, white, #FFF0 " + getFadeStop(theme, props.typographyVariant) + ")"; },
1035
- },
1036
- }); });
1037
-
1038
- var SemanticColors;
1039
- (function (SemanticColors) {
1040
- SemanticColors["PRIMARY_MAIN"] = "primary.main";
1041
- SemanticColors["PRIMARY_DARK"] = "primary.dark";
1042
- SemanticColors["PRIMARY_LIGHT"] = "primary.light";
1043
- SemanticColors["SECONDARY_MAIN"] = "secondary.main";
1044
- SemanticColors["SECONDARY_DARK"] = "secondary.dark";
1045
- SemanticColors["SECONDARY_LIGHT"] = "secondary.light";
1046
- })(SemanticColors || (SemanticColors = {}));
1047
- makeStyles$1(function (theme) { return ({
1048
- dividerRoot: {
1049
- gap: theme.spacing(2),
1050
- },
1051
- textRoot: {
1052
- color: function (props) {
1053
- var textColor = props.textColor;
1054
- if (Object.values(SemanticColors).includes(textColor)) {
1055
- var _a = textColor.split('.'), semanticColor = _a[0], shade = _a[1];
1056
- // @ts-expect-error - todo.
1057
- return theme.palette[semanticColor][shade];
1058
- }
1059
- else if (textColor) {
1060
- return textColor;
1061
- }
1062
- else {
1063
- return 'black';
1064
- }
1065
- },
1066
- textTransform: function (props) { return props.textTransform; },
1067
- },
1068
- dividerLine: {
1069
- backgroundColor: function (props) {
1070
- var dividerColor = props.dividerColor;
1071
- if (Object.values(SemanticColors).includes(dividerColor)) {
1072
- var _a = dividerColor.split('.'), semanticColor = _a[0], shade = _a[1];
1073
- // @ts-expect-error - todo.
1074
- return theme.palette[semanticColor][shade];
1075
- }
1076
- else if (dividerColor) {
1077
- return dividerColor;
1078
- }
1079
- else {
1080
- return theme.palette.grey[500];
1081
- }
1082
- },
1083
- },
1084
- }); });
1085
-
1086
- var IconButton = forwardRef(function (props, ref) {
1087
- return React__default.createElement(MuiIconButton, __assign({ ref: ref }, props));
1088
- });
1089
- IconButton.displayName = 'IconButton';
1090
- IconButton.defaultProps = {
1091
- color: 'secondary',
1092
- };
1093
-
1094
- var useLinkStyles = makeStyles(function (theme) { return ({
1095
- root: function (props) {
1096
- var _a;
1097
- return (__assign(__assign({ display: 'flex' }, (props.color === undefined && { color: theme.palette.info.main })), (_a = {}, _a["& ." + iconStaticClassName] = {
1098
- alignSelf: 'center',
1099
- }, _a)));
1100
- },
1101
- }); });
1102
-
1103
- // eslint-disable-next-line react/display-name -- false positive
1104
- var Link = forwardRef(function (props, ref) {
1105
- var children = props.children, muiProps = __rest(props, ["children"]);
1106
- var classes = useLinkStyles(props);
1107
- return (React__default.createElement(Link$1, __assign({ ref: ref, classes: { root: classes.root } }, muiProps), children));
1108
- });
1109
- Link.defaultProps = {
1110
- variant: 'body1',
1111
- };
1112
- Link.displayName = 'Link';
1113
-
1114
- var useStyles$4$1 = makeStyles$1(function (_a) {
1115
- var spacing = _a.spacing;
1116
- return ({
1117
- root: {
1118
- '&:last-child': {
1119
- marginBottom: 0,
1120
- },
1121
- marginBottom: spacing(4),
1122
- padding: spacing(4),
1123
- },
1124
- });
1125
- });
1126
- var Paper = forwardRef(function (props, ref) {
1127
- var legacyStyles = props.legacyStyles, restProps = __rest(props, ["legacyStyles"]);
1128
- var classes = useStyles$4$1(props);
1129
- return React__default.createElement(Paper$1, __assign({}, ref, { classes: __assign({}, (legacyStyles && classes)) }, restProps));
1130
- });
1131
- Paper.displayName = 'Paper';
1132
- Paper.defaultProps = {
1133
- legacyStyles: false,
1134
- };
1135
-
1136
- var Radio$1 = forwardRef(function (props, ref) {
1137
- var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest(props, ["label", "disabled", "LabelProps"]);
1138
- var control = React__default.createElement(MuiRadio, __assign({ disabled: label ? undefined : disabled }, muiProps));
1139
- return label ? (React__default.createElement(FormControlLabel, __assign({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
1140
- });
1141
- Radio$1.displayName = 'Radio';
1142
-
1143
- makeStyles(function () { return ({
1144
- textfield: {
1145
- background: function (props) { return (props.backgroundTransparency ? '#FFFFFF44' : 'none'); },
1146
- borderTopLeftRadius: 4,
1147
- borderBottomLeftRadius: 4,
1148
- '& fieldset': {
1149
- borderRight: 'none',
1150
- borderTopRightRadius: 0,
1151
- borderBottomRightRadius: 0,
1152
- },
1153
- },
1154
- button: {
1155
- borderTopLeftRadius: 0,
1156
- borderBottomLeftRadius: 0,
1157
- alignSelf: 'stretch',
1158
- },
1159
- input: {
1160
- color: function (props) { return props.inputTextColor || 'inherit'; },
1161
- '&$focused fieldset': {
1162
- top: -4,
1163
- },
1164
- },
1165
- focused: {},
1166
- }); });
1167
-
1168
- var useSwitchStyles = makeStyles(function (theme) { return ({
1169
- checked: {
1170
- '& $thumb': {
1171
- background: theme.palette.success.main,
1172
- },
1173
- '&& + $track': {
1174
- backgroundColor: theme.palette.success.main,
1175
- },
1176
- },
1177
- thumb: {},
1178
- track: {},
1179
- }); });
1180
-
1181
- var Switch$1 = forwardRef(function (props, ref) {
1182
- var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest(props, ["label", "disabled", "LabelProps"]);
1183
- var classes = useSwitchStyles(props);
1184
- var control = React__default.createElement(MuiSwitch, __assign({ classes: classes, disabled: label ? undefined : disabled }, muiProps));
1185
- return label ? (React__default.createElement(FormControlLabel, __assign({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
1186
- });
1187
- Switch$1.displayName = 'Switch';
1188
-
1189
- var useToggleButtonStyles = makeStyles(function (theme) { return ({
1190
- root: {
1191
- color: theme.palette.text.primary,
1192
- },
1193
- selected: {
1194
- '&&': {
1195
- '&:hover': {
1196
- backgroundColor: function (props) { return theme.palette[props.color || 'primary'].dark; },
1197
- },
1198
- backgroundColor: function (props) { return theme.palette[props.color || 'primary'].main; },
1199
- color: 'white',
1200
- },
1201
- },
1202
- }); });
1203
-
1204
- var ToggleButton = forwardRef(function (props, ref) {
1205
- var children = props.children, muiProps = __rest(props, ["children"]);
1206
- var classes = useToggleButtonStyles(props);
1207
- return (React__default.createElement(MuiToggleButton, __assign({ ref: ref, classes: {
1208
- root: classes.root,
1209
- selected: classes.selected,
1210
- } }, muiProps), children));
1211
- });
1212
- ToggleButton.defaultProps = {
1213
- color: 'primary',
1214
- };
1215
- ToggleButton.displayName = 'ToggleButton';
1216
-
1217
- var useToggleButtonGroupStyles = makeStyles(function (theme) { return ({
1218
- root: {
1219
- '&&': {
1220
- backgroundColor: theme.palette.grey[300],
1221
- },
1222
- },
1223
- }); });
1224
-
1225
- var ToggleButtonGroup = forwardRef(function (props, ref) {
1226
- var children = props.children, _a = props.color, color = _a === void 0 ? 'primary' : _a, muiProps = __rest(props, ["children", "color"]);
1227
- var classes = useToggleButtonGroupStyles(props);
1228
- var childrenWithProps = React__default.Children.map(children, function (child) {
1229
- if (!React__default.isValidElement(child)) {
1230
- return null;
1231
- }
1232
- return React__default.cloneElement(child, { color: color });
1233
- });
1234
- return (React__default.createElement(MuiToggleButtonGroup, __assign({ ref: ref, classes: { root: classes.root } }, muiProps), childrenWithProps));
1235
- });
1236
- ToggleButtonGroup.displayName = 'ToggleButtonGroup';
1237
-
1238
- var useTooltipStyles = makeStyles(function (_a) {
1239
- var typography = _a.typography;
1240
- return ({
1241
- tooltip: {
1242
- fontSize: typography.pxToRem(16),
1243
- },
1244
- });
1245
- });
1246
-
1247
- var Tooltip = forwardRef(function (props, ref) {
1248
- var classes = useTooltipStyles(props);
1249
- return React__default.createElement(MuiTooltip, __assign({ ref: ref, classes: classes }, props));
1250
- });
1251
- Tooltip.displayName = 'Tooltip';
1252
-
1253
- makeStyles$1(function () { return ({
1254
- root: {
1255
- height: 56,
1256
- },
1257
- }); });
1258
- makeStyles$1(function (theme) { return ({
1259
- root: {
1260
- height: '100%',
1261
- width: 'min-content',
1262
- borderRadius: theme.spacing(1),
1263
- },
1264
- input: {
1265
- '&::-webkit-clear-button, &::-webkit-outer-spin-button, &::-webkit-inner-spin-button': {
1266
- display: 'none',
1267
- },
1268
- '-moz-appearance': 'textfield',
1269
- minWidth: 40,
1270
- padding: 0,
1271
- textAlign: 'center',
1272
- },
1273
- adornedStart: {
1274
- padding: 0,
1275
- },
1276
- adornedEnd: {
1277
- padding: 0,
1278
- },
1279
- }); });
1280
-
1281
- makeStyles$1(function () { return ({
1282
- root: {
1283
- display: 'flex',
1284
- flexDirection: 'column',
1285
- alignItems: 'center',
1286
- gridGap: 16,
1287
- },
1288
- }); });
1289
-
1290
- var FollowerAuthenticationDialogContext = createContext(null);
1291
- FollowerAuthenticationDialogContext.Provider;
1292
-
1293
- makeStyles$1(function () { return ({
1294
- form: {
1295
- display: 'flex',
1296
- flexDirection: 'column',
1297
- alignItems: 'center',
1298
- width: '100%',
1299
- gridGap: 16,
1300
- },
1301
- }); });
1302
-
1303
- makeStyles$1(function () { return ({
1304
- main: {
1305
- width: '100%',
1306
- display: 'flex',
1307
- flexDirection: 'column',
1308
- gridGap: 16,
1309
- },
1310
- }); });
1311
-
1312
- makeStyles$1(function () { return ({
1313
- root: {
1314
- position: 'absolute',
1315
- top: 0,
1316
- right: 0,
1317
- },
1318
- }); });
1319
-
1320
- var ReactionCounter = function (props) {
1321
- var count = props.count, icon = props.icon, label = props.label;
1322
- return (React__default.createElement(Box, { display: "flex", alignItems: "center", gridGap: 6, color: "grey.900" },
1323
- React__default.createElement(Icon, { icon: icon, size: "large", color: "inherit", "aria-label": label }),
1324
- React__default.createElement(Typography, { variant: "body2", color: "grey.900" }, count)));
1325
- };
1326
-
1327
- var ReactionCounterGroup = function (props) {
1328
- var children = props.children;
1329
- return (React__default.createElement(Box, { display: "flex", gridGap: 16 }, children));
1330
- };
1331
-
1332
- var MenuItemReactions = function (props) {
1333
- var likeCount = props.likeCount, reviewCount = props.reviewCount;
1334
- var showLikes = likeCount ? likeCount > 0 : false;
1335
- var showReviews = reviewCount ? reviewCount > 0 : false;
1336
- return (React__default.createElement(ReactionCounterGroup, null,
1337
- showLikes && React__default.createElement(ReactionCounter, { icon: SvgHeart, count: likeCount !== null && likeCount !== void 0 ? likeCount : 0, label: "likes" }),
1338
- showReviews && React__default.createElement(ReactionCounter, { icon: SvgReviews, count: reviewCount !== null && reviewCount !== void 0 ? reviewCount : 0, label: "reviews" })));
1339
- };
1340
-
1341
- var useStyles$5 = makeStyles$1(function (_a) {
1342
- var palette = _a.palette, spacing = _a.spacing;
1343
- return ({
1344
- plusIcon: {
1345
- height: '100%',
1346
- padding: spacing(0.25),
1347
- background: function (props) { return (props.available ? palette.info.main : 'none'); },
1348
- color: function (props) { return (props.available ? palette.info.contrastText : palette.warning.main); },
1349
- borderRadius: '30px',
1350
- marginRight: spacing(1),
1351
- },
1352
- });
1353
- });
1354
- var MenuItemPrice = function (props) {
1355
- var classes = useStyles$5(props);
1356
- return (React__default.createElement(Box, { display: "flex", alignItems: "center" },
1357
- React__default.createElement(Box, { display: "flex", className: classes.plusIcon },
1358
- React__default.createElement(Icon, { icon: props.available ? SvgPlus : SvgLock, size: "medium" })),
1359
- React__default.createElement(Typography$1, null, props.price)));
1360
- };
1361
-
1362
- var useItemTagStyles = makeStyles(function (theme) { return ({
1363
- root: {
1364
- color: theme.palette.text.primary,
1365
- borderColor: theme.palette.text.primary,
1366
- border: '1.5px solid',
1367
- background: 'none',
1368
- height: '24px',
1369
- lineHeight: 1.5,
1370
- position: 'static',
1371
- width: '24px',
1372
- },
1373
- text: {
1374
- lineHeight: 1.5,
1375
- },
1376
- }); });
1377
-
1378
- var ItemTag = forwardRef(function (props, ref) {
1379
- var alt = props.alt, children = props.children;
1380
- var classes = useItemTagStyles();
1381
- return (React__default.createElement(Avatar$1, { ref: ref, alt: alt, classes: { root: classes.root } },
1382
- React__default.createElement(Typography, { variant: "caption", className: classes.text }, children)));
1383
- });
1384
- ItemTag.displayName = 'ItemTag';
1385
-
1386
- var ItemTagGroup = function (props) {
1387
- var children = props.children;
1388
- return (React__default.createElement(Box, { display: "flex", gridGap: 6, ml: 1, flexWrap: "wrap" }, children));
1389
- };
1390
-
1391
- var MenuItemTags = function (props) {
1392
- var itemTags = props.itemTags;
1393
- return (React__default.createElement(ItemTagGroup, null, itemTags === null || itemTags === void 0 ? void 0 : itemTags.slice(0, 5).map(function (itemTag) { return (React__default.createElement(ItemTag, { key: itemTag.name, alt: itemTag.name, color: itemTag.color }, itemTag.abbr)); })));
1394
- };
1395
-
1396
- var useStatusTagStyles = makeStyles(function (theme) { return ({
1397
- root: {
1398
- borderRadius: '5px',
1399
- display: 'flex',
1400
- padding: theme.spacing(1),
1401
- alignItems: 'center',
1402
- justifyContent: 'center',
1403
- width: 'fit-content',
1404
- },
1405
- filled: {
1406
- backgroundColor: theme.palette.grey[100],
1407
- color: theme.palette.grey[900],
1408
- },
1409
- outlined: {
1410
- border: "1px solid var(--surfaces-card-stroke, " + theme.palette.grey[900] + ")",
1411
- },
1412
- small: {
1413
- padding: theme.spacing(0.25, 0.75),
1414
- },
1415
- default: {
1416
- color: theme.palette.grey[900],
1417
- },
1418
- warning: {
1419
- borderColor: theme.palette.warning.dark,
1420
- color: theme.palette.warning.dark,
1421
- },
1422
- error: {
1423
- borderColor: theme.palette.error.main,
1424
- color: theme.palette.error.main,
1425
- },
1426
- highlight: {
1427
- backgroundColor: theme.palette.warning.light,
1428
- color: theme.palette.grey[900],
1429
- },
1430
- }); });
1431
-
1432
- var classnames = {exports: {}};
1433
-
1434
- /*!
1435
- Copyright (c) 2018 Jed Watson.
1436
- Licensed under the MIT License (MIT), see
1437
- http://jedwatson.github.io/classnames
1438
- */
1439
-
1440
- (function (module) {
1441
- /* global define */
1442
-
1443
- (function () {
1444
-
1445
- var hasOwn = {}.hasOwnProperty;
1446
-
1447
- function classNames() {
1448
- var classes = [];
1449
-
1450
- for (var i = 0; i < arguments.length; i++) {
1451
- var arg = arguments[i];
1452
- if (!arg) continue;
1453
-
1454
- var argType = typeof arg;
1455
-
1456
- if (argType === 'string' || argType === 'number') {
1457
- classes.push(arg);
1458
- } else if (Array.isArray(arg)) {
1459
- if (arg.length) {
1460
- var inner = classNames.apply(null, arg);
1461
- if (inner) {
1462
- classes.push(inner);
1463
- }
1464
- }
1465
- } else if (argType === 'object') {
1466
- if (arg.toString === Object.prototype.toString) {
1467
- for (var key in arg) {
1468
- if (hasOwn.call(arg, key) && arg[key]) {
1469
- classes.push(key);
1470
- }
1471
- }
1472
- } else {
1473
- classes.push(arg.toString());
1474
- }
1475
- }
1476
- }
1477
-
1478
- return classes.join(' ');
1479
- }
1480
-
1481
- if (module.exports) {
1482
- classNames.default = classNames;
1483
- module.exports = classNames;
1484
- } else {
1485
- window.classNames = classNames;
1486
- }
1487
- }());
1488
- }(classnames));
1489
-
1490
- var classNames = classnames.exports;
1491
-
1492
- var StatusTag = function (props) {
1493
- var variant = props.variant, label = props.label, _a = props.size, size = _a === void 0 ? 'md' : _a, _b = props.color, color = _b === void 0 ? 'default' : _b;
1494
- var classes = useStatusTagStyles(props);
1495
- return (React__default.createElement(Box, { className: classNames([classes.root, classes[color], classes[variant], size === 'sm' ? classes.small : '']) },
1496
- React__default.createElement(Typography, { variant: "caption" }, label)));
1497
- };
1498
- StatusTag.defaultProps = {
1499
- color: 'default',
1500
- error: false,
1501
- };
1502
- StatusTag.displayName = 'StatusTag';
1503
-
1504
- var MenuItem = forwardRef(function (props, ref) {
1505
- var ariaLabel = props.ariaLabel, onClick = props.onClick, id = props.id, description = props.description, isOutOfStock = props.isOutOfStock, title = props.title, loading = props.loading, isFeatured = props.isFeatured, image = props.image, likeCount = props.likeCount, reviewCount = props.reviewCount, price = props.price, available = props.available, itemTags = props.itemTags, className = props.className, restProps = __rest$1(props, ["ariaLabel", "onClick", "id", "description", "isOutOfStock", "title", "loading", "isFeatured", "image", "likeCount", "reviewCount", "price", "available", "itemTags", "className"]);
1506
- var classes = useMenuItemStyles(props);
1507
- var handleClick = function (event) {
1508
- onClick(id, event);
1509
- };
1510
- return (React__default.createElement(Card, __assign$1({ className: classNames(classes.card, className), ref: ref, elevation: 0, "data-component-type": "menu-item" }, restProps),
1511
- React__default.createElement(CardActionArea, { className: classes.cardActionArea, onClick: handleClick, disabled: loading, "aria-label": ariaLabel },
1512
- React__default.createElement(MenuItemInfo, null,
1513
- isFeatured && React__default.createElement(StatusTag, { color: "highlight", label: "Featured", variant: "filled", size: "sm" }),
1514
- React__default.createElement(Box, { display: "flex", gridGap: 8, alignItems: "center" },
1515
- React__default.createElement(Typography$1, { component: "h2", className: classes.cardTitle },
1516
- loading ? React__default.createElement(Skeleton, null) : title,
1517
- isOutOfStock && (React__default.createElement("span", { className: classes.outOfStockTag },
1518
- React__default.createElement(StatusTag, { color: "warning", label: "Out of stock", variant: "outlined", size: "sm" }))))),
1519
- React__default.createElement(Typography$1, { className: classes.cardDescription, paragraph: true }, loading ? React__default.createElement(Skeleton, null) : description),
1520
- loading ? (React__default.createElement(Skeleton, null,
1521
- React__default.createElement(MenuItemReactions, { likeCount: likeCount, reviewCount: reviewCount }))) : (React__default.createElement(MenuItemReactions, { likeCount: likeCount, reviewCount: reviewCount })),
1522
- loading ? (React__default.createElement(Skeleton, { style: { flexGrow: 1 }, width: 100, height: 48 })) : (React__default.createElement(Box, { display: "flex", justifyContent: "space-between", alignItems: "end", flexGrow: 1 },
1523
- React__default.createElement(MenuItemPrice, { price: price, available: available }),
1524
- React__default.createElement(MenuItemTags, { itemTags: itemTags })))),
1525
- loading ? React__default.createElement(Skeleton, { height: 100, width: 100 }) : React__default.createElement(MenuItemImg, { image: image }))));
1526
- });
1527
- MenuItem.displayName = 'MenuItem';
1528
-
1529
- var useDishCheckoutCardStyles = makeStyles(function (theme) { return ({
1530
- root: {
1531
- '&:first-of-type': {
1532
- paddingTop: 0,
1533
- },
1534
- '&:last-of-type': {
1535
- paddingBottom: 0,
1536
- borderBottom: 'none',
1537
- },
1538
- color: theme.palette.grey[900],
1539
- padding: theme.spacing(2, 0),
1540
- display: 'flex',
1541
- flexDirection: 'column',
1542
- width: '100%',
1543
- gridGap: theme.spacing(2),
1544
- borderBottom: function (_a) {
1545
- var borderBottom = _a.borderBottom;
1546
- return (borderBottom ? '1px solid #E0E0E0' : 'none');
1547
- },
1548
- },
1549
- deleteButton: {
1550
- color: theme.palette.info.main,
1551
- },
1552
- editButton: {
1553
- color: theme.palette.info.main,
1554
- },
1555
- img: {
1556
- objectFit: 'cover',
1557
- borderRadius: theme.spacing(1),
1558
- flexBasis: 'auto',
1559
- flexShrink: 0,
1560
- height: theme.spacing(7),
1561
- marginRight: theme.spacing(1),
1562
- overflow: 'hidden',
1563
- width: theme.spacing(7),
1564
- },
1565
- name: {
1566
- fontSize: 16,
1567
- fontWeight: 500,
1568
- lineHeight: '24px',
1569
- },
1570
- price: {
1571
- fontSize: '18px',
1572
- },
1573
- select: {
1574
- paddingLeft: 'unset',
1575
- borderRadius: '25px',
1576
- '& fieldset': {
1577
- borderColor: theme.palette.grey[700],
1578
- },
1579
- '&.Mui-focused .MuiOutlinedInput-notchedOutline': {
1580
- borderColor: theme.palette.grey[700],
1581
- borderWidth: '1px',
1582
- },
1583
- '& .MuiSelect-root': {
1584
- padding: theme.spacing(1, 1.5, 1, 4.5),
1585
- zIndex: 10,
1586
- textAlign: 'right',
1587
- },
1588
- '& .MuiInputAdornment-positionStart': {
1589
- position: 'absolute',
1590
- left: theme.spacing(1.5),
1591
- },
1592
- '& .MuiSelect-iconOutlined': {
1593
- display: 'none',
1594
- },
1595
- },
1596
- selectPaper: {
1597
- maxHeight: theme.spacing(37),
1598
- },
1599
- ul: {
1600
- margin: 0,
1601
- paddingLeft: theme.spacing(3),
1602
- },
1603
- warning: {
1604
- color: theme.palette.error.main,
1605
- display: 'flex',
1606
- gridGap: theme.spacing(0.825),
1607
- },
1608
- }); });
1609
-
1610
- var OrderingAppContext = createContext(null);
1611
- var useOrderingAppContext = function () {
1612
- var context = useContext(OrderingAppContext);
1613
- if (!context) {
1614
- throw new Error('useOrderingAppContext has to be used within <OrderingAppContext.Provider>');
1615
- }
1616
- return context;
1617
- };
1618
- var OrderingAppContextProvider = function (props) {
1619
- var context = useState(props.defaultContext);
1620
- return React__default.createElement(OrderingAppContext.Provider, { value: context }, props.children);
1621
- };
1622
-
1623
- var DishCheckoutCard = function (props) {
1624
- var _a;
1625
- var id = props.id, name = props.name, quantity = props.quantity, modifierGroups = props.modifierGroups, onDelete = props.onDelete, onEdit = props.onEdit, onQuantityChange = props.onQuantityChange, price = props.price, specialInstructions = props.specialInstructions, disabled = props.disabled, warningMessage = props.warningMessage, _b = props.image, image = _b === void 0 ? {} : _b, messages = props.messages;
1626
- var src = image.src;
1627
- var classes = useDishCheckoutCardStyles(props);
1628
- var appContext = useOrderingAppContext()[0];
1629
- var _c = useState(false), open = _c[0], setOpen = _c[1];
1630
- var formattedPrice = typeof price === 'number' ? "" + ((_a = appContext.currencySymbol) !== null && _a !== void 0 ? _a : '') + price.toFixed(2) : price;
1631
- var handleQuantityChange = function (event) {
1632
- return onQuantityChange(id, parseInt(event.target.value, 10));
1633
- };
1634
- var labelString = function (label) {
1635
- return label.replace(/[^a-zA-Z\s]/g, '').toLowerCase();
1636
- };
1637
- var formatModifiers = function (groups, nested) {
1638
- if (nested === void 0) { nested = false; }
1639
- return groups.map(function (group) {
1640
- // Get all selected modifiers for this group
1641
- var modifiers = group.selectedModifiers
1642
- .map(function (modifier) {
1643
- return modifier.quantity > 1 ? modifier.modifierName + " \u00D7 " + modifier.quantity : modifier.modifierName;
1644
- })
1645
- .join(', ');
1646
- // Render nested groups recursively
1647
- var nestedGroups = group.selectedModifiers.flatMap(function (modifier) {
1648
- var _a;
1649
- return (modifier === null || modifier === void 0 ? void 0 : modifier.selectedModifierGroups) && ((_a = modifier === null || modifier === void 0 ? void 0 : modifier.selectedModifierGroups) === null || _a === void 0 ? void 0 : _a.length) > 0
1650
- ? formatModifiers(modifier.selectedModifierGroups, true)
1651
- : [];
1652
- });
1653
- // For top-level groups, we render without the list
1654
- if (!nested) {
1655
- return (React__default.createElement(Typography, { key: group.id, variant: "body2" },
1656
- group.menuItemModifierGroupName,
1657
- ": ",
1658
- modifiers,
1659
- (nestedGroups === null || nestedGroups === void 0 ? void 0 : nestedGroups.length) > 0 && React__default.createElement("ul", { className: classes.ul }, nestedGroups)));
1660
- }
1661
- // For nested groups, we use list items
1662
- return (React__default.createElement("li", { key: group.id, className: classes.li },
1663
- React__default.createElement(Typography, { variant: "body2" },
1664
- group.menuItemModifierGroupName,
1665
- ": ",
1666
- modifiers,
1667
- nestedGroups && nestedGroups.length > 0 && React__default.createElement("ul", { className: classes.ul }, nestedGroups))));
1668
- });
1669
- };
1670
- return (React__default.createElement(Box, { className: classes.root },
1671
- React__default.createElement(Box, { display: "flex", gridGap: 3 },
1672
- src && React__default.createElement("img", { src: src, alt: "", className: classes.img }),
1673
- React__default.createElement(Box, { flexGrow: 1 },
1674
- React__default.createElement(Typography, { variant: "h2", className: classes.name }, name),
1675
- modifierGroups && formatModifiers(modifierGroups),
1676
- specialInstructions && React__default.createElement(Typography, { variant: "body2" },
1677
- "\"",
1678
- specialInstructions,
1679
- "\"")),
1680
- React__default.createElement(Box, { display: "flex", gridGap: 1, height: "100%", alignItems: "center" },
1681
- React__default.createElement(Button, { "aria-label": messages.ariaEdit, disabled: disabled, className: classes.editButton, variant: "text", onClick: onEdit }, messages.edit),
1682
- React__default.createElement(IconButton, { "aria-label": messages.ariaDelete, disabled: disabled, onClick: onDelete, classes: { root: classes.deleteButton } },
1683
- React__default.createElement(Icon, { icon: SvgTrash, size: "large" })))),
1684
- React__default.createElement(Box, { display: "flex", gridGap: 16, alignItems: "center" },
1685
- React__default.createElement(FormControl, { variant: "outlined", hiddenLabel: true },
1686
- React__default.createElement(Select, { disabled: disabled, value: quantity, onOpen: function () { return setOpen(true); }, onClose: function () { return setOpen(false); }, SelectDisplayProps: { 'aria-label': labelString(name) + " quantity select" }, disableUnderline: true, onChange: handleQuantityChange, fullWidth: true, startAdornment: React__default.createElement(InputAdornment, { position: "start" },
1687
- React__default.createElement(Icon, { icon: open ? SvgChevronUp : SvgChevronDown, size: "large" })), inputProps: { shrink: false }, MenuProps: {
1688
- disablePortal: true,
1689
- anchorOrigin: {
1690
- vertical: 'bottom',
1691
- horizontal: 'left',
1692
- },
1693
- transformOrigin: {
1694
- vertical: 'top',
1695
- horizontal: 'left',
1696
- },
1697
- getContentAnchorEl: null,
1698
- classes: { paper: classes.selectPaper },
1699
- }, className: classes.select }, Array.from({ length: 99 }, function (_, index) { return (React__default.createElement(MenuItem$1, { key: index + 1, value: index + 1, "aria-label": "" + (index + 1) }, index + 1)); }))),
1700
- React__default.createElement(Typography, { className: classes.price }, formattedPrice)),
1701
- warningMessage && (React__default.createElement(Box, { className: classes.warning },
1702
- React__default.createElement(Box, { paddingTop: 0.25 },
1703
- React__default.createElement(Icon, { icon: SvgWarning, size: "medium" })),
1704
- React__default.createElement(Typography, { variant: "body2" }, warningMessage)))));
1705
- };
1706
-
1707
- var DishDetailsReview = forwardRef(function (props) {
1708
- var userName = props.userName, userAvatarUrl = props.userAvatarUrl, content = props.content, createdAgo = props.createdAgo, alt = props.alt;
1709
- return (React__default.createElement(Box, { display: "flex" },
1710
- React__default.createElement(Box, { mr: 1 },
1711
- React__default.createElement(Avatar, { size: "small", src: userAvatarUrl, alt: alt })),
1712
- React__default.createElement(Box, { width: "100%" },
1713
- React__default.createElement(Box, { display: "flex", justifyContent: "space-between", mb: 1 },
1714
- React__default.createElement(Typography, { variant: "body1", variantMapping: { body1: 'h3' }, color: "grey.600", style: { display: 'flex', alignItems: 'center' } }, userName),
1715
- React__default.createElement(Typography, { color: "grey.600", variant: "subtitle1", style: { display: 'flex', alignItems: 'center' } }, createdAgo)),
1716
- React__default.createElement(Typography, { color: "grey.900", weight: "regular" }, content))));
1717
- });
1718
- DishDetailsReview.displayName = 'DishDetailsReview';
1719
-
1720
- var useDishModifierCardStyles = makeStyles(function (theme) { return ({
1721
- root: {
1722
- borderRadius: '8px',
1723
- border: '1px solid var(--surfaces-card-stroke, #E0E0E0)',
1724
- display: 'flex',
1725
- flexDirection: 'column',
1726
- padding: theme.spacing(2.5),
1727
- color: theme.palette.grey[900] + " !important",
1728
- },
1729
- error: {
1730
- color: theme.palette.error.main,
1731
- },
1732
- helperText: {
1733
- color: theme.palette.text.primary,
1734
- },
1735
- name: {
1736
- fontSize: theme.spacing(2.25),
1737
- marginBottom: theme.spacing(2),
1738
- },
1739
- }); });
1740
- var useRadioModifierFormStyles = makeStyles(function (theme) { return ({
1741
- label: {
1742
- alignItems: 'center',
1743
- display: 'flex',
1744
- justifyContent: 'space-between',
1745
- },
1746
- radio: {
1747
- fontSize: theme.spacing(2),
1748
- padding: 'unset',
1749
- marginRight: theme.spacing(-0.25),
1750
- '&.Mui-checked': {
1751
- color: theme.palette.info.main,
1752
- },
1753
- },
1754
- hideRadio: {
1755
- display: 'none',
1756
- },
1757
- root: {
1758
- justifyContent: 'space-between',
1759
- margin: 0,
1760
- width: 'fill-available',
1761
- '& > :last-child': {
1762
- flex: 1,
1763
- },
1764
- },
1765
- }); });
1766
- var useCheckboxModifierFormStyles = makeStyles(function (theme) { return ({
1767
- label: {
1768
- alignItems: 'center',
1769
- display: 'flex',
1770
- justifyContent: 'space-between',
1771
- },
1772
- checkbox: {
1773
- color: '#616161',
1774
- fontSize: theme.spacing(2),
1775
- marginRight: theme.spacing(-0.25),
1776
- padding: 'unset',
1777
- '&.Mui-checked': {
1778
- color: theme.palette.info.main,
1779
- },
1780
- },
1781
- hideCheckbox: {
1782
- display: 'none',
1783
- },
1784
- root: {
1785
- margin: 0,
1786
- width: 'fill-available',
1787
- '& > :last-child': {
1788
- flex: 1,
1789
- },
1790
- },
1791
- }); });
1792
- var useLabelStyles = makeStyles(function (theme) { return ({
1793
- label: {
1794
- margin: theme.spacing(0.5, 0),
1795
- },
1796
- disabled: {
1797
- color: theme.palette.grey[500],
1798
- },
1799
- price: {
1800
- color: theme.palette.grey[700],
1801
- },
1802
- }); });
1803
- var useOptionsStyles = makeStyles(function (theme) { return ({
1804
- options: {
1805
- color: theme.palette.info.main,
1806
- marginBottom: theme.spacing(1.5),
1807
- padding: 0,
1808
- },
1809
- }); });
1810
-
1811
- var useQuantityPickerStyles = makeStyles(function (theme) { return ({
1812
- root: {
1813
- height: theme.spacing(7),
1814
- backgroundColor: 'none',
1815
- },
1816
- }); });
1817
- var useQuantityInputStyles = makeStyles(function (theme) { return ({
1818
- root: {
1819
- height: '100%',
1820
- width: 'min-content',
1821
- borderRadius: theme.spacing(12.5),
1822
- background: function (props) { return (props.variation === 'modifierCount' ? 'unset' : theme.palette.grey[100]); },
1823
- },
1824
- input: {
1825
- '&::-webkit-clear-button, &::-webkit-outer-spin-button, &::-webkit-inner-spin-button': {
1826
- display: 'none',
1827
- },
1828
- '-moz-appearance': 'textfield',
1829
- fontWeight: 600,
1830
- padding: 0,
1831
- textAlign: 'center',
1832
- zIndex: function (props) { return (props.value === 0 && props.variation === 'modifierCount' ? -1 : 1); },
1833
- backgroundColor: function (props) { return (props.variation === 'modifierCount' ? theme.palette.grey[100] : 'unset'); },
1834
- alignSelf: function (props) { return (props.variation === 'modifierCount' ? 'stretch' : 'unset'); },
1835
- height: function (props) { return (props.variation === 'modifierCount' ? 'auto' : 'unset'); },
1836
- minWidth: function (props) { return (props.variation === 'modifierCount' ? theme.spacing(5) : theme.spacing(2.75)); },
1837
- borderRadius: function (props) { return (props.variation === 'modifierCount' ? theme.spacing(1) : 'unset'); },
1838
- margin: function (props) { return (props.variation === 'modifierCount' ? theme.spacing(0.5, 0) : 0); },
1839
- },
1840
- }); });
1841
- var useStartAdornmentStyles = makeStyles(function (theme) { return ({
1842
- root: {
1843
- color: theme.palette.text.primary,
1844
- zIndex: function (props) { return (props.value === 0 && props.variation === 'modifierCount' ? -1 : 1); },
1845
- },
1846
- }); });
1847
- var useEndAdornmentStyles = makeStyles(function (theme) { return ({
1848
- root: {
1849
- color: theme.palette.text.primary,
1850
- },
1851
- }); });
1852
-
1853
- var QuantityPicker = function (props) {
1854
- var value = props.value, onChange = props.onChange, disabled = props.disabled, disableIncrement = props.disableIncrement, preventManualChange = props.preventManualChange, variation = props.variation, name = props.name;
1855
- var fieldClasses = useQuantityPickerStyles();
1856
- var inputClasses = useQuantityInputStyles(props);
1857
- var startAdornmentClasses = useStartAdornmentStyles(props);
1858
- var endAdornmentClasses = useEndAdornmentStyles(props);
1859
- var onIncrement = function (event) {
1860
- onChange(event, { quantity: value + 1, reason: 'increment' });
1861
- };
1862
- var onDecrement = function (event) {
1863
- onChange(event, { quantity: value - 1, reason: 'decrement' });
1864
- };
1865
- var handleChange = function (event) {
1866
- if (preventManualChange) {
1867
- event.preventDefault();
1868
- }
1869
- if (!preventManualChange) {
1870
- onChange(event, { quantity: parseInt(event.target.value), reason: 'change' });
1871
- }
1872
- };
1873
- return (React__default.createElement(TextField, { classes: fieldClasses, type: "number", variant: variation === 'itemCount' ? 'filled' : 'standard', value: value, disabled: disabled, onChange: handleChange, InputProps: {
1874
- classes: inputClasses,
1875
- disableUnderline: true,
1876
- endAdornment: (React__default.createElement(IconButton, { "aria-label": "increase quantity " + name, className: endAdornmentClasses.root, color: "default", onClick: onIncrement, disabled: disabled || disableIncrement },
1877
- React__default.createElement(Icon, { icon: SvgPlusCircle }))),
1878
- startAdornment: (React__default.createElement(IconButton, { "aria-label": "decrease quantity " + name, className: startAdornmentClasses.root, color: "default", onClick: onDecrement, disabled: disabled || value <= 0 },
1879
- React__default.createElement(Icon, { icon: SvgMinusCircle }))),
1880
- } }));
1881
- };
1882
-
1883
- var Label = function (props) {
1884
- var _a, _b, _c;
1885
- var name = props.name, price = props.price, _d = props.disabled, disabled = _d === void 0 ? false : _d;
1886
- var classes = useLabelStyles();
1887
- return (React__default.createElement(Box, { display: "flex", flexDirection: "column", className: classes.label },
1888
- React__default.createElement(Box, { display: "flex", alignItems: "center", gridGap: 8 },
1889
- React__default.createElement(Typography$1, { className: classNames((_a = {}, _a[classes.disabled] = disabled, _a)) }, name)),
1890
- price && (React__default.createElement(Typography$1, { className: classNames((_b = {}, _b[classes.price] = !disabled, _b), (_c = {}, _c[classes.disabled] = disabled, _c)) },
1891
- "+ ",
1892
- price))));
1893
- };
1894
- var Options = function (props) {
1895
- var handleOptionsClick = props.handleOptionsClick;
1896
- var classes = useOptionsStyles();
1897
- return (React__default.createElement(Box, null,
1898
- React__default.createElement(Button, { variation: "none", className: classes.options, onClick: handleOptionsClick },
1899
- React__default.createElement(Typography$1, { variant: "caption" }, "OPTIONS"),
1900
- React__default.createElement(Icon, { icon: SvgChevronRight }))));
1901
- };
1902
- var SingleSelectModifierControl = function (props) {
1903
- var modifiers = props.modifiers, name = props.name, isOutOfStock = props.isOutOfStock, onChange = props.onChange, value = props.value, handleOptionsClick = props.handleOptionsClick, aggregatePrice = props.aggregatePrice, isRequired = props.isRequired;
1904
- var radioClasses = useRadioModifierFormStyles();
1905
- var makeHandleChange = function (modifier) { return function (e) {
1906
- var isModifierInValue = Boolean(value.find(function (v) { return v.modifierId === modifier.id; }));
1907
- if (!isModifierInValue && modifier.hasModifiers) {
1908
- handleOptionsClick(modifier.id);
1909
- }
1910
- onChange({
1911
- isRadio: true,
1912
- modifierId: Number(e.target.value),
1913
- groupId: modifier.parentModifierGroupId,
1914
- parentModifierId: modifier.parentModifierGroupItemId,
1915
- price: modifier.price || 0,
1916
- quantity: 1,
1917
- });
1918
- }; };
1919
- return (React__default.createElement(FormControl, { fullWidth: true },
1920
- React__default.createElement(RadioGroup, { "aria-label": name }, modifiers.map(function (modifier) {
1921
- var _a;
1922
- var _b;
1923
- return (React__default.createElement(Box, { key: modifier.id },
1924
- React__default.createElement(FormControlLabel$1, { key: modifier.id, value: modifier.id, className: radioClasses.root, control: React__default.createElement(Radio$2, { checked: ((_b = value[0]) === null || _b === void 0 ? void 0 : _b.modifierId) === modifier.id, className: classNames((_a = {},
1925
- _a[radioClasses.hideRadio] = modifier.outOfStock,
1926
- _a[radioClasses.radio] = !modifier.outOfStock,
1927
- _a)), disabled: isOutOfStock || modifier.outOfStock, onChange: makeHandleChange(modifier), required: isRequired }), label: React__default.createElement(Box, { className: radioClasses.label },
1928
- React__default.createElement(Label, { name: modifier.name, price: aggregatePrice[modifier.id] || modifier.formattedPrice, disabled: isOutOfStock || modifier.outOfStock }),
1929
- modifier.outOfStock && (React__default.createElement(Box, { minWidth: "90px", marginLeft: 2 },
1930
- React__default.createElement(StatusTag, { color: "warning", label: "Out of stock", variant: "outlined", size: "md" })))), labelPlacement: "start" }),
1931
- modifier.hasModifiers && !modifier.outOfStock && (React__default.createElement(Options, { handleOptionsClick: function () { return handleOptionsClick(modifier.id); } }))));
1932
- }))));
1933
- };
1934
- var MultipleSelectControl = function (props) {
1935
- var modifiers = props.modifiers, value = props.value, isOutOfStock = props.isOutOfStock, onChange = props.onChange, disableNewSelections = props.disableNewSelections, handleOptionsClick = props.handleOptionsClick, aggregatePrice = props.aggregatePrice;
1936
- var classes = useCheckboxModifierFormStyles();
1937
- var makeHandleChange = function (modifier) { return function () {
1938
- var isModifierInValue = Boolean(value.find(function (v) { return v.modifierId === modifier.id; }));
1939
- if (!isModifierInValue && modifier.hasModifiers) {
1940
- handleOptionsClick(modifier.id);
1941
- }
1942
- onChange({
1943
- isRadio: false,
1944
- modifierId: modifier.id,
1945
- groupId: modifier.parentModifierGroupId,
1946
- parentModifierId: modifier.parentModifierGroupItemId,
1947
- price: modifier.price || 0,
1948
- quantity: isModifierInValue ? 0 : 1,
1949
- });
1950
- }; };
1951
- return (React__default.createElement(FormControl, { fullWidth: true },
1952
- React__default.createElement(FormGroup, null, modifiers.map(function (modifier) {
1953
- var _a, _b;
1954
- return (React__default.createElement(Box, { key: modifier.id },
1955
- React__default.createElement(FormControlLabel$1, { key: modifier.id, value: modifier.id, className: classes.root, checked: value.some(function (v) { return v.modifierId === modifier.id; }), onChange: makeHandleChange(modifier), control: React__default.createElement(Checkbox$2, { className: classNames((_a = {}, _a[classes.hideCheckbox] = modifier.outOfStock, _a), (_b = {}, _b[classes.checkbox] = !modifier.outOfStock, _b)), disabled: isOutOfStock || modifier.outOfStock || (!modifier.quantity && disableNewSelections) }), label: React__default.createElement(Box, { className: classes.label },
1956
- React__default.createElement(Label, { name: modifier.name, price: aggregatePrice[modifier.id] || modifier.formattedPrice, disabled: isOutOfStock || modifier.outOfStock }),
1957
- modifier.outOfStock && (React__default.createElement(Box, { minWidth: "90px", marginLeft: 2 },
1958
- React__default.createElement(StatusTag, { color: "warning", label: "Out of stock", variant: "outlined", size: "md" })))), labelPlacement: "start" }),
1959
- modifier.hasModifiers && !modifier.outOfStock && (React__default.createElement(Options, { handleOptionsClick: function () { return handleOptionsClick(modifier.id); } }))));
1960
- }))));
1961
- };
1962
- var MultipleQuantitySelectControl = function (props) {
1963
- var modifiers = props.modifiers, isOutOfStock = props.isOutOfStock, onChange = props.onChange, disableNewSelections = props.disableNewSelections, handleOptionsClick = props.handleOptionsClick, selectionQuantity = props.selectionQuantity;
1964
- var makeHandleChange = function (modifier) { return function (_e, customEvent) {
1965
- onChange({
1966
- isRadio: false,
1967
- modifierId: modifier.id,
1968
- groupId: modifier.parentModifierGroupId,
1969
- parentModifierId: modifier.parentModifierGroupItemId,
1970
- price: modifier.price || 0,
1971
- quantity: customEvent.quantity,
1972
- });
1973
- }; };
1974
- return (React__default.createElement(FormControl, { fullWidth: true },
1975
- React__default.createElement(FormGroup, null, modifiers.map(function (modifier) { return (React__default.createElement(Box, { key: modifier.id, style: { justifyContent: 'space-between', flexDirection: 'column' }, display: "flex" },
1976
- React__default.createElement(Box, { display: "flex", alignItems: "center", justifyContent: "space-between", width: "100%" },
1977
- React__default.createElement(Label, { name: modifier.name, price: modifier.formattedPrice, disabled: isOutOfStock || modifier.outOfStock }),
1978
- modifier.outOfStock && (React__default.createElement(Box, { minWidth: "90px", marginLeft: 2 },
1979
- React__default.createElement(StatusTag, { color: "warning", label: "Out of stock", variant: "outlined", size: "md" }))),
1980
- !modifier.outOfStock && (React__default.createElement(QuantityPicker, { variation: "modifierCount", value: modifier.quantity, disableIncrement: disableNewSelections, preventManualChange: true, onChange: makeHandleChange(modifier), disabled: isOutOfStock || modifier.outOfStock, name: modifier.name }))),
1981
- React__default.createElement(Box, { display: "flex", alignItems: "flex-start", gridGap: 4 },
1982
- modifier.hasModifiers && !modifier.outOfStock && (React__default.createElement(Options, { handleOptionsClick: function () { return handleOptionsClick(modifier.id); } })),
1983
- selectionQuantity[modifier.id] &&
1984
- selectionQuantity[modifier.id].requiredSelectionCount > 0 &&
1985
- selectionQuantity[modifier.id].requiredSelectionCount !==
1986
- selectionQuantity[modifier.id].currentSelectionCount && (React__default.createElement(Typography$1, { variant: "caption", color: "error" },
1987
- selectionQuantity[modifier.id].currentSelectionCount,
1988
- "/",
1989
- selectionQuantity[modifier.id].requiredSelectionCount,
1990
- " selected"))))); }))));
1991
- };
1992
- var ModifierControls = function (props) {
1993
- switch (props.type) {
1994
- case 'singleSelect':
1995
- return React__default.createElement(SingleSelectModifierControl, __assign$1({}, props));
1996
- case 'multipleSelect':
1997
- return React__default.createElement(MultipleSelectControl, __assign$1({}, props));
1998
- case 'multipleQuantitySelect':
1999
- return React__default.createElement(MultipleQuantitySelectControl, __assign$1({}, props));
2000
- default:
2001
- return null;
2002
- }
2003
- };
2004
-
2005
- var getStatusTagProps = function (props) {
2006
- var messages = props.messages, error = props.error, isRequired = props.isRequired, isOutOfStock = props.isOutOfStock;
2007
- var optionalText = messages.optionalText, outOfStockText = messages.outOfStockText, requiredText = messages.requiredText;
2008
- var color = 'default';
2009
- switch (true) {
2010
- case error:
2011
- color = 'error';
2012
- break;
2013
- case isOutOfStock:
2014
- color = 'warning';
2015
- break;
2016
- }
2017
- var label = optionalText;
2018
- switch (true) {
2019
- case isOutOfStock:
2020
- label = outOfStockText;
2021
- break;
2022
- case isRequired:
2023
- label = requiredText;
2024
- break;
2025
- }
2026
- var variant = isRequired || isOutOfStock ? 'outlined' : 'filled';
2027
- return { color: color, label: label, variant: variant };
2028
- };
2029
- var DishModifierCard = function (props) {
2030
- var _a;
2031
- var aggregatePrice = props.aggregatePrice, 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, isRequired = props.isRequired, handleOptionsClick = props.handleOptionsClick, selectionQuantity = props.selectionQuantity;
2032
- var classes = useDishModifierCardStyles();
2033
- return (React__default.createElement(Box, { className: classes.root },
2034
- React__default.createElement(Box, { display: "flex", justifyContent: "space-between", width: "100%", alignItems: "center", height: "fit-content", marginBottom: 2 },
2035
- React__default.createElement(StatusTag, __assign$1({}, getStatusTagProps(props))),
2036
- !isOutOfStock && (React__default.createElement(Typography, { variant: "subtitle1", className: classNames((_a = {}, _a[classes.error] = error, _a[classes.helperText] = !error, _a)) }, messages.helperText))),
2037
- React__default.createElement(Typography, { className: classes.name }, name),
2038
- React__default.createElement(Box, null,
2039
- React__default.createElement(ModifierControls, { name: name, value: value, modifiers: modifiers, isOutOfStock: isOutOfStock, isRequired: isRequired, onChange: onChange, disableNewSelections: disableNewSelections, type: type, messages: messages, handleOptionsClick: handleOptionsClick, aggregatePrice: aggregatePrice, selectionQuantity: selectionQuantity }))));
2040
- };
2041
- DishModifierCard.displayName = 'DishModifierCard';
2042
-
2043
- var useLocationCardStyles = makeStyles(function (theme) {
2044
- var _a = theme.palette, info = _a.info, grey = _a.grey, secondary = _a.secondary, background = _a.background, spacing = theme.spacing;
2045
- var selectedBackgroundColor = lighten(info.light, 0.9);
2046
- var backgroundColor = background.default;
2047
- return {
2048
- root: {
2049
- border: function (_a) {
2050
- var selected = _a.selected;
2051
- return selected ? "1px solid " + info.light : '1px solid var(--surfaces-card-stroke, #E0E0E0)';
2052
- },
2053
- display: 'flex',
2054
- borderRadius: '10px',
2055
- color: grey[900],
2056
- backgroundColor: function (_a) {
2057
- var selected = _a.selected, outOfRange = _a.outOfRange;
2058
- return selected ? selectedBackgroundColor : outOfRange ? grey[200] : backgroundColor;
2059
- },
2060
- },
2061
- actionAreaFocusHighlight: {
2062
- '&:disabled': {
2063
- backgroundColor: 'inherit',
2064
- },
2065
- },
2066
- availability: {
2067
- color: secondary.light,
2068
- display: 'grid',
2069
- gridGap: spacing(0.5),
2070
- gridTemplateColumns: 'auto 1fr',
2071
- },
2072
- availabilityMessage: {
2073
- gridColumn: '2 / 3',
2074
- },
2075
- checkIcon: {
2076
- color: info.main,
2077
- },
2078
- content: {
2079
- padding: spacing(3),
2080
- display: 'flex',
2081
- flexDirection: 'column',
2082
- gridGap: spacing(2),
2083
- },
2084
- distance: {
2085
- fontSize: '0.75rem',
2086
- fontWeight: 600,
2087
- },
2088
- locationInfo: {
2089
- display: 'flex',
2090
- flexDirection: 'column',
2091
- gridGap: spacing(0.75),
2092
- },
2093
- name: {
2094
- fontSize: '1.125rem',
2095
- fontWeight: 500,
2096
- },
2097
- greyText: {
2098
- color: grey[800],
2099
- },
2100
- };
2101
- });
2102
-
2103
- var LocationCard = function (props) {
2104
- 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$1(props, ["name", "address", "distance", "generalAvailability", "pickupAvailability", "deliveryAvailability", "onClick", "selected", "value", "outOfRange", "outOfRangeMessage", "CardActionAreaProps"]);
2105
- var classes = useLocationCardStyles(props);
2106
- var anyAvailability = generalAvailability || pickupAvailability || deliveryAvailability;
2107
- var handleClick = function () {
2108
- onClick(value);
2109
- };
2110
- return (React__default.createElement(Card, __assign$1({ className: classes.root }, muiProps),
2111
- React__default.createElement(CardActionArea, __assign$1({ onClick: handleClick, role: "radio", "aria-checked": selected, disabled: outOfRange || Boolean(anyAvailability), classes: { focusHighlight: classes.actionAreaFocusHighlight } }, CardActionAreaProps),
2112
- React__default.createElement(CardContent, { className: classes.content },
2113
- React__default.createElement(Box, { className: classes.locationInfo },
2114
- React__default.createElement(Box, { display: "flex", justifyContent: "space-between" },
2115
- React__default.createElement(Typography$1, { className: classes.name }, name),
2116
- selected && React__default.createElement(Icon, { icon: SvgCheck, size: "extra-large", className: classes.checkIcon })),
2117
- address && (React__default.createElement(Typography$1, { className: classes.greyText, variant: "body2" }, address)),
2118
- !outOfRange && React__default.createElement(Typography$1, { className: classes.distance }, distance)),
2119
- anyAvailability && (React__default.createElement(Box, { className: classes.availability },
2120
- React__default.createElement(Icon, { icon: SvgClock, size: "large" }),
2121
- generalAvailability && (React__default.createElement(Typography$1, { className: classes.availabilityMessage, variant: "body2" }, generalAvailability)),
2122
- pickupAvailability && (React__default.createElement(Typography$1, { className: classes.availabilityMessage, variant: "body2" }, pickupAvailability)),
2123
- deliveryAvailability && (React__default.createElement(Typography$1, { className: classes.availabilityMessage, variant: "body2" }, deliveryAvailability)))),
2124
- outOfRange && (React__default.createElement(Box, { display: "flex", gridGap: 8, alignItems: "center", color: "grey.800" },
2125
- React__default.createElement(Icon, { icon: SvgInfo, size: "large", color: "inherit" }),
2126
- React__default.createElement(Typography$1, { variant: "body2", className: classes.greyText }, outOfRangeMessage)))))));
2127
- };
2128
-
2129
- var useMenuDropdownStyles = makeStyles(function (theme) {
2130
- var _a, _b;
2131
- return ({
2132
- formControl: (_a = {},
2133
- _a[theme.breakpoints.up('lg')] = {
2134
- alignSelf: 'start',
2135
- },
2136
- _a),
2137
- menuItem: {
2138
- alignItems: 'center',
2139
- display: 'flex',
2140
- gridGap: theme.spacing(1),
2141
- },
2142
- select: {
2143
- '& .MuiSelect-root': (_b = {
2144
- '&:focus': {
2145
- outline: '2px solid #0076CB',
2146
- borderRadius: 8,
2147
- },
2148
- color: '#212121',
2149
- padding: theme.spacing(1, 0.5, 1, 0.5),
2150
- zIndex: 10
2151
- },
2152
- _b[theme.breakpoints.down('md')] = {
2153
- width: 0,
2154
- minWidth: 0,
2155
- padding: 0,
2156
- },
2157
- _b),
2158
- },
2159
- unavailable: {
2160
- color: theme.palette.grey[700],
2161
- },
2162
- });
2163
- });
2164
-
2165
- var MenuDropdown = function (props) {
2166
- var menuOptions = props.menuOptions, onSelect = props.onSelect, selectedOptionId = props.selectedOptionId;
2167
- var classes = useMenuDropdownStyles(props);
2168
- var _a = useState(false), open = _a[0], setOpen = _a[1];
2169
- var isMobile = useMediaQuery(function (_a) {
2170
- var breakpoints = _a.breakpoints;
2171
- return breakpoints.down('md');
2172
- });
2173
- return (React__default.createElement(FormControl, { hiddenLabel: true, classes: { root: classes.formControl } },
2174
- React__default.createElement("label", { id: "menu-dropdown-label", className: "sr-only" }, props.label),
2175
- 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); } },
2176
- React__default.createElement(Icon, { icon: SvgRestaurantMenu, size: isMobile ? 'extra-large' : 'large' })), IconComponent: function () { return (React__default.createElement(InputAdornment, { position: "end", onClick: function () { return setOpen(true); } },
2177
- React__default.createElement(Icon, { color: "#0076CB", icon: open ? SvgChevronUp : SvgChevronDown, size: "large" }))); }, MenuProps: {
2178
- disablePortal: true,
2179
- anchorOrigin: {
2180
- vertical: 'bottom',
2181
- horizontal: 'left',
2182
- },
2183
- transformOrigin: {
2184
- vertical: 'top',
2185
- horizontal: 'left',
2186
- },
2187
- getContentAnchorEl: null,
2188
- }, 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$1, { key: index, value: option.id, className: classNames(classes.menuItem, option.isUnavailable ? classes.unavailable : '') },
2189
- option.name,
2190
- option.isUnavailable && React__default.createElement(Icon, { icon: SvgClock, size: "large" }))); }))));
2191
- };
2192
-
2193
- var useMenuFilterStyles = makeStyles(function (theme) { return ({
2194
- triggerLabel: {
2195
- color: theme.palette.info.main,
2196
- whiteSpace: 'nowrap',
2197
- },
2198
- }); });
2199
-
2200
- var _path;
2201
-
2202
- function _extends() { _extends = 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.apply(this, arguments); }
2203
-
2204
- function SvgLeafIcon(props) {
2205
- return /*#__PURE__*/React.createElement("svg", _extends({
2206
- width: 16,
2207
- height: 18,
2208
- fill: "none",
2209
- xmlns: "http://www.w3.org/2000/svg"
2210
- }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
2211
- d: "M6.857 6.823c.065-.081-.18.115-.262.196A13.587 13.587 0 004.716 8.98c-.604.768-1.143 1.683-1.585 2.614-.44.931-.718 1.928-.898 2.86-.082.473-.13.914-.18 1.355-.016.36-.033.752-.033 1.079a.164.164 0 01-.163.163H.191c-.098 0-.164-.082-.164-.18.05-.424.147-.915.229-1.34.114-.473.245-.98.408-1.486.213-.621.474-1.258.768-1.863.033-.065.017-.13-.032-.18A5.05 5.05 0 01.109 7.477c.033-.163.082-.327.13-.49C1.4 2.804 5.632.207 9.913 1.137c2.254.475 4.1 1.863 5.244 3.677.164.261.31.523.441.8.147.294.278.605.393.932.048.13-.082.261-.213.196a4.846 4.846 0 00-.898-.31c-2.206-.49-4.412.93-4.886 3.169-.555 2.647-3.12 4.362-5.783 3.921-.13-.016-.213-.13-.213-.261-.016-.768.196-3.35 2.86-6.438z",
2212
- fill: "#00663E"
2213
- })));
2214
- }
2215
-
2216
- var MenuFilter = function (props) {
2217
- var options = props.options, onChange = props.onChange, onClear = props.onClear, value = props.value, _a = props.triggerLabel, triggerLabel = _a === void 0 ? 'Add Filter' : _a, _b = props.noOptionsLabel, noOptionsLabel = _b === void 0 ? 'Reset Filters' : _b;
2218
- var triggerId = 'menu-filter-trigger';
2219
- var popoverId = 'menu-filter-popover';
2220
- var classes = useMenuFilterStyles();
2221
- var _c = useState(null), anchorEl = _c[0], setAnchorEl = _c[1];
2222
- var open = Boolean(anchorEl);
2223
- var optionIds = options.map(function (opt) { return opt.id; });
2224
- var valueIds = value.map(function (val) { return val.id; });
2225
- var availableIds = optionIds.filter(function (optionId) { return !valueIds.includes(optionId); });
2226
- var availableFilters = options.filter(function (opt) { return availableIds.includes(opt.id); });
2227
- var allFiltersSelected = availableFilters.length === 0;
2228
- var handleChange = function (value, event) {
2229
- onChange(value, event);
2230
- setAnchorEl(null);
2231
- };
2232
- var handleTriggerClick = function (event) {
2233
- setAnchorEl(event.currentTarget);
2234
- };
2235
- var handleClose = function () {
2236
- setAnchorEl(null);
2237
- };
2238
- var handleClear = function () {
2239
- onClear();
2240
- setAnchorEl(null);
2241
- };
2242
- if (allFiltersSelected) {
2243
- return (React__default.createElement(Button$1, { size: "small", startIcon: React__default.createElement(SvgLeafIcon, null), classes: { label: classes.triggerLabel }, onClick: handleClear }, noOptionsLabel));
2244
- }
2245
- return (React__default.createElement(React__default.Fragment, null,
2246
- React__default.createElement(Button$1, { id: triggerId, "aria-controls": popoverId, "aria-haspopup": "true", "aria-expanded": open, onClick: handleTriggerClick, size: "small", startIcon: React__default.createElement(SvgLeafIcon, null), classes: { label: classes.triggerLabel } }, triggerLabel),
2247
- React__default.createElement(Menu, { id: popoverId, anchorEl: anchorEl, open: open, onClose: handleClose }, availableFilters.map(function (option, index) {
2248
- return (React__default.createElement(MenuItem$1, { key: index, value: option.id, onClick: function (event) { return handleChange(option, event); } },
2249
- React__default.createElement(ItemTag, { alt: option.abbr, color: option.color }, option.abbr),
2250
- React__default.createElement(Box, { ml: 1 }, option.name)));
2251
- }))));
2252
- };
2253
-
2254
- var useSelectableChipStyles = makeStyles(function (theme) { return ({
2255
- root: {
2256
- border: '2px solid',
2257
- borderColor: theme.palette.grey[100],
2258
- borderRadius: '50px',
2259
- backgroundColor: theme.palette.grey[100],
2260
- color: theme.palette.grey[900],
2261
- padding: theme.spacing(1, 2),
2262
- fontSize: '0.875rem',
2263
- fontWeight: 400,
2264
- minWidth: 'unset',
2265
- minHeight: 'unset',
2266
- opacity: 'unset',
2267
- textTransform: 'none',
2268
- textAlign: 'left',
2269
- '&::-webkit-scrollbar': {
2270
- display: 'none',
2271
- },
2272
- '&.Mui-selected': {
2273
- backgroundColor: theme.palette.grey[100],
2274
- borderColor: '#0A202F',
2275
- color: theme.palette.grey[900],
2276
- fontWeight: 400,
2277
- '&:hover': {
2278
- background: theme.palette.grey[100],
2279
- },
2280
- },
2281
- },
2282
- }); });
2283
-
2284
- var SelectableChip = function (props) {
2285
- var classes = useSelectableChipStyles(props);
2286
- return (React__default.createElement(Tab, __assign$1({ "data-tab-for-section-id": props.value, classes: {
2287
- root: classes.root,
2288
- selected: classes.selected,
2289
- } }, props)));
2290
- };
2291
-
2292
- var useSelectableChipGroupStyles = makeStyles(function (_a) {
2293
- var _b;
2294
- var breakpoints = _a.breakpoints, spacing = _a.spacing;
2295
- return ({
2296
- flexContainer: (_b = {},
2297
- _b[breakpoints.down('md')] = {
2298
- padding: spacing(0, 2),
2299
- },
2300
- _b[breakpoints.up('lg')] = {
2301
- alignItems: 'flex-start',
2302
- flexDirection: 'column',
2303
- },
2304
- _b.gridGap = spacing(1.5),
2305
- _b),
2306
- });
2307
- });
2308
-
2309
- var SelectableChipGroup = function (props) {
2310
- var children = props.children, muiProps = __rest$1(props, ["children"]);
2311
- var classes = useSelectableChipGroupStyles(props);
2312
- return (React__default.createElement(Tabs, __assign$1({ TabIndicatorProps: {
2313
- hidden: true,
2314
- }, variant: "scrollable", scrollButtons: "off", classes: classes }, muiProps), children));
2315
- };
2316
-
2317
- var useStyles$4 = makeStyles$1(function (_a) {
2318
- var spacing = _a.spacing;
2319
- return ({
2320
- root: {
2321
- padding: spacing(0.5, 0),
2322
- height: 'unset',
2323
- borderRadius: 4,
2324
- },
2325
- label: {
2326
- paddingLeft: 8,
2327
- display: 'flex',
2328
- gridGap: 8,
2329
- alignItems: 'center',
2330
- },
2331
- });
2332
- });
2333
- var SelectedMenuFiltersList = function (props) {
2334
- var filters = props.filters, onChipClick = props.onChipClick;
2335
- var classes = useStyles$4();
2336
- return (React__default.createElement(React__default.Fragment, null, filters.map(function (filter, index) { return (React__default.createElement(Chip, { key: filter.name + "-" + index, classes: classes, onClick: function (event) { return onChipClick(filter, event); }, label: React__default.createElement(React__default.Fragment, null,
2337
- React__default.createElement(ItemTag, { alt: filter.abbr, color: filter.color }, filter.abbr),
2338
- React__default.createElement(Typography$1, { variant: "caption" }, filter.name),
2339
- React__default.createElement(Icon, { icon: SvgXCircle, size: "large" })) })); })));
2340
- };
2341
-
2342
- var MenuSectionGroup = forwardRef(function (props, ref) {
2343
- var children = props.children, restProps = __rest$1(props, ["children"]);
2344
- return (React__default.createElement(Box, __assign$1({ display: "flex", flexDirection: "column", gridGap: 40, marginBottom: 4 }, restProps, { ref: ref }, { "data-component-type": "menu-section-group" }), children));
2345
- });
2346
- MenuSectionGroup.displayName = 'MenuSectionGroup';
2347
-
2348
- var useStyles$3 = makeStyles$1(function () { return ({
2349
- title: {
2350
- fontWeight: 400,
2351
- fontSize: 20,
2352
- lineHeight: '30px',
2353
- },
2354
- }); });
2355
-
2356
- var MenuSection = forwardRef(function (props, ref) {
2357
- var name = props.name, children = props.children, loading = props.loading, restProps = __rest$1(props, ["name", "children", "loading"]);
2358
- var classes = useStyles$3();
2359
- return (React__default.createElement(Box, __assign$1({}, restProps, { ref: ref, component: 'section' }, { "data-component-type": "menu-section", style: { scrollMarginTop: '70px' } }),
2360
- React__default.createElement(Box, { marginTop: 1, marginBottom: 4 },
2361
- React__default.createElement(Typography$1, { component: "h1", className: classes.title }, loading ? React__default.createElement(Skeleton, null) : name)),
2362
- children));
2363
- });
2364
- MenuSection.displayName = 'MenuSection';
2365
-
2366
- var useStyles$2 = makeStyles$1(function (_a) {
2367
- var _b;
2368
- var breakpoints = _a.breakpoints;
2369
- return ({
2370
- main: (_b = {},
2371
- _b[breakpoints.down('md')] = {
2372
- gridTemplateColumns: '1fr',
2373
- },
2374
- _b[breakpoints.up('lg')] = {
2375
- gridTemplateColumns: 'repeat(2, minmax(280px, 1fr))',
2376
- },
2377
- _b.display = 'grid',
2378
- _b.gridGap = 32,
2379
- _b),
2380
- });
2381
- });
2382
-
2383
- var MenuItemGroup = forwardRef(function (props, ref) {
2384
- var classes = useStyles$2();
2385
- props.children; var className = props.className, restProps = __rest$1(props, ["children", "className"]);
2386
- return (React__default.createElement(Box, __assign$1({ className: classNames(classes.main, className) }, { ref: ref }, { "data-component-type": "menu-item-group" }, restProps), props.children));
2387
- });
2388
- MenuItemGroup.displayName = 'MenuItemGroup';
2389
-
2390
- var PageSection = function (props) { return (React__default.createElement(Box, { p: 4, borderBottom: "1px solid #E0E0E0" }, props.children)); };
2391
-
2392
- var useStyles$1 = makeStyles$1(function () { return ({
2393
- closeButton: {
2394
- padding: 0,
2395
- },
2396
- }); });
2397
- var DialogTitle = function (props) {
2398
- var Icon = props.Icon, title = props.title, titleId = props.titleId, onClose = props.onClose;
2399
- var classes = useStyles$1();
2400
- return (React__default.createElement(DialogTitle$1, null,
2401
- React__default.createElement(Box, { display: "flex", alignItems: "center", gridGap: 16 },
2402
- Icon && Icon,
2403
- React__default.createElement(Typography$1, { variant: "h1", id: titleId }, title)),
2404
- onClose && (React__default.createElement(IconButton$1, { color: "inherit", className: classes.closeButton, "aria-label": "Close dialog", onClick: onClose },
2405
- React__default.createElement(SvgX, null)))));
2406
- };
2407
-
2408
- var DialogSection = function (props) {
2409
- var edgeToEdge = props.edgeToEdge, borderBottom = props.borderBottom, children = props.children, restProps = __rest$1(props, ["edgeToEdge", "borderBottom", "children"]);
2410
- return (React__default.createElement(Box, __assign$1({ paddingTop: 4, paddingBottom: borderBottom ? 4 : 0, paddingX: edgeToEdge ? 0 : 2, borderBottom: borderBottom ? '1px solid #E0E0E0' : undefined }, restProps), children));
2411
- };
2412
-
2413
- var Switch = withStyles(function (_a) {
2414
- var palette = _a.palette;
2415
- return ({
2416
- checked: {
2417
- '& $thumb': {
2418
- backgroundColor: palette.success.main,
2419
- },
2420
- '&& + $track': {
2421
- backgroundColor: palette.success.main,
2422
- opacity: 0.5,
2423
- },
2424
- },
2425
- switchBase: {
2426
- color: palette.grey[300],
2427
- },
2428
- thumb: {},
2429
- track: {},
2430
- });
2431
- })(Switch$2);
2432
-
2433
- var Checkbox = withStyles(function (_a) {
2434
- var palette = _a.palette;
2435
- return ({
2436
- checked: {},
2437
- root: {
2438
- '&$checked': {
2439
- color: palette.info.main,
2440
- },
2441
- },
2442
- });
2443
- })(Checkbox$2);
2444
-
2445
- var Radio = withStyles(function (_a) {
2446
- var palette = _a.palette;
2447
- return ({
2448
- checked: {},
2449
- root: {
2450
- '&$checked': {
2451
- color: palette.info.main,
2452
- },
2453
- },
2454
- });
2455
- })(Radio$2);
2456
-
2457
- var useStyles = makeStyles$1(function (theme) { return ({
2458
- root: {
2459
- '& > div': {
2460
- padding: 0,
2461
- '&:last-child': {
2462
- padding: 0,
2463
- },
2464
- },
2465
- display: 'flex',
2466
- flexDirection: 'column',
2467
- alignItems: 'start',
2468
- gridGap: theme.spacing(1),
2469
- padding: theme.spacing(2),
2470
- borderRadius: theme.spacing(2),
2471
- },
2472
- button: {
2473
- color: theme.palette.info.main,
2474
- },
2475
- description: {
2476
- color: theme.palette.grey[700],
2477
- },
2478
- header: {
2479
- color: function (props) {
2480
- return ({
2481
- alert: theme.palette.error.main,
2482
- info: theme.palette.info.main,
2483
- offer: theme.palette.success.main,
2484
- }[props.type]);
2485
- },
2486
- },
2487
- headerTitle: {
2488
- color: function (props) {
2489
- return ({
2490
- alert: theme.palette.error.main,
2491
- info: theme.palette.info.main,
2492
- offer: theme.palette.success.main,
2493
- }[props.type]);
2494
- },
2495
- fontWeight: 600,
2496
- },
2497
- content: {
2498
- marginLeft: theme.spacing(5),
2499
- },
2500
- }); });
2501
-
2502
- var bannerIconStyles = { color: 'inherit', width: 24, height: 24 };
2503
- var BannerTypeIcons = {
2504
- // @ts-expect-error style prop works
2505
- alert: React__default.createElement(SvgWarning, { style: bannerIconStyles }),
2506
- // @ts-expect-error style prop works
2507
- info: React__default.createElement(SvgInfo, { style: bannerIconStyles }),
2508
- // @ts-expect-error style prop works
2509
- offer: React__default.createElement(SvgDollarSign, { style: bannerIconStyles }),
2510
- };
2511
-
2512
- var MenuBanner = function (props) {
2513
- var show = props.show;
2514
- var classes = useStyles(props);
2515
- if (!show)
2516
- return null;
2517
- return (React__default.createElement(Card, { classes: { root: classes.root }, variant: "outlined" },
2518
- React__default.createElement(CardHeader, { avatar: BannerTypeIcons[props.type], title: props.title, titleTypographyProps: { variant: 'body1' }, classes: { root: classes.header, title: classes.headerTitle } }),
2519
- React__default.createElement(MenuBannerDescription, __assign$1({}, props)),
2520
- React__default.createElement(MenuBannerButton, __assign$1({}, props))));
2521
- };
2522
- function MenuBannerDescription(props) {
2523
- var classes = useStyles(props);
2524
- var description = props.description;
2525
- if (!description)
2526
- return null;
2527
- return (React__default.createElement(CardContent, { classes: { root: classes.content } },
2528
- React__default.createElement(Typography$1, { className: classes.description, variant: "body2" }, props.description)));
2529
- }
2530
- function MenuBannerButton(props) {
2531
- var classes = useStyles(props);
2532
- if (!props.buttonLabel)
2533
- return null;
2534
- return (React__default.createElement(CardContent, { classes: { root: classes.content } },
2535
- React__default.createElement(Link$1, __assign$1({}, { component: 'button', variant: 'body2', className: classes.button }, props.ButtonProps), props.buttonLabel)));
2536
- }
2537
-
2538
- var palette = {
2539
- primary: {
2540
- main: '#0A202F',
2541
- },
2542
- info: {
2543
- light: '#52B7FF',
2544
- main: '#0076CB',
2545
- dark: '#164B54',
2546
- },
2547
- success: {
2548
- light: '#48D3AB',
2549
- main: '#00B485',
2550
- dark: '#00663E',
2551
- contrastText: '#FFFFFF',
2552
- },
2553
- error: {
2554
- light: '#DA777E',
2555
- main: '#E52021',
2556
- dark: '#A80005',
2557
- },
2558
- warning: {
2559
- light: '#F0DFBA',
2560
- main: '#F5C364',
2561
- dark: '#E57E45',
2562
- },
2563
- };
2564
-
2565
- var overrides = {
2566
- MuiButton: {
2567
- root: {
2568
- borderRadius: 32,
2569
- textTransform: 'none',
2570
- padding: '18px 16px',
2571
- },
2572
- outlined: {},
2573
- textPrimary: {
2574
- color: '#0076CB',
2575
- },
2576
- },
2577
- MuiDialogTitle: {
2578
- root: {
2579
- display: 'flex',
2580
- alignItems: 'center',
2581
- justifyContent: 'space-between',
2582
- borderBottom: '1px solid #E0E0E0',
2583
- },
2584
- },
2585
- MuiDialogContent: {
2586
- root: {
2587
- '&:first-child': {
2588
- paddingTop: 0,
2589
- },
2590
- paddingTop: 0,
2591
- paddingRight: 0,
2592
- paddingLeft: 0,
2593
- display: 'flex',
2594
- flexDirection: 'column',
2595
- },
2596
- },
2597
- MuiDialogActions: {
2598
- root: {
2599
- padding: 16,
2600
- boxShadow: '-4px 0px 8px 0px #0000001A',
2601
- },
2602
- },
2603
- MuiDialog: {
2604
- paper: {
2605
- minWidth: 500,
2606
- },
2607
- paperWidthMd: {
2608
- minWidth: 640,
2609
- },
2610
- paperFullScreen: {
2611
- minWidth: 'unset',
2612
- },
2613
- },
2614
- MuiCssBaseline: {
2615
- '@global': {
2616
- '*:focus-visible, a:focus-visible': {
2617
- '&': {
2618
- outline: '2px solid #0076CB !important',
2619
- outlineOffset: -4,
2620
- borderRadius: 8,
2621
- },
2622
- },
2623
- 'sr-only': {
2624
- position: 'absolute',
2625
- width: 1,
2626
- height: 1,
2627
- padding: 0,
2628
- margin: -1,
2629
- overflow: 'hidden',
2630
- clip: 'rect(0, 0, 0, 0)',
2631
- whiteSpace: 'nowrap',
2632
- borderWidth: 0,
2633
- },
2634
- },
2635
- },
2636
- };
2637
-
2638
- var props = {
2639
- MuiButton: {
2640
- disableElevation: true,
2641
- },
2642
- MuiDialogTitle: {
2643
- disableTypography: true,
2644
- },
2645
- };
2646
-
2647
- var fonts = ['"Poppins"', '"sans-serif"'];
2648
- var typography = {
2649
- htmlFontSize: 16,
2650
- fontFamily: fonts.join(', '),
2651
- h1: {
2652
- fontWeight: 500,
2653
- fontSize: '1.5rem',
2654
- lineHeight: '100%',
2655
- },
2656
- h2: {
2657
- fontWeight: 600,
2658
- fontSize: '1.25rem',
2659
- lineHeight: '100%',
2660
- },
2661
- h3: {
2662
- fontWeight: 500,
2663
- fontSize: '1.25rem',
2664
- lineHeight: '1.875rem',
2665
- },
2666
- h4: {
2667
- fontWeight: 500,
2668
- fontSize: '1.25rem',
2669
- lineHeight: '1.875rem',
2670
- },
2671
- h5: {
2672
- fontWeight: 500,
2673
- fontSize: '1.25rem',
2674
- lineHeight: '1.875rem',
2675
- },
2676
- h6: {
2677
- fontWeight: 500,
2678
- fontSize: '1.25rem',
2679
- lineHeight: '1.875rem',
2680
- },
2681
- body1: {
2682
- fontWeight: 400,
2683
- fontSize: '1rem',
2684
- lineHeight: '1.5rem',
2685
- },
2686
- body2: {
2687
- fontWeight: 400,
2688
- fontSize: '0.875rem',
2689
- lineHeight: '1.25rem',
2690
- },
2691
- subtitle1: {
2692
- fontWeight: 400,
2693
- fontSize: '0.75rem',
2694
- lineHeight: '1.125rem',
2695
- color: '#9E9E9E',
2696
- },
2697
- button: {
2698
- fontWeight: 500,
2699
- fontSize: '0.875rem',
2700
- lineHeight: '1.25rem',
2701
- textTransform: 'capitalize',
2702
- },
2703
- };
2704
-
2705
- var orderingTheme = {
2706
- typography: typography,
2707
- palette: palette,
2708
- overrides: overrides,
2709
- props: props,
2710
- };
2711
-
2712
- export { Button, Checkbox, DialogSection, DialogTitle, DishCheckoutCard, DishDetailsReview, DishModifierCard, ItemTag, ItemTagGroup, LocationCard, MenuBanner, MenuDropdown, MenuFilter, MenuItem, MenuItemGroup, MenuSection, MenuSectionGroup, OrderingAppContext, OrderingAppContextProvider, PageSection, QuantityPicker, Radio, ReactionCounter, ReactionCounterGroup, SelectableChip, SelectableChipGroup, SelectedMenuFiltersList, StatusTag, Switch, orderingTheme, useOrderingAppContext };
2713
- //# sourceMappingURL=index.es.js.map