@redocly/cli 2.34.0 → 2.35.0

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.
@@ -15,7 +15,7 @@ import {
15
15
  pluralize,
16
16
  require__,
17
17
  require_supports_color
18
- } from "./OEYVENNB.js";
18
+ } from "./ZKG4D7JN.js";
19
19
  import {
20
20
  __commonJS,
21
21
  __toESM
@@ -11937,7 +11937,6 @@ async function bundleArazzo(options) {
11937
11937
  "no-x-security-both-scheme-and-scheme-name": "error",
11938
11938
  "no-x-security-scheme-name-without-openapi": "error",
11939
11939
  "outputs-defined": "error",
11940
- "respect-supported-versions": "warn",
11941
11940
  "x-security-scheme-name-reference": "error",
11942
11941
  "x-security-scheme-required-values": "error"
11943
11942
  }
@@ -5,15 +5,15 @@ import {
5
5
  } from "./Y6DTFCLS.js";
6
6
  import {
7
7
  require_dist
8
- } from "./EIHBO33S.js";
8
+ } from "./ZH7E3R54.js";
9
9
  import {
10
10
  version
11
- } from "./FP2VGYMF.js";
11
+ } from "./YMIVTRT4.js";
12
12
  import {
13
13
  blue,
14
14
  green,
15
15
  logger
16
- } from "./OEYVENNB.js";
16
+ } from "./ZKG4D7JN.js";
17
17
  import {
18
18
  __commonJS,
19
19
  __require,
@@ -10,7 +10,7 @@ import {
10
10
  } from "./Y6DTFCLS.js";
11
11
  import {
12
12
  version
13
- } from "./FP2VGYMF.js";
13
+ } from "./YMIVTRT4.js";
14
14
  import {
15
15
  diag,
16
16
  esm_exports,
@@ -8,9 +8,9 @@ import {
8
8
  maskSecrets,
9
9
  parseRuntimeExpression,
10
10
  run
11
- } from "./GRMVFQAA.js";
11
+ } from "./2ACFK2AA.js";
12
12
  import "./VXIQEZPR.js";
13
- import "./OEYVENNB.js";
13
+ import "./ZKG4D7JN.js";
14
14
  import "./5ILQMFXK.js";
15
15
  export {
16
16
  RESET_ESCAPE_CODE,
@@ -2,11 +2,11 @@ import { createRequire as __createRequire } from 'node:module';
2
2
  const require = __createRequire(import.meta.url);
3
3
  import {
4
4
  RedoclyOAuthClient
5
- } from "./FDUPOI4C.js";
5
+ } from "./FLGNQ4P2.js";
6
6
  import "./Y6DTFCLS.js";
7
- import "./EIHBO33S.js";
8
- import "./FP2VGYMF.js";
9
- import "./OEYVENNB.js";
7
+ import "./ZH7E3R54.js";
8
+ import "./YMIVTRT4.js";
9
+ import "./ZKG4D7JN.js";
10
10
  import "./5ILQMFXK.js";
11
11
  export {
12
12
  RedoclyOAuthClient
@@ -23,7 +23,7 @@ import {
23
23
  red,
24
24
  stringifyYaml,
25
25
  yellow
26
- } from "./OEYVENNB.js";
26
+ } from "./ZKG4D7JN.js";
27
27
 
28
28
  // src/utils/error.ts
29
29
  var AbortFlowError = class extends Error {
@@ -4,13 +4,13 @@ import {
4
4
  exitWithError,
5
5
  getExecutionTime,
6
6
  getFallbackApisOrExit
7
- } from "./ZIYSHX6D.js";
7
+ } from "./O5NRRTPS.js";
8
8
  import {
9
9
  require_dist
10
- } from "./EIHBO33S.js";
10
+ } from "./ZH7E3R54.js";
11
11
  import {
12
12
  redocVersion
13
- } from "./FP2VGYMF.js";
13
+ } from "./YMIVTRT4.js";
14
14
  import {
15
15
  require_json_pointer,
16
16
  require_openapi_sampler
@@ -21,7 +21,7 @@ import {
21
21
  require_fast_deep_equal,
22
22
  require_json_schema_traverse,
23
23
  require_pluralize
24
- } from "./OEYVENNB.js";
24
+ } from "./ZKG4D7JN.js";
25
25
  import {
26
26
  __commonJS,
27
27
  __esm,
@@ -4,7 +4,7 @@ const require = __createRequire(import.meta.url);
4
4
  // package.json
5
5
  var package_default = {
6
6
  name: "@redocly/cli",
7
- version: "2.34.0",
7
+ version: "2.35.0",
8
8
  description: "",
9
9
  license: "MIT",
10
10
  bin: {
@@ -49,8 +49,8 @@ var package_default = {
49
49
  "@opentelemetry/sdk-trace-node": "2.8.0",
50
50
  "@opentelemetry/semantic-conventions": "1.41.1",
51
51
  "@redocly/cli-otel": "0.3.1",
52
- "@redocly/openapi-core": "2.34.0",
53
- "@redocly/respect-core": "2.34.0",
52
+ "@redocly/openapi-core": "2.35.0",
53
+ "@redocly/respect-core": "2.35.0",
54
54
  "@types/cookie": "0.6.0",
55
55
  "@types/har-format": "^1.2.16",
56
56
  "@types/react": "^17.0.0 || ^18.2.21 || ^19.2.16",
@@ -2,7 +2,7 @@ import { createRequire as __createRequire } from 'node:module';
2
2
  const require = __createRequire(import.meta.url);
3
3
  import {
4
4
  require_supports_color
5
- } from "./OEYVENNB.js";
5
+ } from "./ZKG4D7JN.js";
6
6
  import {
7
7
  __commonJS,
8
8
  __require
@@ -2621,7 +2621,7 @@ var require_codegen = __commonJS({
2621
2621
  return "{" + opts._n + super.render(opts) + "}" + opts._n;
2622
2622
  }
2623
2623
  };
2624
- var Root10 = class extends ParentNode {
2624
+ var Root11 = class extends ParentNode {
2625
2625
  };
2626
2626
  var Else = class extends BlockNode {
2627
2627
  };
@@ -2810,7 +2810,7 @@ var require_codegen = __commonJS({
2810
2810
  this.opts = { ...opts, _n: opts.lines ? "\n" : "" };
2811
2811
  this._extScope = extScope;
2812
2812
  this._scope = new scope_1.Scope({ parent: extScope });
2813
- this._nodes = [new Root10()];
2813
+ this._nodes = [new Root11()];
2814
2814
  }
2815
2815
  toString() {
2816
2816
  return this._root.render(this.opts);
@@ -10549,7 +10549,7 @@ var require_codegen2 = __commonJS({
10549
10549
  return "{" + opts._n + super.render(opts) + "}" + opts._n;
10550
10550
  }
10551
10551
  };
10552
- var Root10 = class extends ParentNode {
10552
+ var Root11 = class extends ParentNode {
10553
10553
  };
10554
10554
  var Else = class extends BlockNode {
10555
10555
  };
@@ -10738,7 +10738,7 @@ var require_codegen2 = __commonJS({
10738
10738
  this.opts = { ...opts, _n: opts.lines ? "\n" : "" };
10739
10739
  this._extScope = extScope;
10740
10740
  this._scope = new scope_1.Scope({ parent: extScope });
10741
- this._nodes = [new Root10()];
10741
+ this._nodes = [new Root11()];
10742
10742
  }
10743
10743
  toString() {
10744
10744
  return this._root.render(this.opts);
@@ -23757,8 +23757,225 @@ var Arazzo1Types = {
23757
23757
  DeviceAuthorization: Oas3_2Types.DeviceAuthorization
23758
23758
  };
23759
23759
 
23760
- // ../core/lib/types/overlay.js
23760
+ // ../core/lib/types/arazzo1_1.js
23761
23761
  var Root8 = {
23762
+ ...Arazzo1Types.Root,
23763
+ properties: {
23764
+ ...Arazzo1Types.Root.properties,
23765
+ $self: {
23766
+ type: "string",
23767
+ description: "This string MUST be in the form of a URI-reference as defined by [RFC3986] Section 4.1. The $self field provides the self-assigned URI of this document, which also serves as its base URI in accordance with [RFC3986] Section 5.1.1."
23768
+ }
23769
+ }
23770
+ };
23771
+ var SourceDescriptions2 = {
23772
+ properties: {},
23773
+ items: (value) => {
23774
+ if (value?.type === "openapi") {
23775
+ return "OpenAPISourceDescription";
23776
+ } else if (value?.type === "asyncapi") {
23777
+ return "AsyncAPISourceDescription";
23778
+ } else {
23779
+ return "ArazzoSourceDescription";
23780
+ }
23781
+ }
23782
+ };
23783
+ var AsyncAPISourceDescription = {
23784
+ properties: {
23785
+ name: {
23786
+ type: "string",
23787
+ description: `REQUIRED. A unique name for the source description. Tools and libraries MAY use the name to uniquely identify a source description, therefore, it is RECOMMENDED to follow common programming naming conventions. SHOULD conform to the regular expression [A-Za-z0-9_-]+.`
23788
+ },
23789
+ type: {
23790
+ type: "string",
23791
+ enum: ["asyncapi"],
23792
+ description: 'The type of source description. Possible values are "asyncapi".'
23793
+ },
23794
+ url: {
23795
+ type: "string",
23796
+ description: "REQUIRED. A URL to a source description to be used by a workflow. If a relative reference is used, it MUST be in the form of a URI-reference as defined by [RFC3986] Section 4.2."
23797
+ }
23798
+ },
23799
+ required: ["name", "type", "url"],
23800
+ extensionsPrefix: "x-",
23801
+ description: "Describes a source description (such as an AsyncAPI description) that will be referenced by one or more workflows described within an Arazzo Description."
23802
+ };
23803
+ var Parameter7 = {
23804
+ ...Arazzo1Types.Parameter,
23805
+ properties: {
23806
+ ...Arazzo1Types.Parameter.properties,
23807
+ in: {
23808
+ type: "string",
23809
+ enum: ["header", "query", "path", "cookie", "querystring"],
23810
+ description: 'The location of the parameter. Possible values are "path", "query", "querystring", "header", or "cookie". When the step in context specifies a workflowId, then all parameters map to workflow inputs. In all other scenarios (e.g., a step specifies an operationId), the in field MUST be specified.'
23811
+ }
23812
+ }
23813
+ };
23814
+ var Step2 = {
23815
+ ...Arazzo1Types.Step,
23816
+ properties: {
23817
+ ...Arazzo1Types.Step.properties,
23818
+ channelPath: {
23819
+ type: "string",
23820
+ description: "A reference to a Source Description Object combined with a JSON Pointer to reference an AsyncAPI channel. This field is mutually exclusive of the operationId, operationPath, and workflowId fields respectively. A Runtime Expression syntax MUST be used to identify the source description document."
23821
+ },
23822
+ action: {
23823
+ type: "string",
23824
+ enum: ["send", "receive"],
23825
+ description: 'Describes the intent of the message flow for an AsyncAPI operation. Possible values are "send" or "receive".'
23826
+ },
23827
+ correlationId: {
23828
+ type: "string",
23829
+ description: 'A Runtime Expression used to correlate a request with a response when interacting with asynchronous APIs. Applies to "receive" steps.'
23830
+ },
23831
+ timeout: {
23832
+ type: "integer",
23833
+ minimum: 0,
23834
+ description: "A non-negative integer indicating the maximum amount of time (in milliseconds) to wait before timing out."
23835
+ },
23836
+ dependsOn: {
23837
+ type: "array",
23838
+ items: { type: "string" },
23839
+ description: "A list of steps that MUST be completed before this step can be executed. Each value provided MUST be a stepId."
23840
+ }
23841
+ },
23842
+ requiredOneOf: ["x-operation", "operationId", "operationPath", "channelPath", "workflowId"]
23843
+ };
23844
+ var JSONPathExpression = {
23845
+ properties: {
23846
+ type: { type: "string", enum: ["jsonpath"] },
23847
+ version: { type: "string", enum: ["rfc9535", "draft-goessner-dispatch-jsonpath-00"] }
23848
+ },
23849
+ required: ["type", "version"]
23850
+ };
23851
+ var XPathExpression = {
23852
+ properties: {
23853
+ type: { type: "string", enum: ["xpath"] },
23854
+ version: { type: "string", enum: ["xpath-31", "xpath-30", "xpath-20", "xpath-10"] }
23855
+ },
23856
+ required: ["type", "version"]
23857
+ };
23858
+ var JSONPointerExpression = {
23859
+ properties: {
23860
+ type: { type: "string", enum: ["jsonpointer"] },
23861
+ version: { type: "string", enum: ["rfc6901"] }
23862
+ },
23863
+ required: ["type", "version"]
23864
+ };
23865
+ var ExpressionType = {
23866
+ properties: {
23867
+ type: {
23868
+ type: "string",
23869
+ enum: ["jsonpath", "xpath", "jsonpointer"],
23870
+ description: "REQUIRED. The selector type. The options allowed are jsonpath, xpath, or jsonpointer."
23871
+ },
23872
+ version: {
23873
+ type: "string",
23874
+ description: "REQUIRED. A short hand string representing the version of the expression type being used."
23875
+ }
23876
+ },
23877
+ required: ["type", "version"]
23878
+ };
23879
+ var expressionTypeResolver = (value) => {
23880
+ if (value?.type === "jsonpath") {
23881
+ return "JSONPathExpression";
23882
+ } else if (value?.type === "xpath") {
23883
+ return "XPathExpression";
23884
+ } else if (value?.type === "jsonpointer") {
23885
+ return "JSONPointerExpression";
23886
+ } else {
23887
+ return "ExpressionType";
23888
+ }
23889
+ };
23890
+ var expressionTypeOrEnumResolver = (enumValues, description, { optional = true } = {}) => (value) => {
23891
+ if (optional && !value) {
23892
+ return void 0;
23893
+ } else if (typeof value === "string") {
23894
+ return { enum: enumValues, description };
23895
+ } else {
23896
+ return expressionTypeResolver(value);
23897
+ }
23898
+ };
23899
+ var CriterionObject2 = {
23900
+ ...Arazzo1Types.CriterionObject,
23901
+ properties: {
23902
+ ...Arazzo1Types.CriterionObject.properties,
23903
+ type: expressionTypeOrEnumResolver(["regex", "jsonpath", "simple", "xpath"], "The type of condition to be applied.")
23904
+ }
23905
+ };
23906
+ var SelectorObject = {
23907
+ properties: {
23908
+ context: {
23909
+ type: "string",
23910
+ description: "REQUIRED. A Runtime Expression that evaluates to structured data (e.g., $response.body) the selector is applied to."
23911
+ },
23912
+ selector: {
23913
+ type: "string",
23914
+ description: "REQUIRED. The selector expression (JSONPath, XPath, or JSON Pointer) used to extract data from the context."
23915
+ },
23916
+ type: expressionTypeOrEnumResolver(["jsonpath", "xpath", "jsonpointer"], "The type of selector to be applied.", { optional: false })
23917
+ },
23918
+ required: ["context", "selector", "type"],
23919
+ extensionsPrefix: "x-",
23920
+ description: "An object used to extract specific data from structured content using JSONPath, XPath, or JSON Pointer expressions."
23921
+ };
23922
+ var Outputs2 = {
23923
+ properties: {},
23924
+ additionalProperties: (value) => {
23925
+ if (isPlainObject(value)) {
23926
+ return "SelectorObject";
23927
+ } else {
23928
+ return { type: "string" };
23929
+ }
23930
+ },
23931
+ description: "A map between a friendly name and a dynamic output value defined using a Runtime Expression or a Selector Object. The name MUST use keys that match the regular expression: ^[a-zA-Z0-9_.-]+$."
23932
+ };
23933
+ var Replacement2 = {
23934
+ ...Arazzo1Types.Replacement,
23935
+ properties: {
23936
+ ...Arazzo1Types.Replacement.properties,
23937
+ // The value can be a constant (including a plain object), a runtime expression,
23938
+ // or a Selector Object. Only validate it as a Selector Object when it carries the
23939
+ // selector-specific `selector` key; otherwise keep the permissive "any" behavior.
23940
+ value: (value) => isPlainObject(value) && "selector" in value ? "SelectorObject" : {},
23941
+ targetSelectorType: expressionTypeOrEnumResolver(["jsonpath", "xpath", "jsonpointer"], "The type of selector used in the target field.")
23942
+ }
23943
+ };
23944
+ var SuccessActionObject2 = {
23945
+ ...Arazzo1Types.SuccessActionObject,
23946
+ properties: {
23947
+ ...Arazzo1Types.SuccessActionObject.properties,
23948
+ parameters: "Parameters"
23949
+ }
23950
+ };
23951
+ var FailureActionObject2 = {
23952
+ ...Arazzo1Types.FailureActionObject,
23953
+ properties: {
23954
+ ...Arazzo1Types.FailureActionObject.properties,
23955
+ parameters: "Parameters"
23956
+ }
23957
+ };
23958
+ var Arazzo1_1Types = {
23959
+ ...Arazzo1Types,
23960
+ Root: Root8,
23961
+ SourceDescriptions: SourceDescriptions2,
23962
+ AsyncAPISourceDescription,
23963
+ Parameter: Parameter7,
23964
+ Step: Step2,
23965
+ CriterionObject: CriterionObject2,
23966
+ JSONPathExpression,
23967
+ XPathExpression,
23968
+ JSONPointerExpression,
23969
+ ExpressionType,
23970
+ SelectorObject,
23971
+ Outputs: Outputs2,
23972
+ Replacement: Replacement2,
23973
+ SuccessActionObject: SuccessActionObject2,
23974
+ FailureActionObject: FailureActionObject2
23975
+ };
23976
+
23977
+ // ../core/lib/types/overlay.js
23978
+ var Root9 = {
23762
23979
  properties: {
23763
23980
  overlay: {
23764
23981
  type: "string",
@@ -23813,14 +24030,14 @@ var Action = {
23813
24030
  description: "This object represents one or more changes to be applied to the target document at the location defined by the target JSONPath expression"
23814
24031
  };
23815
24032
  var Overlay1Types = {
23816
- Root: Root8,
24033
+ Root: Root9,
23817
24034
  Info: Info7,
23818
24035
  Actions,
23819
24036
  Action
23820
24037
  };
23821
24038
 
23822
24039
  // ../core/lib/types/openrpc.js
23823
- var Root9 = {
24040
+ var Root10 = {
23824
24041
  properties: {
23825
24042
  openrpc: {
23826
24043
  type: "string",
@@ -24141,7 +24358,7 @@ var ExternalDocs4 = {
24141
24358
  description: "Allows referencing an external resource for extended documentation."
24142
24359
  };
24143
24360
  var OpenRpcTypes = {
24144
- Root: Root9,
24361
+ Root: Root10,
24145
24362
  Info: Info8,
24146
24363
  Contact: Contact4,
24147
24364
  License: License5,
@@ -24414,6 +24631,7 @@ var specVersions = [
24414
24631
  "async2",
24415
24632
  "async3",
24416
24633
  "arazzo1",
24634
+ "arazzo1_1",
24417
24635
  "overlay1",
24418
24636
  "openrpc1"
24419
24637
  ];
@@ -24426,6 +24644,7 @@ var typesMap = {
24426
24644
  async2: AsyncApi2Types,
24427
24645
  async3: AsyncApi3Types,
24428
24646
  arazzo1: Arazzo1Types,
24647
+ arazzo1_1: Arazzo1_1Types,
24429
24648
  overlay1: Overlay1Types,
24430
24649
  openrpc1: OpenRpcTypes
24431
24650
  };
@@ -24748,12 +24967,12 @@ var builtInArazzo1Rules = [
24748
24967
  "stepId-unique",
24749
24968
  "sourceDescription-name-unique",
24750
24969
  "sourceDescriptions-not-empty",
24970
+ "spec-step-mutually-exclusive-fields",
24751
24971
  "workflow-dependsOn",
24752
24972
  "outputs-defined",
24753
24973
  "parameters-unique",
24754
24974
  "step-onSuccess-unique",
24755
24975
  "step-onFailure-unique",
24756
- "respect-supported-versions",
24757
24976
  "requestBody-replacements-unique",
24758
24977
  "no-criteria-xpath",
24759
24978
  "criteria-unique",
@@ -24832,6 +25051,7 @@ var configGovernanceProperties = {
24832
25051
  async2Rules: "Rules",
24833
25052
  async3Rules: "Rules",
24834
25053
  arazzo1Rules: "Rules",
25054
+ arazzo1_1Rules: "Rules",
24835
25055
  overlay1Rules: "Rules",
24836
25056
  openrpc1Rules: "Rules",
24837
25057
  preprocessors: "Preprocessors",
@@ -24842,6 +25062,7 @@ var configGovernanceProperties = {
24842
25062
  async2Preprocessors: "Preprocessors",
24843
25063
  async3Preprocessors: "Preprocessors",
24844
25064
  arazzo1Preprocessors: "Preprocessors",
25065
+ arazzo1_1Preprocessors: "Preprocessors",
24845
25066
  overlay1Preprocessors: "Preprocessors",
24846
25067
  openrpc1Preprocessors: "Preprocessors",
24847
25068
  decorators: "Decorators",
@@ -24852,6 +25073,7 @@ var configGovernanceProperties = {
24852
25073
  async2Decorators: "Decorators",
24853
25074
  async3Decorators: "Decorators",
24854
25075
  arazzo1Decorators: "Decorators",
25076
+ arazzo1_1Decorators: "Decorators",
24855
25077
  overlay1Decorators: "Decorators",
24856
25078
  openrpc1Decorators: "Decorators"
24857
25079
  };
@@ -25462,82 +25684,6 @@ var StatsAsync3 = (statsAccumulator) => {
25462
25684
  import * as fs2 from "node:fs";
25463
25685
  import * as path4 from "node:path";
25464
25686
 
25465
- // ../core/lib/typings/arazzo.js
25466
- var VERSION_PATTERN = /^1\.0\.\d+(-.+)?$/;
25467
- var ARAZZO_VERSIONS_SUPPORTED_BY_RESPECT = ["1.0.1"];
25468
-
25469
- // ../core/lib/detect-spec.js
25470
- var specVersions2 = [
25471
- "oas2",
25472
- "oas3_0",
25473
- "oas3_1",
25474
- "oas3_2",
25475
- "async2",
25476
- "async3",
25477
- "arazzo1",
25478
- "overlay1",
25479
- "openrpc1"
25480
- ];
25481
- function getMajorSpecVersion(version) {
25482
- if (version === "oas2") {
25483
- return "oas2";
25484
- } else if (version === "async2") {
25485
- return "async2";
25486
- } else if (version === "async3") {
25487
- return "async3";
25488
- } else if (version === "arazzo1") {
25489
- return "arazzo1";
25490
- } else if (version === "overlay1") {
25491
- return "overlay1";
25492
- } else if (version === "openrpc1") {
25493
- return "openrpc1";
25494
- } else {
25495
- return "oas3";
25496
- }
25497
- }
25498
- function detectSpec(root) {
25499
- if (!isPlainObject(root)) {
25500
- throw new Error(`Document must be JSON object, got ${typeof root}`);
25501
- }
25502
- if (typeof root.openrpc === "string" && root.openrpc.startsWith("1.")) {
25503
- return "openrpc1";
25504
- }
25505
- if (root.openapi && typeof root.openapi !== "string") {
25506
- throw new Error(`Invalid OpenAPI version: should be a string but got "${typeof root.openapi}"`);
25507
- }
25508
- if (typeof root.openapi === "string" && root.openapi.startsWith("3.0.")) {
25509
- return "oas3_0";
25510
- }
25511
- if (typeof root.openapi === "string" && root.openapi.startsWith("3.1.")) {
25512
- return "oas3_1";
25513
- }
25514
- if (typeof root.openapi === "string" && root.openapi.startsWith("3.2.")) {
25515
- return "oas3_2";
25516
- }
25517
- if (root.swagger && root.swagger === "2.0") {
25518
- return "oas2";
25519
- }
25520
- if (root.openapi || root.swagger) {
25521
- throw new Error(`Unsupported OpenAPI version: ${root.openapi || root.swagger}`);
25522
- }
25523
- if (typeof root.asyncapi === "string" && root.asyncapi.startsWith("2.")) {
25524
- return "async2";
25525
- }
25526
- if (typeof root.asyncapi === "string" && root.asyncapi.startsWith("3.")) {
25527
- return "async3";
25528
- }
25529
- if (root.asyncapi) {
25530
- throw new Error(`Unsupported AsyncAPI version: ${root.asyncapi}`);
25531
- }
25532
- if (typeof root.arazzo === "string" && VERSION_PATTERN.test(root.arazzo)) {
25533
- return "arazzo1";
25534
- }
25535
- if (typeof root.overlay === "string" && VERSION_PATTERN.test(root.overlay)) {
25536
- return "overlay1";
25537
- }
25538
- throw new Error(`Unsupported specification`);
25539
- }
25540
-
25541
25687
  // ../core/node_modules/js-yaml/dist/js-yaml.mjs
25542
25688
  var __create = Object.create;
25543
25689
  var __defProp = Object.defineProperty;
@@ -28290,6 +28436,7 @@ var Config = class _Config {
28290
28436
  async2: group({ ...resolvedConfig.rules, ...resolvedConfig.async2Rules }),
28291
28437
  async3: group({ ...resolvedConfig.rules, ...resolvedConfig.async3Rules }),
28292
28438
  arazzo1: group({ ...resolvedConfig.rules, ...resolvedConfig.arazzo1Rules }),
28439
+ arazzo1_1: group({ ...resolvedConfig.rules, ...resolvedConfig.arazzo1_1Rules }),
28293
28440
  overlay1: group({ ...resolvedConfig.rules, ...resolvedConfig.overlay1Rules }),
28294
28441
  openrpc1: group({ ...resolvedConfig.rules, ...resolvedConfig.openrpc1Rules })
28295
28442
  };
@@ -28319,6 +28466,10 @@ var Config = class _Config {
28319
28466
  ...resolvedConfig.preprocessors,
28320
28467
  ...resolvedConfig.arazzo1Preprocessors
28321
28468
  },
28469
+ arazzo1_1: {
28470
+ ...resolvedConfig.preprocessors,
28471
+ ...resolvedConfig.arazzo1_1Preprocessors
28472
+ },
28322
28473
  overlay1: {
28323
28474
  ...resolvedConfig.preprocessors,
28324
28475
  ...resolvedConfig.overlay1Preprocessors
@@ -28336,6 +28487,7 @@ var Config = class _Config {
28336
28487
  async2: { ...resolvedConfig.decorators, ...resolvedConfig.async2Decorators },
28337
28488
  async3: { ...resolvedConfig.decorators, ...resolvedConfig.async3Decorators },
28338
28489
  arazzo1: { ...resolvedConfig.decorators, ...resolvedConfig.arazzo1Decorators },
28490
+ arazzo1_1: { ...resolvedConfig.decorators, ...resolvedConfig.arazzo1_1Decorators },
28339
28491
  overlay1: {
28340
28492
  ...resolvedConfig.decorators,
28341
28493
  ...resolvedConfig.overlay1Decorators
@@ -28429,6 +28581,7 @@ var Config = class _Config {
28429
28581
  extendedTypes = plugin.typeExtension.async3(extendedTypes, version);
28430
28582
  break;
28431
28583
  case "arazzo1":
28584
+ case "arazzo1_1":
28432
28585
  if (!plugin.typeExtension.arazzo1)
28433
28586
  continue;
28434
28587
  extendedTypes = plugin.typeExtension.arazzo1(extendedTypes, version);
@@ -28501,7 +28654,7 @@ var Config = class _Config {
28501
28654
  decorators: decorators8
28502
28655
  };
28503
28656
  }
28504
- // TODO: add default case for redocly.yaml
28657
+ // TODO: add rules for redocly.yaml / entities?
28505
28658
  getRulesForSpecVersion(version) {
28506
28659
  switch (version) {
28507
28660
  case "oas3":
@@ -28534,6 +28687,12 @@ var Config = class _Config {
28534
28687
  this.plugins.forEach((p2) => p2.rules?.arazzo1 && arazzo1Rules.push(p2.rules.arazzo1));
28535
28688
  this.plugins.forEach((p2) => p2.decorators?.arazzo1 && arazzo1Rules.push(p2.decorators.arazzo1));
28536
28689
  return arazzo1Rules;
28690
+ case "arazzo1_1":
28691
+ const arazzo1_1Rules = [];
28692
+ this.plugins.forEach((p2) => p2.preprocessors?.arazzo1_1 && arazzo1_1Rules.push(p2.preprocessors.arazzo1_1));
28693
+ this.plugins.forEach((p2) => p2.rules?.arazzo1_1 && arazzo1_1Rules.push(p2.rules.arazzo1_1));
28694
+ this.plugins.forEach((p2) => p2.decorators?.arazzo1_1 && arazzo1_1Rules.push(p2.decorators.arazzo1_1));
28695
+ return arazzo1_1Rules;
28537
28696
  case "overlay1":
28538
28697
  const overlay1Rules = [];
28539
28698
  this.plugins.forEach((p2) => p2.preprocessors?.overlay1 && overlay1Rules.push(p2.preprocessors.overlay1));
@@ -28550,7 +28709,7 @@ var Config = class _Config {
28550
28709
  }
28551
28710
  skipRules(rules8) {
28552
28711
  for (const ruleId of rules8 || []) {
28553
- for (const version of specVersions2) {
28712
+ for (const version of specVersions) {
28554
28713
  if (this.rules[version][ruleId]) {
28555
28714
  this.rules[version][ruleId] = "off";
28556
28715
  } else if (Array.isArray(this.rules[version].assertions)) {
@@ -28565,7 +28724,7 @@ var Config = class _Config {
28565
28724
  }
28566
28725
  skipPreprocessors(preprocessors8) {
28567
28726
  for (const preprocessorId of preprocessors8 || []) {
28568
- for (const version of specVersions2) {
28727
+ for (const version of specVersions) {
28569
28728
  if (this.preprocessors[version][preprocessorId]) {
28570
28729
  this.preprocessors[version][preprocessorId] = "off";
28571
28730
  }
@@ -28574,7 +28733,7 @@ var Config = class _Config {
28574
28733
  }
28575
28734
  skipDecorators(decorators8) {
28576
28735
  for (const decoratorId of decorators8 || []) {
28577
- for (const version of specVersions2) {
28736
+ for (const version of specVersions) {
28578
28737
  if (this.decorators[version][decoratorId]) {
28579
28738
  this.decorators[version][decoratorId] = "off";
28580
28739
  }
@@ -28589,10 +28748,10 @@ function isDefined(x2) {
28589
28748
  }
28590
28749
 
28591
28750
  // ../core/lib/config/rules.js
28592
- function initRules(rules8, config, type, oasVersion) {
28751
+ function initRules(rules8, config, type, specVersion) {
28593
28752
  return rules8.flatMap((ruleset) => Object.keys(ruleset).map((ruleId) => {
28594
28753
  const rule = ruleset[ruleId];
28595
- const ruleSettings = type === "rules" ? config.getRuleSettings(ruleId, oasVersion) : type === "preprocessors" ? config.getPreprocessorSettings(ruleId, oasVersion) : config.getDecoratorSettings(ruleId, oasVersion);
28754
+ const ruleSettings = type === "rules" ? config.getRuleSettings(ruleId, specVersion) : type === "preprocessors" ? config.getPreprocessorSettings(ruleId, specVersion) : config.getDecoratorSettings(ruleId, specVersion);
28596
28755
  if (ruleSettings.severity === "off") {
28597
28756
  return void 0;
28598
28757
  }
@@ -29319,13 +29478,14 @@ var decorators7 = {};
29319
29478
  var SourceDescriptionType = () => {
29320
29479
  return {
29321
29480
  SourceDescriptions: {
29322
- enter(sourceDescriptions, { report, location }) {
29481
+ enter(sourceDescriptions, { report, location, specVersion }) {
29323
29482
  if (!sourceDescriptions.length)
29324
29483
  return;
29484
+ const allowedTypes = specVersion === "arazzo1" ? ["openapi", "arazzo"] : ["openapi", "arazzo", "asyncapi"];
29325
29485
  for (const sourceDescription of sourceDescriptions) {
29326
- if (!["openapi", "arazzo"].includes(sourceDescription?.type)) {
29486
+ if (!allowedTypes.includes(sourceDescription?.type)) {
29327
29487
  report({
29328
- message: "The `type` property of the `sourceDescription` object must be either `openapi` or `arazzo`.",
29488
+ message: `The \`type\` property of the \`sourceDescription\` object must be either ${allowedTypes.map((t2) => `\`${t2}\``).join(" or ")}.`,
29329
29489
  location: location.child([sourceDescriptions.indexOf(sourceDescription)]),
29330
29490
  reference: "https://redocly.com/docs/cli/rules/arazzo/sourcedescription-type"
29331
29491
  });
@@ -30134,24 +30294,6 @@ var NoXSecuritySchemeNameWithoutOpenAPI = () => {
30134
30294
  };
30135
30295
  };
30136
30296
 
30137
- // ../core/lib/rules/respect/respect-supported-versions.js
30138
- var RespectSupportedVersions = () => {
30139
- const supportedVersions = ARAZZO_VERSIONS_SUPPORTED_BY_RESPECT.join(", ");
30140
- return {
30141
- Root: {
30142
- enter(root, { report, location }) {
30143
- if (!ARAZZO_VERSIONS_SUPPORTED_BY_RESPECT.includes(root.arazzo)) {
30144
- report({
30145
- message: `Only ${supportedVersions} Arazzo ${pluralize("version is", ARAZZO_VERSIONS_SUPPORTED_BY_RESPECT.length)} fully supported by Respect.`,
30146
- location: location.child("arazzo"),
30147
- reference: "https://redocly.com/docs/cli/rules/respect/respect-supported-versions"
30148
- });
30149
- }
30150
- }
30151
- }
30152
- };
30153
- };
30154
-
30155
30297
  // ../core/lib/rules/respect/x-security-scheme-name-reference.js
30156
30298
  var XSecuritySchemeNameReference = () => {
30157
30299
  let sourceDescriptionsCount = 0;
@@ -30548,6 +30690,32 @@ var SourceDescriptionsNotEmpty = () => {
30548
30690
  };
30549
30691
  };
30550
30692
 
30693
+ // ../core/lib/rules/arazzo/spec-step-mutually-exclusive-fields.js
30694
+ var MUTUALLY_EXCLUSIVE_FIELDS = [
30695
+ "x-operation",
30696
+ "operationId",
30697
+ "operationPath",
30698
+ "channelPath",
30699
+ // added in Arazzo 1.1
30700
+ "workflowId"
30701
+ ];
30702
+ var SpecStepMutuallyExclusiveFields = () => {
30703
+ return {
30704
+ Step: {
30705
+ enter(step, { report, location }) {
30706
+ const usedFields = MUTUALLY_EXCLUSIVE_FIELDS.filter((field) => Object.hasOwn(step, field));
30707
+ if (usedFields.length > 1) {
30708
+ report({
30709
+ message: `A step can only use one of the following mutually exclusive fields: ${usedFields.map((field) => `\`${field}\``).join(", ")}.`,
30710
+ location: usedFields.map((field) => location.child([field]).key()),
30711
+ reference: "https://redocly.com/docs/cli/rules/arazzo/spec-step-mutually-exclusive-fields"
30712
+ });
30713
+ }
30714
+ }
30715
+ }
30716
+ };
30717
+ };
30718
+
30551
30719
  // ../core/lib/rules/arazzo/step-onFailure-unique.js
30552
30720
  var StepOnFailureUnique = () => {
30553
30721
  return {
@@ -30725,10 +30893,10 @@ var rules = {
30725
30893
  "outputs-defined": OutputsDefined,
30726
30894
  "parameters-unique": ParametersUnique,
30727
30895
  "requestBody-replacements-unique": RequestBodyReplacementsUnique,
30728
- "respect-supported-versions": RespectSupportedVersions,
30729
30896
  "sourceDescription-name-unique": SourceDescriptionsNameUnique,
30730
30897
  "sourceDescription-type": SourceDescriptionType,
30731
30898
  "sourceDescriptions-not-empty": SourceDescriptionsNotEmpty,
30899
+ "spec-step-mutually-exclusive-fields": SpecStepMutuallyExclusiveFields,
30732
30900
  "step-onFailure-unique": StepOnFailureUnique,
30733
30901
  "step-onSuccess-unique": StepOnSuccessUnique,
30734
30902
  "stepId-unique": StepIdUnique,
@@ -30755,6 +30923,78 @@ var InfoContact = () => {
30755
30923
  };
30756
30924
  };
30757
30925
 
30926
+ // ../core/lib/typings/overlay.js
30927
+ var VERSION_PATTERN = /^1\.0\.\d+(-.+)?$/;
30928
+
30929
+ // ../core/lib/detect-spec.js
30930
+ function getMajorSpecVersion(version) {
30931
+ if (version.startsWith("oas3")) {
30932
+ return "oas3";
30933
+ } else if (version === "oas2") {
30934
+ return "oas2";
30935
+ } else if (version === "async2") {
30936
+ return "async2";
30937
+ } else if (version === "async3") {
30938
+ return "async3";
30939
+ } else if (version === "arazzo1" || version === "arazzo1_1") {
30940
+ return "arazzo1";
30941
+ } else if (version === "overlay1") {
30942
+ return "overlay1";
30943
+ } else if (version === "openrpc1") {
30944
+ return "openrpc1";
30945
+ } else {
30946
+ return "oas3";
30947
+ }
30948
+ }
30949
+ function detectSpec(root) {
30950
+ if (!isPlainObject(root)) {
30951
+ throw new Error(`Document must be JSON object, got ${typeof root}`);
30952
+ }
30953
+ if (typeof root.openrpc === "string" && root.openrpc.startsWith("1.")) {
30954
+ return "openrpc1";
30955
+ }
30956
+ if (root.openapi && typeof root.openapi !== "string") {
30957
+ throw new Error(`Invalid OpenAPI version: should be a string but got "${typeof root.openapi}"`);
30958
+ }
30959
+ if (typeof root.openapi === "string" && root.openapi.startsWith("3.0.")) {
30960
+ return "oas3_0";
30961
+ }
30962
+ if (typeof root.openapi === "string" && root.openapi.startsWith("3.1.")) {
30963
+ return "oas3_1";
30964
+ }
30965
+ if (typeof root.openapi === "string" && root.openapi.startsWith("3.2.")) {
30966
+ return "oas3_2";
30967
+ }
30968
+ if (root.swagger && root.swagger === "2.0") {
30969
+ return "oas2";
30970
+ }
30971
+ if (root.openapi || root.swagger) {
30972
+ throw new Error(`Unsupported OpenAPI version: ${root.openapi || root.swagger}`);
30973
+ }
30974
+ if (typeof root.asyncapi === "string" && root.asyncapi.startsWith("2.")) {
30975
+ return "async2";
30976
+ }
30977
+ if (typeof root.asyncapi === "string" && root.asyncapi.startsWith("3.")) {
30978
+ return "async3";
30979
+ }
30980
+ if (root.asyncapi) {
30981
+ throw new Error(`Unsupported AsyncAPI version: ${root.asyncapi}`);
30982
+ }
30983
+ if (typeof root.arazzo === "string" && root.arazzo.startsWith("1.0.")) {
30984
+ return "arazzo1";
30985
+ }
30986
+ if (typeof root.arazzo === "string" && root.arazzo.startsWith("1.1.")) {
30987
+ return "arazzo1_1";
30988
+ }
30989
+ if (root.arazzo) {
30990
+ throw new Error(`Unsupported Arazzo version: ${root.arazzo}`);
30991
+ }
30992
+ if (typeof root.overlay === "string" && VERSION_PATTERN.test(root.overlay)) {
30993
+ return "overlay1";
30994
+ }
30995
+ throw new Error(`Unsupported specification`);
30996
+ }
30997
+
30758
30998
  // ../core/lib/rules/common/info-license-strict.js
30759
30999
  var InfoLicenseStrict = () => {
30760
31000
  let specVersion;
@@ -31728,7 +31968,7 @@ var validateRequiredPathParams = ({ templateParams, definedOperationParams, defi
31728
31968
  };
31729
31969
 
31730
31970
  // ../core/lib/rules/common/path-segment-plural.js
31731
- var import_pluralize3 = __toESM(require_pluralize(), 1);
31971
+ var import_pluralize2 = __toESM(require_pluralize(), 1);
31732
31972
  var PathSegmentPlural = (opts) => {
31733
31973
  const { ignoreLastPathSegment, exceptions } = opts;
31734
31974
  return {
@@ -31744,7 +31984,7 @@ var PathSegmentPlural = (opts) => {
31744
31984
  for (const pathSegment of pathSegments) {
31745
31985
  if (exceptions && exceptions.includes(pathSegment))
31746
31986
  continue;
31747
- if (!isPathParameter(pathSegment) && import_pluralize3.default.isSingular(pathSegment)) {
31987
+ if (!isPathParameter(pathSegment) && import_pluralize2.default.isSingular(pathSegment)) {
31748
31988
  report({
31749
31989
  message: `path segment \`${pathSegment}\` should be plural.`,
31750
31990
  location: location.key(),
@@ -33651,10 +33891,34 @@ var all = {
33651
33891
  "outputs-defined": "error",
33652
33892
  "parameters-unique": "error",
33653
33893
  "requestBody-replacements-unique": "error",
33654
- "respect-supported-versions": "off",
33655
33894
  "sourceDescription-name-unique": "error",
33656
33895
  "sourceDescription-type": "error",
33657
33896
  "sourceDescriptions-not-empty": "error",
33897
+ "spec-step-mutually-exclusive-fields": "error",
33898
+ "step-onFailure-unique": "error",
33899
+ "step-onSuccess-unique": "error",
33900
+ "stepId-unique": "error",
33901
+ "workflow-dependsOn": "error",
33902
+ "workflowId-unique": "error",
33903
+ "x-security-scheme-name-reference": "off",
33904
+ "x-security-scheme-required-values": "off"
33905
+ },
33906
+ arazzo1_1Rules: {
33907
+ "criteria-unique": "error",
33908
+ "no-criteria-xpath": "off",
33909
+ "no-enum-type-mismatch": "error",
33910
+ "no-mixed-number-range-constraints": "error",
33911
+ "no-required-schema-properties-undefined": "error",
33912
+ "no-schema-type-mismatch": "error",
33913
+ "no-x-security-both-scheme-and-scheme-name": "off",
33914
+ "no-x-security-scheme-name-without-openapi": "off",
33915
+ "outputs-defined": "error",
33916
+ "parameters-unique": "error",
33917
+ "requestBody-replacements-unique": "error",
33918
+ "sourceDescription-name-unique": "error",
33919
+ "sourceDescription-type": "error",
33920
+ "sourceDescriptions-not-empty": "error",
33921
+ "spec-step-mutually-exclusive-fields": "error",
33658
33922
  "step-onFailure-unique": "error",
33659
33923
  "step-onSuccess-unique": "error",
33660
33924
  "stepId-unique": "error",
@@ -33946,10 +34210,34 @@ var minimal = {
33946
34210
  "outputs-defined": "off",
33947
34211
  "parameters-unique": "off",
33948
34212
  "requestBody-replacements-unique": "off",
33949
- "respect-supported-versions": "off",
33950
34213
  "sourceDescription-name-unique": "off",
33951
34214
  "sourceDescription-type": "off",
33952
34215
  "sourceDescriptions-not-empty": "off",
34216
+ "spec-step-mutually-exclusive-fields": "warn",
34217
+ "step-onFailure-unique": "off",
34218
+ "step-onSuccess-unique": "off",
34219
+ "stepId-unique": "error",
34220
+ "workflow-dependsOn": "off",
34221
+ "workflowId-unique": "error",
34222
+ "x-security-scheme-name-reference": "off",
34223
+ "x-security-scheme-required-values": "off"
34224
+ },
34225
+ arazzo1_1Rules: {
34226
+ "criteria-unique": "off",
34227
+ "no-criteria-xpath": "off",
34228
+ "no-enum-type-mismatch": "warn",
34229
+ "no-mixed-number-range-constraints": "off",
34230
+ "no-required-schema-properties-undefined": "warn",
34231
+ "no-schema-type-mismatch": "warn",
34232
+ "no-x-security-both-scheme-and-scheme-name": "off",
34233
+ "no-x-security-scheme-name-without-openapi": "off",
34234
+ "outputs-defined": "off",
34235
+ "parameters-unique": "off",
34236
+ "requestBody-replacements-unique": "off",
34237
+ "sourceDescription-name-unique": "off",
34238
+ "sourceDescription-type": "off",
34239
+ "sourceDescriptions-not-empty": "off",
34240
+ "spec-step-mutually-exclusive-fields": "warn",
33953
34241
  "step-onFailure-unique": "off",
33954
34242
  "step-onSuccess-unique": "off",
33955
34243
  "stepId-unique": "error",
@@ -34241,10 +34529,34 @@ var recommendedStrict = {
34241
34529
  "outputs-defined": "error",
34242
34530
  "parameters-unique": "error",
34243
34531
  "requestBody-replacements-unique": "error",
34244
- "respect-supported-versions": "off",
34245
34532
  "sourceDescription-name-unique": "error",
34246
34533
  "sourceDescription-type": "error",
34247
34534
  "sourceDescriptions-not-empty": "error",
34535
+ "spec-step-mutually-exclusive-fields": "error",
34536
+ "step-onFailure-unique": "error",
34537
+ "step-onSuccess-unique": "error",
34538
+ "stepId-unique": "error",
34539
+ "workflow-dependsOn": "error",
34540
+ "workflowId-unique": "error",
34541
+ "x-security-scheme-name-reference": "off",
34542
+ "x-security-scheme-required-values": "off"
34543
+ },
34544
+ arazzo1_1Rules: {
34545
+ "criteria-unique": "error",
34546
+ "no-criteria-xpath": "off",
34547
+ "no-enum-type-mismatch": "error",
34548
+ "no-mixed-number-range-constraints": "error",
34549
+ "no-required-schema-properties-undefined": "error",
34550
+ "no-schema-type-mismatch": "error",
34551
+ "no-x-security-both-scheme-and-scheme-name": "off",
34552
+ "no-x-security-scheme-name-without-openapi": "off",
34553
+ "outputs-defined": "error",
34554
+ "parameters-unique": "error",
34555
+ "requestBody-replacements-unique": "error",
34556
+ "sourceDescription-name-unique": "error",
34557
+ "sourceDescription-type": "error",
34558
+ "sourceDescriptions-not-empty": "error",
34559
+ "spec-step-mutually-exclusive-fields": "error",
34248
34560
  "step-onFailure-unique": "error",
34249
34561
  "step-onSuccess-unique": "error",
34250
34562
  "stepId-unique": "error",
@@ -34536,10 +34848,34 @@ var recommended = {
34536
34848
  "outputs-defined": "warn",
34537
34849
  "parameters-unique": "error",
34538
34850
  "requestBody-replacements-unique": "warn",
34539
- "respect-supported-versions": "off",
34540
34851
  "sourceDescription-name-unique": "error",
34541
34852
  "sourceDescription-type": "error",
34542
34853
  "sourceDescriptions-not-empty": "error",
34854
+ "spec-step-mutually-exclusive-fields": "error",
34855
+ "step-onFailure-unique": "warn",
34856
+ "step-onSuccess-unique": "warn",
34857
+ "stepId-unique": "error",
34858
+ "workflow-dependsOn": "error",
34859
+ "workflowId-unique": "error",
34860
+ "x-security-scheme-name-reference": "off",
34861
+ "x-security-scheme-required-values": "off"
34862
+ },
34863
+ arazzo1_1Rules: {
34864
+ "criteria-unique": "warn",
34865
+ "no-criteria-xpath": "off",
34866
+ "no-enum-type-mismatch": "error",
34867
+ "no-mixed-number-range-constraints": "warn",
34868
+ "no-required-schema-properties-undefined": "warn",
34869
+ "no-schema-type-mismatch": "error",
34870
+ "no-x-security-both-scheme-and-scheme-name": "off",
34871
+ "no-x-security-scheme-name-without-openapi": "off",
34872
+ "outputs-defined": "warn",
34873
+ "parameters-unique": "error",
34874
+ "requestBody-replacements-unique": "warn",
34875
+ "sourceDescription-name-unique": "error",
34876
+ "sourceDescription-type": "error",
34877
+ "sourceDescriptions-not-empty": "error",
34878
+ "spec-step-mutually-exclusive-fields": "error",
34543
34879
  "step-onFailure-unique": "warn",
34544
34880
  "step-onSuccess-unique": "warn",
34545
34881
  "stepId-unique": "error",
@@ -34831,10 +35167,34 @@ var spec = {
34831
35167
  "outputs-defined": "error",
34832
35168
  "parameters-unique": "error",
34833
35169
  "requestBody-replacements-unique": "error",
34834
- "respect-supported-versions": "off",
34835
35170
  "sourceDescription-name-unique": "error",
34836
35171
  "sourceDescription-type": "error",
34837
35172
  "sourceDescriptions-not-empty": "error",
35173
+ "spec-step-mutually-exclusive-fields": "error",
35174
+ "step-onFailure-unique": "error",
35175
+ "step-onSuccess-unique": "error",
35176
+ "stepId-unique": "error",
35177
+ "workflow-dependsOn": "error",
35178
+ "workflowId-unique": "error",
35179
+ "x-security-scheme-name-reference": "off",
35180
+ "x-security-scheme-required-values": "off"
35181
+ },
35182
+ arazzo1_1Rules: {
35183
+ "criteria-unique": "error",
35184
+ "no-criteria-xpath": "off",
35185
+ "no-enum-type-mismatch": "off",
35186
+ "no-mixed-number-range-constraints": "off",
35187
+ "no-required-schema-properties-undefined": "off",
35188
+ "no-schema-type-mismatch": "off",
35189
+ "no-x-security-both-scheme-and-scheme-name": "off",
35190
+ "no-x-security-scheme-name-without-openapi": "off",
35191
+ "outputs-defined": "error",
35192
+ "parameters-unique": "error",
35193
+ "requestBody-replacements-unique": "error",
35194
+ "sourceDescription-name-unique": "error",
35195
+ "sourceDescription-type": "error",
35196
+ "sourceDescriptions-not-empty": "error",
35197
+ "spec-step-mutually-exclusive-fields": "error",
34838
35198
  "step-onFailure-unique": "error",
34839
35199
  "step-onSuccess-unique": "error",
34840
35200
  "stepId-unique": "error",
@@ -35450,6 +35810,7 @@ function mergeExtends(rulesConfList) {
35450
35810
  async2Rules: {},
35451
35811
  async3Rules: {},
35452
35812
  arazzo1Rules: {},
35813
+ arazzo1_1Rules: {},
35453
35814
  overlay1Rules: {},
35454
35815
  openrpc1Rules: {},
35455
35816
  preprocessors: {},
@@ -35460,6 +35821,7 @@ function mergeExtends(rulesConfList) {
35460
35821
  async2Preprocessors: {},
35461
35822
  async3Preprocessors: {},
35462
35823
  arazzo1Preprocessors: {},
35824
+ arazzo1_1Preprocessors: {},
35463
35825
  overlay1Preprocessors: {},
35464
35826
  openrpc1Preprocessors: {},
35465
35827
  decorators: {},
@@ -35470,6 +35832,7 @@ function mergeExtends(rulesConfList) {
35470
35832
  async2Decorators: {},
35471
35833
  async3Decorators: {},
35472
35834
  arazzo1Decorators: {},
35835
+ arazzo1_1Decorators: {},
35473
35836
  overlay1Decorators: {},
35474
35837
  openrpc1Decorators: {}
35475
35838
  };
@@ -35493,6 +35856,8 @@ ${JSON.stringify(rulesConf, null, 2)}`);
35493
35856
  assignOnlyExistingConfig(result.async3Rules, rulesConf.rules);
35494
35857
  assignConfig(result.arazzo1Rules, rulesConf.arazzo1Rules);
35495
35858
  assignOnlyExistingConfig(result.arazzo1Rules, rulesConf.rules);
35859
+ assignConfig(result.arazzo1_1Rules, rulesConf.arazzo1_1Rules);
35860
+ assignOnlyExistingConfig(result.arazzo1_1Rules, rulesConf.rules);
35496
35861
  assignConfig(result.overlay1Rules, rulesConf.overlay1Rules);
35497
35862
  assignOnlyExistingConfig(result.overlay1Rules, rulesConf.rules);
35498
35863
  assignConfig(result.openrpc1Rules, rulesConf.openrpc1Rules);
@@ -35512,6 +35877,8 @@ ${JSON.stringify(rulesConf, null, 2)}`);
35512
35877
  assignOnlyExistingConfig(result.async3Preprocessors, rulesConf.preprocessors);
35513
35878
  assignConfig(result.arazzo1Preprocessors, rulesConf.arazzo1Preprocessors);
35514
35879
  assignOnlyExistingConfig(result.arazzo1Preprocessors, rulesConf.preprocessors);
35880
+ assignConfig(result.arazzo1_1Preprocessors, rulesConf.arazzo1_1Preprocessors);
35881
+ assignOnlyExistingConfig(result.arazzo1_1Preprocessors, rulesConf.preprocessors);
35515
35882
  assignConfig(result.overlay1Preprocessors, rulesConf.overlay1Preprocessors);
35516
35883
  assignOnlyExistingConfig(result.overlay1Preprocessors, rulesConf.preprocessors);
35517
35884
  assignConfig(result.openrpc1Preprocessors, rulesConf.openrpc1Preprocessors);
@@ -35531,6 +35898,8 @@ ${JSON.stringify(rulesConf, null, 2)}`);
35531
35898
  assignOnlyExistingConfig(result.async3Decorators, rulesConf.decorators);
35532
35899
  assignConfig(result.arazzo1Decorators, rulesConf.arazzo1Decorators);
35533
35900
  assignOnlyExistingConfig(result.arazzo1Decorators, rulesConf.decorators);
35901
+ assignConfig(result.arazzo1_1Decorators, rulesConf.arazzo1_1Decorators);
35902
+ assignOnlyExistingConfig(result.arazzo1_1Decorators, rulesConf.decorators);
35534
35903
  assignConfig(result.overlay1Decorators, rulesConf.overlay1Decorators);
35535
35904
  assignOnlyExistingConfig(result.overlay1Decorators, rulesConf.decorators);
35536
35905
  assignConfig(result.openrpc1Decorators, rulesConf.openrpc1Decorators);
@@ -36047,6 +36416,8 @@ function mapTypeToComponent(typeName, version) {
36047
36416
  default:
36048
36417
  return null;
36049
36418
  }
36419
+ default:
36420
+ return null;
36050
36421
  }
36051
36422
  }
36052
36423
  function makeBundleVisitor({ version, dereference, rootDocument, resolvedRefMap, keepUrlRefs, componentRenamingConflicts = "warn", componentNamesStrategy = "basename" }) {
@@ -36334,8 +36705,7 @@ function collectConfigPlugins(document, resolvedRefMap, rootConfigDir) {
36334
36705
  const visitorsData = { plugins: [], rootConfigDir };
36335
36706
  const ctx = {
36336
36707
  problems: [],
36337
- specVersion: "oas3_0",
36338
- // TODO: change it to a config-specific type
36708
+ specVersion: "config",
36339
36709
  refTypes: /* @__PURE__ */ new Map(),
36340
36710
  visitorsData: {
36341
36711
  [PLUGINS_COLLECTOR_VISITOR_ID]: visitorsData
@@ -36354,8 +36724,7 @@ function bundleConfig(document, resolvedRefMap, plugins) {
36354
36724
  const visitorsData = { plugins };
36355
36725
  const ctx = {
36356
36726
  problems: [],
36357
- specVersion: "oas3_0",
36358
- // TODO: change it to a config-specific type
36727
+ specVersion: "config",
36359
36728
  refTypes: /* @__PURE__ */ new Map(),
36360
36729
  visitorsData: {
36361
36730
  [CONFIG_BUNDLER_VISITOR_ID]: visitorsData
@@ -37376,8 +37745,7 @@ async function lint(opts) {
37376
37745
  async function lintDocument(opts) {
37377
37746
  const { document, customTypes, externalRefResolver, config } = opts;
37378
37747
  const specVersion = detectSpec(document.parsed);
37379
- const specMajorVersion = getMajorSpecVersion(specVersion);
37380
- const rules8 = config.getRulesForSpecVersion(specMajorVersion);
37748
+ const rules8 = config.getRulesForSpecVersion(getMajorSpecVersion(specVersion));
37381
37749
  const types2 = normalizeTypes(config.extendTypes(customTypes ?? getTypes(specVersion), specVersion), config);
37382
37750
  const ctx = {
37383
37751
  problems: [],
@@ -37423,8 +37791,7 @@ async function lintConfig(opts) {
37423
37791
  }
37424
37792
  const ctx = {
37425
37793
  problems: [],
37426
- specVersion: "oas3_0",
37427
- // TODO: use config-specific version
37794
+ specVersion: "config",
37428
37795
  config,
37429
37796
  visitorsData: {}
37430
37797
  };
@@ -37489,8 +37856,6 @@ export {
37489
37856
  StatsOAS,
37490
37857
  StatsAsync2,
37491
37858
  StatsAsync3,
37492
- getMajorSpecVersion,
37493
- detectSpec,
37494
37859
  parseYaml,
37495
37860
  stringifyYaml,
37496
37861
  bold,
@@ -37505,6 +37870,8 @@ export {
37505
37870
  colorette_exports,
37506
37871
  logger,
37507
37872
  YamlParseError,
37873
+ getMajorSpecVersion,
37874
+ detectSpec,
37508
37875
  isSupportedExtension,
37509
37876
  ResolveError,
37510
37877
  BaseResolver,
package/lib/index.js CHANGED
@@ -30,7 +30,7 @@ import {
30
30
  saveBundle,
31
31
  sortTopLevelKeys,
32
32
  writeToFileByExtension
33
- } from "./chunks/ZIYSHX6D.js";
33
+ } from "./chunks/O5NRRTPS.js";
34
34
  import {
35
35
  RedoclyOAuthClient,
36
36
  ReuniteApi,
@@ -41,23 +41,23 @@ import {
41
41
  getReuniteUrl,
42
42
  require_undici,
43
43
  shouldBypassProxy
44
- } from "./chunks/FDUPOI4C.js";
44
+ } from "./chunks/FLGNQ4P2.js";
45
45
  import {
46
46
  ANONYMOUS_ID_CACHE_FILE,
47
47
  DEFAULT_FETCH_TIMEOUT,
48
48
  OTEL_URL
49
49
  } from "./chunks/Y6DTFCLS.js";
50
- import "./chunks/EIHBO33S.js";
50
+ import "./chunks/ZH7E3R54.js";
51
51
  import {
52
52
  engines,
53
53
  name,
54
54
  version
55
- } from "./chunks/FP2VGYMF.js";
55
+ } from "./chunks/YMIVTRT4.js";
56
56
  import {
57
57
  RESET_ESCAPE_CODE,
58
58
  calculateTotals,
59
59
  conditionallyMaskSecrets
60
- } from "./chunks/GRMVFQAA.js";
60
+ } from "./chunks/2ACFK2AA.js";
61
61
  import "./chunks/VXIQEZPR.js";
62
62
  import {
63
63
  BaseResolver,
@@ -109,7 +109,7 @@ import {
109
109
  white,
110
110
  xmlEscape,
111
111
  yellow
112
- } from "./chunks/OEYVENNB.js";
112
+ } from "./chunks/ZKG4D7JN.js";
113
113
  import {
114
114
  __commonJS,
115
115
  __require,
@@ -7639,7 +7639,7 @@ async function handleGenerateArazzo({
7639
7639
  config: config3
7640
7640
  };
7641
7641
  try {
7642
- const { generate } = await import("./chunks/4DNBVE5S.js");
7642
+ const { generate } = await import("./chunks/JL6XAXTH.js");
7643
7643
  logger.info(gray("\n Generating Arazzo description... \n"));
7644
7644
  const generatedArazzo = await generate(options);
7645
7645
  writeFileSync2(outputFile, stringifyYaml(generatedArazzo));
@@ -9115,7 +9115,7 @@ async function handleRespect({
9115
9115
  let mtlsCerts;
9116
9116
  let harLogs;
9117
9117
  try {
9118
- const { run, conditionallyMaskSecrets: conditionallyMaskSecrets2 } = await import("./chunks/4DNBVE5S.js");
9118
+ const { run, conditionallyMaskSecrets: conditionallyMaskSecrets2 } = await import("./chunks/JL6XAXTH.js");
9119
9119
  const workingDir = config3.configPath ? dirname4(config3.configPath) : process.cwd();
9120
9120
  if (argv.mtls) {
9121
9121
  mtlsCerts = resolveMtlsCertificates(argv.mtls, workingDir);
@@ -12635,7 +12635,7 @@ async function sendTelemetry({
12635
12635
  $0: _,
12636
12636
  ...args
12637
12637
  } = argv;
12638
- const { RedoclyOAuthClient: RedoclyOAuthClient2 } = await import("./chunks/YA5P3RI2.js");
12638
+ const { RedoclyOAuthClient: RedoclyOAuthClient2 } = await import("./chunks/JT6WVBVX.js");
12639
12639
  const oauthClient = new RedoclyOAuthClient2();
12640
12640
  const reuniteUrl = getReuniteUrl(config3, args.residency);
12641
12641
  const logged_in = await oauthClient.isAuthorized(reuniteUrl);
@@ -12644,6 +12644,7 @@ async function sendTelemetry({
12644
12644
  anonymous_id = `ann_${ulid()}`;
12645
12645
  cacheAnonymousId(anonymous_id);
12646
12646
  }
12647
+ const majorSpecVersion = getMajorSpecVersion(spec_version);
12647
12648
  const eventData = [
12648
12649
  {
12649
12650
  id: "cli-command-run",
@@ -12664,9 +12665,9 @@ async function sendTelemetry({
12664
12665
  spec_version,
12665
12666
  spec_keyword,
12666
12667
  spec_full_version,
12667
- respect_x_security_auth_types: spec_version === "arazzo1" && respect_x_security_auth_types?.length ? JSON.stringify(respect_x_security_auth_types) : void 0,
12668
- respect_source_description_types: spec_version === "arazzo1" && respect_source_description_types?.length ? JSON.stringify(respect_source_description_types) : void 0,
12669
- respect_criterion_object_types: spec_version === "arazzo1" && respect_criterion_object_types?.length ? JSON.stringify(respect_criterion_object_types) : void 0
12668
+ respect_x_security_auth_types: majorSpecVersion === "arazzo1" && respect_x_security_auth_types?.length ? JSON.stringify(respect_x_security_auth_types) : void 0,
12669
+ respect_source_description_types: majorSpecVersion === "arazzo1" && respect_source_description_types?.length ? JSON.stringify(respect_source_description_types) : void 0,
12670
+ respect_criterion_object_types: majorSpecVersion === "arazzo1" && respect_criterion_object_types?.length ? JSON.stringify(respect_criterion_object_types) : void 0
12670
12671
  }
12671
12672
  ];
12672
12673
  const cloudEvent = j.mapToCloudEvent({
@@ -12682,7 +12683,7 @@ async function sendTelemetry({
12682
12683
  category: "product",
12683
12684
  data: eventData
12684
12685
  });
12685
- const { otelTelemetry } = await import("./chunks/2ULY6UWW.js");
12686
+ const { otelTelemetry } = await import("./chunks/HYYETV7F.js");
12686
12687
  otelTelemetry.send(cloudEvent);
12687
12688
  } catch (err) {
12688
12689
  }
@@ -12910,7 +12911,7 @@ function commandWrapper(commandHandler) {
12910
12911
  } else {
12911
12912
  specFullVersion = void 0;
12912
12913
  }
12913
- if (specVersion === "arazzo1") {
12914
+ if (getMajorSpecVersion(specVersion) === "arazzo1") {
12914
12915
  const arazzoDocument = document;
12915
12916
  collectXSecurityAuthTypes(arazzoDocument, respectXSecurityAuthTypes);
12916
12917
  collectSourceDescriptionTypes(arazzoDocument, respectSourceDescriptionTypes);
@@ -13512,7 +13513,7 @@ yargs_default(hideBin(process.argv)).version("version", "Show version number.",
13512
13513
  return true;
13513
13514
  }),
13514
13515
  async (argv) => {
13515
- const { handlerBuildCommand } = await import("./chunks/7GOGGHM5.js");
13516
+ const { handlerBuildCommand } = await import("./chunks/TGF4B4QI.js");
13516
13517
  commandWrapper(handlerBuildCommand)(argv);
13517
13518
  }
13518
13519
  ).command(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/cli",
3
- "version": "2.34.0",
3
+ "version": "2.35.0",
4
4
  "description": "",
5
5
  "license": "MIT",
6
6
  "type": "module",