in libs/designer-ui/src/lib/querybuilder/Row.tsx [201:302]
operand1: operandNotEmpty(operand1) ? operand1 : [createEmptyLiteralValueSegment()],
operator: operator ?? 'equals',
operand2: newState.value,
},
index
);
}
};
const handleCheckbox = () => {
handleUpdateParent(
{ type: GroupType.ROW, checked: !checked, operand1: operand1, operator: operator ?? RowDropdownOptions.EQUALS, operand2: operand2 },
index
);
};
const onRenderOverflowButton = (): JSX.Element => {
const calloutProps: ICalloutProps = {
directionalHint: DirectionalHint.leftCenter,
};
const rowCommands = intl.formatMessage({
defaultMessage: 'More commands',
id: 'GdGm4T',
description: 'Label for commands in row',
});
return (
<TooltipHost calloutProps={calloutProps} content={rowCommands}>
<IconButton
ariaLabel={rowCommands}
styles={overflowStyle}
menuIconProps={menuIconProps}
menuProps={rowMenuItems && { items: rowMenuItems }}
/>
</TooltipHost>
);
};
const rowValueInputPlaceholder = intl.formatMessage({
defaultMessage: 'Choose a value',
id: 'ydqOly',
description: 'placeholder text for row values',
});
return (
<div className={css('msla-querybuilder-row-container', !forceSingleCondition && 'showBorder')}>
{forceSingleCondition ? null : (
<>
<div className="msla-querybuilder-row-gutter-hook" />
<Checkbox
disabled={readonly}
className="msla-querybuilder-row-checkbox"
initialChecked={checked}
onChange={handleCheckbox}
key={JSON.stringify(checked)}
/>
</>
)}
<div className="msla-querybuilder-row-content">
<StringEditor
valueType={constants.SWAGGER.TYPE.ANY}
readonly={readonly}
className={'msla-querybuilder-row-value-input'}
initialValue={operand1}
placeholder={rowValueInputPlaceholder}
getTokenPicker={getTokenPicker}
clearEditorOnTokenInsertion={clearEditorOnTokenInsertion}
onChange={handleKeyChange}
editorBlur={handleKeySave}
tokenPickerButtonProps={{
location: TokenPickerButtonLocation.Left,
newlineVerticalOffset: isSimpleQueryBuilder ? 16.5 : 16,
horizontalOffSet: isSimpleQueryBuilder ? undefined /* uses default of 38*/ : 33,
}}
{...baseEditorProps}
/>
<RowDropdown disabled={readonly || key.length === 0} condition={operator} onChange={handleSelectedOption} key={operator} />
<StringEditor
valueType={constants.SWAGGER.TYPE.ANY}
readonly={readonly || (key.length === 0 && operand2.length === 0)}
className={'msla-querybuilder-row-value-input'}
initialValue={operand2}
placeholder={rowValueInputPlaceholder}
getTokenPicker={getTokenPicker}
editorBlur={handleValueSave}
clearEditorOnTokenInsertion={clearEditorOnTokenInsertion}
tokenPickerButtonProps={{
location: TokenPickerButtonLocation.Left,
newlineVerticalOffset: isSimpleQueryBuilder ? 16.5 : 16,
horizontalOffSet: 33,
}}
{...baseEditorProps}
/>
</div>
{forceSingleCondition ? null : (
<OverflowSet
className="msla-querybuilder-row-more"
styles={overflowStyle}
items={[]}
overflowItems={rowMenuItems}
onRenderOverflowButton={onRenderOverflowButton}
onRenderItem={(_item: IOverflowSetItemProps) => {