minigame-std
Version:
Cross-platform standard library for WeChat minigame and web browsers with unified APIs for crypto, fs, fetch, storage, and more.
96 lines (95 loc) • 2.65 kB
JavaScript
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
let src_std_internal_mod_ts = require("./_internal.cjs");
let happy_rusty = require("happy-rusty");
let src_std_utils_mod_ts = require("./utils.cjs");
//#region src/macros/env.ts
/**
* 如果在小游戏环境中返回 true,否则返回 false。
*/
const IS_MINA = __MINIGAME_STD_MINA__;
//#endregion
//#region src/std/clipboard/mina_clipboard.ts
/**
* @internal
* 小游戏平台的剪贴板操作实现。
*/
/**
* 异步写入文本数据到剪贴板。
* @param data - 需要写入的文本数据。
* @returns 写入操作的结果。
*/
async function writeText$2(data) {
return (await (0, src_std_utils_mod_ts.asyncIOResultify)(wx.setClipboardData)({ data })).and(happy_rusty.RESULT_VOID);
}
/**
* 异步读取剪贴板文本数据。
* @returns 读取操作的结果。
*/
async function readText$2() {
return (await (0, src_std_utils_mod_ts.asyncIOResultify)(wx.getClipboardData)()).map((x) => x.data);
}
//#endregion
//#region src/std/clipboard/web_clipboard.ts
/**
* Web 平台的剪贴板操作实现。
*
* @internal
*/
/**
* 异步写入文本数据到剪贴板。
* @param data - 需要写入的文本数据。
* @returns 写入操作的结果。
*/
function writeText$1(data) {
return (0, happy_rusty.tryAsyncResult)(navigator.clipboard.writeText(data));
}
/**
* 异步读取剪贴板文本数据。
* @returns 读取操作的结果。
*/
function readText$1() {
return (0, happy_rusty.tryAsyncResult)(navigator.clipboard.readText());
}
//#endregion
//#region src/std/clipboard/mod.ts
/**
* 异步写入文本数据到剪贴板。
* @param data - 需要写入的文本数据。
* @returns 写入操作的结果。
* @since 1.0.0
* @example
* ```ts
* const result = await writeText('Hello, World!');
* if (result.isOk()) {
* console.log('文本已复制到剪贴板');
* } else {
* console.error('复制失败:', result.unwrapErr());
* }
* ```
*/
function writeText(data) {
const dataRes = (0, src_std_internal_mod_ts.validateString)(data, "data");
if (dataRes.isErr()) return Promise.resolve(dataRes);
return (IS_MINA ? writeText$2 : writeText$1)(data);
}
/**
* 异步读取剪贴板文本数据。
* @returns 读取操作的结果。
* @since 1.0.0
* @example
* ```ts
* const result = await readText();
* if (result.isOk()) {
* console.log('剪贴板内容:', result.unwrap());
* } else {
* console.error('读取失败:', result.unwrapErr());
* }
* ```
*/
function readText() {
return (IS_MINA ? readText$2 : readText$1)();
}
//#endregion
exports.readText = readText;
exports.writeText = writeText;
//# sourceMappingURL=clipboard.cjs.map