Загрузка данных


import { BorderFillStyle, InfoBoxStyle } from '@core/Drawings/types/style';
import { getThemeStore } from '@src/theme';
import { SettingField, SettingsTab, SettingsValues } from '@src/types';

export interface DiapsonSettings extends SettingsValues, BorderFillStyle, InfoBoxStyle {}

export function createDefaultSettings(): DiapsonSettings {
  const { colors } = getThemeStore();

  return {
    borderColor: colors.diapsonStrokeFill,
    fillColor: colors.diapsonAreaFill,
    infoTextColor: colors.axisRangeTooltipText,
    infoBackgroundColor: colors.axisRangeTooltipFill,
  };
}

export function getDiapsonSettingsTabs(settings: DiapsonSettings): SettingsTab[] {
  const fields: SettingField[] = [
    {
      key: 'borderColor',
      label: 'Цвет границы',
      type: 'color',
      defaultValue: settings.borderColor,
    },
    {
      key: 'fillColor',
      label: 'Цвет фона',
      type: 'color',
      defaultValue: settings.fillColor,
    },
    {
      key: 'infoTextColor',
      label: 'Цвет текста окна',
      type: 'color',
      defaultValue: settings.infoTextColor,
    },
    {
      key: 'infoBackgroundColor',
      label: 'Цвет фона окна',
      type: 'color',
      defaultValue: settings.infoBackgroundColor,
    },
  ];

  return [
    {
      key: 'style',
      label: 'Стиль',
      fields,
    },
  ];
}