UNPKG

2.1 kBJavaScriptView Raw
1import _Object$values from "@babel/runtime-corejs2/core-js/object/values";
2import _extends from "@babel/runtime-corejs2/helpers/esm/extends";
3import _objectWithoutPropertiesLoose from "@babel/runtime-corejs2/helpers/esm/objectWithoutPropertiesLoose";
4import _inheritsLoose from "@babel/runtime-corejs2/helpers/esm/inheritsLoose";
5import classNames from 'classnames';
6import React from 'react';
7import PropTypes from 'prop-types';
8import { bsClass, bsStyles, getClassSet, prefix, splitBsProps } from './utils/bootstrapUtils';
9import { State } from './utils/StyleConfig';
10import CloseButton from './CloseButton';
11var propTypes = {
12 onDismiss: PropTypes.func,
13 closeLabel: PropTypes.string
14};
15var defaultProps = {
16 closeLabel: 'Close alert'
17};
18
19var Alert =
20/*#__PURE__*/
21function (_React$Component) {
22 _inheritsLoose(Alert, _React$Component);
23
24 function Alert() {
25 return _React$Component.apply(this, arguments) || this;
26 }
27
28 var _proto = Alert.prototype;
29
30 _proto.render = function render() {
31 var _extends2;
32
33 var _this$props = this.props,
34 onDismiss = _this$props.onDismiss,
35 closeLabel = _this$props.closeLabel,
36 className = _this$props.className,
37 children = _this$props.children,
38 props = _objectWithoutPropertiesLoose(_this$props, ["onDismiss", "closeLabel", "className", "children"]);
39
40 var _splitBsProps = splitBsProps(props),
41 bsProps = _splitBsProps[0],
42 elementProps = _splitBsProps[1];
43
44 var dismissable = !!onDismiss;
45
46 var classes = _extends({}, getClassSet(bsProps), (_extends2 = {}, _extends2[prefix(bsProps, 'dismissable')] = dismissable, _extends2));
47
48 return React.createElement("div", _extends({}, elementProps, {
49 role: "alert",
50 className: classNames(className, classes)
51 }), dismissable && React.createElement(CloseButton, {
52 onClick: onDismiss,
53 label: closeLabel
54 }), children);
55 };
56
57 return Alert;
58}(React.Component);
59
60Alert.propTypes = propTypes;
61Alert.defaultProps = defaultProps;
62export default bsStyles(_Object$values(State), State.INFO, bsClass('alert', Alert));
\No newline at end of file