@use "sass:map";
@use "./base";

// ===== table =====
$table-size-list: (sm, md) !default;
$table-font-size: (
  sm: base.$font-size-sm,
  md: base.$font-size-md,
) !default;
$table-bgc: base.$color-bg-normal !default;
$table-line-spacing-list: ('compact', 'regular') !default;

$table-cell-padding-horizontal: base.padding(4) !default;
$table-cell-padding-horizontal-serial: base.padding(1) !default;
$table-cell-padding-vertical: (
  sm-compact: 8px,
  sm-regular: 10px,
  md-compact: 11px,
  md-regular: 13px,
) !default;
// 以容纳3位数字为最小宽度
$table-cell-serial-min-width: 36px !default;
$table-cell-checkbox-size: (
  sm: sm,
  md: md,
) !default;
$table-head-bg-color: base.color-gray(3) !default;
$table-hover-row-bg-color: base.color-gray(3) !default;
$table-striped-row-bg-color: base.color-gray(2) !default;
// 与 s1 - up 一致
$table-fixed-shadow: (
  left: 2px 0 8px 0 rgba(0, 0, 0, 0.15),
  right: -2px 0 8px 0 rgba(0, 0, 0, 0.15)
) !default;
$table-no-data-padding-vertical: base.padding(15) !default;
$table-no-data-illus-size-list: (md, lg) !default;
// 这是目前两组 illustrations svg 的固定尺寸
$table-no-data-illus-size: (
  md: 48px,
  lg: 108px
) !default;
$table-no-data-loading-icon-scale: 0.5 !default;
$table-no-data-message-font-size: base.font-size(md) !default;
$table-no-data-message-color: base.$color-text-secondary !default;
$table-no-data-message-color-loading: base.$color-text-normal !default;
$table-no-data-message-distance: base.padding(2) !default;

$table-max-row-span: 5 !default;
$table-max-row-lines: 6 !default;

$table-drop-menu-min-width: 80px !default;

@function table-empty-body-height(
  $illus-icon-size: map.get($table-no-data-illus-size, md),
  $msg-line-height: base.line-height($table-no-data-message-font-size)
) {
  @return (
    $illus-icon-size
    + $table-no-data-padding-vertical * 2
    + $table-no-data-message-distance
    + $msg-line-height
  );
}
// 在 packages/core/src/theme/base.ts 中定义 themeConfig.tableExpandButtonMargin
//$table-expand-btn-margin: padding(3) !default;

$table-sorter-icon-size: 8px !default;
$table-sorter-margin: base.padding(1) !default;
$table-sorter-order-color: base.color-brand() !default;
