link.py 571 B

12345678910111213141516171819202122
  1. from typing import Union
  2. import justpy as jp
  3. from .element import Element
  4. from .page import Page
  5. class Link(Element):
  6. def __init__(self,
  7. text: str = '',
  8. target: Union[Page, str] = '#',
  9. ):
  10. """Link
  11. Create a link.
  12. :param text: link text
  13. :param target: link target (either a string or a page object)
  14. """
  15. href = target if isinstance(target, str) else target.route
  16. view = jp.A(text=text, href=href, classes='underline text-blue')
  17. super().__init__(view)