@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.
- package/build/cjs/components/Button/Button.d.ts +1 -1
- package/build/cjs/components/DialogSection/DialogSection.d.ts +2 -2
- package/build/cjs/components/DialogTitle/DialogTitle.d.ts +2 -2
- package/build/cjs/components/DishCheckoutCard/DishCheckoutCard.d.ts +1 -2
- package/build/cjs/components/DishModifierCard/DishModifierCard.d.ts +1 -2
- package/build/cjs/components/DishModifierCard/ModifierControls.d.ts +1 -2
- package/build/cjs/components/DishModifierCard/ModifierForm.d.ts +2 -3
- package/build/cjs/components/ExpandableModifierGroup/ExpandableModifierGroup.d.ts +1 -2
- package/build/cjs/components/ItemTagGroup/ItemTagGroup.d.ts +2 -2
- package/build/cjs/components/LocationCard/LocationCard.d.ts +1 -2
- package/build/cjs/components/MenuBanner/MenuBanner.d.ts +1 -2
- package/build/cjs/components/MenuBanner/MenuBannerIcons.d.ts +3 -4
- package/build/cjs/components/MenuItemCard/MenuItemCardImg.d.ts +1 -2
- package/build/cjs/components/MenuItemCard/MenuItemCardInfo.d.ts +1 -1
- package/build/cjs/components/MenuItemCard/MenuItemCardPrice.d.ts +1 -2
- package/build/cjs/components/MenuItemCard/MenuItemCardReactions.d.ts +1 -2
- package/build/cjs/components/MenuItemCard/MenuItemCardTags.d.ts +1 -2
- package/build/cjs/components/MenuItemModifiersList/MenuItemModifiersList.d.ts +1 -2
- package/build/cjs/components/MenuItemModifiersList/ModifierGroup.d.ts +1 -2
- package/build/cjs/components/MenuTab/MenuTab.d.ts +1 -2
- package/build/cjs/components/MenuTabGroup/MenuTabGroup.d.ts +1 -2
- package/build/cjs/components/NestedModsV2DishModifierCard/DishModifierCardProps.d.ts +2 -0
- package/build/cjs/components/NestedModsV2DishModifierCard/ModifierControls.d.ts +1 -2
- package/build/cjs/components/NestedModsV2DishModifierCard/NestedModsV2DishModifierCard.d.ts +1 -2
- package/build/cjs/components/OrderingAppContext/OrderingAppContext.d.ts +1 -1
- package/build/cjs/components/PageSection/PageSection.d.ts +1 -1
- package/build/cjs/components/ReactionCounter/ReactionCounter.d.ts +1 -2
- package/build/cjs/components/ReactionCounterGroup/ReactionCounterGroup.d.ts +2 -2
- package/build/cjs/components/SelectableChip/SelectableChip.d.ts +1 -2
- package/build/cjs/components/SelectableChipGroup/SelectableChipGroup.d.ts +1 -1
- package/build/cjs/components/SelectedMenuFiltersList/SelectedMenuFiltersList.d.ts +1 -2
- package/build/cjs/components/StatusTag/StatusTag.d.ts +1 -2
- package/build/cjs/index.js +45 -11
- package/build/cjs/index.js.map +1 -1
- package/build/esm/components/Button/Button.d.ts +1 -1
- package/build/esm/components/DialogSection/DialogSection.d.ts +2 -2
- package/build/esm/components/DialogTitle/DialogTitle.d.ts +2 -2
- package/build/esm/components/DishCheckoutCard/DishCheckoutCard.d.ts +1 -2
- package/build/esm/components/DishModifierCard/DishModifierCard.d.ts +1 -2
- package/build/esm/components/DishModifierCard/ModifierControls.d.ts +1 -2
- package/build/esm/components/DishModifierCard/ModifierForm.d.ts +2 -3
- package/build/esm/components/ExpandableModifierGroup/ExpandableModifierGroup.d.ts +1 -2
- package/build/esm/components/ExpandableModifierGroup/ExpandableModifierGroup.styles.js +1 -2
- package/build/esm/components/ExpandableModifierGroup/ExpandableModifierGroup.styles.js.map +1 -1
- package/build/esm/components/ItemTagGroup/ItemTagGroup.d.ts +2 -2
- package/build/esm/components/LocationCard/LocationCard.d.ts +1 -2
- package/build/esm/components/MenuBanner/MenuBanner.d.ts +1 -2
- package/build/esm/components/MenuBanner/MenuBannerIcons.d.ts +3 -4
- package/build/esm/components/MenuItemCard/MenuItemCardImg.d.ts +1 -2
- package/build/esm/components/MenuItemCard/MenuItemCardInfo.d.ts +1 -1
- package/build/esm/components/MenuItemCard/MenuItemCardPrice.d.ts +1 -2
- package/build/esm/components/MenuItemCard/MenuItemCardReactions.d.ts +1 -2
- package/build/esm/components/MenuItemCard/MenuItemCardTags.d.ts +1 -2
- package/build/esm/components/MenuItemModifiersList/MenuItemModifiersList.d.ts +1 -2
- package/build/esm/components/MenuItemModifiersList/ModifierGroup.d.ts +1 -2
- package/build/esm/components/MenuTab/MenuTab.d.ts +1 -2
- package/build/esm/components/MenuTabGroup/MenuTabGroup.d.ts +1 -2
- package/build/esm/components/NestedModsV2DishModifierCard/DishModifierCard.styles.js +7 -9
- package/build/esm/components/NestedModsV2DishModifierCard/DishModifierCard.styles.js.map +1 -1
- package/build/esm/components/NestedModsV2DishModifierCard/DishModifierCardProps.d.ts +2 -0
- package/build/esm/components/NestedModsV2DishModifierCard/ModifierControls.d.ts +1 -2
- package/build/esm/components/NestedModsV2DishModifierCard/ModifierControls.js +38 -1
- package/build/esm/components/NestedModsV2DishModifierCard/ModifierControls.js.map +1 -1
- package/build/esm/components/NestedModsV2DishModifierCard/NestedModsV2DishModifierCard.d.ts +1 -2
- package/build/esm/components/OrderingAppContext/OrderingAppContext.d.ts +1 -1
- package/build/esm/components/PageSection/PageSection.d.ts +1 -1
- package/build/esm/components/ReactionCounter/ReactionCounter.d.ts +1 -2
- package/build/esm/components/ReactionCounterGroup/ReactionCounterGroup.d.ts +2 -2
- package/build/esm/components/SelectableChip/SelectableChip.d.ts +1 -2
- package/build/esm/components/SelectableChipGroup/SelectableChipGroup.d.ts +1 -1
- package/build/esm/components/SelectedMenuFiltersList/SelectedMenuFiltersList.d.ts +1 -2
- package/build/esm/components/StatusTag/StatusTag.d.ts +1 -2
- 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<
|
|
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
|
|
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>) =>
|
|
7
|
+
export declare const DialogSection: (props: PropsWithChildren<DialogSectionProps>) => JSX.Element;
|
|
8
8
|
export {};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import
|
|
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) =>
|
|
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) =>
|
|
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,3 +1,2 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import { ModifierOptionsControlProps } from './DishModifierCardProps';
|
|
3
|
-
export declare const ModifierControls: (props: ModifierOptionsControlProps) =>
|
|
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) =>
|
|
4
|
-
export declare const RadioGroup: (props: RadioModifierFormProps) =>
|
|
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):
|
|
3
|
+
({ name, children, defaultExpanded, selectedSummary, }: ExpandableModifierGroupProps): JSX.Element;
|
|
5
4
|
displayName: string;
|
|
6
5
|
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
export declare const ItemTagGroup: (props: PropsWithChildren<HTMLAttributes<HTMLElement>>) =>
|
|
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 { MenuItemCardProps } from './MenuItemCardProps';
|
|
3
|
-
export declare const MenuItemCardImg: (props: Pick<MenuItemCardProps, "image">) =>
|
|
2
|
+
export declare const MenuItemCardImg: (props: Pick<MenuItemCardProps, "image">) => JSX.Element | null;
|
|
@@ -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">) =>
|
|
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">) =>
|
|
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">) =>
|
|
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
|
-
}) =>
|
|
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) =>
|
|
2
|
+
export declare const ModifierGroup: (group: ModifierGroupsType, isNested: boolean) => 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) =>
|
|
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):
|
|
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) =>
|
|
17
|
+
export declare const OrderingAppContextProvider: (props: OrderingAppContextProviderProps) => JSX.Element;
|
|
18
18
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { HTMLAttributes, PropsWithChildren } from 'react';
|
|
2
2
|
type ReactionCounterGroupProps = PropsWithChildren<HTMLAttributes<HTMLElement>>;
|
|
3
|
-
export declare const ReactionCounterGroup: (props: ReactionCounterGroupProps) =>
|
|
3
|
+
export declare const ReactionCounterGroup: (props: ReactionCounterGroupProps) => JSX.Element;
|
|
4
4
|
export {};
|
|
@@ -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) =>
|
|
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) =>
|
|
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):
|
|
3
|
+
({ color, label, size, variant }: StatusTagProps): JSX.Element;
|
|
5
4
|
displayName: string;
|
|
6
5
|
};
|
package/build/cjs/index.js
CHANGED
|
@@ -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.
|
|
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: '
|
|
1710
|
-
fontWeight:
|
|
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(
|
|
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(
|
|
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(
|
|
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.
|
|
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
|
-
|
|
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 });
|