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

/// The default size of the TreeView.
/// @group treeview
/// @role default
$kendo-treeview-default-size: "md" !default;
/// The gap of the TreeView.
/// @group treeview
$kendo-treeview-gap: var( --kendo-treeview-gap, k-spacing(0.5) ) !default;
/// The border radius of the TreeView.
/// @group treeview
$kendo-treeview-border-radius: var( --kendo-treeview-border-radius, k-border-radius(md) ) !default;

/// The font family of the TreeView.
/// @group treeview
$kendo-treeview-font-family: var( --kendo-treeview-font-family, var( --kendo-font-family, normal ) ) !default;
/// The font size of the small TreeView.
/// @group treeview
$kendo-treeview-sm-font-size: var( --kendo-treeview-sm-font-size, var( --kendo-font-size-sm, inherit ) ) !default;
/// The font size of the medium TreeView.
/// @group treeview
$kendo-treeview-md-font-size: var( --kendo-treeview-md-font-size, var( --kendo-font-size, inherit ) ) !default;
/// The font size of the large TreeView.
/// @group treeview
$kendo-treeview-lg-font-size: var( --kendo-treeview-lg-font-size, var( --kendo-font-size-lg, inherit ) ) !default;
/// The line height of the small TreeView.
/// @group treeview
$kendo-treeview-sm-line-height: var( --kendo-treeview-sm-line-height, var( --kendo-line-height-lg, normal ) ) !default;
/// The line height of the medium TreeView.
/// @group treeview
$kendo-treeview-md-line-height: var( --kendo-treeview-md-line-height, var( --kendo-line-height, normal ) ) !default;
/// The line height of the large TreeView.
/// @group treeview
$kendo-treeview-lg-line-height: var( --kendo-treeview-lg-line-height, var( --kendo-line-height-sm, normal ) ) !default;
/// The indentation of child groups in the TreeView.
/// @group treeview
$kendo-treeview-indent: var( --kendo-treeview-indent, k-spacing(6) ) !default;

/// The horizontal padding of the small TreeView items.
/// @group treeview
$kendo-treeview-sm-item-padding-x: var( --kendo-treeview-sm-item-padding-x, k-spacing(2) ) !default;
/// The horizontal padding of the medium TreeView items.
/// @group treeview
$kendo-treeview-md-item-padding-x: var( --kendo-treeview-md-item-padding-x, k-spacing(2) ) !default;
/// The horizontal padding of the large TreeView items.
/// @group treeview
$kendo-treeview-lg-item-padding-x: var( --kendo-treeview-lg-item-padding-x, k-spacing(3.5) ) !default;
/// The vertical padding of the small TreeView items.
/// @group treeview
$kendo-treeview-sm-item-padding-y: var( --kendo-treeview-sm-item-padding-y, k-spacing(1.5) ) !default;
/// The vertical padding of the medium TreeView items.
/// @group treeview
$kendo-treeview-md-item-padding-y: var( --kendo-treeview-md-item-padding-y, k-spacing(1.5) ) !default;
/// The vertical padding of the large TreeView items.
/// @group treeview
$kendo-treeview-lg-item-padding-y: var( --kendo-treeview-lg-item-padding-y, k-spacing(2) ) !default;
/// The border width of the TreeView items.
/// @group treeview
$kendo-treeview-item-border-width: var( --kendo-treeview-item-border-width, 0 ) !default;
/// The border radius of the TreeView items.
/// @group treeview
$kendo-treeview-item-border-radius: var( --kendo-treeview-item-border-radius, k-border-radius(md) ) !default;

/// The horizontal padding of the checkbox in the small TreeView.
/// @group treeview
$kendo-treeview-sm-checkbox-padding-x: k-spacing(1) !default;
/// The horizontal padding of the checkbox in the medium TreeView.
/// @group treeview
$kendo-treeview-md-checkbox-padding-x: k-spacing(1.5) !default;
/// The horizontal padding of the checkbox in the large TreeView.
/// @group treeview
$kendo-treeview-lg-checkbox-padding-x: k-spacing(2) !default;
/// The vertical padding of the checkbox in the small TreeView.
/// @group treeview
$kendo-treeview-sm-checkbox-padding-y: k-spacing(1) !default;
/// The vertical padding of the checkbox in the medium TreeView.
/// @group treeview
$kendo-treeview-md-checkbox-padding-y: k-spacing(1.5) !default;
/// The vertical padding of the checkbox in the large TreeView.
/// @group treeview
$kendo-treeview-lg-checkbox-padding-y: k-spacing(2) !default;

/// The horizontal padding of the TreeViews' filter element.
/// @group treeview
$kendo-treeview-filter-padding-x: var( --kendo-treeview-filter-padding-x, k-spacing(2) ) !default;
/// The vertical padding of the TreeViews' filter element.
/// @group treeview
$kendo-treeview-filter-padding-y: var( --kendo-treeview-filter-padding-y, k-spacing(2) ) !default;


/// The background color of the TreeView.
/// @group treeview
$kendo-treeview-bg: var( --kendo-treeview-bg, transparent ) !default;
/// The text color of the TreeView.
/// @group treeview
$kendo-treeview-text: var( --kendo-treeview-text, k-color(on-app-surface) ) !default;
/// The border color of the TreeView.
/// @group treeview
$kendo-treeview-border: var( --kendo-treeview-border, inherit ) !default;

/// The background color of the TreeView items.
/// @group treeview
$kendo-treeview-item-bg: var( --kendo-treeview-item-bg, transparent ) !default;
/// The text color of the TreeView items.
/// @group treeview
$kendo-treeview-item-text: var( --kendo-treeview-item-text, k-color(on-app-surface) ) !default;
/// The border color of the TreeView items.
/// @group treeview
$kendo-treeview-item-border: var( --kendo-treeview-item-border, inherit ) !default;

/// The background color of hovered TreeView items.
/// @group treeview
$kendo-treeview-item-hover-bg: var( --kendo-treeview-item-hover-bg, color-mix(in srgb, k-color(on-app-surface) 5%, transparent) ) !default;
/// The text color of hovered TreeView items.
/// @group treeview
$kendo-treeview-item-hover-text: var( --kendo-treeview-item-hover-text, k-color(on-app-surface) ) !default;
/// The border color of hovered TreeView items
/// @group treeview
$kendo-treeview-item-hover-border: var( --kendo-treeview-item-hover-border, inherit ) !default;

/// The box shadow of focused TreeView items.
/// @group treeview
$kendo-treeview-item-focus-shadow: var( --kendo-treeview-item-focus-shadow, inset 0 0 0 2px k-color(on-app-surface) ) !default;

/// The background color of selected TreeView items.
/// @group treeview
$kendo-treeview-item-selected-bg: var( --kendo-treeview-item-selected-bg, color-mix(in srgb, k-color(on-app-surface) 13%, transparent) ) !default;
/// The text color of selected TreeView items.
/// @group treeview
$kendo-treeview-item-selected-text: var( --kendo-treeview-item-selected-text, k-color(on-app-surface) ) !default;
/// The border color of selected TreeView items.
/// @group treeview
$kendo-treeview-item-selected-border: var( --kendo-treeview-item-selected-border, inherit ) !default;

/// The background color of selected and hovered TreeView items.
/// @group treeview
$kendo-treeview-item-selected-hover-bg: var( --kendo-treeview-item-selected-hover-bg, k-color(base-emphasis) ) !default;

/// The background color of disabled TreeView items.
/// @group treeview
$kendo-treeview-item-disabled-bg: var( --kendo-treeview-item-disabled-bg, transparent ) !default;
/// The text color of disabled TreeView items.
/// @group treeview
$kendo-treeview-item-disabled-text: var( --kendo-treeview-item-disabled-text, color-mix(in srgb, k-color(on-app-surface) 30%, transparent) ) !default;
/// The border color of disabled TreeView items.
/// @group treeview
$kendo-treeview-item-disabled-border: var( --kendo-treeview-item-disabled-border, inherit ) !default;

/// The background color of the Load More button in the TreeView
/// @group treeview
$kendo-treeview-loadmore-bg: var( --kendo-treeview-loadmore-bg, transparent ) !default;
/// The text color of the Load More button in the TreeView
/// @group treeview
$kendo-treeview-loadmore-text: var( --kendo-treeview-loadmore-text, k-color(primary-on-surface) ) !default;
/// The border color of the Load More button in the TreeView
/// @group treeview
$kendo-treeview-loadmore-border: var( --kendo-treeview-loadmore-border, inherit ) !default;

/// The background color of the hovered Load More button in the TreeView
/// @group treeview
$kendo-treeview-loadmore-hover-bg: var( --kendo-treeview-loadmore-hover-bg, transparent ) !default;
/// The text color of the hovered Load More button in the TreeView.
/// @group treeview
$kendo-treeview-loadmore-hover-text: var( --kendo-treeview-loadmore-hover-text, k-color(primary-hover) ) !default;
/// The border color of the hovered Load More button in the TreeView.
/// @group treeview
$kendo-treeview-loadmore-hover-border: var( --kendo-treeview-loadmore-hover-border, inherit ) !default;

/// The background color of the focused Load More button in the TreeView.
/// @group treeview
$kendo-treeview-loadmore-focus-bg: var( --kendo-treeview-loadmore-focus-bg, transparent ) !default;
/// The text color of the focused Load More button in the TreeView.
/// @group treeview
$kendo-treeview-loadmore-focus-text: var( --kendo-treeview-loadmore-focus-text, k-color(primary-hover) ) !default;
/// The border color of the focused Load More button in the TreeView.
/// @group treeview
$kendo-treeview-loadmore-focus-border: var( --kendo-treeview-loadmore-focus-border, inherit ) !default;
/// The box shadow of the focused Load More button in the TreeView.
/// @group treeview
$kendo-treeview-loadmore-focus-shadow: var( --kendo-treeview-loadmore-focus-shadow, $kendo-treeview-item-focus-shadow ) !default;


@forward "@progress/kendo-theme-core/scss/components/treeview/_variables.scss" with (
    $kendo-treeview-default-size: $kendo-treeview-default-size,
    $kendo-treeview-gap: $kendo-treeview-gap,
    $kendo-treeview-border-radius: $kendo-treeview-border-radius,
    $kendo-treeview-font-family: $kendo-treeview-font-family,
    $kendo-treeview-sm-font-size: $kendo-treeview-sm-font-size,
    $kendo-treeview-md-font-size: $kendo-treeview-md-font-size,
    $kendo-treeview-lg-font-size: $kendo-treeview-lg-font-size,
    $kendo-treeview-sm-line-height: $kendo-treeview-sm-line-height,
    $kendo-treeview-md-line-height: $kendo-treeview-md-line-height,
    $kendo-treeview-lg-line-height: $kendo-treeview-lg-line-height,
    $kendo-treeview-indent: $kendo-treeview-indent,
    $kendo-treeview-sm-item-padding-x: $kendo-treeview-sm-item-padding-x,
    $kendo-treeview-md-item-padding-x: $kendo-treeview-md-item-padding-x,
    $kendo-treeview-lg-item-padding-x: $kendo-treeview-lg-item-padding-x,
    $kendo-treeview-sm-item-padding-y: $kendo-treeview-sm-item-padding-y,
    $kendo-treeview-md-item-padding-y: $kendo-treeview-md-item-padding-y,
    $kendo-treeview-lg-item-padding-y: $kendo-treeview-lg-item-padding-y,
    $kendo-treeview-item-border-width: $kendo-treeview-item-border-width,
    $kendo-treeview-item-border-radius: $kendo-treeview-item-border-radius,
    $kendo-treeview-sm-checkbox-padding-x: $kendo-treeview-sm-checkbox-padding-x,
    $kendo-treeview-md-checkbox-padding-x: $kendo-treeview-md-checkbox-padding-x,
    $kendo-treeview-lg-checkbox-padding-x: $kendo-treeview-lg-checkbox-padding-x,
    $kendo-treeview-sm-checkbox-padding-y: $kendo-treeview-sm-checkbox-padding-y,
    $kendo-treeview-md-checkbox-padding-y: $kendo-treeview-md-checkbox-padding-y,
    $kendo-treeview-lg-checkbox-padding-y: $kendo-treeview-lg-checkbox-padding-y,
    $kendo-treeview-bg: $kendo-treeview-bg,
    $kendo-treeview-text: $kendo-treeview-text,
    $kendo-treeview-border: $kendo-treeview-border,
    $kendo-treeview-item-hover-bg: $kendo-treeview-item-hover-bg,
    $kendo-treeview-item-hover-text: $kendo-treeview-item-hover-text,
    $kendo-treeview-item-hover-border: $kendo-treeview-item-hover-border,
    $kendo-treeview-item-selected-bg: $kendo-treeview-item-selected-bg,
    $kendo-treeview-item-selected-text: $kendo-treeview-item-selected-text,
    $kendo-treeview-item-selected-border: $kendo-treeview-item-selected-border,
    $kendo-treeview-item-selected-hover-bg: $kendo-treeview-item-selected-hover-bg,
    $kendo-treeview-item-focus-shadow: $kendo-treeview-item-focus-shadow,
    $kendo-treeview-loadmore-bg: $kendo-treeview-loadmore-bg,
    $kendo-treeview-loadmore-text: $kendo-treeview-loadmore-text,
    $kendo-treeview-loadmore-border: $kendo-treeview-loadmore-border,
    $kendo-treeview-loadmore-hover-bg: $kendo-treeview-loadmore-hover-bg,
    $kendo-treeview-loadmore-hover-text: $kendo-treeview-loadmore-hover-text,
    $kendo-treeview-loadmore-hover-border: $kendo-treeview-loadmore-hover-border,
    $kendo-treeview-loadmore-focus-bg: $kendo-treeview-loadmore-focus-bg,
    $kendo-treeview-loadmore-focus-text: $kendo-treeview-loadmore-focus-text,
    $kendo-treeview-loadmore-focus-border: $kendo-treeview-loadmore-focus-border,
    $kendo-treeview-loadmore-focus-shadow: $kendo-treeview-loadmore-focus-shadow
);
