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; valueEditor: null; valueSelector: null; valueSourceSelector: "selector"; }

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

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

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.