rsuite 5.76.1 → 5.76.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.
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { WithAsProps, RsRefForwardingComponent } from '../internals/types';
3
- export declare const defaultToasterContainer: HTMLElement;
3
+ export declare const defaultToasterContainer: () => HTMLElement | null;
4
4
  export type PlacementType = 'topCenter' | 'bottomCenter' | 'topStart' | 'topEnd' | 'bottomStart' | 'bottomEnd';
5
5
  export declare const toastPlacements: PlacementType[];
6
6
  export interface ToastContainerProps extends WithAsProps {
@@ -38,7 +38,7 @@ export interface NodeProps extends WithAsProps {
38
38
  onClose?: (event?: React.MouseEvent<HTMLDivElement>) => void;
39
39
  }
40
40
  export type GetInstancePropsType = Omit<ToastContainerProps, 'container' | 'placement'> & {
41
- container: HTMLElement;
41
+ container: HTMLElement | null;
42
42
  placement: PlacementType;
43
43
  };
44
44
  interface ToastContainerComponent extends RsRefForwardingComponent<'div', ToastContainerProps> {
@@ -10,11 +10,14 @@ import React, { useState, useImperativeHandle, useCallback } from 'react';
10
10
  import PropTypes from 'prop-types';
11
11
  import kebabCase from 'lodash/kebabCase';
12
12
  import Transition from "../Animation/Transition.js";
13
+ import ToastContext from "./ToastContext.js";
14
+ import canUseDOM from 'dom-lib/canUseDOM';
13
15
  import { useClassNames } from "../internals/hooks/index.js";
14
16
  import { guid, createChainedFunction } from "../internals/utils/index.js";
15
- import ToastContext from "./ToastContext.js";
16
17
  import { render } from "./render.js";
17
- export var defaultToasterContainer = document.body;
18
+ export var defaultToasterContainer = function defaultToasterContainer() {
19
+ return canUseDOM ? document.body : null;
20
+ };
18
21
  export var toastPlacements = ['topCenter', 'bottomCenter', 'topStart', 'topEnd', 'bottomStart', 'bottomEnd'];
19
22
  var useMessages = function useMessages() {
20
23
  var _useState = useState([]),
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
2
  export declare const toasterKeyOfContainerElement = "toasterId";
3
- export declare function render(element: React.ReactElement<any>, container: HTMLElement): string;
3
+ export declare function render(element: React.ReactElement<any>, container: HTMLElement | null): string;
@@ -56,10 +56,11 @@ _toaster.push = function (message, options) {
56
56
  var _options = options,
57
57
  _options$placement = _options.placement,
58
58
  placement = _options$placement === void 0 ? 'topCenter' : _options$placement,
59
- container = _options.container,
59
+ _options$container = _options.container,
60
+ container = _options$container === void 0 ? defaultToasterContainer : _options$container,
60
61
  restOptions = _objectWithoutPropertiesLoose(_options, _excluded);
61
- var containerElement = (typeof container === 'function' ? container() : container) || defaultToasterContainer;
62
- var containerElementId = containerElement[toasterKeyOfContainerElement];
62
+ var containerElement = typeof container === 'function' ? container() : container;
63
+ var containerElementId = containerElement ? containerElement[toasterKeyOfContainerElement] : null;
63
64
  if (containerElementId) {
64
65
  var existedContainer = getContainer(containerElementId, placement);
65
66
  if (existedContainer) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rsuite",
3
- "version": "5.76.1",
3
+ "version": "5.76.2",
4
4
  "description": "A suite of react components",
5
5
  "main": "cjs/index.js",
6
6
  "module": "esm/index.js",