@@ -463,7 +463,7 @@ function renderFindings(r) {
463463 ${ raw ( confBar ) }
464464 ${ raw ( entropy ) }
465465 </ div >
466- ${ inst . match ? raw ( '<div class="instance-match"><code>' + esc ( ( inst . match || '' ) . slice ( 0 , 500 ) ) + '</code><button class="copy-btn" data-copy="' + escAttr ( inst . match || '' ) + '" title="Copy match" aria-label="Copy match value">[GRID] </button></div>' ) : '' }
466+ ${ inst . match ? raw ( '<div class="instance-match"><code>' + esc ( ( inst . match || '' ) . slice ( 0 , 500 ) ) + '</code><button class="copy-btn" data-copy="' + escAttr ( inst . match || '' ) + '" title="Copy match" aria-label="Copy match value"></button></div>' ) : '' }
467467 </ div > ` ;
468468 } ) . join ( '' ) ;
469469 return html `
@@ -473,7 +473,7 @@ function renderFindings(r) {
473473 < span class ="finding-title "> ${ f . ruleName } </ span >
474474 < span class ="confidence-pill ${ labelFor ( f . avgConfidence ) } " title ="Average confidence "> ${ f . avgConfidence || 0 } %</ span >
475475 < span class ="instance-count "> ${ ( f . instances || [ ] ) . length } instance${ ( f . instances || [ ] ) . length === 1 ? '' : 's' } </ span >
476- < span class ="finding-toggle " aria-hidden ="true "> [DOWN] </ span >
476+ < span class ="finding-toggle " aria-hidden ="true "> </ span >
477477 </ button >
478478 < div class ="finding-body " id ="finding-body- ${ idx } " hidden >
479479 < div class ="finding-description "> ${ f . description || '' } </ div >
@@ -534,11 +534,11 @@ function renderPager(total) {
534534 if ( ! wrap ) return ;
535535 if ( pages <= 1 ) { wrap . innerHTML = '' ; return ; }
536536 wrap . innerHTML = `
537- <button class="pager-btn" data-pager="first" ${ cur === 0 ? 'disabled' : '' } >[PREV] First</button>
538- <button class="pager-btn" data-pager="prev" ${ cur === 0 ? 'disabled' : '' } >[LEFT] Prev</button>
537+ <button class="pager-btn" data-pager="first" ${ cur === 0 ? 'disabled' : '' } > First</button>
538+ <button class="pager-btn" data-pager="prev" ${ cur === 0 ? 'disabled' : '' } > Prev</button>
539539 <span class="pager-info">Page ${ cur + 1 } of ${ pages } </span>
540- <button class="pager-btn" data-pager="next" ${ cur >= pages - 1 ? 'disabled' : '' } >Next [PLAY] </button>
541- <button class="pager-btn" data-pager="last" ${ cur >= pages - 1 ? 'disabled' : '' } >Last [NEXT] </button>` ;
540+ <button class="pager-btn" data-pager="next" ${ cur >= pages - 1 ? 'disabled' : '' } >Next </button>
541+ <button class="pager-btn" data-pager="last" ${ cur >= pages - 1 ? 'disabled' : '' } >Last </button>` ;
542542 $$ ( '#findingsPager [data-pager]' ) . forEach ( b => b . addEventListener ( 'click' , ( ) => {
543543 const a = b . dataset . pager ;
544544 if ( a === 'first' ) State . findingsPage = 0 ;
@@ -705,7 +705,7 @@ function renderComponentCard(cmp, pkg, idx) {
705705 '<span class="comp-type-badge ' + cmp . type + '">' + cmp . type + '</span>' +
706706 '<span class="comp-name">' + esc ( simple ) + '</span>' +
707707 '<span class="comp-badges-inline">' + badges . join ( '' ) + '</span>' +
708- '<span class="finding-toggle" aria-hidden="true">[DOWN] </span>' +
708+ '<span class="finding-toggle" aria-hidden="true"></span>' +
709709 '</button>' +
710710 '<div class="comp-card-body" id="comp-body-' + idx + '" hidden>' +
711711 '<div class="comp-fqn mono">' + esc ( cmp . name ) + '</div>' +
@@ -836,7 +836,7 @@ function onTreeClick(e) {
836836 const folder = folderHeader . parentElement ;
837837 folder . classList . toggle ( 'open' ) ;
838838 const ic = folderHeader . querySelector ( '.folder-icon' ) ;
839- if ( ic ) ic . textContent = folder . classList . contains ( 'open' ) ? '[OPEN] ' : '[FOLDER] ' ;
839+ if ( ic ) ic . textContent = folder . classList . contains ( 'open' ) ? '' : '' ;
840840 return ;
841841 }
842842 const file = e . target . closest ( '.tree-file' ) ;
@@ -855,8 +855,8 @@ function buildTree(tree, prefix) {
855855 const count = countFiles ( node ) ;
856856 out += '<div class="tree-folder" role="treeitem" aria-expanded="false">' +
857857 '<button class="tree-folder-header" title="' + escAttr ( prefix + name ) + '">' +
858- '<span class="folder-chevron" aria-hidden="true">[PLAY] </span>' +
859- '<span class="folder-icon" aria-hidden="true">[FOLDER] </span>' +
858+ '<span class="folder-chevron" aria-hidden="true"></span>' +
859+ '<span class="folder-icon" aria-hidden="true"></span>' +
860860 '<span class="folder-name">' + esc ( name ) + '</span>' +
861861 '<span class="folder-count">' + count + '</span>' +
862862 '</button>' +
@@ -887,37 +887,37 @@ function countFiles(node) {
887887
888888function fileIcon ( ext , name ) {
889889 const lower = ( name || '' ) . toLowerCase ( ) ;
890- if ( lower === 'androidmanifest.xml' ) return '[LIST] ' ;
891- if ( ext === 'dex' ) return '[GEAR] ' ;
892- if ( lower === 'resources.arsc' ) return '[BOX] ' ;
890+ if ( lower === 'androidmanifest.xml' ) return '' ;
891+ if ( ext === 'dex' ) return '' ;
892+ if ( lower === 'resources.arsc' ) return '' ;
893893 const m = {
894- java : '[COFFEE] ' , kt : '[K] ' , smali : '[WRENCH] ' ,
895- xml : '[NEWS] ' , json : '[SCROLL] ' , yaml : '[SCROLL] ' , yml : '[SCROLL] ' , properties : '[SCROLL] ' ,
896- db : '[DB] ' , sqlite : '[DB] ' , sqlite3 : '[DB] ' , realm : '[DB] ' ,
897- png : '[IMG] ' , jpg : '[IMG] ' , jpeg : '[IMG] ' , gif : '[IMG] ' , svg : '[IMG] ' , webp : '[IMG] ' , ico : '[IMG] ' ,
898- js : '[BOOK] ' , html : '[WEB] ' , css : '[PALETTE] ' ,
899- cer : '[LOCK] ' , pem : '[LOCK] ' , p12 : '[LOCK] ' , rsa : '[LOCK] ' , dsa : '[LOCK] ' , ec : '[LOCK] ' , mf : '[SCROLL] ' , sf : '[SCROLL] ' ,
900- so : '[GEAR] ' ,
894+ java : '' , kt : '' , smali : '' ,
895+ xml : '' , json : '' , yaml : '' , yml : '' , properties : '' ,
896+ db : '' , sqlite : '' , sqlite3 : '' , realm : '' ,
897+ png : '' , jpg : '' , jpeg : '' , gif : '' , svg : '' , webp : '' , ico : '' ,
898+ js : '' , html : '' , css : '' ,
899+ cer : '' , pem : '' , p12 : '' , rsa : '' , dsa : '' , ec : '' , mf : '' , sf : '' ,
900+ so : '' ,
901901 } ;
902- return m [ ext ] || '[DOC] ' ;
902+ return m [ ext ] || '' ;
903903}
904904
905905function populateQuickAccess ( r ) {
906906 const list = $ ( '#quickAccessList' ) ;
907907 if ( ! list ) return ;
908908 const items = [ ] ;
909909 if ( r . files && r . files . indexOf ( 'AndroidManifest.xml' ) >= 0 ) {
910- items . push ( { path : 'AndroidManifest.xml' , name : 'Manifest' , icon : '[LIST] ' , desc : 'AndroidManifest.xml' } ) ;
910+ items . push ( { path : 'AndroidManifest.xml' , name : 'Manifest' , icon : '' , desc : 'AndroidManifest.xml' } ) ;
911911 }
912912 const dexFiles = ( r . files || [ ] ) . filter ( f => / ^ c l a s s e s \d * \. d e x $ / . test ( f ) ) . sort ( ) ;
913913 for ( const d of dexFiles . slice ( 0 , 3 ) ) {
914- items . push ( { path : d , name : d , icon : '[GEAR] ' , desc : 'DEX bytecode' } ) ;
914+ items . push ( { path : d , name : d , icon : '' , desc : 'DEX bytecode' } ) ;
915915 }
916916 if ( r . files && r . files . indexOf ( 'resources.arsc' ) >= 0 ) {
917- items . push ( { path : 'resources.arsc' , name : 'resources.arsc' , icon : '[BOX] ' , desc : 'Compiled resources' } ) ;
917+ items . push ( { path : 'resources.arsc' , name : 'resources.arsc' , icon : '' , desc : 'Compiled resources' } ) ;
918918 }
919919 const cert = ( r . files || [ ] ) . find ( f => / M E T A - I N F \/ .+ \. ( R S A | D S A | E C ) $ / i. test ( f ) ) ;
920- if ( cert ) items . push ( { path : cert , name : 'Cert' , icon : '[LOCK] ' , desc : 'Signing certificate' } ) ;
920+ if ( cert ) items . push ( { path : cert , name : 'Cert' , icon : '' , desc : 'Signing certificate' } ) ;
921921 list . innerHTML = items . length === 0
922922 ? '<span class="qa-empty">No key files found</span>'
923923 : items . map ( f => html `
@@ -1165,11 +1165,11 @@ function openBinaryViewer(viewer, path, bytes) {
11651165 '<div class="binary-info"><span class="info-badge">Binary</span><span class="info-badge">' + fmtSize ( bytes . length ) + '</span></div>' +
11661166 '</div>' +
11671167 '<div class="hex-controls">' +
1168- '<button class="hex-nav" data-action="first" ' + ( cur === 0 ? 'disabled' : '' ) + '>[PREV] </button>' +
1169- '<button class="hex-nav" data-action="prev" ' + ( cur === 0 ? 'disabled' : '' ) + '>[LEFT] </button>' +
1168+ '<button class="hex-nav" data-action="first" ' + ( cur === 0 ? 'disabled' : '' ) + '></button>' +
1169+ '<button class="hex-nav" data-action="prev" ' + ( cur === 0 ? 'disabled' : '' ) + '></button>' +
11701170 '<span class="hex-page-info">Page ' + ( cur + 1 ) + ' / ' + totalPages + ' · offset 0x' + off . toString ( 16 ) + '</span>' +
1171- '<button class="hex-nav" data-action="next" ' + ( cur >= totalPages - 1 ? 'disabled' : '' ) + '>[PLAY] </button>' +
1172- '<button class="hex-nav" data-action="last" ' + ( cur >= totalPages - 1 ? 'disabled' : '' ) + '>[NEXT] </button>' +
1171+ '<button class="hex-nav" data-action="next" ' + ( cur >= totalPages - 1 ? 'disabled' : '' ) + '></button>' +
1172+ '<button class="hex-nav" data-action="last" ' + ( cur >= totalPages - 1 ? 'disabled' : '' ) + '></button>' +
11731173 '</div>' +
11741174 '<div class="binary-body">' + renderHexLines ( bytes , off ) + '</div>' +
11751175 '</div>' ;
0 commit comments