/* stylelint-disable scss/no-global-function-names */
@use '@angular/material' as mat;

$foreground: map-get($custom-theme, foreground);
$background: map-get($custom-theme, background);

// Custom variables - ACA specific styling:
$data-table-thumbnail-width: 35px;
$data-table-cell-min-width: 150px;
$data-table-cell-min-width-no-grow: 120px;
$data-table-cell-min-width-file-size: 110px !important;

// Upload drag
$adf-upload-dragging-color: unset;
$adf-upload-dragging-border: 1px solid #00bcd4;
$adf-upload-dragging-background: #e0f7fa;
$adf-upload-dragging-level1-color: unset;
$adf-upload-dragging-level1-border: none;
$grey-background: rgba(33, 33, 33, 0.12);
$grey-text-background: rgba(33, 33, 33, 0.05);
$grey-hover-background: rgba(33, 33, 33, 0.24);
$blue-save-button-background: #1f74db;
$black-heading: #4e4c4c;
$grey-dropdown-background: #eee;
$grey-background-hover: #e0e0e0;
$grey-divider: rgba(0, 0, 0, 0.22);
$datetimepicker-font-color: rgba(black, 0.87);
$datetimepicker-selected-date-background: #2254b2;
$datetimepicker-cell-background-color: #fff;
$datetimepicker-cell-focus-border-color: #1f74db;
$sidenav-background-color: #f8f8f8;
$selected-text-color: #212121;
$selected-background-color: rgba(31, 116, 219, 0.24);
$action-button-text-color: rgba(33, 35, 40, 0.7);
$page-layout-header-background-color: #fff;
$search-chip-icon-color: #757575;
$disabled-chip-background-color: #f5f5f5;

// CSS Variables
$defaults: (
  --theme-text-color: mat.get-color-from-palette($foreground, text, 0.54),
  --theme-text-bold-color: mat.get-color-from-palette($foreground, text, 0.87),
  --theme-title-color: mat.get-color-from-palette($foreground, text, 0.87),
  --theme-text-disabled-color: mat.get-color-from-palette($foreground, text, 0.38),
  --theme-border-color: mat.get-color-from-palette($foreground, text, 0.07),
  --theme-card-background-color: mat.get-color-from-palette($background, card),
  --theme-foreground-text-color: mat.get-color-from-palette($foreground, text, 0.72),
  --theme-foreground-text-bold-color: mat.get-color-from-palette($foreground, text, 0.87),
  --theme-secondary-text-color: mat.get-color-from-palette($foreground, secondary-text),
  --theme-divider-color: mat.get-color-from-palette($foreground, divider, 0.07),
  --theme-dialog-background-color: mat.get-color-from-palette($background, dialog),
  --theme-header-text-color: mat.get-color-from-palette($foreground, text, 0.87),
  --new-button-font-size: 0.9rem,
  --theme-grey-text-background-color: $grey-text-background,
  --theme-grey-background-color: $grey-background,
  --theme-grey-hover-background-color: $grey-hover-background,
  --theme-blue-button-color: $blue-save-button-background,
  --theme-heading-color: $black-heading,
  --theme-dropdown-color: $grey-dropdown-background,
  --theme-grey-background-hover: $grey-background-hover,
  --theme-grey-divider-color: $grey-divider,
  --theme-pagination-background-color: mat.get-color-from-palette($background, background),
  --theme-about-panel-border-color: $grey-background,
  --theme-about-panel-background-color: mat.get-color-from-palette($background, card),
  --theme-about-panel-title-color: mat.get-color-from-palette($foreground, text),
  --theme-datetimepicker-font-color: $datetimepicker-font-color,
  --theme-datetimepicker-selected-date-background: $datetimepicker-selected-date-background,
  --theme-datetimepicker-cell-background: $datetimepicker-cell-background-color,
  --theme-datetimepicker-cell-focus-border: $datetimepicker-cell-focus-border-color,
  --theme-sidenav-background-color: $sidenav-background-color,
  --theme-selected-text-color: $selected-text-color,
  --theme-selected-background-color: $selected-background-color,
  --theme-hover-background-color: $grey-text-background,
  --theme-action-button-text-color: $action-button-text-color,
  --theme-page-layout-header-background-color: $page-layout-header-background-color,
  --theme-search-chip-icon-color: $search-chip-icon-color,
  --theme-disabled-chip-background-color: $disabled-chip-background-color
);

// propagates SCSS variables into the CSS variables scope
:root {
  @each $name, $value in $defaults {
    #{$name}: #{$value};
  }
}
