Files
lhns--steam-frame-nix/modules/steam-ui-patches/lib/signatures.json
T
Pierre Kisters c2427b4e20 Window control bar: signature expects without minified names
The Float action's import alias (l.yWq) and the frame controls' local
names (p, v) change with every SteamVR build and would warn after each
update; match the stable parts only.
2026-10-01 04:09:13 +02:00

522 lines
23 KiB
JSON

{
"bundles": {
"steamui": {
"description": "Steam client UI (SharedJSContext and its popups, e.g. the VR keyboard and dashboard bar)",
"chunkGlobal": "webpackChunksteamui",
"dir": "~/.local/share/Steam/steamui",
"html": "index.html",
"exclude": "^localization/",
"styles": "css"
},
"vrwebui-systemui": {
"description": "SteamVR dashboard (vrwebhelper page systemui)",
"chunkGlobal": "webpackChunkvrwebui",
"dir": "/opt/steamvr/resources/webinterface/dashboard",
"html": "systemui.html"
}
},
"patches": {
"steam-keyboard-patch": {
"bundle": "steamui",
"modules": {
"layouts": {
"module": { "includes": ["name:\"qwerty\"", "rgLayout:", "GetKeyboardLayoutSettings"] },
"exports": {
"currentLayout": {
"type": "function", "length": 0,
"includes": ["GetKeyboardLayoutSettings", "currentLayout"],
"excludes": ["selectedLayouts", "SetKeyboardLayout"]
},
"enabledLayouts": {
"type": "function", "length": 0,
"includes": ["GetKeyboardLayoutSettings", "selectedLayouts"],
"excludes": ["useState", "SetKeyboardLayout", "SetValidKeyboardLayouts"]
},
"arrowLeft": { "type": "object", "props": { "key": "ArrowLeft" } },
"arrowUp": { "type": "object", "props": { "key": "ArrowUp" } },
"arrowDown": { "type": "object", "props": { "key": "ArrowDown" } },
"arrowRight": { "type": "object", "props": { "key": "ArrowRight" } }
},
"expects": ["Half", "rgLayout:", "leftActionButton"]
},
"vrStatus": {
"module": { "includes": ["get VRKeyboardStatus()"] },
"exports": {
"holder": { "type": "object", "getters": ["VRKeyboardStatus"] }
},
"expects": ["bIsOpen:", "sOverlayKey", "unAppID"]
},
"keyboardManager": {
"module": { "includes": ["SendClientPasteCommand(){", "HandleVirtualKeyDown(", "GetEnterKeyLabel("] },
"exports": {
"VirtualKeyboardManager": {
"type": "class",
"protoMethods": ["HandleVirtualKeyDown", "GetEnterKeyLabel", "SendClientPasteCommand"]
}
},
"expects": ["m_ActiveElementProps", "m_bDismissOnEnter", "m_Instance", "GetVROverlayKey()",
"MainRunningAppID", "ControllerKeyboardSendText"]
},
"keyboardComponent": {
"checkOnly": true,
"module": { "includes": ["TypeKeyInternal(", "toggleStates", "standardLayout"] },
"expects": ["\"data-key\"", "\"data-key-row\"", "HandleVirtualKeyDown", "RenderStandardKeyboard(",
"rgLayout:", "s_longPressThreshold", "s_longPressRepeatThreshold", "m_mapTouched",
"CancelLongPressTimer(){", "DismissLongPress(){", "ClearHoldTarget(){", "\"Backspace\""]
},
"popupManager": {
"checkOnly": true,
"module": { "includes": ["g_PopupManager", "GetPopups()"] }
}
}
},
"launcher-menu-order": {
"bundle": "steamui",
"modules": {
"programList": {
"checkOnly": true,
"module": { "includes": ["ScanForInstalledNonSteamApps("] }
}
}
},
"launcher-menu-launch": {
"bundle": "steamui",
"modules": {
"dashboardBar": {
"checkOnly": true,
"module": { "includes": ["allowLaunchProgram", "refBarPopopHandle", "#VRDashboard_LaunchNonSteamApp"] },
"expects": ["LaunchNonSteamApp(", "\"VRDashboardBarSmallButton\"", "BPopupOpen()", "closePopup()"]
}
}
},
"launcher-menu-pinned-desktop": {
"bundle": "steamui",
"modules": {
"dashboardBar": {
"checkOnly": true,
"module": { "includes": ["allowLaunchProgram", "refBarPopopHandle", "#VRDashboard_LaunchNonSteamApp"] },
"expects": ["header:", "strExePath", "rctContents"]
},
"popupNames": {
"checkOnly": true,
"module": { "includes": ["\"valve.steam.gamepadui.barpopup\""] }
}
}
},
"launcher-menu-grid": {
"bundle": "steamui",
"modules": {
"dashboardBar": {
"checkOnly": true,
"module": { "includes": ["allowLaunchProgram", "refBarPopopHandle", "#VRDashboard_LaunchNonSteamApp"] },
"expects": ["key:\"programs\"", "key:\"windows\"", "header:"]
},
"popupNames": {
"checkOnly": true,
"module": { "includes": ["\"valve.steam.gamepadui.barpopup\""] }
},
"scrollFade": {
"checkOnly": true,
"module": { "includes": ["ScrollFade", "ScrolledToTop", "ScrolledToBottom", "strClassNamesForScrollable"] },
"expects": ["scrollTop<=1", "clientHeight+1"]
},
"scrollFadeClasses": {
"checkOnly": true,
"module": { "includes": ["ScrollFade:\"", "ScrolledToTop:\"", "ScrolledToBottom:\""] }
},
"scrollFadeStyle": {
"checkOnly": true,
"stylesheet": { "includes": [
"mask-image:linear-gradient(to bottom, transparent 0%, black var(--scroll-fade-size), black calc(100% - var(--scroll-fade-size)), transparent 100%)",
"--scroll-fade-size:"
] }
},
"scrollShadowStyle": {
"checkOnly": true,
"stylesheet": { "includes": [
"z-index:9001;height:0;box-shadow:0 0 40px 40px #0e141b;transition:opacity .15s ease-out;pointer-events:none"
] }
}
}
},
"launcher-menu-show-all": {
"bundle": "steamui",
"modules": {
"devModeApps": {
"module": { "includes": ["\"developer_mode_enabled\"", "\"firewall-config\"", "\"vrurlhandler\"", "\"Install Chromium\""] },
"exports": {
"devModeOnly": { "type": "object", "has": ["push"], "props": { "0": "firewall-config" } }
},
"expects": ["\"konsole\"", "\"systemsettings\"", "\"dolphin\"", "\"plasma-discover\""]
},
"launcherFilter": {
"checkOnly": true,
"module": {
"includes": ["allowLaunchProgram", "#VRDashboard_LaunchNonSteamApp", "strExePath.endsWith(\"/\"+"],
"regex": ["/\\|\\|[\\w$]+\\.push\\(\\.\\.\\.[\\w$]+\\.[\\w$]+\\),[\\w$]+\\.filter\\(/"]
},
"expects": ["strAppName==", "strExePath=="]
}
}
},
"dashboard-windows": {
"bundle": "vrwebui-systemui",
"modules": {
"mailbox": {
"module": { "includes": ["\"mailbox_send \"", "WebSocketSend(", "\"vrcompositor_systemlayer\""] },
"exports": {
"Mailbox": { "type": "class", "protoMethods": ["SendMessage", "SendMessageAndWaitForResponse", "RegisterHandler"] }
}
},
"sceneGraph": {
"module": { "includes": ["\"update_scene_graph\"", "NextSGID()", "scene_graph:"] },
"exports": {
"resend": { "type": "function", "length": 0, "includes": ["NextSGID()", "setTimeout"] }
},
"expects": ["\"vrcompositor_systemlayer\"", ".SendMessage("]
},
"windowFrame": {
"checkOnly": true,
"module": { "includes": ["\"frame-resize-scale-max\"", "\"frame-resize-scale-min\""] }
},
"grabScale": {
"checkOnly": true,
"module": { "includes": ["\"grab-scale\"", "\"min-distance\"", "\"max-distance\""] }
}
}
},
"steam-close-button": {
"bundle": "vrwebui-systemui",
"modules": {
"mobx": {
"module": { "includes": ["runInAction:()=>", "makeObservable:()=>", "reaction:()=>"] }
},
"dock": {
"module": { "includes": ["e[e.Dashboard=1]=\"Dashboard\",e[e.LeftHand=2]=\"LeftHand\""] },
"exports": {
"EDockLocation": { "type": "object", "props": { "Dashboard": 1, "LeftHand": 2, "RightHand": 3, "World": 4, "Theater": 5 } }
}
},
"closing": {
"module": { "includes": ["this.componentName=\"closing\"", "closeMethodPriority"] },
"exports": {
"Closing": { "type": "class", "includes": ["componentName=\"closing\"", "RequestClose()"] }
},
"expects": ["defaultComponentProps=", "null!=this.componentProps.onCloseRequested", "get showCloseButton()",
"m_bShowSpinner=!0"]
},
"frameComponent": {
"checkOnly": true,
"module": { "includes": ["this.defaultComponentProps", "FramePageComponent '"] },
"expects": ["get componentProps()", ".componentProps)", "[this.componentName]"]
},
"frame": {
"checkOnly": true,
"module": { "includes": ["e[e.Alive=2]=\"Alive\""] },
"expects": ["this.m_eState=", "this.closing=", "this.docking=", "this.tab=", "get isActiveDashboardFrame()",
"this.props=", "get associatedSummonOverlayKeys()"]
},
"frameStore": {
"checkOnly": true,
"module": { "includes": ["window.FrameStore="] },
"expects": ["GetFrame(e){"]
},
"dashboardStore": {
"checkOnly": true,
"module": { "includes": ["window.DashboardStore="] },
"expects": ["_setActiveFrame(e,t){", "\"_setActiveFrame\"", "get mainSteamFrame()", "m_unMainSteamFrameID",
"get activeFrameID()", "get activeFrame()", "get isFullyVisible()"]
},
"dashboard": {
"checkOnly": true,
"module": { "includes": ["window.Dashboard=this", "autoSwitchOverlayIfNeeded(){"] },
"expects": ["this.autoSwitchOverlayIfNeeded()", "switchToFrameInternal(e,t,r){", "\"hideDashboard\"",
"visibleInDashboardBar", "this.m_mailbox=",
"k_sDashboardOverlayDestroyedMessage=\"dashboard_overlay_destroyed\"",
"k_sDashboardOverlayDestroyedMessage,this.onDashboardOverlayDestroyed)",
"onDashboardOverlayDestroyed(e){", "&&this.switchToHomeOverlay()}",
"RegisterHandler(\"show_dashboard_requested\",(e=>this.showDashboardOverlay(",
"RegisterHandler(\"switch_dashboard_overlay_requested\",(e=>this.showDashboardOverlay(",
"overlayKey:null==e?void 0:e.overlay_key,sReason:null==e?void 0:e.reason"]
},
"mailbox": {
"checkOnly": true,
"module": { "includes": ["RegisterHandler(e,t){this.m_oHandlers[e]=t}"] },
"expects": ["this.m_oHandlers[t.type](t)"]
},
"docking": {
"checkOnly": true,
"module": { "includes": ["get dockLocation()", "SetDockLocation(e"], "excludes": ["get associatedSummonOverlayKeys()"] },
"expects": ["sReason:\"SetDockLocation\""]
},
"overlayKeys": {
"checkOnly": true,
"module": { "includes": ["\"valve.steam.gamepadui.main\"", "\"valve.steam.gamepadui.appoverlay\""] }
}
}
},
"window-curvature": {
"bundle": "vrwebui-systemui",
"modules": {
"mobx": {
"module": { "includes": ["runInAction:()=>", "makeObservable:()=>", "reaction:()=>"] }
},
"dock": {
"module": { "includes": ["e[e.Dashboard=1]=\"Dashboard\",e[e.LeftHand=2]=\"LeftHand\""] },
"exports": {
"EDockLocation": { "type": "object", "props": { "Dashboard": 1, "LeftHand": 2, "RightHand": 3, "World": 4, "Theater": 5 } }
}
},
"mailbox": {
"module": { "includes": ["\"mailbox_send \"", "WebSocketSend(", "\"vrcompositor_systemlayer\""] },
"exports": {
"Mailbox": { "type": "class", "protoMethods": ["SendMessage", "SendMessageAndWaitForResponse", "RegisterHandler"] }
}
},
"sceneGraph": {
"module": { "includes": ["\"update_scene_graph\"", "NextSGID()", "scene_graph:"] },
"exports": {
"resend": { "type": "function", "length": 0, "includes": ["NextSGID()", "setTimeout"] }
},
"expects": ["\"vrcompositor_systemlayer\"", ".SendMessage("]
},
"curvature": {
"module": { "includes": ["this.componentName=\"curvature\"", "ToggleCurvature(){"] },
"exports": {
"Curvature": { "type": "class", "includes": ["componentName=\"curvature\"", "m_bCurveOverride"] }
},
"expects": ["get curvatureTransformOriginID(){return`frame:${this.frame.frameID}:curvature-origin`}",
"ToggleCurvature(){this.m_bCurveOverride=!this.shouldCurve}", "get shouldCurve()",
"get curvatureOriginDistance(){return this.shouldCurve?", ".curvatureDistance:1e3}", "translation:{z:"]
},
"actions": {
"module": { "includes": ["window.dashboardActionStore="] },
"exports": {
"store": { "type": "object", "methods": ["GetAction", "BIsVRLinkRemoteAction"] }
},
"expects": ["get partialParams()", "get protoForSteam()", "m_PartialParams"]
},
"frameControlsClasses": {
"module": { "includes": ["FrameControlsContainer:\"", "AdditionalOptionsRow:\"", "AdditionalOptionsLabel:\""] },
"exports": {
"row": { "type": "string", "regex": ["_AdditionalOptionsRow_"] },
"label": { "type": "string", "regex": ["_AdditionalOptionsLabel_"] }
}
},
"frameControls": {
"checkOnly": true,
"module": { "includes": ["legacy-frame-controls-additional-options-", "controlAdditionalOptionsItems.filter("] },
"expects": ["id:`legacy-frame-controls-additional-options-${", "isControlAdditionalOptionsOpen",
".AdditionalOptionsRow,", ".AdditionalOptionsLabel},", "display_name", "invocation", "onClick:()=>{", "onMouseDown:",
"id:`legacy-frame-controls-${", "items_for_bottom_frame_controls", "control:e,", ".TopCenter,meters_per_pixel:"]
},
"curvatureAction": {
"checkOnly": true,
"module": { "includes": ["\"#ToggleCurvatureTooltip\""] },
"expects": ["icon:{enum:40},icon_active:{enum:39},invocation:2", ".curvature.ToggleCurvature()"]
},
"frame": {
"checkOnly": true,
"module": { "includes": ["e[e.Alive=2]=\"Alive\""] },
"expects": ["this.curvature=", "this.docking=", "get isControlAdditionalOptionsOpen()",
"get controlAdditionalOptionsItems()", "get associatedSummonOverlayKeys()",
"get protoForSteam()", "isCurrentlyVisible"]
},
"docking": {
"checkOnly": true,
"module": { "includes": ["get dockLocation()", "SetDockLocation(e"], "excludes": ["get associatedSummonOverlayKeys()"] },
"expects": ["get visualDockLocation()"]
},
"frameStore": {
"checkOnly": true,
"module": { "includes": ["window.FrameStore="] },
"expects": ["GetFrame(e){", "get frames()"]
},
"dashboardStore": {
"checkOnly": true,
"module": { "includes": ["window.DashboardStore="] },
"expects": ["get curvatureDistance()"]
},
"panel": {
"checkOnly": true,
"module": { "includes": ["properties[\"curvature-origin-id\"]"] },
"expects": ["properties.origin=", "properties.debug_name=this.props.debug_name", ".TopCenter:return{x:0,y:1}",
"this.m_Rect=this.getCurrentRootElement().getBoundingClientRect()", "new ResizeObserver("]
},
"hapticEffects": {
"checkOnly": true,
"module": { "includes": ["e[e.Snap=3]=\"Snap\",e[e.Sliding=4]=\"Sliding\",e[e.SlidingEdge=5]=\"SlidingEdge\""] }
},
"hapticCall": {
"checkOnly": true,
"module": { "includes": ["TriggerOverlayHapticEffect(VRHTML.VROverlay.ThisOverlayHandle(),"] }
},
"sceneGraphNodes": {
"checkOnly": true,
"module": { "includes": ["case\"VSG-TRANSFORM\":", ".properties.translation="] }
}
}
},
"frame-controls": {
"bundle": "vrwebui-systemui",
"modules": {
"mobx": {
"module": { "includes": ["runInAction:()=>", "makeObservable:()=>", "reaction:()=>"] }
},
"frame": {
"module": { "includes": ["m_rgControlsItems_BottomFrameControls", "get protoForSteam()", "SetControlsItems("] },
"exports": {
"Frame": { "type": "class", "protoMethods": ["SetControlsItems", "SetControlAdditionalOptionsOpen", "CreateAction"] }
},
"expects": ["SetControlsItems(e,t,o){this.m_rgControlsItems_BottomFrameControls=e,this.m_rgControlsItems_TabHoverControls=t,this.m_rgControlsItems_AdditionalOptions=o}",
"get isControlAdditionalOptionsOpen(){return this.m_bControlAdditionalOptionsOpen&&this.m_rgControlsItems_AdditionalOptions.length>0}",
"BPanelHasFocus(this.panels.additionalOptionsPanelSGID)", "this.SetControlAdditionalOptionsOpen(!1)", "m_unControlAdditionalOptionsActionID"]
},
"actions": {
"module": { "includes": ["window.dashboardActionStore="] },
"exports": {
"store": { "type": "object", "methods": ["GetAction", "BIsVRLinkRemoteAction"] }
},
"expects": ["get protoForSteam()", "get isAlive()"]
},
"dock": {
"module": { "includes": ["e[e.Dashboard=1]=\"Dashboard\",e[e.LeftHand=2]=\"LeftHand\""] },
"exports": {
"EDockLocation": { "type": "object", "props": { "Dashboard": 1, "World": 4, "Theater": 5 } }
}
},
"inputFocus": {
"module": { "includes": ["BPanelHasFocus(e,t=!0)", "\"defocus_panel\""] },
"exports": {
"store": { "type": "object", "methods": ["BPanelHasFocus", "BPanelSubviewHasFocus", "RemoveInputFocus"] }
},
"expects": ["m_entryAtTopOfStack.m_unPanelSGID"]
},
"localize": {
"module": { "includes": ["LocalizeStringFromFallback(", "m_mapFallbackTokens"] },
"exports": {
"localize": { "type": "function", "includes": [".LocalizeString(e)", "$s/g"] }
},
"expects": ["[\"en\",\"english\"],[\"de\",\"german\"],[\"fr\",\"french\"]", "for(let t of navigator.languages)"]
},
"controls": {
"checkOnly": true,
"module": { "includes": ["\"#AdditionalOptionsTooltip\"", "\"#FloatInWorld\""] },
"expects": ["icon:{enum:38},invocation:2", "\"#FloatInWorld\"),icon:{enum:26},invocation:1", "\"#ReturnToDashboard\"),icon:{enum:27}",
"\"#ViewInTheater\"),icon:{enum:28}", "icon:{enum:\"left\"==t?29:30}", "icon:{enum:22},icon_active:{enum:24}",
"icon:{enum:40},icon_active:{enum:39}", "onlyVisibleIn:\"additional-options\"", "controlAdditionalOptionsItems.length>0",
".docking.SetDockLocation(", ".World)}})"]
},
"closeIcon": {
"checkOnly": true,
"module": { "includes": ["icon_close_black.png"] },
"expects": ["case 31:"]
},
"frameControls": {
"checkOnly": true,
"module": { "includes": ["legacy-frame-controls-additional-options-anchor-", "controlAdditionalOptionsItems.filter("] },
"expects": ["id:`legacy-frame-controls-${", "id:`legacy-frame-controls-additional-options-${", "translation:{x:-34*",
"\"ButtonControl\"", "onClick:()=>{", "control:e,key:e.action_id", "={x:0,y:.15,z:.05}"]
},
"panel": {
"checkOnly": true,
"module": { "includes": ["getNodeType(){return\"panel\"}"] },
"expects": ["addEmbeddedPanelUVs(this)", "\"embedded-uv-index\"", "uv_min", "\"curvature-origin-id\"", "\"only-visible-with-laser\"",
"\"meters-per-pixel\"", "\"sort-depth-bias\""]
},
"panelAnchor": {
"checkOnly": true,
"module": { "includes": ["getNodeType(){return\"panel-anchor\"}"] },
"expects": ["\"anchor-u\"", "\"anchor-v\""]
},
"sgApp": {
"checkOnly": true,
"module": { "includes": ["window.SGApp=this", "addEmbeddedPanelUVs("] },
"expects": ["removeEmbeddedPanelUVs(", "updateAllPanelBounds(){", "m_fCurrentScale", "t.forceLayoutUpdate=this.forceLayoutUpdate",
"e.updateLayoutValues()", "getEmbeddedIndex()"]
},
"sceneGraphDom": {
"checkOnly": true,
"module": { "includes": ["\"update_scene_graph\"", "case\"VSG-TRANSFORM\""] },
"expects": [".buildNode;if(", "\"parent-id\"", "\"translation\""]
},
"docking": {
"checkOnly": true,
"module": { "includes": ["SetInTheater(e=!0){", "GetTrackedDeviceIndexForControllerRole"] },
"expects": ["SetDockLocation(e){", "SetJustFloatedFromDashboard("]
}
}
},
"vr-keyboard": {
"bundle": "steamui",
"modules": {
"vrStatus": {
"module": { "includes": ["get VRKeyboardStatus()"] },
"exports": { "holder": { "type": "object", "getters": ["VRKeyboardStatus"] } },
"expects": ["bIsOpen:", "sOverlayKey", "unAppID"]
},
"keyboardManager": {
"module": { "includes": ["SendClientPasteCommand(){", "HandleVirtualKeyDown(", "GetEnterKeyLabel("] },
"exports": { "VirtualKeyboardManager": { "type": "class", "protoMethods": ["HandleVirtualKeyDown"] } },
"expects": ["m_ActiveElementProps", "m_strDeadKeyPending"]
},
"keyboardComponent": {
"checkOnly": true,
"module": { "includes": ["TypeKeyInternal(", "m_mapTouched", "CancelLongPressTimer(){", "DismissLongPress(){", "ClearHoldTarget(){",
"toggleStates"] },
"expects": ["\"data-key\"", "\"data-key-row\"", "OnCommitText(", "OnForwardKeyEvent(", "HandleTouchEnd(", "ElementFromTouch("]
}
}
},
"vr-keyboard-panel": {
"bundle": "vrwebui-systemui",
"modules": {
"sgApp": {
"checkOnly": true,
"module": { "includes": ["window.SGApp=this", "addEmbeddedPanelUVs("] },
"expects": ["removeEmbeddedPanelUVs(", "t.forceLayoutUpdate=this.forceLayoutUpdate", "getEmbeddedIndex()"]
},
"keyboardMount": {
"checkOnly": true,
"module": { "includes": ["m_sKeyboardOverlayKey", "GrabHandleTint", "k_nKeyboardGrabTransformOffset"] },
"expects": ["mountedId", "m_nKeyboardFlags"]
},
"overlayKeys": {
"checkOnly": true,
"module": { "includes": ["\"valve.steam.gamepadui.keyboard\""] }
}
}
},
"vr-keyboard-touch": {
"bundle": "steamui",
"modules": {
"vrStatus": {
"module": { "includes": ["get VRKeyboardStatus()"] },
"exports": { "holder": { "type": "object", "getters": ["VRKeyboardStatus"] } },
"expects": ["bIsOpen:"]
},
"keyboardComponent": {
"checkOnly": true,
"module": { "includes": ["TypeKeyInternal(", "m_mapTouched", "HandleTouchStart(", "HandleTouchEnd(", "ElementFromTouch("] },
"expects": ["\"data-key\"", "MouseHoverBlockerHack", "StartLongPressTimer(", "LongPressTimerExpired("]
}
}
},
"vr-keyboard-controllers": {
"bundle": "vrwebui-systemui",
"modules": {
"sgQuery": {
"checkOnly": true,
"module": { "includes": ["window.SGQueryService=", "transform_request"] },
"expects": ["requestSGTransform("]
},
"keyboardMount": {
"checkOnly": true,
"module": { "includes": ["m_sKeyboardOverlayKey", "GrabHandleTint", "k_nKeyboardGrabTransformOffset"] },
"expects": ["mountedId"]
}
}
}
}
}