@arcblock/ux 1.1.27 → 1.6.59

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.
Files changed (170) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +0 -56
  3. package/lib/ActionButton/index.js +5 -3
  4. package/lib/ActivityIndicator/index.js +75 -23
  5. package/lib/Alert/index.js +15 -11
  6. package/lib/Async/index.js +1 -1
  7. package/lib/Badge/index.js +16 -14
  8. package/lib/Blocklet/index.js +51 -25
  9. package/lib/Button/wrap.js +94 -37
  10. package/lib/ButtonGroup/index.js +3 -16
  11. package/lib/Center/index.js +30 -4
  12. package/lib/ClickToCopy/index.js +9 -7
  13. package/lib/CodeBlock/index.js +35 -8
  14. package/lib/Colors/index.js +15 -0
  15. package/lib/Colors/themes/default.js +85 -0
  16. package/lib/ContactForm/index.js +9 -9
  17. package/lib/CookieConsent/index.js +98 -0
  18. package/lib/CountDown/index.js +18 -14
  19. package/lib/Dialog/confirm.js +84 -0
  20. package/lib/Dialog/dialog.js +137 -0
  21. package/lib/Dialog/index.js +23 -0
  22. package/lib/Earth/index.js +31 -31
  23. package/lib/Empty/index.js +14 -6
  24. package/lib/Footer/index.js +15 -14
  25. package/lib/Icon/image.js +6 -4
  26. package/lib/Icon/index.js +9 -7
  27. package/lib/Img/index.js +22 -16
  28. package/lib/InfoRow/index.js +7 -5
  29. package/lib/Layout/dashboard/header.js +27 -19
  30. package/lib/Layout/dashboard/index.js +29 -18
  31. package/lib/Layout/dashboard/sidebar.js +22 -15
  32. package/lib/Layout/index.js +44 -33
  33. package/lib/Locale/context.js +91 -62
  34. package/lib/Locale/selector.js +28 -20
  35. package/lib/Logo/index.js +15 -13
  36. package/lib/Metric/index.js +5 -5
  37. package/lib/NFTDisplay/aspect-ratio-container.js +7 -5
  38. package/lib/NFTDisplay/broken.js +1 -1
  39. package/lib/NFTDisplay/index.js +66 -40
  40. package/lib/NFTDisplay/loading.js +2 -2
  41. package/lib/NFTDisplay/svg-embedder/img.js +5 -3
  42. package/lib/NFTDisplay/svg-embedder/inline-svg.js +6 -4
  43. package/lib/PageScroller/index.js +9 -9
  44. package/lib/PageScroller/usePrevValue.js +2 -2
  45. package/lib/PricingTable/PricingPlan.js +12 -12
  46. package/lib/PricingTable/index.js +5 -5
  47. package/lib/Result/common.js +176 -0
  48. package/lib/Result/index.js +61 -0
  49. package/lib/Result/result.js +69 -0
  50. package/lib/Result/translations.js +61 -0
  51. package/lib/Screenshot/index.js +14 -12
  52. package/lib/Spinner/index.js +37 -0
  53. package/lib/SplitButton/index.js +126 -0
  54. package/lib/Switch/index.js +107 -0
  55. package/lib/Tabs/index.js +15 -6
  56. package/lib/Tag/index.js +14 -12
  57. package/lib/Terminal/Player.js +42 -42
  58. package/lib/Terminal/index.js +3 -1
  59. package/lib/Terminal/util.js +1 -1
  60. package/lib/TextCollapse/index.js +6 -4
  61. package/lib/Theme/index.js +79 -60
  62. package/lib/Theme/responsiveFontSizes.js +3 -3
  63. package/lib/Toast/index.js +10 -8
  64. package/lib/Util/index.js +83 -12
  65. package/lib/Video/index.js +8 -8
  66. package/lib/Wallet/Action.js +13 -11
  67. package/lib/Wallet/Download.js +59 -57
  68. package/lib/Wallet/Open.js +1 -1
  69. package/lib/WechatPrompt/index.js +10 -10
  70. package/lib/index.js +6 -6
  71. package/lib/withTheme/index.js +5 -17
  72. package/lib/withTracker/error_boundary.js +3 -3
  73. package/lib/withTracker/index.js +6 -6
  74. package/package.json +11 -12
  75. package/src/ActionButton/index.js +65 -0
  76. package/src/ActivityIndicator/index.js +141 -0
  77. package/src/Alert/index.js +104 -0
  78. package/src/Async/index.js +39 -0
  79. package/src/Badge/index.js +71 -0
  80. package/src/Blocklet/index.js +424 -0
  81. package/src/Button/index.js +4 -0
  82. package/src/Button/wrap.js +101 -0
  83. package/src/ButtonGroup/index.js +6 -0
  84. package/src/Center/index.js +40 -0
  85. package/src/ClickToCopy/index.js +90 -0
  86. package/src/CodeBlock/index.js +160 -0
  87. package/src/Colors/index.js +1 -0
  88. package/src/Colors/themes/default.js +54 -0
  89. package/src/ContactForm/index.js +240 -0
  90. package/src/CookieConsent/index.js +90 -0
  91. package/src/CountDown/index.js +151 -0
  92. package/src/Dialog/confirm.js +76 -0
  93. package/src/Dialog/dialog.js +162 -0
  94. package/src/Dialog/index.js +2 -0
  95. package/src/DriftBot/index.js +81 -0
  96. package/src/Earth/countries.json +8057 -0
  97. package/src/Earth/index.js +511 -0
  98. package/src/Earth/util.js +69 -0
  99. package/src/Empty/index.js +41 -0
  100. package/src/Footer/index.js +110 -0
  101. package/src/Icon/image.js +55 -0
  102. package/src/Icon/index.js +69 -0
  103. package/src/Img/index.js +172 -0
  104. package/src/InfoRow/index.js +83 -0
  105. package/src/Layout/dashboard/header.js +157 -0
  106. package/src/Layout/dashboard/index.js +150 -0
  107. package/src/Layout/dashboard/sidebar.js +122 -0
  108. package/src/Layout/index.js +318 -0
  109. package/src/Locale/browser-lang.js +63 -0
  110. package/src/Locale/context.js +94 -0
  111. package/src/Locale/images/globe-dark.png +0 -0
  112. package/src/Locale/images/globe-light.png +0 -0
  113. package/src/Locale/selector.js +135 -0
  114. package/src/Logo/images/logo-dark-text.svg +3 -0
  115. package/src/Logo/images/logo-dark-top.svg +6 -0
  116. package/src/Logo/images/logo-light-text.svg +3 -0
  117. package/src/Logo/images/logo-light-top.svg +6 -0
  118. package/src/Logo/index.js +47 -0
  119. package/src/Metric/index.js +115 -0
  120. package/src/NFTDisplay/README.md +59 -0
  121. package/src/NFTDisplay/aspect-ratio-container.js +34 -0
  122. package/src/NFTDisplay/broken.js +18 -0
  123. package/src/NFTDisplay/index.js +257 -0
  124. package/src/NFTDisplay/loading.js +17 -0
  125. package/src/NFTDisplay/svg-embedder/img.js +36 -0
  126. package/src/NFTDisplay/svg-embedder/inline-svg.js +37 -0
  127. package/src/PageScroller/index.js +342 -0
  128. package/src/PageScroller/usePrevValue.js +12 -0
  129. package/src/PricingTable/PricingPlan.js +112 -0
  130. package/src/PricingTable/index.js +43 -0
  131. package/src/Result/common.js +116 -0
  132. package/src/Result/index.js +31 -0
  133. package/src/Result/result.js +57 -0
  134. package/src/Result/translations.js +56 -0
  135. package/src/Screenshot/devices.css +1366 -0
  136. package/src/Screenshot/index.js +181 -0
  137. package/src/Spinner/index.js +19 -0
  138. package/src/SplitButton/index.js +112 -0
  139. package/src/Switch/index.js +78 -0
  140. package/src/Tabs/index.js +46 -0
  141. package/src/Tag/index.js +73 -0
  142. package/src/Terminal/Player.js +364 -0
  143. package/src/Terminal/index.js +150 -0
  144. package/src/Terminal/player.css +378 -0
  145. package/src/Terminal/util.js +167 -0
  146. package/src/Terminal/xterm.css +171 -0
  147. package/src/TextCollapse/index.js +92 -0
  148. package/src/Theme/index.js +184 -0
  149. package/src/Theme/responsiveFontSizes.js +94 -0
  150. package/src/Toast/index.js +118 -0
  151. package/src/Util/index.js +281 -0
  152. package/src/Video/index.js +72 -0
  153. package/src/Wallet/Action.js +105 -0
  154. package/src/Wallet/Download.js +130 -0
  155. package/src/Wallet/Open.js +50 -0
  156. package/src/Wallet/images/abtwallet.png +0 -0
  157. package/src/Wallet/images/android_download.svg +23 -0
  158. package/src/Wallet/images/app-store.svg +20 -0
  159. package/src/Wallet/images/google-play.svg +70 -0
  160. package/src/WechatPrompt/images/android.png +0 -0
  161. package/src/WechatPrompt/images/ios.png +0 -0
  162. package/src/WechatPrompt/index.js +81 -0
  163. package/src/index.js +63 -0
  164. package/src/withTheme/index.js +72 -0
  165. package/src/withTracker/README.md +34 -0
  166. package/src/withTracker/error_boundary.js +34 -0
  167. package/src/withTracker/index.js +70 -0
  168. package/lib/GraphQLPlayground/graphiql.css +0 -1850
  169. package/lib/GraphQLPlayground/index.js +0 -299
  170. package/lib/GraphQLPlayground/util.js +0 -55
@@ -9,12 +9,22 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
- var _Theme = require("../Theme");
12
+ var _Spinner = _interopRequireDefault(require("../Spinner"));
13
+
14
+ var _Colors = _interopRequireDefault(require("../Colors"));
13
15
 
14
16
  var _Util = require("../Util");
15
17
 
18
+ const _excluded = ["children", "rounded", "loading", "disabled", "style", "forwardedRef", "color"];
19
+
16
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
21
 
22
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
23
+
24
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
25
+
26
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
27
+
18
28
  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; }
19
29
 
20
30
  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; }
@@ -26,44 +36,85 @@ function _default(BaseComponent) {
26
36
  const {
27
37
  children,
28
38
  rounded,
39
+ loading,
40
+ disabled,
29
41
  style,
30
- forwardedRef
42
+ forwardedRef,
43
+ color
31
44
  } = newProps,
32
- rest = _objectWithoutProperties(newProps, ["children", "rounded", "style", "forwardedRef"]);
45
+ rest = _objectWithoutProperties(newProps, _excluded);
33
46
 
34
- const styles = Object.assign({}, style, {
35
- boxShadow: 'none',
36
- textTransform: 'capitalize'
37
- });
38
-
39
- if (rest.color === 'danger') {
40
- if (rest.variant === 'contained') {
41
- styles.backgroundColor = _Theme.colors.danger;
42
- styles.color = _Theme.colors.white;
43
- } else {
44
- styles.borderColor = _Theme.colors.danger;
45
- styles.color = _Theme.colors.danger;
46
- }
47
- }
47
+ const isDisabled = disabled || loading;
48
+ let loadingSize = 16;
48
49
 
49
- if (!rest.color || rest.color === 'default') {
50
- if (rest.variant === 'contained') {
51
- styles.backgroundColor = rest.disabled ? _Theme.colors.lightGrey : _Theme.colors.primary;
52
- styles.color = _Theme.colors.white;
53
- } else {
54
- styles.borderColor = rest.disabled ? _Theme.colors.lightGrey : _Theme.colors.primary;
55
- styles.color = rest.disabled ? _Theme.colors.lightGrey : _Theme.colors.primary;
56
- }
50
+ switch (rest.size) {
51
+ case 'small':
52
+ loadingSize = 14;
53
+ break;
54
+
55
+ case 'large':
56
+ loadingSize = 18;
57
+ break;
58
+
59
+ default:
57
60
  }
58
61
 
59
- if (rest.color === 'reverse') {
60
- if (rest.variant === 'contained') {
61
- styles.backgroundColor = 'rgba(255, 255, 255, 0.9)';
62
- styles.color = _Theme.colors.primary;
63
- } else {
64
- styles.borderColor = _Theme.colors.primary;
65
- styles.color = _Theme.colors.primary;
66
- }
62
+ const styles = Object.assign({}, style, {
63
+ boxShadow: 'none',
64
+ textTransform: 'capitalize'
65
+ }); // mui 只支持 4 种 color 值: default/inherit/primary/secondary (传入这 4 种之外的值会报 warning),
66
+ // 这里扩展 danger/warning/reverse 三种 color
67
+
68
+ let _rest = rest;
69
+
70
+ switch (color) {
71
+ case 'error':
72
+ case 'danger':
73
+ {
74
+ if (rest.variant === 'contained') {
75
+ styles.backgroundColor = _Colors.default.error.main;
76
+ styles.color = _Colors.default.common.white;
77
+ } else {
78
+ styles.borderColor = _Colors.default.error.main;
79
+ styles.color = _Colors.default.error.main;
80
+ }
81
+
82
+ break;
83
+ }
84
+
85
+ case 'warning':
86
+ {
87
+ if (rest.variant === 'contained') {
88
+ styles.backgroundColor = _Colors.default.warning.main;
89
+ styles.color = _Colors.default.common.white;
90
+ } else {
91
+ styles.borderColor = _Colors.default.warning.main;
92
+ styles.color = _Colors.default.warning.main;
93
+ }
94
+
95
+ break;
96
+ }
97
+
98
+ case 'reverse':
99
+ {
100
+ if (rest.variant === 'contained') {
101
+ styles.backgroundColor = 'rgba(255, 255, 255, 0.9)';
102
+ styles.color = _Colors.default.grey[900];
103
+ } else {
104
+ styles.borderColor = _Colors.default.grey[900];
105
+ styles.color = _Colors.default.grey[900];
106
+ }
107
+
108
+ break;
109
+ }
110
+ // 除扩展的几种 color 外, 由 mui button 自己处理 color
111
+
112
+ default:
113
+ {
114
+ _rest = _objectSpread(_objectSpread({}, _rest), {}, {
115
+ color
116
+ });
117
+ }
67
118
  }
68
119
 
69
120
  if (rounded) {
@@ -71,10 +122,16 @@ function _default(BaseComponent) {
71
122
  styles.borderRadius = '100vw';
72
123
  }
73
124
 
74
- return _react.default.createElement(BaseComponent, Object.assign({
125
+ return /*#__PURE__*/_react.default.createElement(BaseComponent, Object.assign({
75
126
  style: styles,
76
- ref: forwardedRef
77
- }, rest), children);
127
+ ref: forwardedRef,
128
+ disabled: isDisabled
129
+ }, _rest), loading && /*#__PURE__*/_react.default.createElement(_Spinner.default, {
130
+ size: loadingSize,
131
+ style: {
132
+ marginRight: 5
133
+ }
134
+ }), children);
78
135
  }
79
136
 
80
137
  WrappedComponent.propTypes = {
@@ -90,7 +147,7 @@ function _default(BaseComponent) {
90
147
  forwardedRef: null,
91
148
  style: {}
92
149
  };
93
- return _react.default.forwardRef((props, ref) => _react.default.createElement(WrappedComponent, Object.assign({}, props, {
150
+ return /*#__PURE__*/_react.default.forwardRef((props, ref) => /*#__PURE__*/_react.default.createElement(WrappedComponent, Object.assign({}, props, {
94
151
  forwardedRef: ref
95
152
  })));
96
153
  }
@@ -5,27 +5,14 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
 
8
- var _styledComponents = _interopRequireDefault(require("styled-components"));
9
-
10
8
  var _ButtonGroup = _interopRequireDefault(require("@material-ui/core/ButtonGroup"));
11
9
 
12
10
  var _wrap = _interopRequireDefault(require("../Button/wrap"));
13
11
 
14
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
13
 
16
- const sizes = {
17
- small: 16,
18
- medium: 18,
19
- large: 20
20
- };
21
-
22
- const getBorderRadius = size => sizes[size || 'medium'];
23
-
24
- const StyledButtonGroup = (0, _styledComponents.default)(_ButtonGroup.default).withConfig({
25
- displayName: "ButtonGroup__StyledButtonGroup",
26
- componentId: "sc-1popzk9-0"
27
- })([".MuiButton-root:first-of-type{border-radius:", "px 0 0 ", "px;}.MuiButton-root:last-of-type{border-radius:0 ", "px ", "px 0;}"], props => getBorderRadius(props.size), props => getBorderRadius(props.size), props => getBorderRadius(props.size), props => getBorderRadius(props.size));
28
-
29
- var _default = (0, _wrap.default)(StyledButtonGroup);
14
+ // deprecated, ux ButtonGroup 组件废弃, 建议直接使用 @material-ui/core/ButtonGroup
15
+ // (该定制组件原本目的是调整 ButtonGroup 的圆角, 但最新设计规范已经不再使用较大的圆角, 改为使用 mui button 默认的圆角)
16
+ var _default = (0, _wrap.default)(_ButtonGroup.default);
30
17
 
31
18
  exports.default = _default;
@@ -9,17 +9,43 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _styledComponents = _interopRequireDefault(require("styled-components"));
11
11
 
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
12
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
15
 
14
- // eslint-disable-next-line react/prop-types
16
+ /**
17
+ *
18
+ * @param {string} relative 容器相对尺寸,默认相对屏幕(screen),可设置为父容器(parent)
19
+ * @returns react component element
20
+ */
15
21
  function Center(_ref) {
16
22
  let {
17
- children
23
+ children,
24
+ relative
18
25
  } = _ref;
19
- return _react.default.createElement(Div, null, children);
26
+ let style = {};
27
+
28
+ if (relative === 'parent') {
29
+ style = {
30
+ width: '100%',
31
+ height: '100%'
32
+ };
33
+ }
34
+
35
+ return /*#__PURE__*/_react.default.createElement(Div, {
36
+ style: style
37
+ }, children);
20
38
  }
21
39
 
22
40
  const Div = _styledComponents.default.div.withConfig({
23
41
  displayName: "Center__Div",
24
42
  componentId: "sc-1kmxe8v-0"
25
- })(["flex:1;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;"]);
43
+ })(["flex:1;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;"]);
44
+
45
+ Center.propTypes = {
46
+ children: _propTypes.default.any.isRequired,
47
+ relative: _propTypes.default.string
48
+ };
49
+ Center.defaultProps = {
50
+ relative: 'screen'
51
+ };
@@ -23,11 +23,13 @@ var _Toast = _interopRequireDefault(require("../Toast"));
23
23
 
24
24
  var _Util = require("../Util");
25
25
 
26
+ const _excluded = ["children", "content", "tip", "copiedTip", "tipPlacement", "style"];
27
+
26
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
29
 
28
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
30
+ 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); }
29
31
 
30
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (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; }
32
+ 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; }
31
33
 
32
34
  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; }
33
35
 
@@ -44,11 +46,11 @@ function ClickToCopy(props) {
44
46
  tipPlacement,
45
47
  style
46
48
  } = newProps,
47
- rest = _objectWithoutProperties(newProps, ["children", "content", "tip", "copiedTip", "tipPlacement", "style"]);
49
+ rest = _objectWithoutProperties(newProps, _excluded);
48
50
 
49
51
  const [copied, setCopied] = (0, _react.useState)(false);
50
52
 
51
- const childrenRef = _react.default.createRef();
53
+ const childrenRef = /*#__PURE__*/_react.default.createRef();
52
54
 
53
55
  const {
54
56
  width
@@ -74,12 +76,12 @@ function ClickToCopy(props) {
74
76
  }
75
77
  };
76
78
  });
77
- return _react.default.createElement(_Tooltip.default, Object.assign({
79
+ return /*#__PURE__*/_react.default.createElement(_Tooltip.default, Object.assign({
78
80
  title: copied ? copiedTip : tip
79
81
  }, rest, {
80
82
  placement: tipPlacement,
81
83
  disableFocusListener: true
82
- }), _react.default.createElement(Container, {
84
+ }), /*#__PURE__*/_react.default.createElement(Container, {
83
85
  ref: childrenRef,
84
86
  component: "span",
85
87
  style: Object.assign({
@@ -88,7 +90,7 @@ function ClickToCopy(props) {
88
90
  fontWeight: 'inherit'
89
91
  }, style),
90
92
  onClick: () => onCopy(childrenRef)
91
- }, children || content, copied && width < 600 && _react.default.createElement(_Toast.default, {
93
+ }, children || content, copied && width < 600 && /*#__PURE__*/_react.default.createElement(_Toast.default, {
92
94
  variant: "success",
93
95
  message: copiedTip
94
96
  })));
@@ -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,8 +49,18 @@ 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
+
54
+ var _Colors = _interopRequireDefault(require("../Colors"));
55
+
56
+ const _excluded = ["code", "language", "children"];
57
+
50
58
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
51
59
 
60
+ 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); }
61
+
62
+ 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; }
63
+
52
64
  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; }
53
65
 
54
66
  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; }
@@ -103,27 +115,42 @@ function CodeBlock(_ref) {
103
115
  language,
104
116
  children
105
117
  } = _ref,
106
- rest = _objectWithoutProperties(_ref, ["code", "language", "children"]);
118
+ rest = _objectWithoutProperties(_ref, _excluded);
107
119
 
120
+ const [copied, setCopied] = (0, _react.useState)(false);
121
+ const isMounted = (0, _useMountedState.default)();
108
122
  const source = code || children;
109
123
 
110
124
  const onCopy = () => {
111
125
  (0, _copyToClipboard.default)(source);
126
+ setCopied(true); // 恢复 copied 状态
127
+
128
+ setTimeout(() => {
129
+ if (isMounted()) {
130
+ setCopied(false);
131
+ }
132
+ }, 1500);
112
133
  };
113
134
 
114
- return _react.default.createElement(Pre, rest, _react.default.createElement("span", {
135
+ return /*#__PURE__*/_react.default.createElement(Pre, rest, /*#__PURE__*/_react.default.createElement("span", {
115
136
  className: "codeblock__inner"
116
- }, _react.default.createElement("code", {
137
+ }, /*#__PURE__*/_react.default.createElement("code", {
117
138
  className: "hljs ".concat(language),
118
139
  dangerouslySetInnerHTML: {
119
140
  __html: _highlight.default.highlightAuto(source, [language]).value
120
141
  }
121
- })), _react.default.createElement(_IconButton.default, {
142
+ })), /*#__PURE__*/_react.default.createElement(_IconButton.default, {
122
143
  className: "copy-button",
123
144
  onClick: onCopy,
124
145
  tabIndex: "-1",
125
- color: "primary"
126
- }, _react.default.createElement(_FileCopy.default, {
146
+ color: "primary",
147
+ disabled: copied
148
+ }, !copied && /*#__PURE__*/_react.default.createElement(_FileCopy.default, {
149
+ style: {
150
+ color: '#fff',
151
+ fontSize: 16
152
+ }
153
+ }), copied && /*#__PURE__*/_react.default.createElement(_Check.default, {
127
154
  style: {
128
155
  color: '#fff',
129
156
  fontSize: 16
@@ -146,4 +173,4 @@ const fontFamily = 'source-code-pro, Menlo, Monaco, Consolas, Courier New, monos
146
173
  const Pre = _styledComponents.default.pre.withConfig({
147
174
  displayName: "CodeBlock__Pre",
148
175
  componentId: "sc-1bpapaq-0"
149
- })(["font-family:", ";display:block;font-size:14px;line-height:1.42857143;margin:0 0 32px;word-break:break-word;word-wrap:break-word;text-align:left;border-radius:5px;border:1px solid #dedede;background:#222;color:#fff;position:relative;.codeblock__inner{display:block;width:100%;max-height:46.25rem;overflow:scroll;}.copy-button{display:none;position:absolute;top:8px;right:24px;}&:hover{.copy-button{display:block;}}code{counter-reset:line;counter-increment:line;padding:16px;font-family:", ";color:#fff;*{font-family:", ";}}.hljs *{white-space:normal;}"], fontFamily, fontFamily, fontFamily);
176
+ })(["font-family:", ";display:block;font-size:14px;line-height:1.42857143;margin:0 0 32px;word-break:break-word;word-wrap:break-word;text-align:left;border-radius:5px;border:1px solid #dedede;background:#222;color:#fff;position:relative;.codeblock__inner{display:block;width:100%;max-height:46.25rem;overflow:scroll;}.copy-button{display:none;position:absolute;top:8px;right:24px;padding:4px;border-radius:4px;&,&:hover,&.Mui-disabled{background:", ";}}&:hover{.copy-button{display:block;}}code{counter-reset:line;counter-increment:line;padding:16px;font-family:", ";color:#fff;*{font-family:", ";}}.hljs *{white-space:normal;}"], fontFamily, _Colors.default.primary.main, fontFamily, fontFamily);
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "default", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _default.default;
10
+ }
11
+ });
12
+
13
+ var _default = _interopRequireDefault(require("./themes/default"));
14
+
15
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ /**
9
+ * 默认 colors, ABT 系列
10
+ *
11
+ * - colors object 结构是在 mui theme#palette object 基础上调整后的结构
12
+ * - 色值在 mui default theme 基础上将 figma 中常用的 colors 进行覆盖
13
+ * - 扩展一些常用色值 (如 DID 系列)
14
+ * - figma: https://www.figma.com/file/1qHyMF137EXOQpSFVByszG/UX-Library?node-id=295%3A1518
15
+ */
16
+ const colors = {
17
+ common: {
18
+ black: '#000',
19
+ white: '#fff'
20
+ },
21
+ primary: {
22
+ main: '#3773F2',
23
+ contrastText: '#fff'
24
+ },
25
+ // override
26
+ secondary: {
27
+ main: '#16CED1',
28
+ contrastText: '#fff'
29
+ },
30
+ // override
31
+ error: {
32
+ main: '#F16E6E',
33
+ contrastText: '#fff'
34
+ },
35
+ // override
36
+ warning: {
37
+ main: '#DE9E37',
38
+ contrastText: '#fff'
39
+ },
40
+ // override
41
+ info: {
42
+ main: '#0775F8',
43
+ contrastText: '#fff'
44
+ },
45
+ // override
46
+ success: {
47
+ main: '#34BE74',
48
+ contrastText: '#fff'
49
+ },
50
+ // override
51
+ grey: {
52
+ 50: '#fafafa',
53
+ 100: '#f5f5f5',
54
+ 200: '#eeeeee',
55
+ 300: '#e0e0e0',
56
+ 400: '#bdbdbd',
57
+ 500: '#9e9e9e',
58
+ 600: '#757575',
59
+ 700: '#616161',
60
+ 800: '#424242',
61
+ 900: '#212121',
62
+ A100: '#d5d5d5',
63
+ A200: '#aaaaaa',
64
+ A400: '#303030',
65
+ A700: '#616161'
66
+ },
67
+ text: {
68
+ primary: 'rgba(0, 0, 0, 0.87)',
69
+ secondary: 'rgba(0, 0, 0, 0.54)',
70
+ disabled: 'rgba(0, 0, 0, 0.38)',
71
+ hint: 'rgba(0, 0, 0, 0.38)'
72
+ },
73
+ divider: 'rgba(0, 0, 0, 0.12)',
74
+ background: {
75
+ default: '#fff'
76
+ },
77
+ // 扩展色值, 适用于 did 相关的组件, 如果某些产品整体风格是 did 系列, 可以扩展出一个 did 系列的 theme
78
+ did: {
79
+ primary: '#4598FA',
80
+ secondary: '#49C3AD'
81
+ } // TODO: 等设计规范稳定后, 考虑扩展 trade 相关的常用颜色 (send/receive/exchange/transfer)
82
+
83
+ };
84
+ var _default = colors;
85
+ exports.default = _default;
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.submitContactForm = submitContactForm;
7
6
  exports.default = void 0;
7
+ exports.submitContactForm = submitContactForm;
8
8
 
9
9
  var _react = _interopRequireDefault(require("react"));
10
10
 
@@ -131,19 +131,19 @@ class ContactForm extends _react.default.Component {
131
131
  errorMessage,
132
132
  successMessage
133
133
  } = this.state;
134
- return _react.default.createElement(Form, {
134
+ return /*#__PURE__*/_react.default.createElement(Form, {
135
135
  onSubmit: this.onSubmit,
136
136
  className: className,
137
137
  style: style,
138
138
  layout: layout,
139
139
  fieldCount: this.fields.length,
140
140
  name: "subscribe"
141
- }, !!title && _react.default.createElement(_Typography.default, {
141
+ }, !!title && /*#__PURE__*/_react.default.createElement(_Typography.default, {
142
142
  component: "p",
143
143
  className: "title"
144
- }, title), _react.default.createElement("div", {
144
+ }, title), /*#__PURE__*/_react.default.createElement("div", {
145
145
  className: "form-controls"
146
- }, this.fields.map(x => _react.default.createElement("input", {
146
+ }, this.fields.map(x => /*#__PURE__*/_react.default.createElement("input", {
147
147
  required: true,
148
148
  key: x,
149
149
  type: "text",
@@ -151,16 +151,16 @@ class ContactForm extends _react.default.Component {
151
151
  onChange: this.getInputHandler(x),
152
152
  className: "input",
153
153
  placeholder: x
154
- })), _react.default.createElement(_Button.default, {
154
+ })), /*#__PURE__*/_react.default.createElement(_Button.default, {
155
155
  variant: "outlined",
156
156
  type: "submit",
157
157
  color: "default",
158
158
  size: "large",
159
159
  disabled: loading,
160
160
  className: "subscribe-btn-empty"
161
- }, loading ? _react.default.createElement(_CircularProgress.default, {
161
+ }, loading ? /*#__PURE__*/_react.default.createElement(_CircularProgress.default, {
162
162
  size: 28
163
- }) : button)), !!errorMessage && _react.default.createElement(_Typography.default, {
163
+ }) : button)), !!errorMessage && /*#__PURE__*/_react.default.createElement(_Typography.default, {
164
164
  component: "p",
165
165
  variant: "body1",
166
166
  className: "error",
@@ -168,7 +168,7 @@ class ContactForm extends _react.default.Component {
168
168
  dangerouslySetInnerHTML: {
169
169
  __html: errorMessage
170
170
  }
171
- }), !!successMessage && _react.default.createElement(_Typography.default, {
171
+ }), !!successMessage && /*#__PURE__*/_react.default.createElement(_Typography.default, {
172
172
  component: "p",
173
173
  variant: "body1",
174
174
  className: "success",
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = DefaultCookieConsent;
7
+ Object.defineProperty(exports, "resetCookieConsentValue", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _reactCookieConsent.resetCookieConsentValue;
11
+ }
12
+ });
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _propTypes = _interopRequireDefault(require("prop-types"));
17
+
18
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
19
+
20
+ var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
21
+
22
+ var _reactCookieConsent = _interopRequireWildcard(require("react-cookie-consent"));
23
+
24
+ const _excluded = ["children", "locale", "style"];
25
+
26
+ 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); }
27
+
28
+ 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; }
29
+
30
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
+
32
+ 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; }
33
+
34
+ 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; }
35
+
36
+ const translations = {
37
+ en: {
38
+ content: 'We use cookies and other tracking technologies to improve your browsing experience on our website, to show you personalized content, to analyze our website traffic, and to understand where our visitors are coming from.',
39
+ agree: 'I Understand'
40
+ },
41
+ zh: {
42
+ content: '我们使用 cookies 和其他跟踪技术来改善您在我们网站上的浏览体验,向您展示个性化的内容,分析我们的网站流量,并了解我们的访问者来自哪里。',
43
+ agree: '我知道了'
44
+ }
45
+ };
46
+ /**
47
+ * DefaultCookieConsent, 对 react-cookie-consent package 封装, 以便 arcblock 内部产品可以快速使用
48
+ * - 默认内容
49
+ * - 默认配置/样式
50
+ */
51
+
52
+ function DefaultCookieConsent(_ref) {
53
+ let {
54
+ children,
55
+ locale,
56
+ style
57
+ } = _ref,
58
+ rest = _objectWithoutProperties(_ref, _excluded);
59
+
60
+ if (locale && !translations[locale]) {
61
+ // eslint-disable-next-line no-param-reassign
62
+ locale = 'en';
63
+ }
64
+
65
+ return /*#__PURE__*/_react.default.createElement(Wrapper, {
66
+ style: style
67
+ }, /*#__PURE__*/_react.default.createElement(_reactCookieConsent.default, Object.assign({
68
+ disableStyles: true,
69
+ disableButtonStyles: true,
70
+ ButtonComponent: _Button.default,
71
+ buttonText: translations[locale].agree,
72
+ buttonClasses: "MuiButton-contained MuiButton-containedPrimary",
73
+ buttonStyle: {
74
+ marginTop: 16,
75
+ padding: '6px 16px'
76
+ }
77
+ }, rest), children || /*#__PURE__*/_react.default.createElement("p", {
78
+ style: {
79
+ margin: 0
80
+ }
81
+ }, translations[locale].content)));
82
+ }
83
+
84
+ DefaultCookieConsent.propTypes = {
85
+ children: _propTypes.default.any,
86
+ style: _propTypes.default.object,
87
+ locale: _propTypes.default.string
88
+ };
89
+ DefaultCookieConsent.defaultProps = {
90
+ children: null,
91
+ style: {},
92
+ locale: 'en'
93
+ };
94
+
95
+ const Wrapper = _styledComponents.default.div.withConfig({
96
+ displayName: "CookieConsent__Wrapper",
97
+ componentId: "sc-xilwg4-0"
98
+ })(["box-sizing:border-box;position:fixed;right:20px;bottom:20px;z-index:999;max-width:440px;padding:16px 24px;font-size:16px;color:#666;background:#fff;border-radius:6px;box-shadow:0 0 18px rgba(0,0,0,0.2);&:empty{display:none;}button{min-width:200px;}@media screen and (max-width:480px){left:16px;right:16px;bottom:16px;width:auto;button{display:block;width:100%;}}"]);