diff --git a/app/app/Http/Controllers/Api/V1/EmojiApiController.php b/app/app/Http/Controllers/Api/V1/EmojiApiController.php index 1af23f2..abc090d 100644 --- a/app/app/Http/Controllers/Api/V1/EmojiApiController.php +++ b/app/app/Http/Controllers/Api/V1/EmojiApiController.php @@ -536,12 +536,10 @@ class EmojiApiController extends Controller if ($supportsTone && $emoji !== '') { $base = preg_replace('/\x{1F3FB}|\x{1F3FC}|\x{1F3FD}|\x{1F3FE}|\x{1F3FF}/u', '', $emoji) ?? $emoji; $out['emoji_base'] = $base; - if ($tier === self::TIER_PRO) { - $out['variants'] = array_map( - fn (string $tone): string => $base.$tone, - ["\u{1F3FB}", "\u{1F3FC}", "\u{1F3FD}", "\u{1F3FE}", "\u{1F3FF}"] - ); - } + $out['variants'] = array_map( + fn (string $tone): string => $base.$tone, + ["\u{1F3FB}", "\u{1F3FC}", "\u{1F3FD}", "\u{1F3FE}", "\u{1F3FF}"] + ); } if ($tier === self::TIER_PRO) { diff --git a/app/resources/views/site/emoji-detail.blade.php b/app/resources/views/site/emoji-detail.blade.php index f52a6bd..c10f227 100644 --- a/app/resources/views/site/emoji-detail.blade.php +++ b/app/resources/views/site/emoji-detail.blade.php @@ -12,6 +12,20 @@ $description = $emoji['description'] ?? ''; $unified = $emoji['unified'] ?? ''; $shortcode = $emoji['shortcodes'][0] ?? ''; + $supportsTone = (bool) ($emoji['supports_skin_tone'] ?? false); + $emojiBase = $symbol; + if ($supportsTone && $symbol !== '') { + $emojiBase = preg_replace('/\x{1F3FB}|\x{1F3FC}|\x{1F3FD}|\x{1F3FE}|\x{1F3FF}/u', '', $symbol) ?: $symbol; + } + $toneVariants = $supportsTone + ? [ + 'light' => $emojiBase."\u{1F3FB}", + 'medium-light' => $emojiBase."\u{1F3FC}", + 'medium' => $emojiBase."\u{1F3FD}", + 'medium-dark' => $emojiBase."\u{1F3FE}", + 'dark' => $emojiBase."\u{1F3FF}", + ] + : []; $user = auth()->user(); $userTier = $userTier ?? $user?->tier; $isPersonal = $userTier === 'personal'; @@ -93,9 +107,9 @@