minigame-std
Version:
Mini Game Standard Development Library.
27 lines (24 loc) • 775 B
text/typescript
import type { AsyncIOResult, AsyncVoidIOResult } from 'happy-rusty';
import { assertString } from '../assert/assertions.ts';
import { tryDOMAsyncOp } from '../utils/mod.ts';
/**
* 异步写入文本数据到剪贴板。
* @param data - 需要写入的文本数据。
* @returns 写入操作的结果。
*/
export async function writeText(data: string): AsyncVoidIOResult {
assertString(data);
return tryDOMAsyncOp(async () => {
await navigator.clipboard.writeText(data);
});
}
/**
* 异步读取剪贴板文本数据。
* @returns 读取操作的结果。
*/
export async function readText(): AsyncIOResult<string> {
return tryDOMAsyncOp(async () => {
const data = await navigator.clipboard.readText();
return data;
});
}