import { ButtonPlacementTypes, ButtonVariantTypes, RecaptchaTypes, } from "components/constants"; import { BUTTON_MIN_WIDTH } from "constants/minWidthConstants"; import { ResponsiveBehavior } from "utils/autoLayout/constants"; import IconSVG from "./icon.svg"; import Widget from "./widget"; export const CONFIG = { type: Widget.getWidgetType(), name: "Button", iconSVG: IconSVG, needsMeta: true, searchTags: ["click", "submit"], defaults: { animateLoading: true, text: "Submit", buttonVariant: ButtonVariantTypes.PRIMARY, placement: ButtonPlacementTypes.CENTER, rows: 4, columns: 16, widgetName: "Button", isDisabled: false, isVisible: true, isDefaultClickDisabled: true, disabledWhenInvalid: false, resetFormOnClick: false, recaptchaType: RecaptchaTypes.V3, version: 1, responsiveBehavior: ResponsiveBehavior.Hug, minWidth: BUTTON_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(), }, autoLayout: { defaults: { rows: 4, columns: 6.453, }, autoDimension: { width: true, }, widgetSize: [ { viewportMinWidth: 0, configuration: () => { return { minWidth: "120px", maxWidth: "360px", }; }, }, ], disableResizeHandles: { horizontal: true, vertical: true, }, }, }; export default Widget;