@antv/dumi-theme-antv 0.2.2 → 0.3.0-beta.10

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 (265) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +32 -33
  3. package/dist/builtins/Playground/index.d.ts +21 -0
  4. package/dist/builtins/Playground/index.js +69 -0
  5. package/dist/builtins/Playground/index.module.less +15 -0
  6. package/dist/context.d.ts +6 -0
  7. package/dist/context.js +2 -0
  8. package/dist/layouts/DocLayout.d.ts +7 -0
  9. package/dist/layouts/DocLayout.js +48 -0
  10. package/dist/layouts/entry/API.d.ts +10 -0
  11. package/dist/layouts/entry/API.js +12 -0
  12. package/dist/layouts/entry/Index.d.ts +7 -0
  13. package/dist/layouts/entry/Index.js +79 -0
  14. package/dist/layouts/entry/Manual.d.ts +8 -0
  15. package/dist/layouts/entry/Manual.js +13 -0
  16. package/dist/locales/en.json +98 -0
  17. package/dist/locales/zh.json +98 -0
  18. package/dist/pages/404.d.ts +6 -0
  19. package/dist/pages/404.js +18 -0
  20. package/dist/pages/Example/index.d.ts +6 -0
  21. package/dist/pages/Example/index.js +115 -0
  22. package/dist/pages/Example/index.module.less +82 -0
  23. package/dist/pages/Example/utils.d.ts +1 -0
  24. package/dist/pages/Example/utils.js +9 -0
  25. package/dist/pages/Examples/components/Accouncement/index.d.ts +6 -0
  26. package/dist/pages/Examples/components/Accouncement/index.js +60 -0
  27. package/dist/pages/Examples/components/Accouncement/index.module.less +9 -0
  28. package/dist/pages/Examples/components/Article/index.d.ts +2 -0
  29. package/dist/pages/Examples/components/Article/index.js +8 -0
  30. package/dist/pages/Examples/components/Article/index.module.less +2 -0
  31. package/dist/pages/Examples/components/ExampleTopicMenu/components/LeftMenu/index.d.ts +10 -0
  32. package/dist/pages/Examples/components/ExampleTopicMenu/components/LeftMenu/index.js +74 -0
  33. package/dist/pages/Examples/components/ExampleTopicMenu/index.d.ts +9 -0
  34. package/{es/builtins/Example.js → dist/pages/Examples/components/ExampleTopicMenu/index.js} +47 -33
  35. package/dist/pages/Examples/components/GalleryPageContent/DemoCard/index.d.ts +10 -0
  36. package/dist/pages/Examples/components/GalleryPageContent/DemoCard/index.js +33 -0
  37. package/dist/pages/Examples/components/GalleryPageContent/index.d.ts +10 -0
  38. package/dist/pages/Examples/components/GalleryPageContent/index.js +81 -0
  39. package/dist/pages/Examples/index.d.ts +8 -0
  40. package/dist/pages/Examples/index.js +95 -0
  41. package/dist/pages/Examples/index.module.less +607 -0
  42. package/dist/pages/Examples/types.d.ts +34 -0
  43. package/dist/pages/Examples/types.js +1 -0
  44. package/dist/plugin/examples.d.ts +21 -0
  45. package/dist/plugin/examples.js +105 -0
  46. package/dist/plugin/index.d.ts +3 -0
  47. package/dist/plugin/index.js +113 -0
  48. package/dist/plugin/utils.d.ts +5 -0
  49. package/dist/plugin/utils.js +46 -0
  50. package/dist/slots/404.d.ts +2 -0
  51. package/{es/antv/404/index.js → dist/slots/404.js} +4 -9
  52. package/{es/antv/Cases/Cases.d.ts → dist/slots/Cases/index.d.ts} +5 -4
  53. package/{es/antv/Cases/Cases.js → dist/slots/Cases/index.js} +25 -25
  54. package/{src/antv/Cases/Cases.module.less → dist/slots/Cases/index.module.less} +36 -5
  55. package/dist/slots/CodeEditor/Toolbar.d.ts +67 -0
  56. package/dist/slots/CodeEditor/Toolbar.js +140 -0
  57. package/dist/slots/CodeEditor/Toolbar.module.less +81 -0
  58. package/dist/slots/CodeEditor/index.d.ts +58 -0
  59. package/dist/slots/CodeEditor/index.js +226 -0
  60. package/dist/slots/CodeEditor/index.module.less +11 -0
  61. package/dist/slots/CodeEditor/utils.d.ts +42 -0
  62. package/dist/slots/CodeEditor/utils.js +157 -0
  63. package/dist/slots/CodePreview/CodeHeader.d.ts +19 -0
  64. package/dist/slots/CodePreview/CodeHeader.js +32 -0
  65. package/dist/slots/CodePreview/CodeHeader.module.less +0 -0
  66. package/dist/slots/CodePreview/index.d.ts +17 -0
  67. package/dist/slots/CodePreview/index.js +29 -0
  68. package/dist/slots/CodePreview/index.module.less +43 -0
  69. package/dist/slots/CodeRunner/index.d.ts +15 -0
  70. package/dist/slots/CodeRunner/index.js +79 -0
  71. package/dist/slots/CodeRunner/index.module.less +0 -0
  72. package/dist/slots/CodeRunner/utils.d.ts +11 -0
  73. package/dist/slots/CodeRunner/utils.js +36 -0
  74. package/dist/slots/Companies/index.d.ts +13 -0
  75. package/dist/slots/Companies/index.js +49 -0
  76. package/dist/slots/Companies/index.module.less +82 -0
  77. package/dist/slots/Detail/News.d.ts +10 -0
  78. package/{es/antv/Banner/Notification.js → dist/slots/Detail/News.js} +8 -11
  79. package/{src/antv/Banner/Notification.module.less → dist/slots/Detail/News.module.less} +15 -3
  80. package/dist/slots/Detail/index.d.ts +27 -0
  81. package/dist/slots/Detail/index.js +124 -0
  82. package/{src/antv/Banner/Banner.module.less → dist/slots/Detail/index.module.less} +42 -74
  83. package/dist/slots/ExampleSider/index.d.ts +21 -0
  84. package/dist/slots/ExampleSider/index.js +196 -0
  85. package/dist/slots/ExampleSider/index.module.less +141 -0
  86. package/{es/antv → dist/slots}/Features/FeatureCard.d.ts +2 -1
  87. package/{es/antv → dist/slots}/Features/FeatureCard.js +6 -6
  88. package/{src/antv → dist/slots}/Features/FeatureCard.module.less +8 -1
  89. package/{es/antv → dist/slots}/Features/index.d.ts +2 -2
  90. package/{es/antv → dist/slots}/Features/index.js +19 -26
  91. package/{src/antv/Features/Features.module.less → dist/slots/Features/index.module.less} +34 -3
  92. package/dist/slots/Footer/index.d.ts +18 -0
  93. package/dist/slots/Footer/index.js +188 -0
  94. package/dist/slots/Footer/index.module.less +86 -0
  95. package/dist/slots/Header/Logo.d.ts +7 -0
  96. package/{es/antv → dist/slots}/Header/Logo.js +6 -2
  97. package/dist/slots/Header/LogoWhite.d.ts +7 -0
  98. package/dist/slots/Header/LogoWhite.js +19 -0
  99. package/dist/slots/Header/Navs.d.ts +26 -0
  100. package/dist/slots/Header/Navs.js +63 -0
  101. package/dist/slots/Header/Products/NavigatorBanner.d.ts +10 -0
  102. package/dist/slots/Header/Products/NavigatorBanner.js +34 -0
  103. package/dist/slots/Header/Products/NavigatorBanner.module.less +39 -0
  104. package/{es/antv → dist/slots/Header}/Products/Product.d.ts +3 -3
  105. package/{es/antv → dist/slots/Header}/Products/Product.js +11 -16
  106. package/{src/antv → dist/slots/Header}/Products/Product.module.less +10 -8
  107. package/{es/antv → dist/slots/Header}/Products/getProducts.d.ts +2 -7
  108. package/dist/slots/Header/Products/getProducts.js +67 -0
  109. package/dist/slots/Header/Products/index.d.ts +9 -0
  110. package/{es/antv → dist/slots/Header}/Products/index.js +15 -22
  111. package/dist/slots/Header/Search.d.ts +12 -0
  112. package/dist/slots/Header/Search.js +90 -0
  113. package/dist/slots/Header/Search.module.less +39 -0
  114. package/dist/slots/Header/index.d.ts +66 -0
  115. package/dist/slots/Header/index.js +380 -0
  116. package/dist/slots/Header/index.module.less +382 -0
  117. package/dist/slots/Header/utils.d.ts +1 -0
  118. package/dist/slots/Header/utils.js +26 -0
  119. package/dist/slots/Loading/index.d.ts +7 -0
  120. package/dist/slots/Loading/index.js +79 -0
  121. package/dist/slots/Loading/index.module.less +279 -0
  122. package/dist/slots/ManualContent/NavigatorBanner.d.ts +9 -0
  123. package/dist/slots/ManualContent/NavigatorBanner.js +36 -0
  124. package/dist/slots/ManualContent/NavigatorBanner.module.less +39 -0
  125. package/dist/slots/ManualContent/ReadingTime.d.ts +3 -0
  126. package/dist/slots/ManualContent/ReadingTime.js +10 -0
  127. package/dist/slots/ManualContent/index.d.ts +9 -0
  128. package/dist/slots/ManualContent/index.js +344 -0
  129. package/dist/slots/ManualContent/index.module.less +668 -0
  130. package/dist/slots/ManualContent/utils.d.ts +3 -0
  131. package/dist/slots/ManualContent/utils.js +35 -0
  132. package/dist/slots/SEO.d.ts +10 -0
  133. package/dist/slots/SEO.js +59 -0
  134. package/dist/slots/TOC.d.ts +5 -0
  135. package/dist/slots/TOC.js +6 -0
  136. package/dist/slots/_.less +83 -0
  137. package/dist/slots/global.d.ts +1 -0
  138. package/dist/slots/global.js +7 -0
  139. package/dist/slots/hooks.d.ts +16 -0
  140. package/{es/antv → dist/slots}/hooks.js +60 -37
  141. package/dist/slots/utils.d.ts +5 -0
  142. package/dist/slots/utils.js +112 -0
  143. package/dist/types.d.ts +86 -0
  144. package/dist/types.js +1 -0
  145. package/dist/typings.d.ts +24 -0
  146. package/package.json +110 -47
  147. package/es/antv/404/index.d.ts +0 -2
  148. package/es/antv/Banner/Banner.module.less +0 -412
  149. package/es/antv/Banner/Notification.d.ts +0 -10
  150. package/es/antv/Banner/Notification.module.less +0 -108
  151. package/es/antv/Banner/index.d.ts +0 -25
  152. package/es/antv/Banner/index.js +0 -104
  153. package/es/antv/Cases/Cases.module.less +0 -203
  154. package/es/antv/Features/FeatureCard.module.less +0 -51
  155. package/es/antv/Features/Features.module.less +0 -169
  156. package/es/antv/Footer/Footer.module.less +0 -36
  157. package/es/antv/Footer/index.d.ts +0 -12
  158. package/es/antv/Footer/index.js +0 -237
  159. package/es/antv/Header/Logo.d.ts +0 -4
  160. package/es/antv/Products/Product.module.less +0 -146
  161. package/es/antv/Products/getNewProducts.d.ts +0 -24
  162. package/es/antv/Products/getNewProducts.js +0 -35
  163. package/es/antv/Products/getProducts.js +0 -460
  164. package/es/antv/Products/index.d.ts +0 -9
  165. package/es/antv/hooks.d.ts +0 -14
  166. package/es/antv/mixins.less +0 -21
  167. package/es/antv/utils.d.ts +0 -5
  168. package/es/antv/utils.js +0 -49
  169. package/es/builtins/API.d.ts +0 -3
  170. package/es/builtins/API.js +0 -37
  171. package/es/builtins/Alert.d.ts +0 -3
  172. package/es/builtins/Alert.js +0 -7
  173. package/es/builtins/Alert.less +0 -62
  174. package/es/builtins/Badge.d.ts +0 -3
  175. package/es/builtins/Badge.js +0 -7
  176. package/es/builtins/Badge.less +0 -31
  177. package/es/builtins/Example.d.ts +0 -5
  178. package/es/builtins/Example.less +0 -47
  179. package/es/builtins/Previewer.d.ts +0 -39
  180. package/es/builtins/Previewer.js +0 -225
  181. package/es/builtins/Previewer.less +0 -406
  182. package/es/builtins/SourceCode.d.ts +0 -10
  183. package/es/builtins/SourceCode.js +0 -70
  184. package/es/builtins/SourceCode.less +0 -103
  185. package/es/builtins/Table.d.ts +0 -4
  186. package/es/builtins/Table.js +0 -56
  187. package/es/builtins/Table.less +0 -43
  188. package/es/builtins/Tree.d.ts +0 -4
  189. package/es/builtins/Tree.js +0 -213
  190. package/es/builtins/Tree.less +0 -159
  191. package/es/components/Dark.d.ts +0 -9
  192. package/es/components/Dark.js +0 -125
  193. package/es/components/Dark.less +0 -121
  194. package/es/components/LocaleSelect.d.ts +0 -6
  195. package/es/components/LocaleSelect.js +0 -53
  196. package/es/components/LocaleSelect.less +0 -59
  197. package/es/components/Navbar.d.ts +0 -10
  198. package/es/components/Navbar.js +0 -155
  199. package/es/components/Navbar.less +0 -180
  200. package/es/components/SearchBar.d.ts +0 -4
  201. package/es/components/SearchBar.js +0 -81
  202. package/es/components/SearchBar.less +0 -165
  203. package/es/components/SideMenu.d.ts +0 -10
  204. package/es/components/SideMenu.js +0 -99
  205. package/es/components/SideMenu.less +0 -379
  206. package/es/components/SlugList.d.ts +0 -7
  207. package/es/components/SlugList.js +0 -38
  208. package/es/components/SlugList.less +0 -18
  209. package/es/declaration.d.ts +0 -1
  210. package/es/layout.d.ts +0 -5
  211. package/es/layout.js +0 -276
  212. package/es/style/layout.less +0 -402
  213. package/es/style/markdown.less +0 -240
  214. package/es/style/variables.less +0 -37
  215. package/src/antv/404/index.tsx +0 -25
  216. package/src/antv/Banner/Notification.tsx +0 -45
  217. package/src/antv/Banner/index.tsx +0 -139
  218. package/src/antv/Cases/Cases.tsx +0 -116
  219. package/src/antv/Features/FeatureCard.tsx +0 -24
  220. package/src/antv/Features/index.tsx +0 -86
  221. package/src/antv/Footer/Footer.module.less +0 -36
  222. package/src/antv/Footer/index.tsx +0 -272
  223. package/src/antv/Header/Logo.tsx +0 -85
  224. package/src/antv/Products/Product.tsx +0 -80
  225. package/src/antv/Products/getNewProducts.tsx +0 -53
  226. package/src/antv/Products/getProducts.tsx +0 -626
  227. package/src/antv/Products/index.tsx +0 -70
  228. package/src/antv/hooks.ts +0 -87
  229. package/src/antv/mixins.less +0 -21
  230. package/src/antv/utils.ts +0 -44
  231. package/src/builtins/API.tsx +0 -57
  232. package/src/builtins/Alert.less +0 -62
  233. package/src/builtins/Alert.tsx +0 -4
  234. package/src/builtins/Badge.less +0 -31
  235. package/src/builtins/Badge.tsx +0 -4
  236. package/src/builtins/Example.less +0 -47
  237. package/src/builtins/Example.tsx +0 -34
  238. package/src/builtins/Previewer.less +0 -406
  239. package/src/builtins/Previewer.tsx +0 -264
  240. package/src/builtins/SourceCode.less +0 -103
  241. package/src/builtins/SourceCode.tsx +0 -55
  242. package/src/builtins/Table.less +0 -43
  243. package/src/builtins/Table.tsx +0 -42
  244. package/src/builtins/Tree.less +0 -159
  245. package/src/builtins/Tree.tsx +0 -130
  246. package/src/components/Dark.less +0 -121
  247. package/src/components/Dark.tsx +0 -78
  248. package/src/components/LocaleSelect.less +0 -59
  249. package/src/components/LocaleSelect.tsx +0 -53
  250. package/src/components/Navbar.less +0 -180
  251. package/src/components/Navbar.tsx +0 -152
  252. package/src/components/SearchBar.less +0 -165
  253. package/src/components/SearchBar.tsx +0 -68
  254. package/src/components/SideMenu.less +0 -379
  255. package/src/components/SideMenu.tsx +0 -148
  256. package/src/components/SlugList.less +0 -18
  257. package/src/components/SlugList.tsx +0 -20
  258. package/src/declaration.d.ts +0 -1
  259. package/src/layout.tsx +0 -225
  260. package/src/style/layout.less +0 -402
  261. package/src/style/markdown.less +0 -240
  262. package/src/style/variables.less +0 -37
  263. package/src/test/SearchBar.test.ts +0 -32
  264. package/src/test/Table.test.tsx +0 -41
  265. package/src/test/index.test.tsx +0 -377
@@ -0,0 +1,344 @@
1
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
2
+
3
+ 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; }
4
+
5
+ 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; }
6
+
7
+ 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; }
8
+
9
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
+
11
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
12
+
13
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
14
+
15
+ 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; }
16
+
17
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
18
+
19
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
20
+
21
+ import React, { useEffect, useState } from 'react';
22
+ import { Layout, Affix, BackTop, Menu, Tooltip } from 'antd';
23
+ import { useMedia } from 'react-use';
24
+ import Drawer from 'rc-drawer';
25
+ import { useLocale, useSiteData, useFullSidebarData, useRouteMeta } from 'dumi';
26
+ import { useNavigate } from "react-router-dom";
27
+ import { EditOutlined, MenuFoldOutlined, MenuUnfoldOutlined, VerticalAlignTopOutlined } from '@ant-design/icons';
28
+ import readingTime from 'reading-time';
29
+ import { SEO } from "../SEO";
30
+ import { getBaseRoute, getIndexRoute, getOpenKeys } from "./utils";
31
+ import { NavigatorBanner } from "./NavigatorBanner";
32
+ import ReadingTime from "./ReadingTime";
33
+ import { TOC } from "../TOC";
34
+ import { Footer } from "../Footer";
35
+ import { useScrollToTop } from "../hooks";
36
+ import 'rc-drawer/assets/index.css';
37
+ import styles from "./index.module.less";
38
+
39
+ /**
40
+ * 文档的结构
41
+ */
42
+ export var ManualContent = function ManualContent(_ref) {
43
+ var children = _ref.children;
44
+ var locale = useLocale();
45
+ var currentLocale = locale.id;
46
+
47
+ var _useSiteData = useSiteData(),
48
+ _useSiteData$themeCon = _useSiteData.themeConfig,
49
+ githubUrl = _useSiteData$themeCon.githubUrl,
50
+ relativePath = _useSiteData$themeCon.relativePath,
51
+ docs = _useSiteData$themeCon.docs;
52
+
53
+ var sidebar = useFullSidebarData();
54
+ var is767Wide = useMedia('(min-width: 767.99px)', true);
55
+ var is991Wide = useMedia('(min-width: 991.99px)', true);
56
+
57
+ var _useState = useState(false),
58
+ _useState2 = _slicedToArray(_useState, 2),
59
+ drawOpen = _useState2[0],
60
+ setDrawOpen = _useState2[1];
61
+
62
+ var navigate = useNavigate(); // 获取阅读时间
63
+
64
+ var mdInfo = useRouteMeta();
65
+ var text = mdInfo.texts.reduce(function (prev, next) {
66
+ return prev + next.value;
67
+ }, '');
68
+
69
+ var _readingTime = readingTime(text),
70
+ time = _readingTime.time; // linkoTitle用来映射路由和Title
71
+
72
+
73
+ var linkoTitle = {};
74
+
75
+ for (var _i2 = 0, _Object$values = Object.values(sidebar); _i2 < _Object$values.length; _i2++) {
76
+ var route = _Object$values[_i2];
77
+ route[0].children.forEach(function (item) {
78
+ linkoTitle[item.link] = item.title;
79
+ });
80
+ }
81
+ /**
82
+ * /api/xxx --> /api
83
+ * /en/api --> /en/api
84
+ */
85
+
86
+
87
+ var baseRoute = getBaseRoute(); // 获取最终的 MenuData
88
+
89
+ var renderSidebar = getMenuData(sidebar, docs, baseRoute, []);
90
+
91
+ function getMenuData(funllSidebarData, rootList, hrefId, list) {
92
+ function fullSidebarDataToMenuData(rootList, hrefId, list) {
93
+ // 递归
94
+ rootList.forEach(function (item) {
95
+ var href = !baseRoute.startsWith('/en') ? "/".concat(item.slug) : "/en/".concat(item.slug);
96
+ var id = href.split("/").slice(0, href.split("/").length - 1).join("/");
97
+
98
+ if (href.includes(baseRoute)) {
99
+ if (id === hrefId) {
100
+ list.push(_objectSpread(_objectSpread({}, item), {}, {
101
+ key: href,
102
+ label: item.title[currentLocale]
103
+ }));
104
+ }
105
+ }
106
+ });
107
+
108
+ var _iterator = _createForOfIteratorHelper(list),
109
+ _step;
110
+
111
+ try {
112
+ var _loop = function _loop() {
113
+ var _funllSidebarData$ite;
114
+
115
+ var item = _step.value;
116
+ item.children = [];
117
+ fullSidebarDataToMenuData(rootList, item.key, item.children);
118
+ (_funllSidebarData$ite = funllSidebarData[item.key][0].children) === null || _funllSidebarData$ite === void 0 ? void 0 : _funllSidebarData$ite.forEach(function (itemChild) {
119
+ var label = itemChild.title;
120
+ var key = itemChild.link;
121
+ item.children.push(_objectSpread(_objectSpread({}, itemChild), {}, {
122
+ label: label,
123
+ key: key
124
+ }));
125
+ });
126
+
127
+ if (item.children.length == 0) {
128
+ delete item.children;
129
+ }
130
+ };
131
+
132
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
133
+ _loop();
134
+ }
135
+ } catch (err) {
136
+ _iterator.e(err);
137
+ } finally {
138
+ _iterator.f();
139
+ }
140
+
141
+ if (hrefId == baseRoute) {
142
+ var _funllSidebarData$bas;
143
+
144
+ funllSidebarData[baseRoute] && ((_funllSidebarData$bas = funllSidebarData[baseRoute][0].children) === null || _funllSidebarData$bas === void 0 ? void 0 : _funllSidebarData$bas.forEach(function (itemChild) {
145
+ var key = itemChild.link;
146
+ var label = itemChild.title;
147
+ list.push(_objectSpread(_objectSpread({}, itemChild), {}, {
148
+ label: label,
149
+ key: key
150
+ }));
151
+ }));
152
+ list.sort(function (a, b) {
153
+ return a.order - b.order;
154
+ });
155
+ return list;
156
+ }
157
+ }
158
+
159
+ return fullSidebarDataToMenuData(rootList, hrefId, list);
160
+ } // 获取打开的菜单栏
161
+
162
+
163
+ var _useState3 = useState(function () {
164
+ return getOpenKeys();
165
+ }),
166
+ _useState4 = _slicedToArray(_useState3, 2),
167
+ defaultOpenKeys = _useState4[0],
168
+ setDefaultOpenKeys = _useState4[1]; // 获取第一个md文件的路由
169
+
170
+
171
+ var indexRoute = getIndexRoute(renderSidebar); // 点击菜单栏
172
+
173
+ var onClick = function onClick(e) {
174
+ navigate(e.key);
175
+ useScrollToTop();
176
+ };
177
+
178
+ var _useState5 = useState(renderSidebar.length !== 0 ? [renderSidebar[0].key] : ['']),
179
+ _useState6 = _slicedToArray(_useState5, 2),
180
+ defaultSelectedKey = _useState6[0],
181
+ setDefaultSelectedKey = _useState6[1]; //上一夜下一页
182
+
183
+
184
+ var _useState7 = useState(undefined),
185
+ _useState8 = _slicedToArray(_useState7, 2),
186
+ prev = _useState8[0],
187
+ setPrev = _useState8[1];
188
+
189
+ var _useState9 = useState(undefined),
190
+ _useState10 = _slicedToArray(_useState9, 2),
191
+ next = _useState10[0],
192
+ setNext = _useState10[1]; // 所有的 sidebar 路由
193
+
194
+
195
+ var sidebarRoutes = [];
196
+
197
+ for (var _i3 = 0, _Object$keys = Object.keys(linkoTitle); _i3 < _Object$keys.length; _i3++) {
198
+ var route = _Object$keys[_i3];
199
+ sidebarRoutes.push(route);
200
+ } // 兜底 如果 nav 指定有误则自动重定向到 indexDocRoute
201
+
202
+
203
+ if (window.location.pathname.startsWith('/docs/') || !sidebarRoutes.includes(window.location.pathname)) {
204
+ navigate(indexRoute);
205
+ } // 改变菜单栏选中和 openKeys 状态
206
+
207
+
208
+ useEffect(function () {
209
+ if (window.location.pathname == indexRoute) {
210
+ setDefaultOpenKeys(getOpenKeys());
211
+ }
212
+
213
+ setDefaultSelectedKey([window.location.pathname]);
214
+ }, [window.location.pathname]);
215
+ useEffect(function () {
216
+ // 监听选中的menu-item 拿到 prev and next
217
+ getPreAndNext();
218
+ }, [defaultSelectedKey]);
219
+
220
+ function getPreAndNext() {
221
+ var menuNodes = document.querySelectorAll('aside .ant-menu-item');
222
+ var currentMenuNode = document.querySelector('aside .ant-menu-item-selected'); // @ts-ignore
223
+
224
+ var currentIndex = Array.from(menuNodes).findIndex(function (node) {
225
+ return node === currentMenuNode;
226
+ });
227
+ var prevNode = currentIndex - 1 >= 0 ? menuNodes[currentIndex - 1] : undefined;
228
+ var nextNode = currentIndex + 1 < menuNodes.length ? menuNodes[currentIndex + 1] : undefined;
229
+ setPrev(prevNode ? {
230
+ slug: prevNode.getAttribute('link') || undefined,
231
+ title: prevNode.textContent || undefined
232
+ } : undefined);
233
+ setNext(nextNode ? {
234
+ slug: nextNode.getAttribute('link') || undefined,
235
+ title: nextNode.textContent || undefined
236
+ } : undefined);
237
+ }
238
+
239
+ var getGithubSourceUrl = function getGithubSourceUrl(_ref2) {
240
+ var githubUrl = _ref2.githubUrl,
241
+ relativePath = _ref2.relativePath,
242
+ prefix = _ref2.prefix;
243
+
244
+ // https://github.com/antvis/x6/tree/master/packages/x6-sites
245
+ if (githubUrl.includes('/tree/master/')) {
246
+ return "".concat(githubUrl.replace('/tree/master/', '/edit/master/'), "/").concat(prefix, "/").concat(relativePath);
247
+ }
248
+
249
+ return "".concat(githubUrl, "/edit/master/").concat(prefix, "/").concat(relativePath);
250
+ };
251
+
252
+ var menu = /*#__PURE__*/React.createElement(Menu, {
253
+ onClick: onClick,
254
+ onOpenChange: function onOpenChange(openKeys) {
255
+ setDefaultOpenKeys(openKeys);
256
+ },
257
+ selectedKeys: defaultSelectedKey,
258
+ openKeys: defaultOpenKeys,
259
+ mode: "inline",
260
+ items: renderSidebar,
261
+ inlineIndent: 16,
262
+ style: {
263
+ height: '100%'
264
+ },
265
+ forceSubMenuRender: true,
266
+ triggerSubMenuAction: "click"
267
+ });
268
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SEO, {
269
+ title: linkoTitle[window.location.pathname],
270
+ lang: locale.id
271
+ }), /*#__PURE__*/React.createElement(Layout, {
272
+ style: {
273
+ background: '#fff'
274
+ },
275
+ hasSider: true,
276
+ className: styles.layout
277
+ }, /*#__PURE__*/React.createElement(Affix, {
278
+ offsetTop: 0,
279
+ className: styles.affix,
280
+ style: {
281
+ height: is767Wide ? '100vh' : 'inherit'
282
+ }
283
+ }, is767Wide ? /*#__PURE__*/React.createElement(Layout.Sider, {
284
+ width: "auto",
285
+ theme: "light",
286
+ className: styles.sider
287
+ }, menu) : /*#__PURE__*/React.createElement(Drawer, {
288
+ handler: drawOpen ? /*#__PURE__*/React.createElement(MenuFoldOutlined, {
289
+ className: styles.menuSwitch
290
+ }) : /*#__PURE__*/React.createElement(MenuUnfoldOutlined, {
291
+ className: styles.menuSwitch
292
+ }),
293
+ wrapperClassName: styles.menuDrawer,
294
+ onChange: function onChange(open) {
295
+ return setDrawOpen(!!open);
296
+ },
297
+ width: 280
298
+ }, menu)), /*#__PURE__*/React.createElement(Layout.Content, {
299
+ className: styles.content
300
+ }, /*#__PURE__*/React.createElement("div", {
301
+ className: styles.main
302
+ }, /*#__PURE__*/React.createElement("h1", {
303
+ className: styles.contentTitle
304
+ }, linkoTitle[window.location.pathname], /*#__PURE__*/React.createElement(Tooltip, {
305
+ title: '在 GitHub 上编辑'
306
+ }, /*#__PURE__*/React.createElement("a", {
307
+ href: getGithubSourceUrl({
308
+ githubUrl: githubUrl,
309
+ relativePath: relativePath,
310
+ prefix: 'docs'
311
+ }),
312
+ target: "_blank",
313
+ rel: "noopener noreferrer",
314
+ className: styles.editOnGtiHubButton
315
+ }, /*#__PURE__*/React.createElement(EditOutlined, null)))), /*#__PURE__*/React.createElement("div", {
316
+ className: styles.readtimeContainer
317
+ }, /*#__PURE__*/React.createElement(ReadingTime, {
318
+ readingTime: time,
319
+ className: styles.readtime
320
+ })), /*#__PURE__*/React.createElement("div", {
321
+ className: styles.markdown
322
+ }, children), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
323
+ className: styles.preandnext
324
+ }, /*#__PURE__*/React.createElement(NavigatorBanner, {
325
+ type: "prev",
326
+ post: prev
327
+ }), /*#__PURE__*/React.createElement(NavigatorBanner, {
328
+ type: "next",
329
+ post: next
330
+ }), /*#__PURE__*/React.createElement(BackTop, {
331
+ style: {
332
+ right: 32
333
+ }
334
+ }, /*#__PURE__*/React.createElement("div", {
335
+ className: styles.backTop
336
+ }, /*#__PURE__*/React.createElement(VerticalAlignTopOutlined, null)))))), /*#__PURE__*/React.createElement(Footer, {
337
+ className: styles.footer
338
+ })), is991Wide ? /*#__PURE__*/React.createElement(Layout.Sider, {
339
+ theme: "light",
340
+ width: 260
341
+ }, /*#__PURE__*/React.createElement(Affix, {
342
+ className: styles.toc
343
+ }, /*#__PURE__*/React.createElement(TOC, null))) : /*#__PURE__*/React.createElement("div", null)));
344
+ };