@razorpay/blade 12.38.0 → 12.40.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/Accordion/AccordionItem.js +1 -1
- package/build/lib/native/components/Accordion/AccordionItem.js.map +1 -1
- package/build/lib/native/components/Alert/Alert.js +2 -1
- package/build/lib/native/components/Alert/Alert.js.map +1 -1
- package/build/lib/native/components/Card/CardFooter.js +2 -1
- package/build/lib/native/components/Card/CardFooter.js.map +1 -1
- package/build/lib/native/components/Chip/Chip.js +1 -1
- package/build/lib/native/components/Chip/Chip.js.map +1 -1
- package/build/lib/native/components/Form/FormLabel.js +1 -1
- package/build/lib/native/components/Form/FormLabel.js.map +1 -1
- package/build/lib/native/components/Icons/CompanyRegistrationIcon/CompanyRegistrationIcon.js +1 -1
- package/build/lib/native/components/Icons/CompanyRegistrationIcon/CompanyRegistrationIcon.js.map +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInput.js +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/native/components/Input/OTPInput/OTPInput.js +1 -1
- package/build/lib/native/components/Input/OTPInput/OTPInput.js.map +1 -1
- package/build/lib/native/components/Input/PasswordInput/PasswordInput.js +1 -1
- package/build/lib/native/components/Input/PasswordInput/PasswordInput.js.map +1 -1
- package/build/lib/native/components/Input/SearchInput/SearchInput.js +1 -1
- package/build/lib/native/components/Input/SearchInput/SearchInput.js.map +1 -1
- package/build/lib/native/components/Input/TextArea/TextArea.js +1 -1
- package/build/lib/native/components/Input/TextArea/TextArea.js.map +1 -1
- package/build/lib/native/components/Input/TextInput/TextInput.js +1 -1
- package/build/lib/native/components/Input/TextInput/TextInput.js.map +1 -1
- package/build/lib/native/components/QuickFilters/QuickFilter.js +1 -1
- package/build/lib/native/components/QuickFilters/QuickFilter.js.map +1 -1
- package/build/lib/native/utils/makeAnalyticsAttribute/makeAnalyticsConstants.js +4 -0
- package/build/lib/native/utils/makeAnalyticsAttribute/makeAnalyticsConstants.js.map +1 -0
- package/build/lib/web/development/components/Accordion/AccordionButton.web.js +5 -7
- package/build/lib/web/development/components/Accordion/AccordionButton.web.js.map +1 -1
- package/build/lib/web/development/components/Accordion/AccordionItem.js +7 -5
- package/build/lib/web/development/components/Accordion/AccordionItem.js.map +1 -1
- package/build/lib/web/development/components/Alert/Alert.js +2 -0
- package/build/lib/web/development/components/Alert/Alert.js.map +1 -1
- package/build/lib/web/development/components/Avatar/AvatarButton.js +3 -0
- package/build/lib/web/development/components/Avatar/AvatarButton.js.map +1 -1
- package/build/lib/web/development/components/Card/CardFooter.js +3 -0
- package/build/lib/web/development/components/Card/CardFooter.js.map +1 -1
- package/build/lib/web/development/components/Chip/Chip.js +5 -5
- package/build/lib/web/development/components/Chip/Chip.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/BaseDatePicker.web.js +6 -2
- package/build/lib/web/development/components/DatePicker/BaseDatePicker.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/Calendar.web.js +4 -2
- package/build/lib/web/development/components/DatePicker/Calendar.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/CalendarFooter.web.js +4 -0
- package/build/lib/web/development/components/DatePicker/CalendarFooter.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/DateInput.web.js +10 -4
- package/build/lib/web/development/components/DatePicker/DateInput.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/QuickSelection/PresetSideBar.web.js +1 -0
- package/build/lib/web/development/components/DatePicker/QuickSelection/PresetSideBar.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/QuickSelection/QuickSelectionItem.web.js +2 -1
- package/build/lib/web/development/components/DatePicker/QuickSelection/QuickSelectionItem.web.js.map +1 -1
- package/build/lib/web/development/components/FileUpload/FileUploadItem.js +3 -0
- package/build/lib/web/development/components/FileUpload/FileUploadItem.js.map +1 -1
- package/build/lib/web/development/components/Form/FormLabel.js +24 -4
- package/build/lib/web/development/components/Form/FormLabel.js.map +1 -1
- package/build/lib/web/development/components/Icons/CompanyRegistrationIcon/CompanyRegistrationIcon.js +1 -3
- package/build/lib/web/development/components/Icons/CompanyRegistrationIcon/CompanyRegistrationIcon.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/BaseInput.js +6 -2
- package/build/lib/web/development/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/web/development/components/Input/OTPInput/OTPInput.js +5 -1
- package/build/lib/web/development/components/Input/OTPInput/OTPInput.js.map +1 -1
- package/build/lib/web/development/components/Input/PasswordInput/PasswordInput.js +5 -1
- package/build/lib/web/development/components/Input/PasswordInput/PasswordInput.js.map +1 -1
- package/build/lib/web/development/components/Input/PhoneNumberInput/PhoneNumberInput.web.js +5 -1
- package/build/lib/web/development/components/Input/PhoneNumberInput/PhoneNumberInput.web.js.map +1 -1
- package/build/lib/web/development/components/Input/SearchInput/SearchInput.js +5 -1
- package/build/lib/web/development/components/Input/SearchInput/SearchInput.js.map +1 -1
- package/build/lib/web/development/components/Input/TextArea/TextArea.js +5 -1
- package/build/lib/web/development/components/Input/TextArea/TextArea.js.map +1 -1
- package/build/lib/web/development/components/Input/TextInput/TextInput.js +5 -1
- package/build/lib/web/development/components/Input/TextInput/TextInput.js.map +1 -1
- package/build/lib/web/development/components/Modal/Modal.web.js +6 -7
- package/build/lib/web/development/components/Modal/Modal.web.js.map +1 -1
- package/build/lib/web/development/components/Preview/Preview.web.js +8 -7
- package/build/lib/web/development/components/Preview/Preview.web.js.map +1 -1
- package/build/lib/web/development/components/QuickFilters/QuickFilter.js +9 -7
- package/build/lib/web/development/components/QuickFilters/QuickFilter.js.map +1 -1
- package/build/lib/web/development/components/SpotlightPopoverTour/TourFooter.web.js +12 -2
- package/build/lib/web/development/components/SpotlightPopoverTour/TourFooter.web.js.map +1 -1
- package/build/lib/web/development/components/Table/Table.web.js +6 -3
- package/build/lib/web/development/components/Table/Table.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableBody.web.js +5 -3
- package/build/lib/web/development/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableHeader.web.js +4 -2
- package/build/lib/web/development/components/Table/TableHeader.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TablePagination.web.js +12 -6
- package/build/lib/web/development/components/Table/TablePagination.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableToolbar.web.js +5 -8
- package/build/lib/web/development/components/Table/TableToolbar.web.js.map +1 -1
- package/build/lib/web/development/components/Toast/Toast.web.js +2 -0
- package/build/lib/web/development/components/Toast/Toast.web.js.map +1 -1
- package/build/lib/web/development/utils/makeAnalyticsAttribute/index.js +1 -0
- package/build/lib/web/development/utils/makeAnalyticsAttribute/index.js.map +1 -1
- package/build/lib/web/development/utils/makeAnalyticsAttribute/makeAnalyticsConstants.js +32 -0
- package/build/lib/web/development/utils/makeAnalyticsAttribute/makeAnalyticsConstants.js.map +1 -0
- package/build/lib/web/production/components/Accordion/AccordionButton.web.js +5 -7
- package/build/lib/web/production/components/Accordion/AccordionButton.web.js.map +1 -1
- package/build/lib/web/production/components/Accordion/AccordionItem.js +7 -5
- package/build/lib/web/production/components/Accordion/AccordionItem.js.map +1 -1
- package/build/lib/web/production/components/Alert/Alert.js +2 -0
- package/build/lib/web/production/components/Alert/Alert.js.map +1 -1
- package/build/lib/web/production/components/Avatar/AvatarButton.js +3 -0
- package/build/lib/web/production/components/Avatar/AvatarButton.js.map +1 -1
- package/build/lib/web/production/components/Card/CardFooter.js +3 -0
- package/build/lib/web/production/components/Card/CardFooter.js.map +1 -1
- package/build/lib/web/production/components/Chip/Chip.js +5 -5
- package/build/lib/web/production/components/Chip/Chip.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/BaseDatePicker.web.js +6 -2
- package/build/lib/web/production/components/DatePicker/BaseDatePicker.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/Calendar.web.js +4 -2
- package/build/lib/web/production/components/DatePicker/Calendar.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/CalendarFooter.web.js +4 -0
- package/build/lib/web/production/components/DatePicker/CalendarFooter.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/DateInput.web.js +10 -4
- package/build/lib/web/production/components/DatePicker/DateInput.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/QuickSelection/PresetSideBar.web.js +1 -0
- package/build/lib/web/production/components/DatePicker/QuickSelection/PresetSideBar.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/QuickSelection/QuickSelectionItem.web.js +2 -1
- package/build/lib/web/production/components/DatePicker/QuickSelection/QuickSelectionItem.web.js.map +1 -1
- package/build/lib/web/production/components/FileUpload/FileUploadItem.js +3 -0
- package/build/lib/web/production/components/FileUpload/FileUploadItem.js.map +1 -1
- package/build/lib/web/production/components/Form/FormLabel.js +24 -4
- package/build/lib/web/production/components/Form/FormLabel.js.map +1 -1
- package/build/lib/web/production/components/Icons/CompanyRegistrationIcon/CompanyRegistrationIcon.js +1 -3
- package/build/lib/web/production/components/Icons/CompanyRegistrationIcon/CompanyRegistrationIcon.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/BaseInput.js +6 -2
- package/build/lib/web/production/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/web/production/components/Input/OTPInput/OTPInput.js +5 -1
- package/build/lib/web/production/components/Input/OTPInput/OTPInput.js.map +1 -1
- package/build/lib/web/production/components/Input/PasswordInput/PasswordInput.js +5 -1
- package/build/lib/web/production/components/Input/PasswordInput/PasswordInput.js.map +1 -1
- package/build/lib/web/production/components/Input/PhoneNumberInput/PhoneNumberInput.web.js +5 -1
- package/build/lib/web/production/components/Input/PhoneNumberInput/PhoneNumberInput.web.js.map +1 -1
- package/build/lib/web/production/components/Input/SearchInput/SearchInput.js +5 -1
- package/build/lib/web/production/components/Input/SearchInput/SearchInput.js.map +1 -1
- package/build/lib/web/production/components/Input/TextArea/TextArea.js +5 -1
- package/build/lib/web/production/components/Input/TextArea/TextArea.js.map +1 -1
- package/build/lib/web/production/components/Input/TextInput/TextInput.js +5 -1
- package/build/lib/web/production/components/Input/TextInput/TextInput.js.map +1 -1
- package/build/lib/web/production/components/Modal/Modal.web.js +6 -7
- package/build/lib/web/production/components/Modal/Modal.web.js.map +1 -1
- package/build/lib/web/production/components/Preview/Preview.web.js +8 -7
- package/build/lib/web/production/components/Preview/Preview.web.js.map +1 -1
- package/build/lib/web/production/components/QuickFilters/QuickFilter.js +9 -7
- package/build/lib/web/production/components/QuickFilters/QuickFilter.js.map +1 -1
- package/build/lib/web/production/components/SpotlightPopoverTour/TourFooter.web.js +12 -2
- package/build/lib/web/production/components/SpotlightPopoverTour/TourFooter.web.js.map +1 -1
- package/build/lib/web/production/components/Table/Table.web.js +6 -3
- package/build/lib/web/production/components/Table/Table.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableBody.web.js +5 -3
- package/build/lib/web/production/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableHeader.web.js +4 -2
- package/build/lib/web/production/components/Table/TableHeader.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TablePagination.web.js +12 -6
- package/build/lib/web/production/components/Table/TablePagination.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableToolbar.web.js +5 -8
- package/build/lib/web/production/components/Table/TableToolbar.web.js.map +1 -1
- package/build/lib/web/production/components/Toast/Toast.web.js +2 -0
- package/build/lib/web/production/components/Toast/Toast.web.js.map +1 -1
- package/build/lib/web/production/utils/makeAnalyticsAttribute/index.js +1 -0
- package/build/lib/web/production/utils/makeAnalyticsAttribute/index.js.map +1 -1
- package/build/lib/web/production/utils/makeAnalyticsAttribute/makeAnalyticsConstants.js +32 -0
- package/build/lib/web/production/utils/makeAnalyticsAttribute/makeAnalyticsConstants.js.map +1 -0
- package/build/types/components/index.d.ts +29 -8
- package/build/types/components/index.native.d.ts +26 -7
- package/package.json +1 -1
|
@@ -14,14 +14,15 @@ import { jsxs, jsx } from 'react/jsx-runtime';
|
|
|
14
14
|
import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
|
|
15
15
|
import { Box } from '../Box/Box.js';
|
|
16
16
|
import { Radio } from '../Radio/Radio.js';
|
|
17
|
+
import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
|
|
17
18
|
import { Checkbox } from '../Checkbox/Checkbox.js';
|
|
18
19
|
import { Text } from '../Typography/Text/Text.js';
|
|
19
20
|
import { useQuickFilterGroupContext } from './QuickFilterGroup/QuickFilterContext.js';
|
|
20
21
|
import { Card, CardBody } from '../Card/Card.js';
|
|
21
|
-
import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
|
|
22
22
|
import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
|
|
23
23
|
|
|
24
|
-
var _excluded = ["
|
|
24
|
+
var _excluded = ["value", "title", "trailing", "selectionType", "isSelected"],
|
|
25
|
+
_excluded2 = ["title", "value", "trailing", "testID"];
|
|
25
26
|
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; }
|
|
26
27
|
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; }
|
|
27
28
|
var QuickFilterContent = function QuickFilterContent(_ref) {
|
|
@@ -31,7 +32,8 @@ var QuickFilterContent = function QuickFilterContent(_ref) {
|
|
|
31
32
|
_ref$selectionType = _ref.selectionType,
|
|
32
33
|
selectionType = _ref$selectionType === void 0 ? 'single' : _ref$selectionType,
|
|
33
34
|
_ref$isSelected = _ref.isSelected,
|
|
34
|
-
isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected
|
|
35
|
+
isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected,
|
|
36
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
35
37
|
return /*#__PURE__*/jsxs(BaseBox, {
|
|
36
38
|
display: "flex",
|
|
37
39
|
flexDirection: "row",
|
|
@@ -48,11 +50,11 @@ var QuickFilterContent = function QuickFilterContent(_ref) {
|
|
|
48
50
|
gap: "spacing.2",
|
|
49
51
|
justifyContent: "center",
|
|
50
52
|
alignItems: "center",
|
|
51
|
-
children: [selectionType === 'single' ? /*#__PURE__*/jsx(Radio, {
|
|
53
|
+
children: [selectionType === 'single' ? /*#__PURE__*/jsx(Radio, _objectSpread({
|
|
52
54
|
value: value
|
|
53
|
-
}) : /*#__PURE__*/jsx(Checkbox, {
|
|
55
|
+
}, makeAnalyticsAttribute(rest))) : /*#__PURE__*/jsx(Checkbox, _objectSpread({
|
|
54
56
|
value: value
|
|
55
|
-
}), /*#__PURE__*/jsx(Text, {
|
|
57
|
+
}, makeAnalyticsAttribute(rest))), /*#__PURE__*/jsx(Text, {
|
|
56
58
|
variant: "body",
|
|
57
59
|
size: "medium",
|
|
58
60
|
color: isSelected ? 'interactive.text.primary.subtle' : 'interactive.text.gray.subtle',
|
|
@@ -67,7 +69,7 @@ var QuickFilter = /*#__PURE__*/forwardRef(function (_ref2, ref) {
|
|
|
67
69
|
value = _ref2.value,
|
|
68
70
|
trailing = _ref2.trailing,
|
|
69
71
|
testID = _ref2.testID,
|
|
70
|
-
rest = _objectWithoutProperties(_ref2,
|
|
72
|
+
rest = _objectWithoutProperties(_ref2, _excluded2);
|
|
71
73
|
var _useQuickFilterGroupC = useQuickFilterGroupContext(),
|
|
72
74
|
selectedQuickFilters = _useQuickFilterGroupC.selectedQuickFilters,
|
|
73
75
|
selectionType = _useQuickFilterGroupC.selectionType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuickFilter.js","sources":["../../../../../../src/components/QuickFilters/QuickFilter.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport type { QuickFilterProps, QuickFilterContentProps } from './types';\nimport { useQuickFilterGroupContext } from './QuickFilterGroup';\nimport { Card, CardBody } from '~components/Card';\nimport { Box } from '~components/Box';\nimport { Text } from '~components/Typography';\nimport { Radio } from '~components/Radio';\nimport { Checkbox } from '~components/Checkbox';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { metaAttribute } from '~utils/metaAttribute';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { BladeElementRef } from '~utils/types';\n\nconst QuickFilterContent = ({\n value,\n title,\n trailing,\n selectionType = 'single',\n isSelected = false,\n}: QuickFilterContentProps): React.ReactElement => {\n return (\n <BaseBox\n display=\"flex\"\n flexDirection=\"row\"\n gap=\"spacing.3\"\n width=\"fit-content\"\n justifyContent=\"center\"\n alignItems=\"center\"\n paddingY=\"spacing.3\"\n paddingLeft=\"spacing.3\"\n paddingRight=\"spacing.4\"\n >\n <Box\n display=\"flex\"\n flexDirection=\"row\"\n gap=\"spacing.2\"\n justifyContent=\"center\"\n alignItems=\"center\"\n >\n {selectionType === 'single' ? <Radio value={value}
|
|
1
|
+
{"version":3,"file":"QuickFilter.js","sources":["../../../../../../src/components/QuickFilters/QuickFilter.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport type { QuickFilterProps, QuickFilterContentProps } from './types';\nimport { useQuickFilterGroupContext } from './QuickFilterGroup';\nimport { Card, CardBody } from '~components/Card';\nimport { Box } from '~components/Box';\nimport { Text } from '~components/Typography';\nimport { Radio } from '~components/Radio';\nimport { Checkbox } from '~components/Checkbox';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { metaAttribute } from '~utils/metaAttribute';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { BladeElementRef } from '~utils/types';\n\nconst QuickFilterContent = ({\n value,\n title,\n trailing,\n selectionType = 'single',\n isSelected = false,\n ...rest\n}: QuickFilterContentProps): React.ReactElement => {\n return (\n <BaseBox\n display=\"flex\"\n flexDirection=\"row\"\n gap=\"spacing.3\"\n width=\"fit-content\"\n justifyContent=\"center\"\n alignItems=\"center\"\n paddingY=\"spacing.3\"\n paddingLeft=\"spacing.3\"\n paddingRight=\"spacing.4\"\n >\n <Box\n display=\"flex\"\n flexDirection=\"row\"\n gap=\"spacing.2\"\n justifyContent=\"center\"\n alignItems=\"center\"\n >\n {selectionType === 'single' ? (\n <Radio value={value} {...makeAnalyticsAttribute(rest)} />\n ) : (\n <Checkbox value={value} {...makeAnalyticsAttribute(rest)} />\n )}\n <Text\n variant=\"body\"\n size=\"medium\"\n color={isSelected ? 'interactive.text.primary.subtle' : 'interactive.text.gray.subtle'}\n weight=\"medium\"\n >\n {title}\n </Text>\n </Box>\n\n {trailing}\n </BaseBox>\n );\n};\n\nconst QuickFilter = forwardRef<BladeElementRef, QuickFilterProps>(\n ({ title, value, trailing, testID, ...rest }, ref): React.ReactElement => {\n const { selectedQuickFilters, selectionType } = useQuickFilterGroupContext();\n\n const isQuickFilterSelected = selectedQuickFilters.includes(value);\n return (\n <Card\n padding=\"spacing.0\"\n as=\"label\"\n accessibilityLabel={title}\n borderRadius=\"medium\"\n elevation=\"none\"\n isSelected={isQuickFilterSelected}\n ref={ref}\n {...makeAnalyticsAttribute(rest)}\n {...metaAttribute({ testID })}\n >\n <CardBody>\n <QuickFilterContent\n value={value}\n title={title}\n trailing={trailing}\n selectionType={selectionType}\n isSelected={isQuickFilterSelected}\n {...rest}\n />\n </CardBody>\n </Card>\n );\n },\n);\nexport { QuickFilter };\n"],"names":["QuickFilterContent","_ref","value","title","trailing","_ref$selectionType","selectionType","_ref$isSelected","isSelected","rest","_objectWithoutProperties","_excluded","_jsxs","BaseBox","display","flexDirection","gap","width","justifyContent","alignItems","paddingY","paddingLeft","paddingRight","children","Box","_jsx","Radio","_objectSpread","makeAnalyticsAttribute","Checkbox","Text","variant","size","color","weight","QuickFilter","forwardRef","_ref2","ref","testID","_excluded2","_useQuickFilterGroupC","useQuickFilterGroupContext","selectedQuickFilters","isQuickFilterSelected","includes","Card","padding","as","accessibilityLabel","borderRadius","elevation","metaAttribute","CardBody"],"mappings":"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"}
|
|
@@ -2,10 +2,12 @@ import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
|
2
2
|
import '../Button/index.js';
|
|
3
3
|
import '../Box/index.js';
|
|
4
4
|
import '../Typography/index.js';
|
|
5
|
+
import '../../utils/makeAnalyticsAttribute/index.js';
|
|
5
6
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
6
7
|
import { Box } from '../Box/Box.js';
|
|
7
8
|
import { Text } from '../Typography/Text/Text.js';
|
|
8
9
|
import Button from '../Button/Button/Button.js';
|
|
10
|
+
import { MAKE_ANALYTICS_CONSTANTS } from '../../utils/makeAnalyticsAttribute/makeAnalyticsConstants.js';
|
|
9
11
|
|
|
10
12
|
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; }
|
|
11
13
|
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; }
|
|
@@ -22,6 +24,10 @@ var SpotlightPopoverTourFooter = function SpotlightPopoverTourFooter(_ref) {
|
|
|
22
24
|
var secondaryHasIcon = Boolean(actions === null || actions === void 0 ? void 0 : (_actions$secondary = actions.secondary) === null || _actions$secondary === void 0 ? void 0 : _actions$secondary.icon);
|
|
23
25
|
isBothIcon = primaryHasIcon && secondaryHasIcon;
|
|
24
26
|
}
|
|
27
|
+
var analyticsStepInfoProps = {
|
|
28
|
+
'data-analytics-active-step': activeStep + 1,
|
|
29
|
+
'data-analytics-total-steps': totalSteps
|
|
30
|
+
};
|
|
25
31
|
return /*#__PURE__*/jsxs(Box, {
|
|
26
32
|
display: "flex",
|
|
27
33
|
justifyContent: "space-between",
|
|
@@ -34,15 +40,19 @@ var SpotlightPopoverTourFooter = function SpotlightPopoverTourFooter(_ref) {
|
|
|
34
40
|
}), /*#__PURE__*/jsxs(Box, {
|
|
35
41
|
display: "flex",
|
|
36
42
|
gap: isBothIcon ? 'spacing.3' : 'spacing.4',
|
|
37
|
-
children: [hasSecondaryAction ? /*#__PURE__*/jsx(Button, _objectSpread(_objectSpread({
|
|
43
|
+
children: [hasSecondaryAction ? /*#__PURE__*/jsx(Button, _objectSpread(_objectSpread(_objectSpread({
|
|
38
44
|
size: "small",
|
|
39
45
|
variant: "secondary"
|
|
40
46
|
}, actions.secondary), {}, {
|
|
47
|
+
"data-analytics-name": MAKE_ANALYTICS_CONSTANTS.SPOTLIGHT_POPOVER_TOUR.FOOTER_SECONDARY_ACTION
|
|
48
|
+
}, analyticsStepInfoProps), {}, {
|
|
41
49
|
children: actions === null || actions === void 0 ? void 0 : actions.secondary.text
|
|
42
|
-
})) : null, hasPrimaryAction ? /*#__PURE__*/jsx(Button, _objectSpread(_objectSpread({
|
|
50
|
+
})) : null, hasPrimaryAction ? /*#__PURE__*/jsx(Button, _objectSpread(_objectSpread(_objectSpread({
|
|
43
51
|
size: "small",
|
|
44
52
|
variant: "primary"
|
|
45
53
|
}, actions.primary), {}, {
|
|
54
|
+
"data-analytics-name": MAKE_ANALYTICS_CONSTANTS.SPOTLIGHT_POPOVER_TOUR.FOOTER_PRIMARY_ACTION
|
|
55
|
+
}, analyticsStepInfoProps), {}, {
|
|
46
56
|
children: actions === null || actions === void 0 ? void 0 : actions.primary.text
|
|
47
57
|
})) : null]
|
|
48
58
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TourFooter.web.js","sources":["../../../../../../src/components/SpotlightPopoverTour/TourFooter.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */\nimport type { SpotlightPopoverStepRenderProps } from './types';\nimport type { ButtonProps } from '~components/Button';\nimport { Button } from '~components/Button';\nimport { Box } from '~components/Box';\nimport { Text } from '~components/Typography';\n\ntype SpotlightPopoverFooterAction = {\n text?: string;\n} & Pick<ButtonProps, 'variant' | 'icon' | 'iconPosition' | 'isDisabled' | 'isLoading' | 'onClick'>;\n\ntype SpotlightPopoverTourFooterProps = {\n actions: {\n primary?: SpotlightPopoverFooterAction;\n secondary?: SpotlightPopoverFooterAction;\n };\n};\n\nconst SpotlightPopoverTourFooter = ({\n activeStep,\n totalSteps,\n actions,\n}: SpotlightPopoverTourFooterProps &\n Pick<SpotlightPopoverStepRenderProps, 'activeStep' | 'totalSteps'>): React.ReactElement => {\n const hasPrimaryAction = Boolean(actions?.primary);\n const hasSecondaryAction = Boolean(actions?.secondary);\n\n let isBothIcon = false;\n if (hasPrimaryAction && hasSecondaryAction) {\n const primaryHasIcon = Boolean(actions?.primary?.icon);\n const secondaryHasIcon = Boolean(actions?.secondary?.icon);\n isBothIcon = primaryHasIcon && secondaryHasIcon;\n }\n\n return (\n <Box display=\"flex\" justifyContent=\"space-between\" alignItems=\"center\" gap=\"spacing.7\">\n <Text size=\"small\" weight=\"semibold\">\n {activeStep + 1} / {totalSteps}\n </Text>\n <Box display=\"flex\" gap={isBothIcon ? 'spacing.3' : 'spacing.4'}>\n {hasSecondaryAction ? (\n <Button
|
|
1
|
+
{"version":3,"file":"TourFooter.web.js","sources":["../../../../../../src/components/SpotlightPopoverTour/TourFooter.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */\nimport type { SpotlightPopoverStepRenderProps } from './types';\nimport type { ButtonProps } from '~components/Button';\nimport { Button } from '~components/Button';\nimport { Box } from '~components/Box';\nimport { Text } from '~components/Typography';\nimport { MAKE_ANALYTICS_CONSTANTS } from '~utils/makeAnalyticsAttribute';\n\ntype SpotlightPopoverFooterAction = {\n text?: string;\n} & Pick<ButtonProps, 'variant' | 'icon' | 'iconPosition' | 'isDisabled' | 'isLoading' | 'onClick'>;\n\ntype SpotlightPopoverTourFooterProps = {\n actions: {\n primary?: SpotlightPopoverFooterAction;\n secondary?: SpotlightPopoverFooterAction;\n };\n};\n\nconst SpotlightPopoverTourFooter = ({\n activeStep,\n totalSteps,\n actions,\n}: SpotlightPopoverTourFooterProps &\n Pick<SpotlightPopoverStepRenderProps, 'activeStep' | 'totalSteps'>): React.ReactElement => {\n const hasPrimaryAction = Boolean(actions?.primary);\n const hasSecondaryAction = Boolean(actions?.secondary);\n\n let isBothIcon = false;\n if (hasPrimaryAction && hasSecondaryAction) {\n const primaryHasIcon = Boolean(actions?.primary?.icon);\n const secondaryHasIcon = Boolean(actions?.secondary?.icon);\n isBothIcon = primaryHasIcon && secondaryHasIcon;\n }\n\n const analyticsStepInfoProps = {\n 'data-analytics-active-step': activeStep + 1,\n 'data-analytics-total-steps': totalSteps,\n };\n\n return (\n <Box display=\"flex\" justifyContent=\"space-between\" alignItems=\"center\" gap=\"spacing.7\">\n <Text size=\"small\" weight=\"semibold\">\n {activeStep + 1} / {totalSteps}\n </Text>\n <Box display=\"flex\" gap={isBothIcon ? 'spacing.3' : 'spacing.4'}>\n {hasSecondaryAction ? (\n <Button\n size=\"small\"\n variant=\"secondary\"\n {...actions.secondary}\n data-analytics-name={\n MAKE_ANALYTICS_CONSTANTS.SPOTLIGHT_POPOVER_TOUR.FOOTER_SECONDARY_ACTION\n }\n {...analyticsStepInfoProps}\n >\n {actions?.secondary!.text!}\n </Button>\n ) : null}\n {hasPrimaryAction ? (\n <Button\n size=\"small\"\n variant=\"primary\"\n {...actions.primary}\n data-analytics-name={\n MAKE_ANALYTICS_CONSTANTS.SPOTLIGHT_POPOVER_TOUR.FOOTER_PRIMARY_ACTION\n }\n {...analyticsStepInfoProps}\n >\n {actions?.primary!.text!}\n </Button>\n ) : null}\n </Box>\n </Box>\n );\n};\n\nexport { SpotlightPopoverTourFooter };\n"],"names":["SpotlightPopoverTourFooter","_ref","activeStep","totalSteps","actions","hasPrimaryAction","Boolean","primary","hasSecondaryAction","secondary","isBothIcon","_actions$primary","_actions$secondary","primaryHasIcon","icon","secondaryHasIcon","analyticsStepInfoProps","_jsxs","Box","display","justifyContent","alignItems","gap","children","Text","size","weight","_jsx","Button","_objectSpread","variant","MAKE_ANALYTICS_CONSTANTS","SPOTLIGHT_POPOVER_TOUR","FOOTER_SECONDARY_ACTION","text","FOOTER_PRIMARY_ACTION"],"mappings":"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"}
|
|
@@ -363,13 +363,14 @@ var _Table = function _Table(_ref3) {
|
|
|
363
363
|
})
|
|
364
364
|
})) : /*#__PURE__*/jsxs(BaseBox
|
|
365
365
|
// ref={ref as never}
|
|
366
|
-
, _objectSpread(_objectSpread(_objectSpread({
|
|
366
|
+
, _objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
367
367
|
flex: 1,
|
|
368
368
|
position: "relative"
|
|
369
369
|
}, getStyledProps(rest)), metaAttribute({
|
|
370
370
|
name: MetaConstants.Table
|
|
371
371
|
})), {}, {
|
|
372
|
-
width: isVirtualized ? "100%" : undefined
|
|
372
|
+
width: isVirtualized ? "100%" : undefined
|
|
373
|
+
}, makeAnalyticsAttribute(rest)), {}, {
|
|
373
374
|
children: [isRefreshSpinnerMounted && /*#__PURE__*/jsx(RefreshWrapper, {
|
|
374
375
|
position: "absolute",
|
|
375
376
|
width: "100%",
|
|
@@ -387,7 +388,9 @@ var _Table = function _Table(_ref3) {
|
|
|
387
388
|
accessibilityLabel: "Refreshing Table",
|
|
388
389
|
size: "large"
|
|
389
390
|
})
|
|
390
|
-
}),
|
|
391
|
+
}), /*#__PURE__*/jsx(BaseBox, _objectSpread(_objectSpread({}, makeAnalyticsAttribute(rest)), {}, {
|
|
392
|
+
children: toolbar
|
|
393
|
+
})), /*#__PURE__*/jsx(StyledReactTable, _objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
391
394
|
role: "table",
|
|
392
395
|
layout: {
|
|
393
396
|
fixedHeader: shouldHeaderBeSticky,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.web.js","sources":["../../../../../../src/components/Table/Table.web.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo } from 'react';\nimport { Table as ReactTable } from '@table-library/react-table-library/table';\nimport { useTheme as useTableTheme } from '@table-library/react-table-library/theme';\nimport type { MiddlewareFunction } from '@table-library/react-table-library/types/common';\nimport { useSort } from '@table-library/react-table-library/sort';\nimport { usePagination } from '@table-library/react-table-library/pagination';\nimport {\n SelectClickTypes,\n SelectTypes,\n useRowSelect,\n} from '@table-library/react-table-library/select';\nimport styled from 'styled-components';\nimport usePresence from 'use-presence';\nimport type { TableContextType } from './TableContext';\nimport { TableContext } from './TableContext';\nimport { ComponentIds } from './componentIds';\nimport {\n checkboxCellWidth,\n firstColumnStickyZIndex,\n refreshWrapperZIndex,\n tableBackgroundColor,\n tablePagination,\n} from './tokens';\nimport type {\n TableProps,\n TableNode,\n Identifier,\n TablePaginationType,\n TableHeaderRowProps,\n} from './types';\nimport { getTableBodyStyles } from './commonStyles';\nimport { makeBorderSize, makeMotionTime } from '~utils';\nimport { getComponentId, isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { throwBladeError } from '~utils/logger';\nimport type { BoxProps } from '~components/Box';\nimport { getBaseBoxStyles } from '~components/Box/BaseBox/baseBoxStyles';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Spinner } from '~components/Spinner';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { useTheme } from '~components/BladeProvider';\nimport getIn from '~utils/lodashButBetter/get';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst rowSelectType: Record<\n NonNullable<TableProps<unknown>['selectionType']>,\n SelectTypes | undefined\n> = {\n single: SelectTypes.SingleSelect,\n multiple: SelectTypes.MultiSelect,\n none: undefined,\n};\n\n// Get the number of TableHeaderCell components.\n// This is very complicated but the only way to iterate through the structure and get number of header cells.\n// Assuming number of header cells is the same as number of columns\nconst getTableHeaderCellCount = (children: (data: []) => React.ReactElement): number => {\n const tableRootComponent = children([]);\n if (tableRootComponent && React.isValidElement(tableRootComponent)) {\n const tableComponentArray = React.Children.toArray(tableRootComponent);\n if (React.isValidElement(tableComponentArray[0])) {\n const tableComponentArrayChildren = React.Children.toArray(\n tableComponentArray[0].props.children,\n );\n const tableHeader = tableComponentArrayChildren.find(\n (child) => getComponentId(child) === ComponentIds.TableHeader,\n );\n const tableHeaderChildrenArray = React.isValidElement(tableHeader)\n ? React.Children.toArray(tableHeader.props.children)\n : null;\n const tableHeaderRow = tableHeaderChildrenArray?.find(\n (child) => getComponentId(child) === ComponentIds.TableHeaderRow,\n );\n const tableHeaderRowChildrenArray = React.isValidElement(tableHeaderRow)\n ? React.Children.toArray(tableHeaderRow.props.children)\n : null;\n const tableHeaderCells = tableHeaderRowChildrenArray\n ? tableHeaderRowChildrenArray.filter(\n (child) => getComponentId(child) === ComponentIds.TableHeaderCell,\n )\n : null;\n return tableHeaderCells?.length ?? 0;\n }\n }\n return 0;\n};\n\nconst StyledReactTable = styled(ReactTable)<{\n $styledProps?: {\n height?: BoxProps['height'];\n width?: BoxProps['width'];\n isVirtualized?: boolean;\n isSelectable?: boolean;\n showStripedRows?: boolean;\n };\n}>(({ $styledProps }) => {\n const { theme } = useTheme();\n const styledPropsCSSObject = getBaseBoxStyles({\n theme,\n height: $styledProps?.height,\n ...($styledProps?.isVirtualized && {\n width: '100%',\n }),\n });\n const $isSelectable = $styledProps?.isSelectable;\n const $showStripedRows = $styledProps?.showStripedRows;\n return {\n '&&&': {\n ...styledPropsCSSObject,\n overflow: `${$styledProps?.isVirtualized ? 'unset' : 'auto'} !important`,\n },\n ...($styledProps?.isVirtualized\n ? getTableBodyStyles({\n isVirtualized: $styledProps?.isVirtualized,\n theme,\n height: $styledProps?.height,\n width: '100%',\n isSelectable: $isSelectable,\n showStripedRows: $showStripedRows,\n })\n : null),\n };\n});\n\nconst RefreshWrapper = styled(BaseBox)<{\n isRefreshSpinnerVisible: boolean;\n isRefreshSpinnerEntering: boolean;\n isRefreshSpinnerExiting: boolean;\n}>(({ isRefreshSpinnerVisible, isRefreshSpinnerEntering, isRefreshSpinnerExiting, theme }) => {\n return {\n opacity: isRefreshSpinnerVisible ? 1 : 0,\n transition: `opacity ${makeMotionTime(theme.motion.duration.quick)} ${\n isRefreshSpinnerEntering\n ? theme.motion.easing.entrance\n : isRefreshSpinnerExiting\n ? theme.motion.easing.exit\n : ''\n }`,\n };\n});\n\nconst _Table = <Item,>({\n children,\n data,\n multiSelectTrigger = 'row',\n selectionType = 'none',\n onSelectionChange,\n isHeaderSticky,\n isFooterSticky,\n isFirstColumnSticky,\n rowDensity = 'normal',\n onSortChange,\n sortFunctions,\n toolbar,\n pagination,\n height,\n showStripedRows,\n gridTemplateColumns,\n isLoading = false,\n isRefreshing = false,\n showBorderedCells = false,\n defaultSelectedIds = [],\n backgroundColor = tableBackgroundColor,\n ...rest\n}: TableProps<Item>): React.ReactElement => {\n const { theme } = useTheme();\n const [selectedRows, setSelectedRows] = React.useState<TableNode<unknown>['id'][]>(\n selectionType !== 'none' ? defaultSelectedIds : [],\n );\n const [disabledRows, setDisabledRows] = React.useState<TableNode<unknown>['id'][]>([]);\n const [totalItems, setTotalItems] = React.useState(data.nodes.length || 0);\n const [paginationType, setPaginationType] = React.useState<NonNullable<TablePaginationType>>(\n 'client',\n );\n const [headerRowDensity, setHeaderRowDensity] = React.useState<TableHeaderRowProps['rowDensity']>(\n undefined,\n );\n const [hasHoverActions, setHasHoverActions] = React.useState(false);\n const tableRootComponent = children([]);\n const isVirtualized = getComponentId(tableRootComponent) === ComponentIds.VirtualizedTable;\n // Need to make header is sticky if first column is sticky otherwise the first header cell will not be sticky\n const shouldHeaderBeSticky = isVirtualized ?? isHeaderSticky ?? isFirstColumnSticky;\n\n const isMobile = useIsMobile();\n const lastHoverActionsColWidth = isMobile ? '1fr' : '0px';\n\n const {\n isEntering: isRefreshSpinnerEntering,\n isMounted: isRefreshSpinnerMounted,\n isExiting: isRefreshSpinnerExiting,\n isVisible: isRefreshSpinnerVisible,\n } = usePresence(isRefreshing, {\n transitionDuration: theme.motion.duration.quick,\n });\n\n // Table Theme\n const columnCount = getTableHeaderCellCount(children);\n const firstColumnStickyHeaderCellCSS = isFirstColumnSticky\n ? `\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n z-index: ${firstColumnStickyZIndex} !important;\n }\n ${\n selectionType === 'multiple' &&\n `&:nth-of-type(2) {\n left: ${checkboxCellWidth}px !important;\n position: sticky !important;\n z-index: ${firstColumnStickyZIndex} !important;\n }\n `\n }`\n : '';\n const firstColumnStickyFooterCellCSS = isFirstColumnSticky\n ? `\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n z-index: ${firstColumnStickyZIndex} !important;\n }\n ${\n selectionType === 'multiple' &&\n `&:nth-of-type(2) {\n left: ${checkboxCellWidth}px !important;\n position: sticky !important;\n z-index: ${firstColumnStickyZIndex} !important;\n }\n `\n }`\n : '';\n const firstColumnStickyBodyCellCSS = isFirstColumnSticky\n ? `\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n z-index: ${firstColumnStickyZIndex} !important;\n }\n ${\n selectionType === 'multiple' &&\n `&:nth-of-type(2) {\n left: ${checkboxCellWidth}px !important;\n position: sticky !important;\n z-index: ${firstColumnStickyZIndex} !important;\n }\n `\n }`\n : '';\n\n const tableTheme = useTableTheme({\n Table: `\n height:${isFooterSticky ? `100%` : undefined};\n border: ${makeBorderSize(theme.border.width.thin)} solid ${\n theme.colors.surface.border.gray.muted\n };\n --data-table-library_grid-template-columns: ${\n gridTemplateColumns\n ? `${gridTemplateColumns} ${hasHoverActions ? lastHoverActionsColWidth : ''}`\n : ` ${\n selectionType === 'multiple' ? 'min-content' : ''\n } repeat(${columnCount},minmax(100px, 1fr)) ${\n hasHoverActions ? lastHoverActionsColWidth : ''\n } !important;`\n } !important;\n background-color: ${getIn(theme.colors, backgroundColor)};\n `,\n HeaderCell: `\n position: ${shouldHeaderBeSticky ? 'sticky' : 'relative'};\n \n top: ${shouldHeaderBeSticky ? '0' : undefined};\n ${firstColumnStickyHeaderCellCSS}\n `,\n Cell: `\n ${firstColumnStickyBodyCellCSS}\n `,\n FooterCell: `\n position: ${isFooterSticky ? 'sticky' : 'relative'};\n bottom: ${isFooterSticky ? '0' : undefined};\n ${firstColumnStickyFooterCellCSS}\n `,\n });\n\n useEffect(() => {\n // Get the total number of items\n setTotalItems(data.nodes.length);\n }, [data.nodes]);\n\n // Selection Logic\n const onSelectChange: MiddlewareFunction = (_, state): void => {\n const selectedIds: Identifier[] = state.id ? [state.id] : state.ids ?? [];\n setSelectedRows(selectedIds);\n onSelectionChange?.({\n selectedIds,\n values: data.nodes.filter((node) => selectedIds.includes(node.id)),\n });\n };\n\n const rowSelectConfig = useRowSelect(\n data,\n {\n onChange: onSelectChange,\n state: {\n ...(selectionType === 'multiple'\n ? { ids: selectedRows }\n : selectionType === 'single'\n ? { id: selectedRows[0] }\n : {}),\n },\n },\n {\n clickType:\n multiSelectTrigger === 'row' ? SelectClickTypes.RowClick : SelectClickTypes.ButtonClick,\n rowSelect: selectionType !== 'none' ? rowSelectType[selectionType] : undefined,\n },\n );\n\n const toggleRowSelectionById = useMemo(\n () => (id: Identifier): void => {\n rowSelectConfig.fns.onToggleById(id);\n },\n [rowSelectConfig.fns],\n );\n\n const deselectAllRows = useMemo(\n () => (): void => {\n rowSelectConfig.fns.onRemoveAll();\n },\n [rowSelectConfig.fns],\n );\n\n const toggleAllRowsSelection = useMemo(\n () => (): void => {\n if (selectedRows.length > 0) {\n rowSelectConfig.fns.onRemoveAll();\n } else {\n const ids = data.nodes\n .map((item: TableNode<Item>) => (disabledRows.includes(item.id) ? null : item.id))\n .filter(Boolean) as Identifier[];\n\n rowSelectConfig.fns.onAddAll(ids);\n }\n },\n [rowSelectConfig.fns, data.nodes, selectedRows, disabledRows],\n );\n\n // Sort Logic\n const handleSortChange: MiddlewareFunction = (_, state) => {\n onSortChange?.({\n sortKey: state.sortKey,\n isSortReversed: state.reverse,\n });\n };\n\n const sort = useSort(\n data,\n {\n onChange: handleSortChange,\n },\n {\n // @ts-expect-error ignore this, if sortFunctions is undefined, it will be ignored\n sortFns: sortFunctions,\n },\n );\n\n const currentSortedState: TableContextType<Item>['currentSortedState'] = useMemo(() => {\n return {\n sortKey: sort.state.sortKey,\n isSortReversed: sort.state.reverse,\n sortableColumns: Object.keys(sortFunctions ?? {}),\n };\n }, [sort.state, sortFunctions]);\n\n const toggleSort = useCallback(\n (sortKey: string): void => {\n sort.fns.onToggleSort({\n sortKey,\n });\n },\n [sort.fns],\n );\n\n // Pagination\n\n const hasPagination = Boolean(pagination);\n\n const paginationConfig = usePagination(\n data,\n {\n state: {\n page: 0,\n size: tablePagination.defaultPageSize,\n },\n },\n {\n isServer: paginationType === 'server',\n },\n );\n\n const currentPaginationState = useMemo(() => {\n return hasPagination\n ? {\n page: paginationConfig.state.page,\n size: paginationConfig.state.size,\n }\n : undefined;\n }, [paginationConfig.state, hasPagination]);\n\n const setPaginationPage = useCallback(\n (page: number): void => {\n paginationConfig.fns.onSetPage(page);\n },\n [paginationConfig.fns],\n );\n\n const setPaginationRowSize = useCallback(\n (size: number): void => {\n paginationConfig.fns.onSetSize(size);\n },\n [paginationConfig.fns],\n );\n\n // Toolbar Component\n if (__DEV__) {\n if (toolbar && !isValidAllowedChildren(toolbar, ComponentIds.TableToolbar)) {\n throwBladeError({\n message: 'Only TableToolbar component is allowed in the `toolbar` prop',\n moduleName: 'Table',\n });\n }\n }\n\n // Table Context\n const tableContext: TableContextType<Item> = useMemo(\n () => ({\n selectionType,\n selectedRows,\n totalItems,\n toggleRowSelectionById,\n toggleAllRowsSelection,\n deselectAllRows,\n rowDensity,\n toggleSort,\n currentSortedState,\n setPaginationPage,\n setPaginationRowSize,\n currentPaginationState,\n showStripedRows,\n disabledRows,\n setDisabledRows,\n paginationType,\n setPaginationType,\n backgroundColor,\n headerRowDensity,\n setHeaderRowDensity,\n showBorderedCells,\n hasHoverActions,\n setHasHoverActions,\n columnCount,\n gridTemplateColumns,\n isVirtualized,\n tableData: data.nodes,\n }),\n [\n selectionType,\n selectedRows,\n totalItems,\n toggleRowSelectionById,\n toggleAllRowsSelection,\n deselectAllRows,\n gridTemplateColumns,\n rowDensity,\n toggleSort,\n columnCount,\n currentSortedState,\n setPaginationPage,\n setPaginationRowSize,\n currentPaginationState,\n showStripedRows,\n disabledRows,\n setDisabledRows,\n paginationType,\n setPaginationType,\n backgroundColor,\n headerRowDensity,\n setHeaderRowDensity,\n showBorderedCells,\n hasHoverActions,\n setHasHoverActions,\n isVirtualized,\n data,\n ],\n );\n\n return (\n <TableContext.Provider value={tableContext}>\n {isLoading ? (\n <BaseBox\n display=\"flex\"\n flex={1}\n alignItems=\"center\"\n justifyContent=\"center\"\n height={height}\n {...getStyledProps(rest)}\n {...metaAttribute({ name: MetaConstants.Table })}\n {...makeAnalyticsAttribute(rest)}\n >\n <Spinner accessibilityLabel=\"Loading Table\" size=\"large\" testID=\"table-spinner\" />\n </BaseBox>\n ) : (\n <BaseBox\n // ref={ref as never}\n flex={1}\n position=\"relative\"\n {...getStyledProps(rest)}\n {...metaAttribute({ name: MetaConstants.Table })}\n width={isVirtualized ? `100%` : undefined}\n >\n {isRefreshSpinnerMounted && (\n <RefreshWrapper\n position=\"absolute\"\n width=\"100%\"\n height=\"100%\"\n zIndex={refreshWrapperZIndex}\n backgroundColor=\"overlay.background.subtle\"\n justifyContent=\"center\"\n alignItems=\"center\"\n display=\"flex\"\n isRefreshSpinnerEntering={isRefreshSpinnerEntering}\n isRefreshSpinnerExiting={isRefreshSpinnerExiting}\n isRefreshSpinnerVisible={isRefreshSpinnerVisible}\n >\n <Spinner color=\"white\" accessibilityLabel=\"Refreshing Table\" size=\"large\" />\n </RefreshWrapper>\n )}\n {toolbar}\n <StyledReactTable\n role=\"table\"\n layout={{ fixedHeader: shouldHeaderBeSticky, horizontalScroll: true }}\n data={data}\n // @ts-expect-error ignore this, theme clashes with styled-component's theme. We're using useTheme from blade to get actual theme\n theme={tableTheme}\n select={selectionType !== 'none' ? rowSelectConfig : null}\n sort={sortFunctions ? sort : null}\n $styledProps={{\n height,\n width: isVirtualized ? `100%` : undefined,\n isVirtualized,\n isSelectable: selectionType !== 'none',\n showStripedRows,\n }}\n pagination={hasPagination ? paginationConfig : null}\n {...makeAccessible({ multiSelectable: selectionType === 'multiple' })}\n {...metaAttribute({ name: MetaConstants.Table })}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </StyledReactTable>\n {pagination}\n </BaseBox>\n )}\n </TableContext.Provider>\n );\n};\nconst Table = assignWithoutSideEffects(_Table, {\n componentId: ComponentIds.Table,\n});\n\nexport { Table };\n"],"names":["rowSelectType","single","SelectTypes","SingleSelect","multiple","MultiSelect","none","undefined","getTableHeaderCellCount","children","tableRootComponent","React","isValidElement","tableComponentArray","Children","toArray","_tableHeaderCells$len","tableComponentArrayChildren","props","tableHeader","find","child","getComponentId","ComponentIds","TableHeader","tableHeaderChildrenArray","tableHeaderRow","TableHeaderRow","tableHeaderRowChildrenArray","tableHeaderCells","filter","TableHeaderCell","length","StyledReactTable","styled","ReactTable","withConfig","displayName","componentId","_ref","$styledProps","_useTheme","useTheme","theme","styledPropsCSSObject","getBaseBoxStyles","_objectSpread","height","isVirtualized","width","$isSelectable","isSelectable","$showStripedRows","showStripedRows","overflow","concat","getTableBodyStyles","RefreshWrapper","BaseBox","_ref2","isRefreshSpinnerVisible","isRefreshSpinnerEntering","isRefreshSpinnerExiting","opacity","transition","makeMotionTime","motion","duration","quick","easing","entrance","exit","_Table","_ref3","_ref4","data","_ref3$multiSelectTrig","multiSelectTrigger","_ref3$selectionType","selectionType","onSelectionChange","isHeaderSticky","isFooterSticky","isFirstColumnSticky","_ref3$rowDensity","rowDensity","onSortChange","sortFunctions","toolbar","pagination","gridTemplateColumns","_ref3$isLoading","isLoading","_ref3$isRefreshing","isRefreshing","_ref3$showBorderedCel","showBorderedCells","_ref3$defaultSelected","defaultSelectedIds","_ref3$backgroundColor","backgroundColor","tableBackgroundColor","rest","_objectWithoutProperties","_excluded","_useTheme2","_React$useState","useState","_React$useState2","_slicedToArray","selectedRows","setSelectedRows","_React$useState3","_React$useState4","disabledRows","setDisabledRows","_React$useState5","nodes","_React$useState6","totalItems","setTotalItems","_React$useState7","_React$useState8","paginationType","setPaginationType","_React$useState9","_React$useState10","headerRowDensity","setHeaderRowDensity","_React$useState11","_React$useState12","hasHoverActions","setHasHoverActions","VirtualizedTable","shouldHeaderBeSticky","isMobile","useIsMobile","lastHoverActionsColWidth","_usePresence","usePresence","transitionDuration","isEntering","isRefreshSpinnerMounted","isMounted","isExiting","isVisible","columnCount","firstColumnStickyHeaderCellCSS","firstColumnStickyZIndex","checkboxCellWidth","firstColumnStickyFooterCellCSS","firstColumnStickyBodyCellCSS","tableTheme","useTableTheme","Table","makeBorderSize","border","thin","colors","surface","gray","muted","getIn","HeaderCell","Cell","FooterCell","useEffect","onSelectChange","_","state","_state$ids","selectedIds","id","ids","values","node","includes","rowSelectConfig","useRowSelect","onChange","clickType","SelectClickTypes","RowClick","ButtonClick","rowSelect","toggleRowSelectionById","useMemo","fns","onToggleById","deselectAllRows","onRemoveAll","toggleAllRowsSelection","map","item","Boolean","onAddAll","handleSortChange","sortKey","isSortReversed","reverse","sort","useSort","sortFns","currentSortedState","sortableColumns","Object","keys","toggleSort","useCallback","onToggleSort","hasPagination","paginationConfig","usePagination","page","size","tablePagination","defaultPageSize","isServer","currentPaginationState","setPaginationPage","onSetPage","setPaginationRowSize","onSetSize","isValidAllowedChildren","TableToolbar","throwBladeError","message","moduleName","tableContext","tableData","_jsx","TableContext","Provider","value","display","flex","alignItems","justifyContent","getStyledProps","metaAttribute","name","MetaConstants","makeAnalyticsAttribute","Spinner","accessibilityLabel","testID","_jsxs","position","zIndex","refreshWrapperZIndex","color","role","layout","fixedHeader","horizontalScroll","select","makeAccessible","multiSelectable","assignWithoutSideEffects"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Table.web.js","sources":["../../../../../../src/components/Table/Table.web.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo } from 'react';\nimport { Table as ReactTable } from '@table-library/react-table-library/table';\nimport { useTheme as useTableTheme } from '@table-library/react-table-library/theme';\nimport type { MiddlewareFunction } from '@table-library/react-table-library/types/common';\nimport { useSort } from '@table-library/react-table-library/sort';\nimport { usePagination } from '@table-library/react-table-library/pagination';\nimport {\n SelectClickTypes,\n SelectTypes,\n useRowSelect,\n} from '@table-library/react-table-library/select';\nimport styled from 'styled-components';\nimport usePresence from 'use-presence';\nimport type { TableContextType } from './TableContext';\nimport { TableContext } from './TableContext';\nimport { ComponentIds } from './componentIds';\nimport {\n checkboxCellWidth,\n firstColumnStickyZIndex,\n refreshWrapperZIndex,\n tableBackgroundColor,\n tablePagination,\n} from './tokens';\nimport type {\n TableProps,\n TableNode,\n Identifier,\n TablePaginationType,\n TableHeaderRowProps,\n} from './types';\nimport { getTableBodyStyles } from './commonStyles';\nimport { makeBorderSize, makeMotionTime } from '~utils';\nimport { getComponentId, isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { throwBladeError } from '~utils/logger';\nimport type { BoxProps } from '~components/Box';\nimport { getBaseBoxStyles } from '~components/Box/BaseBox/baseBoxStyles';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Spinner } from '~components/Spinner';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { useTheme } from '~components/BladeProvider';\nimport getIn from '~utils/lodashButBetter/get';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst rowSelectType: Record<\n NonNullable<TableProps<unknown>['selectionType']>,\n SelectTypes | undefined\n> = {\n single: SelectTypes.SingleSelect,\n multiple: SelectTypes.MultiSelect,\n none: undefined,\n};\n\n// Get the number of TableHeaderCell components.\n// This is very complicated but the only way to iterate through the structure and get number of header cells.\n// Assuming number of header cells is the same as number of columns\nconst getTableHeaderCellCount = (children: (data: []) => React.ReactElement): number => {\n const tableRootComponent = children([]);\n if (tableRootComponent && React.isValidElement(tableRootComponent)) {\n const tableComponentArray = React.Children.toArray(tableRootComponent);\n if (React.isValidElement(tableComponentArray[0])) {\n const tableComponentArrayChildren = React.Children.toArray(\n tableComponentArray[0].props.children,\n );\n const tableHeader = tableComponentArrayChildren.find(\n (child) => getComponentId(child) === ComponentIds.TableHeader,\n );\n const tableHeaderChildrenArray = React.isValidElement(tableHeader)\n ? React.Children.toArray(tableHeader.props.children)\n : null;\n const tableHeaderRow = tableHeaderChildrenArray?.find(\n (child) => getComponentId(child) === ComponentIds.TableHeaderRow,\n );\n const tableHeaderRowChildrenArray = React.isValidElement(tableHeaderRow)\n ? React.Children.toArray(tableHeaderRow.props.children)\n : null;\n const tableHeaderCells = tableHeaderRowChildrenArray\n ? tableHeaderRowChildrenArray.filter(\n (child) => getComponentId(child) === ComponentIds.TableHeaderCell,\n )\n : null;\n return tableHeaderCells?.length ?? 0;\n }\n }\n return 0;\n};\n\nconst StyledReactTable = styled(ReactTable)<{\n $styledProps?: {\n height?: BoxProps['height'];\n width?: BoxProps['width'];\n isVirtualized?: boolean;\n isSelectable?: boolean;\n showStripedRows?: boolean;\n };\n}>(({ $styledProps }) => {\n const { theme } = useTheme();\n const styledPropsCSSObject = getBaseBoxStyles({\n theme,\n height: $styledProps?.height,\n ...($styledProps?.isVirtualized && {\n width: '100%',\n }),\n });\n const $isSelectable = $styledProps?.isSelectable;\n const $showStripedRows = $styledProps?.showStripedRows;\n return {\n '&&&': {\n ...styledPropsCSSObject,\n overflow: `${$styledProps?.isVirtualized ? 'unset' : 'auto'} !important`,\n },\n ...($styledProps?.isVirtualized\n ? getTableBodyStyles({\n isVirtualized: $styledProps?.isVirtualized,\n theme,\n height: $styledProps?.height,\n width: '100%',\n isSelectable: $isSelectable,\n showStripedRows: $showStripedRows,\n })\n : null),\n };\n});\n\nconst RefreshWrapper = styled(BaseBox)<{\n isRefreshSpinnerVisible: boolean;\n isRefreshSpinnerEntering: boolean;\n isRefreshSpinnerExiting: boolean;\n}>(({ isRefreshSpinnerVisible, isRefreshSpinnerEntering, isRefreshSpinnerExiting, theme }) => {\n return {\n opacity: isRefreshSpinnerVisible ? 1 : 0,\n transition: `opacity ${makeMotionTime(theme.motion.duration.quick)} ${\n isRefreshSpinnerEntering\n ? theme.motion.easing.entrance\n : isRefreshSpinnerExiting\n ? theme.motion.easing.exit\n : ''\n }`,\n };\n});\n\nconst _Table = <Item,>({\n children,\n data,\n multiSelectTrigger = 'row',\n selectionType = 'none',\n onSelectionChange,\n isHeaderSticky,\n isFooterSticky,\n isFirstColumnSticky,\n rowDensity = 'normal',\n onSortChange,\n sortFunctions,\n toolbar,\n pagination,\n height,\n showStripedRows,\n gridTemplateColumns,\n isLoading = false,\n isRefreshing = false,\n showBorderedCells = false,\n defaultSelectedIds = [],\n backgroundColor = tableBackgroundColor,\n ...rest\n}: TableProps<Item>): React.ReactElement => {\n const { theme } = useTheme();\n const [selectedRows, setSelectedRows] = React.useState<TableNode<unknown>['id'][]>(\n selectionType !== 'none' ? defaultSelectedIds : [],\n );\n const [disabledRows, setDisabledRows] = React.useState<TableNode<unknown>['id'][]>([]);\n const [totalItems, setTotalItems] = React.useState(data.nodes.length || 0);\n const [paginationType, setPaginationType] = React.useState<NonNullable<TablePaginationType>>(\n 'client',\n );\n const [headerRowDensity, setHeaderRowDensity] = React.useState<TableHeaderRowProps['rowDensity']>(\n undefined,\n );\n const [hasHoverActions, setHasHoverActions] = React.useState(false);\n const tableRootComponent = children([]);\n const isVirtualized = getComponentId(tableRootComponent) === ComponentIds.VirtualizedTable;\n // Need to make header is sticky if first column is sticky otherwise the first header cell will not be sticky\n const shouldHeaderBeSticky = isVirtualized ?? isHeaderSticky ?? isFirstColumnSticky;\n\n const isMobile = useIsMobile();\n const lastHoverActionsColWidth = isMobile ? '1fr' : '0px';\n\n const {\n isEntering: isRefreshSpinnerEntering,\n isMounted: isRefreshSpinnerMounted,\n isExiting: isRefreshSpinnerExiting,\n isVisible: isRefreshSpinnerVisible,\n } = usePresence(isRefreshing, {\n transitionDuration: theme.motion.duration.quick,\n });\n\n // Table Theme\n const columnCount = getTableHeaderCellCount(children);\n const firstColumnStickyHeaderCellCSS = isFirstColumnSticky\n ? `\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n z-index: ${firstColumnStickyZIndex} !important;\n }\n ${\n selectionType === 'multiple' &&\n `&:nth-of-type(2) {\n left: ${checkboxCellWidth}px !important;\n position: sticky !important;\n z-index: ${firstColumnStickyZIndex} !important;\n }\n `\n }`\n : '';\n const firstColumnStickyFooterCellCSS = isFirstColumnSticky\n ? `\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n z-index: ${firstColumnStickyZIndex} !important;\n }\n ${\n selectionType === 'multiple' &&\n `&:nth-of-type(2) {\n left: ${checkboxCellWidth}px !important;\n position: sticky !important;\n z-index: ${firstColumnStickyZIndex} !important;\n }\n `\n }`\n : '';\n const firstColumnStickyBodyCellCSS = isFirstColumnSticky\n ? `\n &:nth-of-type(1) {\n left: 0 !important;\n position: sticky !important;\n z-index: ${firstColumnStickyZIndex} !important;\n }\n ${\n selectionType === 'multiple' &&\n `&:nth-of-type(2) {\n left: ${checkboxCellWidth}px !important;\n position: sticky !important;\n z-index: ${firstColumnStickyZIndex} !important;\n }\n `\n }`\n : '';\n\n const tableTheme = useTableTheme({\n Table: `\n height:${isFooterSticky ? `100%` : undefined};\n border: ${makeBorderSize(theme.border.width.thin)} solid ${\n theme.colors.surface.border.gray.muted\n };\n --data-table-library_grid-template-columns: ${\n gridTemplateColumns\n ? `${gridTemplateColumns} ${hasHoverActions ? lastHoverActionsColWidth : ''}`\n : ` ${\n selectionType === 'multiple' ? 'min-content' : ''\n } repeat(${columnCount},minmax(100px, 1fr)) ${\n hasHoverActions ? lastHoverActionsColWidth : ''\n } !important;`\n } !important;\n background-color: ${getIn(theme.colors, backgroundColor)};\n `,\n HeaderCell: `\n position: ${shouldHeaderBeSticky ? 'sticky' : 'relative'};\n \n top: ${shouldHeaderBeSticky ? '0' : undefined};\n ${firstColumnStickyHeaderCellCSS}\n `,\n Cell: `\n ${firstColumnStickyBodyCellCSS}\n `,\n FooterCell: `\n position: ${isFooterSticky ? 'sticky' : 'relative'};\n bottom: ${isFooterSticky ? '0' : undefined};\n ${firstColumnStickyFooterCellCSS}\n `,\n });\n\n useEffect(() => {\n // Get the total number of items\n setTotalItems(data.nodes.length);\n }, [data.nodes]);\n\n // Selection Logic\n const onSelectChange: MiddlewareFunction = (_, state): void => {\n const selectedIds: Identifier[] = state.id ? [state.id] : state.ids ?? [];\n setSelectedRows(selectedIds);\n onSelectionChange?.({\n selectedIds,\n values: data.nodes.filter((node) => selectedIds.includes(node.id)),\n });\n };\n\n const rowSelectConfig = useRowSelect(\n data,\n {\n onChange: onSelectChange,\n state: {\n ...(selectionType === 'multiple'\n ? { ids: selectedRows }\n : selectionType === 'single'\n ? { id: selectedRows[0] }\n : {}),\n },\n },\n {\n clickType:\n multiSelectTrigger === 'row' ? SelectClickTypes.RowClick : SelectClickTypes.ButtonClick,\n rowSelect: selectionType !== 'none' ? rowSelectType[selectionType] : undefined,\n },\n );\n\n const toggleRowSelectionById = useMemo(\n () => (id: Identifier): void => {\n rowSelectConfig.fns.onToggleById(id);\n },\n [rowSelectConfig.fns],\n );\n\n const deselectAllRows = useMemo(\n () => (): void => {\n rowSelectConfig.fns.onRemoveAll();\n },\n [rowSelectConfig.fns],\n );\n\n const toggleAllRowsSelection = useMemo(\n () => (): void => {\n if (selectedRows.length > 0) {\n rowSelectConfig.fns.onRemoveAll();\n } else {\n const ids = data.nodes\n .map((item: TableNode<Item>) => (disabledRows.includes(item.id) ? null : item.id))\n .filter(Boolean) as Identifier[];\n\n rowSelectConfig.fns.onAddAll(ids);\n }\n },\n [rowSelectConfig.fns, data.nodes, selectedRows, disabledRows],\n );\n\n // Sort Logic\n const handleSortChange: MiddlewareFunction = (_, state) => {\n onSortChange?.({\n sortKey: state.sortKey,\n isSortReversed: state.reverse,\n });\n };\n\n const sort = useSort(\n data,\n {\n onChange: handleSortChange,\n },\n {\n // @ts-expect-error ignore this, if sortFunctions is undefined, it will be ignored\n sortFns: sortFunctions,\n },\n );\n\n const currentSortedState: TableContextType<Item>['currentSortedState'] = useMemo(() => {\n return {\n sortKey: sort.state.sortKey,\n isSortReversed: sort.state.reverse,\n sortableColumns: Object.keys(sortFunctions ?? {}),\n };\n }, [sort.state, sortFunctions]);\n\n const toggleSort = useCallback(\n (sortKey: string): void => {\n sort.fns.onToggleSort({\n sortKey,\n });\n },\n [sort.fns],\n );\n\n // Pagination\n\n const hasPagination = Boolean(pagination);\n\n const paginationConfig = usePagination(\n data,\n {\n state: {\n page: 0,\n size: tablePagination.defaultPageSize,\n },\n },\n {\n isServer: paginationType === 'server',\n },\n );\n\n const currentPaginationState = useMemo(() => {\n return hasPagination\n ? {\n page: paginationConfig.state.page,\n size: paginationConfig.state.size,\n }\n : undefined;\n }, [paginationConfig.state, hasPagination]);\n\n const setPaginationPage = useCallback(\n (page: number): void => {\n paginationConfig.fns.onSetPage(page);\n },\n [paginationConfig.fns],\n );\n\n const setPaginationRowSize = useCallback(\n (size: number): void => {\n paginationConfig.fns.onSetSize(size);\n },\n [paginationConfig.fns],\n );\n\n // Toolbar Component\n if (__DEV__) {\n if (toolbar && !isValidAllowedChildren(toolbar, ComponentIds.TableToolbar)) {\n throwBladeError({\n message: 'Only TableToolbar component is allowed in the `toolbar` prop',\n moduleName: 'Table',\n });\n }\n }\n\n // Table Context\n const tableContext: TableContextType<Item> = useMemo(\n () => ({\n selectionType,\n selectedRows,\n totalItems,\n toggleRowSelectionById,\n toggleAllRowsSelection,\n deselectAllRows,\n rowDensity,\n toggleSort,\n currentSortedState,\n setPaginationPage,\n setPaginationRowSize,\n currentPaginationState,\n showStripedRows,\n disabledRows,\n setDisabledRows,\n paginationType,\n setPaginationType,\n backgroundColor,\n headerRowDensity,\n setHeaderRowDensity,\n showBorderedCells,\n hasHoverActions,\n setHasHoverActions,\n columnCount,\n gridTemplateColumns,\n isVirtualized,\n tableData: data.nodes,\n }),\n [\n selectionType,\n selectedRows,\n totalItems,\n toggleRowSelectionById,\n toggleAllRowsSelection,\n deselectAllRows,\n gridTemplateColumns,\n rowDensity,\n toggleSort,\n columnCount,\n currentSortedState,\n setPaginationPage,\n setPaginationRowSize,\n currentPaginationState,\n showStripedRows,\n disabledRows,\n setDisabledRows,\n paginationType,\n setPaginationType,\n backgroundColor,\n headerRowDensity,\n setHeaderRowDensity,\n showBorderedCells,\n hasHoverActions,\n setHasHoverActions,\n isVirtualized,\n data,\n ],\n );\n\n return (\n <TableContext.Provider value={tableContext}>\n {isLoading ? (\n <BaseBox\n display=\"flex\"\n flex={1}\n alignItems=\"center\"\n justifyContent=\"center\"\n height={height}\n {...getStyledProps(rest)}\n {...metaAttribute({ name: MetaConstants.Table })}\n {...makeAnalyticsAttribute(rest)}\n >\n <Spinner accessibilityLabel=\"Loading Table\" size=\"large\" testID=\"table-spinner\" />\n </BaseBox>\n ) : (\n <BaseBox\n // ref={ref as never}\n flex={1}\n position=\"relative\"\n {...getStyledProps(rest)}\n {...metaAttribute({ name: MetaConstants.Table })}\n width={isVirtualized ? `100%` : undefined}\n {...makeAnalyticsAttribute(rest)}\n >\n {isRefreshSpinnerMounted && (\n <RefreshWrapper\n position=\"absolute\"\n width=\"100%\"\n height=\"100%\"\n zIndex={refreshWrapperZIndex}\n backgroundColor=\"overlay.background.subtle\"\n justifyContent=\"center\"\n alignItems=\"center\"\n display=\"flex\"\n isRefreshSpinnerEntering={isRefreshSpinnerEntering}\n isRefreshSpinnerExiting={isRefreshSpinnerExiting}\n isRefreshSpinnerVisible={isRefreshSpinnerVisible}\n >\n <Spinner color=\"white\" accessibilityLabel=\"Refreshing Table\" size=\"large\" />\n </RefreshWrapper>\n )}\n {/* wrapping toolbar in BaseBox and passing the same analytics attributes as of table because in analytics POV, events triggered are from table */}\n <BaseBox {...makeAnalyticsAttribute(rest)}>{toolbar}</BaseBox>\n <StyledReactTable\n role=\"table\"\n layout={{ fixedHeader: shouldHeaderBeSticky, horizontalScroll: true }}\n data={data}\n // @ts-expect-error ignore this, theme clashes with styled-component's theme. We're using useTheme from blade to get actual theme\n theme={tableTheme}\n select={selectionType !== 'none' ? rowSelectConfig : null}\n sort={sortFunctions ? sort : null}\n $styledProps={{\n height,\n width: isVirtualized ? `100%` : undefined,\n isVirtualized,\n isSelectable: selectionType !== 'none',\n showStripedRows,\n }}\n pagination={hasPagination ? paginationConfig : null}\n {...makeAccessible({ multiSelectable: selectionType === 'multiple' })}\n {...metaAttribute({ name: MetaConstants.Table })}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </StyledReactTable>\n {pagination}\n </BaseBox>\n )}\n </TableContext.Provider>\n );\n};\nconst Table = assignWithoutSideEffects(_Table, {\n componentId: ComponentIds.Table,\n});\n\nexport { Table };\n"],"names":["rowSelectType","single","SelectTypes","SingleSelect","multiple","MultiSelect","none","undefined","getTableHeaderCellCount","children","tableRootComponent","React","isValidElement","tableComponentArray","Children","toArray","_tableHeaderCells$len","tableComponentArrayChildren","props","tableHeader","find","child","getComponentId","ComponentIds","TableHeader","tableHeaderChildrenArray","tableHeaderRow","TableHeaderRow","tableHeaderRowChildrenArray","tableHeaderCells","filter","TableHeaderCell","length","StyledReactTable","styled","ReactTable","withConfig","displayName","componentId","_ref","$styledProps","_useTheme","useTheme","theme","styledPropsCSSObject","getBaseBoxStyles","_objectSpread","height","isVirtualized","width","$isSelectable","isSelectable","$showStripedRows","showStripedRows","overflow","concat","getTableBodyStyles","RefreshWrapper","BaseBox","_ref2","isRefreshSpinnerVisible","isRefreshSpinnerEntering","isRefreshSpinnerExiting","opacity","transition","makeMotionTime","motion","duration","quick","easing","entrance","exit","_Table","_ref3","_ref4","data","_ref3$multiSelectTrig","multiSelectTrigger","_ref3$selectionType","selectionType","onSelectionChange","isHeaderSticky","isFooterSticky","isFirstColumnSticky","_ref3$rowDensity","rowDensity","onSortChange","sortFunctions","toolbar","pagination","gridTemplateColumns","_ref3$isLoading","isLoading","_ref3$isRefreshing","isRefreshing","_ref3$showBorderedCel","showBorderedCells","_ref3$defaultSelected","defaultSelectedIds","_ref3$backgroundColor","backgroundColor","tableBackgroundColor","rest","_objectWithoutProperties","_excluded","_useTheme2","_React$useState","useState","_React$useState2","_slicedToArray","selectedRows","setSelectedRows","_React$useState3","_React$useState4","disabledRows","setDisabledRows","_React$useState5","nodes","_React$useState6","totalItems","setTotalItems","_React$useState7","_React$useState8","paginationType","setPaginationType","_React$useState9","_React$useState10","headerRowDensity","setHeaderRowDensity","_React$useState11","_React$useState12","hasHoverActions","setHasHoverActions","VirtualizedTable","shouldHeaderBeSticky","isMobile","useIsMobile","lastHoverActionsColWidth","_usePresence","usePresence","transitionDuration","isEntering","isRefreshSpinnerMounted","isMounted","isExiting","isVisible","columnCount","firstColumnStickyHeaderCellCSS","firstColumnStickyZIndex","checkboxCellWidth","firstColumnStickyFooterCellCSS","firstColumnStickyBodyCellCSS","tableTheme","useTableTheme","Table","makeBorderSize","border","thin","colors","surface","gray","muted","getIn","HeaderCell","Cell","FooterCell","useEffect","onSelectChange","_","state","_state$ids","selectedIds","id","ids","values","node","includes","rowSelectConfig","useRowSelect","onChange","clickType","SelectClickTypes","RowClick","ButtonClick","rowSelect","toggleRowSelectionById","useMemo","fns","onToggleById","deselectAllRows","onRemoveAll","toggleAllRowsSelection","map","item","Boolean","onAddAll","handleSortChange","sortKey","isSortReversed","reverse","sort","useSort","sortFns","currentSortedState","sortableColumns","Object","keys","toggleSort","useCallback","onToggleSort","hasPagination","paginationConfig","usePagination","page","size","tablePagination","defaultPageSize","isServer","currentPaginationState","setPaginationPage","onSetPage","setPaginationRowSize","onSetSize","isValidAllowedChildren","TableToolbar","throwBladeError","message","moduleName","tableContext","tableData","_jsx","TableContext","Provider","value","display","flex","alignItems","justifyContent","getStyledProps","metaAttribute","name","MetaConstants","makeAnalyticsAttribute","Spinner","accessibilityLabel","testID","_jsxs","position","zIndex","refreshWrapperZIndex","color","role","layout","fixedHeader","horizontalScroll","select","makeAccessible","multiSelectable","assignWithoutSideEffects"],"mappings":"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"}
|
|
@@ -38,8 +38,8 @@ import { makeSize } from '../../utils/makeSize/makeSize.js';
|
|
|
38
38
|
import { size } from '../../tokens/global/size.js';
|
|
39
39
|
import { Text } from '../Typography/Text/Text.js';
|
|
40
40
|
import { Checkbox } from '../Checkbox/Checkbox.js';
|
|
41
|
-
import { getMediaQuery } from '../../utils/getMediaQuery/getMediaQuery.js';
|
|
42
41
|
import { makeAccessible } from '../../utils/makeAccessible/makeAccessible.web.js';
|
|
42
|
+
import { getMediaQuery } from '../../utils/getMediaQuery/getMediaQuery.js';
|
|
43
43
|
|
|
44
44
|
var _excluded = ["children"],
|
|
45
45
|
_excluded2 = ["children", "textAlign", "_hasPadding"],
|
|
@@ -208,11 +208,13 @@ var TableCheckboxCell = function TableCheckboxCell(_ref6) {
|
|
|
208
208
|
onClick: function onClick(e) {
|
|
209
209
|
return e.stopPropagation();
|
|
210
210
|
},
|
|
211
|
-
children: /*#__PURE__*/jsx(Checkbox, {
|
|
211
|
+
children: /*#__PURE__*/jsx(Checkbox, _objectSpread({
|
|
212
212
|
isDisabled: isDisabled,
|
|
213
213
|
isChecked: isChecked,
|
|
214
214
|
onChange: onChange
|
|
215
|
-
}
|
|
215
|
+
}, makeAccessible({
|
|
216
|
+
label: 'Select Row'
|
|
217
|
+
})))
|
|
216
218
|
})
|
|
217
219
|
});
|
|
218
220
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableBody.web.js","sources":["../../../../../../src/components/Table/TableBody.web.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { Body, Row, Cell } from '@table-library/react-table-library/table';\nimport { Virtualized } from '@table-library/react-table-library/virtualized';\nimport styled from 'styled-components';\nimport { useTableContext } from './TableContext';\nimport { checkboxCellWidth, classes, tableRow } from './tokens';\nimport { ComponentIds } from './componentIds';\nimport type {\n TableProps,\n TableBodyProps,\n TableRowProps,\n TableCellProps,\n TableBackgroundColors,\n VirtualizedWrapperProps,\n RowHeightType,\n TableNode,\n} from './types';\nimport { getTableActionsHoverStyles, getTableRowBackgroundTransition } from './utils';\nimport { getTableBodyStyles } from './commonStyles';\nimport getIn from '~utils/lodashButBetter/get';\nimport { Text } from '~components/Typography';\nimport type { CheckboxProps } from '~components/Checkbox';\nimport { Checkbox } from '~components/Checkbox';\nimport { getMediaQuery, makeMotionTime, makeSize, makeSpace } from '~utils';\nimport BaseBox from '~components/Box/BaseBox';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport { size } from '~tokens/global';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { useIsomorphicLayoutEffect } from '~utils/useIsomorphicLayoutEffect';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nconst StyledBody = styled(Body)<{\n $isSelectable: boolean;\n $showStripedRows: boolean;\n}>(({ theme, $showStripedRows, $isSelectable }) => {\n const rowBackgroundTransition = getTableRowBackgroundTransition(theme);\n\n return {\n '&&&': {\n border: 'none',\n transition: rowBackgroundTransition,\n\n '& tr:last-child .cell-wrapper': {\n borderBottom: 'none',\n },\n\n ...{\n ...getTableBodyStyles({\n addCommonStyles: true,\n theme,\n isSelectable: $isSelectable,\n showStripedRows: $showStripedRows,\n isVirtualized: false,\n }),\n },\n },\n };\n});\n\nconst _TableBody = <Item,>({ children, ...rest }: TableBodyProps<Item>): React.ReactElement => {\n const { showStripedRows, selectionType } = useTableContext();\n const isSelectable = selectionType !== 'none';\n\n return (\n <StyledBody\n $isSelectable={isSelectable}\n $showStripedRows={showStripedRows}\n $showBorderedCells={true}\n {...metaAttribute({ name: MetaConstants.TableBody })}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </StyledBody>\n );\n};\n\nconst TableBody = assignWithoutSideEffects(_TableBody, {\n componentId: ComponentIds.TableBody,\n});\n\nexport const StyledCell = styled(Cell)<{\n $backgroundColor: TableBackgroundColors;\n}>(({ theme, $backgroundColor }) => ({\n '&&&': {\n height: '100%',\n backgroundColor: getIn(theme.colors, $backgroundColor),\n '& > div:first-child': {\n alignSelf: 'stretch',\n },\n '&:focus-visible': { ...getFocusRingStyles({ theme, negativeOffset: true }) },\n },\n}));\n\nexport const CellWrapper = styled(BaseBox)<{\n $rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n showStripedRows?: boolean;\n hasPadding?: boolean;\n textAlign?: TableCellProps['textAlign'];\n}>(({ theme, $rowDensity, showStripedRows, hasPadding = true, textAlign }) => {\n const rowBackgroundTransition = `background-color ${makeMotionTime(\n getIn(theme.motion, tableRow.backgroundColorMotionDuration),\n )} ${getIn(theme.motion, tableRow.backgroundColorMotionEasing)}`;\n\n return {\n '&&&': {\n transition: rowBackgroundTransition,\n backgroundColor: tableRow.nonStripeWrapper.backgroundColor,\n paddingLeft: hasPadding ? makeSpace(getIn(theme, tableRow.paddingLeft[$rowDensity])) : '0px',\n paddingRight: hasPadding\n ? makeSpace(getIn(theme, tableRow.paddingRight[$rowDensity]))\n : '0px',\n minHeight: makeSize(getIn(size, tableRow.minHeight[$rowDensity])),\n height: '100%',\n width: '100%',\n justifyContent: textAlign,\n ...(!showStripedRows && {\n borderBottomWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),\n borderBottomColor: getIn(theme.colors, tableRow.borderColor),\n borderBottomStyle: 'solid',\n }),\n },\n };\n});\n\nconst _TableCell = ({\n children,\n textAlign,\n _hasPadding,\n ...rest\n}: TableCellProps): React.ReactElement => {\n const isChildrenString = typeof children === 'string';\n const { selectionType, rowDensity, showStripedRows, backgroundColor } = useTableContext();\n const isSelectable = selectionType !== 'none';\n\n return (\n <StyledCell\n tabIndex={0}\n role=\"cell\"\n $backgroundColor={backgroundColor}\n {...metaAttribute({ name: MetaConstants.TableCell })}\n {...makeAnalyticsAttribute(rest)}\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 hasPadding={_hasPadding}\n flex={1}\n textAlign={textAlign}\n // when a direct string child is passed we want to disable pointer events\n // for custom cells components, consumers can handle pointer events themselves\n pointerEvents={isChildrenString && isSelectable ? 'none' : 'auto'}\n // allow text to wrap, so that if the <Text> overflows it can truncate\n whiteSpace=\"normal\"\n position=\"relative\"\n {...metaAttribute({ name: MetaConstants.TableCellWrapper })}\n >\n {isChildrenString ? (\n <Text size=\"medium\" truncateAfterLines={1}>\n {children}\n </Text>\n ) : (\n children\n )}\n </CellWrapper>\n </BaseBox>\n </StyledCell>\n );\n};\n\nconst TableCell = assignWithoutSideEffects(_TableCell, {\n componentId: ComponentIds.TableCell,\n});\n\nconst TableCheckboxCell = ({\n isChecked,\n onChange,\n isDisabled,\n}: {\n isChecked: CheckboxProps['isChecked'];\n onChange: CheckboxProps['onChange'];\n isDisabled?: boolean;\n}): React.ReactElement => {\n return (\n <TableCell>\n <BaseBox\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n flex={1}\n width={makeSize(checkboxCellWidth)}\n onClick={(e) => e.stopPropagation()}\n >\n <Checkbox isDisabled={isDisabled} isChecked={isChecked} onChange={onChange} />\n </BaseBox>\n </TableCell>\n );\n};\n\nconst StyledRow = styled(Row)<{\n $isSelectable: boolean;\n $isHoverable: boolean;\n $showBorderedCells: boolean;\n}>(({ theme, $isSelectable, $isHoverable, $showBorderedCells }) => {\n const { hasHoverActions } = useTableContext();\n\n const rowBackgroundTransition = `background-color ${makeMotionTime(\n getIn(theme.motion, tableRow.backgroundColorMotionDuration),\n )} ${getIn(theme.motion, tableRow.backgroundColorMotionEasing)}`;\n\n return {\n '&&&': {\n backgroundColor: 'transparent',\n '& .cell-wrapper': $showBorderedCells\n ? {\n borderRightWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),\n borderRightStyle: 'solid',\n borderRightColor: getIn(theme.colors, tableRow.borderColor),\n }\n : undefined,\n '& td:last-child .cell-wrapper': {\n borderRight: 'none',\n },\n ...(hasHoverActions\n ? {\n [`@media ${getMediaQuery({ min: theme.breakpoints.m })}`]: {\n '& td:last-child': {\n opacity: 0,\n position: 'sticky',\n zIndex: 2,\n right: 0,\n width: '0px',\n '& > div:first-child': {\n overflow: 'visible',\n },\n },\n '& td:last-child:focus-within': {\n opacity: 1,\n ...getTableActionsHoverStyles({\n theme,\n hoverColor: tableRow.nonStripe.backgroundColor,\n }),\n },\n '&:hover td:last-child': {\n opacity: 1,\n },\n },\n }\n : {}),\n ...(($isHoverable || $isSelectable) && {\n '&:hover:not(.disabled-row) .cell-wrapper-base': {\n transition: rowBackgroundTransition,\n cursor: 'pointer',\n backgroundColor: getIn(theme.colors, tableRow.nonStripe.backgroundColorHover),\n ...getTableActionsHoverStyles({\n hoverColor: tableRow.nonStripe.backgroundColorHover,\n theme,\n }),\n },\n }),\n ...($isSelectable && {\n '&:focus:not(.disabled-row) .cell-wrapper-base': {\n transition: rowBackgroundTransition,\n backgroundColor: getIn(theme.colors, tableRow.nonStripe.backgroundColorFocus),\n cursor: 'pointer',\n ...getTableActionsHoverStyles({\n hoverColor: tableRow.nonStripe.backgroundColorFocus,\n backgroundGradientColor: tableRow.nonStripe.backgroundColorHover,\n theme,\n }),\n },\n '&:active:not(.disabled-row) .cell-wrapper-base': {\n transition: rowBackgroundTransition,\n backgroundColor: getIn(theme.colors, tableRow.nonStripe.backgroundColorActive),\n cursor: 'pointer',\n },\n }),\n '&:focus': getFocusRingStyles({ theme, negativeOffset: true }),\n },\n };\n});\n\nconst _TableRow = <Item,>({\n children,\n item,\n isDisabled,\n onHover,\n onClick,\n hoverActions,\n testID,\n ...rest\n}: TableRowProps<Item>): React.ReactElement => {\n const {\n selectionType,\n selectedRows,\n toggleRowSelectionById,\n setDisabledRows,\n showBorderedCells,\n setHasHoverActions,\n isVirtualized,\n } = useTableContext();\n const isSelectable = selectionType !== 'none';\n const isMultiSelect = selectionType === 'multiple';\n const isSelected = selectedRows?.includes(item.id);\n const hasHoverActions = Boolean(hoverActions);\n\n useEffect(() => {\n if (isDisabled) {\n setDisabledRows((prev) => [...prev, item.id]);\n }\n }, [isDisabled, item.id, setDisabledRows]);\n\n useIsomorphicLayoutEffect(() => {\n if (hasHoverActions) {\n setHasHoverActions(true);\n }\n }, [hasHoverActions]);\n\n return (\n <StyledRow\n disabled={isDisabled}\n $isSelectable={isDisabled ? false : isSelectable}\n $isHoverable={isDisabled ? false : Boolean(onHover) || Boolean(onClick)}\n $showBorderedCells={showBorderedCells}\n item={item}\n className={isDisabled ? 'disabled-row' : ''}\n onMouseEnter={() => onHover?.({ item })}\n onClick={() => onClick?.({ item })}\n {...makeAccessible({ selected: isSelected })}\n {...metaAttribute({ name: MetaConstants.TableRow, testID })}\n {...makeAnalyticsAttribute(rest)}\n $isVirtualized={isVirtualized}\n >\n {isMultiSelect && (\n <TableCheckboxCell\n isChecked={isSelected}\n onChange={() => !isDisabled && toggleRowSelectionById(item.id)}\n isDisabled={isDisabled}\n />\n )}\n {children}\n {hoverActions ? (\n <TableCell _hasPadding={false}>\n <BaseBox\n className={classes.HOVER_ACTIONS}\n position={{ base: 'relative', m: 'absolute' }}\n top=\"spacing.0\"\n right=\"spacing.0\"\n height=\"100%\"\n flexShrink={0}\n flexGrow={1}\n width=\"max-content\"\n >\n <BaseBox\n className={classes.HOVER_ACTIONS_LAYER2}\n height=\"100%\"\n width=\"max-content\"\n display=\"flex\"\n alignItems=\"center\"\n >\n <BaseBox\n height=\"100%\"\n width=\"max-content\"\n className={classes.HOVER_ACTIONS_LAYER3}\n display=\"flex\"\n alignItems=\"center\"\n paddingLeft={{ base: 'spacing.4', m: 'spacing.6' }}\n paddingRight=\"spacing.4\"\n gap=\"spacing.3\"\n >\n {hoverActions}\n </BaseBox>\n </BaseBox>\n </BaseBox>\n </TableCell>\n ) : null}\n </StyledRow>\n );\n};\n\nconst _Virtulized = <Item,>({\n headerHeight,\n rowHeight,\n children,\n}: VirtualizedWrapperProps): React.ReactElement => {\n const [parsedHeader = null, parsedBody = null] = React.Children.toArray(children);\n const { rowDensity, tableData } = useTableContext<Item>();\n const _tableRow = Number(tableRow.minHeight[rowDensity]);\n\n const _rowHeight = (item: TableNode<Item>, index: number): number => {\n if (index === 0) {\n return headerHeight ?? _tableRow;\n }\n return rowHeight ? rowHeight(item, index - 1) : _tableRow;\n };\n\n const bodyFunction =\n React.isValidElement(parsedBody) &&\n parsedBody.props &&\n typeof parsedBody.props === 'object' &&\n 'children' in parsedBody.props\n ? parsedBody.props.children\n : null;\n\n return (\n <Virtualized\n tableList={tableData}\n rowHeight={_rowHeight as RowHeightType}\n header={() => parsedHeader}\n body={bodyFunction as (node: TableNode<Item>, index: number) => React.ReactNode}\n />\n );\n};\n\nconst TableRow = assignWithoutSideEffects(_TableRow, {\n componentId: ComponentIds.TableRow,\n});\n\nconst TableVirtualizedWrapper = assignWithoutSideEffects(_Virtulized, {\n componentId: ComponentIds.VirtualizedTable,\n});\nexport { TableBody, TableRow, TableCell, TableVirtualizedWrapper };\n"],"names":["StyledBody","styled","Body","withConfig","displayName","componentId","_ref","theme","$showStripedRows","$isSelectable","rowBackgroundTransition","getTableRowBackgroundTransition","_objectSpread","border","transition","borderBottom","getTableBodyStyles","addCommonStyles","isSelectable","showStripedRows","isVirtualized","_TableBody","_ref2","children","rest","_objectWithoutProperties","_excluded","_useTableContext","useTableContext","selectionType","_jsx","$showBorderedCells","metaAttribute","name","MetaConstants","TableBody","makeAnalyticsAttribute","assignWithoutSideEffects","ComponentIds","StyledCell","Cell","_ref3","$backgroundColor","height","backgroundColor","getIn","colors","alignSelf","getFocusRingStyles","negativeOffset","CellWrapper","BaseBox","_ref4","$rowDensity","_ref4$hasPadding","hasPadding","textAlign","concat","makeMotionTime","motion","tableRow","backgroundColorMotionDuration","backgroundColorMotionEasing","nonStripeWrapper","paddingLeft","makeSpace","paddingRight","minHeight","makeSize","size","width","justifyContent","borderBottomWidth","borderBottomColor","borderColor","borderBottomStyle","_TableCell","_ref5","_hasPadding","_excluded2","isChildrenString","_useTableContext2","rowDensity","tabIndex","role","TableCell","className","display","alignItems","flex","pointerEvents","whiteSpace","position","TableCellWrapper","Text","truncateAfterLines","TableCheckboxCell","_ref6","isChecked","onChange","isDisabled","checkboxCellWidth","onClick","e","stopPropagation","Checkbox","StyledRow","Row","_ref7","$isHoverable","_useTableContext3","hasHoverActions","borderRightWidth","borderRightStyle","borderRightColor","undefined","borderRight","_defineProperty","getMediaQuery","min","breakpoints","m","opacity","zIndex","right","overflow","getTableActionsHoverStyles","hoverColor","nonStripe","cursor","backgroundColorHover","backgroundColorFocus","backgroundGradientColor","backgroundColorActive","_TableRow","_ref9","item","onHover","hoverActions","testID","_excluded3","_useTableContext4","selectedRows","toggleRowSelectionById","setDisabledRows","showBorderedCells","setHasHoverActions","isMultiSelect","isSelected","includes","id","Boolean","useEffect","prev","_toConsumableArray","useIsomorphicLayoutEffect","_jsxs","disabled","onMouseEnter","makeAccessible","selected","TableRow","$isVirtualized","classes","HOVER_ACTIONS","base","top","flexShrink","flexGrow","HOVER_ACTIONS_LAYER2","HOVER_ACTIONS_LAYER3","gap","_Virtulized","_ref10","headerHeight","rowHeight","_React$Children$toArr","React","Children","toArray","_React$Children$toArr2","_slicedToArray","_React$Children$toArr3","parsedHeader","_React$Children$toArr4","parsedBody","_useTableContext5","tableData","_tableRow","Number","_rowHeight","index","bodyFunction","isValidElement","props","_typeof","Virtualized","tableList","header","body","TableVirtualizedWrapper","VirtualizedTable"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TableBody.web.js","sources":["../../../../../../src/components/Table/TableBody.web.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { Body, Row, Cell } from '@table-library/react-table-library/table';\nimport { Virtualized } from '@table-library/react-table-library/virtualized';\nimport styled from 'styled-components';\nimport { useTableContext } from './TableContext';\nimport { checkboxCellWidth, classes, tableRow } from './tokens';\nimport { ComponentIds } from './componentIds';\nimport type {\n TableProps,\n TableBodyProps,\n TableRowProps,\n TableCellProps,\n TableBackgroundColors,\n VirtualizedWrapperProps,\n RowHeightType,\n TableNode,\n} from './types';\nimport { getTableActionsHoverStyles, getTableRowBackgroundTransition } from './utils';\nimport { getTableBodyStyles } from './commonStyles';\nimport getIn from '~utils/lodashButBetter/get';\nimport { Text } from '~components/Typography';\nimport type { CheckboxProps } from '~components/Checkbox';\nimport { Checkbox } from '~components/Checkbox';\nimport { getMediaQuery, makeMotionTime, makeSize, makeSpace } from '~utils';\nimport BaseBox from '~components/Box/BaseBox';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport { size } from '~tokens/global';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { useIsomorphicLayoutEffect } from '~utils/useIsomorphicLayoutEffect';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nconst StyledBody = styled(Body)<{\n $isSelectable: boolean;\n $showStripedRows: boolean;\n}>(({ theme, $showStripedRows, $isSelectable }) => {\n const rowBackgroundTransition = getTableRowBackgroundTransition(theme);\n\n return {\n '&&&': {\n border: 'none',\n transition: rowBackgroundTransition,\n\n '& tr:last-child .cell-wrapper': {\n borderBottom: 'none',\n },\n\n ...{\n ...getTableBodyStyles({\n addCommonStyles: true,\n theme,\n isSelectable: $isSelectable,\n showStripedRows: $showStripedRows,\n isVirtualized: false,\n }),\n },\n },\n };\n});\n\nconst _TableBody = <Item,>({ children, ...rest }: TableBodyProps<Item>): React.ReactElement => {\n const { showStripedRows, selectionType } = useTableContext();\n const isSelectable = selectionType !== 'none';\n\n return (\n <StyledBody\n $isSelectable={isSelectable}\n $showStripedRows={showStripedRows}\n $showBorderedCells={true}\n {...metaAttribute({ name: MetaConstants.TableBody })}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </StyledBody>\n );\n};\n\nconst TableBody = assignWithoutSideEffects(_TableBody, {\n componentId: ComponentIds.TableBody,\n});\n\nexport const StyledCell = styled(Cell)<{\n $backgroundColor: TableBackgroundColors;\n}>(({ theme, $backgroundColor }) => ({\n '&&&': {\n height: '100%',\n backgroundColor: getIn(theme.colors, $backgroundColor),\n '& > div:first-child': {\n alignSelf: 'stretch',\n },\n '&:focus-visible': { ...getFocusRingStyles({ theme, negativeOffset: true }) },\n },\n}));\n\nexport const CellWrapper = styled(BaseBox)<{\n $rowDensity: NonNullable<TableProps<unknown>['rowDensity']>;\n showStripedRows?: boolean;\n hasPadding?: boolean;\n textAlign?: TableCellProps['textAlign'];\n}>(({ theme, $rowDensity, showStripedRows, hasPadding = true, textAlign }) => {\n const rowBackgroundTransition = `background-color ${makeMotionTime(\n getIn(theme.motion, tableRow.backgroundColorMotionDuration),\n )} ${getIn(theme.motion, tableRow.backgroundColorMotionEasing)}`;\n\n return {\n '&&&': {\n transition: rowBackgroundTransition,\n backgroundColor: tableRow.nonStripeWrapper.backgroundColor,\n paddingLeft: hasPadding ? makeSpace(getIn(theme, tableRow.paddingLeft[$rowDensity])) : '0px',\n paddingRight: hasPadding\n ? makeSpace(getIn(theme, tableRow.paddingRight[$rowDensity]))\n : '0px',\n minHeight: makeSize(getIn(size, tableRow.minHeight[$rowDensity])),\n height: '100%',\n width: '100%',\n justifyContent: textAlign,\n ...(!showStripedRows && {\n borderBottomWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),\n borderBottomColor: getIn(theme.colors, tableRow.borderColor),\n borderBottomStyle: 'solid',\n }),\n },\n };\n});\n\nconst _TableCell = ({\n children,\n textAlign,\n _hasPadding,\n ...rest\n}: TableCellProps): React.ReactElement => {\n const isChildrenString = typeof children === 'string';\n const { selectionType, rowDensity, showStripedRows, backgroundColor } = useTableContext();\n const isSelectable = selectionType !== 'none';\n\n return (\n <StyledCell\n tabIndex={0}\n role=\"cell\"\n $backgroundColor={backgroundColor}\n {...metaAttribute({ name: MetaConstants.TableCell })}\n {...makeAnalyticsAttribute(rest)}\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 hasPadding={_hasPadding}\n flex={1}\n textAlign={textAlign}\n // when a direct string child is passed we want to disable pointer events\n // for custom cells components, consumers can handle pointer events themselves\n pointerEvents={isChildrenString && isSelectable ? 'none' : 'auto'}\n // allow text to wrap, so that if the <Text> overflows it can truncate\n whiteSpace=\"normal\"\n position=\"relative\"\n {...metaAttribute({ name: MetaConstants.TableCellWrapper })}\n >\n {isChildrenString ? (\n <Text size=\"medium\" truncateAfterLines={1}>\n {children}\n </Text>\n ) : (\n children\n )}\n </CellWrapper>\n </BaseBox>\n </StyledCell>\n );\n};\n\nconst TableCell = assignWithoutSideEffects(_TableCell, {\n componentId: ComponentIds.TableCell,\n});\n\nconst TableCheckboxCell = ({\n isChecked,\n onChange,\n isDisabled,\n}: {\n isChecked: CheckboxProps['isChecked'];\n onChange: CheckboxProps['onChange'];\n isDisabled?: boolean;\n}): React.ReactElement => {\n return (\n <TableCell>\n <BaseBox\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n flex={1}\n width={makeSize(checkboxCellWidth)}\n onClick={(e) => e.stopPropagation()}\n >\n <Checkbox\n isDisabled={isDisabled}\n isChecked={isChecked}\n onChange={onChange}\n {...makeAccessible({ label: 'Select Row' })}\n />\n </BaseBox>\n </TableCell>\n );\n};\n\nconst StyledRow = styled(Row)<{\n $isSelectable: boolean;\n $isHoverable: boolean;\n $showBorderedCells: boolean;\n}>(({ theme, $isSelectable, $isHoverable, $showBorderedCells }) => {\n const { hasHoverActions } = useTableContext();\n\n const rowBackgroundTransition = `background-color ${makeMotionTime(\n getIn(theme.motion, tableRow.backgroundColorMotionDuration),\n )} ${getIn(theme.motion, tableRow.backgroundColorMotionEasing)}`;\n\n return {\n '&&&': {\n backgroundColor: 'transparent',\n '& .cell-wrapper': $showBorderedCells\n ? {\n borderRightWidth: makeSpace(getIn(theme.border.width, tableRow.borderBottomWidth)),\n borderRightStyle: 'solid',\n borderRightColor: getIn(theme.colors, tableRow.borderColor),\n }\n : undefined,\n '& td:last-child .cell-wrapper': {\n borderRight: 'none',\n },\n ...(hasHoverActions\n ? {\n [`@media ${getMediaQuery({ min: theme.breakpoints.m })}`]: {\n '& td:last-child': {\n opacity: 0,\n position: 'sticky',\n zIndex: 2,\n right: 0,\n width: '0px',\n '& > div:first-child': {\n overflow: 'visible',\n },\n },\n '& td:last-child:focus-within': {\n opacity: 1,\n ...getTableActionsHoverStyles({\n theme,\n hoverColor: tableRow.nonStripe.backgroundColor,\n }),\n },\n '&:hover td:last-child': {\n opacity: 1,\n },\n },\n }\n : {}),\n ...(($isHoverable || $isSelectable) && {\n '&:hover:not(.disabled-row) .cell-wrapper-base': {\n transition: rowBackgroundTransition,\n cursor: 'pointer',\n backgroundColor: getIn(theme.colors, tableRow.nonStripe.backgroundColorHover),\n ...getTableActionsHoverStyles({\n hoverColor: tableRow.nonStripe.backgroundColorHover,\n theme,\n }),\n },\n }),\n ...($isSelectable && {\n '&:focus:not(.disabled-row) .cell-wrapper-base': {\n transition: rowBackgroundTransition,\n backgroundColor: getIn(theme.colors, tableRow.nonStripe.backgroundColorFocus),\n cursor: 'pointer',\n ...getTableActionsHoverStyles({\n hoverColor: tableRow.nonStripe.backgroundColorFocus,\n backgroundGradientColor: tableRow.nonStripe.backgroundColorHover,\n theme,\n }),\n },\n '&:active:not(.disabled-row) .cell-wrapper-base': {\n transition: rowBackgroundTransition,\n backgroundColor: getIn(theme.colors, tableRow.nonStripe.backgroundColorActive),\n cursor: 'pointer',\n },\n }),\n '&:focus': getFocusRingStyles({ theme, negativeOffset: true }),\n },\n };\n});\n\nconst _TableRow = <Item,>({\n children,\n item,\n isDisabled,\n onHover,\n onClick,\n hoverActions,\n testID,\n ...rest\n}: TableRowProps<Item>): React.ReactElement => {\n const {\n selectionType,\n selectedRows,\n toggleRowSelectionById,\n setDisabledRows,\n showBorderedCells,\n setHasHoverActions,\n isVirtualized,\n } = useTableContext();\n const isSelectable = selectionType !== 'none';\n const isMultiSelect = selectionType === 'multiple';\n const isSelected = selectedRows?.includes(item.id);\n const hasHoverActions = Boolean(hoverActions);\n\n useEffect(() => {\n if (isDisabled) {\n setDisabledRows((prev) => [...prev, item.id]);\n }\n }, [isDisabled, item.id, setDisabledRows]);\n\n useIsomorphicLayoutEffect(() => {\n if (hasHoverActions) {\n setHasHoverActions(true);\n }\n }, [hasHoverActions]);\n\n return (\n <StyledRow\n disabled={isDisabled}\n $isSelectable={isDisabled ? false : isSelectable}\n $isHoverable={isDisabled ? false : Boolean(onHover) || Boolean(onClick)}\n $showBorderedCells={showBorderedCells}\n item={item}\n className={isDisabled ? 'disabled-row' : ''}\n onMouseEnter={() => onHover?.({ item })}\n onClick={() => onClick?.({ item })}\n {...makeAccessible({ selected: isSelected })}\n {...metaAttribute({ name: MetaConstants.TableRow, testID })}\n {...makeAnalyticsAttribute(rest)}\n $isVirtualized={isVirtualized}\n >\n {isMultiSelect && (\n <TableCheckboxCell\n isChecked={isSelected}\n onChange={() => !isDisabled && toggleRowSelectionById(item.id)}\n isDisabled={isDisabled}\n />\n )}\n {children}\n {hoverActions ? (\n <TableCell _hasPadding={false}>\n <BaseBox\n className={classes.HOVER_ACTIONS}\n position={{ base: 'relative', m: 'absolute' }}\n top=\"spacing.0\"\n right=\"spacing.0\"\n height=\"100%\"\n flexShrink={0}\n flexGrow={1}\n width=\"max-content\"\n >\n <BaseBox\n className={classes.HOVER_ACTIONS_LAYER2}\n height=\"100%\"\n width=\"max-content\"\n display=\"flex\"\n alignItems=\"center\"\n >\n <BaseBox\n height=\"100%\"\n width=\"max-content\"\n className={classes.HOVER_ACTIONS_LAYER3}\n display=\"flex\"\n alignItems=\"center\"\n paddingLeft={{ base: 'spacing.4', m: 'spacing.6' }}\n paddingRight=\"spacing.4\"\n gap=\"spacing.3\"\n >\n {hoverActions}\n </BaseBox>\n </BaseBox>\n </BaseBox>\n </TableCell>\n ) : null}\n </StyledRow>\n );\n};\n\nconst _Virtulized = <Item,>({\n headerHeight,\n rowHeight,\n children,\n}: VirtualizedWrapperProps): React.ReactElement => {\n const [parsedHeader = null, parsedBody = null] = React.Children.toArray(children);\n const { rowDensity, tableData } = useTableContext<Item>();\n const _tableRow = Number(tableRow.minHeight[rowDensity]);\n\n const _rowHeight = (item: TableNode<Item>, index: number): number => {\n if (index === 0) {\n return headerHeight ?? _tableRow;\n }\n return rowHeight ? rowHeight(item, index - 1) : _tableRow;\n };\n\n const bodyFunction =\n React.isValidElement(parsedBody) &&\n parsedBody.props &&\n typeof parsedBody.props === 'object' &&\n 'children' in parsedBody.props\n ? parsedBody.props.children\n : null;\n\n return (\n <Virtualized\n tableList={tableData}\n rowHeight={_rowHeight as RowHeightType}\n header={() => parsedHeader}\n body={bodyFunction as (node: TableNode<Item>, index: number) => React.ReactNode}\n />\n );\n};\n\nconst TableRow = assignWithoutSideEffects(_TableRow, {\n componentId: ComponentIds.TableRow,\n});\n\nconst TableVirtualizedWrapper = assignWithoutSideEffects(_Virtulized, {\n componentId: ComponentIds.VirtualizedTable,\n});\nexport { TableBody, TableRow, TableCell, TableVirtualizedWrapper };\n"],"names":["StyledBody","styled","Body","withConfig","displayName","componentId","_ref","theme","$showStripedRows","$isSelectable","rowBackgroundTransition","getTableRowBackgroundTransition","_objectSpread","border","transition","borderBottom","getTableBodyStyles","addCommonStyles","isSelectable","showStripedRows","isVirtualized","_TableBody","_ref2","children","rest","_objectWithoutProperties","_excluded","_useTableContext","useTableContext","selectionType","_jsx","$showBorderedCells","metaAttribute","name","MetaConstants","TableBody","makeAnalyticsAttribute","assignWithoutSideEffects","ComponentIds","StyledCell","Cell","_ref3","$backgroundColor","height","backgroundColor","getIn","colors","alignSelf","getFocusRingStyles","negativeOffset","CellWrapper","BaseBox","_ref4","$rowDensity","_ref4$hasPadding","hasPadding","textAlign","concat","makeMotionTime","motion","tableRow","backgroundColorMotionDuration","backgroundColorMotionEasing","nonStripeWrapper","paddingLeft","makeSpace","paddingRight","minHeight","makeSize","size","width","justifyContent","borderBottomWidth","borderBottomColor","borderColor","borderBottomStyle","_TableCell","_ref5","_hasPadding","_excluded2","isChildrenString","_useTableContext2","rowDensity","tabIndex","role","TableCell","className","display","alignItems","flex","pointerEvents","whiteSpace","position","TableCellWrapper","Text","truncateAfterLines","TableCheckboxCell","_ref6","isChecked","onChange","isDisabled","checkboxCellWidth","onClick","e","stopPropagation","Checkbox","makeAccessible","label","StyledRow","Row","_ref7","$isHoverable","_useTableContext3","hasHoverActions","borderRightWidth","borderRightStyle","borderRightColor","undefined","borderRight","_defineProperty","getMediaQuery","min","breakpoints","m","opacity","zIndex","right","overflow","getTableActionsHoverStyles","hoverColor","nonStripe","cursor","backgroundColorHover","backgroundColorFocus","backgroundGradientColor","backgroundColorActive","_TableRow","_ref9","item","onHover","hoverActions","testID","_excluded3","_useTableContext4","selectedRows","toggleRowSelectionById","setDisabledRows","showBorderedCells","setHasHoverActions","isMultiSelect","isSelected","includes","id","Boolean","useEffect","prev","_toConsumableArray","useIsomorphicLayoutEffect","_jsxs","disabled","onMouseEnter","selected","TableRow","$isVirtualized","classes","HOVER_ACTIONS","base","top","flexShrink","flexGrow","HOVER_ACTIONS_LAYER2","HOVER_ACTIONS_LAYER3","gap","_Virtulized","_ref10","headerHeight","rowHeight","_React$Children$toArr","React","Children","toArray","_React$Children$toArr2","_slicedToArray","_React$Children$toArr3","parsedHeader","_React$Children$toArr4","parsedBody","_useTableContext5","tableData","_tableRow","Number","_rowHeight","index","bodyFunction","isValidElement","props","_typeof","Virtualized","tableList","header","body","TableVirtualizedWrapper","VirtualizedTable"],"mappings":"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"}
|