@@ -1286,7 +1286,14 @@ <h2 id="modalTitle">Add Custom Rule</h2>
12861286 d ="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z ">
12871287 </ path >
12881288 </ svg > </ div >
1289- < div class ="type-name "> Domain/IP</ div >
1289+ < div class ="type-name "> Domain/IP < svg width ="14 " height ="14 " viewBox ="0 0 24 24 " fill ="none "
1290+ stroke ="currentColor " stroke-width ="2 "
1291+ style ="display:inline; margin-left:4px; opacity:0.6; "
1292+ title ="Supported on Linux (eBPF). Not supported on macOS kernel. ">
1293+ < circle cx ="12 " cy ="12 " r ="10 "> </ circle >
1294+ < line x1 ="12 " y1 ="16 " x2 ="12 " y2 ="12 "> </ line >
1295+ < line x1 ="12 " y1 ="8 " x2 ="12.01 " y2 ="8 "> </ line >
1296+ </ svg > </ div >
12901297 </ div >
12911298 < div class ="type-card " data-type ="hash " onclick ="selectType('hash') ">
12921299 < div class ="type-icon "> < svg width ="24 " height ="24 " viewBox ="0 0 24 24 " fill ="none "
@@ -1322,6 +1329,20 @@ <h2 id="modalTitle">Add Custom Rule</h2>
13221329 < div class ="form-hint " id ="ruleHint "> Select a rule type above</ div >
13231330 < div class ="form-error " id ="ruleError "> </ div >
13241331 </ div >
1332+ < div class ="form-group " id ="macDomainWarning " style ="display:none; margin-top:12px; ">
1333+ < div
1334+ style ="background: rgba(255, 171, 0, 0.1); border-left: 4px solid #ffab00; padding: 12px; border-radius: 4px; display:flex; gap:12px; align-items:center; ">
1335+ < svg width ="20 " height ="20 " viewBox ="0 0 24 24 " fill ="none " stroke ="#ffab00 " stroke-width ="2 ">
1336+ < circle cx ="12 " cy ="12 " r ="10 "> </ circle >
1337+ < line x1 ="12 " y1 ="8 " x2 ="12 " y2 ="12 "> </ line >
1338+ < line x1 ="12 " y1 ="16 " x2 ="12.01 " y2 ="16 "> </ line >
1339+ </ svg >
1340+ < div style ="color: #ffab00; font-size: 13px; font-weight: 500; ">
1341+ Domain blocking is currently only supported on Linux (eBPF). macOS Seatbelt sandboxing
1342+ limitation prevents kernel-level hostname enforcement.
1343+ </ div >
1344+ </ div >
1345+ </ div >
13251346 < div class ="form-group ">
13261347 < label class ="form-label " for ="rulePlatform "> Platform</ label >
13271348 < select class ="form-select " id ="rulePlatform ">
@@ -1627,6 +1648,7 @@ <h2 id="modalTitle">Add Custom Rule</h2>
16271648 const sel = document . querySelector ( `.type-card[data-type="${ rule . type } "]` ) ;
16281649 if ( sel ) { sel . style . opacity = '1' ; }
16291650 document . getElementById ( 'ruleHint' ) . textContent = TYPE_HINTS [ rule . type ] || '' ;
1651+ document . getElementById ( 'macDomainWarning' ) . style . display = ( rule . type === 'domain' ) ? 'block' : 'none' ;
16301652 document . getElementById ( 'ruleModal' ) . classList . add ( 'open' ) ;
16311653 }
16321654
@@ -1639,6 +1661,7 @@ <h2 id="modalTitle">Add Custom Rule</h2>
16391661 document . getElementById ( 'ruleHint' ) . textContent = TYPE_HINTS [ type ] || '' ;
16401662 document . getElementById ( 'ruleError' ) . classList . remove ( 'visible' ) ;
16411663 document . getElementById ( 'ruleValue' ) . placeholder = TYPE_HINTS [ type ] || 'Enter value...' ;
1664+ document . getElementById ( 'macDomainWarning' ) . style . display = ( type === 'domain' ) ? 'block' : 'none' ;
16421665 document . getElementById ( 'ruleValue' ) . focus ( ) ;
16431666 }
16441667
0 commit comments