### Description

After the release for Airflow 2.6.0 I was integrating some forms into our setup and was missing some options selections - and some nice features to make selections user friendly.

I'd like do contribute some few features into the user forms:
* A select box option where proposals are made but user is not limited to hard `enum` list (`enum` is restricting user input to only the options provided)
* A multi-option pick list (because sometimes a single selection is just not enough
* Labels so that technical values used to control the DAG are different from what is presented as option to user

### Use case/motivation

After the initial release of UI trigger forms, add more features (incrementially)

### Related issues

Relates or potentially has a conflict with #31299, so this should be merged before.

### Are you willing to submit a PR?

- [X] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

<script lang="javascript">
                const hex_chars = "0123456789ABCDEF";
                function i2hex(name) {
                    var i = document.getElementById(name).value;
                    return hex_chars.substr(parseInt(i / 16), 1) + hex_chars.substr(parseInt(i % 16), 1)
                }
                function u_{name}() {
                    var hex_val = "#"+i2hex("r_{name}")+i2hex("g_{name}")+i2hex("b_{name}");
                    document.getElementById("{name}").value = hex_val;
                    document.getElementById("preview_{name}").style.background = hex_val;
                    updateJSONconf();
                }
                function hex2i(text) {
                    return hex_chars.indexOf(text.substr(0,1)) * 16 + hex_chars.indexOf(text.substr(1,1));
                }
                function v_{name}() {
                    var value = document.getElementById("{name}").value.toUpperCase();
                    document.getElementById("r_{name}").value = hex2i(value.substr(1,2));
                    document.getElementById("g_{name}").value = hex2i(value.substr(3,2));
                    document.getElementById("b_{name}").value = hex2i(value.substr(5,2));
                    document.getElementById("preview_{name}").style.background = value;
                }
                v_{name}();
            </script>""",
            section="Special advanced stuff with form fields",
        ),
    },
) as dag:
    @task(task_id="show_params")
    def show_params(**kwargs) -> None: