Form toolkit -- не удаётся заставить всплывающую подсказку работать с компонентом, как описано в документации или в тестах

Продолжаем обсуждение из Набор инструментов Discourse для отображения форм:

У меня не получается заставить это работать. Оно просто отказывается отображать всплывающую подсказку. Я скопировал точный

            @tooltip={{component DTooltip content="component"}}

код из теста form-kit. Если я использую компонент, всплывающая подсказка не отображается.

Я не могу найти пример использования компонента в ядре или в all-the-plugins, поэтому, похоже, невозможно использовать i18n с всплывающей подсказкой в форме? (Я надеялся, что, возможно, я просто не смог разобраться в этом)

Я попробовал оба этих импорта, второй из теста (почему их два? Может быть, это два способа вызвать один и тот же файл? В ядре я вижу только один):

// import DTooltip from "discourse/components/d-tooltip";
import DTooltip from "float-kit/components/d-tooltip";

Действительно, тест и документация немного запутанные.

Судя по коду, вам нужно просто вернуть компонент .
Например, у меня это работает так:

const tooltip = <template>
    <DTooltip @icon="circle-question" @content="test" />
</template>

<form.Field
    @name="username"
    @title="Имя пользователя"
    @validation="required"
    @tooltip={{tooltip}}
    as |field|
>
    <field.Input />
</form.Field>

image

Когда я делаю что-то подобное, всплывающая подсказка просто добавляется к имени поля.

@tooltip ожидает только строку. Как только я это понял, я создал функцию, которая возвращает строку, например:

  @action
  tooltipText(field) {
    return i18n("pfaffmanager.help." + field + "_tooltip");
  }
...
               <form.Field
              @name="install_type"
              @format="large"
              @translatedLabel="бананы вкусные"
              @validation="required"
              @tooltip={{this.tooltipText "install_type"}}
              @class="install-field"
              @title="Install Type"
              {{! @description="description." }}
              as |field|
            >
              <field.Select
                {{on "focus" (fn this.fieldClicked "install_type")}}
                as |select|
              >

Похоже, это ещё один случай, когда документация просто неверна.