dumi 2.4.18 → 2.4.20
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.
|
@@ -47,7 +47,7 @@ function rehypeSlug() {
|
|
|
47
47
|
const slugger = new import_github_slugger.default();
|
|
48
48
|
vFile.data.toc = [];
|
|
49
49
|
visit(tree, "element", (node) => {
|
|
50
|
-
var _a, _b;
|
|
50
|
+
var _a, _b, _c;
|
|
51
51
|
if (HEADING_TAGS.includes(node.tagName)) {
|
|
52
52
|
const title = toString({
|
|
53
53
|
type: "element",
|
|
@@ -58,12 +58,16 @@ function rehypeSlug() {
|
|
|
58
58
|
)
|
|
59
59
|
}).trim();
|
|
60
60
|
const depth = Number(node.tagName.slice(1));
|
|
61
|
-
|
|
62
|
-
node.properties.id =
|
|
63
|
-
vFile.data.toc.push({
|
|
64
|
-
|
|
61
|
+
node.properties ?? (node.properties = {});
|
|
62
|
+
(_a = node.properties).id ?? (_a.id = slugger.slug(title));
|
|
63
|
+
vFile.data.toc.push({
|
|
64
|
+
id: node.properties.id,
|
|
65
|
+
depth,
|
|
66
|
+
title
|
|
67
|
+
});
|
|
68
|
+
} else if ([import_rehypeDemo.DUMI_DEMO_TAG, import_rehypeDemo.DUMI_DEMO_GRID_TAG].includes(node.tagName) && ((_b = node.data) == null ? void 0 : _b[import_rehypeDemo.DEMO_PROP_VALUE_KEY])) {
|
|
65
69
|
const demos = [].concat(
|
|
66
|
-
(
|
|
70
|
+
(_c = node.data) == null ? void 0 : _c[import_rehypeDemo.DEMO_PROP_VALUE_KEY]
|
|
67
71
|
);
|
|
68
72
|
demos.forEach(({ demo, previewerProps }) => {
|
|
69
73
|
var _a2, _b2;
|
package/package.json
CHANGED
|
@@ -95,8 +95,14 @@ var HANDLERS = {
|
|
|
95
95
|
return /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement(Token, null, '{'), props, /*#__PURE__*/React.createElement(Token, null, '}'));
|
|
96
96
|
},
|
|
97
97
|
array: function array(prop) {
|
|
98
|
+
var _this2 = this;
|
|
98
99
|
var arrayType = /*#__PURE__*/React.createElement("span", null, "any");
|
|
99
100
|
if (prop.items) {
|
|
101
|
+
if (Array.isArray(prop.items)) return /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement(Token, null, '['), prop.items.map(function (item, i) {
|
|
102
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
103
|
+
key: "".concat(i)
|
|
104
|
+
}, i > 0 && ', ', _this2.toNode(item));
|
|
105
|
+
}), /*#__PURE__*/React.createElement(Token, null, ']'));
|
|
100
106
|
var className = this.getValidClassName(prop.items);
|
|
101
107
|
arrayType = className !== null && className !== void 0 ? className : this.toNode(prop.items);
|
|
102
108
|
}
|
|
@@ -108,7 +114,7 @@ var HANDLERS = {
|
|
|
108
114
|
},
|
|
109
115
|
// FIXME: extract real type
|
|
110
116
|
function: function _function(_ref4) {
|
|
111
|
-
var
|
|
117
|
+
var _this3 = this;
|
|
112
118
|
var signature = _ref4.signature;
|
|
113
119
|
// handle Function type without signature
|
|
114
120
|
if (!signature) return /*#__PURE__*/React.createElement("span", null, "Function");
|
|
@@ -119,8 +125,8 @@ var HANDLERS = {
|
|
|
119
125
|
}, signature.isAsync ? /*#__PURE__*/React.createElement(Token, null, "async") : '', /*#__PURE__*/React.createElement(Token, null, '('), signature.arguments.map(function (arg, ai) {
|
|
120
126
|
return /*#__PURE__*/React.createElement("span", {
|
|
121
127
|
key: "".concat(si).concat(ai)
|
|
122
|
-
}, /*#__PURE__*/React.createElement("span", null, arg.key), arg.hasQuestionToken && /*#__PURE__*/React.createElement(Token, null, "?"), /*#__PURE__*/React.createElement(Token, null, ":"),
|
|
123
|
-
}), /*#__PURE__*/React.createElement(Token, null, ')'), /*#__PURE__*/React.createElement(Token, null, "=>"),
|
|
128
|
+
}, /*#__PURE__*/React.createElement("span", null, arg.key), arg.hasQuestionToken && /*#__PURE__*/React.createElement(Token, null, "?"), /*#__PURE__*/React.createElement(Token, null, ":"), _this3.toNode(!!arg.schema ? arg.schema : fixArg(arg)), ai < signature.arguments.length - 1 && /*#__PURE__*/React.createElement(Token, null, ","));
|
|
129
|
+
}), /*#__PURE__*/React.createElement(Token, null, ')'), /*#__PURE__*/React.createElement(Token, null, "=>"), _this3.toNode(signature.returnType), si < signatures.length - 1 && /*#__PURE__*/React.createElement(Token, null, "|"));
|
|
124
130
|
});
|
|
125
131
|
},
|
|
126
132
|
// FIXME: extract real type
|
|
@@ -139,20 +145,20 @@ var HANDLERS = {
|
|
|
139
145
|
}));
|
|
140
146
|
},
|
|
141
147
|
oneOf: function oneOf(prop) {
|
|
142
|
-
var
|
|
148
|
+
var _this4 = this;
|
|
143
149
|
return prop.oneOf.map(function (v, i) {
|
|
144
150
|
return /*#__PURE__*/React.createElement("span", {
|
|
145
151
|
key: i
|
|
146
|
-
},
|
|
152
|
+
}, _this4.getValidClassName(v) || _this4.toNode(v), i < prop.oneOf.length - 1 && /*#__PURE__*/React.createElement(Token, null, "|"));
|
|
147
153
|
});
|
|
148
154
|
},
|
|
149
155
|
reference: function reference(prop) {
|
|
150
|
-
var
|
|
156
|
+
var _this5 = this;
|
|
151
157
|
var typeParameters = prop.typeParameters || [];
|
|
152
158
|
var params = typeParameters.map(function (param, i) {
|
|
153
159
|
return /*#__PURE__*/React.createElement("span", {
|
|
154
160
|
key: i
|
|
155
|
-
},
|
|
161
|
+
}, _this5.toNode(param), i < typeParameters.length - 1 && /*#__PURE__*/React.createElement(Token, null, ","));
|
|
156
162
|
});
|
|
157
163
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("a", {
|
|
158
164
|
className: "dumi-default-api-link",
|
|
@@ -91,7 +91,9 @@ var SourceCode = function SourceCode(props) {
|
|
|
91
91
|
});
|
|
92
92
|
return /*#__PURE__*/React.createElement("div", {
|
|
93
93
|
className: "dumi-default-source-code"
|
|
94
|
-
}, /*#__PURE__*/React.createElement(
|
|
94
|
+
}, Boolean(lang) && /*#__PURE__*/React.createElement("span", {
|
|
95
|
+
className: "dumi-default-source-code-language"
|
|
96
|
+
}, lang), /*#__PURE__*/React.createElement(CopyToClipboard, {
|
|
95
97
|
text: text,
|
|
96
98
|
onCopy: function onCopy() {
|
|
97
99
|
setIsCopied(true);
|
|
@@ -158,6 +158,24 @@
|
|
|
158
158
|
visibility: hidden;
|
|
159
159
|
}
|
|
160
160
|
|
|
161
|
+
&-language {
|
|
162
|
+
position: absolute;
|
|
163
|
+
top: 2px;
|
|
164
|
+
right: 8px;
|
|
165
|
+
z-index: 2;
|
|
166
|
+
font-size: 12px;
|
|
167
|
+
font-weight: 500;
|
|
168
|
+
user-select: none;
|
|
169
|
+
user-select: none;
|
|
170
|
+
color: @c-text-note;
|
|
171
|
+
transition: color 0.4s, opacity 0.4s;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
&:hover &-language {
|
|
175
|
+
opacity: 0;
|
|
176
|
+
visibility: hidden;
|
|
177
|
+
}
|
|
178
|
+
|
|
161
179
|
@{dark-selector} & {
|
|
162
180
|
@bg-color: shade(@c-site-bg-dark, 50%);
|
|
163
181
|
|