/** * URL을 통해 가져온 HTML을 정렬해서 문자열로 리턴 * * @Modification Information * 수정일 : 수정자 : 수정내용 * -------------------------- * 2024.01.03 : Mabongpapa : 최초생성 */ import request from "request"; import pretty from "pretty"; const asyncRequestPrettyHtml = (url:string):Promise => { return new Promise((resolve,reject)=>{ request(url,(error,response,body)=>{ const pagedocText = ((pagedoc)=>((pagedoc)?pagedoc[0]:""))(body.match(/^().|[\r\n])+(-->)/gi)); const htmlBody = body.replace(pagedocText,""); const prettyHtml = pretty(htmlBody,{ indent_size:4, // Tab1 , space 4 unformatted:["code","pre","xmp"], // 해당 부분은 포메팅 안함. ocd:true // 줄바꿈된 문자 한줄로 + 문자 앞뒤 공백제거, 주석 앞 공백 적용 }); resolve(prettyHtml); }); }); }; export default asyncRequestPrettyHtml;