2024-11-05 11:12:42 +00:00
|
|
|
// @ts-check
|
|
|
|
const fs = require("fs");
|
2024-12-05 07:03:33 +00:00
|
|
|
const path = require("path");
|
2024-11-05 11:12:42 +00:00
|
|
|
|
|
|
|
const isLocal = process.env.NEXT_PUBLIC_DSQL_LOCAL || null;
|
|
|
|
const production = process.env.NODE_ENV == "production";
|
|
|
|
const isBuilding = process.env.BUILDING_APP;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* # Grab the current distribution directory
|
|
|
|
* @description This returns the relative path from the CWD. Eg `./.dist/build-1`
|
|
|
|
* @returns {string | undefined}
|
|
|
|
*/
|
|
|
|
function grabDist() {
|
|
|
|
if (isLocal) {
|
|
|
|
return ".local_dist";
|
|
|
|
}
|
|
|
|
|
2024-12-05 07:03:33 +00:00
|
|
|
const DIST_DIR = path.resolve(process.cwd(), "./.dist");
|
2024-11-05 11:12:42 +00:00
|
|
|
|
2024-12-05 07:03:33 +00:00
|
|
|
if (isBuilding) {
|
2024-11-05 11:12:42 +00:00
|
|
|
const distDir = (() => {
|
|
|
|
if (isLocal) return ".local_dist";
|
|
|
|
|
|
|
|
try {
|
2024-12-05 07:03:33 +00:00
|
|
|
const buildNumber = fs.readFileSync(
|
|
|
|
`${DIST_DIR}/BUILD`,
|
|
|
|
"utf-8"
|
|
|
|
);
|
|
|
|
return `.dist/build-${buildNumber}`;
|
2024-11-05 11:12:42 +00:00
|
|
|
} catch (/** @type {*} */ error) {
|
|
|
|
console.log("Build Number Generation Error =>", error.message);
|
|
|
|
process.exit();
|
|
|
|
}
|
|
|
|
})();
|
|
|
|
|
|
|
|
return distDir;
|
|
|
|
}
|
|
|
|
|
|
|
|
if (production) {
|
|
|
|
const distDir = (() => {
|
|
|
|
if (isLocal) return ".local_dist";
|
|
|
|
|
|
|
|
try {
|
2024-12-05 07:03:33 +00:00
|
|
|
const buildNumber = fs.readFileSync(
|
|
|
|
`${DIST_DIR}/BUILD`,
|
|
|
|
"utf-8"
|
|
|
|
);
|
2024-11-05 11:12:42 +00:00
|
|
|
return `.dist/build-${buildNumber}`;
|
|
|
|
} catch (/** @type {*} */ error) {
|
|
|
|
console.log("Build Number Parse Error =>", error.message);
|
|
|
|
process.exit();
|
|
|
|
}
|
|
|
|
})();
|
|
|
|
|
|
|
|
return distDir;
|
|
|
|
}
|
|
|
|
|
|
|
|
return undefined;
|
|
|
|
}
|
|
|
|
|
|
|
|
module.exports = grabDist;
|