Skip to content

Commit

Permalink
apply eslint
Browse files Browse the repository at this point in the history
  • Loading branch information
yshrsmz committed Mar 21, 2018
1 parent 1344880 commit ed50680
Show file tree
Hide file tree
Showing 22 changed files with 361 additions and 654 deletions.
2 changes: 2 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
node_modules/
.nuxt/
dist/
10 changes: 5 additions & 5 deletions apollo/client-configs/default.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { ApolloLink } from 'apollo-link'
import { HttpLink } from 'apollo-link-http'
import { InMemoryCache } from 'apollo-cache-inmemory'
import { ApolloLink } from 'apollo-link';
import { HttpLink } from 'apollo-link-http';
import { InMemoryCache } from 'apollo-cache-inmemory';

export default (ctx) => {
const httpLink = new HttpLink({ uri:'https://api.github.com/graphql' });
Expand All @@ -18,10 +18,10 @@ export default (ctx) => {
} else {
return null;
}
})
});
const link = middlewareLink.concat(httpLink);
return {
link,
cache: new InMemoryCache()
};
}
};
6 changes: 3 additions & 3 deletions apollo/queries/index.d.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
declare module '*.gql' {
import { DocumentNode } from 'graphql'
const value: DocumentNode
export default value
import { DocumentNode } from 'graphql';
const value: DocumentNode;
export default value;
}
2 changes: 1 addition & 1 deletion buildscripts/githubapi-fetcher/config.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ module.exports = {
repoOwner: process.env.GH_REPO_OWNER,
repoName: process.env.GH_REPO_NAME,
outputDir: '../../assets/api'
}
};
93 changes: 53 additions & 40 deletions buildscripts/githubapi-fetcher/index.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
/* eslint no-console:0 */
const config = require('./config');
const fs = require('fs');
const { createApolloFetch } = require('apollo-fetch');
Expand All @@ -19,23 +20,45 @@ apolloFectch.use(({ request, options }, next) => {
next();
});

async function generateJsons() {
try {
// generate json for home
var { milestones } = await generateIndexJson();

// generate json for each issue
for (var i = 0; i < milestones.nodes.length; i++){
console.log('fetching milestone:', milestones.nodes[i].number)
var milestone = await generateIssueJson(milestones.nodes[i].number)
/**
* generate json for issue
* @param {number} milestoneNumber milestone number to fetch
* @returns {Void} Void
*/
async function generateIssueJson(milestoneNumber) {
var { data, errors } = await apolloFectch(
{
query: milestoneQuery,
variables: {
repoOwner: config.repoOwner,
repoName: config.repoName,
milestoneNumber: milestoneNumber,
fetchIssuesPerMilestone: 50,
fetchCommentsPerIssue: 10
},
operationName: 'getMilestoneByNumber'
}
);

} catch (e) {
console.error('Failed to generate json', e)
return null;
if (errors) {
console.error(errors);
} else {
let milestone = data.repository.milestone;
if (milestone.issues.pageInfo.hasNextPage) {
// TODO: fetch issues & comments recursively
}
fs.writeFileSync(
`./static/api/issue/${milestone.id}.json`,
JSON.stringify(milestone, null, ' '),
'utf8'
);
}
}

/**
* generate json file for index
* @returns {object} repository
*/
async function generateIndexJson() {
var { data, errors } = await apolloFectch(
{
Expand All @@ -46,10 +69,10 @@ async function generateIndexJson() {
},
operationName: 'getMilestoneDigests'
}
)
);

if (errors) {
console.log('Failed to generate index.json', errors)
console.log('Failed to generate index.json', errors);
return null;
} else {
let repository = data.repository;
Expand All @@ -65,34 +88,24 @@ async function generateIndexJson() {
}
}

// generate json for issue
async function generateIssueJson(milestoneNumber) {
var { data, errors } = await apolloFectch(
{
query: milestoneQuery,
variables: {
repoOwner: config.repoOwner,
repoName: config.repoName,
milestoneNumber: milestoneNumber,
fetchIssuesPerMilestone: 50,
fetchCommentsPerIssue: 10
},
operationName: 'getMilestoneByNumber'
}
)
/**
* entry method.
* generate all required json files.
* @returns {Void} Void
*/
async function generateJsons() {
try {
// generate json for home
var { milestones } = await generateIndexJson();

if (errors) {
console.error(errors)
} else {
let milestone = data.repository.milestone;
if (milestone.issues.pageInfo.hasNextPage) {
// TODO: fetch issues & comments recursively
// generate json for each issue
for (var i = 0; i < milestones.nodes.length; i++){
console.log('fetching milestone:', milestones.nodes[i].number);
var milestone = await generateIssueJson(milestones.nodes[i].number);
}
fs.writeFileSync(
`./static/api/issue/${milestone.id}.json`,
JSON.stringify(milestone, null, ' '),
'utf8'
);

} catch (e) {
console.error('Failed to generate json', e);
}
}

Expand Down
2 changes: 1 addition & 1 deletion components/AppFooter.vue
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
<script lang="ts">
export default {
}
};
</script>


2 changes: 1 addition & 1 deletion components/AppHeader.vue
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@
<script lang="ts">
export default {
}
};
</script>
18 changes: 11 additions & 7 deletions components/IssueLabel.vue
Original file line number Diff line number Diff line change
@@ -1,13 +1,17 @@
<template>
<v-chip
class="caption"
:style="chipColorStyle"
:key="index"
:style="chipColorStyle"><a :href="githubLabelLink" target="_blank">{{ labelInfo.name }}</a></v-chip>
class="caption">
<a
:href="githubLabelLink"
target="_blank">{{ labelInfo.name }}</a>
</v-chip>
</template>

<script lang="ts">
import { Component, Prop, Vue } from "nuxt-property-decorator";
import { GHLabel } from "store";
import { Component, Prop, Vue } from 'nuxt-property-decorator';
import { GHLabel } from 'store';
@Component({
name: 'issue-label'
Expand All @@ -19,12 +23,12 @@ export default class IssueLabel extends Vue {
@Prop() labelInfo: GHLabel;
get chipColorStyle(): string {
const color = `#${this.labelInfo.color}`
return `background-color: ${color}; border-color: ${color};`
const color = `#${this.labelInfo.color}`;
return `background-color: ${color}; border-color: ${color};`;
}
get githubLabelLink(): string {
return `https://github.com/yshrsmz/androiddagashi/issues?q=label%3A${this.labelInfo.name}`
return `https://github.com/yshrsmz/androiddagashi/issues?q=label%3A${this.labelInfo.name}`;
}
}
</script>
Expand Down
13 changes: 7 additions & 6 deletions components/IssueLink.vue
Original file line number Diff line number Diff line change
@@ -1,15 +1,17 @@
<template>
<v-list-tile nuxt :to="{ name: 'issue-id', params: { id:milestone.id } }">
<v-list-tile
:to="{ name: 'issue-id', params: { id:milestone.id } }"
nuxt >
<v-list-tile-content>
<v-list-tile-title v-html="title"/>
<v-list-tile-sub-title v-html="getSummary(milestone)"></v-list-tile-sub-title>
<v-list-tile-sub-title v-html="getSummary(milestone)"/>
</v-list-tile-content>
</v-list-tile>
</template>

<script lang="ts">
import { Component, Prop, Provide, Vue } from "nuxt-property-decorator";
import { GHMilestone } from "~/store";
import { Component, Prop, Provide, Vue } from 'nuxt-property-decorator';
import { GHMilestone } from '~/store';
@Component({
name: "issue-link"
Expand All @@ -26,10 +28,9 @@ export default class IssueLink extends Vue {
}
getSummary = (milestone: GHMilestone): string => {
console.log("milestone", milestone);
const issues = milestone.issues;
return issues.nodes.map(issue => issue.title).join(" / ");
return issues.nodes.map(issue => issue.title).join(' / ');
};
}
</script>
Expand Down
142 changes: 0 additions & 142 deletions gqlschema.d.ts

This file was deleted.

Loading

0 comments on commit ed50680

Please sign in to comment.