diff --git a/src/pages/fileBrowser/fileBrowser.js b/src/pages/fileBrowser/fileBrowser.js index ee56da6a1..dbe61e368 100644 --- a/src/pages/fileBrowser/fileBrowser.js +++ b/src/pages/fileBrowser/fileBrowser.js @@ -31,7 +31,7 @@ import Url from "utils/Url"; import _addMenu from "./add-menu.hbs"; import _addMenuHome from "./add-menu-home.hbs"; import _template from "./fileBrowser.hbs"; -import _list from "./list.hbs"; +import _listItem from "./listItem.hbs"; import util from "./util"; /** @@ -1720,14 +1720,43 @@ function FileBrowserInclude(mode, info, doesOpenLast = true) { if (doesReload) reload(); } + /** + * @param {string} [msg] + * @returns {HTMLDivElement | null} + */ + function createPlaceholderEl(msg) { + return
{msg}
; + } + + /** + * @returns {HTMLUListElement} + */ + function createListEl() { + return ; + } + + /** + * @param {object} obj + * @returns {HTMLLIElement} + */ + function createListItemEl(obj) { + return helpers.parseHTML(mustache.render(_listItem, obj)); + } + function render(dir) { const { list, scroll } = dir; - const $list = helpers.parseHTML( - mustache.render(_list, { - msg: strings["empty folder message"], - list, - }), - ); + const $list = createListEl(); + + if (list.length) { + for (const item of list) { + const el = createListItemEl(item); + $list.appendChild(el); + } + } else { + const msg = strings["empty folder message"]; + const el = createPlaceholderEl(msg); + $list.appendChild(el); + } if (document.getElementById("search-bar")) { hideSearchBar(); diff --git a/src/pages/fileBrowser/fileBrowser.scss b/src/pages/fileBrowser/fileBrowser.scss index 8e64a9622..971817eb5 100644 --- a/src/pages/fileBrowser/fileBrowser.scss +++ b/src/pages/fileBrowser/fileBrowser.scss @@ -89,6 +89,17 @@ height: calc(100% - 60px); overflow-y: auto; + > #placeholder { + width: 100%; + height: 100%; + font-size: 1.2em; + font-weight: bold; + display: flex; + align-items: center; + justify-content: center; + text-align: center; + } + .tile { &[disabled] { .text { diff --git a/src/pages/fileBrowser/list.hbs b/src/pages/fileBrowser/list.hbs deleted file mode 100644 index a8f118926..000000000 --- a/src/pages/fileBrowser/list.hbs +++ /dev/null @@ -1,29 +0,0 @@ - diff --git a/src/pages/fileBrowser/listItem.hbs b/src/pages/fileBrowser/listItem.hbs new file mode 100644 index 000000000..672a2c82e --- /dev/null +++ b/src/pages/fileBrowser/listItem.hbs @@ -0,0 +1,24 @@ +
  • + + +
    + {{name}} +
    + {{url}} +