mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-22 12:36:24 +08:00
69e73af2a8
Closes: [BS-2239](https://linear.app/affine-design/issue/BS-2239/不应该通过window注入affine的api)
24 lines
600 B
TypeScript
24 lines
600 B
TypeScript
import { createIdentifier } from '@blocksuite/global/di';
|
|
import type { ExtensionType } from '@blocksuite/store';
|
|
|
|
/**
|
|
* Copies the image as PNG in Electron.
|
|
*/
|
|
export interface NativeClipboardService {
|
|
copyAsPNG(arrayBuffer: ArrayBuffer): Promise<boolean>;
|
|
}
|
|
|
|
export const NativeClipboardProvider = createIdentifier<NativeClipboardService>(
|
|
'NativeClipboardService'
|
|
);
|
|
|
|
export function NativeClipboardExtension(
|
|
nativeClipboardProvider: NativeClipboardService
|
|
): ExtensionType {
|
|
return {
|
|
setup: di => {
|
|
di.addImpl(NativeClipboardProvider, nativeClipboardProvider);
|
|
},
|
|
};
|
|
}
|