UNPKG

991 BJavaScriptView Raw
1const axios = require('axios')
2const { repo, sha } = require('ci-env')
3const token = require('./token')
4const debug = require('./debug')
5
6const url = 'https://bundlesize-store.now.sh/values'
7
8let enabled = false
9
10if (repo && token) enabled = true
11
12debug('api enabled', enabled)
13
14const get = () => {
15 debug('fetching values', '...')
16
17 return axios
18 .get(`${url}?repo=${repo}&token=${token}`)
19 .then(response => {
20 const values = {}
21 if (response && response.data && response.data.length) {
22 response.data.map(file => (values[file.path] = file.size))
23 }
24 debug('master values', values)
25 return values
26 })
27 .catch(error => {
28 debug('fetching failed', error.response.data)
29 console.log(error)
30 })
31}
32
33const set = values => {
34 if (repo && token) {
35 debug('saving values')
36
37 axios
38 .post(url, { repo, token, sha, values })
39 .catch(error => console.log(error))
40 }
41}
42
43const api = { enabled, set, get }
44module.exports = api