import React, { useContext } from "react";
import { I18nContext } from "../../I18n";
import { HistoryEmptyIcon } from "./HistoryEmptyIcon";
/** 默认中文 fallback：当 i18n locale 缺该 key 时的兜底文案 */ var DEFAULT_FALLBACK = {
    chat: {
        title: '找不到相关结果',
        description: '换个关键词试试吧'
    },
    task: {
        title: '暂无历史任务',
        description: '完成的任务会出现在这里'
    }
};
/**
 * HistoryEmpty 组件 - 历史记录空状态展示
 *
 * 当历史记录列表为空时显示的占位组件，提供友好的空状态提示。
 * 支持 `chat` / `task` 两种业务语义，分别对应不同的 i18n key 与默认文案。
 *
 * @component
 *
 * @example
 * ```tsx
 * // 默认对话场景
 * <HistoryEmpty />
 *
 * // 任务场景
 * <HistoryEmpty type="task" />
 * ```
 *
 * @returns {React.ReactElement} 渲染的空状态组件
 */ export var HistoryEmpty = function HistoryEmpty(param) {
    var _param_type = param.type, type = _param_type === void 0 ? 'chat' : _param_type;
    var locale = useContext(I18nContext).locale;
    var fallback = DEFAULT_FALLBACK[type];
    // 之前 key 写死 `chat.history.empty.chat.*`，task 模式无法被覆盖。
    // 现在按 type 动态拼，让 i18n 文案能跟随业务语义切换。
    var titleKey = "chat.history.empty.".concat(type, ".title");
    var descriptionKey = "chat.history.empty.".concat(type, ".description");
    var defaultTitle = (locale === null || locale === void 0 ? void 0 : locale[titleKey]) || fallback.title;
    var defaultDescription = (locale === null || locale === void 0 ? void 0 : locale[descriptionKey]) || fallback.description;
    return /*#__PURE__*/ React.createElement("div", {
        style: {
            display: 'flex',
            flexDirection: 'column',
            alignItems: 'center',
            justifyContent: 'center',
            padding: '16px 24px',
            textAlign: 'center',
            marginTop: 12
        }
    }, /*#__PURE__*/ React.createElement(HistoryEmptyIcon, null), /*#__PURE__*/ React.createElement("div", {
        style: {
            font: 'var(--font-text-h6-base)',
            color: 'var(--color-gray-text-secondary)',
            letterSpacing: 'var(--letter-spacing-h6-base, normal)',
            marginBottom: 2
        }
    }, defaultTitle), /*#__PURE__*/ React.createElement("div", {
        style: {
            font: 'var(--font-text-body-base)',
            letterSpacing: 'var(--letter-spacing-body-base, normal)',
            color: 'var(--color-gray-text-light)'
        }
    }, defaultDescription));
};
