@kdcloudjs/table 1.1.5-canary.2 → 1.1.5-canary.4

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,6 +1,6 @@
1
1
  /*!
2
2
  *
3
- * @kdcloudjs/table v1.1.5-canary.1
3
+ * @kdcloudjs/table v1.1.5-canary.3
4
4
  *
5
5
  * Copyright 2020-present, Kingdee, Inc.
6
6
  * All rights reserved.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  *
3
- * @kdcloudjs/table v1.1.5-canary.1
3
+ * @kdcloudjs/table v1.1.5-canary.3
4
4
  *
5
5
  * Copyright 2020-present, Kingdee, Inc.
6
6
  * All rights reserved.
@@ -5274,11 +5274,13 @@ var colGroupExtendable = function colGroupExtendable() {
5274
5274
  var addIcon = function addIcon(col) {
5275
5275
  var result = _objectSpread({}, col);
5276
5276
 
5277
+ var curColState = curState[col.code];
5278
+ var displaycolExtendIcon = typeof opts.extendIcon === 'function' ? opts.extendIcon(curColState) : opts.extendIcon;
5277
5279
  var addIconNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_10___default.a.Fragment, null, _internals__WEBPACK_IMPORTED_MODULE_12__["internals"].safeRenderHeader(_objectSpread({}, col)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(ExtendIconStyle, {
5278
5280
  onClick: function onClick() {
5279
5281
  toggle(col);
5280
5282
  }
5281
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(ExpandIcon, {
5283
+ }, displaycolExtendIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(ExpandIcon, {
5282
5284
  style: {
5283
5285
  userSelect: 'none',
5284
5286
  marginLeft: 2,
@@ -5287,8 +5289,8 @@ var colGroupExtendable = function colGroupExtendable() {
5287
5289
  verticalAlign: 'middle'
5288
5290
  },
5289
5291
  className: classnames__WEBPACK_IMPORTED_MODULE_14___default()(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_7___default()({}, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableExtendIcon, true)),
5290
- size: 16,
5291
- isExtend: curState[col.code]
5292
+ size: 14,
5293
+ isExtend: curColState
5292
5294
  })));
5293
5295
  result.title = addIconNode;
5294
5296
  return result;
@@ -5840,7 +5842,9 @@ function filter() {
5840
5842
  mode = opts.mode,
5841
5843
  filterIcon = opts.filterIcon,
5842
5844
  stopClickEventPropagation = opts.stopClickEventPropagation,
5843
- hideFilterPopupHeader = opts.hideFilterPopupHeader;
5845
+ stopESCKeyDownEventPropagation = opts.stopESCKeyDownEventPropagation,
5846
+ hideFilterPopupHeader = opts.hideFilterPopupHeader,
5847
+ getPopupParent = opts.getPopupParent;
5844
5848
  var inputFilters = (_ref = (_ref2 = filters !== null && filters !== void 0 ? filters : pipeline.getStateAtKey(stateKey)) !== null && _ref2 !== void 0 ? _ref2 : defaultFilters) !== null && _ref !== void 0 ? _ref : [];
5845
5849
  inputFilters = mode === 'single' ? inputFilters.slice(0, 1) : inputFilters;
5846
5850
  var inputFiltersMap = new Map(inputFilters.map(function (filterItem) {
@@ -5903,7 +5907,9 @@ function filter() {
5903
5907
  isFilterActive: filterActive,
5904
5908
  className: classnames__WEBPACK_IMPORTED_MODULE_18___default()((_cx = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_5___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_22__["Classes"].tableFilterTrigger, true), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_5___default()(_cx, "active", filterActive), _cx)),
5905
5909
  stopClickEventPropagation: stopClickEventPropagation,
5906
- hideFilterPopupHeader: hideFilterPopupHeader
5910
+ stopESCKeyDownEventPropagation: stopESCKeyDownEventPropagation,
5911
+ hideFilterPopupHeader: hideFilterPopupHeader,
5912
+ getPopupParent: getPopupParent
5907
5913
  })]); // result.headerCellProps = mergeCellProps(col.headerCellProps, {
5908
5914
  // style: {
5909
5915
  // paddingRight: '18px'
@@ -7136,10 +7142,11 @@ function Panel(_ref) {
7136
7142
  filterIcon = _ref.filterIcon,
7137
7143
  hidePanel = _ref.hidePanel,
7138
7144
  renderPanelContent = _ref.renderPanelContent,
7139
- hideFilterPopupHeader = _ref.hideFilterPopupHeader;
7145
+ hideFilterPopupHeader = _ref.hideFilterPopupHeader,
7146
+ popupParent = _ref.popupParent;
7140
7147
  var filterPanelRef = react__WEBPACK_IMPORTED_MODULE_3___default.a.useRef(null);
7141
7148
 
7142
- var _React$useState = react__WEBPACK_IMPORTED_MODULE_3___default.a.useState(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["calculatePopupRelative"])(ele, document.body, _getPanelOffset(ele, hideFilterPopupHeader))),
7149
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_3___default.a.useState(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["calculatePopupRelative"])(ele, popupParent, _getPanelOffset(ele, hideFilterPopupHeader))),
7143
7150
  _React$useState2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_React$useState, 2),
7144
7151
  position = _React$useState2[0],
7145
7152
  setPosition = _React$useState2[1];
@@ -7150,7 +7157,7 @@ function Panel(_ref) {
7150
7157
  };
7151
7158
 
7152
7159
  var handleFilterPanelResize = function handleFilterPanelResize(resize) {
7153
- setPosition(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["calculatePopupRelative"])(ele, document.body, _getPanelOffset(ele, hideFilterPopupHeader)));
7160
+ setPosition(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["calculatePopupRelative"])(ele, popupParent, _getPanelOffset(ele, hideFilterPopupHeader)));
7154
7161
  };
7155
7162
 
7156
7163
  Object(react__WEBPACK_IMPORTED_MODULE_3__["useEffect"])(function () {
@@ -7184,7 +7191,9 @@ function Filter(_ref2) {
7184
7191
  filterModel = _ref2.filterModel,
7185
7192
  isFilterActive = _ref2.isFilterActive,
7186
7193
  stopClickEventPropagation = _ref2.stopClickEventPropagation,
7187
- hideFilterPopupHeader = _ref2.hideFilterPopupHeader;
7194
+ stopESCKeyDownEventPropagation = _ref2.stopESCKeyDownEventPropagation,
7195
+ hideFilterPopupHeader = _ref2.hideFilterPopupHeader,
7196
+ getPopupParent = _ref2.getPopupParent;
7188
7197
 
7189
7198
  var _React$useState3 = react__WEBPACK_IMPORTED_MODULE_3___default.a.useState(false),
7190
7199
  _React$useState4 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_React$useState3, 2),
@@ -7219,25 +7228,30 @@ function Filter(_ref2) {
7219
7228
  var handleIconClick = function handleIconClick(e) {
7220
7229
  // 只有当icon区域点击会触发面板展开
7221
7230
  // 防止 createPortal 区域的点击触发该事件
7222
- if (!e.currentTarget.contains(e.target)) {
7223
- return;
7231
+ if (e.currentTarget.contains(e.target)) {
7232
+ setShowPanel(true);
7224
7233
  }
7225
7234
 
7226
7235
  if (stopClickEventPropagation) {
7227
7236
  e.stopPropagation();
7228
7237
  }
7229
-
7230
- setShowPanel(true);
7231
7238
  };
7232
7239
 
7233
7240
  var handleKeyDown = function handleKeyDown(e) {
7234
- if (e.currentTarget.contains(e.target) && e.keyCode === _utils_keyCode__WEBPACK_IMPORTED_MODULE_13__["default"].ESC) {
7235
- setShowPanel(false);
7241
+ if (e.keyCode === _utils_keyCode__WEBPACK_IMPORTED_MODULE_13__["default"].ESC) {
7242
+ if (e.currentTarget.contains(e.target)) {
7243
+ setShowPanel(false);
7244
+ }
7245
+
7246
+ if (stopESCKeyDownEventPropagation) {
7247
+ e.stopPropagation();
7248
+ }
7236
7249
  }
7237
7250
  };
7238
7251
 
7239
7252
  var iconClassName = classnames__WEBPACK_IMPORTED_MODULE_6___default()((_cx = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(_cx, className, true), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(_cx, 'filter-panel-open', showPanel), _cx));
7240
7253
  var displayFilterIcon = typeof filterIcon === 'function' ? filterIcon(isFilterActive) : filterIcon;
7254
+ var popupParent = (getPopupParent === null || getPopupParent === void 0 ? void 0 : getPopupParent(iconWrapRef.current)) || document.body;
7241
7255
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(FilterIconSpanStyle, {
7242
7256
  style: style,
7243
7257
  className: iconClassName,
@@ -7256,8 +7270,9 @@ function Filter(_ref2) {
7256
7270
  filterIcon: displayFilterIcon,
7257
7271
  hidePanel: hidePanel,
7258
7272
  renderPanelContent: renderPanelContent,
7259
- hideFilterPopupHeader: hideFilterPopupHeader
7260
- }), document.body));
7273
+ hideFilterPopupHeader: hideFilterPopupHeader,
7274
+ popupParent: popupParent
7275
+ }), popupParent));
7261
7276
  }
7262
7277
 
7263
7278
  function _getPanelOffset(ele, hideFilterPopupHeader) {