@razorpay/blade 12.33.2 → 12.34.1

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.
@@ -178,7 +178,7 @@ var TableEditableDropdownCell = function TableEditableDropdownCell(dropdownProps
178
178
  flex: 1,
179
179
  hasPadding: false,
180
180
  children: /*#__PURE__*/jsx(Dropdown, _objectSpread({
181
- _width: "100%",
181
+ _width: "calc(100% - 8px)",
182
182
  margin: "spacing.2"
183
183
  }, dropdownProps))
184
184
  })
@@ -1 +1 @@
1
- {"version":3,"file":"TableEditableCell.web.js","sources":["../../../../../../src/components/Table/TableEditableCell.web.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { CellWrapper, StyledCell } from './TableBody';\nimport { useTableContext } from './TableContext';\nimport type { TableEditableCellProps, TableEditableDropdownCellProps, TableProps } from './types';\nimport {\n rowDensityToIsTableInputCellMapping,\n tableEditableCellRowDensityToInputSizeMap,\n validationStateToInputTrailingIconMap,\n} from './tokens';\nimport { ComponentIds } from './componentIds';\nimport { TableEditableCellContext } from './TableEditableCellContext';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport type { MarginProps } from '~components/Box/BaseBox/types/spacingTypes';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Box } from '~components/Box';\nimport { BaseInput } from '~components/Input/BaseInput';\nimport { castWebType } from '~utils';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { Dropdown } from '~components/Dropdown';\n\nconst StyledEditableCell = styled(StyledCell)<{\n $rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n}>(({ theme, $rowDensity }) => ({\n '&&&': {\n '&:focus-visible': { outline: '1px solid' },\n '&:focus-within': {\n ...($rowDensity !== 'comfortable' ? getFocusRingStyles({ theme, negativeOffset: true }) : {}),\n },\n },\n}));\n\nconst getEditableInputMargin = ({\n rowDensity,\n}: {\n rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n}): MarginProps['margin'] => {\n if (rowDensity === 'comfortable') {\n return ['spacing.4', 'spacing.4'];\n }\n\n return 'spacing.2';\n};\n\nconst _TableEditableCell = ({\n validationState = 'none',\n accessibilityLabel,\n autoCapitalize,\n autoCompleteSuggestionType,\n autoFocus,\n defaultValue,\n isDisabled,\n isRequired,\n keyboardReturnKeyType,\n leadingIcon,\n maxCharacters,\n name,\n onBlur,\n onChange,\n onClick,\n onFocus,\n onSubmit,\n placeholder,\n prefix,\n suffix,\n value,\n testID,\n trailingButton,\n errorText,\n successText,\n}: TableEditableCellProps): React.ReactElement => {\n const { rowDensity, showStripedRows, backgroundColor } = useTableContext();\n\n return (\n <StyledEditableCell\n role=\"cell\"\n $backgroundColor={backgroundColor}\n $rowDensity={rowDensity}\n {...metaAttribute({ name: MetaConstants.TableCell })}\n >\n <BaseBox className=\"cell-wrapper-base\" display=\"flex\" alignItems=\"center\" height=\"100%\">\n <CellWrapper\n className=\"cell-wrapper\"\n $rowDensity={rowDensity}\n showStripedRows={showStripedRows}\n display=\"flex\"\n alignItems=\"center\"\n flex={1}\n hasPadding={false}\n >\n <Box margin={getEditableInputMargin({ rowDensity })} width=\"100%\">\n <BaseInput\n isTableInputCell={rowDensityToIsTableInputCellMapping[rowDensity]}\n validationState={validationState}\n id=\"table-editable-cell-input\"\n type=\"text\"\n size={tableEditableCellRowDensityToInputSizeMap[rowDensity]}\n trailingIcon={validationStateToInputTrailingIconMap[validationState]}\n accessibilityLabel={accessibilityLabel}\n autoCapitalize={autoCapitalize}\n autoCompleteSuggestionType={autoCompleteSuggestionType}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n defaultValue={defaultValue}\n isDisabled={isDisabled}\n isRequired={isRequired}\n keyboardReturnKeyType={keyboardReturnKeyType}\n leadingIcon={leadingIcon}\n maxCharacters={maxCharacters}\n name={name}\n onBlur={onBlur}\n onChange={onChange}\n onClick={onClick}\n onFocus={onFocus}\n onSubmit={castWebType(onSubmit)}\n placeholder={placeholder}\n prefix={prefix}\n suffix={suffix}\n value={value}\n testID={testID}\n trailingButton={trailingButton}\n errorText={errorText}\n successText={successText}\n showHintsAsTooltip={true}\n />\n </Box>\n </CellWrapper>\n </BaseBox>\n </StyledEditableCell>\n );\n};\n\nconst TableEditableDropdownCell = (\n dropdownProps: TableEditableDropdownCellProps,\n): React.ReactElement => {\n const { rowDensity, showStripedRows, backgroundColor } = useTableContext();\n\n return (\n <TableEditableCellContext.Provider value={{ isInsideTableEditableCell: true }}>\n <StyledEditableCell\n role=\"cell\"\n $backgroundColor={backgroundColor}\n $rowDensity={rowDensity}\n {...metaAttribute({ name: MetaConstants.TableCell })}\n >\n <BaseBox\n className=\"cell-wrapper-base\"\n display=\"flex\"\n alignItems=\"center\"\n height=\"100%\"\n width=\"100%\"\n >\n <CellWrapper\n className=\"cell-wrapper\"\n $rowDensity={rowDensity}\n showStripedRows={showStripedRows}\n display=\"flex\"\n alignItems=\"center\"\n flex={1}\n hasPadding={false}\n >\n <Dropdown _width=\"100%\" margin=\"spacing.2\" {...dropdownProps} />\n </CellWrapper>\n </BaseBox>\n </StyledEditableCell>\n </TableEditableCellContext.Provider>\n );\n};\n\nconst TableEditableCell = assignWithoutSideEffects(_TableEditableCell, {\n componentId: ComponentIds.TableEditableCell,\n});\n\nexport { TableEditableCell, TableEditableDropdownCell };\n"],"names":["StyledEditableCell","styled","StyledCell","withConfig","displayName","componentId","_ref","theme","$rowDensity","outline","_objectSpread","getFocusRingStyles","negativeOffset","getEditableInputMargin","_ref2","rowDensity","_TableEditableCell","_ref3","_ref3$validationState","validationState","accessibilityLabel","autoCapitalize","autoCompleteSuggestionType","autoFocus","defaultValue","isDisabled","isRequired","keyboardReturnKeyType","leadingIcon","maxCharacters","name","onBlur","onChange","onClick","onFocus","onSubmit","placeholder","prefix","suffix","value","testID","trailingButton","errorText","successText","_useTableContext","useTableContext","showStripedRows","backgroundColor","_jsx","role","$backgroundColor","metaAttribute","MetaConstants","TableCell","children","BaseBox","className","display","alignItems","height","CellWrapper","flex","hasPadding","Box","margin","width","BaseInput","isTableInputCell","rowDensityToIsTableInputCellMapping","id","type","size","tableEditableCellRowDensityToInputSizeMap","trailingIcon","validationStateToInputTrailingIconMap","castWebType","showHintsAsTooltip","TableEditableDropdownCell","dropdownProps","_useTableContext2","TableEditableCellContext","Provider","isInsideTableEditableCell","Dropdown","_width","TableEditableCell","assignWithoutSideEffects","ComponentIds"],"mappings":"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"}
1
+ {"version":3,"file":"TableEditableCell.web.js","sources":["../../../../../../src/components/Table/TableEditableCell.web.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { CellWrapper, StyledCell } from './TableBody';\nimport { useTableContext } from './TableContext';\nimport type { TableEditableCellProps, TableEditableDropdownCellProps, TableProps } from './types';\nimport {\n rowDensityToIsTableInputCellMapping,\n tableEditableCellRowDensityToInputSizeMap,\n validationStateToInputTrailingIconMap,\n} from './tokens';\nimport { ComponentIds } from './componentIds';\nimport { TableEditableCellContext } from './TableEditableCellContext';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport type { MarginProps } from '~components/Box/BaseBox/types/spacingTypes';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Box } from '~components/Box';\nimport { BaseInput } from '~components/Input/BaseInput';\nimport { castWebType } from '~utils';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { Dropdown } from '~components/Dropdown';\n\nconst StyledEditableCell = styled(StyledCell)<{\n $rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n}>(({ theme, $rowDensity }) => ({\n '&&&': {\n '&:focus-visible': { outline: '1px solid' },\n '&:focus-within': {\n ...($rowDensity !== 'comfortable' ? getFocusRingStyles({ theme, negativeOffset: true }) : {}),\n },\n },\n}));\n\nconst getEditableInputMargin = ({\n rowDensity,\n}: {\n rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n}): MarginProps['margin'] => {\n if (rowDensity === 'comfortable') {\n return ['spacing.4', 'spacing.4'];\n }\n\n return 'spacing.2';\n};\n\nconst _TableEditableCell = ({\n validationState = 'none',\n accessibilityLabel,\n autoCapitalize,\n autoCompleteSuggestionType,\n autoFocus,\n defaultValue,\n isDisabled,\n isRequired,\n keyboardReturnKeyType,\n leadingIcon,\n maxCharacters,\n name,\n onBlur,\n onChange,\n onClick,\n onFocus,\n onSubmit,\n placeholder,\n prefix,\n suffix,\n value,\n testID,\n trailingButton,\n errorText,\n successText,\n}: TableEditableCellProps): React.ReactElement => {\n const { rowDensity, showStripedRows, backgroundColor } = useTableContext();\n\n return (\n <StyledEditableCell\n role=\"cell\"\n $backgroundColor={backgroundColor}\n $rowDensity={rowDensity}\n {...metaAttribute({ name: MetaConstants.TableCell })}\n >\n <BaseBox className=\"cell-wrapper-base\" display=\"flex\" alignItems=\"center\" height=\"100%\">\n <CellWrapper\n className=\"cell-wrapper\"\n $rowDensity={rowDensity}\n showStripedRows={showStripedRows}\n display=\"flex\"\n alignItems=\"center\"\n flex={1}\n hasPadding={false}\n >\n <Box margin={getEditableInputMargin({ rowDensity })} width=\"100%\">\n <BaseInput\n isTableInputCell={rowDensityToIsTableInputCellMapping[rowDensity]}\n validationState={validationState}\n id=\"table-editable-cell-input\"\n type=\"text\"\n size={tableEditableCellRowDensityToInputSizeMap[rowDensity]}\n trailingIcon={validationStateToInputTrailingIconMap[validationState]}\n accessibilityLabel={accessibilityLabel}\n autoCapitalize={autoCapitalize}\n autoCompleteSuggestionType={autoCompleteSuggestionType}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n defaultValue={defaultValue}\n isDisabled={isDisabled}\n isRequired={isRequired}\n keyboardReturnKeyType={keyboardReturnKeyType}\n leadingIcon={leadingIcon}\n maxCharacters={maxCharacters}\n name={name}\n onBlur={onBlur}\n onChange={onChange}\n onClick={onClick}\n onFocus={onFocus}\n onSubmit={castWebType(onSubmit)}\n placeholder={placeholder}\n prefix={prefix}\n suffix={suffix}\n value={value}\n testID={testID}\n trailingButton={trailingButton}\n errorText={errorText}\n successText={successText}\n showHintsAsTooltip={true}\n />\n </Box>\n </CellWrapper>\n </BaseBox>\n </StyledEditableCell>\n );\n};\n\nconst TableEditableDropdownCell = (\n dropdownProps: TableEditableDropdownCellProps,\n): React.ReactElement => {\n const { rowDensity, showStripedRows, backgroundColor } = useTableContext();\n\n return (\n <TableEditableCellContext.Provider value={{ isInsideTableEditableCell: true }}>\n <StyledEditableCell\n role=\"cell\"\n $backgroundColor={backgroundColor}\n $rowDensity={rowDensity}\n {...metaAttribute({ name: MetaConstants.TableCell })}\n >\n <BaseBox\n className=\"cell-wrapper-base\"\n display=\"flex\"\n alignItems=\"center\"\n height=\"100%\"\n width=\"100%\"\n >\n <CellWrapper\n className=\"cell-wrapper\"\n $rowDensity={rowDensity}\n showStripedRows={showStripedRows}\n display=\"flex\"\n alignItems=\"center\"\n flex={1}\n hasPadding={false}\n >\n <Dropdown _width=\"calc(100% - 8px)\" margin=\"spacing.2\" {...dropdownProps} />\n </CellWrapper>\n </BaseBox>\n </StyledEditableCell>\n </TableEditableCellContext.Provider>\n );\n};\n\nconst TableEditableCell = assignWithoutSideEffects(_TableEditableCell, {\n componentId: ComponentIds.TableEditableCell,\n});\n\nexport { TableEditableCell, TableEditableDropdownCell };\n"],"names":["StyledEditableCell","styled","StyledCell","withConfig","displayName","componentId","_ref","theme","$rowDensity","outline","_objectSpread","getFocusRingStyles","negativeOffset","getEditableInputMargin","_ref2","rowDensity","_TableEditableCell","_ref3","_ref3$validationState","validationState","accessibilityLabel","autoCapitalize","autoCompleteSuggestionType","autoFocus","defaultValue","isDisabled","isRequired","keyboardReturnKeyType","leadingIcon","maxCharacters","name","onBlur","onChange","onClick","onFocus","onSubmit","placeholder","prefix","suffix","value","testID","trailingButton","errorText","successText","_useTableContext","useTableContext","showStripedRows","backgroundColor","_jsx","role","$backgroundColor","metaAttribute","MetaConstants","TableCell","children","BaseBox","className","display","alignItems","height","CellWrapper","flex","hasPadding","Box","margin","width","BaseInput","isTableInputCell","rowDensityToIsTableInputCellMapping","id","type","size","tableEditableCellRowDensityToInputSizeMap","trailingIcon","validationStateToInputTrailingIconMap","castWebType","showHintsAsTooltip","TableEditableDropdownCell","dropdownProps","_useTableContext2","TableEditableCellContext","Provider","isInsideTableEditableCell","Dropdown","_width","TableEditableCell","assignWithoutSideEffects","ComponentIds"],"mappings":"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"}
@@ -20,7 +20,7 @@ import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
20
20
  import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
21
21
  import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
22
22
 
23
- var _excluded = ["reverseOrder", "position", "toastOptions", "containerClassName"];
23
+ var _excluded = ["reverseOrder", "position", "offsetBottom", "toastOptions", "containerClassName"];
24
24
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
25
25
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26
26
  var StyledToastWrapper = /*#__PURE__*/styled(BaseBox).withConfig({
@@ -80,6 +80,7 @@ var Toaster = function Toaster(_ref2) {
80
80
  var reverseOrder = _ref2.reverseOrder,
81
81
  _ref2$position = _ref2.position,
82
82
  position = _ref2$position === void 0 ? 'top-center' : _ref2$position,
83
+ offsetBottom = _ref2.offsetBottom,
83
84
  toastOptions = _ref2.toastOptions,
84
85
  containerClassName = _ref2.containerClassName,
85
86
  rest = _objectWithoutProperties(_ref2, _excluded);
@@ -98,7 +99,8 @@ var Toaster = function Toaster(_ref2) {
98
99
  setHasManuallyExpanded = _React$useState4[1];
99
100
  var isMobile = useIsMobile();
100
101
  var minToasts = isMobile ? MIN_TOAST_MOBILE : MIN_TOAST_DESKTOP;
101
- var containerGutter = isMobile ? CONTAINER_GUTTER_MOBILE : CONTAINER_GUTTER_DESKTOP;
102
+ var defaultGutter = isMobile ? CONTAINER_GUTTER_MOBILE : CONTAINER_GUTTER_DESKTOP;
103
+ var bottomGutter = offsetBottom !== null && offsetBottom !== void 0 ? offsetBottom : defaultGutter;
102
104
  var infoToasts = React__default.useMemo(function () {
103
105
  return toasts.filter(function (toast) {
104
106
  return !isPromotionalToast(toast);
@@ -219,11 +221,11 @@ var Toaster = function Toaster(_ref2) {
219
221
  return /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread(_objectSpread({
220
222
  position: "fixed",
221
223
  zIndex: TOAST_Z_INDEX,
222
- top: makeSize(containerGutter),
223
- left: makeSize(containerGutter),
224
- right: makeSize(containerGutter),
225
- bottom: makeSize(containerGutter),
226
- width: "calc(100% - ".concat(containerGutter * 2, "px)"),
224
+ top: makeSize(defaultGutter),
225
+ left: makeSize(defaultGutter),
226
+ right: makeSize(defaultGutter),
227
+ bottom: makeSize(bottomGutter),
228
+ width: "calc(100% - ".concat(defaultGutter * 2, "px)"),
227
229
  maxWidth: makeSize(TOAST_MAX_WIDTH),
228
230
  pointerEvents: "none",
229
231
  className: containerClassName
@@ -304,8 +306,10 @@ var Toaster = function Toaster(_ref2) {
304
306
  })]
305
307
  }));
306
308
  };
307
- var ToastContainer = function ToastContainer() {
309
+ var ToastContainer = function ToastContainer(_ref4) {
310
+ var offsetBottom = _ref4.offsetBottom;
308
311
  return /*#__PURE__*/jsx(Toaster, {
312
+ offsetBottom: offsetBottom,
309
313
  position: "bottom-left"
310
314
  });
311
315
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ToastContainer.web.js","sources":["../../../../../../src/components/Toast/ToastContainer.web.tsx"],"sourcesContent":["import type { ToastPosition, ToasterProps, Toast } from 'react-hot-toast';\nimport { resolveValue, useToaster } from 'react-hot-toast';\nimport React from 'react';\nimport styled from 'styled-components';\nimport {\n PEEKS,\n MAX_TOASTS,\n SCALE_FACTOR,\n GUTTER,\n PEEK_GUTTER,\n TOAST_MAX_WIDTH,\n TOAST_Z_INDEX,\n MIN_TOAST_MOBILE,\n MIN_TOAST_DESKTOP,\n CONTAINER_GUTTER_MOBILE,\n CONTAINER_GUTTER_DESKTOP,\n} from './constants';\nimport { makeMotionTime, makeSize, useTheme } from '~utils';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { Theme } from '~components/BladeProvider';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype CalculateYPositionProps = {\n toast: Toast;\n index: number;\n isExpanded: boolean;\n reverseOrder?: boolean;\n};\n\nconst StyledToastWrapper = styled(BaseBox)<{\n isVisible: boolean;\n index: number;\n isExpanded: boolean;\n isPromotional: boolean;\n}>(({ isVisible, index, isExpanded, isPromotional }) => {\n let opacity = isVisible ? 1 : 0;\n // Only make the PEEKING and MAX_TOASTS toasts visible,\n // Every other toasts should be hidden\n if (index < PEEKS + MAX_TOASTS) {\n opacity = 1;\n } else if (isPromotional || isExpanded) {\n opacity = 1;\n } else {\n opacity = 0;\n }\n\n return {\n '& > *': {\n pointerEvents: opacity === 1 ? 'auto' : 'none',\n },\n opacity,\n };\n});\n\nconst getPositionStyle = (\n position: ToastPosition,\n offset: number,\n scale: number,\n theme: Theme,\n): React.CSSProperties => {\n const top = position.includes('top');\n const verticalStyle: React.CSSProperties = top ? { top: 0 } : { bottom: 0 };\n const horizontalStyle: React.CSSProperties = position.includes('center')\n ? {\n justifyContent: 'center',\n }\n : position.includes('right')\n ? {\n justifyContent: 'flex-end',\n }\n : {};\n\n return {\n left: 0,\n right: 0,\n display: 'flex',\n position: 'absolute',\n transformOrigin: 'center',\n transition: `${makeMotionTime(theme.motion.duration.gentle)} ${theme.motion.easing.standard}`,\n transitionProperty: 'transform, opacity, height',\n transform: `translateY(${offset * (top ? 1 : -1)}px) scale(${scale})`,\n ...verticalStyle,\n ...horizontalStyle,\n };\n};\n\nfunction isPromotionalToast(toast: Toast): boolean {\n // @ts-expect-error\n return toast.type == 'promotional';\n}\n\nconst Toaster: React.FC<ToasterProps> = ({\n reverseOrder,\n position = 'top-center',\n toastOptions,\n containerClassName,\n ...rest\n}) => {\n const { toasts, handlers } = useToaster(toastOptions);\n const { theme } = useTheme();\n const [frontToastHeight, setFrontToastHeight] = React.useState(0);\n const [hasManuallyExpanded, setHasManuallyExpanded] = React.useState(false);\n const isMobile = useIsMobile();\n const minToasts = isMobile ? MIN_TOAST_MOBILE : MIN_TOAST_DESKTOP;\n const containerGutter = isMobile ? CONTAINER_GUTTER_MOBILE : CONTAINER_GUTTER_DESKTOP;\n\n const infoToasts = React.useMemo(() => toasts.filter((toast) => !isPromotionalToast(toast)), [\n toasts,\n ]);\n const promoToasts = React.useMemo(() => toasts.filter((toast) => isPromotionalToast(toast)), [\n toasts,\n ]);\n\n // always keep promo toasts at the bottom of the stack\n const recomputedToasts = React.useMemo(() => [...infoToasts, ...promoToasts], [\n infoToasts,\n promoToasts,\n ]);\n\n const hasPromoToast = promoToasts.length > 0 && promoToasts[0]?.visible;\n const promoToastHeight = promoToasts[0]?.height ?? 0;\n const isExpanded = hasManuallyExpanded || recomputedToasts.length <= minToasts;\n\n React.useLayoutEffect(() => {\n // find the first toast which is visible\n const firstToast = infoToasts.find((t, index) => t.visible && index === 0);\n if (firstToast) {\n setFrontToastHeight(firstToast.height ?? 0);\n }\n }, [infoToasts]);\n\n // calculate total height of all toasts\n const totalHeight = React.useMemo(() => {\n return (\n recomputedToasts\n // only consider visible recomputedToasts\n .filter((toast) => toast.visible)\n .reduce((prevHeight, toast) => prevHeight + (toast.height ?? 0), 0) +\n recomputedToasts.length * GUTTER\n );\n }, [recomputedToasts]);\n\n // Stacking logic explained in detail:\n // https://www.loom.com/share/522d9a445e2f41e1886cce4decb9ab9d?sid=4287acf6-8d44-431b-93e1-c1a0d40a0aba\n //\n // 1. 3 toasts can be stacked on top of each other\n // 2. After 3 toasts, the toasts will be scaled down and peek from behind\n // 3. There can be maximum of 3 toasts peeking from behind\n // 4. After 3 peeking toasts, the toasts will be hidden\n // 5. If there is a promo toast, all toasts will be lifted up\n // 6. Promo toasts will always be on the bottom\n const calculateYPosition = React.useCallback(\n ({ toast, index }: CalculateYPositionProps) => {\n // find the current toast index\n const toastIndex = infoToasts.findIndex((t) => t.id === toast.id);\n // number of toasts before this toast\n const toastsBefore = infoToasts.filter((toast, i) => i < toastIndex && toast.visible).length;\n\n let scale = Math.max(0.7, 1 - toastsBefore * SCALE_FACTOR);\n // first toast should always have a scale of 1\n if (index < MAX_TOASTS) {\n scale = 1;\n }\n\n // y position of toast,\n let offset = infoToasts\n .filter((toast) => toast.visible)\n .slice(0, toastsBefore)\n .reduce((y, toast) => {\n // if the toast is expanded, add the height of the toast + gutter\n if (isExpanded) {\n return y + (toast.height ?? 0) + GUTTER;\n }\n // if the toast is not expanded, add only the peek gutter\n return y + PEEK_GUTTER;\n }, 0);\n\n // lift all info toasts up if there is a promo toast\n if (hasPromoToast) {\n offset += GUTTER + promoToastHeight;\n }\n\n // if this is a promo toast, then put it at the bottom and force the scale to 1\n if (isPromotionalToast(toast)) {\n offset = 0;\n scale = 1;\n }\n\n return { offset, scale: isExpanded ? 1 : scale };\n },\n [hasPromoToast, infoToasts, isExpanded, promoToastHeight],\n );\n\n const handleMouseEnter = (): void => {\n if (isMobile) return;\n setHasManuallyExpanded(true);\n handlers.startPause();\n };\n\n const handleMouseLeave = (): void => {\n if (isMobile) return;\n setHasManuallyExpanded(false);\n handlers.endPause();\n };\n\n const handleToastClick = (): void => {\n if (!isMobile) return;\n setHasManuallyExpanded((prev) => {\n const next = !prev;\n if (next) {\n handlers.startPause();\n } else {\n handlers.endPause();\n }\n return next;\n });\n };\n\n return (\n <BaseBox\n position=\"fixed\"\n zIndex={TOAST_Z_INDEX}\n top={makeSize(containerGutter)}\n left={makeSize(containerGutter)}\n right={makeSize(containerGutter)}\n bottom={makeSize(containerGutter)}\n width={`calc(100% - ${containerGutter * 2}px)`}\n maxWidth={makeSize(TOAST_MAX_WIDTH)}\n pointerEvents=\"none\"\n className={containerClassName}\n {...metaAttribute({ name: MetaConstants.ToastContainer })}\n {...makeAnalyticsAttribute(rest)}\n >\n {/*\n * Mouseover container,\n * fills in the gap between toasts so that mouseleave doesn't trigger in the gaps\n */}\n <BaseBox\n position=\"absolute\"\n bottom={`${promoToastHeight}px`}\n left=\"0px\"\n width=\"100%\"\n pointerEvents={isExpanded ? 'all' : 'none'}\n height={makeSize(isExpanded ? totalHeight - promoToastHeight : frontToastHeight)}\n zIndex={-100}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onClick={handleToastClick}\n {...metaAttribute({ testID: 'toast-mouseover-container' })}\n />\n {recomputedToasts.map((toast, index) => {\n const toastPosition = toast.position ?? position;\n const isPromotional = isPromotionalToast(toast);\n const { offset, scale } = calculateYPosition({\n toast,\n isExpanded,\n reverseOrder,\n index,\n });\n const positionStyle = getPositionStyle(toastPosition, offset, scale, theme);\n // recalculate height of toast\n const ref = (el: HTMLDivElement): void => {\n if (el && typeof toast.height !== 'number') {\n const height = el.getBoundingClientRect().height;\n handlers.updateHeight(toast.id, height);\n }\n };\n\n let toastHeight = toast.height;\n if (index > MAX_TOASTS - 1 && !isPromotional) {\n toastHeight = frontToastHeight;\n }\n if (isExpanded) {\n toastHeight = toast.height;\n }\n\n return (\n <StyledToastWrapper\n key={toast.id}\n index={index}\n ref={ref}\n isExpanded={isExpanded}\n isVisible={toast.visible}\n isPromotional={isPromotional}\n style={{\n ...positionStyle,\n zIndex: -1 * index,\n height: toastHeight,\n overflow: 'hidden',\n }}\n onMouseEnter={() => {\n if (isPromotional) return;\n handleMouseEnter();\n }}\n onMouseLeave={() => {\n if (isPromotional) return;\n handleMouseLeave();\n }}\n onClick={() => {\n if (isPromotional) return;\n handleToastClick();\n }}\n >\n <BaseBox height=\"fit-content\" width=\"100%\">\n {resolveValue(toast.message, { ...toast, index })}\n </BaseBox>\n </StyledToastWrapper>\n );\n })}\n </BaseBox>\n );\n};\n\nconst ToastContainer = (): React.ReactElement => {\n return <Toaster position=\"bottom-left\" />;\n};\n\nexport { ToastContainer };\n"],"names":["StyledToastWrapper","styled","BaseBox","withConfig","displayName","componentId","_ref","isVisible","index","isExpanded","isPromotional","opacity","PEEKS","MAX_TOASTS","pointerEvents","getPositionStyle","position","offset","scale","theme","top","includes","verticalStyle","bottom","horizontalStyle","justifyContent","_objectSpread","left","right","display","transformOrigin","transition","concat","makeMotionTime","motion","duration","gentle","easing","standard","transitionProperty","transform","isPromotionalToast","toast","type","Toaster","_ref2","_promoToasts$","_promoToasts$0$height","_promoToasts$2","reverseOrder","_ref2$position","toastOptions","containerClassName","rest","_objectWithoutProperties","_excluded","_useToaster","useToaster","toasts","handlers","_useTheme","useTheme","_React$useState","React","useState","_React$useState2","_slicedToArray","frontToastHeight","setFrontToastHeight","_React$useState3","_React$useState4","hasManuallyExpanded","setHasManuallyExpanded","isMobile","useIsMobile","minToasts","MIN_TOAST_MOBILE","MIN_TOAST_DESKTOP","containerGutter","CONTAINER_GUTTER_MOBILE","CONTAINER_GUTTER_DESKTOP","infoToasts","useMemo","filter","promoToasts","recomputedToasts","_toConsumableArray","hasPromoToast","length","visible","promoToastHeight","height","useLayoutEffect","firstToast","find","t","_firstToast$height","totalHeight","reduce","prevHeight","_toast$height","GUTTER","calculateYPosition","useCallback","_ref3","toastIndex","findIndex","id","toastsBefore","i","Math","max","SCALE_FACTOR","slice","y","_toast$height2","PEEK_GUTTER","handleMouseEnter","startPause","handleMouseLeave","endPause","handleToastClick","prev","next","_jsxs","zIndex","TOAST_Z_INDEX","makeSize","width","maxWidth","TOAST_MAX_WIDTH","className","metaAttribute","name","MetaConstants","ToastContainer","makeAnalyticsAttribute","children","_jsx","onMouseEnter","onMouseLeave","onClick","testID","map","_toast$position","toastPosition","_calculateYPosition","positionStyle","ref","el","getBoundingClientRect","updateHeight","toastHeight","style","overflow","resolveValue","message"],"mappings":"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"}
1
+ {"version":3,"file":"ToastContainer.web.js","sources":["../../../../../../src/components/Toast/ToastContainer.web.tsx"],"sourcesContent":["import type { ToastPosition, ToasterProps, Toast } from 'react-hot-toast';\nimport { resolveValue, useToaster } from 'react-hot-toast';\nimport React from 'react';\nimport styled from 'styled-components';\nimport {\n PEEKS,\n MAX_TOASTS,\n SCALE_FACTOR,\n GUTTER,\n PEEK_GUTTER,\n TOAST_MAX_WIDTH,\n TOAST_Z_INDEX,\n MIN_TOAST_MOBILE,\n MIN_TOAST_DESKTOP,\n CONTAINER_GUTTER_MOBILE,\n CONTAINER_GUTTER_DESKTOP,\n} from './constants';\nimport { makeMotionTime, makeSize, useTheme } from '~utils';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { Theme } from '~components/BladeProvider';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype CalculateYPositionProps = {\n toast: Toast;\n index: number;\n isExpanded: boolean;\n reverseOrder?: boolean;\n};\n\nconst StyledToastWrapper = styled(BaseBox)<{\n isVisible: boolean;\n index: number;\n isExpanded: boolean;\n isPromotional: boolean;\n}>(({ isVisible, index, isExpanded, isPromotional }) => {\n let opacity: number = isVisible ? 1 : 0;\n // Only make the PEEKING and MAX_TOASTS toasts visible,\n // Every other toasts should be hidden\n if (index < PEEKS + MAX_TOASTS) {\n opacity = 1;\n } else if (isPromotional || isExpanded) {\n opacity = 1;\n } else {\n opacity = 0;\n }\n\n return {\n '& > *': {\n pointerEvents: opacity === 1 ? 'auto' : 'none',\n },\n opacity,\n };\n});\n\nconst getPositionStyle = (\n position: ToastPosition,\n offset: number,\n scale: number,\n theme: Theme,\n): React.CSSProperties => {\n const top = position.includes('top');\n const verticalStyle: React.CSSProperties = top ? { top: 0 } : { bottom: 0 };\n const horizontalStyle: React.CSSProperties = position.includes('center')\n ? {\n justifyContent: 'center',\n }\n : position.includes('right')\n ? {\n justifyContent: 'flex-end',\n }\n : {};\n\n return {\n left: 0,\n right: 0,\n display: 'flex',\n position: 'absolute',\n transformOrigin: 'center',\n transition: `${makeMotionTime(theme.motion.duration.gentle)} ${theme.motion.easing.standard}`,\n transitionProperty: 'transform, opacity, height',\n transform: `translateY(${offset * (top ? 1 : -1)}px) scale(${scale})`,\n ...verticalStyle,\n ...horizontalStyle,\n };\n};\n\nfunction isPromotionalToast(toast: Toast): boolean {\n // @ts-expect-error\n return toast.type == 'promotional';\n}\n\nconst Toaster: React.FC<ToasterProps & { offsetBottom?: number }> = ({\n reverseOrder,\n position = 'top-center',\n offsetBottom,\n toastOptions,\n containerClassName,\n ...rest\n}) => {\n const { toasts, handlers } = useToaster(toastOptions);\n const { theme } = useTheme();\n const [frontToastHeight, setFrontToastHeight] = React.useState(0);\n const [hasManuallyExpanded, setHasManuallyExpanded] = React.useState(false);\n const isMobile = useIsMobile();\n const minToasts = isMobile ? MIN_TOAST_MOBILE : MIN_TOAST_DESKTOP;\n const defaultGutter = isMobile ? CONTAINER_GUTTER_MOBILE : CONTAINER_GUTTER_DESKTOP;\n const bottomGutter = offsetBottom ?? defaultGutter;\n\n const infoToasts = React.useMemo(() => toasts.filter((toast) => !isPromotionalToast(toast)), [\n toasts,\n ]);\n const promoToasts = React.useMemo(() => toasts.filter((toast) => isPromotionalToast(toast)), [\n toasts,\n ]);\n\n // always keep promo toasts at the bottom of the stack\n const recomputedToasts = React.useMemo(() => [...infoToasts, ...promoToasts], [\n infoToasts,\n promoToasts,\n ]);\n\n const hasPromoToast = promoToasts.length > 0 && promoToasts[0]?.visible;\n const promoToastHeight = promoToasts[0]?.height ?? 0;\n const isExpanded = hasManuallyExpanded || recomputedToasts.length <= minToasts;\n\n React.useLayoutEffect(() => {\n // find the first toast which is visible\n const firstToast = infoToasts.find((t, index) => t.visible && index === 0);\n if (firstToast) {\n setFrontToastHeight(firstToast.height ?? 0);\n }\n }, [infoToasts]);\n\n // calculate total height of all toasts\n const totalHeight = React.useMemo(() => {\n return (\n recomputedToasts\n // only consider visible recomputedToasts\n .filter((toast) => toast.visible)\n .reduce((prevHeight, toast) => prevHeight + (toast.height ?? 0), 0) +\n recomputedToasts.length * GUTTER\n );\n }, [recomputedToasts]);\n\n // Stacking logic explained in detail:\n // https://www.loom.com/share/522d9a445e2f41e1886cce4decb9ab9d?sid=4287acf6-8d44-431b-93e1-c1a0d40a0aba\n //\n // 1. 3 toasts can be stacked on top of each other\n // 2. After 3 toasts, the toasts will be scaled down and peek from behind\n // 3. There can be maximum of 3 toasts peeking from behind\n // 4. After 3 peeking toasts, the toasts will be hidden\n // 5. If there is a promo toast, all toasts will be lifted up\n // 6. Promo toasts will always be on the bottom\n const calculateYPosition = React.useCallback(\n ({ toast, index }: CalculateYPositionProps) => {\n // find the current toast index\n const toastIndex = infoToasts.findIndex((t) => t.id === toast.id);\n // number of toasts before this toast\n const toastsBefore = infoToasts.filter((toast, i) => i < toastIndex && toast.visible).length;\n\n let scale = Math.max(0.7, 1 - toastsBefore * SCALE_FACTOR);\n // first toast should always have a scale of 1\n if (index < MAX_TOASTS) {\n scale = 1;\n }\n\n // y position of toast,\n let offset = infoToasts\n .filter((toast) => toast.visible)\n .slice(0, toastsBefore)\n .reduce((y, toast) => {\n // if the toast is expanded, add the height of the toast + gutter\n if (isExpanded) {\n return y + (toast.height ?? 0) + GUTTER;\n }\n // if the toast is not expanded, add only the peek gutter\n return y + PEEK_GUTTER;\n }, 0);\n\n // lift all info toasts up if there is a promo toast\n if (hasPromoToast) {\n offset += GUTTER + promoToastHeight;\n }\n\n // if this is a promo toast, then put it at the bottom and force the scale to 1\n if (isPromotionalToast(toast)) {\n offset = 0;\n scale = 1;\n }\n\n return { offset, scale: isExpanded ? 1 : scale };\n },\n [hasPromoToast, infoToasts, isExpanded, promoToastHeight],\n );\n\n const handleMouseEnter = (): void => {\n if (isMobile) return;\n setHasManuallyExpanded(true);\n handlers.startPause();\n };\n\n const handleMouseLeave = (): void => {\n if (isMobile) return;\n setHasManuallyExpanded(false);\n handlers.endPause();\n };\n\n const handleToastClick = (): void => {\n if (!isMobile) return;\n setHasManuallyExpanded((prev) => {\n const next = !prev;\n if (next) {\n handlers.startPause();\n } else {\n handlers.endPause();\n }\n return next;\n });\n };\n\n return (\n <BaseBox\n position=\"fixed\"\n zIndex={TOAST_Z_INDEX}\n top={makeSize(defaultGutter)}\n left={makeSize(defaultGutter)}\n right={makeSize(defaultGutter)}\n bottom={makeSize(bottomGutter)}\n width={`calc(100% - ${defaultGutter * 2}px)`}\n maxWidth={makeSize(TOAST_MAX_WIDTH)}\n pointerEvents=\"none\"\n className={containerClassName}\n {...metaAttribute({ name: MetaConstants.ToastContainer })}\n {...makeAnalyticsAttribute(rest)}\n >\n {/*\n * Mouseover container,\n * fills in the gap between toasts so that mouseleave doesn't trigger in the gaps\n */}\n <BaseBox\n position=\"absolute\"\n bottom={`${promoToastHeight}px`}\n left=\"0px\"\n width=\"100%\"\n pointerEvents={isExpanded ? 'all' : 'none'}\n height={makeSize(isExpanded ? totalHeight - promoToastHeight : frontToastHeight)}\n zIndex={-100}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onClick={handleToastClick}\n {...metaAttribute({ testID: 'toast-mouseover-container' })}\n />\n {recomputedToasts.map((toast, index) => {\n const toastPosition = toast.position ?? position;\n const isPromotional = isPromotionalToast(toast);\n const { offset, scale } = calculateYPosition({\n toast,\n isExpanded,\n reverseOrder,\n index,\n });\n const positionStyle = getPositionStyle(toastPosition, offset, scale, theme);\n // recalculate height of toast\n const ref = (el: HTMLDivElement): void => {\n if (el && typeof toast.height !== 'number') {\n const height = el.getBoundingClientRect().height;\n handlers.updateHeight(toast.id, height);\n }\n };\n\n let toastHeight = toast.height;\n if (index > MAX_TOASTS - 1 && !isPromotional) {\n toastHeight = frontToastHeight;\n }\n if (isExpanded) {\n toastHeight = toast.height;\n }\n\n return (\n <StyledToastWrapper\n key={toast.id}\n index={index}\n ref={ref}\n isExpanded={isExpanded}\n isVisible={toast.visible}\n isPromotional={isPromotional}\n style={{\n ...positionStyle,\n zIndex: -1 * index,\n height: toastHeight,\n overflow: 'hidden',\n }}\n onMouseEnter={() => {\n if (isPromotional) return;\n handleMouseEnter();\n }}\n onMouseLeave={() => {\n if (isPromotional) return;\n handleMouseLeave();\n }}\n onClick={() => {\n if (isPromotional) return;\n handleToastClick();\n }}\n >\n <BaseBox height=\"fit-content\" width=\"100%\">\n {resolveValue(toast.message, { ...toast, index })}\n </BaseBox>\n </StyledToastWrapper>\n );\n })}\n </BaseBox>\n );\n};\n\ntype ToastContainerProps = {\n /**\n * The offset from the bottom of the screen to the toast container.\n * This is useful when you want to position the toast container at a different\n * position from the bottom of the screen.\n *\n * @default isMobile ? 16px : 24px\n */\n offsetBottom?: number;\n};\n\nconst ToastContainer = ({ offsetBottom }: ToastContainerProps): React.ReactElement => {\n return <Toaster offsetBottom={offsetBottom} position=\"bottom-left\" />;\n};\n\nexport { ToastContainer };\n"],"names":["StyledToastWrapper","styled","BaseBox","withConfig","displayName","componentId","_ref","isVisible","index","isExpanded","isPromotional","opacity","PEEKS","MAX_TOASTS","pointerEvents","getPositionStyle","position","offset","scale","theme","top","includes","verticalStyle","bottom","horizontalStyle","justifyContent","_objectSpread","left","right","display","transformOrigin","transition","concat","makeMotionTime","motion","duration","gentle","easing","standard","transitionProperty","transform","isPromotionalToast","toast","type","Toaster","_ref2","_promoToasts$","_promoToasts$0$height","_promoToasts$2","reverseOrder","_ref2$position","offsetBottom","toastOptions","containerClassName","rest","_objectWithoutProperties","_excluded","_useToaster","useToaster","toasts","handlers","_useTheme","useTheme","_React$useState","React","useState","_React$useState2","_slicedToArray","frontToastHeight","setFrontToastHeight","_React$useState3","_React$useState4","hasManuallyExpanded","setHasManuallyExpanded","isMobile","useIsMobile","minToasts","MIN_TOAST_MOBILE","MIN_TOAST_DESKTOP","defaultGutter","CONTAINER_GUTTER_MOBILE","CONTAINER_GUTTER_DESKTOP","bottomGutter","infoToasts","useMemo","filter","promoToasts","recomputedToasts","_toConsumableArray","hasPromoToast","length","visible","promoToastHeight","height","useLayoutEffect","firstToast","find","t","_firstToast$height","totalHeight","reduce","prevHeight","_toast$height","GUTTER","calculateYPosition","useCallback","_ref3","toastIndex","findIndex","id","toastsBefore","i","Math","max","SCALE_FACTOR","slice","y","_toast$height2","PEEK_GUTTER","handleMouseEnter","startPause","handleMouseLeave","endPause","handleToastClick","prev","next","_jsxs","zIndex","TOAST_Z_INDEX","makeSize","width","maxWidth","TOAST_MAX_WIDTH","className","metaAttribute","name","MetaConstants","ToastContainer","makeAnalyticsAttribute","children","_jsx","onMouseEnter","onMouseLeave","onClick","testID","map","_toast$position","toastPosition","_calculateYPosition","positionStyle","ref","el","getBoundingClientRect","updateHeight","toastHeight","style","overflow","resolveValue","message","_ref4"],"mappings":"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"}
@@ -178,7 +178,7 @@ var TableEditableDropdownCell = function TableEditableDropdownCell(dropdownProps
178
178
  flex: 1,
179
179
  hasPadding: false,
180
180
  children: /*#__PURE__*/jsx(Dropdown, _objectSpread({
181
- _width: "100%",
181
+ _width: "calc(100% - 8px)",
182
182
  margin: "spacing.2"
183
183
  }, dropdownProps))
184
184
  })
@@ -1 +1 @@
1
- {"version":3,"file":"TableEditableCell.web.js","sources":["../../../../../../src/components/Table/TableEditableCell.web.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { CellWrapper, StyledCell } from './TableBody';\nimport { useTableContext } from './TableContext';\nimport type { TableEditableCellProps, TableEditableDropdownCellProps, TableProps } from './types';\nimport {\n rowDensityToIsTableInputCellMapping,\n tableEditableCellRowDensityToInputSizeMap,\n validationStateToInputTrailingIconMap,\n} from './tokens';\nimport { ComponentIds } from './componentIds';\nimport { TableEditableCellContext } from './TableEditableCellContext';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport type { MarginProps } from '~components/Box/BaseBox/types/spacingTypes';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Box } from '~components/Box';\nimport { BaseInput } from '~components/Input/BaseInput';\nimport { castWebType } from '~utils';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { Dropdown } from '~components/Dropdown';\n\nconst StyledEditableCell = styled(StyledCell)<{\n $rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n}>(({ theme, $rowDensity }) => ({\n '&&&': {\n '&:focus-visible': { outline: '1px solid' },\n '&:focus-within': {\n ...($rowDensity !== 'comfortable' ? getFocusRingStyles({ theme, negativeOffset: true }) : {}),\n },\n },\n}));\n\nconst getEditableInputMargin = ({\n rowDensity,\n}: {\n rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n}): MarginProps['margin'] => {\n if (rowDensity === 'comfortable') {\n return ['spacing.4', 'spacing.4'];\n }\n\n return 'spacing.2';\n};\n\nconst _TableEditableCell = ({\n validationState = 'none',\n accessibilityLabel,\n autoCapitalize,\n autoCompleteSuggestionType,\n autoFocus,\n defaultValue,\n isDisabled,\n isRequired,\n keyboardReturnKeyType,\n leadingIcon,\n maxCharacters,\n name,\n onBlur,\n onChange,\n onClick,\n onFocus,\n onSubmit,\n placeholder,\n prefix,\n suffix,\n value,\n testID,\n trailingButton,\n errorText,\n successText,\n}: TableEditableCellProps): React.ReactElement => {\n const { rowDensity, showStripedRows, backgroundColor } = useTableContext();\n\n return (\n <StyledEditableCell\n role=\"cell\"\n $backgroundColor={backgroundColor}\n $rowDensity={rowDensity}\n {...metaAttribute({ name: MetaConstants.TableCell })}\n >\n <BaseBox className=\"cell-wrapper-base\" display=\"flex\" alignItems=\"center\" height=\"100%\">\n <CellWrapper\n className=\"cell-wrapper\"\n $rowDensity={rowDensity}\n showStripedRows={showStripedRows}\n display=\"flex\"\n alignItems=\"center\"\n flex={1}\n hasPadding={false}\n >\n <Box margin={getEditableInputMargin({ rowDensity })} width=\"100%\">\n <BaseInput\n isTableInputCell={rowDensityToIsTableInputCellMapping[rowDensity]}\n validationState={validationState}\n id=\"table-editable-cell-input\"\n type=\"text\"\n size={tableEditableCellRowDensityToInputSizeMap[rowDensity]}\n trailingIcon={validationStateToInputTrailingIconMap[validationState]}\n accessibilityLabel={accessibilityLabel}\n autoCapitalize={autoCapitalize}\n autoCompleteSuggestionType={autoCompleteSuggestionType}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n defaultValue={defaultValue}\n isDisabled={isDisabled}\n isRequired={isRequired}\n keyboardReturnKeyType={keyboardReturnKeyType}\n leadingIcon={leadingIcon}\n maxCharacters={maxCharacters}\n name={name}\n onBlur={onBlur}\n onChange={onChange}\n onClick={onClick}\n onFocus={onFocus}\n onSubmit={castWebType(onSubmit)}\n placeholder={placeholder}\n prefix={prefix}\n suffix={suffix}\n value={value}\n testID={testID}\n trailingButton={trailingButton}\n errorText={errorText}\n successText={successText}\n showHintsAsTooltip={true}\n />\n </Box>\n </CellWrapper>\n </BaseBox>\n </StyledEditableCell>\n );\n};\n\nconst TableEditableDropdownCell = (\n dropdownProps: TableEditableDropdownCellProps,\n): React.ReactElement => {\n const { rowDensity, showStripedRows, backgroundColor } = useTableContext();\n\n return (\n <TableEditableCellContext.Provider value={{ isInsideTableEditableCell: true }}>\n <StyledEditableCell\n role=\"cell\"\n $backgroundColor={backgroundColor}\n $rowDensity={rowDensity}\n {...metaAttribute({ name: MetaConstants.TableCell })}\n >\n <BaseBox\n className=\"cell-wrapper-base\"\n display=\"flex\"\n alignItems=\"center\"\n height=\"100%\"\n width=\"100%\"\n >\n <CellWrapper\n className=\"cell-wrapper\"\n $rowDensity={rowDensity}\n showStripedRows={showStripedRows}\n display=\"flex\"\n alignItems=\"center\"\n flex={1}\n hasPadding={false}\n >\n <Dropdown _width=\"100%\" margin=\"spacing.2\" {...dropdownProps} />\n </CellWrapper>\n </BaseBox>\n </StyledEditableCell>\n </TableEditableCellContext.Provider>\n );\n};\n\nconst TableEditableCell = assignWithoutSideEffects(_TableEditableCell, {\n componentId: ComponentIds.TableEditableCell,\n});\n\nexport { TableEditableCell, TableEditableDropdownCell };\n"],"names":["StyledEditableCell","styled","StyledCell","withConfig","displayName","componentId","_ref","theme","$rowDensity","outline","_objectSpread","getFocusRingStyles","negativeOffset","getEditableInputMargin","_ref2","rowDensity","_TableEditableCell","_ref3","_ref3$validationState","validationState","accessibilityLabel","autoCapitalize","autoCompleteSuggestionType","autoFocus","defaultValue","isDisabled","isRequired","keyboardReturnKeyType","leadingIcon","maxCharacters","name","onBlur","onChange","onClick","onFocus","onSubmit","placeholder","prefix","suffix","value","testID","trailingButton","errorText","successText","_useTableContext","useTableContext","showStripedRows","backgroundColor","_jsx","role","$backgroundColor","metaAttribute","MetaConstants","TableCell","children","BaseBox","className","display","alignItems","height","CellWrapper","flex","hasPadding","Box","margin","width","BaseInput","isTableInputCell","rowDensityToIsTableInputCellMapping","id","type","size","tableEditableCellRowDensityToInputSizeMap","trailingIcon","validationStateToInputTrailingIconMap","castWebType","showHintsAsTooltip","TableEditableDropdownCell","dropdownProps","_useTableContext2","TableEditableCellContext","Provider","isInsideTableEditableCell","Dropdown","_width","TableEditableCell","assignWithoutSideEffects","ComponentIds"],"mappings":"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"}
1
+ {"version":3,"file":"TableEditableCell.web.js","sources":["../../../../../../src/components/Table/TableEditableCell.web.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { CellWrapper, StyledCell } from './TableBody';\nimport { useTableContext } from './TableContext';\nimport type { TableEditableCellProps, TableEditableDropdownCellProps, TableProps } from './types';\nimport {\n rowDensityToIsTableInputCellMapping,\n tableEditableCellRowDensityToInputSizeMap,\n validationStateToInputTrailingIconMap,\n} from './tokens';\nimport { ComponentIds } from './componentIds';\nimport { TableEditableCellContext } from './TableEditableCellContext';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport type { MarginProps } from '~components/Box/BaseBox/types/spacingTypes';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Box } from '~components/Box';\nimport { BaseInput } from '~components/Input/BaseInput';\nimport { castWebType } from '~utils';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { Dropdown } from '~components/Dropdown';\n\nconst StyledEditableCell = styled(StyledCell)<{\n $rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n}>(({ theme, $rowDensity }) => ({\n '&&&': {\n '&:focus-visible': { outline: '1px solid' },\n '&:focus-within': {\n ...($rowDensity !== 'comfortable' ? getFocusRingStyles({ theme, negativeOffset: true }) : {}),\n },\n },\n}));\n\nconst getEditableInputMargin = ({\n rowDensity,\n}: {\n rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n}): MarginProps['margin'] => {\n if (rowDensity === 'comfortable') {\n return ['spacing.4', 'spacing.4'];\n }\n\n return 'spacing.2';\n};\n\nconst _TableEditableCell = ({\n validationState = 'none',\n accessibilityLabel,\n autoCapitalize,\n autoCompleteSuggestionType,\n autoFocus,\n defaultValue,\n isDisabled,\n isRequired,\n keyboardReturnKeyType,\n leadingIcon,\n maxCharacters,\n name,\n onBlur,\n onChange,\n onClick,\n onFocus,\n onSubmit,\n placeholder,\n prefix,\n suffix,\n value,\n testID,\n trailingButton,\n errorText,\n successText,\n}: TableEditableCellProps): React.ReactElement => {\n const { rowDensity, showStripedRows, backgroundColor } = useTableContext();\n\n return (\n <StyledEditableCell\n role=\"cell\"\n $backgroundColor={backgroundColor}\n $rowDensity={rowDensity}\n {...metaAttribute({ name: MetaConstants.TableCell })}\n >\n <BaseBox className=\"cell-wrapper-base\" display=\"flex\" alignItems=\"center\" height=\"100%\">\n <CellWrapper\n className=\"cell-wrapper\"\n $rowDensity={rowDensity}\n showStripedRows={showStripedRows}\n display=\"flex\"\n alignItems=\"center\"\n flex={1}\n hasPadding={false}\n >\n <Box margin={getEditableInputMargin({ rowDensity })} width=\"100%\">\n <BaseInput\n isTableInputCell={rowDensityToIsTableInputCellMapping[rowDensity]}\n validationState={validationState}\n id=\"table-editable-cell-input\"\n type=\"text\"\n size={tableEditableCellRowDensityToInputSizeMap[rowDensity]}\n trailingIcon={validationStateToInputTrailingIconMap[validationState]}\n accessibilityLabel={accessibilityLabel}\n autoCapitalize={autoCapitalize}\n autoCompleteSuggestionType={autoCompleteSuggestionType}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n defaultValue={defaultValue}\n isDisabled={isDisabled}\n isRequired={isRequired}\n keyboardReturnKeyType={keyboardReturnKeyType}\n leadingIcon={leadingIcon}\n maxCharacters={maxCharacters}\n name={name}\n onBlur={onBlur}\n onChange={onChange}\n onClick={onClick}\n onFocus={onFocus}\n onSubmit={castWebType(onSubmit)}\n placeholder={placeholder}\n prefix={prefix}\n suffix={suffix}\n value={value}\n testID={testID}\n trailingButton={trailingButton}\n errorText={errorText}\n successText={successText}\n showHintsAsTooltip={true}\n />\n </Box>\n </CellWrapper>\n </BaseBox>\n </StyledEditableCell>\n );\n};\n\nconst TableEditableDropdownCell = (\n dropdownProps: TableEditableDropdownCellProps,\n): React.ReactElement => {\n const { rowDensity, showStripedRows, backgroundColor } = useTableContext();\n\n return (\n <TableEditableCellContext.Provider value={{ isInsideTableEditableCell: true }}>\n <StyledEditableCell\n role=\"cell\"\n $backgroundColor={backgroundColor}\n $rowDensity={rowDensity}\n {...metaAttribute({ name: MetaConstants.TableCell })}\n >\n <BaseBox\n className=\"cell-wrapper-base\"\n display=\"flex\"\n alignItems=\"center\"\n height=\"100%\"\n width=\"100%\"\n >\n <CellWrapper\n className=\"cell-wrapper\"\n $rowDensity={rowDensity}\n showStripedRows={showStripedRows}\n display=\"flex\"\n alignItems=\"center\"\n flex={1}\n hasPadding={false}\n >\n <Dropdown _width=\"calc(100% - 8px)\" margin=\"spacing.2\" {...dropdownProps} />\n </CellWrapper>\n </BaseBox>\n </StyledEditableCell>\n </TableEditableCellContext.Provider>\n );\n};\n\nconst TableEditableCell = assignWithoutSideEffects(_TableEditableCell, {\n componentId: ComponentIds.TableEditableCell,\n});\n\nexport { TableEditableCell, TableEditableDropdownCell };\n"],"names":["StyledEditableCell","styled","StyledCell","withConfig","displayName","componentId","_ref","theme","$rowDensity","outline","_objectSpread","getFocusRingStyles","negativeOffset","getEditableInputMargin","_ref2","rowDensity","_TableEditableCell","_ref3","_ref3$validationState","validationState","accessibilityLabel","autoCapitalize","autoCompleteSuggestionType","autoFocus","defaultValue","isDisabled","isRequired","keyboardReturnKeyType","leadingIcon","maxCharacters","name","onBlur","onChange","onClick","onFocus","onSubmit","placeholder","prefix","suffix","value","testID","trailingButton","errorText","successText","_useTableContext","useTableContext","showStripedRows","backgroundColor","_jsx","role","$backgroundColor","metaAttribute","MetaConstants","TableCell","children","BaseBox","className","display","alignItems","height","CellWrapper","flex","hasPadding","Box","margin","width","BaseInput","isTableInputCell","rowDensityToIsTableInputCellMapping","id","type","size","tableEditableCellRowDensityToInputSizeMap","trailingIcon","validationStateToInputTrailingIconMap","castWebType","showHintsAsTooltip","TableEditableDropdownCell","dropdownProps","_useTableContext2","TableEditableCellContext","Provider","isInsideTableEditableCell","Dropdown","_width","TableEditableCell","assignWithoutSideEffects","ComponentIds"],"mappings":"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"}
@@ -20,7 +20,7 @@ import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
20
20
  import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
21
21
  import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
22
22
 
23
- var _excluded = ["reverseOrder", "position", "toastOptions", "containerClassName"];
23
+ var _excluded = ["reverseOrder", "position", "offsetBottom", "toastOptions", "containerClassName"];
24
24
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
25
25
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26
26
  var StyledToastWrapper = /*#__PURE__*/styled(BaseBox).withConfig({
@@ -80,6 +80,7 @@ var Toaster = function Toaster(_ref2) {
80
80
  var reverseOrder = _ref2.reverseOrder,
81
81
  _ref2$position = _ref2.position,
82
82
  position = _ref2$position === void 0 ? 'top-center' : _ref2$position,
83
+ offsetBottom = _ref2.offsetBottom,
83
84
  toastOptions = _ref2.toastOptions,
84
85
  containerClassName = _ref2.containerClassName,
85
86
  rest = _objectWithoutProperties(_ref2, _excluded);
@@ -98,7 +99,8 @@ var Toaster = function Toaster(_ref2) {
98
99
  setHasManuallyExpanded = _React$useState4[1];
99
100
  var isMobile = useIsMobile();
100
101
  var minToasts = isMobile ? MIN_TOAST_MOBILE : MIN_TOAST_DESKTOP;
101
- var containerGutter = isMobile ? CONTAINER_GUTTER_MOBILE : CONTAINER_GUTTER_DESKTOP;
102
+ var defaultGutter = isMobile ? CONTAINER_GUTTER_MOBILE : CONTAINER_GUTTER_DESKTOP;
103
+ var bottomGutter = offsetBottom !== null && offsetBottom !== void 0 ? offsetBottom : defaultGutter;
102
104
  var infoToasts = React__default.useMemo(function () {
103
105
  return toasts.filter(function (toast) {
104
106
  return !isPromotionalToast(toast);
@@ -219,11 +221,11 @@ var Toaster = function Toaster(_ref2) {
219
221
  return /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread(_objectSpread({
220
222
  position: "fixed",
221
223
  zIndex: TOAST_Z_INDEX,
222
- top: makeSize(containerGutter),
223
- left: makeSize(containerGutter),
224
- right: makeSize(containerGutter),
225
- bottom: makeSize(containerGutter),
226
- width: "calc(100% - ".concat(containerGutter * 2, "px)"),
224
+ top: makeSize(defaultGutter),
225
+ left: makeSize(defaultGutter),
226
+ right: makeSize(defaultGutter),
227
+ bottom: makeSize(bottomGutter),
228
+ width: "calc(100% - ".concat(defaultGutter * 2, "px)"),
227
229
  maxWidth: makeSize(TOAST_MAX_WIDTH),
228
230
  pointerEvents: "none",
229
231
  className: containerClassName
@@ -304,8 +306,10 @@ var Toaster = function Toaster(_ref2) {
304
306
  })]
305
307
  }));
306
308
  };
307
- var ToastContainer = function ToastContainer() {
309
+ var ToastContainer = function ToastContainer(_ref4) {
310
+ var offsetBottom = _ref4.offsetBottom;
308
311
  return /*#__PURE__*/jsx(Toaster, {
312
+ offsetBottom: offsetBottom,
309
313
  position: "bottom-left"
310
314
  });
311
315
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ToastContainer.web.js","sources":["../../../../../../src/components/Toast/ToastContainer.web.tsx"],"sourcesContent":["import type { ToastPosition, ToasterProps, Toast } from 'react-hot-toast';\nimport { resolveValue, useToaster } from 'react-hot-toast';\nimport React from 'react';\nimport styled from 'styled-components';\nimport {\n PEEKS,\n MAX_TOASTS,\n SCALE_FACTOR,\n GUTTER,\n PEEK_GUTTER,\n TOAST_MAX_WIDTH,\n TOAST_Z_INDEX,\n MIN_TOAST_MOBILE,\n MIN_TOAST_DESKTOP,\n CONTAINER_GUTTER_MOBILE,\n CONTAINER_GUTTER_DESKTOP,\n} from './constants';\nimport { makeMotionTime, makeSize, useTheme } from '~utils';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { Theme } from '~components/BladeProvider';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype CalculateYPositionProps = {\n toast: Toast;\n index: number;\n isExpanded: boolean;\n reverseOrder?: boolean;\n};\n\nconst StyledToastWrapper = styled(BaseBox)<{\n isVisible: boolean;\n index: number;\n isExpanded: boolean;\n isPromotional: boolean;\n}>(({ isVisible, index, isExpanded, isPromotional }) => {\n let opacity = isVisible ? 1 : 0;\n // Only make the PEEKING and MAX_TOASTS toasts visible,\n // Every other toasts should be hidden\n if (index < PEEKS + MAX_TOASTS) {\n opacity = 1;\n } else if (isPromotional || isExpanded) {\n opacity = 1;\n } else {\n opacity = 0;\n }\n\n return {\n '& > *': {\n pointerEvents: opacity === 1 ? 'auto' : 'none',\n },\n opacity,\n };\n});\n\nconst getPositionStyle = (\n position: ToastPosition,\n offset: number,\n scale: number,\n theme: Theme,\n): React.CSSProperties => {\n const top = position.includes('top');\n const verticalStyle: React.CSSProperties = top ? { top: 0 } : { bottom: 0 };\n const horizontalStyle: React.CSSProperties = position.includes('center')\n ? {\n justifyContent: 'center',\n }\n : position.includes('right')\n ? {\n justifyContent: 'flex-end',\n }\n : {};\n\n return {\n left: 0,\n right: 0,\n display: 'flex',\n position: 'absolute',\n transformOrigin: 'center',\n transition: `${makeMotionTime(theme.motion.duration.gentle)} ${theme.motion.easing.standard}`,\n transitionProperty: 'transform, opacity, height',\n transform: `translateY(${offset * (top ? 1 : -1)}px) scale(${scale})`,\n ...verticalStyle,\n ...horizontalStyle,\n };\n};\n\nfunction isPromotionalToast(toast: Toast): boolean {\n // @ts-expect-error\n return toast.type == 'promotional';\n}\n\nconst Toaster: React.FC<ToasterProps> = ({\n reverseOrder,\n position = 'top-center',\n toastOptions,\n containerClassName,\n ...rest\n}) => {\n const { toasts, handlers } = useToaster(toastOptions);\n const { theme } = useTheme();\n const [frontToastHeight, setFrontToastHeight] = React.useState(0);\n const [hasManuallyExpanded, setHasManuallyExpanded] = React.useState(false);\n const isMobile = useIsMobile();\n const minToasts = isMobile ? MIN_TOAST_MOBILE : MIN_TOAST_DESKTOP;\n const containerGutter = isMobile ? CONTAINER_GUTTER_MOBILE : CONTAINER_GUTTER_DESKTOP;\n\n const infoToasts = React.useMemo(() => toasts.filter((toast) => !isPromotionalToast(toast)), [\n toasts,\n ]);\n const promoToasts = React.useMemo(() => toasts.filter((toast) => isPromotionalToast(toast)), [\n toasts,\n ]);\n\n // always keep promo toasts at the bottom of the stack\n const recomputedToasts = React.useMemo(() => [...infoToasts, ...promoToasts], [\n infoToasts,\n promoToasts,\n ]);\n\n const hasPromoToast = promoToasts.length > 0 && promoToasts[0]?.visible;\n const promoToastHeight = promoToasts[0]?.height ?? 0;\n const isExpanded = hasManuallyExpanded || recomputedToasts.length <= minToasts;\n\n React.useLayoutEffect(() => {\n // find the first toast which is visible\n const firstToast = infoToasts.find((t, index) => t.visible && index === 0);\n if (firstToast) {\n setFrontToastHeight(firstToast.height ?? 0);\n }\n }, [infoToasts]);\n\n // calculate total height of all toasts\n const totalHeight = React.useMemo(() => {\n return (\n recomputedToasts\n // only consider visible recomputedToasts\n .filter((toast) => toast.visible)\n .reduce((prevHeight, toast) => prevHeight + (toast.height ?? 0), 0) +\n recomputedToasts.length * GUTTER\n );\n }, [recomputedToasts]);\n\n // Stacking logic explained in detail:\n // https://www.loom.com/share/522d9a445e2f41e1886cce4decb9ab9d?sid=4287acf6-8d44-431b-93e1-c1a0d40a0aba\n //\n // 1. 3 toasts can be stacked on top of each other\n // 2. After 3 toasts, the toasts will be scaled down and peek from behind\n // 3. There can be maximum of 3 toasts peeking from behind\n // 4. After 3 peeking toasts, the toasts will be hidden\n // 5. If there is a promo toast, all toasts will be lifted up\n // 6. Promo toasts will always be on the bottom\n const calculateYPosition = React.useCallback(\n ({ toast, index }: CalculateYPositionProps) => {\n // find the current toast index\n const toastIndex = infoToasts.findIndex((t) => t.id === toast.id);\n // number of toasts before this toast\n const toastsBefore = infoToasts.filter((toast, i) => i < toastIndex && toast.visible).length;\n\n let scale = Math.max(0.7, 1 - toastsBefore * SCALE_FACTOR);\n // first toast should always have a scale of 1\n if (index < MAX_TOASTS) {\n scale = 1;\n }\n\n // y position of toast,\n let offset = infoToasts\n .filter((toast) => toast.visible)\n .slice(0, toastsBefore)\n .reduce((y, toast) => {\n // if the toast is expanded, add the height of the toast + gutter\n if (isExpanded) {\n return y + (toast.height ?? 0) + GUTTER;\n }\n // if the toast is not expanded, add only the peek gutter\n return y + PEEK_GUTTER;\n }, 0);\n\n // lift all info toasts up if there is a promo toast\n if (hasPromoToast) {\n offset += GUTTER + promoToastHeight;\n }\n\n // if this is a promo toast, then put it at the bottom and force the scale to 1\n if (isPromotionalToast(toast)) {\n offset = 0;\n scale = 1;\n }\n\n return { offset, scale: isExpanded ? 1 : scale };\n },\n [hasPromoToast, infoToasts, isExpanded, promoToastHeight],\n );\n\n const handleMouseEnter = (): void => {\n if (isMobile) return;\n setHasManuallyExpanded(true);\n handlers.startPause();\n };\n\n const handleMouseLeave = (): void => {\n if (isMobile) return;\n setHasManuallyExpanded(false);\n handlers.endPause();\n };\n\n const handleToastClick = (): void => {\n if (!isMobile) return;\n setHasManuallyExpanded((prev) => {\n const next = !prev;\n if (next) {\n handlers.startPause();\n } else {\n handlers.endPause();\n }\n return next;\n });\n };\n\n return (\n <BaseBox\n position=\"fixed\"\n zIndex={TOAST_Z_INDEX}\n top={makeSize(containerGutter)}\n left={makeSize(containerGutter)}\n right={makeSize(containerGutter)}\n bottom={makeSize(containerGutter)}\n width={`calc(100% - ${containerGutter * 2}px)`}\n maxWidth={makeSize(TOAST_MAX_WIDTH)}\n pointerEvents=\"none\"\n className={containerClassName}\n {...metaAttribute({ name: MetaConstants.ToastContainer })}\n {...makeAnalyticsAttribute(rest)}\n >\n {/*\n * Mouseover container,\n * fills in the gap between toasts so that mouseleave doesn't trigger in the gaps\n */}\n <BaseBox\n position=\"absolute\"\n bottom={`${promoToastHeight}px`}\n left=\"0px\"\n width=\"100%\"\n pointerEvents={isExpanded ? 'all' : 'none'}\n height={makeSize(isExpanded ? totalHeight - promoToastHeight : frontToastHeight)}\n zIndex={-100}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onClick={handleToastClick}\n {...metaAttribute({ testID: 'toast-mouseover-container' })}\n />\n {recomputedToasts.map((toast, index) => {\n const toastPosition = toast.position ?? position;\n const isPromotional = isPromotionalToast(toast);\n const { offset, scale } = calculateYPosition({\n toast,\n isExpanded,\n reverseOrder,\n index,\n });\n const positionStyle = getPositionStyle(toastPosition, offset, scale, theme);\n // recalculate height of toast\n const ref = (el: HTMLDivElement): void => {\n if (el && typeof toast.height !== 'number') {\n const height = el.getBoundingClientRect().height;\n handlers.updateHeight(toast.id, height);\n }\n };\n\n let toastHeight = toast.height;\n if (index > MAX_TOASTS - 1 && !isPromotional) {\n toastHeight = frontToastHeight;\n }\n if (isExpanded) {\n toastHeight = toast.height;\n }\n\n return (\n <StyledToastWrapper\n key={toast.id}\n index={index}\n ref={ref}\n isExpanded={isExpanded}\n isVisible={toast.visible}\n isPromotional={isPromotional}\n style={{\n ...positionStyle,\n zIndex: -1 * index,\n height: toastHeight,\n overflow: 'hidden',\n }}\n onMouseEnter={() => {\n if (isPromotional) return;\n handleMouseEnter();\n }}\n onMouseLeave={() => {\n if (isPromotional) return;\n handleMouseLeave();\n }}\n onClick={() => {\n if (isPromotional) return;\n handleToastClick();\n }}\n >\n <BaseBox height=\"fit-content\" width=\"100%\">\n {resolveValue(toast.message, { ...toast, index })}\n </BaseBox>\n </StyledToastWrapper>\n );\n })}\n </BaseBox>\n );\n};\n\nconst ToastContainer = (): React.ReactElement => {\n return <Toaster position=\"bottom-left\" />;\n};\n\nexport { ToastContainer };\n"],"names":["StyledToastWrapper","styled","BaseBox","withConfig","displayName","componentId","_ref","isVisible","index","isExpanded","isPromotional","opacity","PEEKS","MAX_TOASTS","pointerEvents","getPositionStyle","position","offset","scale","theme","top","includes","verticalStyle","bottom","horizontalStyle","justifyContent","_objectSpread","left","right","display","transformOrigin","transition","concat","makeMotionTime","motion","duration","gentle","easing","standard","transitionProperty","transform","isPromotionalToast","toast","type","Toaster","_ref2","_promoToasts$","_promoToasts$0$height","_promoToasts$2","reverseOrder","_ref2$position","toastOptions","containerClassName","rest","_objectWithoutProperties","_excluded","_useToaster","useToaster","toasts","handlers","_useTheme","useTheme","_React$useState","React","useState","_React$useState2","_slicedToArray","frontToastHeight","setFrontToastHeight","_React$useState3","_React$useState4","hasManuallyExpanded","setHasManuallyExpanded","isMobile","useIsMobile","minToasts","MIN_TOAST_MOBILE","MIN_TOAST_DESKTOP","containerGutter","CONTAINER_GUTTER_MOBILE","CONTAINER_GUTTER_DESKTOP","infoToasts","useMemo","filter","promoToasts","recomputedToasts","_toConsumableArray","hasPromoToast","length","visible","promoToastHeight","height","useLayoutEffect","firstToast","find","t","_firstToast$height","totalHeight","reduce","prevHeight","_toast$height","GUTTER","calculateYPosition","useCallback","_ref3","toastIndex","findIndex","id","toastsBefore","i","Math","max","SCALE_FACTOR","slice","y","_toast$height2","PEEK_GUTTER","handleMouseEnter","startPause","handleMouseLeave","endPause","handleToastClick","prev","next","_jsxs","zIndex","TOAST_Z_INDEX","makeSize","width","maxWidth","TOAST_MAX_WIDTH","className","metaAttribute","name","MetaConstants","ToastContainer","makeAnalyticsAttribute","children","_jsx","onMouseEnter","onMouseLeave","onClick","testID","map","_toast$position","toastPosition","_calculateYPosition","positionStyle","ref","el","getBoundingClientRect","updateHeight","toastHeight","style","overflow","resolveValue","message"],"mappings":"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"}
1
+ {"version":3,"file":"ToastContainer.web.js","sources":["../../../../../../src/components/Toast/ToastContainer.web.tsx"],"sourcesContent":["import type { ToastPosition, ToasterProps, Toast } from 'react-hot-toast';\nimport { resolveValue, useToaster } from 'react-hot-toast';\nimport React from 'react';\nimport styled from 'styled-components';\nimport {\n PEEKS,\n MAX_TOASTS,\n SCALE_FACTOR,\n GUTTER,\n PEEK_GUTTER,\n TOAST_MAX_WIDTH,\n TOAST_Z_INDEX,\n MIN_TOAST_MOBILE,\n MIN_TOAST_DESKTOP,\n CONTAINER_GUTTER_MOBILE,\n CONTAINER_GUTTER_DESKTOP,\n} from './constants';\nimport { makeMotionTime, makeSize, useTheme } from '~utils';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { Theme } from '~components/BladeProvider';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype CalculateYPositionProps = {\n toast: Toast;\n index: number;\n isExpanded: boolean;\n reverseOrder?: boolean;\n};\n\nconst StyledToastWrapper = styled(BaseBox)<{\n isVisible: boolean;\n index: number;\n isExpanded: boolean;\n isPromotional: boolean;\n}>(({ isVisible, index, isExpanded, isPromotional }) => {\n let opacity: number = isVisible ? 1 : 0;\n // Only make the PEEKING and MAX_TOASTS toasts visible,\n // Every other toasts should be hidden\n if (index < PEEKS + MAX_TOASTS) {\n opacity = 1;\n } else if (isPromotional || isExpanded) {\n opacity = 1;\n } else {\n opacity = 0;\n }\n\n return {\n '& > *': {\n pointerEvents: opacity === 1 ? 'auto' : 'none',\n },\n opacity,\n };\n});\n\nconst getPositionStyle = (\n position: ToastPosition,\n offset: number,\n scale: number,\n theme: Theme,\n): React.CSSProperties => {\n const top = position.includes('top');\n const verticalStyle: React.CSSProperties = top ? { top: 0 } : { bottom: 0 };\n const horizontalStyle: React.CSSProperties = position.includes('center')\n ? {\n justifyContent: 'center',\n }\n : position.includes('right')\n ? {\n justifyContent: 'flex-end',\n }\n : {};\n\n return {\n left: 0,\n right: 0,\n display: 'flex',\n position: 'absolute',\n transformOrigin: 'center',\n transition: `${makeMotionTime(theme.motion.duration.gentle)} ${theme.motion.easing.standard}`,\n transitionProperty: 'transform, opacity, height',\n transform: `translateY(${offset * (top ? 1 : -1)}px) scale(${scale})`,\n ...verticalStyle,\n ...horizontalStyle,\n };\n};\n\nfunction isPromotionalToast(toast: Toast): boolean {\n // @ts-expect-error\n return toast.type == 'promotional';\n}\n\nconst Toaster: React.FC<ToasterProps & { offsetBottom?: number }> = ({\n reverseOrder,\n position = 'top-center',\n offsetBottom,\n toastOptions,\n containerClassName,\n ...rest\n}) => {\n const { toasts, handlers } = useToaster(toastOptions);\n const { theme } = useTheme();\n const [frontToastHeight, setFrontToastHeight] = React.useState(0);\n const [hasManuallyExpanded, setHasManuallyExpanded] = React.useState(false);\n const isMobile = useIsMobile();\n const minToasts = isMobile ? MIN_TOAST_MOBILE : MIN_TOAST_DESKTOP;\n const defaultGutter = isMobile ? CONTAINER_GUTTER_MOBILE : CONTAINER_GUTTER_DESKTOP;\n const bottomGutter = offsetBottom ?? defaultGutter;\n\n const infoToasts = React.useMemo(() => toasts.filter((toast) => !isPromotionalToast(toast)), [\n toasts,\n ]);\n const promoToasts = React.useMemo(() => toasts.filter((toast) => isPromotionalToast(toast)), [\n toasts,\n ]);\n\n // always keep promo toasts at the bottom of the stack\n const recomputedToasts = React.useMemo(() => [...infoToasts, ...promoToasts], [\n infoToasts,\n promoToasts,\n ]);\n\n const hasPromoToast = promoToasts.length > 0 && promoToasts[0]?.visible;\n const promoToastHeight = promoToasts[0]?.height ?? 0;\n const isExpanded = hasManuallyExpanded || recomputedToasts.length <= minToasts;\n\n React.useLayoutEffect(() => {\n // find the first toast which is visible\n const firstToast = infoToasts.find((t, index) => t.visible && index === 0);\n if (firstToast) {\n setFrontToastHeight(firstToast.height ?? 0);\n }\n }, [infoToasts]);\n\n // calculate total height of all toasts\n const totalHeight = React.useMemo(() => {\n return (\n recomputedToasts\n // only consider visible recomputedToasts\n .filter((toast) => toast.visible)\n .reduce((prevHeight, toast) => prevHeight + (toast.height ?? 0), 0) +\n recomputedToasts.length * GUTTER\n );\n }, [recomputedToasts]);\n\n // Stacking logic explained in detail:\n // https://www.loom.com/share/522d9a445e2f41e1886cce4decb9ab9d?sid=4287acf6-8d44-431b-93e1-c1a0d40a0aba\n //\n // 1. 3 toasts can be stacked on top of each other\n // 2. After 3 toasts, the toasts will be scaled down and peek from behind\n // 3. There can be maximum of 3 toasts peeking from behind\n // 4. After 3 peeking toasts, the toasts will be hidden\n // 5. If there is a promo toast, all toasts will be lifted up\n // 6. Promo toasts will always be on the bottom\n const calculateYPosition = React.useCallback(\n ({ toast, index }: CalculateYPositionProps) => {\n // find the current toast index\n const toastIndex = infoToasts.findIndex((t) => t.id === toast.id);\n // number of toasts before this toast\n const toastsBefore = infoToasts.filter((toast, i) => i < toastIndex && toast.visible).length;\n\n let scale = Math.max(0.7, 1 - toastsBefore * SCALE_FACTOR);\n // first toast should always have a scale of 1\n if (index < MAX_TOASTS) {\n scale = 1;\n }\n\n // y position of toast,\n let offset = infoToasts\n .filter((toast) => toast.visible)\n .slice(0, toastsBefore)\n .reduce((y, toast) => {\n // if the toast is expanded, add the height of the toast + gutter\n if (isExpanded) {\n return y + (toast.height ?? 0) + GUTTER;\n }\n // if the toast is not expanded, add only the peek gutter\n return y + PEEK_GUTTER;\n }, 0);\n\n // lift all info toasts up if there is a promo toast\n if (hasPromoToast) {\n offset += GUTTER + promoToastHeight;\n }\n\n // if this is a promo toast, then put it at the bottom and force the scale to 1\n if (isPromotionalToast(toast)) {\n offset = 0;\n scale = 1;\n }\n\n return { offset, scale: isExpanded ? 1 : scale };\n },\n [hasPromoToast, infoToasts, isExpanded, promoToastHeight],\n );\n\n const handleMouseEnter = (): void => {\n if (isMobile) return;\n setHasManuallyExpanded(true);\n handlers.startPause();\n };\n\n const handleMouseLeave = (): void => {\n if (isMobile) return;\n setHasManuallyExpanded(false);\n handlers.endPause();\n };\n\n const handleToastClick = (): void => {\n if (!isMobile) return;\n setHasManuallyExpanded((prev) => {\n const next = !prev;\n if (next) {\n handlers.startPause();\n } else {\n handlers.endPause();\n }\n return next;\n });\n };\n\n return (\n <BaseBox\n position=\"fixed\"\n zIndex={TOAST_Z_INDEX}\n top={makeSize(defaultGutter)}\n left={makeSize(defaultGutter)}\n right={makeSize(defaultGutter)}\n bottom={makeSize(bottomGutter)}\n width={`calc(100% - ${defaultGutter * 2}px)`}\n maxWidth={makeSize(TOAST_MAX_WIDTH)}\n pointerEvents=\"none\"\n className={containerClassName}\n {...metaAttribute({ name: MetaConstants.ToastContainer })}\n {...makeAnalyticsAttribute(rest)}\n >\n {/*\n * Mouseover container,\n * fills in the gap between toasts so that mouseleave doesn't trigger in the gaps\n */}\n <BaseBox\n position=\"absolute\"\n bottom={`${promoToastHeight}px`}\n left=\"0px\"\n width=\"100%\"\n pointerEvents={isExpanded ? 'all' : 'none'}\n height={makeSize(isExpanded ? totalHeight - promoToastHeight : frontToastHeight)}\n zIndex={-100}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onClick={handleToastClick}\n {...metaAttribute({ testID: 'toast-mouseover-container' })}\n />\n {recomputedToasts.map((toast, index) => {\n const toastPosition = toast.position ?? position;\n const isPromotional = isPromotionalToast(toast);\n const { offset, scale } = calculateYPosition({\n toast,\n isExpanded,\n reverseOrder,\n index,\n });\n const positionStyle = getPositionStyle(toastPosition, offset, scale, theme);\n // recalculate height of toast\n const ref = (el: HTMLDivElement): void => {\n if (el && typeof toast.height !== 'number') {\n const height = el.getBoundingClientRect().height;\n handlers.updateHeight(toast.id, height);\n }\n };\n\n let toastHeight = toast.height;\n if (index > MAX_TOASTS - 1 && !isPromotional) {\n toastHeight = frontToastHeight;\n }\n if (isExpanded) {\n toastHeight = toast.height;\n }\n\n return (\n <StyledToastWrapper\n key={toast.id}\n index={index}\n ref={ref}\n isExpanded={isExpanded}\n isVisible={toast.visible}\n isPromotional={isPromotional}\n style={{\n ...positionStyle,\n zIndex: -1 * index,\n height: toastHeight,\n overflow: 'hidden',\n }}\n onMouseEnter={() => {\n if (isPromotional) return;\n handleMouseEnter();\n }}\n onMouseLeave={() => {\n if (isPromotional) return;\n handleMouseLeave();\n }}\n onClick={() => {\n if (isPromotional) return;\n handleToastClick();\n }}\n >\n <BaseBox height=\"fit-content\" width=\"100%\">\n {resolveValue(toast.message, { ...toast, index })}\n </BaseBox>\n </StyledToastWrapper>\n );\n })}\n </BaseBox>\n );\n};\n\ntype ToastContainerProps = {\n /**\n * The offset from the bottom of the screen to the toast container.\n * This is useful when you want to position the toast container at a different\n * position from the bottom of the screen.\n *\n * @default isMobile ? 16px : 24px\n */\n offsetBottom?: number;\n};\n\nconst ToastContainer = ({ offsetBottom }: ToastContainerProps): React.ReactElement => {\n return <Toaster offsetBottom={offsetBottom} position=\"bottom-left\" />;\n};\n\nexport { ToastContainer };\n"],"names":["StyledToastWrapper","styled","BaseBox","withConfig","displayName","componentId","_ref","isVisible","index","isExpanded","isPromotional","opacity","PEEKS","MAX_TOASTS","pointerEvents","getPositionStyle","position","offset","scale","theme","top","includes","verticalStyle","bottom","horizontalStyle","justifyContent","_objectSpread","left","right","display","transformOrigin","transition","concat","makeMotionTime","motion","duration","gentle","easing","standard","transitionProperty","transform","isPromotionalToast","toast","type","Toaster","_ref2","_promoToasts$","_promoToasts$0$height","_promoToasts$2","reverseOrder","_ref2$position","offsetBottom","toastOptions","containerClassName","rest","_objectWithoutProperties","_excluded","_useToaster","useToaster","toasts","handlers","_useTheme","useTheme","_React$useState","React","useState","_React$useState2","_slicedToArray","frontToastHeight","setFrontToastHeight","_React$useState3","_React$useState4","hasManuallyExpanded","setHasManuallyExpanded","isMobile","useIsMobile","minToasts","MIN_TOAST_MOBILE","MIN_TOAST_DESKTOP","defaultGutter","CONTAINER_GUTTER_MOBILE","CONTAINER_GUTTER_DESKTOP","bottomGutter","infoToasts","useMemo","filter","promoToasts","recomputedToasts","_toConsumableArray","hasPromoToast","length","visible","promoToastHeight","height","useLayoutEffect","firstToast","find","t","_firstToast$height","totalHeight","reduce","prevHeight","_toast$height","GUTTER","calculateYPosition","useCallback","_ref3","toastIndex","findIndex","id","toastsBefore","i","Math","max","SCALE_FACTOR","slice","y","_toast$height2","PEEK_GUTTER","handleMouseEnter","startPause","handleMouseLeave","endPause","handleToastClick","prev","next","_jsxs","zIndex","TOAST_Z_INDEX","makeSize","width","maxWidth","TOAST_MAX_WIDTH","className","metaAttribute","name","MetaConstants","ToastContainer","makeAnalyticsAttribute","children","_jsx","onMouseEnter","onMouseLeave","onClick","testID","map","_toast$position","toastPosition","_calculateYPosition","positionStyle","ref","el","getBoundingClientRect","updateHeight","toastHeight","style","overflow","resolveValue","message","_ref4"],"mappings":"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"}
@@ -27236,7 +27236,17 @@ type TagProps = {
27236
27236
  _isTagInsideInput?: boolean;
27237
27237
  } & StyledPropsBlade & DataAnalyticsAttribute & TestID;
27238
27238
 
27239
- declare const ToastContainer: () => React__default.ReactElement;
27239
+ type ToastContainerProps = {
27240
+ /**
27241
+ * The offset from the bottom of the screen to the toast container.
27242
+ * This is useful when you want to position the toast container at a different
27243
+ * position from the bottom of the screen.
27244
+ *
27245
+ * @default isMobile ? 16px : 24px
27246
+ */
27247
+ offsetBottom?: number;
27248
+ };
27249
+ declare const ToastContainer: ({ offsetBottom }: ToastContainerProps) => React__default.ReactElement;
27240
27250
 
27241
27251
  type ToastProps = {
27242
27252
  /**
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@razorpay/blade",
3
3
  "description": "The Design System that powers Razorpay",
4
- "version": "12.33.2",
4
+ "version": "12.34.1",
5
5
  "license": "MIT",
6
6
  "engines": {
7
7
  "node": ">=18.12.1"
@@ -116,7 +116,7 @@
116
116
  "react:storybook:serve:test": "wait-on http://127.0.0.1:9009/ && yarn test:react:interaction",
117
117
  "test:react:interaction": "cross-env FRAMEWORK=REACT test-storybook -c ./.storybook/react --url http://127.0.0.1:9009/",
118
118
  "test:react:interaction:ci": "yarn react:storybook:build && run-p react:storybook:serve react:storybook:serve:test --race",
119
- "test:react": "cross-env FRAMEWORK=REACT jest -c ./jest.web.config.js --shard=$SHARD --forceExit",
119
+ "test:react": "cross-env FRAMEWORK=REACT jest -c ./jest.web.config.js --shard=$SHARD --coverage --forceExit",
120
120
  "test:react-native": "cross-env FRAMEWORK=REACT_NATIVE jest -c ./jest.native.config.js --shard=$SHARD --forceExit",
121
121
  "start:ios": "cross-env NODE_OPTIONS=--openssl-legacy-provider run-p react-native:storybook:start react-native:storybook:ios",
122
122
  "start:android": "cross-env NODE_OPTIONS=--openssl-legacy-provider run-p react-native:storybook:start react-native:storybook:android",