build: decouple package deps and introduce yarn workspaces (#7415)

* feat: decouple package deps and introduce yarn workspaces

* update root directory

* fix

* fix scripts

* fix lint

* update path in scripts

* remove yarn.lock files from packages

* ignore workspace

* dummy

* dummy

* remove comment check

* revert workflow changes

* ignore ws when installing gh actions

* remove log

* update path

* fix

* fix typo
This commit is contained in:
Aakansha Doshi 2023-12-12 11:32:51 +05:30 committed by GitHub
parent b7d7ccc929
commit d6cd8b78f1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
567 changed files with 5066 additions and 8648 deletions

View file

@ -2,7 +2,7 @@ const fs = require("fs");
const { exec, execSync } = require("child_process");
const core = require("@actions/core");
const excalidrawDir = `${__dirname}/../src/packages/excalidraw`;
const excalidrawDir = `${__dirname}/../packages/excalidraw`;
const excalidrawPackage = `${excalidrawDir}/package.json`;
const pkg = require(excalidrawPackage);
const isPreview = process.argv.slice(2)[0] === "preview";
@ -39,13 +39,9 @@ exec(`git diff --name-only HEAD^ HEAD`, async (error, stdout, stderr) => {
process.exit(1);
}
const changedFiles = stdout.trim().split("\n");
const filesToIgnoreRegex = /src\/excalidraw-app|packages\/utils/;
const excalidrawPackageFiles = changedFiles.filter((file) => {
return (
(file.indexOf("src") >= 0 || file.indexOf("package.json")) >= 0 &&
!filesToIgnoreRegex.test(file)
);
return file.indexOf("packages/excalidraw") >= 0;
});
if (!excalidrawPackageFiles.length) {
console.info("Skipping release as no valid diff found");

View file

@ -1,5 +1,5 @@
const { readdirSync, writeFileSync } = require("fs");
const files = readdirSync(`${__dirname}/../src/locales`);
const files = readdirSync(`${__dirname}/../packages/excalidraw/locales`);
const flatten = (object = {}, result = {}, extraKey = "") => {
for (const key in object) {
@ -20,7 +20,9 @@ const percentages = {};
for (let index = 0; index < locales.length; index++) {
const currentLocale = locales[index];
const data = flatten(require(`${__dirname}/../src/locales/${currentLocale}`));
const data = flatten(
require(`${__dirname}/../packages/excalidraw/locales/${currentLocale}`),
);
const allKeys = Object.keys(data);
const translatedKeys = allKeys.filter((item) => data[item] !== "");
@ -29,7 +31,7 @@ for (let index = 0; index < locales.length; index++) {
}
writeFileSync(
`${__dirname}/../src/locales/percentages.json`,
`${__dirname}/../packages/excalidraw/locales/percentages.json`,
`${JSON.stringify(percentages, null, 2)}\n`,
"utf8",
);

View file

@ -25,7 +25,7 @@ config.output.filename = "static/js/build-node.js";
// Don't choke on node-specific requires
config.target = "node";
// Set the node entrypoint
config.entry = "./src/index-node";
config.entry = "../packages/excalidraw/index-node";
// By default, webpack is going to replace the require of the canvas.node file
// to just a string with the path of the canvas.node file. We need to tell
// webpack to avoid rewriting that dependency.

View file

@ -165,7 +165,7 @@ const languages = {
};
const percentages = fs.readFileSync(
`${__dirname}/../src/locales/percentages.json`,
`${__dirname}/../packages/excalidraw/locales/percentages.json`,
);
const rowData = JSON.parse(percentages);

View file

@ -3,7 +3,7 @@ const util = require("util");
const exec = util.promisify(require("child_process").exec);
const updateChangelog = require("./updateChangelog");
const excalidrawDir = `${__dirname}/../src/packages/excalidraw`;
const excalidrawDir = `${__dirname}/../packages/excalidraw/packages/excalidraw`;
const excalidrawPackage = `${excalidrawDir}/package.json`;
const updatePackageVersion = (nextVersion) => {

View file

@ -1,6 +1,6 @@
const { execSync } = require("child_process");
const excalidrawDir = `${__dirname}/../src/packages/excalidraw`;
const excalidrawDir = `${__dirname}/../packages/excalidraw`;
const excalidrawPackage = `${excalidrawDir}/package.json`;
const pkg = require(excalidrawPackage);

View file

@ -2,7 +2,7 @@ const fs = require("fs");
const util = require("util");
const exec = util.promisify(require("child_process").exec);
const excalidrawDir = `${__dirname}/../src/packages/excalidraw`;
const excalidrawDir = `${__dirname}/../packages/excalidraw`;
const excalidrawPackage = `${excalidrawDir}/package.json`;
const pkg = require(excalidrawPackage);
const lastVersion = pkg.version;