@arcblock/ux 0.78.26 → 1.6.60

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 (174) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +0 -56
  3. package/lib/ActionButton/index.js +6 -4
  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 +17 -15
  8. package/lib/Blocklet/index.js +261 -0
  9. package/lib/Button/wrap.js +96 -43
  10. package/lib/ButtonGroup/index.js +3 -16
  11. package/lib/Center/index.js +30 -4
  12. package/lib/ClickToCopy/index.js +10 -8
  13. package/lib/CodeBlock/index.js +40 -13
  14. package/lib/Colors/index.js +15 -0
  15. package/lib/Colors/themes/default.js +85 -0
  16. package/lib/ContactForm/index.js +9 -10
  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 +33 -33
  23. package/lib/Empty/index.js +61 -0
  24. package/lib/Footer/index.js +16 -18
  25. package/lib/Icon/image.js +10 -13
  26. package/lib/Icon/index.js +10 -8
  27. package/lib/Img/index.js +212 -0
  28. package/lib/InfoRow/index.js +7 -6
  29. package/lib/Layout/dashboard/header.js +60 -42
  30. package/lib/Layout/dashboard/index.js +72 -60
  31. package/lib/Layout/dashboard/sidebar.js +41 -25
  32. package/lib/Layout/index.js +113 -51
  33. package/lib/Locale/browser-lang.js +0 -2
  34. package/lib/Locale/context.js +85 -61
  35. package/lib/Locale/selector.js +33 -20
  36. package/lib/Logo/index.js +15 -13
  37. package/lib/Metric/index.js +5 -6
  38. package/lib/NFTDisplay/README.md +59 -0
  39. package/lib/NFTDisplay/aspect-ratio-container.js +52 -0
  40. package/lib/NFTDisplay/broken.js +25 -0
  41. package/lib/NFTDisplay/index.js +317 -0
  42. package/lib/NFTDisplay/loading.js +23 -0
  43. package/lib/NFTDisplay/svg-embedder/img.js +68 -0
  44. package/lib/NFTDisplay/svg-embedder/inline-svg.js +54 -0
  45. package/lib/PageScroller/index.js +10 -11
  46. package/lib/PageScroller/usePrevValue.js +2 -2
  47. package/lib/PricingTable/PricingPlan.js +12 -15
  48. package/lib/PricingTable/index.js +5 -5
  49. package/lib/QRCode/index.js +89 -0
  50. package/lib/Result/common.js +176 -0
  51. package/lib/Result/index.js +61 -0
  52. package/lib/Result/result.js +69 -0
  53. package/lib/Result/translations.js +61 -0
  54. package/lib/Screenshot/index.js +14 -13
  55. package/lib/Spinner/index.js +37 -0
  56. package/lib/SplitButton/index.js +126 -0
  57. package/lib/Switch/index.js +107 -0
  58. package/lib/Tabs/index.js +24 -47
  59. package/lib/Tag/index.js +15 -13
  60. package/lib/Terminal/Player.js +43 -45
  61. package/lib/Terminal/index.js +3 -1
  62. package/lib/Terminal/util.js +2 -3
  63. package/lib/TextCollapse/index.js +21 -14
  64. package/lib/Theme/index.js +79 -63
  65. package/lib/Theme/responsiveFontSizes.js +8 -8
  66. package/lib/Toast/index.js +12 -11
  67. package/lib/Util/index.js +197 -26
  68. package/lib/Video/index.js +8 -11
  69. package/lib/Wallet/Action.js +15 -13
  70. package/lib/Wallet/Download.js +60 -58
  71. package/lib/Wallet/Open.js +2 -2
  72. package/lib/WechatPrompt/index.js +10 -10
  73. package/lib/index.js +6 -6
  74. package/lib/withTheme/index.js +5 -17
  75. package/lib/withTracker/error_boundary.js +3 -3
  76. package/lib/withTracker/index.js +6 -7
  77. package/package.json +23 -17
  78. package/src/ActionButton/index.js +65 -0
  79. package/src/ActivityIndicator/index.js +141 -0
  80. package/src/Alert/index.js +104 -0
  81. package/src/Async/index.js +39 -0
  82. package/src/Badge/index.js +71 -0
  83. package/src/Blocklet/index.js +424 -0
  84. package/src/Button/index.js +4 -0
  85. package/src/Button/wrap.js +101 -0
  86. package/src/ButtonGroup/index.js +6 -0
  87. package/src/Center/index.js +40 -0
  88. package/src/ClickToCopy/index.js +90 -0
  89. package/src/CodeBlock/index.js +160 -0
  90. package/src/Colors/index.js +1 -0
  91. package/src/Colors/themes/default.js +54 -0
  92. package/src/ContactForm/index.js +240 -0
  93. package/src/CookieConsent/index.js +90 -0
  94. package/src/CountDown/index.js +151 -0
  95. package/src/Dialog/confirm.js +76 -0
  96. package/src/Dialog/dialog.js +162 -0
  97. package/src/Dialog/index.js +2 -0
  98. package/src/DriftBot/index.js +81 -0
  99. package/src/Earth/countries.json +8057 -0
  100. package/src/Earth/index.js +511 -0
  101. package/src/Earth/util.js +69 -0
  102. package/src/Empty/index.js +41 -0
  103. package/src/Footer/index.js +110 -0
  104. package/src/Icon/image.js +55 -0
  105. package/src/Icon/index.js +69 -0
  106. package/src/Img/index.js +172 -0
  107. package/src/InfoRow/index.js +83 -0
  108. package/src/Layout/dashboard/header.js +157 -0
  109. package/src/Layout/dashboard/index.js +150 -0
  110. package/src/Layout/dashboard/sidebar.js +122 -0
  111. package/src/Layout/index.js +318 -0
  112. package/src/Locale/browser-lang.js +63 -0
  113. package/src/Locale/context.js +94 -0
  114. package/src/Locale/images/globe-dark.png +0 -0
  115. package/src/Locale/images/globe-light.png +0 -0
  116. package/src/Locale/selector.js +135 -0
  117. package/src/Logo/images/logo-dark-text.svg +3 -0
  118. package/src/Logo/images/logo-dark-top.svg +6 -0
  119. package/src/Logo/images/logo-light-text.svg +3 -0
  120. package/src/Logo/images/logo-light-top.svg +6 -0
  121. package/src/Logo/index.js +47 -0
  122. package/src/Metric/index.js +115 -0
  123. package/src/NFTDisplay/README.md +59 -0
  124. package/src/NFTDisplay/aspect-ratio-container.js +34 -0
  125. package/src/NFTDisplay/broken.js +18 -0
  126. package/src/NFTDisplay/index.js +257 -0
  127. package/src/NFTDisplay/loading.js +17 -0
  128. package/src/NFTDisplay/svg-embedder/img.js +36 -0
  129. package/src/NFTDisplay/svg-embedder/inline-svg.js +37 -0
  130. package/src/PageScroller/index.js +342 -0
  131. package/src/PageScroller/usePrevValue.js +12 -0
  132. package/src/PricingTable/PricingPlan.js +112 -0
  133. package/src/PricingTable/index.js +43 -0
  134. package/src/QRCode/index.js +56 -0
  135. package/src/Result/common.js +116 -0
  136. package/src/Result/index.js +31 -0
  137. package/src/Result/result.js +57 -0
  138. package/src/Result/translations.js +56 -0
  139. package/src/Screenshot/devices.css +1366 -0
  140. package/src/Screenshot/index.js +181 -0
  141. package/src/Spinner/index.js +19 -0
  142. package/src/SplitButton/index.js +112 -0
  143. package/src/Switch/index.js +78 -0
  144. package/src/Tabs/index.js +46 -0
  145. package/src/Tag/index.js +73 -0
  146. package/src/Terminal/Player.js +364 -0
  147. package/src/Terminal/index.js +150 -0
  148. package/src/Terminal/player.css +378 -0
  149. package/src/Terminal/util.js +167 -0
  150. package/src/Terminal/xterm.css +171 -0
  151. package/src/TextCollapse/index.js +92 -0
  152. package/src/Theme/index.js +184 -0
  153. package/src/Theme/responsiveFontSizes.js +94 -0
  154. package/src/Toast/index.js +118 -0
  155. package/src/Util/index.js +281 -0
  156. package/src/Video/index.js +72 -0
  157. package/src/Wallet/Action.js +105 -0
  158. package/src/Wallet/Download.js +130 -0
  159. package/src/Wallet/Open.js +50 -0
  160. package/src/Wallet/images/abtwallet.png +0 -0
  161. package/src/Wallet/images/android_download.svg +23 -0
  162. package/src/Wallet/images/app-store.svg +20 -0
  163. package/src/Wallet/images/google-play.svg +70 -0
  164. package/src/WechatPrompt/images/android.png +0 -0
  165. package/src/WechatPrompt/images/ios.png +0 -0
  166. package/src/WechatPrompt/index.js +81 -0
  167. package/src/index.js +63 -0
  168. package/src/withTheme/index.js +72 -0
  169. package/src/withTracker/README.md +34 -0
  170. package/src/withTracker/error_boundary.js +34 -0
  171. package/src/withTracker/index.js +70 -0
  172. package/lib/GraphQLPlayground/graphiql.css +0 -1850
  173. package/lib/GraphQLPlayground/index.js +0 -302
  174. package/lib/GraphQLPlayground/util.js +0 -55
@@ -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"));
@@ -45,10 +47,20 @@ var _plaintext = _interopRequireDefault(require("highlight.js/lib/languages/plai
45
47
 
46
48
  require("highlight.js/styles/atom-one-dark.css");
47
49
 
48
- var _Icon = _interopRequireDefault(require("../Icon"));
50
+ var _FileCopy = _interopRequireDefault(require("@material-ui/icons/FileCopy"));
51
+
52
+ var _Check = _interopRequireDefault(require("@material-ui/icons/Check"));
53
+
54
+ var _Colors = _interopRequireDefault(require("../Colors"));
55
+
56
+ const _excluded = ["code", "language", "children"];
49
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; }
@@ -95,8 +107,7 @@ _highlight.default.registerLanguage('swift', _swift.default);
95
107
 
96
108
  _highlight.default.registerLanguage('objectivec', _objectivec.default);
97
109
 
98
- _highlight.default.registerLanguage('oc', _objectivec.default); // eslint-disable-next-line object-curly-newline
99
-
110
+ _highlight.default.registerLanguage('oc', _objectivec.default);
100
111
 
101
112
  function CodeBlock(_ref) {
102
113
  let {
@@ -104,29 +115,45 @@ function CodeBlock(_ref) {
104
115
  language,
105
116
  children
106
117
  } = _ref,
107
- rest = _objectWithoutProperties(_ref, ["code", "language", "children"]);
118
+ rest = _objectWithoutProperties(_ref, _excluded);
108
119
 
120
+ const [copied, setCopied] = (0, _react.useState)(false);
121
+ const isMounted = (0, _useMountedState.default)();
109
122
  const source = code || children;
110
123
 
111
124
  const onCopy = () => {
112
125
  (0, _copyToClipboard.default)(source);
126
+ setCopied(true); // 恢复 copied 状态
127
+
128
+ setTimeout(() => {
129
+ if (isMounted()) {
130
+ setCopied(false);
131
+ }
132
+ }, 1500);
113
133
  };
114
134
 
115
- return _react.default.createElement(Pre, rest, _react.default.createElement("code", {
135
+ return /*#__PURE__*/_react.default.createElement(Pre, rest, /*#__PURE__*/_react.default.createElement("span", {
136
+ className: "codeblock__inner"
137
+ }, /*#__PURE__*/_react.default.createElement("code", {
116
138
  className: "hljs ".concat(language),
117
139
  dangerouslySetInnerHTML: {
118
140
  __html: _highlight.default.highlightAuto(source, [language]).value
119
141
  }
120
- }), _react.default.createElement(_IconButton.default, {
142
+ })), /*#__PURE__*/_react.default.createElement(_IconButton.default, {
121
143
  className: "copy-button",
122
144
  onClick: onCopy,
123
145
  tabIndex: "-1",
124
- color: "primary"
125
- }, _react.default.createElement(_Icon.default, {
126
- name: "copy",
127
- size: 16,
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, {
128
154
  style: {
129
- color: '#fff'
155
+ color: '#fff',
156
+ fontSize: 16
130
157
  }
131
158
  })));
132
159
  }
@@ -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
- })(["overflow:scroll;max-height:46.25rem;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;.copy-button{display:none;position:absolute;top:8px;right:8px;}&: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
 
@@ -119,7 +119,6 @@ class ContactForm extends _react.default.Component {
119
119
  }
120
120
 
121
121
  render() {
122
- // eslint-disable-next-line object-curly-newline
123
122
  const {
124
123
  className,
125
124
  style,
@@ -132,19 +131,19 @@ class ContactForm extends _react.default.Component {
132
131
  errorMessage,
133
132
  successMessage
134
133
  } = this.state;
135
- return _react.default.createElement(Form, {
134
+ return /*#__PURE__*/_react.default.createElement(Form, {
136
135
  onSubmit: this.onSubmit,
137
136
  className: className,
138
137
  style: style,
139
138
  layout: layout,
140
139
  fieldCount: this.fields.length,
141
140
  name: "subscribe"
142
- }, !!title && _react.default.createElement(_Typography.default, {
141
+ }, !!title && /*#__PURE__*/_react.default.createElement(_Typography.default, {
143
142
  component: "p",
144
143
  className: "title"
145
- }, title), _react.default.createElement("div", {
144
+ }, title), /*#__PURE__*/_react.default.createElement("div", {
146
145
  className: "form-controls"
147
- }, this.fields.map(x => _react.default.createElement("input", {
146
+ }, this.fields.map(x => /*#__PURE__*/_react.default.createElement("input", {
148
147
  required: true,
149
148
  key: x,
150
149
  type: "text",
@@ -152,16 +151,16 @@ class ContactForm extends _react.default.Component {
152
151
  onChange: this.getInputHandler(x),
153
152
  className: "input",
154
153
  placeholder: x
155
- })), _react.default.createElement(_Button.default, {
154
+ })), /*#__PURE__*/_react.default.createElement(_Button.default, {
156
155
  variant: "outlined",
157
156
  type: "submit",
158
157
  color: "default",
159
158
  size: "large",
160
159
  disabled: loading,
161
160
  className: "subscribe-btn-empty"
162
- }, loading ? _react.default.createElement(_CircularProgress.default, {
161
+ }, loading ? /*#__PURE__*/_react.default.createElement(_CircularProgress.default, {
163
162
  size: 28
164
- }) : button)), !!errorMessage && _react.default.createElement(_Typography.default, {
163
+ }) : button)), !!errorMessage && /*#__PURE__*/_react.default.createElement(_Typography.default, {
165
164
  component: "p",
166
165
  variant: "body1",
167
166
  className: "error",
@@ -169,7 +168,7 @@ class ContactForm extends _react.default.Component {
169
168
  dangerouslySetInnerHTML: {
170
169
  __html: errorMessage
171
170
  }
172
- }), !!successMessage && _react.default.createElement(_Typography.default, {
171
+ }), !!successMessage && /*#__PURE__*/_react.default.createElement(_Typography.default, {
173
172
  component: "p",
174
173
  variant: "body1",
175
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%;}}"]);
@@ -13,6 +13,8 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
13
13
 
14
14
  var _Util = require("../Util");
15
15
 
16
+ const _excluded = ["dark", "endTime"];
17
+
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
19
 
18
20
  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,15 +55,17 @@ function FixWidthNumber(_ref) {
53
55
  }
54
56
 
55
57
  const numbers = str.split('');
56
- return _react.default.createElement("span", {
58
+ return /*#__PURE__*/_react.default.createElement("span", {
57
59
  className: "num-group"
58
- }, _react.default.createElement("span", {
60
+ }, /*#__PURE__*/_react.default.createElement("span", {
59
61
  className: "num-items"
60
- }, numbers.map((x, i) => // eslint-disable-next-line react/no-array-index-key
62
+ }, numbers.map((x, i) =>
63
+ /*#__PURE__*/
64
+ // eslint-disable-next-line react/no-array-index-key
61
65
  _react.default.createElement("strong", {
62
66
  key: "num-".concat(i),
63
67
  className: "num-item"
64
- }, x))), _react.default.createElement("span", {
68
+ }, x))), /*#__PURE__*/_react.default.createElement("span", {
65
69
  className: "num-label"
66
70
  }, label));
67
71
  }
@@ -100,7 +104,7 @@ class CountDown extends _react.default.Component {
100
104
  dark,
101
105
  endTime
102
106
  } = _this$props,
103
- rest = _objectWithoutProperties(_this$props, ["dark", "endTime"]);
107
+ rest = _objectWithoutProperties(_this$props, _excluded);
104
108
 
105
109
  const {
106
110
  days,
@@ -108,24 +112,24 @@ class CountDown extends _react.default.Component {
108
112
  minutes,
109
113
  seconds
110
114
  } = this.state;
111
- return _react.default.createElement(Container, Object.assign({
115
+ return /*#__PURE__*/_react.default.createElement(Container, Object.assign({
112
116
  dark: dark
113
- }, rest), _react.default.createElement(FixWidthNumber, {
117
+ }, rest), /*#__PURE__*/_react.default.createElement(FixWidthNumber, {
114
118
  number: days,
115
119
  label: "D"
116
- }), _react.default.createElement("span", {
120
+ }), /*#__PURE__*/_react.default.createElement("span", {
117
121
  className: "num-sep"
118
- }, ":"), _react.default.createElement(FixWidthNumber, {
122
+ }, ":"), /*#__PURE__*/_react.default.createElement(FixWidthNumber, {
119
123
  number: hours,
120
124
  label: "H"
121
- }), _react.default.createElement("span", {
125
+ }), /*#__PURE__*/_react.default.createElement("span", {
122
126
  className: "num-sep"
123
- }, ":"), _react.default.createElement(FixWidthNumber, {
127
+ }, ":"), /*#__PURE__*/_react.default.createElement(FixWidthNumber, {
124
128
  number: minutes,
125
129
  label: "M"
126
- }), _react.default.createElement("span", {
130
+ }), /*#__PURE__*/_react.default.createElement("span", {
127
131
  className: "num-sep"
128
- }, ":"), _react.default.createElement(FixWidthNumber, {
132
+ }, ":"), /*#__PURE__*/_react.default.createElement(FixWidthNumber, {
129
133
  number: seconds,
130
134
  label: "S"
131
135
  }));
@@ -148,5 +152,5 @@ const textBackground = "linear-gradient(to bottom, rgba(0, 0, 0, 0.4), rgba(0, 0
148
152
 
149
153
  const Container = _styledComponents.default.div.withConfig({
150
154
  displayName: "CountDown__Container",
151
- componentId: "i2a9gr-0"
155
+ componentId: "sc-i2a9gr-0"
152
156
  })(["color:", ";font-size:50px;display:flex;flex-direction:row;justify-content:center;align-items:flex-start;.num-group{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0 60px;@media (max-width:", "px){margin:0 20px;}@media (max-width:", "px){margin:0;}.num-items{display:flex;flex-direction:row;}.num-item{display:inline-block;width:40px;height:60px;line-height:60px;background-image:", ";text-align:center;&:first-of-type{margin-right:10px;@media (max-width:", "px){margin:0;}}}.num-label{margin-top:20px;font-size:24px;color:", ";}}"], props => (0, _Util.getColor)(props), props => props.theme.breakpoints.values.md, props => props.theme.breakpoints.values.sm, props => props.dark ? textBackground : 'none', props => props.theme.breakpoints.values.sm, props => (0, _Util.getColor)(props));
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = Confirm;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+
12
+ var _Button = _interopRequireDefault(require("../Button"));
13
+
14
+ var _dialog = _interopRequireDefault(require("./dialog"));
15
+
16
+ const _excluded = ["title", "children", "onConfirm", "onCancel", "showCancelButton", "confirmButton", "cancelButton", "PaperProps"];
17
+
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+
20
+ 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; }
21
+
22
+ 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; }
23
+
24
+ // 注意排在 {...rest} 之后的 props 优先级更高
25
+ function Confirm(_ref) {
26
+ let {
27
+ title,
28
+ children,
29
+ onConfirm,
30
+ onCancel,
31
+ showCancelButton,
32
+ confirmButton,
33
+ cancelButton,
34
+ PaperProps
35
+ } = _ref,
36
+ rest = _objectWithoutProperties(_ref, _excluded);
37
+
38
+ // 去除 dialog 默认的 300 最小高度
39
+ PaperProps.style = Object.assign({
40
+ minHeight: 0
41
+ }, PaperProps.style);
42
+ return /*#__PURE__*/_react.default.createElement(_dialog.default, Object.assign({
43
+ title: title,
44
+ PaperProps: PaperProps
45
+ }, rest, {
46
+ onClose: () => onCancel(),
47
+ actions: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, showCancelButton && /*#__PURE__*/_react.default.createElement(_Button.default, Object.assign({
48
+ onClick: () => onCancel(),
49
+ color: "primary"
50
+ }, cancelButton.props), cancelButton.text), /*#__PURE__*/_react.default.createElement(_Button.default, Object.assign({
51
+ onClick: () => onConfirm(),
52
+ color: "primary",
53
+ autoFocus: true
54
+ }, confirmButton.props), confirmButton.text))
55
+ }), children);
56
+ }
57
+
58
+ Confirm.propTypes = {
59
+ title: _propTypes.default.node.isRequired,
60
+ children: _propTypes.default.node.isRequired,
61
+ onConfirm: _propTypes.default.func.isRequired,
62
+ onCancel: _propTypes.default.func.isRequired,
63
+ showCancelButton: _propTypes.default.bool,
64
+ // 可以传入 {text: ..., props: ...}
65
+ confirmButton: _propTypes.default.shape({
66
+ text: _propTypes.default.string.isRequired,
67
+ props: _propTypes.default.object
68
+ }),
69
+ cancelButton: _propTypes.default.shape({
70
+ text: _propTypes.default.string.isRequired,
71
+ props: _propTypes.default.object
72
+ }),
73
+ PaperProps: _propTypes.default.object
74
+ };
75
+ Confirm.defaultProps = {
76
+ showCancelButton: true,
77
+ confirmButton: {
78
+ text: 'Confirm'
79
+ },
80
+ cancelButton: {
81
+ text: 'Cancel'
82
+ },
83
+ PaperProps: {}
84
+ };