rsuite 5.4.1 → 5.4.2

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.
Files changed (46) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/Modal/styles/index.less +23 -22
  3. package/Navbar/styles/index.less +12 -5
  4. package/cjs/Affix/Affix.js +3 -1
  5. package/cjs/Disclosure/Disclosure.d.ts +8 -5
  6. package/cjs/Disclosure/Disclosure.js +49 -9
  7. package/cjs/Disclosure/DisclosureButton.d.ts +2 -2
  8. package/cjs/Disclosure/DisclosureContext.d.ts +6 -1
  9. package/cjs/Dropdown/Dropdown.js +1 -1
  10. package/cjs/Dropdown/DropdownItem.js +9 -10
  11. package/cjs/Dropdown/DropdownMenu.js +72 -17
  12. package/cjs/Modal/Modal.js +34 -22
  13. package/cjs/Navbar/index.d.ts +1 -0
  14. package/cjs/Navbar/index.js +4 -3
  15. package/cjs/Overlay/Modal.js +10 -27
  16. package/cjs/utils/index.d.ts +1 -0
  17. package/cjs/utils/index.js +7 -2
  18. package/cjs/utils/useMount.d.ts +2 -0
  19. package/cjs/utils/useMount.js +19 -0
  20. package/dist/rsuite-rtl.css +32 -20
  21. package/dist/rsuite-rtl.min.css +1 -1
  22. package/dist/rsuite-rtl.min.css.map +1 -1
  23. package/dist/rsuite.css +32 -20
  24. package/dist/rsuite.js +31 -9
  25. package/dist/rsuite.js.map +1 -1
  26. package/dist/rsuite.min.css +1 -1
  27. package/dist/rsuite.min.css.map +1 -1
  28. package/dist/rsuite.min.js +1 -1
  29. package/dist/rsuite.min.js.map +1 -1
  30. package/esm/Affix/Affix.js +4 -2
  31. package/esm/Disclosure/Disclosure.d.ts +8 -5
  32. package/esm/Disclosure/Disclosure.js +50 -11
  33. package/esm/Disclosure/DisclosureButton.d.ts +2 -2
  34. package/esm/Disclosure/DisclosureContext.d.ts +6 -1
  35. package/esm/Dropdown/Dropdown.js +1 -1
  36. package/esm/Dropdown/DropdownItem.js +9 -9
  37. package/esm/Dropdown/DropdownMenu.js +72 -17
  38. package/esm/Modal/Modal.js +36 -24
  39. package/esm/Navbar/index.d.ts +1 -0
  40. package/esm/Navbar/index.js +1 -0
  41. package/esm/Overlay/Modal.js +10 -27
  42. package/esm/utils/index.d.ts +1 -0
  43. package/esm/utils/index.js +2 -1
  44. package/esm/utils/useMount.d.ts +2 -0
  45. package/esm/utils/useMount.js +13 -0
  46. package/package.json +1 -1
@@ -94,7 +94,6 @@ var Modal = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
94
94
  open = props.open,
95
95
  _props$autoFocus = props.autoFocus,
96
96
  autoFocus = _props$autoFocus === void 0 ? true : _props$autoFocus,
97
- onBackdropClick = props.onBackdropClick,
98
97
  onEsc = props.onEsc,
99
98
  onExit = props.onExit,
100
99
  onExiting = props.onExiting,
@@ -104,7 +103,7 @@ var Modal = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
104
103
  onEntered = props.onEntered,
105
104
  onClose = props.onClose,
106
105
  onOpen = props.onOpen,
107
- rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "children", "transition", "dialogTransitionTimeout", "style", "className", "container", "animationProps", "containerClassName", "keyboard", "enforceFocus", "backdrop", "backdropTransitionTimeout", "backdropStyle", "backdropClassName", "open", "autoFocus", "onBackdropClick", "onEsc", "onExit", "onExiting", "onExited", "onEnter", "onEntering", "onEntered", "onClose", "onOpen"]);
106
+ rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "children", "transition", "dialogTransitionTimeout", "style", "className", "container", "animationProps", "containerClassName", "keyboard", "enforceFocus", "backdrop", "backdropTransitionTimeout", "backdropStyle", "backdropClassName", "open", "autoFocus", "onEsc", "onExit", "onExiting", "onExited", "onEnter", "onEntering", "onEntered", "onClose", "onOpen"]);
108
107
 
109
108
  var _useState = (0, _react.useState)(!open),
110
109
  exited = _useState[0],
@@ -161,17 +160,6 @@ var Modal = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
161
160
 
162
161
  handleFocusDialog();
163
162
  });
164
- var handleBackdropClick = (0, _utils2.useEventCallback)(function (event) {
165
- if (event.target !== event.currentTarget) {
166
- return;
167
- }
168
-
169
- onBackdropClick === null || onBackdropClick === void 0 ? void 0 : onBackdropClick(event);
170
-
171
- if (backdrop === true) {
172
- onClose === null || onClose === void 0 ? void 0 : onClose(event);
173
- }
174
- });
175
163
  var documentKeyDownListener = (0, _react.useRef)();
176
164
  var documentFocusListener = (0, _react.useRef)();
177
165
  var handleOpen = (0, _utils2.useEventCallback)(function () {
@@ -237,11 +225,6 @@ var Modal = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
237
225
  }
238
226
 
239
227
  var renderBackdrop = function renderBackdrop() {
240
- var backdropPorps = {
241
- style: backdropStyle,
242
- onClick: handleBackdropClick
243
- };
244
-
245
228
  if (Transition) {
246
229
  return /*#__PURE__*/_react.default.createElement(_Fade.default, {
247
230
  transitionAppear: true,
@@ -252,18 +235,19 @@ var Modal = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
252
235
  rest = (0, _objectWithoutPropertiesLoose2.default)(fadeProps, ["className"]);
253
236
  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
254
237
  "aria-hidden": true
255
- }, rest, backdropPorps, {
238
+ }, rest, {
239
+ style: backdropStyle,
256
240
  ref: (0, _utils2.mergeRefs)(modal.setBackdropRef, ref),
257
241
  className: (0, _classnames.default)(backdropClassName, className)
258
242
  }));
259
243
  });
260
244
  }
261
245
 
262
- return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
263
- "aria-hidden": true
264
- }, backdropPorps, {
246
+ return /*#__PURE__*/_react.default.createElement("div", {
247
+ "aria-hidden": true,
248
+ style: backdropStyle,
265
249
  className: backdropClassName
266
- }));
250
+ });
267
251
  };
268
252
 
269
253
  var dialogElement = Transition ? /*#__PURE__*/_react.default.createElement(Transition, (0, _extends2.default)({}, animationProps, {
@@ -280,12 +264,12 @@ var Modal = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
280
264
  }), children) : children;
281
265
  return /*#__PURE__*/_react.default.createElement(_OverlayContext.default.Provider, {
282
266
  value: contextValue
283
- }, /*#__PURE__*/_react.default.createElement(Portal, null, /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {
267
+ }, /*#__PURE__*/_react.default.createElement(Portal, null, backdrop && renderBackdrop(), /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {
284
268
  ref: (0, _utils2.mergeRefs)(modal.setDialogRef, ref),
285
269
  style: style,
286
270
  className: className,
287
271
  tabIndex: -1
288
- }), backdrop && renderBackdrop(), dialogElement)));
272
+ }), dialogElement)));
289
273
  });
290
274
 
291
275
  var modalPropTypes = {
@@ -312,8 +296,7 @@ Modal.propTypes = (0, _extends2.default)({}, _utils.animationPropTypes, modalPro
312
296
  dialogTransitionTimeout: _propTypes.default.number,
313
297
  backdropTransitionTimeout: _propTypes.default.number,
314
298
  transition: _propTypes.default.any,
315
- onEsc: _propTypes.default.func,
316
- onBackdropClick: _propTypes.default.func
299
+ onEsc: _propTypes.default.func
317
300
  });
318
301
  var _default = Modal;
319
302
  exports.default = _default;
@@ -40,3 +40,4 @@ export { default as useUpdatedRef } from './useUpdatedRef';
40
40
  export { default as useWillUnmount } from './useWillUnmount';
41
41
  export { default as useUpdateEffect } from './useUpdateEffect';
42
42
  export { default as useIsMounted } from './useIsMounted';
43
+ export { default as useMount } from './useMount';
@@ -41,13 +41,14 @@ var _exportNames = {
41
41
  useWillUnmount: true,
42
42
  useUpdateEffect: true,
43
43
  useIsMounted: true,
44
+ useMount: true,
44
45
  defaultClassPrefix: true,
45
46
  getClassNamePrefix: true,
46
47
  globalKey: true,
47
48
  DateUtils: true,
48
49
  TypeChecker: true
49
50
  };
50
- exports.TypeChecker = exports.DateUtils = exports.globalKey = exports.getClassNamePrefix = exports.defaultClassPrefix = exports.useIsMounted = exports.useUpdateEffect = exports.useWillUnmount = exports.useUpdatedRef = exports.useEventCallback = exports.stringToObject = exports.getSafeRegExpString = exports.useRootClose = exports.useControlled = exports.useTimeout = exports.createComponent = exports.usePortal = exports.useCustom = exports.useElementResize = exports.useEventListener = exports.useClassNames = exports.appendTooltip = exports.scrollTopAnimation = exports.reactToString = exports.composeFunctions = exports.shallowEqualArray = exports.shallowEqual = exports.mergeRefs = exports.getDOMNode = exports.placementPolyfill = exports.clone = exports.getDataGroupBy = exports.previewFile = exports.ajaxUpload = exports.tplTransform = exports.ReactChildren = exports.isOneOf = exports.createChainedFunction = exports.prefix = exports.guid = void 0;
51
+ exports.TypeChecker = exports.DateUtils = exports.globalKey = exports.getClassNamePrefix = exports.defaultClassPrefix = exports.useMount = exports.useIsMounted = exports.useUpdateEffect = exports.useWillUnmount = exports.useUpdatedRef = exports.useEventCallback = exports.stringToObject = exports.getSafeRegExpString = exports.useRootClose = exports.useControlled = exports.useTimeout = exports.createComponent = exports.usePortal = exports.useCustom = exports.useElementResize = exports.useEventListener = exports.useClassNames = exports.appendTooltip = exports.scrollTopAnimation = exports.reactToString = exports.composeFunctions = exports.shallowEqualArray = exports.shallowEqual = exports.mergeRefs = exports.getDOMNode = exports.placementPolyfill = exports.clone = exports.getDataGroupBy = exports.previewFile = exports.ajaxUpload = exports.tplTransform = exports.ReactChildren = exports.isOneOf = exports.createChainedFunction = exports.prefix = exports.guid = void 0;
51
52
 
52
53
  var _BrowserDetection = require("./BrowserDetection");
53
54
 
@@ -234,4 +235,8 @@ exports.useUpdateEffect = _useUpdateEffect.default;
234
235
 
235
236
  var _useIsMounted = _interopRequireDefault(require("./useIsMounted"));
236
237
 
237
- exports.useIsMounted = _useIsMounted.default;
238
+ exports.useIsMounted = _useIsMounted.default;
239
+
240
+ var _useMount = _interopRequireDefault(require("./useMount"));
241
+
242
+ exports.useMount = _useMount.default;
@@ -0,0 +1,2 @@
1
+ declare const useMount: (callback: () => void) => void;
2
+ export default useMount;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.default = void 0;
5
+
6
+ var _react = require("react");
7
+
8
+ var useMount = function useMount(callback) {
9
+ var mountRef = (0, _react.useRef)(callback);
10
+ mountRef.current = callback;
11
+ (0, _react.useEffect)(function () {
12
+ var _mountRef$current;
13
+
14
+ (_mountRef$current = mountRef.current) === null || _mountRef$current === void 0 ? void 0 : _mountRef$current.call(mountRef);
15
+ }, []);
16
+ };
17
+
18
+ var _default = useMount;
19
+ exports.default = _default;
@@ -8665,6 +8665,24 @@ textarea.rs-picker-search-input {
8665
8665
  .rs-theme-high-contrast .rs-message-error {
8666
8666
  border: 1px solid var(--rs-message-error-border);
8667
8667
  }
8668
+ .rs-modal-backdrop {
8669
+ position: fixed;
8670
+ top: 0;
8671
+ right: 0;
8672
+ width: 100vw;
8673
+ height: 100vh;
8674
+ z-index: 1049;
8675
+ background-color: rgba(39, 44, 54, 0.3);
8676
+ background-color: var(--rs-bg-backdrop);
8677
+ }
8678
+ .rs-modal-backdrop.rs-anim-fade {
8679
+ opacity: 0;
8680
+ -webkit-transition: opacity 0.3s ease-in;
8681
+ transition: opacity 0.3s ease-in;
8682
+ }
8683
+ .rs-modal-backdrop.rs-anim-in {
8684
+ opacity: 1;
8685
+ }
8668
8686
  .rs-modal-open {
8669
8687
  overflow: hidden;
8670
8688
  }
@@ -8673,9 +8691,9 @@ textarea.rs-picker-search-input {
8673
8691
  overflow: auto;
8674
8692
  z-index: 1050;
8675
8693
  top: 0;
8676
- bottom: 0;
8677
- left: 0;
8678
8694
  right: 0;
8695
+ width: 100%;
8696
+ height: 100%;
8679
8697
  }
8680
8698
  .rs-modal {
8681
8699
  display: none;
@@ -8719,23 +8737,6 @@ textarea.rs-picker-search-input {
8719
8737
  box-shadow: var(--rs-modal-shadow);
8720
8738
  padding: 20px;
8721
8739
  }
8722
- .rs-modal-backdrop {
8723
- position: fixed;
8724
- top: 0;
8725
- left: 0;
8726
- bottom: 0;
8727
- right: 0;
8728
- background-color: rgba(39, 44, 54, 0.3);
8729
- background-color: var(--rs-bg-backdrop);
8730
- }
8731
- .rs-modal-backdrop.rs-anim-fade {
8732
- opacity: 0;
8733
- -webkit-transition: opacity 0.3s ease-in;
8734
- transition: opacity 0.3s ease-in;
8735
- }
8736
- .rs-modal-backdrop.rs-anim-in {
8737
- opacity: 1;
8738
- }
8739
8740
  .rs-modal-header {
8740
8741
  padding-left: 20px;
8741
8742
  }
@@ -9179,6 +9180,9 @@ textarea.rs-picker-search-input {
9179
9180
  .rs-navbar-nav > .rs-dropdown .rs-dropdown-toggle {
9180
9181
  margin: 0 !important;
9181
9182
  }
9183
+ .rs-theme-high-contrast .rs-navbar-item.rs-navbar-item-active {
9184
+ text-decoration: underline;
9185
+ }
9182
9186
  .rs-navbar-nav > .rs-dropdown .rs-dropdown-toggle {
9183
9187
  padding-left: 36px;
9184
9188
  }
@@ -9193,8 +9197,16 @@ textarea.rs-picker-search-input {
9193
9197
  top: 18px;
9194
9198
  left: 16px;
9195
9199
  }
9196
- .rs-theme-high-contrast .rs-navbar-item.rs-navbar-item-active {
9200
+ .rs-navbar .rs-dropdown-item:hover {
9201
+ background-color: rgba(204, 233, 255, 0.5);
9202
+ background-color: var(--rs-menuitem-active-bg);
9203
+ color: #1675e0;
9204
+ color: var(--rs-menuitem-active-text);
9205
+ }
9206
+ .rs-theme-high-contrast .rs-navbar .rs-dropdown-item:hover {
9197
9207
  text-decoration: underline;
9208
+ -webkit-box-shadow: inset 0 0 0 2px #fff;
9209
+ box-shadow: inset 0 0 0 2px #fff;
9198
9210
  }
9199
9211
  .rs-navbar-default {
9200
9212
  background-color: #f7f7fa;