{ "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"] }, "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="] }, "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 visibilityState()", "get isFullyVisible()"] }, "dashboard": { "checkOnly": true, "module": { "includes": ["window.Dashboard=this", "autoSwitchOverlayIfNeeded(){"] }, "expects": ["onShowOverlayRequestFromSteam(e){", "SetImplementation(\"ShowOverlay\",(e=>{this.onShowOverlayRequestFromSteam(e)}))", "this.autoSwitchOverlayIfNeeded()", "switchToFrameInternal(e,t,r){", "\"hideDashboard\"", "visibleInDashboardBar"] }, "docking": { "checkOnly": true, "module": { "includes": ["get dockLocation()", "SetDockLocation(e"], "excludes": ["get associatedSummonOverlayKeys()"] } }, "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", "SetDockLocation(l.yWq.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-${", "parent_id:p,translation:{x:-34*", "\"ButtonControl\"", "onClick:()=>{", "control:e,key:e.action_id", "const v={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("] } } } } }