eslint-plugin-jsdoc
Version:
JSDoc linting rules for ESLint.
1 lines • 2.38 kB
Source Map (JSON)
{"version":3,"file":"generateRuleTypes.cjs","names":["_index","_interopRequireDefault","require","_jsonSchemaToTypescript","_promises","e","__esModule","default","str","ruleName","rule","Object","entries","index","rules","meta","docs","description","ts","compile","items","schema","type","bannerComment","replace","replaceAll","trimEnd","writeFile","__dirname"],"sources":["../src/bin/generateRuleTypes.js"],"sourcesContent":["import index from '../index.js';\nimport {\n compile,\n} from 'json-schema-to-typescript';\nimport {\n writeFile,\n} from 'node:fs/promises';\n\nlet str = 'export interface Rules {\\n';\n\nfor (const [\n ruleName,\n rule,\n] of Object.entries(\n /** @type {Record<string, import('@eslint/core').RuleDefinition<import('@eslint/core').RuleDefinitionTypeOptions>>} */ (\n index.rules\n ),\n )\n) {\n str += ` /** ${rule.meta?.docs?.description ?? ''} */\\n`;\n str += ` \"jsdoc/${ruleName}\": `;\n const ts = await compile({\n items: rule?.meta?.schema || [],\n type: 'array',\n }, 'Test', {\n bannerComment: '',\n });\n\n str += ts\n .replace(/^export type Test = ?/v, '')\n .replace(/^export interface Test /v, '')\n .replaceAll('\\n', '\\n ').trimEnd().replace(/;$/v, '') +\n ';\\n\\n';\n}\n\nstr = str.replace(/\\n$/v, '') + '}\\n';\n\nawait writeFile(import.meta.dirname + '/../rules.d.ts', str);\n\n// console.log('str', str);\n"],"mappings":";;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAD,OAAA;AAGA,IAAAE,SAAA,GAAAF,OAAA;AAE0B,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE1B,IAAIG,GAAG,GAAG,4BAA4B;AAEtC,KAAK,MAAM,CACTC,QAAQ,EACRC,IAAI,CACL,IAAIC,MAAM,CAACC,OAAO,CACjB;AACIC,cAAK,CAACC,KAEV,CAAC,EACD;EACAN,GAAG,IAAI,SAASE,IAAI,CAACK,IAAI,EAAEC,IAAI,EAAEC,WAAW,IAAI,EAAE,OAAO;EACzDT,GAAG,IAAI,YAAYC,QAAQ,KAAK;EAChC,MAAMS,EAAE,GAAG,MAAM,IAAAC,+BAAO,EAAC;IACvBC,KAAK,EAAEV,IAAI,EAAEK,IAAI,EAAEM,MAAM,IAAI,EAAE;IAC/BC,IAAI,EAAE;EACR,CAAC,EAAE,MAAM,EAAE;IACTC,aAAa,EAAE;EACjB,CAAC,CAAC;EAEFf,GAAG,IAAIU,EAAE,CACNM,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CACrCA,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC,CACvCC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAACC,OAAO,CAAC,CAAC,CAACF,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GACpD,OAAO;AACb;AAEAhB,GAAG,GAAGA,GAAG,CAACgB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,KAAK;AAErC,MAAM,IAAAG,mBAAS,EAACC,SAAA,GAAsB,gBAAgB,EAAEpB,GAAG,CAAC;;AAE5D","ignoreList":[]}