@farming-labs/nuxt 0.2.75 → 0.2.78

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 (64) hide show
  1. package/dist/server.d.ts.map +1 -1
  2. package/dist/server.js +65 -28
  3. package/dist/server.js.map +1 -1
  4. package/package.json +2 -2
  5. package/dist/docs/src/api-reference.d.ts +0 -27
  6. package/dist/docs/src/api-reference.d.ts.map +0 -1
  7. package/dist/docs/src/api-reference.js +0 -594
  8. package/dist/docs/src/api-reference.js.map +0 -1
  9. package/dist/docs/src/create-theme.d.ts +0 -74
  10. package/dist/docs/src/create-theme.d.ts.map +0 -1
  11. package/dist/docs/src/create-theme.js +0 -86
  12. package/dist/docs/src/create-theme.js.map +0 -1
  13. package/dist/docs/src/define-docs.d.ts +0 -6
  14. package/dist/docs/src/define-docs.d.ts.map +0 -1
  15. package/dist/docs/src/define-docs.js +0 -27
  16. package/dist/docs/src/define-docs.js.map +0 -1
  17. package/dist/docs/src/i18n.d.ts +0 -15
  18. package/dist/docs/src/i18n.d.ts.map +0 -1
  19. package/dist/docs/src/i18n.js +0 -48
  20. package/dist/docs/src/i18n.js.map +0 -1
  21. package/dist/docs/src/index.d.ts +0 -16
  22. package/dist/docs/src/index.d.ts.map +0 -1
  23. package/dist/docs/src/index.js +0 -14
  24. package/dist/docs/src/index.js.map +0 -1
  25. package/dist/docs/src/metadata.d.ts +0 -24
  26. package/dist/docs/src/metadata.d.ts.map +0 -1
  27. package/dist/docs/src/metadata.js +0 -90
  28. package/dist/docs/src/metadata.js.map +0 -1
  29. package/dist/docs/src/server.d.ts +0 -3
  30. package/dist/docs/src/server.d.ts.map +0 -1
  31. package/dist/docs/src/server.js +0 -2
  32. package/dist/docs/src/server.js.map +0 -1
  33. package/dist/docs/src/types.d.ts +0 -1344
  34. package/dist/docs/src/types.d.ts.map +0 -1
  35. package/dist/docs/src/types.js +0 -6
  36. package/dist/docs/src/types.js.map +0 -1
  37. package/dist/docs/src/utils.d.ts +0 -6
  38. package/dist/docs/src/utils.d.ts.map +0 -1
  39. package/dist/docs/src/utils.js +0 -32
  40. package/dist/docs/src/utils.js.map +0 -1
  41. package/dist/markdown.test.d.ts +0 -2
  42. package/dist/markdown.test.d.ts.map +0 -1
  43. package/dist/markdown.test.js +0 -37
  44. package/dist/markdown.test.js.map +0 -1
  45. package/dist/nuxt/src/api-reference.d.ts +0 -3
  46. package/dist/nuxt/src/api-reference.d.ts.map +0 -1
  47. package/dist/nuxt/src/api-reference.js +0 -20
  48. package/dist/nuxt/src/api-reference.js.map +0 -1
  49. package/dist/nuxt/src/content.d.ts +0 -54
  50. package/dist/nuxt/src/content.d.ts.map +0 -1
  51. package/dist/nuxt/src/content.js +0 -202
  52. package/dist/nuxt/src/content.js.map +0 -1
  53. package/dist/nuxt/src/index.d.ts +0 -11
  54. package/dist/nuxt/src/index.d.ts.map +0 -1
  55. package/dist/nuxt/src/index.js +0 -11
  56. package/dist/nuxt/src/index.js.map +0 -1
  57. package/dist/nuxt/src/markdown.d.ts +0 -18
  58. package/dist/nuxt/src/markdown.d.ts.map +0 -1
  59. package/dist/nuxt/src/markdown.js +0 -277
  60. package/dist/nuxt/src/markdown.js.map +0 -1
  61. package/dist/nuxt/src/server.d.ts +0 -87
  62. package/dist/nuxt/src/server.d.ts.map +0 -1
  63. package/dist/nuxt/src/server.js +0 -726
  64. package/dist/nuxt/src/server.js.map +0 -1
@@ -1,594 +0,0 @@
1
- import { existsSync, readdirSync, readFileSync, statSync } from "node:fs";
2
- import { basename, join, relative } from "node:path";
3
- import { getHtmlDocument } from "@scalar/core/libs/html-rendering";
4
- const NEXT_ROUTE_FILE_RE = /^route\.(ts|tsx|js|jsx)$/;
5
- const SVELTE_ROUTE_FILE_RE = /^\+server\.(ts|js)$/;
6
- const ASTRO_ROUTE_FILE_RE = /^[^.].*\.(ts|js|mts|mjs)$/;
7
- const NUXT_ROUTE_FILE_RE = /^[^.].*\.(ts|js|mts|mjs)$/;
8
- const TANSTACK_ROUTE_FILE_RE = /\.(ts|tsx|js|jsx)$/;
9
- const METHOD_RE = /export\s+(?:async\s+function|function|const)\s+(GET|POST|PUT|PATCH|DELETE|OPTIONS|HEAD|ALL)\b/g;
10
- const METHOD_NAMES = ["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS", "HEAD"];
11
- function normalizePathSegment(value) {
12
- return value.replace(/^\/+|\/+$/g, "");
13
- }
14
- export function resolveApiReferenceConfig(value) {
15
- if (value === true) {
16
- return {
17
- enabled: true,
18
- path: "api-reference",
19
- routeRoot: "api",
20
- exclude: [],
21
- };
22
- }
23
- if (!value) {
24
- return {
25
- enabled: false,
26
- path: "api-reference",
27
- routeRoot: "api",
28
- exclude: [],
29
- };
30
- }
31
- return {
32
- enabled: value.enabled !== false,
33
- path: normalizePathSegment(value.path ?? "api-reference"),
34
- routeRoot: normalizePathSegment(value.routeRoot ?? "api") || "api",
35
- exclude: normalizeApiReferenceExcludes(value.exclude),
36
- };
37
- }
38
- export function buildApiReferencePageTitle(config, title = "API Reference") {
39
- const template = config.metadata?.titleTemplate;
40
- if (!template)
41
- return title;
42
- return template.replace("%s", title);
43
- }
44
- export function buildApiReferenceScalarCss(config) {
45
- const theme = resolveTheme(config);
46
- const colors = theme?.ui?.colors;
47
- const typography = theme?.ui?.typography?.font?.style;
48
- const layout = theme?.ui?.layout;
49
- const primary = colors?.primary ?? "#6366f1";
50
- const border = colors?.border ?? "#2a2a2a";
51
- const muted = colors?.muted ?? "#64748b";
52
- const background = colors?.background ?? "#ffffff";
53
- const card = colors?.card ?? background;
54
- const foreground = colors?.foreground ?? "#1b1b1b";
55
- const sidebarWidth = layout?.sidebarWidth ?? 280;
56
- const sans = typography?.sans ?? '"Geist", "Inter", "Segoe UI", sans-serif';
57
- const mono = typography?.mono ?? '"Geist Mono", "SFMono-Regular", "Menlo", monospace';
58
- return `
59
- :root {
60
- --scalar-font: ${sans};
61
- --scalar-font-code: ${mono};
62
- --scalar-theme-primary: ${primary};
63
- --scalar-theme-border: ${border};
64
- --scalar-theme-muted: ${muted};
65
- --scalar-theme-background: ${background};
66
- --scalar-theme-card: ${card};
67
- --scalar-theme-foreground: ${foreground};
68
- }
69
-
70
- .dark-mode {
71
- --scalar-background-1: color-mix(in srgb, #0b0c0b 98%, var(--scalar-theme-primary) 2%);
72
- --scalar-background-2: color-mix(in srgb, #111311 96%, var(--scalar-theme-primary) 4%);
73
- --scalar-background-3: color-mix(in srgb, #171917 95%, var(--scalar-theme-primary) 5%);
74
- --scalar-color-1: rgba(255, 255, 255, 0.96);
75
- --scalar-color-2: rgba(255, 255, 255, 0.72);
76
- --scalar-color-3: rgba(255, 255, 255, 0.5);
77
- --scalar-color-accent: var(--scalar-theme-primary);
78
- --scalar-sidebar-color-active: var(--scalar-theme-primary);
79
- --scalar-sidebar-item-active-background: color-mix(
80
- in srgb,
81
- var(--scalar-theme-primary) 7%,
82
- transparent
83
- );
84
- --scalar-border-color: color-mix(
85
- in srgb,
86
- var(--scalar-theme-border) 22%,
87
- rgba(255, 255, 255, 0.032)
88
- );
89
- --scalar-button-1: var(--scalar-theme-primary);
90
- --scalar-button-1-color: #ffffff;
91
- --scalar-button-1-hover: color-mix(in srgb, var(--scalar-theme-primary) 88%, white 12%);
92
- }
93
-
94
- .light-mode {
95
- --scalar-background-1: var(--scalar-theme-background);
96
- --scalar-background-2: color-mix(in srgb, var(--scalar-theme-card) 92%, white 8%);
97
- --scalar-background-3: color-mix(in srgb, var(--scalar-theme-card) 84%, black 4%);
98
- --scalar-color-1: var(--scalar-theme-foreground);
99
- --scalar-color-2: var(--scalar-theme-muted);
100
- --scalar-color-3: color-mix(in srgb, var(--scalar-theme-muted) 78%, white 22%);
101
- --scalar-color-accent: var(--scalar-theme-primary);
102
- --scalar-sidebar-color-active: var(--scalar-theme-primary);
103
- --scalar-sidebar-item-active-background: color-mix(
104
- in srgb,
105
- var(--scalar-theme-primary) 5%,
106
- transparent
107
- );
108
- --scalar-border-color: color-mix(in srgb, var(--scalar-theme-border) 42%, white 58%);
109
- --scalar-button-1: var(--scalar-theme-primary);
110
- --scalar-button-1-color: #ffffff;
111
- --scalar-button-1-hover: color-mix(in srgb, var(--scalar-theme-primary) 88%, black 12%);
112
- }
113
-
114
- body {
115
- background: var(--scalar-background-1);
116
- }
117
-
118
- .t-doc__sidebar {
119
- width: min(${sidebarWidth}px, 100vw);
120
- border-right: 1px solid var(--scalar-border-color);
121
- }
122
-
123
- .scalar-card,
124
- .t-doc__sidebar,
125
- .references-layout .reference-layout__content .request-card,
126
- .references-layout .reference-layout__content .response-card,
127
- .references-layout .reference-layout__content .scalar-card-header,
128
- .references-layout .reference-layout__content .scalar-card-footer,
129
- .references-layout .reference-layout__content .section,
130
- .references-layout .reference-layout__content .section-container {
131
- border-color: var(--scalar-border-color) !important;
132
- }
133
-
134
- .t-doc__sidebar,
135
- .t-doc__sidebar * {
136
- font-family: var(--scalar-font);
137
- }
138
-
139
- .t-doc__sidebar .sidebar-search {
140
- margin: 0.5rem 0 1rem;
141
- }
142
-
143
- .t-doc__sidebar .sidebar-search input {
144
- border-radius: 14px;
145
- }
146
-
147
- .t-doc__sidebar .sidebar-item,
148
- .t-doc__sidebar .sidebar-heading {
149
- border-radius: 14px;
150
- }
151
-
152
- .t-doc__sidebar .sidebar-group-label {
153
- font-size: 0.72rem;
154
- letter-spacing: 0.08em;
155
- text-transform: uppercase;
156
- color: var(--scalar-color-3);
157
- }
158
-
159
- .t-doc__sidebar .sidebar-item--active {
160
- font-weight: 600;
161
- }
162
-
163
- .scalar-card,
164
- .references-layout .reference-layout__content .request-card,
165
- .references-layout .reference-layout__content .response-card {
166
- border-radius: 18px;
167
- }
168
-
169
- .references-layout .reference-layout__content {
170
- padding-top: 1.5rem;
171
- }
172
-
173
- .references-layout .section-content,
174
- .references-layout .section-flare {
175
- background: transparent;
176
- }
177
-
178
- .references-layout .reference-layout__content,
179
- .references-layout .reference-layout__content * {
180
- font-family: var(--scalar-font);
181
- }
182
-
183
- .references-layout code,
184
- .references-layout pre,
185
- .references-layout .scalar-codeblock {
186
- font-family: var(--scalar-font-code);
187
- }
188
- `;
189
- }
190
- export function buildApiReferenceOpenApiDocument(config, options) {
191
- const routes = buildApiReferenceRoutes(config, options);
192
- const tags = Array.from(new Set(routes.map((route) => route.tag))).map((name) => ({
193
- name,
194
- description: `${name} endpoints`,
195
- }));
196
- return {
197
- openapi: "3.1.0",
198
- info: {
199
- title: "API Reference",
200
- description: config.metadata?.description ?? `Generated API reference for ${options.framework}.`,
201
- version: "0.0.0",
202
- },
203
- servers: [{ url: "/" }],
204
- tags,
205
- paths: buildOpenApiPaths(routes),
206
- };
207
- }
208
- export function buildApiReferenceHtmlDocument(config, options) {
209
- const apiReference = resolveApiReferenceConfig(config.apiReference);
210
- const rootDir = options.rootDir ?? process.cwd();
211
- const title = options.title ?? "API Reference";
212
- return getHtmlDocument({
213
- pageTitle: buildApiReferencePageTitle(config, title),
214
- title,
215
- content: () => buildApiReferenceOpenApiDocument(config, {
216
- framework: options.framework,
217
- rootDir,
218
- }),
219
- theme: "deepSpace",
220
- layout: "modern",
221
- customCss: buildApiReferenceScalarCss(config),
222
- pathRouting: {
223
- basePath: `/${apiReference.path}`,
224
- },
225
- showSidebar: true,
226
- defaultOpenFirstTag: true,
227
- tagsSorter: "alpha",
228
- operationsSorter: "alpha",
229
- operationTitleSource: "summary",
230
- defaultHttpClient: {
231
- targetKey: "shell",
232
- clientKey: "curl",
233
- },
234
- documentDownloadType: "json",
235
- });
236
- }
237
- function buildApiReferenceRoutes(config, options) {
238
- const apiReference = resolveApiReferenceConfig(config.apiReference);
239
- if (!apiReference.enabled)
240
- return [];
241
- const rootDir = options.rootDir ?? process.cwd();
242
- switch (options.framework) {
243
- case "next":
244
- return buildFileConventionRoutes({
245
- rootDir,
246
- sourceDir: resolveRootedDir(rootDir, apiReference.routeRoot, getNextAppDir(rootDir)),
247
- routePathBase: toRouteBase(apiReference.routeRoot, getNextAppDir(rootDir)),
248
- isRouteFile: (name) => NEXT_ROUTE_FILE_RE.test(name),
249
- toRouteSegments: (relativeFile) => relativeFile.split("/").slice(0, -1).filter(Boolean),
250
- config,
251
- exclude: apiReference.exclude,
252
- });
253
- case "sveltekit":
254
- return buildFileConventionRoutes({
255
- rootDir,
256
- sourceDir: resolveRootedDir(rootDir, apiReference.routeRoot, "src/routes"),
257
- routePathBase: toRouteBase(apiReference.routeRoot, "src/routes"),
258
- isRouteFile: (name) => SVELTE_ROUTE_FILE_RE.test(name),
259
- toRouteSegments: (relativeFile) => relativeFile.split("/").slice(0, -1).filter(Boolean),
260
- config,
261
- exclude: apiReference.exclude,
262
- });
263
- case "astro":
264
- return buildFileConventionRoutes({
265
- rootDir,
266
- sourceDir: resolveRootedDir(rootDir, apiReference.routeRoot, "src/pages"),
267
- routePathBase: toRouteBase(apiReference.routeRoot, "src/pages"),
268
- isRouteFile: (name) => ASTRO_ROUTE_FILE_RE.test(name),
269
- toRouteSegments: (relativeFile) => routeSegmentsFromEndpointFile(relativeFile),
270
- config,
271
- exclude: apiReference.exclude,
272
- });
273
- case "nuxt":
274
- return buildFileConventionRoutes({
275
- rootDir,
276
- sourceDir: resolveRootedDir(rootDir, apiReference.routeRoot, "server"),
277
- routePathBase: toRouteBase(apiReference.routeRoot, "server"),
278
- isRouteFile: (name) => NUXT_ROUTE_FILE_RE.test(name),
279
- toRouteSegments: (relativeFile) => routeSegmentsFromEndpointFile(stripNuxtMethodSuffix(relativeFile)),
280
- config,
281
- exclude: apiReference.exclude,
282
- getMethods: (source, file) => extractNuxtMethods(source, file),
283
- });
284
- case "tanstack-start":
285
- return buildTanstackRoutes(config, rootDir, apiReference);
286
- }
287
- }
288
- function buildFileConventionRoutes({ rootDir, sourceDir, routePathBase, isRouteFile, toRouteSegments, config, exclude, getMethods = extractMethods, }) {
289
- const files = scanRouteFiles(sourceDir, isRouteFile);
290
- const routes = [];
291
- for (const file of files) {
292
- const source = readFileSync(file, "utf-8");
293
- const methods = getMethods(source, file);
294
- if (methods.length === 0)
295
- continue;
296
- const relativeFile = relative(sourceDir, file).replace(/\\/g, "/");
297
- const routeSegments = toRouteSegments(relativeFile);
298
- const routePath = buildRoutePath(routePathBase, routeSegments);
299
- if (shouldExcludeRoute(exclude, routePath, relativeFile, routeSegments.join("/")))
300
- continue;
301
- routes.push(createApiReferenceRoute({
302
- rootDir,
303
- file,
304
- source,
305
- methods,
306
- routePath,
307
- }));
308
- }
309
- return routes.sort((a, b) => a.routePath.localeCompare(b.routePath));
310
- }
311
- function buildTanstackRoutes(config, rootDir, apiReference) {
312
- const routesDir = join(rootDir, "src", "routes");
313
- const files = scanRouteFiles(routesDir, (name) => TANSTACK_ROUTE_FILE_RE.test(name));
314
- const routeBase = `/${normalizePathSegment(apiReference.routeRoot)}`;
315
- const routes = [];
316
- for (const file of files) {
317
- const source = readFileSync(file, "utf-8");
318
- if (!source.includes("createFileRoute(") || !source.includes("handlers"))
319
- continue;
320
- const pathMatch = source.match(/createFileRoute\(\s*["'`]([^"'`]+)["'`]\s*\)/);
321
- if (!pathMatch)
322
- continue;
323
- const routePath = normalizeTanstackRoutePath(pathMatch[1]);
324
- if (!routePath.startsWith(routeBase))
325
- continue;
326
- const methods = extractTanstackMethods(source);
327
- if (methods.length === 0)
328
- continue;
329
- const relativeFile = relative(routesDir, file).replace(/\\/g, "/");
330
- if (shouldExcludeRoute(apiReference.exclude, routePath, relativeFile, relativeFile))
331
- continue;
332
- routes.push(createApiReferenceRoute({
333
- rootDir,
334
- file,
335
- source,
336
- methods,
337
- routePath,
338
- }));
339
- }
340
- return routes.sort((a, b) => a.routePath.localeCompare(b.routePath));
341
- }
342
- function createApiReferenceRoute({ rootDir, file, source, methods, routePath, }) {
343
- const docBlock = extractDocBlock(source);
344
- const pathSegments = routePath.split("/").filter(Boolean);
345
- const titleSegment = pathSegments[pathSegments.length - 1] ?? "overview";
346
- const tagSegment = pathSegments[0] ?? "general";
347
- const title = humanizeSegment(titleSegment);
348
- return {
349
- title,
350
- summary: docBlock.summary ?? `${title} endpoint`,
351
- description: docBlock.description,
352
- routePath,
353
- sourceFile: relative(rootDir, file).replace(/\\/g, "/"),
354
- methods,
355
- tag: humanizeSegment(tagSegment),
356
- parameters: buildPathParameters(routePath),
357
- };
358
- }
359
- function buildPathParameters(routePath) {
360
- const parameters = [];
361
- for (const segment of routePath.split("/")) {
362
- const match = segment.match(/^\{(.+)\}$/);
363
- if (!match)
364
- continue;
365
- parameters.push({
366
- name: match[1],
367
- in: "path",
368
- required: true,
369
- description: `${humanizeSegment(match[1])} path parameter.`,
370
- schema: {
371
- type: "string",
372
- },
373
- });
374
- }
375
- return parameters;
376
- }
377
- function buildOpenApiPaths(routes) {
378
- const paths = {};
379
- for (const route of routes) {
380
- const pathItem = {};
381
- for (const method of route.methods) {
382
- pathItem[method.toLowerCase()] = {
383
- tags: [route.tag],
384
- summary: route.summary,
385
- description: route.description ?? route.summary,
386
- operationId: createOperationId(route, method),
387
- ...(route.parameters.length > 0 ? { parameters: route.parameters } : {}),
388
- ...(buildRequestBody(method) ? { requestBody: buildRequestBody(method) } : {}),
389
- responses: buildResponses(method),
390
- "x-farming-labs-source": route.sourceFile,
391
- };
392
- }
393
- paths[route.routePath] = pathItem;
394
- }
395
- return paths;
396
- }
397
- function buildRequestBody(method) {
398
- if (!["POST", "PUT", "PATCH"].includes(method))
399
- return undefined;
400
- return {
401
- required: method === "POST",
402
- content: {
403
- "application/json": {
404
- schema: {
405
- type: "object",
406
- additionalProperties: true,
407
- },
408
- example: {
409
- example: true,
410
- },
411
- },
412
- },
413
- };
414
- }
415
- function buildResponses(method) {
416
- return {
417
- "200": {
418
- description: method === "DELETE" ? "Resource removed successfully." : "Request completed successfully.",
419
- content: {
420
- "application/json": {
421
- schema: {
422
- type: "object",
423
- additionalProperties: true,
424
- },
425
- example: {
426
- ok: true,
427
- },
428
- },
429
- },
430
- },
431
- };
432
- }
433
- function createOperationId(route, method) {
434
- return `${method.toLowerCase()}_${route.routePath.replace(/[^a-zA-Z0-9]+/g, "_").replace(/^_+|_+$/g, "")}`;
435
- }
436
- function resolveTheme(config) {
437
- return config.theme;
438
- }
439
- function normalizeApiReferenceExcludes(values) {
440
- return (values ?? []).map(normalizeExcludeMatcher).filter(Boolean);
441
- }
442
- function normalizeExcludeMatcher(value) {
443
- return value
444
- .replace(/\\/g, "/")
445
- .replace(/^\/+|\/+$/g, "")
446
- .replace(/\.(ts|tsx|js|jsx|mjs|mts)$/i, "")
447
- .replace(/\/route$/i, "")
448
- .replace(/\/\+server$/i, "")
449
- .replace(/\/index$/i, "")
450
- .replace(/\.(get|post|put|patch|delete|options|head)$/i, "");
451
- }
452
- function shouldExcludeRoute(excludes, routePath, relativeFile, relativeDir) {
453
- if (excludes.length === 0)
454
- return false;
455
- const candidates = new Set([
456
- normalizeExcludeMatcher(routePath),
457
- normalizeExcludeMatcher(routePath.replace(/^\/+/, "")),
458
- normalizeExcludeMatcher(relativeFile),
459
- normalizeExcludeMatcher(relativeDir),
460
- ]);
461
- return excludes.some((entry) => candidates.has(entry));
462
- }
463
- function scanRouteFiles(dir, isRouteFile) {
464
- if (!existsSync(dir))
465
- return [];
466
- const results = [];
467
- for (const name of readdirSync(dir)) {
468
- const full = join(dir, name);
469
- const stats = statSync(full);
470
- if (stats.isDirectory()) {
471
- results.push(...scanRouteFiles(full, isRouteFile));
472
- continue;
473
- }
474
- if (isRouteFile(name))
475
- results.push(full);
476
- }
477
- return results;
478
- }
479
- function resolveRootedDir(rootDir, routeRoot, defaultRoot) {
480
- const normalized = normalizePathSegment(routeRoot) || "api";
481
- if (normalized === defaultRoot || normalized.startsWith(`${defaultRoot}/`)) {
482
- return join(rootDir, ...normalized.split("/"));
483
- }
484
- return join(rootDir, ...defaultRoot.split("/"), ...normalized.split("/"));
485
- }
486
- function toRouteBase(routeRoot, defaultRoot) {
487
- const normalized = normalizePathSegment(routeRoot) || "api";
488
- const base = normalized === defaultRoot || normalized.startsWith(`${defaultRoot}/`)
489
- ? normalized.slice(defaultRoot.length).replace(/^\/+/, "")
490
- : normalized;
491
- return `/${normalizePathSegment(base)}`;
492
- }
493
- function getNextAppDir(rootDir) {
494
- if (existsSync(join(rootDir, "src", "app")))
495
- return "src/app";
496
- return "app";
497
- }
498
- function routeSegmentsFromEndpointFile(relativeFile) {
499
- const segments = relativeFile.split("/");
500
- const last = segments.pop() ?? "";
501
- const name = last.replace(/\.(ts|js|mts|mjs)$/i, "");
502
- if (name !== "index")
503
- segments.push(name);
504
- return segments.filter(Boolean);
505
- }
506
- function stripNuxtMethodSuffix(relativeFile) {
507
- return relativeFile.replace(/\.(get|post|put|patch|delete|options|head)(?=\.(ts|js|mts|mjs)$)/i, "");
508
- }
509
- function buildRoutePath(basePath, rawSegments) {
510
- const segments = rawSegments
511
- .filter(Boolean)
512
- .map((segment) => endpointSegmentFromConvention(segment))
513
- .join("/");
514
- const normalizedBase = normalizePathSegment(basePath);
515
- const path = [normalizedBase, segments].filter(Boolean).join("/");
516
- return path ? `/${path}` : "/";
517
- }
518
- function endpointSegmentFromConvention(value) {
519
- if (value.startsWith("[[...") && value.endsWith("]]"))
520
- return `{${value.slice(5, -2)}}`;
521
- if (value.startsWith("[...") && value.endsWith("]"))
522
- return `{${value.slice(4, -1)}}`;
523
- if (value.startsWith("[") && value.endsWith("]"))
524
- return `{${value.slice(1, -1)}}`;
525
- return value;
526
- }
527
- function normalizeTanstackRoutePath(value) {
528
- return `/${value
529
- .replace(/^\/+|\/+$/g, "")
530
- .split("/")
531
- .map((segment) => (segment.startsWith("$") ? `{${segment.slice(1)}}` : segment))
532
- .filter(Boolean)
533
- .join("/")}`;
534
- }
535
- function extractDocBlock(source) {
536
- const match = source.match(/\/\*\*([\s\S]*?)\*\//);
537
- if (!match)
538
- return {};
539
- const lines = match[1]
540
- .split("\n")
541
- .map((line) => line.replace(/^\s*\*\s?/, "").trim())
542
- .filter(Boolean)
543
- .filter((line) => !line.startsWith("@"));
544
- if (lines.length === 0)
545
- return {};
546
- return {
547
- summary: lines[0],
548
- description: lines.slice(1).join(" "),
549
- };
550
- }
551
- function extractMethods(source) {
552
- const methods = new Set();
553
- for (const match of source.matchAll(METHOD_RE)) {
554
- if (match[1] === "ALL") {
555
- METHOD_NAMES.forEach((method) => methods.add(method));
556
- continue;
557
- }
558
- methods.add(match[1]);
559
- }
560
- return Array.from(methods);
561
- }
562
- function extractNuxtMethods(source, file) {
563
- const methods = extractMethods(source);
564
- if (methods.length > 0)
565
- return methods;
566
- const suffix = basename(file).match(/\.(get|post|put|patch|delete|options|head)\.(ts|js|mts|mjs)$/i);
567
- if (suffix)
568
- return [suffix[1].toUpperCase()];
569
- if (/defineEventHandler|eventHandler/.test(source))
570
- return ["GET"];
571
- return [];
572
- }
573
- function extractTanstackMethods(source) {
574
- const methods = new Set();
575
- const handlersMatch = source.match(/handlers\s*:\s*\{([\s\S]*?)\}/m);
576
- if (!handlersMatch)
577
- return [];
578
- for (const match of handlersMatch[1].matchAll(/\b(GET|POST|PUT|PATCH|DELETE|OPTIONS|HEAD)\s*:/g)) {
579
- methods.add(match[1]);
580
- }
581
- return Array.from(methods);
582
- }
583
- function humanizeSegment(value) {
584
- const normalized = value
585
- .replace(/^\{/, "")
586
- .replace(/\}$/, "")
587
- .replace(/^\[\[?\.{3}/, "")
588
- .replace(/^\[/, "")
589
- .replace(/\]\]?$/, "")
590
- .replace(/^\$/, "")
591
- .replace(/-/g, " ");
592
- return normalized.replace(/\b\w/g, (char) => char.toUpperCase());
593
- }
594
- //# sourceMappingURL=api-reference.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api-reference.js","sourceRoot":"","sources":["../../../../docs/src/api-reference.ts"],"names":[],"mappings":"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"}