アイコンタイプのサイト設定

プラグインに、一部のコンポーネントに表示されるアイコンを制御できるサイト設定を追加しようとしています。コンポーネント自体はすでにユーザーがカスタマイズできるようになっているので、サイト設定をスタッフがデフォルトのアイコンを定義する方法として追加したいと考えました。サイト設定にはemoji_listタイプがあることは知っていますが、SVGアイコン用のものはないようです。

私が確認した限りでは、ほとんどのプラグイン/TCは、アイコン設定に画像のアップロードまたはプレーン文字列を使用しています。使用できるタイプ/バリデーターを見落としているのでしょうか?スタイルガイドを調べてアイコンの名前を入力するように指示するのは奇妙な気がします。

アイコンベースのサイト設定がないため、タイプを追加していません。アプリの他の部分に組み込まれているアイコンピッカーコンポーネントがありますが、サイト設定には現在何もありません。

なるほど、納得です。コアがそれを必要とする具体的なシナリオは、おそらくテーマ/テーマコンポーネント(TCs)やプラグインだけが極めてUIに特化した設定を必要とするため、想像しにくいですね。

私は通常ユーザーにとってよりアクセスしやすい他の場所でアイコンピッカーコンポーネントを使用していますが、私が想定している具体的なユースケースは、デフォルトのアイコンを設定するようなものです。オブジェクトのSiteSetting型と組み合わせることで、管理者が特定の特徴をテンプレート化しやすくなります。

コアチームは、コアのサイト設定でそれを使用していなくても、icon_type型をSiteSettingsに追加することに前向きでしょうか?必要であれば、このトピックを#contribute:featureリクエストとして再オープンしても構いません。

これについて何かアップデートはありますか? リアクションがコアに追加されることに気づきました。そして、そのプラグインには現在、Discourse reactions like icon という設定があり、そこでアイコン名を_手動で入力_する必要があります。

今のところ予定はありませんが、良い機会になるかもしれません。そのアイデアは伝えておきます。

はい、特にオブジェクトタイプの設定で、コンポーネント設定でこれを使用できると素晴らしいです。追加していただけますか?

サイト設定にアイコンタイプが追加されました。

これは素晴らしいですね!TCにも使えると想定していますが、これでいくつか更新を始めるべきでしょうか!

(投稿は投稿者によって削除されました)

まだできないと思います(少なくとも私は動作させることができませんでした)。

テーマコンポーネントの 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
...