Kit de herramientas de formulario -- no puedo hacer funcionar la tooltip con el componente como se describe en el tema de la documentación o en las pruebas

Continuando la discusión de Discourse toolkit para renderizar formularios:

No puedo hacer que esto funcione. Simplemente se niega a renderizar una información sobre herramientas. Copié exactamente

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

que está en la prueba de form-kit. Si uso un componente, no se renderiza ninguna información sobre herramientas.

No encuentro un ejemplo de un componente que se use en el núcleo o en all-the-plugins, por lo que parece que es imposible usar i18n con una información sobre herramientas en un formulario. (Esperaba que tal vez no pudiera resolver esto).

Probé ambas importaciones, la última de la prueba (¿por qué hay dos? ¿Quizás son dos formas de llamar al mismo archivo? Solo veo una en el núcleo):

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

De hecho, la prueba y la documentación son un poco confusas.

Mirando el código, solo tienes que devolver un componente <0xC2><0xA0>DTooltip<0xC2><0xA0>.
Por ejemplo, esto me funciona:

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

<form.Field
    @name="username"
    @title="Username"
    @validation="required"
    @tooltip={{tooltip}}
    as |field|
>
    <field.Input />
</form.Field>

image

1 me gusta

Cuando hago algo así, la información sobre la herramienta simplemente se agrega al nombre del campo.

@tooltip solo acepta una cadena de texto. Una vez que me di cuenta de eso, simplemente creé una función que devuelve una cadena como

  @action
  tooltipText(campo) {
    return i18n("pfaffmanager.help." + campo + "_tooltip");
  }
...
               cform.Field
              @name="install_type"
              @format="large"
              @translatedLabel="los plátanos son deliciosos"
              @validation="required"
              @tooltip={{this.tooltipText "install_type"}}
              @class="install-field"
              @title="Tipo de instalación"
              {{! @description="description." }}
              as |field|
            e
              cfield.Select
                {{on "focus" (fn this.fieldClicked "install_type")}}
                as |select|
              e

Esto parece otro caso en el que la documentación simplemente está equivocada.