(srcOrHtml)
| 484 | } |
| 485 | |
| 486 | function createIcon(srcOrHtml) { |
| 487 | // image icon |
| 488 | if ( |
| 489 | srcOrHtml.startsWith("/") || |
| 490 | srcOrHtml.startsWith("http://") || |
| 491 | srcOrHtml.startsWith("https://") || |
| 492 | srcOrHtml.startsWith("data:image") |
| 493 | ) { |
| 494 | const img = document.createElement("img"); |
| 495 | img.classList.add("icon-img"); |
| 496 | img.src = srcOrHtml; |
| 497 | return img; |
| 498 | } |
| 499 | |
| 500 | // text/html icon: usually fontAwesome icon |
| 501 | else { |
| 502 | const span = document.createElement("span"); |
| 503 | span.classList.add("icon-html"); |
| 504 | span.innerHTML = srcOrHtml; |
| 505 | return span; |
| 506 | } |
| 507 | } |
| 508 | |
| 509 | function updateFavBtn(btn, isFavorite) { |
| 510 | let i = btn.querySelector("i"); |
no test coverage detected