UNPKG

1.97 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
5Object.defineProperty(exports, "__esModule", {
6 value: true
7});
8exports["default"] = void 0;
9
10var _react = _interopRequireDefault(require("react"));
11
12var _rcMotion = _interopRequireDefault(require("rc-motion"));
13
14var _LoadingOutlined = _interopRequireDefault(require("@ant-design/icons/LoadingOutlined"));
15
16var getCollapsedWidth = function getCollapsedWidth() {
17 return {
18 width: 0,
19 opacity: 0,
20 transform: 'scale(0)'
21 };
22};
23
24var getRealWidth = function getRealWidth(node) {
25 return {
26 width: node.scrollWidth,
27 opacity: 1,
28 transform: 'scale(1)'
29 };
30};
31
32var LoadingIcon = function LoadingIcon(_ref) {
33 var prefixCls = _ref.prefixCls,
34 loading = _ref.loading,
35 existIcon = _ref.existIcon;
36 var visible = !!loading;
37
38 if (existIcon) {
39 return /*#__PURE__*/_react["default"].createElement("span", {
40 className: "".concat(prefixCls, "-loading-icon")
41 }, /*#__PURE__*/_react["default"].createElement(_LoadingOutlined["default"], null));
42 }
43
44 return /*#__PURE__*/_react["default"].createElement(_rcMotion["default"], {
45 visible: visible // We do not really use this motionName
46 ,
47 motionName: "".concat(prefixCls, "-loading-icon-motion"),
48 removeOnLeave: true,
49 onAppearStart: getCollapsedWidth,
50 onAppearActive: getRealWidth,
51 onEnterStart: getCollapsedWidth,
52 onEnterActive: getRealWidth,
53 onLeaveStart: getRealWidth,
54 onLeaveActive: getCollapsedWidth
55 }, function (_ref2, ref) {
56 var className = _ref2.className,
57 style = _ref2.style;
58 return /*#__PURE__*/_react["default"].createElement("span", {
59 className: "".concat(prefixCls, "-loading-icon"),
60 style: style,
61 ref: ref
62 }, /*#__PURE__*/_react["default"].createElement(_LoadingOutlined["default"], {
63 className: className
64 }));
65 });
66};
67
68var _default = LoadingIcon;
69exports["default"] = _default;
\No newline at end of file