@metamask/snaps-utils
Version:
A collection of utilities for MetaMask Snaps
21 lines • 782 B
JavaScript
import { validate } from "@metamask/superstruct";
import { getStructFailureMessage } from "../../structs.mjs";
import { NpmSnapFileNames, NpmSnapPackageJsonStruct } from "../../types.mjs";
/**
* Verify the structure of package.json.
*/
export const isPackageJson = {
severity: 'error',
structureCheck(files, context) {
if (!files.packageJson) {
return;
}
const [error] = validate(files.packageJson.result, NpmSnapPackageJsonStruct);
if (error) {
for (const failure of error.failures()) {
context.report(`"${NpmSnapFileNames.PackageJson}" is invalid: ${getStructFailureMessage(NpmSnapPackageJsonStruct, failure, false)}`);
}
}
},
};
//# sourceMappingURL=is-package-json.mjs.map