@antv/dumi-theme-antv 0.6.4-alpha.4 → 0.6.4-alpha.5

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.
@@ -13,16 +13,15 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
13
13
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
14
14
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
15
15
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
16
- import { CaretDownFilled, CheckOutlined, DownOutlined, GithubOutlined, LinkOutlined, MenuOutlined, WechatOutlined } from '@ant-design/icons';
16
+ import { CaretDownFilled, DownOutlined, GithubOutlined, LinkOutlined, MenuOutlined, WechatOutlined } from '@ant-design/icons';
17
17
  import { Alert, Button, Dropdown, Menu, Modal, Popover, Select } from 'antd';
18
18
  import cx from 'classnames';
19
19
  import { FormattedMessage, Link, useLocale, useSiteData } from 'dumi';
20
20
  import { get, map, size } from 'lodash-es';
21
- import React, { useEffect, useMemo, useState } from 'react';
22
- import { useNavigate } from 'react-router-dom';
21
+ import React, { useEffect, useState } from 'react';
23
22
  import { useMedia } from 'react-use';
24
23
  import { getPurePathname } from "../../utils/location";
25
- import { ic } from "../hooks";
24
+ import { ic, icWithLocale } from "../hooks";
26
25
  import { Navs } from "./Navs";
27
26
  import { Products } from "./Products";
28
27
  import { Search } from "./Search";
@@ -41,6 +40,7 @@ var ANNOUNCEMENT_LOCALSTORAGE_ID = 'ANNOUNCEMENT_LOCALSTORAGE_ID';
41
40
  * 头部菜单
42
41
  */
43
42
  var HeaderComponent = function HeaderComponent(_ref) {
43
+ var _announcement$link;
44
44
  var _ref$subTitle = _ref.subTitle,
45
45
  subTitle = _ref$subTitle === void 0 ? '' : _ref$subTitle,
46
46
  _ref$navs = _ref.navs,
@@ -84,6 +84,8 @@ var HeaderComponent = function HeaderComponent(_ref) {
84
84
  _useState4 = _slicedToArray(_useState3, 2),
85
85
  chinaMirrorHintVisible = _useState4[0],
86
86
  updateChinaMirrorHintVisible = _useState4[1];
87
+ var locale = useLocale();
88
+ var lang = locale.id;
87
89
  useEffect(function () {
88
90
  var timeout = setTimeout(function () {
89
91
  if (showChinaMirror && lang === 'zh' && !localStorage.getItem('china-mirror-no-more-hint') && window.location.host.includes('antv.vision')) {
@@ -94,18 +96,8 @@ var HeaderComponent = function HeaderComponent(_ref) {
94
96
  clearTimeout(timeout);
95
97
  };
96
98
  });
97
- var locale = useLocale();
98
- var nav = useNavigate();
99
- var _useState5 = useState(locale.id),
100
- _useState6 = _slicedToArray(_useState5, 2),
101
- lang = _useState6[0],
102
- setLang = _useState6[1];
103
- var announcementTitle = useMemo(function () {
104
- return get(announcement, ['title', lang]);
105
- }, [announcement, lang]);
106
- var announcementLinkTitle = useMemo(function () {
107
- return get(announcement, ['link', 'text', lang]);
108
- }, [announcement, lang]);
99
+ var announcementTitle = icWithLocale(announcement === null || announcement === void 0 ? void 0 : announcement.title, lang);
100
+ var announcementLinkTitle = icWithLocale(announcement === null || announcement === void 0 || (_announcement$link = announcement.link) === null || _announcement$link === void 0 ? void 0 : _announcement$link.text, lang);
109
101
  useEffect(function () {
110
102
  setBannerVisible(!!announcementTitle && localStorage.getItem(ANNOUNCEMENT_LOCALSTORAGE_ID) !== 'true');
111
103
  }, [announcementTitle]);
@@ -113,10 +105,10 @@ var HeaderComponent = function HeaderComponent(_ref) {
113
105
  localStorage.setItem(ANNOUNCEMENT_LOCALSTORAGE_ID, 'true');
114
106
  setBannerVisible(false);
115
107
  }
116
- var _useState7 = useState(false),
117
- _useState8 = _slicedToArray(_useState7, 2),
118
- productMenuVisible = _useState8[0],
119
- setProductMenuVisible = _useState8[1];
108
+ var _useState5 = useState(false),
109
+ _useState6 = _slicedToArray(_useState5, 2),
110
+ productMenuVisible = _useState6[0],
111
+ setProductMenuVisible = _useState6[1];
120
112
  var productMenuHovering = false;
121
113
  var onProductMouseEnter = function onProductMouseEnter(e) {
122
114
  productMenuHovering = true;
@@ -140,10 +132,10 @@ var HeaderComponent = function HeaderComponent(_ref) {
140
132
  var onToggleProductMenuVisible = function onToggleProductMenuVisible() {
141
133
  setProductMenuVisible(!productMenuVisible);
142
134
  };
143
- var _useState9 = useState(false),
144
- _useState10 = _slicedToArray(_useState9, 2),
145
- popupMenuVisible = _useState10[0],
146
- setPopupMenuVisible = _useState10[1];
135
+ var _useState7 = useState(false),
136
+ _useState8 = _slicedToArray(_useState7, 2),
137
+ popupMenuVisible = _useState8[0],
138
+ setPopupMenuVisible = _useState8[1];
147
139
  var onTogglePopupMenuVisible = function onTogglePopupMenuVisible() {
148
140
  setPopupMenuVisible(!popupMenuVisible);
149
141
  };
@@ -187,29 +179,9 @@ var HeaderComponent = function HeaderComponent(_ref) {
187
179
  } : {
188
180
  onClick: onToggleProductMenuVisible
189
181
  };
190
- var langItems = [{
191
- label: /*#__PURE__*/React.createElement(Link, {
192
- to: "/en"
193
- }, /*#__PURE__*/React.createElement(CheckOutlined, {
194
- style: {
195
- visibility: lang === 'en' ? 'visible' : 'hidden',
196
- color: '#52c41a'
197
- }
198
- }), "English"),
199
- key: 'en'
200
- },
201
- // 菜单项务必填写 key
202
- {
203
- label: /*#__PURE__*/React.createElement(Link, {
204
- to: "/"
205
- }, /*#__PURE__*/React.createElement(CheckOutlined, {
206
- style: {
207
- visibility: lang === 'zh' ? 'visible' : 'hidden',
208
- color: '#52c41a'
209
- }
210
- }), "\u7B80\u4F53\u4E2D\u6587"),
211
- key: 'zh'
212
- }];
182
+ var handleSwitchLanguage = function handleSwitchLanguage() {
183
+ onLanguageChange === null || onLanguageChange === void 0 || onLanguageChange(lang);
184
+ };
213
185
  var menu = /*#__PURE__*/React.createElement("ul", {
214
186
  className: cx(styles.menu, _defineProperty(_defineProperty({}, styles.popup, !isWide), styles.popupHidden, !popupMenuVisible))
215
187
  }, /** 最左侧的菜单,一般是 教程、API、示例,或者其他自定义,有配置文件中的 `navs` 决定 */
@@ -359,31 +331,9 @@ var HeaderComponent = function HeaderComponent(_ref) {
359
331
  }))), /** 切换网站语言 */
360
332
  showLanguageSwitcher && /*#__PURE__*/React.createElement("li", {
361
333
  className: cx(styles.navIcon, styles.languageSwitcher)
362
- }, /*#__PURE__*/React.createElement(Dropdown, {
363
- placement: "bottomRight",
364
- overlay: /*#__PURE__*/React.createElement(Menu, {
365
- defaultSelectedKeys: [lang],
366
- selectable: true,
367
- onSelect: function onSelect(_ref3) {
368
- var key = _ref3.key;
369
- if (key === lang) {
370
- return;
371
- }
372
- setLang(key);
373
- if (onLanguageChange) {
374
- onLanguageChange(key.toString());
375
- return;
376
- }
377
- },
378
- items: langItems,
379
- forceSubMenuRender: true
380
- }),
381
- className: styles.translation
382
- }, /*#__PURE__*/React.createElement("a", {
383
- className: "ant-dropdown-link",
384
- onClick: function onClick(e) {
385
- return e.preventDefault();
386
- }
334
+ }, /*#__PURE__*/React.createElement(Link, {
335
+ to: lang === 'zh' ? '/en' : '/',
336
+ onClick: handleSwitchLanguage
387
337
  }, /*#__PURE__*/React.createElement("svg", {
388
338
  className: styles.translation,
389
339
  xmlns: "http://www.w3.org/2000/svg",
@@ -392,7 +342,7 @@ var HeaderComponent = function HeaderComponent(_ref) {
392
342
  viewBox: "0 0 24 24"
393
343
  }, /*#__PURE__*/React.createElement("path", {
394
344
  d: "M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"
395
- }))))), /** 微信公众号 */
345
+ })))), /** 微信公众号 */
396
346
  showWxQrcode && /*#__PURE__*/React.createElement("li", {
397
347
  className: cx(styles.navIcon, styles.wxQrcode)
398
348
  }, /*#__PURE__*/React.createElement(Popover, {
@@ -505,14 +455,14 @@ var Header = function Header(props) {
505
455
  announcement: announcement,
506
456
  petercat: petercat
507
457
  };
508
- var _useState11 = useState(undefined),
509
- _useState12 = _slicedToArray(_useState11, 2),
510
- isInternalUser = _useState12[0],
511
- setIsInternalUser = _useState12[1];
458
+ var _useState9 = useState(undefined),
459
+ _useState10 = _slicedToArray(_useState9, 2),
460
+ isInternalUser = _useState10[0],
461
+ setIsInternalUser = _useState10[1];
512
462
  var isPetercatShow = petercat === null || petercat === void 0 ? void 0 : petercat.show;
513
463
  useEffect(function () {
514
464
  var checkUserType = /*#__PURE__*/function () {
515
- var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
465
+ var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
516
466
  var result;
517
467
  return _regeneratorRuntime().wrap(function _callee$(_context) {
518
468
  while (1) switch (_context.prev = _context.next) {
@@ -529,7 +479,7 @@ var Header = function Header(props) {
529
479
  }, _callee);
530
480
  }));
531
481
  return function checkUserType() {
532
- return _ref4.apply(this, arguments);
482
+ return _ref3.apply(this, arguments);
533
483
  };
534
484
  }();
535
485
  checkUserType();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antv/dumi-theme-antv",
3
- "version": "0.6.4-alpha.4",
3
+ "version": "0.6.4-alpha.5",
4
4
  "description": "AntV website theme based on dumi2.",
5
5
  "keywords": [
6
6
  "dumi",