{
    "$schema": "https://schemas.wp.org/trunk/block.json",
    "apiVersion": 3,
    "name": "ssmb/icon-button",
    "title": "Icon Button",
    "description": "A customizable social media button.",
    "attributes": {
        "blockName": { "type": "string", "default": "ssmb/icon-button" },
        "uniqueBlockButtonClass": { "type": "string", "default": "" },
        
        "blockButtonMinHeightDesktop": { "type": "number", "default": 46 },
        "blockButtonMinHeightTablet": { "type": "number", "default": "" },
        "blockButtonMinHeightMobile": { "type": "number", "default": "" },

        "blockButtonWidthDesktop": { "type": "number", "default": null },
        "blockButtonWidthTablet": { "type": "number", "default": null },
        "blockButtonWidthMobile": { "type": "number", "default": null },

        "paddingBlockSyncButton": { "type": "boolean", "default": true },
        "blockButtonPaddingTopDesktop": { "type": "number", "default": 0 },
        "blockButtonPaddingTopTablet": { "type": "number", "default": 0 },
        "blockButtonPaddingTopMobile": { "type": "number", "default": 0 },

        "blockButtonPaddingRightDesktop": { "type": "number", "default": 0 },
        "blockButtonPaddingRightTablet": { "type": "number", "default": 0 },
        "blockButtonPaddingRightMobile": { "type": "number", "default": 0 },

        "blockButtonPaddingBottomDesktop": { "type": "number", "default": 0 },
        "blockButtonPaddingBottomTablet": { "type": "number", "default": 0 },
        "blockButtonPaddingBottomMobile": { "type": "number", "default": 0 },

        "blockButtonPaddingLeftDesktop": { "type": "number", "default": 0 },
        "blockButtonPaddingLeftTablet": { "type": "number", "default": 0 },
        "blockButtonPaddingLeftMobile": { "type": "number", "default": 0 },

        "marginBlockSyncButton": { "type": "boolean", "default": true },
        "blockButtonMarginTopDesktop": { "type": "number", "default": 0 },
        "blockButtonMarginTopTablet": { "type": "number", "default": 0 },
        "blockButtonMarginTopMobile": { "type": "number", "default": 0 },

        "blockButtonMarginRightDesktop": { "type": "number", "default": 0 },
        "blockButtonMarginRightTablet": { "type": "number", "default": 0 },
        "blockButtonMarginRightMobile": { "type": "number", "default": 0 },

        "blockButtonMarginBottomDesktop": { "type": "number", "default": 0 },
        "blockButtonMarginBottomTablet": { "type": "number", "default": 0 },
        "blockButtonMarginBottomMobile": { "type": "number", "default": 0 },

        "blockButtonMarginLeftDesktop": { "type": "number", "default": 0 },
        "blockButtonMarginLeftTablet": { "type": "number", "default": 0 },
        "blockButtonMarginLeftMobile": { "type": "number", "default": 0 },

        "buttonContentVerticalAlignDesktop": { "type": "string", "default": "flex-start" },
        "buttonContentVerticalAlignTablet": { "type": "string", "default": "" },
        "buttonContentVerticalAlignMobile": { "type": "string", "default": "" },

        "buttonContentHorizontalAlignDesktop": { "type": "string", "default": "flex-start" },
        "buttonContentHorizontalAlignTablet": { "type": "string", "default": "" },
        "buttonContentHorizontalAlignMobile": { "type": "string", "default": "" },

        "blockButtonBackgroundMode": { "type": "string", "default": "solid" },
		"blockButtonBackgroundColor": { "type": "string", "default": "transparent" },
		"blockButtonBackgroundOpacity": { "type": "number", "default": 1 },

        "hoverBlockButtonBackgroundColor": { "type": "string", "default": null },
		"hoverBlockButtonBackgroundOpacity": { "type": "number", "default": 1 },

		"blockButtonBackgroundGradient": { "type": "string", "default": null },

		"blockButtonBackgroundImageDesktop": { "type": "string", "default": "" },
		"blockButtonBackgroundImageTablet": { "type": "string", "default": "" },
		"blockButtonBackgroundImageMobile": { "type": "string", "default": "" },

		"blockButtonBackgroundImageURLDesktop": { "type": "string", "default": "" },
		"blockButtonBackgroundImageURLTablet": { "type": "string", "default": "" },
		"blockButtonBackgroundImageURLMobile": { "type": "string", "default": "" },

		"blockButtonBackgroundFixed": { "type": "boolean", "default": false },
		"blockButtonBackgroundPosition": { "type": "string", "default": "" },
		"blockButtonBackgroundSize": { "type": "string", "default": "" },

		"blockButtonBackgroundCustomSizeDesktop": { "type": "number", "default": "" },
		"blockButtonBackgroundCustomSizeTablet": { "type": "number", "default": "" },
		"blockButtonBackgroundCustomSizeMobile": { "type": "number", "default": "" },

		"blockButtonBackgroundRepeat": { "type": "string", "default": "" },
		"blockButtonBackgroundTint": { "type": "number", "default": 0 },
		"blockButtonBackgroundBlendMode": { "type": "string", "default": "" },

        "buttonMinHeightDesktop": { "type": "number", "default": 44 },
        "buttonMinHeightTablet": { "type": "number", "default": "" },
        "buttonMinHeightMobile": { "type": "number", "default": "" },

        "buttonWidthDesktop": { "type": "number", "default": 44 },
        "buttonWidthTablet": { "type": "number", "default": "" },
        "buttonWidthMobile": { "type": "number", "default": "" },

        "paddingSyncButton": { "type": "boolean", "default": true },
        "buttonPaddingTopDesktop": { "type": "number", "default": 0 },
        "buttonPaddingTopTablet": { "type": "number", "default": 0 },
        "buttonPaddingTopMobile": { "type": "number", "default": 0 },

        "buttonPaddingRightDesktop": { "type": "number", "default": 0 },
        "buttonPaddingRightTablet": { "type": "number", "default": 0 },
        "buttonPaddingRightMobile": { "type": "number", "default": 0 },

        "buttonPaddingBottomDesktop": { "type": "number", "default": 0 },
        "buttonPaddingBottomTablet": { "type": "number", "default": 0 },
        "buttonPaddingBottomMobile": { "type": "number", "default": 0 },

        "buttonPaddingLeftDesktop": { "type": "number", "default": 0 },
        "buttonPaddingLeftTablet": { "type": "number", "default": 0 },
        "buttonPaddingLeftMobile": { "type": "number", "default": 0 },

        "buttonBackgroundMode": { "type": "string", "default": "solid" },

		"buttonBackgroundColor": { "type": "string", "default": "#4F4ED7" },
		"hoverButtonBackgroundColor": { "type": "string", "default": null },
		"buttonBackgroundOpacity": { "type": "number", "default": 1 },
		"hoverButtonBackgroundOpacity": { "type": "number", "default": 1 },

        "buttonIcon": {
            "type": "object",
            "default": { "iconName": "circle-notch", "prefix": "fas", "svg": "" },
            "properties": { "iconName": { "type": "string" }, "prefix": { "type": "string" }, "svg": { "type": "string" } }
        },
        "isFontAwesome": { "type": "boolean", "default": true },
        "buttonIconLink": { "type": "string", "default": "" },
        "openInNewTab": { "type": "boolean", "default": false },
        "linkRel": { "type": "string", "default": "" },
        "linkTitle": { "type": "string", "default": "" },

        "buttonIconColor": { "type": "string", "default": "#ffffff" },
        "hoverButtonIconColor": { "type": "string", "default": null },
        "buttonIconNoverEffect": { "type": "string", "default": "none" },
		"buttonIconOpacity": { "type": "number", "default": 1 },
		"hoverButtonIconOpacity": { "type": "number", "default": 1 },

		"buttonIconSizeDesktop": { "type": "number", "default": 18 },
		"buttonIconSizeTablet": { "type": "number", "default": "" },
		"buttonIconSizeMobile": { "type": "number", "default": "" },

        "buttonIconRotation": { "type": "number", "default": 0 },
        "hoverButtonIconRotation": { "type": "number", "default": 0 },

        "buttonIconPosition": { "type": "string", "default": "left" },

        "buttonIconGapDesktop": { "type": "number", "default": 0 },
        "buttonIconGapTablet": { "type": "number", "default": 0 },
        "buttonIconGapMobile": { "type": "number", "default": 0 },
        
        "buttonBackgroundGradient": { "type": "string", "default": null },

        "buttonBorderStyle": { "type": "string", "default": "none" },
		"buttonBorderColor": { "type": "string", "default": "#000000" },
		"buttonBorderOpacity": { "type": "number", "default": 1 },

		"buttonBorderWidthSync": { "type": "boolean", "default": true },
		"buttonBorderTopWidthDesktop": { "type": "number", "default": 1 },
        "buttonBorderRightWidthDesktop": { "type": "number", "default": 1 },
        "buttonBorderBottomWidthDesktop": { "type": "number", "default": 1 },
        "buttonBorderLeftWidthDesktop": { "type": "number", "default": 1 },

        "buttonBorderTopWidthTablet": { "type": "number", "default": "" },
        "buttonBorderRightWidthTablet": { "type": "number", "default": "" },
        "buttonBorderBottomWidthTablet": { "type": "number", "default": "" },
        "buttonBorderLeftWidthTablet": { "type": "number", "default": "" },

        "buttonBorderTopWidthMobile": { "type": "number", "default": "" },
        "buttonBorderRightWidthMobile": { "type": "number", "default": "" },
        "buttonBorderBottomWidthMobile": { "type": "number", "default": "" },
        "buttonBorderLeftWidthMobile": { "type": "number", "default": "" },

		"hoverButtonBorderColor": { "type": "string", "default": "" },
		"hoverButtonBorderOpacity": { "type": "number", "default": 1 },

		"hoverButtonBorderWidthSync": { "type": "boolean", "default": true },
		"hoverButtonBorderTopWidthDesktop": { "type": "number", "default": "" },
        "hoverButtonBorderTopWidthTablet": { "type": "number", "default": "" },
        "hoverButtonBorderTopWidthMobile": { "type": "number", "default": "" },

        "hoverButtonBorderRightWidthDesktop": { "type": "number", "default": "" },
        "hoverButtonBorderRightWidthTablet": { "type": "number", "default": "" },
        "hoverButtonBorderRightWidthMobile": { "type": "number", "default": "" },

        "hoverButtonBorderBottomWidthDesktop": { "type": "number", "default": "" },
        "hoverButtonBorderBottomWidthTablet": { "type": "number", "default": "" },
        "hoverButtonBorderBottomWidthMobile": { "type": "number", "default": "" },

        "hoverButtonBorderLeftWidthDesktop": { "type": "number", "default": "" },
        "hoverButtonBorderLeftWidthTablet": { "type": "number", "default": "" },
        "hoverButtonBorderLeftWidthMobile": { "type": "number", "default": "" },

		"buttonRadiusSync": { "type": "boolean", "default": true },
		"topLeftButtonRadiusDesktop": { "type": "number", "default": 24 },
        "topRightButtonRadiusDesktop": { "type": "number", "default": 24 },
        "bottomLeftButtonRadiusDesktop": { "type": "number", "default": 24 },
        "bottomRightButtonRadiusDesktop": { "type": "number", "default": 24 },

        "topLeftButtonRadiusTablet": { "type": "number", "default": 0 },
        "topRightButtonRadiusTablet": { "type": "number", "default": 0 },
        "bottomLeftButtonRadiusTablet": { "type": "number", "default": 0 },
        "bottomRightButtonRadiusTablet": { "type": "number", "default": 0 },

        "topLeftButtonRadiusMobile": { "type": "number", "default": 0 },
        "topRightButtonRadiusMobile": { "type": "number", "default": 0 },
        "bottomLeftButtonRadiusMobile": { "type": "number", "default": 0 },
        "bottomRightButtonRadiusMobile": { "type": "number", "default": 0 },

        "buttonBoxShadowHOffset": { "type": "number", "default": 0 },
        "buttonBoxShadowVOffset": { "type": "number", "default": 0 },
        "buttonBoxShadowBlur": { "type": "number", "default": 0 },
        "buttonBoxShadowSpread": { "type": "number", "default": 0 },
        "buttonBoxShadowColor": { "type": "string", "default": "#000000" },
        "buttonBoxShadowOpacity": { "type": "number", "default": 1 },

        "hoverButtonBoxShadowHOffset": { "type": "number", "default": 0 },
        "hoverButtonBoxShadowVOffset": { "type": "number", "default": 0 },
        "hoverButtonBoxShadowBlur": { "type": "number", "default": 0 },
        "hoverButtonBoxShadowSpread": { "type": "number", "default": 0 },
        "hoverButtonBoxShadowColor": { "type": "string", "default": null },
        "hoverButtonBoxShadowOpacity": { "type": "number", "default": 1 },


        "blockButtonBorderStyle": { "type": "string", "default": "none" },
		"blockButtonBorderColor": { "type": "string", "default": "#000000" },
		"blockButtonBorderOpacity": { "type": "number", "default": 1 },

		"blockButtonBorderWidthSync": { "type": "boolean", "default": true },

        "blockButtonBorderTopWidthDesktop": { "type": "number", "default": 1 },
        "blockButtonBorderRightWidthDesktop": { "type": "number", "default": 1 },
        "blockButtonBorderBottomWidthDesktop": { "type": "number", "default": 1 },
        "blockButtonBorderLeftWidthDesktop": { "type": "number", "default": 1 },

        "blockButtonBorderTopWidthTablet": { "type": "number", "default": "" },
        "blockButtonBorderRightWidthTablet": { "type": "number", "default": "" },
        "blockButtonBorderBottomWidthTablet": { "type": "number", "default": "" },
        "blockButtonBorderLeftWidthTablet": { "type": "number", "default": "" },

        "blockButtonBorderTopWidthMobile": { "type": "number", "default": "" },
        "blockButtonBorderRightWidthMobile": { "type": "number", "default": "" },
        "blockButtonBorderBottomWidthMobile": { "type": "number", "default": "" },
        "blockButtonBorderLeftWidthMobile": { "type": "number", "default": "" },

		"hoverBlockButtonBorderColor": { "type": "string", "default": "" },
		"hoverBlockButtonBorderOpacity": { "type": "number", "default": 1 },

		"hoverBlockButtonBorderWidthSync": { "type": "boolean", "default": true },
		"hoverBlockButtonBorderTopWidthDesktop": { "type": "number", "default": "" },
        "hoverBlockButtonBorderRightWidthDesktop": { "type": "number", "default": "" },
        "hoverBlockButtonBorderBottomWidthDesktop": { "type": "number", "default": "" },
        "hoverBlockButtonBorderLeftWidthDesktop": { "type": "number", "default": "" },

        "hoverBlockButtonBorderTopWidthTablet": { "type": "number", "default": "" },
        "hoverBlockButtonBorderRightWidthTablet": { "type": "number", "default": "" },
        "hoverBlockButtonBorderBottomWidthTablet": { "type": "number", "default": "" },
        "hoverBlockButtonBorderLeftWidthTablet": { "type": "number", "default": "" },

        "hoverBlockButtonBorderTopWidthMobile": { "type": "number", "default": "" },
        "hoverBlockButtonBorderRightWidthMobile": { "type": "number", "default": "" },
        "hoverBlockButtonBorderBottomWidthMobile": { "type": "number", "default": "" },
        "hoverBlockButtonBorderLeftWidthMobile": { "type": "number", "default": "" },

		"blockButtonRadiusSync": { "type": "boolean", "default": true },
		"topLeftBlockButtonRadiusDesktop": { "type": "number", "default": 0 },
        "topRightBlockButtonRadiusDesktop": { "type": "number", "default": 0 },
        "bottomLeftBlockButtonRadiusDesktop": { "type": "number", "default": 0 },
        "bottomRightBlockButtonRadiusDesktop": { "type": "number", "default": 0 },

        "topLeftBlockButtonRadiusTablet": { "type": "number", "default": 0 },
        "topRightBlockButtonRadiusTablet": { "type": "number", "default": 0 },
        "bottomLeftBlockButtonRadiusTablet": { "type": "number", "default": 0 },
        "bottomRightBlockButtonRadiusTablet": { "type": "number", "default": 0 },

        "topLeftBlockButtonRadiusMobile": { "type": "number", "default": 0 },
        "topRightBlockButtonRadiusMobile": { "type": "number", "default": 0 },
        "bottomLeftBlockButtonRadiusMobile": { "type": "number", "default": 0 },
        "bottomRightBlockButtonRadiusMobile": { "type": "number", "default": 0 },

        "blockButtonBoxShadowHOffset": { "type": "number", "default": 0 },
        "blockButtonBoxShadowVOffset": { "type": "number", "default": 0 },
        "blockButtonBoxShadowBlur": { "type": "number", "default": 0 },
        "blockButtonBoxShadowSpread": { "type": "number", "default": 0 },
        "blockButtonBoxShadowColor": { "type": "string", "default": "#000000" },
        "blockButtonBoxShadowOpacity": { "type": "number", "default": 1 },
        
        "hoverBlockButtonBoxShadowHOffset": { "type": "number", "default": 0 },
        "hoverBlockButtonBoxShadowVOffset": { "type": "number", "default": 0 },
        "hoverBlockButtonBoxShadowBlur": { "type": "number", "default": 0 },
        "hoverBlockButtonBoxShadowSpread": { "type": "number", "default": 0 },
        "hoverBlockButtonBoxShadowColor": { "type": "string", "default": null },
        "hoverBlockButtonBoxShadowOpacity": { "type": "number", "default": 1 }
    },
    "supports": {
        "html": false,
        "widgets": true
    },
    "category": "widgets",
    "parent": [ "smart-social-media-buttons/main" ],
    "editorScript": "file:./edit.js",
    "style": "file:../../style-index.css",
    "editorStyle": "file:../../index.css",
    "usesContext": [ "widget" ],
    "example": {
        "attributes": {
            "buttonIcon": {
                "iconName": "facebook",
                "prefix": "fab",
                "svg": ""
            },
            "buttonWidthDesktop": 44,
            "buttonMinHeightDesktop": 44,
            "buttonBackgroundColor": "#0866FF",
            "buttonIconColor": "#ffffff",
            "buttonIconSizeDesktop": 18
        }
    }
}