chore(examples): update routify version to 2.x

This commit is contained in:
La Ode Muhammad Al Fatih 2021-02-03 23:17:51 +07:00
commit 1fdd2338f9
32 changed files with 2849 additions and 2693 deletions

View file

@ -0,0 +1,16 @@
{
"name": "ssr",
"version": "1.0.0",
"description": "",
"main": "ssr.js",
"scripts": {
"build": "node utils/build.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"esbuild": "^0.8.8",
"tossr": "^1.3.1"
}
}

View file

@ -0,0 +1,11 @@
const fs = require('fs')
const { tossr } = require('tossr')
const { script, template } = require('./bundle.json')
exports.handler = async (event, context) => {
const qs = Object.entries(event.queryStringParameters)
.map(([key, value]) => `${key}=${value}`)
.join('&');
const body = await tossr(template, script, `${event.path}?${qs}`);
return { statusCode: 200, body: body + '\n<!--ssr rendered-->' }
}

View file

@ -0,0 +1,26 @@
/**
* Creates a JSON and inlines it with esbuild for ssr.js to consume
* {
* data: duh,
* script: inlined main.js
* template: __app.html
* }
*/
const { resolve } = require('path')
const { readFileSync, writeFileSync } = require('fs')
const { build } = require('esbuild')
const scriptPath = resolve(__dirname, '../../../dist/build/main.js')
const templatePath = resolve(__dirname, '../../../dist/__app.html')
const bundlePath = resolve(__dirname, '../build/bundle.js')
build({ entryPoints: [scriptPath], outfile: bundlePath, bundle: true }).then(() => {
const bundle = {
date: new Date,
script: readFileSync(bundlePath, 'utf8'),
template: readFileSync(templatePath, 'utf8')
}
writeFileSync(resolve(__dirname, '../bundle.json'), JSON.stringify(bundle, null, 2))
})