import { Alignment } from "@blueprintjs/core"; import { LabelPosition } from "components/constants"; import { FILL_WIDGET_MIN_WIDTH } from "constants/minWidthConstants"; import { ResponsiveBehavior } from "utils/autoLayout/constants"; import { DynamicHeight } from "utils/WidgetFeatures"; import IconSVG from "./icon.svg"; import Widget from "./widget"; export const CONFIG = { features: { dynamicHeight: { sectionIndex: 3, defaultValue: DynamicHeight.FIXED, active: true, }, }, type: Widget.getWidgetType(), name: "Multi TreeSelect", iconSVG: IconSVG, needsMeta: true, searchTags: ["dropdown", "multiselecttree"], defaults: { rows: 7, columns: 20, mode: "SHOW_ALL", animateLoading: true, options: [ { label: "Blue", value: "BLUE", children: [ { label: "Dark Blue", value: "DARK BLUE", }, { label: "Light Blue", value: "LIGHT BLUE", }, ], }, { label: "Green", value: "GREEN" }, { label: "Red", value: "RED" }, ], widgetName: "MultiTreeSelect", defaultOptionValue: ["GREEN"], version: 1, isVisible: true, isRequired: false, isDisabled: false, allowClear: false, expandAll: false, placeholderText: "Select option(s)", labelText: "Label", labelPosition: LabelPosition.Top, labelAlignment: Alignment.LEFT, labelWidth: 5, labelTextSize: "0.875rem", responsiveBehavior: ResponsiveBehavior.Fill, minWidth: FILL_WIDGET_MIN_WIDTH, }, properties: { derived: Widget.getDerivedPropertiesMap(), default: Widget.getDefaultPropertiesMap(), meta: Widget.getMetaPropertiesMap(), config: Widget.getPropertyPaneConfig(), contentConfig: Widget.getPropertyPaneContentConfig(), styleConfig: Widget.getPropertyPaneStyleConfig(), stylesheetConfig: Widget.getStylesheetConfig(), autocompleteDefinitions: Widget.getAutocompleteDefinitions(), setterConfig: Widget.getSetterConfig(), }, autoLayout: { disabledPropsDefaults: { labelPosition: LabelPosition.Top, labelTextSize: "0.875rem", }, defaults: { rows: 6.6, }, autoDimension: { height: true, }, widgetSize: [ { viewportMinWidth: 0, configuration: () => { return { minWidth: "160px", }; }, }, ], disableResizeHandles: { vertical: true, }, }, }; export default Widget;