@enure/jacklin 1.0.1

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/.prettierrc ADDED
@@ -0,0 +1,4 @@
1
+ {
2
+ "tabWidth": 2,
3
+ "useTabs": false
4
+ }
package/index.js ADDED
@@ -0,0 +1,15 @@
1
+ import { fileURLToPath } from "url";
2
+ import { dirname, resolve } from "path";
3
+ import { readFileSync } from "fs";
4
+ import Handlebars from "handlebars";
5
+
6
+ export const render = (resume) => {
7
+ const modulePath = dirname(fileURLToPath(import.meta.url));
8
+ const template = readFileSync(
9
+ resolve(modulePath, "./template.handlebars"),
10
+ "utf8",
11
+ );
12
+
13
+ const compiledTemplate = Handlebars.compile(template);
14
+ return compiledTemplate(resume);
15
+ };
package/package.json ADDED
@@ -0,0 +1,20 @@
1
+ {
2
+ "name": "@enure/jacklin",
3
+ "version": "1.0.1",
4
+ "description": "",
5
+ "type": "module",
6
+ "main": "index.js",
7
+ "exports": "./index.js",
8
+ "scripts": {
9
+ "test": "echo \"Error: no test specified\" && exit 1"
10
+ },
11
+ "keywords": [],
12
+ "author": "Charles Stuart",
13
+ "license": "ISC",
14
+ "dependencies": {
15
+ "handlebars": "^4.7.8"
16
+ },
17
+ "devDependencies": {
18
+ "prettier": "^3.0.3"
19
+ }
20
+ }
@@ -0,0 +1,100 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>{{ basics.name }}</title>
5
+ <meta charset="utf-8" />
6
+ <style>
7
+ body {
8
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
9
+ line-height: 1.3;
10
+ padding: 32px;
11
+ color: #222;
12
+ font-size: 14px;
13
+ }
14
+ main {
15
+ margin-top: 48px;
16
+ max-width: 800px;
17
+ }
18
+ h1,h2 {
19
+ font-size: 14px;
20
+ margin: 0;
21
+ }
22
+ ul {
23
+ list-style-type: none;
24
+ margin: 0;
25
+ padding: 0;
26
+ }
27
+ .WorkList-item {
28
+ margin-top: 32px;
29
+ }
30
+ .WorkList-dates {
31
+ color: #666;
32
+ font-size: 14px;
33
+ }
34
+ .WorkList-positionAt {
35
+ /*background-color: rgb(255, 255, 199);
36
+ padding: 3px 6px;
37
+ display: inline-block;
38
+ margin-left: -6px;*/
39
+ font-weight: bold;
40
+ }
41
+ .WorkList-summary {
42
+ margin-top: 8px;
43
+ }
44
+ .WorkList-highlights {
45
+ margin-top: 12px;
46
+ display: flex;
47
+ flex-direction: row;
48
+ }
49
+ .WorkList-highlight {
50
+ font-size: 12px;
51
+ color: #555;
52
+ margin-right: 8px;
53
+ padding: 3px 6px;
54
+ border: 1px solid #aaa;
55
+ border-radius: 4px;
56
+ }
57
+ </style>
58
+ </head>
59
+ <body>
60
+ <header>
61
+ <h1>
62
+ {{ basics.name }}
63
+ </h1>
64
+ <ul>
65
+ <li>{{ basics.email }}</li>
66
+ <li>{{ basics.phone }}</li>
67
+ <li>{{ basics.location.address }}</li>
68
+ <li>{{ basics.location.city }}, {{ basics.location.region }} {{ basics.location.postalCode }}</li>
69
+ </ul>
70
+ <p>
71
+ {{ basics.summary }}
72
+ </p>
73
+ </header>
74
+ <main>
75
+ <h2>Work History</h2>
76
+ <ul class="WorkList">
77
+ {{#each work}}
78
+ <li class="WorkList-item">
79
+ <div class="WorkList-positionAt">
80
+ {{this.position}} at {{this.name}}
81
+ </div>
82
+ <div class="WorkList-dates">
83
+ {{this.startDate}} - {{#if this.endDate }}{{this.endDate}}{{/if}}{{#unless this.endDate }}current{{/unless}}
84
+ </div>
85
+ <div class="WorkList-summary">
86
+ {{this.summary}}
87
+ </div>
88
+ {{#if this.highlights}}
89
+ <ul class="WorkList-highlights">
90
+ {{#each this.highlights}}
91
+ <li class="WorkList-highlight">{{this}}</li>
92
+ {{/each}}
93
+ </ul>
94
+ {{/if}}
95
+ </li>
96
+ {{/each}}
97
+ </ul>
98
+ </main>
99
+ </body>
100
+ </html>