ds-markdown
Version:
> 🚀 React Markdown 打字动画组件,提供现代聊天界面效果
31 lines • 1.1 kB
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
/* eslint-disable react-refresh/only-export-components */
import { createContext, useContext, useMemo } from 'react';
export const DEFAULT_THEME = 'light';
export const DEFAULT_ANSWER_TYPE = 'answer';
export const DEFAULT_PLUGINS = [];
const MarkdownThemeContext = createContext({
state: {
theme: DEFAULT_THEME,
answerType: DEFAULT_ANSWER_TYPE,
},
methods: {},
});
export const MarkdownThemeProvider = ({ value = {}, children }) => {
const contextValue = useMemo(() => ({
state: {
theme: DEFAULT_THEME,
answerType: DEFAULT_ANSWER_TYPE,
...value,
},
methods: {
// 这里可以添加主题相关的方法实现
},
}), [value]);
return _jsx(MarkdownThemeContext.Provider, { value: contextValue, children: children });
};
export const useMarkdownThemeContext = () => useContext(MarkdownThemeContext);
export const useThemeState = () => {
return useContext(MarkdownThemeContext).state;
};
//# sourceMappingURL=MarkdownThemeProvider.js.map