class TextFile { constructor(name, content) { this.name = name; this.content = content; this.lastModified = new Date(); } updateContent(newContent) { this.content = newContent; this.lastModified = new Date(); } } class FileManager { constructor() { this.files = []; this.currentFile = null; } addFile(file) { this.files.push(file); } getFileByName(name) { return this.files.find(file => file.name === name); } removeFile(name) { this.files = this.files.filter(file => file.name !== name); } saveCurrentFile(content) { if (this.currentFile) { this.currentFile.updateContent(content); return true; } return false; } } const fileManager = new FileManager(); // Demo files fileManager.addFile(new TextFile('Example File 1', 'This is an example text file.\nYou can edit this content.')); fileManager.addFile(new TextFile('Example File 2', 'Another example file with some text.\nEdit me!')); function initFileManager() { const fileList = document.querySelector('#file-list'); const editor = document.querySelector('#editor'); const saveBtn = document.querySelector('#save-btn'); const newFileBtn = document.querySelector('#new-file-btn'); function loadFileIntoEditor(file) { fileManager.currentFile = file; editor.value = file.content; } function refreshFileList() { fileList.innerHTML = ''; fileManager.files.forEach(file => { const fileItem = document.createElement('div'); fileItem.className = 'p-3 hover:bg-gray-100 rounded cursor-pointer'; fileItem.innerHTML = `