一些检查失败了
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
26 行
1.0 KiB
TypeScript
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;
|
|
};
|