From 80d33db3cde56bac600988d7bfc01d3ec78916ba Mon Sep 17 00:00:00 2001 From: Daisuke Yamamura Date: Sun, 31 May 2020 11:42:11 +0900 Subject: [PATCH] =?UTF-8?q?WIP:=20CSS=E3=81=A7=E3=81=AE=E5=AE=9F=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/contributions_collection/index.js | 13 ++ src/components/GitHubContributionGraph.vue | 137 ++++++++++++++++++ src/store/index.js | 2 + .../githubContributionsCollection/index.js | 24 +++ src/views/Home.vue | 52 +++++-- 5 files changed, 212 insertions(+), 16 deletions(-) create mode 100644 src/api/contributions_collection/index.js create mode 100644 src/components/GitHubContributionGraph.vue create mode 100644 src/store/modules/githubContributionsCollection/index.js diff --git a/src/api/contributions_collection/index.js b/src/api/contributions_collection/index.js new file mode 100644 index 0000000..5c0169f --- /dev/null +++ b/src/api/contributions_collection/index.js @@ -0,0 +1,13 @@ +import api from '@/api'; +import getHeader from '@/api/utils/get-header'; + +export default { + async getContributionsCollection(sessionID) { + let option = null; + if (sessionID) { + option = getHeader(sessionID); + } + const contributionsCollectionData = (await api.client.get('/contribution_collections', option)).data; + return contributionsCollectionData; + }, +}; diff --git a/src/components/GitHubContributionGraph.vue b/src/components/GitHubContributionGraph.vue new file mode 100644 index 0000000..9e68070 --- /dev/null +++ b/src/components/GitHubContributionGraph.vue @@ -0,0 +1,137 @@ + + + + + diff --git a/src/store/index.js b/src/store/index.js index 0685493..a110be2 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -12,6 +12,7 @@ import memberIntroduction from './modules/memberIntroduction'; import editUser from './modules/editUser'; import invitation from './modules/invitation'; import ui from './modules/ui'; +import contributionsCollection from './modules/githubContributionsCollection'; Vue.use(Vuex); @@ -29,6 +30,7 @@ export default new Vuex.Store({ editUser, invitation, ui, + contributionsCollection, }, plugins: [ createPersistedState({ diff --git a/src/store/modules/githubContributionsCollection/index.js b/src/store/modules/githubContributionsCollection/index.js new file mode 100644 index 0000000..c1872c2 --- /dev/null +++ b/src/store/modules/githubContributionsCollection/index.js @@ -0,0 +1,24 @@ +import ContributionsCollectionClient from '@/api/contributions_collection'; + +export default { + namespaced: true, + state: { + contributionsCollection: null, + }, + /* eslint-disable no-param-reassign */ + mutations: { + setContributionsCollection(state, contributionsCollection) { + state.contributionsCollection = contributionsCollection; + }, + }, + /* eslint-enable no-param-reassign */ + actions: { + async getContributionsCollection({ commit, dispatch }, sessionID) { + try { + commit('setContributionsCollection', await ContributionsCollectionClient.getContributionsCollection(sessionID)); + } catch (e) { + dispatch('criticalError/createError', e, { root: true }); + } + }, + }, +}; diff --git a/src/views/Home.vue b/src/views/Home.vue index b4350df..75e878d 100644 --- a/src/views/Home.vue +++ b/src/views/Home.vue @@ -1,24 +1,32 @@