Coverage for /home/runner/work/viur-core/viur-core/viur/src/viur/core/bones/image.py: 92%
12 statements
« prev ^ index » next coverage.py v7.10.6, created at 2025-09-13 11:04 +0000
« prev ^ index » next coverage.py v7.10.6, created at 2025-09-13 11:04 +0000
1import typing as t
2from .. import i18n
3from .file import FileBone
4from .string import StringBone
5from ..skeleton.relskel import RelSkel
6from ..config import conf
9class ImageBoneRelSkel(RelSkel):
10 alt = StringBone(
11 descr=i18n.translate(
12 "viur.core.image.alt",
13 defaultText="Alternative description",
14 ),
15 searchable=True,
16 languages=conf.i18n.available_languages,
17 )
20class ImageBone(FileBone):
21 type = FileBone.type + ".image"
23 def __init__(
24 self,
25 *,
26 public: bool = True,
27 using: t.Optional[RelSkel] = ImageBoneRelSkel,
28 validMimeTypes: None | t.Iterable[str] = ["image/*"],
29 **kwargs,
30 ):
31 super().__init__(
32 public=public,
33 using=using,
34 validMimeTypes=validMimeTypes,
35 **kwargs,
36 )