@es-labs/node
Version:
Reusable library
72 lines (57 loc) • 1.16 kB
Markdown
bulma
bootstrap
material UI - muicss
DO NOT USE
- material-components-web, semantic ui
input
- text (with regex)
- number
- date
- time
- datetime (local)
- file
- textarea
- replace <input> with <textarea>
Extended input
- autocomplete / select (can use for selects also..., if multiple..., show tags list, delete from tags list?)
- single
- multiple
- allow new (always false if select)
bwc-autocomplete (if multiple, use tags? remove tags when not needed) - tag
bs-autocomplete - badge
mui-autocomplete - chips
- link
- a[href]
- button
## Input
label: <label> innerText, additional classes
input: <input> attrs: type, pattern, placeholder, additional classes
helper: <p>
{
tag:
attrs: []
// event:
children: [
]
}
function formEl (node) {
const { tag, className, attrs, children } = node
const el = document.createElement(tag)
if (className) {
el.className = className
}
if (attrs) {
for (let key in attrs) {
el.setAttirbutes(key, attrs[key])
}
}
if (children) {
children.forEach(child => {
childEl = formEl(child)
el.appendChild(childEl)
})
}
return el
}