@use "sass:map";
@use "./_functions.scss" as *;
@use "../core/_index.scss" as *;

/// The row-gap between the elements in the Notification group.
/// @group notification
$kendo-notification-group-gap: var( --kendo-notification-group-gap, #{k-spacing(2)} ) !default;

$kendo-notification-padding-x: var( --kendo-notification-padding-x, #{k-spacing(3)} ) !default;
$kendo-notification-padding-y: var( --kendo-notification-padding-y, calc(#{k-spacing(2)} + 1px) ) !default;
$kendo-notification-border-width: var( --kendo-notification-border-width, 1px ) !default;
$kendo-notification-border-radius: var( --kendo-notification-border-radius, #{k-border-radius(md)} ) !default;
$kendo-notification-font-family: var( --kendo-notification-font-family, var( --kendo-font-family, inherit ) ) !default;
$kendo-notification-font-size: var( --kendo-notification-font-size, var( --kendo-font-size-sm, inherit ) ) !default;
$kendo-notification-line-height: var( --kendo-notification-line-height, var( --kendo-line-height-lg, normal ) ) !default;
$kendo-notification-actions-padding-x: var( --kendo-notification-actions-padding-x, null ) !default;
$kendo-notification-actions-padding-y: var( --kendo-notification-actions-padding-y, #{$kendo-notification-actions-padding-x} ) !default;

$kendo-notification-bg: var( --kendo-notification-bg, #{k-color(base-subtle)} ) !default;
$kendo-notification-text: var( --kendo-notification-text, #{k-color(on-app-surface)} ) !default;
$kendo-notification-border: var( --kendo-notification-border, color-mix(in srgb, k-color(border) 26%, transparent) ) !default;
$kendo-notification-box-shadow: var( --kendo-notification-box-shadow, none ) !default;

$kendo-notification-icon-spacing: var( --kendo-notification-icon-spacing, #{k-spacing(2)} ) !default;

/// The theme colors map for the Notification variations.
/// @group notification
$kendo-notification-theme-colors: (
    "primary": k-color(primary-subtle),
    "secondary": k-color(secondary-subtle),
    "tertiary": k-color(tertiary-subtle),
    "info": k-color(info-subtle),
    "success": k-color(success-subtle),
    "warning": k-color(warning-subtle),
    "error": k-color(error-subtle),
    "dark": k-color(dark-subtle),
    "light": k-color(light-subtle),
    "inverse": if($kendo-is-dark-theme, k-color(light-subtle), k-color(dark-subtle))
) !default;

/// The generated theme colors map for the Notification.
/// @group notification
$kendo-notification-theme: notification-theme( $kendo-notification-theme-colors ) !default;

@forward "@progress/kendo-theme-core/scss/components/notification/_variables.scss" with (
    $kendo-notification-group-gap: $kendo-notification-group-gap,
    $kendo-notification-padding-x: $kendo-notification-padding-x,
    $kendo-notification-padding-y: $kendo-notification-padding-y,
    $kendo-notification-border-width: $kendo-notification-border-width,
    $kendo-notification-border-radius: $kendo-notification-border-radius,
    $kendo-notification-font-family: $kendo-notification-font-family,
    $kendo-notification-font-size: $kendo-notification-font-size,
    $kendo-notification-line-height: $kendo-notification-line-height,
    $kendo-notification-actions-padding-x: $kendo-notification-actions-padding-x,
    $kendo-notification-actions-padding-y: $kendo-notification-actions-padding-y,
    $kendo-notification-bg: $kendo-notification-bg,
    $kendo-notification-text: $kendo-notification-text,
    $kendo-notification-border: $kendo-notification-border,
    $kendo-notification-icon-spacing: $kendo-notification-icon-spacing,
    $kendo-notification-theme-colors: $kendo-notification-theme-colors,
    $kendo-notification-theme: $kendo-notification-theme
);
