| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 | const fs = require("fs");const { execSync } = require("child_process");const excalidrawDir = `${__dirname}/../src/packages/excalidraw`;const excalidrawPackage = `${excalidrawDir}/package.json`;const pkg = require(excalidrawPackage);const originalReadMe = fs.readFileSync(`${excalidrawDir}/README.md`, "utf8");const updateReadme = () => {  const excalidrawIndex = originalReadMe.indexOf("### Excalidraw");  // remove note for stable readme  const data = originalReadMe.slice(excalidrawIndex);  // update readme  fs.writeFileSync(`${excalidrawDir}/README.md`, data, "utf8");};const publish = () => {  try {    execSync(`yarn  --frozen-lockfile`);    execSync(`yarn --frozen-lockfile`, { cwd: excalidrawDir });    execSync(`yarn run build:umd`, { cwd: excalidrawDir });    execSync(`yarn --cwd ${excalidrawDir} publish`);  } catch (error) {    console.error(error);    process.exit(1);  }};const release = () => {  updateReadme();  console.info("Note for stable readme removed");  publish();  console.info(`Published ${pkg.version}!`);  // revert readme after release  fs.writeFileSync(`${excalidrawDir}/README.md`, originalReadMe, "utf8");  console.info("Readme reverted");};release();
 |