sourcey 3.6.3 → 3.6.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.
- package/README.md +58 -14
- package/dist/astro/index.d.ts +89 -0
- package/dist/astro/index.d.ts.map +1 -0
- package/dist/astro/index.js +297 -0
- package/dist/cli.js +8 -0
- package/dist/client/scroll-tracker.js +3 -3
- package/dist/client/tabs.js +144 -95
- package/dist/components/layout/Sidebar.d.ts.map +1 -1
- package/dist/components/layout/Sidebar.js +1 -1
- package/dist/components/openapi/Operation.js +1 -1
- package/dist/components/openapi/Tags.js +1 -1
- package/dist/core/navigation.d.ts +4 -0
- package/dist/core/navigation.d.ts.map +1 -1
- package/dist/core/navigation.js +7 -1
- package/dist/core/sourcey-rustdoc/Cargo.lock +14 -18
- package/dist/core/sourcey-rustdoc/Cargo.toml +1 -1
- package/dist/core/sourcey-rustdoc/README.md +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -112
- package/dist/renderer/static-files.d.ts +6 -0
- package/dist/renderer/static-files.d.ts.map +1 -0
- package/dist/renderer/static-files.js +76 -0
- package/dist/site.d.ts +38 -0
- package/dist/site.d.ts.map +1 -0
- package/dist/site.js +159 -0
- package/dist/themes/default/sourcey.css +323 -59
- package/dist/utils/server-warnings.d.ts +4 -0
- package/dist/utils/server-warnings.d.ts.map +1 -0
- package/dist/utils/server-warnings.js +41 -0
- package/dist/vite-plugin.d.ts.map +1 -1
- package/dist/vite-plugin.js +1 -53
- package/package.json +7 -3
package/dist/client/tabs.js
CHANGED
|
@@ -11,15 +11,15 @@
|
|
|
11
11
|
// ── Language Dropdown ──────────────────────────────────────────────
|
|
12
12
|
|
|
13
13
|
// Toggle dropdown open/close
|
|
14
|
-
document.addEventListener(
|
|
15
|
-
var trigger = e.target.closest(
|
|
14
|
+
document.addEventListener("click", function (e) {
|
|
15
|
+
var trigger = e.target.closest(".code-lang-trigger");
|
|
16
16
|
|
|
17
17
|
// Close all open dropdowns first
|
|
18
|
-
document.querySelectorAll(
|
|
18
|
+
document.querySelectorAll(".code-lang-menu").forEach(function (menu) {
|
|
19
19
|
if (!trigger || !menu.parentElement.contains(trigger)) {
|
|
20
|
-
menu
|
|
21
|
-
var btn = menu.parentElement.querySelector(
|
|
22
|
-
if (btn) btn.setAttribute(
|
|
20
|
+
closeMenu(menu);
|
|
21
|
+
var btn = menu.parentElement.querySelector(".code-lang-trigger");
|
|
22
|
+
if (btn) btn.setAttribute("aria-expanded", "false");
|
|
23
23
|
}
|
|
24
24
|
});
|
|
25
25
|
|
|
@@ -29,26 +29,31 @@
|
|
|
29
29
|
var menu = trigger.nextElementSibling;
|
|
30
30
|
if (!menu) return;
|
|
31
31
|
|
|
32
|
-
var isOpen = !menu.classList.contains(
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
var isOpen = !menu.classList.contains("hidden");
|
|
33
|
+
if (isOpen) {
|
|
34
|
+
closeMenu(menu);
|
|
35
|
+
} else {
|
|
36
|
+
menu.classList.remove("hidden");
|
|
37
|
+
positionMenu(trigger, menu);
|
|
38
|
+
}
|
|
39
|
+
trigger.setAttribute("aria-expanded", isOpen ? "false" : "true");
|
|
35
40
|
});
|
|
36
41
|
|
|
37
42
|
// Select a language / example variant from the dropdown
|
|
38
|
-
document.addEventListener(
|
|
39
|
-
var option = e.target.closest(
|
|
43
|
+
document.addEventListener("click", function (e) {
|
|
44
|
+
var option = e.target.closest(".code-lang-option");
|
|
40
45
|
if (!option) return;
|
|
41
46
|
|
|
42
|
-
var dropdown = option.closest(
|
|
43
|
-
var canSync = !!(dropdown && dropdown.hasAttribute(
|
|
47
|
+
var dropdown = option.closest(".code-lang-dropdown");
|
|
48
|
+
var canSync = !!(dropdown && dropdown.hasAttribute("data-lang-sync"));
|
|
44
49
|
var lang = option.textContent.trim();
|
|
45
50
|
|
|
46
51
|
// Close the menu
|
|
47
|
-
var menu = option.closest(
|
|
52
|
+
var menu = option.closest(".code-lang-menu");
|
|
48
53
|
if (menu) {
|
|
49
|
-
menu
|
|
50
|
-
var trigger = menu.parentElement.querySelector(
|
|
51
|
-
if (trigger) trigger.setAttribute(
|
|
54
|
+
closeMenu(menu);
|
|
55
|
+
var trigger = menu.parentElement.querySelector(".code-lang-trigger");
|
|
56
|
+
if (trigger) trigger.setAttribute("aria-expanded", "false");
|
|
52
57
|
}
|
|
53
58
|
|
|
54
59
|
var scrollY = window.scrollY;
|
|
@@ -57,10 +62,11 @@
|
|
|
57
62
|
// Sync language across code-sample groups only (not example variants).
|
|
58
63
|
if (canSync && lang !== selectedLang) {
|
|
59
64
|
selectedLang = lang;
|
|
60
|
-
var ownGroup = option.closest(
|
|
61
|
-
document.querySelectorAll(
|
|
62
|
-
if (group === ownGroup || !group.querySelector(
|
|
63
|
-
|
|
65
|
+
var ownGroup = option.closest(".code-group");
|
|
66
|
+
document.querySelectorAll(".code-group").forEach(function (group) {
|
|
67
|
+
if (group === ownGroup || !group.querySelector(".code-lang-dropdown[data-lang-sync]"))
|
|
68
|
+
return;
|
|
69
|
+
group.querySelectorAll(".code-lang-option").forEach(function (opt) {
|
|
64
70
|
if (opt.textContent.trim() === lang) activateLang(opt);
|
|
65
71
|
});
|
|
66
72
|
});
|
|
@@ -69,78 +75,115 @@
|
|
|
69
75
|
window.scrollTo(0, scrollY);
|
|
70
76
|
});
|
|
71
77
|
|
|
78
|
+
function closeMenu(menu) {
|
|
79
|
+
menu.classList.add("hidden");
|
|
80
|
+
menu.style.position = "";
|
|
81
|
+
menu.style.top = "";
|
|
82
|
+
menu.style.right = "";
|
|
83
|
+
menu.style.bottom = "";
|
|
84
|
+
menu.style.maxHeight = "";
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
function positionMenu(trigger, menu) {
|
|
88
|
+
var rect = trigger.getBoundingClientRect();
|
|
89
|
+
var gap = 4;
|
|
90
|
+
var viewportPadding = 8;
|
|
91
|
+
var below = window.innerHeight - rect.bottom - viewportPadding;
|
|
92
|
+
var above = rect.top - viewportPadding;
|
|
93
|
+
var openUp = below < 160 && above > below;
|
|
94
|
+
|
|
95
|
+
menu.style.position = "fixed";
|
|
96
|
+
menu.style.right = Math.max(viewportPadding, window.innerWidth - rect.right) + "px";
|
|
97
|
+
menu.style.maxHeight = Math.max(96, Math.floor((openUp ? above : below) - gap)) + "px";
|
|
98
|
+
|
|
99
|
+
if (openUp) {
|
|
100
|
+
menu.style.top = "";
|
|
101
|
+
menu.style.bottom = Math.max(viewportPadding, window.innerHeight - rect.top + gap) + "px";
|
|
102
|
+
} else {
|
|
103
|
+
menu.style.bottom = "";
|
|
104
|
+
menu.style.top = Math.min(window.innerHeight - viewportPadding, rect.bottom + gap) + "px";
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
|
|
72
108
|
// The panels a dropdown controls. A header variant dropdown (in the shared
|
|
73
109
|
// card header) drives the matching response status panel; otherwise panels
|
|
74
110
|
// live in the dropdown's own `.code-lang-scope` or `.code-group`.
|
|
75
111
|
function panelScopeForOption(option) {
|
|
76
|
-
var headerWrap = option.closest(
|
|
112
|
+
var headerWrap = option.closest("[data-response-dropdown]");
|
|
77
113
|
if (headerWrap) {
|
|
78
|
-
var idx = headerWrap.getAttribute(
|
|
79
|
-
var group = headerWrap.closest(
|
|
80
|
-
var panel =
|
|
114
|
+
var idx = headerWrap.getAttribute("data-response-dropdown");
|
|
115
|
+
var group = headerWrap.closest(".code-group");
|
|
116
|
+
var panel =
|
|
117
|
+
group && group.querySelector('.response-panel[data-response-panel="' + idx + '"]');
|
|
81
118
|
if (panel) return panel;
|
|
82
119
|
}
|
|
83
|
-
return option.closest(
|
|
120
|
+
return option.closest(".code-lang-scope") || option.closest(".code-group");
|
|
84
121
|
}
|
|
85
122
|
|
|
86
123
|
function activateLang(option) {
|
|
87
|
-
var dropdown = option.closest(
|
|
124
|
+
var dropdown = option.closest(".code-lang-dropdown");
|
|
88
125
|
var scope = panelScopeForOption(option);
|
|
89
|
-
var index = option.getAttribute(
|
|
126
|
+
var index = option.getAttribute("data-lang-index");
|
|
90
127
|
|
|
91
128
|
// Update the dropdown label + options (label/trigger live in the dropdown,
|
|
92
129
|
// which for a header variant switcher is separate from the panel scope).
|
|
93
130
|
if (dropdown) {
|
|
94
|
-
var label = dropdown.querySelector(
|
|
95
|
-
dropdown.querySelectorAll(
|
|
96
|
-
var isActive = opt.getAttribute(
|
|
97
|
-
opt.setAttribute(
|
|
98
|
-
opt.className = opt.className.replace(/(dark:)?text-\[rgb\([^\]]+\)\]/g,
|
|
131
|
+
var label = dropdown.querySelector(".code-lang-label");
|
|
132
|
+
dropdown.querySelectorAll(".code-lang-option").forEach(function (opt) {
|
|
133
|
+
var isActive = opt.getAttribute("data-lang-index") === index;
|
|
134
|
+
opt.setAttribute("aria-selected", isActive ? "true" : "false");
|
|
135
|
+
opt.className = opt.className.replace(/(dark:)?text-\[rgb\([^\]]+\)\]/g, "").trim();
|
|
99
136
|
if (isActive) {
|
|
100
|
-
opt.classList.add(
|
|
137
|
+
opt.classList.add(
|
|
138
|
+
"text-[rgb(var(--color-primary))]",
|
|
139
|
+
"dark:text-[rgb(var(--color-primary-light))]",
|
|
140
|
+
);
|
|
101
141
|
if (label) label.textContent = opt.textContent.trim();
|
|
102
|
-
var triggerIcon = dropdown.querySelector(
|
|
103
|
-
var optIcon = opt.querySelector(
|
|
142
|
+
var triggerIcon = dropdown.querySelector(".code-lang-trigger .code-lang-icon");
|
|
143
|
+
var optIcon = opt.querySelector(".lang-icon");
|
|
104
144
|
if (triggerIcon && optIcon) triggerIcon.innerHTML = optIcon.outerHTML;
|
|
105
145
|
} else {
|
|
106
|
-
opt.classList.add(
|
|
146
|
+
opt.classList.add(
|
|
147
|
+
"text-[rgb(var(--color-stone-600))]",
|
|
148
|
+
"dark:text-[rgb(var(--color-stone-400))]",
|
|
149
|
+
);
|
|
107
150
|
}
|
|
108
151
|
});
|
|
109
152
|
}
|
|
110
153
|
|
|
111
154
|
// Update panels within the controlled scope.
|
|
112
155
|
if (scope) {
|
|
113
|
-
scope.querySelectorAll(
|
|
114
|
-
p.classList.toggle(
|
|
156
|
+
scope.querySelectorAll(".code-lang-panel").forEach(function (p) {
|
|
157
|
+
p.classList.toggle("active", p.getAttribute("data-lang-panel") === index);
|
|
115
158
|
});
|
|
116
159
|
}
|
|
117
160
|
}
|
|
118
161
|
|
|
119
162
|
// ── Response Tabs ──────────────────────────────────────────────────
|
|
120
163
|
|
|
121
|
-
document.addEventListener(
|
|
122
|
-
var tab = e.target.closest(
|
|
164
|
+
document.addEventListener("click", function (e) {
|
|
165
|
+
var tab = e.target.closest(".response-tab");
|
|
123
166
|
if (!tab) return;
|
|
124
167
|
|
|
125
|
-
var container = tab.closest(
|
|
126
|
-
var index = tab.getAttribute(
|
|
168
|
+
var container = tab.closest(".response-tabs");
|
|
169
|
+
var index = tab.getAttribute("data-response-index");
|
|
127
170
|
var scrollY = window.scrollY;
|
|
128
171
|
|
|
129
172
|
// Update tabs
|
|
130
|
-
container.querySelectorAll(
|
|
131
|
-
var isActive = t.getAttribute(
|
|
132
|
-
t.classList.toggle(
|
|
133
|
-
t.setAttribute(
|
|
173
|
+
container.querySelectorAll(".response-tab").forEach(function (t) {
|
|
174
|
+
var isActive = t.getAttribute("data-response-index") === index;
|
|
175
|
+
t.classList.toggle("active", isActive);
|
|
176
|
+
t.setAttribute("aria-selected", isActive ? "true" : "false");
|
|
134
177
|
});
|
|
135
178
|
|
|
136
179
|
// Update panels
|
|
137
|
-
container.querySelectorAll(
|
|
138
|
-
p.classList.toggle(
|
|
180
|
+
container.querySelectorAll(".response-panel").forEach(function (p) {
|
|
181
|
+
p.classList.toggle("active", p.getAttribute("data-response-panel") === index);
|
|
139
182
|
});
|
|
140
183
|
|
|
141
184
|
// Show only the active status's variant switcher in the header.
|
|
142
|
-
container.querySelectorAll(
|
|
143
|
-
d.classList.toggle(
|
|
185
|
+
container.querySelectorAll("[data-response-dropdown]").forEach(function (d) {
|
|
186
|
+
d.classList.toggle("hidden", d.getAttribute("data-response-dropdown") !== index);
|
|
144
187
|
});
|
|
145
188
|
|
|
146
189
|
window.scrollTo(0, scrollY);
|
|
@@ -148,35 +191,37 @@
|
|
|
148
191
|
|
|
149
192
|
// ── Copy Button ────────────────────────────────────────────────────
|
|
150
193
|
|
|
151
|
-
document.addEventListener(
|
|
152
|
-
var btn = e.target.closest(
|
|
194
|
+
document.addEventListener("click", function (e) {
|
|
195
|
+
var btn = e.target.closest(".copy-btn");
|
|
153
196
|
if (!btn) return;
|
|
154
197
|
|
|
155
|
-
var container = btn.closest(
|
|
198
|
+
var container = btn.closest(".code-group") || btn.closest(".prose-code-block");
|
|
156
199
|
if (!container) return;
|
|
157
200
|
|
|
158
201
|
// Find the active panel's code, or the nearest code element. With nested
|
|
159
202
|
// panels (a variant switcher inside a response tab), prefer the deepest
|
|
160
203
|
// active panel, which is last in document order.
|
|
161
|
-
var activePanels = container.querySelectorAll(
|
|
204
|
+
var activePanels = container.querySelectorAll(
|
|
205
|
+
".code-lang-panel.active, .response-panel.active",
|
|
206
|
+
);
|
|
162
207
|
var activePanel = activePanels.length ? activePanels[activePanels.length - 1] : null;
|
|
163
208
|
var codeEl = activePanel
|
|
164
|
-
? activePanel.querySelector(
|
|
165
|
-
: container.querySelector(
|
|
209
|
+
? activePanel.querySelector("code, .code-block, .font-mono")
|
|
210
|
+
: container.querySelector("code, .code-block, .font-mono");
|
|
166
211
|
|
|
167
212
|
if (!codeEl) return;
|
|
168
213
|
|
|
169
|
-
var text = codeEl.textContent ||
|
|
214
|
+
var text = codeEl.textContent || "";
|
|
170
215
|
navigator.clipboard.writeText(text).then(function () {
|
|
171
|
-
btn.classList.add(
|
|
216
|
+
btn.classList.add("copied");
|
|
172
217
|
var tooltip = btn.nextElementSibling;
|
|
173
|
-
if (tooltip && tooltip.classList.contains(
|
|
174
|
-
tooltip.textContent =
|
|
218
|
+
if (tooltip && tooltip.classList.contains("copy-tooltip")) {
|
|
219
|
+
tooltip.textContent = "Copied!";
|
|
175
220
|
}
|
|
176
221
|
setTimeout(function () {
|
|
177
|
-
btn.classList.remove(
|
|
178
|
-
if (tooltip && tooltip.classList.contains(
|
|
179
|
-
tooltip.textContent =
|
|
222
|
+
btn.classList.remove("copied");
|
|
223
|
+
if (tooltip && tooltip.classList.contains("copy-tooltip")) {
|
|
224
|
+
tooltip.textContent = "Copy";
|
|
180
225
|
}
|
|
181
226
|
}, 2000);
|
|
182
227
|
});
|
|
@@ -185,64 +230,68 @@
|
|
|
185
230
|
// ── Rust Doctest Hidden-Line Toggle ──────────────────────────────
|
|
186
231
|
// (Copy is handled by the shared .copy-btn inside each code block.)
|
|
187
232
|
|
|
188
|
-
document.addEventListener(
|
|
189
|
-
var toggleBtn = e.target.closest(
|
|
233
|
+
document.addEventListener("click", function (e) {
|
|
234
|
+
var toggleBtn = e.target.closest(".rust-doctest-toggle-hidden");
|
|
190
235
|
if (!toggleBtn) return;
|
|
191
|
-
var fullSel = toggleBtn.getAttribute(
|
|
192
|
-
var displaySel = toggleBtn.getAttribute(
|
|
193
|
-
var fullEl = fullSel ? document.getElementById(fullSel.replace(/^#/,
|
|
194
|
-
var displayEl = displaySel ? document.getElementById(displaySel.replace(/^#/,
|
|
236
|
+
var fullSel = toggleBtn.getAttribute("data-target");
|
|
237
|
+
var displaySel = toggleBtn.getAttribute("data-display");
|
|
238
|
+
var fullEl = fullSel ? document.getElementById(fullSel.replace(/^#/, "")) : null;
|
|
239
|
+
var displayEl = displaySel ? document.getElementById(displaySel.replace(/^#/, "")) : null;
|
|
195
240
|
if (!fullEl || !displayEl) return;
|
|
196
|
-
var fullHidden = fullEl.hasAttribute(
|
|
241
|
+
var fullHidden = fullEl.hasAttribute("hidden");
|
|
197
242
|
if (fullHidden) {
|
|
198
|
-
fullEl.removeAttribute(
|
|
199
|
-
displayEl.setAttribute(
|
|
200
|
-
toggleBtn.textContent =
|
|
243
|
+
fullEl.removeAttribute("hidden");
|
|
244
|
+
displayEl.setAttribute("hidden", "");
|
|
245
|
+
toggleBtn.textContent = "Hide hidden lines";
|
|
201
246
|
} else {
|
|
202
|
-
fullEl.setAttribute(
|
|
203
|
-
displayEl.removeAttribute(
|
|
204
|
-
toggleBtn.textContent =
|
|
247
|
+
fullEl.setAttribute("hidden", "");
|
|
248
|
+
displayEl.removeAttribute("hidden");
|
|
249
|
+
toggleBtn.textContent = "Show hidden lines";
|
|
205
250
|
}
|
|
206
251
|
});
|
|
207
252
|
|
|
208
253
|
// Close dropdowns on Escape
|
|
209
|
-
document.addEventListener(
|
|
210
|
-
if (e.key ===
|
|
211
|
-
document.querySelectorAll(
|
|
212
|
-
menu.classList.add(
|
|
213
|
-
var btn = menu.parentElement.querySelector(
|
|
214
|
-
if (btn) btn.setAttribute(
|
|
254
|
+
document.addEventListener("keydown", function (e) {
|
|
255
|
+
if (e.key === "Escape") {
|
|
256
|
+
document.querySelectorAll(".code-lang-menu").forEach(function (menu) {
|
|
257
|
+
menu.classList.add("hidden");
|
|
258
|
+
var btn = menu.parentElement.querySelector(".code-lang-trigger");
|
|
259
|
+
if (btn) btn.setAttribute("aria-expanded", "false");
|
|
215
260
|
});
|
|
216
261
|
}
|
|
217
262
|
});
|
|
218
263
|
|
|
219
264
|
// ── Directive Tabs (:::tabs and :::code-group) ────────────────────
|
|
220
265
|
|
|
221
|
-
document.addEventListener(
|
|
222
|
-
var tab = e.target.closest(
|
|
266
|
+
document.addEventListener("click", function (e) {
|
|
267
|
+
var tab = e.target.closest(".directive-tab");
|
|
223
268
|
if (!tab) return;
|
|
224
269
|
|
|
225
|
-
var group = tab.getAttribute(
|
|
226
|
-
var index = tab.getAttribute(
|
|
270
|
+
var group = tab.getAttribute("data-tab-group");
|
|
271
|
+
var index = tab.getAttribute("data-tab-index");
|
|
227
272
|
var scrollY = window.scrollY;
|
|
228
273
|
|
|
229
274
|
// Update tab buttons
|
|
230
|
-
document
|
|
231
|
-
|
|
232
|
-
|
|
275
|
+
document
|
|
276
|
+
.querySelectorAll('.directive-tab[data-tab-group="' + group + '"]')
|
|
277
|
+
.forEach(function (t) {
|
|
278
|
+
t.classList.toggle("active", t.getAttribute("data-tab-index") === index);
|
|
279
|
+
});
|
|
233
280
|
|
|
234
281
|
// Update panels
|
|
235
|
-
document
|
|
236
|
-
|
|
237
|
-
|
|
282
|
+
document
|
|
283
|
+
.querySelectorAll('.directive-tab-panel[data-tab-group="' + group + '"]')
|
|
284
|
+
.forEach(function (p) {
|
|
285
|
+
p.classList.toggle("active", p.getAttribute("data-tab-index") === index);
|
|
286
|
+
});
|
|
238
287
|
|
|
239
288
|
window.scrollTo(0, scrollY);
|
|
240
289
|
});
|
|
241
290
|
}
|
|
242
291
|
|
|
243
|
-
if (
|
|
292
|
+
if ("requestIdleCallback" in window) {
|
|
244
293
|
window.requestIdleCallback(init, { timeout: 250 });
|
|
245
294
|
} else {
|
|
246
|
-
window.addEventListener(
|
|
295
|
+
window.addEventListener("load", init, { once: true });
|
|
247
296
|
}
|
|
248
297
|
})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sidebar.d.ts","sourceRoot":"","sources":["../../../src/components/layout/Sidebar.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Sidebar.d.ts","sourceRoot":"","sources":["../../../src/components/layout/Sidebar.tsx"],"names":[],"mappings":"AAsGA;;GAEG;AACH,wBAAgB,OAAO,wCA2GtB"}
|
|
@@ -32,7 +32,7 @@ function MethodPill({ method }) {
|
|
|
32
32
|
* Shared nav group rendering used by both desktop sidebar and mobile drawer.
|
|
33
33
|
*/
|
|
34
34
|
function NavGroups({ groups, activePageSlug, base }) {
|
|
35
|
-
return (_jsx(_Fragment, { children: groups.map((group, gi) => (_jsxs("div", { class: gi > 0 ? "mt-6 lg:mt-8" : "", children: [group.label && (_jsx("h5", { class: "nav-group-label", children: group.label })), _jsx("ul", { class: "space-y-px", children: group.items.map((item) => {
|
|
35
|
+
return (_jsx(_Fragment, { children: groups.map((group, gi) => (_jsxs("div", { class: gi > 0 ? "mt-6 lg:mt-8" : "", children: [group.label && (group.href ? (_jsx("a", { href: `${base}${group.href}`, class: `nav-group-label nav-group-link${group.id === activePageSlug ? " active" : ""}`, children: group.label })) : (_jsx("h5", { class: "nav-group-label", children: group.label }))), _jsx("ul", { class: "space-y-px", children: group.items.map((item) => {
|
|
36
36
|
const isActive = item.id === activePageSlug;
|
|
37
37
|
return (_jsx("li", { children: _jsxs("a", { href: `${base}${item.href}`, class: `nav-link${isActive ? " active" : ""}`, children: [item.method && _jsx(MethodPill, { method: item.method }), _jsx("span", { class: "flex-1 break-words [word-break:break-word]", children: item.label })] }) }, item.id));
|
|
38
38
|
}) })] }, group.label))) }));
|
|
@@ -26,7 +26,7 @@ export function Operation({ operation: op, serverUrl }) {
|
|
|
26
26
|
const hasParams = op.parameters.length > 0;
|
|
27
27
|
const hasBody = !!op.requestBody;
|
|
28
28
|
const mcp = op.mcpExtras;
|
|
29
|
-
return (_jsxs("div", { id: id, class: "py-8 border-t border-[rgb(var(--color-gray-100))] dark:border-[rgb(var(--color-gray-800))]", "data-traverse-target": id, children: [_jsx("header", { class: "mb-6", children: op.summary && (_jsxs("div", { class: "flex items-baseline gap-2 flex-wrap", children: [_jsx("h2", { class: "text-2xl sm:text-3xl text-[rgb(var(--color-gray-900))] dark:text-[rgb(var(--color-gray-200))] tracking-tight font-bold mb-2", children: _jsx(Markdown, { content: op.summary, inline: true }) }), op.deprecated && _jsx(DeprecatedBadge, {}), mcp?.annotations && _jsx(AnnotationBadges, { annotations: mcp.annotations })] })) }), mcp ? (_jsx(McpEndpointBar, { method: op.method, path: op.path })) : (_jsx(EndpointBar, { method: op.method, path: op.path, serverUrl: serverUrl })), _jsxs("div", { class: `flex flex-col ${apiFirst ? "lg:flex-row" : "xl:flex-row"} gap-8`, children: [_jsxs("div", { class: "flex-1 min-w-0", children: [op.description && (_jsx(Markdown, { content: op.description, class: "mb-6" })), hasBody && (_jsxs("div", { class: "mt-6", children: [_jsx(SectionLabel, { meta: bodyMediaType(op.requestBody), children: "Body" }), _jsx(RequestBody, { body: op.requestBody })] })), hasParams && (_jsxs("div", { class: "mt-6", children: [_jsx(SectionLabel, { children: "Parameters" }), _jsx(Parameters, { parameters: op.parameters })] })), mcp ? (_jsx(McpReturnsCopy, { schema: mcp.outputSchema })) : (op.responses.length > 0 && (_jsxs("div", { class: "mt-6", children: [_jsx(SectionLabel, { children: "Response" }), _jsx(ResponsesCopy, { responses: op.responses })] }))), !mcp && _jsx(SecurityCopy, { security: op.security })] }), _jsxs("aside", { class: `hidden ${apiFirst ? "lg:block" : "xl:block"} w-[28rem] shrink-0 sticky self-start overflow-y-auto space-y-4`, style: "top: calc(var(--header-height) + 2.5rem); max-height: calc(100vh - var(--header-height) - 5rem)", children: [_jsx(CodeSamplesExamples, { operation: op, serverUrl: serverUrl, codeSampleLangs: site.codeSamples }), hasBody && _jsx(RequestBodyExample, { body: op.requestBody }), mcp ? (_jsx(McpReturnsExample, { schema: mcp.outputSchema })) : (_jsx(ResponsesExamples, { responses: op.responses }))] })] }), _jsxs("div", { class: `${apiFirst ? "lg:hidden" : "xl:hidden"} mt-8 space-y-4`, children: [_jsx(CodeSamplesExamples, { operation: op, serverUrl: serverUrl, codeSampleLangs: site.codeSamples }), hasBody && _jsx(RequestBodyExample, { body: op.requestBody }), mcp ? (_jsx(McpReturnsExample, { schema: mcp.outputSchema })) : (_jsx(ResponsesExamples, { responses: op.responses }))] })] }));
|
|
29
|
+
return (_jsxs("div", { id: id, class: "py-8 border-t border-[rgb(var(--color-gray-100))] dark:border-[rgb(var(--color-gray-800))]", "data-traverse-target": id, children: [_jsx("header", { class: "mb-6", children: op.summary && (_jsxs("div", { class: "flex items-baseline gap-2 flex-wrap", children: [_jsx("h2", { class: "text-2xl sm:text-3xl text-[rgb(var(--color-gray-900))] dark:text-[rgb(var(--color-gray-200))] tracking-tight font-bold mb-2", children: _jsx(Markdown, { content: op.summary, inline: true }) }), op.deprecated && _jsx(DeprecatedBadge, {}), mcp?.annotations && _jsx(AnnotationBadges, { annotations: mcp.annotations })] })) }), mcp ? (_jsx(McpEndpointBar, { method: op.method, path: op.path })) : (_jsx(EndpointBar, { method: op.method, path: op.path, serverUrl: serverUrl })), _jsxs("div", { class: `flex flex-col ${apiFirst ? "lg:flex-row" : "xl:flex-row"} gap-8`, children: [_jsxs("div", { class: "flex-1 min-w-0", children: [op.description && (_jsx(Markdown, { content: op.description, class: "mb-6 max-w-none" })), hasBody && (_jsxs("div", { class: "mt-6", children: [_jsx(SectionLabel, { meta: bodyMediaType(op.requestBody), children: "Body" }), _jsx(RequestBody, { body: op.requestBody })] })), hasParams && (_jsxs("div", { class: "mt-6", children: [_jsx(SectionLabel, { children: "Parameters" }), _jsx(Parameters, { parameters: op.parameters })] })), mcp ? (_jsx(McpReturnsCopy, { schema: mcp.outputSchema })) : (op.responses.length > 0 && (_jsxs("div", { class: "mt-6", children: [_jsx(SectionLabel, { children: "Response" }), _jsx(ResponsesCopy, { responses: op.responses })] }))), !mcp && _jsx(SecurityCopy, { security: op.security })] }), _jsxs("aside", { class: `hidden ${apiFirst ? "lg:block" : "xl:block"} w-[28rem] shrink-0 sticky self-start overflow-y-auto space-y-4`, style: "top: calc(var(--header-height) + 2.5rem); max-height: calc(100vh - var(--header-height) - 5rem)", children: [_jsx(CodeSamplesExamples, { operation: op, serverUrl: serverUrl, codeSampleLangs: site.codeSamples }), hasBody && _jsx(RequestBodyExample, { body: op.requestBody }), mcp ? (_jsx(McpReturnsExample, { schema: mcp.outputSchema })) : (_jsx(ResponsesExamples, { responses: op.responses }))] })] }), _jsxs("div", { class: `${apiFirst ? "lg:hidden" : "xl:hidden"} mt-8 space-y-4`, children: [_jsx(CodeSamplesExamples, { operation: op, serverUrl: serverUrl, codeSampleLangs: site.codeSamples }), hasBody && _jsx(RequestBodyExample, { body: op.requestBody }), mcp ? (_jsx(McpReturnsExample, { schema: mcp.outputSchema })) : (_jsx(ResponsesExamples, { responses: op.responses }))] })] }));
|
|
30
30
|
}
|
|
31
31
|
function bodyMediaType(body) {
|
|
32
32
|
const types = Object.keys(body.content);
|
|
@@ -11,6 +11,6 @@ export function Tags({ tags, serverUrl }) {
|
|
|
11
11
|
.map((tag) => {
|
|
12
12
|
const parents = tagLineage(tag, tagsByName);
|
|
13
13
|
const displayName = tagDisplayName(tag);
|
|
14
|
-
return (_jsxs("div", { class: tag.parent ? "mt-8" : "mt-12", children: [_jsxs("div", { id: `tag-${htmlId(tag.name)}`, "data-traverse-target": `tag-${htmlId(tag.name)}`, class: "mb-6", children: [parents.length > 0 && (_jsx("div", { class: "mb-2 text-xs font-medium uppercase tracking-[0.12em] text-[rgb(var(--color-gray-500))]", children: parents.map(tagDisplayName).join(" / ") })), _jsxs("div", { class: "mb-2 flex flex-wrap items-center gap-2", children: [_jsx("h1", { class: "text-
|
|
14
|
+
return (_jsxs("div", { class: tag.parent ? "mt-8" : "mt-12", children: [_jsxs("div", { id: `tag-${htmlId(tag.name)}`, "data-traverse-target": `tag-${htmlId(tag.name)}`, class: "mb-6", children: [parents.length > 0 && (_jsx("div", { class: "mb-2 text-xs font-medium uppercase tracking-[0.12em] text-[rgb(var(--color-gray-500))]", children: parents.map(tagDisplayName).join(" / ") })), _jsxs("div", { class: "mb-2 flex flex-wrap items-center gap-2", children: [_jsx("h1", { class: "text-2xl sm:text-3xl font-bold tracking-tight text-[rgb(var(--color-gray-900))] dark:text-[rgb(var(--color-gray-200))]", children: displayName }), tag.summary && tag.summary !== tag.name && (_jsx(Badge, { children: _jsx("code", { children: tag.name }) })), tag.kind && _jsx(Badge, { children: tag.kind })] }), tag.description && (_jsx(Markdown, { content: tag.description, class: "text-sm max-w-none" }))] }), tag.operations.map((op) => (_jsx(Operation, { operation: op, serverUrl: serverUrl }, `${op.method}-${op.path}`)))] }, tag.name));
|
|
15
15
|
}) }));
|
|
16
16
|
}
|
|
@@ -17,6 +17,10 @@ export interface SiteTab {
|
|
|
17
17
|
}
|
|
18
18
|
export interface SiteNavGroup {
|
|
19
19
|
label: string;
|
|
20
|
+
/** Optional section link for generated groups such as OpenAPI tag intros. */
|
|
21
|
+
href?: string;
|
|
22
|
+
/** Unique ID for section-level active-state matching. */
|
|
23
|
+
id?: string;
|
|
20
24
|
items: SiteNavItem[];
|
|
21
25
|
}
|
|
22
26
|
export interface SiteNavItem {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/core/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAgB/D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,MAAM,EAAE,YAAY,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,MAAM,EACf,UAAU,GAAE,UAAkB,GAC7B,OAAO,
|
|
1
|
+
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/core/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAgB/D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,MAAM,EAAE,YAAY,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,MAAM,EACf,UAAU,GAAE,UAAkB,GAC7B,OAAO,CAuDT;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,WAAW,EAChB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,EAClC,UAAU,GAAE,UAAkB,GAC7B,OAAO,CA8BT;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,cAAc,CASnE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,cAAc,EACnB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,cAAc,CAEhB"}
|
package/dist/core/navigation.js
CHANGED
|
@@ -40,6 +40,7 @@ export function buildNavFromSpec(spec, tabSlug, prettyUrls = false) {
|
|
|
40
40
|
for (const tag of spec.tags) {
|
|
41
41
|
if (tag.hidden)
|
|
42
42
|
continue;
|
|
43
|
+
const tagId = `tag-${htmlId(tag.name)}`;
|
|
43
44
|
const items = tag.operations.map((op) => ({
|
|
44
45
|
label: op.summary ?? `${op.method.toUpperCase()} ${op.path}`,
|
|
45
46
|
href: `${basePath}#operation-${htmlId(op.path)}-${htmlId(op.method)}`,
|
|
@@ -48,7 +49,12 @@ export function buildNavFromSpec(spec, tabSlug, prettyUrls = false) {
|
|
|
48
49
|
}));
|
|
49
50
|
if (!items.length)
|
|
50
51
|
continue;
|
|
51
|
-
groups.push({
|
|
52
|
+
groups.push({
|
|
53
|
+
label: tagNavigationLabel(tag, tagsByName),
|
|
54
|
+
href: `${basePath}#${tagId}`,
|
|
55
|
+
id: tagId,
|
|
56
|
+
items,
|
|
57
|
+
});
|
|
52
58
|
}
|
|
53
59
|
// Models group
|
|
54
60
|
const schemaNames = Object.keys(spec.schemas);
|
|
@@ -66,15 +66,15 @@ checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c"
|
|
|
66
66
|
|
|
67
67
|
[[package]]
|
|
68
68
|
name = "bitflags"
|
|
69
|
-
version = "2.
|
|
69
|
+
version = "2.13.0"
|
|
70
70
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
71
|
-
checksum = "
|
|
71
|
+
checksum = "b4388bee8683e3d04af747c73422af53102d2bd24d9eadb6cbc100baef4b43f8"
|
|
72
72
|
|
|
73
73
|
[[package]]
|
|
74
74
|
name = "camino"
|
|
75
|
-
version = "1.2.
|
|
75
|
+
version = "1.2.3"
|
|
76
76
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
77
|
-
checksum = "
|
|
77
|
+
checksum = "b4ce8d3bd5823c7504d3f579f13e7b2f3da252fcb938c594d5680ee508bf846f"
|
|
78
78
|
dependencies = [
|
|
79
79
|
"serde_core",
|
|
80
80
|
]
|
|
@@ -180,9 +180,6 @@ name = "deranged"
|
|
|
180
180
|
version = "0.5.8"
|
|
181
181
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
182
182
|
checksum = "7cd812cc2bc1d69d4764bd80df88b4317eaef9e773c75226407d9bc0876b211c"
|
|
183
|
-
dependencies = [
|
|
184
|
-
"powerfmt",
|
|
185
|
-
]
|
|
186
183
|
|
|
187
184
|
[[package]]
|
|
188
185
|
name = "equivalent"
|
|
@@ -245,9 +242,9 @@ checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682"
|
|
|
245
242
|
|
|
246
243
|
[[package]]
|
|
247
244
|
name = "memchr"
|
|
248
|
-
version = "2.8.
|
|
245
|
+
version = "2.8.2"
|
|
249
246
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
250
|
-
checksum = "
|
|
247
|
+
checksum = "88904434abc2901f197fe8cc55f0445e7ded921dba5911dad2e2b39b48e663c4"
|
|
251
248
|
|
|
252
249
|
[[package]]
|
|
253
250
|
name = "miniz_oxide"
|
|
@@ -452,9 +449,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
|
|
|
452
449
|
|
|
453
450
|
[[package]]
|
|
454
451
|
name = "syn"
|
|
455
|
-
version = "2.0.
|
|
452
|
+
version = "2.0.118"
|
|
456
453
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
457
|
-
checksum = "
|
|
454
|
+
checksum = "1b9ae57f904213ebb649ce6895b8a66c66f0203b9319718f69a5612a065b1422"
|
|
458
455
|
dependencies = [
|
|
459
456
|
"proc-macro2",
|
|
460
457
|
"quote",
|
|
@@ -503,12 +500,11 @@ dependencies = [
|
|
|
503
500
|
|
|
504
501
|
[[package]]
|
|
505
502
|
name = "time"
|
|
506
|
-
version = "0.3.
|
|
503
|
+
version = "0.3.49"
|
|
507
504
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
508
|
-
checksum = "
|
|
505
|
+
checksum = "711a53c2d47bbd818258c498c8dbfe186a2526c631495cfe7e078567f86b8469"
|
|
509
506
|
dependencies = [
|
|
510
507
|
"deranged",
|
|
511
|
-
"itoa",
|
|
512
508
|
"num-conv",
|
|
513
509
|
"powerfmt",
|
|
514
510
|
"serde_core",
|
|
@@ -518,15 +514,15 @@ dependencies = [
|
|
|
518
514
|
|
|
519
515
|
[[package]]
|
|
520
516
|
name = "time-core"
|
|
521
|
-
version = "0.1.
|
|
517
|
+
version = "0.1.9"
|
|
522
518
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
523
|
-
checksum = "
|
|
519
|
+
checksum = "9e1c906769ad99c88eaa54e728060edef082f8e358ff32030cb7c7d315e81109"
|
|
524
520
|
|
|
525
521
|
[[package]]
|
|
526
522
|
name = "time-macros"
|
|
527
|
-
version = "0.2.
|
|
523
|
+
version = "0.2.29"
|
|
528
524
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
529
|
-
checksum = "
|
|
525
|
+
checksum = "71c652a3727a9cbb9a02f707f530b618ce00d0ccd762009c8c23bd191df3c17d"
|
|
530
526
|
dependencies = [
|
|
531
527
|
"num-conv",
|
|
532
528
|
"time-core",
|
|
@@ -6,7 +6,7 @@ description = "Convert nightly rustdoc JSON into a stable RustdocSpec snapshot.
|
|
|
6
6
|
license = "AGPL-3.0-only"
|
|
7
7
|
repository = "https://github.com/sourcey/sourcey"
|
|
8
8
|
homepage = "https://sourcey.com"
|
|
9
|
-
documentation = "https://sourcey.com/docs/
|
|
9
|
+
documentation = "https://sourcey.com/docs/rustdoc-integration"
|
|
10
10
|
readme = "README.md"
|
|
11
11
|
keywords = ["rustdoc", "documentation", "json", "rust-api"]
|
|
12
12
|
categories = ["development-tools", "command-line-utilities"]
|
|
@@ -16,7 +16,7 @@ this crate directly. It is published for:
|
|
|
16
16
|
- CI tools that drive snapshot generation from Rust
|
|
17
17
|
|
|
18
18
|
If you just want sourcey for your project, see
|
|
19
|
-
[sourcey.com/docs/
|
|
19
|
+
[sourcey.com/docs/rustdoc-integration](https://sourcey.com/docs/rustdoc-integration).
|
|
20
20
|
|
|
21
21
|
## CLI
|
|
22
22
|
|
package/dist/index.d.ts
CHANGED
|
@@ -25,6 +25,7 @@ export interface SiteBuildOptions {
|
|
|
25
25
|
skipWrite?: boolean;
|
|
26
26
|
embeddable?: boolean;
|
|
27
27
|
strictChangelog?: boolean;
|
|
28
|
+
generateOgImages?: boolean;
|
|
28
29
|
}
|
|
29
30
|
export interface SiteBuildResult {
|
|
30
31
|
outputDir: string;
|
|
@@ -39,6 +40,8 @@ export declare function buildSiteDocs(options?: SiteBuildOptions): Promise<SiteB
|
|
|
39
40
|
export { defineConfig } from "./config.js";
|
|
40
41
|
export { doxygen, godoc, markdown, mcp, mkdocs, openapi, rustdoc } from "./adapters/index.js";
|
|
41
42
|
export { resolveInternalLinks } from "./site-assembly.js";
|
|
43
|
+
export { buildSourceySite, collectSourceyWatchPaths, writeSourceySite } from "./site.js";
|
|
44
|
+
export type { SourceySiteArtifacts, SourceySiteOptions, SourceySiteWriteOptions } from "./site.js";
|
|
42
45
|
export type { NormalizedSpec, NormalizedOperation, NormalizedTag, NormalizedSchema, NormalizedParameter, NormalizedRequestBody, NormalizedResponse, } from "./core/types.js";
|
|
43
46
|
export type { DoxygenSourceOptions, GodocSourceOptions, MarkdownSourceOptions, McpSourceOptions, MkDocsSourceOptions, OpenApiSourceOptions, ResolvedTabSource, RustdocSourceOptions, SourceAdapter, SourceAdapterContext, } from "./adapters/index.js";
|
|
44
47
|
export type { RustdocConfig, ResolvedRustdocConfig, RustdocMode, RustdocFeatures, } from "./config.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AASlD,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,cAAc,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;CAC7C;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAkB3E;AAMD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;IAC5C,gBAAgB,EAAE,OAAO,wBAAwB,EAAE,qBAAqB,EAAE,CAAC;IAC3E,kBAAkB,EAAE,OAAO,0BAA0B,EAAE,uBAAuB,EAAE,CAAC;IACjF,wDAAwD;IACxD,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CACtC;AAED,wBAAsB,aAAa,CAAC,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CAsB5F;AAED,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACzF,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAGnG,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,aAAa,EACb,qBAAqB,EACrB,WAAW,EACX,eAAe,GAChB,MAAM,aAAa,CAAC"}
|