{"version":3,"file":"util.capture-nearby-comments.cjs","sources":["../../../../src/rules/limit-single-line-comments/util.capture-nearby-comments.ts"],"sourcesContent":["import type { TSESTree } from \"@typescript-eslint/utils\";\n\nimport { mergeComments } from \"./util.merge-comments.js\";\n\nexport function captureNearbyComments(\n  comments: TSESTree.LineComment[],\n  startIndex: number,\n): TSESTree.LineComment | undefined {\n  let comment = comments[startIndex];\n\n  if (!comment) {\n    return;\n  }\n\n  // Previous comments\n  for (let i = startIndex - 1; i >= 0; i--) {\n    const prevComment = comments[i];\n\n    if (\n      !prevComment ||\n      (prevComment.loc?.end.line ?? 0) + 1 !== comment.loc?.start.line\n    ) {\n      break;\n    }\n\n    comment = mergeComments(prevComment, comment, \"\\n\");\n  }\n\n  // Following comments\n  for (let i = startIndex + 1; i < comments.length; i++) {\n    const nextComment = comments[i];\n\n    if (\n      !nextComment ||\n      nextComment.loc?.start.line !== (comment.loc?.end.line ?? 0) + 1\n    ) {\n      break;\n    }\n\n    comment = mergeComments(comment, nextComment, \"\\n\");\n  }\n\n  return comment;\n}\n"],"names":["mergeComments"],"mappings":";;;;AAIgB,SAAA,qBAAA,CACd,UACA,UACkC,EAAA;AAClC,EAAI,IAAA,OAAA,GAAU,SAAS,UAAU,CAAA,CAAA;AAEjC,EAAA,IAAI,CAAC,OAAS,EAAA;AACZ,IAAA,OAAA;AAAA,GACF;AAGA,EAAA,KAAA,IAAS,CAAI,GAAA,UAAA,GAAa,CAAG,EAAA,CAAA,IAAK,GAAG,CAAK,EAAA,EAAA;AACxC,IAAM,MAAA,WAAA,GAAc,SAAS,CAAC,CAAA,CAAA;AAE9B,IACE,IAAA,CAAC,WACA,IAAA,CAAA,WAAA,CAAY,GAAK,EAAA,GAAA,CAAI,IAAQ,IAAA,CAAA,IAAK,CAAM,KAAA,OAAA,CAAQ,GAAK,EAAA,KAAA,CAAM,IAC5D,EAAA;AACA,MAAA,MAAA;AAAA,KACF;AAEA,IAAU,OAAA,GAAAA,gCAAA,CAAc,WAAa,EAAA,OAAA,EAAS,IAAI,CAAA,CAAA;AAAA,GACpD;AAGA,EAAA,KAAA,IAAS,IAAI,UAAa,GAAA,CAAA,EAAG,CAAI,GAAA,QAAA,CAAS,QAAQ,CAAK,EAAA,EAAA;AACrD,IAAM,MAAA,WAAA,GAAc,SAAS,CAAC,CAAA,CAAA;AAE9B,IACE,IAAA,CAAC,WACD,IAAA,WAAA,CAAY,GAAK,EAAA,KAAA,CAAM,IAAU,KAAA,CAAA,OAAA,CAAQ,GAAK,EAAA,GAAA,CAAI,IAAQ,IAAA,CAAA,IAAK,CAC/D,EAAA;AACA,MAAA,MAAA;AAAA,KACF;AAEA,IAAU,OAAA,GAAAA,gCAAA,CAAc,OAAS,EAAA,WAAA,EAAa,IAAI,CAAA,CAAA;AAAA,GACpD;AAEA,EAAO,OAAA,OAAA,CAAA;AACT;;;;"}