def METHOD_NAME(
    self, mappings: JSON, prefix: AnyStr = "", result: Union[List, None] = None
) -> List:
    if result is None:
        result = []
    if "properties" in mappings:
        for p, m in mappings["properties"].items():
            self.METHOD_NAME(m, f"{prefix}{p}.", result)
    elif mappings.get("type") != "text":
        result.append(prefix[:-1])  # Remove the trailing dot, if any
    else:
        for f, v in mappings.get("fields", {}).items():
            self.METHOD_NAME(v, f"{prefix}{f}.", result)
    return result