mirror of
https://github.com/barsdeveloper/ueblueprint.git
synced 2026-02-04 08:50:33 +08:00
42 lines
743 B
JavaScript
42 lines
743 B
JavaScript
// @ts-check
|
|
|
|
/**
|
|
* @typedef {import("../element/IElement").default} IElement
|
|
*/
|
|
|
|
/**
|
|
* @template {IElement} T
|
|
*/
|
|
export default class ITemplate {
|
|
|
|
/** @type {Object[]} */
|
|
inputObjects = []
|
|
|
|
/**
|
|
* @param {T} entity
|
|
*/
|
|
render(entity) {
|
|
return ""
|
|
}
|
|
|
|
/**
|
|
* @param {T} element
|
|
*/
|
|
setup(element) {
|
|
// TODO replace with the safer element.setHTML(...) when it will be availableBreack
|
|
element.innerHTML = this.render(element)
|
|
this.inputObjects = this.createInputObjects()
|
|
}
|
|
|
|
/**
|
|
* @param {T} element
|
|
*/
|
|
cleanup(element) {
|
|
this.inputObjects.forEach(v => v.unlistenDOMElement())
|
|
}
|
|
|
|
createInputObjects() {
|
|
return []
|
|
}
|
|
}
|