This repository has been archived on 2021-06-02. You can view files and clone it, but cannot push or open issues or pull requests.
RealtimeDB-OLD/src/web/helper/form.ts

20 lines
530 B
TypeScript

import { Middleware } from "koa";
import getTemplate from "./hb";
interface IFormConfigField {
type: "text" | "number" | "boolean" | "textarea";
label: string;
value?: string;
}
type IFormConfig = { [name: string]: IFormConfigField }
export default function getForm(url: string, title: string, fieldConfig: IFormConfig): Middleware {
let fields = Object.keys(fieldConfig).map(name => ({ name, ...fieldConfig[name] }))
return ctx => ctx.body = getTemplate("forms")({
url,
title,
fields
});
}