added 3rd party packages, elog, bigtree
This commit is contained in:
165
python310/packages/bigtree/utils/constants.py
Normal file
165
python310/packages/bigtree/utils/constants.py
Normal file
@@ -0,0 +1,165 @@
|
||||
from enum import Enum, auto
|
||||
from typing import Dict, List, Tuple
|
||||
|
||||
|
||||
class ExportConstants:
|
||||
DOWN_RIGHT = "\u250c"
|
||||
VERTICAL_RIGHT = "\u251c"
|
||||
VERTICAL_LEFT = "\u2524"
|
||||
VERTICAL_HORIZONTAL = "\u253c"
|
||||
UP_RIGHT = "\u2514"
|
||||
VERTICAL = "\u2502"
|
||||
HORIZONTAL = "\u2500"
|
||||
|
||||
DOWN_RIGHT_ROUNDED = "\u256D"
|
||||
UP_RIGHT_ROUNDED = "\u2570"
|
||||
|
||||
DOWN_RIGHT_BOLD = "\u250F"
|
||||
VERTICAL_RIGHT_BOLD = "\u2523"
|
||||
VERTICAL_LEFT_BOLD = "\u252B"
|
||||
VERTICAL_HORIZONTAL_BOLD = "\u254B"
|
||||
UP_RIGHT_BOLD = "\u2517"
|
||||
VERTICAL_BOLD = "\u2503"
|
||||
HORIZONTAL_BOLD = "\u2501"
|
||||
|
||||
DOWN_RIGHT_DOUBLE = "\u2554"
|
||||
VERTICAL_RIGHT_DOUBLE = "\u2560"
|
||||
VERTICAL_LEFT_DOUBLE = "\u2563"
|
||||
VERTICAL_HORIZONTAL_DOUBLE = "\u256C"
|
||||
UP_RIGHT_DOUBLE = "\u255a"
|
||||
VERTICAL_DOUBLE = "\u2551"
|
||||
HORIZONTAL_DOUBLE = "\u2550"
|
||||
|
||||
PRINT_STYLES: Dict[str, Tuple[str, str, str]] = {
|
||||
"ansi": ("| ", "|-- ", "`-- "),
|
||||
"ascii": ("| ", "|-- ", "+-- "),
|
||||
"const": (
|
||||
f"{VERTICAL} ",
|
||||
f"{VERTICAL_RIGHT}{HORIZONTAL}{HORIZONTAL} ",
|
||||
f"{UP_RIGHT}{HORIZONTAL}{HORIZONTAL} ",
|
||||
),
|
||||
"const_bold": (
|
||||
f"{VERTICAL_BOLD} ",
|
||||
f"{VERTICAL_RIGHT_BOLD}{HORIZONTAL_BOLD}{HORIZONTAL_BOLD} ",
|
||||
f"{UP_RIGHT_BOLD}{HORIZONTAL_BOLD}{HORIZONTAL_BOLD} ",
|
||||
),
|
||||
"rounded": (
|
||||
f"{VERTICAL} ",
|
||||
f"{VERTICAL_RIGHT}{HORIZONTAL}{HORIZONTAL} ",
|
||||
f"{UP_RIGHT_ROUNDED}{HORIZONTAL}{HORIZONTAL} ",
|
||||
),
|
||||
"double": (
|
||||
f"{VERTICAL_DOUBLE} ",
|
||||
f"{VERTICAL_RIGHT_DOUBLE}{HORIZONTAL_DOUBLE}{HORIZONTAL_DOUBLE} ",
|
||||
f"{UP_RIGHT_DOUBLE}{HORIZONTAL_DOUBLE}{HORIZONTAL_DOUBLE} ",
|
||||
),
|
||||
}
|
||||
|
||||
HPRINT_STYLES: Dict[str, Tuple[str, str, str, str, str, str, str]] = {
|
||||
"ansi": ("/", "+", "+", "+", "\\", "|", "-"),
|
||||
"ascii": ("+", "+", "+", "+", "+", "|", "-"),
|
||||
"const": (
|
||||
DOWN_RIGHT,
|
||||
VERTICAL_RIGHT,
|
||||
VERTICAL_LEFT,
|
||||
VERTICAL_HORIZONTAL,
|
||||
UP_RIGHT,
|
||||
VERTICAL,
|
||||
HORIZONTAL,
|
||||
),
|
||||
"const_bold": (
|
||||
DOWN_RIGHT_BOLD,
|
||||
VERTICAL_RIGHT_BOLD,
|
||||
VERTICAL_LEFT_BOLD,
|
||||
VERTICAL_HORIZONTAL_BOLD,
|
||||
UP_RIGHT_BOLD,
|
||||
VERTICAL_BOLD,
|
||||
HORIZONTAL_BOLD,
|
||||
),
|
||||
"rounded": (
|
||||
DOWN_RIGHT_ROUNDED,
|
||||
VERTICAL_RIGHT,
|
||||
VERTICAL_LEFT,
|
||||
VERTICAL_HORIZONTAL,
|
||||
UP_RIGHT_ROUNDED,
|
||||
VERTICAL,
|
||||
HORIZONTAL,
|
||||
),
|
||||
"double": (
|
||||
DOWN_RIGHT_DOUBLE,
|
||||
VERTICAL_RIGHT_DOUBLE,
|
||||
VERTICAL_LEFT_DOUBLE,
|
||||
VERTICAL_HORIZONTAL_DOUBLE,
|
||||
UP_RIGHT_DOUBLE,
|
||||
VERTICAL_DOUBLE,
|
||||
HORIZONTAL_DOUBLE,
|
||||
),
|
||||
}
|
||||
|
||||
|
||||
class MermaidConstants:
|
||||
RANK_DIR: List[str] = ["TB", "BT", "LR", "RL"]
|
||||
LINE_SHAPES: List[str] = [
|
||||
"basis",
|
||||
"bumpX",
|
||||
"bumpY",
|
||||
"cardinal",
|
||||
"catmullRom",
|
||||
"linear",
|
||||
"monotoneX",
|
||||
"monotoneY",
|
||||
"natural",
|
||||
"step",
|
||||
"stepAfter",
|
||||
"stepBefore",
|
||||
]
|
||||
NODE_SHAPES: Dict[str, str] = {
|
||||
"rounded_edge": """("{label}")""",
|
||||
"stadium": """(["{label}"])""",
|
||||
"subroutine": """[["{label}"]]""",
|
||||
"cylindrical": """[("{label}")]""",
|
||||
"circle": """(("{label}"))""",
|
||||
"asymmetric": """>"{label}"]""",
|
||||
"rhombus": """{{"{label}"}}""",
|
||||
"hexagon": """{{{{"{label}"}}}}""",
|
||||
"parallelogram": """[/"{label}"/]""",
|
||||
"parallelogram_alt": """[\\"{label}"\\]""",
|
||||
"trapezoid": """[/"{label}"\\]""",
|
||||
"trapezoid_alt": """[\\"{label}"/]""",
|
||||
"double_circle": """((("{label}")))""",
|
||||
}
|
||||
EDGE_ARROWS: Dict[str, str] = {
|
||||
"normal": "-->",
|
||||
"bold": "==>",
|
||||
"dotted": "-.->",
|
||||
"open": "---",
|
||||
"bold_open": "===",
|
||||
"dotted_open": "-.-",
|
||||
"invisible": "~~~",
|
||||
"circle": "--o",
|
||||
"cross": "--x",
|
||||
"double_normal": "<-->",
|
||||
"double_circle": "o--o",
|
||||
"double_cross": "x--x",
|
||||
}
|
||||
|
||||
|
||||
class NewickState(Enum):
|
||||
PARSE_STRING = auto()
|
||||
PARSE_ATTRIBUTE_NAME = auto()
|
||||
PARSE_ATTRIBUTE_VALUE = auto()
|
||||
|
||||
|
||||
class NewickCharacter(str, Enum):
|
||||
OPEN_BRACKET = "("
|
||||
CLOSE_BRACKET = ")"
|
||||
ATTR_START = "["
|
||||
ATTR_END = "]"
|
||||
ATTR_KEY_VALUE = "="
|
||||
ATTR_QUOTE = "'"
|
||||
SEP = ":"
|
||||
NODE_SEP = ","
|
||||
|
||||
@classmethod
|
||||
def values(cls) -> List[str]:
|
||||
return [c.value for c in cls]
|
||||
Reference in New Issue
Block a user