diff --git a/api/index.js b/api/index.js index b16990c926a76..b1b0b3a71e7ca 100644 --- a/api/index.js +++ b/api/index.js @@ -5,9 +5,9 @@ const { parseArray, clampValue, CONSTANTS, -} = require("../src/utils"); -const fetchStats = require("../src/fetchStats"); -const renderStatsCard = require("../src/renderStatsCard"); +} = require("../src/common/utils"); +const fetchStats = require("../src/fetchers/stats-fetcher"); +const renderStatsCard = require("../src/cards/stats-card"); module.exports = async (req, res) => { const { diff --git a/api/pin.js b/api/pin.js index b017204972a94..22eb851a84cdb 100644 --- a/api/pin.js +++ b/api/pin.js @@ -5,9 +5,9 @@ const { clampValue, CONSTANTS, logger, -} = require("../src/utils"); -const fetchRepo = require("../src/fetchRepo"); -const renderRepoCard = require("../src/renderRepoCard"); +} = require("../src/common/utils"); +const fetchRepo = require("../src/fetchers/repo-fetcher"); +const renderRepoCard = require("../src/cards/repo-card"); module.exports = async (req, res) => { const { diff --git a/api/top-langs.js b/api/top-langs.js index a758e33b2af43..552dd1ead168d 100644 --- a/api/top-langs.js +++ b/api/top-langs.js @@ -5,9 +5,9 @@ const { parseBoolean, parseArray, CONSTANTS, -} = require("../src/utils"); -const fetchTopLanguages = require("../src/fetchTopLanguages"); -const renderTopLanguages = require("../src/renderTopLanguages"); +} = require("../src/common/utils"); +const fetchTopLanguages = require("../src/fetchers/top-languages-fetcher"); +const renderTopLanguages = require("../src/cards/top-languages-card"); module.exports = async (req, res) => { const { diff --git a/src/renderRepoCard.js b/src/cards/repo-card.js similarity index 97% rename from src/renderRepoCard.js rename to src/cards/repo-card.js index 9721ebf11b222..233812b4b0db9 100644 --- a/src/renderRepoCard.js +++ b/src/cards/repo-card.js @@ -4,10 +4,10 @@ const { getCardColors, FlexLayout, wrapTextMultiline, -} = require("../src/utils"); -const icons = require("./icons"); +} = require("../common/utils"); +const icons = require("../common/icons"); +const Card = require("../common/Card"); const toEmoji = require("emoji-name-map"); -const Card = require("./Card"); const renderRepoCard = (repo, options = {}) => { const { diff --git a/src/renderStatsCard.js b/src/cards/stats-card.js similarity index 96% rename from src/renderStatsCard.js rename to src/cards/stats-card.js index 1eb2d41233194..3c7aab785bb4f 100644 --- a/src/renderStatsCard.js +++ b/src/cards/stats-card.js @@ -3,10 +3,10 @@ const { getCardColors, FlexLayout, encodeHTML, -} = require("../src/utils"); -const { getStyles } = require("./getStyles"); -const icons = require("./icons"); -const Card = require("./Card"); +} = require("../common/utils"); +const { getStyles } = require("../getStyles"); +const icons = require("../common/icons"); +const Card = require("../common/Card"); const createTextNode = ({ icon, diff --git a/src/renderTopLanguages.js b/src/cards/top-languages-card.js similarity index 97% rename from src/renderTopLanguages.js rename to src/cards/top-languages-card.js index 5ccb2e0d23529..5b43261a1cc1e 100644 --- a/src/renderTopLanguages.js +++ b/src/cards/top-languages-card.js @@ -1,5 +1,5 @@ -const { getCardColors, FlexLayout, clampValue } = require("../src/utils"); -const Card = require("./Card"); +const { getCardColors, FlexLayout, clampValue } = require("../common/utils"); +const Card = require("../common/Card"); const createProgressNode = ({ width, color, name, progress }) => { const paddingRight = 95; diff --git a/src/Card.js b/src/common/Card.js similarity index 96% rename from src/Card.js rename to src/common/Card.js index c8b21b69c6ad9..aa96ad0eb2b89 100644 --- a/src/Card.js +++ b/src/common/Card.js @@ -1,5 +1,5 @@ -const { FlexLayout } = require("./utils"); -const { getAnimations } = require("./getStyles"); +const { FlexLayout } = require("../common/utils"); +const { getAnimations } = require("../getStyles"); class Card { constructor({ diff --git a/src/icons.js b/src/common/icons.js similarity index 100% rename from src/icons.js rename to src/common/icons.js diff --git a/src/retryer.js b/src/common/retryer.js similarity index 96% rename from src/retryer.js rename to src/common/retryer.js index 97a607e999a55..7771e22e0c34d 100644 --- a/src/retryer.js +++ b/src/common/retryer.js @@ -1,4 +1,4 @@ -const { logger } = require("./utils"); +const { logger } = require("../common/utils"); const retryer = async (fetcher, variables, retries = 0) => { if (retries > 7) { diff --git a/src/utils.js b/src/common/utils.js similarity index 99% rename from src/utils.js rename to src/common/utils.js index 44d418b6f857d..968006f4ec754 100644 --- a/src/utils.js +++ b/src/common/utils.js @@ -1,6 +1,6 @@ const axios = require("axios"); const wrap = require("word-wrap"); -const themes = require("../themes"); +const themes = require("../../themes"); const renderError = (message, secondaryMessage = "") => { return ` diff --git a/src/fetchRepo.js b/src/fetchers/repo-fetcher.js similarity index 94% rename from src/fetchRepo.js rename to src/fetchers/repo-fetcher.js index 9c74b49ebfd78..c04a4ccbb7a38 100644 --- a/src/fetchRepo.js +++ b/src/fetchers/repo-fetcher.js @@ -1,5 +1,5 @@ -const { request } = require("./utils"); -const retryer = require("./retryer"); +const { request } = require("../common/utils"); +const retryer = require("../common/retryer"); const fetcher = (variables, token) => { return request( diff --git a/src/fetchStats.js b/src/fetchers/stats-fetcher.js similarity index 96% rename from src/fetchStats.js rename to src/fetchers/stats-fetcher.js index 711d59ec15f8d..b1ef22120052a 100644 --- a/src/fetchStats.js +++ b/src/fetchers/stats-fetcher.js @@ -1,7 +1,7 @@ -const { request, logger } = require("./utils"); +const { request, logger } = require("../common/utils"); const axios = require("axios"); -const retryer = require("./retryer"); -const calculateRank = require("./calculateRank"); +const retryer = require("../common/retryer"); +const calculateRank = require("../calculateRank"); const githubUsernameRegex = require("github-username-regex"); require("dotenv").config(); diff --git a/src/fetchTopLanguages.js b/src/fetchers/top-languages-fetcher.js similarity index 90% rename from src/fetchTopLanguages.js rename to src/fetchers/top-languages-fetcher.js index 99356bca8679b..f4cf788473a99 100644 --- a/src/fetchTopLanguages.js +++ b/src/fetchers/top-languages-fetcher.js @@ -1,5 +1,5 @@ -const { request, logger } = require("./utils"); -const retryer = require("./retryer"); +const { request, logger } = require("../common/utils"); +const retryer = require("../common/retryer"); require("dotenv").config(); const fetcher = (variables, token) => { @@ -49,14 +49,14 @@ async function fetchTopLanguages(username) { .filter((node) => { return node.languages.edges.length > 0; }) - // flatten the list of language nodes + // flatten the list of language nodes .reduce((acc, curr) => curr.languages.edges.concat(acc), []) .sort((a, b) => b.size - a.size) .reduce((acc, prev) => { // get the size of the language (bytes) let langSize = prev.size; - // if we already have the language in the accumulator + // if we already have the language in the accumulator // & the current language name is same as previous name // add the size to the language size. if (acc[prev.node.name] && prev.node.name === acc[prev.node.name].name) { diff --git a/tests/api.test.js b/tests/api.test.js index 4811128751a31..2d1c532cbc776 100644 --- a/tests/api.test.js +++ b/tests/api.test.js @@ -2,8 +2,8 @@ require("@testing-library/jest-dom"); const axios = require("axios"); const MockAdapter = require("axios-mock-adapter"); const api = require("../api/index"); -const renderStatsCard = require("../src/renderStatsCard"); -const { renderError, CONSTANTS } = require("../src/utils"); +const renderStatsCard = require("../src/cards/stats-card"); +const { renderError, CONSTANTS } = require("../src/common/utils"); const calculateRank = require("../src/calculateRank"); const stats = { diff --git a/tests/card.test.js b/tests/card.test.js index 318cf56353338..15d1d7b30e7e0 100644 --- a/tests/card.test.js +++ b/tests/card.test.js @@ -1,8 +1,8 @@ require("@testing-library/jest-dom"); const cssToObject = require("css-to-object"); -const Card = require("../src/Card"); -const icons = require("../src/icons"); -const { getCardColors } = require("../src/utils"); +const Card = require("../src/common/Card"); +const icons = require("../src/common/icons"); +const { getCardColors } = require("../src/common/utils"); const { queryByTestId } = require("@testing-library/dom"); describe("Card", () => { diff --git a/tests/fetchRepo.test.js b/tests/fetchRepo.test.js index 6bdfd723b2551..dec4012c2f18f 100644 --- a/tests/fetchRepo.test.js +++ b/tests/fetchRepo.test.js @@ -1,7 +1,7 @@ require("@testing-library/jest-dom"); const axios = require("axios"); const MockAdapter = require("axios-mock-adapter"); -const fetchRepo = require("../src/fetchRepo"); +const fetchRepo = require("../src/fetchers/repo-fetcher"); const data_repo = { repository: { diff --git a/tests/fetchStats.test.js b/tests/fetchStats.test.js index b63312f4f931a..07145786d1b77 100644 --- a/tests/fetchStats.test.js +++ b/tests/fetchStats.test.js @@ -1,7 +1,7 @@ require("@testing-library/jest-dom"); const axios = require("axios"); const MockAdapter = require("axios-mock-adapter"); -const fetchStats = require("../src/fetchStats"); +const fetchStats = require("../src/fetchers/stats-fetcher"); const calculateRank = require("../src/calculateRank"); const data = { diff --git a/tests/fetchTopLanguages.test.js b/tests/fetchTopLanguages.test.js index 9f90e775d6e48..852a0b0fa7177 100644 --- a/tests/fetchTopLanguages.test.js +++ b/tests/fetchTopLanguages.test.js @@ -1,7 +1,7 @@ require("@testing-library/jest-dom"); const axios = require("axios"); const MockAdapter = require("axios-mock-adapter"); -const fetchTopLanguages = require("../src/fetchTopLanguages"); +const fetchTopLanguages = require("../src/fetchers/top-languages-fetcher"); const mock = new MockAdapter(axios); diff --git a/tests/pin.test.js b/tests/pin.test.js index 580fcbaf12e24..a85baf34d341c 100644 --- a/tests/pin.test.js +++ b/tests/pin.test.js @@ -2,8 +2,8 @@ require("@testing-library/jest-dom"); const axios = require("axios"); const MockAdapter = require("axios-mock-adapter"); const pin = require("../api/pin"); -const renderRepoCard = require("../src/renderRepoCard"); -const { renderError } = require("../src/utils"); +const renderRepoCard = require("../src/cards/repo-card"); +const { renderError } = require("../src/common/utils"); const data_repo = { repository: { @@ -17,7 +17,7 @@ const data_repo = { name: "TypeScript", }, forkCount: 100, - isTemplate: false + isTemplate: false, }, }; diff --git a/tests/renderRepoCard.test.js b/tests/renderRepoCard.test.js index 6b741aa716ef5..1d0d6cc886799 100644 --- a/tests/renderRepoCard.test.js +++ b/tests/renderRepoCard.test.js @@ -1,6 +1,6 @@ require("@testing-library/jest-dom"); const cssToObject = require("css-to-object"); -const renderRepoCard = require("../src/renderRepoCard"); +const renderRepoCard = require("../src/cards/repo-card"); const { queryByTestId } = require("@testing-library/dom"); const themes = require("../themes"); diff --git a/tests/renderStatsCard.test.js b/tests/renderStatsCard.test.js index 983a4066cbcb0..ed04dd196dd05 100644 --- a/tests/renderStatsCard.test.js +++ b/tests/renderStatsCard.test.js @@ -1,6 +1,6 @@ require("@testing-library/jest-dom"); const cssToObject = require("css-to-object"); -const renderStatsCard = require("../src/renderStatsCard"); +const renderStatsCard = require("../src/cards/stats-card"); const { getByTestId, @@ -188,7 +188,6 @@ describe("Test renderStatsCard", () => { ); }); - it("should render icons correctly", () => { document.body.innerHTML = renderStatsCard(stats, { show_icons: true, diff --git a/tests/renderTopLanguages.test.js b/tests/renderTopLanguages.test.js index 9996038a363cf..b9d40956a7e21 100644 --- a/tests/renderTopLanguages.test.js +++ b/tests/renderTopLanguages.test.js @@ -1,12 +1,8 @@ require("@testing-library/jest-dom"); const cssToObject = require("css-to-object"); -const renderTopLanguages = require("../src/renderTopLanguages"); +const renderTopLanguages = require("../src/cards/top-languages-card"); -const { - getByTestId, - queryByTestId, - queryAllByTestId, -} = require("@testing-library/dom"); +const { queryByTestId, queryAllByTestId } = require("@testing-library/dom"); const themes = require("../themes"); describe("Test renderTopLanguages", () => { @@ -72,7 +68,7 @@ describe("Test renderTopLanguages", () => { // multiple languages passed document.body.innerHTML = renderTopLanguages(langs, { - hide: ["HTML","css"], + hide: ["HTML", "css"], }); expect(queryAllByTestId(document.body, "lang-name")[0]).toBeInTheDocument( "javascript" @@ -189,18 +185,35 @@ describe("Test renderTopLanguages", () => { }); }); - it('should render with layout compact', () => { - document.body.innerHTML = renderTopLanguages(langs, {layout: 'compact'}); + it("should render with layout compact", () => { + document.body.innerHTML = renderTopLanguages(langs, { layout: "compact" }); - expect(queryByTestId(document.body, "header")).toHaveTextContent("Most Used Languages"); + expect(queryByTestId(document.body, "header")).toHaveTextContent( + "Most Used Languages" + ); - expect(queryAllByTestId(document.body, "lang-name")[0]).toHaveTextContent("HTML 40.00%"); - expect(queryAllByTestId(document.body, "lang-progress")[0]).toHaveAttribute("width","120.00"); + expect(queryAllByTestId(document.body, "lang-name")[0]).toHaveTextContent( + "HTML 40.00%" + ); + expect(queryAllByTestId(document.body, "lang-progress")[0]).toHaveAttribute( + "width", + "120.00" + ); - expect(queryAllByTestId(document.body, "lang-name")[1]).toHaveTextContent("javascript 40.00%"); - expect(queryAllByTestId(document.body, "lang-progress")[1]).toHaveAttribute("width","120.00"); + expect(queryAllByTestId(document.body, "lang-name")[1]).toHaveTextContent( + "javascript 40.00%" + ); + expect(queryAllByTestId(document.body, "lang-progress")[1]).toHaveAttribute( + "width", + "120.00" + ); - expect(queryAllByTestId(document.body, "lang-name")[2]).toHaveTextContent("css 20.00%"); - expect(queryAllByTestId(document.body, "lang-progress")[2]).toHaveAttribute("width","60.00"); - }) + expect(queryAllByTestId(document.body, "lang-name")[2]).toHaveTextContent( + "css 20.00%" + ); + expect(queryAllByTestId(document.body, "lang-progress")[2]).toHaveAttribute( + "width", + "60.00" + ); + }); }); diff --git a/tests/retryer.test.js b/tests/retryer.test.js index 90efb2ef79d11..627dcb22adff4 100644 --- a/tests/retryer.test.js +++ b/tests/retryer.test.js @@ -1,6 +1,6 @@ require("@testing-library/jest-dom"); -const retryer = require("../src/retryer"); -const { logger } = require("../src/utils"); +const retryer = require("../src/common/retryer"); +const { logger } = require("../src/common/utils"); const fetcher = jest.fn((variables, token) => { logger.log(variables, token); diff --git a/tests/top-langs.test.js b/tests/top-langs.test.js index a214eb4e925ac..9d06b6ff05a3a 100644 --- a/tests/top-langs.test.js +++ b/tests/top-langs.test.js @@ -2,8 +2,8 @@ require("@testing-library/jest-dom"); const axios = require("axios"); const MockAdapter = require("axios-mock-adapter"); const topLangs = require("../api/top-langs"); -const renderTopLanguages = require("../src/renderTopLanguages"); -const { renderError } = require("../src/utils"); +const renderTopLanguages = require("../src/cards/top-languages-card"); +const { renderError } = require("../src/common/utils"); const data_langs = { data: { diff --git a/tests/utils.test.js b/tests/utils.test.js index ccd1864c462e9..54e1ddd1a1cca 100644 --- a/tests/utils.test.js +++ b/tests/utils.test.js @@ -6,7 +6,7 @@ const { FlexLayout, getCardColors, wrapTextMultiline, -} = require("../src/utils"); +} = require("../src/common/utils"); const { queryByTestId } = require("@testing-library/dom");