forked from openkylin/kylin-code
27 lines
832 B
TypeScript
27 lines
832 B
TypeScript
|
/*---------------------------------------------------------------------------------------------
|
||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||
|
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||
|
*--------------------------------------------------------------------------------------------*/
|
||
|
|
||
|
import { SettingsManager } from './settings';
|
||
|
|
||
|
export interface MessagePoster {
|
||
|
/**
|
||
|
* Post a message to the markdown extension
|
||
|
*/
|
||
|
postMessage(type: string, body: object): void;
|
||
|
}
|
||
|
|
||
|
export const createPosterForVsCode = (vscode: any, settingsManager: SettingsManager) => {
|
||
|
return new class implements MessagePoster {
|
||
|
postMessage(type: string, body: object): void {
|
||
|
vscode.postMessage({
|
||
|
type,
|
||
|
source: settingsManager.settings!.source,
|
||
|
body
|
||
|
});
|
||
|
}
|
||
|
};
|
||
|
};
|
||
|
|