You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

71 lines
1.9 KiB

tag app-link
def handle_delete link
return unless window.confirm "Do you really want to delete {link..display_name}?"
api.delete_link link
def handle_pin link
api.pin_link link
def handle_edit
return unless state.sorted_links.length > 0
refs.edit.open api.selected_link
def render
<self
@pointerover=api.set_link_selection_index(index)
@click=api.handle_click_link
.selected=(index is state.link_selection_index)
>
css d:flex fld:row jc:space-between ai:center
px:16px py:11px rd:5px cursor:pointer c:$text-c
if link.is_bang
css c:$bang-c
<.link-left>
css d:flex fl:3
<img.link-icon src=link.icon>
css w:20px h:20px mr:10px rd:3px
<.display-name> link.display_name
css tt:capitalize fs:20px overflow-wrap:anywhere
if link.display_name isnt link.name and config.data.enable_effective_names
<.name>
css d:flex ja:center c:$effective-name-c ml:10px fs:14px
css .parens fs:10px c:$effective-name-parens-c
<span.parens> "("
<span> link.name
<span.parens> ")"
<.link-right>
css fl:1 d:flex fld:row jc:space-between ai:center
css .buttons-disabled .link-button visibility:hidden
css .selected .link-button visibility:visible
<.link-buttons .buttons-disabled=!config.data.enable_buttons>
css d:flex fld:row jc:start ai:center gap:5px
css .link-button visibility:hidden rd:3px c:$button-c fs:15px cursor:pointer px:3px
if index is state.link_selection_index
css .link-button visibility:visible
css .link-button svg w:15px
<.link-button@click.prevent.stop=handle_edit(link)>
<svg src='../assets/edit-2.svg'>
<.link-button@click.prevent.stop=handle_delete(link)>
<svg src='../assets/trash.svg'>
<.link-button @click.prevent.stop=handle_pin(link)>
if link.is_pinned
css visibility:visible c:$button-dim-c
<svg src='../assets/star.svg'>
<.frequency> link.frequency
css fs:15px ml:7px