huncwot
Version:
A Programming Environment for TypeScript apps built on top of VS Code
63 lines (51 loc) • 1.59 kB
JavaScript
const Huncwot = require('.');
//const { created } = require('./response.js');
const { validate } = require('./request.js');
// const { protect } = require('./auth.js');
const app = new Huncwot();
//const { compose } = require('./util.js');
const identity = _ => _;
// const browse = _ => 'Browse';
// const prepend = next => _ => ` 1 ${next(_)}`;
// const r = compose(prepend, browse);
// console.log(r);
const prepend = next => async request => `Prefix -> ${await next(request)}`;
const GETs = {
get: {
'/no-return': _ => {
'Created!';
},
'/simple-compose': [identity, _ => 'Simple Compose'],
'/prepend-compose': [prepend, _ => 'Prepend Compose'],
'/request-validation': [
validate({ name: { type: String, required: true } }),
({ params: { admin } }) =>
`Admin param (${admin}) should be absent from this request payload`
],
'/headers': ({ cookies }) => {
console.log(cookies);
return '';
}
// '/secret': [protect(), _ => 'Secret']
},
post: {
'/post-form': ({ params: { name } }) => `Received -> ${name}`,
'/upload': ({ files }) => `Upload -> ${JSON.stringify(files)}`
}
};
// const arr = require('./2.js');
// console.log('hh', arr);
app.start({ routes: GETs });
// const argon2 = require('argon2');
// const main = async () => {
// try {
// const hash = await argon2.hash('manager');
// console.log(hash);
// } catch (err) {
// //...
// }
// };
// main();
// const input = [1, 2, 3, 4];
// const ouput = [];
// output.push(...(Array.isArray(input) ? input : [input]));