39 lines
1.1 KiB
JavaScript
39 lines
1.1 KiB
JavaScript
const fs = require("fs");
|
|
const path = require("path");
|
|
const crypto = require("crypto");
|
|
|
|
async function work() {
|
|
const imageDts = await fs.promises.readFile("src/image.d.ts", "utf-8");
|
|
const indexDts = await fs.promises.readFile("index.d.ts", "utf-8");
|
|
const content = `declare module "doric" {
|
|
${indexDts
|
|
.replace(/\sdeclare\s/g, " ")
|
|
.split("\n")
|
|
.map((e) => ` ${e}`)
|
|
.join("\n")}
|
|
}
|
|
${imageDts}
|
|
`;
|
|
await fs.promises.writeFile("index.d.ts", content);
|
|
const files = [
|
|
"bundle/doric-lib.js",
|
|
"bundle/doric-sandbox.js",
|
|
"bundle/doric-web.js",
|
|
"bundle/doric-web.html",
|
|
];
|
|
const androidAssets = "../doric-android/doric/src/main/assets";
|
|
for (let file of files) {
|
|
const md5 = crypto.createHash("md5");
|
|
md5.update(path.basename(file));
|
|
const name = md5.digest("hex").toLowerCase();
|
|
const data = await fs.promises.readFile(file);
|
|
const temp = new Uint8Array(data.buffer);
|
|
for (let i = 0; i < temp.length; i++) {
|
|
temp[i] = 0xff - temp[i];
|
|
}
|
|
await fs.promises.writeFile(path.resolve(androidAssets, name), data);
|
|
}
|
|
}
|
|
|
|
work();
|