Skip to content

Instantly share code, notes, and snippets.

View tjmonsi's full-sized avatar

Toni-Jan Keith Monserrat tjmonsi

View GitHub Profile
import { LitElement, html } from 'lit';
import { state } from '../../worker/index.js';
export class Page extends LitElement {
async login (event) {
event.preventDefault();
const { target: form } = event;
const username = form.username.value;
import { expose } from 'comlink';
const store = {
// stores data in memory here
data: {},
// stores all functions that will be called when a data has been updated
fns: {},
set: async function (key, value) {
// stores the data here
import { wrap } from 'comlink';
import Worker from './index.worker.js';
export const worker = new Worker();
export const state = wrap(worker);
import { LitElement, html } from 'lit';
export class Component extends LitElement {
static properties = {
isLoggedIn: {
type: Boolean
}
}
constructor () {
import { LitElement, html } from 'lit';
export class Page extends LitElement {
static properties = {
blog: {
type: Object
}
}
async connectedCallback () {
import { LitElement, html } from 'lit';
export class Page extends LitElement {
static properties = {
blogs: {
type: Array
}
}
constructor () {
import { html } from 'lit';
import '@tjmonsi/small-router/small-router.js';
const el = document.querySelector('small-router');
if (el) {
el.routes = {
'/': {
render: () => html`<home-page></home-page>`,
preRender: () => import('./pages/home/index.js')
import { LitElement, html } from 'lit';
export class Page extends LitElement {
createRenderRoot () {
// this adds it to the main HTML DOM instead of the shadowDOM
return this;
}
render () {
return html`hello home page`
@tjmonsi
tjmonsi / index.js
Created December 15, 2021 05:51
Small router
import { html } from 'lit';
import '@tjmonsi/small-router/small-router.js';
const el = document.querySelector('small-router');
if (el) {
el.routes = {
'/': {
render: () => html`Hello world`
}
@tjmonsi
tjmonsi / app.js
Created December 15, 2021 05:44
Full app.js v1
// Require the framework and instantiate it
import fastify from 'fastify';
import stat from 'fastify-static';
import jwt from 'fastify-jwt';
import cookie from 'fastify-cookie';
import session from 'fastify-session';
import openApiGlue from 'fastify-openapi-glue';
import swagger from 'fastify-swagger';
import sensible from 'fastify-sensible';
import { Service } from './services/index.js';