@popmenu/ordering-ui 0.154.0 → 0.155.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/build/cjs/components/Button/Button.d.ts +1 -1
  2. package/build/cjs/components/DialogSection/DialogSection.d.ts +2 -2
  3. package/build/cjs/components/DialogTitle/DialogTitle.d.ts +2 -2
  4. package/build/cjs/components/DishCheckoutCard/DishCheckoutCard.d.ts +1 -2
  5. package/build/cjs/components/DishModifierCard/DishModifierCard.d.ts +1 -2
  6. package/build/cjs/components/DishModifierCard/ModifierControls.d.ts +1 -2
  7. package/build/cjs/components/DishModifierCard/ModifierForm.d.ts +2 -3
  8. package/build/cjs/components/ExpandableModifierGroup/ExpandableModifierGroup.d.ts +1 -2
  9. package/build/cjs/components/ItemTagGroup/ItemTagGroup.d.ts +2 -2
  10. package/build/cjs/components/LocationCard/LocationCard.d.ts +1 -2
  11. package/build/cjs/components/MenuBanner/MenuBanner.d.ts +1 -2
  12. package/build/cjs/components/MenuBanner/MenuBannerIcons.d.ts +3 -4
  13. package/build/cjs/components/MenuItemCard/MenuItemCardImg.d.ts +1 -2
  14. package/build/cjs/components/MenuItemCard/MenuItemCardInfo.d.ts +1 -1
  15. package/build/cjs/components/MenuItemCard/MenuItemCardPrice.d.ts +1 -2
  16. package/build/cjs/components/MenuItemCard/MenuItemCardReactions.d.ts +1 -2
  17. package/build/cjs/components/MenuItemCard/MenuItemCardTags.d.ts +1 -2
  18. package/build/cjs/components/MenuItemModifiersList/MenuItemModifiersList.d.ts +1 -2
  19. package/build/cjs/components/MenuItemModifiersList/ModifierGroup.d.ts +1 -2
  20. package/build/cjs/components/MenuTab/MenuTab.d.ts +1 -2
  21. package/build/cjs/components/MenuTabGroup/MenuTabGroup.d.ts +1 -2
  22. package/build/cjs/components/NestedModsV2DishModifierCard/DishModifierCardProps.d.ts +2 -0
  23. package/build/cjs/components/NestedModsV2DishModifierCard/ModifierControls.d.ts +1 -2
  24. package/build/cjs/components/NestedModsV2DishModifierCard/NestedModsV2DishModifierCard.d.ts +1 -2
  25. package/build/cjs/components/OrderingAppContext/OrderingAppContext.d.ts +1 -1
  26. package/build/cjs/components/PageSection/PageSection.d.ts +1 -1
  27. package/build/cjs/components/ReactionCounter/ReactionCounter.d.ts +1 -2
  28. package/build/cjs/components/ReactionCounterGroup/ReactionCounterGroup.d.ts +2 -2
  29. package/build/cjs/components/SelectableChip/SelectableChip.d.ts +1 -2
  30. package/build/cjs/components/SelectableChipGroup/SelectableChipGroup.d.ts +1 -1
  31. package/build/cjs/components/SelectedMenuFiltersList/SelectedMenuFiltersList.d.ts +1 -2
  32. package/build/cjs/components/StatusTag/StatusTag.d.ts +1 -2
  33. package/build/cjs/index.js +45 -11
  34. package/build/cjs/index.js.map +1 -1
  35. package/build/esm/components/Button/Button.d.ts +1 -1
  36. package/build/esm/components/DialogSection/DialogSection.d.ts +2 -2
  37. package/build/esm/components/DialogTitle/DialogTitle.d.ts +2 -2
  38. package/build/esm/components/DishCheckoutCard/DishCheckoutCard.d.ts +1 -2
  39. package/build/esm/components/DishModifierCard/DishModifierCard.d.ts +1 -2
  40. package/build/esm/components/DishModifierCard/ModifierControls.d.ts +1 -2
  41. package/build/esm/components/DishModifierCard/ModifierForm.d.ts +2 -3
  42. package/build/esm/components/ExpandableModifierGroup/ExpandableModifierGroup.d.ts +1 -2
  43. package/build/esm/components/ExpandableModifierGroup/ExpandableModifierGroup.styles.js +1 -2
  44. package/build/esm/components/ExpandableModifierGroup/ExpandableModifierGroup.styles.js.map +1 -1
  45. package/build/esm/components/ItemTagGroup/ItemTagGroup.d.ts +2 -2
  46. package/build/esm/components/LocationCard/LocationCard.d.ts +1 -2
  47. package/build/esm/components/MenuBanner/MenuBanner.d.ts +1 -2
  48. package/build/esm/components/MenuBanner/MenuBannerIcons.d.ts +3 -4
  49. package/build/esm/components/MenuItemCard/MenuItemCardImg.d.ts +1 -2
  50. package/build/esm/components/MenuItemCard/MenuItemCardInfo.d.ts +1 -1
  51. package/build/esm/components/MenuItemCard/MenuItemCardPrice.d.ts +1 -2
  52. package/build/esm/components/MenuItemCard/MenuItemCardReactions.d.ts +1 -2
  53. package/build/esm/components/MenuItemCard/MenuItemCardTags.d.ts +1 -2
  54. package/build/esm/components/MenuItemModifiersList/MenuItemModifiersList.d.ts +1 -2
  55. package/build/esm/components/MenuItemModifiersList/ModifierGroup.d.ts +1 -2
  56. package/build/esm/components/MenuTab/MenuTab.d.ts +1 -2
  57. package/build/esm/components/MenuTabGroup/MenuTabGroup.d.ts +1 -2
  58. package/build/esm/components/NestedModsV2DishModifierCard/DishModifierCard.styles.js +7 -9
  59. package/build/esm/components/NestedModsV2DishModifierCard/DishModifierCard.styles.js.map +1 -1
  60. package/build/esm/components/NestedModsV2DishModifierCard/DishModifierCardProps.d.ts +2 -0
  61. package/build/esm/components/NestedModsV2DishModifierCard/ModifierControls.d.ts +1 -2
  62. package/build/esm/components/NestedModsV2DishModifierCard/ModifierControls.js +38 -1
  63. package/build/esm/components/NestedModsV2DishModifierCard/ModifierControls.js.map +1 -1
  64. package/build/esm/components/NestedModsV2DishModifierCard/NestedModsV2DishModifierCard.d.ts +1 -2
  65. package/build/esm/components/OrderingAppContext/OrderingAppContext.d.ts +1 -1
  66. package/build/esm/components/PageSection/PageSection.d.ts +1 -1
  67. package/build/esm/components/ReactionCounter/ReactionCounter.d.ts +1 -2
  68. package/build/esm/components/ReactionCounterGroup/ReactionCounterGroup.d.ts +2 -2
  69. package/build/esm/components/SelectableChip/SelectableChip.d.ts +1 -2
  70. package/build/esm/components/SelectableChipGroup/SelectableChipGroup.d.ts +1 -1
  71. package/build/esm/components/SelectedMenuFiltersList/SelectedMenuFiltersList.d.ts +1 -2
  72. package/build/esm/components/StatusTag/StatusTag.d.ts +1 -2
  73. package/package.json +2 -2
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
2
  import { ButtonProps } from './ButtonProps';
3
- export declare const Button: React.ForwardRefExoticComponent<Omit<ButtonProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
3
+ export declare const Button: React.ForwardRefExoticComponent<Pick<ButtonProps, "className" | "style" | "classes" | "innerRef" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "slot" | "spellCheck" | "tabIndex" | "title" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "form" | "key" | "autoFocus" | "disabled" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "name" | "type" | "value" | "disableElevation" | "fullWidth" | "startIcon" | "endIcon" | "variation" | "disableFocusRipple" | "href" | "size" | "variant" | "action" | "buttonRef" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "onFocusVisible" | "TouchRippleProps"> & React.RefAttributes<HTMLButtonElement>>;
@@ -1,8 +1,8 @@
1
1
  import { BoxProps } from '@material-ui/core';
2
- import React, { PropsWithChildren } from 'react';
2
+ import { PropsWithChildren } from 'react';
3
3
  interface DialogSectionProps extends BoxProps {
4
4
  edgeToEdge?: boolean;
5
5
  borderBottom?: boolean;
6
6
  }
7
- export declare const DialogSection: (props: PropsWithChildren<DialogSectionProps>) => React.JSX.Element;
7
+ export declare const DialogSection: (props: PropsWithChildren<DialogSectionProps>) => JSX.Element;
8
8
  export {};
@@ -1,9 +1,9 @@
1
- import React, { ReactNode } from 'react';
1
+ import { ReactNode } from 'react';
2
2
  interface DialogTitleProps {
3
3
  title: string;
4
4
  titleId: string;
5
5
  Icon?: ReactNode;
6
6
  onClose?: () => void;
7
7
  }
8
- export declare const DialogTitle: (props: DialogTitleProps) => React.JSX.Element;
8
+ export declare const DialogTitle: (props: DialogTitleProps) => JSX.Element;
9
9
  export {};
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { DishCheckoutCardProps } from './DishCheckoutCardProps';
3
- export declare const DishCheckoutCard: ({ id, borderBottom, name, quantity, modifierGroups, onDelete, onEdit, onQuantityChange, price, specialInstructions, disabled, warningMessage, warningMessageLevel, image, messages, maxQuantity, minQuantity, }: DishCheckoutCardProps) => React.JSX.Element;
2
+ export declare const DishCheckoutCard: ({ id, borderBottom, name, quantity, modifierGroups, onDelete, onEdit, onQuantityChange, price, specialInstructions, disabled, warningMessage, warningMessageLevel, image, messages, maxQuantity, minQuantity, }: DishCheckoutCardProps) => JSX.Element;
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  import { DishModifierCardProps } from './DishModifierCardProps';
3
2
  export declare const DishModifierCard: {
4
- (props: DishModifierCardProps): React.JSX.Element;
3
+ (props: DishModifierCardProps): JSX.Element;
5
4
  displayName: string;
6
5
  };
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { ModifierOptionsControlProps } from './DishModifierCardProps';
3
- export declare const ModifierControls: (props: ModifierOptionsControlProps) => React.JSX.Element | null;
2
+ export declare const ModifierControls: (props: ModifierOptionsControlProps) => JSX.Element | null;
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { CheckboxModifierFormProps, RadioModifierFormProps } from './DishModifierCardProps';
3
- export declare const CheckboxGroup: (props: CheckboxModifierFormProps) => React.JSX.Element;
4
- export declare const RadioGroup: (props: RadioModifierFormProps) => React.JSX.Element;
2
+ export declare const CheckboxGroup: (props: CheckboxModifierFormProps) => JSX.Element;
3
+ export declare const RadioGroup: (props: RadioModifierFormProps) => JSX.Element;
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  import { ExpandableModifierGroupProps } from './ExpandableModifierGroupProps';
3
2
  export declare const ExpandableModifierGroup: {
4
- ({ name, children, defaultExpanded, selectedSummary, }: ExpandableModifierGroupProps): React.JSX.Element;
3
+ ({ name, children, defaultExpanded, selectedSummary, }: ExpandableModifierGroupProps): JSX.Element;
5
4
  displayName: string;
6
5
  };
@@ -1,2 +1,2 @@
1
- import React, { HTMLAttributes, PropsWithChildren } from 'react';
2
- export declare const ItemTagGroup: (props: PropsWithChildren<HTMLAttributes<HTMLElement>>) => React.JSX.Element;
1
+ import { HTMLAttributes, PropsWithChildren } from 'react';
2
+ export declare const ItemTagGroup: (props: PropsWithChildren<HTMLAttributes<HTMLElement>>) => JSX.Element;
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { LocationCardProps } from './LocationCardProps';
3
- export declare const LocationCard: (props: LocationCardProps) => React.JSX.Element;
2
+ export declare const LocationCard: (props: LocationCardProps) => JSX.Element;
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { MenuBannerProps } from './MenuBannerProps';
3
- export declare const MenuBanner: (props: MenuBannerProps) => React.JSX.Element | null;
2
+ export declare const MenuBanner: (props: MenuBannerProps) => JSX.Element | null;
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  export declare const BannerTypeIcons: {
3
- alert: React.JSX.Element;
4
- info: React.JSX.Element;
5
- offer: React.JSX.Element;
2
+ alert: JSX.Element;
3
+ info: JSX.Element;
4
+ offer: JSX.Element;
6
5
  };
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { MenuItemCardProps } from './MenuItemCardProps';
3
- export declare const MenuItemCardImg: (props: Pick<MenuItemCardProps, "image">) => React.JSX.Element | null;
2
+ export declare const MenuItemCardImg: (props: Pick<MenuItemCardProps, "image">) => JSX.Element | null;
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
2
  export declare const MenuItemCardInfo: (props: {
3
3
  children: React.ReactNode;
4
- }) => React.JSX.Element;
4
+ }) => JSX.Element;
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { MenuItemCardProps } from './MenuItemCardProps';
3
- export declare const MenuItemCardPrice: (props: Pick<MenuItemCardProps, "price" | "available">) => React.JSX.Element;
2
+ export declare const MenuItemCardPrice: (props: Pick<MenuItemCardProps, "price" | "available">) => JSX.Element;
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { MenuItemCardProps } from './MenuItemCardProps';
3
- export declare const MenuItemCardReactions: (props: Pick<MenuItemCardProps, "likeCount" | "reviewCount">) => React.JSX.Element;
2
+ export declare const MenuItemCardReactions: (props: Pick<MenuItemCardProps, "likeCount" | "reviewCount">) => JSX.Element;
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { MenuItemCardProps } from './MenuItemCardProps';
3
- export declare const MenuItemCardTags: (props: Pick<MenuItemCardProps, "itemTags">) => React.JSX.Element;
2
+ export declare const MenuItemCardTags: (props: Pick<MenuItemCardProps, "itemTags">) => JSX.Element;
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  import { ModifierGroupsType } from '../DishCheckoutCard/DishCheckoutCardProps';
3
2
  export declare const MenuItemModifiersList: ({ modifierGroups, specialInstructions, }: {
4
3
  modifierGroups: ModifierGroupsType[];
5
4
  specialInstructions: string | null;
6
- }) => React.JSX.Element;
5
+ }) => JSX.Element;
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { ModifierGroupsType } from '../DishCheckoutCard/DishCheckoutCardProps';
3
- export declare const ModifierGroup: (group: ModifierGroupsType, isNested: boolean) => React.JSX.Element;
2
+ export declare const ModifierGroup: (group: ModifierGroupsType, isNested: boolean) => JSX.Element;
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { MenuTabProps } from './MenuTabProps';
3
- export declare const MenuTab: (props: MenuTabProps) => React.JSX.Element;
2
+ export declare const MenuTab: (props: MenuTabProps) => JSX.Element;
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { MenuTabGroupProps } from './MenuTabGroupProps';
3
- export declare const MenuTabGroup: (props: MenuTabGroupProps) => React.JSX.Element;
2
+ export declare const MenuTabGroup: (props: MenuTabGroupProps) => JSX.Element;
@@ -33,6 +33,8 @@ export type ModifierControlsOptions = {
33
33
  * selected.
34
34
  */
35
35
  hideNestedOptionsButton?: boolean;
36
+ /** Renders single-select and multiple-select rows with modifier quantity buttons instead of radio/checkbox controls */
37
+ selectionControlVariant?: 'default' | 'quantityButtons';
36
38
  };
37
39
  export type NestedModsV2DishModifierCardProps = {
38
40
  /** Aggregate price of the modifier and its nested children modifiers */
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { ModifierOptionsControlProps } from './DishModifierCardProps';
3
- export declare const ModifierControls: (props: ModifierOptionsControlProps) => React.JSX.Element | null;
2
+ export declare const ModifierControls: (props: ModifierOptionsControlProps) => JSX.Element | null;
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  import { NestedModsV2DishModifierCardProps } from './DishModifierCardProps';
3
2
  export declare const NestedModsV2DishModifierCard: {
4
- (props: NestedModsV2DishModifierCardProps): React.JSX.Element;
3
+ (props: NestedModsV2DishModifierCardProps): JSX.Element;
5
4
  displayName: string;
6
5
  };
@@ -14,5 +14,5 @@ export declare const useOrderingAppContext: () => OrderingAppContextType;
14
14
  type OrderingAppContextProviderProps = PropsWithChildren<{
15
15
  defaultContext: OrderingAppContextValue;
16
16
  }>;
17
- export declare const OrderingAppContextProvider: (props: OrderingAppContextProviderProps) => React.JSX.Element;
17
+ export declare const OrderingAppContextProvider: (props: OrderingAppContextProviderProps) => JSX.Element;
18
18
  export {};
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
2
  export declare const PageSection: (props: {
3
3
  children: React.ReactNode;
4
- }) => React.JSX.Element;
4
+ }) => JSX.Element;
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { ReactionCounterProps } from './ReactionCounterProps';
3
- export declare const ReactionCounter: (props: ReactionCounterProps) => React.JSX.Element;
2
+ export declare const ReactionCounter: (props: ReactionCounterProps) => JSX.Element;
@@ -1,4 +1,4 @@
1
- import React, { HTMLAttributes, PropsWithChildren } from 'react';
1
+ import { HTMLAttributes, PropsWithChildren } from 'react';
2
2
  type ReactionCounterGroupProps = PropsWithChildren<HTMLAttributes<HTMLElement>>;
3
- export declare const ReactionCounterGroup: (props: ReactionCounterGroupProps) => React.JSX.Element;
3
+ export declare const ReactionCounterGroup: (props: ReactionCounterGroupProps) => JSX.Element;
4
4
  export {};
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { SelectableChipProps } from './SelectableChipProps';
3
- export declare const SelectableChip: (props: SelectableChipProps) => React.JSX.Element;
2
+ export declare const SelectableChip: (props: SelectableChipProps) => JSX.Element;
@@ -2,5 +2,5 @@ import React from 'react';
2
2
  type SelectableChipGroupProps = {
3
3
  children: React.ReactNode;
4
4
  } & React.HTMLAttributes<HTMLElement>;
5
- export declare const SelectableChipGroup: (props: SelectableChipGroupProps) => React.JSX.Element;
5
+ export declare const SelectableChipGroup: (props: SelectableChipGroupProps) => JSX.Element;
6
6
  export {};
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
1
  import { SelectedMenuFiltersListProps } from './SelectedMenuFiltersListProps';
3
- export declare const SelectedMenuFiltersList: (props: SelectedMenuFiltersListProps) => React.JSX.Element;
2
+ export declare const SelectedMenuFiltersList: (props: SelectedMenuFiltersListProps) => JSX.Element;
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  import { StatusTagProps } from './StatusTagProps';
3
2
  export declare const StatusTag: {
4
- ({ color, label, size, variant }: StatusTagProps): React.JSX.Element;
3
+ ({ color, label, size, variant }: StatusTagProps): JSX.Element;
5
4
  displayName: string;
6
5
  };
@@ -1658,10 +1658,9 @@ const useExpandableModifierGroupStyles = core.makeStyles((theme) => ({
1658
1658
  summaryIcon: {
1659
1659
  color: theme.palette.success.main,
1660
1660
  },
1661
- // TODO [sc-162475]: 0.625rem (10px) is below the recommended minimum font size for accessibility — address in followup
1662
1661
  summaryText: {
1663
1662
  color: theme.palette.grey[700],
1664
- fontSize: '0.625rem',
1663
+ fontSize: '0.75rem',
1665
1664
  lineHeight: 1.2,
1666
1665
  overflow: 'hidden',
1667
1666
  textOverflow: 'ellipsis',
@@ -1706,14 +1705,14 @@ const useDishModifierCardStyles = core.makeStyles((theme) => ({
1706
1705
  },
1707
1706
  },
1708
1707
  name: {
1709
- fontSize: '1.125rem',
1710
- fontWeight: theme.typography.fontWeightBold,
1708
+ fontSize: '1rem',
1709
+ fontWeight: 500,
1711
1710
  marginBottom: theme.spacing(2),
1712
1711
  },
1713
1712
  }));
1714
1713
  const useRadioModifierFormStyles = core.makeStyles((theme) => ({
1715
1714
  radioGroup: {
1716
- gap: theme.spacing(2),
1715
+ gap: theme.spacing(1.5),
1717
1716
  },
1718
1717
  label: {
1719
1718
  alignItems: 'center',
@@ -1743,7 +1742,7 @@ const useRadioModifierFormStyles = core.makeStyles((theme) => ({
1743
1742
  }));
1744
1743
  const useCheckboxModifierFormStyles = core.makeStyles((theme) => ({
1745
1744
  formGroup: {
1746
- gap: theme.spacing(2),
1745
+ gap: theme.spacing(1.5),
1747
1746
  },
1748
1747
  label: {
1749
1748
  alignItems: 'center',
@@ -1793,7 +1792,7 @@ const useLabelStyles = core.makeStyles((theme) => ({
1793
1792
  columnGap: theme.spacing(1),
1794
1793
  display: 'flex',
1795
1794
  justifyContent: 'space-between',
1796
- marginTop: theme.spacing(0.5),
1795
+ marginTop: theme.spacing(1),
1797
1796
  minHeight: theme.spacing(2.5),
1798
1797
  width: '100%',
1799
1798
  },
@@ -1804,10 +1803,9 @@ const useLabelStyles = core.makeStyles((theme) => ({
1804
1803
  flex: 1,
1805
1804
  minWidth: 0,
1806
1805
  },
1807
- // TODO [sc-162475]: 0.625rem (10px) is below the recommended minimum font size for accessibility — address in followup
1808
1806
  selectedSummaryPrimaryText: {
1809
1807
  color: theme.palette.grey[700],
1810
- fontSize: '0.625rem',
1808
+ fontSize: '0.75rem',
1811
1809
  fontWeight: theme.typography.fontWeightRegular,
1812
1810
  lineHeight: 1.2,
1813
1811
  overflow: 'hidden',
@@ -1837,8 +1835,7 @@ const useOptionsStyles = core.makeStyles((theme) => ({
1837
1835
  paddingRight: 0,
1838
1836
  paddingTop: 0,
1839
1837
  '& .MuiTypography-root': {
1840
- // TODO [sc-162475]: 0.625rem (10px) is below the recommended minimum font size for accessibility — address in followup
1841
- fontSize: '0.625rem',
1838
+ fontSize: '0.75rem',
1842
1839
  lineHeight: 1.2,
1843
1840
  },
1844
1841
  },
@@ -1927,6 +1924,37 @@ const SingleSelectModifierControl = (props) => {
1927
1924
  React.createElement(NestedModifierActions, { modifier: modifier, handleOptionsClick: handleOptionsClick, state: modifierActionState })));
1928
1925
  }))));
1929
1926
  };
1927
+ const QuantityButtonControl = (props) => {
1928
+ const { modifiers, name, isOutOfStock, onChange, value, handleOptionsClick, aggregatePrice, disableNewSelections } = props;
1929
+ const radioClasses = useRadioModifierFormStyles();
1930
+ const isSingleSelect = props.type === 'singleSelect';
1931
+ const makeHandleChange = (modifier, isSelected) => (_e, customEvent) => {
1932
+ if (!isSelected && modifier.hasModifiers && !props.modifierControlsOptions?.hideNestedOptionsButton) {
1933
+ handleOptionsClick(modifier.id);
1934
+ }
1935
+ onChange({
1936
+ isRadio: isSingleSelect,
1937
+ modifierId: modifier.id,
1938
+ groupId: modifier.parentModifierGroupId,
1939
+ parentModifierId: modifier.parentModifierGroupItemId,
1940
+ price: modifier.price || 0,
1941
+ quantity: isSingleSelect && customEvent.quantity > 0 ? 1 : customEvent.quantity,
1942
+ });
1943
+ };
1944
+ return (React.createElement(core.FormControl, { fullWidth: true },
1945
+ React.createElement(core.FormGroup, { className: radioClasses.radioGroup, "aria-label": name }, modifiers.map((modifier) => {
1946
+ const selectedModifier = value.find((v) => v.modifierId === modifier.id && v.quantity > 0);
1947
+ const isSelected = Boolean(selectedModifier);
1948
+ const modifierActionState = getModifierActionState(modifier, isSelected, props);
1949
+ return (React.createElement(core.Box, { key: modifier.id },
1950
+ React.createElement(core.Box, { display: "flex", alignItems: "center", justifyContent: "space-between", width: "100%" },
1951
+ React.createElement(Label, { name: modifier.name, price: aggregatePrice[modifier.id] || modifier.formattedPrice, disabled: isOutOfStock || modifier.outOfStock, hidePrice: modifier.hidePrice, isSelected: modifierActionState.isSelected, enableSelectedModifierStyles: props.modifierControlsOptions?.enableSelectedModifierStyles, selectedSummary: modifierActionState.showInlineAction ? undefined : modifierActionState.selectedSummary }),
1952
+ modifier.outOfStock && (React.createElement(core.Box, { minWidth: "90px", marginLeft: 2 },
1953
+ React.createElement(StatusTag, { color: "warning", label: props.messages.outOfStockText, variant: "outlined", size: "md" }))),
1954
+ !modifier.outOfStock && (React.createElement(QuantityPicker, { incrementButtonTitle: `Add ${modifier.name}`, decrementButtonTitle: `Remove ${modifier.name}`, id: `${modifier.id}-quantity-picker`, variation: "modifierCount", value: selectedModifier?.quantity ?? 0, min: 0, max: isSingleSelect ? 1 : undefined, preventManualChange: true, disableIncrement: !isSingleSelect && disableNewSelections, onChange: makeHandleChange(modifier, isSelected), disabled: isOutOfStock || modifier.outOfStock, name: modifier.name }))),
1955
+ React.createElement(NestedModifierActions, { modifier: modifier, handleOptionsClick: handleOptionsClick, state: modifierActionState, renderRegularButton: false })));
1956
+ }))));
1957
+ };
1930
1958
  const MultipleSelectControl = (props) => {
1931
1959
  const { modifiers, value, isOutOfStock, onChange, disableNewSelections, handleOptionsClick, aggregatePrice } = props;
1932
1960
  const classes = useCheckboxModifierFormStyles();
@@ -1993,8 +2021,14 @@ const MultipleQuantitySelectControl = (props) => {
1993
2021
  const ModifierControls = (props) => {
1994
2022
  switch (props.type) {
1995
2023
  case 'singleSelect':
2024
+ if (props.modifierControlsOptions?.selectionControlVariant === 'quantityButtons') {
2025
+ return React.createElement(QuantityButtonControl, { ...props });
2026
+ }
1996
2027
  return React.createElement(SingleSelectModifierControl, { ...props });
1997
2028
  case 'multipleSelect':
2029
+ if (props.modifierControlsOptions?.selectionControlVariant === 'quantityButtons') {
2030
+ return React.createElement(QuantityButtonControl, { ...props });
2031
+ }
1998
2032
  return React.createElement(MultipleSelectControl, { ...props });
1999
2033
  case 'multipleQuantitySelect':
2000
2034
  return React.createElement(MultipleQuantitySelectControl, { ...props });