diff --git a/schema.json b/schema.json index d455b3e..72dcb01 100644 --- a/schema.json +++ b/schema.json @@ -97,7 +97,7 @@ "margins": { "allOf": [ { - "$ref": "#/$defs/Margins" + "$ref": "#/$defs/rendercv__themes__Margins" } ], "default": { @@ -422,6 +422,117 @@ "title": "EducationEntry", "type": "object" }, + "EngineeringresumesThemeOptions": { + "additionalProperties": false, + "description": "This class is the data model of the theme options for the engineeringresumes\ntheme.", + "properties": { + "theme": { + "const": "engineeringresumes", + "title": "Theme" + }, + "font_size": { + "default": "10pt", + "description": "The font size of the CV. The default value is 10pt.", + "enum": [ + "10pt", + "11pt", + "12pt" + ], + "title": "Font Size", + "type": "string" + }, + "page_size": { + "default": "letterpaper", + "description": "The page size of the CV. It can be a4paper or letterpaper. The default value is letterpaper.", + "enum": [ + "a4paper", + "letterpaper" + ], + "title": "Page Size", + "type": "string" + }, + "color": { + "default": "rgb(0,79,144)", + "description": "The primary color of the theme. \nThe color can be specified either with their [name](https://www.w3.org/TR/SVG11/types.html#ColorKeywords), hexadecimal value, RGB value, or HSL value. The default value is rgb(0,79,144).", + "examples": [ + "Black", + "7fffd4", + "rgb(0,79,144)", + "hsl(270, 60%, 70%)" + ], + "format": "color", + "title": "Primary Color", + "type": "string" + }, + "disable_page_numbering": { + "default": false, + "description": "If this option is set to true, then the page numbering will be disabled. The default value is false.", + "title": "Disable Page Numbering", + "type": "boolean" + }, + "page_numbering_style": { + "default": "NAME - Page PAGE_NUMBER of TOTAL_PAGES", + "description": "The style of the page numbering. The following placeholders can be used:\n- NAME: The name of the person\n- PAGE_NUMBER: The current page number\n- TOTAL_PAGES: The total number of pages\nThe default value is NAME - Page PAGE_NUMBER of TOTAL_PAGES.", + "title": "Page Numbering Style", + "type": "string" + }, + "show_last_updated_date": { + "default": true, + "description": "If this option is set to true, then the last updated date will be shown in the header. The default value is true.", + "title": "Show Last Updated Date", + "type": "boolean" + }, + "header_font_size": { + "default": "25 pt", + "description": "The font size of the header (the name of the person). The default value is 25 pt.", + "pattern": "\\d+\\.?\\d* *(cm|in|pt|mm|ex|em)", + "title": "Header Font Size", + "type": "string" + }, + "text_alignment": { + "default": "justified", + "description": "The alignment of the text. The default value is justified.", + "enum": [ + "left-aligned", + "justified", + "justified-with-no-hyphenation" + ], + "title": "Text Alignment", + "type": "string" + }, + "margins": { + "allOf": [ + { + "$ref": "#/$defs/rendercv__themes__engineeringresumes__Margins" + } + ], + "default": { + "page": { + "bottom": "2 cm", + "left": "2 cm", + "right": "2 cm", + "top": "2 cm" + }, + "section_title": { + "bottom": "0.2 cm", + "top": "0.3 cm" + }, + "header": { + "bottom": "0.3 cm", + "horizontal_between_connections": "0.5 cm", + "vertical_between_name_and_connections": "0.3 cm" + } + }, + "description": "Page, section title, entry field, and highlights field margins.", + "title": "Margins" + } + }, + "required": [ + "theme" + ], + "title": "EngineeringresumesThemeOptions", + "type": "object" + }, "EntryAreaMargins": { "description": "This class is a data model for the entry area margins.", "properties": { @@ -625,84 +736,6 @@ "type": "object", "additionalProperties": false }, - "Margins": { - "description": "This class is a data model for the margins.", - "properties": { - "page": { - "allOf": [ - { - "$ref": "#/$defs/PageMargins" - } - ], - "default": { - "top": "2 cm", - "bottom": "2 cm", - "left": "2 cm", - "right": "2 cm" - }, - "description": "Page margins.", - "title": "Page Margins" - }, - "section_title": { - "allOf": [ - { - "$ref": "#/$defs/SectionTitleMargins" - } - ], - "default": { - "top": "0.3 cm", - "bottom": "0.2 cm" - }, - "description": "Section title margins.", - "title": "Section Title Margins" - }, - "entry_area": { - "allOf": [ - { - "$ref": "#/$defs/EntryAreaMargins" - } - ], - "default": { - "left_and_right": "0.2 cm", - "vertical_between": "0.2 cm", - "date_and_location_width": "4.1 cm" - }, - "description": "Entry area margins.", - "title": "Entry Area Margins" - }, - "highlights_area": { - "allOf": [ - { - "$ref": "#/$defs/HighlightsAreaMargins" - } - ], - "default": { - "top": "0.10 cm", - "left": "0.4 cm", - "vertical_between_bullet_points": "0.10 cm" - }, - "description": "Highlights area margins.", - "title": "Highlights Area Margins" - }, - "header": { - "allOf": [ - { - "$ref": "#/$defs/HeaderMargins" - } - ], - "default": { - "vertical_between_name_and_connections": "0.3 cm", - "bottom": "0.3 cm", - "horizontal_between_connections": "0.5 cm" - }, - "description": "Header margins.", - "title": "Header Margins" - } - }, - "title": "Margins", - "type": "object", - "additionalProperties": false - }, "ModerncvThemeOptions": { "additionalProperties": false, "description": "This class is the data model of the theme options for the moderncv theme.", @@ -1127,7 +1160,7 @@ "margins": { "allOf": [ { - "$ref": "#/$defs/Margins" + "$ref": "#/$defs/rendercv__themes__Margins" } ], "default": { @@ -1218,6 +1251,134 @@ ], "title": "SocialNetwork", "type": "object" + }, + "rendercv__themes__Margins": { + "description": "This class is a data model for the margins.", + "properties": { + "page": { + "allOf": [ + { + "$ref": "#/$defs/PageMargins" + } + ], + "default": { + "top": "2 cm", + "bottom": "2 cm", + "left": "2 cm", + "right": "2 cm" + }, + "description": "Page margins.", + "title": "Page Margins" + }, + "section_title": { + "allOf": [ + { + "$ref": "#/$defs/SectionTitleMargins" + } + ], + "default": { + "top": "0.3 cm", + "bottom": "0.2 cm" + }, + "description": "Section title margins.", + "title": "Section Title Margins" + }, + "entry_area": { + "allOf": [ + { + "$ref": "#/$defs/EntryAreaMargins" + } + ], + "default": { + "left_and_right": "0.2 cm", + "vertical_between": "0.2 cm", + "date_and_location_width": "4.1 cm" + }, + "description": "Entry area margins.", + "title": "Entry Area Margins" + }, + "highlights_area": { + "allOf": [ + { + "$ref": "#/$defs/HighlightsAreaMargins" + } + ], + "default": { + "top": "0.10 cm", + "left": "0.4 cm", + "vertical_between_bullet_points": "0.10 cm" + }, + "description": "Highlights area margins.", + "title": "Highlights Area Margins" + }, + "header": { + "allOf": [ + { + "$ref": "#/$defs/HeaderMargins" + } + ], + "default": { + "vertical_between_name_and_connections": "0.3 cm", + "bottom": "0.3 cm", + "horizontal_between_connections": "0.5 cm" + }, + "description": "Header margins.", + "title": "Header Margins" + } + }, + "title": "Margins", + "type": "object", + "additionalProperties": false + }, + "rendercv__themes__engineeringresumes__Margins": { + "description": "This class is a data model for the margins.", + "properties": { + "page": { + "allOf": [ + { + "$ref": "#/$defs/PageMargins" + } + ], + "default": { + "top": "2 cm", + "bottom": "2 cm", + "left": "2 cm", + "right": "2 cm" + }, + "description": "Page margins.", + "title": "Page Margins" + }, + "section_title": { + "allOf": [ + { + "$ref": "#/$defs/SectionTitleMargins" + } + ], + "default": { + "top": "0.3 cm", + "bottom": "0.2 cm" + }, + "description": "Section title margins.", + "title": "Section Title Margins" + }, + "header": { + "allOf": [ + { + "$ref": "#/$defs/HeaderMargins" + } + ], + "default": { + "vertical_between_name_and_connections": "0.3 cm", + "bottom": "0.3 cm", + "horizontal_between_connections": "0.5 cm" + }, + "description": "Header margins.", + "title": "Header Margins" + } + }, + "title": "Margins", + "type": "object", + "additionalProperties": false } }, "additionalProperties": false, @@ -1276,6 +1437,7 @@ "discriminator": { "mapping": { "classic": "#/$defs/ClassicThemeOptions", + "engineeringresumes": "#/$defs/EngineeringresumesThemeOptions", "moderncv": "#/$defs/ModerncvThemeOptions", "sb2nov": "#/$defs/Sb2novThemeOptions" }, @@ -1290,6 +1452,9 @@ }, { "$ref": "#/$defs/Sb2novThemeOptions" + }, + { + "$ref": "#/$defs/EngineeringresumesThemeOptions" } ], "title": "Design"