-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
card.js
105 lines (96 loc) · 2.95 KB
/
card.js
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#!/usr/bin/env node
const config = require('./config');
'use strict'
const boxen = require("boxen");
const chalk = require("chalk");
const inquirer = require("inquirer");
const clear = require("clear");
const open = require("open");
const fs = require('fs');
const request = require('request');
const path = require('path');
const ora = require('ora');
const cliSpinners = require('cli-spinners');
clear();
const prompt = inquirer.createPromptModule();
const questions = [
{
type: "list",
name: "action",
message: "What you want to do?",
choices: [
{
name: `Send me an ${chalk.green.bold("email")}?`,
value: () => {
open("mailto:" + config.Mail);
console.log("\nDone, see you soon at inbox.\n");
}
},
{
name: "Just quit.",
value: () => {
console.log("Hasta la vista.\n");
}
}
]
}
];
const data = {
name: chalk.bold.green(config.yourName),
handle: chalk.white(config.twitterHandle),
work: `${chalk.white(config.workat)} ${chalk
.hex("#2b82b2")
.bold(config.workPlace)}`,
twitter: chalk.gray("https://twitter.com/") + chalk.cyan(config.twitterUsername),
github: chalk.gray("https://github.com/") + chalk.green(config.githubUsername),
linkedin: chalk.gray("https://linkedin.com/in/") + chalk.blue(config.linkedinUsername),
web: chalk.cyan(config.websiteUrl),
npx: chalk.red("npx") + " " + chalk.white(config.npxName),
labelWork: chalk.white.bold(" Work:"),
labelTwitter: chalk.white.bold(" Twitter:"),
labelGitHub: chalk.white.bold(" GitHub:"),
labelLinkedIn: chalk.white.bold(" LinkedIn:"),
labelWeb: chalk.white.bold(" Web:"),
labelCard: chalk.white.bold(" Card:")
};
const me = boxen(
[
`${data.name}`,
``,
`${data.labelWork} ${data.work}`,
``,
`${data.labelTwitter} ${data.twitter}`,
`${data.labelGitHub} ${data.github}`,
`${data.labelLinkedIn} ${data.linkedin}`,
`${data.labelWeb} ${data.web}`,
``,
`${data.labelCard} ${data.npx}`,
``,
`${chalk.italic(
"I am currently looking for new opportunities,"
)}`,
`${chalk.italic("my inbox is always open. Whether you have a")}`,
`${chalk.italic(
"question or just want to say hi, I will try "
)}`,
`${chalk.italic(
"my best to get back to you!"
)}`
].join("\n"),
{
margin: 1,
float: 'center',
padding: 1,
borderStyle: "single",
borderColor: "green"
}
);
console.log(me);
const tip = [
`Tip: Try ${chalk.cyanBright.bold(
"cmd/ctrl + click"
)} on the links above`,
'',
].join("\n");
console.log(tip);
prompt(questions).then(answer => answer.action());