{
  "name": "divitorque/fancy-text",
  "moduleClassName": "dtq_fancy_text",
  "moduleOrderClassName": "dtq_fancy_text",
  "title": "Fancy Text",
  "titles": "Fancy Texts",
  "moduleIcon": "divitorque/fancy-text",
  "category": "module",
  "attributes": {
    "module": {
      "type": "object",
      "selector": "{{selector}}",
      "default": {
        "advanced": {
          "effect": {
            "desktop": {
              "value": "highlight"
            }
          },
          "highlightStyle": {
            "desktop": {
              "value": "marker"
            }
          },
          "rotateAnimation": {
            "desktop": {
              "value": "fade-up"
            }
          },
          "tag": {
            "desktop": {
              "value": "h2"
            }
          },
          "alignment": {
            "desktop": {
              "value": "left"
            }
          },
          "gradientAngle": {
            "desktop": {
              "value": "90deg"
            }
          },
          "rotateSpeed": {
            "desktop": {
              "value": "2000"
            }
          }
        }
      },
      "settings": {
        "meta": {
          "adminLabel": {}
        },
        "advanced": {
          "htmlAttributes": {},
          "beforeText": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "contentMain",
              "attrName": "module.advanced.beforeText",
              "label": "Before Text",
              "description": "Static text shown before the fancy text.",
              "priority": 10,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false,
                "dynamicContent": {
                  "type": "text"
                }
              },
              "component": {
                "type": "field",
                "name": "divi/text"
              }
            }
          },
          "fancyText": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "contentMain",
              "attrName": "module.advanced.fancyText",
              "label": "Fancy Text",
              "description": "The highlighted / gradient text.",
              "priority": 20,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false,
                "dynamicContent": {
                  "type": "text"
                }
              },
              "component": {
                "type": "field",
                "name": "divi/text"
              }
            }
          },
          "rotateStrings": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "contentMain",
              "attrName": "module.advanced.rotateStrings",
              "label": "Rotating Words",
              "description": "One word/phrase per line — they cycle in place.",
              "priority": 25,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false
              },
              "component": {
                "type": "field",
                "name": "divi/textarea"
              }
            }
          },
          "afterText": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "contentMain",
              "attrName": "module.advanced.afterText",
              "label": "After Text",
              "description": "Static text shown after the fancy text.",
              "priority": 30,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false,
                "dynamicContent": {
                  "type": "text"
                }
              },
              "component": {
                "type": "field",
                "name": "divi/text"
              }
            }
          },
          "effect": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "contentMain",
              "attrName": "module.advanced.effect",
              "label": "Fancy Effect",
              "description": "How the fancy text stands out.",
              "priority": 40,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false
              },
              "component": {
                "type": "field",
                "name": "divi/select",
                "props": {
                  "options": {
                    "highlight": {
                      "label": "Highlight Shape"
                    },
                    "gradient": {
                      "label": "Gradient Text"
                    },
                    "rotate": {
                      "label": "Rotating Words"
                    }
                  }
                }
              }
            }
          },
          "tag": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "contentMain",
              "attrName": "module.advanced.tag",
              "label": "HTML Tag",
              "description": "Semantic tag for the text.",
              "priority": 50,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false
              },
              "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"
                    }
                  }
                }
              }
            }
          },
          "rotateAnimation": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "contentMain",
              "attrName": "module.advanced.rotateAnimation",
              "label": "Rotate Animation",
              "description": "How each rotating word animates in.",
              "priority": 45,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false
              },
              "component": {
                "type": "field",
                "name": "divi/select",
                "props": {
                  "options": {
                    "typing": {
                      "label": "Typing"
                    },
                    "fade": {
                      "label": "Fade"
                    },
                    "fade-up": {
                      "label": "Fade Up"
                    },
                    "zoom": {
                      "label": "Zoom"
                    },
                    "swing": {
                      "label": "Swing"
                    }
                  }
                }
              }
            }
          },
          "rotateSpeed": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "contentMain",
              "attrName": "module.advanced.rotateSpeed",
              "label": "Rotate Speed",
              "description": "Milliseconds each word shows before changing.",
              "priority": 60,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false
              },
              "component": {
                "type": "field",
                "name": "divi/range",
                "props": {
                  "min": 500,
                  "max": 8000,
                  "step": 250,
                  "defaultUnit": "ms",
                  "allowedUnits": [
                    "ms"
                  ]
                }
              }
            }
          },
          "alignment": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "designText",
              "attrName": "module.advanced.alignment",
              "label": "Text Alignment",
              "description": "Horizontal alignment.",
              "priority": 5,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": true,
                "hover": false
              },
              "component": {
                "type": "field",
                "name": "divi/select",
                "props": {
                  "options": {
                    "left": {
                      "label": "Left"
                    },
                    "center": {
                      "label": "Center"
                    },
                    "right": {
                      "label": "Right"
                    }
                  }
                }
              }
            }
          },
          "fancyColor": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "designFancy",
              "attrName": "module.advanced.fancyColor",
              "label": "Fancy Text Color",
              "description": "Color of the fancy text (ignored for gradient).",
              "priority": 10,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false
              },
              "component": {
                "type": "field",
                "name": "divi/color-picker",
                "props": {
                  "isAlpha": true
                }
              }
            }
          },
          "highlightStyle": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "designFancy",
              "attrName": "module.advanced.highlightStyle",
              "label": "Highlight Shape",
              "description": "Shape drawn on the fancy text (Highlight effect).",
              "priority": 20,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false
              },
              "component": {
                "type": "field",
                "name": "divi/select",
                "props": {
                  "options": {
                    "marker": {
                      "label": "Marker"
                    },
                    "underline": {
                      "label": "Underline"
                    },
                    "thick": {
                      "label": "Thick Underline"
                    },
                    "box": {
                      "label": "Box"
                    },
                    "circle": {
                      "label": "Circle"
                    },
                    "strike": {
                      "label": "Strikethrough"
                    }
                  }
                }
              }
            }
          },
          "highlightColor": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "designFancy",
              "attrName": "module.advanced.highlightColor",
              "label": "Highlight Color",
              "description": "Color of the highlight shape.",
              "priority": 30,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false
              },
              "component": {
                "type": "field",
                "name": "divi/color-picker",
                "props": {
                  "isAlpha": true
                }
              }
            }
          },
          "gradientStart": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "designFancy",
              "attrName": "module.advanced.gradientStart",
              "label": "Gradient Start",
              "description": "First gradient color (Gradient effect).",
              "priority": 40,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false
              },
              "component": {
                "type": "field",
                "name": "divi/color-picker"
              }
            }
          },
          "gradientEnd": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "designFancy",
              "attrName": "module.advanced.gradientEnd",
              "label": "Gradient End",
              "description": "Second gradient color (Gradient effect).",
              "priority": 50,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false
              },
              "component": {
                "type": "field",
                "name": "divi/color-picker"
              }
            }
          },
          "gradientAngle": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "designFancy",
              "attrName": "module.advanced.gradientAngle",
              "label": "Gradient Angle",
              "description": "Direction of the gradient.",
              "priority": 60,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false
              },
              "component": {
                "type": "field",
                "name": "divi/range",
                "props": {
                  "min": 0,
                  "max": 360,
                  "step": 5,
                  "defaultUnit": "deg",
                  "allowedUnits": [
                    "deg"
                  ]
                }
              }
            }
          },
          "cursorColor": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "designFancy",
              "attrName": "module.advanced.cursorColor",
              "label": "Typing Cursor Color",
              "description": "Color of the blinking cursor (Typing animation).",
              "priority": 70,
              "render": true,
              "features": {
                "sticky": false,
                "responsive": false,
                "hover": false
              },
              "component": {
                "type": "field",
                "name": "divi/color-picker",
                "props": {
                  "isAlpha": true
                }
              }
            }
          }
        },
        "decoration": {
          "animation": {},
          "background": {},
          "border": {},
          "boxShadow": {},
          "filters": {},
          "overflow": {},
          "position": {},
          "scroll": {},
          "spacing": {},
          "sizing": {},
          "sticky": {},
          "transform": {},
          "transition": {},
          "zIndex": {},
          "disabledOn": {}
        }
      }
    },
    "text": {
      "type": "object",
      "selector": "{{selector}} .dtq-fancy",
      "default": {
        "decoration": {
          "font": {
            "font": {
              "desktop": {
                "value": {
                  "size": "40px",
                  "weight": "700",
                  "lineHeight": "1.3em"
                }
              }
            }
          }
        }
      },
      "settings": {
        "decoration": {
          "font": {
            "groupType": "group-item",
            "item": {
              "groupSlug": "designText",
              "priority": 10,
              "render": true,
              "component": {
                "name": "divi/font",
                "type": "group",
                "props": {
                  "grouped": false,
                  "fieldLabel": "Text",
                  "fields": {
                    "headingLevel": {
                      "render": false
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "customCssFields": {
    "fancy": {
      "subName": "fancy",
      "selectorSuffix": " .dtq-fancy__highlight"
    }
  },
  "settings": {
    "content": "auto",
    "design": "auto",
    "advanced": "auto",
    "groups": {
      "contentMain": {
        "panel": "content",
        "priority": 10,
        "groupName": "contentMain",
        "component": {
          "name": "divi/composite",
          "props": {
            "groupLabel": "Content"
          }
        }
      },
      "designText": {
        "panel": "design",
        "priority": 10,
        "groupName": "designText",
        "multiElements": true,
        "component": {
          "name": "divi/composite",
          "props": {
            "groupLabel": "Text",
            "clipboardCategory": "style",
            "presetGroup": "divi/font"
          }
        }
      },
      "designFancy": {
        "panel": "design",
        "priority": 20,
        "groupName": "designFancy",
        "component": {
          "name": "divi/composite",
          "props": {
            "groupLabel": "Fancy Text"
          }
        }
      }
    }
  }
}