This commit implements the core admin dashboard functionality including NextAuth authentication, Cloudflare D1 database integration with complete schema, and Cloudflare R2 file upload system for portfolio images. Features include artist management, appointment scheduling, and data migration capabilities.
46 lines
1.6 KiB
JavaScript
46 lines
1.6 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
Object.defineProperty(exports, "hasNecessaryDependencies", {
|
|
enumerable: true,
|
|
get: function() {
|
|
return hasNecessaryDependencies;
|
|
}
|
|
});
|
|
const _fs = require("fs");
|
|
const _resolvefrom = require("./resolve-from");
|
|
const _path = require("path");
|
|
async function hasNecessaryDependencies(baseDir, requiredPackages) {
|
|
let resolutions = new Map();
|
|
const missingPackages = [];
|
|
await Promise.all(requiredPackages.map(async (p)=>{
|
|
try {
|
|
const pkgPath = await _fs.promises.realpath((0, _resolvefrom.resolveFrom)(baseDir, `${p.pkg}/package.json`));
|
|
const pkgDir = (0, _path.dirname)(pkgPath);
|
|
if (p.exportsRestrict) {
|
|
const fileNameToVerify = (0, _path.relative)(p.pkg, p.file);
|
|
if (fileNameToVerify) {
|
|
const fileToVerify = (0, _path.join)(pkgDir, fileNameToVerify);
|
|
if ((0, _fs.existsSync)(fileToVerify)) {
|
|
resolutions.set(p.pkg, fileToVerify);
|
|
} else {
|
|
return missingPackages.push(p);
|
|
}
|
|
} else {
|
|
resolutions.set(p.pkg, pkgPath);
|
|
}
|
|
} else {
|
|
resolutions.set(p.pkg, (0, _resolvefrom.resolveFrom)(baseDir, p.file));
|
|
}
|
|
} catch (_) {
|
|
return missingPackages.push(p);
|
|
}
|
|
}));
|
|
return {
|
|
resolved: resolutions,
|
|
missing: missingPackages
|
|
};
|
|
}
|
|
|
|
//# sourceMappingURL=has-necessary-dependencies.js.map
|