@redocly/replay 0.25.0-next.3 → 0.25.0-next.4

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.
@@ -7626,7 +7626,7 @@ function nT(t, e) {
7626
7626
  function fv(t, e) {
7627
7627
  return Object.fromEntries(Object.entries(t).filter(([r]) => !e.includes(r)));
7628
7628
  }
7629
- var qc = { nodeTypeName: void 0, type: "object", additionalProperties: { oneOf: [{ type: "string" }, { type: "object" }] }, description: "The rules configuration blocks set up linting rules and their severity. You can configure built-in rules, add configurable rules, and rules from plugins.", documentationLink: "https://redocly.com/docs/cli/configuration/reference/rules#rules" }, BIe = { rules: qc, oas2Rules: qc, oas3_0Rules: qc, oas3_1Rules: qc, oas3_2Rules: qc, async2Rules: qc, async3Rules: qc, arazzo1Rules: qc, overlay1Rules: qc, openrpc1Rules: qc }, zc = { nodeTypeName: void 0, type: "object", additionalProperties: !0 }, WIe = { preprocessors: zc, oas2Preprocessors: zc, oas3_0Preprocessors: zc, oas3_1Preprocessors: zc, oas3_2Preprocessors: zc, async2Preprocessors: zc, async3Preprocessors: zc, arazzo1Preprocessors: zc, overlay1Preprocessors: zc, openrpc1Preprocessors: zc }, Uc = { nodeTypeName: void 0, type: "object", additionalProperties: !0 }, ZIe = { decorators: Uc, oas2Decorators: Uc, oas3_0Decorators: Uc, oas3_1Decorators: Uc, oas3_2Decorators: Uc, async2Decorators: Uc, async3Decorators: Uc, arazzo1Decorators: Uc, overlay1Decorators: Uc, openrpc1Decorators: Uc }, XIe = { nodeTypeName: void 0, type: "array", items: { type: "string" }, description: "Use extends to inherit rules and their configurations from other rulesets.", documentationLink: "https://redocly.com/docs/cli/configuration/reference/extends" }, iT = { ...BIe, ...ZIe, ...WIe, extends: XIe }, Bie = (t) => t, Es = Bie({ RedirectSource: "RedirectSource", Redirects: "Redirects", ScorecardClassic: "ScorecardClassic", ScorecardClassicLevelList: "ScorecardClassicLevelList", ScorecardClassicLevel: "ScorecardClassicLevel", ScorecardClassicTargetList: "ScorecardClassicTargetList", ScorecardClassicTarget: "ScorecardClassicTarget", ScorecardClassicTargetWhere: "ScorecardClassicTargetWhere", ScorecardClassicTargetWhereMetadata: "ScorecardClassicTargetWhereMetadata", ScorecardClassicTeamMetadataProperty: "ScorecardClassicTeamMetadataProperty" }), xo = { type: "object", properties: { hide: { type: "boolean" } }, additionalProperties: !1 }, k9 = { type: "object", properties: { src: { type: "string" }, async: { type: "boolean" }, crossorigin: { type: "string" }, defer: { type: "boolean" }, fetchpriority: { type: "string" }, integrity: { type: "string" }, module: { type: "boolean" }, nomodule: { type: "boolean" }, nonce: { type: "string" }, referrerpolicy: { type: "string" }, type: { type: "string" } }, required: ["src"], additionalProperties: !0 }, NE = { type: "object", properties: { page: { type: "string" }, directory: { type: "string" }, disconnect: { type: "boolean", default: !1 }, group: { type: "string" }, label: { type: "string" }, href: { type: "string" }, external: { type: "boolean" }, labelTranslationKey: { type: "string" }, groupTranslationKey: { type: "string" }, icon: { oneOf: [{ type: "string" }, { type: "object", properties: { srcSet: { type: "string" } }, required: ["srcSet"] }] }, separator: { type: "string" }, separatorLine: { type: "boolean" }, linePosition: { type: "string", enum: ["top", "bottom"], default: "top" }, version: { type: "string" }, menuStyle: { type: "string", enum: ["drilldown"] }, expanded: { type: "string", const: "always" }, selectFirstItemOnExpand: { type: "boolean" }, flatten: { type: "boolean" }, linkedSidebars: { type: "array", items: { type: "string" } }, items: { type: "array", items: { type: "object", additionalProperties: !0 } }, rbac: { type: "object", additionalProperties: { type: "string" } }, additionalProps: { type: "object", additionalProperties: !0 } } }, ZL = { type: "array", items: { ...NE, properties: { ...NE.properties, items: { type: "array", items: NE } } } }, GIe = { type: "object", properties: { name: { type: "string" }, icon: { type: "string" }, folder: { type: "string" } }, additionalProperties: !1, required: ["name", "folder"] }, YIe = { type: "object", properties: { hide: { type: "boolean", default: !1 }, suggestions: { default: [], type: "array", items: { type: "string" } }, prompt: { type: "string" } }, additionalProperties: !1 }, HIe = { type: "array", items: { type: "object", required: ["name", "field", "type"], properties: { name: { type: "string" }, field: { type: "string" }, type: { type: "string", enum: ["multi-select", "select", "tags"] } }, additionalProperties: !1 } }, JIe = { type: "object", properties: { facets: HIe, ...xo.properties }, additionalProperties: !1 }, KIe = { type: "object", properties: { page: { type: "string" }, label: { type: "string" }, labelTranslationKey: { type: "string" } }, required: ["page"] }, Wie = { type: "object", properties: { image: { type: "string" }, srcSet: { type: "string" }, altText: { type: "string" }, link: { type: "string" }, favicon: { type: "string" } }, additionalProperties: !1 }, Zie = { type: "object", properties: { items: ZL, ...xo.properties }, additionalProperties: !1 }, Xie = { type: "object", additionalProperties: GIe }, Gie = { type: "object", properties: { items: ZL, copyrightText: { type: "string" }, logo: xo, ...xo.properties }, additionalProperties: !1 }, Yie = { type: "object", properties: { separatorLine: { type: "boolean" }, linePosition: { type: "string", enum: ["top", "bottom"], default: "bottom" }, ...xo.properties }, additionalProperties: !1 }, Hie = { type: "object", properties: { head: { type: "array", items: k9 }, body: { type: "array", items: k9 } }, additionalProperties: !1 }, Jie = { type: "array", items: { type: "object", properties: { href: { type: "string" }, as: { type: "string" }, crossorigin: { type: "string" }, fetchpriority: { type: "string" }, hreflang: { type: "string" }, imagesizes: { type: "string" }, imagesrcset: { type: "string" }, integrity: { type: "string" }, media: { type: "string" }, prefetch: { type: "string" }, referrerpolicy: { type: "string" }, rel: { type: "string" }, sizes: { type: "string" }, title: { type: "string" }, type: { type: "string" } }, required: ["href"], additionalProperties: !0 } }, Kie = { type: "object", properties: { engine: { type: "string", enum: ["flexsearch", "typesense"], default: "flexsearch" }, ai: YIe, filters: JIe, placement: { type: "string", default: "navbar" }, shortcuts: { type: "array", items: { type: "string" }, default: ["⌘+K,ctrl+K"] }, suggestedPages: { type: "array", items: KIe }, ...xo.properties }, additionalProperties: !1 }, eoe = { type: "object", properties: { hide: { type: "boolean" }, suggestions: { default: [], type: "array", items: { type: "string" } }, prompt: { type: "string" }, trigger: { type: "object", properties: { hide: { type: "boolean", default: !1 }, inputType: { type: "string", enum: ["button", "icon"], default: "button" }, inputIcon: { type: "string", enum: ["chat", "sparkles", "redocly"], default: "sparkles" } }, additionalProperties: !1 } }, additionalProperties: !1 }, toe = { type: "object", properties: { ignoreDetection: { type: "boolean" }, modes: { type: "array", items: { type: "string" }, default: ["light", "dark"] }, ...xo.properties }, additionalProperties: !1 }, roe = { type: "string", enum: ["slate", "pink", "coral", "amber", "jade", "cyan", "ocean", "indigo", "iris"] }, eEe = { type: "object", properties: { ...xo.properties, items: { type: "array", items: { type: "string", enum: ["copy", "view", "chatgpt", "claude", "docs-mcp-cursor", "docs-mcp-vscode"] }, default: ["copy", "view", "chatgpt", "claude", "docs-mcp-cursor", "docs-mcp-vscode"] } }, additionalProperties: !1 }, noe = { type: "object", properties: { nextButton: { type: "object", properties: { text: { type: "string" }, ...xo.properties }, additionalProperties: !1, default: {} }, previousButton: { type: "object", properties: { text: { type: "string" }, ...xo.properties }, additionalProperties: !1, default: {} }, actions: eEe }, additionalProperties: !1 }, ioe = { type: "object", properties: { elementFormat: { type: "string", default: "icon" }, copy: { type: "object", properties: { ...xo.properties }, additionalProperties: !1, default: { hide: !1 } }, report: { type: "object", properties: { tooltipText: { type: "string" }, buttonText: { type: "string" }, label: { type: "string" }, ...xo.properties }, additionalProperties: !1, default: { hide: !1 } }, expand: { type: "object", properties: { ...xo.properties }, additionalProperties: !1, default: { hide: !1 } }, collapse: { type: "object", properties: { ...xo.properties }, additionalProperties: !1, default: { hide: !1 } } }, additionalProperties: !1 }, ooe = { type: "object", properties: { frontMatterKeysToResolve: { type: "array", items: { type: "string" }, default: ["image", "links"] }, partialsFolders: { type: "array", items: { type: "string" }, default: ["**/_partials/**"] }, lastUpdatedBlock: { type: "object", properties: { format: { type: "string", enum: ["timeago", "iso", "long", "short"], default: "timeago" }, locale: { type: "string" }, ...xo.properties }, additionalProperties: !1, default: {} }, toc: { type: "object", properties: { header: { type: "string", default: "On this page" }, depth: { type: "integer", default: 3, minimum: 1 }, ...xo.properties }, additionalProperties: !1, default: {} }, editPage: { type: "object", properties: { baseUrl: { type: "string" }, ...xo.properties }, additionalProperties: !1, default: {} } }, additionalProperties: !1, default: {} }, uP = { ...eD, properties: { ...eD.properties, ...FIe.properties } };
7629
+ var qc = { nodeTypeName: void 0, type: "object", additionalProperties: { oneOf: [{ type: "string" }, { type: "object" }] }, description: "The rules configuration blocks set up linting rules and their severity. You can configure built-in rules, add configurable rules, and rules from plugins.", documentationLink: "https://redocly.com/docs/cli/configuration/reference/rules#rules" }, BIe = { rules: qc, oas2Rules: qc, oas3_0Rules: qc, oas3_1Rules: qc, oas3_2Rules: qc, async2Rules: qc, async3Rules: qc, arazzo1Rules: qc, overlay1Rules: qc, openrpc1Rules: qc }, zc = { nodeTypeName: void 0, type: "object", additionalProperties: !0 }, WIe = { preprocessors: zc, oas2Preprocessors: zc, oas3_0Preprocessors: zc, oas3_1Preprocessors: zc, oas3_2Preprocessors: zc, async2Preprocessors: zc, async3Preprocessors: zc, arazzo1Preprocessors: zc, overlay1Preprocessors: zc, openrpc1Preprocessors: zc }, Uc = { nodeTypeName: void 0, type: "object", additionalProperties: !0 }, ZIe = { decorators: Uc, oas2Decorators: Uc, oas3_0Decorators: Uc, oas3_1Decorators: Uc, oas3_2Decorators: Uc, async2Decorators: Uc, async3Decorators: Uc, arazzo1Decorators: Uc, overlay1Decorators: Uc, openrpc1Decorators: Uc }, XIe = { nodeTypeName: void 0, type: "array", items: { type: "string" }, description: "Use extends to inherit rules and their configurations from other rulesets.", documentationLink: "https://redocly.com/docs/cli/configuration/reference/extends" }, iT = { ...BIe, ...ZIe, ...WIe, extends: XIe }, Bie = (t) => t, Es = Bie({ RedirectSource: "RedirectSource", Redirects: "Redirects", ScorecardClassic: "ScorecardClassic", ScorecardClassicLevelList: "ScorecardClassicLevelList", ScorecardClassicLevel: "ScorecardClassicLevel", ScorecardClassicTargetList: "ScorecardClassicTargetList", ScorecardClassicTarget: "ScorecardClassicTarget", ScorecardClassicTargetWhere: "ScorecardClassicTargetWhere", ScorecardClassicTargetWhereMetadata: "ScorecardClassicTargetWhereMetadata", ScorecardClassicTeamMetadataProperty: "ScorecardClassicTeamMetadataProperty" }), xo = { type: "object", properties: { hide: { type: "boolean" } }, additionalProperties: !1 }, k9 = { type: "object", properties: { src: { type: "string" }, async: { type: "boolean" }, crossorigin: { type: "string" }, defer: { type: "boolean" }, fetchpriority: { type: "string" }, integrity: { type: "string" }, module: { type: "boolean" }, nomodule: { type: "boolean" }, nonce: { type: "string" }, referrerpolicy: { type: "string" }, type: { type: "string" } }, required: ["src"], additionalProperties: !0 }, NE = { type: "object", properties: { page: { type: "string" }, directory: { type: "string" }, disconnect: { type: "boolean", default: !1 }, group: { type: "string" }, label: { type: "string" }, href: { type: "string" }, external: { type: "boolean" }, labelTranslationKey: { type: "string" }, groupTranslationKey: { type: "string" }, icon: { oneOf: [{ type: "string" }, { type: "object", properties: { srcSet: { type: "string" } }, required: ["srcSet"] }] }, separator: { type: "string" }, separatorLine: { type: "boolean" }, linePosition: { type: "string", enum: ["top", "bottom"], default: "top" }, version: { type: "string" }, menuStyle: { type: "string", enum: ["drilldown"] }, expanded: { type: "string", const: "always" }, selectFirstItemOnExpand: { type: "boolean" }, flatten: { type: "boolean" }, linkedSidebars: { type: "array", items: { type: "string" } }, items: { type: "array", items: { type: "object", additionalProperties: !0 } }, rbac: { type: "object", additionalProperties: { type: "string" } }, additionalProps: { type: "object", additionalProperties: !0 } } }, ZL = { type: "array", items: { ...NE, properties: { ...NE.properties, items: { type: "array", items: NE } } } }, GIe = { type: "object", properties: { name: { type: "string" }, icon: { type: "string" }, folder: { type: "string" } }, additionalProperties: !1, required: ["name", "folder"] }, YIe = { type: "object", properties: { hide: { type: "boolean", default: !1 }, suggestions: { default: [], type: "array", items: { type: "string" } }, prompt: { type: "string" } }, additionalProperties: !1 }, HIe = { type: "array", items: { type: "object", required: ["name", "field", "type"], properties: { name: { type: "string" }, field: { type: "string" }, type: { type: "string", enum: ["multi-select", "select", "tags"] } }, additionalProperties: !1 } }, JIe = { type: "object", properties: { facets: HIe, ...xo.properties }, additionalProperties: !1 }, KIe = { type: "object", properties: { page: { type: "string" }, label: { type: "string" }, labelTranslationKey: { type: "string" } }, required: ["page"] }, Wie = { type: "object", properties: { image: { type: "string" }, srcSet: { type: "string" }, altText: { type: "string" }, link: { type: "string" }, favicon: { type: "string" } }, additionalProperties: !1 }, Zie = { type: "object", properties: { items: ZL, ...xo.properties }, additionalProperties: !1 }, Xie = { type: "object", additionalProperties: GIe }, Gie = { type: "object", properties: { items: ZL, copyrightText: { type: "string" }, logo: xo, ...xo.properties }, additionalProperties: !1 }, Yie = { type: "object", properties: { separatorLine: { type: "boolean" }, linePosition: { type: "string", enum: ["top", "bottom"], default: "bottom" }, ...xo.properties }, additionalProperties: !1 }, Hie = { type: "object", properties: { head: { type: "array", items: k9 }, body: { type: "array", items: k9 } }, additionalProperties: !1 }, Jie = { type: "array", items: { type: "object", properties: { href: { type: "string" }, as: { type: "string" }, crossorigin: { type: "string" }, fetchpriority: { type: "string" }, hreflang: { type: "string" }, imagesizes: { type: "string" }, imagesrcset: { type: "string" }, integrity: { type: "string" }, media: { type: "string" }, prefetch: { type: "string" }, referrerpolicy: { type: "string" }, rel: { type: "string" }, sizes: { type: "string" }, title: { type: "string" }, type: { type: "string" } }, required: ["href"], additionalProperties: !0 } }, Kie = { type: "object", properties: { engine: { type: "string", enum: ["flexsearch", "typesense"], default: "flexsearch" }, ai: YIe, filters: JIe, placement: { type: "string", default: "navbar" }, shortcuts: { type: "array", items: { type: "string" }, default: ["⌘+K,ctrl+K"] }, suggestedPages: { type: "array", items: KIe }, ...xo.properties }, additionalProperties: !1 }, eoe = { type: "object", properties: { hide: { type: "boolean" }, suggestions: { default: [], type: "array", items: { type: "string" } }, prompt: { type: "string" }, trigger: { type: "object", properties: { hide: { type: "boolean", default: !1 }, inputType: { type: "string", enum: ["button", "icon"], default: "button" }, inputIcon: { type: "string", enum: ["chat", "sparkles", "redocly"], default: "sparkles" } }, additionalProperties: !1 } }, additionalProperties: !1 }, toe = { type: "object", properties: { ignoreDetection: { type: "boolean" }, modes: { type: "array", items: { type: "string" }, default: ["light", "dark"] }, ...xo.properties }, additionalProperties: !1 }, roe = { type: "string", enum: ["slate", "pink", "coral", "amber", "jade", "cyan", "ocean", "indigo", "iris"] }, eEe = { type: "object", properties: { ...xo.properties, items: { type: "array", items: { type: "string", enum: ["copy", "view", "chatgpt", "claude", "docs-mcp-cursor", "docs-mcp-vscode"] }, default: ["copy", "view", "chatgpt", "claude", "docs-mcp-cursor", "docs-mcp-vscode"] } }, additionalProperties: !1 }, noe = { type: "object", properties: { nextButton: { type: "object", properties: { text: { type: "string" }, ...xo.properties }, additionalProperties: !1, default: {} }, previousButton: { type: "object", properties: { text: { type: "string" }, ...xo.properties }, additionalProperties: !1, default: {} }, actions: eEe }, additionalProperties: !1 }, ioe = { type: "object", properties: { elementFormat: { type: "string", default: "icon" }, copy: { type: "object", properties: { ...xo.properties }, additionalProperties: !1, default: { hide: !1 } }, report: { type: "object", properties: { tooltipText: { type: "string" }, buttonText: { type: "string" }, label: { type: "string" }, ...xo.properties }, additionalProperties: !1, default: { hide: !1 } }, expand: { type: "object", properties: { ...xo.properties }, additionalProperties: !1, default: { hide: !1 } }, collapse: { type: "object", properties: { ...xo.properties }, additionalProperties: !1, default: { hide: !1 } } }, additionalProperties: !1 }, ooe = { type: "object", properties: { frontMatterKeysToResolve: { type: "array", items: { type: "string" }, default: ["image", "links"] }, partialsFolders: { type: "array", items: { type: "string" }, default: ["**/_partials/**"] }, lastUpdatedBlock: { type: "object", properties: { format: { type: "string", enum: ["timeago", "iso", "long", "short"], default: "timeago" }, locale: { type: "string" }, ...xo.properties }, additionalProperties: !1, default: {} }, toc: { type: "object", properties: { header: { type: "string", default: "On this page" }, depth: { type: "integer", default: 3, minimum: 1 }, ...xo.properties }, additionalProperties: !1, default: {} }, editPage: { type: "object", properties: { baseUrl: { type: "string" }, ...xo.properties }, additionalProperties: !1, default: {} }, template: { type: "object", additionalProperties: { type: "string" } } }, additionalProperties: !1, default: {} }, uP = { ...eD, properties: { ...eD.properties, ...FIe.properties } };
7630
7630
  ({ ...eD.properties });
7631
7631
  var tEe = { type: "object", properties: { includeInDevelopment: { type: "boolean" }, scriptUrl: { type: "string" }, pageViewEventName: { type: "string" } }, additionalProperties: !1, required: ["scriptUrl"] }, rEe = { type: "object", properties: { includeInDevelopment: { type: "boolean" }, apiKey: { type: "string" }, head: { type: "boolean" }, respectDNT: { type: "boolean" }, exclude: { type: "array", items: { type: "string" } }, outboundClickEventName: { type: "string" }, pageViewEventName: { type: "string" }, amplitudeConfig: { type: "object", additionalProperties: !0 } }, additionalProperties: !1, required: ["apiKey"] }, nEe = { type: "object", properties: { includeInDevelopment: { type: "boolean" }, orgId: { type: "string" } }, additionalProperties: !1, required: ["orgId"] }, iEe = { type: "object", properties: { includeInDevelopment: { type: "boolean" }, appId: { type: "string" } }, additionalProperties: !1, required: ["appId"] }, oEe = { type: "object", properties: { includeInDevelopment: { type: "boolean" }, writeKey: { type: "string", minLength: 10 }, trackPage: { type: "boolean" }, dataPlaneUrl: { type: "string" }, controlPlaneUrl: { type: "string" }, sdkUrl: { type: "string" }, loadOptions: { type: "object", additionalProperties: !0 } }, additionalProperties: !1, required: ["writeKey"] }, sEe = { type: "object", properties: { includeInDevelopment: { type: "boolean" }, writeKey: { type: "string", minLength: 10 }, trackPage: { type: "boolean" }, includeTitleInPageCall: { type: "boolean" }, host: { type: "string" } }, additionalProperties: !1, required: ["writeKey"] }, aEe = { type: "object", properties: { includeInDevelopment: { type: "boolean" }, trackingId: { type: "string" }, gtmAuth: { type: "string" }, gtmPreview: { type: "string" }, defaultDataLayer: {}, dataLayerName: { type: "string" }, enableWebVitalsTracking: { type: "boolean" }, selfHostedOrigin: { type: "string" }, pageViewEventName: { type: "string" } }, additionalProperties: !1, required: ["trackingId"] }, lEe = { type: "object", properties: { includeInDevelopment: { type: "boolean" }, trackingId: { type: "string" }, conversionId: { type: "string" }, floodlightId: { type: "string" }, optimizeId: { type: "string" }, exclude: { type: "array", items: { type: "string" } } }, additionalProperties: !1, required: ["trackingId"] }, cEe = { type: "object", properties: { includeInDevelopment: { type: "boolean" }, trackingId: { type: "string" }, conversionId: { type: "string" }, floodlightId: { type: "string" }, head: { type: "boolean" }, respectDNT: { type: "boolean" }, exclude: { type: "array", items: { type: "string" } }, optimizeId: { type: "string" }, anonymizeIp: { type: "boolean" }, cookieExpires: { type: "number" }, trackers: { type: "object", additionalProperties: lEe } }, additionalProperties: !1, required: ["trackingId"] }, soe = { type: "object", properties: { adobe: tEe, amplitude: rEe, fullstory: nEe, heap: iEe, rudderstack: oEe, segment: sEe, gtm: aEe, ga: cEe } }, aoe = { type: "object", properties: { items: { type: "array", items: { type: "object", properties: { label: { type: "string" }, external: { type: "boolean" }, link: { type: "string" }, separatorLine: { type: "boolean" } }, additionalProperties: !0 }, default: [] }, hideLoginButton: { type: "boolean" }, ...xo.properties }, additionalProperties: !1 }, loe = { type: "object", properties: { hide: { type: "boolean" }, showForUnversioned: { type: "boolean" } } }, coe = { type: "object", properties: { hide: { type: "boolean" }, prefixItems: { type: "array", items: { type: "object", properties: { label: { type: "string" }, labelTranslationKey: { type: "string" }, page: { type: "string" }, icon: { type: "string" } }, additionalProperties: !1, default: {} } } }, additionalProperties: !1 }, uEe = { type: "object", additionalProperties: !1, required: ["title", "property"], properties: { type: { type: "string", enum: ["select", "checkboxes", "date-range"], default: "checkboxes" }, title: { type: "string" }, titleTranslationKey: { type: "string" }, property: { type: "string" }, parentFilter: { type: "string" }, valuesMapping: { type: "object", additionalProperties: { type: "string" } }, missingCategoryName: { type: "string" }, missingCategoryNameTranslationKey: { type: "string" }, options: { type: "array", items: { type: "string" } } } }, dEe = { type: "object", additionalProperties: !0, required: ["slug", "items"], properties: { show: { type: "boolean" }, slug: { type: "string" }, filters: { type: "array", items: uEe }, groupByFirstFilter: { type: "boolean" }, filterValuesCasing: { type: "string", enum: ["sentence", "original", "lowercase", "uppercase"] }, items: ZL, requiredPermission: { type: "string" }, separateVersions: { type: "boolean" }, title: { type: "string" }, titleTranslationKey: { type: "string" }, description: { type: "string" }, descriptionTranslationKey: { type: "string" } } }, dP = { type: "object", patternProperties: { ".*": dEe } }, pP = { nodeTypeName: Es.ScorecardClassic, description: "Add and create sets of rules and test your API description files against them. With these rules you can maintain quality across your existing APIs and ensure that newly-added or updated APIs match your criteria. An API scorecard can include multiple sets of rules, corresponding to different quality levels.", documentationLink: "https://redocly.com/docs/realm/config/scorecard-classic", type: "object", additionalProperties: !0, required: [], properties: { ignoreNonCompliant: { type: "boolean", default: !1 }, teamMetadataProperty: { nodeTypeName: Es.ScorecardClassicTeamMetadataProperty, description: "Provide custom team label and team metadata property.", documentationLink: "https://redocly.com/docs/realm/config/scorecard-classic#team-metadata-object", type: "object", properties: { property: { type: "string" }, label: { type: "string" }, default: { type: "string" } } }, levels: { nodeTypeName: Es.ScorecardClassicLevelList, description: "List of levels to score against.", type: "array", items: { nodeTypeName: Es.ScorecardClassicLevel, documentationLink: "https://redocly.com/docs/realm/config/scorecard-classic#level-object", type: "object", required: ["name"], properties: { name: { type: "string" }, color: { type: "string" }, ...iT }, additionalProperties: !1 } }, targets: { nodeTypeName: Es.ScorecardClassicTargetList, description: "Provide custom `minimumLevel` for specific targets.", type: "array", items: { nodeTypeName: Es.ScorecardClassicTarget, type: "object", required: ["where"], properties: { minimumLevel: { type: "string" }, rules: { type: "object", additionalProperties: !0 }, where: { nodeTypeName: Es.ScorecardClassicTargetWhere, description: "Specify which API descriptions to apply the `minimumLevel` to based on the metadata.", documentationLink: "https://redocly.com/docs/realm/config/scorecard-classic#where-object", type: "object", required: ["metadata"], properties: { metadata: { nodeTypeName: Es.ScorecardClassicTargetWhereMetadata, type: "object", additionalProperties: { type: "string" } } }, additionalProperties: !1 } }, additionalProperties: !1 } }, ignore: { type: "array", items: { type: "string" } }, fromProjectUrl: { type: "string", format: "uri" } } }, pEe = { type: "object", required: ["key"], properties: { key: { type: "string" } }, additionalProperties: !1 }, fEe = { type: "object", required: ["type"], properties: { type: { type: "string" } }, additionalProperties: !1 }, hEe = { type: "object", required: ["property", "title"], properties: { property: { type: "string" }, hide: { type: "boolean" }, label: { type: "string" }, options: { type: "array", items: { type: "string" } }, type: { type: "string", enum: ["select", "checkboxes", "date-range"], default: "checkboxes" }, title: { type: "string" }, titleTranslationKey: { type: "string" }, parentFilter: { type: "string" }, valuesMapping: { type: "object", additionalProperties: { type: "string" } } }, additionalProperties: !1 }, Gu = { type: "object", properties: { slug: { type: "string" }, hide: { type: "boolean" }, includes: { type: "array", items: fEe }, excludes: { type: "array", items: pEe }, filters: { type: "array", items: hEe }, titleTranslationKey: { type: "string" }, descriptionTranslationKey: { type: "string" }, catalogSwitcherLabelTranslationKey: { type: "string" } }, additionalProperties: !1 }, mEe = { type: "object", properties: { type: { type: "string", enum: ["string", "number", "boolean", "array", "object"] }, description: { type: "string" }, example: { oneOf: [{ type: "string" }, { type: "number" }, { type: "boolean" }, { type: "array" }, { type: "object" }] }, enum: { type: "array", items: { type: "string" } }, pattern: { type: "string" }, format: { type: "string" }, minimum: { type: "number" }, maximum: { type: "number" }, items: { type: "object" } }, additionalProperties: !0 }, gEe = { type: "object", required: ["type", "properties"], properties: { type: { type: "string", enum: ["object"] }, description: { type: "string" }, properties: { type: "object", additionalProperties: mEe }, required: { type: "array", items: { type: "string" } }, additionalProperties: { type: "boolean" } }, additionalProperties: !0 }, yEe = { type: "object", required: ["name", "description", "metadataSchema"], properties: { name: { type: "string", description: "Display name of the entity type" }, description: { type: "string", description: "Description of the entity type" }, metadataSchema: gEe, icon: { type: "object", properties: { src: { type: "string" }, srcSet: { type: "string" } }, additionalProperties: !1 } }, additionalProperties: !1 }, vEe = { type: "object", additionalProperties: yEe }, uoe = { type: "object", properties: { show: { type: "boolean", default: !1 }, entityTypes: vEe, catalogs: { type: "object", properties: { all: Gu, services: Gu, domains: Gu, teams: Gu, users: Gu, apiDescriptions: Gu, dataSchemas: Gu, apiOperations: Gu }, additionalProperties: Gu } }, additionalProperties: !1 }, $9 = { type: "string", enum: ["eq", "in", "gt", "gte", "lt", "lte", "contains", "startsWith", "endsWith", "exists", "isEmpty", "between", "matches", "some", "every", "none"] }, XL = { type: "string", enum: ["and", "or"] }, tD = { type: "object", properties: { field: { type: "string" }, operator: $9, value: { oneOf: [{ type: "boolean" }, { type: "string" }, { type: "number" }] }, modifier: { type: "string", enum: ["not"] }, match: { type: "array", items: { type: "object", properties: { field: { type: "string" }, operator: $9, value: { oneOf: [{ type: "boolean" }, { type: "string" }, { type: "number" }] }, modifier: { type: "string", enum: ["not"] } } } } } }, OEe = { type: "object", properties: { operator: XL, conditions: { type: "array", items: tD } }, required: ["operator", "conditions"], additionalProperties: !1 }, T9 = { type: "array", items: { oneOf: [tD, { type: "object", properties: { operator: XL, conditions: { type: "array", items: { oneOf: [tD, OEe] } } }, required: ["operator", "conditions"], additionalProperties: !1 }] } }, doe = { type: "object", properties: { defined: { type: "boolean" }, nonEmpty: { type: "boolean" }, eq: {}, gt: { type: "number" }, gte: { type: "number" }, lt: { type: "number" }, lte: { type: "number" }, const: {} }, additionalProperties: !1 }, bEe = { type: "array", items: { type: "object", properties: { subject: { type: "object", properties: { type: { type: "string", enum: ["Entity", "EntityMetadata", "EntityRelations", "EntityRelation"] }, property: { type: "string" } }, required: ["type", "property"], additionalProperties: !1 }, assertions: doe }, required: ["subject", "assertions"], additionalProperties: !1 } }, wEe = { type: "object", properties: { title: { type: "string" }, subject: { type: "object", properties: { type: { type: "string", enum: ["Entity", "EntityMetadata", "EntityRelations", "EntityRelation"] }, property: { type: "string" } }, required: ["type", "property"], additionalProperties: !1 }, severity: { type: "string", enum: ["error", "warn", "off"] }, message: { type: "string" }, assertions: doe, where: bEe, weight: { type: "number", default: 1 } }, required: ["subject", "assertions"], additionalProperties: !1 }, xEe = { type: "object", additionalProperties: { oneOf: [{ type: "string" }, { type: "object", properties: { severity: { type: "string", enum: ["error", "warn", "off"] }, weight: { type: "number", default: 1 } }, additionalProperties: !0 }, wEe] } }, SEe = { type: "object", properties: { name: { type: "string" }, extends: iT.extends, rules: xEe }, required: ["name"], additionalProperties: !1 }, I9 = { type: "object", properties: { event: { type: "string", enum: ["runtime", "manual"] } }, required: ["event"], additionalProperties: !1 }, _Ee = { oneOf: [I9, { type: "array", items: I9 }] }, CEe = { type: "object", properties: { name: { type: "string" }, key: { type: "string" }, description: { type: "string" }, entities: { oneOf: [T9, { type: "object", properties: { operator: XL, conditions: T9 }, required: ["operator", "conditions"], additionalProperties: !1 }] }, levels: { type: "array", items: SEe, minItems: 1 }, trigger: _Ee }, required: ["name", "key", "entities", "levels"], additionalProperties: !1 }, poe = { type: "array", items: CEe }, Hc = { type: "object", properties: { imports: { type: "array", items: { type: "string" } }, logo: Wie, navbar: Zie, products: Xie, footer: Gie, sidebar: Yie, scripts: Hie, links: Jie, feedback: Ow, search: Kie, aiAssistant: eoe, colorMode: toe, palette: roe, navigation: noe, codeSnippet: ioe, markdown: ooe, openapi: uP, asyncapi: sIe, graphql: lP, analytics: soe, userMenu: aoe, versionPicker: loe, breadcrumbs: coe, catalog: dP, entitiesCatalog: uoe, catalogClassic: dP, scorecard: pP, scorecardClassic: pP, scorecards: poe }, additionalProperties: !0 }, PEe = "https://redocly.com/sso/teams", kEe = ((t) => (t.OIDC = "OIDC", t.SAML2 = "SAML2", t))(kEe || {}), $Ee = ((t) => (t.SERVICE_ACCOUNT = "SERVICE_ACCOUNT", t.OAUTH2 = "OAUTH2", t))($Ee || {}), TEe = ((t) => (t.STACKED = "stacked", t.THREE_PANEL = "three-panel", t))(TEe || {});
7632
7632
  function rD(t, e, r) {
@@ -15410,6 +15410,15 @@ ${o.message}`
15410
15410
  SecurityScheme(i, { key: o }) {
15411
15411
  e("securityDefinitions", o.toString());
15412
15412
  }
15413
+ },
15414
+ SecurityRequirement(i) {
15415
+ for (const o of Object.keys(i)) {
15416
+ const s = `securityDefinitions/${o}`, a = t.get(s);
15417
+ a ? a.usedIn.push("SecurityRequirement") : t.set(s, {
15418
+ usedIn: ["SecurityRequirement"],
15419
+ name: o
15420
+ });
15421
+ }
15413
15422
  }
15414
15423
  };
15415
15424
  }, aQe = {
@@ -15503,7 +15512,8 @@ const Use = () => {
15503
15512
  "Response",
15504
15513
  "Example",
15505
15514
  "RequestBody",
15506
- "MediaTypesMap"
15515
+ "MediaTypesMap",
15516
+ "SecurityScheme"
15507
15517
  ].includes(o.name)) {
15508
15518
  const a = EV(n.$ref);
15509
15519
  if (!a)
@@ -15557,6 +15567,20 @@ const Use = () => {
15557
15567
  MediaTypesMap(n, { key: i }) {
15558
15568
  e("mediaTypes", i.toString());
15559
15569
  }
15570
+ },
15571
+ NamedSecuritySchemes: {
15572
+ SecurityScheme(n, { key: i }) {
15573
+ e("securitySchemes", i.toString());
15574
+ }
15575
+ },
15576
+ SecurityRequirement(n) {
15577
+ for (const i of Object.keys(n)) {
15578
+ const o = `securitySchemes/${i}`, s = t.get(o);
15579
+ s ? s.usedIn.push("SecurityRequirement") : t.set(o, {
15580
+ usedIn: ["SecurityRequirement"],
15581
+ name: i
15582
+ });
15583
+ }
15560
15584
  }
15561
15585
  };
15562
15586
  }, uQe = {
@@ -15576,7 +15600,8 @@ const Use = () => {
15576
15600
  for (const n of t)
15577
15601
  ["openapi", "arazzo"].includes(n?.type) || e({
15578
15602
  message: "The `type` property of the `sourceDescription` object must be either `openapi` or `arazzo`.",
15579
- location: r.child([t.indexOf(n)])
15603
+ location: r.child([t.indexOf(n)]),
15604
+ reference: "https://redocly.com/docs/cli/rules/arazzo/sourcedescription-type"
15580
15605
  });
15581
15606
  }
15582
15607
  }
@@ -20379,25 +20404,29 @@ function eLe(t, e) {
20379
20404
  function Kse(t, e) {
20380
20405
  return `${t} object \`${e}\` must be non-empty string.`;
20381
20406
  }
20382
- function Mp(t, e, r) {
20407
+ function Mp({ fieldName: t, value: e, ctx: r, reference: n }) {
20383
20408
  $t(e) && (e[t] === void 0 ? r.report({
20384
20409
  message: dj(r.type.name, t),
20385
- location: r.location.child([t]).key()
20410
+ location: r.location.child([t]).key(),
20411
+ reference: n
20386
20412
  }) : e[t] || r.report({
20387
20413
  message: Kse(r.type.name, t),
20388
- location: r.location.child([t]).key()
20414
+ location: r.location.child([t]).key(),
20415
+ reference: n
20389
20416
  }));
20390
20417
  }
20391
- function tLe(t, e, r) {
20418
+ function tLe({ fieldNames: t, value: e, ctx: r, reference: n }) {
20392
20419
  if ($t(e)) {
20393
- t.some((n) => e.hasOwnProperty(n)) || r.report({
20420
+ t.some((i) => e.hasOwnProperty(i)) || r.report({
20394
20421
  message: eLe(r.type.name, t),
20395
- location: r.location.key()
20422
+ location: r.location.key(),
20423
+ reference: n
20396
20424
  });
20397
- for (const n of t)
20398
- e.hasOwnProperty(n) && !e[n] && r.report({
20399
- message: Kse(r.type.name, n),
20400
- location: r.location.child([n]).key()
20425
+ for (const i of t)
20426
+ e.hasOwnProperty(i) && !e[i] && r.report({
20427
+ message: Kse(r.type.name, i),
20428
+ location: r.location.child([i]).key(),
20429
+ reference: n
20401
20430
  });
20402
20431
  }
20403
20432
  }
@@ -20413,35 +20442,37 @@ function eae(t, e) {
20413
20442
  }
20414
20443
  return r.sort((n, i) => n.distance - i.distance), r.map((n) => n.variant);
20415
20444
  }
20416
- function Kb(t, e, r) {
20417
- const { location: n, ctx: i, allowAdditionalProperties: o, ajvContext: s } = r, { resolve: a, location: l, report: c, specVersion: u } = i;
20445
+ function Kb({ example: t, schema: e, options: r, reference: n }) {
20446
+ const { location: i, ctx: o, allowAdditionalProperties: s, ajvContext: a } = r, { resolve: l, location: c, report: u, specVersion: d } = o;
20418
20447
  try {
20419
- const { valid: d, errors: p } = K5e(t, e, {
20420
- schemaLoc: l.child("schema"),
20421
- instancePath: n.pointer,
20422
- resolve: a,
20423
- allowAdditionalProperties: o,
20424
- ajvContext: s,
20425
- specVersion: u
20448
+ const { valid: p, errors: f } = K5e(t, e, {
20449
+ schemaLoc: c.child("schema"),
20450
+ instancePath: i.pointer,
20451
+ resolve: l,
20452
+ allowAdditionalProperties: s,
20453
+ ajvContext: a,
20454
+ specVersion: d
20426
20455
  });
20427
- if (!d)
20428
- for (const f of p)
20429
- c({
20430
- message: `Example value must conform to the schema: ${f.message}.`,
20456
+ if (!p)
20457
+ for (const m of f)
20458
+ u({
20459
+ message: `Example value must conform to the schema: ${m.message}.`,
20431
20460
  location: {
20432
- ...new W_(n.source, f.instancePath),
20433
- reportOnKey: f.keyword === "unevaluatedProperties" || f.keyword === "additionalProperties"
20461
+ ...new W_(i.source, m.instancePath),
20462
+ reportOnKey: m.keyword === "unevaluatedProperties" || m.keyword === "additionalProperties"
20434
20463
  },
20435
- from: l,
20436
- suggest: f.suggest
20464
+ from: c,
20465
+ suggest: m.suggest,
20466
+ reference: n
20437
20467
  });
20438
- } catch (d) {
20439
- if (d.message === "discriminator: requires oneOf or anyOf composite keyword")
20468
+ } catch (p) {
20469
+ if (p.message === "discriminator: requires oneOf or anyOf composite keyword")
20440
20470
  return;
20441
- c({
20442
- message: `Example validation errored: ${d.message}.`,
20443
- location: l.child("schema"),
20444
- from: l
20471
+ u({
20472
+ message: `Example validation errored: ${p.message}.`,
20473
+ location: c.child("schema"),
20474
+ from: c,
20475
+ reference: n
20445
20476
  });
20446
20477
  }
20447
20478
  }
@@ -20453,12 +20484,13 @@ function KF(t, e, r, n, { report: i, location: o }) {
20453
20484
  suggest: eae(e, t)
20454
20485
  }));
20455
20486
  }
20456
- function PP(t, e, { report: r }) {
20457
- const n = new RegExp(`^${e[0]}[0-9Xx]{2}$`);
20458
- t.some((o) => e === "2XX" && o === "default" || // It's OK to replace 2xx codes with the default
20459
- n.test(o)) || r({
20487
+ function PP({ responseCodes: t, codeRange: e, report: r, reference: n }) {
20488
+ const i = new RegExp(`^${e[0]}[0-9Xx]{2}$`);
20489
+ t.some((s) => e === "2XX" && s === "default" || // It's OK to replace 2xx codes with the default
20490
+ i.test(s)) || r({
20460
20491
  message: `Operation must have at least one \`${e}\` response.`,
20461
- location: { reportOnKey: !0 }
20492
+ location: { reportOnKey: !0 },
20493
+ reference: n
20462
20494
  });
20463
20495
  }
20464
20496
  function pD(t, e) {
@@ -20472,7 +20504,8 @@ const _w = () => ({
20472
20504
  for (const i of n)
20473
20505
  e({
20474
20506
  message: `All values of \`enum\` field must be of the same type as the \`type\` field: expected "${t.type}" but received "${Z_(i)}".`,
20475
- location: r.child(["enum", t.enum.indexOf(i)])
20507
+ location: r.child(["enum", t.enum.indexOf(i)]),
20508
+ reference: "https://redocly.com/docs/cli/rules/common/no-enum-type-mismatch"
20476
20509
  });
20477
20510
  }
20478
20511
  if (t.enum && t.type && Array.isArray(t.type)) {
@@ -20486,7 +20519,8 @@ const _w = () => ({
20486
20519
  for (const i of Object.keys(n))
20487
20520
  e({
20488
20521
  message: `Enum value \`${i}\` must be of allowed types: \`${t.type}\`.`,
20489
- location: r.child(["enum", t.enum.indexOf(i)])
20522
+ location: r.child(["enum", t.enum.indexOf(i)]),
20523
+ reference: "https://redocly.com/docs/cli/rules/common/no-enum-type-mismatch"
20490
20524
  });
20491
20525
  }
20492
20526
  }
@@ -20495,10 +20529,12 @@ const _w = () => ({
20495
20529
  Schema(t, { report: e, location: r }) {
20496
20530
  typeof t.maximum == "number" && typeof t.exclusiveMaximum == "number" && e({
20497
20531
  message: "Schema should not have both `maximum` and `exclusiveMaximum`. Use one or the other.",
20498
- location: r.child(["exclusiveMaximum"]).key()
20532
+ location: r.child(["exclusiveMaximum"]).key(),
20533
+ reference: "https://redocly.com/docs/cli/rules/common/no-mixed-number-range-constraints"
20499
20534
  }), typeof t.minimum == "number" && typeof t.exclusiveMinimum == "number" && e({
20500
20535
  message: "Schema should not have both `minimum` and `exclusiveMinimum`. Use one or the other.",
20501
- location: r.child(["exclusiveMinimum"]).key()
20536
+ location: r.child(["exclusiveMinimum"]).key(),
20537
+ reference: "https://redocly.com/docs/cli/rules/common/no-mixed-number-range-constraints"
20502
20538
  });
20503
20539
  }
20504
20540
  });
@@ -20530,7 +20566,8 @@ const Cw = () => {
20530
20566
  for (const [a, l] of e.required.entries())
20531
20567
  !n(e, l, /* @__PURE__ */ new Set()) && !n(s, l, /* @__PURE__ */ new Set()) && r.report({
20532
20568
  message: `Required property '${l}' is not defined.`,
20533
- location: r.location.child(["required", a])
20569
+ location: r.location.child(["required", a]),
20570
+ reference: "https://redocly.com/docs/cli/rules/common/no-required-schema-properties-undefined"
20534
20571
  });
20535
20572
  }
20536
20573
  }
@@ -20539,10 +20576,12 @@ const Cw = () => {
20539
20576
  Schema(t, { report: e, location: r }) {
20540
20577
  t.type === "object" && t.items && e({
20541
20578
  message: "Schema type mismatch: 'object' type should not contain 'items' field.",
20542
- location: r.child("items")
20579
+ location: r.child("items"),
20580
+ reference: "https://redocly.com/docs/cli/rules/common/no-schema-type-mismatch"
20543
20581
  }), t.type === "array" && t.properties && e({
20544
20582
  message: "Schema type mismatch: 'array' type should not contain 'properties' field.",
20545
- location: r.child("properties")
20583
+ location: r.child("properties"),
20584
+ reference: "https://redocly.com/docs/cli/rules/common/no-schema-type-mismatch"
20546
20585
  });
20547
20586
  }
20548
20587
  }), rLe = /\((\d+):(\d+)\)$/;
@@ -20589,7 +20628,8 @@ function Rg(t, e, r) {
20589
20628
  const i = t.error?.message;
20590
20629
  e({
20591
20630
  location: r,
20592
- message: `Can't resolve $ref${i ? ": " + i : ""}`
20631
+ message: `Can't resolve $ref${i ? ": " + i : ""}`,
20632
+ reference: "https://redocly.com/docs/cli/rules/oas/no-unresolved-refs"
20593
20633
  });
20594
20634
  }
20595
20635
  const lm = () => ({
@@ -20693,7 +20733,8 @@ const lm = () => ({
20693
20733
  enter(t, { report: e, location: r }) {
20694
20734
  t.type && (t.type === "xpath" || $t(t.type) && t.type.type === "xpath") && e({
20695
20735
  message: "The `xpath` type criteria is not supported by Respect.",
20696
- location: r.child(["type"])
20736
+ location: r.child(["type"]),
20737
+ reference: "https://redocly.com/docs/cli/rules/respect/no-criteria-xpath"
20697
20738
  });
20698
20739
  }
20699
20740
  }
@@ -20704,7 +20745,8 @@ const lm = () => ({
20704
20745
  const o = kh(i, "scheme"), s = kh(i, "schemeName");
20705
20746
  o && s && r({
20706
20747
  message: "`x-security` item must not contain both `scheme` and `schemeName`.",
20707
- location: n.child(["x-security", e.indexOf(i)])
20748
+ location: n.child(["x-security", e.indexOf(i)]),
20749
+ reference: "https://redocly.com/docs/cli/rules/respect/no-x-security-both-scheme-and-scheme-name"
20708
20750
  });
20709
20751
  }
20710
20752
  }
@@ -20730,7 +20772,8 @@ const lm = () => ({
20730
20772
  for (const o of i)
20731
20773
  "schemeName" in o && e({
20732
20774
  message: "The `schemeName` can be only used in Step with OpenAPI operation, please use `scheme` instead.",
20733
- location: r.child(["x-security", i.indexOf(o)])
20775
+ location: r.child(["x-security", i.indexOf(o)]),
20776
+ reference: "https://redocly.com/docs/cli/rules/respect/no-x-security-scheme-name-without-openapi"
20734
20777
  });
20735
20778
  }
20736
20779
  }
@@ -20741,7 +20784,8 @@ const lm = () => ({
20741
20784
  enter(e, { report: r, location: n }) {
20742
20785
  WE.includes(e.arazzo) || r({
20743
20786
  message: `Only ${t} Arazzo ${bPe("version is", WE.length)} fully supported by Respect.`,
20744
- location: n.child("arazzo")
20787
+ location: n.child("arazzo"),
20788
+ reference: "https://redocly.com/docs/cli/rules/respect/respect-supported-versions"
20745
20789
  });
20746
20790
  }
20747
20791
  }
@@ -20767,7 +20811,8 @@ const lm = () => ({
20767
20811
  "x-security",
20768
20812
  i.indexOf(o),
20769
20813
  "schemeName"
20770
- ])
20814
+ ]),
20815
+ reference: "https://redocly.com/docs/cli/rules/respect/x-security-scheme-name-reference"
20771
20816
  });
20772
20817
  }
20773
20818
  }
@@ -20798,12 +20843,14 @@ function eB(t, { report: e, location: r }) {
20798
20843
  for (const l of a)
20799
20844
  (!o || !(l in o)) && e({
20800
20845
  message: `The \`${l}\` is required when using the ${s} authentication security schema.`,
20801
- location: r.child(["x-security", t.indexOf(n)])
20846
+ location: r.child(["x-security", t.indexOf(n)]),
20847
+ reference: "https://redocly.com/docs/cli/rules/respect/x-security-scheme-required-values"
20802
20848
  });
20803
20849
  else
20804
20850
  e({
20805
20851
  message: `The \`${s}\` authentication security schema is not supported.`,
20806
- location: r.child(["x-security", t.indexOf(n)])
20852
+ location: r.child(["x-security", t.indexOf(n)]),
20853
+ reference: "https://redocly.com/docs/cli/rules/respect/x-security-scheme-required-values"
20807
20854
  });
20808
20855
  }
20809
20856
  }
@@ -20829,7 +20876,8 @@ const cLe = () => ({
20829
20876
  const s = JSON.stringify(o);
20830
20877
  i.has(s) ? e({
20831
20878
  message: "The FailureAction criteria items must be unique.",
20832
- location: r.child(["criteria", n.indexOf(o)])
20879
+ location: r.child(["criteria", n.indexOf(o)]),
20880
+ reference: "https://redocly.com/docs/cli/rules/arazzo/criteria-unique"
20833
20881
  }) : i.add(s);
20834
20882
  }
20835
20883
  }
@@ -20844,7 +20892,8 @@ const cLe = () => ({
20844
20892
  const s = JSON.stringify(o);
20845
20893
  i.has(s) ? e({
20846
20894
  message: "The SuccessAction criteria items must be unique.",
20847
- location: r.child(["criteria", n.indexOf(o)])
20895
+ location: r.child(["criteria", n.indexOf(o)]),
20896
+ reference: "https://redocly.com/docs/cli/rules/arazzo/criteria-unique"
20848
20897
  }) : i.add(s);
20849
20898
  }
20850
20899
  }
@@ -20859,7 +20908,8 @@ const cLe = () => ({
20859
20908
  const s = JSON.stringify(o);
20860
20909
  i.has(s) ? e({
20861
20910
  message: "The Step SuccessCriteria items must be unique.",
20862
- location: r.child(["successCriteria", n.indexOf(o)])
20911
+ location: r.child(["successCriteria", n.indexOf(o)]),
20912
+ reference: "https://redocly.com/docs/cli/rules/arazzo/criteria-unique"
20863
20913
  }) : i.add(s);
20864
20914
  }
20865
20915
  }
@@ -21006,7 +21056,8 @@ const cLe = () => ({
21006
21056
  "replacements",
21007
21057
  e.replacements.indexOf(i),
21008
21058
  "target"
21009
- ])
21059
+ ]),
21060
+ reference: "https://redocly.com/docs/cli/rules/arazzo/requestbody-replacements-unique"
21010
21061
  }), t.add(i.target);
21011
21062
  }
21012
21063
  }
@@ -21021,7 +21072,8 @@ const cLe = () => ({
21021
21072
  for (const i of e)
21022
21073
  t.has(i.name) && r({
21023
21074
  message: "The `name` must be unique amongst all SourceDescriptions.",
21024
- location: n.child([e.indexOf(i)])
21075
+ location: n.child([e.indexOf(i)]),
21076
+ reference: "https://redocly.com/docs/cli/rules/arazzo/sourcedescription-name-unique"
21025
21077
  }), t.add(i.name);
21026
21078
  }
21027
21079
  }
@@ -21044,10 +21096,12 @@ const cLe = () => ({
21044
21096
  for (const i of t)
21045
21097
  n.has(i?.name) && e({
21046
21098
  message: "The action `name` must be unique amongst listed `onFailure` actions.",
21047
- location: r.child([t.indexOf(i)])
21099
+ location: r.child([t.indexOf(i)]),
21100
+ reference: "https://redocly.com/docs/cli/rules/arazzo/step-onfailure-unique"
21048
21101
  }), n.has(i?.reference) && e({
21049
21102
  message: "The action `reference` must be unique amongst listed `onFailure` actions.",
21050
- location: r.child([t.indexOf(i)])
21103
+ location: r.child([t.indexOf(i)]),
21104
+ reference: "https://redocly.com/docs/cli/rules/arazzo/step-onfailure-unique"
21051
21105
  }), n.add(i.name ?? i.reference);
21052
21106
  }
21053
21107
  }
@@ -21060,10 +21114,12 @@ const cLe = () => ({
21060
21114
  for (const i of t)
21061
21115
  n.has(i?.name) && e({
21062
21116
  message: "The action `name` must be unique amongst listed `onSuccess` actions.",
21063
- location: r.child([t.indexOf(i)])
21117
+ location: r.child([t.indexOf(i)]),
21118
+ reference: "https://redocly.com/docs/cli/rules/arazzo/step-onsuccess-unique"
21064
21119
  }), n.has(i?.reference) && e({
21065
21120
  message: "The action `reference` must be unique amongst listed `onSuccess` actions.",
21066
- location: r.child([t.indexOf(i)])
21121
+ location: r.child([t.indexOf(i)]),
21122
+ reference: "https://redocly.com/docs/cli/rules/arazzo/step-onsuccess-unique"
21067
21123
  }), n.add(i?.name ?? i?.reference);
21068
21124
  }
21069
21125
  }
@@ -21078,7 +21134,8 @@ const cLe = () => ({
21078
21134
  return;
21079
21135
  n.has(i.stepId) && e({
21080
21136
  message: "The `stepId` must be unique amongst all steps described in the workflow.",
21081
- location: r.child(["steps", t.steps.indexOf(i)])
21137
+ location: r.child(["steps", t.steps.indexOf(i)]),
21138
+ reference: "https://redocly.com/docs/cli/rules/arazzo/stepid-unique"
21082
21139
  }), n.add(i.stepId);
21083
21140
  }
21084
21141
  }
@@ -21106,15 +21163,18 @@ const cLe = () => ({
21106
21163
  const a = s.split(".")[1];
21107
21164
  e.has(a) || i({
21108
21165
  message: `SourceDescription ${a} must be defined in sourceDescriptions.`,
21109
- location: o.child(["dependsOn", n.dependsOn.indexOf(s)])
21166
+ location: o.child(["dependsOn", n.dependsOn.indexOf(s)]),
21167
+ reference: "https://redocly.com/docs/cli/rules/arazzo/workflow-dependson"
21110
21168
  });
21111
21169
  }
21112
21170
  !s.startsWith("$sourceDescriptions") && !r.has(s) && i({
21113
21171
  message: `Workflow ${s} must be defined in workflows.`,
21114
- location: o.child(["dependsOn", n.dependsOn.indexOf(s)])
21172
+ location: o.child(["dependsOn", n.dependsOn.indexOf(s)]),
21173
+ reference: "https://redocly.com/docs/cli/rules/arazzo/workflow-dependson"
21115
21174
  }), t.has(s) && i({
21116
21175
  message: "Every workflow in dependsOn must be unique.",
21117
- location: o.child(["dependsOn"])
21176
+ location: o.child(["dependsOn"]),
21177
+ reference: "https://redocly.com/docs/cli/rules/arazzo/workflow-dependson"
21118
21178
  }), t.add(s);
21119
21179
  }
21120
21180
  }
@@ -21127,7 +21187,8 @@ const cLe = () => ({
21127
21187
  enter(e, { report: r, location: n }) {
21128
21188
  e.workflowId && (t.has(e.workflowId) && r({
21129
21189
  message: "Every workflow must have a unique `workflowId`.",
21130
- location: n.child([e.workflowId])
21190
+ location: n.child([e.workflowId]),
21191
+ reference: "https://redocly.com/docs/cli/rules/arazzo/workflowid-unique"
21131
21192
  }), t.add(e.workflowId));
21132
21193
  }
21133
21194
  }
@@ -21162,7 +21223,8 @@ const cLe = () => ({
21162
21223
  Info(t, { report: e, location: r }) {
21163
21224
  t.contact || e({
21164
21225
  message: dj("Info", "contact"),
21165
- location: r.child("contact").key()
21226
+ location: r.child("contact").key(),
21227
+ reference: "https://redocly.com/docs/cli/rules/oas/info-contact"
21166
21228
  });
21167
21229
  }
21168
21230
  }), vT = () => {
@@ -21174,7 +21236,17 @@ const cLe = () => ({
21174
21236
  },
21175
21237
  License: {
21176
21238
  leave(e, r) {
21177
- t === "oas3_1" || t === "oas3_2" ? tLe(["url", "identifier"], e, r) : Mp("url", e, r);
21239
+ t === "oas3_1" || t === "oas3_2" ? tLe({
21240
+ fieldNames: ["url", "identifier"],
21241
+ value: e,
21242
+ ctx: r,
21243
+ reference: "https://redocly.com/docs/cli/rules/oas/info-license-strict"
21244
+ }) : Mp({
21245
+ fieldName: "url",
21246
+ value: e,
21247
+ ctx: r,
21248
+ reference: "https://redocly.com/docs/cli/rules/oas/info-license-strict"
21249
+ });
21178
21250
  }
21179
21251
  }
21180
21252
  }
@@ -21196,13 +21268,23 @@ const cLe = () => ({
21196
21268
  Root: {
21197
21269
  PathItem: {
21198
21270
  Operation(t, e) {
21199
- Mp("operationId", t, e);
21271
+ Mp({
21272
+ fieldName: "operationId",
21273
+ value: t,
21274
+ ctx: e,
21275
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-operationId"
21276
+ });
21200
21277
  }
21201
21278
  }
21202
21279
  }
21203
21280
  }), wT = () => ({
21204
21281
  Tag(t, e) {
21205
- Mp("description", t, e);
21282
+ Mp({
21283
+ fieldName: "description",
21284
+ value: t,
21285
+ ctx: e,
21286
+ reference: "https://redocly.com/docs/cli/rules/oas/tag-description"
21287
+ });
21206
21288
  }
21207
21289
  }), xT = ({ ignoreCase: t = !1 }) => ({
21208
21290
  Root(e, { report: r, location: n }) {
@@ -21210,21 +21292,24 @@ const cLe = () => ({
21210
21292
  for (let i = 0; i < e.tags.length - 1; i++)
21211
21293
  pD(e.tags[i], t) > pD(e.tags[i + 1], t) && r({
21212
21294
  message: "The `tags` array should be in alphabetical order.",
21213
- location: n.child(["tags", i])
21295
+ location: n.child(["tags", i]),
21296
+ reference: "https://redocly.com/docs/cli/rules/oas/tags-alphabetical"
21214
21297
  });
21215
21298
  }
21216
21299
  }), SLe = () => ({
21217
21300
  Channel(t, { report: e, key: r }) {
21218
21301
  r.split(/[/.:]/).filter((i) => i !== "").every((i) => /^{.+}$/.test(i) || /^[a-z0-9-.]+$/.test(i)) || e({
21219
21302
  message: `\`${r}\` does not use kebab-case.`,
21220
- location: { reportOnKey: !0 }
21303
+ location: { reportOnKey: !0 },
21304
+ reference: "https://redocly.com/docs/cli/rules/async/channels-kebab-case"
21221
21305
  });
21222
21306
  }
21223
21307
  }), _Le = () => ({
21224
21308
  Channel(t, { report: e, key: r, location: n }) {
21225
21309
  r.endsWith("/") && r !== "/" && e({
21226
21310
  message: `\`${r}\` should not have a trailing slash.`,
21227
- location: n.key()
21311
+ location: n.key(),
21312
+ reference: "https://redocly.com/docs/cli/rules/async/no-channel-trailing-slash"
21228
21313
  });
21229
21314
  }
21230
21315
  }), CLe = {
@@ -21247,14 +21332,16 @@ const cLe = () => ({
21247
21332
  Channel(t, { report: e }) {
21248
21333
  (t.address || "").split(/[/.:]/).filter((n) => n !== "").every((n) => /^{.+}$/.test(n) || /^[a-z0-9-.]+$/.test(n)) || e({
21249
21334
  message: `\`${t.address}\` does not use kebab-case.`,
21250
- location: { reportOnKey: !0 }
21335
+ location: { reportOnKey: !0 },
21336
+ reference: "https://redocly.com/docs/cli/rules/async/channels-kebab-case"
21251
21337
  });
21252
21338
  }
21253
21339
  }), $Le = () => ({
21254
21340
  Channel(t, { report: e, location: r }) {
21255
21341
  t?.address?.endsWith("/") && t?.address !== "/" && e({
21256
21342
  message: `\`${t.address}\` should not have a trailing slash.`,
21257
- location: r.key()
21343
+ location: r.key(),
21344
+ reference: "https://redocly.com/docs/cli/rules/async/no-channel-trailing-slash"
21258
21345
  });
21259
21346
  }
21260
21347
  }), TLe = {
@@ -21277,7 +21364,8 @@ const cLe = () => ({
21277
21364
  Info(t, { report: e }) {
21278
21365
  t.license || e({
21279
21366
  message: dj("Info", "license"),
21280
- location: { reportOnKey: !0 }
21367
+ location: { reportOnKey: !0 },
21368
+ reference: "https://redocly.com/docs/cli/rules/oas/info-license"
21281
21369
  });
21282
21370
  }
21283
21371
  }), tae = () => ({
@@ -21287,7 +21375,8 @@ const cLe = () => ({
21287
21375
  const o = n.find((s) => ELe(s, i));
21288
21376
  o && e({
21289
21377
  message: `Paths should resolve unambiguously. Found two ambiguous paths: \`${o}\` and \`${i}\`.`,
21290
- location: r.child([i]).key()
21378
+ location: r.child([i]).key(),
21379
+ reference: "https://redocly.com/docs/cli/rules/oas/no-ambiguous-paths"
21291
21380
  }), n.push(i);
21292
21381
  }
21293
21382
  }
@@ -21326,7 +21415,8 @@ const RLe = ["get", "head", "post", "put", "patch", "delete", "options", "trace"
21326
21415
  for (const u of RLe)
21327
21416
  c(u) && i({
21328
21417
  message: `path \`${s}\` should not contain http verb ${u}`,
21329
- location: o.key()
21418
+ location: o.key(),
21419
+ reference: "https://redocly.com/docs/cli/rules/oas/no-http-verbs-in-paths"
21330
21420
  });
21331
21421
  }
21332
21422
  }
@@ -21337,25 +21427,36 @@ const RLe = ["get", "head", "post", "put", "patch", "delete", "options", "trace"
21337
21427
  const o = i.replace(/{.+?}/g, "{VARIABLE}"), s = n.get(o);
21338
21428
  s ? e({
21339
21429
  message: `The path already exists which differs only by path parameter name(s): \`${s}\` and \`${i}\`.`,
21340
- location: r.child([i]).key()
21430
+ location: r.child([i]).key(),
21431
+ reference: "https://redocly.com/docs/cli/rules/oas/no-identical-paths"
21341
21432
  }) : n.set(o, i);
21342
21433
  }
21343
21434
  }
21344
21435
  }), oae = (t) => ({
21345
21436
  Parameter: {
21346
21437
  leave(e, r) {
21347
- if (Ph(e.example) && Kb(e.example, e.schema, {
21348
- location: r.location.child("example"),
21349
- ctx: r,
21350
- allowAdditionalProperties: !!t.allowAdditionalProperties,
21351
- ajvContext: { apiContext: "request" }
21438
+ if (Ph(e.example) && Kb({
21439
+ example: e.example,
21440
+ schema: e.schema,
21441
+ options: {
21442
+ location: r.location.child("example"),
21443
+ ctx: r,
21444
+ allowAdditionalProperties: !!t.allowAdditionalProperties,
21445
+ ajvContext: { apiContext: "request" }
21446
+ },
21447
+ reference: "https://redocly.com/docs/cli/rules/oas/no-invalid-parameter-examples"
21352
21448
  }), $t(e.examples))
21353
21449
  for (const [n, i] of Object.entries(e.examples))
21354
- $t(i) && "value" in i && Kb(i.value, e.schema, {
21355
- location: r.location.child(["examples", n]),
21356
- ctx: r,
21357
- allowAdditionalProperties: !!t.allowAdditionalProperties,
21358
- ajvContext: { apiContext: "request" }
21450
+ $t(i) && "value" in i && Kb({
21451
+ example: i.value,
21452
+ schema: e.schema,
21453
+ options: {
21454
+ location: r.location.child(["examples", n]),
21455
+ ctx: r,
21456
+ allowAdditionalProperties: !!t.allowAdditionalProperties,
21457
+ ajvContext: { apiContext: "request" }
21458
+ },
21459
+ reference: "https://redocly.com/docs/cli/rules/oas/no-invalid-parameter-examples"
21359
21460
  });
21360
21461
  }
21361
21462
  }
@@ -21365,18 +21466,28 @@ const RLe = ["get", "head", "post", "put", "patch", "delete", "options", "trace"
21365
21466
  const n = e.examples;
21366
21467
  if (Array.isArray(n))
21367
21468
  for (const i of n)
21368
- Kb(i, e, {
21369
- location: r.location.child(["examples", n.indexOf(i)]),
21370
- ctx: r,
21371
- allowAdditionalProperties: !!t.allowAdditionalProperties
21469
+ Kb({
21470
+ example: i,
21471
+ schema: e,
21472
+ options: {
21473
+ location: r.location.child(["examples", n.indexOf(i)]),
21474
+ ctx: r,
21475
+ allowAdditionalProperties: !!t.allowAdditionalProperties
21476
+ },
21477
+ reference: "https://redocly.com/docs/cli/rules/oas/no-invalid-schema-examples"
21372
21478
  });
21373
21479
  if (Ph(e.example)) {
21374
21480
  if (e.nullable === !0 && e.example === null && e.type !== void 0)
21375
21481
  return;
21376
- Kb(e.example, e, {
21377
- location: r.location.child("example"),
21378
- ctx: r,
21379
- allowAdditionalProperties: !!t.allowAdditionalProperties
21482
+ Kb({
21483
+ example: e.example,
21484
+ schema: e,
21485
+ options: {
21486
+ location: r.location.child("example"),
21487
+ ctx: r,
21488
+ allowAdditionalProperties: !!t.allowAdditionalProperties
21489
+ },
21490
+ reference: "https://redocly.com/docs/cli/rules/oas/no-invalid-schema-examples"
21380
21491
  });
21381
21492
  }
21382
21493
  }
@@ -21385,14 +21496,20 @@ const RLe = ["get", "head", "post", "put", "patch", "delete", "options", "trace"
21385
21496
  PathItem(t, { report: e, key: r, rawLocation: n }) {
21386
21497
  r.endsWith("/") && r !== "/" && e({
21387
21498
  message: `\`${r}\` should not have a trailing slash.`,
21388
- location: n.key()
21499
+ location: n.key(),
21500
+ reference: "https://redocly.com/docs/cli/rules/oas/no-path-trailing-slash"
21389
21501
  });
21390
21502
  }
21391
21503
  }), lae = ({ validateWebhooks: t }) => ({
21392
21504
  Paths: {
21393
21505
  Responses(e, { report: r }) {
21394
21506
  const n = Object.keys(e || {});
21395
- PP(n, "2XX", { report: r });
21507
+ PP({
21508
+ responseCodes: n,
21509
+ codeRange: "2XX",
21510
+ report: r,
21511
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-2xx-response"
21512
+ });
21396
21513
  }
21397
21514
  },
21398
21515
  WebhooksMap: {
@@ -21400,14 +21517,24 @@ const RLe = ["get", "head", "post", "put", "patch", "delete", "options", "trace"
21400
21517
  if (!t)
21401
21518
  return;
21402
21519
  const n = Object.keys(e || {});
21403
- PP(n, "2XX", { report: r });
21520
+ PP({
21521
+ responseCodes: n,
21522
+ codeRange: "2XX",
21523
+ report: r,
21524
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-2xx-response"
21525
+ });
21404
21526
  }
21405
21527
  }
21406
21528
  }), cae = ({ validateWebhooks: t }) => ({
21407
21529
  Paths: {
21408
21530
  Responses(e, { report: r }) {
21409
21531
  const n = Object.keys(e || {});
21410
- PP(n, "4XX", { report: r });
21532
+ PP({
21533
+ responseCodes: n,
21534
+ codeRange: "4XX",
21535
+ report: r,
21536
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-4xx-response"
21537
+ });
21411
21538
  }
21412
21539
  },
21413
21540
  WebhooksMap: {
@@ -21415,12 +21542,22 @@ const RLe = ["get", "head", "post", "put", "patch", "delete", "options", "trace"
21415
21542
  if (!t)
21416
21543
  return;
21417
21544
  const n = Object.keys(e || {});
21418
- PP(n, "4XX", { report: r });
21545
+ PP({
21546
+ responseCodes: n,
21547
+ codeRange: "4XX",
21548
+ report: r,
21549
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-4xx-response"
21550
+ });
21419
21551
  }
21420
21552
  }
21421
21553
  }), uae = () => ({
21422
21554
  Operation(t, e) {
21423
- Mp("description", t, e);
21555
+ Mp({
21556
+ fieldName: "description",
21557
+ value: t,
21558
+ ctx: e,
21559
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-description"
21560
+ });
21424
21561
  }
21425
21562
  }), dae = () => {
21426
21563
  const t = /* @__PURE__ */ new Set();
@@ -21428,7 +21565,8 @@ const RLe = ["get", "head", "post", "put", "patch", "delete", "options", "trace"
21428
21565
  Operation(e, { report: r, location: n }) {
21429
21566
  e.operationId && (t.has(e.operationId) && r({
21430
21567
  message: "Every operation must have a unique `operationId`.",
21431
- location: n.child([e.operationId])
21568
+ location: n.child([e.operationId]),
21569
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-operationId-unique"
21432
21570
  }), t.add(e.operationId));
21433
21571
  }
21434
21572
  };
@@ -21436,7 +21574,8 @@ const RLe = ["get", "head", "post", "put", "patch", "delete", "options", "trace"
21436
21574
  Operation(t, { report: e, location: r }) {
21437
21575
  t.operationId && !NLe.test(t.operationId) && e({
21438
21576
  message: "Operation `operationId` should not have URL invalid characters.",
21439
- location: r.child(["operationId"])
21577
+ location: r.child(["operationId"]),
21578
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-operationId-url-safe"
21440
21579
  });
21441
21580
  }
21442
21581
  }), fae = () => {
@@ -21451,7 +21590,8 @@ const RLe = ["get", "head", "post", "put", "patch", "delete", "options", "trace"
21451
21590
  t.has(s) && n({
21452
21591
  message: `Paths must have unique \`name\` + \`in\` parameters.
21453
21592
  Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21454
- location: o.PathItem.child(["parameters", i])
21593
+ location: o.PathItem.child(["parameters", i]),
21594
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-parameters-unique"
21455
21595
  }), t.add(`${r.in}___${r.name}`);
21456
21596
  },
21457
21597
  Operation: {
@@ -21462,7 +21602,8 @@ Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21462
21602
  const s = `${r.in}___${r.name}`;
21463
21603
  e.has(s) && n({
21464
21604
  message: `Operations must have unique \`name\` + \`in\` parameters. Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21465
- location: o.Operation.child(["parameters", i])
21605
+ location: o.Operation.child(["parameters", i]),
21606
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-parameters-unique"
21466
21607
  }), e.add(s);
21467
21608
  }
21468
21609
  }
@@ -21472,12 +21613,18 @@ Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21472
21613
  Operation(t, { report: e, location: r }) {
21473
21614
  t.tags && t.tags.length > 1 && e({
21474
21615
  message: "Operation `tags` object should have only one tag.",
21475
- location: r.child(["tags"]).key()
21616
+ location: r.child(["tags"]).key(),
21617
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-singular-tag"
21476
21618
  });
21477
21619
  }
21478
21620
  }), mae = () => ({
21479
21621
  Operation(t, e) {
21480
- Mp("summary", t, e);
21622
+ Mp({
21623
+ fieldName: "summary",
21624
+ value: t,
21625
+ ctx: e,
21626
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-summary"
21627
+ });
21481
21628
  }
21482
21629
  }), gae = () => {
21483
21630
  let t;
@@ -21490,12 +21637,14 @@ Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21490
21637
  for (let i = 0; i < e.tags.length; i++)
21491
21638
  t.has(e.tags[i]) || r({
21492
21639
  message: "Operation tags should be defined in global tags.",
21493
- location: n.child(["tags", i])
21640
+ location: n.child(["tags", i]),
21641
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-tag-defined"
21494
21642
  });
21495
21643
  else
21496
21644
  r({
21497
21645
  message: "Operation tags should be defined",
21498
- location: n.key()
21646
+ location: n.key(),
21647
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-tag-defined"
21499
21648
  });
21500
21649
  }
21501
21650
  };
@@ -21503,17 +21652,20 @@ Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21503
21652
  Parameter(t, { report: e, location: r }) {
21504
21653
  t.description === void 0 ? e({
21505
21654
  message: "Parameter object description must be present.",
21506
- location: { reportOnKey: !0 }
21655
+ location: { reportOnKey: !0 },
21656
+ reference: "https://redocly.com/docs/cli/rules/oas/parameter-description"
21507
21657
  }) : t.description || e({
21508
21658
  message: "Parameter object description must be non-empty string.",
21509
- location: r.child(["description"])
21659
+ location: r.child(["description"]),
21660
+ reference: "https://redocly.com/docs/cli/rules/oas/parameter-description"
21510
21661
  });
21511
21662
  }
21512
21663
  }), vae = () => ({
21513
21664
  PathItem(t, { report: e, key: r }) {
21514
21665
  r.indexOf("{}") !== -1 && e({
21515
21666
  message: "Path parameter declarations must be non-empty. `{}` is invalid.",
21516
- location: { reportOnKey: !0 }
21667
+ location: { reportOnKey: !0 },
21668
+ reference: "https://redocly.com/docs/cli/rules/oas/path-declaration-must-exist"
21517
21669
  });
21518
21670
  }
21519
21671
  }), DLe = ["get", "head", "post", "put", "patch", "delete", "options", "query", "trace"], Oae = (t) => {
@@ -21527,7 +21679,8 @@ Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21527
21679
  const a = e.indexOf(o[s]);
21528
21680
  e.indexOf(o[s + 1]) < a && n({
21529
21681
  message: "Operation http verbs must be ordered.",
21530
- location: { reportOnKey: !0, ...i.child(o[s + 1]) }
21682
+ location: { reportOnKey: !0, ...i.child(o[s + 1]) },
21683
+ reference: "https://redocly.com/docs/cli/rules/oas/path-http-verbs-order"
21531
21684
  });
21532
21685
  }
21533
21686
  }
@@ -21537,7 +21690,8 @@ Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21537
21690
  PathItem(t, { report: e, key: r }) {
21538
21691
  r.toString().includes("?") && e({
21539
21692
  message: "Don't put query string items in the path, they belong in parameters with `in: query`.",
21540
- location: { reportOnKey: !0 }
21693
+ location: { reportOnKey: !0 },
21694
+ reference: "https://redocly.com/docs/cli/rules/oas/path-not-include-query"
21541
21695
  });
21542
21696
  }
21543
21697
  }
@@ -21578,7 +21732,8 @@ Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21578
21732
  const n = (o, s, a) => {
21579
21733
  o({
21580
21734
  message: `Maximum callback nesting depth (${a}) reached. Path parameter validation is limited beyond this depth to prevent infinite recursion.`,
21581
- location: s
21735
+ location: s,
21736
+ reference: "https://redocly.com/docs/cli/rules/oas/path-parameters-defined"
21582
21737
  });
21583
21738
  };
21584
21739
  if (r >= QLe)
@@ -21644,14 +21799,20 @@ Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21644
21799
  }, _ae = ({ paramName: t, templateParams: e, path: r, report: n, location: i, rawLocation: o }) => {
21645
21800
  if (!e.has(t)) {
21646
21801
  const s = `Path parameter \`${t}\` is not used in the path \`${r}\`.`, a = o === i ? void 0 : o;
21647
- n({ message: s, location: i.child(["name"]), from: a });
21802
+ n({
21803
+ message: s,
21804
+ location: i.child(["name"]),
21805
+ from: a,
21806
+ reference: "https://redocly.com/docs/cli/rules/oas/path-parameters-defined"
21807
+ });
21648
21808
  }
21649
21809
  }, zLe = ({ templateParams: t, definedOperationParams: e, definedPathParams: r, path: n, report: i, location: o }) => {
21650
21810
  const s = /* @__PURE__ */ new Set([...e, ...r]);
21651
21811
  for (const a of t)
21652
21812
  s.has(a) || i({
21653
21813
  message: `The operation does not define the path parameter \`{${a}}\` expected by path \`${n}\`.`,
21654
- location: o.child(["parameters"]).key()
21814
+ location: o.child(["parameters"]).key(),
21815
+ reference: "https://redocly.com/docs/cli/rules/oas/path-parameters-defined"
21655
21816
  });
21656
21817
  }, Cae = (t) => {
21657
21818
  const { ignoreLastPathSegment: e, exceptions: r } = t;
@@ -21665,7 +21826,8 @@ Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21665
21826
  for (const c of l)
21666
21827
  r && r.includes(c) || !rae(c) && Pne.isSingular(c) && i({
21667
21828
  message: `path segment \`${c}\` should be plural.`,
21668
- location: s.key()
21829
+ location: s.key(),
21830
+ reference: "https://redocly.com/docs/cli/rules/oas/path-segment-plural"
21669
21831
  });
21670
21832
  }
21671
21833
  }
@@ -21675,7 +21837,8 @@ Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21675
21837
  PathItem(t, { report: e, key: r }) {
21676
21838
  r.substr(1).split("/").filter((i) => i !== "").every((i) => /^{.+}$/.test(i) || /^[a-z0-9-.]+$/.test(i)) || e({
21677
21839
  message: `\`${r}\` does not use kebab-case.`,
21678
- location: { reportOnKey: !0 }
21840
+ location: { reportOnKey: !0 },
21841
+ reference: "https://redocly.com/docs/cli/rules/oas/paths-kebab-case"
21679
21842
  });
21680
21843
  }
21681
21844
  }), kae = () => {
@@ -21697,7 +21860,8 @@ Repeats of \`in:${r.in}\` + \`name:${r.name}\`.`,
21697
21860
  enter(r, { key: n, location: i, report: o }) {
21698
21861
  e.has(n) && r.type === "string" && (r?.minLength || o({
21699
21862
  message: "Property minLength is required.",
21700
- location: i.key()
21863
+ location: i.key(),
21864
+ reference: "https://redocly.com/docs/cli/rules/oas/required-string-property-missing-min-length"
21701
21865
  }));
21702
21866
  }
21703
21867
  }
@@ -21718,7 +21882,8 @@ const $ae = (t) => {
21718
21882
  for (const a of s)
21719
21883
  (!r?.headers || !Object.keys(r?.headers).some((l) => l.toLowerCase() === a.toLowerCase())) && n({
21720
21884
  message: `Response object must contain a "${a}" header.`,
21721
- location: i.child("headers").key()
21885
+ location: i.child("headers").key(),
21886
+ reference: "https://redocly.com/docs/cli/rules/oas/response-contains-header"
21722
21887
  });
21723
21888
  }
21724
21889
  }
@@ -21730,7 +21895,8 @@ const $ae = (t) => {
21730
21895
  const s = i(kh(t, o)).node;
21731
21896
  !s || !ULe(s) || s.example === void 0 && s.examples === void 0 && e({
21732
21897
  message: `Scalar property should have "example"${n === "oas3_1" || n === "oas3_2" ? ' or "examples"' : ""} defined.`,
21733
- location: r.child(o).key()
21898
+ location: r.child(o).key(),
21899
+ reference: "https://redocly.com/docs/cli/rules/oas/scalar-property-missing-example"
21734
21900
  });
21735
21901
  }
21736
21902
  }
@@ -21749,13 +21915,15 @@ const Iae = (t) => {
21749
21915
  for (const c of l.from)
21750
21916
  s({
21751
21917
  message: `There is no \`${a}\` security scheme defined.`,
21752
- location: c.key()
21918
+ location: c.key(),
21919
+ reference: "https://redocly.com/docs/cli/rules/oas/security-defined"
21753
21920
  });
21754
21921
  if (!(o.security || n))
21755
21922
  for (const a of r)
21756
21923
  s({
21757
21924
  message: "Every operation should have security defined on it or on the root level.",
21758
- location: a.key()
21925
+ location: a.key(),
21926
+ reference: "https://redocly.com/docs/cli/rules/oas/security-defined"
21759
21927
  });
21760
21928
  }
21761
21929
  },
@@ -21795,7 +21963,8 @@ const Iae = (t) => {
21795
21963
  any(e, { report: r, rawNode: n, rawLocation: i, type: o }) {
21796
21964
  !t.includes(o.name) && yi(n) && r({
21797
21965
  message: "Field $ref is not expected here.",
21798
- location: i.child("$ref").key()
21966
+ location: i.child("$ref").key(),
21967
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-strict-refs"
21799
21968
  });
21800
21969
  }
21801
21970
  };
@@ -21805,40 +21974,55 @@ const Iae = (t) => {
21805
21974
  Parameter(o, { report: s, location: a }) {
21806
21975
  o.type === "boolean" && !r.test(o.name) && s({
21807
21976
  message: `Boolean parameter \`${o.name}\` should have ${i} prefix.`,
21808
- location: a.child("name")
21977
+ location: a.child("name"),
21978
+ reference: "https://redocly.com/docs/cli/rules/oas/boolean-parameter-prefixes"
21809
21979
  });
21810
21980
  }
21811
21981
  };
21812
21982
  };
21813
- function $P({ type: t, value: e }, { report: r, location: n }, i) {
21814
- const o = t === "consumes" ? "request" : "response";
21815
- if (!i)
21816
- throw new Error(`Parameter "allowedValues" is not provided for "${o}-mime-type" rule`);
21983
+ function $P({ type: t, value: e, ctx: r, allowedValues: n, reference: i }) {
21984
+ const { report: o, location: s } = r, a = t === "consumes" ? "request" : "response";
21985
+ if (!n)
21986
+ throw new Error(`Parameter "allowedValues" is not provided for "${a}-mime-type" rule`);
21817
21987
  if (e[t])
21818
- for (const s of e[t])
21819
- i.includes(s) || r({
21820
- message: `Mime type "${s}" is not allowed`,
21821
- location: n.child(e[t].indexOf(s)).key()
21988
+ for (const l of e[t])
21989
+ n.includes(l) || o({
21990
+ message: `Mime type "${l}" is not allowed`,
21991
+ location: s.child(e[t].indexOf(l)).key(),
21992
+ reference: i
21822
21993
  });
21823
21994
  }
21824
- function Yg({ type: t, value: e }, { report: r, location: n }, i) {
21825
- const o = t === "consumes" ? "request" : "response";
21826
- if (!i)
21827
- throw new Error(`Parameter "allowedValues" is not provided for "${o}-mime-type" rule`);
21995
+ function Yg({ type: t, value: e, ctx: r, allowedValues: n, reference: i }) {
21996
+ const { report: o, location: s } = r, a = t === "consumes" ? "request" : "response";
21997
+ if (!n)
21998
+ throw new Error(`Parameter "allowedValues" is not provided for "${a}-mime-type" rule`);
21828
21999
  if (e.content)
21829
- for (const s of Object.keys(e.content))
21830
- i.includes(s) || r({
21831
- message: `Mime type "${s}" is not allowed`,
21832
- location: n.child("content").child(s).key()
22000
+ for (const l of Object.keys(e.content))
22001
+ n.includes(l) || o({
22002
+ message: `Mime type "${l}" is not allowed`,
22003
+ location: s.child("content").child(l).key(),
22004
+ reference: i
21833
22005
  });
21834
22006
  }
21835
22007
  const FLe = ({ allowedValues: t }) => ({
21836
22008
  Root(e, r) {
21837
- $P({ type: "consumes", value: e }, r, t);
22009
+ $P({
22010
+ type: "consumes",
22011
+ value: e,
22012
+ ctx: r,
22013
+ allowedValues: t,
22014
+ reference: "https://redocly.com/docs/cli/rules/oas/request-mime-type"
22015
+ });
21838
22016
  },
21839
22017
  Operation: {
21840
22018
  leave(e, r) {
21841
- $P({ type: "consumes", value: e }, r, t);
22019
+ $P({
22020
+ type: "consumes",
22021
+ value: e,
22022
+ ctx: r,
22023
+ allowedValues: t,
22024
+ reference: "https://redocly.com/docs/cli/rules/oas/request-mime-type"
22025
+ });
21842
22026
  }
21843
22027
  }
21844
22028
  }), BLe = (t) => {
@@ -21858,7 +22042,8 @@ const FLe = ({ allowedValues: t }) => ({
21858
22042
  for (const a of s)
21859
22043
  n.properties?.[a] || i({
21860
22044
  message: `Response object must contain a top-level "${a}" property.`,
21861
- location: o.child("properties").key()
22045
+ location: o.child("properties").key(),
22046
+ reference: "https://redocly.com/docs/cli/rules/oas/response-contains-property"
21862
22047
  });
21863
22048
  }
21864
22049
  }
@@ -21866,11 +22051,23 @@ const FLe = ({ allowedValues: t }) => ({
21866
22051
  };
21867
22052
  }, WLe = ({ allowedValues: t }) => ({
21868
22053
  Root(e, r) {
21869
- $P({ type: "produces", value: e }, r, t);
22054
+ $P({
22055
+ type: "produces",
22056
+ value: e,
22057
+ ctx: r,
22058
+ allowedValues: t,
22059
+ reference: "https://redocly.com/docs/cli/rules/oas/response-mime-type"
22060
+ });
21870
22061
  },
21871
22062
  Operation: {
21872
22063
  leave(e, r) {
21873
- $P({ type: "produces", value: e }, r, t);
22064
+ $P({
22065
+ type: "produces",
22066
+ value: e,
22067
+ ctx: r,
22068
+ allowedValues: t,
22069
+ reference: "https://redocly.com/docs/cli/rules/oas/response-mime-type"
22070
+ });
21874
22071
  }
21875
22072
  }
21876
22073
  }), ZLe = {
@@ -21927,7 +22124,8 @@ const FLe = ({ allowedValues: t }) => ({
21927
22124
  const n = yi(e.schema) ? r.resolve(e.schema).node : e.schema;
21928
22125
  n && YLe(e, n, t) && r.report({
21929
22126
  message: `Parameter \`${e.name}\` should have \`style\` and \`explode \` fields`,
21930
- location: r.location
22127
+ location: r.location,
22128
+ reference: "https://redocly.com/docs/cli/rules/oas/array-parameter-serialization"
21931
22129
  });
21932
22130
  }
21933
22131
  }
@@ -21942,7 +22140,8 @@ const HLe = (t) => {
21942
22140
  Schema(o, { report: s, parentLocations: a }, l) {
21943
22141
  o.type === "boolean" && !r.test(l.Parameter.name) && s({
21944
22142
  message: `Boolean parameter \`${l.Parameter.name}\` should have ${i} prefix.`,
21945
- location: a.Parameter.child(["name"])
22143
+ location: a.Parameter.child(["name"]),
22144
+ reference: "https://redocly.com/docs/cli/rules/oas/boolean-parameter-prefixes"
21946
22145
  });
21947
22146
  }
21948
22147
  }
@@ -21977,7 +22176,8 @@ const HLe = (t) => {
21977
22176
  `), y = {
21978
22177
  message: `Component '${f}/${p.componentName}' is not unique. It is also defined at:
21979
22178
  ${g}`,
21980
- location: h
22179
+ location: h,
22180
+ reference: "https://redocly.com/docs/cli/rules/oas/component-name-unique"
21981
22181
  };
21982
22182
  m && (y.forceSeverity = m), l.report(y);
21983
22183
  }
@@ -22034,20 +22234,23 @@ const nje = () => ({
22034
22234
  if (!t.hasOwnProperty("servers")) {
22035
22235
  e({
22036
22236
  message: "Servers must be present.",
22037
- location: r.child(["openapi"]).key()
22237
+ location: r.child(["openapi"]).key(),
22238
+ reference: "https://redocly.com/docs/cli/rules/oas/no-empty-servers"
22038
22239
  });
22039
22240
  return;
22040
22241
  }
22041
22242
  (!Array.isArray(t.servers) || t.servers.length === 0) && e({
22042
22243
  message: "Servers must be a non-empty array.",
22043
- location: r.child(["servers"]).key()
22244
+ location: r.child(["servers"]).key(),
22245
+ reference: "https://redocly.com/docs/cli/rules/oas/no-empty-servers"
22044
22246
  });
22045
22247
  }
22046
22248
  }), ije = () => ({
22047
22249
  Example(t, { report: e, location: r }) {
22048
22250
  t.value && t.externalValue && e({
22049
22251
  message: "Example object can have either `value` or `externalValue` fields.",
22050
- location: r.child(["value"]).key()
22252
+ location: r.child(["value"]).key(),
22253
+ reference: "https://redocly.com/docs/cli/rules/oas/no-example-value-and-externalValue"
22051
22254
  });
22052
22255
  }
22053
22256
  }), oje = (t) => {
@@ -22065,11 +22268,16 @@ const nje = () => ({
22065
22268
  return;
22066
22269
  u = d ? p.location.child("value") : p.location, c = p.node;
22067
22270
  }
22068
- d && typeof c?.value > "u" || Kb(d ? c.value : c, i.schema, {
22069
- location: u,
22070
- ctx: o,
22071
- allowAdditionalProperties: !!t.allowAdditionalProperties,
22072
- ajvContext: n
22271
+ d && typeof c?.value > "u" || Kb({
22272
+ example: d ? c.value : c,
22273
+ schema: i.schema,
22274
+ options: {
22275
+ location: u,
22276
+ ctx: o,
22277
+ allowAdditionalProperties: !!t.allowAdditionalProperties,
22278
+ ajvContext: n
22279
+ },
22280
+ reference: "https://redocly.com/docs/cli/rules/oas/no-invalid-media-type-examples"
22073
22281
  });
22074
22282
  }
22075
22283
  };
@@ -22098,14 +22306,16 @@ const nje = () => ({
22098
22306
  const n = /^(.*[\/.])?(example\.com|localhost)([\/:?].*|$)/;
22099
22307
  t.url && n.test(t.url) && e({
22100
22308
  message: "Server `url` should not point to example.com or localhost.",
22101
- location: r.child(["url"])
22309
+ location: r.child(["url"]),
22310
+ reference: "https://redocly.com/docs/cli/rules/oas/no-server-example-com"
22102
22311
  });
22103
22312
  }
22104
22313
  }), aje = () => ({
22105
22314
  Server(t, { report: e, location: r }) {
22106
22315
  t.url && t.url.endsWith("/") && t.url !== "/" && e({
22107
22316
  message: "Server `url` should not have a trailing slash.",
22108
- location: r.child(["url"])
22317
+ location: r.child(["url"]),
22318
+ reference: "https://redocly.com/docs/cli/rules/oas/no-server-trailing-slash"
22109
22319
  });
22110
22320
  }
22111
22321
  }), lje = () => ({
@@ -22127,10 +22337,12 @@ const nje = () => ({
22127
22337
  for (const i of n)
22128
22338
  i === "empty" && e({
22129
22339
  message: "Server variable with `enum` must be a non-empty array.",
22130
- location: r.child(["servers"]).key()
22340
+ location: r.child(["servers"]).key(),
22341
+ reference: "https://redocly.com/docs/cli/rules/oas/no-server-variables-empty-enum"
22131
22342
  }), i === "invalidDefaultValue" && e({
22132
22343
  message: "Server variable define `enum` and `default`. `enum` must include default value",
22133
- location: r.child(["servers"]).key()
22344
+ location: r.child(["servers"]).key(),
22345
+ reference: "https://redocly.com/docs/cli/rules/oas/no-server-variables-empty-enum"
22134
22346
  });
22135
22347
  }
22136
22348
  });
@@ -22156,27 +22368,29 @@ const cje = () => ({
22156
22368
  for (const o of n)
22157
22369
  i.includes(o) || e({
22158
22370
  message: `The \`${o}\` variable is not defined in the \`variables\` objects.`,
22159
- location: r.child(["url"])
22371
+ location: r.child(["url"]),
22372
+ reference: "https://redocly.com/docs/cli/rules/oas/no-undefined-server-variable"
22160
22373
  });
22161
22374
  for (const o of i)
22162
22375
  n.includes(o) || e({
22163
22376
  message: `The \`${o}\` variable is not used in the server's \`url\` field.`,
22164
22377
  location: r.child(["variables", o]).key(),
22165
- from: r.child("url")
22378
+ from: r.child("url"),
22379
+ reference: "https://redocly.com/docs/cli/rules/oas/no-undefined-server-variable"
22166
22380
  });
22167
22381
  }
22168
22382
  }), uje = () => {
22169
- const t = /* @__PURE__ */ new Map();
22170
- function e(r, n, i = !1) {
22171
- t.set(r.absolutePointer, {
22172
- used: t.get(r.absolutePointer)?.used || !1,
22173
- referencesDiscriminator: i,
22174
- location: r,
22175
- name: n
22383
+ const t = /* @__PURE__ */ new Map(), e = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Set();
22384
+ function n(i, o, s = !1) {
22385
+ t.set(i.absolutePointer, {
22386
+ used: t.get(i.absolutePointer)?.used || !1,
22387
+ referencesDiscriminator: s,
22388
+ location: i,
22389
+ name: o
22176
22390
  });
22177
22391
  }
22178
22392
  return {
22179
- ref(r, { type: n, resolve: i, key: o, location: s }) {
22393
+ ref(i, { type: o, resolve: s, key: a, location: l }) {
22180
22394
  if ([
22181
22395
  "Schema",
22182
22396
  "Header",
@@ -22185,63 +22399,78 @@ const cje = () => ({
22185
22399
  "Example",
22186
22400
  "RequestBody",
22187
22401
  "MediaTypesMap"
22188
- ].includes(n.name)) {
22189
- const a = i(r);
22190
- if (!a.location)
22402
+ ].includes(o.name)) {
22403
+ const c = s(i);
22404
+ if (!c.location)
22191
22405
  return;
22192
- t.set(a.location.absolutePointer, {
22406
+ t.set(c.location.absolutePointer, {
22193
22407
  used: !0,
22194
- name: o.toString(),
22195
- location: s
22408
+ name: a.toString(),
22409
+ location: l
22196
22410
  });
22197
22411
  }
22198
22412
  },
22199
22413
  Root: {
22200
- leave(r, { report: n }) {
22201
- t.forEach((i) => {
22202
- !i.used && !i.referencesDiscriminator && n({
22203
- message: `Component: "${i.name}" is never used.`,
22204
- location: i.location.key(),
22414
+ leave(i, { report: o }) {
22415
+ t.forEach((s) => {
22416
+ !s.used && !s.referencesDiscriminator && o({
22417
+ message: `Component: "${s.name}" is never used.`,
22418
+ location: s.location.key(),
22419
+ reference: "https://redocly.com/docs/cli/rules/oas/no-unused-components"
22420
+ });
22421
+ }), e.forEach((s, a) => {
22422
+ r.has(a) || o({
22423
+ message: `Security scheme: "${a}" is never used.`,
22424
+ location: s.key(),
22205
22425
  reference: "https://redocly.com/docs/cli/rules/oas/no-unused-components"
22206
22426
  });
22207
22427
  });
22208
22428
  }
22209
22429
  },
22210
22430
  NamedSchemas: {
22211
- Schema(r, { location: n, key: i, resolve: o }) {
22212
- const s = r.allOf?.some((a) => yi(a) && o(a)?.node?.discriminator);
22213
- e(n, i.toString(), s);
22431
+ Schema(i, { location: o, key: s, resolve: a }) {
22432
+ const l = i.allOf?.some((c) => yi(c) && a(c)?.node?.discriminator);
22433
+ n(o, s.toString(), l);
22214
22434
  }
22215
22435
  },
22216
22436
  NamedParameters: {
22217
- Parameter(r, { location: n, key: i }) {
22218
- e(n, i.toString());
22437
+ Parameter(i, { location: o, key: s }) {
22438
+ n(o, s.toString());
22219
22439
  }
22220
22440
  },
22221
22441
  NamedResponses: {
22222
- Response(r, { location: n, key: i }) {
22223
- e(n, i.toString());
22442
+ Response(i, { location: o, key: s }) {
22443
+ n(o, s.toString());
22224
22444
  }
22225
22445
  },
22226
22446
  NamedExamples: {
22227
- Example(r, { location: n, key: i }) {
22228
- e(n, i.toString());
22447
+ Example(i, { location: o, key: s }) {
22448
+ n(o, s.toString());
22229
22449
  }
22230
22450
  },
22231
22451
  NamedRequestBodies: {
22232
- RequestBody(r, { location: n, key: i }) {
22233
- e(n, i.toString());
22452
+ RequestBody(i, { location: o, key: s }) {
22453
+ n(o, s.toString());
22234
22454
  }
22235
22455
  },
22236
22456
  NamedHeaders: {
22237
- Header(r, { location: n, key: i }) {
22238
- e(n, i.toString());
22457
+ Header(i, { location: o, key: s }) {
22458
+ n(o, s.toString());
22239
22459
  }
22240
22460
  },
22241
22461
  NamedMediaTypes: {
22242
- MediaTypesMap(r, { location: n, key: i }) {
22243
- e(n, i.toString());
22462
+ MediaTypesMap(i, { location: o, key: s }) {
22463
+ n(o, s.toString());
22244
22464
  }
22465
+ },
22466
+ NamedSecuritySchemes: {
22467
+ SecurityScheme(i, { rawLocation: o, key: s }) {
22468
+ e.set(s.toString(), o);
22469
+ }
22470
+ },
22471
+ SecurityRequirement(i) {
22472
+ for (const o of Object.keys(i))
22473
+ r.add(o);
22245
22474
  }
22246
22475
  };
22247
22476
  }, dje = () => ({
@@ -22249,7 +22478,8 @@ const cje = () => ({
22249
22478
  leave(t, e) {
22250
22479
  "nullable" in t && !("type" in t) && e.report({
22251
22480
  message: "The `type` field must be defined when the `nullable` field is used.",
22252
- location: e.location.child(["nullable"])
22481
+ location: e.location.child(["nullable"]),
22482
+ reference: "https://redocly.com/docs/cli/rules/oas/nullable-type-sibling"
22253
22483
  });
22254
22484
  }
22255
22485
  }
@@ -22261,7 +22491,8 @@ const cje = () => ({
22261
22491
  enter(t, { report: e, location: r }) {
22262
22492
  (!t.content || !t.content["application/problem+json"]) && e({
22263
22493
  message: "Response `4xx` must have content-type `application/problem+json`.",
22264
- location: r.key()
22494
+ location: r.key(),
22495
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-4xx-problem-details-rfc7807"
22265
22496
  });
22266
22497
  },
22267
22498
  MediaType: {
@@ -22269,10 +22500,25 @@ const cje = () => ({
22269
22500
  return e !== "application/problem+json";
22270
22501
  },
22271
22502
  enter(t, e) {
22272
- Mp("schema", t, e);
22503
+ Mp({
22504
+ fieldName: "schema",
22505
+ value: t,
22506
+ ctx: e,
22507
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-4xx-problem-details-rfc7807"
22508
+ });
22273
22509
  },
22274
22510
  SchemaProperties(t, e) {
22275
- Mp("type", t, e), Mp("title", t, e);
22511
+ Mp({
22512
+ fieldName: "type",
22513
+ value: t,
22514
+ ctx: e,
22515
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-4xx-problem-details-rfc7807"
22516
+ }), Mp({
22517
+ fieldName: "title",
22518
+ value: t,
22519
+ ctx: e,
22520
+ reference: "https://redocly.com/docs/cli/rules/oas/operation-4xx-problem-details-rfc7807"
22521
+ });
22276
22522
  }
22277
22523
  }
22278
22524
  }
@@ -22280,7 +22526,13 @@ const cje = () => ({
22280
22526
  Paths: {
22281
22527
  RequestBody: {
22282
22528
  leave(e, r) {
22283
- Yg({ type: "consumes", value: e }, r, t);
22529
+ Yg({
22530
+ type: "consumes",
22531
+ value: e,
22532
+ ctx: r,
22533
+ allowedValues: t,
22534
+ reference: "https://redocly.com/docs/cli/rules/oas/request-mime-type"
22535
+ });
22284
22536
  }
22285
22537
  },
22286
22538
  Callback: {
@@ -22288,7 +22540,13 @@ const cje = () => ({
22288
22540
  },
22289
22541
  Response: {
22290
22542
  leave(e, r) {
22291
- Yg({ type: "consumes", value: e }, r, t);
22543
+ Yg({
22544
+ type: "consumes",
22545
+ value: e,
22546
+ ctx: r,
22547
+ allowedValues: t,
22548
+ reference: "https://redocly.com/docs/cli/rules/oas/request-mime-type"
22549
+ });
22292
22550
  }
22293
22551
  }
22294
22552
  }
@@ -22296,7 +22554,13 @@ const cje = () => ({
22296
22554
  WebhooksMap: {
22297
22555
  Response: {
22298
22556
  leave(e, r) {
22299
- Yg({ type: "consumes", value: e }, r, t);
22557
+ Yg({
22558
+ type: "consumes",
22559
+ value: e,
22560
+ ctx: r,
22561
+ allowedValues: t,
22562
+ reference: "https://redocly.com/docs/cli/rules/oas/request-mime-type"
22563
+ });
22300
22564
  }
22301
22565
  }
22302
22566
  }
@@ -22318,7 +22582,8 @@ const cje = () => ({
22318
22582
  for (const a of s)
22319
22583
  n.properties?.[a] || i({
22320
22584
  message: `Response object must contain a top-level "${a}" property.`,
22321
- location: o.child("properties").key()
22585
+ location: o.child("properties").key(),
22586
+ reference: "https://redocly.com/docs/cli/rules/oas/response-contains-property"
22322
22587
  });
22323
22588
  }
22324
22589
  }
@@ -22329,7 +22594,13 @@ const cje = () => ({
22329
22594
  Paths: {
22330
22595
  Response: {
22331
22596
  leave(e, r) {
22332
- Yg({ type: "produces", value: e }, r, t);
22597
+ Yg({
22598
+ type: "produces",
22599
+ value: e,
22600
+ ctx: r,
22601
+ allowedValues: t,
22602
+ reference: "https://redocly.com/docs/cli/rules/oas/response-mime-type"
22603
+ });
22333
22604
  }
22334
22605
  },
22335
22606
  Callback: {
@@ -22337,7 +22608,13 @@ const cje = () => ({
22337
22608
  },
22338
22609
  RequestBody: {
22339
22610
  leave(e, r) {
22340
- Yg({ type: "produces", value: e }, r, t);
22611
+ Yg({
22612
+ type: "produces",
22613
+ value: e,
22614
+ ctx: r,
22615
+ allowedValues: t,
22616
+ reference: "https://redocly.com/docs/cli/rules/oas/response-mime-type"
22617
+ });
22341
22618
  }
22342
22619
  }
22343
22620
  }
@@ -22345,7 +22622,13 @@ const cje = () => ({
22345
22622
  WebhooksMap: {
22346
22623
  RequestBody: {
22347
22624
  leave(e, r) {
22348
- Yg({ type: "produces", value: e }, r, t);
22625
+ Yg({
22626
+ type: "produces",
22627
+ value: e,
22628
+ ctx: r,
22629
+ allowedValues: t,
22630
+ reference: "https://redocly.com/docs/cli/rules/oas/response-mime-type"
22631
+ });
22349
22632
  }
22350
22633
  }
22351
22634
  }
@@ -22354,7 +22637,8 @@ const cje = () => ({
22354
22637
  function e(r, n, i, o) {
22355
22638
  new RegExp(t).test(r) || n({
22356
22639
  message: `The map key in ${o} "${r}" does not match the regular expression "${t}"`,
22357
- location: i.key()
22640
+ location: i.key(),
22641
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-components-invalid-map-name"
22358
22642
  });
22359
22643
  }
22360
22644
  return {
@@ -22425,12 +22709,14 @@ const cje = () => ({
22425
22709
  };
22426
22710
  s(e) || r.report({
22427
22711
  message: `Discriminator with optional property '${n}' must include a defaultMapping field.`,
22428
- location: r.location.child("discriminator")
22712
+ location: r.location.child("discriminator"),
22713
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-discriminator-defaultMapping"
22429
22714
  });
22430
22715
  } else
22431
22716
  r.resolve({ $ref: i }).node === void 0 && !t.includes(i) && r.report({
22432
22717
  message: `defaultMapping value '${i}' does not point to an existing schema component.`,
22433
- location: r.location.child(["discriminator", "defaultMapping"])
22718
+ location: r.location.child(["discriminator", "defaultMapping"]),
22719
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-discriminator-defaultMapping"
22434
22720
  });
22435
22721
  }
22436
22722
  }
@@ -22439,16 +22725,20 @@ const cje = () => ({
22439
22725
  Example({ value: t, externalValue: e, dataValue: r, serializedValue: n }, { report: i, location: o }) {
22440
22726
  t !== void 0 && e !== void 0 && i({
22441
22727
  message: "The 'value' and 'externalValue' fields of an example object are mutually exclusive.",
22442
- location: o
22728
+ location: o,
22729
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-example-values"
22443
22730
  }), n !== void 0 && e !== void 0 && i({
22444
22731
  message: "The 'serializedValue' and 'externalValue' fields of an example object are mutually exclusive.",
22445
- location: o
22732
+ location: o,
22733
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-example-values"
22446
22734
  }), t !== void 0 && r !== void 0 && i({
22447
22735
  message: "The 'value' filed must be absent if 'dataValue' is present in an example object.",
22448
- location: o.child("value").key()
22736
+ location: o.child("value").key(),
22737
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-example-values"
22449
22738
  }), t !== void 0 && n !== void 0 && i({
22450
22739
  message: "The 'value' filed must be absent if 'serializedValue' is present in an example object.",
22451
- location: o.child("value").key()
22740
+ location: o.child("value").key(),
22741
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-example-values"
22452
22742
  });
22453
22743
  }
22454
22744
  }), Oje = () => ({
@@ -22456,7 +22746,8 @@ const cje = () => ({
22456
22746
  leave(t, e) {
22457
22747
  ("prefixEncoding" in t && "encoding" in t || "itemEncoding" in t && "encoding" in t) && e.report({
22458
22748
  message: "The 'encoding' field cannot be used together with 'prefixEncoding' or 'itemEncoding'.",
22459
- location: e.location.child("encoding").key()
22749
+ location: e.location.child("encoding").key(),
22750
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-no-invalid-encoding-combinations"
22460
22751
  });
22461
22752
  }
22462
22753
  }
@@ -22475,7 +22766,8 @@ const cje = () => ({
22475
22766
  if (!t.find((s) => s.name === e.parent)) {
22476
22767
  r({
22477
22768
  message: `Tag parent '${e.parent}' is not defined in the API description.`,
22478
- location: n.child("parent")
22769
+ location: n.child("parent"),
22770
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-no-invalid-tag-parents"
22479
22771
  });
22480
22772
  return;
22481
22773
  }
@@ -22485,7 +22777,8 @@ const cje = () => ({
22485
22777
  if (i.has(o)) {
22486
22778
  r({
22487
22779
  message: `Circular reference detected in tag parent hierarchy for tag '${e.name}'.`,
22488
- location: n.child("parent")
22780
+ location: n.child("parent"),
22781
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-no-invalid-tag-parents"
22489
22782
  });
22490
22783
  return;
22491
22784
  }
@@ -22502,20 +22795,23 @@ function iB(t, e) {
22502
22795
  const r = e.location.child("parameters");
22503
22796
  t > 1 && e.report({
22504
22797
  message: "Parameters with `in: querystring` should be defined only once per path/operation parameter set.",
22505
- location: r
22798
+ location: r,
22799
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-querystring-parameters"
22506
22800
  });
22507
22801
  }
22508
22802
  function oB(t, e, r, n) {
22509
22803
  if (t.in === "query") {
22510
22804
  r.querystringLocation && n.report({
22511
22805
  message: "Parameters with `in: query` cannot be used together with `in: querystring` in the same operation/path parameter set.",
22512
- location: e
22806
+ location: e,
22807
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-querystring-parameters"
22513
22808
  }), r.queryLocation ??= e;
22514
22809
  return;
22515
22810
  }
22516
22811
  t.in === "querystring" && (r.queryLocation && n.report({
22517
22812
  message: "Parameters with `in: querystring` cannot be used together with `in: query` in the same operation/path parameter set.",
22518
- location: e
22813
+ location: e,
22814
+ reference: "https://redocly.com/docs/cli/rules/oas/spec-querystring-parameters"
22519
22815
  }), r.querystringLocation ??= e);
22520
22816
  }
22521
22817
  const wje = () => {
@@ -22640,7 +22936,8 @@ const wje = () => {
22640
22936
  t.forEach((i) => {
22641
22937
  i.used || n({
22642
22938
  message: `Component: "${i.name}" is never used.`,
22643
- location: i.location.key()
22939
+ location: i.location.key(),
22940
+ reference: "https://redocly.com/docs/cli/rules/oas/no-unused-components"
22644
22941
  });
22645
22942
  });
22646
22943
  }
@@ -22694,7 +22991,8 @@ const wje = () => {
22694
22991
  const l = a.node, c = l.name;
22695
22992
  c && (i.has(c) && e({
22696
22993
  message: `Parameter names must be unique. Duplicate parameter name '${l.name}' found.`,
22697
- location: n.child([s, "name"])
22994
+ location: n.child([s, "name"]),
22995
+ reference: "https://redocly.com/docs/cli/rules/openrpc/spec-no-duplicated-method-params"
22698
22996
  }), i.add(c));
22699
22997
  });
22700
22998
  }
@@ -22714,7 +23012,8 @@ const wje = () => {
22714
23012
  return;
22715
23013
  l.required === !0 ? i && e({
22716
23014
  message: `Required parameter '${l.name}' must be positioned before optional parameters.`,
22717
- location: n.child([s, "name"])
23015
+ location: n.child([s, "name"]),
23016
+ reference: "https://redocly.com/docs/cli/rules/openrpc/spec-no-required-params-after-optional"
22718
23017
  }) : i = !0;
22719
23018
  });
22720
23019
  }
@@ -28432,13 +28731,13 @@ Errors: ${s.errors}
28432
28731
 
28433
28732
  ${y.message}
28434
28733
 
28435
- ` + Qae(y) + (y.reference ? `Reference: ${Qr.blue(y.reference)}
28436
-
28437
- ` : "") + WB(S, o) + `
28734
+ ` + Qae(y) + WB(S, o) + `
28438
28735
 
28439
28736
  ` + Yqe(n, y.from) + `${bg[y.severity]} was generated by the ${Qr.blue(y.ruleId)} rule.
28440
28737
 
28441
- `;
28738
+ ` + (y.reference ? `Reference: ${Qr.blue(y.reference)}
28739
+
28740
+ ` : "");
28442
28741
  }
28443
28742
  function m(y, v, b) {
28444
28743
  const w = Mae[y.severity];
@@ -41297,7 +41596,7 @@ const FT = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
41297
41596
  class Mr {
41298
41597
  static utils = null;
41299
41598
  static async getUtils() {
41300
- return Mr.utils || (Mr.utils = tn() ? await import("./replay-tauri-path-BQlyE7kq.js") : await Promise.resolve().then(() => hPe)), Mr.utils;
41599
+ return Mr.utils || (Mr.utils = tn() ? await import("./replay-tauri-path-BMrefxwn.js") : await Promise.resolve().then(() => hPe)), Mr.utils;
41301
41600
  }
41302
41601
  static async dirname(e) {
41303
41602
  return (await Mr.getUtils()).dirname(e);
@@ -78032,7 +78331,7 @@ const vI = Sn({});
78032
78331
  function Xo() {
78033
78332
  return Tr(vI) || {};
78034
78333
  }
78035
- const Hme = process.env.NODE_ENV === "development", bG = process.env.NODE_ENV === "production", Lat = "0.25.0-next.3", jat = {
78334
+ const Hme = process.env.NODE_ENV === "development", bG = process.env.NODE_ENV === "production", Lat = "0.25.0-next.4", jat = {
78036
78335
  version: Lat
78037
78336
  }, qat = {
78038
78337
  organizationId: "",
@@ -79455,7 +79754,7 @@ async function odt({
79455
79754
  }, { clientCert: c, clientKey: u } = l, d = tn(), p = o || "response";
79456
79755
  let f = null;
79457
79756
  if (d) {
79458
- const { open: S } = await import("./replay-index-JF8j2e4P.js"), _ = await S({ directory: !0, multiple: !1 });
79757
+ const { open: S } = await import("./replay-index-9IHdxPu7.js"), _ = await S({ directory: !0, multiple: !1 });
79459
79758
  if (!_)
79460
79759
  return;
79461
79760
  const P = Array.isArray(_) ? _[0] : _;
@@ -107291,7 +107590,7 @@ function pTt({
107291
107590
  }, i = async () => {
107292
107591
  if (tn())
107293
107592
  try {
107294
- const { open: a } = await import("./replay-index-JF8j2e4P.js"), l = await a({
107593
+ const { open: a } = await import("./replay-index-9IHdxPu7.js"), l = await a({
107295
107594
  multiple: !0
107296
107595
  });
107297
107596
  if (!l)
@@ -107623,7 +107922,7 @@ const RTt = ({ data: t }) => {
107623
107922
  }, s = async () => {
107624
107923
  if (tn())
107625
107924
  try {
107626
- const { open: l } = await import("./replay-index-JF8j2e4P.js"), c = await l();
107925
+ const { open: l } = await import("./replay-index-9IHdxPu7.js"), c = await l();
107627
107926
  if (!c)
107628
107927
  return;
107629
107928
  const u = await Xw(c);
@@ -111392,7 +111691,7 @@ function WAt({
111392
111691
  project: { userFilesDir: r }
111393
111692
  } = er(), { certificates: n } = Zo(), i = Yr(), { getCollection: o } = Xd(), s = o(t), a = r.get(), { inputs: l, servers: c } = i.get(), u = s?.sourceDescriptions.get() ?? [];
111394
111693
  return { execute: async (p) => {
111395
- const f = `${a}/${t}`, m = new qme(), h = l.map((v) => JSON.stringify({ [v.name]: v.value })), g = ZAt(c, u), { run: y } = await import("./replay-respect-run-kJmYWC_v.js");
111694
+ const f = `${a}/${t}`, m = new qme(), h = l.map((v) => JSON.stringify({ [v.name]: v.value })), g = ZAt(c, u), { run: y } = await import("./replay-respect-run-hAqTOjYO.js");
111396
111695
  return await y({
111397
111696
  files: [f],
111398
111697
  workflow: e ? [e] : [],