@stats-organization/github-readme-stats-core 2.1.5 → 2.2.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/build/api/gist.d.ts +2 -7
- package/build/api/gist.d.ts.map +1 -1
- package/build/api/gist.js +9 -41
- package/build/api/index.d.ts +3 -8
- package/build/api/index.d.ts.map +1 -1
- package/build/api/index.js +23 -45
- package/build/api/pin.d.ts +2 -7
- package/build/api/pin.d.ts.map +1 -1
- package/build/api/pin.js +9 -41
- package/build/api/top-langs.d.ts +2 -7
- package/build/api/top-langs.d.ts.map +1 -1
- package/build/api/top-langs.js +11 -55
- package/build/api/wakatime.d.ts +2 -7
- package/build/api/wakatime.d.ts.map +1 -1
- package/build/api/wakatime.js +9 -41
- package/build/cards/common-options.d.ts +13 -0
- package/build/cards/common-options.d.ts.map +1 -0
- package/build/cards/common-options.js +1 -0
- package/build/cards/gist.d.ts +11 -16
- package/build/cards/gist.d.ts.map +1 -1
- package/build/cards/gist.js +26 -31
- package/build/cards/repo.d.ts +19 -16
- package/build/cards/repo.d.ts.map +1 -1
- package/build/cards/repo.js +58 -60
- package/build/cards/stats.d.ts +29 -46
- package/build/cards/stats.d.ts.map +1 -1
- package/build/cards/stats.js +113 -181
- package/build/cards/top-languages.d.ts +81 -77
- package/build/cards/top-languages.d.ts.map +1 -1
- package/build/cards/top-languages.js +174 -200
- package/build/cards/wakatime.d.ts +21 -11
- package/build/cards/wakatime.d.ts.map +1 -1
- package/build/cards/wakatime.js +73 -111
- package/build/common/Card.d.ts +34 -13
- package/build/common/Card.d.ts.map +1 -1
- package/build/common/Card.js +73 -40
- package/build/common/I18n.d.ts +4 -2
- package/build/common/I18n.d.ts.map +1 -1
- package/build/common/color.d.ts +60 -18
- package/build/common/color.d.ts.map +1 -1
- package/build/common/color.js +102 -5
- package/build/common/config.d.ts +2 -1
- package/build/common/config.d.ts.map +1 -1
- package/build/common/config.js +16 -26
- package/build/common/constants.d.ts +2 -1
- package/build/common/constants.d.ts.map +1 -1
- package/build/common/date.d.ts +37 -0
- package/build/common/date.d.ts.map +1 -0
- package/build/common/date.js +31 -0
- package/build/common/http.d.ts +25 -2
- package/build/common/http.d.ts.map +1 -1
- package/build/common/http.js +26 -3
- package/build/common/icons.d.ts +1 -0
- package/build/common/icons.d.ts.map +1 -1
- package/build/common/icons.js +1 -0
- package/build/common/languageColors.d.ts +11 -0
- package/build/common/languageColors.d.ts.map +1 -0
- package/build/common/languageColors.js +15 -0
- package/build/common/languageColors.json +1 -0
- package/build/common/ops.d.ts +3 -10
- package/build/common/ops.d.ts.map +1 -1
- package/build/common/ops.js +3 -15
- package/build/common/render.d.ts +43 -6
- package/build/common/render.d.ts.map +1 -1
- package/build/common/render.js +77 -11
- package/build/common/retryer.d.ts +3 -2
- package/build/common/retryer.d.ts.map +1 -1
- package/build/common/retryer.js +1 -0
- package/build/fetchers/gist.d.ts.map +1 -1
- package/build/fetchers/gist.js +8 -39
- package/build/fetchers/repo.d.ts +12 -11
- package/build/fetchers/repo.d.ts.map +1 -1
- package/build/fetchers/repo.js +26 -67
- package/build/fetchers/stats.d.ts +24 -17
- package/build/fetchers/stats.d.ts.map +1 -1
- package/build/fetchers/stats.js +302 -183
- package/build/fetchers/top-languages.d.ts +10 -15
- package/build/fetchers/top-languages.d.ts.map +1 -1
- package/build/fetchers/top-languages.js +52 -103
- package/build/fetchers/types.d.ts +24 -20
- package/build/fetchers/types.d.ts.map +1 -1
- package/build/fetchers/wakatime.d.ts +9 -5
- package/build/fetchers/wakatime.d.ts.map +1 -1
- package/build/fetchers/wakatime.js +8 -4
- package/build/graphql/contributionsDocument.d.ts +18 -0
- package/build/graphql/contributionsDocument.d.ts.map +1 -0
- package/build/graphql/contributionsDocument.js +30 -0
- package/build/graphql/generated/common.d.ts +42 -0
- package/build/graphql/generated/common.d.ts.map +1 -0
- package/build/graphql/generated/common.js +2 -0
- package/build/graphql/generated/gist.d.ts +44 -0
- package/build/graphql/generated/gist.d.ts.map +1 -0
- package/build/graphql/generated/gist.js +27 -0
- package/build/graphql/generated/repo.d.ts +67 -0
- package/build/graphql/generated/repo.d.ts.map +1 -0
- package/build/graphql/generated/repo.js +30 -0
- package/build/graphql/generated/stats.d.ts +150 -0
- package/build/graphql/generated/stats.d.ts.map +1 -0
- package/build/graphql/generated/stats.js +95 -0
- package/build/graphql/generated/top-languages.d.ts +54 -0
- package/build/graphql/generated/top-languages.d.ts.map +1 -0
- package/build/graphql/generated/top-languages.js +27 -0
- package/build/graphql/graphqlDocument.d.ts +22 -0
- package/build/graphql/graphqlDocument.d.ts.map +1 -0
- package/build/graphql/graphqlDocument.js +8 -0
- package/build/graphql/reposContributedToDocument.d.ts +27 -0
- package/build/graphql/reposContributedToDocument.d.ts.map +1 -0
- package/build/graphql/reposContributedToDocument.js +59 -0
- package/build/index.d.ts +3 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +2 -1
- package/build/themes/index.d.ts +32 -0
- package/build/themes/index.d.ts.map +1 -1
- package/build/themes/index.js +28 -0
- package/build/translations.d.ts +17 -0
- package/build/translations.d.ts.map +1 -1
- package/build/translations.js +17 -0
- package/package.json +13 -7
- package/src/_github-username-regex.d.ts +4 -0
- package/src/api/gist.js +10 -46
- package/src/api/index.js +30 -51
- package/src/api/pin.js +10 -46
- package/src/api/top-langs.js +13 -60
- package/src/api/wakatime.js +10 -46
- package/src/cards/common-options.ts +13 -0
- package/src/cards/{gist.js → gist.ts} +37 -37
- package/src/cards/{repo.js → repo.ts} +86 -68
- package/src/cards/{stats.js → stats.ts} +168 -219
- package/src/cards/{top-languages.js → top-languages.ts} +309 -265
- package/src/cards/{wakatime.js → wakatime.ts} +136 -130
- package/src/common/Card.ts +94 -49
- package/src/common/I18n.ts +6 -2
- package/src/common/color.ts +163 -14
- package/src/common/config.ts +22 -29
- package/src/common/constants.ts +3 -1
- package/src/common/date.ts +45 -0
- package/src/common/http.ts +43 -3
- package/src/common/icons.ts +1 -0
- package/src/common/languageColors.json +1 -0
- package/src/common/languageColors.ts +19 -0
- package/src/common/ops.ts +8 -18
- package/src/common/render.ts +114 -14
- package/src/common/retryer.ts +6 -5
- package/src/fetchers/gist.ts +15 -72
- package/src/fetchers/repo.ts +114 -0
- package/src/fetchers/stats.ts +743 -0
- package/src/fetchers/top-languages.ts +135 -0
- package/src/fetchers/types.ts +28 -20
- package/src/fetchers/{wakatime.js → wakatime.ts} +19 -5
- package/src/graphql/contributionsDocument.ts +44 -0
- package/src/graphql/generated/common.ts +26 -0
- package/src/graphql/generated/gist.ts +59 -0
- package/src/graphql/generated/repo.ts +90 -0
- package/src/graphql/generated/stats.ts +194 -0
- package/src/graphql/generated/top-languages.ts +75 -0
- package/src/graphql/graphqlDocument.ts +25 -0
- package/src/graphql/queries/gist.graphql +25 -0
- package/src/graphql/queries/repo.graphql +28 -0
- package/src/graphql/queries/stats.graphql +120 -0
- package/src/graphql/queries/top-languages.graphql +34 -0
- package/src/graphql/reposContributedToDocument.ts +86 -0
- package/src/index.ts +3 -1
- package/src/themes/index.ts +33 -0
- package/src/translations.ts +17 -0
- package/src/cards/types.d.ts +0 -78
- package/src/fetchers/repo.js +0 -161
- package/src/fetchers/stats.js +0 -473
- package/src/fetchers/top-languages.js +0 -175
- package/src/themes/README.md +0 -229
package/build/translations.js
CHANGED
|
@@ -355,6 +355,9 @@ const statCardLocales = ({ name, apostrophe, }) => {
|
|
|
355
355
|
no: "Bidro til (i fjor)",
|
|
356
356
|
be: "Уклад (за мінулы год)",
|
|
357
357
|
},
|
|
358
|
+
"statcard.all-time-contribs": {
|
|
359
|
+
en: "Contributed to (all time)",
|
|
360
|
+
},
|
|
358
361
|
"statcard.reviews": {
|
|
359
362
|
en: "Total PRs Reviewed",
|
|
360
363
|
ar: "طلبات السحب التي تم مراجعتها",
|
|
@@ -504,18 +507,27 @@ const statCardLocales = ({ name, apostrophe, }) => {
|
|
|
504
507
|
},
|
|
505
508
|
"statcard.prs-authored": {
|
|
506
509
|
en: "PRs Created",
|
|
510
|
+
"zh-tw": "建立的拉取請求",
|
|
507
511
|
},
|
|
508
512
|
"statcard.prs-commented": {
|
|
509
513
|
en: "PRs Commented",
|
|
514
|
+
"zh-tw": "參與討論的拉取請求",
|
|
510
515
|
},
|
|
511
516
|
"statcard.prs-reviewed": {
|
|
512
517
|
en: "PRs Reviewed",
|
|
518
|
+
"zh-tw": "審核的拉取請求",
|
|
513
519
|
},
|
|
514
520
|
"statcard.issues-authored": {
|
|
515
521
|
en: "Issues Created",
|
|
522
|
+
"zh-tw": "建立的議題",
|
|
516
523
|
},
|
|
517
524
|
"statcard.issues-commented": {
|
|
518
525
|
en: "Issues Commented",
|
|
526
|
+
"zh-tw": "參與討論的議題",
|
|
527
|
+
},
|
|
528
|
+
"statcard.contributions": {
|
|
529
|
+
en: "Total Contributions",
|
|
530
|
+
"zh-tw": "總貢獻數量",
|
|
519
531
|
},
|
|
520
532
|
"statcard.prs-merged": {
|
|
521
533
|
en: "Total PRs Merged",
|
|
@@ -716,18 +728,23 @@ const repoCardLocales = {
|
|
|
716
728
|
},
|
|
717
729
|
"repocard.prs-authored": {
|
|
718
730
|
en: "my created PRs",
|
|
731
|
+
"zh-tw": "我所創建的拉取請求",
|
|
719
732
|
},
|
|
720
733
|
"repocard.prs-commented": {
|
|
721
734
|
en: "my commented PRs",
|
|
735
|
+
"zh-tw": "我所參與的拉取請求",
|
|
722
736
|
},
|
|
723
737
|
"repocard.prs-reviewed": {
|
|
724
738
|
en: "my reviewed PRs",
|
|
739
|
+
"zh-tw": "我所審核的拉取請求",
|
|
725
740
|
},
|
|
726
741
|
"repocard.issues-authored": {
|
|
727
742
|
en: "my created issues",
|
|
743
|
+
"zh-tw": "我所創建的議題",
|
|
728
744
|
},
|
|
729
745
|
"repocard.issues-commented": {
|
|
730
746
|
en: "my commented issues",
|
|
747
|
+
"zh-tw": "我所參與的議題",
|
|
731
748
|
},
|
|
732
749
|
};
|
|
733
750
|
const langCardLocales = {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stats-organization/github-readme-stats-core",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"homepage": "https://github-stats-extended.vercel.app/frontend",
|
|
6
6
|
"bugs": {
|
|
@@ -67,13 +67,18 @@
|
|
|
67
67
|
"access": "public"
|
|
68
68
|
},
|
|
69
69
|
"devDependencies": {
|
|
70
|
+
"@graphql-codegen/core": "6.2.0",
|
|
71
|
+
"@graphql-codegen/typescript": "6.1.0",
|
|
72
|
+
"@graphql-codegen/typescript-operations": "6.1.6",
|
|
73
|
+
"@octokit/graphql-schema": "15.26.1",
|
|
70
74
|
"@testing-library/dom": "10.4.1",
|
|
71
|
-
"@testing-library/jest-dom": "
|
|
75
|
+
"@testing-library/jest-dom": "7.0.1",
|
|
72
76
|
"@uppercod/css-to-object": "1.1.1",
|
|
73
77
|
"axios-mock-adapter": "2.1.0",
|
|
74
|
-
"
|
|
75
|
-
"
|
|
76
|
-
"
|
|
78
|
+
"graphql": "16.14.2",
|
|
79
|
+
"js-yaml": "5.4.1",
|
|
80
|
+
"jsdom": "30.0.1",
|
|
81
|
+
"vitest": "4.1.11"
|
|
77
82
|
},
|
|
78
83
|
"dependencies": {
|
|
79
84
|
"axios": "^1.18.1",
|
|
@@ -88,7 +93,8 @@
|
|
|
88
93
|
"bench": "vitest bench --run --config vitest.config.bench.ts",
|
|
89
94
|
"lint": "eslint",
|
|
90
95
|
"typecheck": "tsc -p tsconfig.typecheck.json",
|
|
91
|
-
"
|
|
92
|
-
"
|
|
96
|
+
"generate-graphql-types": "node scripts/generate-graphql-types",
|
|
97
|
+
"check-graphql-types": "node scripts/generate-graphql-types --check",
|
|
98
|
+
"generate-language-colors": "node scripts/generate-language-colors"
|
|
93
99
|
}
|
|
94
100
|
}
|
package/src/api/gist.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { renderGistCard } from "../cards/gist.js";
|
|
2
|
-
import {
|
|
2
|
+
import { findInvalidColorParam, pickColorParams } from "../common/color.js";
|
|
3
3
|
import {
|
|
4
4
|
MissingParamError,
|
|
5
5
|
retrieveSecondaryMessage,
|
|
@@ -13,27 +13,18 @@ import { isLocaleAvailable } from "../translations.js";
|
|
|
13
13
|
export default async (
|
|
14
14
|
{
|
|
15
15
|
id,
|
|
16
|
-
title_color,
|
|
17
|
-
icon_color,
|
|
18
|
-
text_color,
|
|
19
|
-
bg_color,
|
|
20
|
-
theme,
|
|
21
16
|
locale,
|
|
22
17
|
border_radius,
|
|
23
|
-
border_color,
|
|
24
18
|
show_owner,
|
|
25
19
|
browser_rendering,
|
|
26
20
|
hide_border,
|
|
21
|
+
...remainingParams
|
|
27
22
|
},
|
|
28
23
|
pat = null,
|
|
29
24
|
) => {
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
text_color,
|
|
34
|
-
bg_color,
|
|
35
|
-
border_color,
|
|
36
|
-
});
|
|
25
|
+
const colorParams = pickColorParams(remainingParams);
|
|
26
|
+
|
|
27
|
+
const invalidColorInput = findInvalidColorParam(colorParams);
|
|
37
28
|
if (invalidColorInput) {
|
|
38
29
|
return {
|
|
39
30
|
status: "error - permanent",
|
|
@@ -50,13 +41,7 @@ export default async (
|
|
|
50
41
|
content: renderError({
|
|
51
42
|
message: "Something went wrong",
|
|
52
43
|
secondaryMessage: "Language not found",
|
|
53
|
-
renderOptions:
|
|
54
|
-
title_color,
|
|
55
|
-
text_color,
|
|
56
|
-
bg_color,
|
|
57
|
-
border_color,
|
|
58
|
-
theme,
|
|
59
|
-
},
|
|
44
|
+
renderOptions: colorParams,
|
|
60
45
|
}),
|
|
61
46
|
};
|
|
62
47
|
}
|
|
@@ -68,13 +53,7 @@ export default async (
|
|
|
68
53
|
content: renderError({
|
|
69
54
|
message: "Something went wrong",
|
|
70
55
|
secondaryMessage: "Gist ID contains unsafe characters",
|
|
71
|
-
renderOptions:
|
|
72
|
-
title_color,
|
|
73
|
-
text_color,
|
|
74
|
-
bg_color,
|
|
75
|
-
border_color,
|
|
76
|
-
theme,
|
|
77
|
-
},
|
|
56
|
+
renderOptions: colorParams,
|
|
78
57
|
}),
|
|
79
58
|
};
|
|
80
59
|
}
|
|
@@ -85,13 +64,8 @@ export default async (
|
|
|
85
64
|
return {
|
|
86
65
|
status: "success",
|
|
87
66
|
content: renderGistCard(gistData, {
|
|
88
|
-
|
|
89
|
-
icon_color,
|
|
90
|
-
text_color,
|
|
91
|
-
bg_color,
|
|
92
|
-
theme,
|
|
67
|
+
...colorParams,
|
|
93
68
|
border_radius,
|
|
94
|
-
border_color,
|
|
95
69
|
locale: locale ? locale.toLowerCase() : null,
|
|
96
70
|
show_owner: parseBoolean(show_owner),
|
|
97
71
|
browser_rendering: parseBoolean(browser_rendering),
|
|
@@ -106,11 +80,7 @@ export default async (
|
|
|
106
80
|
message: err.message,
|
|
107
81
|
secondaryMessage: retrieveSecondaryMessage(err),
|
|
108
82
|
renderOptions: {
|
|
109
|
-
|
|
110
|
-
text_color,
|
|
111
|
-
bg_color,
|
|
112
|
-
border_color,
|
|
113
|
-
theme,
|
|
83
|
+
...colorParams,
|
|
114
84
|
show_repo_link: !(err instanceof MissingParamError),
|
|
115
85
|
},
|
|
116
86
|
}),
|
|
@@ -120,13 +90,7 @@ export default async (
|
|
|
120
90
|
status: "error - temporary",
|
|
121
91
|
content: renderError({
|
|
122
92
|
message: "An unknown error occurred",
|
|
123
|
-
renderOptions:
|
|
124
|
-
title_color,
|
|
125
|
-
text_color,
|
|
126
|
-
bg_color,
|
|
127
|
-
border_color,
|
|
128
|
-
theme,
|
|
129
|
-
},
|
|
93
|
+
renderOptions: colorParams,
|
|
130
94
|
}),
|
|
131
95
|
};
|
|
132
96
|
}
|
package/src/api/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { renderStatsCard } from "../cards/stats.js";
|
|
2
|
-
import {
|
|
2
|
+
import { findInvalidColorParam, pickColorParams } from "../common/color.js";
|
|
3
3
|
import {
|
|
4
4
|
MissingParamError,
|
|
5
5
|
retrieveSecondaryMessage,
|
|
@@ -24,13 +24,7 @@ export default async (
|
|
|
24
24
|
include_all_commits,
|
|
25
25
|
commits_year,
|
|
26
26
|
line_height,
|
|
27
|
-
title_color,
|
|
28
|
-
ring_color,
|
|
29
|
-
icon_color,
|
|
30
|
-
text_color,
|
|
31
27
|
text_bold,
|
|
32
|
-
bg_color,
|
|
33
|
-
theme,
|
|
34
28
|
exclude_repo,
|
|
35
29
|
custom_title,
|
|
36
30
|
locale,
|
|
@@ -39,20 +33,16 @@ export default async (
|
|
|
39
33
|
number_format,
|
|
40
34
|
role,
|
|
41
35
|
number_precision,
|
|
42
|
-
border_color,
|
|
43
36
|
rank_icon,
|
|
44
37
|
show,
|
|
38
|
+
contribs_include_own_repos,
|
|
39
|
+
...remainingParams
|
|
45
40
|
},
|
|
46
41
|
pat = null,
|
|
47
42
|
) => {
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
icon_color,
|
|
52
|
-
text_color,
|
|
53
|
-
bg_color,
|
|
54
|
-
border_color,
|
|
55
|
-
});
|
|
43
|
+
const colorParams = pickColorParams(remainingParams);
|
|
44
|
+
|
|
45
|
+
const invalidColorInput = findInvalidColorParam(colorParams);
|
|
56
46
|
if (invalidColorInput) {
|
|
57
47
|
return {
|
|
58
48
|
status: "error - permanent",
|
|
@@ -69,13 +59,7 @@ export default async (
|
|
|
69
59
|
content: renderError({
|
|
70
60
|
message: "Something went wrong",
|
|
71
61
|
secondaryMessage: "Language not found",
|
|
72
|
-
renderOptions:
|
|
73
|
-
title_color,
|
|
74
|
-
text_color,
|
|
75
|
-
bg_color,
|
|
76
|
-
border_color,
|
|
77
|
-
theme,
|
|
78
|
-
},
|
|
62
|
+
renderOptions: colorParams,
|
|
79
63
|
}),
|
|
80
64
|
};
|
|
81
65
|
}
|
|
@@ -92,16 +76,24 @@ export default async (
|
|
|
92
76
|
message: "Something went wrong",
|
|
93
77
|
secondaryMessage:
|
|
94
78
|
"Username, repository or owner contains unsafe characters",
|
|
95
|
-
renderOptions:
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
79
|
+
renderOptions: colorParams,
|
|
80
|
+
}),
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
// anything but a four-digit year builds a DateTime GitHub rejects
|
|
85
|
+
if (commits_year !== undefined && !/^\d{4}$/.test(commits_year)) {
|
|
86
|
+
return {
|
|
87
|
+
status: "error - permanent",
|
|
88
|
+
content: renderError({
|
|
89
|
+
message: "Something went wrong",
|
|
90
|
+
secondaryMessage: 'Invalid number input for parameter "commits_year"',
|
|
91
|
+
renderOptions: colorParams,
|
|
102
92
|
}),
|
|
103
93
|
};
|
|
104
94
|
}
|
|
95
|
+
const commitsYearParsed =
|
|
96
|
+
commits_year === undefined ? undefined : Number(commits_year);
|
|
105
97
|
|
|
106
98
|
try {
|
|
107
99
|
const showStats = parseArray(show);
|
|
@@ -119,7 +111,7 @@ export default async (
|
|
|
119
111
|
showStats.includes("prs_merged_percentage"),
|
|
120
112
|
showStats.includes("discussions_started"),
|
|
121
113
|
showStats.includes("discussions_answered"),
|
|
122
|
-
|
|
114
|
+
commitsYearParsed,
|
|
123
115
|
repository,
|
|
124
116
|
repoOwner,
|
|
125
117
|
showStats.includes("prs_authored"),
|
|
@@ -128,6 +120,9 @@ export default async (
|
|
|
128
120
|
showStats.includes("issues_authored"),
|
|
129
121
|
showStats.includes("issues_commented"),
|
|
130
122
|
parseArray(role),
|
|
123
|
+
showStats.includes("contributions"),
|
|
124
|
+
showStats.includes("all_time_contribs"),
|
|
125
|
+
parseBoolean(contribs_include_own_repos),
|
|
131
126
|
pat,
|
|
132
127
|
);
|
|
133
128
|
|
|
@@ -136,6 +131,7 @@ export default async (
|
|
|
136
131
|
content: renderStatsCard(
|
|
137
132
|
stats,
|
|
138
133
|
{
|
|
134
|
+
...colorParams,
|
|
139
135
|
hide: parseArray(hide),
|
|
140
136
|
show_icons: parseBoolean(show_icons),
|
|
141
137
|
hide_title: parseBoolean(hide_title),
|
|
@@ -143,18 +139,11 @@ export default async (
|
|
|
143
139
|
card_width: parseInt(card_width, 10),
|
|
144
140
|
hide_rank: parseBoolean(hide_rank),
|
|
145
141
|
include_all_commits: parseBoolean(include_all_commits),
|
|
146
|
-
commits_year:
|
|
142
|
+
commits_year: commitsYearParsed,
|
|
147
143
|
line_height,
|
|
148
|
-
title_color,
|
|
149
|
-
ring_color,
|
|
150
|
-
icon_color,
|
|
151
|
-
text_color,
|
|
152
144
|
text_bold: parseBoolean(text_bold),
|
|
153
|
-
bg_color,
|
|
154
|
-
theme,
|
|
155
145
|
custom_title,
|
|
156
146
|
border_radius,
|
|
157
|
-
border_color,
|
|
158
147
|
number_format,
|
|
159
148
|
number_precision: parseInt(number_precision, 10),
|
|
160
149
|
locale: locale ? locale.toLowerCase() : null,
|
|
@@ -175,11 +164,7 @@ export default async (
|
|
|
175
164
|
message: err.message,
|
|
176
165
|
secondaryMessage: retrieveSecondaryMessage(err),
|
|
177
166
|
renderOptions: {
|
|
178
|
-
|
|
179
|
-
text_color,
|
|
180
|
-
bg_color,
|
|
181
|
-
border_color,
|
|
182
|
-
theme,
|
|
167
|
+
...colorParams,
|
|
183
168
|
show_repo_link: !(err instanceof MissingParamError),
|
|
184
169
|
},
|
|
185
170
|
}),
|
|
@@ -189,13 +174,7 @@ export default async (
|
|
|
189
174
|
status: "error - temporary",
|
|
190
175
|
content: renderError({
|
|
191
176
|
message: "An unknown error occurred",
|
|
192
|
-
renderOptions:
|
|
193
|
-
title_color,
|
|
194
|
-
text_color,
|
|
195
|
-
bg_color,
|
|
196
|
-
border_color,
|
|
197
|
-
theme,
|
|
198
|
-
},
|
|
177
|
+
renderOptions: colorParams,
|
|
199
178
|
}),
|
|
200
179
|
};
|
|
201
180
|
}
|
package/src/api/pin.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { renderRepoCard } from "../cards/repo.js";
|
|
2
|
-
import {
|
|
2
|
+
import { findInvalidColorParam, pickColorParams } from "../common/color.js";
|
|
3
3
|
import {
|
|
4
4
|
MissingParamError,
|
|
5
5
|
retrieveSecondaryMessage,
|
|
@@ -15,12 +15,7 @@ export default async (
|
|
|
15
15
|
username,
|
|
16
16
|
repo,
|
|
17
17
|
hide_border,
|
|
18
|
-
title_color,
|
|
19
|
-
icon_color,
|
|
20
|
-
text_color,
|
|
21
|
-
bg_color,
|
|
22
18
|
card_width,
|
|
23
|
-
theme,
|
|
24
19
|
show_owner,
|
|
25
20
|
browser_rendering,
|
|
26
21
|
show,
|
|
@@ -30,18 +25,14 @@ export default async (
|
|
|
30
25
|
line_height,
|
|
31
26
|
locale,
|
|
32
27
|
border_radius,
|
|
33
|
-
border_color,
|
|
34
28
|
description_lines_count,
|
|
29
|
+
...remainingParams
|
|
35
30
|
},
|
|
36
31
|
pat = null,
|
|
37
32
|
) => {
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
text_color,
|
|
42
|
-
bg_color,
|
|
43
|
-
border_color,
|
|
44
|
-
});
|
|
33
|
+
const colorParams = pickColorParams(remainingParams);
|
|
34
|
+
|
|
35
|
+
const invalidColorInput = findInvalidColorParam(colorParams);
|
|
45
36
|
if (invalidColorInput) {
|
|
46
37
|
return {
|
|
47
38
|
status: "error - permanent",
|
|
@@ -58,13 +49,7 @@ export default async (
|
|
|
58
49
|
content: renderError({
|
|
59
50
|
message: "Something went wrong",
|
|
60
51
|
secondaryMessage: "Language not found",
|
|
61
|
-
renderOptions:
|
|
62
|
-
title_color,
|
|
63
|
-
text_color,
|
|
64
|
-
bg_color,
|
|
65
|
-
border_color,
|
|
66
|
-
theme,
|
|
67
|
-
},
|
|
52
|
+
renderOptions: colorParams,
|
|
68
53
|
}),
|
|
69
54
|
};
|
|
70
55
|
}
|
|
@@ -79,13 +64,7 @@ export default async (
|
|
|
79
64
|
content: renderError({
|
|
80
65
|
message: "Something went wrong",
|
|
81
66
|
secondaryMessage: "Username or repository contains unsafe characters",
|
|
82
|
-
renderOptions:
|
|
83
|
-
title_color,
|
|
84
|
-
text_color,
|
|
85
|
-
bg_color,
|
|
86
|
-
border_color,
|
|
87
|
-
theme,
|
|
88
|
-
},
|
|
67
|
+
renderOptions: colorParams,
|
|
89
68
|
}),
|
|
90
69
|
};
|
|
91
70
|
}
|
|
@@ -106,14 +85,9 @@ export default async (
|
|
|
106
85
|
return {
|
|
107
86
|
status: "success",
|
|
108
87
|
content: renderRepoCard(repoData, {
|
|
88
|
+
...colorParams,
|
|
109
89
|
hide_border: parseBoolean(hide_border),
|
|
110
|
-
title_color,
|
|
111
|
-
icon_color,
|
|
112
|
-
text_color,
|
|
113
|
-
bg_color,
|
|
114
|
-
theme,
|
|
115
90
|
border_radius,
|
|
116
|
-
border_color,
|
|
117
91
|
card_width_input: parseInt(card_width, 10),
|
|
118
92
|
show_owner: parseBoolean(show_owner),
|
|
119
93
|
browser_rendering: parseBoolean(browser_rendering),
|
|
@@ -135,11 +109,7 @@ export default async (
|
|
|
135
109
|
message: err.message,
|
|
136
110
|
secondaryMessage: retrieveSecondaryMessage(err),
|
|
137
111
|
renderOptions: {
|
|
138
|
-
|
|
139
|
-
text_color,
|
|
140
|
-
bg_color,
|
|
141
|
-
border_color,
|
|
142
|
-
theme,
|
|
112
|
+
...colorParams,
|
|
143
113
|
show_repo_link: !(err instanceof MissingParamError),
|
|
144
114
|
},
|
|
145
115
|
}),
|
|
@@ -149,13 +119,7 @@ export default async (
|
|
|
149
119
|
status: "error - temporary",
|
|
150
120
|
content: renderError({
|
|
151
121
|
message: "An unknown error occurred",
|
|
152
|
-
renderOptions:
|
|
153
|
-
title_color,
|
|
154
|
-
text_color,
|
|
155
|
-
bg_color,
|
|
156
|
-
border_color,
|
|
157
|
-
theme,
|
|
158
|
-
},
|
|
122
|
+
renderOptions: colorParams,
|
|
159
123
|
}),
|
|
160
124
|
};
|
|
161
125
|
}
|
package/src/api/top-langs.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { renderTopLanguages } from "../cards/top-languages.js";
|
|
2
|
-
import {
|
|
2
|
+
import { findInvalidColorParam, pickColorParams } from "../common/color.js";
|
|
3
3
|
import {
|
|
4
4
|
MissingParamError,
|
|
5
5
|
retrieveSecondaryMessage,
|
|
@@ -17,11 +17,6 @@ export default async (
|
|
|
17
17
|
hide_title,
|
|
18
18
|
hide_border,
|
|
19
19
|
card_width,
|
|
20
|
-
title_color,
|
|
21
|
-
text_color,
|
|
22
|
-
bg_color,
|
|
23
|
-
prog_bar_bg_color,
|
|
24
|
-
theme,
|
|
25
20
|
layout,
|
|
26
21
|
langs_count,
|
|
27
22
|
exclude_repo,
|
|
@@ -30,22 +25,19 @@ export default async (
|
|
|
30
25
|
custom_title,
|
|
31
26
|
locale,
|
|
32
27
|
border_radius,
|
|
33
|
-
border_color,
|
|
34
28
|
role,
|
|
35
29
|
disable_animations,
|
|
36
30
|
hide_progress,
|
|
37
31
|
hide_values,
|
|
38
32
|
stats_format,
|
|
33
|
+
...remainingParams
|
|
39
34
|
},
|
|
40
35
|
pat = null,
|
|
41
36
|
) => {
|
|
42
|
-
const
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
prog_bar_bg_color,
|
|
47
|
-
border_color,
|
|
48
|
-
});
|
|
37
|
+
const colorParams = pickColorParams(remainingParams);
|
|
38
|
+
|
|
39
|
+
const invalidColorInput = findInvalidColorParam(colorParams);
|
|
40
|
+
|
|
49
41
|
if (invalidColorInput) {
|
|
50
42
|
return {
|
|
51
43
|
status: "error - permanent",
|
|
@@ -62,13 +54,7 @@ export default async (
|
|
|
62
54
|
content: renderError({
|
|
63
55
|
message: "Something went wrong",
|
|
64
56
|
secondaryMessage: "Locale not found",
|
|
65
|
-
renderOptions:
|
|
66
|
-
title_color,
|
|
67
|
-
text_color,
|
|
68
|
-
bg_color,
|
|
69
|
-
border_color,
|
|
70
|
-
theme,
|
|
71
|
-
},
|
|
57
|
+
renderOptions: colorParams,
|
|
72
58
|
}),
|
|
73
59
|
};
|
|
74
60
|
}
|
|
@@ -80,13 +66,7 @@ export default async (
|
|
|
80
66
|
content: renderError({
|
|
81
67
|
message: "Something went wrong",
|
|
82
68
|
secondaryMessage: "Username contains unsafe characters",
|
|
83
|
-
renderOptions:
|
|
84
|
-
title_color,
|
|
85
|
-
text_color,
|
|
86
|
-
bg_color,
|
|
87
|
-
border_color,
|
|
88
|
-
theme,
|
|
89
|
-
},
|
|
69
|
+
renderOptions: colorParams,
|
|
90
70
|
}),
|
|
91
71
|
};
|
|
92
72
|
}
|
|
@@ -100,13 +80,7 @@ export default async (
|
|
|
100
80
|
content: renderError({
|
|
101
81
|
message: "Something went wrong",
|
|
102
82
|
secondaryMessage: "Incorrect layout input",
|
|
103
|
-
renderOptions:
|
|
104
|
-
title_color,
|
|
105
|
-
text_color,
|
|
106
|
-
bg_color,
|
|
107
|
-
border_color,
|
|
108
|
-
theme,
|
|
109
|
-
},
|
|
83
|
+
renderOptions: colorParams,
|
|
110
84
|
}),
|
|
111
85
|
};
|
|
112
86
|
}
|
|
@@ -120,13 +94,7 @@ export default async (
|
|
|
120
94
|
content: renderError({
|
|
121
95
|
message: "Something went wrong",
|
|
122
96
|
secondaryMessage: "Incorrect stats_format input",
|
|
123
|
-
renderOptions:
|
|
124
|
-
title_color,
|
|
125
|
-
text_color,
|
|
126
|
-
bg_color,
|
|
127
|
-
border_color,
|
|
128
|
-
theme,
|
|
129
|
-
},
|
|
97
|
+
renderOptions: colorParams,
|
|
130
98
|
}),
|
|
131
99
|
};
|
|
132
100
|
}
|
|
@@ -144,20 +112,15 @@ export default async (
|
|
|
144
112
|
return {
|
|
145
113
|
status: "success",
|
|
146
114
|
content: renderTopLanguages(topLangs, {
|
|
115
|
+
...colorParams,
|
|
147
116
|
custom_title,
|
|
148
117
|
hide_title: parseBoolean(hide_title),
|
|
149
118
|
hide_border: parseBoolean(hide_border),
|
|
150
119
|
card_width: parseInt(card_width, 10),
|
|
151
120
|
hide: parseArray(hide),
|
|
152
|
-
title_color,
|
|
153
|
-
text_color,
|
|
154
|
-
bg_color,
|
|
155
|
-
prog_bar_bg_color,
|
|
156
|
-
theme,
|
|
157
121
|
layout,
|
|
158
122
|
langs_count,
|
|
159
123
|
border_radius,
|
|
160
|
-
border_color,
|
|
161
124
|
locale: locale ? locale.toLowerCase() : null,
|
|
162
125
|
disable_animations: parseBoolean(disable_animations),
|
|
163
126
|
hide_progress: parseBoolean(hide_progress),
|
|
@@ -173,11 +136,7 @@ export default async (
|
|
|
173
136
|
message: err.message,
|
|
174
137
|
secondaryMessage: retrieveSecondaryMessage(err),
|
|
175
138
|
renderOptions: {
|
|
176
|
-
|
|
177
|
-
text_color,
|
|
178
|
-
bg_color,
|
|
179
|
-
border_color,
|
|
180
|
-
theme,
|
|
139
|
+
...colorParams,
|
|
181
140
|
show_repo_link: !(err instanceof MissingParamError),
|
|
182
141
|
},
|
|
183
142
|
}),
|
|
@@ -187,13 +146,7 @@ export default async (
|
|
|
187
146
|
status: "error - temporary",
|
|
188
147
|
content: renderError({
|
|
189
148
|
message: "An unknown error occurred",
|
|
190
|
-
renderOptions:
|
|
191
|
-
title_color,
|
|
192
|
-
text_color,
|
|
193
|
-
bg_color,
|
|
194
|
-
border_color,
|
|
195
|
-
theme,
|
|
196
|
-
},
|
|
149
|
+
renderOptions: colorParams,
|
|
197
150
|
}),
|
|
198
151
|
};
|
|
199
152
|
}
|