### Elasticsearch Version

8.7.0

### Installed Plugins

_No response_

### Java Version

_bundled_

### OS Version

whatever

### Problem Description

Enable TSDB and disable source.

### Steps to Reproduce

```
curl -uelastic:password -HContent-Type:application/json -XPUT localhost:9200/test?pretty -d'{
  "settings": {
    "mode": "time_series",
    "routing_path": "foo"
  },
  "mappings": {
    "_source": {
      "enabled": false
    }
  }
}'
```

The error message you get is `Cannot set both [mode] and [enabled] parameters` but we never tried to set `mode`. I think maybe we want `time series indices only support synthetic source` like we give if you try to disable _source in tsdb.

### Logs (if relevant)

_No response_
server/src/main/java/org/elasticsearch/index/mapper/SourceFieldMapper.java
import java.io.IOException;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Locale;
public class SourceFieldMapper extends MetadataFieldMapper {
    public static final String NAME = "_source";
    public static final String RECOVERY_SOURCE_NAME = "_recovery_source";
    public static final String CONTENT_TYPE = "_source";
    
    private enum Mode {
        DISABLED,
        STORED,
        SYNTHETIC
    }
    private static final SourceFieldMapper DEFAULT = new SourceFieldMapper(
        null,
        Explicit.IMPLICIT_TRUE,
        Strings.EMPTY_ARRAY,
        Strings.EMPTY_ARRAY,
        null
    );
    private static final SourceFieldMapper TSDB_DEFAULT = new SourceFieldMapper(
        Mode.SYNTHETIC,
        Explicit.IMPLICIT_TRUE,
        Strings.EMPTY_ARRAY,
        Strings.EMPTY_ARRAY,
        IndexMode.TIME_SERIES
    );
    public static class Defaults {