Use compact layout default langs count when hide_progress param was set (#2780)

This commit is contained in:
Alexandr Garbuzov 2023-06-07 10:20:03 +03:00 committed by GitHub
parent f2841e09e1
commit 4044a0b666
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 26 additions and 11 deletions

View File

@ -676,11 +676,13 @@ const noLanguagesDataNode = ({ color, text, layout }) => {
/**
* Get default languages count for provided card layout.
*
* @param {import("./types").TopLangOptions["layout"] | undefined} layout Input layout string
* @return {number} Default languages count for input layout
* @param {object} props Function properties.
* @param {import("./types").TopLangOptions["layout"]=} props.layout Input layout string.
* @param {boolean=} props.hide_progress Input hide_progress parameter value.
* @return {number} Default languages count for input layout.
*/
const getDefaultLanguagesCountByLayout = (layout) => {
if (layout === "compact") {
const getDefaultLanguagesCountByLayout = ({ layout, hide_progress }) => {
if (layout === "compact" || hide_progress === true) {
return COMPACT_LAYOUT_DEFAULT_LANGS_COUNT;
} else if (layout === "donut") {
return DONUT_LAYOUT_DEFAULT_LANGS_COUNT;
@ -714,7 +716,7 @@ const renderTopLanguages = (topLangs, options = {}) => {
layout,
custom_title,
locale,
langs_count = getDefaultLanguagesCountByLayout(layout),
langs_count = getDefaultLanguagesCountByLayout({ layout, hide_progress }),
border_radius,
border_color,
disable_animations,

View File

@ -331,12 +331,25 @@ describe("Test renderTopLanguages helper functions", () => {
});
it("getDefaultLanguagesCountByLayout", () => {
expect(getDefaultLanguagesCountByLayout("normal")).toStrictEqual(5);
expect(getDefaultLanguagesCountByLayout(undefined)).toStrictEqual(5);
expect(getDefaultLanguagesCountByLayout("compact")).toStrictEqual(6);
expect(getDefaultLanguagesCountByLayout("donut")).toStrictEqual(5);
expect(getDefaultLanguagesCountByLayout("donut-vertical")).toStrictEqual(6);
expect(getDefaultLanguagesCountByLayout("pie")).toStrictEqual(6);
expect(
getDefaultLanguagesCountByLayout({ layout: "normal" }),
).toStrictEqual(5);
expect(getDefaultLanguagesCountByLayout({})).toStrictEqual(5);
expect(
getDefaultLanguagesCountByLayout({ layout: "compact" }),
).toStrictEqual(6);
expect(
getDefaultLanguagesCountByLayout({ hide_progress: true }),
).toStrictEqual(6);
expect(getDefaultLanguagesCountByLayout({ layout: "donut" })).toStrictEqual(
5,
);
expect(
getDefaultLanguagesCountByLayout({ layout: "donut-vertical" }),
).toStrictEqual(6);
expect(getDefaultLanguagesCountByLayout({ layout: "pie" })).toStrictEqual(
6,
);
});
});