1 | import _extends from "@babel/runtime/helpers/esm/extends";
|
2 | import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
3 | import classNames from 'classnames';
|
4 | import React, { useContext } from 'react';
|
5 | import useEventCallback from '@restart/hooks/useEventCallback';
|
6 | import { useBootstrapPrefix } from './ThemeProvider';
|
7 | import CloseButton from './CloseButton';
|
8 | import ToastContext from './ToastContext';
|
9 | var defaultProps = {
|
10 | closeLabel: 'Close',
|
11 | closeButton: true
|
12 | };
|
13 | var ToastHeader = React.forwardRef(function (_ref, ref) {
|
14 | var bsPrefix = _ref.bsPrefix,
|
15 | closeLabel = _ref.closeLabel,
|
16 | closeButton = _ref.closeButton,
|
17 | className = _ref.className,
|
18 | children = _ref.children,
|
19 | props = _objectWithoutPropertiesLoose(_ref, ["bsPrefix", "closeLabel", "closeButton", "className", "children"]);
|
20 |
|
21 | bsPrefix = useBootstrapPrefix(bsPrefix, 'toast-header');
|
22 | var context = useContext(ToastContext);
|
23 | var handleClick = useEventCallback(function (e) {
|
24 | if (context && context.onClose) {
|
25 | context.onClose(e);
|
26 | }
|
27 | });
|
28 | return React.createElement("div", _extends({
|
29 | ref: ref
|
30 | }, props, {
|
31 | className: classNames(bsPrefix, className)
|
32 | }), children, closeButton && React.createElement(CloseButton, {
|
33 | label: closeLabel,
|
34 | onClick: handleClick,
|
35 | className: "ml-2 mb-1",
|
36 | "data-dismiss": "toast"
|
37 | }));
|
38 | });
|
39 | ToastHeader.displayName = 'ToastHeader';
|
40 | ToastHeader.defaultProps = defaultProps;
|
41 | export default ToastHeader; |
\ | No newline at end of file |