Loading frontend/SearchBar.mjs +1 −2 Original line number Diff line number Diff line // frontend/SearchBar.mjs const SearchBar = { view: function (vnode) { // Empfange den aktuellen Suchbegriff und den Callback als Attribute const { searchTerm, onSearchTermChange } = vnode.attrs return m("div.search-bar-container", [ m("input[type=search].search-input", { m("input[type=search]", { placeholder: "Songs oder Interpreten suchen...", value: searchTerm, // Binde den Wert des Input-Feldes an den searchTerm-State oninput: e => { Loading frontend/style.css +2 −2 Original line number Diff line number Diff line Loading @@ -37,7 +37,7 @@ html { height: 60px; /* Feste Höhe für genaue Positionierung */ } .search-input { input[type="search"] { width: 100%; padding: 10px 12px; border-radius: 4px; Loading @@ -48,7 +48,7 @@ html { color: #333; } .search-input::placeholder { input[type="search"]::placeholder { color: #888; } Loading Loading
frontend/SearchBar.mjs +1 −2 Original line number Diff line number Diff line // frontend/SearchBar.mjs const SearchBar = { view: function (vnode) { // Empfange den aktuellen Suchbegriff und den Callback als Attribute const { searchTerm, onSearchTermChange } = vnode.attrs return m("div.search-bar-container", [ m("input[type=search].search-input", { m("input[type=search]", { placeholder: "Songs oder Interpreten suchen...", value: searchTerm, // Binde den Wert des Input-Feldes an den searchTerm-State oninput: e => { Loading
frontend/style.css +2 −2 Original line number Diff line number Diff line Loading @@ -37,7 +37,7 @@ html { height: 60px; /* Feste Höhe für genaue Positionierung */ } .search-input { input[type="search"] { width: 100%; padding: 10px 12px; border-radius: 4px; Loading @@ -48,7 +48,7 @@ html { color: #333; } .search-input::placeholder { input[type="search"]::placeholder { color: #888; } Loading