diff --git a/CHANGELOG.md b/CHANGELOG.md index e67ccc6b06..54770ac159 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,9 @@ ## 2.1.3 +* `Utils`: + * Rename `UserId` extension `link` to `userLink` + ## 2.1.2 * `Versions`: diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatIdentifier.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatIdentifier.kt index b7ea893b3c..967e81d54a 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatIdentifier.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatIdentifier.kt @@ -11,6 +11,8 @@ import kotlinx.serialization.encoding.Encoder import kotlinx.serialization.json.JsonPrimitive import kotlinx.serialization.json.longOrNull +const val internalLinkBeginning = "https://t.me" + @Serializable(ChatIdentifierSerializer::class) sealed class ChatIdentifier @@ -26,16 +28,29 @@ data class ChatId( * https://core.telegram.org/bots/api#formatting-options */ @Warning("This API have restrictions in Telegram System") -val Identifier.link: String +val Identifier.userLink: String get() = "tg://user?id=$this" /** * https://core.telegram.org/bots/api#formatting-options */ @Warning("This API have restrictions in Telegram System") -val UserId.link: String - get() = chatId.link +val UserId.userLink: String + get() = chatId.userLink val User.link: String - get() = id.link + get() = id.userLink + +/** + * https://core.telegram.org/bots/api#formatting-options + */ +@Deprecated("Renamed", ReplaceWith("userLink", "dev.inmo.tgbotapi.types.userLink")) +val Identifier.link: String + get() = "$internalLinkBeginning/tg://user?id=$this" +/** + * https://core.telegram.org/bots/api#formatting-options + */ +@Deprecated("Renamed", ReplaceWith("userLink", "dev.inmo.tgbotapi.types.userLink")) +val ChatId.link: String + get() = chatId.link typealias UserId = ChatId diff --git a/tgbotapi.utils/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/utils/formatting/LinksFormatting.kt b/tgbotapi.utils/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/utils/formatting/LinksFormatting.kt index 289d5cafe8..284900af4e 100644 --- a/tgbotapi.utils/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/utils/formatting/LinksFormatting.kt +++ b/tgbotapi.utils/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/utils/formatting/LinksFormatting.kt @@ -5,8 +5,6 @@ import dev.inmo.tgbotapi.types.message.textsources.link import dev.inmo.tgbotapi.types.chat.* import dev.inmo.tgbotapi.types.message.abstracts.Message -private const val internalLinkBeginning = "https://t.me" - fun makeUsernameLink(username: String) = "$internalLinkBeginning/$username" fun makeUsernameDeepLinkPrefix(username: String) = "${makeUsernameLink(username)}?start=" inline val Username.link @@ -73,7 +71,7 @@ val Message.link: String? val Chat.link: String? get() { if (this is UsernameChat) { - username ?.username ?.let { return it } + username ?.link } if (this is ExtendedPublicChat) { inviteLink ?.let { return it }