blodemd 0.0.7 → 0.0.9
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 +25 -9
- package/dev-server/app/[[...slug]]/page.tsx +1 -0
- package/dev-server/next.config.js +11 -13
- package/dev-server/package.json +1 -1
- package/dev-server/tsconfig.json +3 -0
- package/dist/cli.mjs +869 -184
- package/dist/cli.mjs.map +1 -1
- package/docs/components/api/api-playground.tsx +255 -80
- package/docs/components/api/api-reference.tsx +11 -1
- package/docs/components/docs/contextual-menu.tsx +227 -142
- package/docs/components/docs/copy-page-menu.tsx +132 -85
- package/docs/components/docs/doc-header.tsx +13 -3
- package/docs/components/docs/doc-shell.tsx +22 -11
- package/docs/components/docs/mobile-nav.tsx +0 -6
- package/docs/components/mdx/code-group.tsx +171 -62
- package/docs/components/mdx/tabs.tsx +131 -26
- package/docs/components/ui/input.tsx +0 -1
- package/docs/components/ui/search.tsx +241 -132
- package/docs/lib/content-root.ts +33 -0
- package/docs/lib/content-source.ts +70 -0
- package/docs/lib/contextual-options.ts +20 -0
- package/docs/lib/docs-runtime.tsx +595 -0
- package/docs/lib/edge-config.ts +95 -0
- package/docs/lib/env.ts +22 -0
- package/docs/lib/openapi-proxy.ts +88 -0
- package/docs/lib/platform-config.ts +6 -0
- package/docs/lib/routes.ts +39 -0
- package/docs/lib/supabase.ts +13 -0
- package/docs/lib/tenancy.ts +322 -0
- package/docs/lib/tenant-headers.ts +14 -0
- package/docs/lib/tenant-static.ts +529 -0
- package/docs/lib/tenant-utility-context.ts +62 -0
- package/docs/lib/tenants.ts +68 -0
- package/docs/lib/use-mobile.ts +19 -0
- package/package.json +3 -2
- package/packages/@repo/common/dist/index.d.ts +7 -0
- package/packages/@repo/common/dist/index.d.ts.map +1 -1
- package/packages/@repo/common/dist/index.js +42 -0
- package/packages/@repo/common/src/index.ts +50 -0
- package/packages/@repo/contracts/dist/project.d.ts +1 -1
- package/packages/@repo/contracts/dist/project.js +1 -1
- package/packages/@repo/contracts/src/project.ts +1 -1
- package/packages/@repo/models/dist/docs-config.d.ts +194 -29
- package/packages/@repo/models/dist/docs-config.d.ts.map +1 -1
- package/packages/@repo/models/dist/docs-config.js +3 -28
- package/packages/@repo/models/src/docs-config.ts +5 -31
- package/packages/@repo/previewing/dist/blob-source.d.ts.map +1 -1
- package/packages/@repo/previewing/dist/blob-source.js +7 -2
- package/packages/@repo/previewing/dist/fs-source.d.ts.map +1 -1
- package/packages/@repo/previewing/dist/fs-source.js +2 -3
- package/packages/@repo/previewing/dist/index.d.ts.map +1 -1
- package/packages/@repo/previewing/dist/index.js +1 -41
- package/packages/@repo/previewing/src/blob-source.ts +7 -4
- package/packages/@repo/previewing/src/fs-source.ts +2 -3
- package/packages/@repo/previewing/src/index.ts +3 -55
- package/packages/@repo/validation/dist/index.d.ts +2 -2
- package/packages/@repo/validation/dist/index.d.ts.map +1 -1
- package/packages/@repo/validation/dist/index.js +2 -2
- package/packages/@repo/validation/package.json +1 -0
- package/packages/@repo/validation/src/{mintlify-docs-schema.json → blodemd-docs-schema.json} +346 -1794
- package/packages/@repo/validation/src/index.ts +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,WAAW,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,WAAW,EAEX,iBAAiB,EACjB,iBAAiB,EACjB,QAAQ,EACR,UAAU,EACX,MAAM,cAAc,CAAC;AAQtB,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAIpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjE,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAE5E,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AACzD,eAAO,MAAM,2BAA2B,wBAAwB,CAAC;AACjE,eAAO,MAAM,0BAA0B,uBAAuB,CAAC;AAC/D,eAAO,MAAM,uBAAuB,oBAAoB,CAAC;AACzD,eAAO,MAAM,2BAA2B,wBAAwB,CAAC;AACjE,eAAO,MAAM,6BAA6B,yBAAyB,CAAC;AACpE,eAAO,MAAM,0BAA0B,sBAAsB,CAAC;AAC9D,eAAO,MAAM,+BAA+B,2BAA2B,CAAC;AACxE,eAAO,MAAM,uBAAuB,0BAA0B,CAAC;AAE/D,MAAM,MAAM,gBAAgB,GACxB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,GACpD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAEpC,MAAM,MAAM,YAAY,GACpB;IACE,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,WAAW,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;CAC7C,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,WAAW,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEN,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAClC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAC1C,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,WAAW,CAAC;CACnB;AAID,eAAO,MAAM,oBAAoB,GAC/B,OAAO,YAAY,KAClB,GAAG,CAAC,MAAM,EAAE,YAAY,CAoD1B,CAAC;AAmSF,eAAO,MAAM,cAAc,GACzB,QAAQ,aAAa,KACpB,OAAO,CAAC,gBAAgB,CAU1B,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,aAAa,EACrB,cAAc,MAAM,oBACkB,CAAC;AAyLzC,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,aAAa,EACrB,QAAQ,UAAU,KACjB,OAAO,CAAC,YAAY,CAkFtB,CAAC;AAuCF,eAAO,MAAM,UAAU,GAAI,QAAQ,MAAM,KAAG,OAAO,EAwBlD,CAAC;AAiBF,eAAO,MAAM,kBAAkB,GAAI,OAAO,MAAM,EAAE,QAAQ,MAAM,WAO/D,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,OAAO,MAAM,EACb,KAAK,MAAM,EACX,QAAQ,MAAM,WAQf,CAAC;AA2QF,eAAO,MAAM,gBAAgB,GAC3B,OAAO,YAAY,EACnB,QAAQ,UAAU,EAClB,eAAe,YAAY,KAC1B,eAAe,EAyBjB,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,OAAO,YAAY,EACnB,QAAQ,aAAa,EACrB,QAAQ,UAAU,KACjB,OAAO,CAAC,YAAY,CAuCtB,CAAC;AAaF,eAAO,MAAM,6BAA6B,GAAI,MAAM,MAAM,WAGzD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,OAAO,YAAY,KAClB,eAAe,EAuDjB,CAAC;AAEF,eAAO,MAAM,aAAa,GACxB,OAAO,YAAY,EACnB,QAAQ,aAAa,KACpB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAahC,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,OAAO,YAAY,KAAG,MAKvB,CAAC;AAEtC,eAAO,MAAM,qBAAqB,GAChC,SAAS,oBAAoB,EAAE,KAC9B,MAIkC,CAAC;AAEtC,eAAO,MAAM,wBAAwB,GACnC,QAAQ,aAAa,KACpB,OAAO,CAAC,YAAY,GAAG,IAAI,CA8B7B,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,QAAQ,aAAa,KACpB,OAAO,CAAC,oBAAoB,EAAE,GAAG,IAAI,CAYvC,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,OAAO,eAAe,EAAE,KAAG,MAI5B,CAAC;AAErC,eAAO,MAAM,uBAAuB,GAClC,QAAQ,aAAa,KACpB,OAAO,CAAC,eAAe,EAAE,GAAG,IAAI,CAYlC,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,aAAa,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,KAClC,MAI8B,CAAC;AAElC,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,aAAa,KACpB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,CAYvC,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,OAAO,YAAY,KAAG,MAIvB,CAAC;AAEtC,eAAO,MAAM,wBAAwB,GACnC,QAAQ,aAAa,KACpB,OAAO,CAAC,YAAY,GAAG,IAAI,CAoB7B,CAAC"}
|
|
@@ -116,35 +116,6 @@ const defaultLinkLabel = (input) => {
|
|
|
116
116
|
return input.href;
|
|
117
117
|
}
|
|
118
118
|
};
|
|
119
|
-
const buildGoogleFontsCssUrl = (fonts) => {
|
|
120
|
-
if (!fonts) {
|
|
121
|
-
return undefined;
|
|
122
|
-
}
|
|
123
|
-
const fontEntries = [];
|
|
124
|
-
if (fonts.family) {
|
|
125
|
-
fontEntries.push({ family: fonts.family, source: fonts.source });
|
|
126
|
-
}
|
|
127
|
-
if (fonts.body) {
|
|
128
|
-
fontEntries.push({
|
|
129
|
-
family: fonts.body.family,
|
|
130
|
-
source: fonts.body.source,
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
|
-
if (fonts.heading) {
|
|
134
|
-
fontEntries.push({
|
|
135
|
-
family: fonts.heading.family,
|
|
136
|
-
source: fonts.heading.source,
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
const googleFamilies = [
|
|
140
|
-
...new Set(fontEntries.filter((entry) => !entry.source).map((entry) => entry.family)),
|
|
141
|
-
];
|
|
142
|
-
if (!googleFamilies.length) {
|
|
143
|
-
return undefined;
|
|
144
|
-
}
|
|
145
|
-
const params = googleFamilies.map((family) => `family=${encodeURIComponent(family).replaceAll("%20", "+")}`);
|
|
146
|
-
return `https://fonts.googleapis.com/css2?${params.join("&")}&display=swap`;
|
|
147
|
-
};
|
|
148
119
|
// oxlint-disable-next-line eslint/complexity
|
|
149
120
|
const mapDocsConfig = (docs) => {
|
|
150
121
|
const navigation = {
|
|
@@ -199,15 +170,6 @@ const mapDocsConfig = (docs) => {
|
|
|
199
170
|
url: version.href,
|
|
200
171
|
})),
|
|
201
172
|
};
|
|
202
|
-
const baseFontFamily = docs.fonts?.family;
|
|
203
|
-
const fonts = docs.fonts && (baseFontFamily || docs.fonts.body || docs.fonts.heading)
|
|
204
|
-
? {
|
|
205
|
-
body: docs.fonts.body?.family ?? baseFontFamily,
|
|
206
|
-
cssUrl: buildGoogleFontsCssUrl(docs.fonts),
|
|
207
|
-
heading: docs.fonts.heading?.family ?? baseFontFamily,
|
|
208
|
-
provider: "google",
|
|
209
|
-
}
|
|
210
|
-
: undefined;
|
|
211
173
|
return {
|
|
212
174
|
collections: [
|
|
213
175
|
{
|
|
@@ -218,7 +180,6 @@ const mapDocsConfig = (docs) => {
|
|
|
218
180
|
type: "docs",
|
|
219
181
|
},
|
|
220
182
|
],
|
|
221
|
-
colors: docs.colors,
|
|
222
183
|
contextual: docs.contextual,
|
|
223
184
|
description: docs.description,
|
|
224
185
|
favicon: typeof docs.favicon === "string" ? docs.favicon : docs.favicon?.light,
|
|
@@ -228,10 +189,10 @@ const mapDocsConfig = (docs) => {
|
|
|
228
189
|
themeToggle: docs.appearance?.strict !== true,
|
|
229
190
|
toc: true,
|
|
230
191
|
},
|
|
231
|
-
fonts,
|
|
232
192
|
logo: docs.logo
|
|
233
193
|
? {
|
|
234
194
|
dark: typeof docs.logo === "string" ? docs.logo : docs.logo.dark,
|
|
195
|
+
href: typeof docs.logo === "string" ? undefined : docs.logo.href,
|
|
235
196
|
light: typeof docs.logo === "string" ? docs.logo : docs.logo.light,
|
|
236
197
|
}
|
|
237
198
|
: undefined,
|
|
@@ -242,7 +203,6 @@ const mapDocsConfig = (docs) => {
|
|
|
242
203
|
Boolean(docs.api?.openapi || docs.api?.asyncapi),
|
|
243
204
|
},
|
|
244
205
|
seo: docs.seo,
|
|
245
|
-
theme: docs.theme,
|
|
246
206
|
};
|
|
247
207
|
};
|
|
248
208
|
const readJsonConfig = async (source, relativePath) => JSON.parse(await source.readFile(relativePath));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
2
|
|
|
3
|
-
import { normalizePath } from "@repo/common";
|
|
3
|
+
import { normalizePath, shouldIgnoreRootDocsFile } from "@repo/common";
|
|
4
4
|
|
|
5
5
|
import type { CompiledMdxResult, ContentSource } from "./content-source.js";
|
|
6
6
|
|
|
@@ -116,9 +116,12 @@ export class BlobContentSource implements ContentSource {
|
|
|
116
116
|
const manifest = await this.loadManifest();
|
|
117
117
|
const prefix = normalizeDirectory(directory);
|
|
118
118
|
|
|
119
|
-
const files = [...manifest.keys()].filter((file) =>
|
|
120
|
-
|
|
121
|
-
|
|
119
|
+
const files = [...manifest.keys()].filter((file) => {
|
|
120
|
+
if (shouldIgnoreRootDocsFile(file)) {
|
|
121
|
+
return false;
|
|
122
|
+
}
|
|
123
|
+
return prefix ? file.startsWith(prefix) : true;
|
|
124
|
+
});
|
|
122
125
|
// oxlint-disable-next-line eslint-plugin-unicorn/no-array-sort
|
|
123
126
|
files.sort();
|
|
124
127
|
return files;
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import fs from "node:fs/promises";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
|
|
4
|
-
import { normalizePath } from "@repo/common";
|
|
4
|
+
import { normalizePath, shouldIgnoreRootDocsFile } from "@repo/common";
|
|
5
5
|
|
|
6
6
|
import type { ContentSource } from "./content-source.js";
|
|
7
7
|
|
|
8
8
|
const IGNORED_DIRECTORIES = new Set(["app", "lib", "node_modules", "public"]);
|
|
9
|
-
const IGNORED_ROOT_FILES = new Set(["AGENTS.md", "README.md"]);
|
|
10
9
|
|
|
11
10
|
const isNotFoundError = (error: unknown) =>
|
|
12
11
|
Boolean(
|
|
@@ -54,7 +53,7 @@ const walkFiles = async (
|
|
|
54
53
|
}
|
|
55
54
|
|
|
56
55
|
if (entry.isFile()) {
|
|
57
|
-
if (!prefix &&
|
|
56
|
+
if (!prefix && shouldIgnoreRootDocsFile(entry.name)) {
|
|
58
57
|
continue;
|
|
59
58
|
}
|
|
60
59
|
files.push(normalizePath(relativePath));
|
|
@@ -4,9 +4,9 @@ import { ensureArray, normalizePath, slugify } from "@repo/common";
|
|
|
4
4
|
import type {
|
|
5
5
|
CollectionConfig,
|
|
6
6
|
ContentType,
|
|
7
|
+
DocsConfig,
|
|
7
8
|
DocsOpenApiSource,
|
|
8
9
|
FrontmatterByType,
|
|
9
|
-
MintlifyDocsConfig,
|
|
10
10
|
PageMode,
|
|
11
11
|
SiteConfig,
|
|
12
12
|
} from "@repo/models";
|
|
@@ -239,47 +239,8 @@ const defaultLinkLabel = (input: {
|
|
|
239
239
|
}
|
|
240
240
|
};
|
|
241
241
|
|
|
242
|
-
const buildGoogleFontsCssUrl = (
|
|
243
|
-
fonts: MintlifyDocsConfig["fonts"]
|
|
244
|
-
): string | undefined => {
|
|
245
|
-
if (!fonts) {
|
|
246
|
-
return undefined;
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
const fontEntries: { family: string; source?: string }[] = [];
|
|
250
|
-
if (fonts.family) {
|
|
251
|
-
fontEntries.push({ family: fonts.family, source: fonts.source });
|
|
252
|
-
}
|
|
253
|
-
if (fonts.body) {
|
|
254
|
-
fontEntries.push({
|
|
255
|
-
family: fonts.body.family,
|
|
256
|
-
source: fonts.body.source,
|
|
257
|
-
});
|
|
258
|
-
}
|
|
259
|
-
if (fonts.heading) {
|
|
260
|
-
fontEntries.push({
|
|
261
|
-
family: fonts.heading.family,
|
|
262
|
-
source: fonts.heading.source,
|
|
263
|
-
});
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
const googleFamilies = [
|
|
267
|
-
...new Set(
|
|
268
|
-
fontEntries.filter((entry) => !entry.source).map((entry) => entry.family)
|
|
269
|
-
),
|
|
270
|
-
];
|
|
271
|
-
if (!googleFamilies.length) {
|
|
272
|
-
return undefined;
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
const params = googleFamilies.map(
|
|
276
|
-
(family) => `family=${encodeURIComponent(family).replaceAll("%20", "+")}`
|
|
277
|
-
);
|
|
278
|
-
return `https://fonts.googleapis.com/css2?${params.join("&")}&display=swap`;
|
|
279
|
-
};
|
|
280
|
-
|
|
281
242
|
// oxlint-disable-next-line eslint/complexity
|
|
282
|
-
const mapDocsConfig = (docs:
|
|
243
|
+
const mapDocsConfig = (docs: DocsConfig): SiteConfig => {
|
|
283
244
|
const navigation = {
|
|
284
245
|
global:
|
|
285
246
|
docs.navbar?.links?.length || docs.navigation.global?.anchors?.length
|
|
@@ -334,17 +295,6 @@ const mapDocsConfig = (docs: MintlifyDocsConfig): SiteConfig => {
|
|
|
334
295
|
})),
|
|
335
296
|
} satisfies SiteConfig["navigation"];
|
|
336
297
|
|
|
337
|
-
const baseFontFamily = docs.fonts?.family;
|
|
338
|
-
const fonts =
|
|
339
|
-
docs.fonts && (baseFontFamily || docs.fonts.body || docs.fonts.heading)
|
|
340
|
-
? {
|
|
341
|
-
body: docs.fonts.body?.family ?? baseFontFamily,
|
|
342
|
-
cssUrl: buildGoogleFontsCssUrl(docs.fonts),
|
|
343
|
-
heading: docs.fonts.heading?.family ?? baseFontFamily,
|
|
344
|
-
provider: "google" as const,
|
|
345
|
-
}
|
|
346
|
-
: undefined;
|
|
347
|
-
|
|
348
298
|
return {
|
|
349
299
|
collections: [
|
|
350
300
|
{
|
|
@@ -355,7 +305,6 @@ const mapDocsConfig = (docs: MintlifyDocsConfig): SiteConfig => {
|
|
|
355
305
|
type: "docs",
|
|
356
306
|
},
|
|
357
307
|
],
|
|
358
|
-
colors: docs.colors,
|
|
359
308
|
contextual: docs.contextual,
|
|
360
309
|
description: docs.description,
|
|
361
310
|
favicon:
|
|
@@ -366,10 +315,10 @@ const mapDocsConfig = (docs: MintlifyDocsConfig): SiteConfig => {
|
|
|
366
315
|
themeToggle: docs.appearance?.strict !== true,
|
|
367
316
|
toc: true,
|
|
368
317
|
},
|
|
369
|
-
fonts,
|
|
370
318
|
logo: docs.logo
|
|
371
319
|
? {
|
|
372
320
|
dark: typeof docs.logo === "string" ? docs.logo : docs.logo.dark,
|
|
321
|
+
href: typeof docs.logo === "string" ? undefined : docs.logo.href,
|
|
373
322
|
light: typeof docs.logo === "string" ? docs.logo : docs.logo.light,
|
|
374
323
|
}
|
|
375
324
|
: undefined,
|
|
@@ -381,7 +330,6 @@ const mapDocsConfig = (docs: MintlifyDocsConfig): SiteConfig => {
|
|
|
381
330
|
Boolean(docs.api?.openapi || docs.api?.asyncapi),
|
|
382
331
|
},
|
|
383
332
|
seo: docs.seo,
|
|
384
|
-
theme: docs.theme,
|
|
385
333
|
};
|
|
386
334
|
};
|
|
387
335
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ContentType,
|
|
1
|
+
import type { ContentType, DocsConfig, FrontmatterByType, SiteConfig } from "@repo/models";
|
|
2
2
|
export type ValidationResult<T> = {
|
|
3
3
|
success: true;
|
|
4
4
|
data: T;
|
|
@@ -7,6 +7,6 @@ export type ValidationResult<T> = {
|
|
|
7
7
|
errors: string[];
|
|
8
8
|
};
|
|
9
9
|
export declare const validateSiteConfig: (input: unknown) => ValidationResult<SiteConfig>;
|
|
10
|
-
export declare const validateDocsConfig: (input: unknown) => ValidationResult<
|
|
10
|
+
export declare const validateDocsConfig: (input: unknown) => ValidationResult<DocsConfig>;
|
|
11
11
|
export declare const validateFrontmatter: <Type extends ContentType>(type: Type, input: unknown) => ValidationResult<FrontmatterByType[Type]>;
|
|
12
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,WAAW,EACX,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,UAAU,EACX,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAC1B;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAC1B;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAQzC,eAAO,MAAM,kBAAkB,GAC7B,OAAO,OAAO,KACb,gBAAgB,CAAC,UAAU,CAQ7B,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,OAAO,OAAO,KACb,gBAAgB,CAAC,UAAU,CAQ7B,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,IAAI,SAAS,WAAW,EAC1D,MAAM,IAAI,EACV,OAAO,OAAO,KACb,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAS1C,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DocsConfigSchema, FrontmatterSchemaByType, SiteConfigSchema, } from "@repo/models";
|
|
2
2
|
const formatIssues = (issues) => issues.map((issue) => {
|
|
3
3
|
const path = issue.path.length ? issue.path.map(String).join(".") : "root";
|
|
4
4
|
return `${path}: ${issue.message}`;
|
|
@@ -12,7 +12,7 @@ export const validateSiteConfig = (input) => {
|
|
|
12
12
|
return { errors: issues, success: false };
|
|
13
13
|
};
|
|
14
14
|
export const validateDocsConfig = (input) => {
|
|
15
|
-
const result =
|
|
15
|
+
const result = DocsConfigSchema.safeParse(input);
|
|
16
16
|
if (result.success) {
|
|
17
17
|
return { data: result.data, success: true };
|
|
18
18
|
}
|