@arcblock/ux 1.14.51 → 1.14.52

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.
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = CodeBlock;
7
7
 
8
- var _react = _interopRequireDefault(require("react"));
8
+ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
@@ -15,6 +15,8 @@ var _copyToClipboard = _interopRequireDefault(require("copy-to-clipboard"));
15
15
 
16
16
  var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton"));
17
17
 
18
+ var _useMountedState = _interopRequireDefault(require("react-use/lib/useMountedState"));
19
+
18
20
  var _highlight = _interopRequireDefault(require("highlight.js/lib/highlight"));
19
21
 
20
22
  var _javascript = _interopRequireDefault(require("highlight.js/lib/languages/javascript"));
@@ -47,10 +49,16 @@ require("highlight.js/styles/atom-one-dark.css");
47
49
 
48
50
  var _FileCopy = _interopRequireDefault(require("@material-ui/icons/FileCopy"));
49
51
 
52
+ var _Check = _interopRequireDefault(require("@material-ui/icons/Check"));
53
+
50
54
  const _excluded = ["code", "language", "children"];
51
55
 
52
56
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
53
57
 
58
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
59
+
60
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
61
+
54
62
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
55
63
 
56
64
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
@@ -107,10 +115,19 @@ function CodeBlock(_ref) {
107
115
  } = _ref,
108
116
  rest = _objectWithoutProperties(_ref, _excluded);
109
117
 
118
+ const [copied, setCopied] = (0, _react.useState)(false);
119
+ const isMounted = (0, _useMountedState.default)();
110
120
  const source = code || children;
111
121
 
112
122
  const onCopy = () => {
113
123
  (0, _copyToClipboard.default)(source);
124
+ setCopied(true); // 恢复 copied 状态
125
+
126
+ setTimeout(() => {
127
+ if (isMounted()) {
128
+ setCopied(false);
129
+ }
130
+ }, 1500);
114
131
  };
115
132
 
116
133
  return /*#__PURE__*/_react.default.createElement(Pre, rest, /*#__PURE__*/_react.default.createElement("span", {
@@ -124,8 +141,14 @@ function CodeBlock(_ref) {
124
141
  className: "copy-button",
125
142
  onClick: onCopy,
126
143
  tabIndex: "-1",
127
- color: "primary"
128
- }, /*#__PURE__*/_react.default.createElement(_FileCopy.default, {
144
+ color: "primary",
145
+ disabled: copied
146
+ }, !copied && /*#__PURE__*/_react.default.createElement(_FileCopy.default, {
147
+ style: {
148
+ color: '#fff',
149
+ fontSize: 16
150
+ }
151
+ }), copied && /*#__PURE__*/_react.default.createElement(_Check.default, {
129
152
  style: {
130
153
  color: '#fff',
131
154
  fontSize: 16
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcblock/ux",
3
- "version": "1.14.51",
3
+ "version": "1.14.52",
4
4
  "description": "Common used react components for arcblock products",
5
5
  "keywords": [
6
6
  "react",
@@ -52,10 +52,10 @@
52
52
  "react": ">=16.12.0",
53
53
  "react-ga": "^2.7.0"
54
54
  },
55
- "gitHead": "0ff961fce9804e63fc9a9466fa48c70fafb35816",
55
+ "gitHead": "50a4465c6e13edc0e698ec47e0e196e65980321c",
56
56
  "dependencies": {
57
- "@arcblock/icons": "^1.14.51",
58
- "@arcblock/react-hooks": "^1.14.51",
57
+ "@arcblock/icons": "^1.14.52",
58
+ "@arcblock/react-hooks": "^1.14.52",
59
59
  "@babel/plugin-syntax-dynamic-import": "^7.8.3",
60
60
  "@material-ui/core": "^4.10.1",
61
61
  "@material-ui/icons": "4.5.1",