@modern-js/module-tools-v2
Version:
The meta-framework suite designed from scratch for frontend-focused modern web development.
1 lines • 2.74 kB
JavaScript
(()=>{"use strict";var e={367:e=>{e.exports=require("../highlight")}};var t={};function __nccwpck_require__(r){var n=t[r];if(n!==undefined){return n.exports}var s=t[r]={exports:{}};var o=true;try{e[r](s,s.exports,__nccwpck_require__);o=false}finally{if(o)delete t[r]}return s.exports}if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";var r={};(()=>{var e=r;Object.defineProperty(e,"__esModule",{value:true});e.codeFrameColumns=codeFrameColumns;e["default"]=_default;var t=__nccwpck_require__(367);let n=false;function getDefs(e){return{gutter:e.grey,marker:e.red.bold,message:e.red.bold}}const s=/\r\n|[\n\r\u2028\u2029]/;function getMarkerLines(e,t,r){const n=Object.assign({column:0,line:-1},e.start);const s=Object.assign({},n,e.end);const{linesAbove:o=2,linesBelow:a=3}=r||{};const i=n.line;const l=n.column;const c=s.line;const u=s.column;let f=Math.max(i-(o+1),0);let m=Math.min(t.length,c+a);if(i===-1){f=0}if(c===-1){m=t.length}const g=c-i;const d={};if(g){for(let e=0;e<=g;e++){const r=e+i;if(!l){d[r]=true}else if(e===0){const e=t[r-1].length;d[r]=[l,e-l+1]}else if(e===g){d[r]=[0,u]}else{const n=t[r-e].length;d[r]=[0,n]}}}else{if(l===u){if(l){d[i]=[l,0]}else{d[i]=true}}else{d[i]=[l,u-l]}}return{start:f,end:m,markerLines:d}}function codeFrameColumns(e,r,n={}){const o=(n.highlightCode||n.forceColor)&&(0,t.shouldHighlight)(n);const a=(0,t.getChalk)(n);const i=getDefs(a);const maybeHighlight=(e,t)=>o?e(t):t;const l=e.split(s);const{start:c,end:u,markerLines:f}=getMarkerLines(r,l,n);const m=r.start&&typeof r.start.column==="number";const g=String(u).length;const d=o?(0,t.default)(e,n):e;let _=d.split(s,u).slice(c,u).map(((e,t)=>{const r=c+1+t;const s=` ${r}`.slice(-g);const o=` ${s} |`;const a=f[r];const l=!f[r+1];if(a){let t="";if(Array.isArray(a)){const r=e.slice(0,Math.max(a[0]-1,0)).replace(/[^\t]/g," ");const s=a[1]||1;t=["\n ",maybeHighlight(i.gutter,o.replace(/\d/g," "))," ",r,maybeHighlight(i.marker,"^").repeat(s)].join("");if(l&&n.message){t+=" "+maybeHighlight(i.message,n.message)}}return[maybeHighlight(i.marker,">"),maybeHighlight(i.gutter,o),e.length>0?` ${e}`:"",t].join("")}else{return` ${maybeHighlight(i.gutter,o)}${e.length>0?` ${e}`:""}`}})).join("\n");if(n.message&&!m){_=`${" ".repeat(g+1)}${n.message}\n${_}`}if(o){return a.reset(_)}else{return _}}function _default(e,t,r,s={}){if(!n){n=true;const e="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning){process.emitWarning(e,"DeprecationWarning")}else{const t=new Error(e);t.name="DeprecationWarning";console.warn(new Error(e))}}r=Math.max(r,0);const o={start:{column:r,line:t}};return codeFrameColumns(e,o,s)}})();module.exports=r})();