send/app/ui/body.js

22 lines
570 B
JavaScript
Raw Normal View History

const html = require('choo/html');
const Header = require('./header');
const Footer = require('./footer');
module.exports = function body(main) {
return function(state, emit) {
const b = html`
<body
2019-09-09 17:34:55 +00:00
class="flex flex-col items-center font-sans md:h-screen md:bg-grey-10 dark:bg-black"
>
2020-10-15 16:08:28 +00:00
${state.cache(Header, 'header').render()} ${main(state, emit)}
${state.cache(Footer, 'footer').render()}
</body>
`;
if (state.layout) {
// server side only
return state.layout(state, b);
}
return b;
};
};