dumi 2.0.0 → 2.0.2
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.
- package/dist/client/theme-api/DumiDemoGrid.js +2 -1
- package/dist/client/theme-api/types.d.ts +4 -0
- package/dist/client/theme-api/useSiteSearch/worker.js +10 -6
- package/package.json +1 -1
- package/theme-default/builtins/Previewer/index.js +1 -1
- package/theme-default/builtins/SourceCode/index.d.ts +1 -1
- package/theme-default/builtins/SourceCode/index.js +1 -1
- package/theme-default/builtins/SourceCode/index.less +9 -3
- package/theme-default/slots/Toc/index.less +2 -2
|
@@ -23,7 +23,8 @@ export var DumiDemoGrid = function DumiDemoGrid(props) {
|
|
|
23
23
|
|
|
24
24
|
var cols = [];
|
|
25
25
|
|
|
26
|
-
if ((_fm$demo = fm.demo) !== null && _fm$demo !== void 0 && _fm$demo.cols && fm.demo.cols > 1 &&
|
|
26
|
+
if ((_fm$demo = fm.demo) !== null && _fm$demo !== void 0 && _fm$demo.cols && fm.demo.cols > 1 && ( // compatible for ssr env
|
|
27
|
+
typeof window === 'undefined' || window.innerWidth > 1024)) {
|
|
27
28
|
for (var i = 0; i < items.length; i += fm.demo.cols) {
|
|
28
29
|
items.slice(i, i + fm.demo.cols).forEach(function (item, j) {
|
|
29
30
|
var _cols$j;
|
|
@@ -55,6 +55,10 @@ function createMetadataSection(rawTitle, title, link, texts, tocIndex) {
|
|
|
55
55
|
} : null;
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
+
function generateRouteTitle(fm) {
|
|
59
|
+
return [fm.title, fm.subtitle].filter(Boolean).join(' ');
|
|
60
|
+
}
|
|
61
|
+
|
|
58
62
|
function generateSearchMetadata(routes, demos, nav) {
|
|
59
63
|
var metadata = []; // generate demos mapping by route.id
|
|
60
64
|
|
|
@@ -83,11 +87,11 @@ function generateSearchMetadata(routes, demos, nav) {
|
|
|
83
87
|
|
|
84
88
|
return (_demo$asset = demo.asset) === null || _demo$asset === void 0 ? void 0 : _demo$asset.id;
|
|
85
89
|
});
|
|
86
|
-
var orphanSection = createMetadataSection('', routeMeta.frontmatter
|
|
90
|
+
var orphanSection = createMetadataSection('', generateRouteTitle(routeMeta.frontmatter), routeAbsPath, routeMeta.texts);
|
|
87
91
|
var tocSections = routeMeta.toc.reduce(function (acc, toc, i) {
|
|
88
92
|
// exclude demo id, to avoid duplicate
|
|
89
93
|
if (!demoIds.includes(toc.id) && toc.depth > 1) {
|
|
90
|
-
acc.push(createMetadataSection(toc.title, "".concat(routeMeta.frontmatter
|
|
94
|
+
acc.push(createMetadataSection(toc.title, "".concat(generateRouteTitle(routeMeta.frontmatter), " - ").concat(toc.title), "".concat(routeAbsPath, "#").concat(toc.id), routeMeta.texts, i));
|
|
91
95
|
}
|
|
92
96
|
|
|
93
97
|
return acc;
|
|
@@ -96,25 +100,25 @@ function generateSearchMetadata(routes, demos, nav) {
|
|
|
96
100
|
var key = _ref.key,
|
|
97
101
|
meta = _ref.meta;
|
|
98
102
|
// collect orphan section that not in toc
|
|
99
|
-
var tabOrphanSection = createMetadataSection('', "".concat(routeMeta.frontmatter
|
|
103
|
+
var tabOrphanSection = createMetadataSection('', "".concat(generateRouteTitle(routeMeta.frontmatter), " - ").concat(meta.frontmatter.title), "".concat(routeAbsPath, "?").concat(TAB_QUERY_KEY, "=").concat(key), meta.texts);
|
|
100
104
|
if (tabOrphanSection) acc.push(tabOrphanSection); // collect sections by toc
|
|
101
105
|
|
|
102
106
|
acc.push.apply(acc, _toConsumableArray(meta.toc.map(function (toc, i) {
|
|
103
|
-
return createMetadataSection(toc.title, "".concat(routeMeta.frontmatter
|
|
107
|
+
return createMetadataSection(toc.title, "".concat(generateRouteTitle(routeMeta.frontmatter), " - ").concat(meta.frontmatter.title, " - ").concat(toc.title), "".concat(routeAbsPath, "?").concat(TAB_QUERY_KEY, "=").concat(key, "#").concat(toc.id), meta.texts, i);
|
|
104
108
|
})));
|
|
105
109
|
return acc;
|
|
106
110
|
}, []);
|
|
107
111
|
metadata.push({
|
|
108
112
|
navTitle: routeNav === null || routeNav === void 0 ? void 0 : routeNav.title,
|
|
109
113
|
navOrder: routeNav ? nav.indexOf(routeNav) : Infinity,
|
|
110
|
-
title: routeMeta.frontmatter
|
|
114
|
+
title: generateRouteTitle(routeMeta.frontmatter),
|
|
111
115
|
link: routeAbsPath,
|
|
112
116
|
sections: [].concat(_toConsumableArray(orphanSection ? [orphanSection] : []), _toConsumableArray(tocSections), _toConsumableArray(tabSections)),
|
|
113
117
|
demos: ((_demosMapping$route$i = demosMapping[route.id]) === null || _demosMapping$route$i === void 0 ? void 0 : _demosMapping$route$i.map(function (demo) {
|
|
114
118
|
return {
|
|
115
119
|
link: "".concat(routeAbsPath, "#").concat(demo.asset.id),
|
|
116
120
|
rawTitle: demo.asset.title || '',
|
|
117
|
-
title: demo.asset.title || routeMeta.frontmatter
|
|
121
|
+
title: demo.asset.title || generateRouteTitle(routeMeta.frontmatter),
|
|
118
122
|
description: demo.asset.description || '',
|
|
119
123
|
keywords: demo.asset.keywords || []
|
|
120
124
|
};
|
package/package.json
CHANGED
|
@@ -27,7 +27,7 @@ var Previewer = function Previewer(props) {
|
|
|
27
27
|
style: ['string', 'number'].includes(_typeof(props.iframe)) ? {
|
|
28
28
|
height: Number(props.iframe)
|
|
29
29
|
} : {},
|
|
30
|
-
src:
|
|
30
|
+
src: props.demoUrl
|
|
31
31
|
}) : props.children), /*#__PURE__*/React.createElement("div", {
|
|
32
32
|
className: "dumi-default-previewer-meta"
|
|
33
33
|
}, (props.title || props.debug) && /*#__PURE__*/React.createElement("div", {
|
|
@@ -15,7 +15,7 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
15
15
|
import { ReactComponent as IconCheck } from '@ant-design/icons-svg/inline-svg/outlined/check.svg';
|
|
16
16
|
import { ReactComponent as IconCopy } from '@ant-design/icons-svg/inline-svg/outlined/copy.svg';
|
|
17
17
|
import Highlight, { defaultProps } from 'prism-react-renderer';
|
|
18
|
-
import 'prismjs/themes/prism.css';
|
|
18
|
+
import 'prismjs/themes/prism-coy.css';
|
|
19
19
|
import React, { useRef, useState } from 'react';
|
|
20
20
|
import { CopyToClipboard } from 'react-copy-to-clipboard';
|
|
21
21
|
import "./index.less";
|
|
@@ -4,17 +4,23 @@
|
|
|
4
4
|
@bg-color: tint(@c-site-bg, 50%);
|
|
5
5
|
|
|
6
6
|
position: relative;
|
|
7
|
-
font-size: 14px;
|
|
8
7
|
background-color: @bg-color;
|
|
9
8
|
border-bottom-left-radius: 4px;
|
|
10
9
|
border-bottom-right-radius: 4px;
|
|
11
10
|
|
|
12
11
|
> pre.prism-code {
|
|
13
12
|
margin: 0;
|
|
14
|
-
padding
|
|
15
|
-
|
|
13
|
+
padding: 18px 24px;
|
|
14
|
+
font-size: 14px;
|
|
15
|
+
line-height: 1.58;
|
|
16
16
|
direction: ltr;
|
|
17
17
|
background: transparent;
|
|
18
|
+
|
|
19
|
+
// remove shadow from coy theme
|
|
20
|
+
&::before,
|
|
21
|
+
&::after {
|
|
22
|
+
content: none;
|
|
23
|
+
}
|
|
18
24
|
}
|
|
19
25
|
|
|
20
26
|
&-copy {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
list-style: none;
|
|
5
5
|
margin: 12px 0 0;
|
|
6
6
|
padding: 4px 0;
|
|
7
|
-
border-
|
|
7
|
+
border-inline-start: 1px solid @c-border;
|
|
8
8
|
|
|
9
9
|
&:empty {
|
|
10
10
|
display: none;
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
&.active {
|
|
31
31
|
margin-inline-start: -1px;
|
|
32
32
|
color: @c-text;
|
|
33
|
-
border-
|
|
33
|
+
border-inline-start: 1px solid @c-primary;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
|