class FileView{ parentElem = undefined selected = [] /** * @param {HTMLElement} fileViewElem * @param {Function} doubleClickCallback */ constructor(fileViewElem, doubleClickCallback){ //TODO check all params this.parentElem = fileViewElem fileViewElem.addEventListener('click', (event) => { console.log(event) if (event.detail === 1){ this.selected.forEach(element => { // console.log element.classList.remove("Selected") }); this.selected = [] this.selected.push(event.target) event.target.classList.add("Selected") } else if (event.detail === 2) { doubleClickCallback(event) } }) } /** Get html of folder by path * @param {string} path */ OpenFolder(path){ fetch(`${window.location.origin}/system/wde/widgets/file-tile-view?path=${path}`) //TODO Move to wde func. Or Not? .then((response) => response.text()) .then((html) => { //TODO // console.log(responseStatus) // if (responseStatus != 200) { // WebDesktopEnvironment.Alert("Error") // } this.parentElem.innerHTML = html }).catch((error) => { WebDesktopEnvironment.Alert(error); }) } }