@razorpay/blade 12.37.0 → 12.38.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/lib/native/components/Card/Card.js +1 -1
- package/build/lib/native/components/Card/Card.js.map +1 -1
- package/build/lib/native/components/Card/CardContext.js +2 -2
- package/build/lib/native/components/Card/CardContext.js.map +1 -1
- package/build/lib/native/components/Card/CardHeader.js +3 -3
- package/build/lib/native/components/Card/CardHeader.js.map +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInputVisuals.js +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
- package/build/lib/native/components/List/ListItem.js +1 -1
- package/build/lib/native/components/List/ListItem.js.map +1 -1
- package/build/lib/web/development/components/Card/Card.js +4 -1
- package/build/lib/web/development/components/Card/Card.js.map +1 -1
- package/build/lib/web/development/components/Card/CardContext.js +11 -6
- package/build/lib/web/development/components/Card/CardContext.js.map +1 -1
- package/build/lib/web/development/components/Card/CardHeader.js +38 -44
- package/build/lib/web/development/components/Card/CardHeader.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/BaseInputVisuals.js +1 -1
- package/build/lib/web/development/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
- package/build/lib/web/development/components/List/ListItem.js +1 -1
- package/build/lib/web/development/components/List/ListItem.js.map +1 -1
- package/build/lib/web/development/components/Table/TableEditableCell.web.js +11 -8
- package/build/lib/web/development/components/Table/TableEditableCell.web.js.map +1 -1
- package/build/lib/web/production/components/Card/Card.js +4 -1
- package/build/lib/web/production/components/Card/Card.js.map +1 -1
- package/build/lib/web/production/components/Card/CardContext.js +11 -6
- package/build/lib/web/production/components/Card/CardContext.js.map +1 -1
- package/build/lib/web/production/components/Card/CardHeader.js +38 -44
- package/build/lib/web/production/components/Card/CardHeader.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/BaseInputVisuals.js +1 -1
- package/build/lib/web/production/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
- package/build/lib/web/production/components/List/ListItem.js +1 -1
- package/build/lib/web/production/components/List/ListItem.js.map +1 -1
- package/build/lib/web/production/components/Table/TableEditableCell.web.js +11 -8
- package/build/lib/web/production/components/Table/TableEditableCell.web.js.map +1 -1
- package/build/types/components/index.d.ts +15 -3
- package/build/types/components/index.native.d.ts +14 -2
- package/package.json +1 -1
|
@@ -13,6 +13,7 @@ import '../Input/BaseInput/index.js';
|
|
|
13
13
|
import '../../utils/index.js';
|
|
14
14
|
import '../../utils/assignWithoutSideEffects/index.js';
|
|
15
15
|
import '../Dropdown/index.js';
|
|
16
|
+
import { getKeyboardAndAutocompleteProps } from '../Input/BaseInput/utils.js';
|
|
16
17
|
import { jsx } from 'react/jsx-runtime';
|
|
17
18
|
import { getFocusRingStyles } from '../../utils/getFocusRingStyles/getFocusRingStyles.web.js';
|
|
18
19
|
import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
|
|
@@ -77,7 +78,8 @@ var _TableEditableCell = function _TableEditableCell(_ref3) {
|
|
|
77
78
|
testID = _ref3.testID,
|
|
78
79
|
trailingButton = _ref3.trailingButton,
|
|
79
80
|
errorText = _ref3.errorText,
|
|
80
|
-
successText = _ref3.successText
|
|
81
|
+
successText = _ref3.successText,
|
|
82
|
+
inputType = _ref3.inputType;
|
|
81
83
|
var _useTableContext = useTableContext(),
|
|
82
84
|
rowDensity = _useTableContext.rowDensity,
|
|
83
85
|
showStripedRows = _useTableContext.showStripedRows,
|
|
@@ -107,23 +109,19 @@ var _TableEditableCell = function _TableEditableCell(_ref3) {
|
|
|
107
109
|
rowDensity: rowDensity
|
|
108
110
|
}),
|
|
109
111
|
width: "100%",
|
|
110
|
-
children: /*#__PURE__*/jsx(BaseInput, {
|
|
112
|
+
children: /*#__PURE__*/jsx(BaseInput, _objectSpread({
|
|
111
113
|
isTableInputCell: rowDensityToIsTableInputCellMapping[rowDensity],
|
|
112
114
|
validationState: validationState,
|
|
113
115
|
id: "table-editable-cell-input",
|
|
114
|
-
type: "text",
|
|
115
116
|
size: tableEditableCellRowDensityToInputSizeMap[rowDensity],
|
|
116
117
|
trailingIcon: validationStateToInputTrailingIconMap[validationState],
|
|
117
|
-
accessibilityLabel: accessibilityLabel
|
|
118
|
-
autoCapitalize: autoCapitalize,
|
|
119
|
-
autoCompleteSuggestionType: autoCompleteSuggestionType
|
|
118
|
+
accessibilityLabel: accessibilityLabel
|
|
120
119
|
// eslint-disable-next-line jsx-a11y/no-autofocus
|
|
121
120
|
,
|
|
122
121
|
autoFocus: autoFocus,
|
|
123
122
|
defaultValue: defaultValue,
|
|
124
123
|
isDisabled: isDisabled,
|
|
125
124
|
isRequired: isRequired,
|
|
126
|
-
keyboardReturnKeyType: keyboardReturnKeyType,
|
|
127
125
|
leadingIcon: leadingIcon,
|
|
128
126
|
maxCharacters: maxCharacters,
|
|
129
127
|
name: name,
|
|
@@ -141,7 +139,12 @@ var _TableEditableCell = function _TableEditableCell(_ref3) {
|
|
|
141
139
|
errorText: errorText,
|
|
142
140
|
successText: successText,
|
|
143
141
|
showHintsAsTooltip: true
|
|
144
|
-
}
|
|
142
|
+
}, getKeyboardAndAutocompleteProps({
|
|
143
|
+
type: inputType,
|
|
144
|
+
keyboardReturnKeyType: keyboardReturnKeyType,
|
|
145
|
+
autoCompleteSuggestionType: autoCompleteSuggestionType,
|
|
146
|
+
autoCapitalize: autoCapitalize
|
|
147
|
+
})))
|
|
145
148
|
})
|
|
146
149
|
})
|
|
147
150
|
})
|
|
@@ -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\n _width=\"calc(100% - 8px)\"\n margin={getEditableInputMargin({ rowDensity })}\n {...dropdownProps}\n />\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';\nimport { getKeyboardAndAutocompleteProps } from '~components/Input/BaseInput/utils';\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 inputType,\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 size={tableEditableCellRowDensityToInputSizeMap[rowDensity]}\n trailingIcon={validationStateToInputTrailingIconMap[validationState]}\n accessibilityLabel={accessibilityLabel}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n defaultValue={defaultValue}\n isDisabled={isDisabled}\n isRequired={isRequired}\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 {...getKeyboardAndAutocompleteProps({\n type: inputType,\n keyboardReturnKeyType,\n autoCompleteSuggestionType,\n autoCapitalize,\n })}\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\n _width=\"calc(100% - 8px)\"\n margin={getEditableInputMargin({ rowDensity })}\n {...dropdownProps}\n />\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","inputType","_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","size","tableEditableCellRowDensityToInputSizeMap","trailingIcon","validationStateToInputTrailingIconMap","castWebType","showHintsAsTooltip","getKeyboardAndAutocompleteProps","type","TableEditableDropdownCell","dropdownProps","_useTableContext2","TableEditableCellContext","Provider","isInsideTableEditableCell","Dropdown","_width","TableEditableCell","assignWithoutSideEffects","ComponentIds"],"mappings":"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"}
|
|
@@ -27,7 +27,7 @@ import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeA
|
|
|
27
27
|
import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
|
|
28
28
|
import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
|
|
29
29
|
|
|
30
|
-
var _excluded = ["children", "backgroundColor", "borderRadius", "elevation", "testID", "padding", "width", "height", "minHeight", "minWidth", "maxWidth", "onClick", "isSelected", "accessibilityLabel", "shouldScaleOnHover", "onHover", "href", "target", "rel", "as"],
|
|
30
|
+
var _excluded = ["children", "backgroundColor", "borderRadius", "elevation", "testID", "padding", "width", "height", "minHeight", "minWidth", "maxWidth", "onClick", "isSelected", "accessibilityLabel", "shouldScaleOnHover", "onHover", "href", "target", "rel", "as", "size"],
|
|
31
31
|
_excluded2 = ["height", "children", "testID"];
|
|
32
32
|
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; }
|
|
33
33
|
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; }
|
|
@@ -74,6 +74,8 @@ var _Card = function _Card(_ref, ref) {
|
|
|
74
74
|
target = _ref.target,
|
|
75
75
|
rel = _ref.rel,
|
|
76
76
|
as = _ref.as,
|
|
77
|
+
_ref$size = _ref.size,
|
|
78
|
+
size = _ref$size === void 0 ? 'large' : _ref$size,
|
|
77
79
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
78
80
|
var _React$useState = React__default.useState(false),
|
|
79
81
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
@@ -108,6 +110,7 @@ var _Card = function _Card(_ref, ref) {
|
|
|
108
110
|
var groupProps = getGroupProps();
|
|
109
111
|
var _validationState = groupProps === null || groupProps === void 0 ? void 0 : groupProps.validationState;
|
|
110
112
|
return /*#__PURE__*/jsx(CardProvider, {
|
|
113
|
+
size: size,
|
|
111
114
|
children: /*#__PURE__*/jsx(CardRoot, _objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
112
115
|
as: as,
|
|
113
116
|
ref: ref,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.js","sources":["../../../../../../src/components/Card/Card.tsx"],"sourcesContent":["import React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { CardSurface } from './CardSurface';\nimport { CardProvider, useVerifyInsideCard } from './CardContext';\nimport { LinkOverlay } from './LinkOverlay';\nimport { CardRoot } from './CardRoot';\nimport type { CardSpacingValueType, LinkOverlayProps } from './types';\nimport { CARD_LINK_OVERLAY_ID } from './constants';\nimport BaseBox from '~components/Box/BaseBox';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport type { DataAnalyticsAttribute, BladeElementRef, TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { Elevation } from '~tokens/global';\nimport type { BoxProps } from '~components/Box';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren/useVerifyAllowedChildren';\nimport type { Platform } from '~utils';\nimport { isReactNative } from '~utils';\nimport type { Theme } from '~components/BladeProvider';\nimport type { DotNotationToken } from '~utils/lodashButBetter/get';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { useCheckboxGroupContext } from '~components/Checkbox/CheckboxGroup/CheckboxGroupContext';\nimport { useRadioGroupContext } from '~components/Radio/RadioGroup/RadioContext';\nimport type { CheckboxGroupContextType } from '~components/Checkbox/CheckboxGroup/CheckboxGroupContext';\nimport type { RadioGroupContextType } from '~components/Radio/RadioGroup/RadioContext';\n\nexport const ComponentIds = {\n CardHeader: 'CardHeader',\n CardHeaderTrailing: 'CardHeaderTrailing',\n CardHeaderLeading: 'CardHeaderLeading',\n CardFooter: 'CardFooter',\n CardFooterTrailing: 'CardFooterTrailing',\n CardFooterLeading: 'CardFooterLeading',\n CardBody: 'CardBody',\n CardHeaderIcon: 'CardHeaderIcon',\n CardHeaderCounter: 'CardHeaderCounter',\n CardHeaderBadge: 'CardHeaderBadge',\n CardHeaderAmount: 'CardHeaderAmount',\n CardHeaderText: 'CardHeaderText',\n CardHeaderLink: 'CardHeaderLink',\n CardHeaderIconButton: 'CardHeaderIconButton',\n};\n\ntype CardSurfaceBackgroundColors = `surface.background.gray.${DotNotationToken<\n Theme['colors']['surface']['background']['gray']\n>}`;\n\nexport type CardProps = {\n /**\n * Card contents\n */\n children: React.ReactNode;\n /**\n * Sets the background color of the Card\n *\n * @default `surface.background.gray.intense`\n */\n backgroundColor?: CardSurfaceBackgroundColors;\n /**\n * Sets the border radius of the Card\n *\n * @default `medium`\n */\n borderRadius?: Extract<BoxProps['borderRadius'], 'medium' | 'large' | 'xlarge'>;\n /**\n * Sets the elevation for Cards\n *\n * eg: `theme.elevation.midRaised`\n *\n * @default `theme.elevation.lowRaised`\n *\n * **Links:**\n * - Docs: https://blade.razorpay.com/?path=/docs/tokens-elevation--docs\n */\n elevation?: keyof Elevation;\n /**\n * Sets the padding equally on all sides. Only few `spacing` tokens are allowed deliberately\n * @default `spacing.7`\n *\n * **Links:**\n * - Docs: https://blade.razorpay.com/?path=/docs/tokens-spacing--docs\n */\n padding?: CardSpacingValueType;\n /**\n * Sets the width of the card\n */\n width?: BoxProps['width'];\n /**\n * Sets the height of the card\n */\n height?: BoxProps['height'];\n /**\n * Sets minimum height of the card\n */\n minHeight?: BoxProps['minHeight'];\n /**\n * Sets minimum width of the card\n */\n minWidth?: BoxProps['minWidth'];\n /**\n * Sets maximum width of the card\n */\n maxWidth?: BoxProps['maxWidth'];\n /**\n * If `true`, the card will be in selected state\n * Card will have a primary color border around it.\n *\n * @default false\n */\n isSelected?: boolean;\n /**\n * Makes the Card linkable by setting the `href` prop\n *\n * @default undefined\n */\n href?: string;\n /**\n * Sets the `target` attribute for the linkable card\n */\n target?: string;\n /**\n * Sets the `rel` attribute for the linkable card\n */\n rel?: string;\n /**\n * Sets the accessibility label for the card\n * This is useful when the card has an `href` or `onClick` prop\n * Setting this will announce the label when the card is focused\n */\n accessibilityLabel?: string;\n /**\n * If `true`, the card will scale up on hover\n *\n * On mobile devices it will scale down on press\n *\n * **This prop is deprecated in favour of motion presets released in v12**\n *\n * ### Migration\n *\n * ```diff\n * - <Card\n * - shouldScaleOnHover\n * - />\n *\n * + <Scale motionTriggers={['hover']}>\n * + <Card />\n * + </Scale>\n * ```\n *\n * @default false\n *\n * @deprecated This prop is deprecated in favour of motion presets released in v12\n */\n shouldScaleOnHover?: boolean;\n /**\n * Callback triggered when the card is hovered\n */\n onHover?: () => void;\n /**\n * Callback triggered when the card is clicked\n */\n onClick?: (\n event: Platform.Select<{\n web: React.MouseEvent;\n native: GestureResponderEvent;\n }>,\n ) => void;\n /**\n * Sets the HTML element for the Card\n *\n * When `as` is set to `label`, the card will be rendered as a label element\n * This can be used to create a custom checkbox or radio button using the card\n *\n * @default undefined\n */\n as?: 'label';\n} & TestID &\n DataAnalyticsAttribute &\n StyledPropsBlade;\n\nconst _Card: React.ForwardRefRenderFunction<BladeElementRef, CardProps> = (\n {\n children,\n backgroundColor = 'surface.background.gray.intense',\n borderRadius = 'medium',\n elevation = 'lowRaised',\n testID,\n padding = 'spacing.7',\n width,\n height,\n minHeight,\n minWidth,\n maxWidth,\n onClick,\n isSelected = false,\n accessibilityLabel,\n shouldScaleOnHover = false,\n onHover,\n href,\n target,\n rel,\n as,\n ...rest\n },\n ref,\n): React.ReactElement => {\n const [isFocused, setIsFocused] = React.useState(false);\n\n useVerifyAllowedChildren({\n children,\n componentName: 'Card',\n allowedComponents: [ComponentIds.CardHeader, ComponentIds.CardBody, ComponentIds.CardFooter],\n });\n\n const linkOverlayProps: LinkOverlayProps = {\n ...metaAttribute({ name: CARD_LINK_OVERLAY_ID }),\n ...makeAccessible({ label: accessibilityLabel, pressed: href ? undefined : isSelected }),\n onFocus: () => {\n setIsFocused(true);\n },\n onBlur: () => {\n setIsFocused(false);\n },\n };\n const defaultRel = target && target === '_blank' ? 'noreferrer noopener' : undefined;\n\n const checkboxGroupProps = useCheckboxGroupContext();\n const radioGroupProps = useRadioGroupContext();\n\n const getGroupProps = (): CheckboxGroupContextType | RadioGroupContextType | undefined => {\n if (Object.keys(checkboxGroupProps).length > 0) return checkboxGroupProps;\n if (Object.keys(radioGroupProps).length > 0) return radioGroupProps;\n return undefined;\n };\n\n const groupProps = getGroupProps();\n\n const _validationState = groupProps?.validationState;\n\n return (\n <CardProvider>\n <CardRoot\n as={as}\n ref={ref as never}\n display={'block' as never}\n borderRadius={borderRadius}\n onMouseEnter={onHover as never}\n shouldScaleOnHover={shouldScaleOnHover}\n isSelected={isSelected}\n isFocused={isFocused}\n // on react native we need to pass onClick to root, because we don't need the LinkOverlay in RN\n onClick={isReactNative() ? onClick : undefined}\n width={width}\n height={height}\n minHeight={minHeight}\n minWidth={minWidth}\n maxWidth={maxWidth}\n href={href}\n accessibilityLabel={accessibilityLabel}\n validationState={_validationState}\n {...metaAttribute({ name: MetaConstants.Card, testID })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n >\n <CardSurface\n height={height}\n minHeight={minHeight}\n padding={padding}\n borderRadius={borderRadius}\n elevation={elevation}\n textAlign={'left' as never}\n backgroundColor={backgroundColor}\n >\n {href ? (\n <LinkOverlay\n onClick={onClick}\n href={href}\n target={target}\n rel={rel ?? defaultRel}\n {...linkOverlayProps}\n />\n ) : null}\n {!href && onClick ? (\n <LinkOverlay as=\"button\" onClick={onClick} {...linkOverlayProps} />\n ) : null}\n {children}\n </CardSurface>\n </CardRoot>\n </CardProvider>\n );\n};\n\ntype CardBodyProps = {\n children: React.ReactNode;\n height?: BoxProps['height'];\n} & TestID &\n DataAnalyticsAttribute;\n\nconst _CardBody = ({ height, children, testID, ...rest }: CardBodyProps): React.ReactElement => {\n useVerifyInsideCard('CardBody');\n\n return (\n <BaseBox\n {...metaAttribute({ name: MetaConstants.CardBody, testID })}\n {...makeAnalyticsAttribute(rest)}\n height={height}\n >\n {children}\n </BaseBox>\n );\n};\n\nconst Card = React.forwardRef(_Card);\nconst CardBody = assignWithoutSideEffects(_CardBody, { componentId: ComponentIds.CardBody });\n\nexport { Card, CardBody };\n"],"names":["ComponentIds","CardHeader","CardHeaderTrailing","CardHeaderLeading","CardFooter","CardFooterTrailing","CardFooterLeading","CardBody","CardHeaderIcon","CardHeaderCounter","CardHeaderBadge","CardHeaderAmount","CardHeaderText","CardHeaderLink","CardHeaderIconButton","_Card","_ref","ref","children","_ref$backgroundColor","backgroundColor","_ref$borderRadius","borderRadius","_ref$elevation","elevation","testID","_ref$padding","padding","width","height","minHeight","minWidth","maxWidth","onClick","_ref$isSelected","isSelected","accessibilityLabel","_ref$shouldScaleOnHov","shouldScaleOnHover","onHover","href","target","rel","as","rest","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","isFocused","setIsFocused","useVerifyAllowedChildren","componentName","allowedComponents","linkOverlayProps","_objectSpread","metaAttribute","name","CARD_LINK_OVERLAY_ID","makeAccessible","label","pressed","undefined","onFocus","onBlur","defaultRel","checkboxGroupProps","useCheckboxGroupContext","radioGroupProps","useRadioGroupContext","getGroupProps","Object","keys","length","groupProps","_validationState","validationState","_jsx","CardProvider","CardRoot","display","onMouseEnter","isReactNative","MetaConstants","Card","getStyledProps","makeAnalyticsAttribute","_jsxs","CardSurface","textAlign","LinkOverlay","_CardBody","_ref2","_excluded2","useVerifyInsideCard","BaseBox","forwardRef","assignWithoutSideEffects","componentId"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Card.js","sources":["../../../../../../src/components/Card/Card.tsx"],"sourcesContent":["import React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { CardSurface } from './CardSurface';\nimport { CardProvider, useVerifyInsideCard } from './CardContext';\nimport { LinkOverlay } from './LinkOverlay';\nimport { CardRoot } from './CardRoot';\nimport type { CardSpacingValueType, LinkOverlayProps } from './types';\nimport { CARD_LINK_OVERLAY_ID } from './constants';\nimport BaseBox from '~components/Box/BaseBox';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport type { DataAnalyticsAttribute, BladeElementRef, TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { Elevation } from '~tokens/global';\nimport type { BoxProps } from '~components/Box';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren/useVerifyAllowedChildren';\nimport type { Platform } from '~utils';\nimport { isReactNative } from '~utils';\nimport type { Theme } from '~components/BladeProvider';\nimport type { DotNotationToken } from '~utils/lodashButBetter/get';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { useCheckboxGroupContext } from '~components/Checkbox/CheckboxGroup/CheckboxGroupContext';\nimport { useRadioGroupContext } from '~components/Radio/RadioGroup/RadioContext';\nimport type { CheckboxGroupContextType } from '~components/Checkbox/CheckboxGroup/CheckboxGroupContext';\nimport type { RadioGroupContextType } from '~components/Radio/RadioGroup/RadioContext';\n\nexport const ComponentIds = {\n CardHeader: 'CardHeader',\n CardHeaderTrailing: 'CardHeaderTrailing',\n CardHeaderLeading: 'CardHeaderLeading',\n CardFooter: 'CardFooter',\n CardFooterTrailing: 'CardFooterTrailing',\n CardFooterLeading: 'CardFooterLeading',\n CardBody: 'CardBody',\n CardHeaderIcon: 'CardHeaderIcon',\n CardHeaderCounter: 'CardHeaderCounter',\n CardHeaderBadge: 'CardHeaderBadge',\n CardHeaderAmount: 'CardHeaderAmount',\n CardHeaderText: 'CardHeaderText',\n CardHeaderLink: 'CardHeaderLink',\n CardHeaderIconButton: 'CardHeaderIconButton',\n};\n\ntype CardSurfaceBackgroundColors = `surface.background.gray.${DotNotationToken<\n Theme['colors']['surface']['background']['gray']\n>}`;\n\nexport type CardProps = {\n /**\n * Card contents\n */\n children: React.ReactNode;\n /**\n * Sets the background color of the Card\n *\n * @default `surface.background.gray.intense`\n */\n backgroundColor?: CardSurfaceBackgroundColors;\n /**\n * Sets the border radius of the Card\n *\n * @default `medium`\n */\n borderRadius?: Extract<BoxProps['borderRadius'], 'medium' | 'large' | 'xlarge'>;\n /**\n * Sets the elevation for Cards\n *\n * eg: `theme.elevation.midRaised`\n *\n * @default `theme.elevation.lowRaised`\n *\n * **Links:**\n * - Docs: https://blade.razorpay.com/?path=/docs/tokens-elevation--docs\n */\n elevation?: keyof Elevation;\n /**\n * Sets the padding equally on all sides. Only few `spacing` tokens are allowed deliberately\n * @default `spacing.7`\n *\n * **Links:**\n * - Docs: https://blade.razorpay.com/?path=/docs/tokens-spacing--docs\n */\n padding?: CardSpacingValueType;\n /**\n * Sets the width of the card\n */\n width?: BoxProps['width'];\n /**\n * Sets the height of the card\n */\n height?: BoxProps['height'];\n /**\n * Sets minimum height of the card\n */\n minHeight?: BoxProps['minHeight'];\n /**\n * Sets minimum width of the card\n */\n minWidth?: BoxProps['minWidth'];\n /**\n * Sets maximum width of the card\n */\n maxWidth?: BoxProps['maxWidth'];\n /**\n * If `true`, the card will be in selected state\n * Card will have a primary color border around it.\n *\n * @default false\n */\n isSelected?: boolean;\n /**\n * Makes the Card linkable by setting the `href` prop\n *\n * @default undefined\n */\n href?: string;\n /**\n * Sets the `target` attribute for the linkable card\n */\n target?: string;\n /**\n * Sets the `rel` attribute for the linkable card\n */\n rel?: string;\n /**\n * Sets the accessibility label for the card\n * This is useful when the card has an `href` or `onClick` prop\n * Setting this will announce the label when the card is focused\n */\n accessibilityLabel?: string;\n /**\n * If `true`, the card will scale up on hover\n *\n * On mobile devices it will scale down on press\n *\n * **This prop is deprecated in favour of motion presets released in v12**\n *\n * ### Migration\n *\n * ```diff\n * - <Card\n * - shouldScaleOnHover\n * - />\n *\n * + <Scale motionTriggers={['hover']}>\n * + <Card />\n * + </Scale>\n * ```\n *\n * @default false\n *\n * @deprecated This prop is deprecated in favour of motion presets released in v12\n */\n shouldScaleOnHover?: boolean;\n /**\n * Callback triggered when the card is hovered\n */\n onHover?: () => void;\n /**\n * Sets the size of the card header title\n *\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /**\n * Callback triggered when the card is clicked\n */\n onClick?: (\n event: Platform.Select<{\n web: React.MouseEvent;\n native: GestureResponderEvent;\n }>,\n ) => void;\n /**\n * Sets the HTML element for the Card\n *\n * When `as` is set to `label`, the card will be rendered as a label element\n * This can be used to create a custom checkbox or radio button using the card\n *\n * @default undefined\n */\n as?: 'label';\n} & TestID &\n DataAnalyticsAttribute &\n StyledPropsBlade;\n\nconst _Card: React.ForwardRefRenderFunction<BladeElementRef, CardProps> = (\n {\n children,\n backgroundColor = 'surface.background.gray.intense',\n borderRadius = 'medium',\n elevation = 'lowRaised',\n testID,\n padding = 'spacing.7',\n width,\n height,\n minHeight,\n minWidth,\n maxWidth,\n onClick,\n isSelected = false,\n accessibilityLabel,\n shouldScaleOnHover = false,\n onHover,\n href,\n target,\n rel,\n as,\n size = 'large',\n ...rest\n },\n ref,\n): React.ReactElement => {\n const [isFocused, setIsFocused] = React.useState(false);\n\n useVerifyAllowedChildren({\n children,\n componentName: 'Card',\n allowedComponents: [ComponentIds.CardHeader, ComponentIds.CardBody, ComponentIds.CardFooter],\n });\n\n const linkOverlayProps: LinkOverlayProps = {\n ...metaAttribute({ name: CARD_LINK_OVERLAY_ID }),\n ...makeAccessible({ label: accessibilityLabel, pressed: href ? undefined : isSelected }),\n onFocus: () => {\n setIsFocused(true);\n },\n onBlur: () => {\n setIsFocused(false);\n },\n };\n const defaultRel = target && target === '_blank' ? 'noreferrer noopener' : undefined;\n\n const checkboxGroupProps = useCheckboxGroupContext();\n const radioGroupProps = useRadioGroupContext();\n\n const getGroupProps = (): CheckboxGroupContextType | RadioGroupContextType | undefined => {\n if (Object.keys(checkboxGroupProps).length > 0) return checkboxGroupProps;\n if (Object.keys(radioGroupProps).length > 0) return radioGroupProps;\n return undefined;\n };\n\n const groupProps = getGroupProps();\n\n const _validationState = groupProps?.validationState;\n\n return (\n <CardProvider size={size}>\n <CardRoot\n as={as}\n ref={ref as never}\n display={'block' as never}\n borderRadius={borderRadius}\n onMouseEnter={onHover as never}\n shouldScaleOnHover={shouldScaleOnHover}\n isSelected={isSelected}\n isFocused={isFocused}\n // on react native we need to pass onClick to root, because we don't need the LinkOverlay in RN\n onClick={isReactNative() ? onClick : undefined}\n width={width}\n height={height}\n minHeight={minHeight}\n minWidth={minWidth}\n maxWidth={maxWidth}\n href={href}\n accessibilityLabel={accessibilityLabel}\n validationState={_validationState}\n {...metaAttribute({ name: MetaConstants.Card, testID })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n >\n <CardSurface\n height={height}\n minHeight={minHeight}\n padding={padding}\n borderRadius={borderRadius}\n elevation={elevation}\n textAlign={'left' as never}\n backgroundColor={backgroundColor}\n >\n {href ? (\n <LinkOverlay\n onClick={onClick}\n href={href}\n target={target}\n rel={rel ?? defaultRel}\n {...linkOverlayProps}\n />\n ) : null}\n {!href && onClick ? (\n <LinkOverlay as=\"button\" onClick={onClick} {...linkOverlayProps} />\n ) : null}\n {children}\n </CardSurface>\n </CardRoot>\n </CardProvider>\n );\n};\n\ntype CardBodyProps = {\n children: React.ReactNode;\n height?: BoxProps['height'];\n} & TestID &\n DataAnalyticsAttribute;\n\nconst _CardBody = ({ height, children, testID, ...rest }: CardBodyProps): React.ReactElement => {\n useVerifyInsideCard('CardBody');\n\n return (\n <BaseBox\n {...metaAttribute({ name: MetaConstants.CardBody, testID })}\n {...makeAnalyticsAttribute(rest)}\n height={height}\n >\n {children}\n </BaseBox>\n );\n};\n\nconst Card = React.forwardRef(_Card);\nconst CardBody = assignWithoutSideEffects(_CardBody, { componentId: ComponentIds.CardBody });\n\nexport { Card, CardBody };\n"],"names":["ComponentIds","CardHeader","CardHeaderTrailing","CardHeaderLeading","CardFooter","CardFooterTrailing","CardFooterLeading","CardBody","CardHeaderIcon","CardHeaderCounter","CardHeaderBadge","CardHeaderAmount","CardHeaderText","CardHeaderLink","CardHeaderIconButton","_Card","_ref","ref","children","_ref$backgroundColor","backgroundColor","_ref$borderRadius","borderRadius","_ref$elevation","elevation","testID","_ref$padding","padding","width","height","minHeight","minWidth","maxWidth","onClick","_ref$isSelected","isSelected","accessibilityLabel","_ref$shouldScaleOnHov","shouldScaleOnHover","onHover","href","target","rel","as","_ref$size","size","rest","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","isFocused","setIsFocused","useVerifyAllowedChildren","componentName","allowedComponents","linkOverlayProps","_objectSpread","metaAttribute","name","CARD_LINK_OVERLAY_ID","makeAccessible","label","pressed","undefined","onFocus","onBlur","defaultRel","checkboxGroupProps","useCheckboxGroupContext","radioGroupProps","useRadioGroupContext","getGroupProps","Object","keys","length","groupProps","_validationState","validationState","_jsx","CardProvider","CardRoot","display","onMouseEnter","isReactNative","MetaConstants","Card","getStyledProps","makeAnalyticsAttribute","_jsxs","CardSurface","textAlign","LinkOverlay","_CardBody","_ref2","_excluded2","useVerifyInsideCard","BaseBox","forwardRef","assignWithoutSideEffects","componentId"],"mappings":"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"}
|
|
@@ -3,26 +3,31 @@ import '../../utils/logger/index.js';
|
|
|
3
3
|
import { jsx } from 'react/jsx-runtime';
|
|
4
4
|
import { throwBladeError } from '../../utils/logger/logger.js';
|
|
5
5
|
|
|
6
|
-
var CardContext = /*#__PURE__*/React__default.createContext(
|
|
6
|
+
var CardContext = /*#__PURE__*/React__default.createContext({
|
|
7
|
+
size: undefined
|
|
8
|
+
});
|
|
7
9
|
var useVerifyInsideCard = function useVerifyInsideCard(componentName) {
|
|
8
10
|
var context = React__default.useContext(CardContext);
|
|
9
11
|
if (false) {
|
|
10
|
-
if (!context) {
|
|
12
|
+
if (!(context !== null && context !== void 0 && context.size)) {
|
|
11
13
|
throwBladeError({
|
|
12
14
|
message: "".concat(componentName, " cannot be used outside of Card component"),
|
|
13
15
|
moduleName: 'Card'
|
|
14
16
|
});
|
|
15
17
|
}
|
|
16
18
|
}
|
|
17
|
-
return
|
|
19
|
+
return context;
|
|
18
20
|
};
|
|
19
21
|
var CardProvider = function CardProvider(_ref) {
|
|
20
|
-
var children = _ref.children
|
|
22
|
+
var children = _ref.children,
|
|
23
|
+
size = _ref.size;
|
|
21
24
|
return /*#__PURE__*/jsx(CardContext.Provider, {
|
|
22
|
-
value:
|
|
25
|
+
value: {
|
|
26
|
+
size: size
|
|
27
|
+
},
|
|
23
28
|
children: children
|
|
24
29
|
});
|
|
25
30
|
};
|
|
26
31
|
|
|
27
|
-
export { CardProvider, useVerifyInsideCard };
|
|
32
|
+
export { CardContext, CardProvider, useVerifyInsideCard };
|
|
28
33
|
//# sourceMappingURL=CardContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardContext.js","sources":["../../../../../../src/components/Card/CardContext.tsx"],"sourcesContent":["import React from 'react';\nimport { throwBladeError } from '~utils/logger';\n\ntype CardContextType =
|
|
1
|
+
{"version":3,"file":"CardContext.js","sources":["../../../../../../src/components/Card/CardContext.tsx"],"sourcesContent":["import React from 'react';\nimport { throwBladeError } from '~utils/logger';\n\ntype CardContextType = { size: 'large' | 'medium' | undefined };\nconst CardContext = React.createContext<CardContextType>({ size: undefined });\n\nconst useVerifyInsideCard = (componentName: string): CardContextType => {\n const context = React.useContext(CardContext);\n if (__DEV__) {\n if (!context?.size) {\n throwBladeError({\n message: `${componentName} cannot be used outside of Card component`,\n moduleName: 'Card',\n });\n }\n }\n return context;\n};\n\ntype CardProviderProps = { children: React.ReactNode };\nconst CardProvider = ({\n children,\n size,\n}: CardProviderProps & { size: 'large' | 'medium' }): React.ReactElement => {\n return <CardContext.Provider value={{ size }}>{children}</CardContext.Provider>;\n};\n\nexport { useVerifyInsideCard, CardProvider, CardContext };\n"],"names":["CardContext","React","createContext","size","undefined","useVerifyInsideCard","componentName","context","useContext","throwBladeError","message","concat","moduleName","CardProvider","_ref","children","_jsx","Provider","value"],"mappings":";;;;;AAIA,IAAMA,WAAW,gBAAGC,cAAK,CAACC,aAAa,CAAkB;AAAEC,EAAAA,IAAI,EAAEC,SAAAA;AAAU,CAAC,EAAC;AAE7E,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,aAAqB,EAAsB;AACtE,EAAA,IAAMC,OAAO,GAAGN,cAAK,CAACO,UAAU,CAACR,WAAW,CAAC,CAAA;AAC7C,EAAA,IAAI,KAAO,EAAE;IACX,IAAI,EAACO,OAAO,KAAPA,IAAAA,IAAAA,OAAO,eAAPA,OAAO,CAAEJ,IAAI,CAAE,EAAA;AAClBM,MAAAA,eAAe,CAAC;AACdC,QAAAA,OAAO,EAAAC,EAAAA,CAAAA,MAAA,CAAKL,aAAa,EAA2C,2CAAA,CAAA;AACpEM,QAAAA,UAAU,EAAE,MAAA;AACd,OAAC,CAAC,CAAA;AACJ,KAAA;AACF,GAAA;AACA,EAAA,OAAOL,OAAO,CAAA;AAChB,EAAC;AAGD,IAAMM,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAG0D;AAAA,EAAA,IAF1EC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IACRZ,IAAI,GAAAW,IAAA,CAAJX,IAAI,CAAA;AAEJ,EAAA,oBAAOa,GAAA,CAAChB,WAAW,CAACiB,QAAQ,EAAA;AAACC,IAAAA,KAAK,EAAE;AAAEf,MAAAA,IAAI,EAAJA,IAAAA;KAAO;AAAAY,IAAAA,QAAA,EAAEA,QAAAA;AAAQ,GAAuB,CAAC,CAAA;AACjF;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
2
2
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
3
|
-
import 'react';
|
|
4
|
-
import { useVerifyInsideCard } from './CardContext.js';
|
|
3
|
+
import { useContext } from 'react';
|
|
4
|
+
import { useVerifyInsideCard, CardContext } from './CardContext.js';
|
|
5
5
|
import { ComponentIds } from './Card.js';
|
|
6
6
|
import '../Badge/index.js';
|
|
7
7
|
import '../Link/index.js';
|
|
@@ -137,6 +137,7 @@ var _CardHeader = function _CardHeader(_ref2) {
|
|
|
137
137
|
var CardHeader = /*#__PURE__*/assignWithoutSideEffects(_CardHeader, {
|
|
138
138
|
componentId: ComponentIds.CardHeader
|
|
139
139
|
});
|
|
140
|
+
var CardHeaderSuffixComponents = [ComponentIds.CardHeaderCounter, ComponentIds.CardHeaderLink];
|
|
140
141
|
var _CardHeaderLeading = function _CardHeaderLeading(_ref3) {
|
|
141
142
|
var title = _ref3.title,
|
|
142
143
|
subtitle = _ref3.subtitle,
|
|
@@ -144,6 +145,8 @@ var _CardHeaderLeading = function _CardHeaderLeading(_ref3) {
|
|
|
144
145
|
suffix = _ref3.suffix,
|
|
145
146
|
rest = _objectWithoutProperties(_ref3, _excluded2);
|
|
146
147
|
useVerifyInsideCard('CardHeaderLeading');
|
|
148
|
+
var _useContext = useContext(CardContext),
|
|
149
|
+
size = _useContext.size;
|
|
147
150
|
if (false) {
|
|
148
151
|
if (prefix && !isValidAllowedChildren(prefix, ComponentIds.CardHeaderIcon)) {
|
|
149
152
|
throwBladeError({
|
|
@@ -151,62 +154,53 @@ var _CardHeaderLeading = function _CardHeaderLeading(_ref3) {
|
|
|
151
154
|
moduleName: 'CardHeaderLeading'
|
|
152
155
|
});
|
|
153
156
|
}
|
|
154
|
-
if (suffix && !isValidAllowedChildren(suffix, ComponentIds.CardHeaderCounter)) {
|
|
155
|
-
throwBladeError({
|
|
156
|
-
message: "Only `".concat(ComponentIds.CardHeaderCounter, "` component is accepted in prefix"),
|
|
157
|
-
moduleName: 'CardHeaderLeading'
|
|
158
|
-
});
|
|
159
|
-
}
|
|
160
157
|
}
|
|
161
|
-
|
|
162
|
-
|
|
158
|
+
var isSuffixACardComponent = CardHeaderSuffixComponents.includes(getComponentId(suffix));
|
|
159
|
+
return /*#__PURE__*/jsx(BaseBox, _objectSpread(_objectSpread({}, makeAnalyticsAttribute(rest)), {}, {
|
|
163
160
|
display: "flex",
|
|
164
|
-
flexDirection: "
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
161
|
+
flexDirection: "column",
|
|
162
|
+
gap: "spacing.4",
|
|
163
|
+
children: /*#__PURE__*/jsxs(BaseBox, {
|
|
164
|
+
flex: 1,
|
|
168
165
|
display: "flex",
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
166
|
+
flexDirection: "row",
|
|
167
|
+
children: [prefix && /*#__PURE__*/jsx(BaseBox, {
|
|
168
|
+
marginRight: "spacing.3",
|
|
169
|
+
alignSelf: "center",
|
|
173
170
|
display: "flex",
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
children: [/*#__PURE__*/
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
171
|
+
children: prefix
|
|
172
|
+
}), /*#__PURE__*/jsxs(BaseBox, {
|
|
173
|
+
marginRight: "spacing.5",
|
|
174
|
+
children: [/*#__PURE__*/jsxs(BaseBox, {
|
|
175
|
+
display: "flex",
|
|
176
|
+
flexDirection: "row",
|
|
177
|
+
alignItems: "center",
|
|
178
|
+
flexWrap: "wrap",
|
|
179
|
+
children: [/*#__PURE__*/jsx(Text, {
|
|
180
|
+
color: "surface.text.gray.normal",
|
|
181
|
+
size: size,
|
|
182
|
+
weight: "semibold",
|
|
183
|
+
children: title
|
|
184
|
+
}), suffix && isSuffixACardComponent ? /*#__PURE__*/jsx(BaseBox, {
|
|
185
|
+
marginLeft: "spacing.3",
|
|
186
|
+
children: suffix
|
|
187
|
+
}) : suffix]
|
|
188
|
+
}), subtitle && /*#__PURE__*/jsx(Text, {
|
|
189
|
+
color: "surface.text.gray.subtle",
|
|
190
|
+
textAlign: "left",
|
|
191
|
+
size: "small",
|
|
192
|
+
children: subtitle
|
|
185
193
|
})]
|
|
186
|
-
}), subtitle && /*#__PURE__*/jsx(Text, {
|
|
187
|
-
color: "surface.text.gray.subtle",
|
|
188
|
-
textAlign: "left",
|
|
189
|
-
size: "small",
|
|
190
|
-
children: subtitle
|
|
191
194
|
})]
|
|
192
|
-
})
|
|
195
|
+
})
|
|
193
196
|
}));
|
|
194
197
|
};
|
|
195
198
|
var CardHeaderLeading = /*#__PURE__*/assignWithoutSideEffects(_CardHeaderLeading, {
|
|
196
199
|
componentId: ComponentIds.CardHeaderLeading
|
|
197
200
|
});
|
|
198
|
-
var headerTrailingAllowedComponents = [ComponentIds.CardHeaderLink, ComponentIds.CardHeaderText, ComponentIds.CardHeaderIconButton, ComponentIds.CardHeaderBadge, ComponentIds.CardHeaderAmount];
|
|
199
201
|
var _CardHeaderTrailing = function _CardHeaderTrailing(_ref4) {
|
|
200
202
|
var visual = _ref4.visual;
|
|
201
203
|
useVerifyInsideCard('CardHeaderTrailing');
|
|
202
|
-
if (false) {
|
|
203
|
-
if (visual && !headerTrailingAllowedComponents.includes(getComponentId(visual))) {
|
|
204
|
-
throwBladeError({
|
|
205
|
-
message: "Only one of `".concat(headerTrailingAllowedComponents.join(', '), "` component is accepted in visual"),
|
|
206
|
-
moduleName: 'CardHeaderTrailing'
|
|
207
|
-
});
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
204
|
return /*#__PURE__*/jsx(BaseBox, {
|
|
211
205
|
alignSelf: "center",
|
|
212
206
|
children: visual
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardHeader.js","sources":["../../../../../../src/components/Card/CardHeader.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport { useVerifyInsideCard } from './CardContext';\nimport { ComponentIds } from './Card';\nimport type { CardSpacingValueType } from './types';\nimport type { BadgeProps } from '~components/Badge';\nimport { Badge } from '~components/Badge';\nimport type { LinkProps } from '~components/Link';\nimport { Link } from '~components/Link';\nimport type { ButtonProps } from '~components/Button';\nimport { Button } from '~components/Button';\nimport { Counter } from '~components/Counter';\nimport type { CounterProps } from '~components/Counter';\nimport { Divider } from '~components/Divider';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { TextProps, TextVariant } from '~components/Typography';\nimport { Text } from '~components/Typography';\nimport type { IconComponent } from '~components/Icons';\nimport { minHeight } from '~components/Button/BaseButton/buttonTokens';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { DataAnalyticsAttribute, TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { makeSpace } from '~utils/makeSpace';\nimport { getComponentId, isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { throwBladeError } from '~utils/logger';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren/useVerifyAllowedChildren';\nimport type { AmountProps } from '~components/Amount';\nimport { Amount } from '~components/Amount';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst _CardHeaderIcon = ({ icon: Icon }: { icon: IconComponent }): React.ReactElement => {\n useVerifyInsideCard('CardHeaderIcon');\n\n return <Icon color=\"surface.icon.gray.normal\" size=\"large\" />;\n};\nconst CardHeaderIcon = assignWithoutSideEffects(_CardHeaderIcon, {\n componentId: ComponentIds.CardHeaderIcon,\n});\n\nconst _CardHeaderCounter = (props: CounterProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderCounter');\n\n return <Counter {...props} />;\n};\nconst CardHeaderCounter = assignWithoutSideEffects(_CardHeaderCounter, {\n componentId: ComponentIds.CardHeaderCounter,\n});\n\nconst _CardHeaderBadge = (props: BadgeProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderBadge');\n\n return <Badge {...props} />;\n};\nconst CardHeaderBadge = assignWithoutSideEffects(_CardHeaderBadge, {\n componentId: ComponentIds.CardHeaderBadge,\n});\n\nconst _CardHeaderAmount = (props: AmountProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderAmount');\n\n return <Amount {...props} />;\n};\n\nconst CardHeaderAmount = assignWithoutSideEffects(_CardHeaderAmount, {\n componentId: ComponentIds.CardHeaderAmount,\n});\n\nconst _CardHeaderText = (props: TextProps<{ variant: TextVariant }>): React.ReactElement => {\n useVerifyInsideCard('CardHeaderText');\n\n return <Text textAlign=\"left\" {...props} />;\n};\nconst CardHeaderText = assignWithoutSideEffects(_CardHeaderText, {\n componentId: ComponentIds.CardHeaderText,\n});\n\nconst _CardHeaderLink = (props: LinkProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderLink');\n\n return <Link {...props} />;\n};\nconst CardHeaderLink = assignWithoutSideEffects(_CardHeaderLink, {\n componentId: ComponentIds.CardHeaderLink,\n});\n\ntype CardHeaderIconButtonProps = Omit<\n ButtonProps,\n 'variant' | 'size' | 'iconPosition' | 'isFullWidth' | 'children'\n> & {\n icon: IconComponent;\n};\n\nconst _CardHeaderIconButton = (props: CardHeaderIconButtonProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderIconButton');\n\n return (\n <BaseBox width={makeSpace(minHeight.xsmall)}>\n <Button {...props} variant=\"tertiary\" size=\"xsmall\" iconPosition=\"left\" isFullWidth />\n </BaseBox>\n );\n};\nconst CardHeaderIconButton = assignWithoutSideEffects(_CardHeaderIconButton, {\n componentId: ComponentIds.CardHeaderIconButton,\n});\n\ntype CardHeaderProps = {\n children?: React.ReactNode;\n /**\n * For spacing between divider and header title\n */\n paddingBottom?: CardSpacingValueType;\n /**\n * For spacing between body content and divider\n */\n marginBottom?: CardSpacingValueType;\n /**\n * @default true\n */\n showDivider?: boolean;\n} & TestID &\n DataAnalyticsAttribute;\n\nconst _CardHeader = ({\n children,\n testID,\n marginBottom = 'spacing.4',\n paddingBottom = 'spacing.4',\n showDivider = true,\n ...rest\n}: CardHeaderProps): React.ReactElement => {\n useVerifyInsideCard('CardHeader');\n useVerifyAllowedChildren({\n children,\n componentName: 'CardHeader',\n allowedComponents: [ComponentIds.CardHeaderLeading, ComponentIds.CardHeaderTrailing],\n });\n\n return (\n <BaseBox\n marginBottom={marginBottom}\n {...metaAttribute({ name: MetaConstants.CardHeader, testID })}\n {...makeAnalyticsAttribute(rest)}\n >\n <BaseBox\n paddingBottom={paddingBottom}\n display=\"flex\"\n flexDirection=\"row\"\n justifyContent=\"space-between\"\n >\n {children}\n </BaseBox>\n {showDivider ? <Divider /> : null}\n </BaseBox>\n );\n};\nconst CardHeader = assignWithoutSideEffects(_CardHeader, { componentId: ComponentIds.CardHeader });\n\ntype CardHeaderLeadingProps = {\n title: string;\n subtitle?: string;\n /**\n * prefix element of Card\n *\n * Accepts: `CardHeaderIcon` component\n */\n prefix?: React.ReactNode;\n /**\n * suffix element of Card\n *\n * Accepts: `CardHeaderCounter` component\n */\n suffix?: React.ReactNode;\n} & DataAnalyticsAttribute;\nconst _CardHeaderLeading = ({\n title,\n subtitle,\n prefix,\n suffix,\n ...rest\n}: CardHeaderLeadingProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderLeading');\n\n if (__DEV__) {\n if (prefix && !isValidAllowedChildren(prefix, ComponentIds.CardHeaderIcon)) {\n throwBladeError({\n message: `Only \\`${ComponentIds.CardHeaderIcon}\\` component is accepted in prefix`,\n moduleName: 'CardHeaderLeading',\n });\n }\n\n if (suffix && !isValidAllowedChildren(suffix, ComponentIds.CardHeaderCounter)) {\n throwBladeError({\n message: `Only \\`${ComponentIds.CardHeaderCounter}\\` component is accepted in prefix`,\n moduleName: 'CardHeaderLeading',\n });\n }\n }\n\n return (\n <BaseBox {...makeAnalyticsAttribute(rest)} flex={1} display=\"flex\" flexDirection=\"row\">\n <BaseBox marginRight=\"spacing.3\" alignSelf=\"center\" display=\"flex\">\n {prefix}\n </BaseBox>\n <BaseBox marginRight=\"spacing.5\">\n <BaseBox display=\"flex\" flexDirection=\"row\" alignItems=\"center\" flexWrap=\"wrap\">\n <Text color=\"surface.text.gray.normal\" size=\"large\" weight=\"semibold\">\n {title}\n </Text>\n <BaseBox marginLeft=\"spacing.3\">{suffix}</BaseBox>\n </BaseBox>\n {subtitle && (\n <Text color=\"surface.text.gray.subtle\" textAlign=\"left\" size=\"small\">\n {subtitle}\n </Text>\n )}\n </BaseBox>\n </BaseBox>\n );\n};\nconst CardHeaderLeading = assignWithoutSideEffects(_CardHeaderLeading, {\n componentId: ComponentIds.CardHeaderLeading,\n});\n\ntype CardHeaderTrailingProps = {\n /**\n * Renders a visual ornament in card header trailing section\n *\n * Accepts: `CardHeaderLink`, `CardHeaderText`, `CardHeaderIconButton`, `CardHeaderBadge`\n */\n visual?: React.ReactNode;\n};\n\nconst headerTrailingAllowedComponents = [\n ComponentIds.CardHeaderLink,\n ComponentIds.CardHeaderText,\n ComponentIds.CardHeaderIconButton,\n ComponentIds.CardHeaderBadge,\n ComponentIds.CardHeaderAmount,\n];\n\nconst _CardHeaderTrailing = ({ visual }: CardHeaderTrailingProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderTrailing');\n\n if (__DEV__) {\n if (visual && !headerTrailingAllowedComponents.includes(getComponentId(visual)!)) {\n throwBladeError({\n message: `Only one of \\`${headerTrailingAllowedComponents.join(\n ', ',\n )}\\` component is accepted in visual`,\n moduleName: 'CardHeaderTrailing',\n });\n }\n }\n\n return <BaseBox alignSelf=\"center\">{visual}</BaseBox>;\n};\nconst CardHeaderTrailing = assignWithoutSideEffects(_CardHeaderTrailing, {\n componentId: ComponentIds.CardHeaderTrailing,\n});\n\nexport {\n CardHeader,\n CardHeaderLeading,\n CardHeaderTrailing,\n CardHeaderBadge,\n CardHeaderIcon,\n CardHeaderCounter,\n CardHeaderText,\n CardHeaderLink,\n CardHeaderAmount,\n CardHeaderIconButton,\n};\n"],"names":["_CardHeaderIcon","_ref","Icon","icon","useVerifyInsideCard","_jsx","color","size","CardHeaderIcon","assignWithoutSideEffects","componentId","ComponentIds","_CardHeaderCounter","props","Counter","_objectSpread","CardHeaderCounter","_CardHeaderBadge","Badge","CardHeaderBadge","_CardHeaderAmount","Amount","CardHeaderAmount","_CardHeaderText","Text","textAlign","CardHeaderText","_CardHeaderLink","Link","CardHeaderLink","_CardHeaderIconButton","BaseBox","width","makeSpace","minHeight","xsmall","children","Button","variant","iconPosition","isFullWidth","CardHeaderIconButton","_CardHeader","_ref2","testID","_ref2$marginBottom","marginBottom","_ref2$paddingBottom","paddingBottom","_ref2$showDivider","showDivider","rest","_objectWithoutProperties","_excluded","useVerifyAllowedChildren","componentName","allowedComponents","CardHeaderLeading","CardHeaderTrailing","_jsxs","metaAttribute","name","MetaConstants","CardHeader","makeAnalyticsAttribute","display","flexDirection","justifyContent","Divider","_CardHeaderLeading","_ref3","title","subtitle","prefix","suffix","_excluded2","isValidAllowedChildren","throwBladeError","message","concat","moduleName","flex","marginRight","alignSelf","alignItems","flexWrap","weight","marginLeft","headerTrailingAllowedComponents","_CardHeaderTrailing","_ref4","visual","includes","getComponentId","join"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CardHeader.js","sources":["../../../../../../src/components/Card/CardHeader.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useContext } from 'react';\nimport { useVerifyInsideCard, CardContext } from './CardContext';\nimport { ComponentIds } from './Card';\nimport type { CardSpacingValueType } from './types';\nimport type { BadgeProps } from '~components/Badge';\nimport { Badge } from '~components/Badge';\nimport type { LinkProps } from '~components/Link';\nimport { Link } from '~components/Link';\nimport type { ButtonProps } from '~components/Button';\nimport { Button } from '~components/Button';\nimport { Counter } from '~components/Counter';\nimport type { CounterProps } from '~components/Counter';\nimport { Divider } from '~components/Divider';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { TextProps, TextVariant } from '~components/Typography';\nimport { Text } from '~components/Typography';\nimport type { IconComponent } from '~components/Icons';\nimport { minHeight } from '~components/Button/BaseButton/buttonTokens';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { DataAnalyticsAttribute, TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { makeSpace } from '~utils/makeSpace';\nimport { getComponentId, isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { throwBladeError } from '~utils/logger';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren/useVerifyAllowedChildren';\nimport type { AmountProps } from '~components/Amount';\nimport { Amount } from '~components/Amount';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst _CardHeaderIcon = ({ icon: Icon }: { icon: IconComponent }): React.ReactElement => {\n useVerifyInsideCard('CardHeaderIcon');\n\n return <Icon color=\"surface.icon.gray.normal\" size=\"large\" />;\n};\nconst CardHeaderIcon = assignWithoutSideEffects(_CardHeaderIcon, {\n componentId: ComponentIds.CardHeaderIcon,\n});\n\nconst _CardHeaderCounter = (props: CounterProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderCounter');\n\n return <Counter {...props} />;\n};\nconst CardHeaderCounter = assignWithoutSideEffects(_CardHeaderCounter, {\n componentId: ComponentIds.CardHeaderCounter,\n});\n\nconst _CardHeaderBadge = (props: BadgeProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderBadge');\n\n return <Badge {...props} />;\n};\nconst CardHeaderBadge = assignWithoutSideEffects(_CardHeaderBadge, {\n componentId: ComponentIds.CardHeaderBadge,\n});\n\nconst _CardHeaderAmount = (props: AmountProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderAmount');\n\n return <Amount {...props} />;\n};\n\nconst CardHeaderAmount = assignWithoutSideEffects(_CardHeaderAmount, {\n componentId: ComponentIds.CardHeaderAmount,\n});\n\nconst _CardHeaderText = (props: TextProps<{ variant: TextVariant }>): React.ReactElement => {\n useVerifyInsideCard('CardHeaderText');\n\n return <Text textAlign=\"left\" {...props} />;\n};\nconst CardHeaderText = assignWithoutSideEffects(_CardHeaderText, {\n componentId: ComponentIds.CardHeaderText,\n});\n\nconst _CardHeaderLink = (props: LinkProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderLink');\n\n return <Link {...props} />;\n};\nconst CardHeaderLink = assignWithoutSideEffects(_CardHeaderLink, {\n componentId: ComponentIds.CardHeaderLink,\n});\n\ntype CardHeaderIconButtonProps = Omit<\n ButtonProps,\n 'variant' | 'size' | 'iconPosition' | 'isFullWidth' | 'children'\n> & {\n icon: IconComponent;\n};\n\nconst _CardHeaderIconButton = (props: CardHeaderIconButtonProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderIconButton');\n\n return (\n <BaseBox width={makeSpace(minHeight.xsmall)}>\n <Button {...props} variant=\"tertiary\" size=\"xsmall\" iconPosition=\"left\" isFullWidth />\n </BaseBox>\n );\n};\nconst CardHeaderIconButton = assignWithoutSideEffects(_CardHeaderIconButton, {\n componentId: ComponentIds.CardHeaderIconButton,\n});\n\ntype CardHeaderProps = {\n children?: React.ReactNode;\n /**\n * For spacing between divider and header title\n */\n paddingBottom?: CardSpacingValueType;\n /**\n * For spacing between body content and divider\n */\n marginBottom?: CardSpacingValueType;\n /**\n * @default true\n */\n showDivider?: boolean;\n} & TestID &\n DataAnalyticsAttribute;\n\nconst _CardHeader = ({\n children,\n testID,\n marginBottom = 'spacing.4',\n paddingBottom = 'spacing.4',\n showDivider = true,\n ...rest\n}: CardHeaderProps): React.ReactElement => {\n useVerifyInsideCard('CardHeader');\n useVerifyAllowedChildren({\n children,\n componentName: 'CardHeader',\n allowedComponents: [ComponentIds.CardHeaderLeading, ComponentIds.CardHeaderTrailing],\n });\n\n return (\n <BaseBox\n marginBottom={marginBottom}\n {...metaAttribute({ name: MetaConstants.CardHeader, testID })}\n {...makeAnalyticsAttribute(rest)}\n >\n <BaseBox\n paddingBottom={paddingBottom}\n display=\"flex\"\n flexDirection=\"row\"\n justifyContent=\"space-between\"\n >\n {children}\n </BaseBox>\n {showDivider ? <Divider /> : null}\n </BaseBox>\n );\n};\nconst CardHeader = assignWithoutSideEffects(_CardHeader, { componentId: ComponentIds.CardHeader });\n\nconst CardHeaderSuffixComponents = [ComponentIds.CardHeaderCounter, ComponentIds.CardHeaderLink];\ntype CardHeaderLeadingProps = {\n title: string;\n subtitle?: string;\n /**\n * prefix element of Card\n *\n * Accepts: `CardHeaderIcon` component\n */\n prefix?: React.ReactNode;\n /**\n * suffix element of Card\n *\n * it add marginLeft to `CardHeaderCounter`,`CardHeaderLink` components by default.\n */\n suffix?: React.ReactNode;\n} & DataAnalyticsAttribute;\nconst _CardHeaderLeading = ({\n title,\n subtitle,\n prefix,\n suffix,\n ...rest\n}: CardHeaderLeadingProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderLeading');\n const { size } = useContext(CardContext);\n\n if (__DEV__) {\n if (prefix && !isValidAllowedChildren(prefix, ComponentIds.CardHeaderIcon)) {\n throwBladeError({\n message: `Only \\`${ComponentIds.CardHeaderIcon}\\` component is accepted in prefix`,\n moduleName: 'CardHeaderLeading',\n });\n }\n }\n\n const isSuffixACardComponent = CardHeaderSuffixComponents.includes(getComponentId(suffix)!);\n\n return (\n <BaseBox\n {...makeAnalyticsAttribute(rest)}\n display=\"flex\"\n flexDirection=\"column\"\n gap=\"spacing.4\"\n >\n <BaseBox flex={1} display=\"flex\" flexDirection=\"row\">\n {prefix && (\n <BaseBox marginRight=\"spacing.3\" alignSelf=\"center\" display=\"flex\">\n {prefix}\n </BaseBox>\n )}\n\n <BaseBox marginRight=\"spacing.5\">\n <BaseBox display=\"flex\" flexDirection=\"row\" alignItems=\"center\" flexWrap=\"wrap\">\n <Text color=\"surface.text.gray.normal\" size={size} weight=\"semibold\">\n {title}\n </Text>\n {/* if we are using CardHeaderSuffixComponents we still need marginLeft for spacing ,\n but if it's not a CardHeaderSuffixComponents we don't need marginLeft for example in case of tooltip */}\n {suffix && isSuffixACardComponent ? (\n <BaseBox marginLeft=\"spacing.3\">{suffix}</BaseBox>\n ) : (\n suffix\n )}\n </BaseBox>\n {subtitle && (\n <Text color=\"surface.text.gray.subtle\" textAlign=\"left\" size=\"small\">\n {subtitle}\n </Text>\n )}\n </BaseBox>\n </BaseBox>\n </BaseBox>\n );\n};\nconst CardHeaderLeading = assignWithoutSideEffects(_CardHeaderLeading, {\n componentId: ComponentIds.CardHeaderLeading,\n});\n\ntype CardHeaderTrailingProps = {\n /**\n * Renders a visual ornament in card header trailing section\n *\n */\n visual?: React.ReactNode;\n};\n\nconst _CardHeaderTrailing = ({ visual }: CardHeaderTrailingProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderTrailing');\n\n return <BaseBox alignSelf=\"center\">{visual}</BaseBox>;\n};\nconst CardHeaderTrailing = assignWithoutSideEffects(_CardHeaderTrailing, {\n componentId: ComponentIds.CardHeaderTrailing,\n});\n\nexport {\n CardHeader,\n CardHeaderLeading,\n CardHeaderTrailing,\n CardHeaderBadge,\n CardHeaderIcon,\n CardHeaderCounter,\n CardHeaderText,\n CardHeaderLink,\n CardHeaderAmount,\n CardHeaderIconButton,\n};\n"],"names":["_CardHeaderIcon","_ref","Icon","icon","useVerifyInsideCard","_jsx","color","size","CardHeaderIcon","assignWithoutSideEffects","componentId","ComponentIds","_CardHeaderCounter","props","Counter","_objectSpread","CardHeaderCounter","_CardHeaderBadge","Badge","CardHeaderBadge","_CardHeaderAmount","Amount","CardHeaderAmount","_CardHeaderText","Text","textAlign","CardHeaderText","_CardHeaderLink","Link","CardHeaderLink","_CardHeaderIconButton","BaseBox","width","makeSpace","minHeight","xsmall","children","Button","variant","iconPosition","isFullWidth","CardHeaderIconButton","_CardHeader","_ref2","testID","_ref2$marginBottom","marginBottom","_ref2$paddingBottom","paddingBottom","_ref2$showDivider","showDivider","rest","_objectWithoutProperties","_excluded","useVerifyAllowedChildren","componentName","allowedComponents","CardHeaderLeading","CardHeaderTrailing","_jsxs","metaAttribute","name","MetaConstants","CardHeader","makeAnalyticsAttribute","display","flexDirection","justifyContent","Divider","CardHeaderSuffixComponents","_CardHeaderLeading","_ref3","title","subtitle","prefix","suffix","_excluded2","_useContext","useContext","CardContext","isValidAllowedChildren","throwBladeError","message","concat","moduleName","isSuffixACardComponent","includes","getComponentId","gap","flex","marginRight","alignSelf","alignItems","flexWrap","weight","marginLeft","_CardHeaderTrailing","_ref4","visual"],"mappings":"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"}
|
|
@@ -249,7 +249,7 @@ var BaseInputVisuals = function BaseInputVisuals(_ref9) {
|
|
|
249
249
|
size: textSize[size],
|
|
250
250
|
variant: "body",
|
|
251
251
|
weight: "regular",
|
|
252
|
-
color: isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.
|
|
252
|
+
color: isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.muted',
|
|
253
253
|
children: prefix
|
|
254
254
|
})
|
|
255
255
|
})) : null, leadingDropDown ? /*#__PURE__*/jsx(BaseBox, {
|