UNPKG

3.27 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../../src/utils/parseArticleFromMarkdown.js"],"names":["md","lines","trim","split","headerDelimiter","indexOf","content","headerLines","slice","res","join","map","line","forEach","title","substr","tags","tag","url","length","push","__DEV__","console","error"],"mappings":";;;;;;;eAAe,oBAAa;AAAA,MAAZA,EAAY,uEAAP,EAAO;AAC1B,MAAMC,KAAK,GAAGD,EAAE,CAACE,IAAH,GAAUC,KAAV,CAAgB,IAAhB,CAAd;AACA,MAAMC,eAAe,GAAGH,KAAK,CAACI,OAAN,CAAc,SAAd,CAAxB;AACA,MAAID,eAAe,GAAG,CAAlB,IAAuBA,eAAe,GAAG,CAA7C,EAAgD,OAAO;AAAEE,IAAAA,OAAO,EAAEN;AAAX,GAAP;AAChD,MAAMO,WAAW,GAAGN,KAAK,CAACO,KAAN,CAAY,CAAZ,EAAeJ,eAAf,CAApB;AACA,MAAMK,GAAG,GAAG;AAAEH,IAAAA,OAAO,EAAEL,KAAK,CAACO,KAAN,CAAYJ,eAAe,GAAG,CAA9B,EAAiCM,IAAjC,CAAsC,IAAtC;AAAX,GAAZ;AACAH,EAAAA,WAAW,CACRI,GADH,CACO,UAAAC,IAAI;AAAA,WAAIA,IAAI,CAACV,IAAL,EAAJ;AAAA,GADX,EAEGW,OAFH,CAEW,UAAAD,IAAI,EAAI;AACf,QAAIA,IAAI,CAACP,OAAL,CAAa,IAAb,MAAuB,CAA3B,EAA8B;AAC5BI,MAAAA,GAAG,CAACK,KAAJ,GAAYF,IAAI,CAACG,MAAL,CAAY,CAAZ,EAAeb,IAAf,EAAZ;AACD,KAFD,MAEO,IAAIU,IAAI,CAACP,OAAL,CAAa,GAAb,MAAsB,CAAC,CAAvB,IAA4BO,IAAI,CAACP,OAAL,CAAa,GAAb,MAAsB,CAAC,CAAvD,EAA0D;AAC/D,UAAMW,IAAI,GAAGJ,IAAI,CAACT,KAAL,CAAW,GAAX,CAAb;AACAa,MAAAA,IAAI,CACDL,GADH,CACO,UAAAM,GAAG;AAAA,eAAIA,GAAG,CAACf,IAAJ,EAAJ;AAAA,OADV,EAEGW,OAFH,CAEW,UAAAI,GAAG,EAAI;AACd,YAAIA,GAAG,CAAC,CAAD,CAAH,KAAW,GAAf,EAAoB;AAClBR,UAAAA,GAAG,CAACS,GAAJ,GAAUD,GAAG,CAACF,MAAJ,CAAW,CAAX,EAAcE,GAAG,CAACE,MAAJ,GAAa,CAA3B,CAAV;AACD,SAFD,MAEO,IAAIF,GAAG,CAAC,CAAD,CAAH,KAAW,GAAf,EAAoB;AACzB,cAAI,CAACR,GAAG,CAACO,IAAT,EAAeP,GAAG,CAACO,IAAJ,GAAW,EAAX;AACfP,UAAAA,GAAG,CAACO,IAAJ,CAASI,IAAT,CAAcH,GAAG,CAACF,MAAJ,CAAW,CAAX,CAAd;AACD,SAHM,MAGA;AACL;AACA,cAAIM,OAAJ,EAAaC,OAAO,CAACC,KAAR,CAAc,gCAAd,EAAgDN,GAAhD,EAFR,CAE8D;AACpE;AACF,OAZH;AAaD,KAfM,MAeA;AACL;AACA,UAAII,OAAJ,EAAaC,OAAO,CAACC,KAAR,CAAc,wCAAd,EAAwDX,IAAxD,EAFR,CAEuE;AAC7E;AACF,GAxBH;AAyBA,SAAOH,GAAP;AACD,C","sourcesContent":["export default (md = '') => {\n const lines = md.trim().split('\\n');\n const headerDelimiter = lines.indexOf('- - - -');\n if (headerDelimiter < 0 || headerDelimiter > 4) return { content: md };\n const headerLines = lines.slice(0, headerDelimiter);\n const res = { content: lines.slice(headerDelimiter + 1).join('\\n') };\n headerLines\n .map(line => line.trim())\n .forEach(line => {\n if (line.indexOf('# ') === 0) {\n res.title = line.substr(1).trim();\n } else if (line.indexOf('`') !== -1 || line.indexOf('#') !== -1) {\n const tags = line.split(' ');\n tags\n .map(tag => tag.trim())\n .forEach(tag => {\n if (tag[0] === '`') {\n res.url = tag.substr(1, tag.length - 2);\n } else if (tag[0] === '#') {\n if (!res.tags) res.tags = [];\n res.tags.push(tag.substr(1));\n } else {\n // eslint-disable-next-line no-lonely-if\n if (__DEV__) console.error('parseArticleFromMd unknown tag', tag); // eslint-disable-line no-console\n }\n });\n } else {\n // eslint-disable-next-line no-lonely-if\n if (__DEV__) console.error('parseArticleFromMd unknown header line', line); // eslint-disable-line no-console\n }\n });\n return res;\n};\n"],"file":"parseArticleFromMarkdown.js"}
\No newline at end of file