/*
 * Copyright 2023 Bloomreach. All rights reserved. (https://www.bloomreach.com/)
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *  https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

@use '@angular/material' as mat;

$brie-material-typography: mat.m2-define-typography-config(
  $font-family: var(--brie-font-family-primary),
  $headline-1: mat.m2-define-typography-level(var(--brie-font-size-xl), 1.3, var(--brie-font-weight-normal)),
  $subtitle-2: mat.m2-define-typography-level(var(--brie-font-size-s), 1.3, var(--brie-font-weight-semibold)),
  $subtitle-1: mat.m2-define-typography-level(var(--brie-font-size-xs), 1.3, var(--brie-font-weight-bold)),
  $body-2: mat.m2-define-typography-level(var(--brie-font-size-s), 1.3, var(--brie-font-weight-semibold)),
  $body-1: mat.m2-define-typography-level(var(--brie-font-size-s), 1.3, var(--brie-font-weight-normal)),
  $caption: mat.m2-define-typography-level(var(--brie-font-size-xs), 1.3, var(--brie-font-weight-normal)),
  $button: mat.m2-define-typography-level(var(--brie-font-size-s), 1.3, var(--brie-font-weight-normal)),
);

$brie-material-primary: mat.m2-define-palette((
  50: var(--brie-blue-50),
  100: var(--brie-blue-100),
  200: var(--brie-blue-200),
  300: var(--brie-blue-300),
  400: var(--brie-blue-400),
  500: var(--brie-blue-500),
  600: var(--brie-blue-600),
  700: var(--brie-blue-700),
  800: var(--brie-blue-800),
  900: var(--brie-blue-900),
  A100: var(--brie-blue-A100),
  A200: var(--brie-blue-A200),
  A400: var(--brie-blue-A400),
  A700: var(--brie-blue-A700),
  contrast: (
    50: var(--brie-contrast-color-dark),
    100: var(--brie-contrast-color-dark),
    200: var(--brie-contrast-color-dark),
    300: var(--brie-contrast-color-dark),
    400: var(--brie-contrast-color-dark),
    500: var(--brie-contrast-color-light),
    600: var(--brie-contrast-color-light),
    700: var(--brie-contrast-color-light),
    800: var(--brie-contrast-color-light),
    900: var(--brie-contrast-color-light),
    A100: var(--brie-contrast-color-dark),
    A200: var(--brie-contrast-color-light),
    A400: var(--brie-contrast-color-light),
    A700: var(--brie-contrast-color-light),
  )
));

$brie-material-accent: mat.m2-define-palette((
  50: var(--brie-orange-50),
  100: var(--brie-orange-100),
  200: var(--brie-orange-200),
  300: var(--brie-orange-300),
  400: var(--brie-orange-400),
  500: var(--brie-orange-500),
  600: var(--brie-orange-600),
  700: var(--brie-orange-700),
  800: var(--brie-orange-800),
  900: var(--brie-orange-900),
  A100: var(--brie-orange-A100),
  A200: var(--brie-orange-A200),
  A400: var(--brie-orange-A400),
  A700: var(--brie-orange-A700),
  contrast: (
    50: var(--brie-contrast-color-dark),
    100: var(--brie-contrast-color-dark),
    200: var(--brie-contrast-color-dark),
    300: var(--brie-contrast-color-dark),
    400: var(--brie-contrast-color-dark),
    500: var(--brie-contrast-color-light),
    600: var(--brie-contrast-color-light),
    700: var(--brie-contrast-color-light),
    800: var(--brie-contrast-color-light),
    900: var(--brie-contrast-color-light),
    A100: var(--brie-contrast-color-dark),
    A200: var(--brie-contrast-color-light),
    A400: var(--brie-contrast-color-light),
    A700: var(--brie-contrast-color-light),
  )
));

$brie-material-warn: mat.m2-define-palette((
  50: var(--brie-red-50),
  100: var(--brie-red-100),
  200: var(--brie-red-200),
  300: var(--brie-red-300),
  400: var(--brie-red-400),
  500: var(--brie-red-500),
  600: var(--brie-red-600),
  700: var(--brie-red-700),
  800: var(--brie-red-800),
  900: var(--brie-red-900),
  A100: var(--brie-red-A100),
  A200: var(--brie-red-A200),
  A400: var(--brie-red-A400),
  A700: var(--brie-red-A700),
  contrast: (
    50: var(--brie-contrast-color-dark),
    100: var(--brie-contrast-color-dark),
    200: var(--brie-contrast-color-dark),
    300: var(--brie-contrast-color-dark),
    400: var(--brie-contrast-color-dark),
    500: var(--brie-contrast-color-light),
    600: var(--brie-contrast-color-light),
    700: var(--brie-contrast-color-light),
    800: var(--brie-contrast-color-light),
    900: var(--brie-contrast-color-light),
    A100: var(--brie-contrast-color-dark),
    A200: var(--brie-contrast-color-light),
    A400: var(--brie-contrast-color-light),
    A700: var(--brie-contrast-color-light),
  )
));

$brie-material-theme: mat.m2-define-light-theme((
  color: (
    primary: $brie-material-primary,
    accent: $brie-material-accent,
    warn: $brie-material-warn
  )
));

$brie-density: -5;
