文件
chen 301194963b
一些检查失败了
automerge / automerge (push) Has been cancelled
react-native-android-build-apk / AssembleRelease (push) Has been cancelled
Build macOS M1 / Main (push) Has been cancelled
Joplin Continuous Integration / Main (macos-15-intel) (push) Has been cancelled
Joplin Continuous Integration / Main (ubuntu-22.04) (push) Has been cancelled
Joplin Continuous Integration / Main (ubuntu-22.04-arm) (push) Has been cancelled
Joplin Continuous Integration / Main (windows-11-vs2026-arm) (push) Has been cancelled
Joplin Continuous Integration / Main (windows-2025) (push) Has been cancelled
Joplin Continuous Integration / ServerDockerImage (ubuntu-22.04) (push) Has been cancelled
Joplin Continuous Integration / ServerDockerImage (ubuntu-22.04-arm) (push) Has been cancelled
Joplin UI tests / Main (ubuntu-22.04) (push) Has been cancelled
Joplin UI tests / Main (windows-2025) (push) Has been cancelled
Joplin UI tests / Mobile (push) Has been cancelled
Close stale issues / ProcessStaleIssues (push) Has been cancelled
feat: Initial clean release of CHM
2026-11-04 11:29:39 +08:00

26 行
1.0 KiB
TypeScript

import { createContext, useContext } from 'react';
import { MarkupLanguage } from '@joplin/renderer';
import { ResourceInfos } from '../../utils/types';
import { MarkupToHtmlOptions } from '../../../hooks/useMarkupToHtml';
import { RenderResult } from '@joplin/renderer/types';
import { ThemeAppearance } from '@joplin/lib/themes/type';
export interface WhiteboardContextValue {
markupToHtml: (markupLanguage: MarkupLanguage, md: string, options?: MarkupToHtmlOptions)=> Promise<RenderResult>;
resourceInfos: ResourceInfos;
resourceDirectory: string;
themeId: number;
themeAppearance: ThemeAppearance;
onOpenRef: (ref: string)=> void;
onUpdateNode: (canvasNodeId: string, patch: Record<string, unknown>)=> void;
onPromoteTextNode: (canvasNodeId: string)=> void;
}
export const WhiteboardContext = createContext<WhiteboardContextValue | null>(null);
export const useWhiteboardContext = () => {
const ctx = useContext(WhiteboardContext);
if (!ctx) throw new Error('WhiteboardContext used outside provider');
return ctx;
};