@@ -1462,61 +1462,6 @@ function PluginInspector({ action, onChange, pluginManifests = [] }) {
14621462 )
14631463}
14641464
1465- // ─── Help / Documentation menu ──────────────────────────────
1466- const HELP_LINKS = [
1467- { label : 'User Manual' , url : 'https://github.com/FritzBlignaut/tech-stack-streamdeck/wiki/User-Manual' } ,
1468- { label : 'Installation Guide' , url : 'https://github.com/FritzBlignaut/tech-stack-streamdeck/wiki/Installation-Guide' } ,
1469- { label : 'Release Notes' , url : 'https://github.com/FritzBlignaut/tech-stack-streamdeck/releases' } ,
1470- ]
1471-
1472- function HelpMenu ( ) {
1473- const [ open , setOpen ] = useState ( false )
1474- const ref = useRef ( null )
1475-
1476- useEffect ( ( ) => {
1477- if ( ! open ) return
1478- const handler = ( e ) => {
1479- if ( ref . current && ! ref . current . contains ( e . target ) ) setOpen ( false )
1480- }
1481- document . addEventListener ( 'mousedown' , handler )
1482- return ( ) => document . removeEventListener ( 'mousedown' , handler )
1483- } , [ open ] )
1484-
1485- return (
1486- < div className = "help-menu-wrapper" ref = { ref } >
1487- < button
1488- className = { `icon-btn${ open ? ' active' : '' } ` }
1489- title = "Help & Documentation"
1490- onClick = { ( ) => setOpen ( o => ! o ) }
1491- >
1492- < svg viewBox = "0 0 16 16" fill = "none" stroke = "currentColor" strokeWidth = "1.5" >
1493- < circle cx = "8" cy = "8" r = "2.5" />
1494- < path d = "M8 1.5v1.8M8 12.7v1.8M1.5 8h1.8M12.7 8h1.8M3.4 3.4l1.27 1.27M11.33 11.33l1.27 1.27M3.4 12.6l1.27-1.27M11.33 4.67l1.27-1.27" />
1495- </ svg >
1496- </ button >
1497-
1498- { open && (
1499- < div className = "help-menu" >
1500- < div className = "help-menu-section-label" > Documentation</ div >
1501- { HELP_LINKS . map ( ( { label, url } ) => (
1502- < button
1503- key = { url }
1504- className = "help-menu-item"
1505- onClick = { ( ) => { window . streamDeck ?. openUrl ( url ) ; setOpen ( false ) } }
1506- >
1507- < svg viewBox = "0 0 16 16" fill = "none" stroke = "currentColor" strokeWidth = "1.4" width = "14" height = "14" >
1508- < path d = "M3 3h5v1.5H4.5v7h7V9H13v3.5a1 1 0 0 1-1 1H3.5a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z" />
1509- < path d = "M9 2.5h4.5V7" strokeLinecap = "round" strokeLinejoin = "round" />
1510- < path d = "M13.5 2.5L8 8" strokeLinecap = "round" />
1511- </ svg >
1512- { label }
1513- </ button >
1514- ) ) }
1515- </ div >
1516- ) }
1517- </ div >
1518- )
1519- }
15201465
15211466function PropertiesPanel ( { keyIndex, onClose, config, onChange, iconSize, profiles, pageCount, onEnterFolder, pluginManifests = [ ] } ) {
15221467 const fileInputRef = useRef ( null )
@@ -2663,7 +2608,6 @@ export default function App() {
26632608 </ svg >
26642609 </ button >
26652610
2666- < HelpMenu />
26672611 { appVersion && < span className = "app-version" > v{ appVersion } -{ __GIT_HASH__ } </ span > }
26682612 </ div >
26692613 </ header >
0 commit comments