@redocly/redoc-reef 0.140.0-next.6 → 0.140.0-next.8

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 (88) hide show
  1. package/CHANGELOG.md +76 -0
  2. package/dist/api-schemas/mcp-fetch-count.d.ts +2 -18
  3. package/dist/api-schemas/otel-traces.d.ts +7 -1345
  4. package/dist/api-schemas/otel-traces.js +1 -1
  5. package/dist/api-schemas/search-facets.d.ts +3 -31
  6. package/dist/api-schemas/search.d.ts +6 -52
  7. package/dist/cli/build/index.js +1 -1
  8. package/dist/cli/eject/resolveEjectParams.js +1 -1
  9. package/dist/client/app/markdoc/custom-components/openapi/openapi-code-sample.d.ts +2 -0
  10. package/dist/client/app/markdoc/custom-components/openapi/openapi-code-sample.js +1 -1
  11. package/dist/client/app/useGlobalData.d.ts +1 -1
  12. package/dist/client/providers/post-message/use-post-message.d.ts +1 -1
  13. package/dist/compiled/@redocly/pii/index.mjs +1 -0
  14. package/dist/compiled/@redocly/pii/package.json +1 -1
  15. package/dist/markdoc/tags/openapi-code-sample.js +1 -1
  16. package/dist/server/api-routes/execute-api-route.js +1 -1
  17. package/dist/server/api-routes/run-api-routes-worker.js +1 -1
  18. package/dist/server/config/env-config.d.ts +26 -24
  19. package/dist/server/config/env-schema.d.ts +87 -326
  20. package/dist/server/config/env-schemas/api-urls.d.ts +2 -14
  21. package/dist/server/config/env-schemas/auth.d.ts +10 -32
  22. package/dist/server/config/env-schemas/catalog.d.ts +6 -9
  23. package/dist/server/config/env-schemas/database.d.ts +2 -8
  24. package/dist/server/config/env-schemas/environment-detection.d.ts +20 -18
  25. package/dist/server/config/env-schemas/feature-flags.d.ts +29 -33
  26. package/dist/server/config/env-schemas/feature-flags.js +1 -1
  27. package/dist/server/config/env-schemas/organization-project.d.ts +3 -21
  28. package/dist/server/config/env-schemas/scorecards.d.ts +2 -6
  29. package/dist/server/config/env-schemas/search.d.ts +9 -15
  30. package/dist/server/config/env-schemas/server-config.d.ts +6 -31
  31. package/dist/server/config/env-schemas/site.d.ts +1 -5
  32. package/dist/server/config/env-schemas/ssr.d.ts +7 -12
  33. package/dist/server/config/env-schemas/telemetry.d.ts +1 -7
  34. package/dist/server/esbuild/plugins/themes-resolver.js +3 -3
  35. package/dist/server/external-plugins/resolve-external-plugins.js +1 -1
  36. package/dist/server/node-bundle-entry.js +1 -1
  37. package/dist/server/plugins/api-docs/definition-access.d.ts +22 -0
  38. package/dist/server/plugins/api-docs/definition-access.js +1 -0
  39. package/dist/server/plugins/api-docs/index.js +1 -1
  40. package/dist/server/plugins/api-docs/options.js +1 -1
  41. package/dist/server/plugins/api-docs/spec-download.api.js +1 -1
  42. package/dist/server/plugins/config-parser/index.js +1 -1
  43. package/dist/server/plugins/markdown/attribute-resolvers/resolve-openapi-code-samples.js +1 -1
  44. package/dist/server/plugins/mcp/codemode/tools/describe-tools.d.ts +1 -1
  45. package/dist/server/plugins/mcp/codemode/tools/describe-tools.js +1 -3
  46. package/dist/server/plugins/mcp/handlers/docs-mcp-handler.js +1 -1
  47. package/dist/server/plugins/mcp/handlers/errors.d.ts +0 -5
  48. package/dist/server/plugins/mcp/handlers/errors.js +1 -1
  49. package/dist/server/plugins/mcp/handlers/handle-mcp-request.js +1 -1
  50. package/dist/server/plugins/mcp/handlers/mcp-credentials-handler.js +1 -1
  51. package/dist/server/plugins/mcp/servers/docs-server.js +1 -1
  52. package/dist/server/plugins/mcp/servers/mcp-server.js +2 -2
  53. package/dist/server/plugins/mcp/types.d.ts +10 -0
  54. package/dist/server/plugins/mcp/utils/available-tools.d.ts +5 -0
  55. package/dist/server/plugins/mcp/utils/available-tools.js +1 -0
  56. package/dist/server/plugins/mcp/workers/worker-context.d.ts +4 -0
  57. package/dist/server/plugins/mcp/workers/worker-context.js +1 -0
  58. package/dist/server/plugins/scorecard-classic/template/Grid/GridHeader.js +3 -3
  59. package/dist/server/store-config.d.ts +33 -0
  60. package/dist/server/store-config.js +1 -0
  61. package/dist/server/store.d.ts +10 -15
  62. package/dist/server/store.js +1 -1
  63. package/dist/server/tools/notifiers/formatter.js +1 -1
  64. package/dist/server/tools/notifiers/helpers/colors.d.ts +1 -1
  65. package/dist/server/types/plugins/api-routes.d.ts +4 -1
  66. package/dist/server/utils/envs/env-boolean-string.d.ts +9 -3
  67. package/dist/server/utils/envs/get-api-route-allowed-env-variables.d.ts +2 -0
  68. package/dist/server/utils/envs/get-api-route-allowed-env-variables.js +1 -1
  69. package/dist/server/utils/envs/interpolate-env-variables.d.ts +5 -1
  70. package/dist/server/utils/envs/interpolate-env-variables.js +1 -1
  71. package/dist/server/utils/envs/load-env-variables.js +1 -1
  72. package/dist/server/utils/envs/replace-env-variables-deep.d.ts +17 -9
  73. package/dist/server/utils/envs/replace-env-variables-deep.js +1 -1
  74. package/dist/server/utils/rbac.d.ts +2 -1
  75. package/dist/server/utils/rbac.js +1 -1
  76. package/dist/server/web-server/middleware/jsonValidatorMiddleware.d.ts +5 -325
  77. package/dist/server/workers/mcp-tool-worker-methods.d.ts +7 -0
  78. package/dist/server/workers/mcp-tool-worker-methods.js +1 -0
  79. package/dist/server/workers/mcp-tool-worker-pool.d.ts +0 -1
  80. package/dist/server/workers/mcp-tool-worker-pool.js +1 -1
  81. package/dist/server/workers/mcp-tool-worker.js +1 -1
  82. package/dist/server/workers/types.d.ts +4 -8
  83. package/dist/server/workers/worker-config.d.ts +33 -0
  84. package/dist/server/workers/worker-config.js +1 -0
  85. package/package.json +8 -8
  86. package/dist/compiled/@redocly/pii/index.js +0 -1
  87. package/dist/server/plugins/mcp/utils/available-sandbox-tools.d.ts +0 -4
  88. package/dist/server/plugins/mcp/utils/available-sandbox-tools.js +0 -1
@@ -1 +1 @@
1
- import{z as r}from"zod";const a=r.object({key:r.string(),value:r.record(r.unknown())}).passthrough(),t=r.object({name:r.string(),attributes:r.array(a)}).passthrough(),s=r.object({resource:r.object({attributes:r.array(a)}).passthrough(),scopeSpans:r.array(r.object({spans:r.array(t)}).passthrough())}).passthrough(),o=r.object({resourceSpans:r.array(s).optional()}).passthrough();export{o as otelTracesRequestSchema};
1
+ import{z as r}from"zod";const t=r.object({key:r.string(),value:r.record(r.string(),r.unknown())}).passthrough(),a=r.object({name:r.string(),attributes:r.array(t)}).passthrough(),s=r.object({resource:r.object({attributes:r.array(t)}).passthrough(),scopeSpans:r.array(r.object({spans:r.array(a)}).passthrough())}).passthrough(),o=r.object({resourceSpans:r.array(s).optional()}).passthrough();export{o as otelTracesRequestSchema};
@@ -5,37 +5,9 @@ export declare const searchFacetsRequestSchema: z.ZodObject<{
5
5
  query: z.ZodOptional<z.ZodString>;
6
6
  filter: z.ZodOptional<z.ZodArray<z.ZodObject<{
7
7
  field: z.ZodString;
8
- values: z.ZodArray<z.ZodString, "many">;
8
+ values: z.ZodArray<z.ZodString>;
9
9
  isQuickFilter: z.ZodOptional<z.ZodBoolean>;
10
- }, "strip", z.ZodTypeAny, {
11
- field: string;
12
- values: string[];
13
- isQuickFilter?: boolean | undefined;
14
- }, {
15
- field: string;
16
- values: string[];
17
- isQuickFilter?: boolean | undefined;
18
- }>, "many">>;
10
+ }, z.core.$strip>>>;
19
11
  facetQuery: z.ZodOptional<z.ZodString>;
20
- }, "strip", z.ZodTypeAny, {
21
- locale: string;
22
- field?: string | undefined;
23
- query?: string | undefined;
24
- filter?: {
25
- field: string;
26
- values: string[];
27
- isQuickFilter?: boolean | undefined;
28
- }[] | undefined;
29
- facetQuery?: string | undefined;
30
- }, {
31
- locale: string;
32
- field?: string | undefined;
33
- query?: string | undefined;
34
- filter?: {
35
- field: string;
36
- values: string[];
37
- isQuickFilter?: boolean | undefined;
38
- }[] | undefined;
39
- facetQuery?: string | undefined;
40
- }>;
12
+ }, z.core.$strip>;
41
13
  //# sourceMappingURL=search-facets.d.ts.map
@@ -2,66 +2,20 @@ import { z } from 'zod';
2
2
  export declare const searchFieldNameSchema: z.ZodString;
3
3
  export declare const searchFilterItemSchema: z.ZodObject<{
4
4
  field: z.ZodString;
5
- values: z.ZodArray<z.ZodString, "many">;
5
+ values: z.ZodArray<z.ZodString>;
6
6
  isQuickFilter: z.ZodOptional<z.ZodBoolean>;
7
- }, "strip", z.ZodTypeAny, {
8
- field: string;
9
- values: string[];
10
- isQuickFilter?: boolean | undefined;
11
- }, {
12
- field: string;
13
- values: string[];
14
- isQuickFilter?: boolean | undefined;
15
- }>;
7
+ }, z.core.$strip>;
16
8
  export declare const searchRequestSchema: z.ZodObject<{
17
9
  query: z.ZodString;
18
10
  locale: z.ZodString;
19
11
  filter: z.ZodOptional<z.ZodArray<z.ZodObject<{
20
12
  field: z.ZodString;
21
- values: z.ZodArray<z.ZodString, "many">;
13
+ values: z.ZodArray<z.ZodString>;
22
14
  isQuickFilter: z.ZodOptional<z.ZodBoolean>;
23
- }, "strip", z.ZodTypeAny, {
24
- field: string;
25
- values: string[];
26
- isQuickFilter?: boolean | undefined;
27
- }, {
28
- field: string;
29
- values: string[];
30
- isQuickFilter?: boolean | undefined;
31
- }>, "many">>;
15
+ }, z.core.$strip>>>;
32
16
  loadMore: z.ZodOptional<z.ZodObject<{
33
17
  groupKey: z.ZodString;
34
18
  offset: z.ZodNumber;
35
- }, "strip", z.ZodTypeAny, {
36
- groupKey: string;
37
- offset: number;
38
- }, {
39
- groupKey: string;
40
- offset: number;
41
- }>>;
42
- }, "strip", z.ZodTypeAny, {
43
- query: string;
44
- locale: string;
45
- filter?: {
46
- field: string;
47
- values: string[];
48
- isQuickFilter?: boolean | undefined;
49
- }[] | undefined;
50
- loadMore?: {
51
- groupKey: string;
52
- offset: number;
53
- } | undefined;
54
- }, {
55
- query: string;
56
- locale: string;
57
- filter?: {
58
- field: string;
59
- values: string[];
60
- isQuickFilter?: boolean | undefined;
61
- }[] | undefined;
62
- loadMore?: {
63
- groupKey: string;
64
- offset: number;
65
- } | undefined;
66
- }>;
19
+ }, z.core.$strip>>;
20
+ }, z.core.$strip>;
67
21
  //# sourceMappingURL=search.d.ts.map
@@ -1 +1 @@
1
- import w from"node:path";import{unlink as C}from"node:fs/promises";import{writeFileSync as P}from"node:fs";import{PORTAL_VERSION as R}from"../../server/version.js";import{logger as e}from"../../server/tools/notifiers/logger.js";import{reporter as b}from"../../server/tools/notifiers/reporter.js";import{shutdowner as h}from"../../server/tools/shutdowner.js";import{promiseMapLimit as A}from"../../server/utils/async/promise-map-limit.js";import{validateReactPages as D}from"../../server/plugins/pages/validators/validate-react-pages.js";import{ensureDir as j}from"../../server/utils/index.js";import{initPlugins as E,runPlugins as M,writeClientEntries as O}from"../../server/plugins/lifecycle.js";import{createClientCompiler as x,createNodeBundleCompiler as L}from"../../server/esbuild/esbuild.js";import{validateAllMarkdowns as k}from"../../server/plugins/markdown/compiler.js";import{copyEnvFiles as J}from"./copy-env-files.js";import{EsbuildError as m,esbuildLogger as d}from"../../server/esbuild/esbuild-logger.js";import{reportAllErrors as z}from"../../server/utils/report-all-errors.js";import{writeProblemsReport as F}from"../../server/utils/write-problems-report.js";import{collectAnalytics as N}from"./analytics/collect-analytics.js";import{copyMigrationsFolder as U}from"../../server/providers/database/copy-migrations.js";import{telemetry as c}from"../telemetry/index.js";import{telemetryTraceStep as s}from"../telemetry/helpers/trace-step.js";async function li(y,i){c.initialize(R),e.info("Starting project build."),i.devLogin=y.devLogin===!0;const T=e.startTiming();await s("com.redocly.build.start",async S=>{O(i);const p=await x(i,i.outdir,"production"),u=await L(i,i.serverOutDir,"production");let o,g;try{await s("com.redocly.build.clientCompilation",async()=>{const l=e.startTiming(),n=await p.rebuild().catch(a=>{throw new m(a)});Array.isArray(n.warnings)&&d(new m({warnings:n.warnings}));const r=e.infoTime(l,"Client JavaScript compiled");r&&c.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",...r}])}),await s("com.redocly.build.serverCompilation",async()=>{const l=e.startTiming(),n=await u.rebuild().catch(a=>{throw new m(a)});Array.isArray(n.warnings)&&d(new m({warnings:n.warnings}));const r=e.infoTime(l,"Server JavaScript compiled");r&&c.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",message:r.message,timeMs:r.timeMs}])}),await i.reloadMarkdocOptions();let t;({pluginInstances:t,lifecycleContext:o}=await E({outdir:i.outdir,serverOutDir:i.serverOutDir,contentDir:i.contentDir,devLogin:i.devLogin,setGlobalConfig:i.setGlobalConfig})),o.fs.dispose(),i.lifecycleContext=o,U(i),await M(t,i,o),g=N(i,o),await s("com.redocly.build.clientServerRecompile",async()=>{const l=e.startTiming();e.info("Re-compiling JavaScript with user code"),(await Promise.all([p.rebuild(),u.rebuild()]).catch(a=>{throw new m(a)})).forEach(({warnings:a})=>{Array.isArray(a)&&d(new m({warnings:a}))});const r=e.infoTime(l,"JavaScript re-compiled");r&&c.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",...r}])}),await s("com.redocly.build.pagesValidation",async()=>{await D(i,o),await k(i,o)}),await z(o),i.markUserCodeReady()}catch(t){S?.error(t),t instanceof m&&await d(t),await b.panic(t instanceof Error?t:String(t))}finally{g&&await g.catch(()=>{}),await p.dispose(),await u.dispose()}b.printErrors(),e.info("Rendering pages..."),await s("com.redocly.build.prepareStaticData",async t=>{const l=e.startTiming(),n=[...i.getAllRoutes(),...i.getAllApiRoutes()];t?.setAttribute("totalRoutes",n.length.toString()),await A(n,15,a=>i.writeRouteStaticData(a,o));const r=e.successTime(l,"Page static data prepared.");r&&c.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",...r}])}),await s("com.redocly.build.storeSerialization",async()=>{const t=e.startTiming();j(i.serverOutDir),P(w.join(i.serverOutDir,"store.json"),JSON.stringify(await i.toJson())),e.successTime(t,"Store serialized and written."),J(i)});const v=e.startTiming();F()&&e.successTime(v,"Broken links written."),await C(w.join(i.serverOutDir,"index.css"));const f=e.successTime(T,"All done");f&&c.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",...f}])}),await h.exitWithCode(0)}export{li as build};
1
+ import v from"node:path";import{unlink as C}from"node:fs/promises";import{PORTAL_VERSION as P}from"../../server/version.js";import{logger as e}from"../../server/tools/notifiers/logger.js";import{reporter as w}from"../../server/tools/notifiers/reporter.js";import{shutdowner as R}from"../../server/tools/shutdowner.js";import{promiseMapLimit as h}from"../../server/utils/async/promise-map-limit.js";import{validateReactPages as A}from"../../server/plugins/pages/validators/validate-react-pages.js";import{initPlugins as E,runPlugins as M,writeClientEntries as D}from"../../server/plugins/lifecycle.js";import{createClientCompiler as j,createNodeBundleCompiler as x}from"../../server/esbuild/esbuild.js";import{validateAllMarkdowns as L}from"../../server/plugins/markdown/compiler.js";import{copyEnvFiles as O}from"./copy-env-files.js";import{EsbuildError as c,esbuildLogger as d}from"../../server/esbuild/esbuild-logger.js";import{reportAllErrors as k}from"../../server/utils/report-all-errors.js";import{writeProblemsReport as z}from"../../server/utils/write-problems-report.js";import{collectAnalytics as J}from"./analytics/collect-analytics.js";import{copyMigrationsFolder as F}from"../../server/providers/database/copy-migrations.js";import{telemetry as s}from"../telemetry/index.js";import{telemetryTraceStep as m}from"../telemetry/helpers/trace-step.js";async function ri(b,i){s.initialize(P),e.info("Starting project build."),i.devLogin=b.devLogin===!0;const y=e.startTiming();await m("com.redocly.build.start",async T=>{D(i);const p=await j(i,i.outdir,"production"),u=await x(i,i.serverOutDir,"production");let o,g;try{await m("com.redocly.build.clientCompilation",async()=>{const l=e.startTiming(),n=await p.rebuild().catch(a=>{throw new c(a)});Array.isArray(n.warnings)&&d(new c({warnings:n.warnings}));const r=e.infoTime(l,"Client JavaScript compiled");r&&s.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",...r}])}),await m("com.redocly.build.serverCompilation",async()=>{const l=e.startTiming(),n=await u.rebuild().catch(a=>{throw new c(a)});Array.isArray(n.warnings)&&d(new c({warnings:n.warnings}));const r=e.infoTime(l,"Server JavaScript compiled");r&&s.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",message:r.message,timeMs:r.timeMs}])}),await i.reloadMarkdocOptions();let t;({pluginInstances:t,lifecycleContext:o}=await E({outdir:i.outdir,serverOutDir:i.serverOutDir,contentDir:i.contentDir,devLogin:i.devLogin,setGlobalConfig:i.setGlobalConfig})),o.fs.dispose(),i.lifecycleContext=o,F(i),await M(t,i,o),g=J(i,o),await m("com.redocly.build.clientServerRecompile",async()=>{const l=e.startTiming();e.info("Re-compiling JavaScript with user code"),(await Promise.all([p.rebuild(),u.rebuild()]).catch(a=>{throw new c(a)})).forEach(({warnings:a})=>{Array.isArray(a)&&d(new c({warnings:a}))});const r=e.infoTime(l,"JavaScript re-compiled");r&&s.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",...r}])}),await m("com.redocly.build.pagesValidation",async()=>{await A(i,o),await L(i,o)}),await k(o),i.markUserCodeReady()}catch(t){T?.error(t),t instanceof c&&await d(t),await w.panic(t instanceof Error?t:String(t))}finally{g&&await g.catch(()=>{}),await p.dispose(),await u.dispose()}w.printErrors(),e.info("Rendering pages..."),await m("com.redocly.build.prepareStaticData",async t=>{const l=e.startTiming(),n=[...i.getAllRoutes(),...i.getAllApiRoutes()];t?.setAttribute("totalRoutes",n.length.toString()),await h(n,15,a=>i.writeRouteStaticData(a,o));const r=e.successTime(l,"Page static data prepared.");r&&s.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",...r}])}),await m("com.redocly.build.storeSerialization",async()=>{const t=e.startTiming();await i.writeServerFiles(),e.successTime(t,"Store serialized and written."),O(i)});const S=e.startTiming();z()&&e.successTime(S,"Broken links written."),await C(v.join(i.serverOutDir,"index.css"));const f=e.successTime(y,"All done");f&&s.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",...f}])}),await R.exitWithCode(0)}export{ri as build};
@@ -1 +1 @@
1
- import*as c from"path";import{DEFAULT_THEME_NAME as i,USER_THEME_ALIAS as f}from"../../constants/common.js";import{logger as k}from"../../server/tools/notifiers/logger.js";import{reporter as T}from"../../server/tools/notifiers/reporter.js";import{resolveTheme as A}from"./resolveTheme.js";import{EntitlementsProvider as F}from"../../server/entitlements/entitlements-provider.js";const C=["markdoc/attributes/code-walkthrough-filesets.ts","markdoc/attributes/code-walkthrough-filters.ts","markdoc/components/CodeWalkthrough/**","markdoc/tags/code-step.ts","markdoc/tags/code-toggle.ts","markdoc/tags/code-walkthrough.ts"],m=["./core/**","./markdoc/**/default.*","**/__mocks__/**","**/index.*","**/utils/**/*","**/__tests__/**/*","**/__snapshots__/**/*","**/*.stories.*","**/variables.*",...C],v=["./components/CatalogClassic/CatalogClassicCard.*","./components/ColorModeSwitcher/**","./components/ReplayGate/**","./components/ReplaySecuritySchemeActions/**","./components/ReplayTopBarActions/**","./components/Feedback/**","./components/Filter/**","./components/Footer/**","./components/LanguagePicker/**","./components/Menu/**","./components/Navbar/**","./components/PageNavigation/**","./components/Product/**","./components/Search/**","./components/MissingTranslationNotice/**","./components/NavigationTabs/**","./components/UserMenu/**","./layouts/RootLayout.*","./layouts/CustomContexts.*","./layouts/NotFound.*","./layouts/Forbidden.*","./layouts/DocumentationLayoutTop.*","./layouts/DocumentationLayoutBottom.*","./icons/**","./markdoc/**","./ext/**"];async function L(t){const[p,r]=t._,{theme:l,force:u,onSuccess:d,onError:g,onOverride:h,config:E}=t,y=F.instance(),s=c.resolve(t["project-dir"]);let o=l;o||(o=i);const n=await A(s,E.plugins||[],o,r);n||await T.panicOnContentError(`Theme ${o} not found. Skipping eject.`);const e=n?.config.ejectIgnore;e&&!Array.isArray(e)&&k.warn("'ejectIgnore' must be of type Array. Skipping.");const a=await y.getPackageEjectIgnore(),_={force:u,onSuccess:d,onError:g,onOverride:h,onlyFiles:o===i?v:void 0,ignoreFiles:Array.isArray(e)?[...e,...a,...m]:[...a,...m]};return{objectType:p,pathToThemeFolder:n?.pluginDirAbsolutePath,pathToPortalCustomThemeFolder:c.resolve(s,f),componentToEject:r,theme:o,options:_}}export{m as DEFAULT_IGNORED_FILES,v as EJECTABLE_FILES,L as default};
1
+ import*as c from"path";import{DEFAULT_THEME_NAME as i,USER_THEME_ALIAS as f}from"../../constants/common.js";import{logger as k}from"../../server/tools/notifiers/logger.js";import{reporter as T}from"../../server/tools/notifiers/reporter.js";import{resolveTheme as A}from"./resolveTheme.js";import{EntitlementsProvider as F}from"../../server/entitlements/entitlements-provider.js";const C=["markdoc/attributes/code-walkthrough-filesets.ts","markdoc/attributes/code-walkthrough-filters.ts","markdoc/components/CodeWalkthrough/**","markdoc/tags/code-step.ts","markdoc/tags/code-toggle.ts","markdoc/tags/code-walkthrough.ts"],m=["./core/**","./markdoc/**/default.*","**/__mocks__/**","**/index.*","**/utils/**/*","**/__tests__/**/*","**/__snapshots__/**/*","**/*.stories.*","**/variables.*",...C],v=["./components/CatalogClassic/CatalogClassicCard.*","./components/ColorModeSwitcher/**","./components/ReplayGate/**","./components/ReplaySecuritySchemeActions/**","./components/ReplayTopBarActions/**","./components/Feedback/**","./components/Filter/**","./components/Footer/**","./components/LanguagePicker/**","./components/Menu/**","./components/Navbar/**","./components/PageNavigation/**","./components/Product/**","./components/Search/**","./components/MissingTranslationNotice/**","./components/NavigationTabs/**","./components/UserMenu/**","./layouts/RootLayout.*","./layouts/CustomContexts.*","./layouts/NotFound.*","./layouts/Forbidden.*","./layouts/McpNotAllowed.*","./layouts/DocumentationLayoutTop.*","./layouts/DocumentationLayoutBottom.*","./icons/**","./markdoc/**","./ext/**"];async function L(t){const[p,r]=t._,{theme:l,force:u,onSuccess:d,onError:g,onOverride:h,config:y}=t,E=F.instance(),s=c.resolve(t["project-dir"]);let o=l;o||(o=i);const n=await A(s,y.plugins||[],o,r);n||await T.panicOnContentError(`Theme ${o} not found. Skipping eject.`);const e=n?.config.ejectIgnore;e&&!Array.isArray(e)&&k.warn("'ejectIgnore' must be of type Array. Skipping.");const a=await E.getPackageEjectIgnore(),_={force:u,onSuccess:d,onError:g,onOverride:h,onlyFiles:o===i?v:void 0,ignoreFiles:Array.isArray(e)?[...e,...a,...m]:[...a,...m]};return{objectType:p,pathToThemeFolder:n?.pluginDirAbsolutePath,pathToPortalCustomThemeFolder:c.resolve(s,f),componentToEject:r,theme:o,options:_}}export{m as DEFAULT_IGNORED_FILES,v as EJECTABLE_FILES,L as default};
@@ -1,5 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import type { OpenAPIParameterLocation } from '@redocly/api-docs';
3
+ import type { RedocConfig } from '@redocly/config';
3
4
  type OpenApiCodeSampleProps = {
4
5
  descriptionFile?: string;
5
6
  operationId?: string;
@@ -9,6 +10,7 @@ type OpenApiCodeSampleProps = {
9
10
  language?: string;
10
11
  parameters?: Record<OpenAPIParameterLocation, object>;
11
12
  requestBody?: any;
13
+ options?: Partial<RedocConfig>;
12
14
  environment?: string;
13
15
  environments?: Record<string, Record<string, string>>;
14
16
  };
@@ -1 +1 @@
1
- import*as r from"react";import{MarkdownAdapterProvider as P,StoreProvider as h,RedocCodeSample as E,appendUndeclaredConfigureParameters as A,excludeMockServers as i,markdocParser as C}from"@redocly/api-docs";import{ErrorMessage as M,OpenApiComponentWrap as q}from"../styled.elements";import{useStore as w}from"../../hooks/use-store";import{findCodeSamplePanel as x}from"../../utils/find-code-sample-panel.js";import{usePortalMarkdownAdapter as I}from"./use-markdown-adapter";function F(m){const{descriptionFile:d,operationId:a,pointer:s,exampleKey:c,mimeType:u,language:n,requestBody:l,parameters:e,environment:f,environments:v}=m,{store:o,error:y}=w(d),g=I(),k=r.useMemo(()=>({specType:"openapi",...o?.options,...n&&{codeSamples:{languages:[{lang:n??""}]}},markdownParser:C}),[n,o?.options]),p=r.useMemo(()=>{if(!o?.items?.length)return;const t=x(o.items,{pointer:s,sourceId:a});if(!t)return;const S=A({...t.source,servers:i(t.source.servers)},{...e?.path&&{path:e.path},...e?.query&&{query:e.query},...e?.header&&{headers:e.header},...e?.cookie&&{cookie:e.cookie}});return{...t,...t.servers&&{servers:i(t.servers)},source:S}},[o?.items,s,a,e]);return o?p?r.createElement(q,{"data-testid":"openapi-code-sample"},r.createElement(h,{options:k,apiStore:o.store},r.createElement(P,{value:g},r.createElement(E,{node:p,mimeType:u,exampleKey:c,requestBody:l,parameters:e,environment:f,environments:v})))):r.createElement("pre",{style:{color:"red"}},"Cannot find OpenAPI operation (use pointer or operationId)"):r.createElement(M,null,y)}export{F as OpenApiCodeSample};
1
+ import*as o from"react";import{MarkdownAdapterProvider as h,StoreProvider as E,RedocCodeSample as A,appendUndeclaredConfigureParameters as C,excludeMockServers as m,markdocParser as M}from"@redocly/api-docs";import{ErrorMessage as q,OpenApiComponentWrap as w}from"../styled.elements";import{useStore as x}from"../../hooks/use-store";import{findCodeSamplePanel as I}from"../../utils/find-code-sample-panel.js";import{usePortalMarkdownAdapter as O}from"./use-markdown-adapter";function N(d){const{descriptionFile:c,operationId:s,pointer:p,exampleKey:l,mimeType:u,language:n,requestBody:f,parameters:e,options:a,environment:v,environments:y}=d,{store:r,error:S}=x(c),g=O(),k=o.useMemo(()=>({specType:"openapi",...r?.options,...a,codeSamples:{...r?.options?.codeSamples,...a?.codeSamples,...n&&{languages:[{lang:n}]}},markdownParser:M}),[n,a,r?.options]),i=o.useMemo(()=>{if(!r?.items?.length)return;const t=I(r.items,{pointer:p,sourceId:s});if(!t)return;const P=C({...t.source,servers:m(t.source.servers)},{...e?.path&&{path:e.path},...e?.query&&{query:e.query},...e?.header&&{headers:e.header},...e?.cookie&&{cookie:e.cookie}});return{...t,...t.servers&&{servers:m(t.servers)},source:P}},[r?.items,p,s,e]);return r?i?o.createElement(w,{"data-testid":"openapi-code-sample"},o.createElement(E,{options:k,apiStore:r.store},o.createElement(h,{value:g},o.createElement(A,{node:i,mimeType:u,exampleKey:l,requestBody:f,parameters:e,environment:v,environments:y})))):o.createElement("pre",{style:{color:"red"}},"Cannot find OpenAPI operation (use pointer or operationId)"):o.createElement(q,null,S)}export{N as OpenApiCodeSample};
@@ -1,2 +1,2 @@
1
- export declare function useGlobalData(): import("../../types/global-data").GlobalData;
1
+ export declare function useGlobalData(): import("../../types").GlobalData;
2
2
  //# sourceMappingURL=useGlobalData.d.ts.map
@@ -1,4 +1,4 @@
1
1
  export declare function usePostMessage(): {
2
- sendMessage: (message: import("../../types/post-message").OutgoingMessage) => void;
2
+ sendMessage: (message: import("../../types").OutgoingMessage) => void;
3
3
  };
4
4
  //# sourceMappingURL=use-post-message.d.ts.map
@@ -0,0 +1 @@
1
+ var o=e=>{if(!e||typeof e!="string"||!e.includes("@"))return e;let[r="",t]=e.split("@");return`${r.length>2?r.slice(0,2)+"*".repeat(r.length-2):"*".repeat(r.length)}@${t}`},m=/[a-zA-Z0-9._%+-]/,b=/^[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/,v=e=>{var r;let t="",a=0,l=0;for(;l<e.length;){let n=e.indexOf("@",l);if(n===-1)break;let d=n;for(;d>a&&m.test(e.charAt(d-1));)d--;let s=d<n?(r=b.exec(e.slice(n+1)))===null||r===void 0?void 0:r[0]:void 0;if(!s){l=n+1;continue}let c=n+1+s.length;t+=e.slice(a,d)+o(e.slice(d,c)),a=c,l=c}return t+e.slice(a)},_={email:{pattern:/\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b/g,replacement:"[email_removed]"},phone:{pattern:/(?:\+?1[-.\s]?)?\(?([0-9]{3})\)?[-.\s]?([0-9]{3})[-.\s]?([0-9]{4})(?:\s?(?:ext|x|extension)\.?\s?(\d+))?/g,replacement:"[phone_removed]"},ssn:{pattern:/\b(?!000|666|9\d{2})\d{3}-?(?!00)\d{2}-?(?!0000)\d{4}\b/g,replacement:"[SSN_removed]"},creditCard:{pattern:/\b\d{4}[\s-]?\d{4}[\s-]?\d{4}[\s-]?\d{4}\b/g,replacement:"[credit_card_removed]"},address:{pattern:/\b\d+\s[A-Za-z0-9\s,.-]+(?:Street|St|Avenue|Ave|Road|Rd|Boulevard|Blvd|Lane|Ln|Drive|Dr|Court|Ct|Circle|Cir|Way|Place|Pl|Parkway|Pkwy|Terrace|Ter)\b/gi,replacement:"[address_removed]"},passport:{pattern:/\b[A-Z]{2}[0-9]{7}\b/g,replacement:"[passport_number_removed]"},driversLicense:{pattern:/\b[A-Z]{1,2}[0-9]{6,9}\b/g,replacement:"[driver_license_removed]"},zipCode:{pattern:/(?<!\d-)\b\d{5}(?:-\d{4})?\b(?!-\d)/g,replacement:"[zip_code_removed]"},bankAccount:{pattern:/\b\d{8,17}\b/g,replacement:"[bank_account_removed]"},dateOfBirth:{pattern:/\b(?:0[1-9]|1[0-2])[-/](?:0[1-9]|[12][0-9]|3[01])[-/](?:19|20)\d{2}\b/g,replacement:"[date_removed]"}};function p(e){return typeof e=="string"}function u(e={}){let r={email:{enabled:!0,replacement:"[email_removed]"},phone:{enabled:!0,replacement:"[phone_removed]"},ssn:{enabled:!0,replacement:"[SSN_removed]"},creditCard:{enabled:!0,replacement:"[credit_card_removed]"},address:{enabled:!0,replacement:"[address_removed]"},passport:{enabled:!0,replacement:"[passport_number_removed]"},driversLicense:{enabled:!0,replacement:"[driver_license_removed]"},zipCode:{enabled:!0,replacement:"[zip_code_removed]"},bankAccount:{enabled:!0,replacement:"[bank_account_removed]"},dateOfBirth:{enabled:!0,replacement:"[date_removed]"}};for(let[t,a]of Object.entries(e))r[t]?r[t]=Object.assign(Object.assign({},r[t]),a):r[t]=a;return r}function i(e,r={}){if(!p(e))return e;let t=u(r),a=e;for(let[l,n]of Object.entries(t)){if(!n.enabled)continue;let d=_[l],s=d?.pattern||n.pattern,c=n.replacement||d?.replacement||"[PII removed]";s&&(a=a.replace(s,c))}return a}function f(e){if(!p(e))return e;try{let r=new URL(e,"http://example.com");for(let[t,a]of r.searchParams.entries()){let l=String(i(a));r.searchParams.set(t,l)}return e.startsWith("http://")||e.startsWith("https://")?r.toString():r.pathname+r.search+r.hash}catch{return String(i(e))}}export{o as maskEmail,v as maskSubject,i as removePii,f as removePiiFromUrl};
@@ -1 +1 @@
1
- {"name":"@redocly/pii","main":"index.js"}
1
+ {"name":"@redocly/pii","main":"index.mjs"}
@@ -1 +1 @@
1
- import{DefinitionPath as a}from"../attributes/index.js";import{getNodeAttribute as o}from"../helpers/get-node-attribute.js";import{getResolvedSampleCodeBlock as p}from"../helpers/get-resolved-sample-code-block.js";const u={schema:{attributes:{descriptionFile:{type:a,required:!0},pointer:{type:String,required:!1},operationId:{type:String,required:!1},exampleKey:{type:String,required:!1},mimeType:{type:String,required:!1},language:{type:String,required:!1},parameters:{type:Object,default:{},required:!1},requestBody:{type:Object,required:!1},environments:{type:Object,default:{},required:!1},environment:{type:String,required:!1},codeSamplesResolved:{type:Array,required:!1,resolver:"openapiCodeSamples"}},validate(r){const e=[];return r.attributes.pointer&&r.attributes.operationId&&e.push({id:"pointer-and-operationId-attributes-are-mutually-exclusive",level:"error",message:'The "pointer" and "operationId" attributes are mutually exclusive, you can only use one.'}),!r.attributes.pointer&&!r.attributes.operationId&&e.push({id:"pointer-or-operationId-attribute-required",level:"error",message:'This tag requires the "pointer" or "operationId" attribute to render correctly.'}),e},render:"OpenApiCodeSample",selfClosing:!0,dynamicComponentLib:"openapi",renderForLlms(r){const e=o(r,"codeSamplesResolved");if(!Array.isArray(e)||e.length===0)return"";const t=e.find(({lang:i})=>i==="shell")??e[0];return p(t)}},tagName:"openapi-code-sample"};export{u as openApiCodeSample};
1
+ import{DefinitionPath as a}from"../attributes/index.js";import{getNodeAttribute as o}from"../helpers/get-node-attribute.js";import{getResolvedSampleCodeBlock as p}from"../helpers/get-resolved-sample-code-block.js";const u={schema:{attributes:{descriptionFile:{type:a,required:!0},pointer:{type:String,required:!1},operationId:{type:String,required:!1},exampleKey:{type:String,required:!1},mimeType:{type:String,required:!1},language:{type:String,required:!1},parameters:{type:Object,default:{},required:!1},requestBody:{type:Object,required:!1},options:{type:Object,default:{},required:!1},environments:{type:Object,default:{},required:!1},environment:{type:String,required:!1},codeSamplesResolved:{type:Array,required:!1,resolver:"openapiCodeSamples"}},validate(r){const e=[];return r.attributes.pointer&&r.attributes.operationId&&e.push({id:"pointer-and-operationId-attributes-are-mutually-exclusive",level:"error",message:'The "pointer" and "operationId" attributes are mutually exclusive, you can only use one.'}),!r.attributes.pointer&&!r.attributes.operationId&&e.push({id:"pointer-or-operationId-attribute-required",level:"error",message:'This tag requires the "pointer" or "operationId" attribute to render correctly.'}),e},render:"OpenApiCodeSample",selfClosing:!0,dynamicComponentLib:"openapi",renderForLlms(r){const e=o(r,"codeSamplesResolved");if(!Array.isArray(e)||e.length===0)return"";const t=e.find(({lang:i})=>i==="shell")??e[0];return p(t)}},tagName:"openapi-code-sample"};export{u as openApiCodeSample};
@@ -1 +1 @@
1
- import{Hono as l}from"hono";import{TrieRouter as f}from"hono/router/trie-router";import{Logger as d}from"../tools/notifiers/logger.js";import{envConfig as a}from"../config/env-config.js";import{importApiRoutesHandler as m}from"./import-api-routes-handlers.js";import{getBodyWithSizeCheck as g}from"./helpers/get-body-with-size-check.js";import{setupLogger as w}from"./helpers/setup-logger.js";import{telemetry as c}from"../telemetry/index.js";import{KvService as D}from"../persistence/kv/services/kv-service.js";import{enhanceContext as R,enhanceMockServerContext as p}from"./helpers/enhance-context.js";import{isMockServerRoute as q}from"./helpers/is-mock-server.js";const u=new d,h=8e3,v=100;async function z(e){c.initialize(),w(u,e.requestHandlerId);const n=await A(e),r=await H(e,n).request(e.req.url,e.req),t=await g(r,e.maxResponseSizeMB);return{status:r.status,headers:Object.fromEntries(r.headers.entries()),body:t}}async function A(e){return(await(await M(e))()).default}function H(e,n){const o=new l({router:new f}),r=y(e.requestHandlerId);return o.all(e.slug,async t=>{if(typeof n!="function")return E(e,t);const i=r({honoCtx:t,ctx:e.ctxData,telemetry:c,getKv:()=>x(e),slug:e.slug}),s=await n(t.req.raw,i,e.staticData);return s instanceof Response?s:typeof s=="string"?t.text(s):t.json(s)}),o.onError((t,i)=>{if(u.error(`[${e.requestHandlerId}] ${t.message} ${t.stack}`),t instanceof SyntaxError)return i.text(t.message,500);throw t}),o}function y(e){return q(e)?p:R}function x(e){return D.getInstance({baseDbDir:e.serverOutDir,sqldRemoteDatabaseUrl:e.sqldRemoteDatabaseUrl,sqldRemoteDatabaseAuthToken:e.sqldRemoteDatabaseAuthToken})}function E(e,n){const o=`API function "${e.slug}" does not export a default function. Add 'export default function (request, context) { ... }' to the file.`;return u.error(`[${e.requestHandlerId}] ${o}`),a.isDevelopMode?n.text(o,500):n.newResponse(null,404)}async function M(e){const n=Date.now()+(a.isDevelopMode?h:0);let o;for(;;){try{const{requestHandlers:r}=await m(e.serverOutDir),t=r?.[e.requestHandlerId];if(typeof t=="function")return t;o=new Error(`Request handler "${e.requestHandlerId}" is not available yet.`)}catch(r){o=r}if(Date.now()>=n)throw o;await new Promise(r=>setTimeout(r,v))}}export{z as executeApiRoute};
1
+ import{Hono as l}from"hono";import{TrieRouter as f}from"hono/router/trie-router";import{Logger as d}from"../tools/notifiers/logger.js";import{envConfig as a}from"../config/env-config.js";import{importApiRoutesHandler as g}from"./import-api-routes-handlers.js";import{getBodyWithSizeCheck as m}from"./helpers/get-body-with-size-check.js";import{setupLogger as D}from"./helpers/setup-logger.js";import{telemetry as c}from"../telemetry/index.js";import{KvService as w}from"../persistence/kv/services/kv-service.js";import{enhanceContext as R,enhanceMockServerContext as p}from"./helpers/enhance-context.js";import{isMockServerRoute as q}from"./helpers/is-mock-server.js";import{readWorkerConfig as h}from"../workers/worker-config.js";const u=new d,v=8e3,A=100;async function W(e){c.initialize(),D(u,e.requestHandlerId);const n=await H(e),r=await x(e,n).request(e.req.url,e.req),t=await m(r,e.maxResponseSizeMB);return{status:r.status,headers:Object.fromEntries(r.headers.entries()),body:t}}async function H(e){return(await(await b(e))()).default}function x(e,n){const o=new l({router:new f}),r=y(e.requestHandlerId);return o.all(e.slug,async t=>{if(typeof n!="function")return M(e,t);const s=r({honoCtx:t,ctx:{...e.ctxData,config:h(e.ctxData.config)},telemetry:c,getKv:()=>E(e),slug:e.slug}),i=await n(t.req.raw,s,e.staticData);return i instanceof Response?i:typeof i=="string"?t.text(i):t.json(i)}),o.onError((t,s)=>{if(u.error(`[${e.requestHandlerId}] ${t.message} ${t.stack}`),t instanceof SyntaxError)return s.text(t.message,500);throw t}),o}function y(e){return q(e)?p:R}function E(e){return w.getInstance({baseDbDir:e.serverOutDir,sqldRemoteDatabaseUrl:e.sqldRemoteDatabaseUrl,sqldRemoteDatabaseAuthToken:e.sqldRemoteDatabaseAuthToken})}function M(e,n){const o=`API function "${e.slug}" does not export a default function. Add 'export default function (request, context) { ... }' to the file.`;return u.error(`[${e.requestHandlerId}] ${o}`),a.isDevelopMode?n.text(o,500):n.newResponse(null,404)}async function b(e){const n=Date.now()+(a.isDevelopMode?v:0);let o;for(;;){try{const{requestHandlers:r}=await g(e.serverOutDir),t=r?.[e.requestHandlerId];if(typeof t=="function")return t;o=new Error(`Request handler "${e.requestHandlerId}" is not available yet.`)}catch(r){o=r}if(Date.now()>=n)throw o;await new Promise(r=>setTimeout(r,A))}}export{W as executeApiRoute};
@@ -1 +1 @@
1
- import*as p from"workerpool";import{withPathPrefix as E}from"@redocly/theme/core/utils";import{envConfig as u}from"../config/env-config.js";import{telemetry as a}from"../telemetry/index.js";import{TimeoutExceededError as f}from"./errors/timeout-exceeded.js";import{serializeRequest as g}from"./helpers/serialize-request.js";import{apiRoutesWorkers as A,API_ROUTES_WORKER_KEY as T}from"../workers/api-routes-worker-pool.js";import{API_FUNCTIONS_REQUEST_HANDLER_ID as m}from"../plugins/api-functions/index.js";const h=1e4,S=15;async function v(e,r,i){a.initialize();const t=r.get("auth"),s=await i.resolveRouteStaticData(e)||{},n=E(e.slug);try{const{status:o,headers:d,body:c}=await A.exec(T,[{serverOutDir:i.serverOutDir,slug:n,requestHandlerId:e.requestHandlerId,maxResponseSizeMB:S,ctxData:{user:{teams:t.teams,email:t.claims.email,claims:t.claims,idpAccessToken:t.idpAccessToken,idpId:t.claims.idpId,isAuthenticated:t.isAuthenticated},config:i.config,outdir:i.outdir,baseUrl:new URL(r.req.url).origin},staticData:{...s,props:{...s.props,routeSlug:n,outdir:i.outdir}},req:await g(r.req.raw),sqldRemoteDatabaseUrl:u.SQLD_REMOTE_DATABASE_URL,sqldRemoteDatabaseAuthToken:u.SQLD_REMOTE_DATABASE_AUTH_TOKEN}],{timeout:h});R({requestHandlerId:e.requestHandlerId,status:o,ctx:r});const l=c.data?Buffer.from(c.data):null;return new Response(l,{status:o,headers:d})}catch(o){throw _({requestHandlerId:e.requestHandlerId,error:o}),o instanceof p.Promise.TimeoutError?new f("Timeout exceeded"):o}}function R({requestHandlerId:e,status:r,ctx:i}){e.startsWith(m)?a.sendApiFunctionCalledMessage([{id:"apiFunctionId",object:"apiFunction",uri:"urn:redocly:realm:api:apiFunction:apiFunctionId",handler:e,status:r,message:null}]):a.sendMockServerCalledMessage([{id:e,object:"mockServer",uri:`urn:redocly:realm:api:mockServer:${e}`,error:null,handler:e,headers:{"user-agent":i.req.header("user-agent")??null},status:r}])}function _({requestHandlerId:e,error:r}){e.startsWith(m)?a.sendApiFunctionErrorMessage([{id:"apiFunctionId",object:"apiFunction",uri:"urn:redocly:realm:api:apiFunction:apiFunctionId",status:500,handler:e,message:r.message}]):a.sendMockServerErrorMessage([{id:e,object:"mockServer",uri:`urn:redocly:realm:api:mockServer:${e}`,handler:e,message:r.message}])}export{v as runApiRoutesWorker,_ as sendTelemetryErrorMessage};
1
+ import*as p from"workerpool";import{withPathPrefix as f}from"@redocly/theme/core/utils";import{envConfig as u}from"../config/env-config.js";import{telemetry as a}from"../telemetry/index.js";import{TimeoutExceededError as g}from"./errors/timeout-exceeded.js";import{serializeRequest as E}from"./helpers/serialize-request.js";import{apiRoutesWorkers as A,API_ROUTES_WORKER_KEY as T}from"../workers/api-routes-worker-pool.js";import{API_FUNCTIONS_REQUEST_HANDLER_ID as m}from"../plugins/api-functions/index.js";import{toWorkerConfig as h}from"../workers/worker-config.js";const S=1e4,R=15;async function U(e,r,i){a.initialize();const o=r.get("auth"),s=await i.resolveRouteStaticData(e)||{},n=f(e.slug);try{const{status:t,headers:l,body:c}=await A.exec(T,[{serverOutDir:i.serverOutDir,slug:n,requestHandlerId:e.requestHandlerId,maxResponseSizeMB:R,ctxData:{user:{teams:o.teams,email:o.claims.email,claims:o.claims,idpAccessToken:o.idpAccessToken,idpId:o.claims.idpId,isAuthenticated:o.isAuthenticated},config:h(i.config,i.configFile),outdir:i.outdir,baseUrl:new URL(r.req.url).origin},staticData:{...s,props:{...s.props,routeSlug:n,outdir:i.outdir}},req:await E(r.req.raw),sqldRemoteDatabaseUrl:u.SQLD_REMOTE_DATABASE_URL,sqldRemoteDatabaseAuthToken:u.SQLD_REMOTE_DATABASE_AUTH_TOKEN}],{timeout:S});_({requestHandlerId:e.requestHandlerId,status:t,ctx:r});const d=c.data?Buffer.from(c.data):null;return new Response(d,{status:t,headers:l})}catch(t){throw M({requestHandlerId:e.requestHandlerId,error:t}),t instanceof p.Promise.TimeoutError?new g("Timeout exceeded"):t}}function _({requestHandlerId:e,status:r,ctx:i}){e.startsWith(m)?a.sendApiFunctionCalledMessage([{id:"apiFunctionId",object:"apiFunction",uri:"urn:redocly:realm:api:apiFunction:apiFunctionId",handler:e,status:r,message:null}]):a.sendMockServerCalledMessage([{id:e,object:"mockServer",uri:`urn:redocly:realm:api:mockServer:${e}`,error:null,handler:e,headers:{"user-agent":i.req.header("user-agent")??null},status:r}])}function M({requestHandlerId:e,error:r}){e.startsWith(m)?a.sendApiFunctionErrorMessage([{id:"apiFunctionId",object:"apiFunction",uri:"urn:redocly:realm:api:apiFunction:apiFunctionId",status:500,handler:e,message:r.message}]):a.sendMockServerErrorMessage([{id:e,object:"mockServer",uri:`urn:redocly:realm:api:mockServer:${e}`,handler:e,message:r.message}])}export{U as runApiRoutesWorker,M as sendTelemetryErrorMessage};
@@ -4,8 +4,8 @@ declare function loadEnvConfig(): {
4
4
  NODE_ENV?: "development" | "production" | undefined;
5
5
  REDOCLY_ENV: "development" | "preview" | "production";
6
6
  REDOCLY_EXECUTION_MODE: "build" | "develop" | "runtime";
7
- REDOCLY_INTERNAL_DEV?: boolean | undefined;
8
- CI?: boolean | undefined;
7
+ REDOCLY_INTERNAL_DEV: boolean | undefined;
8
+ CI: boolean | undefined;
9
9
  PORT?: number | undefined;
10
10
  REDOCLY_LOG_FORMAT?: string | undefined;
11
11
  REDOCLY_LOG_LEVEL?: string | undefined;
@@ -15,7 +15,7 @@ declare function loadEnvConfig(): {
15
15
  REDOCLY_CONTENT_DIR?: string | undefined;
16
16
  REDOCLY_PORTAL_VERSION?: string | undefined;
17
17
  REDOCLY_TELEMETRY?: string | undefined;
18
- TELEMETRY_DEV_DEBUG?: boolean | undefined;
18
+ TELEMETRY_DEV_DEBUG: boolean | undefined;
19
19
  WEB_SERVER_IDLE_TIMEOUT?: string | undefined;
20
20
  REDOCLY_PROBLEMS_OUTPUT_FILE?: string | undefined;
21
21
  REDOCLY_METADATA_OUTPUT_FOLDER?: string | undefined;
@@ -36,23 +36,24 @@ declare function loadEnvConfig(): {
36
36
  OIDC_CLIENT_ID?: string | undefined;
37
37
  OIDC_CLIENT_SECRET?: string | undefined;
38
38
  OIDC_ISSUER_URL?: string | undefined;
39
- LOCALHOST_LOGIN?: boolean | undefined;
39
+ LOCALHOST_LOGIN: boolean | undefined;
40
40
  REDOCLY_OAUTH_USE_INTROSPECT?: string | undefined;
41
- REDOCLY_ENFORCE_LOGIN?: boolean | undefined;
41
+ REDOCLY_ENFORCE_LOGIN: boolean | undefined;
42
42
  REDOCLY_ENFORCE_RESIDENCY?: string | undefined;
43
43
  REDOCLY_SSR_RENDER_MODE?: "main" | "worker" | undefined;
44
44
  REDOCLY_SSR_WORKERS_MIN?: number | undefined;
45
45
  REDOCLY_SSR_WORKERS_MAX?: number | undefined;
46
- NEW_CATALOG_ENABLED?: boolean | undefined;
47
- NEW_SCORECARDS_ENABLED?: boolean | undefined;
46
+ NEW_CATALOG_ENABLED: boolean | undefined;
47
+ NEW_SCORECARDS_ENABLED: boolean | undefined;
48
48
  ENABLE_COMMENTS?: string | undefined;
49
- REDOCLY_EXP_DISABLE_MD_VALIDATION?: boolean | undefined;
50
- ENABLE_SOURCE_MAPS?: boolean | undefined;
49
+ REDOCLY_EXP_DISABLE_MD_VALIDATION: boolean | undefined;
50
+ ENABLE_SOURCE_MAPS: boolean | undefined;
51
51
  PLAN_GATES?: string | undefined;
52
- REDOCLY_EXP_LLMSTXT_AGENT_FEEDBACK_ENABLED?: boolean | undefined;
52
+ REDOCLY_EXP_LLMSTXT_AGENT_FEEDBACK_ENABLED: boolean | undefined;
53
53
  REDOCLY_EXP_LLMSTXT_AGENT_FEEDBACK_URL?: string | undefined;
54
54
  REDOCLY_EXP_LLMSTXT_AGENT_ENDPOINT?: string | undefined;
55
- REDOCLY_EXP_REPLAY_GRAPHQL_ENABLED?: boolean | undefined;
55
+ REDOCLY_EXP_REPLAY_GRAPHQL_ENABLED: boolean | undefined;
56
+ REDOCLY_EXP_REPLAY_ASYNCAPI_ENABLED: boolean | undefined;
56
57
  SEARCH_DEV_REINIT?: string | undefined;
57
58
  SEARCH_DEV_DEBUG: boolean;
58
59
  REDOCLY_SKIP_TYPESENSE_INDEXING: boolean;
@@ -65,7 +66,7 @@ declare function loadEnvConfig(): {
65
66
  REDOCLY_CORS_ORIGINS?: string | undefined;
66
67
  SQLD_REMOTE_DATABASE_URL?: string | undefined;
67
68
  SQLD_REMOTE_DATABASE_AUTH_TOKEN?: string | undefined;
68
- FORCE_CATALOG_CACHE_REVALIDATE?: boolean | undefined;
69
+ FORCE_CATALOG_CACHE_REVALIDATE: boolean | undefined;
69
70
  CATALOG_MAX_REVISIONS?: number | undefined;
70
71
  SCORECARDS_POLLING_INTERVAL_MS?: string | undefined;
71
72
  OTEL_TRACES_URL?: string | undefined;
@@ -85,8 +86,8 @@ export declare const envConfig: {
85
86
  NODE_ENV?: "development" | "production" | undefined;
86
87
  REDOCLY_ENV: "development" | "preview" | "production";
87
88
  REDOCLY_EXECUTION_MODE: "build" | "develop" | "runtime";
88
- REDOCLY_INTERNAL_DEV?: boolean | undefined;
89
- CI?: boolean | undefined;
89
+ REDOCLY_INTERNAL_DEV: boolean | undefined;
90
+ CI: boolean | undefined;
90
91
  PORT?: number | undefined;
91
92
  REDOCLY_LOG_FORMAT?: string | undefined;
92
93
  REDOCLY_LOG_LEVEL?: string | undefined;
@@ -96,7 +97,7 @@ export declare const envConfig: {
96
97
  REDOCLY_CONTENT_DIR?: string | undefined;
97
98
  REDOCLY_PORTAL_VERSION?: string | undefined;
98
99
  REDOCLY_TELEMETRY?: string | undefined;
99
- TELEMETRY_DEV_DEBUG?: boolean | undefined;
100
+ TELEMETRY_DEV_DEBUG: boolean | undefined;
100
101
  WEB_SERVER_IDLE_TIMEOUT?: string | undefined;
101
102
  REDOCLY_PROBLEMS_OUTPUT_FILE?: string | undefined;
102
103
  REDOCLY_METADATA_OUTPUT_FOLDER?: string | undefined;
@@ -117,23 +118,24 @@ export declare const envConfig: {
117
118
  OIDC_CLIENT_ID?: string | undefined;
118
119
  OIDC_CLIENT_SECRET?: string | undefined;
119
120
  OIDC_ISSUER_URL?: string | undefined;
120
- LOCALHOST_LOGIN?: boolean | undefined;
121
+ LOCALHOST_LOGIN: boolean | undefined;
121
122
  REDOCLY_OAUTH_USE_INTROSPECT?: string | undefined;
122
- REDOCLY_ENFORCE_LOGIN?: boolean | undefined;
123
+ REDOCLY_ENFORCE_LOGIN: boolean | undefined;
123
124
  REDOCLY_ENFORCE_RESIDENCY?: string | undefined;
124
125
  REDOCLY_SSR_RENDER_MODE?: "main" | "worker" | undefined;
125
126
  REDOCLY_SSR_WORKERS_MIN?: number | undefined;
126
127
  REDOCLY_SSR_WORKERS_MAX?: number | undefined;
127
- NEW_CATALOG_ENABLED?: boolean | undefined;
128
- NEW_SCORECARDS_ENABLED?: boolean | undefined;
128
+ NEW_CATALOG_ENABLED: boolean | undefined;
129
+ NEW_SCORECARDS_ENABLED: boolean | undefined;
129
130
  ENABLE_COMMENTS?: string | undefined;
130
- REDOCLY_EXP_DISABLE_MD_VALIDATION?: boolean | undefined;
131
- ENABLE_SOURCE_MAPS?: boolean | undefined;
131
+ REDOCLY_EXP_DISABLE_MD_VALIDATION: boolean | undefined;
132
+ ENABLE_SOURCE_MAPS: boolean | undefined;
132
133
  PLAN_GATES?: string | undefined;
133
- REDOCLY_EXP_LLMSTXT_AGENT_FEEDBACK_ENABLED?: boolean | undefined;
134
+ REDOCLY_EXP_LLMSTXT_AGENT_FEEDBACK_ENABLED: boolean | undefined;
134
135
  REDOCLY_EXP_LLMSTXT_AGENT_FEEDBACK_URL?: string | undefined;
135
136
  REDOCLY_EXP_LLMSTXT_AGENT_ENDPOINT?: string | undefined;
136
- REDOCLY_EXP_REPLAY_GRAPHQL_ENABLED?: boolean | undefined;
137
+ REDOCLY_EXP_REPLAY_GRAPHQL_ENABLED: boolean | undefined;
138
+ REDOCLY_EXP_REPLAY_ASYNCAPI_ENABLED: boolean | undefined;
137
139
  SEARCH_DEV_REINIT?: string | undefined;
138
140
  SEARCH_DEV_DEBUG: boolean;
139
141
  REDOCLY_SKIP_TYPESENSE_INDEXING: boolean;
@@ -146,7 +148,7 @@ export declare const envConfig: {
146
148
  REDOCLY_CORS_ORIGINS?: string | undefined;
147
149
  SQLD_REMOTE_DATABASE_URL?: string | undefined;
148
150
  SQLD_REMOTE_DATABASE_AUTH_TOKEN?: string | undefined;
149
- FORCE_CATALOG_CACHE_REVALIDATE?: boolean | undefined;
151
+ FORCE_CATALOG_CACHE_REVALIDATE: boolean | undefined;
150
152
  CATALOG_MAX_REVISIONS?: number | undefined;
151
153
  SCORECARDS_POLLING_INTERVAL_MS?: string | undefined;
152
154
  OTEL_TRACES_URL?: string | undefined;