This commit is contained in:
Vitor Pamplona
2024-12-18 16:53:11 -05:00
9 changed files with 428 additions and 84 deletions
@@ -34,6 +34,7 @@ import com.vitorpamplona.amethyst.commons.hashtags.Cashu
import com.vitorpamplona.amethyst.commons.hashtags.Coffee import com.vitorpamplona.amethyst.commons.hashtags.Coffee
import com.vitorpamplona.amethyst.commons.hashtags.CustomHashTagIcons import com.vitorpamplona.amethyst.commons.hashtags.CustomHashTagIcons
import com.vitorpamplona.amethyst.commons.hashtags.Footstr import com.vitorpamplona.amethyst.commons.hashtags.Footstr
import com.vitorpamplona.amethyst.commons.hashtags.Gamestr
import com.vitorpamplona.amethyst.commons.hashtags.Grownostr import com.vitorpamplona.amethyst.commons.hashtags.Grownostr
import com.vitorpamplona.amethyst.commons.hashtags.Lightning import com.vitorpamplona.amethyst.commons.hashtags.Lightning
import com.vitorpamplona.amethyst.commons.hashtags.Mate import com.vitorpamplona.amethyst.commons.hashtags.Mate
@@ -56,7 +57,7 @@ import com.vitorpamplona.quartz.events.EmptyTagList
fun RenderHashTagIconsPreview() { fun RenderHashTagIconsPreview() {
ThemeComparisonColumn { ThemeComparisonColumn {
RenderRegular( RenderRegular(
"Testing rendering of hashtags: #Bitcoin, #nostr, #lightning, #zap, #amethyst, #cashu, #plebs, #coffee, #skullofsatoshi, #grownostr, #footstr, #tunestr, #weed, #mate", "Testing rendering of hashtags: #Bitcoin, #nostr, #lightning, #zap, #amethyst, #cashu, #plebs, #coffee, #skullofsatoshi, #grownostr, #footstr, #tunestr, #weed, #mate, #gamestr, #gamechain",
EmptyTagList, EmptyTagList,
) { word, state -> ) { word, state ->
when (word) { when (word) {
@@ -83,6 +84,7 @@ fun checkForHashtagWithIcon(tag: String): HashtagIcon? =
"tunestr", "music", "nowplaying" -> tunestr "tunestr", "music", "nowplaying" -> tunestr
"mate", "matechain", "matestr" -> matestr "mate", "matechain", "matestr" -> matestr
"weed", "weedstr", "420", "cannabis", "marijuana" -> weed "weed", "weedstr", "420", "cannabis", "marijuana" -> weed
"gamestr", "gaming", "gamechain" -> gamestr
else -> null else -> null
} }
@@ -100,6 +102,7 @@ val footstr = HashtagIcon(CustomHashTagIcons.Footstr, "Footstr", Modifier.paddin
val tunestr = HashtagIcon(CustomHashTagIcons.Tunestr, "Tunestr", Modifier.padding(start = 1.dp, bottom = 1.dp, top = 1.dp)) val tunestr = HashtagIcon(CustomHashTagIcons.Tunestr, "Tunestr", Modifier.padding(start = 1.dp, bottom = 1.dp, top = 1.dp))
val weed = HashtagIcon(CustomHashTagIcons.Weed, "Weed", Modifier.padding(start = 1.dp, bottom = 0.dp, top = 0.dp)) val weed = HashtagIcon(CustomHashTagIcons.Weed, "Weed", Modifier.padding(start = 1.dp, bottom = 0.dp, top = 0.dp))
val matestr = HashtagIcon(CustomHashTagIcons.Mate, "Mate", Modifier.padding(start = 1.dp, bottom = 0.dp, top = 0.dp)) val matestr = HashtagIcon(CustomHashTagIcons.Mate, "Mate", Modifier.padding(start = 1.dp, bottom = 0.dp, top = 0.dp))
val gamestr = HashtagIcon(CustomHashTagIcons.Gamestr, "GameStr", Modifier.padding(start = 1.dp, bottom = 0.dp, top = 0.dp))
@Immutable @Immutable
class HashtagIcon( class HashtagIcon(
@@ -25,12 +25,14 @@ import androidx.compose.animation.AnimatedVisibility
import androidx.compose.animation.fadeIn import androidx.compose.animation.fadeIn
import androidx.compose.animation.fadeOut import androidx.compose.animation.fadeOut
import androidx.compose.foundation.clickable import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.IntrinsicSize
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.aspectRatio import androidx.compose.foundation.layout.aspectRatio
import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.size
import androidx.compose.foundation.text.InlineTextContent import androidx.compose.foundation.layout.width
import androidx.compose.foundation.text.appendInlineContent
import androidx.compose.material3.DropdownMenu import androidx.compose.material3.DropdownMenu
import androidx.compose.material3.DropdownMenuItem import androidx.compose.material3.DropdownMenuItem
import androidx.compose.material3.IconButton import androidx.compose.material3.IconButton
@@ -54,12 +56,11 @@ import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.platform.LocalUriHandler import androidx.compose.ui.platform.LocalUriHandler
import androidx.compose.ui.platform.LocalView import androidx.compose.ui.platform.LocalView
import androidx.compose.ui.text.AnnotatedString import androidx.compose.ui.text.AnnotatedString
import androidx.compose.ui.text.Placeholder
import androidx.compose.ui.text.PlaceholderVerticalAlign
import androidx.compose.ui.text.SpanStyle import androidx.compose.ui.text.SpanStyle
import androidx.compose.ui.text.buildAnnotatedString import androidx.compose.ui.text.buildAnnotatedString
import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.text.withStyle import androidx.compose.ui.text.withStyle
import androidx.compose.ui.unit.dp
import androidx.core.net.toUri import androidx.core.net.toUri
import coil3.compose.AsyncImage import coil3.compose.AsyncImage
import coil3.compose.AsyncImagePainter import coil3.compose.AsyncImagePainter
@@ -86,7 +87,6 @@ import com.vitorpamplona.amethyst.ui.note.HashCheckFailedIcon
import com.vitorpamplona.amethyst.ui.note.HashCheckIcon import com.vitorpamplona.amethyst.ui.note.HashCheckIcon
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
import com.vitorpamplona.amethyst.ui.stringRes import com.vitorpamplona.amethyst.ui.stringRes
import com.vitorpamplona.amethyst.ui.theme.Font17SP
import com.vitorpamplona.amethyst.ui.theme.Size20dp import com.vitorpamplona.amethyst.ui.theme.Size20dp
import com.vitorpamplona.amethyst.ui.theme.Size24dp import com.vitorpamplona.amethyst.ui.theme.Size24dp
import com.vitorpamplona.amethyst.ui.theme.Size30dp import com.vitorpamplona.amethyst.ui.theme.Size30dp
@@ -444,7 +444,6 @@ fun ImageUrlWithDownloadButton(
withStyle(clickableTextStyle) { withStyle(clickableTextStyle) {
pushStringAnnotation("routeToImage", "") pushStringAnnotation("routeToImage", "")
appendInlineContent("inlineContent", "[icon]")
pop() pop()
} }
@@ -452,8 +451,6 @@ fun ImageUrlWithDownloadButton(
} }
} }
val inlineContent = mapOf("inlineContent" to InlineDownloadIcon(showImage))
val pressIndicator = val pressIndicator =
remember { remember {
Modifier Modifier
@@ -461,30 +458,31 @@ fun ImageUrlWithDownloadButton(
.clickable { runCatching { uri.openUri(url) } } .clickable { runCatching { uri.openUri(url) } }
} }
Text( Row(
text = annotatedTermsString, modifier =
modifier = pressIndicator, Modifier
inlineContent = inlineContent, .width(IntrinsicSize.Max),
maxLines = 1, horizontalArrangement = Arrangement.spacedBy(2.dp),
overflow = TextOverflow.Ellipsis, ) {
) Text(
text = annotatedTermsString,
modifier =
pressIndicator
.weight(1f, fill = false),
overflow = TextOverflow.Ellipsis,
maxLines = 1,
)
InlineDownloadIcon(showImage)
}
} }
@Composable @Composable
private fun InlineDownloadIcon(showImage: MutableState<Boolean>) = private fun InlineDownloadIcon(showImage: MutableState<Boolean>) =
InlineTextContent( IconButton(
Placeholder( modifier = Modifier.size(Size20dp),
width = Font17SP, onClick = { showImage.value = true },
height = Font17SP,
placeholderVerticalAlign = PlaceholderVerticalAlign.Center,
),
) { ) {
IconButton( DownloadForOfflineIcon(Size24dp)
modifier = Modifier.size(Size20dp),
onClick = { showImage.value = true },
) {
DownloadForOfflineIcon(Size24dp)
}
} }
@Composable @Composable
@@ -537,7 +535,6 @@ fun DisplayUrlWithLoadingSymbol(content: BaseMediaContent) {
withStyle(clickableTextStyle) { withStyle(clickableTextStyle) {
pushStringAnnotation("routeToImage", "") pushStringAnnotation("routeToImage", "")
appendInlineContent("inlineContent", "[icon]")
pop() pop()
} }
@@ -545,8 +542,6 @@ fun DisplayUrlWithLoadingSymbol(content: BaseMediaContent) {
} }
} }
val inlineContent = mapOf("inlineContent" to InlineLoadingIcon())
val pressIndicator = val pressIndicator =
remember { remember {
if (content is MediaUrlContent) { if (content is MediaUrlContent) {
@@ -556,26 +551,26 @@ fun DisplayUrlWithLoadingSymbol(content: BaseMediaContent) {
} }
} }
Text( Row(
text = annotatedTermsString, modifier =
modifier = pressIndicator, Modifier
inlineContent = inlineContent, .width(IntrinsicSize.Max),
overflow = TextOverflow.Ellipsis, horizontalArrangement = Arrangement.spacedBy(2.dp),
maxLines = 1, ) {
) Text(
text = annotatedTermsString,
modifier =
pressIndicator
.weight(1f, fill = false),
overflow = TextOverflow.Ellipsis,
maxLines = 1,
)
InlineLoadingIcon()
}
} }
@Composable @Composable
private fun InlineLoadingIcon() = private fun InlineLoadingIcon() = LoadingAnimation()
InlineTextContent(
Placeholder(
width = Font17SP,
height = Font17SP,
placeholderVerticalAlign = PlaceholderVerticalAlign.Center,
),
) {
LoadingAnimation()
}
@Composable @Composable
fun DisplayBlurHash( fun DisplayBlurHash(
@@ -838,6 +838,51 @@
<string name="accessibility_download_for_offline">بارگيری</string> <string name="accessibility_download_for_offline">بارگيری</string>
<string name="accessibility_lyrics_on">روشن کردن متن</string> <string name="accessibility_lyrics_on">روشن کردن متن</string>
<string name="accessibility_lyrics_off">متن خاموش</string> <string name="accessibility_lyrics_off">متن خاموش</string>
<string name="accessibility_turn_on_sealed_message">پیام مهروموم شده خاموش است. برای روشن کردن کلیک کنید.</string>
<string name="accessibility_turn_off_sealed_message">پیام مهروموم شده روشن است. برای خاموش کردن کلیک کنید.</string>
<string name="accessibility_send">ارسال</string> <string name="accessibility_send">ارسال</string>
<string name="accessibility_play_username">نام کاربری را به شکل صوتی بخوان.</string>
<string name="accessibility_pushpin">Pushpin</string>
<string name="accessibility_scan_qr_code">کد QR را اسکن کنید</string>
<string name="accessibility_navigate_to_alby">رفتن به البی، ارائه دهنده کیف پول شخص ثالث.</string>
<string name="it_s_not_possible_to_reply_to_a_draft_note">پاسخ به پیش نویس یادداشت ممکن نیست.</string>
<string name="it_s_not_possible_to_quote_to_a_draft_note">نقل قول از پیش نویس یادداشت ممکن نیست.</string>
<string name="it_s_not_possible_to_react_to_a_draft_note">واکنش به پیش نویس یادداشت ممکن نیست.</string>
<string name="it_s_not_possible_to_zap_to_a_draft_note">زپ زدن به پیش نویس یادداشت ممکن نیست.</string>
<string name="draft_note">پیش نویس یادداشت</string> <string name="draft_note">پیش نویس یادداشت</string>
<string name="load_from_text">از پیام</string>
<string name="dvm_looking_for_app">جستجوی اپلیکیشن</string>
<string name="dvm_waiting_status">درخواست شغل ارسال شد، در انتظار پاسخ</string>
<string name="dvm_requesting_job">درخواست شغل از DVM</string>
<string name="nwc_payment_request">درخواست پرداخت ارسال شد، در انتظار تایید کیف پول</string>
<string name="dvm_waiting_to_confirm_payment">در انتظار تایید پرداخت یا ارسال نتیجه توسط DVM</string>
<string name="http_status_400">درخواست بد - سرور نمی تواند یا نمی خواهد این درخواست را پردازش کند.</string>
<string name="http_status_401">غیرمجاز - کاربر دارای مشخصات معتبر احراز هویت شده نیست</string>
<string name="http_status_402">پرداخت الزامی - سرور برای تکمیل درخواست به پرداخت دارد.</string>
<string name="http_status_403">ممنوع - کاربر مجاز به انجام این درخواست نیست.</string>
<string name="http_status_404">یافت نشد - سرور نتوانست آدرس درخواست شده را بیابد.</string>
<string name="http_status_405">این روش مجاز نیست - سرور روش درخواست را پیشتیبانی می کند ولی مرجع هدف را نه.</string>
<string name="http_status_406">غیرقابل قبول - سرور نتوانست محتوایی مناسب درخواست بیابد.</string>
<string name="http_status_407">احراز هویت الزامی پروکسی - کاربر اعتبارات احراز هویت معتبر ندارد</string>
<string name="http_status_408">زمان درخواست سپری شد - زمان درخواست در انتظار شخصی دیگر تمام شد</string>
<string name="http_status_409">تعارض - سرور نتوانست درخواست را انجام دهد چون در مرجع تعارض وجود دارد</string>
<string name="http_status_410">نیست - محتوای درخواست شده برای همیشه از سرور پاک شده و بازیابی نخواهد شد</string>
<string name="http_status_411">الزام طول - سرور درخواست را رد کرد چون نیاز به اندازه تعریف شده دارد</string>
<string name="http_status_412">پیش شرط انجام نشد - پیش شرطی در سربرگ وجود دارد که سرور نمی تواند براورده کند</string>
<string name="http_status_413">حجم زیادی - درخواست از محدودیت های تعریف شده سرور بزرگتر است و سرور آن را پردازش نمی کند</string>
<string name="http_status_414">آدرس زیادی بلند - آدرس درخواست شده توسط کاربر زیادی برای پردازش سرور بلند است. </string>
<string name="http_status_415">نوع رسانه پشتیبانی نشده - درخواست از نوعی رسانه استفاده می کند که توسط سرور پشتیبانی نمی شود</string>
<string name="http_status_416">بازه براورده نشد - سرور نتوانست مقدار مورد نظر در سربرگ بازه را براورده کند. </string>
<string name="http_status_417">انتظارات براورده نشد - سرور نتوانست انتظارات تعیین شده در سربرگ توقع درخواست را براورده کند</string>
<string name="http_status_426">ارتقاء الزامی - سرور درخواست را با پروتکل فعلی پردازش نمی کند تا کلاینت پروتکل را ارتقاء دهد.</string>
<string name="media_servers_nip96_section">سرورهای NIP-96</string>
<string name="media_servers_blossom_section">سرورهای Blossom</string>
<string name="delete_all">حذف همه</string>
<string name="stack">استک:</string>
<string name="torrent_file">فایل تورنت</string>
<string name="torrent_download">بارگيری</string>
<string name="torrent_failure">فایل باز نشد</string>
<string name="torrent_no_apps">هیچ اپ تورنتی برای باز کردن و بارگیری فایل نصب نیست.</string>
<string name="select_list_to_filter">لیستی را برای فیلتر خبرنامه انتخاب کنید</string>
<string name="temporary_account">با قفل کردن دستگاه از حساب کاربری خارج شو</string>
</resources> </resources>
@@ -204,6 +204,8 @@
<string name="translations_translated_from">इससे अनुवादित</string> <string name="translations_translated_from">इससे अनुवादित</string>
<string name="translations_to">इस तक</string> <string name="translations_to">इस तक</string>
<string name="translations_show_in_lang_first">प्रथम %1$s में दिखाएँ</string> <string name="translations_show_in_lang_first">प्रथम %1$s में दिखाएँ</string>
<string name="chat_about_topic">सार्वजनिक चर्चा %1$s के विषय पर</string>
<string name="community_about_topic">सार्वजनिक समूह %1$s विषय पर</string>
<string name="translations_always_translate_to_lang">सर्वदा अनुवाद करें %1$s में</string> <string name="translations_always_translate_to_lang">सर्वदा अनुवाद करें %1$s में</string>
<string name="translations_never_translate_from_lang">कभी भी अनुवाद ना करें %1$s से</string> <string name="translations_never_translate_from_lang">कभी भी अनुवाद ना करें %1$s से</string>
<string name="nip_05">नोस्ट्र पता</string> <string name="nip_05">नोस्ट्र पता</string>
@@ -832,6 +834,7 @@
<string name="accessibility_turn_off_sealed_message">समावृत संदेश सक्रिय। समावृत संदेश निष्क्रिय करने के लिए टाँकें</string> <string name="accessibility_turn_off_sealed_message">समावृत संदेश सक्रिय। समावृत संदेश निष्क्रिय करने के लिए टाँकें</string>
<string name="accessibility_send">भेजें</string> <string name="accessibility_send">भेजें</string>
<string name="accessibility_play_username">उपयोगकर्ता नाम को ध्वनि के रूप में चलाएँ</string> <string name="accessibility_play_username">उपयोगकर्ता नाम को ध्वनि के रूप में चलाएँ</string>
<string name="accessibility_pushpin">घुण्डी</string>
<string name="accessibility_scan_qr_code">क्यूआर॰ क्रमचित्र परखें</string> <string name="accessibility_scan_qr_code">क्यूआर॰ क्रमचित्र परखें</string>
<string name="accessibility_navigate_to_alby">तृतीय पक्ष धनकोष प्रदाता आल्बी तक जाएँ</string> <string name="accessibility_navigate_to_alby">तृतीय पक्ष धनकोष प्रदाता आल्बी तक जाएँ</string>
<string name="it_s_not_possible_to_reply_to_a_draft_note">एक टीका पाण्डुलिपि को उत्तर नहीं दे सकते</string> <string name="it_s_not_possible_to_reply_to_a_draft_note">एक टीका पाण्डुलिपि को उत्तर नहीं दे सकते</string>
+1 -1
View File
@@ -229,7 +229,7 @@
\n- Az Amethyst fejlesztői az Ön titkos kulcsát **soha** nem fogják Öntől elkérni. \n- Az Amethyst fejlesztői az Ön titkos kulcsát **soha** nem fogják Öntől elkérni.
\n- A fiók-helyreállításának érdekében, a titkos kulcsáról **mindig** készítsen biztonsági másolatot. Javasoljuk egy jelszókezelő használatát. \n- A fiók-helyreállításának érdekében, a titkos kulcsáról **mindig** készítsen biztonsági másolatot. Javasoljuk egy jelszókezelő használatát.
</string> </string>
<string name="account_backup_tips3_md" tools:ignore="Typos"> A nagyobb biztonság érdekében a kulcsot jelszóval titkosíthatja. Ez a kulcs **ncryptsec1**-vel kezdődik, és a jelszava nélkül nem használható. <string name="account_backup_tips3_md" tools:ignore="Typos"> A nagyobb biztonság érdekében titkosítsa egy jelszóval. A jelszóval védett kulcs **ncryptsec1**-vel kezdődik, és a jelszava nélkül nem használható.
\n\nHa elveszíti a jelszavát, nem tudja visszaállítani a kulcsát. \n\nHa elveszíti a jelszavát, nem tudja visszaállítani a kulcsát.
</string> </string>
<string name="failed_to_encrypt_key">Nem sikerült a privát kulcsot titkosítani</string> <string name="failed_to_encrypt_key">Nem sikerült a privát kulcsot titkosítani</string>
+35 -32
View File
@@ -17,7 +17,7 @@
<string name="explicit_content">Eksplicitna vsebina</string> <string name="explicit_content">Eksplicitna vsebina</string>
<string name="spam">Nezaželjena vsebina</string> <string name="spam">Nezaželjena vsebina</string>
<string name="spam_description">Iz tega releja izvira številna nezaželjena vsebina</string> <string name="spam_description">Iz tega releja izvira številna nezaželjena vsebina</string>
<string name="impersonation">Imitacija</string> <string name="impersonation">Oponašanje</string>
<string name="illegal_behavior">Nedovoljeno obnašanje</string> <string name="illegal_behavior">Nedovoljeno obnašanje</string>
<string name="other">Drugo</string> <string name="other">Drugo</string>
<string name="unknown">Neznano</string> <string name="unknown">Neznano</string>
@@ -34,17 +34,17 @@
<string name="block_report">Blokiraj / Prijavi</string> <string name="block_report">Blokiraj / Prijavi</string>
<string name="block_hide_user"><![CDATA[Blokiraj in skrij uporabnika]]></string> <string name="block_hide_user"><![CDATA[Blokiraj in skrij uporabnika]]></string>
<string name="report_spam_scam">Prijavi nazaželjeno vsebino / prevaro</string> <string name="report_spam_scam">Prijavi nazaželjeno vsebino / prevaro</string>
<string name="report_impersonation">Prijavi imitacijo</string> <string name="report_impersonation">Prijavi oponašalca</string>
<string name="report_explicit_content">Prijavi eksplicitno vsebino</string> <string name="report_explicit_content">Prijavi eksplicitno vsebino</string>
<string name="report_illegal_behaviour">Prijavi nedovoljeno obnašanje</string> <string name="report_illegal_behaviour">Prijavi nedovoljeno obnašanje</string>
<string name="report_malware">Prijavi zlonamerno programsko opremo</string> <string name="report_malware">Zlonamerna programska vsebina</string>
<string name="report_mod">Prijavi moderatorja</string> <string name="report_mod">Prijavi moderatorja</string>
<string name="malware">Zlonamerna programska oprema</string> <string name="malware">Zlonamerna programska vsebina</string>
<string name="mod">Administrator</string> <string name="mod">Administrator</string>
<string name="login_with_a_private_key_to_be_able_to_reply">Uporabljaš javni ključ in javni ključi omogočajo le branje. <string name="login_with_a_private_key_to_be_able_to_reply">Uporabljaš javni ključ in javni ključi omogočajo le branje.
Prijavi se s privatnim ključem, da omogočiš tudi pisanje</string> Prijavi se s privatnim ključem, da omogočiš tudi pisanje</string>
<string name="login_with_a_private_key_to_be_able_to_boost_posts">Uporabljaš javni ključ in javni ključi omogočajo le branje. <string name="login_with_a_private_key_to_be_able_to_boost_posts">Uporabljaš javni ključ in javni ključi omogočajo le branje.
Prijavi se s privatnim ključem za potisk sporočila</string> Prijavi se s privatnim ključem za posredovanje sporočila</string>
<string name="login_with_a_private_key_to_like_posts">Uporabljaš javni ključ in javni ključi omogočajo le branje. <string name="login_with_a_private_key_to_like_posts">Uporabljaš javni ključ in javni ključi omogočajo le branje.
Prijavi se s privatnim ključem za všečkanje sporočila</string> Prijavi se s privatnim ključem za všečkanje sporočila</string>
<string name="no_zap_amount_setup_long_press_to_change">Nimaš nastavljene Zap vsote. Za spremembo uporabi daljši pritisk</string> <string name="no_zap_amount_setup_long_press_to_change">Nimaš nastavljene Zap vsote. Za spremembo uporabi daljši pritisk</string>
@@ -60,13 +60,13 @@ Prijavi se s privatnim ključem, za cenzuro besed ali stavkov</string>
Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string> Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string>
<string name="zaps">Zapi</string> <string name="zaps">Zapi</string>
<string name="view_count">Števec vpogledov</string> <string name="view_count">Števec vpogledov</string>
<string name="boost">Potisk</string> <string name="boost">Posreduj</string>
<string name="boosted">potisnjeno</string> <string name="boosted">posredovano</string>
<string name="edited">urejeno</string> <string name="edited">posodobljeno</string>
<string name="edited_number">uredi #%1$s</string> <string name="edited_number">uredi #%1$s</string>
<string name="original">original</string> <string name="original">original</string>
<string name="quote">Citat</string> <string name="quote">Citiraj</string>
<string name="fork">Razcep</string> <string name="fork">Razcepi</string>
<string name="propose_an_edit">Prošnja za urejanje</string> <string name="propose_an_edit">Prošnja za urejanje</string>
<string name="new_amount_in_sats">Nova vrednost v Sat</string> <string name="new_amount_in_sats">Nova vrednost v Sat</string>
<string name="add">Dodaj</string> <string name="add">Dodaj</string>
@@ -76,8 +76,8 @@ Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string>
<string name="profile_banner">Profilna pasica</string> <string name="profile_banner">Profilna pasica</string>
<string name="payment_successful">Plačilo uspešno</string> <string name="payment_successful">Plačilo uspešno</string>
<string name="error_parsing_error_message">Napaka pri razčlembi sporočila o napaki</string> <string name="error_parsing_error_message">Napaka pri razčlembi sporočila o napaki</string>
<string name="following">" Sledenje"</string> <string name="following">" Sledim"</string>
<string name="followers">" Sledilci"</string> <string name="followers">" Sledilcev"</string>
<string name="profile">Profil</string> <string name="profile">Profil</string>
<string name="security_filters">Varnostni filtri</string> <string name="security_filters">Varnostni filtri</string>
<string name="log_out">Odjavi se</string> <string name="log_out">Odjavi se</string>
@@ -143,12 +143,12 @@ Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string>
<string name="known">Znano</string> <string name="known">Znano</string>
<string name="new_requests">Nova prošnja</string> <string name="new_requests">Nova prošnja</string>
<string name="blocked_users">Blokirani uporabniki</string> <string name="blocked_users">Blokirani uporabniki</string>
<string name="new_threads">Nova nit</string> <string name="new_threads">Nove objave</string>
<string name="conversations">Pogovori</string> <string name="conversations">Pogovori</string>
<string name="notes">Zapiski</string> <string name="notes">Zapiski</string>
<string name="replies">Odgovori</string> <string name="replies">Pogovori</string>
<string name="gallery">Galerija</string> <string name="gallery">Galerija</string>
<string name="follows">"Sledilci"</string> <string name="follows">"Sledim"</string>
<string name="reports">"Reportaže"</string> <string name="reports">"Reportaže"</string>
<string name="more_options">Več možnosti</string> <string name="more_options">Več možnosti</string>
<string name="relays">" Releji"</string> <string name="relays">" Releji"</string>
@@ -160,7 +160,7 @@ Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string>
<string name="copy_public_key_npub_to_the_clipboard">Kopiraj javni ključ (NPub) v odložišče</string> <string name="copy_public_key_npub_to_the_clipboard">Kopiraj javni ključ (NPub) v odložišče</string>
<string name="send_a_direct_message">Pošlji direktno sporočilo</string> <string name="send_a_direct_message">Pošlji direktno sporočilo</string>
<string name="edits_the_user_s_metadata">Uredi uporabnikove metapodatke</string> <string name="edits_the_user_s_metadata">Uredi uporabnikove metapodatke</string>
<string name="follow">Slediti</string> <string name="follow">Sledi</string>
<string name="follow_back">Sledi nazaj</string> <string name="follow_back">Sledi nazaj</string>
<string name="unblock">Odblokiraj</string> <string name="unblock">Odblokiraj</string>
<string name="copy_user_id">Kopiraj uporabnikov ID</string> <string name="copy_user_id">Kopiraj uporabnikov ID</string>
@@ -212,9 +212,11 @@ Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string>
<string name="translations_translated_from">prevedeno iz</string> <string name="translations_translated_from">prevedeno iz</string>
<string name="translations_to">v</string> <string name="translations_to">v</string>
<string name="translations_show_in_lang_first">Prikaži najprej v %1$s</string> <string name="translations_show_in_lang_first">Prikaži najprej v %1$s</string>
<string name="chat_about_topic">Javni pogovor o %1$s</string>
<string name="community_about_topic">Javna skupnost o %1$s</string>
<string name="translations_always_translate_to_lang">Vedno prevedi v %1$s</string> <string name="translations_always_translate_to_lang">Vedno prevedi v %1$s</string>
<string name="translations_never_translate_from_lang">Nikoli ne prevedi iz %1$s</string> <string name="translations_never_translate_from_lang">Nikoli ne prevedi iz %1$s</string>
<string name="nip_05">Nostr naslov</string> <string name="nip_05">Nostr naslov t. i. Nip-05</string>
<string name="never">nikoli</string> <string name="never">nikoli</string>
<string name="now">zdaj</string> <string name="now">zdaj</string>
<string name="h">h</string> <string name="h">h</string>
@@ -381,7 +383,7 @@ Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string>
<string name="yes">Da</string> <string name="yes">Da</string>
<string name="no">Ne</string> <string name="no">Ne</string>
<string name="follow_list_selection">Spisek komu sledimo</string> <string name="follow_list_selection">Spisek komu sledimo</string>
<string name="follow_list_kind3follows">Vsi katerim sledimo</string> <string name="follow_list_kind3follows">Vse, čemur sledimo</string>
<string name="follow_list_aroundme">V moji okolici</string> <string name="follow_list_aroundme">V moji okolici</string>
<string name="follow_list_global">Globalno</string> <string name="follow_list_global">Globalno</string>
<string name="follow_list_mute_list">Spisek utišanih</string> <string name="follow_list_mute_list">Spisek utišanih</string>
@@ -507,12 +509,12 @@ Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string>
<string name="live_stream_is_offline">Prenos v živo je odklopljen</string> <string name="live_stream_is_offline">Prenos v živo je odklopljen</string>
<string name="live_stream_has_ended">Prenos v živo je končan</string> <string name="live_stream_has_ended">Prenos v živo je končan</string>
<string name="are_you_sure_you_want_to_log_out">Odjava bo izbrisala vse vaše lokalne informacije. Poskrbite, da imate varnostno kopijo svojih zasebnih ključev, da se izognete izgubi računa. Ali želite nadaljevati?</string> <string name="are_you_sure_you_want_to_log_out">Odjava bo izbrisala vse vaše lokalne informacije. Poskrbite, da imate varnostno kopijo svojih zasebnih ključev, da se izognete izgubi računa. Ali želite nadaljevati?</string>
<string name="followed_tags">Oznake katerim sledimo</string> <string name="followed_tags">Spremljana vsebina</string>
<string name="relay_setup">Releji</string> <string name="relay_setup">Releji</string>
<string name="discover_content">Odkrivanje zapiskov</string> <string name="discover_content">Odkrivanje zapiskov</string>
<string name="discover_marketplace">Tržnica</string> <string name="discover_marketplace">Tržnica</string>
<string name="discover_live">V živo</string> <string name="discover_live">V živo</string>
<string name="discover_community">Skupnost</string> <string name="discover_community">Skupnosti</string>
<string name="discover_chat">Pogovori</string> <string name="discover_chat">Pogovori</string>
<string name="community_approved_posts">Odobrene objave</string> <string name="community_approved_posts">Odobrene objave</string>
<string name="groups_no_descriptor">Ta skupina nima opisa ali pravil. Obrnite se na lastnika, da jih doda</string> <string name="groups_no_descriptor">Ta skupina nima opisa ali pravil. Obrnite se na lastnika, da jih doda</string>
@@ -523,14 +525,14 @@ Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string>
<string name="settings">Nastavitve</string> <string name="settings">Nastavitve</string>
<string name="connectivity_type_always">Vedno</string> <string name="connectivity_type_always">Vedno</string>
<string name="connectivity_type_wifi_only">Samo Wifi</string> <string name="connectivity_type_wifi_only">Samo Wifi</string>
<string name="connectivity_type_unmetered_wifi_only">Wi-Fi brez omejitev</string> <string name="connectivity_type_unmetered_wifi_only">Samo z WiFi</string>
<string name="connectivity_type_never">Nikoli</string> <string name="connectivity_type_never">Nikoli</string>
<string name="ui_feature_set_type_complete">Končaj</string> <string name="ui_feature_set_type_complete">Celovit</string>
<string name="ui_feature_set_type_simplified">Poenostavljeno</string> <string name="ui_feature_set_type_simplified">Poenostavljen</string>
<string name="ui_feature_set_type_performance">Zmogljivost</string> <string name="ui_feature_set_type_performance">Optimiziran</string>
<string name="system">Sistem</string> <string name="system">Sistemska</string>
<string name="light">Svetlo</string> <string name="light">Svetla</string>
<string name="dark">Temno</string> <string name="dark">Temna</string>
<string name="application_preferences">Nastavitve aplikacije</string> <string name="application_preferences">Nastavitve aplikacije</string>
<string name="wallet_connect">Wallet Connect</string> <string name="wallet_connect">Wallet Connect</string>
<string name="language">Jezik</string> <string name="language">Jezik</string>
@@ -642,10 +644,10 @@ Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string>
<string name="error_parsing_nip47_title">Ni bilo mogoče nastaviti \"Wallet Connect\"</string> <string name="error_parsing_nip47_title">Ni bilo mogoče nastaviti \"Wallet Connect\"</string>
<string name="error_parsing_nip47">Napaka pri razčlenjevanju NIP-47 connection string. Preverite pri vašem ponudniku denarnice, ali je to pravilno: %1$s. Napaka: %2$s</string> <string name="error_parsing_nip47">Napaka pri razčlenjevanju NIP-47 connection string. Preverite pri vašem ponudniku denarnice, ali je to pravilno: %1$s. Napaka: %2$s</string>
<string name="error_parsing_nip47_no_error">Napaka pri razčlenjevanju NIP-47 connection string. Preverite pri vašem ponudniku denarnice, ali je to pravilno: %1$s.</string> <string name="error_parsing_nip47_no_error">Napaka pri razčlenjevanju NIP-47 connection string. Preverite pri vašem ponudniku denarnice, ali je to pravilno: %1$s.</string>
<string name="cashu_failed_redemption">Cashu ni bilo mogoče unovčiti</string> <string name="cashu_failed_redemption">Cashu žetona ni bilo mogoče unovčiti</string>
<string name="cashu_failed_redemption_explainer_error_msg">Kovnica je posredovala naslednje sporočilo o napaki: %1$s</string> <string name="cashu_failed_redemption_explainer_error_msg">Kovnica je posredovala naslednje sporočilo o napaki: %1$s</string>
<string name="cashu_failed_redemption_explainer_already_spent">Cashu žeton je že zapravljen.</string> <string name="cashu_failed_redemption_explainer_already_spent">Cashu žeton je že zapravljen.</string>
<string name="cashu_successful_redemption">Cashu prejet</string> <string name="cashu_successful_redemption">Prejeli ste Cashu žeton</string>
<string name="cashu_successful_redemption_explainer">V vašo denarnico je bilo poslanih %1$s satoshi-jev. (Provizija: %2$s sat)</string> <string name="cashu_successful_redemption_explainer">V vašo denarnico je bilo poslanih %1$s satoshi-jev. (Provizija: %2$s sat)</string>
<string name="cashu_no_wallet_found">Na sistemu ni najdene združljive Cashu denarnice</string> <string name="cashu_no_wallet_found">Na sistemu ni najdene združljive Cashu denarnice</string>
<string name="error_unable_to_fetch_invoice">Ni mogoče pridobiti fakture s strežnikov prejemnika</string> <string name="error_unable_to_fetch_invoice">Ni mogoče pridobiti fakture s strežnikov prejemnika</string>
@@ -755,7 +757,7 @@ Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string>
<string name="open_all_reactions_to_this_post">Odpri vse odzive na to objavo</string> <string name="open_all_reactions_to_this_post">Odpri vse odzive na to objavo</string>
<string name="close_all_reactions_to_this_post">Zapri vse odzive na to objavo</string> <string name="close_all_reactions_to_this_post">Zapri vse odzive na to objavo</string>
<string name="reply_description">Odgovori</string> <string name="reply_description">Odgovori</string>
<string name="boost_or_quote_description">Potisni ali citiraj</string> <string name="boost_or_quote_description">Posreduj ali citiraj</string>
<string name="like_description">Všečkaj</string> <string name="like_description">Všečkaj</string>
<string name="zap_description">Zap</string> <string name="zap_description">Zap</string>
<string name="change_reaction">Spremeni hitre odzivne ikone</string> <string name="change_reaction">Spremeni hitre odzivne ikone</string>
@@ -841,6 +843,7 @@ Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string>
<string name="accessibility_turn_off_sealed_message">Zapečateno sporočilo je vklopljeno. Kliknite, da izklopite zapečateno sporočilo.</string> <string name="accessibility_turn_off_sealed_message">Zapečateno sporočilo je vklopljeno. Kliknite, da izklopite zapečateno sporočilo.</string>
<string name="accessibility_send">Pošlji</string> <string name="accessibility_send">Pošlji</string>
<string name="accessibility_play_username">Predvajaj uporabniško ime</string> <string name="accessibility_play_username">Predvajaj uporabniško ime</string>
<string name="accessibility_pushpin">Pushpin</string>
<string name="accessibility_scan_qr_code">Skeniraj QR kodo</string> <string name="accessibility_scan_qr_code">Skeniraj QR kodo</string>
<string name="accessibility_navigate_to_alby">Pojdite na stran tretjega ponudnika denarnice Alby.</string> <string name="accessibility_navigate_to_alby">Pojdite na stran tretjega ponudnika denarnice Alby.</string>
<string name="it_s_not_possible_to_reply_to_a_draft_note">Ni mogoče odgovoriti na osnutek zapiska.</string> <string name="it_s_not_possible_to_reply_to_a_draft_note">Ni mogoče odgovoriti na osnutek zapiska.</string>
@@ -848,9 +851,9 @@ Prijavi se s privatnim ključem, za prikaz skritih besed in stavkov</string>
<string name="it_s_not_possible_to_react_to_a_draft_note">Ni mogoče reagirati na osnutek zapiska.</string> <string name="it_s_not_possible_to_react_to_a_draft_note">Ni mogoče reagirati na osnutek zapiska.</string>
<string name="it_s_not_possible_to_zap_to_a_draft_note">Osnutke zapisa ni mogoče Zap-niti</string> <string name="it_s_not_possible_to_zap_to_a_draft_note">Osnutke zapisa ni mogoče Zap-niti</string>
<string name="draft_note">Osnutek zapiska</string> <string name="draft_note">Osnutek zapiska</string>
<string name="load_from_text">Iz zapisa</string> <string name="load_from_text">Iz zapiska</string>
<string name="dvm_looking_for_app">Iščem aplikacijo</string> <string name="dvm_looking_for_app">Iščem aplikacijo</string>
<string name="dvm_waiting_status">Delo zahtevano, čakam na odgovor</string> <string name="dvm_waiting_status">Zahteva poslana, čakam na odgovor</string>
<string name="dvm_requesting_job">Zahtevam delo od DVM</string> <string name="dvm_requesting_job">Zahtevam delo od DVM</string>
<string name="nwc_payment_request">Zahteva za plačilo poslana, čakam na potrditev iz vaše denarnice.</string> <string name="nwc_payment_request">Zahteva za plačilo poslana, čakam na potrditev iz vaše denarnice.</string>
<string name="dvm_waiting_to_confirm_payment">Čakam, da DVM potrdi plačilo ali pošlje rezultate.</string> <string name="dvm_waiting_to_confirm_payment">Čakam, da DVM potrdi plačilo ali pošlje rezultate.</string>
@@ -23,11 +23,11 @@ package com.vitorpamplona.amethyst.commons.hashtags
import androidx.compose.ui.graphics.vector.ImageVector import androidx.compose.ui.graphics.vector.ImageVector
import kotlin.collections.List as ____KtList import kotlin.collections.List as ____KtList
public object CustomHashTagIcons object CustomHashTagIcons
private var customHashTagIconsAllIconsCache: ____KtList<ImageVector>? = null private var customHashTagIconsAllIconsCache: ____KtList<ImageVector>? = null
public val CustomHashTagIcons.AllIcons: ____KtList<ImageVector> val CustomHashTagIcons.AllIcons: ____KtList<ImageVector>
get() { get() {
if (customHashTagIconsAllIconsCache != null) { if (customHashTagIconsAllIconsCache != null) {
return customHashTagIconsAllIconsCache!! return customHashTagIconsAllIconsCache!!
@@ -47,6 +47,7 @@ public val CustomHashTagIcons.AllIcons: ____KtList<ImageVector>
Zap, Zap,
Tunestr, Tunestr,
Nostr, Nostr,
Gamestr,
) )
return customHashTagIconsAllIconsCache!! return customHashTagIconsAllIconsCache!!
} }
@@ -0,0 +1,278 @@
/**
* Copyright (c) 2024 Vitor Pamplona
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
* Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package com.vitorpamplona.amethyst.commons.hashtags
import androidx.compose.foundation.Image
import androidx.compose.runtime.Composable
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.ImageVector.Builder
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.graphics.vector.rememberVectorPainter
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
@Preview
@Composable
fun CustomHashTagIconsGamestrPreview() {
Image(
painter =
rememberVectorPainter(
CustomHashTagIcons.Gamestr,
),
contentDescription = "",
)
}
val CustomHashTagIcons.Gamestr: ImageVector
get() {
if (customHashTagIconsGamestr != null) {
return customHashTagIconsGamestr!!
}
customHashTagIconsGamestr =
Builder(
name = "Gamestr",
defaultWidth = 512.0.dp,
defaultHeight = 512.0.dp,
viewportWidth = 512.0f,
viewportHeight = 512.0f,
).apply {
path(
fill = SolidColor(Color(0xFFED5564)),
) {
moveTo(511.53f, 309.68f)
curveToRelative(-2.48f, -42.44f, -15.15f, -98.23f, -37.64f, -165.84f)
curveToRelative(-0.48f, -1.42f, -1.25f, -2.73f, -2.25f, -3.84f)
lineToRelative(-37.11f, -40.55f)
curveToRelative(-2.02f, -2.21f, -4.88f, -3.47f, -7.86f, -3.47f)
horizontalLineToRelative(-42.67f)
curveToRelative(-1.66f, 0.0f, -3.28f, 0.39f, -4.77f, 1.13f)
lineToRelative(-19.08f, 9.52f)
horizontalLineTo(151.84f)
lineToRelative(-19.09f, -9.52f)
curveToRelative(-1.47f, -0.73f, -3.11f, -1.13f, -4.76f, -1.13f)
horizontalLineTo(85.33f)
curveToRelative(-3.0f, 0.0f, -5.86f, 1.26f, -7.88f, 3.47f)
lineToRelative(-37.09f, 40.55f)
curveToRelative(-1.02f, 1.11f, -1.78f, 2.41f, -2.25f, 3.84f)
curveTo(15.61f, 211.45f, 2.94f, 267.25f, 0.46f, 309.68f)
curveToRelative(-2.16f, 36.75f, 3.31f, 64.5f, 16.26f, 82.44f)
curveToRelative(11.27f, 15.62f, 28.09f, 23.87f, 48.69f, 23.87f)
curveToRelative(14.97f, 0.0f, 28.55f, -6.81f, 40.37f, -20.28f)
curveToRelative(8.58f, -9.78f, 16.26f, -23.16f, 22.83f, -39.8f)
curveToRelative(7.19f, -18.17f, 11.47f, -36.17f, 13.59f, -46.58f)
horizontalLineToRelative(227.58f)
curveToRelative(2.13f, 10.41f, 6.41f, 28.41f, 13.59f, 46.58f)
curveToRelative(6.56f, 16.64f, 14.25f, 30.02f, 22.83f, 39.8f)
curveToRelative(11.83f, 13.47f, 25.42f, 20.28f, 40.38f, 20.28f)
curveToRelative(20.59f, 0.0f, 37.44f, -8.25f, 48.7f, -23.87f)
curveTo(508.22f, 374.18f, 513.68f, 346.43f, 511.53f, 309.68f)
close()
}
path(
fill = SolidColor(Color(0xFFDA4453)),
) {
moveTo(263.53f, 259.12f)
curveToRelative(4.17f, 4.16f, 4.17f, 10.92f, 0.0f, 15.09f)
curveToRelative(-4.16f, 4.16f, -10.92f, 4.16f, -15.08f, 0.0f)
curveToRelative(-4.17f, -4.17f, -4.17f, -10.93f, 0.0f, -15.09f)
curveTo(252.61f, 254.96f, 259.37f, 254.96f, 263.53f, 259.12f)
close()
}
path(
fill = SolidColor(Color(0xFFE6E9ED)),
) {
moveTo(412.88f, 178.2f)
curveToRelative(-4.17f, 4.17f, -10.92f, 4.17f, -15.08f, 0.0f)
curveToRelative(-4.17f, -4.16f, -4.17f, -10.91f, 0.0f, -15.09f)
curveToRelative(4.16f, -4.16f, 10.9f, -4.16f, 15.08f, 0.0f)
curveTo(417.05f, 167.29f, 417.05f, 174.04f, 412.88f, 178.2f)
close()
}
path(
fill = SolidColor(Color(0xFFE6E9ED)),
) {
moveTo(412.88f, 220.87f)
curveToRelative(-4.17f, 4.16f, -10.92f, 4.16f, -15.08f, 0.0f)
curveToRelative(-4.17f, -4.16f, -4.17f, -10.92f, 0.0f, -15.09f)
curveToRelative(4.16f, -4.16f, 10.9f, -4.16f, 15.08f, 0.0f)
curveTo(417.05f, 209.95f, 417.05f, 216.71f, 412.88f, 220.87f)
close()
}
path(
fill = SolidColor(Color(0xFFE6E9ED)),
) {
moveTo(434.2f, 199.54f)
curveToRelative(-4.16f, 4.16f, -10.91f, 4.16f, -15.08f, 0.0f)
reflectiveCurveToRelative(-4.17f, -10.91f, 0.0f, -15.09f)
curveToRelative(4.17f, -4.16f, 10.92f, -4.16f, 15.08f, 0.0f)
curveTo(438.38f, 188.62f, 438.38f, 195.37f, 434.2f, 199.54f)
close()
}
path(
fill = SolidColor(Color(0xFFE6E9ED)),
) {
moveTo(391.55f, 199.54f)
curveToRelative(-4.17f, 4.16f, -10.92f, 4.16f, -15.09f, 0.0f)
curveToRelative(-4.16f, -4.16f, -4.16f, -10.91f, 0.0f, -15.09f)
curveToRelative(4.17f, -4.16f, 10.92f, -4.16f, 15.09f, 0.0f)
curveTo(395.7f, 188.62f, 395.7f, 195.37f, 391.55f, 199.54f)
close()
}
path(
fill = SolidColor(Color(0xFF656D78)),
) {
moveTo(224.0f, 277.34f)
curveToRelative(0.0f, 23.56f, -19.11f, 42.65f, -42.67f, 42.65f)
reflectiveCurveToRelative(-42.67f, -19.09f, -42.67f, -42.65f)
curveToRelative(0.0f, -23.58f, 19.11f, -42.68f, 42.67f, -42.68f)
reflectiveCurveTo(224.0f, 253.76f, 224.0f, 277.34f)
close()
}
path(
fill = SolidColor(Color(0xFF434A54)),
) {
moveTo(181.33f, 224.0f)
curveToRelative(-29.41f, 0.0f, -53.34f, 23.92f, -53.34f, 53.34f)
curveToRelative(0.0f, 29.4f, 23.94f, 53.33f, 53.34f, 53.33f)
reflectiveCurveToRelative(53.33f, -23.92f, 53.33f, -53.33f)
curveTo(234.65f, 247.92f, 210.73f, 224.0f, 181.33f, 224.0f)
close()
moveTo(181.33f, 309.34f)
curveToRelative(-17.64f, 0.0f, -32.0f, -14.38f, -32.0f, -32.0f)
curveToRelative(0.0f, -17.66f, 14.36f, -32.01f, 32.0f, -32.01f)
reflectiveCurveToRelative(32.0f, 14.35f, 32.0f, 32.01f)
curveTo(213.33f, 294.96f, 198.97f, 309.34f, 181.33f, 309.34f)
close()
}
path(
fill = SolidColor(Color(0xFF656D78)),
) {
moveTo(373.33f, 277.34f)
curveToRelative(0.0f, 23.56f, -19.09f, 42.65f, -42.67f, 42.65f)
curveToRelative(-23.56f, 0.0f, -42.65f, -19.09f, -42.65f, -42.65f)
curveToRelative(0.0f, -23.58f, 19.09f, -42.68f, 42.65f, -42.68f)
curveTo(354.24f, 234.66f, 373.33f, 253.76f, 373.33f, 277.34f)
close()
}
path(
fill = SolidColor(Color(0xFF434A54)),
) {
moveTo(330.66f, 224.0f)
curveToRelative(-29.41f, 0.0f, -53.33f, 23.92f, -53.33f, 53.34f)
curveToRelative(0.0f, 29.4f, 23.92f, 53.33f, 53.33f, 53.33f)
curveToRelative(29.42f, 0.0f, 53.34f, -23.92f, 53.34f, -53.33f)
curveTo(384.0f, 247.92f, 360.08f, 224.0f, 330.66f, 224.0f)
close()
moveTo(330.66f, 309.34f)
curveToRelative(-17.64f, 0.0f, -32.0f, -14.38f, -32.0f, -32.0f)
curveToRelative(0.0f, -17.66f, 14.36f, -32.01f, 32.0f, -32.01f)
curveToRelative(17.66f, 0.0f, 32.01f, 14.35f, 32.01f, 32.01f)
curveTo(362.67f, 294.96f, 348.31f, 309.34f, 330.66f, 309.34f)
close()
}
path(
fill = SolidColor(Color(0xFFF5F7FA)),
) {
moveTo(106.66f, 224.0f)
curveToRelative(-5.89f, 0.0f, -10.67f, -4.77f, -10.67f, -10.67f)
verticalLineToRelative(-42.66f)
curveToRelative(0.0f, -5.89f, 4.78f, -10.66f, 10.67f, -10.66f)
reflectiveCurveToRelative(10.67f, 4.77f, 10.67f, 10.66f)
verticalLineToRelative(42.66f)
curveTo(117.33f, 219.23f, 112.55f, 224.0f, 106.66f, 224.0f)
close()
}
path(
fill = SolidColor(Color(0xFFE6E9ED)),
) {
moveTo(127.99f, 202.66f)
horizontalLineTo(85.33f)
curveToRelative(-5.89f, 0.0f, -10.67f, -4.77f, -10.67f, -10.66f)
reflectiveCurveToRelative(4.78f, -10.67f, 10.67f, -10.67f)
horizontalLineToRelative(42.65f)
curveToRelative(5.89f, 0.0f, 10.67f, 4.78f, 10.67f, 10.67f)
curveTo(138.66f, 197.89f, 133.88f, 202.66f, 127.99f, 202.66f)
close()
}
path(
fill = SolidColor(Color(0xFFFFCE54)),
) {
moveTo(181.32f, 106.64f)
horizontalLineToRelative(149.33f)
verticalLineToRelative(42.69f)
horizontalLineToRelative(-149.33f)
close()
}
path(
fill = SolidColor(Color(0xFF434A54)),
) {
moveTo(495.28f, 392.12f)
curveToRelative(8.92f, -12.36f, 14.28f, -29.38f, 16.06f, -50.78f)
curveToRelative(-0.03f, 0.0f, -59.73f, 43.54f, -117.26f, 36.28f)
curveToRelative(0.0f, 0.0f, 0.05f, 0.41f, 0.17f, 1.11f)
curveToRelative(3.75f, 6.5f, 7.75f, 12.17f, 11.95f, 16.98f)
curveToRelative(11.83f, 13.47f, 25.42f, 20.28f, 40.38f, 20.28f)
curveTo(467.17f, 415.99f, 484.01f, 407.74f, 495.28f, 392.12f)
close()
}
path(
fill = SolidColor(Color(0xFF434A54)),
) {
moveTo(16.72f, 392.12f)
curveToRelative(-8.92f, -12.36f, -14.3f, -29.38f, -16.06f, -50.78f)
curveToRelative(0.0f, 0.0f, 59.72f, 43.54f, 117.26f, 36.28f)
curveToRelative(0.0f, 0.0f, -0.06f, 0.41f, -0.17f, 1.11f)
curveToRelative(-3.77f, 6.5f, -7.75f, 12.17f, -11.97f, 16.98f)
curveToRelative(-11.83f, 13.47f, -25.41f, 20.28f, -40.37f, 20.28f)
curveTo(44.82f, 415.99f, 27.99f, 407.74f, 16.72f, 392.12f)
close()
}
path(
fill = SolidColor(Color(0xFF434A54)),
) {
moveTo(70.88f, 106.64f)
horizontalLineToRelative(80.97f)
lineToRelative(-19.09f, -9.52f)
curveToRelative(-1.47f, -0.73f, -3.11f, -1.13f, -4.76f, -1.13f)
horizontalLineTo(85.33f)
curveToRelative(-3.0f, 0.0f, -5.86f, 1.26f, -7.88f, 3.47f)
lineTo(70.88f, 106.64f)
close()
}
path(
fill = SolidColor(Color(0xFF434A54)),
) {
moveTo(441.13f, 106.64f)
horizontalLineToRelative(-80.95f)
lineToRelative(19.08f, -9.52f)
curveToRelative(1.48f, -0.73f, 3.11f, -1.13f, 4.77f, -1.13f)
horizontalLineToRelative(42.67f)
curveToRelative(2.98f, 0.0f, 5.84f, 1.26f, 7.86f, 3.47f)
lineTo(441.13f, 106.64f)
close()
}
}.build()
return customHashTagIconsGamestr!!
}
private var customHashTagIconsGamestr: ImageVector? = null
@@ -20,6 +20,8 @@
*/ */
package com.vitorpamplona.amethyst.commons.hashtags package com.vitorpamplona.amethyst.commons.hashtags
import androidx.compose.foundation.Image
import androidx.compose.runtime.Composable
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.PathFillType.Companion.NonZero import androidx.compose.ui.graphics.PathFillType.Companion.NonZero
import androidx.compose.ui.graphics.SolidColor import androidx.compose.ui.graphics.SolidColor
@@ -28,9 +30,23 @@ import androidx.compose.ui.graphics.StrokeJoin.Companion.Miter
import androidx.compose.ui.graphics.vector.ImageVector import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.ImageVector.Builder import androidx.compose.ui.graphics.vector.ImageVector.Builder
import androidx.compose.ui.graphics.vector.path import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.graphics.vector.rememberVectorPainter
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
public val CustomHashTagIcons.Skull: ImageVector @Preview
@Composable
fun CustomHashTagIconsSkullPreview() {
Image(
painter =
rememberVectorPainter(
CustomHashTagIcons.Skull,
),
contentDescription = "",
)
}
val CustomHashTagIcons.Skull: ImageVector
get() { get() {
if (customHashTagIconsSkull != null) { if (customHashTagIconsSkull != null) {
return customHashTagIconsSkull!! return customHashTagIconsSkull!!