@aloudata/aloudata-design 0.2.0-beta.8 → 0.2.0-beta.9

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.
@@ -1,4 +1,4 @@
1
1
  import { ReactElement } from 'react';
2
2
  import { ITableProps } from './interface';
3
- declare function Table<T extends Record<string, unknown>>({ columns, data, total, renderHeaderLeft, renderHeaderRight, scrollY, onRowSelected, loadMore, hasNextPage, loading, sortable, defaultSort, resizeColumn, sortDirections: allSortDirections, onChange, }: ITableProps<T>): ReactElement;
3
+ declare function Table<T extends Record<string, unknown>>({ columns, data, total, renderHeaderLeft, renderHeaderRight, scrollY, onRowSelected, loadMore, hasNextPage, loading, sortable, defaultSort, resizeColumn, sortDirections: allSortDirections, showHeader, onChange, }: ITableProps<T>): ReactElement;
4
4
  export default Table;
package/es/Table/index.js CHANGED
@@ -5,6 +5,12 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
5
5
 
6
6
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
7
7
 
8
+ 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; }
9
+
10
+ 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) { _defineProperty(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; }
11
+
12
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
+
8
14
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9
15
 
10
16
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -17,12 +23,6 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
17
23
 
18
24
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
19
25
 
20
- 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; }
21
-
22
- 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) { _defineProperty(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
-
24
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
25
-
26
26
  /// <reference types ='./react-table-config' />
27
27
  import React, { useCallback, useMemo } from 'react';
28
28
  import { useTable, useBlockLayout, useRowSelect, useSortBy, useResizeColumns } from 'react-table';
@@ -55,8 +55,16 @@ function Table(_ref) {
55
55
  _ref$resizeColumn = _ref.resizeColumn,
56
56
  resizeColumn = _ref$resizeColumn === void 0 ? false : _ref$resizeColumn,
57
57
  allSortDirections = _ref.sortDirections,
58
+ _ref$showHeader = _ref.showHeader,
59
+ showHeader = _ref$showHeader === void 0 ? true : _ref$showHeader,
58
60
  _ref$onChange = _ref.onChange,
59
61
  onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange;
62
+
63
+ var _React$useState = React.useState(null),
64
+ _React$useState2 = _slicedToArray(_React$useState, 2),
65
+ selectedRowId = _React$useState2[0],
66
+ setSelectedRowId = _React$useState2[1];
67
+
60
68
  var newColumns = useMemo(function () {
61
69
  return columns.map(function (column) {
62
70
  return _objectSpread(_objectSpread({}, column), {}, {
@@ -72,13 +80,28 @@ function Table(_ref) {
72
80
  });
73
81
  }, [columns, sortable]);
74
82
 
75
- var _React$useState = React.useState({
76
- id: (defaultSort === null || defaultSort === void 0 ? void 0 : defaultSort.id) || sortable ? newColumns[ARRAY_FIRST_INDEX].dataIndex : '',
77
- desc: (defaultSort === null || defaultSort === void 0 ? void 0 : defaultSort.desc) || false
78
- }),
79
- _React$useState2 = _slicedToArray(_React$useState, 2),
80
- sortDirection = _React$useState2[0],
81
- setSortDirection = _React$useState2[1];
83
+ var getInitialSortDirection = function getInitialSortDirection() {
84
+ if (defaultSort && defaultSort.id) {
85
+ return defaultSort;
86
+ }
87
+
88
+ if (sortable) {
89
+ return {
90
+ id: newColumns[ARRAY_FIRST_INDEX].accessor,
91
+ desc: false
92
+ };
93
+ }
94
+
95
+ return {
96
+ id: '',
97
+ desc: false
98
+ };
99
+ };
100
+
101
+ var _React$useState3 = React.useState(getInitialSortDirection()),
102
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
103
+ sortDirection = _React$useState4[0],
104
+ setSortDirection = _React$useState4[1];
82
105
 
83
106
  var _useTable = useTable({
84
107
  columns: newColumns,
@@ -86,10 +109,7 @@ function Table(_ref) {
86
109
  disableMultiSort: true,
87
110
  disableSortBy: !sortable,
88
111
  initialState: {
89
- sortBy: [{
90
- id: sortDirection.id,
91
- desc: sortDirection.desc
92
- }]
112
+ sortBy: sortDirection.id ? [sortDirection] : []
93
113
  }
94
114
  }, useBlockLayout, useSortBy, useRowSelect, useResizeColumns),
95
115
  getTableProps = _useTable.getTableProps,
@@ -99,11 +119,6 @@ function Table(_ref) {
99
119
  prepareRow = _useTable.prepareRow,
100
120
  setSortBy = _useTable.setSortBy;
101
121
 
102
- var _React$useState3 = React.useState(null),
103
- _React$useState4 = _slicedToArray(_React$useState3, 2),
104
- selectedRowId = _React$useState4[0],
105
- setSelectedRowId = _React$useState4[1];
106
-
107
122
  var theadRowWidthRef = React.useRef(DEFAULT_ROW_WIDTH);
108
123
  var prefixCls = usePrefixCls('block-table');
109
124
 
@@ -225,7 +240,7 @@ function Table(_ref) {
225
240
  id: typeof desc === 'undefined' ? '' : id,
226
241
  desc: desc
227
242
  };
228
- setSortBy([sortBy]);
243
+ setSortBy(typeof desc === 'undefined' ? [] : [sortBy]);
229
244
  setSortDirection(sortBy);
230
245
  onChange(sortBy);
231
246
  }
@@ -280,7 +295,7 @@ function Table(_ref) {
280
295
 
281
296
  return /*#__PURE__*/React.createElement("div", {
282
297
  className: prefixCls
283
- }, renderHeader(data.length), /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({}, getTableProps()), {}, {
298
+ }, showHeader && renderHeader(data.length), /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({}, getTableProps()), {}, {
284
299
  className: classnames(_defineProperty({}, "".concat(prefixCls, "-column-resizable"), resizeColumn))
285
300
  }), /*#__PURE__*/React.createElement("div", {
286
301
  className: "".concat(prefixCls, "-thead")
@@ -8,12 +8,13 @@ export interface ISort<T> {
8
8
  export interface IColumn<T extends object> {
9
9
  title: string;
10
10
  dataIndex: string;
11
- render?: (value: unknown, row: Record<string, T>, index: number) => React.ReactNode;
11
+ render?: (value: any, row: Record<string, T>, index: number) => React.ReactNode;
12
12
  width?: number;
13
13
  minWidth?: number;
14
14
  sorter?: boolean | 'string' | 'number' | 'basic' | 'datetime' | 'alphanumeric' | ((rowA: Row<T>, rowB: Row<T>, columnId: IdType<T>, desc?: boolean) => number);
15
15
  sortOrder?: TSortOrder;
16
16
  sortDirections?: Array<'ascend' | 'descend'>;
17
+ selected?: boolean;
17
18
  }
18
19
  export interface ITableProps<T extends object> {
19
20
  columns: IColumn<T>[];
@@ -31,4 +32,5 @@ export interface ITableProps<T extends object> {
31
32
  defaultSort?: ISort<T>;
32
33
  sortDirections?: Array<'ascend' | 'descend'>;
33
34
  resizeColumn?: boolean;
35
+ showHeader?: boolean;
34
36
  }
@@ -6,6 +6,7 @@
6
6
 
7
7
  .ant-block-table {
8
8
  overflow: hidden;
9
+ user-select: none;
9
10
 
10
11
  &-cell {
11
12
  padding: 0 12px;
@@ -106,6 +107,7 @@
106
107
 
107
108
  &-right {
108
109
  display: flex;
110
+ justify-content: flex-end;
109
111
  height: 28px;
110
112
  align-items: center;
111
113
  font-size: 14px;
@@ -1,4 +1,4 @@
1
1
  import { ReactElement } from 'react';
2
2
  import { ITableProps } from './interface';
3
- declare function Table<T extends Record<string, unknown>>({ columns, data, total, renderHeaderLeft, renderHeaderRight, scrollY, onRowSelected, loadMore, hasNextPage, loading, sortable, defaultSort, resizeColumn, sortDirections: allSortDirections, onChange, }: ITableProps<T>): ReactElement;
3
+ declare function Table<T extends Record<string, unknown>>({ columns, data, total, renderHeaderLeft, renderHeaderRight, scrollY, onRowSelected, loadMore, hasNextPage, loading, sortable, defaultSort, resizeColumn, sortDirections: allSortDirections, showHeader, onChange, }: ITableProps<T>): ReactElement;
4
4
  export default Table;
@@ -38,6 +38,12 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
38
38
 
39
39
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
40
40
 
41
+ 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; }
42
+
43
+ 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) { _defineProperty(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; }
44
+
45
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
46
+
41
47
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
42
48
 
43
49
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -50,12 +56,6 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
50
56
 
51
57
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
52
58
 
53
- 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; }
54
-
55
- 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) { _defineProperty(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; }
56
-
57
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
58
-
59
59
  var DEFAULT_ROW_HEIGHT = 40;
60
60
  var ARRAY_FIRST_INDEX = 0;
61
61
  var DEFAULT_ROW_WIDTH = 0;
@@ -78,8 +78,16 @@ function Table(_ref) {
78
78
  _ref$resizeColumn = _ref.resizeColumn,
79
79
  resizeColumn = _ref$resizeColumn === void 0 ? false : _ref$resizeColumn,
80
80
  allSortDirections = _ref.sortDirections,
81
+ _ref$showHeader = _ref.showHeader,
82
+ showHeader = _ref$showHeader === void 0 ? true : _ref$showHeader,
81
83
  _ref$onChange = _ref.onChange,
82
84
  onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange;
85
+
86
+ var _React$useState = _react.default.useState(null),
87
+ _React$useState2 = _slicedToArray(_React$useState, 2),
88
+ selectedRowId = _React$useState2[0],
89
+ setSelectedRowId = _React$useState2[1];
90
+
83
91
  var newColumns = (0, _react.useMemo)(function () {
84
92
  return columns.map(function (column) {
85
93
  return _objectSpread(_objectSpread({}, column), {}, {
@@ -95,13 +103,28 @@ function Table(_ref) {
95
103
  });
96
104
  }, [columns, sortable]);
97
105
 
98
- var _React$useState = _react.default.useState({
99
- id: (defaultSort === null || defaultSort === void 0 ? void 0 : defaultSort.id) || sortable ? newColumns[ARRAY_FIRST_INDEX].dataIndex : '',
100
- desc: (defaultSort === null || defaultSort === void 0 ? void 0 : defaultSort.desc) || false
101
- }),
102
- _React$useState2 = _slicedToArray(_React$useState, 2),
103
- sortDirection = _React$useState2[0],
104
- setSortDirection = _React$useState2[1];
106
+ var getInitialSortDirection = function getInitialSortDirection() {
107
+ if (defaultSort && defaultSort.id) {
108
+ return defaultSort;
109
+ }
110
+
111
+ if (sortable) {
112
+ return {
113
+ id: newColumns[ARRAY_FIRST_INDEX].accessor,
114
+ desc: false
115
+ };
116
+ }
117
+
118
+ return {
119
+ id: '',
120
+ desc: false
121
+ };
122
+ };
123
+
124
+ var _React$useState3 = _react.default.useState(getInitialSortDirection()),
125
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
126
+ sortDirection = _React$useState4[0],
127
+ setSortDirection = _React$useState4[1];
105
128
 
106
129
  var _useTable = (0, _reactTable.useTable)({
107
130
  columns: newColumns,
@@ -109,10 +132,7 @@ function Table(_ref) {
109
132
  disableMultiSort: true,
110
133
  disableSortBy: !sortable,
111
134
  initialState: {
112
- sortBy: [{
113
- id: sortDirection.id,
114
- desc: sortDirection.desc
115
- }]
135
+ sortBy: sortDirection.id ? [sortDirection] : []
116
136
  }
117
137
  }, _reactTable.useBlockLayout, _reactTable.useSortBy, _reactTable.useRowSelect, _reactTable.useResizeColumns),
118
138
  getTableProps = _useTable.getTableProps,
@@ -122,11 +142,6 @@ function Table(_ref) {
122
142
  prepareRow = _useTable.prepareRow,
123
143
  setSortBy = _useTable.setSortBy;
124
144
 
125
- var _React$useState3 = _react.default.useState(null),
126
- _React$useState4 = _slicedToArray(_React$useState3, 2),
127
- selectedRowId = _React$useState4[0],
128
- setSelectedRowId = _React$useState4[1];
129
-
130
145
  var theadRowWidthRef = _react.default.useRef(DEFAULT_ROW_WIDTH);
131
146
 
132
147
  var prefixCls = (0, _usePrefixCls.default)('block-table');
@@ -249,7 +264,7 @@ function Table(_ref) {
249
264
  id: typeof desc === 'undefined' ? '' : id,
250
265
  desc: desc
251
266
  };
252
- setSortBy([sortBy]);
267
+ setSortBy(typeof desc === 'undefined' ? [] : [sortBy]);
253
268
  setSortDirection(sortBy);
254
269
  onChange(sortBy);
255
270
  }
@@ -304,7 +319,7 @@ function Table(_ref) {
304
319
 
305
320
  return /*#__PURE__*/_react.default.createElement("div", {
306
321
  className: prefixCls
307
- }, renderHeader(data.length), /*#__PURE__*/_react.default.createElement("div", _objectSpread(_objectSpread({}, getTableProps()), {}, {
322
+ }, showHeader && renderHeader(data.length), /*#__PURE__*/_react.default.createElement("div", _objectSpread(_objectSpread({}, getTableProps()), {}, {
308
323
  className: (0, _classnames6.default)(_defineProperty({}, "".concat(prefixCls, "-column-resizable"), resizeColumn))
309
324
  }), /*#__PURE__*/_react.default.createElement("div", {
310
325
  className: "".concat(prefixCls, "-thead")
@@ -8,12 +8,13 @@ export interface ISort<T> {
8
8
  export interface IColumn<T extends object> {
9
9
  title: string;
10
10
  dataIndex: string;
11
- render?: (value: unknown, row: Record<string, T>, index: number) => React.ReactNode;
11
+ render?: (value: any, row: Record<string, T>, index: number) => React.ReactNode;
12
12
  width?: number;
13
13
  minWidth?: number;
14
14
  sorter?: boolean | 'string' | 'number' | 'basic' | 'datetime' | 'alphanumeric' | ((rowA: Row<T>, rowB: Row<T>, columnId: IdType<T>, desc?: boolean) => number);
15
15
  sortOrder?: TSortOrder;
16
16
  sortDirections?: Array<'ascend' | 'descend'>;
17
+ selected?: boolean;
17
18
  }
18
19
  export interface ITableProps<T extends object> {
19
20
  columns: IColumn<T>[];
@@ -31,4 +32,5 @@ export interface ITableProps<T extends object> {
31
32
  defaultSort?: ISort<T>;
32
33
  sortDirections?: Array<'ascend' | 'descend'>;
33
34
  resizeColumn?: boolean;
35
+ showHeader?: boolean;
34
36
  }
@@ -6,6 +6,7 @@
6
6
 
7
7
  .ant-block-table {
8
8
  overflow: hidden;
9
+ user-select: none;
9
10
 
10
11
  &-cell {
11
12
  padding: 0 12px;
@@ -106,6 +107,7 @@
106
107
 
107
108
  &-right {
108
109
  display: flex;
110
+ justify-content: flex-end;
109
111
  height: 28px;
110
112
  align-items: center;
111
113
  font-size: 14px;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aloudata/aloudata-design",
3
- "version": "0.2.0-beta.8",
3
+ "version": "0.2.0-beta.9",
4
4
  "scripts": {
5
5
  "start": "dumi dev",
6
6
  "docs:build": "dumi build",