@techdocs/cli
Version:
Utility CLI for managing TechDocs sites in Backstage.
2 lines • 9.97 kB
JavaScript
;(self.webpackChunktechdocs_cli_embedded_app=self.webpackChunktechdocs_cli_embedded_app||[]).push([["9787"],{33194:function(e,t,n){n.r(t),n.d(t,{RealLogViewer:()=>D});var r=n(52322),i=n(53244),l=n(61837),o=n(19353),s=n(16709),a=n.n(s),c=n(2784),d=n(73557),u=n(6738),h=n(50166);let g=(0,n(18025).Z)(),f=/\n\r?/g,m=Object.fromEntries(Object.entries({1:e=>({...e,bold:!0}),3:e=>({...e,italic:!0}),4:e=>({...e,underline:!0}),22:({bold:e,...t})=>t,23:({italic:e,...t})=>t,24:({underline:e,...t})=>t,30:e=>({...e,foreground:"black"}),31:e=>({...e,foreground:"red"}),32:e=>({...e,foreground:"green"}),33:e=>({...e,foreground:"yellow"}),34:e=>({...e,foreground:"blue"}),35:e=>({...e,foreground:"magenta"}),36:e=>({...e,foreground:"cyan"}),37:e=>({...e,foreground:"white"}),39:({foreground:e,...t})=>t,90:e=>({...e,foreground:"grey"}),40:e=>({...e,background:"black"}),41:e=>({...e,background:"red"}),42:e=>({...e,background:"green"}),43:e=>({...e,background:"yellow"}),44:e=>({...e,background:"blue"}),45:e=>({...e,background:"magenta"}),46:e=>({...e,background:"cyan"}),47:e=>({...e,background:"white"}),49:({background:e,...t})=>t}).map(([e,t])=>[`\x1b[${e}m`,t]));class p{lineNumber;chunks;text;constructor(e=1,t=[]){this.lineNumber=e,this.chunks=t,this.text=t.map(e=>e.text).join("").toLocaleLowerCase("en-US")}lastChunk(){return this.chunks[this.chunks.length-1]}replaceLastChunk(e){e&&(this.chunks.splice(this.chunks.length-1,1,...e),this.text=this.chunks.map(e=>e.text).join("").toLocaleLowerCase("en-US"))}}class x{text="";lines=[];process(e){if(this.text===e)return this.lines;if(this.text&&e.startsWith(this.text)){let t=this.lines.length>0?this.lines.length-1:0,n=this.lines[t]??new p,r=n.lastChunk(),i=this.processLines((r?.text??"")+e.slice(this.text.length),r?.modifiers,n?.lineNumber);n.replaceLastChunk(i[0]?.chunks),this.lines[t]=n,this.lines=this.lines.concat(i.slice(1))}else this.lines=this.processLines(e);return this.text=e,this.lines}processLines=(e,t={},n=1)=>{let r=[],i=t,l=n,o=0;for(f.lastIndex=0;;){let t=f.exec(e);if(!t){let t=this.processText(e.slice(o),i);return r.push(new p(l,t)),r}let n=e.slice(o,t.index);o=t.index+t[0].length;let s=this.processText(n,i);r.push(new p(l,s)),i=s[s.length-1].modifiers??i,l+=1}};processText=(e,t)=>{let n=[],r=t,i=0;for(g.lastIndex=0;;){let t=g.exec(e);if(!t)return n.push({text:e.slice(i),modifiers:r}),n;let l=e.slice(i,t.index);n.push({text:l,modifiers:r}),i=t.index+t[0].length,r=this.processCode(t[0],r)}};processCode=(e,t)=>m[e]?.(t)??t}var k=n(74600),b=n.n(k),y=n(40953),j=n(13039);let S=({attributes:e,content:t})=>{let{href:n,...i}=e;return(0,r.jsx)(j.rU,{to:n,...i,children:t})};function Z({line:e,classes:t,searchText:n,highlightResultIndex:i,setRowHeight:l}){let o=(0,c.useRef)(null),s=(0,c.useMemo)(()=>(function(e,t){let n=function(e,t){if(!t||!e.includes(t))return;let n=[],r=0;for(;;){let i=e.indexOf(t,r);if(-1===i)break;let l=i+t.length;n.push({start:i,end:l}),r=l}return n}(e.text,t);if(!n)return e.chunks;let r=[],i=0,l=0,o=n[0];for(let t of e.chunks){let{text:e,modifiers:s}=t;if(!o||i+e.length<o.start){r.push(t),i+=e.length;continue}let a=0;for(;o;){let t=Math.max(o.start-i,0);if(t>e.length)break;let c=Math.min(o.end-i,e.length);if(t>a&&r.push({text:e.slice(a,t),modifiers:s}),c>t&&r.push({modifiers:s,highlight:l,text:e.slice(t,c)}),a=c,o.end-i===c)l+=1,o=n[l];else break}a<e.length&&r.push({text:e.slice(a),modifiers:s}),i+=e.length}return r})(e,n),[e,n]);(0,c.useEffect)(()=>{o.current&&l&&l(e.lineNumber,o.current.offsetHeight)},[e.lineNumber,l]);let d=(0,c.useMemo)(()=>s.map(({text:e,modifiers:n,highlight:o},s)=>(0,r.jsx)("span",{className:a()(function(e,t){let n=[];if(t.bold&&n.push(e.modifierBold),t.italic&&n.push(e.modifierItalic),t.underline&&n.push(e.modifierUnderline),t.foreground){let r=`modifierForeground${b()(t.foreground)}`;n.push(e[r])}if(t.background){let r=`modifierBackground${b()(t.background)}`;n.push(e[r])}return n.length>0?n.join(" "):void 0}(t,n),void 0!==o&&(o===i?t.textSelectedHighlight:t.textHighlight),{[t.textWrap]:!!l}),children:(0,r.jsx)(y.Z,{options:{render:S},children:e})},s)),[s,i,t,l]);return(0,r.jsx)("span",{ref:o,children:d})}var w=n(86619),v=n(90436),B=n(48049),C=n(51209),I=n(36444);function L(e){let{resultCount:t,resultIndexStep:n,toggleShouldFilter:i}=e,o=e.resultIndex??0;return(0,r.jsxs)(r.Fragment,{children:[void 0!==t&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(l.Z,{size:"small",onClick:()=>n(!0),children:(0,r.jsx)(B.default,{})}),(0,r.jsxs)(v.Z,{children:[Math.min(o+1,t),"/",t]}),(0,r.jsx)(l.Z,{size:"small",onClick:()=>n(),children:(0,r.jsx)(C.default,{})})]}),(0,r.jsx)(w.Z,{size:"small",variant:"standard",placeholder:"Search",value:e.searchInput,onKeyPress:e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey||e.altKey?i():n(e.shiftKey))},onChange:t=>e.setSearchInput(t.target.value)}),(0,r.jsx)(l.Z,{size:"small",onClick:i,children:e.shouldFilter?(0,r.jsx)(I.default,{color:"primary"}):(0,r.jsx)(I.default,{color:"disabled"})})]})}var N=n(79692),F=n(41128),M=n(31754),T=n(66054),z=n(81463),R=n(34505),_=n(57186),H=n(32720),W=n(92901),E=n(45410);let K=(0,N.Z)(e=>({root:{background:e.palette.background.paper},header:{height:40,display:"flex",alignItems:"center",justifyContent:"flex-end"},log:{fontFamily:'"Monaco", monospace',fontSize:e.typography.pxToRem(12),lineHeight:"20px"},line:{position:"relative",whiteSpace:"pre",display:"flex",alignItems:"flex-start","&:hover":{background:e.palette.action.hover}},lineSelected:{background:e.palette.action.selected,"&:hover":{background:e.palette.action.selected}},lineCopyButton:{position:"absolute",paddingTop:0,paddingBottom:0},lineNumber:{display:"inline-block",textAlign:"end",width:60,marginRight:e.spacing(1),cursor:"pointer",flexShrink:0},textHighlight:{background:(0,F.Fq)(e.palette.info.main,.15)},textSelectedHighlight:{background:(0,F.Fq)(e.palette.info.main,.4)},modifierBold:{fontWeight:e.typography.fontWeightBold},modifierItalic:{fontStyle:"italic"},modifierUnderline:{textDecoration:"underline"},modifierForegroundBlack:{color:M.Z.black},modifierForegroundRed:{color:T.Z["500"]},modifierForegroundGreen:{color:z.Z["500"]},modifierForegroundYellow:{color:R.Z["500"]},modifierForegroundBlue:{color:_.Z["500"]},modifierForegroundMagenta:{color:H.Z["500"]},modifierForegroundCyan:{color:W.Z["500"]},modifierForegroundWhite:{color:M.Z.white},modifierForegroundGrey:{color:E.Z["500"]},modifierBackgroundBlack:{background:M.Z.black},modifierBackgroundRed:{background:T.Z["500"]},modifierBackgroundGreen:{background:z.Z["500"]},modifierBackgroundYellow:{background:R.Z["500"]},modifierBackgroundBlue:{background:_.Z["500"]},modifierBackgroundMagenta:{background:H.Z["500"]},modifierBackgroundCyan:{background:W.Z["500"]},modifierBackgroundWhite:{background:M.Z.white},modifierBackgroundGrey:{background:E.Z["500"]},textWrap:{whiteSpace:"pre-wrap",wordBreak:"break-all"}}),{name:"BackstageLogViewer"});var U=n(40162),O=n(16162),G=n(8349),$=n(13303);function D(e){let t=K({classes:e.classes}),[n,s]=(0,c.useState)(null),g=e.textWrap??!1,f=(0,c.useRef)({}),m=(0,c.useMemo)(()=>new x,[]).process(e.text),p=function(e){let[t,n]=(0,c.useState)(""),r=t.toLocaleLowerCase("en-US"),[i,l]=(0,c.useState)(0),[o,s]=(0,U.O)(!1),a=(0,c.useMemo)(()=>(function(e,t){if(!t)return{lines:e};let n=[],r=[];for(let i of e)if(i.text.includes(t)){n.push(i);let e=0,l=0;for(;;){let n=i.text.indexOf(t,e);if(-1===n)break;r.push({lineNumber:i.lineNumber,lineIndex:l++}),e=n+t.length}}return{lines:n,results:r}})(e,r),[e,r]),d=a.results?a.results[Math.min(i,a.results.length-1)]:void 0,u=a.results?.length;return{lines:o?a.lines:e,searchText:r,searchInput:t,setSearchInput:n,shouldFilter:o,toggleShouldFilter:s,resultCount:u,resultIndex:i,resultIndexStep:e=>{if(e){if(void 0!==u){let e=Math.min(i-1,u-2);l(e<0?u-1:e)}}else if(void 0!==u){let e=i+1;l(e>=u?0:e)}},resultLine:d?.lineNumber,resultLineIndex:d?.lineIndex}}(m),k=function(e){let t=(0,O.h_)(G.V),[n,r]=(0,c.useState)(),i=n?Math.min(n.start,n.end):void 0,l=n?Math.max(n.start,n.end):void 0,[{error:o},s]=(0,$.Z)();return(0,c.useEffect)(()=>{o&&t.post(o)},[o,t]),{shouldShowButton:e=>i===e||l===e,isSelected:e=>!!n&&i<=e&&e<=l,setSelection(e,t){t?r(t=>t?{start:t.start,end:e}:{start:e,end:e}):r(t=>t?.start===e&&t?.end===e?void 0:{start:e,end:e})},copySelection(){n&&(s(e.slice(Math.min(n.start,n.end)-1,Math.max(n.start,n.end)).map(e=>e.chunks.map(e=>e.text).join("")).join("\n")),r(void 0))}}}(m),b=(0,d.TH)();(0,c.useEffect)(()=>{n&&n.scrollToItem(m.length-1,"end")},[n,m]),(0,c.useEffect)(()=>{n&&(p.resultLine?n.scrollToItem(p.resultLine-1,"center"):n.scrollToItem(m.length-1,"end"))},[n,p.resultLine,m]),(0,c.useEffect)(()=>{if(b.hash){let e=parseInt(b.hash.replace(/\D/g,""),10);k.setSelection(e,!1)}},[]);let y=(e,t)=>{k.setSelection(e,t.shiftKey)};function j(e,t){g&&n&&(n.resetAfterIndex(0),f.current[e-1]=t)}function S(e){return f.current[e]||20}return(0,r.jsx)(u.ZP,{children:({height:e,width:n})=>{let c={ref:s,className:t.log,height:(e||480)-40,width:n||640,itemData:p.lines,itemCount:p.lines.length},d=({index:e,style:n,data:s})=>{let c=s[e],{lineNumber:d}=c;return(0,r.jsxs)(i.Z,{style:{...n},className:a()(t.line,{[t.lineSelected]:k.isSelected(d)}),children:[k.shouldShowButton(d)&&(0,r.jsx)(l.Z,{"data-testid":"copy-button",size:"small",className:t.lineCopyButton,onClick:()=>k.copySelection(),children:(0,r.jsx)(o.default,{fontSize:"inherit"})}),(0,r.jsx)("a",{role:"row",target:"_self",href:`#line-${d}`,className:t.lineNumber,onClick:e=>y(d,e),onKeyPress:e=>y(d,e),children:d}),(0,r.jsx)(Z,{setRowHeight:g?j:void 0,line:c,classes:t,searchText:p.searchText,highlightResultIndex:p.resultLine===d?p.resultLineIndex:void 0})]})};return(0,r.jsxs)(i.Z,{style:{width:n,height:e},className:t.root,children:[(0,r.jsx)(i.Z,{className:t.header,children:(0,r.jsx)(L,{...p})}),g?(0,r.jsx)(h.S_,{...c,itemSize:S,children:d}):(0,r.jsx)(h.t7,{...c,itemSize:20,children:d})]})}})}}}]);
//# sourceMappingURL=9787.69e6d4de.chunk.js.map