all repos — h3 @ 0d4d426f3bb76982050378d573b2956b21af39ec

A tiny, extremely minimalist JavaScript microframework.

example/assets/js/todo.js

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
import h3 from "./h3.js";

export default function Todo(actions) {
  const { toggle, remove } = actions;
  return function (data) {
    const todoStateClass = data.done ? ".done" : ".todo";
    return h3("div.todo-item", { id: data.key }, [
      h3(`div.todo-content${todoStateClass}`, [
        h3("span.todo-text", { onclick: () => toggle(data) }, [data.text]),
      ]),
      h3("span.delete-todo", { onclick: () => remove(data) }, ["✘"]),
    ]);
  };
}