Как получилось, что график активности фиксации на github показывает разные цвета по сравнению с данными, полученными из его API

#javascript #api #github #commit #github-api

Вопрос:

Проблема 1 — На графике цветовая схема отличается от схемы, полученной с помощью API

пример графика

#39d353,#26a641,#006d32,#0e4429

В то время как с помощью API я получал эти 4 цвета —

 > 0: "#9be9a8" ​​​​​​ 1: "#40c463" ​​​​​​ 2: "#30a14e" ​​​​​​ 
> 3: "#216e39"
 

Я знаю, что каждый блок представляет собой неделю, но все же, почему это не одно и то же?

Проблема 2 — На графике логика выбора цвета обратная тому, что вы получаете через API, т. е. данные API дают вам более темный цвет для большего количества фиксаций, но для графика чем больше фиксаций, тем ярче цвет.

Мой код:

 async function getContributions(token, username) {
        const headers = {
            'Authorization': `bearer ${token}`,
        }
        const body = {
            "query": `query {
        user(login: "${username}") {
          name
          contributionsCollection {
            contributionCalendar {
              colors
              totalContributions
              weeks {
                contributionDays {
                  color
                  contributionCount
                  date
                }
                firstDay
              }
            }
          }
        }
      }`
        }
        const response = await fetch('https://api.github.com/graphql', { method: 'POST', body: JSON.stringify(body), headers: headers })
        const data = await response.json()
        return data
    }

    const getDaily = async () => {
        const data = await getContributions('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', 'anoushk1234')
        
        const conCal = data.data.user.contributionsCollection.contributionCalendar.weeks;
        const todayobj = conCal.pop().contributionDays.pop();
        console.log(data)
 

}

Ответ API

Комментарии:

1. Если они становятся темнее, я бы предположил, что API задает цвета для схемы пользовательского интерфейса light.

2. @jonrsharpe о да, это имеет смысл, есть идеи о том, как получить темные и светлые цвета темы?

3. Ничего не предлагается в docs.github.com/en/graphql/reference/… , У меня нет особых причин думать, что они раскрывают и то, и другое; почему бы не использовать уровень вклада, чтобы определить свой собственный цвет?

4. @jonrsharpe это работает, большое тебе спасибо, ууу