-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path__init__.py
64 lines (54 loc) · 1.94 KB
/
__init__.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
from typing import Literal
import pydantic
from rendercv.themes.common_options import (
EntryAreaMargins,
LaTeXDimension,
Margins,
ThemeOptions,
)
class EntryAreaMarginsForClassic(EntryAreaMargins):
"""This class is a data model for the entry area margins."""
education_degree_width: LaTeXDimension = pydantic.Field(
default="1 cm",
title="Date and Location Column Width",
description=(
"The width of the degree column in EducationEntry. The default value is" " 1 cm."
),
)
class MarginsForClassic(Margins):
"""This class is a data model for the margins."""
entry_area: EntryAreaMarginsForClassic = pydantic.Field(
default=EntryAreaMarginsForClassic(),
title="Entry Area Margins",
description="Entry area margins.",
)
class ClassickoThemeOptions(ThemeOptions):
"""This class is the data model of the theme options for the `classic` theme."""
theme: Literal["classicko"]
font: Literal[
"Latin Modern Serif",
"Latin Modern Sans Serif",
"Latin Modern Mono",
"Source Sans 3",
"Charter",
"Noto Sans KR",
] = pydantic.Field(
default="Source Sans 3",
title="Font",
description="The font family of the CV. The default value is Source Sans 3.",
)
show_timespan_in: list[str] = pydantic.Field(
default=[],
title="Show Time Span in These Sections",
description=(
"The time span will be shown in the date and location column in these"
" sections. The input should be a list of section titles as strings"
" (case-sensitive). The default value is [] (no section will show the time"
" span)."
),
)
margins: MarginsForClassic = pydantic.Field(
default=MarginsForClassic(),
title="Margins",
description="Page, section title, entry field, and highlights field margins.",
)