@atlaskit/table 0.2.8 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/dist/cjs/body.js +1 -3
- package/dist/cjs/expandable-cell.js +45 -0
- package/dist/cjs/expandable-row-content.js +21 -0
- package/dist/cjs/expandable-row.js +25 -0
- package/dist/cjs/head-cell.js +3 -3
- package/dist/cjs/hooks/selection-provider.js +0 -4
- package/dist/cjs/hooks/use-expand-content.js +33 -0
- package/dist/cjs/hooks/use-expand.js +50 -0
- package/dist/cjs/index.js +21 -0
- package/dist/cjs/row.js +19 -3
- package/dist/cjs/sortable-column.js +2 -0
- package/dist/cjs/thead.js +2 -7
- package/dist/cjs/ui/base-cell.js +25 -14
- package/dist/cjs/ui/expand-icon.js +41 -0
- package/dist/cjs/ui/expandable-cell.js +28 -0
- package/dist/cjs/ui/index.js +14 -0
- package/dist/cjs/ui/selectable-cell.js +2 -9
- package/dist/cjs/ui/td.js +1 -0
- package/dist/cjs/ui/th.js +9 -13
- package/dist/cjs/ui/tr.js +6 -2
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/body.js +0 -2
- package/dist/es2019/expandable-cell.js +35 -0
- package/dist/es2019/expandable-row-content.js +14 -0
- package/dist/es2019/expandable-row.js +18 -0
- package/dist/es2019/head-cell.js +3 -3
- package/dist/es2019/hooks/selection-provider.js +0 -4
- package/dist/es2019/hooks/use-expand-content.js +23 -0
- package/dist/es2019/hooks/use-expand.js +32 -0
- package/dist/es2019/index.js +3 -0
- package/dist/es2019/row.js +21 -3
- package/dist/es2019/thead.js +2 -7
- package/dist/es2019/ui/base-cell.js +26 -14
- package/dist/es2019/ui/expand-icon.js +34 -0
- package/dist/es2019/ui/expandable-cell.js +22 -0
- package/dist/es2019/ui/index.js +2 -0
- package/dist/es2019/ui/selectable-cell.js +2 -8
- package/dist/es2019/ui/th.js +1 -4
- package/dist/es2019/ui/tr.js +6 -2
- package/dist/es2019/version.json +1 -1
- package/dist/esm/body.js +0 -2
- package/dist/esm/expandable-cell.js +34 -0
- package/dist/esm/expandable-row-content.js +13 -0
- package/dist/esm/expandable-row.js +17 -0
- package/dist/esm/head-cell.js +3 -3
- package/dist/esm/hooks/selection-provider.js +0 -4
- package/dist/esm/hooks/use-expand-content.js +22 -0
- package/dist/esm/hooks/use-expand.js +38 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/row.js +19 -3
- package/dist/esm/thead.js +2 -7
- package/dist/esm/ui/base-cell.js +26 -14
- package/dist/esm/ui/expand-icon.js +33 -0
- package/dist/esm/ui/expandable-cell.js +21 -0
- package/dist/esm/ui/index.js +2 -0
- package/dist/esm/ui/selectable-cell.js +2 -9
- package/dist/esm/ui/th.js +9 -13
- package/dist/esm/ui/tr.js +6 -2
- package/dist/esm/version.json +1 -1
- package/dist/types/expandable-cell.d.ts +10 -0
- package/dist/types/expandable-row-content.d.ts +12 -0
- package/dist/types/expandable-row.d.ts +19 -0
- package/dist/types/head-cell.d.ts +3 -3
- package/dist/types/hooks/selection-provider.d.ts +0 -4
- package/dist/types/hooks/use-expand-content.d.ts +15 -0
- package/dist/types/hooks/use-expand.d.ts +17 -0
- package/dist/types/index.d.ts +3 -0
- package/dist/types/ui/base-cell.d.ts +11 -3
- package/dist/types/ui/expand-icon.d.ts +10 -0
- package/dist/types/ui/expandable-cell.d.ts +14 -0
- package/dist/types/ui/index.d.ts +2 -0
- package/dist/types/ui/selectable-cell.d.ts +3 -2
- package/dist/types/ui/td.d.ts +1 -1
- package/dist/types/ui/thead.d.ts +1 -1
- package/dist/types/ui/tr.d.ts +5 -1
- package/package.json +3 -2
- package/report.api.md +36 -3
- package/tmp/api-report-tmp.d.ts +30 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @atlaskit/table
|
|
2
2
|
|
|
3
|
+
## 0.3.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies
|
|
8
|
+
|
|
9
|
+
## 0.3.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- [`bc489da7472`](https://bitbucket.org/atlassian/atlassian-frontend/commits/bc489da7472) - [ux] - Adds new primitives to support expandable row functionality. This will supersede the `@atlaskit/table-tree` package.
|
|
14
|
+
|
|
15
|
+
- `<ExpandableRow>`
|
|
16
|
+
- `<ExpandableRowContent>`
|
|
17
|
+
- `<ExpandableCell>`
|
|
18
|
+
|
|
3
19
|
## 0.2.8
|
|
4
20
|
|
|
5
21
|
### Patch Changes
|
package/dist/cjs/body.js
CHANGED
|
@@ -20,7 +20,7 @@ var _excluded = ["idx"];
|
|
|
20
20
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
21
21
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
22
22
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
23
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
23
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } /* eslint-disable @repo/internal/react/no-clone-element */ /** @jsx jsx */
|
|
24
24
|
/**
|
|
25
25
|
* __Table body__
|
|
26
26
|
*/
|
|
@@ -35,11 +35,9 @@ function TBody(_ref) {
|
|
|
35
35
|
_useSelection2$ = _useSelection2[1],
|
|
36
36
|
removeAll = _useSelection2$.removeAll,
|
|
37
37
|
setMax = _useSelection2$.setMax;
|
|
38
|
-
|
|
39
38
|
// TODO: this seems like something the user should control or opt into.
|
|
40
39
|
(0, _react.useEffect)(function () {
|
|
41
40
|
removeAll === null || removeAll === void 0 ? void 0 : removeAll();
|
|
42
|
-
|
|
43
41
|
// eslint-disable-next-line react-hooks/exhaustive-deps -- When the rows change, we [currently] want to call removeAll.
|
|
44
42
|
}, [rows]);
|
|
45
43
|
var childrenCount = _react.Children.count(children);
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
var _react = require("react");
|
|
10
|
+
var _react2 = require("@emotion/react");
|
|
11
|
+
var _button = _interopRequireDefault(require("@atlaskit/button"));
|
|
12
|
+
var _useExpand2 = _interopRequireDefault(require("./hooks/use-expand"));
|
|
13
|
+
var Primitives = _interopRequireWildcard(require("./ui"));
|
|
14
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
16
|
+
/** @jsx jsx */
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* __Expandable cell__
|
|
20
|
+
*
|
|
21
|
+
* A cell with an expand button that controls the expanded state
|
|
22
|
+
* of the `<ExpandableRow>`.
|
|
23
|
+
*/
|
|
24
|
+
var ExpandableCell = /*#__PURE__*/(0, _react.memo)(function () {
|
|
25
|
+
var _useExpand = (0, _useExpand2.default)(),
|
|
26
|
+
isExpanded = _useExpand.isExpanded,
|
|
27
|
+
toggleExpanded = _useExpand.toggleExpanded;
|
|
28
|
+
var handleClick = (0, _react.useCallback)(function () {
|
|
29
|
+
toggleExpanded();
|
|
30
|
+
}, [toggleExpanded]);
|
|
31
|
+
return (0, _react2.jsx)(Primitives.ExpandableCell, {
|
|
32
|
+
as: "td"
|
|
33
|
+
}, (0, _react2.jsx)(_button.default, {
|
|
34
|
+
spacing: "compact",
|
|
35
|
+
appearance: "subtle",
|
|
36
|
+
iconAfter: (0, _react2.jsx)(Primitives.ExpandIcon, {
|
|
37
|
+
isExpanded: isExpanded
|
|
38
|
+
}),
|
|
39
|
+
onClick: handleClick,
|
|
40
|
+
"aria-pressed": isExpanded,
|
|
41
|
+
"aria-label": "Expand row"
|
|
42
|
+
}));
|
|
43
|
+
});
|
|
44
|
+
var _default = ExpandableCell;
|
|
45
|
+
exports.default = _default;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _useExpandContent = require("./hooks/use-expand-content");
|
|
10
|
+
/**
|
|
11
|
+
* __Expandable row content__
|
|
12
|
+
*
|
|
13
|
+
* Contains expandable content. Uses a context provider to allow children
|
|
14
|
+
* to identify if they are expandable content.
|
|
15
|
+
*/
|
|
16
|
+
var ExpandableRowContent = function ExpandableRowContent(_ref) {
|
|
17
|
+
var children = _ref.children;
|
|
18
|
+
return /*#__PURE__*/_react.default.createElement(_useExpandContent.ExpandContentContextProvider, null, children);
|
|
19
|
+
};
|
|
20
|
+
var _default = ExpandableRowContent;
|
|
21
|
+
exports.default = _default;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _useExpand = require("./hooks/use-expand");
|
|
10
|
+
/**
|
|
11
|
+
* __Expandable row__
|
|
12
|
+
*
|
|
13
|
+
* A context provider for `<Row>` to support expandable content.
|
|
14
|
+
*/
|
|
15
|
+
var ExpandableRow = function ExpandableRow(_ref) {
|
|
16
|
+
var children = _ref.children,
|
|
17
|
+
isExpanded = _ref.isExpanded,
|
|
18
|
+
isDefaultExpanded = _ref.isDefaultExpanded;
|
|
19
|
+
return /*#__PURE__*/_react.default.createElement(_useExpand.ExpandContextProvider, {
|
|
20
|
+
isExpanded: isExpanded,
|
|
21
|
+
isDefaultExpanded: isDefaultExpanded
|
|
22
|
+
}, children);
|
|
23
|
+
};
|
|
24
|
+
var _default = ExpandableRow;
|
|
25
|
+
exports.default = _default;
|
package/dist/cjs/head-cell.js
CHANGED
|
@@ -15,7 +15,7 @@ var _th = require("./ui/th");
|
|
|
15
15
|
*
|
|
16
16
|
* HeadCell element
|
|
17
17
|
*/
|
|
18
|
-
var
|
|
18
|
+
var HeadCell = function HeadCell(_ref) {
|
|
19
19
|
var children = _ref.children,
|
|
20
20
|
align = _ref.align,
|
|
21
21
|
testId = _ref.testId,
|
|
@@ -27,10 +27,10 @@ var Column = function Column(_ref) {
|
|
|
27
27
|
align: align,
|
|
28
28
|
testId: testId,
|
|
29
29
|
backgroundColor: backgroundColor
|
|
30
|
-
}, (0, _react.jsx)(_dsExplorations.UNSAFE_Text, {
|
|
30
|
+
}, children && (0, _react.jsx)(_dsExplorations.UNSAFE_Text, {
|
|
31
31
|
color: "color.text",
|
|
32
32
|
fontWeight: "medium"
|
|
33
33
|
}, children));
|
|
34
34
|
};
|
|
35
|
-
var _default =
|
|
35
|
+
var _default = HeadCell;
|
|
36
36
|
exports.default = _default;
|
|
@@ -15,10 +15,6 @@ var SelectionContext = /*#__PURE__*/(0, _react.createContext)([_useSelectable.de
|
|
|
15
15
|
* __Selection provider__
|
|
16
16
|
*
|
|
17
17
|
* A selection provider injects selection specific state into the table.
|
|
18
|
-
*
|
|
19
|
-
* - [Examples](https://atlassian.design/components/{packageName}/examples)
|
|
20
|
-
* - [Code](https://atlassian.design/components/{packageName}/code)
|
|
21
|
-
* - [Usage](https://atlassian.design/components/{packageName}/usage)
|
|
22
18
|
*/
|
|
23
19
|
var SelectionProvider = function SelectionProvider(_ref) {
|
|
24
20
|
var children = _ref.children;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = exports.ExpandContentContextProvider = void 0;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
10
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
11
|
+
var ExpandContentContext = /*#__PURE__*/(0, _react.createContext)({
|
|
12
|
+
isExpandableContent: false
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* __Expand content provider__
|
|
17
|
+
*
|
|
18
|
+
* An expand content provider allows `<Row>` to determine if it is a subitem.
|
|
19
|
+
*/
|
|
20
|
+
var ExpandContentContextProvider = function ExpandContentContextProvider(_ref) {
|
|
21
|
+
var children = _ref.children;
|
|
22
|
+
return /*#__PURE__*/_react.default.createElement(ExpandContentContext.Provider, {
|
|
23
|
+
value: {
|
|
24
|
+
isExpandableContent: true
|
|
25
|
+
}
|
|
26
|
+
}, children);
|
|
27
|
+
};
|
|
28
|
+
exports.ExpandContentContextProvider = ExpandContentContextProvider;
|
|
29
|
+
var useExpandContent = function useExpandContent() {
|
|
30
|
+
return (0, _react.useContext)(ExpandContentContext);
|
|
31
|
+
};
|
|
32
|
+
var _default = useExpandContent;
|
|
33
|
+
exports.default = _default;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = exports.ExpandContextProvider = void 0;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _noop = _interopRequireDefault(require("@atlaskit/ds-lib/noop"));
|
|
12
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
13
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
14
|
+
var ExpandContext = /*#__PURE__*/(0, _react.createContext)({
|
|
15
|
+
isExpanded: false,
|
|
16
|
+
toggleExpanded: _noop.default
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* __Expand context provider__
|
|
21
|
+
*
|
|
22
|
+
* An expand context provider.
|
|
23
|
+
*/
|
|
24
|
+
var ExpandContextProvider = function ExpandContextProvider(_ref) {
|
|
25
|
+
var children = _ref.children,
|
|
26
|
+
isExpandedProp = _ref.isExpanded,
|
|
27
|
+
_ref$isDefaultExpande = _ref.isDefaultExpanded,
|
|
28
|
+
isDefaultExpanded = _ref$isDefaultExpande === void 0 ? false : _ref$isDefaultExpande;
|
|
29
|
+
var _useState = (0, _react.useState)(isDefaultExpanded),
|
|
30
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
31
|
+
isExpanded = _useState2[0],
|
|
32
|
+
setIsExpanded = _useState2[1];
|
|
33
|
+
var toggleExpanded = (0, _react.useCallback)(function () {
|
|
34
|
+
setIsExpanded(function (v) {
|
|
35
|
+
return !v;
|
|
36
|
+
});
|
|
37
|
+
}, []);
|
|
38
|
+
return /*#__PURE__*/_react.default.createElement(ExpandContext.Provider, {
|
|
39
|
+
value: {
|
|
40
|
+
isExpanded: isExpandedProp || isExpanded,
|
|
41
|
+
toggleExpanded: toggleExpanded
|
|
42
|
+
}
|
|
43
|
+
}, children);
|
|
44
|
+
};
|
|
45
|
+
exports.ExpandContextProvider = ExpandContextProvider;
|
|
46
|
+
var useExpand = function useExpand() {
|
|
47
|
+
return (0, _react.useContext)(ExpandContext);
|
|
48
|
+
};
|
|
49
|
+
var _default = useExpand;
|
|
50
|
+
exports.default = _default;
|
package/dist/cjs/index.js
CHANGED
|
@@ -10,6 +10,24 @@ Object.defineProperty(exports, "Cell", {
|
|
|
10
10
|
return _ui.TD;
|
|
11
11
|
}
|
|
12
12
|
});
|
|
13
|
+
Object.defineProperty(exports, "ExpandableCell", {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
get: function get() {
|
|
16
|
+
return _expandableCell.default;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports, "ExpandableRow", {
|
|
20
|
+
enumerable: true,
|
|
21
|
+
get: function get() {
|
|
22
|
+
return _expandableRow.default;
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
Object.defineProperty(exports, "ExpandableRowContent", {
|
|
26
|
+
enumerable: true,
|
|
27
|
+
get: function get() {
|
|
28
|
+
return _expandableRowContent.default;
|
|
29
|
+
}
|
|
30
|
+
});
|
|
13
31
|
Object.defineProperty(exports, "HeadCell", {
|
|
14
32
|
enumerable: true,
|
|
15
33
|
get: function get() {
|
|
@@ -50,6 +68,9 @@ var _table = _interopRequireDefault(require("./table"));
|
|
|
50
68
|
var _body = _interopRequireDefault(require("./body"));
|
|
51
69
|
var _row = _interopRequireDefault(require("./row"));
|
|
52
70
|
var _ui = require("./ui");
|
|
71
|
+
var _expandableCell = _interopRequireDefault(require("./expandable-cell"));
|
|
72
|
+
var _expandableRow = _interopRequireDefault(require("./expandable-row"));
|
|
73
|
+
var _expandableRowContent = _interopRequireDefault(require("./expandable-row-content"));
|
|
53
74
|
var _headCell = _interopRequireDefault(require("./head-cell"));
|
|
54
75
|
var _sortableColumn = _interopRequireDefault(require("./sortable-column"));
|
|
55
76
|
var _thead = _interopRequireDefault(require("./thead"));
|
package/dist/cjs/row.js
CHANGED
|
@@ -10,6 +10,8 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
10
10
|
var _react = require("react");
|
|
11
11
|
var _react2 = require("@emotion/react");
|
|
12
12
|
var _selectionProvider = require("./hooks/selection-provider");
|
|
13
|
+
var _useExpand2 = _interopRequireDefault(require("./hooks/use-expand"));
|
|
14
|
+
var _useExpandContent2 = _interopRequireDefault(require("./hooks/use-expand-content"));
|
|
13
15
|
var _useRowId = require("./hooks/use-row-id");
|
|
14
16
|
var _useTable2 = require("./hooks/use-table");
|
|
15
17
|
var _useTableBody = require("./hooks/use-table-body");
|
|
@@ -39,17 +41,31 @@ var Row = /*#__PURE__*/(0, _react.memo)(function (_ref) {
|
|
|
39
41
|
_useSelection2$ = _useSelection2[0],
|
|
40
42
|
allChecked = _useSelection2$.allChecked,
|
|
41
43
|
checked = _useSelection2$.checked;
|
|
44
|
+
var _useExpand = (0, _useExpand2.default)(),
|
|
45
|
+
isExpanded = _useExpand.isExpanded;
|
|
46
|
+
var _useExpandContent = (0, _useExpandContent2.default)(),
|
|
47
|
+
isExpandableContent = _useExpandContent.isExpandableContent;
|
|
42
48
|
var rowId = (0, _useRowId.useRowId)();
|
|
43
49
|
var isSelected = (0, _react.useMemo)(function () {
|
|
44
|
-
if (!isSelectable) {
|
|
50
|
+
if (!isSelectable || rowId === undefined) {
|
|
45
51
|
return undefined;
|
|
46
52
|
}
|
|
47
53
|
return allChecked || checked.includes(rowId);
|
|
48
54
|
}, [allChecked, checked, isSelectable, rowId]);
|
|
55
|
+
if (isExpanded === false && isExpandableContent) {
|
|
56
|
+
return null;
|
|
57
|
+
}
|
|
58
|
+
var selectableCell = isSelectable && (0, _react2.jsx)(_selectableCell.default, null);
|
|
59
|
+
if (isSelectable && isExpandableContent) {
|
|
60
|
+
selectableCell = (0, _react2.jsx)(Primitives.SelectableCell, {
|
|
61
|
+
as: "td"
|
|
62
|
+
});
|
|
63
|
+
}
|
|
49
64
|
return (0, _react2.jsx)(Primitives.TR, {
|
|
50
65
|
isSelected: isSelected,
|
|
51
|
-
testId: testId
|
|
52
|
-
|
|
66
|
+
testId: testId,
|
|
67
|
+
isSubitem: isExpandableContent
|
|
68
|
+
}, selectableCell, children);
|
|
53
69
|
});
|
|
54
70
|
var _default = Row;
|
|
55
71
|
exports.default = _default;
|
|
@@ -14,6 +14,8 @@ var _tooltip = _interopRequireDefault(require("@atlaskit/tooltip"));
|
|
|
14
14
|
var _useTable2 = require("./hooks/use-table");
|
|
15
15
|
var _ui = require("./ui");
|
|
16
16
|
var _excluded = ["name", "testId", "onClick", "children"];
|
|
17
|
+
/* eslint-disable no-unused-vars */
|
|
18
|
+
/** @jsx jsx */
|
|
17
19
|
/**
|
|
18
20
|
* TODO these need to be i18n supported
|
|
19
21
|
*/
|
package/dist/cjs/thead.js
CHANGED
|
@@ -30,15 +30,10 @@ var THead = function THead(_ref) {
|
|
|
30
30
|
_useSelection2$ = _useSelection2[1],
|
|
31
31
|
setAll = _useSelection2$.setAll,
|
|
32
32
|
removeAll = _useSelection2$.removeAll;
|
|
33
|
-
if (!isSelectable) {
|
|
34
|
-
return (0, _react.jsx)(Primitives.THead, null, (0, _react.jsx)(Primitives.TR, {
|
|
35
|
-
isBodyRow: false
|
|
36
|
-
}, children));
|
|
37
|
-
}
|
|
38
33
|
var isChecked = state.allChecked || state.anyChecked;
|
|
39
34
|
return (0, _react.jsx)(Primitives.THead, null, (0, _react.jsx)(Primitives.TR, {
|
|
40
35
|
isBodyRow: false
|
|
41
|
-
}, (0, _react.jsx)(Primitives.SelectableCell, {
|
|
36
|
+
}, isSelectable && (0, _react.jsx)(Primitives.SelectableCell, {
|
|
42
37
|
as: "th"
|
|
43
38
|
}, (0, _react.jsx)(_checkbox.default, {
|
|
44
39
|
label: (0, _react.jsx)(_visuallyHidden.default, {
|
|
@@ -47,7 +42,7 @@ var THead = function THead(_ref) {
|
|
|
47
42
|
onChange: isChecked ? removeAll : setAll,
|
|
48
43
|
isChecked: isChecked,
|
|
49
44
|
isIndeterminate: state.anyChecked && !state.allChecked
|
|
50
|
-
})), children, isChecked && (0, _react.jsx)(Primitives.BulkActionOverlay, null, (0, _react.jsx)(_dsExplorations.UNSAFE_Text, {
|
|
45
|
+
})), children, isSelectable && isChecked && (0, _react.jsx)(Primitives.BulkActionOverlay, null, (0, _react.jsx)(_dsExplorations.UNSAFE_Text, {
|
|
51
46
|
color: "color.text",
|
|
52
47
|
fontWeight: "medium"
|
|
53
48
|
}, state.checked.length, " selected"), actions && (0, _react.jsx)(_inline.default, {
|
package/dist/cjs/ui/base-cell.js
CHANGED
|
@@ -8,15 +8,13 @@ exports.BaseCell = void 0;
|
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _react2 = require("@emotion/react");
|
|
10
10
|
var _box = _interopRequireDefault(require("@atlaskit/ds-explorations/box"));
|
|
11
|
-
var _inline = _interopRequireDefault(require("@atlaskit/primitives/inline"));
|
|
12
11
|
/* eslint-disable @atlassian/tangerine/import/entry-points */
|
|
13
12
|
/** @jsx jsx */
|
|
14
13
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
};
|
|
14
|
+
/**
|
|
15
|
+
* https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-sort
|
|
16
|
+
*/
|
|
17
|
+
|
|
20
18
|
var baseResetStyles = (0, _react2.css)({
|
|
21
19
|
display: 'table-cell',
|
|
22
20
|
verticalAlign: 'middle',
|
|
@@ -27,6 +25,20 @@ var baseResetStyles = (0, _react2.css)({
|
|
|
27
25
|
paddingRight: "var(--ds-space-100, 8px)"
|
|
28
26
|
}
|
|
29
27
|
});
|
|
28
|
+
var alignLeftStyles = (0, _react2.css)({
|
|
29
|
+
textAlign: 'left'
|
|
30
|
+
});
|
|
31
|
+
var alignCenterStyles = (0, _react2.css)({
|
|
32
|
+
textAlign: 'center'
|
|
33
|
+
});
|
|
34
|
+
var alignRightStyles = (0, _react2.css)({
|
|
35
|
+
textAlign: 'right'
|
|
36
|
+
});
|
|
37
|
+
var alignMap = {
|
|
38
|
+
text: alignLeftStyles,
|
|
39
|
+
number: alignRightStyles,
|
|
40
|
+
icon: alignCenterStyles
|
|
41
|
+
};
|
|
30
42
|
|
|
31
43
|
/**
|
|
32
44
|
* __BaseCell__
|
|
@@ -44,14 +56,15 @@ var BaseCell = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
44
56
|
_ref$paddingBlock = _ref.paddingBlock,
|
|
45
57
|
paddingBlock = _ref$paddingBlock === void 0 ? 'space.100' : _ref$paddingBlock,
|
|
46
58
|
_ref$paddingInline = _ref.paddingInline,
|
|
47
|
-
paddingInline = _ref$paddingInline === void 0 ? 'space.
|
|
59
|
+
paddingInline = _ref$paddingInline === void 0 ? 'space.100' : _ref$paddingInline,
|
|
48
60
|
backgroundColor = _ref.backgroundColor,
|
|
49
61
|
scope = _ref.scope,
|
|
50
62
|
width = _ref.width,
|
|
51
63
|
className = _ref.className,
|
|
52
|
-
sortDirection = _ref.sortDirection
|
|
64
|
+
sortDirection = _ref.sortDirection,
|
|
65
|
+
colSpan = _ref.colSpan;
|
|
53
66
|
return (0, _react2.jsx)(_box.default, {
|
|
54
|
-
css: baseResetStyles,
|
|
67
|
+
css: [baseResetStyles, alignMap[align]],
|
|
55
68
|
ref: ref,
|
|
56
69
|
scope: scope,
|
|
57
70
|
backgroundColor: backgroundColor,
|
|
@@ -63,10 +76,8 @@ var BaseCell = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
63
76
|
UNSAFE_style: width ? {
|
|
64
77
|
width: width
|
|
65
78
|
} : undefined,
|
|
66
|
-
"aria-sort": sortDirection
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
space: "0"
|
|
70
|
-
}, children));
|
|
79
|
+
"aria-sort": sortDirection,
|
|
80
|
+
colSpan: colSpan
|
|
81
|
+
}, children);
|
|
71
82
|
});
|
|
72
83
|
exports.BaseCell = BaseCell;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.ExpandIcon = void 0;
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
var _react2 = require("@emotion/react");
|
|
10
|
+
var _chevronDown = _interopRequireDefault(require("@atlaskit/icon/glyph/hipchat/chevron-down"));
|
|
11
|
+
var _chevronUp = _interopRequireDefault(require("@atlaskit/icon/glyph/hipchat/chevron-up"));
|
|
12
|
+
/* eslint-disable no-unused-vars */
|
|
13
|
+
/** @jsx jsx */
|
|
14
|
+
|
|
15
|
+
// TODO: Using HipChat icons as the standard icon set is missing large
|
|
16
|
+
// versions of `chevron-up` and `chevron-down`, despite already including
|
|
17
|
+
// `chevron-left-large` and `chevron-right-large`...
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* __Expand icon__
|
|
21
|
+
*
|
|
22
|
+
* An icon used to display the expanded state in an `<ExpandableCell>`.
|
|
23
|
+
*/
|
|
24
|
+
var ExpandIcon = /*#__PURE__*/(0, _react.memo)(function (_ref) {
|
|
25
|
+
var isExpanded = _ref.isExpanded;
|
|
26
|
+
switch (isExpanded) {
|
|
27
|
+
case true:
|
|
28
|
+
return (0, _react2.jsx)(_chevronUp.default, {
|
|
29
|
+
size: "small",
|
|
30
|
+
label: "",
|
|
31
|
+
primaryColor: "inherit"
|
|
32
|
+
});
|
|
33
|
+
case false:
|
|
34
|
+
return (0, _react2.jsx)(_chevronDown.default, {
|
|
35
|
+
size: "small",
|
|
36
|
+
label: "",
|
|
37
|
+
primaryColor: "inherit"
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
exports.ExpandIcon = ExpandIcon;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ExpandableCell = void 0;
|
|
7
|
+
var _react = require("@emotion/react");
|
|
8
|
+
var _baseCell = require("./base-cell");
|
|
9
|
+
/** @jsx jsx */
|
|
10
|
+
|
|
11
|
+
var spacingStyles = (0, _react.css)({
|
|
12
|
+
width: 24,
|
|
13
|
+
padding: "var(--ds-space-0, 0px)"
|
|
14
|
+
});
|
|
15
|
+
/**
|
|
16
|
+
* __Expandable cell__
|
|
17
|
+
*
|
|
18
|
+
* An expandable cell primitive designed to be used for light weight composition.
|
|
19
|
+
*/
|
|
20
|
+
var ExpandableCell = function ExpandableCell(_ref) {
|
|
21
|
+
var children = _ref.children,
|
|
22
|
+
as = _ref.as;
|
|
23
|
+
return (0, _react.jsx)(_baseCell.BaseCell, {
|
|
24
|
+
as: as,
|
|
25
|
+
css: spacingStyles
|
|
26
|
+
}, children);
|
|
27
|
+
};
|
|
28
|
+
exports.ExpandableCell = ExpandableCell;
|
package/dist/cjs/ui/index.js
CHANGED
|
@@ -9,6 +9,18 @@ Object.defineProperty(exports, "BulkActionOverlay", {
|
|
|
9
9
|
return _bulkActionOverlay.BulkActionOverlay;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
+
Object.defineProperty(exports, "ExpandIcon", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function get() {
|
|
15
|
+
return _expandIcon.ExpandIcon;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "ExpandableCell", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function get() {
|
|
21
|
+
return _expandableCell.ExpandableCell;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
12
24
|
Object.defineProperty(exports, "SelectableCell", {
|
|
13
25
|
enumerable: true,
|
|
14
26
|
get: function get() {
|
|
@@ -63,6 +75,8 @@ var _tr = require("./tr");
|
|
|
63
75
|
var _td = require("./td");
|
|
64
76
|
var _th = require("./th");
|
|
65
77
|
var _selectableCell = require("./selectable-cell");
|
|
78
|
+
var _expandableCell = require("./expandable-cell");
|
|
79
|
+
var _expandIcon = require("./expand-icon");
|
|
66
80
|
var _thead = require("./thead");
|
|
67
81
|
var _bulkActionOverlay = require("./bulk-action-overlay");
|
|
68
82
|
var _sortIcon = require("./sort-icon");
|
|
@@ -10,13 +10,7 @@ var _baseCell = require("./base-cell");
|
|
|
10
10
|
|
|
11
11
|
var spacingStyles = (0, _react.css)({
|
|
12
12
|
width: 32,
|
|
13
|
-
padding: "var(--ds-space-0, 0px)"
|
|
14
|
-
paddingLeft: "var(--ds-space-100, 8px)",
|
|
15
|
-
// eslint-disable-next-line @repo/internal/styles/no-nested-styles
|
|
16
|
-
'& + *': {
|
|
17
|
-
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage-spacing
|
|
18
|
-
paddingLeft: '8px !important'
|
|
19
|
-
}
|
|
13
|
+
padding: "var(--ds-space-0, 0px)"
|
|
20
14
|
});
|
|
21
15
|
/**
|
|
22
16
|
* __Selectable cell__
|
|
@@ -25,8 +19,7 @@ var spacingStyles = (0, _react.css)({
|
|
|
25
19
|
*/
|
|
26
20
|
var SelectableCell = function SelectableCell(_ref) {
|
|
27
21
|
var children = _ref.children,
|
|
28
|
-
|
|
29
|
-
as = _ref$as === void 0 ? 'td' : _ref$as;
|
|
22
|
+
as = _ref.as;
|
|
30
23
|
return (0, _react.jsx)(_baseCell.BaseCell, {
|
|
31
24
|
as: as,
|
|
32
25
|
css: spacingStyles
|
package/dist/cjs/ui/td.js
CHANGED
package/dist/cjs/ui/th.js
CHANGED
|
@@ -22,18 +22,14 @@ var TH = function TH(_ref) {
|
|
|
22
22
|
backgroundColor = _ref.backgroundColor,
|
|
23
23
|
width = _ref.width,
|
|
24
24
|
sortDirection = _ref.sortDirection;
|
|
25
|
-
return (
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
backgroundColor: backgroundColor,
|
|
35
|
-
sortDirection: sortDirection
|
|
36
|
-
}, children)
|
|
37
|
-
);
|
|
25
|
+
return /*#__PURE__*/_react.default.createElement(_baseCell.BaseCell, {
|
|
26
|
+
as: "th",
|
|
27
|
+
testId: testId,
|
|
28
|
+
align: align,
|
|
29
|
+
scope: scope,
|
|
30
|
+
width: width,
|
|
31
|
+
backgroundColor: backgroundColor,
|
|
32
|
+
sortDirection: sortDirection
|
|
33
|
+
}, children);
|
|
38
34
|
};
|
|
39
35
|
exports.TH = TH;
|
package/dist/cjs/ui/tr.js
CHANGED
|
@@ -23,6 +23,9 @@ var selectedStyles = (0, _react.css)({
|
|
|
23
23
|
}
|
|
24
24
|
});
|
|
25
25
|
|
|
26
|
+
var subitemStyles = (0, _react.css)({
|
|
27
|
+
backgroundColor: "var(--ds-background-neutral, #091E420F)"
|
|
28
|
+
});
|
|
26
29
|
var bodyRowStyles = (0, _react.css)({
|
|
27
30
|
borderBottom: "1px solid ".concat("var(--ds-border, #eee)"),
|
|
28
31
|
'&:hover': {
|
|
@@ -44,14 +47,15 @@ var TR = function TR(_ref) {
|
|
|
44
47
|
testId = _ref.testId,
|
|
45
48
|
isSelected = _ref.isSelected,
|
|
46
49
|
_ref$isBodyRow = _ref.isBodyRow,
|
|
47
|
-
isBodyRow = _ref$isBodyRow === void 0 ? true : _ref$isBodyRow
|
|
50
|
+
isBodyRow = _ref$isBodyRow === void 0 ? true : _ref$isBodyRow,
|
|
51
|
+
isSubitem = _ref.isSubitem;
|
|
48
52
|
return (0, _react.jsx)(_focusRing.default, {
|
|
49
53
|
isInset: true
|
|
50
54
|
}, (0, _react.jsx)("tr", {
|
|
51
55
|
tabIndex: -1,
|
|
52
56
|
"aria-selected": isSelected,
|
|
53
57
|
"data-testid": testId,
|
|
54
|
-
css: [baseStyles, isBodyRow && bodyRowStyles, isSelected && selectedStyles]
|
|
58
|
+
css: [baseStyles, isBodyRow && bodyRowStyles, isSelected && selectedStyles, isSubitem && subitemStyles]
|
|
55
59
|
}, children));
|
|
56
60
|
};
|
|
57
61
|
exports.TR = TR;
|
package/dist/cjs/version.json
CHANGED