getFilenameForExceededTotalSizeLimitForNonTsFiles(name, options, fileNames, propertyReader) {
    if (options && options.disableSizeLimit || !this.host.getFileSize) {
      return;
    }
    let availableSpace = maxProgramSizeForNonTsFiles;
    this.projectToSizeMap.set(name, 0);
    this.projectToSizeMap.forEach((val) => availableSpace -= val || 0);
    let totalNonTsFileSize = 0;
    for (const f of fileNames) {
      const fileName = propertyReader.getFileName(f);
      if (hasTSFileExtension(fileName)) {
        continue;
      }
      totalNonTsFileSize += this.host.getFileSize(fileName);
      if (totalNonTsFileSize > maxProgramSizeForNonTsFiles || totalNonTsFileSize > availableSpace) {
        const top5LargestFiles = fileNames.map((f2) => propertyReader.getFileName(f2)).filter((name2) => !hasTSFileExtension(name2)).map((name2) => ({ name: name2, size: this.host.getFileSize(name2) })).sort((a, b) => b.size - a.size).slice(0, 5);
        this.logger.info(`Non TS file size exceeded limit (${totalNonTsFileSize}). Largest files: ${top5LargestFiles.map((file) => `${file.name}:${file.size}`).join(", ")}`);
        return fileName;
      }
    }
    this.projectToSizeMap.set(name, totalNonTsFileSize);
  }
Get a filename if the language service exceeds the maximum allowed program size; otherwise returns undefined.