{"version":3,"file":"icon-dimensions.cjs","sourceRoot":"","sources":["../../../src/manifest/validators/icon-dimensions.ts"],"names":[],"mappings":";;;AAAA,yCAA8C;AAG9C;;GAEG;AACU,QAAA,cAAc,GAAkB;IAC3C,QAAQ,EAAE,SAAS;IACnB,aAAa,CAAC,KAAK,EAAE,OAAO;QAC1B,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,IAAA,uBAAgB,EAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9D,IAAI,UAAU,IAAI,UAAU,EAAE,MAAM,KAAK,UAAU,CAAC,KAAK,EAAE,CAAC;YAC1D,OAAO,CAAC,MAAM,CACZ,iBAAiB,EACjB,mGAAmG,CACpG,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC","sourcesContent":["import { getSvgDimensions } from '../../icon';\nimport type { ValidatorMeta } from '../validator-types';\n\n/**\n * Verify the icon is square.\n */\nexport const iconDimensions: ValidatorMeta = {\n  severity: 'warning',\n  semanticCheck(files, context) {\n    if (!files.svgIcon) {\n      return;\n    }\n\n    const dimensions = getSvgDimensions(files.svgIcon.toString());\n    if (dimensions && dimensions?.height !== dimensions.width) {\n      context.report(\n        'icon-dimensions',\n        'The icon in the Snap manifest is not square. It is recommended to use a square icon for the Snap.',\n      );\n    }\n  },\n};\n"]}