Skip to content

Commit

Permalink
add headers and refactor
Browse files Browse the repository at this point in the history
  • Loading branch information
JoviDeCroock committed Jul 14, 2020
1 parent 17584b4 commit 1829c81
Show file tree
Hide file tree
Showing 7 changed files with 16 additions and 261 deletions.
4 changes: 4 additions & 0 deletions netlify.toml
Original file line number Diff line number Diff line change
@@ -1,2 +1,6 @@
[build]
functions = "dist/lambda"
[[headers]]
for = "/*"
[headers.values]
Cache-Control = "public, max-age=3000"
170 changes: 1 addition & 169 deletions size-plugin-browser.json
Original file line number Diff line number Diff line change
@@ -1,169 +1 @@
[
{
"timestamp": 1593808916710,
"files": [
{
"filename": "sw-esm.js",
"previous": 8448,
"size": 8448,
"diff": 0
},
{
"filename": "sw.js",
"previous": 8445,
"size": 8445,
"diff": 0
},
{
"filename": "bundle.*****.esm.js",
"previous": 27206,
"size": 27160,
"diff": -46
},
{
"filename": "editor.chunk.b63ca.css",
"previous": 2121,
"size": 2121,
"diff": 0
},
{
"filename": "editor.chunk.*****.esm.js",
"previous": 66879,
"size": 66879,
"diff": 0
},
{
"filename": "emoji.chunk.*****.esm.js",
"previous": 8859,
"size": 8859,
"diff": 0
},
{
"filename": "polyfills.*****.esm.js",
"previous": 2136,
"size": 2136,
"diff": 0
},
{
"filename": "runner.chunk.*****.esm.js",
"previous": 7999,
"size": 7999,
"diff": 0
},
{
"filename": "5.chunk.b8f8a.css",
"previous": 1476,
"size": 0,
"diff": -1476
},
{
"filename": "5.chunk.*****.esm.js",
"previous": 3413,
"size": 3379,
"diff": -34
},
{
"filename": "bundle.51329.css",
"previous": 9930,
"size": 0,
"diff": -9930
},
{
"filename": "prism.e9154.worker.js",
"previous": 7324,
"size": 7324,
"diff": 0
},
{
"filename": "markdown.9e3c3.worker.js",
"previous": 10002,
"size": 10002,
"diff": 0
},
{
"filename": "repl.5aaa2.worker.js",
"previous": 71764,
"size": 71764,
"diff": 0
},
{
"filename": "prism.4a4e2.worker.js",
"previous": 7323,
"size": 7323,
"diff": 0
},
{
"filename": "markdown.262b2.worker.js",
"previous": 10257,
"size": 10257,
"diff": 0
},
{
"filename": "repl.39c06.worker.js",
"previous": 73425,
"size": 73425,
"diff": 0
},
{
"filename": "editor.chunk.17c2c.js",
"previous": 66910,
"size": 66910,
"diff": 0
},
{
"filename": "emoji.chunk.62c4f.js",
"previous": 8849,
"size": 8849,
"diff": 0
},
{
"filename": "polyfills.510ca.js",
"previous": 2134,
"size": 2134,
"diff": 0
},
{
"filename": "runner.chunk.327f8.js",
"previous": 8038,
"size": 8038,
"diff": 0
},
{
"filename": "bundle.bb138.js",
"previous": 27494,
"size": 0,
"diff": -27494
},
{
"filename": "5.chunk.cab52.js",
"previous": 3526,
"size": 0,
"diff": -3526
},
{
"filename": "bundle.b37af.css",
"previous": 0,
"size": 9837,
"diff": 9837
},
{
"filename": "5.chunk.18ffb.css",
"previous": 0,
"size": 1435,
"diff": 1435
},
{
"filename": "bundle.4c49b.js",
"previous": 0,
"size": 27442,
"diff": 27442
},
{
"filename": "5.chunk.25509.js",
"previous": 0,
"size": 3496,
"diff": 3496
}
]
}
]
[{"timestamp":1594661804180,"files":[{"filename":"sw-esm.js","previous":8448,"size":8448,"diff":0},{"filename":"sw.js","previous":8445,"size":8445,"diff":0},{"filename":"bundle.*****.esm.js","previous":27160,"size":26963,"diff":-197},{"filename":"editor.chunk.b63ca.css","previous":2121,"size":0,"diff":-2121},{"filename":"editor.chunk.*****.esm.js","previous":66879,"size":66878,"diff":-1},{"filename":"emoji.chunk.*****.esm.js","previous":8859,"size":8860,"diff":1},{"filename":"polyfills.*****.esm.js","previous":2136,"size":2136,"diff":0},{"filename":"runner.chunk.*****.esm.js","previous":7999,"size":7998,"diff":-1},{"filename":"5.chunk.*****.esm.js","previous":3379,"size":3395,"diff":16},{"filename":"prism.e9154.worker.js","previous":7324,"size":0,"diff":-7324},{"filename":"markdown.9e3c3.worker.js","previous":10002,"size":10002,"diff":0},{"filename":"repl.5aaa2.worker.js","previous":71764,"size":0,"diff":-71764},{"filename":"prism.4a4e2.worker.js","previous":7323,"size":0,"diff":-7323},{"filename":"markdown.262b2.worker.js","previous":10257,"size":10257,"diff":0},{"filename":"repl.39c06.worker.js","previous":73425,"size":0,"diff":-73425},{"filename":"editor.chunk.17c2c.js","previous":66910,"size":0,"diff":-66910},{"filename":"emoji.chunk.62c4f.js","previous":8849,"size":0,"diff":-8849},{"filename":"polyfills.510ca.js","previous":2134,"size":2134,"diff":0},{"filename":"runner.chunk.327f8.js","previous":8038,"size":0,"diff":-8038},{"filename":"bundle.b37af.css","previous":9837,"size":0,"diff":-9837},{"filename":"5.chunk.18ffb.css","previous":1435,"size":0,"diff":-1435},{"filename":"bundle.4c49b.js","previous":27442,"size":0,"diff":-27442},{"filename":"5.chunk.25509.js","previous":3496,"size":0,"diff":-3496},{"filename":"prism.24b11.worker.js","previous":0,"size":7323,"diff":7323},{"filename":"repl.93bfc.worker.js","previous":0,"size":71964,"diff":71964},{"filename":"bundle.0b323.css","previous":0,"size":9837,"diff":9837},{"filename":"editor.chunk.e40fb.css","previous":0,"size":2121,"diff":2121},{"filename":"5.chunk.9b2fb.css","previous":0,"size":1435,"diff":1435},{"filename":"prism.7e10e.worker.js","previous":0,"size":7322,"diff":7322},{"filename":"repl.434c0.worker.js","previous":0,"size":73654,"diff":73654},{"filename":"bundle.472ec.js","previous":0,"size":27251,"diff":27251},{"filename":"editor.chunk.0b4bd.js","previous":0,"size":66910,"diff":66910},{"filename":"emoji.chunk.a6ba4.js","previous":0,"size":8848,"diff":8848},{"filename":"runner.chunk.c259a.js","previous":0,"size":8037,"diff":8037},{"filename":"5.chunk.9d09e.js","previous":0,"size":3508,"diff":3508}]},{"timestamp":1593808916710,"files":[{"filename":"sw-esm.js","previous":8448,"size":8448,"diff":0},{"filename":"sw.js","previous":8445,"size":8445,"diff":0},{"filename":"bundle.*****.esm.js","previous":27206,"size":27160,"diff":-46},{"filename":"editor.chunk.b63ca.css","previous":2121,"size":2121,"diff":0},{"filename":"editor.chunk.*****.esm.js","previous":66879,"size":66879,"diff":0},{"filename":"emoji.chunk.*****.esm.js","previous":8859,"size":8859,"diff":0},{"filename":"polyfills.*****.esm.js","previous":2136,"size":2136,"diff":0},{"filename":"runner.chunk.*****.esm.js","previous":7999,"size":7999,"diff":0},{"filename":"5.chunk.b8f8a.css","previous":1476,"size":0,"diff":-1476},{"filename":"5.chunk.*****.esm.js","previous":3413,"size":3379,"diff":-34},{"filename":"bundle.51329.css","previous":9930,"size":0,"diff":-9930},{"filename":"prism.e9154.worker.js","previous":7324,"size":7324,"diff":0},{"filename":"markdown.9e3c3.worker.js","previous":10002,"size":10002,"diff":0},{"filename":"repl.5aaa2.worker.js","previous":71764,"size":71764,"diff":0},{"filename":"prism.4a4e2.worker.js","previous":7323,"size":7323,"diff":0},{"filename":"markdown.262b2.worker.js","previous":10257,"size":10257,"diff":0},{"filename":"repl.39c06.worker.js","previous":73425,"size":73425,"diff":0},{"filename":"editor.chunk.17c2c.js","previous":66910,"size":66910,"diff":0},{"filename":"emoji.chunk.62c4f.js","previous":8849,"size":8849,"diff":0},{"filename":"polyfills.510ca.js","previous":2134,"size":2134,"diff":0},{"filename":"runner.chunk.327f8.js","previous":8038,"size":8038,"diff":0},{"filename":"bundle.bb138.js","previous":27494,"size":0,"diff":-27494},{"filename":"5.chunk.cab52.js","previous":3526,"size":0,"diff":-3526},{"filename":"bundle.b37af.css","previous":0,"size":9837,"diff":9837},{"filename":"5.chunk.18ffb.css","previous":0,"size":1435,"diff":1435},{"filename":"bundle.4c49b.js","previous":0,"size":27442,"diff":27442},{"filename":"5.chunk.25509.js","previous":0,"size":3496,"diff":3496}]}]
68 changes: 1 addition & 67 deletions size-plugin-ssr.json
Original file line number Diff line number Diff line change
@@ -1,67 +1 @@
[
{
"timestamp": 1593808846484,
"files": [
{
"filename": "editor.chunk.*****.js",
"previous": 66430,
"size": 66430,
"diff": 0
},
{
"filename": "emoji.chunk.*****.js",
"previous": 8834,
"size": 8834,
"diff": 0
},
{
"filename": "runner.chunk.*****.js",
"previous": 8062,
"size": 8062,
"diff": 0
},
{
"filename": "ssr-bundle.js",
"previous": 31207,
"size": 31122,
"diff": -85
},
{
"filename": "editor.chunk.b63ca.css",
"previous": 3131,
"size": 3131,
"diff": 0
},
{
"filename": "ssr-bundle.f0370.css",
"previous": 12419,
"size": 0,
"diff": -12419
},
{
"filename": "markdown.7f423.worker.js",
"previous": 10198,
"size": 10198,
"diff": 0
},
{
"filename": "prism.8618f.worker.js",
"previous": 7246,
"size": 7246,
"diff": 0
},
{
"filename": "repl.ea906.worker.js",
"previous": 73733,
"size": 73733,
"diff": 0
},
{
"filename": "ssr-bundle.df130.css",
"previous": 0,
"size": 12331,
"diff": 12331
}
]
}
]
[{"timestamp":1594661741775,"files":[{"filename":"editor.chunk.*****.js","previous":66430,"size":66429,"diff":-1},{"filename":"emoji.chunk.*****.js","previous":8834,"size":8835,"diff":1},{"filename":"runner.chunk.*****.js","previous":8062,"size":8060,"diff":-2},{"filename":"ssr-bundle.js","previous":31122,"size":30956,"diff":-166},{"filename":"editor.chunk.b63ca.css","previous":3131,"size":0,"diff":-3131},{"filename":"markdown.7f423.worker.js","previous":10198,"size":10198,"diff":0},{"filename":"prism.8618f.worker.js","previous":7246,"size":0,"diff":-7246},{"filename":"repl.ea906.worker.js","previous":73733,"size":0,"diff":-73733},{"filename":"ssr-bundle.df130.css","previous":12331,"size":0,"diff":-12331},{"filename":"prism.9c40a.worker.js","previous":0,"size":7245,"diff":7245},{"filename":"repl.b0d16.worker.js","previous":0,"size":73925,"diff":73925},{"filename":"editor.chunk.e40fb.css","previous":0,"size":3130,"diff":3130},{"filename":"ssr-bundle.93afb.css","previous":0,"size":12346,"diff":12346}]},{"timestamp":1593808846484,"files":[{"filename":"editor.chunk.*****.js","previous":66430,"size":66430,"diff":0},{"filename":"emoji.chunk.*****.js","previous":8834,"size":8834,"diff":0},{"filename":"runner.chunk.*****.js","previous":8062,"size":8062,"diff":0},{"filename":"ssr-bundle.js","previous":31207,"size":31122,"diff":-85},{"filename":"editor.chunk.b63ca.css","previous":3131,"size":3131,"diff":0},{"filename":"ssr-bundle.f0370.css","previous":12419,"size":0,"diff":-12419},{"filename":"markdown.7f423.worker.js","previous":10198,"size":10198,"diff":0},{"filename":"prism.8618f.worker.js","previous":7246,"size":7246,"diff":0},{"filename":"repl.ea906.worker.js","previous":73733,"size":73733,"diff":0},{"filename":"ssr-bundle.df130.css","previous":0,"size":12331,"diff":12331}]}]
2 changes: 1 addition & 1 deletion src/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"de": "German",
"it": "Italian"
},
"repo": "preactjs/preact",
"repo": "preact",
"docsearch": {
"apiKey": "2a2ff54c5bfa1eea173cdfbe8a0bcace",
"indexName": "preact"
Expand Down
13 changes: 4 additions & 9 deletions src/lambda/release.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@ import fetch from 'node-fetch';

exports.handler = async event => {
const { version, url } = await fetchRelease(
event.queryStringParameters.repo || 'preactjs/preact'
`preactjs/${event.queryStringParameters.repo || 'preact'}`
);

return {
statusCode: 200,
body: JSON.stringify({
Expand All @@ -21,11 +22,6 @@ function checkStatus(r) {
return r;
}

function memoize(fn) {
const CACHE = {};
return key => CACHE[key] || (CACHE[key] = fn(key));
}

const semverReg = /^.*?(\d+)\.(\d+)\.(\d+)(.*)?$/g;

/**
Expand All @@ -42,7 +38,7 @@ function parseVersion(version) {
return [0, 0, 0];
}

const fetchRelease = memoize(repo =>
const fetchRelease = repo =>
fetch(`https://api.github.com/repos/${repo}/releases`)
.then(checkStatus)
.then(r => r.json())
Expand Down Expand Up @@ -73,5 +69,4 @@ const fetchRelease = memoize(repo =>
version: releases.length ? releases[0].tag_name : 'unknown',
url: releases.length ? releases[0].html_url : '#'
};
})
);
});
18 changes: 4 additions & 14 deletions src/lambda/repo.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import fetch from 'node-fetch';

exports.handler = async function(event, context, callback) {
exports.handler = async event => {
const result = await repoInfo(
event.queryStringParameters.repo || 'preactjs/preact'
);
Expand All @@ -14,21 +14,11 @@ function checkStatus(r) {
if (!r.ok) {
throw new Error(`${r.status}: Request failed for '${r.url}'`);
}
return r;
}

function memoize(fn) {
const CACHE = {};
return key => CACHE[key] || (CACHE[key] = fn(key));
return r;
}

// TODO: use GraphQL to avoid fetching so much data
const repoInfo = memoize(repo =>
const repoInfo = repo =>
fetch(`https://api.github.com/repos/${repo}`)
.then(checkStatus)
.then(r => r.json())
.catch(() => ({
stargazers_count: 9999,
watchers_count: 9999
}))
);
.then(r => r.json());
2 changes: 1 addition & 1 deletion src/lib/github.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ export const repoInfo = repo =>
}));

export const fetchRelease = repo =>
fetch(`${baseUrl}release?repo=${repo}`, { mode: 'no-cors' })
fetch(`${baseUrl}release?repo=${repo}`, { mode: 'omit' })
.then(checkStatus)
.then(r => r.json())
.then(d => ({
Expand Down

0 comments on commit 1829c81

Please sign in to comment.