{
  "_comment": "!!! THIS IS AN AUTOMATICALLY GENERATED FILE - DO NOT EDIT !!!",
  "name": "squad-modules/text-highlighter",
  "d4Shortcode": "disq_text_highlighter",
  "title": "Text Highlighter",
  "titles": "Text Highlighters",
  "moduleIcon": "squad-modules/text-highlighter",
  "moduleClassName": "disq_text_highlighter",
  "category": "module",
  "folder": "squad-modules",
  "attributes": {
    "module": {
      "type": "object",
      "selector": "{{selector}}",
      "settings": {
        "meta": {
          "adminLabel": {}
        },
        "advanced": {
          "htmlAttributes": {}
        },
        "decoration": {
          "animation": {},
          "background": {},
          "border": {},
          "boxShadow": {},
          "conditions": {},
          "disabledOn": {},
          "filters": {},
          "font": {},
          "overflow": {},
          "position": {},
          "scroll": {},
          "sizing": {},
          "spacing": {},
          "sticky": {},
          "transform": {},
          "transition": {},
          "zIndex": {}
        }
      },
      "default": {
        "meta": {
          "adminLabel": {
            "desktop": {
              "value": "Text Highlighter"
            }
          }
        }
      }
    },
    "highlightSettings": {
      "type": "object",
      "selector": "{{selector}} .squad-highlight",
      "settings": {
        "innerContent": {
          "groupType": "group-items",
          "items": {
            "prefixText": {
              "groupSlug": "contentText",
              "attrName": "highlightSettings.innerContent",
              "subName": "prefixText",
              "label": "Prefix Text",
              "description": "Text displayed before the highlighted word.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 10,
              "component": {
                "type": "field",
                "name": "divi/text"
              }
            },
            "highlightedText": {
              "groupSlug": "contentText",
              "attrName": "highlightSettings.innerContent",
              "subName": "highlightedText",
              "label": "Highlighted Text",
              "description": "The word(s) that receive the SVG annotation. Leave empty to show prefix + suffix only.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 20,
              "component": {
                "type": "field",
                "name": "divi/text"
              }
            },
            "suffixText": {
              "groupSlug": "contentText",
              "attrName": "highlightSettings.innerContent",
              "subName": "suffixText",
              "label": "Suffix Text",
              "description": "Text displayed after the highlighted word.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 30,
              "component": {
                "type": "field",
                "name": "divi/text"
              }
            },
            "headingTag": {
              "groupSlug": "contentText",
              "attrName": "highlightSettings.innerContent",
              "subName": "headingTag",
              "label": "Heading Tag",
              "description": "HTML tag wrapping the full text line.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 40,
              "component": {
                "type": "field",
                "name": "divi/select",
                "props": {
                  "options": {
                    "h1": {
                      "label": "H1"
                    },
                    "h2": {
                      "label": "H2"
                    },
                    "h3": {
                      "label": "H3"
                    },
                    "h4": {
                      "label": "H4"
                    },
                    "h5": {
                      "label": "H5"
                    },
                    "h6": {
                      "label": "H6"
                    },
                    "p": {
                      "label": "Paragraph"
                    },
                    "span": {
                      "label": "Span"
                    },
                    "div": {
                      "label": "Div"
                    }
                  }
                }
              }
            },
            "highlightType": {
              "groupSlug": "contentHighlight",
              "attrName": "highlightSettings.innerContent",
              "subName": "highlightType",
              "label": "Highlight Shape",
              "description": "The hand-drawn SVG annotation shape.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 10,
              "component": {
                "type": "field",
                "name": "divi/select",
                "props": {
                  "options": {
                    "underline": {
                      "label": "Underline"
                    },
                    "double-underline": {
                      "label": "Double Underline"
                    },
                    "circle": {
                      "label": "Circle"
                    },
                    "box": {
                      "label": "Box"
                    },
                    "strikethrough": {
                      "label": "Strikethrough"
                    },
                    "curly-underline": {
                      "label": "Curly Underline"
                    },
                    "cross-off": {
                      "label": "Cross Off"
                    },
                    "bracket": {
                      "label": "Bracket"
                    }
                  }
                }
              }
            },
            "animate": {
              "groupSlug": "contentAnimation",
              "attrName": "highlightSettings.innerContent",
              "subName": "animate",
              "label": "Animate on Scroll",
              "description": "Draw the SVG stroke when the element scrolls into view.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 10,
              "component": {
                "type": "field",
                "name": "divi/toggle"
              }
            },
            "animDuration": {
              "groupSlug": "contentAnimation",
              "attrName": "highlightSettings.innerContent",
              "subName": "animDuration",
              "label": "Animation Duration (ms)",
              "description": "How long the stroke draw takes in milliseconds.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 20,
              "component": {
                "type": "field",
                "name": "divi/range",
                "props": {
                  "min": 100,
                  "max": 5000,
                  "step": 100,
                  "allowedUnits": [],
                  "defaultUnit": ""
                }
              }
            },
            "animDelay": {
              "groupSlug": "contentAnimation",
              "attrName": "highlightSettings.innerContent",
              "subName": "animDelay",
              "label": "Animation Delay (ms)",
              "description": "Delay before the stroke starts drawing.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 30,
              "component": {
                "type": "field",
                "name": "divi/range",
                "props": {
                  "min": 0,
                  "max": 3000,
                  "step": 100,
                  "allowedUnits": [],
                  "defaultUnit": ""
                }
              }
            },
            "animLoop": {
              "groupSlug": "contentAnimation",
              "attrName": "highlightSettings.innerContent",
              "subName": "animLoop",
              "label": "Loop Animation",
              "description": "Continuously repeat the draw animation.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 40,
              "component": {
                "type": "field",
                "name": "divi/toggle"
              }
            },
            "useGradient": {
              "groupSlug": "contentGradient",
              "attrName": "highlightSettings.innerContent",
              "subName": "useGradient",
              "label": "Use Gradient Stroke",
              "description": "Apply a linear gradient to the SVG stroke.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 10,
              "component": {
                "type": "field",
                "name": "divi/toggle"
              }
            },
            "gradientStart": {
              "groupSlug": "contentGradient",
              "attrName": "highlightSettings.innerContent",
              "subName": "gradientStart",
              "label": "Gradient Start Color",
              "description": "Start color of the stroke gradient.",
              "features": {
                "sticky": false
              },
              "render": true,
              "priority": 20,
              "component": {
                "type": "field",
                "name": "divi/color-picker"
              }
            },
            "gradientEnd": {
              "groupSlug": "contentGradient",
              "attrName": "highlightSettings.innerContent",
              "subName": "gradientEnd",
              "label": "Gradient End Color",
              "description": "End color of the stroke gradient.",
              "features": {
                "sticky": false
              },
              "render": true,
              "priority": 30,
              "component": {
                "type": "field",
                "name": "divi/color-picker"
              }
            },
            "gradientAngle": {
              "groupSlug": "contentGradient",
              "attrName": "highlightSettings.innerContent",
              "subName": "gradientAngle",
              "label": "Gradient Angle (deg)",
              "description": "Rotation of the gradient in degrees.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 40,
              "component": {
                "type": "field",
                "name": "divi/range",
                "props": {
                  "min": 0,
                  "max": 360,
                  "step": 1,
                  "allowedUnits": [],
                  "defaultUnit": ""
                }
              }
            }
          }
        }
      },
      "default": {
        "innerContent": {
          "desktop": {
            "value": {
              "prefixText": "",
              "highlightedText": "highlighted",
              "suffixText": "",
              "headingTag": "h2",
              "highlightType": "underline",
              "animate": "on",
              "animDuration": "1200",
              "animDelay": "0",
              "animLoop": "off",
              "useGradient": "off",
              "gradientStart": "#6a33d7",
              "gradientEnd": "#d433c4",
              "gradientAngle": "90"
            }
          }
        }
      }
    },
    "highlightStyle": {
      "type": "object",
      "selector": "{{selector}} .squad-highlight__svg",
      "settings": {
        "innerContent": {
          "groupType": "group-items",
          "items": {
            "highlightColor": {
              "groupSlug": "designHighlight",
              "attrName": "highlightStyle.innerContent",
              "subName": "highlightColor",
              "label": "Highlight Color",
              "description": "Solid stroke color (used when gradient is off).",
              "features": {
                "sticky": false
              },
              "render": true,
              "priority": 10,
              "component": {
                "type": "field",
                "name": "divi/color-picker"
              }
            },
            "strokeWidth": {
              "groupSlug": "designHighlight",
              "attrName": "highlightStyle.innerContent",
              "subName": "strokeWidth",
              "label": "Stroke Width",
              "description": "Thickness of the SVG annotation stroke.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 20,
              "component": {
                "type": "field",
                "name": "divi/range",
                "props": {
                  "min": 1,
                  "max": 20,
                  "step": 1,
                  "allowedUnits": [],
                  "defaultUnit": ""
                }
              }
            },
            "svgPositionY": {
              "groupSlug": "designHighlight",
              "attrName": "highlightStyle.innerContent",
              "subName": "svgPositionY",
              "label": "SVG Vertical Offset (px)",
              "description": "Nudge the SVG annotation up or down.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 30,
              "component": {
                "type": "field",
                "name": "divi/range",
                "props": {
                  "min": -20,
                  "max": 20,
                  "step": 1,
                  "allowedUnits": [],
                  "defaultUnit": ""
                }
              }
            },
            "contentAlign": {
              "groupSlug": "designHighlight",
              "attrName": "highlightStyle.innerContent",
              "subName": "contentAlign",
              "label": "Content Alignment",
              "description": "Horizontal alignment of the text line.",
              "features": {
                "responsive": false,
                "hover": false,
                "sticky": false
              },
              "render": true,
              "priority": 40,
              "component": {
                "type": "field",
                "name": "divi/select",
                "props": {
                  "options": {
                    "left": {
                      "label": "Left"
                    },
                    "center": {
                      "label": "Center"
                    },
                    "right": {
                      "label": "Right"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "default": {
        "innerContent": {
          "desktop": {
            "value": {
              "highlightColor": "#6a33d7",
              "strokeWidth": "3",
              "svgPositionY": "0",
              "contentAlign": "left"
            }
          }
        }
      }
    }
  },
  "settings": {
    "groups": {
      "contentText": {
        "panel": "content",
        "priority": 10,
        "groupName": "highlightSettings",
        "multiElements": true,
        "component": {
          "name": "divi/composite",
          "props": {
            "groupLabel": "Text"
          }
        }
      },
      "contentHighlight": {
        "panel": "content",
        "priority": 20,
        "groupName": "highlightSettings",
        "multiElements": true,
        "component": {
          "name": "divi/composite",
          "props": {
            "groupLabel": "Highlight"
          }
        }
      },
      "contentAnimation": {
        "panel": "content",
        "priority": 30,
        "groupName": "highlightSettings",
        "multiElements": true,
        "component": {
          "name": "divi/composite",
          "props": {
            "groupLabel": "Animation"
          }
        }
      },
      "contentGradient": {
        "panel": "content",
        "priority": 40,
        "groupName": "highlightSettings",
        "multiElements": true,
        "component": {
          "name": "divi/composite",
          "props": {
            "groupLabel": "Gradient Stroke"
          }
        }
      },
      "designHighlight": {
        "panel": "design",
        "priority": 10,
        "groupName": "highlightStyle",
        "multiElements": true,
        "component": {
          "name": "divi/composite",
          "props": {
            "groupLabel": "Highlight Style"
          }
        }
      }
    }
  }
}
