es-grid-template 1.9.17 → 1.9.18
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/es/ali-table/Grid.js +5 -2
- package/es/ali-table/base-table/styles.js +1 -1
- package/es/ali-table/base-table/styles.scss +38 -0
- package/es/ali-table/base-table/table.js +8 -2
- package/es/ali-table/utils/selected.js +1 -0
- package/lib/ali-table/Grid.js +5 -2
- package/lib/ali-table/base-table/styles.js +1 -1
- package/lib/ali-table/base-table/styles.scss +38 -0
- package/lib/ali-table/base-table/table.js +5 -1
- package/lib/ali-table/utils/selected.js +1 -0
- package/package.json +1 -1
package/es/ali-table/Grid.js
CHANGED
|
@@ -152,6 +152,9 @@ const Grid = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
152
152
|
...cssVariables
|
|
153
153
|
}
|
|
154
154
|
};
|
|
155
|
+
const topToolbaritems = React.useMemo(() => {
|
|
156
|
+
return (toolbarItems ?? []).filter(it => it.position !== 'Bottom');
|
|
157
|
+
}, [toolbarItems]);
|
|
155
158
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(StyleTableContainer, {
|
|
156
159
|
className: classNames(`${prefix}-grid`, {
|
|
157
160
|
[tableClassNames]: !!tableClassNames,
|
|
@@ -172,13 +175,13 @@ const Grid = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
172
175
|
justifyContent: 'space-between',
|
|
173
176
|
alignItems: 'center'
|
|
174
177
|
}
|
|
175
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
178
|
+
}, topToolbaritems.length > 0 && /*#__PURE__*/React.createElement("div", {
|
|
176
179
|
style: {
|
|
177
180
|
flex: 1,
|
|
178
181
|
overflow: 'hidden'
|
|
179
182
|
}
|
|
180
183
|
}, /*#__PURE__*/React.createElement(Toolbar, {
|
|
181
|
-
items:
|
|
184
|
+
items: topToolbaritems,
|
|
182
185
|
mode: toolbarMode
|
|
183
186
|
})), /*#__PURE__*/React.createElement("div", {
|
|
184
187
|
style: {
|
|
@@ -49,7 +49,7 @@ const outerBorderStyleMixin = css(["border-top:var(--cell-border-horizontal);bor
|
|
|
49
49
|
export const StyledArtTableWrapper = styled.div.withConfig({
|
|
50
50
|
displayName: "StyledArtTableWrapper",
|
|
51
51
|
componentId: "es-grid-template__sc-ipj1ht-0"
|
|
52
|
-
})(["--row-height:38px;--color:#333;--bgcolor:white;--hover-bgcolor:var(--hover-bgcolor,#f5f5f5);--hover-color:var(--hover-color,#333);--highlight-bgcolor:#eee;--header-row-height:36px;--header-color:#000000de;--header-bgcolor:#ffffff;--header-hover-bgcolor:#ddd;--header-highlight-bgcolor:#e4e8ed;--cell-padding:7px 8px;--font-size:13px;--line-height:1.28571;--lock-shadow:rgba(152,152,152,0.5) 0 0 6px 2px;--border-color:#dfe3e8;--cell-border:1px solid var(--border-color);--cell-border-horizontal:var(--cell-border);--cell-border-vertical:var(--cell-border);--header-cell-border:1px solid var(--border-color);--header-cell-border-horizontal:var(--header-cell-border);--header-cell-border-vertical:var(--header-cell-border);--footer-bgColor:#fafafa;box-sizing:border-box;*{box-sizing:border-box;}cursor:default;color:var(--color);font-size:var(--font-size);line-height:var(--line-height);position:relative;overflow-anchor:none
|
|
52
|
+
})(["--row-height:38px;--color:#333;--bgcolor:white;--hover-bgcolor:var(--hover-bgcolor,#f5f5f5);--hover-color:var(--hover-color,#333);--highlight-bgcolor:#eee;--header-row-height:36px;--header-color:#000000de;--header-bgcolor:#ffffff;--header-hover-bgcolor:#ddd;--header-highlight-bgcolor:#e4e8ed;--cell-padding:7px 8px;--font-size:13px;--line-height:1.28571;--lock-shadow:rgba(152,152,152,0.5) 0 0 6px 2px;--border-color:#dfe3e8;--cell-border:1px solid var(--border-color);--cell-border-horizontal:var(--cell-border);--cell-border-vertical:var(--cell-border);--header-cell-border:1px solid var(--border-color);--header-cell-border-horizontal:var(--header-cell-border);--header-cell-border-vertical:var(--header-cell-border);--footer-bgColor:#fafafa;box-sizing:border-box;*{box-sizing:border-box;}cursor:default;color:var(--color);font-size:var(--font-size);line-height:var(--line-height);position:relative;overflow-anchor:none;&::-webkit-scrollbar{width:8px;height:8px;}&::-webkit-scrollbar-track{background:var(--bgcolor);}&::-webkit-scrollbar-thumb{background:rgba(0,0,0,0.4);border-radius:8px;}&::-webkit-scrollbar-thumb:hover{background:#555;}&.dark{&::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.3);}&::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.5);}}&.use-outer-border{", ";}.no-scrollbar{scrollbar-width:none;::-webkit-scrollbar{display:none;}}.", "{overflow-x:auto;overflow-y:hidden;background:var(--header-bgcolor);.ui-rc-table-column-title{flex:1;min-width:0;text-align:start;}.", "{font-weight:500;.ui-rc-header-trigger{padding-left:6px;display:flex;align-items:center;.ui-rc-table-column-sorter-cancel{opacity:0;}}&:hover{.ui-rc-header-trigger{.ui-rc-table-column-sorter-cancel{opacity:1;}}}.", "{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}.", "{width:100%;white-space:normal;word-break:break-word;}.", "{text-align:center;}.", "{text-align:right;}}}.", "{.", "{&.", "{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;.expansion-cell{.expansion-content{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}}}&.", "{width:100%;white-space:normal;word-break:break-word;}&.", "{text-align:center;}&.", "{text-align:right;}}.", "{background:var(--footer-bgcolor);}}.", ",.", "{overflow-x:auto;overflow-y:hidden;}&.sticky-header .", "{position:sticky;top:0;z-index:", ";}&.sticky-footer .", "{position:sticky;bottom:0;z-index:", ";}.", "{tr{td{&.lock-left,&.lock-right{border-bottom-width:0;box-shadow:0 -1px 0 0 var(--border-color),0 0px 0 0 var(--border-color),-1px 0 0 0 var(--border-color);}}}}table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;display:table;margin:0;padding:0;}tr:not(.no-hover):hover > td{background:var(--hover-bgcolor);color:var(--hover-color);}tr:not(.no-highlight).highlight > td{}th{font-weight:normal;text-align:left;padding:var(--cell-padding);height:var(--header-row-height);color:var(--header-color);background:var(--header-bgcolor);border:none;border-right:var(--header-cell-border-vertical);border-bottom:var(--header-cell-border-horizontal);}tr.first th{border-top:var(--header-cell-border-horizontal);}th.first{border-left:var(--header-cell-border-vertical);}td{padding:var(--cell-padding);background:var(--bgcolor);height:var(--row-height);border:none;border-right:var(--cell-border-vertical);border-bottom:var(--cell-border-horizontal);}td.first{border-left:var(--cell-border-vertical);}tr.first td{border-top:var(--cell-border-horizontal);}&.has-header tbody tr.first td{border-top:none;}&.has-footer tbody tr.last td{border-bottom:none;}&.has-footer tfoot tr > td{background:var(--footer-bgcolor);color:var(--footer-color);}&.has-footer tfoot tr:not(.no-hover):hover > td{background:var(--footer-bgcolor);}.lock-left,.lock-right{z-index:", ";}.resize-handle{width:6px;height:100%;position:absolute;top:0;right:0;cursor:col-resize;background-color:transparent;border-right:2px solid transparent;}.", "{position:absolute;top:0;bottom:0;z-index:", ";pointer-events:none;overflow:hidden;.", "{height:100%;}.", "{margin-right:", "px;box-shadow:none;&.show-shadow{box-shadow:var(--lock-shadow);border-right:var(--cell-border-vertical);}}.", "{margin-left:", "px;box-shadow:none;&.show-shadow{box-shadow:var(--lock-shadow);border-left:var(--cell-border-vertical);}}}.", "{pointer-events:none;color:#99a3b3;font-size:12px;text-align:center;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);.empty-image{width:50px;height:50px;}.empty-tips{margin-top:16px;line-height:1.5;}}.", "{overflow:auto;position:sticky;bottom:0;z-index:", ";margin-top:-17px;}.ui-rc-grid-loading-wrapper{}.ui-rc-grid-table{}.art-loading-content-wrapper{}.", "{height:1px;visibility:hidden;}.", "{position:relative;.", "{position:absolute;inset:0;pointer-events:none;}.", "{position:sticky;z-index:", ";transform:translateY(-50%);}}"], outerBorderStyleMixin, Classes.tableHeader, Classes.tableHeaderCell, Classes.cellEllipsis, Classes.cellWrap, Classes.cellTextCenter, Classes.cellTextRight, Classes.tableBody, Classes.tableCell, Classes.cellEllipsis, Classes.cellWrap, Classes.cellTextCenter, Classes.cellTextRight, Classes.tableFooter, Classes.tableBody, Classes.tableFooter, Classes.tableHeader, Z.header, Classes.tableFooter, Z.footer, Classes.tableBody, Z.lock, Classes.lockShadowMask, Z.lockShadow, Classes.lockShadow, Classes.leftLockShadow, LOCK_SHADOW_PADDING, Classes.rightLockShadow, LOCK_SHADOW_PADDING, Classes.emptyWrapper, Classes.stickyScroll, Z.scrollItem, Classes.stickyScrollItem, Classes.loadingWrapper, Classes.loadingIndicatorWrapper, Classes.loadingIndicator, Z.loadingIndicator);
|
|
53
53
|
|
|
54
54
|
// type StyleTableContainerProps = {
|
|
55
55
|
|
|
@@ -17,3 +17,41 @@ $prefix: 'ui-rc' !default;
|
|
|
17
17
|
box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05);
|
|
18
18
|
overflow: hidden;
|
|
19
19
|
}
|
|
20
|
+
|
|
21
|
+
.ui-rc-grid-horizontal-scroll-container {
|
|
22
|
+
&::-webkit-scrollbar {
|
|
23
|
+
width: 8px;
|
|
24
|
+
height: 8px;
|
|
25
|
+
|
|
26
|
+
}
|
|
27
|
+
&::-webkit-scrollbar-track {
|
|
28
|
+
background: var(--bgcolor);
|
|
29
|
+
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
&::-webkit-scrollbar-thumb {
|
|
33
|
+
background: rgba(0, 0, 0, 0.4);
|
|
34
|
+
border-radius: 8px;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
&::-webkit-scrollbar-thumb:hover {
|
|
38
|
+
background: #555;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
}
|
|
42
|
+
.ui-rc-grid-table-wrapper.dark {
|
|
43
|
+
|
|
44
|
+
.ui-rc-grid-horizontal-scroll-container {
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
&::-webkit-scrollbar-thumb {
|
|
48
|
+
background: rgba(255, 255, 255, 0.3);
|
|
49
|
+
}
|
|
50
|
+
&::-webkit-scrollbar-thumb:hover {
|
|
51
|
+
background: rgba(255, 255, 255, 0.5);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
}
|
|
@@ -11,7 +11,9 @@ import { TableDOMHelper } from "./helpers/TableDOMUtils";
|
|
|
11
11
|
import { HtmlTable } from "./html-table";
|
|
12
12
|
import Loading from "./loading";
|
|
13
13
|
import { Classes, LOCK_SHADOW_PADDING, StyledArtTableWrapper } from "./styles";
|
|
14
|
-
import {
|
|
14
|
+
import {
|
|
15
|
+
// getScrollbarSize, // scroll mặc định thì bật lên
|
|
16
|
+
OVERSCAN_SIZE, shallowEqual, STYLED_REF_PROP, sum, syncScrollLeft, throttledWindowResize$ } from "./utils";
|
|
15
17
|
let emptyContentDeprecatedWarned = false;
|
|
16
18
|
function warnEmptyContentIsDeprecated() {
|
|
17
19
|
if (!emptyContentDeprecatedWarned) {
|
|
@@ -85,7 +87,11 @@ export class BaseTable extends React.Component {
|
|
|
85
87
|
const innerTableWidth = tableBodyHtmlTable.offsetWidth;
|
|
86
88
|
const artTableWidth = artTable.offsetWidth;
|
|
87
89
|
const stickyScrollHeightProp = this.props.stickyScrollHeight;
|
|
88
|
-
|
|
90
|
+
|
|
91
|
+
// scroll mặc định thì bật lên
|
|
92
|
+
// const stickyScrollHeight = stickyScrollHeightProp === 'auto' ? getScrollbarSize().height : stickyScrollHeightProp
|
|
93
|
+
const stickyScrollHeight = stickyScrollHeightProp === 'auto' ? 8 : stickyScrollHeightProp; // height customscrll bar = 8
|
|
94
|
+
|
|
89
95
|
stickyScroll.style.marginTop = `-${(stickyScrollHeight ?? 0) + 1}px`;
|
|
90
96
|
if (artTableWidth >= innerTableWidth) {
|
|
91
97
|
if (this.state.hasScroll) {
|
|
@@ -402,6 +402,7 @@ export function isRowChecked(key, selectedKeys, treeIndex, checkedStrategy, isDi
|
|
|
402
402
|
// =========================
|
|
403
403
|
if (checkedStrategy === 'parent') {
|
|
404
404
|
// node disable => chỉ true nếu explicit chọn
|
|
405
|
+
// console.log('isDisabled', isDisabled)
|
|
405
406
|
if (isDisabled) {
|
|
406
407
|
const abc = selectedKeys.has(key);
|
|
407
408
|
return abc;
|
package/lib/ali-table/Grid.js
CHANGED
|
@@ -162,6 +162,9 @@ const Grid = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
|
|
|
162
162
|
...cssVariables
|
|
163
163
|
}
|
|
164
164
|
};
|
|
165
|
+
const topToolbaritems = _react.default.useMemo(() => {
|
|
166
|
+
return (toolbarItems ?? []).filter(it => it.position !== 'Bottom');
|
|
167
|
+
}, [toolbarItems]);
|
|
165
168
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_styles2.StyleTableContainer, {
|
|
166
169
|
className: (0, _classnames.default)(`${prefix}-grid`, {
|
|
167
170
|
[tableClassNames]: !!tableClassNames,
|
|
@@ -182,13 +185,13 @@ const Grid = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
|
|
|
182
185
|
justifyContent: 'space-between',
|
|
183
186
|
alignItems: 'center'
|
|
184
187
|
}
|
|
185
|
-
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
188
|
+
}, topToolbaritems.length > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
186
189
|
style: {
|
|
187
190
|
flex: 1,
|
|
188
191
|
overflow: 'hidden'
|
|
189
192
|
}
|
|
190
193
|
}, /*#__PURE__*/_react.default.createElement(_rcMasterUi.Toolbar, {
|
|
191
|
-
items:
|
|
194
|
+
items: topToolbaritems,
|
|
192
195
|
mode: toolbarMode
|
|
193
196
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
194
197
|
style: {
|
|
@@ -57,7 +57,7 @@ const outerBorderStyleMixin = (0, _styledComponents.css)(["border-top:var(--cell
|
|
|
57
57
|
const StyledArtTableWrapper = exports.StyledArtTableWrapper = _styledComponents.default.div.withConfig({
|
|
58
58
|
displayName: "StyledArtTableWrapper",
|
|
59
59
|
componentId: "es-grid-template__sc-ipj1ht-0"
|
|
60
|
-
})(["--row-height:38px;--color:#333;--bgcolor:white;--hover-bgcolor:var(--hover-bgcolor,#f5f5f5);--hover-color:var(--hover-color,#333);--highlight-bgcolor:#eee;--header-row-height:36px;--header-color:#000000de;--header-bgcolor:#ffffff;--header-hover-bgcolor:#ddd;--header-highlight-bgcolor:#e4e8ed;--cell-padding:7px 8px;--font-size:13px;--line-height:1.28571;--lock-shadow:rgba(152,152,152,0.5) 0 0 6px 2px;--border-color:#dfe3e8;--cell-border:1px solid var(--border-color);--cell-border-horizontal:var(--cell-border);--cell-border-vertical:var(--cell-border);--header-cell-border:1px solid var(--border-color);--header-cell-border-horizontal:var(--header-cell-border);--header-cell-border-vertical:var(--header-cell-border);--footer-bgColor:#fafafa;box-sizing:border-box;*{box-sizing:border-box;}cursor:default;color:var(--color);font-size:var(--font-size);line-height:var(--line-height);position:relative;overflow-anchor:none
|
|
60
|
+
})(["--row-height:38px;--color:#333;--bgcolor:white;--hover-bgcolor:var(--hover-bgcolor,#f5f5f5);--hover-color:var(--hover-color,#333);--highlight-bgcolor:#eee;--header-row-height:36px;--header-color:#000000de;--header-bgcolor:#ffffff;--header-hover-bgcolor:#ddd;--header-highlight-bgcolor:#e4e8ed;--cell-padding:7px 8px;--font-size:13px;--line-height:1.28571;--lock-shadow:rgba(152,152,152,0.5) 0 0 6px 2px;--border-color:#dfe3e8;--cell-border:1px solid var(--border-color);--cell-border-horizontal:var(--cell-border);--cell-border-vertical:var(--cell-border);--header-cell-border:1px solid var(--border-color);--header-cell-border-horizontal:var(--header-cell-border);--header-cell-border-vertical:var(--header-cell-border);--footer-bgColor:#fafafa;box-sizing:border-box;*{box-sizing:border-box;}cursor:default;color:var(--color);font-size:var(--font-size);line-height:var(--line-height);position:relative;overflow-anchor:none;&::-webkit-scrollbar{width:8px;height:8px;}&::-webkit-scrollbar-track{background:var(--bgcolor);}&::-webkit-scrollbar-thumb{background:rgba(0,0,0,0.4);border-radius:8px;}&::-webkit-scrollbar-thumb:hover{background:#555;}&.dark{&::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.3);}&::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.5);}}&.use-outer-border{", ";}.no-scrollbar{scrollbar-width:none;::-webkit-scrollbar{display:none;}}.", "{overflow-x:auto;overflow-y:hidden;background:var(--header-bgcolor);.ui-rc-table-column-title{flex:1;min-width:0;text-align:start;}.", "{font-weight:500;.ui-rc-header-trigger{padding-left:6px;display:flex;align-items:center;.ui-rc-table-column-sorter-cancel{opacity:0;}}&:hover{.ui-rc-header-trigger{.ui-rc-table-column-sorter-cancel{opacity:1;}}}.", "{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}.", "{width:100%;white-space:normal;word-break:break-word;}.", "{text-align:center;}.", "{text-align:right;}}}.", "{.", "{&.", "{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;.expansion-cell{.expansion-content{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}}}&.", "{width:100%;white-space:normal;word-break:break-word;}&.", "{text-align:center;}&.", "{text-align:right;}}.", "{background:var(--footer-bgcolor);}}.", ",.", "{overflow-x:auto;overflow-y:hidden;}&.sticky-header .", "{position:sticky;top:0;z-index:", ";}&.sticky-footer .", "{position:sticky;bottom:0;z-index:", ";}.", "{tr{td{&.lock-left,&.lock-right{border-bottom-width:0;box-shadow:0 -1px 0 0 var(--border-color),0 0px 0 0 var(--border-color),-1px 0 0 0 var(--border-color);}}}}table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;display:table;margin:0;padding:0;}tr:not(.no-hover):hover > td{background:var(--hover-bgcolor);color:var(--hover-color);}tr:not(.no-highlight).highlight > td{}th{font-weight:normal;text-align:left;padding:var(--cell-padding);height:var(--header-row-height);color:var(--header-color);background:var(--header-bgcolor);border:none;border-right:var(--header-cell-border-vertical);border-bottom:var(--header-cell-border-horizontal);}tr.first th{border-top:var(--header-cell-border-horizontal);}th.first{border-left:var(--header-cell-border-vertical);}td{padding:var(--cell-padding);background:var(--bgcolor);height:var(--row-height);border:none;border-right:var(--cell-border-vertical);border-bottom:var(--cell-border-horizontal);}td.first{border-left:var(--cell-border-vertical);}tr.first td{border-top:var(--cell-border-horizontal);}&.has-header tbody tr.first td{border-top:none;}&.has-footer tbody tr.last td{border-bottom:none;}&.has-footer tfoot tr > td{background:var(--footer-bgcolor);color:var(--footer-color);}&.has-footer tfoot tr:not(.no-hover):hover > td{background:var(--footer-bgcolor);}.lock-left,.lock-right{z-index:", ";}.resize-handle{width:6px;height:100%;position:absolute;top:0;right:0;cursor:col-resize;background-color:transparent;border-right:2px solid transparent;}.", "{position:absolute;top:0;bottom:0;z-index:", ";pointer-events:none;overflow:hidden;.", "{height:100%;}.", "{margin-right:", "px;box-shadow:none;&.show-shadow{box-shadow:var(--lock-shadow);border-right:var(--cell-border-vertical);}}.", "{margin-left:", "px;box-shadow:none;&.show-shadow{box-shadow:var(--lock-shadow);border-left:var(--cell-border-vertical);}}}.", "{pointer-events:none;color:#99a3b3;font-size:12px;text-align:center;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);.empty-image{width:50px;height:50px;}.empty-tips{margin-top:16px;line-height:1.5;}}.", "{overflow:auto;position:sticky;bottom:0;z-index:", ";margin-top:-17px;}.ui-rc-grid-loading-wrapper{}.ui-rc-grid-table{}.art-loading-content-wrapper{}.", "{height:1px;visibility:hidden;}.", "{position:relative;.", "{position:absolute;inset:0;pointer-events:none;}.", "{position:sticky;z-index:", ";transform:translateY(-50%);}}"], outerBorderStyleMixin, Classes.tableHeader, Classes.tableHeaderCell, Classes.cellEllipsis, Classes.cellWrap, Classes.cellTextCenter, Classes.cellTextRight, Classes.tableBody, Classes.tableCell, Classes.cellEllipsis, Classes.cellWrap, Classes.cellTextCenter, Classes.cellTextRight, Classes.tableFooter, Classes.tableBody, Classes.tableFooter, Classes.tableHeader, Z.header, Classes.tableFooter, Z.footer, Classes.tableBody, Z.lock, Classes.lockShadowMask, Z.lockShadow, Classes.lockShadow, Classes.leftLockShadow, LOCK_SHADOW_PADDING, Classes.rightLockShadow, LOCK_SHADOW_PADDING, Classes.emptyWrapper, Classes.stickyScroll, Z.scrollItem, Classes.stickyScrollItem, Classes.loadingWrapper, Classes.loadingIndicatorWrapper, Classes.loadingIndicator, Z.loadingIndicator);
|
|
61
61
|
|
|
62
62
|
// type StyleTableContainerProps = {
|
|
63
63
|
|
|
@@ -17,3 +17,41 @@ $prefix: 'ui-rc' !default;
|
|
|
17
17
|
box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05);
|
|
18
18
|
overflow: hidden;
|
|
19
19
|
}
|
|
20
|
+
|
|
21
|
+
.ui-rc-grid-horizontal-scroll-container {
|
|
22
|
+
&::-webkit-scrollbar {
|
|
23
|
+
width: 8px;
|
|
24
|
+
height: 8px;
|
|
25
|
+
|
|
26
|
+
}
|
|
27
|
+
&::-webkit-scrollbar-track {
|
|
28
|
+
background: var(--bgcolor);
|
|
29
|
+
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
&::-webkit-scrollbar-thumb {
|
|
33
|
+
background: rgba(0, 0, 0, 0.4);
|
|
34
|
+
border-radius: 8px;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
&::-webkit-scrollbar-thumb:hover {
|
|
38
|
+
background: #555;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
}
|
|
42
|
+
.ui-rc-grid-table-wrapper.dark {
|
|
43
|
+
|
|
44
|
+
.ui-rc-grid-horizontal-scroll-container {
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
&::-webkit-scrollbar-thumb {
|
|
48
|
+
background: rgba(255, 255, 255, 0.3);
|
|
49
|
+
}
|
|
50
|
+
&::-webkit-scrollbar-thumb:hover {
|
|
51
|
+
background: rgba(255, 255, 255, 0.5);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
}
|
|
@@ -94,7 +94,11 @@ class BaseTable extends _react.default.Component {
|
|
|
94
94
|
const innerTableWidth = tableBodyHtmlTable.offsetWidth;
|
|
95
95
|
const artTableWidth = artTable.offsetWidth;
|
|
96
96
|
const stickyScrollHeightProp = this.props.stickyScrollHeight;
|
|
97
|
-
|
|
97
|
+
|
|
98
|
+
// scroll mặc định thì bật lên
|
|
99
|
+
// const stickyScrollHeight = stickyScrollHeightProp === 'auto' ? getScrollbarSize().height : stickyScrollHeightProp
|
|
100
|
+
const stickyScrollHeight = stickyScrollHeightProp === 'auto' ? 8 : stickyScrollHeightProp; // height customscrll bar = 8
|
|
101
|
+
|
|
98
102
|
stickyScroll.style.marginTop = `-${(stickyScrollHeight ?? 0) + 1}px`;
|
|
99
103
|
if (artTableWidth >= innerTableWidth) {
|
|
100
104
|
if (this.state.hasScroll) {
|
|
@@ -433,6 +433,7 @@ function isRowChecked(key, selectedKeys, treeIndex, checkedStrategy, isDisabledF
|
|
|
433
433
|
// =========================
|
|
434
434
|
if (checkedStrategy === 'parent') {
|
|
435
435
|
// node disable => chỉ true nếu explicit chọn
|
|
436
|
+
// console.log('isDisabled', isDisabled)
|
|
436
437
|
if (isDisabled) {
|
|
437
438
|
const abc = selectedKeys.has(key);
|
|
438
439
|
return abc;
|