Skip to content

Commit df56ddc

Browse files
add support for meta parameter to field types
1 parent fe6cbd5 commit df56ddc

File tree

12 files changed

+70
-14
lines changed

12 files changed

+70
-14
lines changed

x-pack/plugins/index_management/public/application/components/mappings_editor/components/document_fields/fields/field_types/binary_type.tsx

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,24 @@
55
*/
66
import React from 'react';
77

8-
import { StoreParameter, DocValuesParameter } from '../../field_parameters';
8+
import { NormalizedField } from '../../../../types';
9+
import { StoreParameter, DocValuesParameter, MetaParameter } from '../../field_parameters';
910
import { AdvancedParametersSection } from '../edit_field';
1011

11-
export const BinaryType = () => {
12+
const getDefaultToggleValue = (param: ParameterName, field: FieldType) => {
13+
return field[param] !== undefined && field[param] !== '';
14+
};
15+
16+
interface Props {
17+
field: NormalizedField;
18+
}
19+
20+
export const BinaryType = ({ field }: Props) => {
1221
return (
1322
<AdvancedParametersSection>
1423
<DocValuesParameter configPath="doc_values_binary" />
1524
<StoreParameter />
25+
<MetaParameter defaultToggleValue={getDefaultToggleValue('meta', field.source)} />
1626
</AdvancedParametersSection>
1727
);
1828
};

x-pack/plugins/index_management/public/application/components/mappings_editor/components/document_fields/fields/field_types/boolean_type.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import {
1616
DocValuesParameter,
1717
BoostParameter,
1818
NullValueParameter,
19+
MetaParameter,
1920
} from '../../field_parameters';
2021
import { BasicParametersSection, AdvancedParametersSection } from '../edit_field';
2122

@@ -24,8 +25,9 @@ const getDefaultToggleValue = (param: string, field: FieldType) => {
2425
case 'boost': {
2526
return field[param] !== undefined && field[param] !== getFieldConfig(param).defaultValue;
2627
}
28+
case 'meta':
2729
case 'null_value': {
28-
return field.null_value !== undefined;
30+
return field[param] !== undefined && field[param] !== '';
2931
}
3032
default:
3133
return false;
@@ -90,6 +92,8 @@ export const BooleanType = ({ field }: Props) => {
9092

9193
<StoreParameter />
9294

95+
<MetaParameter defaultToggleValue={getDefaultToggleValue('meta', field.source)} />
96+
9397
<BoostParameter defaultToggleValue={getDefaultToggleValue('boost', field.source)} />
9498
</AdvancedParametersSection>
9599
</>

x-pack/plugins/index_management/public/application/components/mappings_editor/components/document_fields/fields/field_types/completion_type.tsx

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,17 @@ import { i18n } from '@kbn/i18n';
1010
import { NormalizedField, Field as FieldType } from '../../../../types';
1111
import { getFieldConfig } from '../../../../lib';
1212
import { UseField, Field } from '../../../../shared_imports';
13-
import { AnalyzersParameter } from '../../field_parameters';
13+
import { AnalyzersParameter, MetaParameter } from '../../field_parameters';
1414
import { EditFieldFormRow, AdvancedParametersSection } from '../edit_field';
1515

1616
const getDefaultToggleValue = (param: string, field: FieldType) => {
1717
switch (param) {
1818
case 'max_input_length': {
1919
return field[param] !== undefined && field[param] !== getFieldConfig(param).defaultValue;
2020
}
21+
case 'meta': {
22+
return field[param] !== undefined && field[param] !== '';
23+
}
2124
case 'analyzers': {
2225
return field.search_analyzer !== undefined && field.search_analyzer !== field.analyzer;
2326
}
@@ -88,6 +91,8 @@ export const CompletionType = ({ field }: Props) => {
8891
)}
8992
formFieldPath="preserve_position_increments"
9093
/>
94+
95+
<MetaParameter defaultToggleValue={getDefaultToggleValue('meta', field.source)} />
9196
</AdvancedParametersSection>
9297
);
9398
};

x-pack/plugins/index_management/public/application/components/mappings_editor/components/document_fields/fields/field_types/date_type.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import {
1919
IgnoreMalformedParameter,
2020
FormatParameter,
2121
LocaleParameter,
22+
MetaParameter,
2223
} from '../../field_parameters';
2324
import { BasicParametersSection, AdvancedParametersSection } from '../edit_field';
2425

@@ -29,8 +30,9 @@ const getDefaultToggleValue = (param: string, field: FieldType) => {
2930
case 'boost': {
3031
return field[param] !== undefined && field[param] !== getFieldConfig(param).defaultValue;
3132
}
33+
case 'meta':
3234
case 'null_value': {
33-
return field.null_value !== undefined && field.null_value !== '';
35+
return field[param] !== undefined && field[param] !== '';
3436
}
3537
default:
3638
return false;
@@ -73,6 +75,8 @@ export const DateType = ({ field }: Props) => {
7375

7476
<StoreParameter />
7577

78+
<MetaParameter defaultToggleValue={getDefaultToggleValue('meta', field.source)} />
79+
7680
<BoostParameter defaultToggleValue={getDefaultToggleValue('boost', field.source)} />
7781
</AdvancedParametersSection>
7882
</>

x-pack/plugins/index_management/public/application/components/mappings_editor/components/document_fields/fields/field_types/flattened_type.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import {
1919
NullValueParameter,
2020
SimilarityParameter,
2121
SplitQueriesOnWhitespaceParameter,
22+
MetaParameter,
2223
} from '../../field_parameters';
2324
import { BasicParametersSection, EditFieldFormRow, AdvancedParametersSection } from '../edit_field';
2425

@@ -32,8 +33,9 @@ const getDefaultToggleValue = (param: string, field: FieldType) => {
3233
case 'similarity': {
3334
return field[param] !== undefined && field[param] !== getFieldConfig(param).defaultValue;
3435
}
36+
case 'meta':
3537
case 'null_value': {
36-
return field.null_value !== undefined && field.null_value !== '';
38+
return field[param] !== undefined && field[param] !== '';
3739
}
3840
default:
3941
return false;
@@ -101,6 +103,8 @@ export const FlattenedType = React.memo(({ field }: Props) => {
101103
defaultToggleValue={getDefaultToggleValue('null_value', field.source)}
102104
/>
103105

106+
<MetaParameter defaultToggleValue={getDefaultToggleValue('meta', field.source)} />
107+
104108
<BoostParameter defaultToggleValue={getDefaultToggleValue('boost', field.source)} />
105109
</AdvancedParametersSection>
106110
</>

x-pack/plugins/index_management/public/application/components/mappings_editor/components/document_fields/fields/field_types/geo_point_type.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,15 @@ import {
1414
IgnoreMalformedParameter,
1515
NullValueParameter,
1616
IgnoreZValueParameter,
17+
MetaParameter,
1718
} from '../../field_parameters';
1819
import { BasicParametersSection, AdvancedParametersSection } from '../edit_field';
1920

2021
const getDefaultToggleValue = (param: string, field: FieldType) => {
2122
switch (param) {
23+
case 'meta':
2224
case 'null_value': {
23-
return field.null_value !== undefined;
25+
return field[param] !== undefined && field[param] !== '';
2426
}
2527
default:
2628
return false;
@@ -65,6 +67,8 @@ export const GeoPointType = ({ field }: Props) => {
6567
config={getFieldConfig('null_value_geo_point')}
6668
/>
6769
</NullValueParameter>
70+
71+
<MetaParameter defaultToggleValue={getDefaultToggleValue('meta', field.source)} />
6872
</AdvancedParametersSection>
6973
</>
7074
);

x-pack/plugins/index_management/public/application/components/mappings_editor/components/document_fields/fields/field_types/histogram_type.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,12 @@ const getDefaultToggleValue = (param: ParameterName, field: FieldType) => {
1717
return field[param] !== undefined;
1818
};
1919

20-
export const HistogramType = React.memo(({ field }: Props) => {
20+
export const HistogramType = ({ field }: Props) => {
2121
return (
2222
<AdvancedParametersSection>
2323
<IgnoreMalformedParameter />
2424

2525
<MetaParameter defaultToggleValue={getDefaultToggleValue('meta', field.source)} />
2626
</AdvancedParametersSection>
2727
);
28-
});
28+
};

x-pack/plugins/index_management/public/application/components/mappings_editor/components/document_fields/fields/field_types/numeric_type.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import {
1818
CoerceNumberParameter,
1919
IgnoreMalformedParameter,
2020
CopyToParameter,
21+
MetaParameter,
2122
} from '../../field_parameters';
2223
import { BasicParametersSection, EditFieldFormRow, AdvancedParametersSection } from '../edit_field';
2324
import { PARAMETERS_DEFINITION } from '../../../../constants';
@@ -29,8 +30,9 @@ const getDefaultToggleValue = (param: string, field: FieldType) => {
2930
case 'ignore_malformed': {
3031
return field[param] !== undefined && field[param] !== getFieldConfig(param).defaultValue;
3132
}
33+
case 'meta':
3234
case 'null_value': {
33-
return field.null_value !== undefined && field.null_value !== '';
35+
return field[param] !== undefined && field[param] !== '';
3436
}
3537
default:
3638
return false;
@@ -95,6 +97,8 @@ export const NumericType = ({ field }: Props) => {
9597

9698
<StoreParameter />
9799

100+
<MetaParameter defaultToggleValue={getDefaultToggleValue('meta', field.source)} />
101+
98102
<BoostParameter defaultToggleValue={getDefaultToggleValue('boost', field.source)} />
99103
</AdvancedParametersSection>
100104
</>

x-pack/plugins/index_management/public/application/components/mappings_editor/components/document_fields/fields/field_types/range_type.tsx

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*/
66
import React from 'react';
77

8-
import { NormalizedField, Field as FieldType } from '../../../../types';
8+
import { NormalizedField, Field as FieldType, ParameterName } from '../../../../types';
99
import { getFieldConfig } from '../../../../lib';
1010
import {
1111
StoreParameter,
@@ -14,11 +14,16 @@ import {
1414
CoerceNumberParameter,
1515
FormatParameter,
1616
LocaleParameter,
17+
MetaParameter,
1718
} from '../../field_parameters';
1819
import { BasicParametersSection, AdvancedParametersSection } from '../edit_field';
1920
import { FormDataProvider } from '../../../../shared_imports';
2021

21-
const getDefaultToggleValue = (param: 'locale' | 'format' | 'boost', field: FieldType) => {
22+
const getDefaultToggleValue = (param: ParameterName, field: FieldType) => {
23+
if (param === 'meta') {
24+
return field[param] !== undefined && field[param] !== '';
25+
}
26+
2227
return field[param] !== undefined && field[param] !== getFieldConfig(param).defaultValue;
2328
};
2429

@@ -57,6 +62,8 @@ export const RangeType = ({ field }: Props) => {
5762

5863
<StoreParameter />
5964

65+
<MetaParameter defaultToggleValue={getDefaultToggleValue('meta', field.source)} />
66+
6067
<BoostParameter defaultToggleValue={getDefaultToggleValue('boost', field.source)} />
6168
</AdvancedParametersSection>
6269
</>

x-pack/plugins/index_management/public/application/components/mappings_editor/components/document_fields/fields/field_types/search_as_you_type.tsx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import {
1515
SimilarityParameter,
1616
TermVectorParameter,
1717
MaxShingleSizeParameter,
18+
MetaParameter,
1819
} from '../../field_parameters';
1920
import { BasicParametersSection, AdvancedParametersSection } from '../edit_field';
2021

@@ -29,6 +30,9 @@ const getDefaultToggleValue = (param: string, field: FieldType) => {
2930
case 'max_shingle_size': {
3031
return field[param] !== undefined && field[param] !== getFieldConfig(param).defaultValue;
3132
}
33+
case 'meta': {
34+
return field[param] !== undefined && field[param] !== '';
35+
}
3236
case 'analyzers': {
3337
return field.search_analyzer !== undefined && field.search_analyzer !== field.analyzer;
3438
}
@@ -65,6 +69,8 @@ export const SearchAsYouType = React.memo(({ field }: Props) => {
6569
/>
6670

6771
<StoreParameter />
72+
73+
<MetaParameter defaultToggleValue={getDefaultToggleValue('meta', field.source)} />
6874
</AdvancedParametersSection>
6975
</>
7076
);

0 commit comments

Comments
 (0)