@pathfolio/types 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app.d.ts +26 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +45 -0
- package/dist/app.js.map +1 -0
- package/dist/auth.d.ts +59 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +2 -0
- package/dist/auth.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +13 -0
- package/dist/index.js.map +1 -0
- package/dist/pdf.d.ts +75 -0
- package/dist/pdf.d.ts.map +1 -0
- package/dist/pdf.js +39 -0
- package/dist/pdf.js.map +1 -0
- package/dist/profile.d.ts +33 -0
- package/dist/profile.d.ts.map +1 -0
- package/dist/profile.js +16 -0
- package/dist/profile.js.map +1 -0
- package/dist/resume/constants.d.ts +56 -0
- package/dist/resume/constants.d.ts.map +1 -0
- package/dist/resume/constants.js +530 -0
- package/dist/resume/constants.js.map +1 -0
- package/dist/resume/content.d.ts +272 -0
- package/dist/resume/content.d.ts.map +1 -0
- package/dist/resume/content.js +6 -0
- package/dist/resume/content.js.map +1 -0
- package/dist/resume/design.d.ts +229 -0
- package/dist/resume/design.d.ts.map +1 -0
- package/dist/resume/design.js +6 -0
- package/dist/resume/design.js.map +1 -0
- package/dist/resume/index.d.ts +50 -0
- package/dist/resume/index.d.ts.map +1 -0
- package/dist/resume/index.js +13 -0
- package/dist/resume/index.js.map +1 -0
- package/dist/resume/settings.d.ts +95 -0
- package/dist/resume/settings.d.ts.map +1 -0
- package/dist/resume/settings.js +6 -0
- package/dist/resume/settings.js.map +1 -0
- package/package.json +85 -0
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resume Content Types
|
|
3
|
+
* Entry types, contacts, sections, and content-related definitions
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Social Media Platform Types
|
|
7
|
+
*/
|
|
8
|
+
export type SocialPlatform = 'linkedin' | 'github' | 'twitter' | 'instagram' | 'facebook' | 'youtube' | 'tiktok' | 'medium' | 'dev' | 'stackoverflow' | 'behance' | 'dribbble' | 'portfolio' | 'other';
|
|
9
|
+
/**
|
|
10
|
+
* Social Link
|
|
11
|
+
*/
|
|
12
|
+
export interface SocialLink {
|
|
13
|
+
id: string;
|
|
14
|
+
platform: SocialPlatform;
|
|
15
|
+
text: string;
|
|
16
|
+
url?: string;
|
|
17
|
+
label?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Contact Information
|
|
21
|
+
*/
|
|
22
|
+
export interface ContactInfo {
|
|
23
|
+
fullName: string;
|
|
24
|
+
professionalTitle?: string;
|
|
25
|
+
email: string;
|
|
26
|
+
phone: string;
|
|
27
|
+
location: string;
|
|
28
|
+
linkedin?: string;
|
|
29
|
+
github?: string;
|
|
30
|
+
photo?: string;
|
|
31
|
+
photoCropSettings?: ImageCropSettings;
|
|
32
|
+
socialLinks: SocialLink[];
|
|
33
|
+
pronouns?: string;
|
|
34
|
+
disability?: string;
|
|
35
|
+
workPermit?: string;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Summary Section
|
|
39
|
+
*/
|
|
40
|
+
export interface Summary {
|
|
41
|
+
id: string;
|
|
42
|
+
content: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Date display format options for entries
|
|
46
|
+
*/
|
|
47
|
+
export type DateDisplayFormat = 'full' | 'month-numeric' | 'year-only';
|
|
48
|
+
/**
|
|
49
|
+
* Experience Entry
|
|
50
|
+
*/
|
|
51
|
+
export interface ExperienceEntry {
|
|
52
|
+
id: string;
|
|
53
|
+
company: string;
|
|
54
|
+
position: string;
|
|
55
|
+
location: string;
|
|
56
|
+
startDate: string;
|
|
57
|
+
endDate: string | null;
|
|
58
|
+
description: string;
|
|
59
|
+
highlights: string[];
|
|
60
|
+
link?: string;
|
|
61
|
+
dateDisplayFormat?: DateDisplayFormat;
|
|
62
|
+
technologies: string[];
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Skill Item with optional level
|
|
66
|
+
*/
|
|
67
|
+
export interface SkillItem {
|
|
68
|
+
name: string;
|
|
69
|
+
level?: number;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Skill Entry
|
|
73
|
+
*/
|
|
74
|
+
export interface SkillEntry {
|
|
75
|
+
id: string;
|
|
76
|
+
category: string;
|
|
77
|
+
skills: (string | SkillItem)[];
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Project Entry
|
|
81
|
+
*/
|
|
82
|
+
export interface ProjectEntry {
|
|
83
|
+
id: string;
|
|
84
|
+
name: string;
|
|
85
|
+
role?: string;
|
|
86
|
+
date: string;
|
|
87
|
+
description: string;
|
|
88
|
+
technologies: string[];
|
|
89
|
+
link?: string;
|
|
90
|
+
dateDisplayFormat?: DateDisplayFormat;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Language Proficiency Level
|
|
94
|
+
*/
|
|
95
|
+
export type LanguageProficiency = 'native' | 'fluent' | 'advanced' | 'intermediate' | 'beginner';
|
|
96
|
+
/**
|
|
97
|
+
* Language Entry
|
|
98
|
+
*/
|
|
99
|
+
export interface LanguageEntry {
|
|
100
|
+
id: string;
|
|
101
|
+
language: string;
|
|
102
|
+
proficiency: LanguageProficiency;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Interest Entry (simple list item)
|
|
106
|
+
*/
|
|
107
|
+
export interface InterestEntry {
|
|
108
|
+
id: string;
|
|
109
|
+
interest: string;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Declaration (single text block)
|
|
113
|
+
*/
|
|
114
|
+
export interface Declaration {
|
|
115
|
+
id: string;
|
|
116
|
+
content: string;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Certificate Entry
|
|
120
|
+
*/
|
|
121
|
+
export interface CertificateEntry {
|
|
122
|
+
id: string;
|
|
123
|
+
name: string;
|
|
124
|
+
issuer: string;
|
|
125
|
+
date: string;
|
|
126
|
+
expiryDate?: string | null;
|
|
127
|
+
link?: string;
|
|
128
|
+
description?: string;
|
|
129
|
+
dateDisplayFormat?: DateDisplayFormat;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Education Entry
|
|
133
|
+
*/
|
|
134
|
+
export interface EducationEntry {
|
|
135
|
+
id: string;
|
|
136
|
+
school: string;
|
|
137
|
+
degree: string;
|
|
138
|
+
startDate: string;
|
|
139
|
+
endDate: string | null;
|
|
140
|
+
location?: string;
|
|
141
|
+
gpa?: string;
|
|
142
|
+
description?: string;
|
|
143
|
+
link?: string;
|
|
144
|
+
dateDisplayFormat?: DateDisplayFormat;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Course Entry
|
|
148
|
+
*/
|
|
149
|
+
export interface CourseEntry {
|
|
150
|
+
id: string;
|
|
151
|
+
name: string;
|
|
152
|
+
institution: string;
|
|
153
|
+
date: string;
|
|
154
|
+
description?: string;
|
|
155
|
+
link?: string;
|
|
156
|
+
dateDisplayFormat?: DateDisplayFormat;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Award Entry
|
|
160
|
+
*/
|
|
161
|
+
export interface AwardEntry {
|
|
162
|
+
id: string;
|
|
163
|
+
title: string;
|
|
164
|
+
issuer: string;
|
|
165
|
+
date: string;
|
|
166
|
+
description?: string;
|
|
167
|
+
dateDisplayFormat?: DateDisplayFormat;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Organisation Entry (volunteer/organization work)
|
|
171
|
+
*/
|
|
172
|
+
export interface OrganisationEntry {
|
|
173
|
+
id: string;
|
|
174
|
+
name: string;
|
|
175
|
+
role: string;
|
|
176
|
+
startDate: string;
|
|
177
|
+
endDate: string | null;
|
|
178
|
+
location?: string;
|
|
179
|
+
description?: string;
|
|
180
|
+
link?: string;
|
|
181
|
+
dateDisplayFormat?: DateDisplayFormat;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Publication Entry
|
|
185
|
+
*/
|
|
186
|
+
export interface PublicationEntry {
|
|
187
|
+
id: string;
|
|
188
|
+
title: string;
|
|
189
|
+
publisher: string;
|
|
190
|
+
date: string;
|
|
191
|
+
authors?: string[];
|
|
192
|
+
description?: string;
|
|
193
|
+
link?: string;
|
|
194
|
+
dateDisplayFormat?: DateDisplayFormat;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Reference Entry
|
|
198
|
+
*/
|
|
199
|
+
export interface ReferenceEntry {
|
|
200
|
+
id: string;
|
|
201
|
+
name: string;
|
|
202
|
+
position: string;
|
|
203
|
+
company: string;
|
|
204
|
+
email?: string;
|
|
205
|
+
phone?: string;
|
|
206
|
+
relationship?: string;
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Custom Entry (for user-defined sections)
|
|
210
|
+
*/
|
|
211
|
+
export interface CustomEntry {
|
|
212
|
+
id: string;
|
|
213
|
+
title: string;
|
|
214
|
+
titleLink?: string;
|
|
215
|
+
subtitle?: string;
|
|
216
|
+
startDate?: string;
|
|
217
|
+
endDate?: string | null;
|
|
218
|
+
location?: string;
|
|
219
|
+
description?: string;
|
|
220
|
+
dateDisplayFormat?: DateDisplayFormat;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Custom Section Definition
|
|
224
|
+
*/
|
|
225
|
+
export interface CustomSectionDefinition {
|
|
226
|
+
id: string;
|
|
227
|
+
name: string;
|
|
228
|
+
icon: string;
|
|
229
|
+
entries: CustomEntry[];
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Section Type Union
|
|
233
|
+
*/
|
|
234
|
+
export type SectionType = 'summary' | 'experience' | 'skills' | 'projects' | 'languages' | 'interests' | 'declaration' | 'certificates' | 'education' | 'courses' | 'awards' | 'organisations' | 'publications' | 'references';
|
|
235
|
+
/**
|
|
236
|
+
* Section Visibility Settings
|
|
237
|
+
*/
|
|
238
|
+
export interface SectionVisibility {
|
|
239
|
+
summary: boolean;
|
|
240
|
+
experience: boolean;
|
|
241
|
+
skills: boolean;
|
|
242
|
+
projects: boolean;
|
|
243
|
+
languages: boolean;
|
|
244
|
+
interests: boolean;
|
|
245
|
+
declaration: boolean;
|
|
246
|
+
certificates: boolean;
|
|
247
|
+
education: boolean;
|
|
248
|
+
courses: boolean;
|
|
249
|
+
awards: boolean;
|
|
250
|
+
organisations: boolean;
|
|
251
|
+
publications: boolean;
|
|
252
|
+
references: boolean;
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* Section Ordering (array of section types in display order)
|
|
256
|
+
*/
|
|
257
|
+
export type SectionOrder = SectionType[];
|
|
258
|
+
/**
|
|
259
|
+
* Crop Shape (for image cropping modal)
|
|
260
|
+
*/
|
|
261
|
+
export type CropShape = 'square' | 'rounded' | 'circle';
|
|
262
|
+
/**
|
|
263
|
+
* Non-destructive image crop settings
|
|
264
|
+
* Stores the crop parameters to apply visually without modifying the original image
|
|
265
|
+
*/
|
|
266
|
+
export interface ImageCropSettings {
|
|
267
|
+
zoom: number;
|
|
268
|
+
panX: number;
|
|
269
|
+
panY: number;
|
|
270
|
+
shape: CropShape;
|
|
271
|
+
}
|
|
272
|
+
//# sourceMappingURL=content.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../src/resume/content.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content.js","sourceRoot":"","sources":["../../src/resume/content.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resume Design Types
|
|
3
|
+
* Layout, templates, fonts, and visual styling definitions
|
|
4
|
+
*/
|
|
5
|
+
import type { SectionType } from './content';
|
|
6
|
+
/**
|
|
7
|
+
* Template Type
|
|
8
|
+
*/
|
|
9
|
+
export type TemplateType = 'single-column' | 'double-column' | 'double-column-sidebar-left' | 'double-column-sidebar-right';
|
|
10
|
+
/**
|
|
11
|
+
* Section Heading Style
|
|
12
|
+
*/
|
|
13
|
+
export type HeadingStyle = 'classic' | 'simple' | 'underlined' | 'boxed' | 'pill' | 'bold-underline' | 'left-border' | 'shadowed' | 'gradient' | 'accent-underline' | 'dotted-underline' | 'double-line' | 'split-line' | 'highlight' | 'brackets' | 'ribbon';
|
|
14
|
+
/**
|
|
15
|
+
* Heading Size
|
|
16
|
+
*/
|
|
17
|
+
export type HeadingSize = 'small' | 'medium' | 'large';
|
|
18
|
+
/**
|
|
19
|
+
* Date/Location Position
|
|
20
|
+
*/
|
|
21
|
+
export type DateLocationPosition = 'right' | 'left' | 'below';
|
|
22
|
+
/**
|
|
23
|
+
* Description Position
|
|
24
|
+
*/
|
|
25
|
+
export type DescriptionPosition = 'below' | 'right';
|
|
26
|
+
/**
|
|
27
|
+
* Bullet Point Style
|
|
28
|
+
*/
|
|
29
|
+
export type BulletStyle = 'disc' | 'circle' | 'square' | 'dash' | 'arrow';
|
|
30
|
+
/**
|
|
31
|
+
* Entry Layout Preset Type
|
|
32
|
+
* Combines dateLocationPosition and descriptionPosition into intuitive presets
|
|
33
|
+
* to prevent conflicting combinations (e.g., both being 'right')
|
|
34
|
+
*/
|
|
35
|
+
export type EntryLayoutPreset = 'classic' | 'compact' | 'side-by-side' | 'left-aligned' | 'timeline';
|
|
36
|
+
/**
|
|
37
|
+
* Entry Layout Preset Mapping Configuration
|
|
38
|
+
*/
|
|
39
|
+
export interface EntryLayoutPresetMapping {
|
|
40
|
+
dateLocationPosition: DateLocationPosition;
|
|
41
|
+
descriptionPosition: DescriptionPosition;
|
|
42
|
+
label: string;
|
|
43
|
+
description: string;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Image Shape
|
|
47
|
+
*/
|
|
48
|
+
export type ImageShape = 'square' | 'round' | 'rounded';
|
|
49
|
+
/**
|
|
50
|
+
* Header Layout Type
|
|
51
|
+
*/
|
|
52
|
+
export type HeaderLayout = 'centered' | 'left' | 'right' | 'split';
|
|
53
|
+
/**
|
|
54
|
+
* Socials Layout Type
|
|
55
|
+
* Controls how social links are arranged in the header
|
|
56
|
+
* - 'row': Horizontal inline layout
|
|
57
|
+
* - 'column': Vertical stacked layout
|
|
58
|
+
* - 'grid': Multi-column grid layout
|
|
59
|
+
*/
|
|
60
|
+
export type SocialsLayout = 'row' | 'column' | 'grid';
|
|
61
|
+
/**
|
|
62
|
+
* Socials Grid Settings
|
|
63
|
+
* Configuration for grid layout of social links
|
|
64
|
+
*/
|
|
65
|
+
export interface SocialsGridSettings {
|
|
66
|
+
/** Number of columns in the grid (2 or 3) */
|
|
67
|
+
columns: 2 | 3;
|
|
68
|
+
/** Column assignments - maps column index (0-based) to array of social link IDs */
|
|
69
|
+
columnAssignments?: Record<number, string[]>;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Unified Header Layout Type
|
|
73
|
+
* Combines image position, header layout, and title position into intuitive presets
|
|
74
|
+
*/
|
|
75
|
+
export type UnifiedHeaderLayout = 'centered' | 'left-portrait' | 'right-portrait' | 'left-stacked' | 'right-stacked' | 'split' | 'name-first-left' | 'name-first-centered' | 'name-first-right';
|
|
76
|
+
/**
|
|
77
|
+
* Unified Layout Mapping Configuration
|
|
78
|
+
*/
|
|
79
|
+
export interface UnifiedLayoutMapping {
|
|
80
|
+
headerLayout: HeaderLayout;
|
|
81
|
+
imagePosition: ImagePosition;
|
|
82
|
+
titlePosition: ProfessionalTitlePosition;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Contact Field Type
|
|
86
|
+
* NOTE: linkedin and github were removed - they are now exclusively handled
|
|
87
|
+
* as SocialPlatform types in the socialLinks array
|
|
88
|
+
*/
|
|
89
|
+
export type ContactField = 'email' | 'phone' | 'location' | 'pronouns' | 'workPermit' | 'disability';
|
|
90
|
+
/**
|
|
91
|
+
* Skills Display Mode (legacy - kept for migration)
|
|
92
|
+
*/
|
|
93
|
+
export type SkillsDisplayMode = 'category-list' | 'simple-list';
|
|
94
|
+
/**
|
|
95
|
+
* Skills Layout Mode - Controls overall structure/arrangement
|
|
96
|
+
*/
|
|
97
|
+
export type SkillsLayoutMode = 'category-list' | 'simple-list' | 'grid' | 'grouped-grid' | 'pills' | 'grouped-pills';
|
|
98
|
+
/**
|
|
99
|
+
* Skills Level Visualization - Controls how proficiency levels are shown
|
|
100
|
+
*/
|
|
101
|
+
export type SkillsLevelVisualization = 'none' | 'bars' | 'dots' | 'stars';
|
|
102
|
+
/**
|
|
103
|
+
* Skills Pill Variant - Styling for pill/badge display
|
|
104
|
+
*/
|
|
105
|
+
export type SkillsPillVariant = 'solid' | 'outline' | 'soft' | 'subtle';
|
|
106
|
+
/**
|
|
107
|
+
* Skills Pill Shape - Controls pill border radius
|
|
108
|
+
*/
|
|
109
|
+
export type SkillsPillShape = 'rounded' | 'box';
|
|
110
|
+
/**
|
|
111
|
+
* Link Color Mode
|
|
112
|
+
*/
|
|
113
|
+
export type LinkColorMode = 'primary' | 'custom' | 'text';
|
|
114
|
+
/**
|
|
115
|
+
* Link Underline Style
|
|
116
|
+
*/
|
|
117
|
+
export type LinkUnderlineStyle = 'none' | 'solid' | 'dotted' | 'dashed' | 'hover';
|
|
118
|
+
/**
|
|
119
|
+
* Image Position
|
|
120
|
+
*/
|
|
121
|
+
export type ImagePosition = 'above' | 'beside-left' | 'beside-right' | 'below' | 'middle';
|
|
122
|
+
/**
|
|
123
|
+
* Image Shadow Size
|
|
124
|
+
*/
|
|
125
|
+
export type ImageShadow = 'none' | 'sm' | 'md' | 'lg';
|
|
126
|
+
/**
|
|
127
|
+
* Profession Title Size
|
|
128
|
+
*/
|
|
129
|
+
export type ProfessionTitleSize = 'sm' | 'md' | 'lg' | 'xl';
|
|
130
|
+
/**
|
|
131
|
+
* Professional Title Position
|
|
132
|
+
*/
|
|
133
|
+
export type ProfessionalTitlePosition = 'below-name' | 'above-contacts' | 'inline' | 'below-image';
|
|
134
|
+
/**
|
|
135
|
+
* Design Settings
|
|
136
|
+
* NOTE: Margins and spacing are now in LayoutSettings, not here.
|
|
137
|
+
* See layoutSettings.marginTop/Bottom/Left/Right and layoutSettings.sectionGap
|
|
138
|
+
*/
|
|
139
|
+
export interface DesignSettings {
|
|
140
|
+
primaryColor: string;
|
|
141
|
+
accentColor: string;
|
|
142
|
+
headerBackgroundColor: string;
|
|
143
|
+
sidebarBackgroundColor: string;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Typography Preset - Curated font pairings
|
|
147
|
+
*/
|
|
148
|
+
export interface TypographyPreset {
|
|
149
|
+
id: string;
|
|
150
|
+
name: string;
|
|
151
|
+
description: string;
|
|
152
|
+
fonts: {
|
|
153
|
+
nameFont: string;
|
|
154
|
+
headingFont: string;
|
|
155
|
+
bodyFont: string;
|
|
156
|
+
};
|
|
157
|
+
recommended?: Partial<FontSettings>;
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Font Settings
|
|
161
|
+
*/
|
|
162
|
+
export interface FontSettings {
|
|
163
|
+
nameFont: string;
|
|
164
|
+
headingFont: string;
|
|
165
|
+
bodyFont: string;
|
|
166
|
+
nameSize: number;
|
|
167
|
+
headingSize: number;
|
|
168
|
+
bodySize: number;
|
|
169
|
+
nameWeight: number;
|
|
170
|
+
headingWeight: number;
|
|
171
|
+
bodyWeight: number;
|
|
172
|
+
entryTitleSize: number;
|
|
173
|
+
entryTitleWeight: number;
|
|
174
|
+
positionSize: number;
|
|
175
|
+
positionWeight: number;
|
|
176
|
+
dateSize: number;
|
|
177
|
+
dateWeight: number;
|
|
178
|
+
lineHeight: number;
|
|
179
|
+
letterSpacing: number;
|
|
180
|
+
paragraphSpacing: number;
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Typography Quick Mode Preset Types
|
|
184
|
+
*/
|
|
185
|
+
export type TypographyPresetSize = 's' | 'm' | 'l';
|
|
186
|
+
export interface ScalePreset {
|
|
187
|
+
nameSize: number;
|
|
188
|
+
headingSize: number;
|
|
189
|
+
bodySize: number;
|
|
190
|
+
entryTitleSize: number;
|
|
191
|
+
positionSize: number;
|
|
192
|
+
dateSize: number;
|
|
193
|
+
}
|
|
194
|
+
export interface WeightPreset {
|
|
195
|
+
nameWeight: number;
|
|
196
|
+
headingWeight: number;
|
|
197
|
+
bodyWeight: number;
|
|
198
|
+
entryTitleWeight: number;
|
|
199
|
+
positionWeight: number;
|
|
200
|
+
dateWeight: number;
|
|
201
|
+
}
|
|
202
|
+
export interface SpacingPreset {
|
|
203
|
+
lineHeight: number;
|
|
204
|
+
letterSpacing: number;
|
|
205
|
+
paragraphSpacing: number;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Layout Settings
|
|
209
|
+
*/
|
|
210
|
+
export interface LayoutSettings {
|
|
211
|
+
template: TemplateType;
|
|
212
|
+
columnGap: number;
|
|
213
|
+
sidebarWidth: number;
|
|
214
|
+
pageSize: 'A4' | 'US Letter';
|
|
215
|
+
pageOrientation: 'portrait' | 'landscape';
|
|
216
|
+
sectionColumnAssignment: Record<SectionType, 0 | 1>;
|
|
217
|
+
leftColumnWidth: number;
|
|
218
|
+
rightColumnWidth: number;
|
|
219
|
+
sectionPadding: number;
|
|
220
|
+
sectionGap: number;
|
|
221
|
+
subsectionGap: number;
|
|
222
|
+
marginTop: number;
|
|
223
|
+
marginBottom: number;
|
|
224
|
+
marginLeft: number;
|
|
225
|
+
marginRight: number;
|
|
226
|
+
titleSpacing: number;
|
|
227
|
+
headerToContentGap: number;
|
|
228
|
+
}
|
|
229
|
+
//# sourceMappingURL=design.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"design.d.ts","sourceRoot":"","sources":["../../src/resume/design.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"design.js","sourceRoot":"","sources":["../../src/resume/design.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resume Types Module
|
|
3
|
+
* Main barrel export for all resume-related types
|
|
4
|
+
*/
|
|
5
|
+
export * from './content';
|
|
6
|
+
export * from './design';
|
|
7
|
+
export * from './settings';
|
|
8
|
+
export * from './constants';
|
|
9
|
+
import type { ContactInfo, Summary, ExperienceEntry, SkillEntry, ProjectEntry, LanguageEntry, InterestEntry, Declaration, CertificateEntry, EducationEntry, CourseEntry, AwardEntry, OrganisationEntry, PublicationEntry, ReferenceEntry, CustomSectionDefinition, SectionOrder, SectionVisibility } from './content';
|
|
10
|
+
import type { TemplateType, DesignSettings, FontSettings, LayoutSettings } from './design';
|
|
11
|
+
import type { HeaderSettings, SectionHeadingSettings, EntryLayoutSettings, SkillsSettings, LinkSettings } from './settings';
|
|
12
|
+
/**
|
|
13
|
+
* Complete Resume Data Structure
|
|
14
|
+
*/
|
|
15
|
+
export interface Resume {
|
|
16
|
+
id: string;
|
|
17
|
+
version: number;
|
|
18
|
+
lastModified: string;
|
|
19
|
+
contact: ContactInfo;
|
|
20
|
+
summary: Summary | null;
|
|
21
|
+
experience: ExperienceEntry[];
|
|
22
|
+
skills: SkillEntry[];
|
|
23
|
+
projects: ProjectEntry[];
|
|
24
|
+
languages: LanguageEntry[];
|
|
25
|
+
interests: InterestEntry[];
|
|
26
|
+
declaration: Declaration | null;
|
|
27
|
+
certificates: CertificateEntry[];
|
|
28
|
+
education: EducationEntry[];
|
|
29
|
+
courses: CourseEntry[];
|
|
30
|
+
awards: AwardEntry[];
|
|
31
|
+
organisations: OrganisationEntry[];
|
|
32
|
+
publications: PublicationEntry[];
|
|
33
|
+
references: ReferenceEntry[];
|
|
34
|
+
customSections: CustomSectionDefinition[];
|
|
35
|
+
customSectionOrder: string[];
|
|
36
|
+
customSectionColumnAssignment: Record<string, 0 | 1>;
|
|
37
|
+
unifiedColumnOrder: [string[], string[]];
|
|
38
|
+
template: TemplateType;
|
|
39
|
+
layoutSettings: LayoutSettings;
|
|
40
|
+
sectionOrder: SectionOrder;
|
|
41
|
+
sectionVisibility: SectionVisibility;
|
|
42
|
+
designSettings: DesignSettings;
|
|
43
|
+
fontSettings: FontSettings;
|
|
44
|
+
sectionHeadingSettings: SectionHeadingSettings;
|
|
45
|
+
entryLayoutSettings: EntryLayoutSettings;
|
|
46
|
+
headerSettings: HeaderSettings;
|
|
47
|
+
skillsSettings: SkillsSettings;
|
|
48
|
+
linkSettings: LinkSettings;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resume/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,cAAc,WAAW,CAAC;AAG1B,cAAc,UAAU,CAAC;AAGzB,cAAc,YAAY,CAAC;AAG3B,cAAc,aAAa,CAAC;AAG5B,OAAO,KAAK,EACV,WAAW,EACX,OAAO,EACP,eAAe,EACf,UAAU,EACV,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,uBAAuB,EACvB,YAAY,EACZ,iBAAiB,EAClB,MAAM,WAAW,CAAC;AAEnB,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,cAAc,EACf,MAAM,UAAU,CAAC;AAElB,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACtB,mBAAmB,EACnB,cAAc,EACd,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IAGrB,OAAO,EAAE,WAAW,CAAC;IAGrB,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,QAAQ,EAAE,YAAY,EAAE,CAAC;IAGzB,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAChC,YAAY,EAAE,gBAAgB,EAAE,CAAC;IACjC,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,YAAY,EAAE,gBAAgB,EAAE,CAAC;IACjC,UAAU,EAAE,cAAc,EAAE,CAAC;IAG7B,cAAc,EAAE,uBAAuB,EAAE,CAAC;IAG1C,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,6BAA6B,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAKrD,kBAAkB,EAAE,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAGzC,QAAQ,EAAE,YAAY,CAAC;IACvB,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;CAC5B"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resume Types Module
|
|
3
|
+
* Main barrel export for all resume-related types
|
|
4
|
+
*/
|
|
5
|
+
// Export all content types
|
|
6
|
+
export * from './content';
|
|
7
|
+
// Export all design types
|
|
8
|
+
export * from './design';
|
|
9
|
+
// Export all settings types
|
|
10
|
+
export * from './settings';
|
|
11
|
+
// Export all constants
|
|
12
|
+
export * from './constants';
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resume/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,2BAA2B;AAC3B,cAAc,WAAW,CAAC;AAE1B,0BAA0B;AAC1B,cAAc,UAAU,CAAC;AAEzB,4BAA4B;AAC5B,cAAc,YAAY,CAAC;AAE3B,uBAAuB;AACvB,cAAc,aAAa,CAAC"}
|