/** * Field with fields, which are shown according to recursive scope. * uiSchema = {"ui:options": { * additionalsGroupingPath: path to the field scope that defines groups * additionalsGroupsTranslator: one of scopeFieldsSettings translator * additionalsPersistenceKey: instances with same persistence id use the same additional fields * additionalsPersistenceField: form data property value for more fine grained persistence behaviour * uiSchema: (ui schema for inner schema) * fields: [] (fields that are always shown) * fieldScopes: { * fieldName: { * fieldValue: { * fields: [] (fields that are shown if fieldName[fieldValue} == true) * additionalFields: [] (if grouping is enabled, additional fields are shown only if selected from the list) * excludeFields: [] (exclude fields from showing) * excludeFields: [] (fields that are shown by default) * refs: [] (root definitions that are merged recursively to this fieldScope) * uiSchema: (merged recursively to inner uiSchema) * uiSchemaMergeType: See documentation for ConditionalUiSchemaField * fieldScopes: {fieldName: , fieldName2 ...} * }, * fieldValue2, ... * } * }, * definitions: { * defName: , * defname2: ... * } * } * * Field scope values accept asterisk (*) and plus (+) as field scope selector. */ export default class ScopeField extends React.Component { static contextType: React.Context; static propTypes: { uiSchema: PropTypes.Validator; additionalsGroupingPath: PropTypes.Requireable; additionalsGroupsTranslator: PropTypes.Requireable; additionalsPersistenceKey: PropTypes.Requireable; additionalsPersistenceField: PropTypes.Requireable; fieldScopes: PropTypes.Requireable; fields: PropTypes.Requireable<(string | null | undefined)[]>; definitions: PropTypes.Requireable; uiSchema: PropTypes.Requireable; }>>>; }>>>; schema: PropTypes.Validator; }>>>; formData: PropTypes.Validator; }; constructor(props: any); state: { includeAdditionalFieldsChooserButton: boolean; }; UNSAFE_componentWillReceiveProps(props: any): void; componentDidMount(): void; mounted: boolean | undefined; componentWillUnmount(): void; render(): JSX.Element; componentDidUpdate(prevProps: any, prevState: any): void; getAdditionalPersistenceValue: (props: any, includeUndefined?: boolean) => any[]; getStateFromProps(props: any): { includeAdditionalFieldsChooserButton: boolean; }; _globals: any; getSchemasAndAdditionals: (props: any, state: any) => { schema: any; uiSchema: import("../../types").UiSchema; additionalFields: any; defaultFields: any; fieldsToShow: {}; }; onToggleAdditionals: () => void; renderAdditionalsButtons: () => any; onSelect: () => void; preventCloseDropdown: boolean | undefined; onToggle: (isOpen: any) => void; renderFieldsDropdown(additionalProperties: any): JSX.Element; renderFieldsModal: (additionalProperties: any) => JSX.Element; modal: JSX.Element | undefined; renderFieldsButton: (bsRole: any) => JSX.Element; renderGlyphFields: () => any; propertyIsIncluded: (property: any) => boolean; toggleAdditionalProperty: (fields: any) => void; additionalPropertiesToList: (properties: any, ElemType: any) => JSX.Element[]; propertyTogglers: {} | undefined; translateAdditionalsGroups: (props: any) => void; } import * as React from "react"; import * as PropTypes from "prop-types";