Skip to main content

controlKind

const controlKind: { actionElement: null; addGroupAction: "action"; addRuleAction: "action"; cloneGroupAction: "action"; cloneRuleAction: "action"; combinatorSelector: "selector"; dragHandle: null; fieldSelector: "selector"; inlineCombinator: null; lockGroupAction: "action"; lockRuleAction: "action"; matchModeEditor: null; muteGroupAction: "action"; muteRuleAction: "action"; notToggle: null; operatorSelector: "selector"; removeGroupAction: "action"; removeRuleAction: "action"; rule: null; ruleGroup: null; ruleGroupBodyElements: null; ruleGroupHeaderElements: null; shiftActions: null; undoRedoActions: null; ungroupAction: "action"; valueEditor: null; valueSelector: null; valueSourceSelector: "selector"; }

Defined in: packages/core/src/controlPropKeys.ts:640

Which bulk override, if any, applies to each control: "action" for controls that a supplied actionElement replaces, "selector" for controls that a supplied valueSelector replaces, and null for controls that neither replaces.

actionElement and valueSelector are themselves null—they are the source of a bulk override, not a target of one.

Replaces name-suffix sniffing (key.endsWith('Action')), which would silently misclassify a future control named e.g. pathSelector, and which disagrees between implementations about whether shiftActions/undoRedoActions (plural) match. They do not: neither receives the actionElement bulk override.

Type Declaration​

actionElement​

readonly actionElement: null = null

addGroupAction​

readonly addGroupAction: "action" = 'action'

addRuleAction​

readonly addRuleAction: "action" = 'action'

cloneGroupAction​

readonly cloneGroupAction: "action" = 'action'

cloneRuleAction​

readonly cloneRuleAction: "action" = 'action'

combinatorSelector​

readonly combinatorSelector: "selector" = 'selector'

dragHandle​

readonly dragHandle: null = null

fieldSelector​

readonly fieldSelector: "selector" = 'selector'

inlineCombinator​

readonly inlineCombinator: null = null

lockGroupAction​

readonly lockGroupAction: "action" = 'action'

lockRuleAction​

readonly lockRuleAction: "action" = 'action'

matchModeEditor​

readonly matchModeEditor: null = null

muteGroupAction​

readonly muteGroupAction: "action" = 'action'

muteRuleAction​

readonly muteRuleAction: "action" = 'action'

notToggle​

readonly notToggle: null = null

operatorSelector​

readonly operatorSelector: "selector" = 'selector'

removeGroupAction​

readonly removeGroupAction: "action" = 'action'

removeRuleAction​

readonly removeRuleAction: "action" = 'action'

rule​

readonly rule: null = null

ruleGroup​

readonly ruleGroup: null = null

ruleGroupBodyElements​

readonly ruleGroupBodyElements: null = null

ruleGroupHeaderElements​

readonly ruleGroupHeaderElements: null = null

shiftActions​

readonly shiftActions: null = null

undoRedoActions​

readonly undoRedoActions: null = null

ungroupAction​

readonly ungroupAction: "action" = 'action'

valueEditor​

readonly valueEditor: null = null

valueSelector​

readonly valueSelector: null = null

valueSourceSelector​

readonly valueSourceSelector: "selector" = 'selector'


caution

API documentation is generated from the latest commit on the main branch. It may be somewhat inconsistent with official releases of React Query Builder.