If tsdb is enabled and the mapping contains fields of type `match_only_text` then these fields are not visible in the _source
in the search response.

Reproduction of this issue:

```

PUT _index_template/my-weather-sensor-index-template
{
    "index_patterns": [
        "metrics-weather_sensors-*"
    ],
    "data_stream": {},
    "template": {
        "settings": {
            "index.mode": "time_series",
            "index.routing_path": [
                "sensor_id",
                "location"
            ],
            "index.look_ahead_time": "3h"
        },
        "mappings": {
            "properties": {
                "sensor_id": {
                    "type": "keyword",
                    "time_series_dimension": true
                },
                "location": {
                    "type": "keyword",
                    "time_series_dimension": true
                },
                "temperature": {
                    "type": "half_float",
                    "time_series_metric": "gauge"
                },
                "humidity": {
                    "type": "half_float",
                    "time_series_metric": "gauge"
                },
                "@timestamp": {
                    "type": "date",
                    "format": "strict_date_optional_time"
                },
                "message": {
                    "type": "match_only_text"
                }
            }
        }
    },
    "priority": 500,
    "_meta": {
        "description": "Template for my weather sensor data"
    }
}

DELETE _data_stream/metrics-weather_sensors-dev

POST /metrics-weather_sensors-dev/_doc
{
    "@timestamp": "2023-07-04T11:21:15.000Z",
    "sensor_id": "HAL-000001",
    "location": "plains",
    "temperature": 26.7,
    "humidity": 49.9,
    "message": "hey"
}

POST /metrics-weather_sensors-dev/_doc
{
    "@timestamp": "2023-07-04T11:25:42.000Z",
    "sensor_id": "SYKENET-000001",
    "location": "swamp",
    "temperature": 32.4,
    "humidity": 88.9,
    "message": "you"
}

GET /metrics-weather_sensors-dev/_search
```

The search response will not contain the `message` field in the `_source` and this field should exist.
server/src/main/java/org/elasticsearch/index/IndexMode.java
@Override
        public DocumentDimensions buildDocumentDimensions(IndexSettings settings) {
            return new DocumentDimensions.OnlySingleValueAllowed();
        }
        @Override
        public boolean shouldValidateTimestamp() {
            return false;
        }
        @Override
        public void validateSourceFieldMapper(SourceFieldMapper sourceFieldMapper) {}
    },
    TIME_SERIES("time_series") {
        @Override
        void validateWithOtherSettings(Map<Setting<?>, Object> settings) {
            if (settings.get(IndexMetadata.INDEX_ROUTING_PARTITION_SIZE_SETTING) != Integer.valueOf(1)) {
                throw new IllegalArgumentException(error(IndexMetadata.INDEX_ROUTING_PARTITION_SIZE_SETTING));
            }
            for (Setting<?> unsupported : TIME_SERIES_UNSUPPORTED) {
                if (false == Objects.equals(unsupported.getDefault(Settings.EMPTY), settings.get(unsupported))) {
                    throw new IllegalArgumentException(error(unsupported));
                }
            }
            checkSetting(settings, IndexMetadata.INDEX_ROUTING_PATH);
        }
        private static void checkSetting(Map<Setting<?>, Object> settings, Setting<?> setting) {
            if (Objects.equals(setting.getDefault(Settings.EMPTY), settings.get(setting))) {
                throw new IllegalArgumentException(tsdbMode() + " requires a non-empty [" + setting.getKey() + "]");
            }
        }
        private static String error(Setting<?> unsupported) {