Do a shallow clone copy of the body when the body key is defined (#1584)

This commit is contained in:
Tomas Della Vedova
2021-10-25 16:56:33 +02:00
committed by GitHub
parent 185697b6fe
commit a5a0a1c589
42 changed files with 139 additions and 110 deletions

View File

@ -117,7 +117,7 @@ export default class AsyncSearch {
const acceptedBody: string[] = ['aggs', 'aggregations', 'collapse', 'explain', 'from', 'highlight', 'track_total_hits', 'indices_boost', 'docvalue_fields', 'min_score', 'post_filter', 'profile', 'query', 'rescore', 'script_fields', 'search_after', 'size', 'slice', 'sort', '_source', 'fields', 'suggest', 'terminate_after', 'timeout', 'track_scores', 'version', 'seq_no_primary_term', 'stored_fields', 'pit', 'runtime_mappings', 'stats']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -73,7 +73,7 @@ export default class Ccr {
const acceptedBody: string[] = ['leader_index', 'max_outstanding_read_requests', 'max_outstanding_write_requests', 'max_read_request_operation_count', 'max_read_request_size', 'max_retry_delay', 'max_write_buffer_count', 'max_write_buffer_size', 'max_write_request_operation_count', 'max_write_request_size', 'read_poll_timeout', 'remote_cluster']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -145,7 +145,7 @@ export default class Ccr {
const acceptedBody: string[] = ['follower_cluster', 'follower_index', 'follower_index_uuid', 'leader_remote_cluster']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -247,7 +247,7 @@ export default class Ccr {
const acceptedBody: string[] = ['remote_cluster', 'follow_index_pattern', 'leader_index_patterns', 'leader_index_exclusion_patterns', 'max_outstanding_read_requests', 'settings', 'max_outstanding_write_requests', 'read_poll_timeout', 'max_read_request_operation_count', 'max_read_request_size', 'max_retry_delay', 'max_write_buffer_count', 'max_write_buffer_size', 'max_write_request_operation_count', 'max_write_request_size']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -297,7 +297,7 @@ export default class Ccr {
const acceptedBody: string[] = ['max_outstanding_read_requests', 'max_outstanding_write_requests', 'max_read_request_operation_count', 'max_read_request_size', 'max_retry_delay', 'max_write_buffer_count', 'max_write_buffer_size', 'max_write_request_operation_count', 'max_write_request_size', 'read_poll_timeout']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -45,7 +45,7 @@ export default async function ClearScrollApi (this: That, params?: T.ClearScroll
const acceptedBody: string[] = ['scroll_id']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -45,7 +45,7 @@ export default async function ClosePointInTimeApi (this: That, params: T.ClosePo
const acceptedBody: string[] = ['id']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -51,7 +51,7 @@ export default class Cluster {
const acceptedBody: string[] = ['current_node', 'index', 'primary', 'shard']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -276,7 +276,7 @@ export default class Cluster {
const acceptedBody: string[] = ['template', 'aliases', 'mappings', 'settings', 'version', '_meta']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -304,7 +304,7 @@ export default class Cluster {
const acceptedBody: string[] = ['persistent', 'transient']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -356,7 +356,7 @@ export default class Cluster {
const acceptedBody: string[] = ['commands']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -45,7 +45,7 @@ export default async function CountApi (this: That, params?: T.CountRequest | TB
const acceptedBody: string[] = ['query']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -45,7 +45,7 @@ export default async function DeleteByQueryApi (this: That, params: T.DeleteByQu
const acceptedBody: string[] = ['max_docs', 'query', 'slice']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -125,7 +125,7 @@ export default class Enrich {
const acceptedBody: string[] = ['geo_match', 'match']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -117,7 +117,7 @@ export default class Eql {
const acceptedBody: string[] = ['query', 'case_sensitive', 'event_category_field', 'tiebreaker_field', 'timestamp_field', 'fetch_size', 'filter', 'keep_alive', 'keep_on_completion', 'wait_for_completion_timeout', 'size', 'fields', 'result_position']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -45,7 +45,7 @@ export default async function ExplainApi<TDocument = unknown> (this: That, param
const acceptedBody: string[] = ['query']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -45,7 +45,7 @@ export default async function FieldCapsApi (this: That, params?: T.FieldCapsRequ
const acceptedBody: string[] = ['index_filter', 'runtime_mappings']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -51,7 +51,7 @@ export default class Graph {
const acceptedBody: string[] = ['connections', 'controls', 'query', 'vertices']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -170,7 +170,7 @@ export default class Ilm {
const acceptedBody: string[] = ['current_step', 'next_step']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -198,7 +198,7 @@ export default class Ilm {
const acceptedBody: string[] = ['policy']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -73,7 +73,7 @@ export default class Indices {
const acceptedBody: string[] = ['analyzer', 'attributes', 'char_filter', 'explain', 'field', 'filter', 'normalizer', 'text', 'tokenizer']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -139,7 +139,7 @@ export default class Indices {
const acceptedBody: string[] = ['aliases', 'settings']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -189,7 +189,7 @@ export default class Indices {
const acceptedBody: string[] = ['aliases', 'mappings', 'settings']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -960,7 +960,7 @@ export default class Indices {
const acceptedBody: string[] = ['filter', 'index_routing', 'is_write_index', 'routing', 'search_routing']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -995,7 +995,7 @@ export default class Indices {
const acceptedBody: string[] = ['index_patterns', 'composed_of', 'template', 'data_stream', 'priority', 'version', '_meta']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1023,7 +1023,7 @@ export default class Indices {
const acceptedBody: string[] = ['date_detection', 'dynamic', 'dynamic_date_formats', 'dynamic_templates', '_field_names', '_meta', 'numeric_detection', 'properties', '_routing', '_source', 'runtime']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1085,7 +1085,7 @@ export default class Indices {
const acceptedBody: string[] = ['aliases', 'index_patterns', 'mappings', 'order', 'settings', 'version']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1217,7 +1217,7 @@ export default class Indices {
const acceptedBody: string[] = ['aliases', 'conditions', 'mappings', 'settings']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1312,7 +1312,7 @@ export default class Indices {
const acceptedBody: string[] = ['aliases', 'settings']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1340,7 +1340,7 @@ export default class Indices {
const acceptedBody: string[] = ['index_patterns', 'composed_of', 'overlapping', 'template']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1402,7 +1402,7 @@ export default class Indices {
const acceptedBody: string[] = ['aliases', 'settings']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1488,7 +1488,7 @@ export default class Indices {
const acceptedBody: string[] = ['actions']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -1517,7 +1517,7 @@ export default class Indices {
const acceptedBody: string[] = ['query']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -149,7 +149,7 @@ export default class Ingest {
const acceptedBody: string[] = ['_meta', 'description', 'on_failure', 'processors', 'version']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -177,7 +177,7 @@ export default class Ingest {
const acceptedBody: string[] = ['docs', 'pipeline']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -143,7 +143,7 @@ export default class License {
const acceptedBody: string[] = ['license', 'licenses']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -45,7 +45,7 @@ export default async function MgetApi<TDocument = unknown> (this: That, params?:
const acceptedBody: string[] = ['docs', 'ids']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -183,7 +183,7 @@ export default class Ml {
const acceptedBody: string[] = ['requests_per_second', 'timeout']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -358,7 +358,7 @@ export default class Ml {
const acceptedBody: string[] = ['analysis_config', 'max_bucket_cardinality', 'overall_cardinality']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -387,7 +387,7 @@ export default class Ml {
const acceptedBody: string[] = ['evaluation', 'index', 'query']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -415,7 +415,7 @@ export default class Ml {
const acceptedBody: string[] = ['source', 'dest', 'analysis', 'description', 'model_memory_limit', 'max_num_threads', 'analyzed_fields', 'allow_lazy_start']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -450,7 +450,7 @@ export default class Ml {
const acceptedBody: string[] = ['advance_time', 'calc_interim', 'end', 'start']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -478,7 +478,7 @@ export default class Ml {
const acceptedBody: string[] = ['duration', 'expires_in', 'max_model_memory']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -506,7 +506,7 @@ export default class Ml {
const acceptedBody: string[] = ['anomaly_score', 'desc', 'exclude_interim', 'expand', 'page', 'sort', 'start', 'end']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -563,7 +563,7 @@ export default class Ml {
const acceptedBody: string[] = ['page']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -599,7 +599,7 @@ export default class Ml {
const acceptedBody: string[] = ['page']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -784,7 +784,7 @@ export default class Ml {
const acceptedBody: string[] = ['page']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -872,7 +872,7 @@ export default class Ml {
const acceptedBody: string[] = ['start', 'end']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -907,7 +907,7 @@ export default class Ml {
const acceptedBody: string[] = ['allow_no_jobs']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -935,7 +935,7 @@ export default class Ml {
const acceptedBody: string[] = ['desc', 'exclude_interim', 'page', 'record_score', 'sort', 'start', 'end']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1090,7 +1090,7 @@ export default class Ml {
const acceptedBody: string[] = ['timeout']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1118,7 +1118,7 @@ export default class Ml {
const acceptedBody: string[] = ['events']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1173,7 +1173,7 @@ export default class Ml {
const acceptedBody: string[] = ['config']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -1209,7 +1209,7 @@ export default class Ml {
const acceptedBody: string[] = ['job_config', 'datafeed_config']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -1245,7 +1245,7 @@ export default class Ml {
const acceptedBody: string[] = ['description']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1295,7 +1295,7 @@ export default class Ml {
const acceptedBody: string[] = ['allow_lazy_start', 'analysis', 'analyzed_fields', 'description', 'dest', 'max_num_threads', 'model_memory_limit', 'source']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1323,7 +1323,7 @@ export default class Ml {
const acceptedBody: string[] = ['aggregations', 'chunking_config', 'delayed_data_check_config', 'frequency', 'indices', 'indices_options', 'job_id', 'max_empty_searches', 'query', 'query_delay', 'runtime_mappings', 'script_fields', 'scroll_size']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1351,7 +1351,7 @@ export default class Ml {
const acceptedBody: string[] = ['description', 'items']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1379,7 +1379,7 @@ export default class Ml {
const acceptedBody: string[] = ['allow_lazy_open', 'analysis_config', 'analysis_limits', 'background_persist_interval', 'custom_settings', 'daily_model_snapshot_retention_after_days', 'data_description', 'datafeed_config', 'description', 'groups', 'model_plot_config', 'model_snapshot_retention_days', 'renormalization_window_days', 'results_index_name', 'results_retention_days']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1407,7 +1407,7 @@ export default class Ml {
const acceptedBody: string[] = ['compressed_definition', 'definition', 'description', 'inference_config', 'input', 'metadata', 'tags']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1523,7 +1523,7 @@ export default class Ml {
const acceptedBody: string[] = ['delete_intervening_results']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1596,7 +1596,7 @@ export default class Ml {
const acceptedBody: string[] = ['end', 'start', 'timeout']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1668,7 +1668,7 @@ export default class Ml {
const acceptedBody: string[] = ['force', 'timeout']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1718,7 +1718,7 @@ export default class Ml {
const acceptedBody: string[] = ['description', 'model_memory_limit', 'max_num_threads', 'allow_lazy_start']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1768,7 +1768,7 @@ export default class Ml {
const acceptedBody: string[] = ['add_items', 'description', 'remove_items']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1796,7 +1796,7 @@ export default class Ml {
const acceptedBody: string[] = ['allow_lazy_open', 'analysis_limits', 'background_persist_interval', 'custom_settings', 'categorization_filters', 'description', 'model_plot_config', 'daily_model_snapshot_retention_after_days', 'model_snapshot_retention_days', 'renormalization_window_days', 'results_retention_days', 'groups', 'detectors', 'per_partition_categorization']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1824,7 +1824,7 @@ export default class Ml {
const acceptedBody: string[] = ['description', 'retain']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -1874,7 +1874,7 @@ export default class Ml {
const acceptedBody: string[] = ['job_id', 'analysis_config', 'analysis_limits', 'data_description', 'description', 'model_plot', 'model_snapshot_retention_days', 'results_index_name']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -45,7 +45,7 @@ export default async function MtermvectorsApi (this: That, params?: T.Mtermvecto
const acceptedBody: string[] = ['docs', 'ids']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -161,7 +161,7 @@ export default class Nodes {
const acceptedBody: string[] = ['secure_settings_password']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -45,7 +45,7 @@ export default async function PutScriptApi (this: That, params: T.PutScriptReque
const acceptedBody: string[] = ['script']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -45,7 +45,7 @@ export default async function RankEvalApi (this: That, params: T.RankEvalRequest
const acceptedBody: string[] = ['requests', 'metric']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -45,7 +45,7 @@ export default async function ReindexApi (this: That, params?: T.ReindexRequest
const acceptedBody: string[] = ['conflicts', 'dest', 'max_docs', 'script', 'size', 'source']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -45,7 +45,7 @@ export default async function RenderSearchTemplateApi (this: That, params?: T.Re
const acceptedBody: string[] = ['file', 'params', 'source']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -155,7 +155,7 @@ export default class Rollup {
const acceptedBody: string[] = ['cron', 'groups', 'index_pattern', 'metrics', 'page_size', 'rollup_index']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -210,7 +210,7 @@ export default class Rollup {
const acceptedBody: string[] = ['aggs', 'query', 'size']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -45,7 +45,7 @@ export default async function ScriptsPainlessExecuteApi<TResult = unknown> (this
const acceptedBody: string[] = ['context', 'context_setup', 'script']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -45,7 +45,7 @@ export default async function ScrollApi<TDocument = unknown> (this: That, params
const acceptedBody: string[] = ['scroll', 'scroll_id']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -45,7 +45,7 @@ export default async function SearchApi<TDocument = unknown> (this: That, params
const acceptedBody: string[] = ['aggs', 'aggregations', 'collapse', 'explain', 'from', 'highlight', 'track_total_hits', 'indices_boost', 'docvalue_fields', 'min_score', 'post_filter', 'profile', 'query', 'rescore', 'script_fields', 'search_after', 'size', 'slice', 'sort', '_source', 'fields', 'suggest', 'terminate_after', 'timeout', 'track_scores', 'version', 'seq_no_primary_term', 'stored_fields', 'pit', 'runtime_mappings', 'stats']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -45,7 +45,7 @@ export default async function SearchMvtApi (this: That, params: T.SearchMvtReque
const acceptedBody: string[] = ['aggs', 'exact_bounds', 'extent', 'fields', 'grid_precision', 'grid_type', 'query', 'runtime_mappings', 'size', 'sort']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -45,7 +45,7 @@ export default async function SearchTemplateApi<TDocument = unknown> (this: That
const acceptedBody: string[] = ['explain', 'id', 'params', 'profile', 'source']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -110,7 +110,7 @@ export default class SearchableSnapshots {
const acceptedBody: string[] = ['index', 'renamed_index', 'index_settings', 'ignore_index_settings']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -74,7 +74,7 @@ export default class Security {
const acceptedBody: string[] = ['password']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -220,7 +220,7 @@ export default class Security {
const acceptedBody: string[] = ['expiration', 'name', 'role_descriptors', 'metadata']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -670,7 +670,7 @@ export default class Security {
const acceptedBody: string[] = ['grant_type', 'scope', 'password', 'kerberos_ticket', 'refresh_token', 'username']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -752,7 +752,7 @@ export default class Security {
const acceptedBody: string[] = ['api_key', 'grant_type', 'access_token', 'username', 'password']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -780,7 +780,7 @@ export default class Security {
const acceptedBody: string[] = ['application', 'cluster', 'index']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -816,7 +816,7 @@ export default class Security {
const acceptedBody: string[] = ['id', 'ids', 'name', 'owner', 'realm_name', 'username']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -845,7 +845,7 @@ export default class Security {
const acceptedBody: string[] = ['token', 'refresh_token', 'realm_name', 'username']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -901,7 +901,7 @@ export default class Security {
const acceptedBody: string[] = ['applications', 'cluster', 'global', 'indices', 'metadata', 'run_as', 'transient_metadata']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -929,7 +929,7 @@ export default class Security {
const acceptedBody: string[] = ['enabled', 'metadata', 'roles', 'rules', 'run_as']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -957,7 +957,7 @@ export default class Security {
const acceptedBody: string[] = ['username', 'email', 'full_name', 'metadata', 'password', 'password_hash', 'roles', 'enabled']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -194,7 +194,7 @@ export default class Slm {
const acceptedBody: string[] = ['config', 'name', 'repository', 'retention', 'schedule']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -73,7 +73,7 @@ export default class Snapshot {
const acceptedBody: string[] = ['indices']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -101,7 +101,7 @@ export default class Snapshot {
const acceptedBody: string[] = ['ignore_unavailable', 'include_global_state', 'indices', 'feature_states', 'metadata', 'partial']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -129,7 +129,7 @@ export default class Snapshot {
const acceptedBody: string[] = ['repository', 'type', 'settings']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -275,7 +275,7 @@ export default class Snapshot {
const acceptedBody: string[] = ['ignore_index_settings', 'ignore_unavailable', 'include_aliases', 'include_global_state', 'index_settings', 'indices', 'partial', 'rename_pattern', 'rename_replacement']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -51,7 +51,7 @@ export default class Sql {
const acceptedBody: string[] = ['cursor']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -145,7 +145,7 @@ export default class Sql {
const acceptedBody: string[] = ['columnar', 'cursor', 'fetch_size', 'filter', 'query', 'request_timeout', 'page_timeout', 'time_zone', 'field_multi_value_leniency']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -174,7 +174,7 @@ export default class Sql {
const acceptedBody: string[] = ['fetch_size', 'filter', 'query', 'time_zone']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -45,7 +45,7 @@ export default async function TermsEnumApi (this: That, params: T.TermsEnumReque
const acceptedBody: string[] = ['field', 'size', 'timeout', 'case_insensitive', 'index_filter', 'string', 'search_after']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -45,7 +45,7 @@ export default async function TermvectorsApi<TDocument = unknown> (this: That, p
const acceptedBody: string[] = ['doc', 'filter', 'per_field_analyzer']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -125,7 +125,7 @@ export default class Transform {
const acceptedBody: string[] = ['dest', 'description', 'frequency', 'pivot', 'source', 'settings', 'sync', 'retention_policy', 'latest']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -161,7 +161,7 @@ export default class Transform {
const acceptedBody: string[] = ['dest', 'description', 'frequency', 'pivot', 'source', 'settings', 'sync', 'retention_policy', 'latest']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -233,7 +233,7 @@ export default class Transform {
const acceptedBody: string[] = ['dest', 'description', 'frequency', 'source', 'settings', 'sync', 'retention_policy']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -45,7 +45,7 @@ export default async function UpdateApi<TDocument = unknown, TPartialDocument =
const acceptedBody: string[] = ['detect_noop', 'doc', 'doc_as_upsert', 'script', 'scripted_upsert', '_source', 'upsert']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -45,7 +45,7 @@ export default async function UpdateByQueryApi (this: That, params: T.UpdateByQu
const acceptedBody: string[] = ['max_docs', 'query', 'script', 'slice', 'conflicts']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {

View File

@ -146,7 +146,7 @@ export default class Watcher {
const acceptedBody: string[] = ['action_modes', 'alternative_input', 'ignore_condition', 'record_execution', 'simulated_actions', 'trigger_data', 'watch']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {
@ -204,7 +204,7 @@ export default class Watcher {
const acceptedBody: string[] = ['actions', 'condition', 'input', 'metadata', 'throttle_period', 'transform', 'trigger']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params.body ?? undefined
let body: Record<string, any> = params.body != null ? { ...params.body } : undefined
for (const key in params) {
if (acceptedBody.includes(key)) {
@ -232,7 +232,7 @@ export default class Watcher {
const acceptedBody: string[] = ['from', 'size', 'query', 'sort', 'search_after']
const querystring: Record<string, any> = {}
// @ts-expect-error
let body: Record<string, any> = params?.body ?? undefined
let body: Record<string, any> = params?.body != null ? { ...params.body } : undefined
params = params ?? {}
for (const key in params) {

View File

@ -134,3 +134,32 @@ test('Api with body key and keyed body', async t => {
t.equal(response.result, 'created')
})
test('Using the body key should not mutate the body', async t => {
t.plan(2)
const Connection = connection.buildMockConnection({
onRequest (opts) {
// @ts-expect-error
t.same(JSON.parse(opts.body), { query: { match_all: {} }, sort: 'foo' })
return {
statusCode: 200,
body: { took: 42 }
}
}
})
const client = new Client({
node: 'http://localhost:9200',
Connection
})
const body = { query: { match_all: {} } }
await client.search({
index: 'test',
sort: 'foo',
body
})
t.same(body, { query: { match_all: {} } })
})