craftcms / cms

Build bespoke content experiences with Craft.
https://craftcms.com
Other
3.29k stars 639 forks source link

[5.x]: When using editableTableField, with autosuggest and suggestEnvVars, the dropdown only appears on first table row #15224

Open michtio opened 5 months ago

michtio commented 5 months ago

What happened?

Description

Adding a editableTableField inside of a CP as follows:

{% set cols = {
    officeCode: {
        type: 'autosuggest',
        heading: 'Office Code'|t('ats'),
        suggestEnvVars: true,
        suggestAliases: true,
        thin: true,
    },
    officeToken: {
        type: 'autosuggest',
        heading: 'Office Token'|t('ats'),
        suggestEnvVars: true,
        suggestAliases: true,
    }
} %}

This parses the ENV vars correctly, but only the first row shows the drop down with ENV var selections and autocomplete.

Steps to reproduce

  1. Add the above code in a CP tempalte
  2. Add an extra row
  3. The suggestions don't appear

Expected behavior

Suggestions should always appear.

Actual behavior

Suggestions don't appear

Craft CMS version

5.2.1

PHP version

8.2

Operating system and version

No response

Database type and version

No response

Image driver and version

No response

Installed plugins and versions

-

michtio commented 4 months ago

@i-just maybe as an extra:

When you actually have all the rows already in your settings, you get the dropdown on every row. It only doesn't appear when you add a new row.

brandonkelly commented 4 months ago

The code involved in initializing a new autosuggest field is pretty involved. I don’t think we’ll be able to fix this without a major editable table refactor that moves to rendering new rows on the back end.

michtio commented 4 months ago

The code involved in initializing a new autosuggest field is pretty involved. I don’t think we’ll be able to fix this without a major editable table refactor that moves to rendering new rows on the back end.

That is possible, perfectly fine if this is backlogged, I know you guys have plans for UI refactors and views, maybe take it with whenever it passes along.