Compare commits

..

1 Commits

Author SHA1 Message Date
dependabot[bot] f3297f7250 Bump tar from 6.0.2 to 6.1.11
Bumps [tar](https://github.com/npm/node-tar) from 6.0.2 to 6.1.11.
- [Release notes](https://github.com/npm/node-tar/releases)
- [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-tar/compare/v6.0.2...v6.1.11)

---
updated-dependencies:
- dependency-name: tar
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-26 14:09:27 +00:00
25 changed files with 548 additions and 1122 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
language: node_js
node_js:
- "14"
- "stable"
cache:
directories:
- "node_modules"
+16 -23
View File
@@ -8769,9 +8769,9 @@
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
},
"color-string": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/color-string/-/color-string-1.6.0.tgz",
"integrity": "sha512-c/hGS+kRWJutUBEngKKmk4iH3sD59MBkoxVapS/0wgpCz2u7XsNloxknyvBhzwEs1IbV36D9PwqLPJ2DTu3vMA==",
"version": "1.5.3",
"resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.3.tgz",
"integrity": "sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw==",
"requires": {
"color-name": "^1.0.0",
"simple-swizzle": "^0.2.2"
@@ -21551,22 +21551,6 @@
}
}
},
"minizlib": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.0.tgz",
"integrity": "sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA==",
"requires": {
"minipass": "^3.0.0",
"yallist": "^4.0.0"
},
"dependencies": {
"yallist": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
}
}
},
"mississippi": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz",
@@ -27336,14 +27320,14 @@
"integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA=="
},
"tar": {
"version": "6.0.2",
"resolved": "https://registry.npmjs.org/tar/-/tar-6.0.2.tgz",
"integrity": "sha512-Glo3jkRtPcvpDlAs/0+hozav78yoXKFr+c4wgw62NNMO3oo4AaJdCo21Uu7lcwr55h39W2XD1LMERc64wtbItg==",
"version": "6.1.11",
"resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
"integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==",
"requires": {
"chownr": "^2.0.0",
"fs-minipass": "^2.0.0",
"minipass": "^3.0.0",
"minizlib": "^2.1.0",
"minizlib": "^2.1.1",
"mkdirp": "^1.0.3",
"yallist": "^4.0.0"
},
@@ -27353,6 +27337,15 @@
"resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
"integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="
},
"minizlib": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
"integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
"requires": {
"minipass": "^3.0.0",
"yallist": "^4.0.0"
}
},
"mkdirp": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
@@ -99,24 +99,6 @@ exports[`Addons renders correctly 1`] = `
>
display top skills
</AddonsItem>
<AddonsItem
Options={
<CustomizeOptions
CustomizationOptions={
<CustomizeStreakStats
onUpdate={[Function]}
options={Object {}}
prefix="streak-stats"
/>
}
title="Customize Streak Stats Card"
/>
}
inputId="streak-stats"
onInputChange={[Function]}
>
display github streak stats
</AddonsItem>
<AddonsItem
inputChecked={false}
inputId="twitter-badge"
@@ -357,19 +339,15 @@ exports[`Addons should render Customize Badges 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="visitors-count"
>
<input
checked={false}
className="checkbox-label__input"
id="visitors-count"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -532,19 +510,15 @@ exports[`Addons should render Customize Badges 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="github-profile-trophy"
>
<input
checked={false}
className="checkbox-label__input"
id="github-profile-trophy"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -584,19 +558,15 @@ exports[`Addons should render Customize Badges 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="github-stats"
>
<input
checked={false}
className="checkbox-label__input"
id="github-stats"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -674,19 +644,15 @@ exports[`Addons should render Customize Badges 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="top-languages"
>
<input
checked={false}
className="checkbox-label__input"
id="top-languages"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -733,84 +699,6 @@ exports[`Addons should render Customize Badges 1`] = `
</button>
</div>
</AddonsItem>
<AddonsItem
Options={
<CustomizeOptions
CustomizationOptions={
<CustomizeStreakStats
onUpdate={[Function]}
options={Object {}}
prefix="streak-stats"
/>
}
title="Customize Streak Stats Card"
/>
}
inputId="streak-stats"
onInputChange={[Function]}
>
<div
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
htmlFor="streak-stats"
>
<input
className="checkbox-label__input"
id="streak-stats"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
display github streak stats
</span>
</label>
<button
className="flex ml-3 focus:bg-gray-400"
id="streak-stats-open-btn"
onClick={[Function]}
style={
Object {
"outline": "none",
}
}
>
<ToolsIcon
className="transform scale-100 md:scale-125"
size={16}
verticalAlign="text-bottom"
>
<svg
aria-hidden="true"
className="transform scale-100 md:scale-125"
dangerouslySetInnerHTML={
Object {
"__html": "<path fill-rule=\\"evenodd\\" d=\\"M5.433 2.304A4.494 4.494 0 003.5 6c0 1.598.832 3.002 2.09 3.802.518.328.929.923.902 1.64v.008l-.164 3.337a.75.75 0 11-1.498-.073l.163-3.33c.002-.085-.05-.216-.207-.316A5.996 5.996 0 012 6a5.994 5.994 0 012.567-4.92 1.482 1.482 0 011.673-.04c.462.296.76.827.76 1.423v2.82c0 .082.041.16.11.206l.75.51a.25.25 0 00.28 0l.75-.51A.25.25 0 009 5.282V2.463c0-.596.298-1.127.76-1.423a1.482 1.482 0 011.673.04A5.994 5.994 0 0114 6a5.996 5.996 0 01-2.786 5.068c-.157.1-.209.23-.207.315l.163 3.33a.75.75 0 11-1.498.074l-.164-3.345c-.027-.717.384-1.312.902-1.64A4.496 4.496 0 0012.5 6a4.494 4.494 0 00-1.933-3.696c-.024.017-.067.067-.067.16v2.818a1.75 1.75 0 01-.767 1.448l-.75.51a1.75 1.75 0 01-1.966 0l-.75-.51A1.75 1.75 0 015.5 5.282V2.463c0-.092-.043-.142-.067-.159zm.01-.005z\\"></path>",
}
}
fill="currentColor"
height={16}
role="img"
style={
Object {
"display": "inline-block",
"userSelect": "none",
"verticalAlign": "text-bottom",
}
}
viewBox="0 0 16 16"
width={16}
/>
</ToolsIcon>
</button>
</div>
</AddonsItem>
<AddonsItem
inputChecked={false}
inputId="twitter-badge"
@@ -820,19 +708,15 @@ exports[`Addons should render Customize Badges 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="twitter-badge"
>
<input
checked={false}
className="checkbox-label__input"
id="twitter-badge"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -850,19 +734,15 @@ exports[`Addons should render Customize Badges 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="dev-dynamic-blogs"
>
<input
checked={false}
className="checkbox-label__input"
id="dev-dynamic-blogs"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -880,19 +760,15 @@ exports[`Addons should render Customize Badges 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="medium-dynamic-blogs"
>
<input
checked="some-medium-blogs-value"
className="checkbox-label__input"
id="medium-dynamic-blogs"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -910,19 +786,15 @@ exports[`Addons should render Customize Badges 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="rss-dynamic-blogs"
>
<input
checked={false}
className="checkbox-label__input"
id="rss-dynamic-blogs"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -1059,19 +931,15 @@ exports[`Addons should render Customize Github stats card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="visitors-count"
>
<input
checked={false}
className="checkbox-label__input"
id="visitors-count"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -1127,19 +995,15 @@ exports[`Addons should render Customize Github stats card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="github-profile-trophy"
>
<input
checked={false}
className="checkbox-label__input"
id="github-profile-trophy"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -1179,19 +1043,15 @@ exports[`Addons should render Customize Github stats card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="github-stats"
>
<input
checked={false}
className="checkbox-label__input"
id="github-stats"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -1394,20 +1254,15 @@ exports[`Addons should render Customize Github stats card 1`] = `
/>
</label>
<label
className="checkbox-label"
htmlFor="stats-hide-border"
>
Hide border: 
<input
checked={false}
className="checkbox-label__input"
id="stats-hide-border"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
</label>
<label
htmlFor="stats-cache-seconds"
@@ -1472,19 +1327,15 @@ exports[`Addons should render Customize Github stats card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="top-languages"
>
<input
checked={false}
className="checkbox-label__input"
id="top-languages"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -1531,84 +1382,6 @@ exports[`Addons should render Customize Github stats card 1`] = `
</button>
</div>
</AddonsItem>
<AddonsItem
Options={
<CustomizeOptions
CustomizationOptions={
<CustomizeStreakStats
onUpdate={[Function]}
options={Object {}}
prefix="streak-stats"
/>
}
title="Customize Streak Stats Card"
/>
}
inputId="streak-stats"
onInputChange={[Function]}
>
<div
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
htmlFor="streak-stats"
>
<input
className="checkbox-label__input"
id="streak-stats"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
display github streak stats
</span>
</label>
<button
className="flex ml-3 focus:bg-gray-400"
id="streak-stats-open-btn"
onClick={[Function]}
style={
Object {
"outline": "none",
}
}
>
<ToolsIcon
className="transform scale-100 md:scale-125"
size={16}
verticalAlign="text-bottom"
>
<svg
aria-hidden="true"
className="transform scale-100 md:scale-125"
dangerouslySetInnerHTML={
Object {
"__html": "<path fill-rule=\\"evenodd\\" d=\\"M5.433 2.304A4.494 4.494 0 003.5 6c0 1.598.832 3.002 2.09 3.802.518.328.929.923.902 1.64v.008l-.164 3.337a.75.75 0 11-1.498-.073l.163-3.33c.002-.085-.05-.216-.207-.316A5.996 5.996 0 012 6a5.994 5.994 0 012.567-4.92 1.482 1.482 0 011.673-.04c.462.296.76.827.76 1.423v2.82c0 .082.041.16.11.206l.75.51a.25.25 0 00.28 0l.75-.51A.25.25 0 009 5.282V2.463c0-.596.298-1.127.76-1.423a1.482 1.482 0 011.673.04A5.994 5.994 0 0114 6a5.996 5.996 0 01-2.786 5.068c-.157.1-.209.23-.207.315l.163 3.33a.75.75 0 11-1.498.074l-.164-3.345c-.027-.717.384-1.312.902-1.64A4.496 4.496 0 0012.5 6a4.494 4.494 0 00-1.933-3.696c-.024.017-.067.067-.067.16v2.818a1.75 1.75 0 01-.767 1.448l-.75.51a1.75 1.75 0 01-1.966 0l-.75-.51A1.75 1.75 0 015.5 5.282V2.463c0-.092-.043-.142-.067-.159zm.01-.005z\\"></path>",
}
}
fill="currentColor"
height={16}
role="img"
style={
Object {
"display": "inline-block",
"userSelect": "none",
"verticalAlign": "text-bottom",
}
}
viewBox="0 0 16 16"
width={16}
/>
</ToolsIcon>
</button>
</div>
</AddonsItem>
<AddonsItem
inputChecked={false}
inputId="twitter-badge"
@@ -1618,19 +1391,15 @@ exports[`Addons should render Customize Github stats card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="twitter-badge"
>
<input
checked={false}
className="checkbox-label__input"
id="twitter-badge"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -1648,19 +1417,15 @@ exports[`Addons should render Customize Github stats card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="dev-dynamic-blogs"
>
<input
checked={false}
className="checkbox-label__input"
id="dev-dynamic-blogs"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -1678,19 +1443,15 @@ exports[`Addons should render Customize Github stats card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="medium-dynamic-blogs"
>
<input
checked="some-medium-blogs-value"
className="checkbox-label__input"
id="medium-dynamic-blogs"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -1708,19 +1469,15 @@ exports[`Addons should render Customize Github stats card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="rss-dynamic-blogs"
>
<input
checked={false}
className="checkbox-label__input"
id="rss-dynamic-blogs"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -1857,19 +1614,15 @@ exports[`Addons should render Customize Top Skills Card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="visitors-count"
>
<input
checked={false}
className="checkbox-label__input"
id="visitors-count"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -1925,19 +1678,15 @@ exports[`Addons should render Customize Top Skills Card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="github-profile-trophy"
>
<input
checked={false}
className="checkbox-label__input"
id="github-profile-trophy"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -1977,19 +1726,15 @@ exports[`Addons should render Customize Top Skills Card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="github-stats"
>
<input
checked={false}
className="checkbox-label__input"
id="github-stats"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -2067,19 +1812,15 @@ exports[`Addons should render Customize Top Skills Card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="top-languages"
>
<input
checked={false}
className="checkbox-label__input"
id="top-languages"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -2282,20 +2023,15 @@ exports[`Addons should render Customize Top Skills Card 1`] = `
/>
</label>
<label
className="checkbox-label"
htmlFor="top-lang-hide-border"
>
Hide border: 
<input
checked={false}
className="checkbox-label__input"
id="top-lang-hide-border"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
</label>
<label
htmlFor="top-lang-cache-seconds"
@@ -2329,84 +2065,6 @@ exports[`Addons should render Customize Top Skills Card 1`] = `
</div>
</CustomizeOptions>
</AddonsItem>
<AddonsItem
Options={
<CustomizeOptions
CustomizationOptions={
<CustomizeStreakStats
onUpdate={[Function]}
options={Object {}}
prefix="streak-stats"
/>
}
title="Customize Streak Stats Card"
/>
}
inputId="streak-stats"
onInputChange={[Function]}
>
<div
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
htmlFor="streak-stats"
>
<input
className="checkbox-label__input"
id="streak-stats"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
display github streak stats
</span>
</label>
<button
className="flex ml-3 focus:bg-gray-400"
id="streak-stats-open-btn"
onClick={[Function]}
style={
Object {
"outline": "none",
}
}
>
<ToolsIcon
className="transform scale-100 md:scale-125"
size={16}
verticalAlign="text-bottom"
>
<svg
aria-hidden="true"
className="transform scale-100 md:scale-125"
dangerouslySetInnerHTML={
Object {
"__html": "<path fill-rule=\\"evenodd\\" d=\\"M5.433 2.304A4.494 4.494 0 003.5 6c0 1.598.832 3.002 2.09 3.802.518.328.929.923.902 1.64v.008l-.164 3.337a.75.75 0 11-1.498-.073l.163-3.33c.002-.085-.05-.216-.207-.316A5.996 5.996 0 012 6a5.994 5.994 0 012.567-4.92 1.482 1.482 0 011.673-.04c.462.296.76.827.76 1.423v2.82c0 .082.041.16.11.206l.75.51a.25.25 0 00.28 0l.75-.51A.25.25 0 009 5.282V2.463c0-.596.298-1.127.76-1.423a1.482 1.482 0 011.673.04A5.994 5.994 0 0114 6a5.996 5.996 0 01-2.786 5.068c-.157.1-.209.23-.207.315l.163 3.33a.75.75 0 11-1.498.074l-.164-3.345c-.027-.717.384-1.312.902-1.64A4.496 4.496 0 0012.5 6a4.494 4.494 0 00-1.933-3.696c-.024.017-.067.067-.067.16v2.818a1.75 1.75 0 01-.767 1.448l-.75.51a1.75 1.75 0 01-1.966 0l-.75-.51A1.75 1.75 0 015.5 5.282V2.463c0-.092-.043-.142-.067-.159zm.01-.005z\\"></path>",
}
}
fill="currentColor"
height={16}
role="img"
style={
Object {
"display": "inline-block",
"userSelect": "none",
"verticalAlign": "text-bottom",
}
}
viewBox="0 0 16 16"
width={16}
/>
</ToolsIcon>
</button>
</div>
</AddonsItem>
<AddonsItem
inputChecked={false}
inputId="twitter-badge"
@@ -2416,19 +2074,15 @@ exports[`Addons should render Customize Top Skills Card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="twitter-badge"
>
<input
checked={false}
className="checkbox-label__input"
id="twitter-badge"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -2446,19 +2100,15 @@ exports[`Addons should render Customize Top Skills Card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="dev-dynamic-blogs"
>
<input
checked={false}
className="checkbox-label__input"
id="dev-dynamic-blogs"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -2476,19 +2126,15 @@ exports[`Addons should render Customize Top Skills Card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="medium-dynamic-blogs"
>
<input
checked="some-medium-blogs-value"
className="checkbox-label__input"
id="medium-dynamic-blogs"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -2506,19 +2152,15 @@ exports[`Addons should render Customize Top Skills Card 1`] = `
className="py-2 flex justify-start items-center text-sm sm:text-lg"
>
<label
className="checkbox-label flex items-center"
className="cursor-pointer flex items-center"
htmlFor="rss-dynamic-blogs"
>
<input
checked={false}
className="checkbox-label__input"
id="rss-dynamic-blogs"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<span
className="pl-4"
>
@@ -71,16 +71,17 @@ exports[`Donate renders correctly 1`] = `
Buy me a ko-fi
</a>
<a
className="flex items-center justify-evenly bg-white-500 text-white py-2 px-4 my-2 border border-solid"
className="flex items-center justify-evenly bg-blue-500 text-white py-2 px-4 my-2"
href="https://www.paypal.me/rahuldkjain/10"
rel="noreferrer"
target="_blank"
>
<img
alt="Donate rahuldkjain via paypal"
className="w-32 h-4"
src="https://cdn.worldvectorlogo.com/logos/paypal-2.svg"
className="w-6 h-6 mr-2"
src="https://www.vectorlogo.zone/logos/paypal/paypal-ar21.svg"
/>
Paypal
</a>
<a
className="flex items-center justify-evenly bg-orange-500 text-white py-2 px-4 my-2"
@@ -157,7 +157,7 @@ exports[`Footer component renders correctly 1`] = `
</strong>
</div>
<div
className="ml-2 sm:ml-0"
class="ml-2 sm:ml-0"
>
<a
aria-label="Discord of the community"
File diff suppressed because it is too large Load Diff
@@ -20,7 +20,7 @@ exports[`DisplayWork Preview renders correctly 1`] = `
<div
className="my-2"
>
[object Object]
[object Object]
<a
className="no-underline text-blue-700"
href="https://dummy.com"
@@ -35,7 +35,7 @@ exports[`DisplayWork Preview renders correctly with no link 1`] = `
<div
className="my-2"
>
[object Object]
[object Object]
<b>
readme-generator
</b>
@@ -52,7 +52,7 @@ exports[`DisplayWork Preview renders correctly with no project 1`] = `
<div
className="my-2"
>
[object Object]
[object Object]
<a
className="no-underline text-blue-700"
href="https://dummy.com"
@@ -86,7 +86,7 @@ exports[`GithubProfileTrophy Preview renders correctly with show true 1`] = `
<div
className="text-left my-2"
>
<a
href="https://github.com/ryo-ma/github-profile-trophy"
>
@@ -95,7 +95,7 @@ exports[`GithubProfileTrophy Preview renders correctly with show true 1`] = `
src="https://github-profile-trophy.vercel.app/?username="
/>
</a>
</div>
`;
@@ -254,7 +254,6 @@ exports[`Markdown Preview renders correctly 1`] = `
<SkillsPreview
skills={Object {}}
/>
<SupportPreview />
<div
className="block sm:flex sm:justify-center sm:items-start"
>
@@ -288,9 +287,6 @@ exports[`Markdown Preview renders correctly 1`] = `
}
show={false}
/>
<StreakStatsPreview
github=""
/>
</div>
</div>
`;
@@ -317,13 +313,13 @@ exports[`Skills Preview renders correctly 1`] = `
/>
<a
href="https://unity.com/"
key="unity"
rel="noreferrer"
target="_blank"
>
<img
alt="unity"
className="mb-4 mr-4 h-6 w-6 sm:h-10 sm:w-10"
key="unity"
src="https://www.vectorlogo.zone/logos/unity3d/unity3d-icon.svg"
/>
</a>
@@ -342,112 +338,112 @@ exports[`Social Preview renders correctly 1`] = `
/>
<DisplaySocial
base="https://codepen.io"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/codepen.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/codepen.svg"
username="dummy"
/>
<DisplaySocial
base="https://dev.to"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/devto.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/dev-dot-to.svg"
username=""
/>
<DisplaySocial
base="https://twitter.com"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/twitter.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/twitter.svg"
username=""
/>
<DisplaySocial
base="https://linkedin.com/in"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/linked-in-alt.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/linkedin.svg"
username=""
/>
<DisplaySocial
base="https://stackoverflow.com/users"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/stack-overflow.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/stackoverflow.svg"
username=""
/>
<DisplaySocial
base="https://codesandbox.com"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/codesandbox.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/codesandbox.svg"
username=""
/>
<DisplaySocial
base="https://kaggle.com"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/kaggle.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/kaggle.svg"
username=""
/>
<DisplaySocial
base="https://fb.com"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/facebook.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/facebook.svg"
username=""
/>
<DisplaySocial
base="https://instagram.com"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/instagram.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/instagram.svg"
username=""
/>
<DisplaySocial
base="https://dribbble.com"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/dribbble.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/dribbble.svg"
username=""
/>
<DisplaySocial
base="https://www.behance.net"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/behance.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/behance.svg"
username=""
/>
<DisplaySocial
base="https://medium.com"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/medium.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/medium.svg"
username=""
/>
<DisplaySocial
base="https://www.youtube.com/c"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/youtube.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/youtube.svg"
username=""
/>
<DisplaySocial
base="https://www.codechef.com/users"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.1.0/icons/codechef.svg"
username=""
/>
<DisplaySocial
base="https://www.hackerrank.com"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/hackerrank.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/codechef.svg"
username=""
/>
<DisplaySocial
base="https://codeforces.com/profile"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/codeforces.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/codeforces.svg"
username=""
/>
<DisplaySocial
base="https://www.leetcode.com"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/leet-code.svg"
username=""
/>
<DisplaySocial
base="https://www.hackerearth.com"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/hackerearth.svg"
base="https://www.hackerrank.com"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/hackerrank.svg"
username=""
/>
<DisplaySocial
base="https://auth.geeksforgeeks.org/user"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/geeks-for-geeks.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/geeksforgeeks.svg"
username=""
/>
<DisplaySocial
base="https://www.hackerearth.com"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/hackerearth.svg"
username=""
/>
<DisplaySocial
base="https://www.topcoder.com/members"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/topcoder.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/topcoder.svg"
username=""
/>
<DisplaySocial
base="https://www.leetcode.com"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/leetcode.svg"
username=""
/>
<DisplaySocial
base="https://discord.gg"
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/discord.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/discord.svg"
username=""
/>
<DisplaySocial
base=""
icon="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/rss.svg"
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/rss.svg"
username=""
/>
</div>
@@ -502,7 +498,7 @@ exports[`TwitterBadgePreview Preview renders correctly with show true 1`] = `
<div
className="text-left my-2"
>
<a
href="https://twitter.com/\${props.twitter}"
target="blank"
@@ -513,7 +509,7 @@ exports[`TwitterBadgePreview Preview renders correctly with show true 1`] = `
src="https://img.shields.io/twitter/follow/?logo=twitter&style=for-the-badge"
/>
</a>
</div>
`;
@@ -523,13 +519,13 @@ exports[`VisitorsBadge Preview renders correctly with show true 1`] = `
<div
className="text-left my-2"
>
<img
alt=""
className="h-4 sm:h-6"
src="https://komarev.com/ghpvc/?username=&label=Profile%20views&color=0e75b6&style=flat"
/>
</div>
`;
@@ -50,19 +50,15 @@ exports[`Skills renders correctly 1`] = `
key="javascript"
>
<label
className="checkbox-label flex items-center justify-start"
className="skillCheckboxLabel cursor-pointer flex items-center justify-start"
htmlFor="javascript"
>
<input
checked={true}
className="checkbox-label__input"
id="javascript"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<img
alt="javascript"
className="ml-4 w-8 h-8 sm:w-10 sm:h-10"
@@ -94,18 +90,14 @@ exports[`Skills renders correctly 1`] = `
key="react"
>
<label
className="checkbox-label flex items-center justify-start"
className="skillCheckboxLabel cursor-pointer flex items-center justify-start"
htmlFor="react"
>
<input
className="checkbox-label__input"
id="react"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<img
alt="react"
className="ml-4 w-8 h-8 sm:w-10 sm:h-10"
@@ -123,18 +115,14 @@ exports[`Skills renders correctly 1`] = `
key="svelte"
>
<label
className="checkbox-label flex items-center justify-start"
className="skillCheckboxLabel cursor-pointer flex items-center justify-start"
htmlFor="svelte"
>
<input
className="checkbox-label__input"
id="svelte"
onChange={[Function]}
type="checkbox"
/>
<span
class="checkbox-label__control"
/>
<img
alt="svelte"
className="ml-4 w-8 h-8 sm:w-10 sm:h-10"
+168 -216
View File
@@ -2,35 +2,23 @@ import React, { useState, useEffect } from "react"
import { withPrefix } from "gatsby"
import { latestBlogs } from "../utils/workflows"
import links from "../constants/page-links"
import {
isMediumUsernameValid,
isGitHubUsernameValid,
} from "../utils/validation"
import { ToolsIcon, XCircleIcon } from "@primer/octicons-react"
import { isMediumUsernameValid, isGitHubUsernameValid } from "../utils/validation"
import { ToolsIcon, XCircleIcon } from "@primer/octicons-react";
const AddonsItem = ({
inputId,
inputChecked,
onInputChange,
Options,
onIconClick,
...props
}) => {
const [open, setOpen] = useState(false)
const Icon = open ? XCircleIcon : ToolsIcon
const AddonsItem = ({ inputId, inputChecked, onInputChange, Options, onIconClick, ...props }) => {
const [open, setOpen] = useState(false);
const Icon = open ? XCircleIcon : ToolsIcon;
return (
<>
<div className="py-2 flex justify-start items-center text-sm sm:text-lg">
<label htmlFor={inputId} className="checkbox-label flex items-center">
<label htmlFor={inputId} className="cursor-pointer flex items-center">
<input
id={inputId}
type="checkbox"
className="checkbox-label__input"
id={inputId}
checked={inputChecked}
onChange={onInputChange}
/>
<span class="checkbox-label__control" />
<span className="pl-4">{props.children}</span>
</label>
{Options && (
@@ -46,8 +34,8 @@ const AddonsItem = ({
</div>
{Options && open && Options}
</>
)
}
);
};
const CustomizeOptions = ({ title, CustomizationOptions }) => (
<div
@@ -60,160 +48,143 @@ const CustomizeOptions = ({ title, CustomizationOptions }) => (
{CustomizationOptions}
</div>
</div>
)
);
const CustomizeBadge = ({ githubName, badgeOptions, onBadgeUpdate }) => {
const CustomizeBadge = ({githubName, badgeOptions, onBadgeUpdate}) => {
return (
<>
<label htmlFor="badge-style">
Style:&nbsp;
<select
id="badge-style"
onChange={e => onBadgeUpdate("badgeStyle", e.target.value)}
value={badgeOptions.badgeStyle}
>
<option value="flat">Flat</option>
<option value="flat-square">Flat Square</option>
<option value="plastic">Plastic</option>
</select>
</label>
<label htmlFor="badge-color">
Color:&nbsp;
<input
type="color"
id="badge-color"
defaultValue={`#${badgeOptions.badgeColor}`}
className="w-6"
onChange={e =>
onBadgeUpdate("badgeColor", e.target.value.replace("#", ""))
}
/>
</label>
<label htmlFor="badge-label-text">
Label Text:&nbsp;
<input
type="text"
id="badge-label-text"
placeholder="Profile views"
className="w-2/4 bg-gray-300 pl-2"
onChange={e => onBadgeUpdate("badgeLabel", e.target.value.trim())}
defaultValue={badgeOptions.badgeLabel}
/>
</label>
<span className="mt-2 flex items-center">
Preview:&nbsp;
{isGitHubUsernameValid(githubName) ? (
<img
src={
`https://komarev.com/ghpvc/` +
`?username=${githubName}` +
`&label=${encodeURI(badgeOptions.badgeLabel)}` +
`&color=${badgeOptions.badgeColor}` +
`&style=${badgeOptions.badgeStyle}`
}
alt="profile-visitors-count"
<label htmlFor="badge-style">Style:&nbsp;
<select
id="badge-style"
onChange={(e) => onBadgeUpdate('badgeStyle', e.target.value)}
value = {badgeOptions.badgeStyle}
>
<option value="flat">Flat</option>
<option value="flat-square">Flat Square</option>
<option value="plastic">Plastic</option>
</select>
</label>
<label htmlFor="badge-color">Color:&nbsp;
<input
type="color"
id="badge-color"
defaultValue={`#${badgeOptions.badgeColor}`}
className="w-6"
onChange={(e) => onBadgeUpdate('badgeColor', e.target.value.replace('#', ''))}
/>
) : (
<span className="text-xxs md:text-sm text-red-600">
Invalid GitHub username
</span>
)}
</span>
</label>
<label htmlFor="badge-label-text">Label Text:&nbsp;
<input
type="text"
id="badge-label-text"
placeholder="Profile views"
className="w-2/4 bg-gray-300 pl-2"
onChange={(e) => onBadgeUpdate('badgeLabel', e.target.value.trim())}
defaultValue={badgeOptions.badgeLabel}
/>
</label>
<span className="mt-2 flex items-center">
Preview:&nbsp;
{
isGitHubUsernameValid(githubName)?
<img
src={`https://komarev.com/ghpvc/`
+ `?username=${githubName}`
+ `&label=${encodeURI(badgeOptions.badgeLabel)}`
+ `&color=${badgeOptions.badgeColor}`
+ `&style=${badgeOptions.badgeStyle}`
}
/>
: <span className="text-xxs md:text-sm text-red-600">Invalid GitHub username</span>
}
</span>
</>
)
}
const CustomizeGithubStatsBase = ({ prefix, options, onUpdate }) => (
<>
<label htmlFor={`${prefix}-theme`}>
Theme:&nbsp;
<select
id={`${prefix}-theme`}
onChange={({ target: { value } }) => onUpdate("theme", value)}
defaultValue={options.theme}
>
<option value="none">none</option>
<option value="dark">Dark</option>
<option value="radical">Radical</option>
<option value="merko">Merko</option>
<option value="gruvbox">Gruvbox</option>
<option value="tokyonight">Tokyonight</option>
<option value="onedark">Onedark</option>
<option value="cobalt">Cobalt</option>
<option value="synthwave">Synthwave</option>
<option value="highcontrast">Highcontrast</option>
<option value="dracula">Dracula</option>
</select>
</label>
<label htmlFor={`${prefix}-title-color`}>
Title Color:&nbsp;
<input
type="color"
id={`${prefix}-title-color`}
defaultValue={`#${options.titleColor}`}
className="w-6"
onChange={e => onUpdate("titleColor", e.target.value.replace("#", ""))}
/>
</label>
<label htmlFor={`${prefix}-text-color`}>
Text Color:&nbsp;
<input
type="color"
id={`${prefix}-text-color`}
defaultValue={`#${options.textColor}`}
className="w-6"
onChange={e => onUpdate("textColor", e.target.value.replace("#", ""))}
/>
</label>
<label htmlFor={`${prefix}-bg-color`}>
Background Color:&nbsp;
<input
type="color"
id={`${prefix}-bg-color`}
defaultValue={`#${options.bgColor}`}
className="w-6"
onChange={e => onUpdate("bgColor", e.target.value.replace("#", ""))}
/>
</label>
<label htmlFor={`${prefix}-hide-border`} className="checkbox-label">
Hide border:&nbsp;
<input
id={`${prefix}-hide-border`}
type="checkbox"
className="checkbox-label__input"
checked={options.hideBorder}
onChange={e => onUpdate("hideBorder", e.target.checked)}
/>
<span class="checkbox-label__control" />
</label>
<label htmlFor={`${prefix}-cache-seconds`}>
Cache Seconds:&nbsp;
<input
id={`${prefix}-cache-seconds`}
type="number"
min={1800}
max={86400}
placeholder={1800}
defaultValue={options.cacheSeconds}
onChange={e => onUpdate("cacheSeconds", e.target.value)}
/>
</label>
<label htmlFor={`${prefix}-locale`}>
Locale:&nbsp;
<input
id={`${prefix}-locale`}
type="text"
placeholder="en"
defaultValue={options.locale}
onChange={e => onUpdate("locale", e.target.value)}
size="2"
/>
</label>
</>
)
const CustomizeGithubStatsBase = ({ prefix, options, onUpdate }) =>
<>
<label htmlFor={`${prefix}-theme`}>Theme:&nbsp;
<select
id={`${prefix}-theme`}
onChange={({target: { value }}) => onUpdate("theme", value)}
defaultValue={options.theme}
>
<option value="none">none</option>
<option value="dark">Dark</option>
<option value="radical">Radical</option>
<option value="merko">Merko</option>
<option value="gruvbox">Gruvbox</option>
<option value="tokyonight">Tokyonight</option>
<option value="onedark">Onedark</option>
<option value="cobalt">Cobalt</option>
<option value="synthwave">Synthwave</option>
<option value="highcontrast">Highcontrast</option>
<option value="dracula">Dracula</option>
</select>
</label>
<label htmlFor={`${prefix}-title-color`}>Title Color:&nbsp;
<input
type="color"
id={`${prefix}-title-color`}
defaultValue={`#${options.titleColor}`}
className="w-6"
onChange={(e) => onUpdate('titleColor', e.target.value.replace('#', ''))}
/>
</label>
<label htmlFor={`${prefix}-text-color`}>Text Color:&nbsp;
<input
type="color"
id={`${prefix}-text-color`}
defaultValue={`#${options.textColor}`}
className="w-6"
onChange={(e) => onUpdate('textColor', e.target.value.replace('#', ''))}
/>
</label>
<label htmlFor={`${prefix}-bg-color`}>Background Color:&nbsp;
<input
type="color"
id={`${prefix}-bg-color`}
defaultValue={`#${options.bgColor}`}
className="w-6"
onChange={(e) => onUpdate('bgColor', e.target.value.replace('#', ''))}
/>
</label>
<label htmlFor={`${prefix}-hide-border`}>Hide border:&nbsp;
<input
id={`${prefix}-hide-border`}
type="checkbox"
checked={options.hideBorder}
onChange={(e) => onUpdate('hideBorder', e.target.checked)}
/>
</label>
<label htmlFor={`${prefix}-cache-seconds`}>Cache Seconds:&nbsp;
<input
id={`${prefix}-cache-seconds`}
type="number"
min={1800}
max={86400}
placeholder={1800}
defaultValue={options.cacheSeconds}
onChange={(e) => onUpdate('cacheSeconds', e.target.value)}
/>
</label>
<label htmlFor={`${prefix}-locale`}>Locale:&nbsp;
<input
id={`${prefix}-locale`}
type="text"
placeholder="en"
defaultValue={options.locale}
onChange={(e) => onUpdate('locale', e.target.value)}
size="2"
/>
</label>
</>
const CustomizeStreakStats = ({ prefix, options, onUpdate }) => (
<>
@@ -233,48 +204,48 @@ const CustomizeStreakStats = ({ prefix, options, onUpdate }) => (
)
const Addons = props => {
const [debounce, setDebounce] = useState(undefined)
const [debounce, setDebounce] = useState(undefined);
const [badgeOptions, setBadgeOptions] = useState({
badgeStyle: props.data.badgeStyle,
badgeColor: props.data.badgeColor,
badgeLabel: props.data.badgeLabel,
})
badgeStyle: props.data.badgeStyle,
badgeColor: props.data.badgeColor,
badgeLabel: props.data.badgeLabel
});
useEffect(() => {
setBadgeOptions({
badgeStyle: props.data.badgeStyle,
badgeColor: props.data.badgeColor,
badgeLabel: props.data.badgeLabel,
badgeStyle: props.data.badgeStyle,
badgeColor: props.data.badgeColor,
badgeLabel: props.data.badgeLabel
})
}, [props.data.badgeStyle, props.data.badgeColor, props.data.badgeLabel])
const [githubStatsOptions, setGithubStatsOptions] = useState({
...props.data.githubStatsOptions,
})
});
useEffect(() => {
setGithubStatsOptions({
...props.data.githubStatsOptions,
...props.data.githubStatsOptions
})
}, [props.data.githubStatsOptions])
const [topLanguagesOptions, setTopLanguagesOptions] = useState({
...props.data.topLanguagesOptions,
})
});
useEffect(() => {
setTopLanguagesOptions({
...props.data.topLanguagesOptions,
...props.data.topLanguagesOptions
})
}, [props.data.topLanguagesOptions])
const [streakStatsOptions, setStreakStatsOptions] = useState({
...props.data.streakStatsOptions,
})
});
useEffect(() => {
setStreakStatsOptions({
...props.data.streakStatsOptions,
...props.data.streakStatsOptions
})
}, [props.data.streakStatsOptions])
@@ -308,37 +279,30 @@ const Addons = props => {
const onBadgeUpdate = (option, value) => {
const callback = () => {
let newVal =
option === "badgeLabel" && value === "" ? "Profile views" : value
setBadgeOptions({ ...badgeOptions, [option]: newVal })
props.handleDataChange(option, { target: { value: newVal } })
let newVal = (option==='badgeLabel' && value==='')?'Profile views':value;
setBadgeOptions({...badgeOptions, [option]: newVal});
props.handleDataChange(option, {target: {value: newVal}})
}
clearTimeout(debounce)
setDebounce(setTimeout(callback, 300))
clearTimeout(debounce);
setDebounce(setTimeout(callback, 300));
}
const onStatsUpdate = (option, value) => {
const newStatsOptions = { ...githubStatsOptions, [option]: value }
const newStatsOptions = {...githubStatsOptions, [option]: value}
setGithubStatsOptions(newStatsOptions)
props.handleDataChange("githubStatsOptions", {
target: { value: newStatsOptions },
})
props.handleDataChange("githubStatsOptions", {target: {value: newStatsOptions}})
}
const onTopLangUpdate = (option, value) => {
const newLangOptions = { ...topLanguagesOptions, [option]: value }
const newLangOptions = {...topLanguagesOptions, [option]: value}
setTopLanguagesOptions(newLangOptions)
props.handleDataChange("topLanguagesOptions", {
target: { value: newLangOptions },
})
props.handleDataChange("topLanguagesOptions", {target: {value: newLangOptions}})
}
const onStreakStatsUpdate = (option, value) => {
const newStreakStatsOptions = { ...streakStatsOptions, [option]: value }
const newStreakStatsOptions = {...streakStatsOptions, [option]: value}
setStreakStatsOptions(newStreakStatsOptions)
props.handleDataChange("streakStatsOptions", {
target: { value: newStreakStatsOptions },
})
props.handleDataChange("streakStatsOptions", {target: {value: newStreakStatsOptions}})
}
return (
@@ -355,7 +319,7 @@ const Addons = props => {
title="Customize Badge"
CustomizationOptions={
<CustomizeBadge
githubName={props.social.github}
githubName={props.social.github}
badgeOptions={badgeOptions}
onBadgeUpdate={onBadgeUpdate}
/>
@@ -380,11 +344,7 @@ const Addons = props => {
<CustomizeOptions
title="Customize Github Stats Card"
CustomizationOptions={
<CustomizeGithubStatsBase
prefix="stats"
options={githubStatsOptions}
onUpdate={onStatsUpdate}
/>
<CustomizeGithubStatsBase prefix="stats" options={githubStatsOptions} onUpdate={onStatsUpdate}/>
}
/>
}
@@ -399,11 +359,7 @@ const Addons = props => {
<CustomizeOptions
title="Customize Top Skills Card"
CustomizationOptions={
<CustomizeGithubStatsBase
prefix="top-lang"
options={topLanguagesOptions}
onUpdate={onTopLangUpdate}
/>
<CustomizeGithubStatsBase prefix="top-lang" options={topLanguagesOptions} onUpdate={onTopLangUpdate}/>
}
/>
}
@@ -418,11 +374,7 @@ const Addons = props => {
<CustomizeOptions
title="Customize Streak Stats Card"
CustomizationOptions={
<CustomizeStreakStats
prefix="streak-stats"
options={streakStatsOptions}
onUpdate={onStreakStatsUpdate}
/>
<CustomizeStreakStats prefix="streak-stats" options={streakStatsOptions} onUpdate={onStreakStatsUpdate}/>
}
/>
}
@@ -469,7 +421,7 @@ const Addons = props => {
<span
id="blog-post-worklow-span"
onClick={blogPostPorkflow}
onKeyDown={e => e.keyCode === 13 && blogPostPorkflow()}
onKeyDown={(e) => e.keyCode === 13 && blogPostPorkflow()}
role="button"
tabIndex="0"
style={{ cursor: "pointer", color: "#002ead" }}
+2 -2
View File
@@ -10,9 +10,9 @@ import { act } from "react-dom/test-utils"
const Header = props => {
const shouldRequestStats = () => {
const isFirstRequest = stats.starsCount === 0
const isVisible = window.document.visibilityState === "visible"
const isVisible = window.document.visibilityState === 'visible'
const hasFocus = window.document.hasFocus()
return isFirstRequest || (isVisible && hasFocus)
return isFirstRequest || isVisible && hasFocus
}
const fetchData = async () => {
+10 -13
View File
@@ -177,7 +177,7 @@ const DisplaySkills = props => {
if (props.skills[skill]) {
listChosenSkills.push(
`
<a href="${skillWebsites[skill]}" target="_blank" rel="noreferrer">
<a href="${skillWebsites[skill]}" target="_blank">
<img src="${icons[skill]}" alt="${skill}" width="40" height="40"/>
</a>
`
@@ -266,9 +266,6 @@ const DisplaySupport = props => {
{props.support.buyMeACoffee &&
`<a href="https://www.buymeacoffee.com/${props.support.buyMeACoffee}">
<img align="left" src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" height="50" width="210" alt="${props.support.buyMeACoffee}" /></a>`}
{props.support.buyMeAKofi &&
`<a href="https://ko-fi.com/${props.support.buyMeAKofi}">
<img align="left" src="https://cdn.ko-fi.com/cdn/kofi3.png?v=3" height="50" width="210" alt="${props.support.buyMeAKofi}" /></a>`}
{`</p><br><br>`}
<br />
<br />
@@ -279,8 +276,8 @@ const DisplaySupport = props => {
}
const Markdown = props => {
const icon_base_url =
"https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/"
"https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/";
return (
<div id="markdown-content" className="break-words">
<>
@@ -395,7 +392,7 @@ const Markdown = props => {
<>
<DisplaySocial
base="https://dev.to"
icon={icon_base_url + "devto.svg"}
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/dev-dot-to.svg"
username={props.social.dev}
/>
</>
@@ -408,7 +405,7 @@ const Markdown = props => {
</>
<>
<DisplaySocial
base="https://linkedin.com/in"
base="https://linkedin.com/in"
icon={icon_base_url + "linked-in-alt.svg"}
username={props.social.linkedin}
/>
@@ -423,7 +420,7 @@ const Markdown = props => {
<>
<DisplaySocial
base="https://codesandbox.com"
icon={icon_base_url + "codesandbox.svg"}
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/codesandbox.svg"
username={props.social.codesandbox}
/>
</>
@@ -493,21 +490,21 @@ const Markdown = props => {
<>
<DisplaySocial
base="https://codeforces.com/profile"
icon={icon_base_url + "codeforces.svg"}
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/codeforces.svg"
username={props.social.codeforces}
/>
</>
<>
<DisplaySocial
base="https://www.leetcode.com"
icon={icon_base_url + "leet-code.svg"}
icon={icon_base_url+"leet-code.svg"}
username={props.social.leetcode}
/>
</>
<>
<DisplaySocial
base="https://www.hackerearth.com"
icon={icon_base_url + "hackerearth.svg"}
icon={icon_base_url+"hackerearth.svg"}
username={props.social.hackerearth}
/>
</>
@@ -521,7 +518,7 @@ const Markdown = props => {
<>
<DisplaySocial
base="https://www.topcoder.com/members"
icon={icon_base_url + "topcoder.svg"}
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/topcoder.svg"
username={props.social.topcoder}
/>
</>
+25 -43
View File
@@ -122,10 +122,10 @@ export const DisplaySocial = props => {
export const SocialPreview = props => {
let viewSocial = false
const icon_base_url =
"https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/"
const icon_base_url =
"https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/";
Object.keys(props.social).forEach(key => {
if (props.social[key] && key !== "github") viewSocial = true
if (props.social[key] && key != "github") viewSocial = true
})
return (
<div className="flex justify-start items-end flex-wrap">
@@ -140,7 +140,7 @@ export const SocialPreview = props => {
<>
<DisplaySocial
base="https://dev.to"
icon={icon_base_url + "devto.svg"}
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/dev-dot-to.svg"
username={props.social.dev}
/>
</>
@@ -153,7 +153,7 @@ export const SocialPreview = props => {
</>
<>
<DisplaySocial
base="https://linkedin.com/in"
base="https://linkedin.com/in"
icon={icon_base_url + "linked-in-alt.svg"}
username={props.social.linkedin}
/>
@@ -168,7 +168,7 @@ export const SocialPreview = props => {
<>
<DisplaySocial
base="https://codesandbox.com"
icon={icon_base_url + "codesandbox.svg"}
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/codesandbox.svg"
username={props.social.codesandbox}
/>
</>
@@ -238,21 +238,21 @@ export const SocialPreview = props => {
<>
<DisplaySocial
base="https://codeforces.com/profile"
icon={icon_base_url + "codeforces.svg"}
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/codeforces.svg"
username={props.social.codeforces}
/>
</>
<>
<DisplaySocial
base="https://www.leetcode.com"
icon={icon_base_url + "leet-code.svg"}
icon={icon_base_url+"leet-code.svg"}
username={props.social.leetcode}
/>
</>
<>
<DisplaySocial
base="https://www.hackerearth.com"
icon={icon_base_url + "hackerearth.svg"}
icon={icon_base_url+"hackerearth.svg"}
username={props.social.hackerearth}
/>
</>
@@ -266,7 +266,7 @@ export const SocialPreview = props => {
<>
<DisplaySocial
base="https://www.topcoder.com/members"
icon={icon_base_url + "topcoder.svg"}
icon="https://cdn.jsdelivr.net/npm/simple-icons@3.0.1/icons/topcoder.svg"
username={props.social.topcoder}
/>
</>
@@ -315,11 +315,7 @@ export const TwitterBadgePreview = props => {
return (
<div className="text-left my-2">
{" "}
<a
href="https://twitter.com/${props.twitter}"
target="_blank"
rel="noreferrer"
>
<a href="https://twitter.com/${props.twitter}" target="blank">
<img className="h-4 sm:h-6" src={link} alt={props.twitter} />
</a>{" "}
</div>
@@ -417,38 +413,24 @@ export const SupportPreview = props => {
viewSupport = true
}
})
return props.support.buyMeACoffee || props.support.buyMeAKofi ? (
<div className="flex flex-wrap justify-start items-center">
return (
<div className="mb-4">
<SectionTitle label="Support:" visible={viewSupport} />
{props.support.buyMeACoffee && (
<a
href={`https://www.buymeacoffee.com/` + props.support.buyMeACoffee}
target="_blank"
rel="noreferrer"
>
<img
src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png"
alt="Buy Me A Coffee"
className="mb-4 mr-4 w-36 h-8 sm:w-52 sm:h-12"
/>
</a>
)}
{props.support.buyMeAKofi && (
<a
href={`https://ko-fi.com/` + props.support.buyMeAKofi}
target="_blank"
rel="noreferrer"
>
<img
src="https://cdn.ko-fi.com/cdn/kofi3.png?v=3"
alt="Buy Me A Ko-fi"
className="mb-4 mr-4 w-36 h-8 sm:w-52 sm:h-12"
/>
</a>
<div style={{ width: "210px" }}>
<a
href={`https://www.buymeacoffee.com/` + props.support.buyMeACoffee}
target="_blank"
>
<img
src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png"
alt="Buy Me A Coffee"
className="w-36 h-8 sm:w-52 sm:h-12"
/>
</a>
</div>
)}
</div>
) : (
""
)
}
+2 -4
View File
@@ -12,16 +12,14 @@ const Skills = props => {
<div className="w-1/3 sm:w-1/4 my-6" key={skill}>
<label
htmlFor={skill}
className="checkbox-label flex items-center justify-start"
className="skillCheckboxLabel cursor-pointer flex items-center justify-start"
>
<input
id={skill}
type="checkbox"
className="checkbox-label__input"
checked={props.skills[skill]}
onChange={event => props.handleSkillsChange(skill)}
/>
<span class="checkbox-label__control" />
<img
className="ml-4 w-8 h-8 sm:w-10 sm:h-10"
src={icons[skill]}
@@ -103,4 +101,4 @@ const Skills = props => {
)
}
export default Skills
export default Skills
+3 -17
View File
@@ -7,34 +7,20 @@ const Support = props => {
Support
</div>
<div className="flex flex-wrap justify-start items-center">
<div className="w-1/2 flex justify-start items-center text-xxs sm:text-lg py-4 pr-2 sm:pr-0">
<div className="w-2/5 flex justify-between items-center text-xxs sm:text-lg py-4 pr-2 sm:pr-0">
<img
src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png"
className="w-36 h-8 sm:w-52 sm:h-12 mr-1 sm:mr-4"
className="w-36 h-8 sm:w-52 sm:h-12"
alt="buymeacoffee"
/>
<input
id="buy-me-a-coffee"
placeholder="buymeacoffee username"
className="outline-none placeholder-gray-700 w-32 sm:w-1/2 border-t-0 border-l-0 border-r-0 border solid border-gray-900 py-1 px-1 focus:border-blue-700"
className="outline-none placeholder-gray-700 w-32 sm:w-1/2 border-t-0 border-l-0 border-r-0 border solid border-gray-900 py-1 px-1 sm:px-2 ml-2 sm:ml-0 focus:border-blue-700"
value={props.support.buyMeACoffee || ""}
onChange={event => props.handleSupportChange("buyMeACoffee", event)}
/>
</div>
<div className="w-1/2 flex justify-start items-center text-xxs sm:text-lg py-4 pr-2 sm:pr-0">
<img
src="https://cdn.ko-fi.com/cdn/kofi3.png?v=3"
className="w-36 h-8 sm:w-52 sm:h-12 mr-1 sm:mr-4"
alt="buymeakofi"
/>
<input
id="buy-me-a-kofi"
placeholder="Ko-fi username"
className="outline-none placeholder-gray-700 w-32 sm:w-1/2 border-t-0 border-l-0 border-r-0 border solid border-gray-900 py-1 px-1 sm:px-2 ml-2 sm:ml-0 focus:border-blue-700"
value={props.support.buyMeAKofi || ""}
onChange={event => props.handleSupportChange("buyMeAKofi", event)}
/>
</div>
</div>
</div>
)
+9 -30
View File
@@ -22,7 +22,6 @@ const categorizedSkills = {
"coffeescript",
"elixir",
"erlang",
"nim",
],
},
@@ -68,7 +67,6 @@ const categorizedSkills = {
"hadoop",
"nginx",
"openresty",
"nestjs",
],
},
@@ -89,14 +87,7 @@ const categorizedSkills = {
ai: {
title: "AI/ML",
skills: [
"tensorflow",
"pytorch",
"pandas",
"seaborn",
"opencv",
"scikit_learn",
],
skills: ["tensorflow", "pytorch", "opencv", "scikit_learn"],
},
database: {
@@ -215,7 +206,7 @@ const categorizedSkills = {
automation: {
title: "Automation",
skills: ["zapier", "ifttt"],
skills: ["zapier"],
},
other: {
@@ -231,7 +222,8 @@ const icons = {
"https://raw.githubusercontent.com/devicons/devicon/master/icons/react/react-original-wordmark.svg",
angularjs:
"https://raw.githubusercontent.com/devicons/devicon/master/icons/angularjs/angularjs-original-wordmark.svg",
angular: "https://angular.io/assets/images/logos/angular/angular.svg",
angular:
"https://angular.io/assets/images/logos/angular/angular.svg",
aws:
"https://raw.githubusercontent.com/devicons/devicon/master/icons/amazonwebservices/amazonwebservices-original-wordmark.svg",
android:
@@ -241,8 +233,7 @@ const icons = {
"https://raw.githubusercontent.com/devicons/devicon/master/icons/backbonejs/backbonejs-original-wordmark.svg",
bootstrap:
"https://raw.githubusercontent.com/devicons/devicon/master/icons/bootstrap/bootstrap-plain-wordmark.svg",
c:
"https://raw.githubusercontent.com/devicons/devicon/master/icons/c/c-original.svg",
c: "https://raw.githubusercontent.com/devicons/devicon/master/icons/c/c-original.svg",
canvasjs:
"https://raw.githubusercontent.com/Hardik0307/Hardik0307/master/assets/canvasjs-charts.svg",
coffeescript:
@@ -266,8 +257,7 @@ const icons = {
"https://raw.githubusercontent.com/devicons/devicon/master/icons/electron/electron-original.svg",
express:
"https://raw.githubusercontent.com/devicons/devicon/master/icons/express/express-original-wordmark.svg",
go:
"https://raw.githubusercontent.com/devicons/devicon/master/icons/go/go-original.svg",
go: "https://raw.githubusercontent.com/devicons/devicon/master/icons/go/go-original.svg",
graphql: "https://www.vectorlogo.zone/logos/graphql/graphql-icon.svg",
gulp:
"https://raw.githubusercontent.com/devicons/devicon/master/icons/gulp/gulp-plain.svg",
@@ -287,13 +277,12 @@ const icons = {
"https://raw.githubusercontent.com/devicons/devicon/master/icons/mongodb/mongodb-original-wordmark.svg",
mysql:
"https://raw.githubusercontent.com/devicons/devicon/master/icons/mysql/mysql-original-wordmark.svg",
nestjs:
"https://raw.githubusercontent.com/devicons/devicon/master/icons/nestjs/nestjs-plain.svg",
nginx:
"https://raw.githubusercontent.com/devicons/devicon/master/icons/nginx/nginx-original.svg",
nodejs:
"https://raw.githubusercontent.com/devicons/devicon/master/icons/nodejs/nodejs-original-wordmark.svg",
openresty: "https://openresty.org/images/logo.png",
openresty:
"https://openresty.org/images/logo.png",
oracle:
"https://raw.githubusercontent.com/devicons/devicon/master/icons/oracle/oracle-original.svg",
photoshop:
@@ -353,9 +342,6 @@ const icons = {
"https://www.vectorlogo.zone/logos/apache_hadoop/apache_hadoop-icon.svg",
bash: "https://www.vectorlogo.zone/logos/gnu_bash/gnu_bash-icon.svg",
pytorch: "https://www.vectorlogo.zone/logos/pytorch/pytorch-icon.svg",
pandas:
"https://raw.githubusercontent.com/devicons/devicon/2ae2a900d2f041da66e950e4d48052658d850630/icons/pandas/pandas-original.svg",
seaborn: "https://seaborn.pydata.org/_images/logo-mark-lightbg.svg",
opencv: "https://www.vectorlogo.zone/logos/opencv/opencv-icon.svg",
illustrator:
"https://www.vectorlogo.zone/logos/adobe_illustrator/adobe_illustrator-icon.svg",
@@ -390,7 +376,7 @@ const icons = {
gridsome: "https://www.vectorlogo.zone/logos/gridsome/gridsome-icon.svg",
nuxtjs: "https://www.vectorlogo.zone/logos/nuxtjs/nuxtjs-icon.svg",
jekyll: "https://www.vectorlogo.zone/logos/jekyllrb/jekyllrb-icon.svg",
nextjs: "https://cdn.worldvectorlogo.com/logos/nextjs-2.svg",
nextjs: "https://cdn.worldvectorlogo.com/logos/nextjs-3.svg",
reactnative: "https://reactnative.dev/img/header_logo.svg",
mariadb: "https://www.vectorlogo.zone/logos/mariadb/mariadb-icon.svg",
cockroachdb: "https://cdn.worldvectorlogo.com/logos/cockroachdb.svg",
@@ -448,10 +434,8 @@ const icons = {
apachecordova:
"https://www.vectorlogo.zone/logos/apache_cordova/apache_cordova-icon.svg",
zapier: "https://www.vectorlogo.zone/logos/zapier/zapier-icon.svg",
ifttt: "https://www.vectorlogo.zone/logos/ifttt/ifttt-ar21.svg",
postman: "https://www.vectorlogo.zone/logos/getpostman/getpostman-icon.svg",
erlang: "https://www.vectorlogo.zone/logos/erlang/erlang-official.svg",
nim: "https://www.vectorlogo.zone/logos/nim-lang/nim-lang-icon.svg",
sqlite: "https://www.vectorlogo.zone/logos/sqlite/sqlite-icon.svg",
mssql: "https://www.svgrepo.com/show/303229/microsoft-sql-server-logo.svg",
middleman:
@@ -496,7 +480,6 @@ const skillWebsites = {
meteor: "https://www.meteor.com/",
mongodb: "https://www.mongodb.com/",
mysql: "https://www.mysql.com/",
nestjs: "https://nestjs.com/",
nginx: "https://www.nginx.com",
nodejs: "https://nodejs.org",
openresty: "https://openresty.org/",
@@ -537,8 +520,6 @@ const skillWebsites = {
hadoop: "https://hadoop.apache.org/",
bash: "https://www.gnu.org/software/bash/",
pytorch: "https://pytorch.org/",
pandas: "https://pandas.pydata.org/",
seaborn: "https://seaborn.pydata.org/",
opencv: "https://opencv.org/",
illustrator: "https://www.adobe.com/in/products/illustrator.html",
figma: "https://www.figma.com/",
@@ -602,7 +583,6 @@ const skillWebsites = {
heroku: "https://heroku.com",
appwrite: "https://appwrite.io",
zapier: "https://zapier.com",
ifttt: "https://ifttt.com/",
elixir: "https://elixir-lang.org",
travisci: "https://travis-ci.org",
apachecordova: "https://cordova.apache.org/",
@@ -610,7 +590,6 @@ const skillWebsites = {
mssql: "https://www.microsoft.com/en-us/sql-server",
postman: "https://postman.com",
erlang: "https://www.erlang.org/",
nim: "https://nim-lang.org/",
middleman: "https://middlemanapp.com/",
}
-9
View File
@@ -1,9 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.3.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 24 12" style="enable-background:new 0 0 24 12;" xml:space="preserve">
<style type="text/css">
.st0{fill:#FF4A00;}
</style>
<path d="M.837 2.756h6.488v4.062H.837z" fill="#09f"/><path d="M.837 6.818H4.9v2.427H.837z" fill="#f1422a"/><path d="M4.9 6.818h2.427v2.427H4.9z" fill="#333"/><path d="M8.168 3.96h1.298v4.08H8.168zm7.418 0H13.36v1.298h.927V8.04h1.298V5.258h.927V3.96zm3.524 0h-2.226v1.298h.927V8.04H19.1V5.258h.927V3.96zm3.524 0h-2.226v1.298h.927V8.04h1.298V5.258h.927V3.96zM13 5.258V3.96h-2.967v4.08h1.298V6.927h1.113V5.63H11.32v-.37z" fill="#09f"/>
</svg>

Before

Width:  |  Height:  |  Size: 839 B

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

@@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128"><path fill="#DF234F" d="M75.4.3c-.9 0-1.8.2-2.6.5 1.7 1.1 2.6 2.6 3.1 4.3 0 .2.1.4.1.6 0 .2.1.4.1.6.1 2.9-.8 3.3-1.4 5-1 2.2-.7 4.6.5 6.5.1.2.2.5.4.7-1.3-8.4 5.7-9.6 7-12.2.1-2.3-1.8-3.8-3.3-4.9C77.8.5 76.6.3 75.4.3zm10.5 1.8c-.1.8 0 .6-.1 1 0 .3 0 .6-.1.9-.1.3-.1.5-.2.8-.1.3-.2.5-.3.8-.1.2-.2.4-.3.7-.1.1-.2.3-.3.4-.1.1-.1.2-.2.3-.2.2-.3.5-.5.7l-.6.6c-.2.2-.4.4-.6.5-.7.5-1.5.9-2.2 1.4-.2.2-.5.3-.7.5-.2.2-.4.3-.6.5l-.6.6c-.2.2-.4.4-.5.7-.2.2-.3.5-.5.7-.1.3-.2.5-.4.8-.1.3-.2.5-.3.8-.1.3-.2.6-.2.8 0 .1 0 .3-.1.4 0 .1 0 .3-.1.4v1.4c0 .3 0 .5.1.8 0 .3.1.5.2.8.1.3.2.5.3.8.1.2.2.3.2.5l-7.6-2.9c-1.3-.4-2.5-.7-3.8-1-.7-.2-1.4-.3-2.1-.5-2-.4-4-.7-6-.9h-.2c-2-.2-3.9-.3-5.9-.3-1.5 0-2.9.1-4.3.2-2 .1-4 .4-6 .7l-1.5.3c-1 .2-2 .4-3 .7-.5.1-1 .3-1.5.4-.5.2-1 .4-1.4.6-.4.2-.7.3-1.1.5-.1 0-.1 0-.2.1-.3.2-.6.3-.9.5-.1 0-.2.1-.2.1-.4.2-.7.4-1 .5-.2.1-.5.2-.7.3-.1.1-.2.1-.3.2-.3.2-.6.3-.9.5-.3.2-.6.3-.8.5-.2.2-.5.3-.7.5 0 0-.1 0-.1.1-.2.1-.4.3-.6.5l-.1.1c-.2.1-.3.3-.5.4-.1 0-.1.1-.2.1-.2.1-.3.3-.5.4 0 .1-.1.1-.1.1l-.6.6-.1.1-.6.6s0 .1-.1.1l-.5.5c-.1.1-.2.1-.2.2l-.6.6c0 .1-.1.1-.1.2l-.8.8-.1.1c-.5.6-1.1 1.1-1.7 1.6-.6.5-1.2 1-1.9 1.5s-1.3.9-2 1.3-1.4.7-2.1 1c-.7.3-1.4.6-2.1.8-1.4.3-2.8.9-4 1 0-.5-.3-.4-.6-.4-.3.1-.6.1-.8.2-.3.1-.5.2-.8.3-.3.1-.5.2-.8.4-.2.2-.5.3-.7.5-.2.2-.5.4-.7.6-.2.2-.5.4-.7.6-.2.2-.4.4-.6.7-.2.3-.4.5-.5.8-.2.2-.3.5-.5.8-.1.3-.3.6-.4.9l-.3.9c-.1.3-.1.5-.2.8v.1c-.1.3-.1.7-.1.9.1-.1.1.1.1.3v.4c0 .2.1.4.1.6.1.2.1.4.2.6.1.2.2.4.4.6.1.2.3.4.4.6.2.2.4.4.6.5.2.2.4.4.6.5.8.7 1 .9 2 1.5.2.1.3.2.5.3h.1v.2c0 .3.1.5.2.8.1.3.2.6.3.8l.3.6c0 .1.1.1.1.2.1.3.3.5.4.7.2.2.3.5.5.7l.6.6.6.6H8c.2.2.4.3.6.5.2.2.5.3.7.4.2.1.5.3.8.4.2.1.4.2.7.2 0 0 .1 0 .1.1.1 0 .3.1.4.1-.1 1.8-.1 3.5.1 4.1.3.7 1.8-1.4 3.2-3.7-.2 2.3-.3 5 0 5.8.4.8 2.3-1.8 4.1-4.6 23.4-5.4 44.8 10.8 47.1 33.7-.4-3.6-4.8-5.6-6.9-5.1-1 2.4-2.7 5.6-5.4 7.5.2-2.2.1-4.4-.3-6.6-.7 3-2.1 5.9-4.1 8.3-3.1.2-6.3-1.3-7.9-3.6-.1-.1-.2-.3-.3-.4-.1-.2-.2-.5-.3-.7-.1-.2-.2-.5-.2-.7v-.7-.5c0-.2.1-.5.2-.7.1-.2.1-.5.2-.7.1-.2.2-.5.4-.7.6-1.6.6-2.9-.5-3.6l-.6-.3c-.1 0-.3-.1-.4-.1-.1 0-.2-.1-.3-.1-.2-.1-.5-.1-.7-.2-.2-.1-.5-.1-.7-.1-.2 0-.5-.1-.7-.1h-.5c-.3 0-.5 0-.7.1-.2 0-.5.1-.7.1-.2.1-.5.1-.7.2-.2.1-.4.2-.7.3l-.6.3c-7.7 5-3.1 16.8 2.1 20.2-2 .4-4 .8-4.6 1.2l-.1.1c1.4.9 2.9 1.6 4.5 2.2 2.1.7 4.4 1.3 5.4 1.6 2.7.6 5.5.8 8.3.6 14.6-1 26.6-12.2 28.8-26.8.1.3.1.6.2.9.1.6.2 1.2.3 1.9.1.3.1.6.1.9v.1c0 .3.1.6.1.9 0 .4.1.7.1 1.1V91.6c0 .3-.1.5-.1.8v.3c0 .3-.1.6-.1 1-.1.3-.1.6-.2.9v.1c-.1.3-.1.6-.2.9v.1c-.1.3-.1.6-.2.9v.1l-.3.9v.1c-.1.3-.2.7-.3 1-.1.3-.2.6-.4 1-.1.3-.2.7-.4 1-.1.3-.3.6-.4 1-.1.3-.3.6-.4.9 0 .1-.1.2-.1.2s0 .1-.1.1c-2.1 4.3-5.3 8.1-9.3 11.1-.3.2-.5.4-.8.6-.1.1-.2.1-.2.2-.2.2-.5.3-.7.5l.1.2c.5-.1.9-.1 1.4-.2.9-.1 1.7-.3 2.6-.5.2 0 .5-.1.7-.2.2 0 .3-.1.5-.1s.5-.1.7-.1c.2-.1.4-.1.6-.2 3.3-.8 6.5-1.9 9.6-3.2-5.3 7.2-12.3 13-20.5 16.8 3.8-.3 7.6-.9 11.3-2 13.3-3.9 24.5-12.9 31.2-25-1.4 7.6-4.4 14.9-8.9 21.3 3.2-2.1 6.1-4.6 8.8-7.3 7.4-7.7 12.3-17.6 13.9-28.1 1.1 5.2 1.5 10.6 1 15.9 23.9-33.3 2-67.8-7.2-76.9 0-.1-.1-.1-.1-.2v0c0 .4 0 .8-.1 1.2-.1.8-.2 1.5-.3 2.2-.2.7-.4 1.5-.6 2.2-.2.7-.5 1.4-.8 2.1-.3.7-.6 1.4-1 2-.4.6-.8 1.3-1.2 1.9-.4.6-.9 1.2-1.4 1.8-.5.6-1 1.1-1.6 1.7-.3.3-.6.6-1 .8-.3.2-.5.4-.8.7-.6.5-1.2.9-1.9 1.3-.6.4-1.3.8-2 1.1l-2.1.9c-.7.3-1.4.5-2.1.7-.7.2-1.5.4-2.2.5-.8.1-1.5.2-2.2.3-.5 0-1.1.1-1.6.1-.8 0-1.5-.1-2.2-.1-.8-.1-1.5-.2-2.2-.3-.8-.1-1.5-.3-2.2-.6.7-.1 1.5-.1 2.2-.3.8-.1 1.5-.3 2.2-.5.7-.2 1.5-.4 2.1-.7l2.1-.9c.7-.3 1.3-.7 2-1.1.6-.4 1.3-.9 1.9-1.3.6-.5 1.2-1 1.7-1.5.6-.5 1.1-1.1 1.6-1.6.5-.6 1-1.2 1.4-1.8.1-.1.1-.2.2-.3.3-.5.7-1.1 1-1.6.4-.7.7-1.3 1-2 .3-.7.6-1.4.8-2.1l.6-2.1c.1-.8.3-1.5.3-2.2.1-.8.1-1.5.1-2.2 0-.5 0-1.1-.1-1.6-.1-.8-.2-1.5-.3-2.2-.1-.8-.3-1.5-.5-2.2-.2-.7-.5-1.4-.7-2.1-.3-.7-.6-1.4-.9-2-.4-.7-.7-1.3-1.1-2-.4-.6-.9-1.2-1.3-1.8-.5-.6-1-1.1-1.5-1.7-.3-.3-.6-.6-.9-.8-1.5-1.2-3-2.2-4.6-3.2-.2-.1-.4-.2-.7-.3-1.3-1.1-2.3-1.4-3.3-1.8z"/></svg>

Before

Width:  |  Height:  |  Size: 3.8 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 8.2 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 6.8 KiB

-1
View File
@@ -1 +0,0 @@
<svg viewBox="0 0 235 234" xmlns="http://www.w3.org/2000/svg" class="rainbow-logo" preserveAspectRatio="xMinYMin meet"><g fill="none" fill-rule="evenodd"><path fill="#88AEDC" d="m234.04 175.67-75.69 58.28h47.18L234.04 212z"/><path d="m234.04 140.06-121.93 93.89h.02l121.91-93.87zM133.25.95.04 103.51v.02L133.27.95z"/><path fill="#F58F8E" fill-rule="nonzero" d="M.04.95v30.16L39.21.95z"/><path fill="#FEE18A" fill-rule="nonzero" d="M39.21.95.04 31.11v35.9L85.84.95z"/><path fill="#F3F095" fill-rule="nonzero" d="M85.84.95.04 67.01v36.5L133.25.95z"/><path fill="#55C1AE" fill-rule="nonzero" d="M133.27.95.04 103.53v35.59L179.49.95z"/><path fill="#F7B3CE" fill-rule="nonzero" d="M234.04.95h-7.37L.04 175.45v35.93l234-180.18z"/><path fill="#88AEDC" fill-rule="nonzero" d="M179.49.95.04 139.12v36.33L226.67.95z"/><path fill="#F58F8E" fill-rule="nonzero" d="M234.04 31.2.04 211.38v22.57h18.03l215.97-166.3z"/><path fill="#FEE18A" fill-rule="nonzero" d="M234.04 67.65 18.07 233.95H64.7l169.34-130.39z"/><path fill="#F3F095" fill-rule="nonzero" d="M234.04 103.56 64.7 233.95h47.41l121.93-93.89z"/><path fill="#55C1AE" fill-rule="nonzero" d="m234.04 140.08-121.91 93.87h46.22l75.69-58.28z"/><path fill="#F7B3CE" fill-rule="nonzero" d="m234.04 212-28.51 21.95h28.51z"/><g fill="#FFF"><path d="M65.2372 77.75c4.5139.95 7.774 2.8 11.1343 6.3 3.0595 3.2 4.9653 6.85 5.7678 10.95.652 3.45.652 40.55 0 44.05-1.7052 9.1-9.4792 16.2-19.109 17.45-2.0062.25-8.7269.5-14.8458.5H37V77h12.4384c8.8272 0 13.3412.2 15.7988.75ZM51.5449 117v25.6l5.166-.2c4.4637-.15 5.4167-.35 7.4228-1.5 3.9121-2.3 3.9623-2.45 3.9623-24.2 0-21.2 0-21.2-3.6613-23.6-1.8056-1.2-2.558-1.35-7.473-1.55l-5.4168-.15V117ZM130.7895 84.25v7.25h-25.579v18h15.548V124h-15.548l.1003 9.1.1505 9.15 12.6892.15 12.639.1V157h-14.7957c-16.4508 0-19.0087-.3-21.6167-2.6-3.6613-3.2-3.4607-1.15-3.6112-36.3-.1003-21.9.0502-32.25.4013-33.65.7021-2.6 3.6613-5.8 6.2693-6.7 1.5548-.55 5.467-.7 17.7047-.75h15.6483v7.25ZM162.4372 105.1c3.7114 14.25 6.821 25.6 6.9213 25.25.1505-.35 3.3102-12.4 7.0718-26.85l6.8712-26.25 7.8242-.15c5.9183-.1 7.8743.05 7.8743.5s-17.3536 66.2-18.3567 69.5c-.7021 2.3-4.4637 7-6.5702 8.25-2.6582 1.5-6.5703 1.75-8.9777.5-2.1567-1.1-5.0155-4.4-6.47-7.5-.9028-1.9-15.6483-56-19.0588-70l-.3511-1.35h7.8241c7.6737 0 7.8743 0 8.2756 1.1.2006.65 3.4105 12.8 7.122 27Z"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.3 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 8.3 KiB

+10 -43
View File
@@ -1,6 +1,5 @@
@import url("https://fonts.googleapis.com/css2?family=Lato&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@300;400&display=swap");
:root {
--grey-05: #f5f6f7;
--grey-10: #dfdfe2;
@@ -26,46 +25,12 @@ body {
color: var(--grey-90);
}
input[type="checkbox"] {
box-sizing: border-box;
padding: 0;
}
.checkbox-label {
[type="checkbox"] {
-webkit-box-shadow: 0 1px 1px var(--grey-90) !important;
-moz-box-shadow: 0 1px 1px var(--grey-90) !important;
box-shadow: 0 1px 1px var(--grey-90) !important;
cursor: pointer;
}
.checkbox-label:hover .tooltiptext {
visibility: visible;
}
.checkbox-label__input {
position: absolute;
opacity: 0;
}
.checkbox-label__control {
position: relative;
display: inline-flex;
flex-shrink: 0;
width: 24px;
height: 24px;
margin-right: 12px;
vertical-align: middle;
background-color: #f7fafc;
border: 2px solid var(--grey-90);
transform: scale(0.75);
}
.checkbox-label__input:checked + .checkbox-label__control:after {
position: absolute;
display: block;
content: "";
top: 5px;
left: 5px;
width: 10px;
height: 10px;
background-color: var(--dark-purple);
}
.checkbox-label__input:hover + .checkbox-label__control,
.checkbox-label__input:focus + .checkbox-label__control {
box-shadow: 0 0 0 10px rgba(10, 10, 35, .1);
border-radius: 0px !important;
}
.section {
@@ -114,6 +79,11 @@ a {
padding: 2% 5%;
font-size: 14px;
}
.skillCheckboxLabel:hover .tooltiptext {
visibility: visible;
}
.tooltiptext::after {
content: " ";
position: absolute;
@@ -125,7 +95,6 @@ a {
border-style: solid;
border-color: transparent var(--grey-90) transparent transparent;
}
.workflow {
margin-left: 2%;
padding: 1%;
@@ -151,11 +120,9 @@ a {
.tooltiptext {
display: none;
}
.warning {
font-size: 10px;
}
.workflow {
font-size: 12px;
}
+5 -9
View File
@@ -292,7 +292,7 @@ const IndexPage = () => {
tempElement.setAttribute(
"href",
`data:text/json;charset=utf-8,${encodeURIComponent(
JSON.stringify({ prefix, data, link, social, skills, support })
JSON.stringify({ prefix, data, link, social, skills })
)}`
)
tempElement.setAttribute("download", "data.json")
@@ -367,7 +367,6 @@ const IndexPage = () => {
setLink(DEFAULT_LINK)
setSocial(DEFAULT_SOCIAL)
setSkills(DEFAULT_SKILLS)
setSupport(DEFAULT_SUPPORT)
}
const mergeDefaultWithNewDataSkills = (defaultSkills, newSkills) => {
@@ -397,7 +396,6 @@ const IndexPage = () => {
setData(restoreData.data || DEFAULT_DATA)
setLink(restoreData.link || DEFAULT_LINK)
setSocial(restoreData.social || DEFAULT_SOCIAL)
setSupport(restoreData.support || DEFAULT_SUPPORT)
const restoreDataSkills = mergeDefaultWithNewDataSkills(
DEFAULT_SKILLS,
@@ -412,12 +410,10 @@ const IndexPage = () => {
const handleFileInput = e => {
const file = e.target.files[0]
if (file && file.type === "application/json") {
const reader = new FileReader()
reader.readAsText(file, "UTF-8")
reader.onload = () => {
setRestore(reader.result)
}
const reader = new FileReader()
reader.readAsText(file, "UTF-8")
reader.onload = () => {
setRestore(reader.result)
}
}
-30
View File
@@ -1,30 +0,0 @@
import {
isGitHubUsernameValid,
isMediumUsernameValid,
isTwitterUsernameValid,
} from "../validation"
describe("validation", () => {
it("isGitHubUsernameValid", () => {
expect(
isGitHubUsernameValid(
"Lorem ipsum dolor sit amet, consectetur adipiscing elit"
)
).toBe(false)
expect(isGitHubUsernameValid("rahuldkjain")).toBe(true)
})
it("isMediumUsernameValid", () => {
expect(isMediumUsernameValid("rahuldkjain")).toBe(false)
expect(isMediumUsernameValid("@rahuldkjain")).toBe(true)
})
it("isTwitterUsernameValid", () => {
expect(
isTwitterUsernameValid(
"Lorem ipsum dolor sit amet, consectetur adipiscing elit"
)
).toBe(false)
expect(isTwitterUsernameValid("rahuldkjain")).toBe(true)
})
})