/*
 * Copyright (C) 2021 Robert Bosch GmbH Copyright (C) 2021 Robert Bosch Manufacturing Solutions GmbH, Germany. All rights reserved.
 */

import { Injectable } from '@angular/core';
import { BciMultiFileSelectIntl } from '@bci-web-core/core';
import { Subject } from 'rxjs';

@Injectable()
export class CustomBciMultiFileSelectIntl extends BciMultiFileSelectIntl {
  /**
   * The tooltip to be displayed if the parameter 'maximumFiles' has been reached
   */
  addButtonDisabledTooltip = 'A maximum of 3 files can be uploaded';

  /**
   * The file counter label for one item (one)
   */
  item = 'File';

  /**
   * The file counter label for items (multiple)
   */
  items = 'Files';

  /**
   * The label to be displayed next to the add-button
   */
  addButtonLabel = 'Add File';

  /**
   * The text to be displayed if no file has been uploaded yet
   */
  noFilesAddedMessage = 'Click here, or on the add button, to upload files.';

  /**
   * The description to be displayed between the label and the files overview
   */
  description =
    'This is an optional placeholder where a description can be provided.\n The demo allows to upload a maximum of 3 .xslx, .txt, .docx , .json, .csv and .json files with a maximum size of 1 MB.';

  /**
   * The file name label displayed on top of the filename
   */
  fileNameLabel = 'File name';

  /**
   * The file type label displayed on top of the file type
   */
  fileTypeLabel = 'File type';

  /**
   * The file size label displayed on top of the file size
   */
  fileSizeLabel = 'File size';

  /** Use this to notify the component on labels that have changed since initialization. */
  readonly changes = new Subject();
}
