(folder)
| 139 | } |
| 140 | |
| 141 | function refreshFolderView(folder) { |
| 142 | const refreshFolder = normalizeFolderPath(folder || 'root'); |
| 143 | const pane = String(window.activePane || 'left'); |
| 144 | try { refreshFolderChildren(refreshFolder); } catch (e) { /* ignore tree refresh errors */ } |
| 145 | if (typeof window.loadFileList === 'function') { |
| 146 | window.loadFileList(refreshFolder, { pane, cursor: '' }); |
| 147 | return; |
| 148 | } |
| 149 | if (window.viewMode === 'gallery' && typeof window.renderGalleryView === 'function') { |
| 150 | window.renderGalleryView(refreshFolder); |
| 151 | return; |
| 152 | } |
| 153 | if (typeof window.renderFileTable === 'function') { |
| 154 | window.renderFileTable(refreshFolder); |
| 155 | } |
| 156 | } |
| 157 | |
| 158 | function inferRecipeTitle(text, fallback = 'Saved recipe') { |
| 159 | const raw = String(text || '').trim().replace(/\s+/g, ' '); |
no test coverage detected