UNPKG

@reginaldo-marinho/rucula-js

Version:

Crie telas em Minutos! 🚀

46 lines (35 loc) • 1.37 kB
import { ManagmentObject } from "../object/ObjectManagment" export class EventManagment { private managmentObject:ManagmentObject private p:string private elementRoot:HTMLElement constructor(p:string, managmentObject:ManagmentObject,elementRoot:HTMLElement) { this.p = p this.managmentObject = managmentObject this.elementRoot = elementRoot } getFieldDetails (event:CustomEvent) { let identity = event.detail.identity return { identity: (identity.element as HTMLElement).getAttribute('identity'), name:identity.name, row: identity.row, value: this.managmentObject.getPropert(identity.name), targetPathWithRow:(targetPath:string) => { //? This method helps to create Target Path with the current event line return `${targetPath}.${identity.row}` } } } on(event:string, callback:any, query?:string) { let rucula = this.elementRoot if(query == undefined){ rucula.addEventListener(`${this.p}${event}`, (e) => callback(e)) return } let itens = rucula.querySelectorAll(query) itens.forEach((item) => { item.addEventListener(event, (e) => callback(e)) }) } }