From 5828dc9eb34856ceee270c5e6be638e7a9fc9f10 Mon Sep 17 00:00:00 2001 From: Kathleen DeRusso Date: Fri, 21 Jun 2024 13:15:01 -0400 Subject: [PATCH 01/12] Add sparse_vector query to client specification --- .../_types/query_dsl/SparseVectorQuery.ts | 72 +++++++++++++++++++ .../_types/query_dsl/abstractions.ts | 10 +++ 2 files changed, 82 insertions(+) create mode 100644 specification/_types/query_dsl/SparseVectorQuery.ts diff --git a/specification/_types/query_dsl/SparseVectorQuery.ts b/specification/_types/query_dsl/SparseVectorQuery.ts new file mode 100644 index 0000000000..5a6e2e6357 --- /dev/null +++ b/specification/_types/query_dsl/SparseVectorQuery.ts @@ -0,0 +1,72 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { Field, Id } from '@_types/common' +import { QueryBase } from './abstractions' +import { float } from '@_types/Numeric' +import { Dictionary } from '@spec_utils/Dictionary' +import { TokenPruningConfig } from './TokenPruningConfig' + +export class SparseVectorQuery extends QueryBase { + /** + * The name of the field that contains the token-weight pairs to be searched against. + * This field must be a mapped sparse_vector field. + */ + field: Field + + /** + * Dictionary of precomputed sparse vectors and their associated weights. + * Only one of inference_id or query_vector may be supplied in a request. + */ + query_vector?: Dictionary + + /** + * The inference ID to use to convert the query text into token-weight pairs. + * It must be the same inference ID that was used to create the tokens from the input text. + * Only one of inference_id and query_vector is allowed. + * If inference_id is specified, query must also be specified. + * Only one of inference_id or query_vector may be supplied in a request. + */ + inference_id?: Id + + /** + * The query text you want to use for search. + * If inference_id is specified, query must also be specified. + */ + query?: String + + /** + * Whether to perform pruning, omitting the non-significant tokens from the query to improve query performance. + * If prune is true but the pruning_config is not specified, pruning will occur but default values will be used. + * @default false + * @availability stack since=8.15.0 stability=experimental + * @availability serverless stability=experimental + */ + prune?: Boolean + + /** + * Optional pruning configuration. + * If enabled, this will omit non-significant tokens from the query in order to improve query performance. + * This is only used if prune is set to true. + * If prune is set to true but pruning_config is not specified, default values will be used. + * @availability stack since=8.15.0 stability=experimental + * @availability serverless stability=experimental + */ + pruning_config?: TokenPruningConfig +} diff --git a/specification/_types/query_dsl/abstractions.ts b/specification/_types/query_dsl/abstractions.ts index 5396b18623..05d2b8023d 100644 --- a/specification/_types/query_dsl/abstractions.ts +++ b/specification/_types/query_dsl/abstractions.ts @@ -97,6 +97,7 @@ import { TextExpansionQuery } from './TextExpansionQuery' import { WeightedTokensQuery } from './WeightedTokensQuery' import { KnnQuery } from '@_types/Knn' import { SemanticQuery } from './SemanticQuery' +import { SparseVectorQuery } from './SparseVectorQuery' /** * @variants container @@ -364,6 +365,13 @@ export class QueryContainer { * @doc_id query-dsl-span-within-query */ span_within?: SpanWithinQuery + /** + * Using input query vectors or a natural language processing model to convert a query into a list of token-weight pairs, queries against a sparse vector field. + * @availability stack since=8.15.0 + * @availability serverless + * @doc_id query-dsl-sparse-vector-query + */ + sparse_vector?: SparseVectorQuery /** * Returns documents that contain an exact term in a provided field. * To return a document, the query term must exactly match the queried field's value, including whitespace and capitalization. @@ -387,6 +395,7 @@ export class QueryContainer { * @availability stack since=8.8.0 * @availability serverless * @doc_id query-dsl-text-expansion-query + * @deprecated 8.15.0 */ text_expansion?: SingleKeyDictionary /** @@ -394,6 +403,7 @@ export class QueryContainer { * @availability stack since=8.13.0 * @availability serverless * @doc_id query-dsl-weighted-tokens-query + * @deprecated 8.15.0 */ weighted_tokens?: SingleKeyDictionary /** From e535a556d63c67ed1d414859bc4c47231fac0cb7 Mon Sep 17 00:00:00 2001 From: Kathleen DeRusso Date: Mon, 24 Jun 2024 08:52:56 -0400 Subject: [PATCH 02/12] Fix error and update contrib --- output/openapi/elasticsearch-openapi.json | 78 +++++++-- .../elasticsearch-serverless-openapi.json | 78 +++++++-- output/schema/schema.json | 165 +++++++++++++++++- output/typescript/types.ts | 10 ++ .../_types/query_dsl/SparseVectorQuery.ts | 6 +- 5 files changed, 292 insertions(+), 45 deletions(-) diff --git a/output/openapi/elasticsearch-openapi.json b/output/openapi/elasticsearch-openapi.json index 21774f912c..7cce82a10d 100644 --- a/output/openapi/elasticsearch-openapi.json +++ b/output/openapi/elasticsearch-openapi.json @@ -57045,6 +57045,9 @@ "span_within": { "$ref": "#/components/schemas/_types.query_dsl:SpanWithinQuery" }, + "sparse_vector": { + "$ref": "#/components/schemas/_types.query_dsl:SparseVectorQuery" + }, "term": { "externalDocs": { "url": "https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-term-query.html" @@ -57073,6 +57076,7 @@ "maxProperties": 1 }, "text_expansion": { + "deprecated": true, "externalDocs": { "url": "https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-text-expansion-query.html" }, @@ -57085,6 +57089,7 @@ "maxProperties": 1 }, "weighted_tokens": { + "deprecated": true, "description": "Supports returning text_expansion query results by sending in precomputed tokens with the query.", "type": "object", "additionalProperties": { @@ -60980,6 +60985,62 @@ } ] }, + "_types.query_dsl:SparseVectorQuery": { + "allOf": [ + { + "$ref": "#/components/schemas/_types.query_dsl:QueryBase" + }, + { + "type": "object", + "properties": { + "field": { + "$ref": "#/components/schemas/_types:Field" + }, + "query_vector": { + "description": "Dictionary of precomputed sparse vectors and their associated weights.\nOnly one of inference_id or query_vector may be supplied in a request.", + "type": "object", + "additionalProperties": { + "type": "number" + } + }, + "inference_id": { + "$ref": "#/components/schemas/_types:Id" + }, + "query": { + "description": "The query text you want to use for search.\nIf inference_id is specified, query must also be specified.", + "type": "string" + }, + "prune": { + "description": "Whether to perform pruning, omitting the non-significant tokens from the query to improve query performance.\nIf prune is true but the pruning_config is not specified, pruning will occur but default values will be used.\nDefault: false", + "type": "boolean" + }, + "pruning_config": { + "$ref": "#/components/schemas/_types.query_dsl:TokenPruningConfig" + } + }, + "required": [ + "field" + ] + } + ] + }, + "_types.query_dsl:TokenPruningConfig": { + "type": "object", + "properties": { + "tokens_freq_ratio_threshold": { + "description": "Tokens whose frequency is more than this threshold times the average frequency of all tokens in the specified field are considered outliers and pruned.", + "type": "number" + }, + "tokens_weight_threshold": { + "description": "Tokens whose weight is less than this threshold are considered nonsignificant and pruned.", + "type": "number" + }, + "only_score_pruned_tokens": { + "description": "Whether to only score pruned tokens, vs only scoring kept tokens.", + "type": "boolean" + } + } + }, "_types.query_dsl:TermQuery": { "allOf": [ { @@ -61067,23 +61128,6 @@ } ] }, - "_types.query_dsl:TokenPruningConfig": { - "type": "object", - "properties": { - "tokens_freq_ratio_threshold": { - "description": "Tokens whose frequency is more than this threshold times the average frequency of all tokens in the specified field are considered outliers and pruned.", - "type": "number" - }, - "tokens_weight_threshold": { - "description": "Tokens whose weight is less than this threshold are considered nonsignificant and pruned.", - "type": "number" - }, - "only_score_pruned_tokens": { - "description": "Whether to only score pruned tokens, vs only scoring kept tokens.", - "type": "boolean" - } - } - }, "_types.query_dsl:WeightedTokensQuery": { "allOf": [ { diff --git a/output/openapi/elasticsearch-serverless-openapi.json b/output/openapi/elasticsearch-serverless-openapi.json index bc0c165700..636ad6510e 100644 --- a/output/openapi/elasticsearch-serverless-openapi.json +++ b/output/openapi/elasticsearch-serverless-openapi.json @@ -34372,6 +34372,9 @@ "span_within": { "$ref": "#/components/schemas/_types.query_dsl:SpanWithinQuery" }, + "sparse_vector": { + "$ref": "#/components/schemas/_types.query_dsl:SparseVectorQuery" + }, "term": { "externalDocs": { "url": "https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-term-query.html" @@ -34400,6 +34403,7 @@ "maxProperties": 1 }, "text_expansion": { + "deprecated": true, "externalDocs": { "url": "https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-text-expansion-query.html" }, @@ -34412,6 +34416,7 @@ "maxProperties": 1 }, "weighted_tokens": { + "deprecated": true, "description": "Supports returning text_expansion query results by sending in precomputed tokens with the query.", "type": "object", "additionalProperties": { @@ -38307,6 +38312,62 @@ } ] }, + "_types.query_dsl:SparseVectorQuery": { + "allOf": [ + { + "$ref": "#/components/schemas/_types.query_dsl:QueryBase" + }, + { + "type": "object", + "properties": { + "field": { + "$ref": "#/components/schemas/_types:Field" + }, + "query_vector": { + "description": "Dictionary of precomputed sparse vectors and their associated weights.\nOnly one of inference_id or query_vector may be supplied in a request.", + "type": "object", + "additionalProperties": { + "type": "number" + } + }, + "inference_id": { + "$ref": "#/components/schemas/_types:Id" + }, + "query": { + "description": "The query text you want to use for search.\nIf inference_id is specified, query must also be specified.", + "type": "string" + }, + "prune": { + "description": "Whether to perform pruning, omitting the non-significant tokens from the query to improve query performance.\nIf prune is true but the pruning_config is not specified, pruning will occur but default values will be used.\nDefault: false", + "type": "boolean" + }, + "pruning_config": { + "$ref": "#/components/schemas/_types.query_dsl:TokenPruningConfig" + } + }, + "required": [ + "field" + ] + } + ] + }, + "_types.query_dsl:TokenPruningConfig": { + "type": "object", + "properties": { + "tokens_freq_ratio_threshold": { + "description": "Tokens whose frequency is more than this threshold times the average frequency of all tokens in the specified field are considered outliers and pruned.", + "type": "number" + }, + "tokens_weight_threshold": { + "description": "Tokens whose weight is less than this threshold are considered nonsignificant and pruned.", + "type": "number" + }, + "only_score_pruned_tokens": { + "description": "Whether to only score pruned tokens, vs only scoring kept tokens.", + "type": "boolean" + } + } + }, "_types.query_dsl:TermQuery": { "allOf": [ { @@ -38394,23 +38455,6 @@ } ] }, - "_types.query_dsl:TokenPruningConfig": { - "type": "object", - "properties": { - "tokens_freq_ratio_threshold": { - "description": "Tokens whose frequency is more than this threshold times the average frequency of all tokens in the specified field are considered outliers and pruned.", - "type": "number" - }, - "tokens_weight_threshold": { - "description": "Tokens whose weight is less than this threshold are considered nonsignificant and pruned.", - "type": "number" - }, - "only_score_pruned_tokens": { - "description": "Whether to only score pruned tokens, vs only scoring kept tokens.", - "type": "boolean" - } - } - }, "_types.query_dsl:WeightedTokensQuery": { "allOf": [ { diff --git a/output/schema/schema.json b/output/schema/schema.json index eb828d9da4..d86143b1ec 100644 --- a/output/schema/schema.json +++ b/output/schema/schema.json @@ -74965,7 +74965,7 @@ "name": "CombinedFieldsOperator", "namespace": "_types.query_dsl" }, - "specLocation": "_types/query_dsl/abstractions.ts#L496-L499" + "specLocation": "_types/query_dsl/abstractions.ts#L506-L509" }, { "inherits": { @@ -75061,7 +75061,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L452-L486" + "specLocation": "_types/query_dsl/abstractions.ts#L462-L496" }, { "kind": "enum", @@ -75079,7 +75079,7 @@ "name": "CombinedFieldsZeroTerms", "namespace": "_types.query_dsl" }, - "specLocation": "_types/query_dsl/abstractions.ts#L501-L510" + "specLocation": "_types/query_dsl/abstractions.ts#L511-L520" }, { "inherits": { @@ -75757,7 +75757,7 @@ } ], "shortcutProperty": "field", - "specLocation": "_types/query_dsl/abstractions.ts#L512-L526" + "specLocation": "_types/query_dsl/abstractions.ts#L522-L536" }, { "kind": "interface", @@ -75815,7 +75815,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L416-L433" + "specLocation": "_types/query_dsl/abstractions.ts#L426-L443" }, { "kind": "enum", @@ -79544,7 +79544,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L439-L450" + "specLocation": "_types/query_dsl/abstractions.ts#L449-L460" }, { "docId": "query-dsl", @@ -80397,6 +80397,26 @@ } } }, + { + "availability": { + "serverless": {}, + "stack": { + "since": "8.15.0" + } + }, + "description": "Using input query vectors or a natural language processing model to convert a query into a list of token-weight pairs, queries against a sparse vector field.", + "docId": "query-dsl-sparse-vector-query", + "name": "sparse_vector", + "required": false, + "since": "8.15.0", + "type": { + "kind": "instance_of", + "type": { + "name": "SparseVectorQuery", + "namespace": "_types.query_dsl" + } + } + }, { "description": "Returns documents that contain an exact term in a provided field.\nTo return a document, the query term must exactly match the queried field's value, including whitespace and capitalization.", "docId": "query-dsl-term-query", @@ -80468,6 +80488,10 @@ "since": "8.8.0" } }, + "deprecation": { + "description": "", + "version": "8.15.0" + }, "description": "Uses a natural language processing model to convert the query text into a list of token-weight pairs which are then used in a query against a sparse vector or rank features field.", "docId": "query-dsl-text-expansion-query", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/query-dsl-text-expansion-query.html", @@ -80500,6 +80524,10 @@ "since": "8.13.0" } }, + "deprecation": { + "description": "", + "version": "8.15.0" + }, "description": "Supports returning text_expansion query results by sending in precomputed tokens with the query.", "docId": "query-dsl-weighted-tokens-query", "name": "weighted_tokens", @@ -80579,7 +80607,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L101-L414", + "specLocation": "_types/query_dsl/abstractions.ts#L102-L424", "variants": { "kind": "container", "nonExhaustive": true @@ -82460,6 +82488,127 @@ ], "specLocation": "_types/query_dsl/span.ts#L118-L129" }, + { + "inherits": { + "type": { + "name": "QueryBase", + "namespace": "_types.query_dsl" + } + }, + "kind": "interface", + "name": { + "name": "SparseVectorQuery", + "namespace": "_types.query_dsl" + }, + "properties": [ + { + "description": "The name of the field that contains the token-weight pairs to be searched against.\nThis field must be a mapped sparse_vector field.", + "name": "field", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Field", + "namespace": "_types" + } + } + }, + { + "description": "Dictionary of precomputed sparse vectors and their associated weights.\nOnly one of inference_id or query_vector may be supplied in a request.", + "name": "query_vector", + "required": false, + "type": { + "key": { + "kind": "instance_of", + "type": { + "name": "string", + "namespace": "_builtins" + } + }, + "kind": "dictionary_of", + "singleKey": false, + "value": { + "kind": "instance_of", + "type": { + "name": "float", + "namespace": "_types" + } + } + } + }, + { + "description": "The inference ID to use to convert the query text into token-weight pairs.\nIt must be the same inference ID that was used to create the tokens from the input text.\nOnly one of inference_id and query_vector is allowed.\nIf inference_id is specified, query must also be specified.\nOnly one of inference_id or query_vector may be supplied in a request.", + "name": "inference_id", + "required": false, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + }, + { + "description": "The query text you want to use for search.\nIf inference_id is specified, query must also be specified.", + "name": "query", + "required": false, + "type": { + "kind": "instance_of", + "type": { + "name": "string", + "namespace": "_builtins" + } + } + }, + { + "availability": { + "serverless": { + "stability": "experimental" + }, + "stack": { + "since": "8.15.0", + "stability": "experimental" + } + }, + "description": "Whether to perform pruning, omitting the non-significant tokens from the query to improve query performance.\nIf prune is true but the pruning_config is not specified, pruning will occur but default values will be used.\nDefault: false", + "name": "prune", + "required": false, + "since": "8.15.0", + "stability": "experimental", + "type": { + "kind": "instance_of", + "type": { + "name": "boolean", + "namespace": "_builtins" + } + } + }, + { + "availability": { + "serverless": { + "stability": "experimental" + }, + "stack": { + "since": "8.15.0", + "stability": "experimental" + } + }, + "description": "Optional pruning configuration.\nIf enabled, this will omit non-significant tokens from the query in order to improve query performance.\nThis is only used if prune is set to true.\nIf prune is set to true but pruning_config is not specified, default values will be used.", + "name": "pruning_config", + "required": false, + "since": "8.15.0", + "stability": "experimental", + "type": { + "kind": "instance_of", + "type": { + "name": "TokenPruningConfig", + "namespace": "_types.query_dsl" + } + } + } + ], + "specLocation": "_types/query_dsl/SparseVectorQuery.ts#L26-L72" + }, { "inherits": { "type": { @@ -83128,7 +83277,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L488-L494" + "specLocation": "_types/query_dsl/abstractions.ts#L498-L504" }, { "kind": "enum", diff --git a/output/typescript/types.ts b/output/typescript/types.ts index 0fc3aec26a..ca7e8c3ca6 100644 --- a/output/typescript/types.ts +++ b/output/typescript/types.ts @@ -5963,6 +5963,7 @@ export interface QueryDslQueryContainer { span_or?: QueryDslSpanOrQuery span_term?: Partial> span_within?: QueryDslSpanWithinQuery + sparse_vector?: QueryDslSparseVectorQuery term?: Partial> terms?: QueryDslTermsQuery terms_set?: Partial> @@ -6169,6 +6170,15 @@ export interface QueryDslSpanWithinQuery extends QueryDslQueryBase { little: QueryDslSpanQuery } +export interface QueryDslSparseVectorQuery extends QueryDslQueryBase { + field: Field + query_vector?: Record + inference_id?: Id + query?: string + prune?: boolean + pruning_config?: QueryDslTokenPruningConfig +} + export interface QueryDslTermQuery extends QueryDslQueryBase { value: FieldValue case_insensitive?: boolean diff --git a/specification/_types/query_dsl/SparseVectorQuery.ts b/specification/_types/query_dsl/SparseVectorQuery.ts index 5a6e2e6357..9eb43c0776 100644 --- a/specification/_types/query_dsl/SparseVectorQuery.ts +++ b/specification/_types/query_dsl/SparseVectorQuery.ts @@ -49,16 +49,16 @@ export class SparseVectorQuery extends QueryBase { * The query text you want to use for search. * If inference_id is specified, query must also be specified. */ - query?: String + query?: string /** * Whether to perform pruning, omitting the non-significant tokens from the query to improve query performance. * If prune is true but the pruning_config is not specified, pruning will occur but default values will be used. - * @default false + * Default: false * @availability stack since=8.15.0 stability=experimental * @availability serverless stability=experimental */ - prune?: Boolean + prune?: boolean /** * Optional pruning configuration. From 72ea9269e02072916e091778378686ea5cd6a158 Mon Sep 17 00:00:00 2001 From: Kathleen DeRusso Date: Tue, 25 Jun 2024 09:12:46 -0400 Subject: [PATCH 03/12] PR feedback --- output/openapi/elasticsearch-openapi.json | 63 +++++++++++-------- .../elasticsearch-serverless-openapi.json | 63 +++++++++++-------- output/schema/schema.json | 6 +- .../_types/query_dsl/SparseVectorQuery.ts | 4 ++ 4 files changed, 83 insertions(+), 53 deletions(-) diff --git a/output/openapi/elasticsearch-openapi.json b/output/openapi/elasticsearch-openapi.json index 7cce82a10d..e6e5c4c76a 100644 --- a/output/openapi/elasticsearch-openapi.json +++ b/output/openapi/elasticsearch-openapi.json @@ -60991,35 +60991,46 @@ "$ref": "#/components/schemas/_types.query_dsl:QueryBase" }, { - "type": "object", - "properties": { - "field": { - "$ref": "#/components/schemas/_types:Field" - }, - "query_vector": { - "description": "Dictionary of precomputed sparse vectors and their associated weights.\nOnly one of inference_id or query_vector may be supplied in a request.", + "allOf": [ + { "type": "object", - "additionalProperties": { - "type": "number" - } - }, - "inference_id": { - "$ref": "#/components/schemas/_types:Id" - }, - "query": { - "description": "The query text you want to use for search.\nIf inference_id is specified, query must also be specified.", - "type": "string" - }, - "prune": { - "description": "Whether to perform pruning, omitting the non-significant tokens from the query to improve query performance.\nIf prune is true but the pruning_config is not specified, pruning will occur but default values will be used.\nDefault: false", - "type": "boolean" + "properties": { + "field": { + "$ref": "#/components/schemas/_types:Field" + } + }, + "required": [ + "field" + ] }, - "pruning_config": { - "$ref": "#/components/schemas/_types.query_dsl:TokenPruningConfig" + { + "type": "object", + "properties": { + "query_vector": { + "description": "Dictionary of precomputed sparse vectors and their associated weights.\nOnly one of inference_id or query_vector may be supplied in a request.", + "type": "object", + "additionalProperties": { + "type": "number" + } + }, + "inference_id": { + "$ref": "#/components/schemas/_types:Id" + }, + "query": { + "description": "The query text you want to use for search.\nIf inference_id is specified, query must also be specified.", + "type": "string" + }, + "prune": { + "description": "Whether to perform pruning, omitting the non-significant tokens from the query to improve query performance.\nIf prune is true but the pruning_config is not specified, pruning will occur but default values will be used.\nDefault: false", + "type": "boolean" + }, + "pruning_config": { + "$ref": "#/components/schemas/_types.query_dsl:TokenPruningConfig" + } + }, + "minProperties": 1, + "maxProperties": 1 } - }, - "required": [ - "field" ] } ] diff --git a/output/openapi/elasticsearch-serverless-openapi.json b/output/openapi/elasticsearch-serverless-openapi.json index 636ad6510e..badac7839d 100644 --- a/output/openapi/elasticsearch-serverless-openapi.json +++ b/output/openapi/elasticsearch-serverless-openapi.json @@ -38318,35 +38318,46 @@ "$ref": "#/components/schemas/_types.query_dsl:QueryBase" }, { - "type": "object", - "properties": { - "field": { - "$ref": "#/components/schemas/_types:Field" - }, - "query_vector": { - "description": "Dictionary of precomputed sparse vectors and their associated weights.\nOnly one of inference_id or query_vector may be supplied in a request.", + "allOf": [ + { "type": "object", - "additionalProperties": { - "type": "number" - } - }, - "inference_id": { - "$ref": "#/components/schemas/_types:Id" - }, - "query": { - "description": "The query text you want to use for search.\nIf inference_id is specified, query must also be specified.", - "type": "string" - }, - "prune": { - "description": "Whether to perform pruning, omitting the non-significant tokens from the query to improve query performance.\nIf prune is true but the pruning_config is not specified, pruning will occur but default values will be used.\nDefault: false", - "type": "boolean" + "properties": { + "field": { + "$ref": "#/components/schemas/_types:Field" + } + }, + "required": [ + "field" + ] }, - "pruning_config": { - "$ref": "#/components/schemas/_types.query_dsl:TokenPruningConfig" + { + "type": "object", + "properties": { + "query_vector": { + "description": "Dictionary of precomputed sparse vectors and their associated weights.\nOnly one of inference_id or query_vector may be supplied in a request.", + "type": "object", + "additionalProperties": { + "type": "number" + } + }, + "inference_id": { + "$ref": "#/components/schemas/_types:Id" + }, + "query": { + "description": "The query text you want to use for search.\nIf inference_id is specified, query must also be specified.", + "type": "string" + }, + "prune": { + "description": "Whether to perform pruning, omitting the non-significant tokens from the query to improve query performance.\nIf prune is true but the pruning_config is not specified, pruning will occur but default values will be used.\nDefault: false", + "type": "boolean" + }, + "pruning_config": { + "$ref": "#/components/schemas/_types.query_dsl:TokenPruningConfig" + } + }, + "minProperties": 1, + "maxProperties": 1 } - }, - "required": [ - "field" ] } ] diff --git a/output/schema/schema.json b/output/schema/schema.json index d86143b1ec..6a3ee9d947 100644 --- a/output/schema/schema.json +++ b/output/schema/schema.json @@ -82502,6 +82502,7 @@ }, "properties": [ { + "containerProperty": true, "description": "The name of the field that contains the token-weight pairs to be searched against.\nThis field must be a mapped sparse_vector field.", "name": "field", "required": true, @@ -82607,7 +82608,10 @@ } } ], - "specLocation": "_types/query_dsl/SparseVectorQuery.ts#L26-L72" + "specLocation": "_types/query_dsl/SparseVectorQuery.ts#L26-L76", + "variants": { + "kind": "container" + } }, { "inherits": { diff --git a/specification/_types/query_dsl/SparseVectorQuery.ts b/specification/_types/query_dsl/SparseVectorQuery.ts index 9eb43c0776..372994ef62 100644 --- a/specification/_types/query_dsl/SparseVectorQuery.ts +++ b/specification/_types/query_dsl/SparseVectorQuery.ts @@ -23,10 +23,14 @@ import { float } from '@_types/Numeric' import { Dictionary } from '@spec_utils/Dictionary' import { TokenPruningConfig } from './TokenPruningConfig' +/** + * @variants container + */ export class SparseVectorQuery extends QueryBase { /** * The name of the field that contains the token-weight pairs to be searched against. * This field must be a mapped sparse_vector field. + * @variant container_property */ field: Field From 52d3e6c620fbec6c0efbb1a8e0c78b91dbc13f24 Mon Sep 17 00:00:00 2001 From: Florian Bernd Date: Mon, 24 Jun 2024 15:47:20 +0200 Subject: [PATCH 04/12] Populate endpoint deprecation from request definition (#2640) --- compiler/src/index.ts | 2 + compiler/src/steps/add-deprecation.ts | 49 +++++++++++++++++++ output/schema/schema.json | 30 ++++++++---- .../_types/query_dsl/abstractions.ts | 3 ++ 4 files changed, 75 insertions(+), 9 deletions(-) create mode 100644 compiler/src/steps/add-deprecation.ts diff --git a/compiler/src/index.ts b/compiler/src/index.ts index d74b66300a..cdf6827bfb 100644 --- a/compiler/src/index.ts +++ b/compiler/src/index.ts @@ -27,6 +27,7 @@ import addDescription from './steps/add-description' import validateModel from './steps/validate-model' import addContentType from './steps/add-content-type' import readDefinitionValidation from './steps/read-definition-validation' +import addDeprecation from './steps/add-deprecation' const nvmrc = readFileSync(join(__dirname, '..', '..', '.nvmrc'), 'utf8') const nodejsMajor = process.version.split('.').shift()?.slice(1) ?? '' @@ -67,6 +68,7 @@ const compiler = new Compiler(specsFolder, outputFolder) compiler .generateModel() .step(addInfo) + .step(addDeprecation) .step(addContentType) .step(readDefinitionValidation) .step(validateRestSpec) diff --git a/compiler/src/steps/add-deprecation.ts b/compiler/src/steps/add-deprecation.ts new file mode 100644 index 0000000000..718bf6b9cb --- /dev/null +++ b/compiler/src/steps/add-deprecation.ts @@ -0,0 +1,49 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import * as model from '../model/metamodel' +import { JsonSpec } from '../model/json-spec' + +/** + * Populates the `deprecation` field for endpoints from the value of the corresponding request definition. + */ +export default async function addContentType (model: model.Model, jsonSpec: Map): Promise { + for (const endpoint of model.endpoints) { + if (endpoint.deprecation != null) { + continue + } + + if (endpoint.request == null) { + continue + } + + const request = model.types.find(x => x.kind === 'request' && x.name === endpoint.request) + if (request == null) { + continue + } + + if (request.deprecation == null) { + continue + } + + endpoint.deprecation = request.deprecation + } + + return model +} diff --git a/output/schema/schema.json b/output/schema/schema.json index 6a3ee9d947..2396ad7073 100644 --- a/output/schema/schema.json +++ b/output/schema/schema.json @@ -9360,6 +9360,10 @@ "stability": "experimental" } }, + "deprecation": { + "description": "", + "version": "8.4.0" + }, "description": "Performs a kNN search.", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/search-search.html", "name": "knn_search", @@ -11948,6 +11952,10 @@ "stability": "stable" } }, + "deprecation": { + "description": "Posting data directly to anomaly detection jobs is deprecated, in a future major version a datafeed will be required.", + "version": "7.11.0" + }, "description": "Sends data to an anomaly detection job for analysis.\n\nIMPORTANT: For each job, data can be accepted from only a single connection at a time.\nIt is not currently possible to post data to multiple jobs using wildcards or a comma-separated list.", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/current/ml-post-data.html", "name": "ml.post_data", @@ -74965,7 +74973,7 @@ "name": "CombinedFieldsOperator", "namespace": "_types.query_dsl" }, - "specLocation": "_types/query_dsl/abstractions.ts#L506-L509" + "specLocation": "_types/query_dsl/abstractions.ts#L499-L502" }, { "inherits": { @@ -75061,7 +75069,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L462-L496" + "specLocation": "_types/query_dsl/abstractions.ts#L455-L489" }, { "kind": "enum", @@ -75079,7 +75087,7 @@ "name": "CombinedFieldsZeroTerms", "namespace": "_types.query_dsl" }, - "specLocation": "_types/query_dsl/abstractions.ts#L511-L520" + "specLocation": "_types/query_dsl/abstractions.ts#L504-L513" }, { "inherits": { @@ -75757,7 +75765,7 @@ } ], "shortcutProperty": "field", - "specLocation": "_types/query_dsl/abstractions.ts#L522-L536" + "specLocation": "_types/query_dsl/abstractions.ts#L515-L529" }, { "kind": "interface", @@ -75815,7 +75823,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L426-L443" + "specLocation": "_types/query_dsl/abstractions.ts#L419-L436" }, { "kind": "enum", @@ -79544,7 +79552,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L449-L460" + "specLocation": "_types/query_dsl/abstractions.ts#L442-L453" }, { "docId": "query-dsl", @@ -79754,6 +79762,10 @@ } }, { + "deprecation": { + "description": "Use geo-shape instead.", + "version": "7.12.0" + }, "name": "geo_polygon", "required": false, "type": { @@ -80607,7 +80619,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L102-L424", + "specLocation": "_types/query_dsl/abstractions.ts#L101-L417", "variants": { "kind": "container", "nonExhaustive": true @@ -83281,7 +83293,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L498-L504" + "specLocation": "_types/query_dsl/abstractions.ts#L491-L497" }, { "kind": "enum", @@ -210803,4 +210815,4 @@ "specLocation": "_spec_utils/behaviors.ts#L134-L140" } ] -} \ No newline at end of file +} diff --git a/specification/_types/query_dsl/abstractions.ts b/specification/_types/query_dsl/abstractions.ts index 05d2b8023d..8f6321ce77 100644 --- a/specification/_types/query_dsl/abstractions.ts +++ b/specification/_types/query_dsl/abstractions.ts @@ -166,6 +166,9 @@ export class QueryContainer { * @doc_id query-dsl-geo-distance-query */ geo_distance?: GeoDistanceQuery + /** + * @deprecated 7.12.0 Use geo-shape instead. + */ geo_polygon?: GeoPolygonQuery /** * Filter documents indexed using either the `geo_shape` or the `geo_point` type. From 46d0689aabf968b80dd2f69a75bf6a176059a912 Mon Sep 17 00:00:00 2001 From: Elastic Machine Date: Mon, 24 Jun 2024 13:48:04 +0000 Subject: [PATCH 05/12] Update specification output --- output/openapi/elasticsearch-openapi.json | 9 ++++++--- output/schema/schema-serverless.json | 20 ++++++++++++-------- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/output/openapi/elasticsearch-openapi.json b/output/openapi/elasticsearch-openapi.json index e6e5c4c76a..15709660f4 100644 --- a/output/openapi/elasticsearch-openapi.json +++ b/output/openapi/elasticsearch-openapi.json @@ -15869,7 +15869,8 @@ "200": { "$ref": "#/components/responses/knn_search#200" } - } + }, + "deprecated": true }, "post": { "tags": [ @@ -15895,7 +15896,8 @@ "200": { "$ref": "#/components/responses/knn_search#200" } - } + }, + "deprecated": true } }, "/_license": { @@ -20820,7 +20822,8 @@ } } } - } + }, + "deprecated": true } }, "/_ml/data_frame/analytics/_preview": { diff --git a/output/schema/schema-serverless.json b/output/schema/schema-serverless.json index 6f92fd5d84..c992dad0d9 100644 --- a/output/schema/schema-serverless.json +++ b/output/schema/schema-serverless.json @@ -47707,6 +47707,10 @@ } }, { + "deprecation": { + "description": "Use geo-shape instead.", + "version": "7.12.0" + }, "name": "geo_polygon", "required": false, "type": { @@ -48532,7 +48536,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L101-L414", + "specLocation": "_types/query_dsl/abstractions.ts#L101-L417", "variants": { "kind": "container", "nonExhaustive": true @@ -48709,7 +48713,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L439-L450" + "specLocation": "_types/query_dsl/abstractions.ts#L442-L453" }, { "kind": "type_alias", @@ -49053,7 +49057,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L452-L486" + "specLocation": "_types/query_dsl/abstractions.ts#L455-L489" }, { "kind": "enum", @@ -49069,7 +49073,7 @@ "name": "CombinedFieldsOperator", "namespace": "_types.query_dsl" }, - "specLocation": "_types/query_dsl/abstractions.ts#L496-L499" + "specLocation": "_types/query_dsl/abstractions.ts#L499-L502" }, { "kind": "enum", @@ -49087,7 +49091,7 @@ "name": "CombinedFieldsZeroTerms", "namespace": "_types.query_dsl" }, - "specLocation": "_types/query_dsl/abstractions.ts#L501-L510" + "specLocation": "_types/query_dsl/abstractions.ts#L504-L513" }, { "inherits": { @@ -51305,7 +51309,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L416-L433" + "specLocation": "_types/query_dsl/abstractions.ts#L419-L436" }, { "kind": "enum", @@ -51776,7 +51780,7 @@ } ], "shortcutProperty": "field", - "specLocation": "_types/query_dsl/abstractions.ts#L512-L526" + "specLocation": "_types/query_dsl/abstractions.ts#L515-L529" }, { "inherits": { @@ -59776,7 +59780,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L488-L494" + "specLocation": "_types/query_dsl/abstractions.ts#L491-L497" }, { "inherits": { From 802cdd72c35b623500972802bad6e18f5259ea29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laurent=20Saint-F=C3=A9lix?= Date: Tue, 25 Jun 2024 11:11:12 +0200 Subject: [PATCH 06/12] Wrap ts-morph errors to provide helpful error (#2644) * wrap ts-morph errors to provide helpful error * improve after lint --- compiler/src/model/build-model.ts | 26 ++++++++++++++++++-------- compiler/src/model/utils.ts | 13 +++++++++---- 2 files changed, 27 insertions(+), 12 deletions(-) diff --git a/compiler/src/model/build-model.ts b/compiler/src/model/build-model.ts index 303499c87a..b450125768 100644 --- a/compiler/src/model/build-model.ts +++ b/compiler/src/model/build-model.ts @@ -479,15 +479,25 @@ function compileClassOrInterfaceDeclaration (declaration: ClassDeclaration | Int Node.isPropertyDeclaration(member) || Node.isPropertySignature(member), 'Class and interfaces can only have property declarations or signatures' ) - const property = modelProperty(member) - if (type.variants?.kind === 'container' && property.containerProperty == null) { - assert( - member, - !property.required, - 'All @variants container properties must be optional' - ) + try { + const property = modelProperty(member) + if (type.variants?.kind === 'container' && property.containerProperty == null) { + assert( + member, + !property.required, + 'All @variants container properties must be optional' + ) + } + type.properties.push(property) + } catch (e) { + const name = declaration.getName() + if (name !== undefined) { + console.log(`failed to parse ${name}, reason:`, e.message) + } else { + console.log('failed to parse field, reason:', e.message) + } + process.exit(1) } - type.properties.push(property) } // The class or interface is extended, an extended class or interface could diff --git a/compiler/src/model/utils.ts b/compiler/src/model/utils.ts index 01c60023ca..9f6d953957 100644 --- a/compiler/src/model/utils.ts +++ b/compiler/src/model/utils.ts @@ -532,10 +532,15 @@ export function modelProperty (declaration: PropertySignature | PropertyDeclarat // names that contains `.` or `-` will be wrapped inside single quotes const name = declaration.getName().replace(/'/g, '') - const property = { - name, - required: !declaration.hasQuestionToken(), - type: modelType(type) + let property: model.Property + try { + property = { + name, + required: !declaration.hasQuestionToken(), + type: modelType(type) + } + } catch (e) { + throw new Error(`cannot determine type of ${name}, got:${type.getFullText()}`) } hoistPropertyAnnotations(property, declaration.getJsDocs()) return property From df2a8df4bd45fe440a7cc32afff9804527c8c867 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 16:01:26 +0400 Subject: [PATCH 07/12] Bump braces from 3.0.2 to 3.0.3 in /typescript-generator (#2645) Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3. - [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3) --- updated-dependencies: - dependency-name: braces dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- typescript-generator/package-lock.json | 28 +++++++++++++------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/typescript-generator/package-lock.json b/typescript-generator/package-lock.json index a16370425d..676cbfa3d0 100644 --- a/typescript-generator/package-lock.json +++ b/typescript-generator/package-lock.json @@ -609,12 +609,12 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -1478,9 +1478,9 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "dependencies": { "to-regex-range": "^5.0.1" @@ -3643,12 +3643,12 @@ } }, "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "requires": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" } }, "call-bind": { @@ -4282,9 +4282,9 @@ } }, "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "requires": { "to-regex-range": "^5.0.1" From c5b4766f5d4aa9b86687a1dfd8e1d51fcf37a5a3 Mon Sep 17 00:00:00 2001 From: Kathleen DeRusso Date: Tue, 25 Jun 2024 08:38:11 -0400 Subject: [PATCH 08/12] [Query Rules] Update Query Rules API for 8.15 (#2639) * Mark existing query rules APIs as GA * Add individual CRUD API calls * Linting * PR feedback * PR feedback --- output/openapi/elasticsearch-openapi.json | 244 ++++++++-- .../elasticsearch-serverless-openapi.json | 244 ++++++++-- output/schema/schema.json | 434 +++++++++++++++++- output/schema/validation-errors.json | 6 + output/typescript/types.ts | 39 +- .../_json_spec/query_rule.delete.json | 31 ++ specification/_json_spec/query_rule.get.json | 31 ++ specification/_json_spec/query_rule.put.json | 36 ++ .../_json_spec/query_ruleset.delete.json | 2 +- .../_json_spec/query_ruleset.get.json | 2 +- .../_json_spec/query_ruleset.list.json | 2 +- .../_json_spec/query_ruleset.put.json | 2 +- .../_types/query_dsl/abstractions.ts | 2 +- specification/_types/query_dsl/specialized.ts | 2 +- .../delete/QueryRuleDeleteRequest.ts | 40 ++ .../delete/QueryRuleDeleteResponse.ts | 24 + .../query_rule/get/QueryRuleGetRequest.ts | 40 ++ .../query_rule/get/QueryRuleGetResponse.ts | 24 + .../query_rule/put/QueryRulePutRequest.ts | 54 +++ .../query_rule/put/QueryRulePutResponse.ts | 26 ++ .../query_ruleset/_types/QueryRuleset.ts | 5 +- .../delete/QueryRulesetDeleteRequest.ts | 4 +- .../get/QueryRulesetGetRequest.ts | 4 +- .../list/QueryRulesetListRequest.ts | 4 +- specification/query_ruleset/list/types.ts | 8 +- .../put/QueryRulesetPutRequest.ts | 4 +- 26 files changed, 1213 insertions(+), 101 deletions(-) create mode 100644 specification/_json_spec/query_rule.delete.json create mode 100644 specification/_json_spec/query_rule.get.json create mode 100644 specification/_json_spec/query_rule.put.json create mode 100644 specification/query_rule/delete/QueryRuleDeleteRequest.ts create mode 100644 specification/query_rule/delete/QueryRuleDeleteResponse.ts create mode 100644 specification/query_rule/get/QueryRuleGetRequest.ts create mode 100644 specification/query_rule/get/QueryRuleGetResponse.ts create mode 100644 specification/query_rule/put/QueryRulePutRequest.ts create mode 100644 specification/query_rule/put/QueryRulePutResponse.ts diff --git a/output/openapi/elasticsearch-openapi.json b/output/openapi/elasticsearch-openapi.json index 15709660f4..670c5b1f53 100644 --- a/output/openapi/elasticsearch-openapi.json +++ b/output/openapi/elasticsearch-openapi.json @@ -24526,6 +24526,183 @@ } } }, + "/_query_rules/{ruleset_id}/_rule/{rule_id}": { + "get": { + "tags": [ + "query_rule.get" + ], + "summary": "Returns the details about a query rule within a query ruleset", + "externalDocs": { + "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/get-query-rule.html" + }, + "operationId": "query-rule-get", + "parameters": [ + { + "in": "path", + "name": "ruleset_id", + "description": "The unique identifier of the query ruleset containing the rule to retrieve", + "required": true, + "deprecated": false, + "schema": { + "$ref": "#/components/schemas/_types:Id" + }, + "style": "simple" + }, + { + "in": "path", + "name": "rule_id", + "description": "The unique identifier of the query rule within the specified ruleset to retrieve", + "required": true, + "deprecated": false, + "schema": { + "$ref": "#/components/schemas/_types:Id" + }, + "style": "simple" + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/query_ruleset._types:QueryRule" + } + } + } + } + } + }, + "put": { + "tags": [ + "query_rule.put" + ], + "summary": "Creates or updates a query rule within a query ruleset", + "externalDocs": { + "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/put-query-rule.html" + }, + "operationId": "query-rule-put", + "parameters": [ + { + "in": "path", + "name": "ruleset_id", + "description": "The unique identifier of the query ruleset containing the rule to be created or updated", + "required": true, + "deprecated": false, + "schema": { + "$ref": "#/components/schemas/_types:Id" + }, + "style": "simple" + }, + { + "in": "path", + "name": "rule_id", + "description": "The unique identifier of the query rule within the specified ruleset to be created or updated", + "required": true, + "deprecated": false, + "schema": { + "$ref": "#/components/schemas/_types:Id" + }, + "style": "simple" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/query_ruleset._types:QueryRuleType" + }, + "criteria": { + "type": "array", + "items": { + "$ref": "#/components/schemas/query_ruleset._types:QueryRuleCriteria" + } + }, + "actions": { + "$ref": "#/components/schemas/query_ruleset._types:QueryRuleActions" + } + }, + "required": [ + "type", + "criteria", + "actions" + ] + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "result": { + "$ref": "#/components/schemas/_types:Result" + } + }, + "required": [ + "result" + ] + } + } + } + } + } + }, + "delete": { + "tags": [ + "query_rule.delete" + ], + "summary": "Deletes a query rule within a query ruleset", + "externalDocs": { + "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-query-rule.html" + }, + "operationId": "query-rule-delete", + "parameters": [ + { + "in": "path", + "name": "ruleset_id", + "description": "The unique identifier of the query ruleset containing the rule to delete", + "required": true, + "deprecated": false, + "schema": { + "$ref": "#/components/schemas/_types:Id" + }, + "style": "simple" + }, + { + "in": "path", + "name": "rule_id", + "description": "The unique identifier of the query rule within the specified ruleset to delete", + "required": true, + "deprecated": false, + "schema": { + "$ref": "#/components/schemas/_types:Id" + }, + "style": "simple" + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/_types:AcknowledgedResponseBase" + } + } + } + } + } + } + }, "/_query_rules/{ruleset_id}": { "get": { "tags": [ @@ -56994,7 +57171,7 @@ "minProperties": 1, "maxProperties": 1 }, - "rule_query": { + "rule": { "$ref": "#/components/schemas/_types.query_dsl:RuleQuery" }, "script": { @@ -60516,8 +60693,11 @@ "organic": { "$ref": "#/components/schemas/_types.query_dsl:QueryContainer" }, - "ruleset_id": { - "$ref": "#/components/schemas/_types:Id" + "ruleset_ids": { + "type": "array", + "items": { + "$ref": "#/components/schemas/_types:Id" + } }, "match_criteria": { "type": "object" @@ -60525,7 +60705,7 @@ }, "required": [ "organic", - "ruleset_id", + "ruleset_ids", "match_criteria" ] } @@ -92776,25 +92956,6 @@ "aggregations" ] }, - "query_ruleset._types:QueryRuleset": { - "type": "object", - "properties": { - "ruleset_id": { - "$ref": "#/components/schemas/_types:Id" - }, - "rules": { - "description": "Rules associated with the query ruleset", - "type": "array", - "items": { - "$ref": "#/components/schemas/query_ruleset._types:QueryRule" - } - } - }, - "required": [ - "ruleset_id", - "rules" - ] - }, "query_ruleset._types:QueryRule": { "type": "object", "properties": { @@ -92844,8 +93005,7 @@ } }, "required": [ - "type", - "metadata" + "type" ] }, "query_ruleset._types:QueryRuleCriteriaType": { @@ -92860,7 +93020,8 @@ "lt", "lte", "gt", - "gte" + "gte", + "always" ] }, "query_ruleset._types:QueryRuleActions": { @@ -92880,20 +93041,47 @@ } } }, + "query_ruleset._types:QueryRuleset": { + "type": "object", + "properties": { + "ruleset_id": { + "$ref": "#/components/schemas/_types:Id" + }, + "rules": { + "description": "Rules associated with the query ruleset", + "type": "array", + "items": { + "$ref": "#/components/schemas/query_ruleset._types:QueryRule" + } + } + }, + "required": [ + "ruleset_id", + "rules" + ] + }, "query_ruleset.list:QueryRulesetListItem": { "type": "object", "properties": { "ruleset_id": { "$ref": "#/components/schemas/_types:Id" }, - "rules_count": { + "rule_total_count": { "description": "The number of rules associated with this ruleset", "type": "number" + }, + "rule_criteria_types_counts": { + "description": "A map of criteria type to the number of rules of that type", + "type": "object", + "additionalProperties": { + "type": "string" + } } }, "required": [ "ruleset_id", - "rules_count" + "rule_total_count", + "rule_criteria_types_counts" ] }, "_global.rank_eval:RankEvalRequestItem": { diff --git a/output/openapi/elasticsearch-serverless-openapi.json b/output/openapi/elasticsearch-serverless-openapi.json index badac7839d..344c0f976a 100644 --- a/output/openapi/elasticsearch-serverless-openapi.json +++ b/output/openapi/elasticsearch-serverless-openapi.json @@ -15211,6 +15211,183 @@ } } }, + "/_query_rules/{ruleset_id}/_rule/{rule_id}": { + "get": { + "tags": [ + "query_rule.get" + ], + "summary": "Returns the details about a query rule within a query ruleset", + "externalDocs": { + "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/get-query-rule.html" + }, + "operationId": "query-rule-get", + "parameters": [ + { + "in": "path", + "name": "ruleset_id", + "description": "The unique identifier of the query ruleset containing the rule to retrieve", + "required": true, + "deprecated": false, + "schema": { + "$ref": "#/components/schemas/_types:Id" + }, + "style": "simple" + }, + { + "in": "path", + "name": "rule_id", + "description": "The unique identifier of the query rule within the specified ruleset to retrieve", + "required": true, + "deprecated": false, + "schema": { + "$ref": "#/components/schemas/_types:Id" + }, + "style": "simple" + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/query_ruleset._types:QueryRule" + } + } + } + } + } + }, + "put": { + "tags": [ + "query_rule.put" + ], + "summary": "Creates or updates a query rule within a query ruleset", + "externalDocs": { + "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/put-query-rule.html" + }, + "operationId": "query-rule-put", + "parameters": [ + { + "in": "path", + "name": "ruleset_id", + "description": "The unique identifier of the query ruleset containing the rule to be created or updated", + "required": true, + "deprecated": false, + "schema": { + "$ref": "#/components/schemas/_types:Id" + }, + "style": "simple" + }, + { + "in": "path", + "name": "rule_id", + "description": "The unique identifier of the query rule within the specified ruleset to be created or updated", + "required": true, + "deprecated": false, + "schema": { + "$ref": "#/components/schemas/_types:Id" + }, + "style": "simple" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/query_ruleset._types:QueryRuleType" + }, + "criteria": { + "type": "array", + "items": { + "$ref": "#/components/schemas/query_ruleset._types:QueryRuleCriteria" + } + }, + "actions": { + "$ref": "#/components/schemas/query_ruleset._types:QueryRuleActions" + } + }, + "required": [ + "type", + "criteria", + "actions" + ] + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "result": { + "$ref": "#/components/schemas/_types:Result" + } + }, + "required": [ + "result" + ] + } + } + } + } + } + }, + "delete": { + "tags": [ + "query_rule.delete" + ], + "summary": "Deletes a query rule within a query ruleset", + "externalDocs": { + "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-query-rule.html" + }, + "operationId": "query-rule-delete", + "parameters": [ + { + "in": "path", + "name": "ruleset_id", + "description": "The unique identifier of the query ruleset containing the rule to delete", + "required": true, + "deprecated": false, + "schema": { + "$ref": "#/components/schemas/_types:Id" + }, + "style": "simple" + }, + { + "in": "path", + "name": "rule_id", + "description": "The unique identifier of the query rule within the specified ruleset to delete", + "required": true, + "deprecated": false, + "schema": { + "$ref": "#/components/schemas/_types:Id" + }, + "style": "simple" + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/_types:AcknowledgedResponseBase" + } + } + } + } + } + } + }, "/_query_rules/{ruleset_id}": { "get": { "tags": [ @@ -34318,7 +34495,7 @@ "minProperties": 1, "maxProperties": 1 }, - "rule_query": { + "rule": { "$ref": "#/components/schemas/_types.query_dsl:RuleQuery" }, "script": { @@ -37840,8 +38017,11 @@ "organic": { "$ref": "#/components/schemas/_types.query_dsl:QueryContainer" }, - "ruleset_id": { - "$ref": "#/components/schemas/_types:Id" + "ruleset_ids": { + "type": "array", + "items": { + "$ref": "#/components/schemas/_types:Id" + } }, "match_criteria": { "type": "object" @@ -37849,7 +38029,7 @@ }, "required": [ "organic", - "ruleset_id", + "ruleset_ids", "match_criteria" ] } @@ -59554,25 +59734,6 @@ "position" ] }, - "query_ruleset._types:QueryRuleset": { - "type": "object", - "properties": { - "ruleset_id": { - "$ref": "#/components/schemas/_types:Id" - }, - "rules": { - "description": "Rules associated with the query ruleset", - "type": "array", - "items": { - "$ref": "#/components/schemas/query_ruleset._types:QueryRule" - } - } - }, - "required": [ - "ruleset_id", - "rules" - ] - }, "query_ruleset._types:QueryRule": { "type": "object", "properties": { @@ -59622,8 +59783,7 @@ } }, "required": [ - "type", - "metadata" + "type" ] }, "query_ruleset._types:QueryRuleCriteriaType": { @@ -59638,7 +59798,8 @@ "lt", "lte", "gt", - "gte" + "gte", + "always" ] }, "query_ruleset._types:QueryRuleActions": { @@ -59658,20 +59819,47 @@ } } }, + "query_ruleset._types:QueryRuleset": { + "type": "object", + "properties": { + "ruleset_id": { + "$ref": "#/components/schemas/_types:Id" + }, + "rules": { + "description": "Rules associated with the query ruleset", + "type": "array", + "items": { + "$ref": "#/components/schemas/query_ruleset._types:QueryRule" + } + } + }, + "required": [ + "ruleset_id", + "rules" + ] + }, "query_ruleset.list:QueryRulesetListItem": { "type": "object", "properties": { "ruleset_id": { "$ref": "#/components/schemas/_types:Id" }, - "rules_count": { + "rule_total_count": { "description": "The number of rules associated with this ruleset", "type": "number" + }, + "rule_criteria_types_counts": { + "description": "A map of criteria type to the number of rules of that type", + "type": "object", + "additionalProperties": { + "type": "string" + } } }, "required": [ "ruleset_id", - "rules_count" + "rule_total_count", + "rule_criteria_types_counts" ] }, "_global.rank_eval:RankEvalRequestItem": { diff --git a/output/schema/schema.json b/output/schema/schema.json index 2396ad7073..4c9a4fc738 100644 --- a/output/schema/schema.json +++ b/output/schema/schema.json @@ -14236,12 +14236,129 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.10.0", - "stability": "experimental" + "stability": "stable" + } + }, + "description": "Deletes a query rule within a query ruleset.", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-query-rule.html", + "name": "query_rule.delete", + "request": { + "name": "Request", + "namespace": "query_rule.delete" + }, + "requestBodyRequired": false, + "response": { + "name": "Response", + "namespace": "query_rule.delete" + }, + "responseMediaType": [ + "application/json" + ], + "since": "8.10.0", + "stability": "stable", + "urls": [ + { + "methods": [ + "DELETE" + ], + "path": "/_query_rules/{ruleset_id}/_rule/{rule_id}" + } + ], + "visibility": "public" + }, + { + "availability": { + "serverless": { + "stability": "stable", + "visibility": "public" + }, + "stack": { + "since": "8.10.0", + "stability": "stable" + } + }, + "description": "Returns the details about a query rule within a query ruleset", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/get-query-rule.html", + "name": "query_rule.get", + "request": { + "name": "Request", + "namespace": "query_rule.get" + }, + "requestBodyRequired": false, + "response": { + "name": "Response", + "namespace": "query_rule.get" + }, + "responseMediaType": [ + "application/json" + ], + "since": "8.10.0", + "stability": "stable", + "urls": [ + { + "methods": [ + "GET" + ], + "path": "/_query_rules/{ruleset_id}/_rule/{rule_id}" + } + ], + "visibility": "public" + }, + { + "availability": { + "serverless": { + "stability": "stable", + "visibility": "public" + }, + "stack": { + "since": "8.15.0", + "stability": "stable" + } + }, + "description": "Creates or updates a query rule within a query ruleset.", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/put-query-rule.html", + "name": "query_rule.put", + "request": { + "name": "Request", + "namespace": "query_rule.put" + }, + "requestBodyRequired": true, + "requestMediaType": [ + "application/json" + ], + "response": { + "name": "Response", + "namespace": "query_rule.put" + }, + "responseMediaType": [ + "application/json" + ], + "since": "8.15.0", + "stability": "stable", + "urls": [ + { + "methods": [ + "PUT" + ], + "path": "/_query_rules/{ruleset_id}/_rule/{rule_id}" + } + ], + "visibility": "public" + }, + { + "availability": { + "serverless": { + "stability": "stable", + "visibility": "public" + }, + "stack": { + "since": "8.10.0", + "stability": "stable" } }, "description": "Deletes a query ruleset.", @@ -14260,7 +14377,7 @@ "application/json" ], "since": "8.10.0", - "stability": "experimental", + "stability": "stable", "urls": [ { "methods": [ @@ -14274,12 +14391,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.10.0", - "stability": "experimental" + "stability": "stable" } }, "description": "Returns the details about a query ruleset", @@ -14298,7 +14415,7 @@ "application/json" ], "since": "8.10.0", - "stability": "experimental", + "stability": "stable", "urls": [ { "methods": [ @@ -14312,12 +14429,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.10.0", - "stability": "experimental" + "stability": "stable" } }, "description": "Returns summarized information about existing query rulesets.", @@ -14336,7 +14453,7 @@ "application/json" ], "since": "8.10.0", - "stability": "experimental", + "stability": "stable", "urls": [ { "methods": [ @@ -14350,12 +14467,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.10.0", - "stability": "experimental" + "stability": "stable" } }, "description": "Creates or updates a query ruleset.", @@ -14377,7 +14494,7 @@ "application/json" ], "since": "8.10.0", - "stability": "experimental", + "stability": "stable", "urls": [ { "methods": [ @@ -80187,7 +80304,7 @@ } }, { - "name": "rule_query", + "name": "rule", "required": false, "type": { "kind": "instance_of", @@ -81413,13 +81530,16 @@ } }, { - "name": "ruleset_id", + "name": "ruleset_ids", "required": true, "type": { - "kind": "instance_of", - "type": { - "name": "Id", - "namespace": "_types" + "kind": "array_of", + "value": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } } } }, @@ -175622,6 +175742,248 @@ ], "specLocation": "nodes/usage/NodesUsageResponse.ts#L25-L28" }, + { + "attachedBehaviors": [ + "CommonQueryParameters" + ], + "body": { + "kind": "no_body" + }, + "description": "Deletes a query rule within a query ruleset.", + "inherits": { + "type": { + "name": "RequestBase", + "namespace": "_types" + } + }, + "kind": "request", + "name": { + "name": "Request", + "namespace": "query_rule.delete" + }, + "path": [ + { + "description": "The unique identifier of the query ruleset containing the rule to delete", + "name": "ruleset_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + }, + { + "description": "The unique identifier of the query rule within the specified ruleset to delete", + "name": "rule_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + } + ], + "query": [], + "specLocation": "query_rule/delete/QueryRuleDeleteRequest.ts#L22-L40" + }, + { + "body": { + "kind": "value", + "value": { + "kind": "instance_of", + "type": { + "name": "AcknowledgedResponseBase", + "namespace": "_types" + } + } + }, + "kind": "response", + "name": { + "name": "Response", + "namespace": "query_rule.delete" + }, + "specLocation": "query_rule/delete/QueryRuleDeleteResponse.ts#L22-L24" + }, + { + "attachedBehaviors": [ + "CommonQueryParameters" + ], + "body": { + "kind": "no_body" + }, + "description": "Returns the details about a query rule within a query ruleset", + "inherits": { + "type": { + "name": "RequestBase", + "namespace": "_types" + } + }, + "kind": "request", + "name": { + "name": "Request", + "namespace": "query_rule.get" + }, + "path": [ + { + "description": "The unique identifier of the query ruleset containing the rule to retrieve", + "name": "ruleset_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + }, + { + "description": "The unique identifier of the query rule within the specified ruleset to retrieve", + "name": "rule_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + } + ], + "query": [], + "specLocation": "query_rule/get/QueryRuleGetRequest.ts#L22-L40" + }, + { + "body": { + "kind": "value", + "value": { + "kind": "instance_of", + "type": { + "name": "QueryRule", + "namespace": "query_ruleset._types" + } + } + }, + "kind": "response", + "name": { + "name": "Response", + "namespace": "query_rule.get" + }, + "specLocation": "query_rule/get/QueryRuleGetResponse.ts#L22-L24" + }, + { + "attachedBehaviors": [ + "CommonQueryParameters" + ], + "body": { + "kind": "properties", + "properties": [ + { + "name": "type", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "QueryRuleType", + "namespace": "query_ruleset._types" + } + } + }, + { + "name": "criteria", + "required": true, + "type": { + "kind": "array_of", + "value": { + "kind": "instance_of", + "type": { + "name": "QueryRuleCriteria", + "namespace": "query_ruleset._types" + } + } + } + }, + { + "name": "actions", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "QueryRuleActions", + "namespace": "query_ruleset._types" + } + } + } + ] + }, + "description": "Creates or updates a query rule within a query ruleset.", + "inherits": { + "type": { + "name": "RequestBase", + "namespace": "_types" + } + }, + "kind": "request", + "name": { + "name": "Request", + "namespace": "query_rule.put" + }, + "path": [ + { + "description": "The unique identifier of the query ruleset containing the rule to be created or updated", + "name": "ruleset_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + }, + { + "description": "The unique identifier of the query rule within the specified ruleset to be created or updated", + "name": "rule_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + } + ], + "query": [], + "specLocation": "query_rule/put/QueryRulePutRequest.ts#L27-L54" + }, + { + "body": { + "kind": "properties", + "properties": [ + { + "name": "result", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Result", + "namespace": "_types" + } + } + } + ] + }, + "kind": "response", + "name": { + "name": "Response", + "namespace": "query_rule.put" + }, + "specLocation": "query_rule/put/QueryRulePutResponse.ts#L22-L26" + }, { "kind": "interface", "name": { @@ -175715,7 +176077,7 @@ } } ], - "specLocation": "query_ruleset/_types/QueryRuleset.ts#L67-L70" + "specLocation": "query_ruleset/_types/QueryRuleset.ts#L68-L71" }, { "kind": "interface", @@ -175737,7 +176099,7 @@ }, { "name": "metadata", - "required": true, + "required": false, "type": { "kind": "instance_of", "type": { @@ -175791,13 +176153,16 @@ }, { "name": "gte" + }, + { + "name": "always" } ], "name": { "name": "QueryRuleCriteriaType", "namespace": "query_ruleset._types" }, - "specLocation": "query_ruleset/_types/QueryRuleset.ts#L54-L65" + "specLocation": "query_ruleset/_types/QueryRuleset.ts#L54-L66" }, { "kind": "enum", @@ -175978,7 +176343,7 @@ }, { "description": "The number of rules associated with this ruleset", - "name": "rules_count", + "name": "rule_total_count", "required": true, "type": { "kind": "instance_of", @@ -175987,9 +176352,32 @@ "namespace": "_types" } } + }, + { + "description": "A map of criteria type to the number of rules of that type", + "name": "rule_criteria_types_counts", + "required": true, + "type": { + "key": { + "kind": "instance_of", + "type": { + "name": "string", + "namespace": "_builtins" + } + }, + "kind": "dictionary_of", + "singleKey": false, + "value": { + "kind": "instance_of", + "type": { + "name": "string", + "namespace": "_builtins" + } + } + } } ], - "specLocation": "query_ruleset/list/types.ts#L22-L31" + "specLocation": "query_ruleset/list/types.ts#L23-L37" }, { "attachedBehaviors": [ diff --git a/output/schema/validation-errors.json b/output/schema/validation-errors.json index 2e3723f359..bec7cfaeda 100644 --- a/output/schema/validation-errors.json +++ b/output/schema/validation-errors.json @@ -1350,6 +1350,12 @@ "response definition _global.put_script:Response / body / instance_of - Non-leaf type cannot be used here: '_types:AcknowledgedResponseBase'" ] }, + "query_rule.delete": { + "request": [], + "response": [ + "response definition query_rule.delete:Response / body / instance_of - Non-leaf type cannot be used here: '_types:AcknowledgedResponseBase'" + ] + }, "query_ruleset.delete": { "request": [], "response": [ diff --git a/output/typescript/types.ts b/output/typescript/types.ts index ca7e8c3ca6..68501e98a8 100644 --- a/output/typescript/types.ts +++ b/output/typescript/types.ts @@ -5948,7 +5948,7 @@ export interface QueryDslQueryContainer { range?: Partial> rank_feature?: QueryDslRankFeatureQuery regexp?: Partial> - rule_query?: QueryDslRuleQuery + rule?: QueryDslRuleQuery script?: QueryDslScriptQuery script_score?: QueryDslScriptScoreQuery semantic?: QueryDslSemanticQuery @@ -6054,7 +6054,7 @@ export interface QueryDslRegexpQuery extends QueryDslQueryBase { export interface QueryDslRuleQuery extends QueryDslQueryBase { organic: QueryDslQueryContainer - ruleset_id: Id + ruleset_ids: Id[] match_criteria: any } @@ -16360,6 +16360,34 @@ export interface NodesUsageResponseBase extends NodesNodesResponseBase { nodes: Record } +export interface QueryRuleDeleteRequest extends RequestBase { + ruleset_id: Id + rule_id: Id +} + +export type QueryRuleDeleteResponse = AcknowledgedResponseBase + +export interface QueryRuleGetRequest extends RequestBase { + ruleset_id: Id + rule_id: Id +} + +export type QueryRuleGetResponse = QueryRulesetQueryRule + +export interface QueryRulePutRequest extends RequestBase { + ruleset_id: Id + rule_id: Id + body?: { + type: QueryRulesetQueryRuleType + criteria: QueryRulesetQueryRuleCriteria[] + actions: QueryRulesetQueryRuleActions + } +} + +export interface QueryRulePutResponse { + result: Result +} + export interface QueryRulesetQueryRule { rule_id: Id type: QueryRulesetQueryRuleType @@ -16374,11 +16402,11 @@ export interface QueryRulesetQueryRuleActions { export interface QueryRulesetQueryRuleCriteria { type: QueryRulesetQueryRuleCriteriaType - metadata: string + metadata?: string values?: any[] } -export type QueryRulesetQueryRuleCriteriaType = 'global' | 'exact' | 'exact_fuzzy' | 'prefix' | 'suffix' | 'contains' | 'lt' | 'lte' | 'gt' | 'gte' +export type QueryRulesetQueryRuleCriteriaType = 'global' | 'exact' | 'exact_fuzzy' | 'prefix' | 'suffix' | 'contains' | 'lt' | 'lte' | 'gt' | 'gte' | 'always' export type QueryRulesetQueryRuleType = 'pinned' @@ -16401,7 +16429,8 @@ export type QueryRulesetGetResponse = QueryRulesetQueryRuleset export interface QueryRulesetListQueryRulesetListItem { ruleset_id: Id - rules_count: integer + rule_total_count: integer + rule_criteria_types_counts: Record } export interface QueryRulesetListRequest extends RequestBase { diff --git a/specification/_json_spec/query_rule.delete.json b/specification/_json_spec/query_rule.delete.json new file mode 100644 index 0000000000..8624178f79 --- /dev/null +++ b/specification/_json_spec/query_rule.delete.json @@ -0,0 +1,31 @@ +{ + "query_rule.delete": { + "documentation": { + "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-query-rule.html", + "description": "Deletes an individual query rule within a query ruleset." + }, + "stability": "stable", + "visibility": "public", + "headers": { + "accept": ["application/json"] + }, + "url": { + "paths": [ + { + "path": "/_query_rules/{ruleset_id}/_rule/{rule_id}", + "methods": ["DELETE"], + "parts": { + "ruleset_id": { + "type": "string", + "description": "The unique identifier of the query ruleset containing the rule to delete" + }, + "rule_id": { + "type": "string", + "description": "The unique identifier of the query rule to delete" + } + } + } + ] + } + } +} diff --git a/specification/_json_spec/query_rule.get.json b/specification/_json_spec/query_rule.get.json new file mode 100644 index 0000000000..dbd13f8b76 --- /dev/null +++ b/specification/_json_spec/query_rule.get.json @@ -0,0 +1,31 @@ +{ + "query_rule.get": { + "documentation": { + "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/get-query-rule.html", + "description": "Returns the details about an individual query rule within a query ruleset." + }, + "stability": "stable", + "visibility": "public", + "headers": { + "accept": ["application/json"] + }, + "url": { + "paths": [ + { + "path": "/_query_rules/{ruleset_id}/_rule/{rule_id}", + "methods": ["GET"], + "parts": { + "ruleset_id": { + "type": "string", + "description": "The unique identifier of the query ruleset" + }, + "rule_id": { + "type": "string", + "description": "The unique identifier of the query rule" + } + } + } + ] + } + } +} diff --git a/specification/_json_spec/query_rule.put.json b/specification/_json_spec/query_rule.put.json new file mode 100644 index 0000000000..c98a219993 --- /dev/null +++ b/specification/_json_spec/query_rule.put.json @@ -0,0 +1,36 @@ +{ + "query_rule.put": { + "documentation": { + "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/put-query-rule.html", + "description": "Creates or updates an individual query rule within a query ruleset." + }, + "stability": "stable", + "visibility": "public", + "headers": { + "accept": ["application/json"], + "content_type": ["application/json"] + }, + "url": { + "paths": [ + { + "path": "/_query_rules/{ruleset_id}/_rule/{rule_id}", + "methods": ["PUT"], + "parts": { + "ruleset_id": { + "type": "string", + "description": "The unique identifier of the ruleset containing the rule to be created or updated." + }, + "rule_id": { + "type": "string", + "description": "The unique identifier of the query rule to be created or updated." + } + } + } + ] + }, + "body": { + "description": "The query rule", + "required": true + } + } +} diff --git a/specification/_json_spec/query_ruleset.delete.json b/specification/_json_spec/query_ruleset.delete.json index dc68faee53..ab51642c25 100644 --- a/specification/_json_spec/query_ruleset.delete.json +++ b/specification/_json_spec/query_ruleset.delete.json @@ -4,7 +4,7 @@ "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-query-ruleset.html", "description": "Deletes a query ruleset." }, - "stability": "experimental", + "stability": "stable", "visibility": "public", "headers": { "accept": ["application/json"] diff --git a/specification/_json_spec/query_ruleset.get.json b/specification/_json_spec/query_ruleset.get.json index 254dcff8e0..a58fd77fb5 100644 --- a/specification/_json_spec/query_ruleset.get.json +++ b/specification/_json_spec/query_ruleset.get.json @@ -4,7 +4,7 @@ "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/get-query-ruleset.html", "description": "Returns the details about a query ruleset." }, - "stability": "experimental", + "stability": "stable", "visibility": "public", "headers": { "accept": ["application/json"] diff --git a/specification/_json_spec/query_ruleset.list.json b/specification/_json_spec/query_ruleset.list.json index 78585b9959..632b3d3fbf 100644 --- a/specification/_json_spec/query_ruleset.list.json +++ b/specification/_json_spec/query_ruleset.list.json @@ -4,7 +4,7 @@ "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/list-query-rulesets.html", "description": "Lists query rulesets." }, - "stability": "experimental", + "stability": "stable", "visibility": "public", "headers": { "accept": ["application/json"] diff --git a/specification/_json_spec/query_ruleset.put.json b/specification/_json_spec/query_ruleset.put.json index 55617b73fb..3bf1e6ac3c 100644 --- a/specification/_json_spec/query_ruleset.put.json +++ b/specification/_json_spec/query_ruleset.put.json @@ -4,7 +4,7 @@ "url": "https://www.elastic.co/guide/en/elasticsearch/reference/master/put-query-ruleset.html", "description": "Creates or updates a query ruleset." }, - "stability": "experimental", + "stability": "stable", "visibility": "public", "headers": { "accept": ["application/json"], diff --git a/specification/_types/query_dsl/abstractions.ts b/specification/_types/query_dsl/abstractions.ts index 8f6321ce77..67f3b32122 100644 --- a/specification/_types/query_dsl/abstractions.ts +++ b/specification/_types/query_dsl/abstractions.ts @@ -294,7 +294,7 @@ export class QueryContainer { * @doc_id query-dsl-regexp-query */ regexp?: SingleKeyDictionary - rule_query?: RuleQuery + rule?: RuleQuery /** * Filters documents based on a provided script. * The script query is typically used in a filter context. diff --git a/specification/_types/query_dsl/specialized.ts b/specification/_types/query_dsl/specialized.ts index f4e99b5277..eae27358f6 100644 --- a/specification/_types/query_dsl/specialized.ts +++ b/specification/_types/query_dsl/specialized.ts @@ -368,6 +368,6 @@ export class ShapeFieldQuery { export class RuleQuery extends QueryBase { organic: QueryContainer - ruleset_id: Id + ruleset_ids: Id[] match_criteria: UserDefinedValue } diff --git a/specification/query_rule/delete/QueryRuleDeleteRequest.ts b/specification/query_rule/delete/QueryRuleDeleteRequest.ts new file mode 100644 index 0000000000..4b372dfd91 --- /dev/null +++ b/specification/query_rule/delete/QueryRuleDeleteRequest.ts @@ -0,0 +1,40 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +import { RequestBase } from '@_types/Base' +import { Id } from '@_types/common' + +/** + * Deletes a query rule within a query ruleset. + * @rest_spec_name query_rule.delete + * @availability stack since=8.10.0 stability=stable + * @availability serverless stability=stable visibility=public + */ +export interface Request extends RequestBase { + path_parts: { + /** + * The unique identifier of the query ruleset containing the rule to delete + */ + ruleset_id: Id + + /** + * The unique identifier of the query rule within the specified ruleset to delete + */ + rule_id: Id + } +} diff --git a/specification/query_rule/delete/QueryRuleDeleteResponse.ts b/specification/query_rule/delete/QueryRuleDeleteResponse.ts new file mode 100644 index 0000000000..7374da4a4c --- /dev/null +++ b/specification/query_rule/delete/QueryRuleDeleteResponse.ts @@ -0,0 +1,24 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { AcknowledgedResponseBase } from '@_types/Base' + +export class Response { + body: AcknowledgedResponseBase +} diff --git a/specification/query_rule/get/QueryRuleGetRequest.ts b/specification/query_rule/get/QueryRuleGetRequest.ts new file mode 100644 index 0000000000..7e6f27a0d1 --- /dev/null +++ b/specification/query_rule/get/QueryRuleGetRequest.ts @@ -0,0 +1,40 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +import { RequestBase } from '@_types/Base' +import { Id } from '@_types/common' + +/** + * Returns the details about a query rule within a query ruleset + * @rest_spec_name query_rule.get + * @availability stack since=8.10.0 stability=stable + * @availability serverless stability=stable visibility=public + */ +export interface Request extends RequestBase { + path_parts: { + /** + * The unique identifier of the query ruleset containing the rule to retrieve + */ + ruleset_id: Id + + /** + * The unique identifier of the query rule within the specified ruleset to retrieve + */ + rule_id: Id + } +} diff --git a/specification/query_rule/get/QueryRuleGetResponse.ts b/specification/query_rule/get/QueryRuleGetResponse.ts new file mode 100644 index 0000000000..c157bcb2b9 --- /dev/null +++ b/specification/query_rule/get/QueryRuleGetResponse.ts @@ -0,0 +1,24 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { QueryRule } from '../../query_ruleset/_types/QueryRuleset' + +export class Response { + body: QueryRule +} diff --git a/specification/query_rule/put/QueryRulePutRequest.ts b/specification/query_rule/put/QueryRulePutRequest.ts new file mode 100644 index 0000000000..65a3aac3a7 --- /dev/null +++ b/specification/query_rule/put/QueryRulePutRequest.ts @@ -0,0 +1,54 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +import { RequestBase } from '@_types/Base' +import { Id } from '@_types/common' +import { + QueryRuleType, + QueryRuleCriteria, + QueryRuleActions +} from '../../query_ruleset/_types/QueryRuleset' + +/** + * Creates or updates a query rule within a query ruleset. + * @rest_spec_name query_rule.put + * @availability stack since=8.15.0 stability=stable + * @availability serverless stability=stable visibility=public + */ +export interface Request extends RequestBase { + path_parts: { + /** + * The unique identifier of the query ruleset containing the rule to be created or updated + */ + ruleset_id: Id + + /** + * The unique identifier of the query rule within the specified ruleset to be created or updated + */ + rule_id: Id + } + /** + * The query rule information + */ + /** @codegen_name query_rule */ + body: { + type: QueryRuleType + criteria: QueryRuleCriteria[] + actions: QueryRuleActions + } +} diff --git a/specification/query_rule/put/QueryRulePutResponse.ts b/specification/query_rule/put/QueryRulePutResponse.ts new file mode 100644 index 0000000000..fc194d6f20 --- /dev/null +++ b/specification/query_rule/put/QueryRulePutResponse.ts @@ -0,0 +1,26 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { Result } from '@_types/Result' + +export class Response { + body: { + result: Result + } +} diff --git a/specification/query_ruleset/_types/QueryRuleset.ts b/specification/query_ruleset/_types/QueryRuleset.ts index d490bae0e9..de33443501 100644 --- a/specification/query_ruleset/_types/QueryRuleset.ts +++ b/specification/query_ruleset/_types/QueryRuleset.ts @@ -47,7 +47,7 @@ export enum QueryRuleType { export class QueryRuleCriteria { type: QueryRuleCriteriaType - metadata: string + metadata?: string values?: UserDefinedValue[] } @@ -61,7 +61,8 @@ export enum QueryRuleCriteriaType { lt, lte, gt, - gte + gte, + always } export class QueryRuleActions { diff --git a/specification/query_ruleset/delete/QueryRulesetDeleteRequest.ts b/specification/query_ruleset/delete/QueryRulesetDeleteRequest.ts index abaf6a902f..09fec31240 100644 --- a/specification/query_ruleset/delete/QueryRulesetDeleteRequest.ts +++ b/specification/query_ruleset/delete/QueryRulesetDeleteRequest.ts @@ -22,8 +22,8 @@ import { Id } from '@_types/common' /** * Deletes a query ruleset. * @rest_spec_name query_ruleset.delete - * @availability stack since=8.10.0 stability=experimental - * @availability serverless stability=experimental visibility=public + * @availability stack since=8.10.0 stability=stable + * @availability serverless stability=stable visibility=public */ export interface Request extends RequestBase { path_parts: { diff --git a/specification/query_ruleset/get/QueryRulesetGetRequest.ts b/specification/query_ruleset/get/QueryRulesetGetRequest.ts index a67f3fe17c..01c75b0afb 100644 --- a/specification/query_ruleset/get/QueryRulesetGetRequest.ts +++ b/specification/query_ruleset/get/QueryRulesetGetRequest.ts @@ -22,8 +22,8 @@ import { Id } from '@_types/common' /** * Returns the details about a query ruleset * @rest_spec_name query_ruleset.get - * @availability stack since=8.10.0 stability=experimental - * @availability serverless stability=experimental visibility=public + * @availability stack since=8.10.0 stability=stable + * @availability serverless stability=stable visibility=public */ export interface Request extends RequestBase { path_parts: { diff --git a/specification/query_ruleset/list/QueryRulesetListRequest.ts b/specification/query_ruleset/list/QueryRulesetListRequest.ts index 69fb1ff9f2..34f4fa401f 100644 --- a/specification/query_ruleset/list/QueryRulesetListRequest.ts +++ b/specification/query_ruleset/list/QueryRulesetListRequest.ts @@ -22,8 +22,8 @@ import { integer } from '@_types/Numeric' /** * Returns summarized information about existing query rulesets. * @rest_spec_name query_ruleset.list - * @availability stack since=8.10.0 stability=experimental - * @availability serverless stability=experimental visibility=public + * @availability stack since=8.10.0 stability=stable + * @availability serverless stability=stable visibility=public */ export interface Request extends RequestBase { query_parameters: { diff --git a/specification/query_ruleset/list/types.ts b/specification/query_ruleset/list/types.ts index 8dc4e2083c..918bd1d0f9 100644 --- a/specification/query_ruleset/list/types.ts +++ b/specification/query_ruleset/list/types.ts @@ -18,6 +18,7 @@ */ import { integer } from '@_types/Numeric' import { Id } from '@_types/common' +import { Dictionary } from '@spec_utils/Dictionary' export class QueryRulesetListItem { /** @@ -27,5 +28,10 @@ export class QueryRulesetListItem { /** * The number of rules associated with this ruleset */ - rules_count: integer + rule_total_count: integer + + /** + * A map of criteria type to the number of rules of that type + */ + rule_criteria_types_counts: Dictionary } diff --git a/specification/query_ruleset/put/QueryRulesetPutRequest.ts b/specification/query_ruleset/put/QueryRulesetPutRequest.ts index 89f10cd8e4..4fb94349b8 100644 --- a/specification/query_ruleset/put/QueryRulesetPutRequest.ts +++ b/specification/query_ruleset/put/QueryRulesetPutRequest.ts @@ -23,8 +23,8 @@ import { QueryRule } from '../_types/QueryRuleset' /** * Creates or updates a query ruleset. * @rest_spec_name query_ruleset.put - * @availability stack since=8.10.0 stability=experimental - * @availability serverless stability=experimental visibility=public + * @availability stack since=8.10.0 stability=stable + * @availability serverless stability=stable visibility=public */ export interface Request extends RequestBase { path_parts: { From 5f6989c7e35c0d92c3b824d4f8f19c0c682ec54e Mon Sep 17 00:00:00 2001 From: Elastic Machine Date: Tue, 25 Jun 2024 12:38:58 +0000 Subject: [PATCH 09/12] Update specification output --- output/schema/schema-serverless.json | 508 +++++++++++++++++++++++---- 1 file changed, 448 insertions(+), 60 deletions(-) diff --git a/output/schema/schema-serverless.json b/output/schema/schema-serverless.json index c992dad0d9..68e7adf88b 100644 --- a/output/schema/schema-serverless.json +++ b/output/schema/schema-serverless.json @@ -8073,12 +8073,129 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.10.0", - "stability": "experimental" + "stability": "stable" + } + }, + "description": "Deletes a query rule within a query ruleset.", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-query-rule.html", + "name": "query_rule.delete", + "request": { + "name": "Request", + "namespace": "query_rule.delete" + }, + "requestBodyRequired": false, + "response": { + "name": "Response", + "namespace": "query_rule.delete" + }, + "responseMediaType": [ + "application/json" + ], + "since": "8.10.0", + "stability": "stable", + "urls": [ + { + "methods": [ + "DELETE" + ], + "path": "/_query_rules/{ruleset_id}/_rule/{rule_id}" + } + ], + "visibility": "public" + }, + { + "availability": { + "serverless": { + "stability": "stable", + "visibility": "public" + }, + "stack": { + "since": "8.10.0", + "stability": "stable" + } + }, + "description": "Returns the details about a query rule within a query ruleset", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/get-query-rule.html", + "name": "query_rule.get", + "request": { + "name": "Request", + "namespace": "query_rule.get" + }, + "requestBodyRequired": false, + "response": { + "name": "Response", + "namespace": "query_rule.get" + }, + "responseMediaType": [ + "application/json" + ], + "since": "8.10.0", + "stability": "stable", + "urls": [ + { + "methods": [ + "GET" + ], + "path": "/_query_rules/{ruleset_id}/_rule/{rule_id}" + } + ], + "visibility": "public" + }, + { + "availability": { + "serverless": { + "stability": "stable", + "visibility": "public" + }, + "stack": { + "since": "8.15.0", + "stability": "stable" + } + }, + "description": "Creates or updates a query rule within a query ruleset.", + "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/put-query-rule.html", + "name": "query_rule.put", + "request": { + "name": "Request", + "namespace": "query_rule.put" + }, + "requestBodyRequired": true, + "requestMediaType": [ + "application/json" + ], + "response": { + "name": "Response", + "namespace": "query_rule.put" + }, + "responseMediaType": [ + "application/json" + ], + "since": "8.15.0", + "stability": "stable", + "urls": [ + { + "methods": [ + "PUT" + ], + "path": "/_query_rules/{ruleset_id}/_rule/{rule_id}" + } + ], + "visibility": "public" + }, + { + "availability": { + "serverless": { + "stability": "stable", + "visibility": "public" + }, + "stack": { + "since": "8.10.0", + "stability": "stable" } }, "description": "Deletes a query ruleset.", @@ -8097,7 +8214,7 @@ "application/json" ], "since": "8.10.0", - "stability": "experimental", + "stability": "stable", "urls": [ { "methods": [ @@ -8111,12 +8228,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.10.0", - "stability": "experimental" + "stability": "stable" } }, "description": "Returns the details about a query ruleset", @@ -8135,7 +8252,7 @@ "application/json" ], "since": "8.10.0", - "stability": "experimental", + "stability": "stable", "urls": [ { "methods": [ @@ -8149,12 +8266,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.10.0", - "stability": "experimental" + "stability": "stable" } }, "description": "Returns summarized information about existing query rulesets.", @@ -8173,7 +8290,7 @@ "application/json" ], "since": "8.10.0", - "stability": "experimental", + "stability": "stable", "urls": [ { "methods": [ @@ -8187,12 +8304,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.10.0", - "stability": "experimental" + "stability": "stable" } }, "description": "Creates or updates a query ruleset.", @@ -8214,7 +8331,7 @@ "application/json" ], "since": "8.10.0", - "stability": "experimental", + "stability": "stable", "urls": [ { "methods": [ @@ -35364,6 +35481,248 @@ }, "specLocation": "_global/put_script/PutScriptResponse.ts#L22-L24" }, + { + "attachedBehaviors": [ + "CommonQueryParameters" + ], + "body": { + "kind": "no_body" + }, + "description": "Deletes a query rule within a query ruleset.", + "inherits": { + "type": { + "name": "RequestBase", + "namespace": "_types" + } + }, + "kind": "request", + "name": { + "name": "Request", + "namespace": "query_rule.delete" + }, + "path": [ + { + "description": "The unique identifier of the query ruleset containing the rule to delete", + "name": "ruleset_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + }, + { + "description": "The unique identifier of the query rule within the specified ruleset to delete", + "name": "rule_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + } + ], + "query": [], + "specLocation": "query_rule/delete/QueryRuleDeleteRequest.ts#L22-L40" + }, + { + "body": { + "kind": "value", + "value": { + "kind": "instance_of", + "type": { + "name": "AcknowledgedResponseBase", + "namespace": "_types" + } + } + }, + "kind": "response", + "name": { + "name": "Response", + "namespace": "query_rule.delete" + }, + "specLocation": "query_rule/delete/QueryRuleDeleteResponse.ts#L22-L24" + }, + { + "attachedBehaviors": [ + "CommonQueryParameters" + ], + "body": { + "kind": "no_body" + }, + "description": "Returns the details about a query rule within a query ruleset", + "inherits": { + "type": { + "name": "RequestBase", + "namespace": "_types" + } + }, + "kind": "request", + "name": { + "name": "Request", + "namespace": "query_rule.get" + }, + "path": [ + { + "description": "The unique identifier of the query ruleset containing the rule to retrieve", + "name": "ruleset_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + }, + { + "description": "The unique identifier of the query rule within the specified ruleset to retrieve", + "name": "rule_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + } + ], + "query": [], + "specLocation": "query_rule/get/QueryRuleGetRequest.ts#L22-L40" + }, + { + "body": { + "kind": "value", + "value": { + "kind": "instance_of", + "type": { + "name": "QueryRule", + "namespace": "query_ruleset._types" + } + } + }, + "kind": "response", + "name": { + "name": "Response", + "namespace": "query_rule.get" + }, + "specLocation": "query_rule/get/QueryRuleGetResponse.ts#L22-L24" + }, + { + "attachedBehaviors": [ + "CommonQueryParameters" + ], + "body": { + "kind": "properties", + "properties": [ + { + "name": "type", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "QueryRuleType", + "namespace": "query_ruleset._types" + } + } + }, + { + "name": "criteria", + "required": true, + "type": { + "kind": "array_of", + "value": { + "kind": "instance_of", + "type": { + "name": "QueryRuleCriteria", + "namespace": "query_ruleset._types" + } + } + } + }, + { + "name": "actions", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "QueryRuleActions", + "namespace": "query_ruleset._types" + } + } + } + ] + }, + "description": "Creates or updates a query rule within a query ruleset.", + "inherits": { + "type": { + "name": "RequestBase", + "namespace": "_types" + } + }, + "kind": "request", + "name": { + "name": "Request", + "namespace": "query_rule.put" + }, + "path": [ + { + "description": "The unique identifier of the query ruleset containing the rule to be created or updated", + "name": "ruleset_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + }, + { + "description": "The unique identifier of the query rule within the specified ruleset to be created or updated", + "name": "rule_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + } + ], + "query": [], + "specLocation": "query_rule/put/QueryRulePutRequest.ts#L27-L54" + }, + { + "body": { + "kind": "properties", + "properties": [ + { + "name": "result", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Result", + "namespace": "_types" + } + } + } + ] + }, + "kind": "response", + "name": { + "name": "Response", + "namespace": "query_rule.put" + }, + "specLocation": "query_rule/put/QueryRulePutResponse.ts#L22-L26" + }, { "attachedBehaviors": [ "CommonQueryParameters" @@ -48132,7 +48491,7 @@ } }, { - "name": "rule_query", + "name": "rule", "required": false, "type": { "kind": "instance_of", @@ -58186,13 +58545,16 @@ } }, { - "name": "ruleset_id", + "name": "ruleset_ids", "required": true, "type": { - "kind": "instance_of", - "type": { - "name": "Id", - "namespace": "_types" + "kind": "array_of", + "value": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } } } }, @@ -98830,13 +99192,16 @@ }, { "name": "gte" + }, + { + "name": "always" } ], "name": { "name": "QueryRuleCriteriaType", "namespace": "query_ruleset._types" }, - "specLocation": "query_ruleset/_types/QueryRuleset.ts#L54-L65" + "specLocation": "query_ruleset/_types/QueryRuleset.ts#L54-L66" }, { "kind": "enum", @@ -132154,43 +132519,6 @@ ], "specLocation": "_global/termvectors/types.ts#L42-L47" }, - { - "kind": "interface", - "name": { - "name": "QueryRuleset", - "namespace": "query_ruleset._types" - }, - "properties": [ - { - "description": "Query Ruleset unique identifier", - "name": "ruleset_id", - "required": true, - "type": { - "kind": "instance_of", - "type": { - "name": "Id", - "namespace": "_types" - } - } - }, - { - "description": "Rules associated with the query ruleset", - "name": "rules", - "required": true, - "type": { - "kind": "array_of", - "value": { - "kind": "instance_of", - "type": { - "name": "QueryRule", - "namespace": "query_ruleset._types" - } - } - } - } - ], - "specLocation": "query_ruleset/_types/QueryRuleset.ts#L26-L35" - }, { "kind": "interface", "name": { @@ -132268,7 +132596,7 @@ }, { "name": "metadata", - "required": true, + "required": false, "type": { "kind": "instance_of", "type": { @@ -132326,7 +132654,44 @@ } } ], - "specLocation": "query_ruleset/_types/QueryRuleset.ts#L67-L70" + "specLocation": "query_ruleset/_types/QueryRuleset.ts#L68-L71" + }, + { + "kind": "interface", + "name": { + "name": "QueryRuleset", + "namespace": "query_ruleset._types" + }, + "properties": [ + { + "description": "Query Ruleset unique identifier", + "name": "ruleset_id", + "required": true, + "type": { + "kind": "instance_of", + "type": { + "name": "Id", + "namespace": "_types" + } + } + }, + { + "description": "Rules associated with the query ruleset", + "name": "rules", + "required": true, + "type": { + "kind": "array_of", + "value": { + "kind": "instance_of", + "type": { + "name": "QueryRule", + "namespace": "query_ruleset._types" + } + } + } + } + ], + "specLocation": "query_ruleset/_types/QueryRuleset.ts#L26-L35" }, { "kind": "interface", @@ -132349,7 +132714,7 @@ }, { "description": "The number of rules associated with this ruleset", - "name": "rules_count", + "name": "rule_total_count", "required": true, "type": { "kind": "instance_of", @@ -132358,9 +132723,32 @@ "namespace": "_types" } } + }, + { + "description": "A map of criteria type to the number of rules of that type", + "name": "rule_criteria_types_counts", + "required": true, + "type": { + "key": { + "kind": "instance_of", + "type": { + "name": "string", + "namespace": "_builtins" + } + }, + "kind": "dictionary_of", + "singleKey": false, + "value": { + "kind": "instance_of", + "type": { + "name": "string", + "namespace": "_builtins" + } + } + } } ], - "specLocation": "query_ruleset/list/types.ts#L22-L31" + "specLocation": "query_ruleset/list/types.ts#L23-L37" }, { "kind": "interface", From 1c070abb0b12cf9193ad27abf6fb871367fa7128 Mon Sep 17 00:00:00 2001 From: Kathleen DeRusso Date: Tue, 25 Jun 2024 09:15:41 -0400 Subject: [PATCH 10/12] Update output --- output/schema/schema.json | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/output/schema/schema.json b/output/schema/schema.json index 4c9a4fc738..87cd4734f4 100644 --- a/output/schema/schema.json +++ b/output/schema/schema.json @@ -75090,7 +75090,7 @@ "name": "CombinedFieldsOperator", "namespace": "_types.query_dsl" }, - "specLocation": "_types/query_dsl/abstractions.ts#L499-L502" + "specLocation": "_types/query_dsl/abstractions.ts#L509-L512" }, { "inherits": { @@ -75186,7 +75186,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L455-L489" + "specLocation": "_types/query_dsl/abstractions.ts#L465-L499" }, { "kind": "enum", @@ -75204,7 +75204,7 @@ "name": "CombinedFieldsZeroTerms", "namespace": "_types.query_dsl" }, - "specLocation": "_types/query_dsl/abstractions.ts#L504-L513" + "specLocation": "_types/query_dsl/abstractions.ts#L514-L523" }, { "inherits": { @@ -75882,7 +75882,7 @@ } ], "shortcutProperty": "field", - "specLocation": "_types/query_dsl/abstractions.ts#L515-L529" + "specLocation": "_types/query_dsl/abstractions.ts#L525-L539" }, { "kind": "interface", @@ -75940,7 +75940,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L419-L436" + "specLocation": "_types/query_dsl/abstractions.ts#L429-L446" }, { "kind": "enum", @@ -79669,7 +79669,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L442-L453" + "specLocation": "_types/query_dsl/abstractions.ts#L452-L463" }, { "docId": "query-dsl", @@ -80736,7 +80736,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L101-L417", + "specLocation": "_types/query_dsl/abstractions.ts#L102-L427", "variants": { "kind": "container", "nonExhaustive": true @@ -83413,7 +83413,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L491-L497" + "specLocation": "_types/query_dsl/abstractions.ts#L501-L507" }, { "kind": "enum", @@ -211203,4 +211203,4 @@ "specLocation": "_spec_utils/behaviors.ts#L134-L140" } ] -} +} \ No newline at end of file From 1e76b92db60beb9a78062f6b7431e09cd76afed3 Mon Sep 17 00:00:00 2001 From: Kathleen DeRusso Date: Tue, 25 Jun 2024 09:21:56 -0400 Subject: [PATCH 11/12] Update output --- output/schema/schema.json | 18 +- package-lock.json | 2527 +++++++++++++++++++++++++++++++++++++ package.json | 5 + 3 files changed, 2541 insertions(+), 9 deletions(-) create mode 100644 package-lock.json create mode 100644 package.json diff --git a/output/schema/schema.json b/output/schema/schema.json index 4c9a4fc738..87cd4734f4 100644 --- a/output/schema/schema.json +++ b/output/schema/schema.json @@ -75090,7 +75090,7 @@ "name": "CombinedFieldsOperator", "namespace": "_types.query_dsl" }, - "specLocation": "_types/query_dsl/abstractions.ts#L499-L502" + "specLocation": "_types/query_dsl/abstractions.ts#L509-L512" }, { "inherits": { @@ -75186,7 +75186,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L455-L489" + "specLocation": "_types/query_dsl/abstractions.ts#L465-L499" }, { "kind": "enum", @@ -75204,7 +75204,7 @@ "name": "CombinedFieldsZeroTerms", "namespace": "_types.query_dsl" }, - "specLocation": "_types/query_dsl/abstractions.ts#L504-L513" + "specLocation": "_types/query_dsl/abstractions.ts#L514-L523" }, { "inherits": { @@ -75882,7 +75882,7 @@ } ], "shortcutProperty": "field", - "specLocation": "_types/query_dsl/abstractions.ts#L515-L529" + "specLocation": "_types/query_dsl/abstractions.ts#L525-L539" }, { "kind": "interface", @@ -75940,7 +75940,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L419-L436" + "specLocation": "_types/query_dsl/abstractions.ts#L429-L446" }, { "kind": "enum", @@ -79669,7 +79669,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L442-L453" + "specLocation": "_types/query_dsl/abstractions.ts#L452-L463" }, { "docId": "query-dsl", @@ -80736,7 +80736,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L101-L417", + "specLocation": "_types/query_dsl/abstractions.ts#L102-L427", "variants": { "kind": "container", "nonExhaustive": true @@ -83413,7 +83413,7 @@ } } ], - "specLocation": "_types/query_dsl/abstractions.ts#L491-L497" + "specLocation": "_types/query_dsl/abstractions.ts#L501-L507" }, { "kind": "enum", @@ -211203,4 +211203,4 @@ "specLocation": "_spec_utils/behaviors.ts#L134-L140" } ] -} +} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000000..743374922d --- /dev/null +++ b/package-lock.json @@ -0,0 +1,2527 @@ +{ + "name": "elasticsearch-specification", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "@stoplight/spectral-cli": "^6.11.1" + } + }, + "node_modules/@asyncapi/specs": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@asyncapi/specs/-/specs-4.3.1.tgz", + "integrity": "sha512-EfexhJu/lwF8OdQDm28NKLJHFkx0Gb6O+rcezhZYLPIoNYKXJMh2J1vFGpwmfAcTTh+ffK44Oc2Hs1Q4sLBp+A==", + "dependencies": { + "@types/json-schema": "^7.0.11" + } + }, + "node_modules/@jsep-plugin/regex": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@jsep-plugin/regex/-/regex-1.0.3.tgz", + "integrity": "sha512-XfZgry4DwEZvSFtS/6Y+R48D7qJYJK6R9/yJFyUFHCIUMEEHuJ4X95TDgJp5QkmzfLYvapMPzskV5HpIDrREug==", + "engines": { + "node": ">= 10.16.0" + }, + "peerDependencies": { + "jsep": "^0.4.0||^1.0.0" + } + }, + "node_modules/@jsep-plugin/ternary": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@jsep-plugin/ternary/-/ternary-1.1.3.tgz", + "integrity": "sha512-qtLGzCNzPVJ3kdH6/zoLWDPjauHIKiLSBAR71Wa0+PWvGA8wODUQvRgxtpUA5YqAYL3CQ8S4qXhd/9WuWTZirg==", + "engines": { + "node": ">= 10.16.0" + }, + "peerDependencies": { + "jsep": "^0.4.0||^1.0.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rollup/plugin-commonjs": { + "version": "22.0.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-22.0.2.tgz", + "integrity": "sha512-//NdP6iIwPbMTcazYsiBMbJW7gfmpHom33u1beiIoHDEM0Q9clvtQB1T0efvMqHeKsGohiHo97BCPCkBXdscwg==", + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "commondir": "^1.0.1", + "estree-walker": "^2.0.1", + "glob": "^7.1.6", + "is-reference": "^1.2.1", + "magic-string": "^0.25.7", + "resolve": "^1.17.0" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "rollup": "^2.68.0" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@rollup/pluginutils/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==" + }, + "node_modules/@stoplight/better-ajv-errors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@stoplight/better-ajv-errors/-/better-ajv-errors-1.0.3.tgz", + "integrity": "sha512-0p9uXkuB22qGdNfy3VeEhxkU5uwvp/KrBTAbrLBURv6ilxIVwanKwjMc41lQfIVgPGcOkmLbTolfFrSsueu7zA==", + "dependencies": { + "jsonpointer": "^5.0.0", + "leven": "^3.1.0" + }, + "engines": { + "node": "^12.20 || >= 14.13" + }, + "peerDependencies": { + "ajv": ">=8" + } + }, + "node_modules/@stoplight/json": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/@stoplight/json/-/json-3.21.0.tgz", + "integrity": "sha512-5O0apqJ/t4sIevXCO3SBN9AHCEKKR/Zb4gaj7wYe5863jme9g02Q0n/GhM7ZCALkL+vGPTe4ZzTETP8TFtsw3g==", + "dependencies": { + "@stoplight/ordered-object-literal": "^1.0.3", + "@stoplight/path": "^1.3.2", + "@stoplight/types": "^13.6.0", + "jsonc-parser": "~2.2.1", + "lodash": "^4.17.21", + "safe-stable-stringify": "^1.1" + }, + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/@stoplight/json-ref-readers": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@stoplight/json-ref-readers/-/json-ref-readers-1.2.2.tgz", + "integrity": "sha512-nty0tHUq2f1IKuFYsLM4CXLZGHdMn+X/IwEUIpeSOXt0QjMUbL0Em57iJUDzz+2MkWG83smIigNZ3fauGjqgdQ==", + "dependencies": { + "node-fetch": "^2.6.0", + "tslib": "^1.14.1" + }, + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/@stoplight/json-ref-readers/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@stoplight/json-ref-resolver": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/@stoplight/json-ref-resolver/-/json-ref-resolver-3.1.6.tgz", + "integrity": "sha512-YNcWv3R3n3U6iQYBsFOiWSuRGE5su1tJSiX6pAPRVk7dP0L7lqCteXGzuVRQ0gMZqUl8v1P0+fAKxF6PLo9B5A==", + "dependencies": { + "@stoplight/json": "^3.21.0", + "@stoplight/path": "^1.3.2", + "@stoplight/types": "^12.3.0 || ^13.0.0", + "@types/urijs": "^1.19.19", + "dependency-graph": "~0.11.0", + "fast-memoize": "^2.5.2", + "immer": "^9.0.6", + "lodash": "^4.17.21", + "tslib": "^2.6.0", + "urijs": "^1.19.11" + }, + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/@stoplight/ordered-object-literal": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@stoplight/ordered-object-literal/-/ordered-object-literal-1.0.5.tgz", + "integrity": "sha512-COTiuCU5bgMUtbIFBuyyh2/yVVzlr5Om0v5utQDgBCuQUOPgU1DwoffkTfg4UBQOvByi5foF4w4T+H9CoRe5wg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@stoplight/path": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@stoplight/path/-/path-1.3.2.tgz", + "integrity": "sha512-lyIc6JUlUA8Ve5ELywPC8I2Sdnh1zc1zmbYgVarhXIp9YeAB0ReeqmGEOWNtlHkbP2DAA1AL65Wfn2ncjK/jtQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@stoplight/spectral-cli": { + "version": "6.11.1", + "resolved": "https://registry.npmjs.org/@stoplight/spectral-cli/-/spectral-cli-6.11.1.tgz", + "integrity": "sha512-1zqsQ0TOuVSnxxZ9mHBfC0IygV6ex7nAY6Mp59mLmw5fW103U9yPVK5ZcX9ZngCmr3PdteAnMDUIIaoDGso6nA==", + "dependencies": { + "@stoplight/json": "~3.21.0", + "@stoplight/path": "1.3.2", + "@stoplight/spectral-core": "^1.18.3", + "@stoplight/spectral-formatters": "^1.3.0", + "@stoplight/spectral-parsers": "^1.0.3", + "@stoplight/spectral-ref-resolver": "^1.0.4", + "@stoplight/spectral-ruleset-bundler": "^1.5.2", + "@stoplight/spectral-ruleset-migrator": "^1.9.5", + "@stoplight/spectral-rulesets": ">=1", + "@stoplight/spectral-runtime": "^1.1.2", + "@stoplight/types": "^13.6.0", + "chalk": "4.1.2", + "fast-glob": "~3.2.12", + "hpagent": "~1.2.0", + "lodash": "~4.17.21", + "pony-cause": "^1.0.0", + "stacktracey": "^2.1.7", + "tslib": "^2.3.0", + "yargs": "~17.7.2" + }, + "bin": { + "spectral": "dist/index.js" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, + "node_modules/@stoplight/spectral-core": { + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/@stoplight/spectral-core/-/spectral-core-1.18.3.tgz", + "integrity": "sha512-YY8x7X2SWJIhGTLPol+eFiQpWPz0D0mJdkK2i4A0QJG68KkNhypP6+JBC7/Kz3XWjqr0L/RqAd+N5cQLPOKZGQ==", + "dependencies": { + "@stoplight/better-ajv-errors": "1.0.3", + "@stoplight/json": "~3.21.0", + "@stoplight/path": "1.3.2", + "@stoplight/spectral-parsers": "^1.0.0", + "@stoplight/spectral-ref-resolver": "^1.0.0", + "@stoplight/spectral-runtime": "^1.0.0", + "@stoplight/types": "~13.6.0", + "@types/es-aggregate-error": "^1.0.2", + "@types/json-schema": "^7.0.11", + "ajv": "^8.6.0", + "ajv-errors": "~3.0.0", + "ajv-formats": "~2.1.0", + "es-aggregate-error": "^1.0.7", + "jsonpath-plus": "7.1.0", + "lodash": "~4.17.21", + "lodash.topath": "^4.5.2", + "minimatch": "3.1.2", + "nimma": "0.2.2", + "pony-cause": "^1.0.0", + "simple-eval": "1.0.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, + "node_modules/@stoplight/spectral-core/node_modules/@stoplight/types": { + "version": "13.6.0", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-13.6.0.tgz", + "integrity": "sha512-dzyuzvUjv3m1wmhPfq82lCVYGcXG0xUYgqnWfCq3PCVR4BKFhjdkHrnJ+jIDoMKvXb05AZP/ObQF6+NpDo29IQ==", + "dependencies": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + }, + "engines": { + "node": "^12.20 || >=14.13" + } + }, + "node_modules/@stoplight/spectral-formats": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@stoplight/spectral-formats/-/spectral-formats-1.6.0.tgz", + "integrity": "sha512-X27qhUfNluiduH0u/QwJqhOd8Wk5YKdxVmKM03Aijlx0AH1H5mYt3l9r7t2L4iyJrsBaFPnMGt7UYJDGxszbNA==", + "dependencies": { + "@stoplight/json": "^3.17.0", + "@stoplight/spectral-core": "^1.8.0", + "@types/json-schema": "^7.0.7", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@stoplight/spectral-formatters": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@stoplight/spectral-formatters/-/spectral-formatters-1.3.0.tgz", + "integrity": "sha512-ryuMwlzbPUuyn7ybSEbFYsljYmvTaTyD51wyCQs4ROzgfm3Yo5QDD0IsiJUzUpKK/Ml61ZX8ebgiPiRFEJtBpg==", + "dependencies": { + "@stoplight/path": "^1.3.2", + "@stoplight/spectral-core": "^1.15.1", + "@stoplight/spectral-runtime": "^1.1.0", + "@stoplight/types": "^13.15.0", + "chalk": "4.1.2", + "cliui": "7.0.4", + "lodash": "^4.17.21", + "node-sarif-builder": "^2.0.3", + "strip-ansi": "6.0", + "text-table": "^0.2.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": "^12.20 || >=14.13" + } + }, + "node_modules/@stoplight/spectral-functions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@stoplight/spectral-functions/-/spectral-functions-1.8.0.tgz", + "integrity": "sha512-ZrAkYA/ZGbuQ6EyG1gisF4yQ5nWP/+glcqVoGmS6kH6ekaynz2Yp6FL0oIamWj3rWedFUN7ppwTRUdo+9f/uCw==", + "dependencies": { + "@stoplight/better-ajv-errors": "1.0.3", + "@stoplight/json": "^3.17.1", + "@stoplight/spectral-core": "^1.7.0", + "@stoplight/spectral-formats": "^1.0.0", + "@stoplight/spectral-runtime": "^1.1.0", + "ajv": "^8.6.3", + "ajv-draft-04": "~1.0.0", + "ajv-errors": "~3.0.0", + "ajv-formats": "~2.1.0", + "lodash": "~4.17.21", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@stoplight/spectral-parsers": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@stoplight/spectral-parsers/-/spectral-parsers-1.0.4.tgz", + "integrity": "sha512-nCTVvtX6q71M8o5Uvv9kxU31Gk1TRmgD6/k8HBhdCmKG6FWcwgjiZouA/R3xHLn/VwTI/9k8SdG5Mkdy0RBqbQ==", + "dependencies": { + "@stoplight/json": "~3.21.0", + "@stoplight/types": "^14.1.1", + "@stoplight/yaml": "~4.3.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": "^12.20 || >=14.13" + } + }, + "node_modules/@stoplight/spectral-parsers/node_modules/@stoplight/types": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-14.1.1.tgz", + "integrity": "sha512-/kjtr+0t0tjKr+heVfviO9FrU/uGLc+QNX3fHJc19xsCNYqU7lVhaXxDmEID9BZTjG+/r9pK9xP/xU02XGg65g==", + "dependencies": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + }, + "engines": { + "node": "^12.20 || >=14.13" + } + }, + "node_modules/@stoplight/spectral-ref-resolver": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@stoplight/spectral-ref-resolver/-/spectral-ref-resolver-1.0.4.tgz", + "integrity": "sha512-5baQIYL0NJTSVy8v6RxOR4U51xOUYM8wJri1YvlAT6bPN8m0EIxMwfVYi0xUZEMVeHcWx869nIkoqyWmOutF2A==", + "dependencies": { + "@stoplight/json-ref-readers": "1.2.2", + "@stoplight/json-ref-resolver": "~3.1.6", + "@stoplight/spectral-runtime": "^1.1.2", + "dependency-graph": "0.11.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@stoplight/spectral-ruleset-bundler": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@stoplight/spectral-ruleset-bundler/-/spectral-ruleset-bundler-1.5.2.tgz", + "integrity": "sha512-4QUVUFAU+S7IQ9XeCu+0TQMYxKFpKnkOAfa9unRQ1iPL2cviaipEN6witpbAptdHJD3UUjx4OnwlX8WwmXSq9w==", + "dependencies": { + "@rollup/plugin-commonjs": "~22.0.2", + "@stoplight/path": "1.3.2", + "@stoplight/spectral-core": ">=1", + "@stoplight/spectral-formats": ">=1", + "@stoplight/spectral-functions": ">=1", + "@stoplight/spectral-parsers": ">=1", + "@stoplight/spectral-ref-resolver": ">=1", + "@stoplight/spectral-ruleset-migrator": "^1.7.4", + "@stoplight/spectral-rulesets": ">=1", + "@stoplight/spectral-runtime": "^1.1.0", + "@stoplight/types": "^13.6.0", + "@types/node": "*", + "pony-cause": "1.1.1", + "rollup": "~2.79.0", + "tslib": "^2.3.1", + "validate-npm-package-name": "3.0.0" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, + "node_modules/@stoplight/spectral-ruleset-migrator": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/@stoplight/spectral-ruleset-migrator/-/spectral-ruleset-migrator-1.9.5.tgz", + "integrity": "sha512-76n/HETr3UinVl/xLNldrH9p0JNoD8Gz4K75J6E4OHp4xD0P+BA2e8+W30HjIvqm1LJdLU2BNma0ioy+q3B9RA==", + "dependencies": { + "@stoplight/json": "~3.21.0", + "@stoplight/ordered-object-literal": "~1.0.4", + "@stoplight/path": "1.3.2", + "@stoplight/spectral-functions": "^1.0.0", + "@stoplight/spectral-runtime": "^1.1.0", + "@stoplight/types": "^13.6.0", + "@stoplight/yaml": "~4.2.3", + "@types/node": "*", + "ajv": "^8.6.0", + "ast-types": "0.14.2", + "astring": "^1.7.5", + "reserved": "0.1.2", + "tslib": "^2.3.1", + "validate-npm-package-name": "3.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@stoplight/spectral-ruleset-migrator/node_modules/@stoplight/yaml": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/@stoplight/yaml/-/yaml-4.2.3.tgz", + "integrity": "sha512-Mx01wjRAR9C7yLMUyYFTfbUf5DimEpHMkRDQ1PKLe9dfNILbgdxyrncsOXM3vCpsQ1Hfj4bPiGl+u4u6e9Akqw==", + "dependencies": { + "@stoplight/ordered-object-literal": "^1.0.1", + "@stoplight/types": "^13.0.0", + "@stoplight/yaml-ast-parser": "0.0.48", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=10.8" + } + }, + "node_modules/@stoplight/spectral-ruleset-migrator/node_modules/@stoplight/yaml-ast-parser": { + "version": "0.0.48", + "resolved": "https://registry.npmjs.org/@stoplight/yaml-ast-parser/-/yaml-ast-parser-0.0.48.tgz", + "integrity": "sha512-sV+51I7WYnLJnKPn2EMWgS4EUfoP4iWEbrWwbXsj0MZCB/xOK8j6+C9fntIdOM50kpx45ZLC3s6kwKivWuqvyg==" + }, + "node_modules/@stoplight/spectral-rulesets": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/@stoplight/spectral-rulesets/-/spectral-rulesets-1.19.1.tgz", + "integrity": "sha512-rfGK87Y1JJCEeLC8MVdLkjUkRH+Y6VnSF388D+UWihfU9xuq2eNB9phWpTFkG+AG4HLRyGx963BmO6PyM9dBag==", + "dependencies": { + "@asyncapi/specs": "^4.1.0", + "@stoplight/better-ajv-errors": "1.0.3", + "@stoplight/json": "^3.17.0", + "@stoplight/spectral-core": "^1.8.1", + "@stoplight/spectral-formats": "^1.5.0", + "@stoplight/spectral-functions": "^1.5.1", + "@stoplight/spectral-runtime": "^1.1.1", + "@stoplight/types": "^13.6.0", + "@types/json-schema": "^7.0.7", + "ajv": "^8.12.0", + "ajv-formats": "~2.1.0", + "json-schema-traverse": "^1.0.0", + "leven": "3.1.0", + "lodash": "~4.17.21", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@stoplight/spectral-runtime": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@stoplight/spectral-runtime/-/spectral-runtime-1.1.2.tgz", + "integrity": "sha512-fr5zRceXI+hrl82yAVoME+4GvJie8v3wmOe9tU+ZLRRNonizthy8qDi0Z/z4olE+vGreSDcuDOZ7JjRxFW5kTw==", + "dependencies": { + "@stoplight/json": "^3.17.0", + "@stoplight/path": "^1.3.2", + "@stoplight/types": "^12.3.0", + "abort-controller": "^3.0.0", + "lodash": "^4.17.21", + "node-fetch": "^2.6.7", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@stoplight/spectral-runtime/node_modules/@stoplight/types": { + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-12.5.0.tgz", + "integrity": "sha512-dwqYcDrGmEyUv5TWrDam5TGOxU72ufyQ7hnOIIDdmW5ezOwZaBFoR5XQ9AsH49w7wgvOqB2Bmo799pJPWnpCbg==", + "dependencies": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@stoplight/types": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-13.20.0.tgz", + "integrity": "sha512-2FNTv05If7ib79VPDA/r9eUet76jewXFH2y2K5vuge6SXbRHtWBhcaRmu+6QpF4/WRNoJj5XYRSwLGXDxysBGA==", + "dependencies": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + }, + "engines": { + "node": "^12.20 || >=14.13" + } + }, + "node_modules/@stoplight/yaml": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@stoplight/yaml/-/yaml-4.3.0.tgz", + "integrity": "sha512-JZlVFE6/dYpP9tQmV0/ADfn32L9uFarHWxfcRhReKUnljz1ZiUM5zpX+PH8h5CJs6lao3TuFqnPm9IJJCEkE2w==", + "dependencies": { + "@stoplight/ordered-object-literal": "^1.0.5", + "@stoplight/types": "^14.1.1", + "@stoplight/yaml-ast-parser": "0.0.50", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=10.8" + } + }, + "node_modules/@stoplight/yaml-ast-parser": { + "version": "0.0.50", + "resolved": "https://registry.npmjs.org/@stoplight/yaml-ast-parser/-/yaml-ast-parser-0.0.50.tgz", + "integrity": "sha512-Pb6M8TDO9DtSVla9yXSTAxmo9GVEouq5P40DWXdOie69bXogZTkgvopCq+yEvTMA0F6PEvdJmbtTV3ccIp11VQ==" + }, + "node_modules/@stoplight/yaml/node_modules/@stoplight/types": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/@stoplight/types/-/types-14.1.1.tgz", + "integrity": "sha512-/kjtr+0t0tjKr+heVfviO9FrU/uGLc+QNX3fHJc19xsCNYqU7lVhaXxDmEID9BZTjG+/r9pK9xP/xU02XGg65g==", + "dependencies": { + "@types/json-schema": "^7.0.4", + "utility-types": "^3.10.0" + }, + "engines": { + "node": "^12.20 || >=14.13" + } + }, + "node_modules/@types/es-aggregate-error": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/es-aggregate-error/-/es-aggregate-error-1.0.6.tgz", + "integrity": "sha512-qJ7LIFp06h1QE1aVxbVd+zJP2wdaugYXYfd6JxsyRMrYHaxb6itXPogW2tz+ylUJ1n1b+JF1PHyYCfYHm0dvUg==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==" + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" + }, + "node_modules/@types/node": { + "version": "20.14.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.7.tgz", + "integrity": "sha512-uTr2m2IbJJucF3KUxgnGOZvYbN0QgkGyWxG6973HCpMYFy2KfcgYuIwkJQMQkt1VbBMlvWRbpshFTLxnxCZjKQ==", + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/sarif": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@types/sarif/-/sarif-2.1.7.tgz", + "integrity": "sha512-kRz0VEkJqWLf1LLVN4pT1cg1Z9wAuvI6L97V3m2f5B76Tg8d413ddvLBPTEHAZJlnn4XSvu0FkZtViCQGVyrXQ==" + }, + "node_modules/@types/urijs": { + "version": "1.19.25", + "resolved": "https://registry.npmjs.org/@types/urijs/-/urijs-1.19.25.tgz", + "integrity": "sha512-XOfUup9r3Y06nFAZh3WvO0rBU4OtlfPB/vgxpjg+NRdGU6CN6djdc6OEiH+PcqHCY6eFLo9Ista73uarf4gnBg==" + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/ajv": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.16.0.tgz", + "integrity": "sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.4.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-draft-04": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ajv-draft-04/-/ajv-draft-04-1.0.0.tgz", + "integrity": "sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==", + "peerDependencies": { + "ajv": "^8.5.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-3.0.0.tgz", + "integrity": "sha512-V3wD15YHfHz6y0KdhYFjyy9vWtEVALT9UrxfN3zqlI6dMioHnJrqOYfyPKol3oqrnCM9uwkcdCwkJ0WUcbLMTQ==", + "peerDependencies": { + "ajv": "^8.0.1" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/as-table": { + "version": "1.0.55", + "resolved": "https://registry.npmjs.org/as-table/-/as-table-1.0.55.tgz", + "integrity": "sha512-xvsWESUJn0JN421Xb9MQw6AsMHRCUknCe0Wjlxvjud80mU4E6hQf1A6NzQKcYNmYw62MfzEtXc+badstZP3JpQ==", + "dependencies": { + "printable-characters": "^1.0.42" + } + }, + "node_modules/ast-types": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.14.2.tgz", + "integrity": "sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==", + "dependencies": { + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/astring": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/astring/-/astring-1.8.6.tgz", + "integrity": "sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==", + "bin": { + "astring": "bin/astring" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/builtins": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", + "integrity": "sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==" + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/data-uri-to-buffer": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-2.0.2.tgz", + "integrity": "sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA==" + }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/dependency-graph": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", + "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-aggregate-error": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/es-aggregate-error/-/es-aggregate-error-1.0.13.tgz", + "integrity": "sha512-KkzhUUuD2CUMqEc8JEqsXEMDHzDPE8RCjZeUBitsnB1eNcAJWQPiciKsMXe3Yytj4Flw1XLl46Qcf9OxvZha7A==", + "dependencies": { + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "globalthis": "^1.0.3", + "has-property-descriptors": "^1.0.2", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-memoize": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/fast-memoize/-/fast-memoize-2.5.2.tgz", + "integrity": "sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw==" + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-source": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/get-source/-/get-source-2.0.12.tgz", + "integrity": "sha512-X5+4+iD+HoSeEED+uwrQ07BOQr0kEDFMVqqpBuI+RaZBpBpHCuXxo70bjar6f0b0u/DQJsJ7ssurpP0V60Az+w==", + "dependencies": { + "data-uri-to-buffer": "^2.0.0", + "source-map": "^0.6.1" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hpagent": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/hpagent/-/hpagent-1.2.0.tgz", + "integrity": "sha512-A91dYTeIB6NoXG+PxTQpCCDDnfHsW9kc06Lvpu1TEe9gnd6ZFeiBoRO9JvzEv6xK7EX97/dUE8g/vBMTqTS3CA==", + "engines": { + "node": ">=14" + } + }, + "node_modules/immer": { + "version": "9.0.21", + "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz", + "integrity": "sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz", + "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + }, + "node_modules/jsep": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/jsep/-/jsep-1.3.8.tgz", + "integrity": "sha512-qofGylTGgYj9gZFsHuyWAN4jr35eJ66qJCK4eKDnldohuUoQFbU3iZn2zjvEbd9wOAhP9Wx5DsAAduTyE1PSWQ==", + "engines": { + "node": ">= 10.16.0" + } + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/jsonc-parser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.1.tgz", + "integrity": "sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==" + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonpath-plus": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-7.1.0.tgz", + "integrity": "sha512-gTaNRsPWO/K2KY6MrqaUFClF9kmuM6MFH5Dhg1VYDODgFbByw1yb7xu3hrViE/sz+dGOeMWgCzwUwQtAnCTE9g==", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/jsonpointer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz", + "integrity": "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.topath": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/lodash.topath/-/lodash.topath-4.5.2.tgz", + "integrity": "sha512-1/W4dM+35DwvE/iEd1M9ekewOSTlpFekhw9mhAtrwjVqUr83/ilQiyAvmg4tVX7Unkcfl1KC+i9WdaT4B6aQcg==" + }, + "node_modules/magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dependencies": { + "sourcemap-codec": "^1.4.8" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/nimma": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/nimma/-/nimma-0.2.2.tgz", + "integrity": "sha512-V52MLl7BU+tH2Np9tDrIXK8bql3MVUadnMIl/0/oZSGC9keuro0O9UUv9QKp0aMvtN8HRew4G7byY7H4eWsxaQ==", + "dependencies": { + "@jsep-plugin/regex": "^1.0.1", + "@jsep-plugin/ternary": "^1.0.2", + "astring": "^1.8.1", + "jsep": "^1.2.0" + }, + "engines": { + "node": "^12.20 || >=14.13" + }, + "optionalDependencies": { + "jsonpath-plus": "^6.0.1", + "lodash.topath": "^4.5.2" + } + }, + "node_modules/nimma/node_modules/jsonpath-plus": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-6.0.1.tgz", + "integrity": "sha512-EvGovdvau6FyLexFH2OeXfIITlgIbgZoAZe3usiySeaIDm5QS+A10DKNpaPBBqqRSZr2HN6HVNXxtwUAr2apEw==", + "optional": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-sarif-builder": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/node-sarif-builder/-/node-sarif-builder-2.0.3.tgz", + "integrity": "sha512-Pzr3rol8fvhG/oJjIq2NTVB0vmdNNlz22FENhhPojYRZ4/ee08CfK4YuKmuL54V9MLhI1kpzxfOJ/63LzmZzDg==", + "dependencies": { + "@types/sarif": "^2.1.4", + "fs-extra": "^10.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pony-cause": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pony-cause/-/pony-cause-1.1.1.tgz", + "integrity": "sha512-PxkIc/2ZpLiEzQXu5YRDOUgBlfGYBY8156HY5ZcRAwwonMk5W/MrJP2LLkG/hF7GEQzaHo2aS7ho6ZLCOvf+6g==", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/printable-characters": { + "version": "1.0.42", + "resolved": "https://registry.npmjs.org/printable-characters/-/printable-characters-1.0.42.tgz", + "integrity": "sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==" + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "dependencies": { + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/reserved": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/reserved/-/reserved-0.1.2.tgz", + "integrity": "sha512-/qO54MWj5L8WCBP9/UNe2iefJc+L9yETbH32xO/ft/EYPOTCR5k+azvDUgdCOKwZH8hXwPd0b8XBL78Nn2U69g==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "2.79.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", + "integrity": "sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==", + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=10.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-stable-stringify": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-1.1.1.tgz", + "integrity": "sha512-ERq4hUjKDbJfE4+XtZLFPCDi8Vb1JqaxAPTxWFLBx8XcAlf9Bda/ZJdVezs/NAfsMQScyIlUMx+Yeu7P7rx5jw==" + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/simple-eval": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/simple-eval/-/simple-eval-1.0.0.tgz", + "integrity": "sha512-kpKJR+bqTscgC0xuAl2xHN6bB12lHjC2DCUfqjAx19bQyO3R2EVLOurm3H9AUltv/uFVcSCVNc6faegR+8NYLw==", + "dependencies": { + "jsep": "^1.1.2" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "deprecated": "Please use @jridgewell/sourcemap-codec instead" + }, + "node_modules/stacktracey": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/stacktracey/-/stacktracey-2.1.8.tgz", + "integrity": "sha512-Kpij9riA+UNg7TnphqjH7/CzctQ/owJGNbFkfEeve4Z4uxT5+JapVLFXcsurIfN34gnTWZNJ/f7NMG0E8JDzTw==", + "dependencies": { + "as-table": "^1.0.36", + "get-source": "^2.0.12" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" + }, + "node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urijs": { + "version": "1.19.11", + "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", + "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" + }, + "node_modules/utility-types": { + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.11.0.tgz", + "integrity": "sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/validate-npm-package-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", + "integrity": "sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==", + "dependencies": { + "builtins": "^1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000000..91d8dd23da --- /dev/null +++ b/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "@stoplight/spectral-cli": "^6.11.1" + } +} From fcde2f865f889714113ad3bbf0af95f24c6b0136 Mon Sep 17 00:00:00 2001 From: Kathleen DeRusso Date: Tue, 25 Jun 2024 14:13:12 -0400 Subject: [PATCH 12/12] Fix variant annotations for SparseVectorQuery --- specification/_types/query_dsl/SparseVectorQuery.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/specification/_types/query_dsl/SparseVectorQuery.ts b/specification/_types/query_dsl/SparseVectorQuery.ts index 372994ef62..f4761008af 100644 --- a/specification/_types/query_dsl/SparseVectorQuery.ts +++ b/specification/_types/query_dsl/SparseVectorQuery.ts @@ -52,6 +52,7 @@ export class SparseVectorQuery extends QueryBase { /** * The query text you want to use for search. * If inference_id is specified, query must also be specified. + * @variant container_property */ query?: string @@ -61,6 +62,7 @@ export class SparseVectorQuery extends QueryBase { * Default: false * @availability stack since=8.15.0 stability=experimental * @availability serverless stability=experimental + * @variant container_property */ prune?: boolean @@ -71,6 +73,7 @@ export class SparseVectorQuery extends QueryBase { * If prune is set to true but pruning_config is not specified, default values will be used. * @availability stack since=8.15.0 stability=experimental * @availability serverless stability=experimental + * @variant container_property */ pruning_config?: TokenPruningConfig }