Однако скриншот не подстраивает свои цвета под палитру. Что бы вы посоветовали для демонстрации функции на форуме, где компонент не установлен? Может, более крупный скриншот, включающий ссылку?
Я хотел предложить использовать компонент иконки Discourse, но не могу изменить цвет иконки:
У меня та же проблема. Иконка также появляется на внутренних ссылках.
Если я правильно понял код, он ищет «http*» в URL, чтобы определить внешние ссылки. К сожалению, инструмент ссылок в редакторе автоматически использует полностью квалифицированные (абсолютные) URL, начинающиеся с «https:///..».
Полагаю, именно это вызывает появление иконок внешних ссылок на «внутренних» ссылках.
Можно ли расширить код, чтобы он проверял наличие «https:///..» и классифицировал такие ссылки как внутренние?
Вот пример того, как я использую это в своём компоненте темы.
В моём случае я использую настройки, так как компонент динамически меняет иконки через CSS, что позволяет напрямую обращаться к этим настройкам. (Добавление классов к ссылкам не всегда работает хорошо в некоторых случаях.)
Однако для вашего компонента вы можете просто динамически исключать текущий хостнейм, примерно так, как я думаю: