{"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":";;;;AAIO,SAAS,qBAAA,CACd,UACA,UAAA,EACkC;AAClC,EAAA,IAAI,OAAA,GAAU,SAAS,UAAU,CAAA;AAEjC,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA;AAAA,EACF;AAGA,EAAA,KAAA,IAAS,CAAA,GAAI,UAAA,GAAa,CAAA,EAAG,CAAA,IAAK,GAAG,CAAA,EAAA,EAAK;AACxC,IAAA,MAAM,WAAA,GAAc,SAAS,CAAC,CAAA;AAE9B,IAAA,IACE,CAAC,WAAA,IAAA,CACA,WAAA,CAAY,GAAA,EAAK,GAAA,CAAI,IAAA,IAAQ,CAAA,IAAK,CAAA,KAAM,OAAA,CAAQ,GAAA,EAAK,KAAA,CAAM,IAAA,EAC5D;AACA,MAAA;AAAA,IACF;AAEA,IAAA,OAAA,GAAUA,gCAAA,CAAc,WAAA,EAAa,OAAA,EAAS,IAAI,CAAA;AAAA,EACpD;AAGA,EAAA,KAAA,IAAS,IAAI,UAAA,GAAa,CAAA,EAAG,CAAA,GAAI,QAAA,CAAS,QAAQ,CAAA,EAAA,EAAK;AACrD,IAAA,MAAM,WAAA,GAAc,SAAS,CAAC,CAAA;AAE9B,IAAA,IACE,CAAC,WAAA,IACD,WAAA,CAAY,GAAA,EAAK,KAAA,CAAM,IAAA,KAAA,CAAU,OAAA,CAAQ,GAAA,EAAK,GAAA,CAAI,IAAA,IAAQ,CAAA,IAAK,CAAA,EAC/D;AACA,MAAA;AAAA,IACF;AAEA,IAAA,OAAA,GAAUA,gCAAA,CAAc,OAAA,EAAS,WAAA,EAAa,IAAI,CAAA;AAAA,EACpD;AAEA,EAAA,OAAO,OAAA;AACT;;;;"}