Coverage for /var/srv/projects/api.amasfac.comuna18.com/tmp/venv/lib/python3.9/site-packages/openpyxl/worksheet/hyperlink.py: 60%
34 statements
« prev ^ index » next coverage.py v6.4.4, created at 2023-07-17 14:22 -0600
« prev ^ index » next coverage.py v6.4.4, created at 2023-07-17 14:22 -0600
1from openpyxl.descriptors.serialisable import Serialisable
2from openpyxl.descriptors import (
3 String,
4 Sequence,
5)
6from openpyxl.descriptors.excel import Relation
9class Hyperlink(Serialisable):
11 tagname = "hyperlink"
13 ref = String()
14 location = String(allow_none=True)
15 tooltip = String(allow_none=True)
16 display = String(allow_none=True)
17 id = Relation()
18 target = String(allow_none=True)
20 __attrs__ = ("ref", "location", "tooltip", "display", "id")
22 def __init__(self,
23 ref=None,
24 location=None,
25 tooltip=None,
26 display=None,
27 id=None,
28 target=None,
29 ):
30 self.ref = ref
31 self.location = location
32 self.tooltip = tooltip
33 self.display = display
34 self.id = id
35 self.target = target
38class HyperlinkList(Serialisable):
40 tagname = "hyperlinks"
42 hyperlink = Sequence(expected_type=Hyperlink)
44 def __init__(self, hyperlink=()):
45 self.hyperlink = hyperlink
48 def __bool__(self):
49 return bool(self.hyperlink)
52 def __len__(self):
53 return len(self.hyperlink)
56 def append(self, value):
57 values = self.hyperlink[:]
58 values.append(value)
59 if not value.id:
60 value.id = "rId{0}".format(len(values))
61 self.hyperlink = values