**Description**
The `airflow.models.baseoperator.chain()` is a very useful and convenient way to add sequential task dependencies in DAGs.  This function has [recently been updated](https://github.com/apache/airflow/issues/16635) to support `BaseOperator` and `XComArgs` but should also be able to support `Labels` as well.

**Use case / motivation**
Users who create tasks via the `@task` decorator will not be able to use the `chain()` function to apply sequential dependencies that do not share an `XComArg` implicit dependency with a `Label`.  This use case can occur when attempting to chain multiple branch labels and the next sequential task.

With the new update (yet to be released), users will receive the following exception when attempting to chain an `XComArg` and `Label`:

```bash
TypeError: Chain not supported between instances of <class 'airflow.utils.edgemodifier.EdgeModifier'> and <class 'airflow.models.xcom_arg.XComArg'>
```


**Are you willing to submit a PR?**
Absolutely. 🚀 

**Related Issues**
None

airflow/models/baseoperator.py
upstream = True
        else:
            upstream = False
        if not self._dag:
            return self.priority_weight
        from airflow.models.dag import DAG
        dag: DAG = self._dag
        return self.priority_weight + sum(
            map(
                lambda task_id: dag.task_dict[task_id].priority_weight,
                self.get_flat_relative_ids(upstream=upstream),
            )
        )
    @cached_property
    def operator_extra_link_dict(self) -> Dict[str, Any]:
        """Returns dictionary of all extra links for the operator"""
        op_extra_links_from_plugin: Dict[str, Any] = {}
        from airflow import plugins_manager
        plugins_manager.initialize_extra_operators_links_plugins()
        if plugins_manager.operator_extra_links is None:
            raise AirflowException("Can't load operators")
        for ope in plugins_manager.operator_extra_links:
            if ope.operators and self.__class__ in ope.operators:
                op_extra_links_from_plugin.update({ope.name: ope})
        operator_extra_links_all = {link.name: link for link in self.operator_extra_links}
        
        operator_extra_links_all.update(op_extra_links_from_plugin)
        return operator_extra_links_all
    @cached_property
    def global_operator_extra_link_dict(self) -> Dict[str, Any]: