aboutsummaryrefslogtreecommitdiff
path: root/.venv/lib/python3.12/site-packages/docx/oxml/text/hyperlink.py
diff options
context:
space:
mode:
Diffstat (limited to '.venv/lib/python3.12/site-packages/docx/oxml/text/hyperlink.py')
-rw-r--r--.venv/lib/python3.12/site-packages/docx/oxml/text/hyperlink.py45
1 files changed, 45 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/docx/oxml/text/hyperlink.py b/.venv/lib/python3.12/site-packages/docx/oxml/text/hyperlink.py
new file mode 100644
index 00000000..38a33ff1
--- /dev/null
+++ b/.venv/lib/python3.12/site-packages/docx/oxml/text/hyperlink.py
@@ -0,0 +1,45 @@
+"""Custom element classes related to hyperlinks (CT_Hyperlink)."""
+
+from __future__ import annotations
+
+from typing import TYPE_CHECKING, List
+
+from docx.oxml.simpletypes import ST_OnOff, ST_String, XsdString
+from docx.oxml.text.run import CT_R
+from docx.oxml.xmlchemy import (
+ BaseOxmlElement,
+ OptionalAttribute,
+ ZeroOrMore,
+)
+
+if TYPE_CHECKING:
+ from docx.oxml.text.pagebreak import CT_LastRenderedPageBreak
+
+
+class CT_Hyperlink(BaseOxmlElement):
+ """`<w:hyperlink>` element, containing the text and address for a hyperlink."""
+
+ r_lst: List[CT_R]
+
+ rId: str | None = OptionalAttribute("r:id", XsdString) # pyright: ignore[reportAssignmentType]
+ anchor: str | None = OptionalAttribute( # pyright: ignore[reportAssignmentType]
+ "w:anchor", ST_String
+ )
+ history: bool = OptionalAttribute( # pyright: ignore[reportAssignmentType]
+ "w:history", ST_OnOff, default=True
+ )
+
+ r = ZeroOrMore("w:r")
+
+ @property
+ def lastRenderedPageBreaks(self) -> List[CT_LastRenderedPageBreak]:
+ """All `w:lastRenderedPageBreak` descendants of this hyperlink."""
+ return self.xpath("./w:r/w:lastRenderedPageBreak")
+
+ @property
+ def text(self) -> str: # pyright: ignore[reportIncompatibleMethodOverride]
+ """The textual content of this hyperlink.
+
+ `CT_Hyperlink` stores the hyperlink-text as one or more `w:r` children.
+ """
+ return "".join(r.text for r in self.xpath("w:r"))