{"version":3,"file":"package-name-match.cjs","sourceRoot":"","sources":["../../../src/manifest/validators/package-name-match.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAG/C;;GAEG;AACU,QAAA,gBAAgB,GAAkB;IAC7C,QAAQ,EAAE,OAAO;IACjB,aAAa,CAAC,KAAK,EAAE,OAAO;QAC1B,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC;QACtD,MAAM,mBAAmB,GACvB,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,WAAW,CAAC;QACnE,IAAI,eAAe,KAAK,mBAAmB,EAAE,CAAC;YAC5C,OAAO,CAAC,MAAM,CACZ,oBAAoB,EACpB,IAAI,wBAAgB,CAAC,QAAQ,wBAAwB,mBAAmB,0BAA0B,wBAAgB,CAAC,WAAW,oBAAoB,eAAe,KAAK,EACtK,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;gBACf,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,KAAK,EAAE,CAAC;gBAC3C,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,KAAK,EAAE,CAAC;gBACpD,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,EAAE,CAAC;gBACxD,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW;oBAC1D,eAAe,CAAC;gBAElB,OAAO,EAAE,QAAQ,EAAE,CAAC;YACtB,CAAC,CACF,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC","sourcesContent":["import { NpmSnapFileNames } from '../../types';\nimport type { ValidatorMeta } from '../validator-types';\n\n/**\n * Check if the package name in manifest matches package.json name.\n */\nexport const packageNameMatch: ValidatorMeta = {\n  severity: 'error',\n  semanticCheck(files, context) {\n    const packageJsonName = files.packageJson.result.name;\n    const manifestPackageName =\n      files.manifest.mergedManifest.source?.location?.npm?.packageName;\n    if (packageJsonName !== manifestPackageName) {\n      context.report(\n        'package-name-match',\n        `\"${NpmSnapFileNames.Manifest}\" npm package name (\"${manifestPackageName}\") does not match the \"${NpmSnapFileNames.PackageJson}\" \"name\" field (\"${packageJsonName}\").`,\n        ({ manifest }) => {\n          manifest.mainManifest.result.source ??= {};\n          manifest.mainManifest.result.source.location ??= {};\n          manifest.mainManifest.result.source.location.npm ??= {};\n          manifest.mainManifest.result.source.location.npm.packageName =\n            packageJsonName;\n\n          return { manifest };\n        },\n      );\n    }\n  },\n};\n"]}