Co-authored-by: devrk96 <rohit.kumawat@primathon.in> Co-authored-by: hetunandu <hetu@appsmith.com> Co-authored-by: Hetu Nandu <hetunandu@gmail.com> Co-authored-by: Vicky Bansal <67091118+vicky-primathon@users.noreply.github.com> Co-authored-by: nandan.anantharamu <nandan.anantharamu@thoughtspot.com>
38 lines
942 B
TypeScript
38 lines
942 B
TypeScript
import React from "react";
|
|
import BaseControl, { ControlProps } from "./BaseControl";
|
|
import IconTabsComponent, {
|
|
IconTabOption,
|
|
} from "components/ads/IconTabsComponent";
|
|
|
|
class IconTabControl extends BaseControl<IconTabControlProps> {
|
|
selectOption = (value: string) => {
|
|
const { propertyValue, defaultValue } = this.props;
|
|
if (propertyValue === value) {
|
|
this.updateProperty(this.props.propertyName, defaultValue);
|
|
} else {
|
|
this.updateProperty(this.props.propertyName, value);
|
|
}
|
|
};
|
|
render() {
|
|
const { propertyValue, options } = this.props;
|
|
return (
|
|
<IconTabsComponent
|
|
options={options}
|
|
value={propertyValue}
|
|
selectOption={this.selectOption}
|
|
/>
|
|
);
|
|
}
|
|
|
|
static getControlType() {
|
|
return "ICON_TABS";
|
|
}
|
|
}
|
|
|
|
export interface IconTabControlProps extends ControlProps {
|
|
options: IconTabOption[];
|
|
defaultValue: string;
|
|
}
|
|
|
|
export default IconTabControl;
|