아이콘 유형 SiteSetting

플러그인에 일부 컴포넌트에 표시되는 아이콘을 제어할 수 있는 SiteSetting을 추가하려고 합니다. 해당 컴포넌트는 이미 사용자가 커스터마이즈할 수 있도록 되어 있었기 때문에, SiteSetting을 통해 스태프가 기본 아이콘을 정의할 수 있는 방법을 제공하고자 했습니다. SiteSetting에는 emoji_list 타입이 있다는 것은 알고 있지만, SVG 아이콘을 위한 타입은 없는 것 같습니다.

확인해 본 결과, 대부분의 플러그인/TC는 아이콘 설정에 이미지 업로드나 일반 문자열을 사용하고 있습니다. 제가 놓치고 있는 타입/밸리데이터가 있을까요? 스타일 가이드를 찾아보고 아이콘 이름을 직접 입력하라고 하는 방식은 어색하게 느껴집니다.

아이콘 기반 사이트 설정이 없어서 해당 타입을 추가하지 않은 것으로 보입니다. 아이콘 선택기 컴포넌트가 앱의 다른 부분에도 사용되고 있지만, 현재 사이트 설정에는 해당 기능이 포함되어 있지 않습니다.

그건 타당합니다. 코어가 이를 필요로 하는 구체적인 시나리오는 솔직히 잘 떠오르지 않아요. 아마도 테마/TC나 플러그인처럼 UI에 초점을 맞춘 설정이 필요한 경우에만 유용할 것 같거든요.

저는 일반 사용자가 더 쉽게 접근할 수 있는 다른 곳에서 아이콘 선택기 컴포넌트를 사용하고 있습니다. 하지만 제가 염두에 두고 있는 특정 사용 사례는 기본 아이콘 설정 같은 기능에 해당합니다. SiteSetting 타입의 객체와 결합하면, 관리자가 특정 기능을 템플릿화하는 것이 더 쉬워질 것입니다.

코어에서 이를 사용하는 코어 사이트 설정이 없더라도, 코어의 SiteSettings에 icon_type 타입을 추가하는 것에 대해 팀이 개방적인 태도를 보일까요? 필요할 경우, 이 주제를 Contribute > Feature 요청으로 다시 여는 것도 괜찮습니다.

이 문제에 대해 업데이트가 있나요? 리액션 기능이 코어에 추가될 예정이며, 해당 플러그인에는 현재 아이콘 이름을 수동으로 입력해야 하는 Discourse reactions like icon 설정이 있다는 것을 확인했습니다.

지금은 계획이 없지만, 좋은 기회일 수도 있겠네요. 이 아이디어를 전달해 보겠습니다.

네, 이걸 컴포넌트 설정에서 사용할 수 있으면 좋겠어요. 특히 객체 타입(object type) 설정에서요. 이 기능을 추가해 주실 수 있을까요?

비슷한 요청이 여기에도 언급되어 있습니다:

이제 아이콘 유형 사이트 설정이 있습니다.

정말 좋습니다! TC에도 사용할 수 있다고 가정해도 될까요? 이제 이것으로 몇 가지를 업데이트할 때입니다!

그렇지 않을 수도 있다고 봅니다. 여기에는 아이콘 타입이 없습니다.

사이트 설정의 Emoji deny list와 같은 이모지 설정 타입을 테마에서도 사용할 수 없다고 생각합니다.

아직은 아닌 것 같습니다(적어도 저는 작동하게 만들지 못했습니다).

테마 컴포넌트의 object schemas 내에서 type: icon을 지원하는 계획이 있나요? 예를 들어 이런 식으로요?

    links:
        type: objects
        schema:
          name: menu_link
          identifier: text
          properties:
            icon:
              type: icon
              required: true
            text:
              type: string
              required: true
              validations:
                min_length: 1
                max_length: 100
            url:
              type: string
              required: true
              validations:
                min_length: 1
                max_length: 500
...