simple-mac-clipboard
Version:
simple mac clipboard for node & electron
82 lines (79 loc) • 2.38 kB
JavaScript
// node_modules/.pnpm/tsup@8.3.5_typescript@5.7.3_yaml@2.4.5/node_modules/tsup/assets/esm_shims.js
import { fileURLToPath } from "url";
import path from "path";
var getFilename = () => fileURLToPath(import.meta.url);
var getDirname = () => path.dirname(getFilename());
var __dirname = /* @__PURE__ */ getDirname();
var __filename = /* @__PURE__ */ getFilename();
// src-ts/load-addon.ts
import bindings from "bindings";
import { createRequire } from "module";
import { join } from "path";
var _require = createRequire(__filename);
function tryFile(file) {
return { path: join(__dirname, file), ..._require(file) };
}
var tryRelease = () => {
try {
const type = "Release";
return tryFile(`../build/${type}/simple_mac_clipboard.node`);
} catch (e) {
}
};
var tryDebug = () => {
try {
const type = "Debug";
return tryFile(`../build/${type}/simple_mac_clipboard.node`);
} catch (e) {
}
};
var addon = tryRelease() || tryDebug() || bindings("simple_mac_clipboard");
// src-ts/index.ts
var addonPath = addon.path;
var clear = addon.clearContents;
var writeBuffer = addon.setData;
var readBuffer = addon.dataForType;
var readBuffers = addon.allDataForType;
var writeText = (format, text) => writeBuffer(format, Buffer.from(text));
var readText = (format) => readBuffer(format).toString("utf8");
var readTexts = (format) => readBuffers(format).map((buf) => buf.toString("utf8"));
var ClipboardFormat = /* @__PURE__ */ ((ClipboardFormat2) => {
ClipboardFormat2["FileUrl"] = "public.file-url";
ClipboardFormat2["PlainText"] = "public.utf8-plain-text";
ClipboardFormat2["SourceAppBundleId"] = "org.nspasteboard.source";
return ClipboardFormat2;
})(ClipboardFormat || {});
var FORMAT_PLAIN_TEXT = "public.utf8-plain-text" /* PlainText */;
var FORMAT_FILE_URL = "public.file-url" /* FileUrl */;
var FORMAT_SOURCE_APP_BUNDLE_ID = "org.nspasteboard.source" /* SourceAppBundleId */;
var clip = {
addonPath,
clear,
writeBuffer,
readBuffer,
readBuffers,
writeText,
readText,
readTexts,
ClipboardFormat,
FORMAT_PLAIN_TEXT,
FORMAT_FILE_URL,
FORMAT_SOURCE_APP_BUNDLE_ID
};
var index_default = clip;
export {
ClipboardFormat,
FORMAT_FILE_URL,
FORMAT_PLAIN_TEXT,
FORMAT_SOURCE_APP_BUNDLE_ID,
addonPath,
clear,
clip,
index_default as default,
readBuffer,
readBuffers,
readText,
readTexts,
writeBuffer,
writeText
};