{"version":3,"file":"prefer_programmatic_components.cjs","sources":["../../src/rules/prefer_programmatic_components.ts"],"sourcesContent":["/**\n * @module @nhtio/eslint-config/rules/prefer_programmatic_components\n */\n\nimport { createRule } from './common'\n\nconst preferProgrammaticComponentsRule = createRule({\n  name: 'preferProgrammaticComponents',\n  meta: {\n    type: 'suggestion',\n    docs: {\n      description:\n        'Prefer programmatically generated components (using Vue `h`) over Vue SFCs for performance and debuggability',\n    },\n    schema: [],\n    messages: {\n      preferProgrammaticComponents:\n        \"Prefer using Vue's `h` function to build components programmatically instead of a Vue SFC. \" +\n        'Programmatic components avoid SFC compilation overhead and are easier to inspect at runtime.',\n    },\n  },\n  create(context) {\n    if (!context.filename.endsWith('.vue')) return {}\n\n    return {\n      Program(node) {\n        context.report({ node, messageId: 'preferProgrammaticComponents' })\n      },\n    }\n  },\n  defaultOptions: [],\n})\n\nexport default preferProgrammaticComponentsRule\n"],"names":["preferProgrammaticComponentsRule","createRule","context","node"],"mappings":"qJAMMA,EAAmCC,EAAAA,WAAW,CAClD,KAAM,+BACN,KAAM,CACJ,KAAM,aACN,KAAM,CACJ,YACE,8GAAA,EAEJ,OAAQ,CAAA,EACR,SAAU,CACR,6BACE,yLAAA,CAEJ,EAEF,OAAOC,EAAS,CACd,OAAKA,EAAQ,SAAS,SAAS,MAAM,EAE9B,CACL,QAAQC,EAAM,CACZD,EAAQ,OAAO,CAAE,KAAAC,EAAM,UAAW,+BAAgC,CACpE,CAAA,EAL6C,CAAA,CAOjD,EACA,eAAgB,CAAA,CAClB,CAAC"}