mirror of
https://github.com/He4eT/tabswitcher.git
synced 2026-05-04 17:07:23 +00:00
pages/search: escape tab text
This commit is contained in:
parent
edfeea7247
commit
4924efd0b6
1 changed files with 12 additions and 1 deletions
|
|
@ -1,18 +1,27 @@
|
||||||
const fuzzysort = window.fuzzysort
|
const fuzzysort = window.fuzzysort
|
||||||
|
|
||||||
|
/* */
|
||||||
|
const highlightTagName = crypto.randomUUID().slice(0, 4)
|
||||||
|
|
||||||
|
const unescapeHighlight = (innerText) =>
|
||||||
|
innerText
|
||||||
|
.replaceAll(`<${highlightTagName}>`, '<b>')
|
||||||
|
.replaceAll(`</${highlightTagName}>`, '</b>')
|
||||||
|
|
||||||
/* https://png-pixel.com/ */
|
/* https://png-pixel.com/ */
|
||||||
const defaultFavicon = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkqAcAAIUAgUW0RjgAAAAASUVORK5CYII='
|
const defaultFavicon = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkqAcAAIUAgUW0RjgAAAAASUVORK5CYII='
|
||||||
|
|
||||||
const tabView = (result) => {
|
const tabView = (result) => {
|
||||||
const tab = result.obj
|
const tab = result.obj
|
||||||
const [label, title, url] = result.map((field) =>
|
const [label, title, url] = result.map((field) =>
|
||||||
fuzzysort.highlight(field))
|
fuzzysort.highlight(field, `<${highlightTagName}>`, `</${highlightTagName}>`))
|
||||||
|
|
||||||
/* Parts */
|
/* Parts */
|
||||||
|
|
||||||
const labelSpan = document.createElement('span')
|
const labelSpan = document.createElement('span')
|
||||||
labelSpan.classList.add('label')
|
labelSpan.classList.add('label')
|
||||||
labelSpan.textContent = label ?? tab.label
|
labelSpan.textContent = label ?? tab.label
|
||||||
|
labelSpan.innerHTML = unescapeHighlight(labelSpan.innerHTML)
|
||||||
|
|
||||||
const faviconImg = document.createElement('img')
|
const faviconImg = document.createElement('img')
|
||||||
faviconImg.classList.add('favicon')
|
faviconImg.classList.add('favicon')
|
||||||
|
|
@ -25,10 +34,12 @@ const tabView = (result) => {
|
||||||
const titleSpan = document.createElement('span')
|
const titleSpan = document.createElement('span')
|
||||||
titleSpan.classList.add('title')
|
titleSpan.classList.add('title')
|
||||||
titleSpan.textContent = title ?? tab.title
|
titleSpan.textContent = title ?? tab.title
|
||||||
|
titleSpan.innerHTML = unescapeHighlight(titleSpan.innerHTML)
|
||||||
|
|
||||||
const urlSpan = document.createElement('span')
|
const urlSpan = document.createElement('span')
|
||||||
urlSpan.classList.add('url')
|
urlSpan.classList.add('url')
|
||||||
urlSpan.textContent = url ?? tab.url
|
urlSpan.textContent = url ?? tab.url
|
||||||
|
urlSpan.innerHTML = unescapeHighlight(urlSpan.innerHTML)
|
||||||
|
|
||||||
const parts = [
|
const parts = [
|
||||||
labelSpan,
|
labelSpan,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue