Source code for pystac.link

import os
from copy import copy
from html import escape
from typing import Any, Dict, Optional, TYPE_CHECKING, Union

import pystac
from pystac.html.jinja_env import get_jinja_env
from pystac.utils import make_absolute_href, make_relative_href, is_absolute_href

if TYPE_CHECKING:
    from pystac.stac_object import STACObject as STACObject_Type
    from pystac.item import Item as Item_Type
    from pystac.catalog import Catalog as Catalog_Type
    from pystac.collection import Collection as Collection_Type

    PathLike = os.PathLike[str]

else:
    PathLike = os.PathLike

HREF = Union[str, os.PathLike]

HIERARCHICAL_LINKS = [
    pystac.RelType.ROOT,
    pystac.RelType.CHILD,
    pystac.RelType.PARENT,
    pystac.RelType.COLLECTION,
    pystac.RelType.ITEM,
    pystac.RelType.ITEMS,
]