2025-08-24 17:58:39 -04:00
|
|
|
(text "{% macro avatar(id, size=\"24px\") -%}")
|
|
|
|
(img
|
|
|
|
("title" "User avatar")
|
|
|
|
("src" "{{ config.service_hosts.buckets }}/avatars/{{ id }}")
|
|
|
|
("alt" "User avatar")
|
|
|
|
("class" "avatar shadow")
|
|
|
|
("loading" "lazy")
|
|
|
|
("style" "--size: {{ size }}"))
|
|
|
|
(text "{%- endmacro %}")
|
2025-08-26 00:24:12 -04:00
|
|
|
|
|
|
|
(text "{% macro username(user) -%}")
|
|
|
|
(b
|
|
|
|
(text "{% if user.settings.display_name|length > 0 -%}")
|
|
|
|
(text "{{ user.settings.display_name }}")
|
|
|
|
(text "{%- else -%}")
|
|
|
|
(text "{{ user.username }}")
|
|
|
|
(text "{%- endif %}"))
|
|
|
|
(text "{%- endmacro %}")
|
|
|
|
|
|
|
|
(text "{% macro chat_name(chat, members, advanced=false, avatar_size=\"24px\") -%}")
|
|
|
|
(text "{% if advanced -%}")
|
|
|
|
; advanced
|
|
|
|
(text "{% if chat.style == \"Direct\" -%} {% for member in members -%} {% if member.id != user.id -%}")
|
|
|
|
; direct message; user that ISN'T the current user
|
|
|
|
(text "{{ components::avatar(id=member.id, size=avatar_size) }}")
|
|
|
|
(text "{{ components::username(user=member) }}")
|
|
|
|
(text "{%- endif %} {%- endfor %} {%- else -%}")
|
|
|
|
; group chat
|
|
|
|
(text "{% for member in members -%} {{ components::avatar(id=member.id, size=avatar_size) }} {%- endfor %}")
|
|
|
|
(b (text "{{ chat.style.Group.name }}"))
|
|
|
|
(text "{%- endif %}")
|
|
|
|
(text "{%- else -%}")
|
|
|
|
; NOT advanced
|
|
|
|
(text "{% if chat.style == \"Direct\" -%} {% for member in members -%} {% if member.id != user.id -%}")
|
|
|
|
; direct message; user that ISN'T the current user
|
|
|
|
(text "{{ user.username }}")
|
|
|
|
(text "{%- endif %} {%- endfor %} {%- else -%}")
|
|
|
|
; group chat
|
|
|
|
(text "{{ chat.style.Group.name }}")
|
|
|
|
(text "{%- endif %}")
|
|
|
|
(text "{%- endif %}")
|
|
|
|
(text "{%- endmacro %}")
|
2025-08-26 21:27:11 -04:00
|
|
|
|
|
|
|
(text "{% macro message(message) -%}")
|
|
|
|
(div
|
|
|
|
("class" "flex w_full gap_ch message {%- if user.id == message.owner %} justify_right mine {%- endif %}")
|
|
|
|
(div
|
|
|
|
("class" "inner no_p_margin")
|
|
|
|
(text "{{ message.content|markdown|safe }}"))
|
|
|
|
(text "{{ components::avatar(id=uid) }}"))
|
|
|
|
(text "{%- endmacro %}")
|