@diffenderfer-games/hub 2.0.0-next.2 → 2.0.0-next.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/auto.d.ts +2 -2
- package/dist/auto.js +2 -2
- package/dist/doctor/cli.mjs +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/input.d.ts +2 -2
- package/dist/input.js +2 -2
- package/dist/shared/client-version.gen.js +1 -1
- package/dist/shared/daily.js +1 -1
- package/dist/shared/index.d.ts +2 -2
- package/dist/shared/input.d.ts +47 -5
- package/dist/shared/input.d.ts.map +1 -1
- package/dist/shared/input.js +132 -21
- package/dist/shared/input.js.map +1 -1
- package/package.json +2 -2
- package/src/core/version/client-version.gen.ts +1 -1
- package/src/input/focus-ring.ts +13 -0
- package/src/input/input-system.ts +4 -0
- package/src/input/modality.ts +122 -0
- package/src/input/nav-state.ts +13 -4
- package/src/input/zero-config.ts +1 -14
- package/src/input.ts +3 -0
- package/src/overlay/overlay.ts +5 -3
- package/src/overlay/styles.ts +4 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# @diffenderfer-games/hub
|
|
2
2
|
|
|
3
|
+
## 2.0.0-next.3
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- ce98e79: Focus rings only for keyboard and gamepad players. The input system tracks the last input modality on `<html data-hub-input="keys|pointer|touch">`: the navigation highlight and the catalog's `gp-focus` show only after a key or gamepad press, never after a tap or click, and touch screens show no focus ring on buttons at all (the browser's own included). The ring is new: a two-tone box-shadow (dark gap, light ring) that follows the element's own corner radius instead of an orange rectangle, tunable with `--hub-focus-color`, `--hub-focus-inner`, `--hub-focus-width` and `--hub-focus-gap`. New exports from `@diffenderfer-games/hub/input`: `FOCUS_RING_SHADOW`, `MODALITY_ATTRIBUTE`, `trackInputModality` and the `InputModality` type.
|
|
8
|
+
- @diffenderfer-games/hub-contract@2.0.0-next.3
|
|
9
|
+
|
|
3
10
|
## 2.0.0-next.2
|
|
4
11
|
|
|
5
12
|
### Minor Changes
|
package/dist/auto.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as RaceRecordPlayer, c as RealtimeErrorShape, d as RoomSeat, f as RoomSeatChange, g as Snapshot, h as ServerEvents, i as RaceHistory, l as RoomChatLine, m as SchemaOutput, n as InviteLink, o as RaceResultPlayer, p as RoomStateChange, r as Notice, s as RaceStatusEvent, t as InviteCreated, u as RoomMessage } from "./shared/wire-types.js";
|
|
2
2
|
import { _ as DailyStatus, a as isDailySystem, c as DailyAll, d as DailyCompletionMeta, f as DailyDefinition, g as DailyStartResponse, h as DailyHost, i as getDaily, l as DailyChallenge, m as DailyGameStatus, n as DailyCompletions, o as DAILY_START_EVENT, p as DailyEventDetail, r as DAILY_SINGLETON_API, s as DailySystem, t as DailyCompletion, u as DailyCompleteResponse } from "./shared/daily.js";
|
|
3
|
-
import { $ as
|
|
3
|
+
import { $ as NavigableDef, A as PageInputControl, B as InputDef, C as INPUT_SINGLETON_API, D as parseInputOverrides, E as isInputSystem, F as DraggedSpot, G as InputSource, H as InputHost, I as EdgeOffsets, J as NavBlurEvent, K as MenuBridge, L as GamepadMapping, M as Anchor, N as AxisDef, O as InputSystem, P as AxisSide, Q as NavTarget, R as GroupDef, S as FOCUS_RING_SHADOW, T as getInput, U as InputOverrides, V as InputEvents, W as InputReading, X as NavElementKind, Y as NavElement, Z as NavFocusEvent, _ as boxesTouch, a as OverlayEdge, at as VirtualInputs, b as MODALITY_ATTRIBUTE, c as OverlayReason, d as LayoutOptions, et as Rect, f as layoutControls, g as LayoutItem, h as LayoutBox, i as AutoPauseOptions, it as VirtualDef, j as isPageInputControl, k as InputSystemOptions, l as UiStack, m as Insets, n as getUiStack, nt as Vector, o as OverlayEvent, ot as VirtualOverride, p as Overlay, q as MouseMapping, r as isUiStack, rt as VirtualControlType, s as OverlayListener, t as UI_STACK_VERSION, tt as TouchMapping, u as UiStackHandoff, v as controlSize, w as InputOptions, x as trackInputModality, y as InputModality, z as InputConfig } from "./shared/input.js";
|
|
4
4
|
import { a as InviteResult, i as InviteOptions, n as HubMpApi, o as JoinInfoEvent, r as InviteLinkMethods, t as BusyOptions } from "./shared/multiplayer-types.js";
|
|
5
5
|
import { o as multiplayerForwarder } from "./shared/mp.js";
|
|
6
6
|
import { a as RoomEvents, c as RoomSelf, d as RoomStateOptions, i as RoomCreateOptions, l as RoomSendOptions, n as HubRoomsApi, o as RoomListOptions, r as JoinOptions, s as RoomReclaimMethods, t as HubRoom, u as RoomState } from "./shared/room-types.js";
|
|
@@ -32,5 +32,5 @@ declare global {
|
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
//#endregion
|
|
35
|
-
export { type Anchor, type Audience, type AuthResponse, type AutoPauseOptions, type AxisDef, type AxisSide, type Board, type BoardWithTop, type BufferedEvent, type BusyOptions, CLIENT_VERSION_HEADER, type ChatMode, type ClientSupport, ContentRejectedError, type Conversation, type Counts, DAILY_SINGLETON_API, DAILY_START_EVENT, type DailyAll, type DailyChallenge, type DailyCompleteResponse, type DailyCompletion, type DailyCompletionMeta, type DailyCompletions, type DailyDefinition, type DailyEventDetail, type DailyGameStatus, type DailyHost, type DailyStartResponse, type DailyStatus, DailySystem, type DraggedSpot, type EdgeOffsets, type EndpointFields, type EndpointName, type EndpointReply, type ErrorBody, type FriendEntry, type GameAnalytics, type GameInfo, type GameLeaderboards, type GamePayload, type GameRecords, type GamepadMapping, type GlobalAnalytics, type GrantBundle, type GroupDef, HUB_CLIENT_VERSION, Hub, HubError, type HubErrorCode, type HubErrorDetails, type HubMenuControl, type HubMpApi, type HubNotifyApi, type HubOptions, type HubPresenceApi, type HubRaceApi, type HubRoom, type HubRoomsApi, type HubSocialApi, type HubStatus, INPUT_SINGLETON_API, type InputConfig, type InputDef, type InputEvents, type InputHost, type InputOptions, type InputOverrides, type InputReading, type InputSource, InputSystem, type InputSystemOptions, type Insets, type Inventory, type InventorySnapshot, type Invite, type InviteCreated, type InviteLink, type InviteLinkMethods, type InviteOptions, type InviteResult, type JoinInfo, type JoinInfoEvent, type JoinOptions, type Json, type Launch, type LaunchTicket, type LayoutBox, type LayoutItem, type LayoutOptions, type LeaderboardEntry, type LeaderboardResult, type MeResponse, type MenuBridge, type Message, type MessagesPage, type Metrics, type MouseMapping, type NavBlurEvent, type NavElement, type NavElementKind, type NavFocusEvent, type NavTarget, type NavigableDef, type Notice, type NotifyChange, type NotifyPrefs, OUTBOX_FULL_CODE, OUTBOX_MAX_CHARS, OUTBOX_MAX_ENTRIES, OfflineApi, OfflineError, type OfflineEventDetails, type OfflineEventName, type OfflineHandler, type OfflineKindDefinition, type OfflineListener, type OfflineOp, type OpenInviteOptions, Overlay, type OverlayEdge, type OverlayEvent, type OverlayListener, type OverlayReason, type PageInputControl, type Party, type PlayOnlineMethods, type PlayerCard, type PlayerLite, type PlayerRef, type Presence, type PresenceInput, type PresenceKind, type Profile, type ProfilePatch, type ProfileSummary, type ProfileUpdate, type QueueOp, type QueueOpInput, type QueuedScoreOptions, type REALTIME_FAILED_EVENT, type REALTIME_FEATURE_VERSION, type REALTIME_READY_EVENT, type REALTIME_SINGLETON_API, type RaceCreateOptions, type RaceDefinition, type RaceEvents, type RaceHistory, type RaceHistoryQuery, type RaceHistoryViewOptions, type RaceHudPlace, type RaceOutcome, type RaceParams, type RaceRecord, type RaceRecordPlayer, type RaceResult, type RaceResultPlayer, type RaceRuntimeApi, type RaceStart, type RaceStatValue, type RaceState, type RaceStats, type RaceStatusEvent, type Racer, type RacerResult, type RacerState, type RealtimeApi, type RealtimeErrorShape, type RealtimeHubLink, type RecentPlayer, type Rect, type Relation, type ReplayContext, type ReportInput, type ReportKind, type ReportReason, type RoomChatLine, type RoomCreateOptions, type RoomEvents, type RoomInfo, type RoomListOptions, type RoomMessage, type RoomReclaimMethods, type RoomSeat, type RoomSeatChange, type RoomSelf, type RoomSendOptions, type RoomState, type RoomStateChange, type RoomStateOptions, type Save, type SaveMeta, type SchemaOutput, type ServerEvents, type Snapshot, type SnapshotResponse, type SocialConfig, type SocialCounts, type SocialEvents, type SocialMe, type SortDir, type StatResult, type Stats, type SubmitScoreOptions, type SubmitScoreResult, type Suggestion, type SuggestionStatus, type SyncConflict, type SyncResult, type TouchMapping, type TradeBundle, type TradeId, type TradeListOptions, type TradeNoteOptions, UI_STACK_VERSION, UNSUPPORTED_BY_HUB, type UiStack, type UiStackHandoff, type User, type Vector, type VirtualControlType, type VirtualDef, type VirtualInputs, type VirtualOverride, boxesTouch, controlSize, createHub, type findRealtimeApi, getDaily, getInput, getUiStack, hub, isDailySystem, isInputSystem, isPageInputControl, type isRealtimeApi, isUiStack, layoutControls, type linkRealtimeToHub, type multiplayerForwarder as mp, type notifyForwarder as notify, parseInputOverrides, type presenceForwarder as presence, type raceForwarder as race, type roomsForwarder as rooms, type socialForwarder as social };
|
|
35
|
+
export { type Anchor, type Audience, type AuthResponse, type AutoPauseOptions, type AxisDef, type AxisSide, type Board, type BoardWithTop, type BufferedEvent, type BusyOptions, CLIENT_VERSION_HEADER, type ChatMode, type ClientSupport, ContentRejectedError, type Conversation, type Counts, DAILY_SINGLETON_API, DAILY_START_EVENT, type DailyAll, type DailyChallenge, type DailyCompleteResponse, type DailyCompletion, type DailyCompletionMeta, type DailyCompletions, type DailyDefinition, type DailyEventDetail, type DailyGameStatus, type DailyHost, type DailyStartResponse, type DailyStatus, DailySystem, type DraggedSpot, type EdgeOffsets, type EndpointFields, type EndpointName, type EndpointReply, type ErrorBody, FOCUS_RING_SHADOW, type FriendEntry, type GameAnalytics, type GameInfo, type GameLeaderboards, type GamePayload, type GameRecords, type GamepadMapping, type GlobalAnalytics, type GrantBundle, type GroupDef, HUB_CLIENT_VERSION, Hub, HubError, type HubErrorCode, type HubErrorDetails, type HubMenuControl, type HubMpApi, type HubNotifyApi, type HubOptions, type HubPresenceApi, type HubRaceApi, type HubRoom, type HubRoomsApi, type HubSocialApi, type HubStatus, INPUT_SINGLETON_API, type InputConfig, type InputDef, type InputEvents, type InputHost, type InputModality, type InputOptions, type InputOverrides, type InputReading, type InputSource, InputSystem, type InputSystemOptions, type Insets, type Inventory, type InventorySnapshot, type Invite, type InviteCreated, type InviteLink, type InviteLinkMethods, type InviteOptions, type InviteResult, type JoinInfo, type JoinInfoEvent, type JoinOptions, type Json, type Launch, type LaunchTicket, type LayoutBox, type LayoutItem, type LayoutOptions, type LeaderboardEntry, type LeaderboardResult, MODALITY_ATTRIBUTE, type MeResponse, type MenuBridge, type Message, type MessagesPage, type Metrics, type MouseMapping, type NavBlurEvent, type NavElement, type NavElementKind, type NavFocusEvent, type NavTarget, type NavigableDef, type Notice, type NotifyChange, type NotifyPrefs, OUTBOX_FULL_CODE, OUTBOX_MAX_CHARS, OUTBOX_MAX_ENTRIES, OfflineApi, OfflineError, type OfflineEventDetails, type OfflineEventName, type OfflineHandler, type OfflineKindDefinition, type OfflineListener, type OfflineOp, type OpenInviteOptions, Overlay, type OverlayEdge, type OverlayEvent, type OverlayListener, type OverlayReason, type PageInputControl, type Party, type PlayOnlineMethods, type PlayerCard, type PlayerLite, type PlayerRef, type Presence, type PresenceInput, type PresenceKind, type Profile, type ProfilePatch, type ProfileSummary, type ProfileUpdate, type QueueOp, type QueueOpInput, type QueuedScoreOptions, type REALTIME_FAILED_EVENT, type REALTIME_FEATURE_VERSION, type REALTIME_READY_EVENT, type REALTIME_SINGLETON_API, type RaceCreateOptions, type RaceDefinition, type RaceEvents, type RaceHistory, type RaceHistoryQuery, type RaceHistoryViewOptions, type RaceHudPlace, type RaceOutcome, type RaceParams, type RaceRecord, type RaceRecordPlayer, type RaceResult, type RaceResultPlayer, type RaceRuntimeApi, type RaceStart, type RaceStatValue, type RaceState, type RaceStats, type RaceStatusEvent, type Racer, type RacerResult, type RacerState, type RealtimeApi, type RealtimeErrorShape, type RealtimeHubLink, type RecentPlayer, type Rect, type Relation, type ReplayContext, type ReportInput, type ReportKind, type ReportReason, type RoomChatLine, type RoomCreateOptions, type RoomEvents, type RoomInfo, type RoomListOptions, type RoomMessage, type RoomReclaimMethods, type RoomSeat, type RoomSeatChange, type RoomSelf, type RoomSendOptions, type RoomState, type RoomStateChange, type RoomStateOptions, type Save, type SaveMeta, type SchemaOutput, type ServerEvents, type Snapshot, type SnapshotResponse, type SocialConfig, type SocialCounts, type SocialEvents, type SocialMe, type SortDir, type StatResult, type Stats, type SubmitScoreOptions, type SubmitScoreResult, type Suggestion, type SuggestionStatus, type SyncConflict, type SyncResult, type TouchMapping, type TradeBundle, type TradeId, type TradeListOptions, type TradeNoteOptions, UI_STACK_VERSION, UNSUPPORTED_BY_HUB, type UiStack, type UiStackHandoff, type User, type Vector, type VirtualControlType, type VirtualDef, type VirtualInputs, type VirtualOverride, boxesTouch, controlSize, createHub, type findRealtimeApi, getDaily, getInput, getUiStack, hub, isDailySystem, isInputSystem, isPageInputControl, type isRealtimeApi, isUiStack, layoutControls, type linkRealtimeToHub, type multiplayerForwarder as mp, type notifyForwarder as notify, parseInputOverrides, type presenceForwarder as presence, type raceForwarder as race, type roomsForwarder as rooms, type socialForwarder as social, trackInputModality };
|
|
36
36
|
//# sourceMappingURL=auto.d.ts.map
|
package/dist/auto.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as DailySystem, i as DAILY_START_EVENT, n as getDaily, r as isDailySystem, t as DAILY_SINGLETON_API } from "./shared/daily.js";
|
|
2
2
|
import { t as HUB_CLIENT_VERSION } from "./shared/client-version.gen.js";
|
|
3
|
-
import { a as isPageInputControl, c as layoutControls, i as parseInputOverrides, l as boxesTouch, n as getInput, o as InputSystem, r as isInputSystem, s as Overlay, t as INPUT_SINGLETON_API, u as controlSize } from "./shared/input.js";
|
|
3
|
+
import { a as isPageInputControl, c as layoutControls, d as MODALITY_ATTRIBUTE, f as trackInputModality, i as parseInputOverrides, l as boxesTouch, n as getInput, o as InputSystem, p as FOCUS_RING_SHADOW, r as isInputSystem, s as Overlay, t as INPUT_SINGLETON_API, u as controlSize } from "./shared/input.js";
|
|
4
4
|
import { n as isUiStack, r as UI_STACK_VERSION, t as getUiStack } from "./shared/page-stack.js";
|
|
5
5
|
import { a as OUTBOX_FULL_CODE, c as OfflineApi, d as OfflineError, f as UNSUPPORTED_BY_HUB, i as CLIENT_VERSION_HEADER, l as ContentRejectedError, n as createHub, o as OUTBOX_MAX_CHARS, r as hub, s as OUTBOX_MAX_ENTRIES, t as Hub, u as HubError } from "./shared/src.js";
|
|
6
6
|
//#region src/auto.ts
|
|
@@ -22,6 +22,6 @@ if (typeof window !== "undefined") window.HubSDK = {
|
|
|
22
22
|
ContentRejectedError
|
|
23
23
|
};
|
|
24
24
|
//#endregion
|
|
25
|
-
export { CLIENT_VERSION_HEADER, ContentRejectedError, DAILY_SINGLETON_API, DAILY_START_EVENT, DailySystem, HUB_CLIENT_VERSION, Hub, HubError, INPUT_SINGLETON_API, InputSystem, OUTBOX_FULL_CODE, OUTBOX_MAX_CHARS, OUTBOX_MAX_ENTRIES, OfflineApi, OfflineError, Overlay, UI_STACK_VERSION, UNSUPPORTED_BY_HUB, boxesTouch, controlSize, createHub, getDaily, getInput, getUiStack, hub, isDailySystem, isInputSystem, isPageInputControl, isUiStack, layoutControls, parseInputOverrides };
|
|
25
|
+
export { CLIENT_VERSION_HEADER, ContentRejectedError, DAILY_SINGLETON_API, DAILY_START_EVENT, DailySystem, FOCUS_RING_SHADOW, HUB_CLIENT_VERSION, Hub, HubError, INPUT_SINGLETON_API, InputSystem, MODALITY_ATTRIBUTE, OUTBOX_FULL_CODE, OUTBOX_MAX_CHARS, OUTBOX_MAX_ENTRIES, OfflineApi, OfflineError, Overlay, UI_STACK_VERSION, UNSUPPORTED_BY_HUB, boxesTouch, controlSize, createHub, getDaily, getInput, getUiStack, hub, isDailySystem, isInputSystem, isPageInputControl, isUiStack, layoutControls, parseInputOverrides, trackInputModality };
|
|
26
26
|
|
|
27
27
|
//# sourceMappingURL=auto.js.map
|
package/dist/doctor/cli.mjs
CHANGED
|
@@ -5,7 +5,7 @@ import { parseArgs } from "node:util";
|
|
|
5
5
|
import { GAME_LABELS, GamePackageJson, HubVersion, splitGameLabels } from "@diffenderfer-games/hub-contract";
|
|
6
6
|
//#region src/core/version/client-version.gen.ts
|
|
7
7
|
/** This client's package version, sent as `x-hub-client` on REST calls and `client` in `hello`. */
|
|
8
|
-
const HUB_CLIENT_VERSION = "2.0.0-next.
|
|
8
|
+
const HUB_CLIENT_VERSION = "2.0.0-next.3";
|
|
9
9
|
//#endregion
|
|
10
10
|
//#region src/core/version/semver.ts
|
|
11
11
|
const VERSION_PATTERN = /^v?(\d+)(?:\.(\d+))?(?:\.(\d+))?(?:-([0-9A-Za-z.-]+))?(?:\+[0-9A-Za-z.-]+)?$/;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as RaceRecordPlayer, c as RealtimeErrorShape, d as RoomSeat, f as RoomSeatChange, g as Snapshot, h as ServerEvents, i as RaceHistory, l as RoomChatLine, m as SchemaOutput, n as InviteLink, o as RaceResultPlayer, p as RoomStateChange, r as Notice, s as RaceStatusEvent, t as InviteCreated, u as RoomMessage } from "./shared/wire-types.js";
|
|
2
2
|
import { _ as DailyStatus, a as isDailySystem, c as DailyAll, d as DailyCompletionMeta, f as DailyDefinition, g as DailyStartResponse, h as DailyHost, i as getDaily, l as DailyChallenge, m as DailyGameStatus, n as DailyCompletions, o as DAILY_START_EVENT, p as DailyEventDetail, r as DAILY_SINGLETON_API, s as DailySystem, t as DailyCompletion, u as DailyCompleteResponse } from "./shared/daily.js";
|
|
3
|
-
import { $ as
|
|
3
|
+
import { $ as NavigableDef, A as PageInputControl, B as InputDef, C as INPUT_SINGLETON_API, D as parseInputOverrides, E as isInputSystem, F as DraggedSpot, G as InputSource, H as InputHost, I as EdgeOffsets, J as NavBlurEvent, K as MenuBridge, L as GamepadMapping, M as Anchor, N as AxisDef, O as InputSystem, P as AxisSide, Q as NavTarget, R as GroupDef, S as FOCUS_RING_SHADOW, T as getInput, U as InputOverrides, V as InputEvents, W as InputReading, X as NavElementKind, Y as NavElement, Z as NavFocusEvent, _ as boxesTouch, a as OverlayEdge, at as VirtualInputs, b as MODALITY_ATTRIBUTE, c as OverlayReason, d as LayoutOptions, et as Rect, f as layoutControls, g as LayoutItem, h as LayoutBox, i as AutoPauseOptions, it as VirtualDef, j as isPageInputControl, k as InputSystemOptions, l as UiStack, m as Insets, n as getUiStack, nt as Vector, o as OverlayEvent, ot as VirtualOverride, p as Overlay, q as MouseMapping, r as isUiStack, rt as VirtualControlType, s as OverlayListener, t as UI_STACK_VERSION, tt as TouchMapping, u as UiStackHandoff, v as controlSize, w as InputOptions, x as trackInputModality, y as InputModality, z as InputConfig } from "./shared/input.js";
|
|
4
4
|
import { a as InviteResult, i as InviteOptions, n as HubMpApi, o as JoinInfoEvent, r as InviteLinkMethods, t as BusyOptions } from "./shared/multiplayer-types.js";
|
|
5
5
|
import { o as multiplayerForwarder } from "./shared/mp.js";
|
|
6
6
|
import { a as RoomEvents, c as RoomSelf, d as RoomStateOptions, i as RoomCreateOptions, l as RoomSendOptions, n as HubRoomsApi, o as RoomListOptions, r as JoinOptions, s as RoomReclaimMethods, t as HubRoom, u as RoomState } from "./shared/room-types.js";
|
|
@@ -9,4 +9,4 @@ import { f as raceForwarder } from "./shared/race.js";
|
|
|
9
9
|
import { n as roomsForwarder } from "./shared/rooms.js";
|
|
10
10
|
import { $ as HubNotifyApi, A as RacerState, B as SuggestionStatus, C as RaceRecord, D as RaceStats, E as RaceState, F as ReportReason, G as REALTIME_READY_EVENT, H as isRealtimeApi, I as RoomInfo, J as RealtimeHubLink, K as REALTIME_SINGLETON_API, L as SocialConfig, M as Relation, N as ReportInput, O as Racer, P as ReportKind, Q as socialForwarder, R as SocialMe, S as RaceParams, T as RaceStatValue, U as REALTIME_FAILED_EVENT, V as findRealtimeApi, W as REALTIME_FEATURE_VERSION, X as notifyForwarder, Y as linkRealtimeToHub, Z as presenceForwarder, _ as PlayerLite, a as ErrorBody, at as SocialCounts, b as PresenceKind, c as JoinInfo, d as Message, et as HubPresenceApi, f as MessagesPage, g as PlayerCard, h as Party, i as Counts, it as PlayerRef, j as RecentPlayer, k as RacerResult, l as Launch, m as NotifyPrefs, n as ChatMode, nt as OpenInviteOptions, o as FriendEntry, ot as SocialEvents, p as NotifyChange, q as RealtimeApi, r as Conversation, rt as PlayOnlineMethods, s as Invite, t as Audience, tt as HubSocialApi, u as LaunchTicket, v as Presence, w as RaceResult, x as RaceOutcome, y as PresenceInput, z as Suggestion } from "./shared/social.js";
|
|
11
11
|
import { $ as LeaderboardResult, A as OUTBOX_MAX_ENTRIES, B as Board, C as OfflineApi, D as OfflineListener, E as OfflineEventName, F as ProfilePatch, G as GameRecords, H as GameAnalytics, I as QueueOp, J as HubStatus, K as GlobalAnalytics, L as QueueOpInput, M as OfflineKindDefinition, N as ReplayContext, O as OfflineOp, P as CLIENT_VERSION_HEADER, Q as LeaderboardEntry, R as QueuedScoreOptions, S as SyncResult, T as OfflineEventDetails, U as GameInfo, V as BoardWithTop, W as GameLeaderboards, X as InventorySnapshot, Y as Inventory, Z as Json, _ as TradeNoteOptions, a as HubErrorDetails, at as SaveMeta, b as StatResult, c as Hub, ct as Stats, d as ClientSupport, dt as User, et as MeResponse, f as HubMenuControl, ft as EndpointFields, g as TradeListOptions, h as TradeId, ht as GamePayload, i as HubErrorCode, it as Save, j as OfflineHandler, k as OUTBOX_MAX_CHARS, l as createHub, lt as SubmitScoreOptions, m as TradeBundle, mt as EndpointReply, n as ContentRejectedError, nt as Profile, o as OfflineError, ot as SnapshotResponse, p as GrantBundle, pt as EndpointName, q as HubOptions, r as HubError, rt as ProfileSummary, s as UNSUPPORTED_BY_HUB, st as SortDir, t as HUB_CLIENT_VERSION, tt as Metrics, u as hub, ut as SubmitScoreResult, v as AuthResponse, w as OUTBOX_FULL_CODE, x as SyncConflict, y as ProfileUpdate, z as BufferedEvent } from "./shared/index.js";
|
|
12
|
-
export { type Anchor, type Audience, type AuthResponse, type AutoPauseOptions, type AxisDef, type AxisSide, type Board, type BoardWithTop, type BufferedEvent, type BusyOptions, CLIENT_VERSION_HEADER, type ChatMode, type ClientSupport, ContentRejectedError, type Conversation, type Counts, DAILY_SINGLETON_API, DAILY_START_EVENT, type DailyAll, type DailyChallenge, type DailyCompleteResponse, type DailyCompletion, type DailyCompletionMeta, type DailyCompletions, type DailyDefinition, type DailyEventDetail, type DailyGameStatus, type DailyHost, type DailyStartResponse, type DailyStatus, DailySystem, type DraggedSpot, type EdgeOffsets, type EndpointFields, type EndpointName, type EndpointReply, type ErrorBody, type FriendEntry, type GameAnalytics, type GameInfo, type GameLeaderboards, type GamePayload, type GameRecords, type GamepadMapping, type GlobalAnalytics, type GrantBundle, type GroupDef, HUB_CLIENT_VERSION, Hub, HubError, type HubErrorCode, type HubErrorDetails, type HubMenuControl, type HubMpApi, type HubNotifyApi, type HubOptions, type HubPresenceApi, type HubRaceApi, type HubRoom, type HubRoomsApi, type HubSocialApi, type HubStatus, INPUT_SINGLETON_API, type InputConfig, type InputDef, type InputEvents, type InputHost, type InputOptions, type InputOverrides, type InputReading, type InputSource, InputSystem, type InputSystemOptions, type Insets, type Inventory, type InventorySnapshot, type Invite, type InviteCreated, type InviteLink, type InviteLinkMethods, type InviteOptions, type InviteResult, type JoinInfo, type JoinInfoEvent, type JoinOptions, type Json, type Launch, type LaunchTicket, type LayoutBox, type LayoutItem, type LayoutOptions, type LeaderboardEntry, type LeaderboardResult, type MeResponse, type MenuBridge, type Message, type MessagesPage, type Metrics, type MouseMapping, type NavBlurEvent, type NavElement, type NavElementKind, type NavFocusEvent, type NavTarget, type NavigableDef, type Notice, type NotifyChange, type NotifyPrefs, OUTBOX_FULL_CODE, OUTBOX_MAX_CHARS, OUTBOX_MAX_ENTRIES, OfflineApi, OfflineError, type OfflineEventDetails, type OfflineEventName, type OfflineHandler, type OfflineKindDefinition, type OfflineListener, type OfflineOp, type OpenInviteOptions, Overlay, type OverlayEdge, type OverlayEvent, type OverlayListener, type OverlayReason, type PageInputControl, type Party, type PlayOnlineMethods, type PlayerCard, type PlayerLite, type PlayerRef, type Presence, type PresenceInput, type PresenceKind, type Profile, type ProfilePatch, type ProfileSummary, type ProfileUpdate, type QueueOp, type QueueOpInput, type QueuedScoreOptions, type REALTIME_FAILED_EVENT, type REALTIME_FEATURE_VERSION, type REALTIME_READY_EVENT, type REALTIME_SINGLETON_API, type RaceCreateOptions, type RaceDefinition, type RaceEvents, type RaceHistory, type RaceHistoryQuery, type RaceHistoryViewOptions, type RaceHudPlace, type RaceOutcome, type RaceParams, type RaceRecord, type RaceRecordPlayer, type RaceResult, type RaceResultPlayer, type RaceRuntimeApi, type RaceStart, type RaceStatValue, type RaceState, type RaceStats, type RaceStatusEvent, type Racer, type RacerResult, type RacerState, type RealtimeApi, type RealtimeErrorShape, type RealtimeHubLink, type RecentPlayer, type Rect, type Relation, type ReplayContext, type ReportInput, type ReportKind, type ReportReason, type RoomChatLine, type RoomCreateOptions, type RoomEvents, type RoomInfo, type RoomListOptions, type RoomMessage, type RoomReclaimMethods, type RoomSeat, type RoomSeatChange, type RoomSelf, type RoomSendOptions, type RoomState, type RoomStateChange, type RoomStateOptions, type Save, type SaveMeta, type SchemaOutput, type ServerEvents, type Snapshot, type SnapshotResponse, type SocialConfig, type SocialCounts, type SocialEvents, type SocialMe, type SortDir, type StatResult, type Stats, type SubmitScoreOptions, type SubmitScoreResult, type Suggestion, type SuggestionStatus, type SyncConflict, type SyncResult, type TouchMapping, type TradeBundle, type TradeId, type TradeListOptions, type TradeNoteOptions, UI_STACK_VERSION, UNSUPPORTED_BY_HUB, type UiStack, type UiStackHandoff, type User, type Vector, type VirtualControlType, type VirtualDef, type VirtualInputs, type VirtualOverride, boxesTouch, controlSize, createHub, type findRealtimeApi, getDaily, getInput, getUiStack, hub, isDailySystem, isInputSystem, isPageInputControl, type isRealtimeApi, isUiStack, layoutControls, type linkRealtimeToHub, type multiplayerForwarder as mp, type notifyForwarder as notify, parseInputOverrides, type presenceForwarder as presence, type raceForwarder as race, type roomsForwarder as rooms, type socialForwarder as social };
|
|
12
|
+
export { type Anchor, type Audience, type AuthResponse, type AutoPauseOptions, type AxisDef, type AxisSide, type Board, type BoardWithTop, type BufferedEvent, type BusyOptions, CLIENT_VERSION_HEADER, type ChatMode, type ClientSupport, ContentRejectedError, type Conversation, type Counts, DAILY_SINGLETON_API, DAILY_START_EVENT, type DailyAll, type DailyChallenge, type DailyCompleteResponse, type DailyCompletion, type DailyCompletionMeta, type DailyCompletions, type DailyDefinition, type DailyEventDetail, type DailyGameStatus, type DailyHost, type DailyStartResponse, type DailyStatus, DailySystem, type DraggedSpot, type EdgeOffsets, type EndpointFields, type EndpointName, type EndpointReply, type ErrorBody, FOCUS_RING_SHADOW, type FriendEntry, type GameAnalytics, type GameInfo, type GameLeaderboards, type GamePayload, type GameRecords, type GamepadMapping, type GlobalAnalytics, type GrantBundle, type GroupDef, HUB_CLIENT_VERSION, Hub, HubError, type HubErrorCode, type HubErrorDetails, type HubMenuControl, type HubMpApi, type HubNotifyApi, type HubOptions, type HubPresenceApi, type HubRaceApi, type HubRoom, type HubRoomsApi, type HubSocialApi, type HubStatus, INPUT_SINGLETON_API, type InputConfig, type InputDef, type InputEvents, type InputHost, type InputModality, type InputOptions, type InputOverrides, type InputReading, type InputSource, InputSystem, type InputSystemOptions, type Insets, type Inventory, type InventorySnapshot, type Invite, type InviteCreated, type InviteLink, type InviteLinkMethods, type InviteOptions, type InviteResult, type JoinInfo, type JoinInfoEvent, type JoinOptions, type Json, type Launch, type LaunchTicket, type LayoutBox, type LayoutItem, type LayoutOptions, type LeaderboardEntry, type LeaderboardResult, MODALITY_ATTRIBUTE, type MeResponse, type MenuBridge, type Message, type MessagesPage, type Metrics, type MouseMapping, type NavBlurEvent, type NavElement, type NavElementKind, type NavFocusEvent, type NavTarget, type NavigableDef, type Notice, type NotifyChange, type NotifyPrefs, OUTBOX_FULL_CODE, OUTBOX_MAX_CHARS, OUTBOX_MAX_ENTRIES, OfflineApi, OfflineError, type OfflineEventDetails, type OfflineEventName, type OfflineHandler, type OfflineKindDefinition, type OfflineListener, type OfflineOp, type OpenInviteOptions, Overlay, type OverlayEdge, type OverlayEvent, type OverlayListener, type OverlayReason, type PageInputControl, type Party, type PlayOnlineMethods, type PlayerCard, type PlayerLite, type PlayerRef, type Presence, type PresenceInput, type PresenceKind, type Profile, type ProfilePatch, type ProfileSummary, type ProfileUpdate, type QueueOp, type QueueOpInput, type QueuedScoreOptions, type REALTIME_FAILED_EVENT, type REALTIME_FEATURE_VERSION, type REALTIME_READY_EVENT, type REALTIME_SINGLETON_API, type RaceCreateOptions, type RaceDefinition, type RaceEvents, type RaceHistory, type RaceHistoryQuery, type RaceHistoryViewOptions, type RaceHudPlace, type RaceOutcome, type RaceParams, type RaceRecord, type RaceRecordPlayer, type RaceResult, type RaceResultPlayer, type RaceRuntimeApi, type RaceStart, type RaceStatValue, type RaceState, type RaceStats, type RaceStatusEvent, type Racer, type RacerResult, type RacerState, type RealtimeApi, type RealtimeErrorShape, type RealtimeHubLink, type RecentPlayer, type Rect, type Relation, type ReplayContext, type ReportInput, type ReportKind, type ReportReason, type RoomChatLine, type RoomCreateOptions, type RoomEvents, type RoomInfo, type RoomListOptions, type RoomMessage, type RoomReclaimMethods, type RoomSeat, type RoomSeatChange, type RoomSelf, type RoomSendOptions, type RoomState, type RoomStateChange, type RoomStateOptions, type Save, type SaveMeta, type SchemaOutput, type ServerEvents, type Snapshot, type SnapshotResponse, type SocialConfig, type SocialCounts, type SocialEvents, type SocialMe, type SortDir, type StatResult, type Stats, type SubmitScoreOptions, type SubmitScoreResult, type Suggestion, type SuggestionStatus, type SyncConflict, type SyncResult, type TouchMapping, type TradeBundle, type TradeId, type TradeListOptions, type TradeNoteOptions, UI_STACK_VERSION, UNSUPPORTED_BY_HUB, type UiStack, type UiStackHandoff, type User, type Vector, type VirtualControlType, type VirtualDef, type VirtualInputs, type VirtualOverride, boxesTouch, controlSize, createHub, type findRealtimeApi, getDaily, getInput, getUiStack, hub, isDailySystem, isInputSystem, isPageInputControl, type isRealtimeApi, isUiStack, layoutControls, type linkRealtimeToHub, type multiplayerForwarder as mp, type notifyForwarder as notify, parseInputOverrides, type presenceForwarder as presence, type raceForwarder as race, type roomsForwarder as rooms, type socialForwarder as social, trackInputModality };
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as DailySystem, i as DAILY_START_EVENT, n as getDaily, r as isDailySystem, t as DAILY_SINGLETON_API } from "./shared/daily.js";
|
|
2
2
|
import { t as HUB_CLIENT_VERSION } from "./shared/client-version.gen.js";
|
|
3
|
-
import { a as isPageInputControl, c as layoutControls, i as parseInputOverrides, l as boxesTouch, n as getInput, o as InputSystem, r as isInputSystem, s as Overlay, t as INPUT_SINGLETON_API, u as controlSize } from "./shared/input.js";
|
|
3
|
+
import { a as isPageInputControl, c as layoutControls, d as MODALITY_ATTRIBUTE, f as trackInputModality, i as parseInputOverrides, l as boxesTouch, n as getInput, o as InputSystem, p as FOCUS_RING_SHADOW, r as isInputSystem, s as Overlay, t as INPUT_SINGLETON_API, u as controlSize } from "./shared/input.js";
|
|
4
4
|
import { n as isUiStack, r as UI_STACK_VERSION, t as getUiStack } from "./shared/page-stack.js";
|
|
5
5
|
import { a as OUTBOX_FULL_CODE, c as OfflineApi, d as OfflineError, f as UNSUPPORTED_BY_HUB, i as CLIENT_VERSION_HEADER, l as ContentRejectedError, n as createHub, o as OUTBOX_MAX_CHARS, r as hub, s as OUTBOX_MAX_ENTRIES, t as Hub, u as HubError } from "./shared/src.js";
|
|
6
|
-
export { CLIENT_VERSION_HEADER, ContentRejectedError, DAILY_SINGLETON_API, DAILY_START_EVENT, DailySystem, HUB_CLIENT_VERSION, Hub, HubError, INPUT_SINGLETON_API, InputSystem, OUTBOX_FULL_CODE, OUTBOX_MAX_CHARS, OUTBOX_MAX_ENTRIES, OfflineApi, OfflineError, Overlay, UI_STACK_VERSION, UNSUPPORTED_BY_HUB, boxesTouch, controlSize, createHub, getDaily, getInput, getUiStack, hub, isDailySystem, isInputSystem, isPageInputControl, isUiStack, layoutControls, parseInputOverrides };
|
|
6
|
+
export { CLIENT_VERSION_HEADER, ContentRejectedError, DAILY_SINGLETON_API, DAILY_START_EVENT, DailySystem, FOCUS_RING_SHADOW, HUB_CLIENT_VERSION, Hub, HubError, INPUT_SINGLETON_API, InputSystem, MODALITY_ATTRIBUTE, OUTBOX_FULL_CODE, OUTBOX_MAX_CHARS, OUTBOX_MAX_ENTRIES, OfflineApi, OfflineError, Overlay, UI_STACK_VERSION, UNSUPPORTED_BY_HUB, boxesTouch, controlSize, createHub, getDaily, getInput, getUiStack, hub, isDailySystem, isInputSystem, isPageInputControl, isUiStack, layoutControls, parseInputOverrides, trackInputModality };
|
package/dist/input.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as
|
|
2
|
-
export { type Anchor, type AutoPauseOptions, type AxisDef, type AxisSide, type DraggedSpot, type EdgeOffsets, type GamepadMapping, type GroupDef, INPUT_SINGLETON_API, type InputConfig, type InputDef, type InputEvents, type InputHost, type InputOptions, type InputOverrides, type InputReading, type InputSource, InputSystem, type InputSystemOptions, type Insets, type LayoutBox, type LayoutItem, type LayoutOptions, type MenuBridge, type MouseMapping, type NavBlurEvent, type NavElement, type NavElementKind, type NavFocusEvent, type NavTarget, type NavigableDef, Overlay, type OverlayEdge, type OverlayEvent, type OverlayListener, type OverlayReason, type PageInputControl, type Rect, type TouchMapping, UI_STACK_VERSION, type UiStack, type UiStackHandoff, type Vector, type VirtualControlType, type VirtualDef, type VirtualInputs, type VirtualOverride, boxesTouch, controlSize, getInput, getUiStack, isInputSystem, isPageInputControl, isUiStack, layoutControls, parseInputOverrides };
|
|
1
|
+
import { $ as NavigableDef, A as PageInputControl, B as InputDef, C as INPUT_SINGLETON_API, D as parseInputOverrides, E as isInputSystem, F as DraggedSpot, G as InputSource, H as InputHost, I as EdgeOffsets, J as NavBlurEvent, K as MenuBridge, L as GamepadMapping, M as Anchor, N as AxisDef, O as InputSystem, P as AxisSide, Q as NavTarget, R as GroupDef, S as FOCUS_RING_SHADOW, T as getInput, U as InputOverrides, V as InputEvents, W as InputReading, X as NavElementKind, Y as NavElement, Z as NavFocusEvent, _ as boxesTouch, a as OverlayEdge, at as VirtualInputs, b as MODALITY_ATTRIBUTE, c as OverlayReason, d as LayoutOptions, et as Rect, f as layoutControls, g as LayoutItem, h as LayoutBox, i as AutoPauseOptions, it as VirtualDef, j as isPageInputControl, k as InputSystemOptions, l as UiStack, m as Insets, n as getUiStack, nt as Vector, o as OverlayEvent, ot as VirtualOverride, p as Overlay, q as MouseMapping, r as isUiStack, rt as VirtualControlType, s as OverlayListener, t as UI_STACK_VERSION, tt as TouchMapping, u as UiStackHandoff, v as controlSize, w as InputOptions, x as trackInputModality, y as InputModality, z as InputConfig } from "./shared/input.js";
|
|
2
|
+
export { type Anchor, type AutoPauseOptions, type AxisDef, type AxisSide, type DraggedSpot, type EdgeOffsets, FOCUS_RING_SHADOW, type GamepadMapping, type GroupDef, INPUT_SINGLETON_API, type InputConfig, type InputDef, type InputEvents, type InputHost, type InputModality, type InputOptions, type InputOverrides, type InputReading, type InputSource, InputSystem, type InputSystemOptions, type Insets, type LayoutBox, type LayoutItem, type LayoutOptions, MODALITY_ATTRIBUTE, type MenuBridge, type MouseMapping, type NavBlurEvent, type NavElement, type NavElementKind, type NavFocusEvent, type NavTarget, type NavigableDef, Overlay, type OverlayEdge, type OverlayEvent, type OverlayListener, type OverlayReason, type PageInputControl, type Rect, type TouchMapping, UI_STACK_VERSION, type UiStack, type UiStackHandoff, type Vector, type VirtualControlType, type VirtualDef, type VirtualInputs, type VirtualOverride, boxesTouch, controlSize, getInput, getUiStack, isInputSystem, isPageInputControl, isUiStack, layoutControls, parseInputOverrides, trackInputModality };
|
package/dist/input.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as isPageInputControl, c as layoutControls, i as parseInputOverrides, l as boxesTouch, n as getInput, o as InputSystem, r as isInputSystem, s as Overlay, t as INPUT_SINGLETON_API, u as controlSize } from "./shared/input.js";
|
|
1
|
+
import { a as isPageInputControl, c as layoutControls, d as MODALITY_ATTRIBUTE, f as trackInputModality, i as parseInputOverrides, l as boxesTouch, n as getInput, o as InputSystem, p as FOCUS_RING_SHADOW, r as isInputSystem, s as Overlay, t as INPUT_SINGLETON_API, u as controlSize } from "./shared/input.js";
|
|
2
2
|
import { n as isUiStack, r as UI_STACK_VERSION, t as getUiStack } from "./shared/page-stack.js";
|
|
3
|
-
export { INPUT_SINGLETON_API, InputSystem, Overlay, UI_STACK_VERSION, boxesTouch, controlSize, getInput, getUiStack, isInputSystem, isPageInputControl, isUiStack, layoutControls, parseInputOverrides };
|
|
3
|
+
export { FOCUS_RING_SHADOW, INPUT_SINGLETON_API, InputSystem, MODALITY_ATTRIBUTE, Overlay, UI_STACK_VERSION, boxesTouch, controlSize, getInput, getUiStack, isInputSystem, isPageInputControl, isUiStack, layoutControls, parseInputOverrides, trackInputModality };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
//#region src/core/version/client-version.gen.ts
|
|
2
2
|
/** This client's package version, sent as `x-hub-client` on REST calls and `client` in `hello`. */
|
|
3
|
-
const HUB_CLIENT_VERSION = "2.0.0-next.
|
|
3
|
+
const HUB_CLIENT_VERSION = "2.0.0-next.3";
|
|
4
4
|
//#endregion
|
|
5
5
|
export { HUB_CLIENT_VERSION as t };
|
|
6
6
|
|
package/dist/shared/daily.js
CHANGED
|
@@ -188,7 +188,7 @@ let claimedDaily = null;
|
|
|
188
188
|
function getDaily(host) {
|
|
189
189
|
claimedDaily ?? (claimedDaily = claimSingleton({
|
|
190
190
|
name: "daily",
|
|
191
|
-
version: "2.0.0-next.
|
|
191
|
+
version: "2.0.0-next.3",
|
|
192
192
|
api: 1,
|
|
193
193
|
create: () => new DailySystem(host),
|
|
194
194
|
isInstance: isDailySystem
|
package/dist/shared/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { s as DailySystem } from "./daily.js";
|
|
2
|
-
import {
|
|
2
|
+
import { O as InputSystem, n as getUiStack } from "./input.js";
|
|
3
3
|
import { o as multiplayerForwarder } from "./mp.js";
|
|
4
4
|
import { f as raceForwarder } from "./race.js";
|
|
5
5
|
import { n as roomsForwarder } from "./rooms.js";
|
|
@@ -979,7 +979,7 @@ declare class ContentRejectedError extends HubError {
|
|
|
979
979
|
//#endregion
|
|
980
980
|
//#region src/core/version/client-version.gen.d.ts
|
|
981
981
|
/** This client's package version, sent as `x-hub-client` on REST calls and `client` in `hello`. */
|
|
982
|
-
declare const HUB_CLIENT_VERSION = "2.0.0-next.
|
|
982
|
+
declare const HUB_CLIENT_VERSION = "2.0.0-next.3";
|
|
983
983
|
//#endregion
|
|
984
984
|
export { LeaderboardResult as $, OUTBOX_MAX_ENTRIES as A, Board$1 as B, OfflineApi as C, OfflineListener as D, OfflineEventName as E, ProfilePatch as F, GameRecords as G, GameAnalytics as H, QueueOp as I, HubStatus as J, GlobalAnalytics as K, QueueOpInput as L, OfflineKindDefinition as M, ReplayContext as N, OfflineOp as O, CLIENT_VERSION_HEADER as P, LeaderboardEntry as Q, QueuedScoreOptions as R, SyncResult as S, OfflineEventDetails as T, GameInfo$1 as U, BoardWithTop as V, GameLeaderboards as W, InventorySnapshot as X, Inventory$1 as Y, Json$1 as Z, TradeNoteOptions as _, HubErrorDetails as a, SaveMeta as at, StatResult as b, Hub as c, Stats$1 as ct, ClientSupport as d, User as dt, MeResponse as et, HubMenuControl as f, EndpointFields as ft, TradeListOptions as g, TradeId as h, GamePayload as ht, HubErrorCode as i, Save as it, OfflineHandler as j, OUTBOX_MAX_CHARS as k, createHub as l, SubmitScoreOptions as lt, TradeBundle as m, EndpointReply as mt, ContentRejectedError as n, Profile as nt, OfflineError as o, SnapshotResponse as ot, GrantBundle as p, EndpointName as pt, HubOptions as q, HubError as r, ProfileSummary as rt, UNSUPPORTED_BY_HUB as s, SortDir$1 as st, HUB_CLIENT_VERSION as t, Metrics$1 as tt, hub as u, SubmitScoreResult as ut, AuthResponse as v, OUTBOX_FULL_CODE as w, SyncConflict as x, ProfileUpdate as y, BufferedEvent as z };
|
|
985
985
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/shared/input.d.ts
CHANGED
|
@@ -375,6 +375,7 @@ declare class InputSystem implements ControlsPanelHost, PageInputControl {
|
|
|
375
375
|
private activeSource;
|
|
376
376
|
private isPageOwner;
|
|
377
377
|
private pageOwner;
|
|
378
|
+
private readonly modality;
|
|
378
379
|
constructor(host: InputHost, options?: InputSystemOptions);
|
|
379
380
|
/** Whether this page counts as a touch device. */
|
|
380
381
|
get touchDevice(): boolean;
|
|
@@ -491,11 +492,52 @@ declare function parseInputOverrides(saved: unknown): InputOverrides;
|
|
|
491
492
|
*/
|
|
492
493
|
declare function getInput(options?: InputOptions): InputSystem;
|
|
493
494
|
//#endregion
|
|
495
|
+
//#region src/input/focus-ring.d.ts
|
|
496
|
+
/**
|
|
497
|
+
* The hub's focus ring: a two-tone box-shadow (a dark gap, then a light ring)
|
|
498
|
+
* that follows the element's own border-radius and shows on light and dark
|
|
499
|
+
* buttons alike. Pages tune it with CSS variables:
|
|
500
|
+
* `--hub-focus-color` (the ring), `--hub-focus-inner` (the gap),
|
|
501
|
+
* `--hub-focus-width` and `--hub-focus-gap`.
|
|
502
|
+
*/
|
|
503
|
+
/** The ring as a `box-shadow` value. */
|
|
504
|
+
declare const FOCUS_RING_SHADOW = "0 0 0 var(--hub-focus-gap, 2px) var(--hub-focus-inner, rgba(13, 15, 20, 0.85)), 0 0 0 calc(var(--hub-focus-gap, 2px) + var(--hub-focus-width, 3px)) var(--hub-focus-color, #fff)";
|
|
505
|
+
//#endregion
|
|
506
|
+
//#region src/input/modality.d.ts
|
|
507
|
+
/** `keys`: keyboard or gamepad. `pointer`: mouse or pen. `touch`: a finger. */
|
|
508
|
+
type InputModality = 'keys' | 'pointer' | 'touch';
|
|
509
|
+
/** The `<html>` attribute that holds the modality. */
|
|
510
|
+
declare const MODALITY_ATTRIBUTE = "data-hub-input";
|
|
511
|
+
/** Where the modality is stored: `<html>`, or a fake in tests. */
|
|
512
|
+
interface ModalityRoot {
|
|
513
|
+
getAttribute(name: string): string | null;
|
|
514
|
+
setAttribute(name: string, value: string): void;
|
|
515
|
+
}
|
|
516
|
+
/** Reads and writes the page's modality attribute. */
|
|
517
|
+
declare class ModalityTracker {
|
|
518
|
+
private readonly root;
|
|
519
|
+
/** Start at `initial` unless another copy already set the attribute. */
|
|
520
|
+
constructor(root: ModalityRoot, initial: InputModality);
|
|
521
|
+
/** The last modality used. */
|
|
522
|
+
get current(): InputModality;
|
|
523
|
+
/** Whether focus should show: the last input was a keyboard or gamepad. */
|
|
524
|
+
get showsFocus(): boolean;
|
|
525
|
+
/** Record the modality the player just used. */
|
|
526
|
+
set(modality: InputModality): void;
|
|
527
|
+
/** A key went down (`isTyping`: in a text field). */
|
|
528
|
+
noteKey(key: string, isTyping: boolean): void;
|
|
529
|
+
/** A pointer went down. */
|
|
530
|
+
notePointer(pointerType: string): void;
|
|
531
|
+
private readAttribute;
|
|
532
|
+
}
|
|
533
|
+
/** Track the page's modality (once per bundle) and add the focus styles (once per page). */
|
|
534
|
+
declare function trackInputModality(): ModalityTracker;
|
|
535
|
+
//#endregion
|
|
494
536
|
//#region src/input/nav-state.d.ts
|
|
495
537
|
/** What a navigable list draws with (the overlay). */
|
|
496
538
|
interface NavHighlighter {
|
|
497
|
-
/** Ring the highlighted element. */
|
|
498
|
-
showHighlight(bounds: Rect): void;
|
|
539
|
+
/** Ring the highlighted element, following its corner radius (a CSS `border-radius`, or empty). */
|
|
540
|
+
showHighlight(bounds: Rect, radius: string): void;
|
|
499
541
|
/** Remove the ring. */
|
|
500
542
|
hideHighlight(): void;
|
|
501
543
|
/** Open the on-screen keyboard for a text field. */
|
|
@@ -591,8 +633,8 @@ declare class Overlay implements NavHighlighter {
|
|
|
591
633
|
setInsets(insets: Partial<Insets>): void;
|
|
592
634
|
/** Re-place every control for the current viewport, keeping the player's dragged spots. */
|
|
593
635
|
layout(): void;
|
|
594
|
-
/** Ring the highlighted element. */
|
|
595
|
-
showHighlight(bounds: Rect): void;
|
|
636
|
+
/** Ring the highlighted element, for keyboard and gamepad players only (never after a tap or click). */
|
|
637
|
+
showHighlight(bounds: Rect, radius: string): void;
|
|
596
638
|
/** Remove the ring. */
|
|
597
639
|
hideHighlight(): void;
|
|
598
640
|
/** Open the on-screen keyboard for a text field. */
|
|
@@ -726,5 +768,5 @@ declare function getUiStack(): UiStack;
|
|
|
726
768
|
/** Bump when the UiStack contract gains behaviour; idle older instances are replaced. */
|
|
727
769
|
declare const UI_STACK_VERSION = 1;
|
|
728
770
|
//#endregion
|
|
729
|
-
export {
|
|
771
|
+
export { NavigableDef as $, PageInputControl as A, InputDef as B, INPUT_SINGLETON_API as C, parseInputOverrides as D, isInputSystem as E, DraggedSpot as F, InputSource as G, InputHost as H, EdgeOffsets as I, NavBlurEvent as J, MenuBridge as K, GamepadMapping as L, Anchor as M, AxisDef as N, InputSystem as O, AxisSide as P, NavTarget as Q, GroupDef as R, FOCUS_RING_SHADOW as S, getInput as T, InputOverrides as U, InputEvents as V, InputReading as W, NavElementKind as X, NavElement as Y, NavFocusEvent as Z, boxesTouch as _, OverlayEdge as a, VirtualInputs as at, MODALITY_ATTRIBUTE as b, OverlayReason as c, LayoutOptions as d, Rect as et, layoutControls as f, LayoutItem as g, LayoutBox as h, AutoPauseOptions as i, VirtualDef as it, isPageInputControl as j, InputSystemOptions as k, UiStack as l, Insets as m, getUiStack as n, Vector as nt, OverlayEvent as o, VirtualOverride as ot, Overlay as p, MouseMapping as q, isUiStack as r, VirtualControlType as rt, OverlayListener as s, UI_STACK_VERSION as t, TouchMapping as tt, UiStackHandoff as u, controlSize as v, InputOptions as w, trackInputModality as x, InputModality as y, InputConfig as z };
|
|
730
772
|
//# sourceMappingURL=input.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.d.ts","names":[],"sources":["../../src/input/types.ts","../../src/overlay/controls-panel.ts","../../src/input/page-control.ts","../../src/input/input-system.ts","../../src/input/page-input.ts","../../src/input/nav-state.ts","../../src/overlay/layout-geometry.ts","../../src/overlay/virtual-controls.ts","../../src/overlay/overlay.ts","../../src/overlay/layout.ts","../../src/uistack/types.ts","../../src/uistack/page-stack.ts","../../src/uistack/ui-stack.ts"],"mappings":";;;;;;;KAOY;;KAGA;;UAGK;;EAEf;;EAEA;;EAEA;;EAEA,aAAa;;EAEb;;EAEA,WAAW;;EAEX;;EAEA,QAAQ;;;UAIO;;EAEf;;EAEA,gBAAgB;;;UAID;;EAEf;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,aAAa;;;UAIE;;EAEf;;EAEA,QAAQ;;EAER,UAAU;;EAEV,QAAQ;;;;;;UAOO;;EAEf;;EAEA;;;KAIU;;KAMA;;UAGK;;EAEf;;EAEA;;EAEA;;EAEA;;;UAIe;;EAEf;;EAEA;;EAEA;;EAEA;;EAEA;;;UAIe;;EAEf;;EAEA,MAAM;;EAEN,OAAO;;;;;EAKP,MAAM;;;;;;EAMN;IAAW;IAAY;;;EAEvB;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,SAAS;;;UAIM;;EAEf;;EAEA;;EAEA;;EAEA;;;KAIU;;UAGK;;EAEf;;EAEA,OAAO;;EAEP,KAAK;;EAEL,kBAAkB;;EAElB;;EAEA;;EAEA;;;KAIU,YAAY,cAAc;;UAGrB;;EAEf;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,gBAAgB;;EAEhB;;;UAIe;;EAEf,QAAQ,eAAe;;EAEvB,OAAO,eAAe;;EAEtB,UAAU;;EAEV,YAAY;;EAEZ;;;UAIe;;EAEf,QAAQ,eAAe;;;UAIR;;EAEf;;EAEA;;EAEA;;EAEA;;;UAIe;;EAEf;;EAEA;;EAEA;;;UAIe;;EAEf;;EAEA;;;KAIU,kBAAkB,QAAQ,cAAc;;UAGnC;;EAEf,WAAW,eAAe,QAAQ;;EAElC,UAAU,eAAe;;EAEzB;;;UAIe;;EAEf;;EAEA;;EAEA;;EAEA,MAAM;;;UAIS;;EAEf;;EAEA,KAAK;;EAEL,OAAO;;EAEP;;;UAIe;;EAEf;;EAEA;;;UAIe;;EAEf,OAAO;;EAEP,MAAM;;EAEN,KAAK;;EAEL,cAAc;;EAEd,UAAU;;;UAIK;;WAEN;;EAET,iBAAiB;;EAEjB,cAAc,WAAW;;;;;UChUV;;WAEN;;EAET,YAAY;;EAEZ,kBAAkB;;EAElB,OAAO,mBAAmB,OAAO,QAAQ;;EAEzC;;EAEA,aAAa;;;;;UCVE;;WAEN;;EAET,WAAW,QAAQ;;EAGnB,kBAAkB;;EAElB;;EAEA,UAAU;;EAEV,OAAO;;EAEP,QAAQ;;EAER,aAAa,0BAA0B,cAAc;IAAY;;;EAEjE;;EAEA,aAAa,OAAO;;;iBAQN,mBAAmB,qBAAqB,aAAa;;;;
|
|
1
|
+
{"version":3,"file":"input.d.ts","names":[],"sources":["../../src/input/types.ts","../../src/overlay/controls-panel.ts","../../src/input/page-control.ts","../../src/input/input-system.ts","../../src/input/page-input.ts","../../src/input/focus-ring.ts","../../src/input/modality.ts","../../src/input/nav-state.ts","../../src/overlay/layout-geometry.ts","../../src/overlay/virtual-controls.ts","../../src/overlay/overlay.ts","../../src/overlay/layout.ts","../../src/uistack/types.ts","../../src/uistack/page-stack.ts","../../src/uistack/ui-stack.ts"],"mappings":"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"}
|
package/dist/shared/input.js
CHANGED
|
@@ -493,6 +493,116 @@ var InputRegistry = class {
|
|
|
493
493
|
}
|
|
494
494
|
};
|
|
495
495
|
//#endregion
|
|
496
|
+
//#region src/input/focus-ring.ts
|
|
497
|
+
/**
|
|
498
|
+
* The hub's focus ring: a two-tone box-shadow (a dark gap, then a light ring)
|
|
499
|
+
* that follows the element's own border-radius and shows on light and dark
|
|
500
|
+
* buttons alike. Pages tune it with CSS variables:
|
|
501
|
+
* `--hub-focus-color` (the ring), `--hub-focus-inner` (the gap),
|
|
502
|
+
* `--hub-focus-width` and `--hub-focus-gap`.
|
|
503
|
+
*/
|
|
504
|
+
const GAP = "var(--hub-focus-gap, 2px)";
|
|
505
|
+
/** The ring as a `box-shadow` value. */
|
|
506
|
+
const FOCUS_RING_SHADOW = `0 0 0 ${GAP} var(--hub-focus-inner, rgba(13, 15, 20, 0.85)), 0 0 0 calc(${GAP} + var(--hub-focus-width, 3px)) var(--hub-focus-color, #fff)`;
|
|
507
|
+
//#endregion
|
|
508
|
+
//#region src/input/modality.ts
|
|
509
|
+
/**
|
|
510
|
+
* Which kind of input the player used last, published as `data-hub-input` on
|
|
511
|
+
* `<html>` so focus styles show only to keyboard and gamepad players: a tap or
|
|
512
|
+
* click never leaves a ring behind, and touch devices show none at all. The
|
|
513
|
+
* attribute is the shared state, so every bundle's copy of the client agrees.
|
|
514
|
+
*/
|
|
515
|
+
/** The `<html>` attribute that holds the modality. */
|
|
516
|
+
const MODALITY_ATTRIBUTE = "data-hub-input";
|
|
517
|
+
const STYLE_ID = "hub-focus-style";
|
|
518
|
+
const MODIFIER_KEYS = /* @__PURE__ */ new Set([
|
|
519
|
+
"Shift",
|
|
520
|
+
"Control",
|
|
521
|
+
"Alt",
|
|
522
|
+
"Meta",
|
|
523
|
+
"AltGraph",
|
|
524
|
+
"CapsLock"
|
|
525
|
+
]);
|
|
526
|
+
const MODALITIES = [
|
|
527
|
+
"keys",
|
|
528
|
+
"pointer",
|
|
529
|
+
"touch"
|
|
530
|
+
];
|
|
531
|
+
/**
|
|
532
|
+
* The page focus styles: the gamepad highlight (`gp-focus`) for keyboard and
|
|
533
|
+
* gamepad players only, and no browser focus ring on buttons after a tap.
|
|
534
|
+
*/
|
|
535
|
+
const PAGE_FOCUS_CSS = `html[${MODALITY_ATTRIBUTE}="keys"] .gp-focus{outline:none !important;box-shadow:${FOCUS_RING_SHADOW} !important;}
|
|
536
|
+
html[${MODALITY_ATTRIBUTE}="touch"] :is(button,a,summary,[role="button"],[tabindex]):focus{outline:none;}`;
|
|
537
|
+
/** The modality a pointer event's `pointerType` implies. */
|
|
538
|
+
function modalityOfPointer(pointerType) {
|
|
539
|
+
return pointerType === "touch" ? "touch" : "pointer";
|
|
540
|
+
}
|
|
541
|
+
/** The modality a key press implies, or `null` when it says nothing (a lone modifier, typing in a field). */
|
|
542
|
+
function modalityOfKey(key, isTyping) {
|
|
543
|
+
if (MODIFIER_KEYS.has(key)) return null;
|
|
544
|
+
return isTyping && key !== "Tab" ? null : "keys";
|
|
545
|
+
}
|
|
546
|
+
/** Reads and writes the page's modality attribute. */
|
|
547
|
+
var ModalityTracker = class {
|
|
548
|
+
/** Start at `initial` unless another copy already set the attribute. */
|
|
549
|
+
constructor(root, initial) {
|
|
550
|
+
_defineProperty(this, "root", void 0);
|
|
551
|
+
this.root = root;
|
|
552
|
+
if (this.readAttribute() === null) this.set(initial);
|
|
553
|
+
}
|
|
554
|
+
/** The last modality used. */
|
|
555
|
+
get current() {
|
|
556
|
+
return this.readAttribute() ?? "pointer";
|
|
557
|
+
}
|
|
558
|
+
/** Whether focus should show: the last input was a keyboard or gamepad. */
|
|
559
|
+
get showsFocus() {
|
|
560
|
+
return this.current === "keys";
|
|
561
|
+
}
|
|
562
|
+
/** Record the modality the player just used. */
|
|
563
|
+
set(modality) {
|
|
564
|
+
if (this.readAttribute() !== modality) this.root.setAttribute(MODALITY_ATTRIBUTE, modality);
|
|
565
|
+
}
|
|
566
|
+
/** A key went down (`isTyping`: in a text field). */
|
|
567
|
+
noteKey(key, isTyping) {
|
|
568
|
+
const modality = modalityOfKey(key, isTyping);
|
|
569
|
+
if (modality !== null) this.set(modality);
|
|
570
|
+
}
|
|
571
|
+
/** A pointer went down. */
|
|
572
|
+
notePointer(pointerType) {
|
|
573
|
+
this.set(modalityOfPointer(pointerType));
|
|
574
|
+
}
|
|
575
|
+
readAttribute() {
|
|
576
|
+
const value = this.root.getAttribute(MODALITY_ATTRIBUTE);
|
|
577
|
+
return MODALITIES.find((modality) => modality === value) ?? null;
|
|
578
|
+
}
|
|
579
|
+
};
|
|
580
|
+
let pageTracker = null;
|
|
581
|
+
/** Track the page's modality (once per bundle) and add the focus styles (once per page). */
|
|
582
|
+
function trackInputModality() {
|
|
583
|
+
if (pageTracker !== null) return pageTracker;
|
|
584
|
+
const root = document.documentElement;
|
|
585
|
+
const isTouchDevice = typeof matchMedia === "function" && matchMedia("(hover: none) and (pointer: coarse)").matches;
|
|
586
|
+
const isFirstCopy = root.getAttribute(MODALITY_ATTRIBUTE) === null;
|
|
587
|
+
const tracker = new ModalityTracker(root, isTouchDevice ? "touch" : "pointer");
|
|
588
|
+
pageTracker = tracker;
|
|
589
|
+
if (isFirstCopy) {
|
|
590
|
+
document.addEventListener("keydown", (event) => {
|
|
591
|
+
tracker.noteKey(event.key, isTypingTarget(event.target));
|
|
592
|
+
}, true);
|
|
593
|
+
document.addEventListener("pointerdown", (event) => {
|
|
594
|
+
tracker.notePointer(event.pointerType);
|
|
595
|
+
}, true);
|
|
596
|
+
}
|
|
597
|
+
if (document.getElementById(STYLE_ID) === null) {
|
|
598
|
+
const style = document.createElement("style");
|
|
599
|
+
style.id = STYLE_ID;
|
|
600
|
+
style.textContent = PAGE_FOCUS_CSS;
|
|
601
|
+
document.head.appendChild(style);
|
|
602
|
+
}
|
|
603
|
+
return tracker;
|
|
604
|
+
}
|
|
605
|
+
//#endregion
|
|
496
606
|
//#region src/input/legacy-controls.ts
|
|
497
607
|
/**
|
|
498
608
|
* `game.controls` (`window.__HUB__.controls`): the gamepad-to-keyboard map a
|
|
@@ -607,6 +717,10 @@ function boundsOf(element) {
|
|
|
607
717
|
height: 0
|
|
608
718
|
} : rectOf(element.el);
|
|
609
719
|
}
|
|
720
|
+
/** A navigable element's CSS corner radius, so the ring can follow it (empty for a non-DOM element). */
|
|
721
|
+
function radiusOf(element) {
|
|
722
|
+
return element.el === void 0 ? "" : getComputedStyle(element.el).borderRadius;
|
|
723
|
+
}
|
|
610
724
|
/** The text field a navigable element edits, if it is one. */
|
|
611
725
|
function textFieldOf(element) {
|
|
612
726
|
return element.el instanceof HTMLInputElement || element.el instanceof HTMLTextAreaElement ? element.el : null;
|
|
@@ -687,12 +801,14 @@ var NavState = class {
|
|
|
687
801
|
this.elements = this.resolve();
|
|
688
802
|
this.position(highlighter);
|
|
689
803
|
}
|
|
690
|
-
/** Move the ring to the highlighted element (or hide it). */
|
|
804
|
+
/** Move the ring to the highlighted element (or hide it), following keyboard focus (Tab) within the list. */
|
|
691
805
|
position(highlighter) {
|
|
692
806
|
if (highlighter === null) return;
|
|
807
|
+
const focused = this.elements.findIndex((element) => element.el !== void 0 && element.el === document.activeElement);
|
|
808
|
+
if (focused >= 0) this.index = focused;
|
|
693
809
|
const current = this.elements[this.index];
|
|
694
810
|
if (current === void 0) highlighter.hideHighlight();
|
|
695
|
-
else highlighter.showHighlight(boundsOf(current));
|
|
811
|
+
else highlighter.showHighlight(boundsOf(current), radiusOf(current));
|
|
696
812
|
}
|
|
697
813
|
resolve() {
|
|
698
814
|
return this.queryElements().map((target) => target instanceof HTMLElement ? {
|
|
@@ -1540,8 +1656,8 @@ const OVERLAY_CSS = `
|
|
|
1540
1656
|
:host(.editing) .edit-bar .btn { margin: 0; }
|
|
1541
1657
|
.safe-probe { position: fixed; left: 0; top: 0; width: 0; height: 0; visibility: hidden; pointer-events: none;
|
|
1542
1658
|
padding: env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px) env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px); }
|
|
1543
|
-
.ring { position: fixed; pointer-events: none; z-index: 2147483200;
|
|
1544
|
-
|
|
1659
|
+
.ring { position: fixed; pointer-events: none; z-index: 2147483200; box-shadow: ${FOCUS_RING_SHADOW};
|
|
1660
|
+
transition: left .08s, top .08s, width .08s, height .08s; }
|
|
1545
1661
|
.ring[hidden] { display: none; }
|
|
1546
1662
|
.kb { position: fixed; left: 0; right: 0; bottom: 0; z-index: 2147483400; background: #0d0f14ee; padding: 10px;
|
|
1547
1663
|
pointer-events: auto; border-top: 1px solid #2a3142; }
|
|
@@ -1550,7 +1666,7 @@ const OVERLAY_CSS = `
|
|
|
1550
1666
|
.kb .k { flex: 1; min-width: 0; max-width: 64px; height: 46px; border-radius: 8px; border: 1px solid #2a3142;
|
|
1551
1667
|
background: #11141c; color: #e8e6df; font: 16px monospace; cursor: pointer; }
|
|
1552
1668
|
.kb .k.space { max-width: 280px; } .kb .k.wide { max-width: 90px; }
|
|
1553
|
-
.kb .k.kfocus {
|
|
1669
|
+
.kb .k.kfocus { box-shadow: ${FOCUS_RING_SHADOW}; }
|
|
1554
1670
|
.panel { position: fixed; inset: 0; z-index: 2147483500; display: grid; place-items: center; background: rgba(0,0,0,.6); pointer-events: auto;
|
|
1555
1671
|
font-family: 'Space Mono', ui-monospace, monospace; }
|
|
1556
1672
|
.panel-card { background: #0d0f14; color: #e8e6df; border: 1px solid #2a3142; border-radius: 12px; padding: 18px;
|
|
@@ -1897,9 +2013,10 @@ var Overlay = class {
|
|
|
1897
2013
|
if (box !== void 0) placeAt(control.element, box.x, box.y);
|
|
1898
2014
|
}
|
|
1899
2015
|
}
|
|
1900
|
-
/** Ring the highlighted element. */
|
|
1901
|
-
showHighlight(bounds) {
|
|
1902
|
-
this.ring.hidden =
|
|
2016
|
+
/** Ring the highlighted element, for keyboard and gamepad players only (never after a tap or click). */
|
|
2017
|
+
showHighlight(bounds, radius) {
|
|
2018
|
+
this.ring.hidden = !trackInputModality().showsFocus;
|
|
2019
|
+
this.ring.style.borderRadius = radius;
|
|
1903
2020
|
this.ring.style.left = `${String(bounds.x)}px`;
|
|
1904
2021
|
this.ring.style.top = `${String(bounds.y)}px`;
|
|
1905
2022
|
this.ring.style.width = `${String(bounds.width)}px`;
|
|
@@ -2104,9 +2221,8 @@ var PlayerRemaps = class {
|
|
|
2104
2221
|
//#region src/input/zero-config.ts
|
|
2105
2222
|
/** Synthetic keys stay pressed past half deflection. */
|
|
2106
2223
|
const SYNTH_DEADZONE = .5;
|
|
2224
|
+
/** The catalog tile highlight; its style (keyboard and gamepad players only) is in `modality.ts`. */
|
|
2107
2225
|
const FOCUS_CLASS = "gp-focus";
|
|
2108
|
-
const FOCUS_STYLE_ID = "gp-focus-style";
|
|
2109
|
-
const FOCUS_CSS = ".gp-focus{outline:3px solid #ff5f3b !important;outline-offset:2px;border-radius:4px;}";
|
|
2110
2226
|
/** `KeyboardEvent.code` → its `key` and legacy `keyCode`. */
|
|
2111
2227
|
const KEY_FOR_CODE = /* @__PURE__ */ new Map([
|
|
2112
2228
|
["ArrowUp", ["ArrowUp", 38]],
|
|
@@ -2142,14 +2258,6 @@ function dispatchKey(type, code) {
|
|
|
2142
2258
|
Object.defineProperty(event, "which", { get: () => keyCode });
|
|
2143
2259
|
target.dispatchEvent(event);
|
|
2144
2260
|
}
|
|
2145
|
-
/** Add the highlight style to the page once. */
|
|
2146
|
-
function ensureFocusStyle() {
|
|
2147
|
-
if (document.getElementById(FOCUS_STYLE_ID) !== null) return;
|
|
2148
|
-
const style = document.createElement("style");
|
|
2149
|
-
style.id = FOCUS_STYLE_ID;
|
|
2150
|
-
style.textContent = FOCUS_CSS;
|
|
2151
|
-
document.head.appendChild(style);
|
|
2152
|
-
}
|
|
2153
2261
|
/** The keys each pad holds down, by pad index. */
|
|
2154
2262
|
const heldCodes = /* @__PURE__ */ new Map();
|
|
2155
2263
|
function releaseAllKeys() {
|
|
@@ -2238,7 +2346,6 @@ function navigateCatalog(frame) {
|
|
|
2238
2346
|
/** One frame of the zero-config fallback. */
|
|
2239
2347
|
function runZeroConfigFrame(frame) {
|
|
2240
2348
|
if (frame.gamepads.length === 0) return;
|
|
2241
|
-
ensureFocusStyle();
|
|
2242
2349
|
if (frame.slug === null) navigateCatalog(frame);
|
|
2243
2350
|
else synthesizeKeys(frame);
|
|
2244
2351
|
}
|
|
@@ -2266,6 +2373,7 @@ var InputSystem = class {
|
|
|
2266
2373
|
_defineProperty(this, "activeSource", "keyboard");
|
|
2267
2374
|
_defineProperty(this, "isPageOwner", void 0);
|
|
2268
2375
|
_defineProperty(this, "pageOwner", null);
|
|
2376
|
+
_defineProperty(this, "modality", typeof document === "undefined" ? null : trackInputModality());
|
|
2269
2377
|
this.host = host;
|
|
2270
2378
|
this.options = options;
|
|
2271
2379
|
this.isPageOwner = options.isPageOwner ?? true;
|
|
@@ -2500,7 +2608,10 @@ var InputSystem = class {
|
|
|
2500
2608
|
this.devices.frame += 1;
|
|
2501
2609
|
const { isConnected, hasActivity } = this.devices.pollGamepads();
|
|
2502
2610
|
this.controls.isGamepadConnected = isConnected;
|
|
2503
|
-
if (hasActivity)
|
|
2611
|
+
if (hasActivity) {
|
|
2612
|
+
this.setSource("gamepad");
|
|
2613
|
+
this.modality?.set("keys");
|
|
2614
|
+
}
|
|
2504
2615
|
if (this.isPageOwner) this.driveFrame();
|
|
2505
2616
|
else this.registry.sample(this.devices, this.activeSource);
|
|
2506
2617
|
this.devices.decay();
|
|
@@ -2718,6 +2829,6 @@ function getInput(options = {}) {
|
|
|
2718
2829
|
return claimedInput;
|
|
2719
2830
|
}
|
|
2720
2831
|
//#endregion
|
|
2721
|
-
export { isPageInputControl as a, layoutControls as c, parseInputOverrides as i, boxesTouch as l, getInput as n, InputSystem as o, isInputSystem as r, Overlay as s, INPUT_SINGLETON_API as t, controlSize as u };
|
|
2832
|
+
export { isPageInputControl as a, layoutControls as c, MODALITY_ATTRIBUTE as d, trackInputModality as f, parseInputOverrides as i, boxesTouch as l, getInput as n, InputSystem as o, FOCUS_RING_SHADOW as p, isInputSystem as r, Overlay as s, INPUT_SINGLETON_API as t, controlSize as u };
|
|
2722
2833
|
|
|
2723
2834
|
//# sourceMappingURL=input.js.map
|
package/dist/shared/input.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.js","names":[],"sources":["../../src/input/gamepad.ts","../../src/input/device-state.ts","../../src/input/edges.ts","../../src/input/input-events.ts","../../src/input/source-values.ts","../../src/input/input-registry.ts","../../src/input/legacy-controls.ts","../../src/input/spatial.ts","../../src/input/nav-state.ts","../../src/input/navigator.ts","../../src/overlay/controls-panel.ts","../../src/overlay/layout-clusters.ts","../../src/overlay/layout-geometry.ts","../../src/overlay/layout.ts","../../src/overlay/listener-scope.ts","../../src/overlay/on-screen-keyboard.ts","../../src/overlay/styles.ts","../../src/overlay/virtual-controls.ts","../../src/overlay/overlay.ts","../../src/input/on-screen-controls.ts","../../src/input/player-remaps.ts","../../src/input/zero-config.ts","../../src/input/input-system.ts","../../src/input/page-control.ts","../../src/input/page-input.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"input.js","names":[],"sources":["../../src/input/gamepad.ts","../../src/input/device-state.ts","../../src/input/edges.ts","../../src/input/input-events.ts","../../src/input/source-values.ts","../../src/input/input-registry.ts","../../src/input/focus-ring.ts","../../src/input/modality.ts","../../src/input/legacy-controls.ts","../../src/input/spatial.ts","../../src/input/nav-state.ts","../../src/input/navigator.ts","../../src/overlay/controls-panel.ts","../../src/overlay/layout-clusters.ts","../../src/overlay/layout-geometry.ts","../../src/overlay/layout.ts","../../src/overlay/listener-scope.ts","../../src/overlay/on-screen-keyboard.ts","../../src/overlay/styles.ts","../../src/overlay/virtual-controls.ts","../../src/overlay/overlay.ts","../../src/input/on-screen-controls.ts","../../src/input/player-remaps.ts","../../src/input/zero-config.ts","../../src/input/input-system.ts","../../src/input/page-control.ts","../../src/input/page-input.ts"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@diffenderfer-games/hub",
|
|
3
|
-
"version": "2.0.0-next.
|
|
3
|
+
"version": "2.0.0-next.3",
|
|
4
4
|
"description": "The diffenderfer.games hub client for games: accounts, saves, stats, leaderboards, inventory, daily challenges, the input system and the social/multiplayer forwarders, typed from the hub contract.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
},
|
|
82
82
|
"dependencies": {
|
|
83
83
|
"@ayepi/core": "0.4.1",
|
|
84
|
-
"@diffenderfer-games/hub-contract": "2.0.0-next.
|
|
84
|
+
"@diffenderfer-games/hub-contract": "2.0.0-next.3"
|
|
85
85
|
},
|
|
86
86
|
"publishConfig": {
|
|
87
87
|
"access": "public"
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// Generated by tools/hub-client/generate.ts. Do not edit; run `npm run gen:hub-client` in next/.
|
|
2
2
|
/** This client's package version, sent as `x-hub-client` on REST calls and `client` in `hello`. */
|
|
3
|
-
export const HUB_CLIENT_VERSION = '2.0.0-next.
|
|
3
|
+
export const HUB_CLIENT_VERSION = '2.0.0-next.3';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The hub's focus ring: a two-tone box-shadow (a dark gap, then a light ring)
|
|
3
|
+
* that follows the element's own border-radius and shows on light and dark
|
|
4
|
+
* buttons alike. Pages tune it with CSS variables:
|
|
5
|
+
* `--hub-focus-color` (the ring), `--hub-focus-inner` (the gap),
|
|
6
|
+
* `--hub-focus-width` and `--hub-focus-gap`.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
const GAP = 'var(--hub-focus-gap, 2px)';
|
|
10
|
+
const WIDTH = 'var(--hub-focus-width, 3px)';
|
|
11
|
+
|
|
12
|
+
/** The ring as a `box-shadow` value. */
|
|
13
|
+
export const FOCUS_RING_SHADOW = `0 0 0 ${GAP} var(--hub-focus-inner, rgba(13, 15, 20, 0.85)), 0 0 0 calc(${GAP} + ${WIDTH}) var(--hub-focus-color, #fff)`;
|
|
@@ -13,6 +13,8 @@ import { RepeatingEdges, RisingEdges } from './edges';
|
|
|
13
13
|
import { isAnyPadButtonPressed, PAD_BUTTON } from './gamepad';
|
|
14
14
|
import { InputEventHub } from './input-events';
|
|
15
15
|
import { InputRegistry } from './input-registry';
|
|
16
|
+
import { trackInputModality } from './modality';
|
|
17
|
+
import type { ModalityTracker } from './modality';
|
|
16
18
|
import { parseLegacyControls } from './legacy-controls';
|
|
17
19
|
import type { LegacyControls } from './legacy-controls';
|
|
18
20
|
import { Navigator } from './navigator';
|
|
@@ -56,6 +58,7 @@ export class InputSystem implements ControlsPanelHost, PageInputControl {
|
|
|
56
58
|
private activeSource: InputSource = 'keyboard';
|
|
57
59
|
private isPageOwner: boolean;
|
|
58
60
|
private pageOwner: PageInputControl | null = null;
|
|
61
|
+
private readonly modality: ModalityTracker | null = typeof document === 'undefined' ? null : trackInputModality();
|
|
59
62
|
|
|
60
63
|
constructor(host: InputHost, options: InputSystemOptions = {}) {
|
|
61
64
|
this.host = host;
|
|
@@ -352,6 +355,7 @@ export class InputSystem implements ControlsPanelHost, PageInputControl {
|
|
|
352
355
|
this.controls.isGamepadConnected = isConnected;
|
|
353
356
|
if (hasActivity) {
|
|
354
357
|
this.setSource('gamepad');
|
|
358
|
+
this.modality?.set('keys');
|
|
355
359
|
}
|
|
356
360
|
if (this.isPageOwner) {
|
|
357
361
|
this.driveFrame();
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which kind of input the player used last, published as `data-hub-input` on
|
|
3
|
+
* `<html>` so focus styles show only to keyboard and gamepad players: a tap or
|
|
4
|
+
* click never leaves a ring behind, and touch devices show none at all. The
|
|
5
|
+
* attribute is the shared state, so every bundle's copy of the client agrees.
|
|
6
|
+
*/
|
|
7
|
+
import { isTypingTarget } from './device-state';
|
|
8
|
+
import { FOCUS_RING_SHADOW } from './focus-ring';
|
|
9
|
+
|
|
10
|
+
/** `keys`: keyboard or gamepad. `pointer`: mouse or pen. `touch`: a finger. */
|
|
11
|
+
export type InputModality = 'keys' | 'pointer' | 'touch';
|
|
12
|
+
|
|
13
|
+
/** The `<html>` attribute that holds the modality. */
|
|
14
|
+
export const MODALITY_ATTRIBUTE = 'data-hub-input';
|
|
15
|
+
|
|
16
|
+
const STYLE_ID = 'hub-focus-style';
|
|
17
|
+
const MODIFIER_KEYS = new Set(['Shift', 'Control', 'Alt', 'Meta', 'AltGraph', 'CapsLock']);
|
|
18
|
+
const MODALITIES: readonly InputModality[] = ['keys', 'pointer', 'touch'];
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* The page focus styles: the gamepad highlight (`gp-focus`) for keyboard and
|
|
22
|
+
* gamepad players only, and no browser focus ring on buttons after a tap.
|
|
23
|
+
*/
|
|
24
|
+
const PAGE_FOCUS_CSS = `html[${MODALITY_ATTRIBUTE}="keys"] .gp-focus{outline:none !important;box-shadow:${FOCUS_RING_SHADOW} !important;}
|
|
25
|
+
html[${MODALITY_ATTRIBUTE}="touch"] :is(button,a,summary,[role="button"],[tabindex]):focus{outline:none;}`;
|
|
26
|
+
|
|
27
|
+
/** The modality a pointer event's `pointerType` implies. */
|
|
28
|
+
export function modalityOfPointer(pointerType: string): InputModality {
|
|
29
|
+
return pointerType === 'touch' ? 'touch' : 'pointer';
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/** The modality a key press implies, or `null` when it says nothing (a lone modifier, typing in a field). */
|
|
33
|
+
export function modalityOfKey(key: string, isTyping: boolean): InputModality | null {
|
|
34
|
+
if (MODIFIER_KEYS.has(key)) {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
// Typing (an on-screen keyboard fires keydown too) is not navigating; Tab always is.
|
|
38
|
+
return isTyping && key !== 'Tab' ? null : 'keys';
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/** Where the modality is stored: `<html>`, or a fake in tests. */
|
|
42
|
+
export interface ModalityRoot {
|
|
43
|
+
getAttribute(name: string): string | null;
|
|
44
|
+
setAttribute(name: string, value: string): void;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/** Reads and writes the page's modality attribute. */
|
|
48
|
+
export class ModalityTracker {
|
|
49
|
+
private readonly root: ModalityRoot;
|
|
50
|
+
|
|
51
|
+
/** Start at `initial` unless another copy already set the attribute. */
|
|
52
|
+
constructor(root: ModalityRoot, initial: InputModality) {
|
|
53
|
+
this.root = root;
|
|
54
|
+
if (this.readAttribute() === null) {
|
|
55
|
+
this.set(initial);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/** The last modality used. */
|
|
60
|
+
get current(): InputModality {
|
|
61
|
+
return this.readAttribute() ?? 'pointer';
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/** Whether focus should show: the last input was a keyboard or gamepad. */
|
|
65
|
+
get showsFocus(): boolean {
|
|
66
|
+
return this.current === 'keys';
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/** Record the modality the player just used. */
|
|
70
|
+
set(modality: InputModality): void {
|
|
71
|
+
if (this.readAttribute() !== modality) {
|
|
72
|
+
this.root.setAttribute(MODALITY_ATTRIBUTE, modality);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/** A key went down (`isTyping`: in a text field). */
|
|
77
|
+
noteKey(key: string, isTyping: boolean): void {
|
|
78
|
+
const modality = modalityOfKey(key, isTyping);
|
|
79
|
+
if (modality !== null) {
|
|
80
|
+
this.set(modality);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
/** A pointer went down. */
|
|
85
|
+
notePointer(pointerType: string): void {
|
|
86
|
+
this.set(modalityOfPointer(pointerType));
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
private readAttribute(): InputModality | null {
|
|
90
|
+
const value = this.root.getAttribute(MODALITY_ATTRIBUTE);
|
|
91
|
+
return MODALITIES.find((modality) => modality === value) ?? null;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
let pageTracker: ModalityTracker | null = null;
|
|
96
|
+
|
|
97
|
+
/** Track the page's modality (once per bundle) and add the focus styles (once per page). */
|
|
98
|
+
export function trackInputModality(): ModalityTracker {
|
|
99
|
+
if (pageTracker !== null) {
|
|
100
|
+
return pageTracker;
|
|
101
|
+
}
|
|
102
|
+
const root = document.documentElement;
|
|
103
|
+
const isTouchDevice = typeof matchMedia === 'function' && matchMedia('(hover: none) and (pointer: coarse)').matches;
|
|
104
|
+
const isFirstCopy = root.getAttribute(MODALITY_ATTRIBUTE) === null;
|
|
105
|
+
const tracker = new ModalityTracker(root, isTouchDevice ? 'touch' : 'pointer');
|
|
106
|
+
pageTracker = tracker;
|
|
107
|
+
if (isFirstCopy) {
|
|
108
|
+
document.addEventListener('keydown', (event) => {
|
|
109
|
+
tracker.noteKey(event.key, isTypingTarget(event.target));
|
|
110
|
+
}, true);
|
|
111
|
+
document.addEventListener('pointerdown', (event) => {
|
|
112
|
+
tracker.notePointer(event.pointerType);
|
|
113
|
+
}, true);
|
|
114
|
+
}
|
|
115
|
+
if (document.getElementById(STYLE_ID) === null) {
|
|
116
|
+
const style = document.createElement('style');
|
|
117
|
+
style.id = STYLE_ID;
|
|
118
|
+
style.textContent = PAGE_FOCUS_CSS;
|
|
119
|
+
document.head.appendChild(style);
|
|
120
|
+
}
|
|
121
|
+
return tracker;
|
|
122
|
+
}
|
package/src/input/nav-state.ts
CHANGED
|
@@ -9,8 +9,8 @@ import type { NavBlurEvent, NavElement, NavElementKind, NavFocusEvent, NavTarget
|
|
|
9
9
|
|
|
10
10
|
/** What a navigable list draws with (the overlay). */
|
|
11
11
|
export interface NavHighlighter {
|
|
12
|
-
/** Ring the highlighted element. */
|
|
13
|
-
showHighlight(bounds: Rect): void;
|
|
12
|
+
/** Ring the highlighted element, following its corner radius (a CSS `border-radius`, or empty). */
|
|
13
|
+
showHighlight(bounds: Rect, radius: string): void;
|
|
14
14
|
/** Remove the ring. */
|
|
15
15
|
hideHighlight(): void;
|
|
16
16
|
/** Open the on-screen keyboard for a text field. */
|
|
@@ -50,6 +50,11 @@ function boundsOf(element: NavElement): Rect {
|
|
|
50
50
|
return element.el === undefined ? { x: 0, y: 0, width: 0, height: 0 } : rectOf(element.el);
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
+
/** A navigable element's CSS corner radius, so the ring can follow it (empty for a non-DOM element). */
|
|
54
|
+
function radiusOf(element: NavElement): string {
|
|
55
|
+
return element.el === undefined ? '' : getComputedStyle(element.el).borderRadius;
|
|
56
|
+
}
|
|
57
|
+
|
|
53
58
|
/** The text field a navigable element edits, if it is one. */
|
|
54
59
|
function textFieldOf(element: NavElement): HTMLInputElement | HTMLTextAreaElement | null {
|
|
55
60
|
return element.el instanceof HTMLInputElement || element.el instanceof HTMLTextAreaElement ? element.el : null;
|
|
@@ -148,16 +153,20 @@ export class NavState {
|
|
|
148
153
|
this.position(highlighter);
|
|
149
154
|
}
|
|
150
155
|
|
|
151
|
-
/** Move the ring to the highlighted element (or hide it). */
|
|
156
|
+
/** Move the ring to the highlighted element (or hide it), following keyboard focus (Tab) within the list. */
|
|
152
157
|
position(highlighter: NavHighlighter | null): void {
|
|
153
158
|
if (highlighter === null) {
|
|
154
159
|
return;
|
|
155
160
|
}
|
|
161
|
+
const focused = this.elements.findIndex((element) => element.el !== undefined && element.el === document.activeElement);
|
|
162
|
+
if (focused >= 0) {
|
|
163
|
+
this.index = focused;
|
|
164
|
+
}
|
|
156
165
|
const current = this.elements[this.index];
|
|
157
166
|
if (current === undefined) {
|
|
158
167
|
highlighter.hideHighlight();
|
|
159
168
|
} else {
|
|
160
|
-
highlighter.showHighlight(boundsOf(current));
|
|
169
|
+
highlighter.showHighlight(boundsOf(current), radiusOf(current));
|
|
161
170
|
}
|
|
162
171
|
}
|
|
163
172
|
|
package/src/input/zero-config.ts
CHANGED
|
@@ -14,9 +14,8 @@ import { isTypingTarget } from './device-state';
|
|
|
14
14
|
|
|
15
15
|
/** Synthetic keys stay pressed past half deflection. */
|
|
16
16
|
const SYNTH_DEADZONE = 0.5;
|
|
17
|
+
/** The catalog tile highlight; its style (keyboard and gamepad players only) is in `modality.ts`. */
|
|
17
18
|
const FOCUS_CLASS = 'gp-focus';
|
|
18
|
-
const FOCUS_STYLE_ID = 'gp-focus-style';
|
|
19
|
-
const FOCUS_CSS = '.gp-focus{outline:3px solid #ff5f3b !important;outline-offset:2px;border-radius:4px;}';
|
|
20
19
|
|
|
21
20
|
/** `KeyboardEvent.code` → its `key` and legacy `keyCode`. */
|
|
22
21
|
const KEY_FOR_CODE = new Map<string, readonly [string, number]>([
|
|
@@ -51,17 +50,6 @@ function dispatchKey(type: 'keydown' | 'keyup', code: string): void {
|
|
|
51
50
|
target.dispatchEvent(event);
|
|
52
51
|
}
|
|
53
52
|
|
|
54
|
-
/** Add the highlight style to the page once. */
|
|
55
|
-
function ensureFocusStyle(): void {
|
|
56
|
-
if (document.getElementById(FOCUS_STYLE_ID) !== null) {
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
const style = document.createElement('style');
|
|
60
|
-
style.id = FOCUS_STYLE_ID;
|
|
61
|
-
style.textContent = FOCUS_CSS;
|
|
62
|
-
document.head.appendChild(style);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
53
|
/** The keys each pad holds down, by pad index. */
|
|
66
54
|
const heldCodes = new Map<number, Set<string>>();
|
|
67
55
|
|
|
@@ -168,7 +156,6 @@ export function runZeroConfigFrame(frame: ZeroConfigFrame): void {
|
|
|
168
156
|
if (frame.gamepads.length === 0) {
|
|
169
157
|
return;
|
|
170
158
|
}
|
|
171
|
-
ensureFocusStyle();
|
|
172
159
|
if (frame.slug === null) {
|
|
173
160
|
navigateCatalog(frame);
|
|
174
161
|
} else {
|
package/src/input.ts
CHANGED
|
@@ -9,6 +9,9 @@ export { InputSystem } from './input/input-system';
|
|
|
9
9
|
export type { InputSystemOptions } from './input/input-system';
|
|
10
10
|
export { getInput, INPUT_SINGLETON_API, isInputSystem, parseInputOverrides } from './input/page-input';
|
|
11
11
|
export type { InputOptions } from './input/page-input';
|
|
12
|
+
export { FOCUS_RING_SHADOW } from './input/focus-ring';
|
|
13
|
+
export { MODALITY_ATTRIBUTE, trackInputModality } from './input/modality';
|
|
14
|
+
export type { InputModality } from './input/modality';
|
|
12
15
|
export { isPageInputControl } from './input/page-control';
|
|
13
16
|
export type { PageInputControl } from './input/page-control';
|
|
14
17
|
export type * from './input/types';
|
package/src/overlay/overlay.ts
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import type { NavHighlighter } from '../input/nav-state';
|
|
8
8
|
import type { InputConfig, InputOverrides, Rect, VirtualDef } from '../input/types';
|
|
9
|
+
import { trackInputModality } from '../input/modality';
|
|
9
10
|
import { readField } from '../realtime/cross-bundle';
|
|
10
11
|
import { ControlsPanel } from './controls-panel';
|
|
11
12
|
import type { ControlsPanelHost } from './controls-panel';
|
|
@@ -160,9 +161,10 @@ export class Overlay implements NavHighlighter {
|
|
|
160
161
|
}
|
|
161
162
|
}
|
|
162
163
|
|
|
163
|
-
/** Ring the highlighted element. */
|
|
164
|
-
showHighlight(bounds: Rect): void {
|
|
165
|
-
this.ring.hidden =
|
|
164
|
+
/** Ring the highlighted element, for keyboard and gamepad players only (never after a tap or click). */
|
|
165
|
+
showHighlight(bounds: Rect, radius: string): void {
|
|
166
|
+
this.ring.hidden = !trackInputModality().showsFocus;
|
|
167
|
+
this.ring.style.borderRadius = radius;
|
|
166
168
|
this.ring.style.left = `${String(bounds.x)}px`;
|
|
167
169
|
this.ring.style.top = `${String(bounds.y)}px`;
|
|
168
170
|
this.ring.style.width = `${String(bounds.width)}px`;
|
package/src/overlay/styles.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* The overlay's styles (inside its shadow root, so games can't restyle it).
|
|
3
3
|
*/
|
|
4
|
+
import { FOCUS_RING_SHADOW } from '../input/focus-ring';
|
|
4
5
|
|
|
5
6
|
/** The hub accent colour. */
|
|
6
7
|
export const ACCENT_COLOR = '#ff5f3b';
|
|
@@ -28,8 +29,8 @@ export const OVERLAY_CSS = `
|
|
|
28
29
|
:host(.editing) .edit-bar .btn { margin: 0; }
|
|
29
30
|
.safe-probe { position: fixed; left: 0; top: 0; width: 0; height: 0; visibility: hidden; pointer-events: none;
|
|
30
31
|
padding: env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px) env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px); }
|
|
31
|
-
.ring { position: fixed; pointer-events: none; z-index: 2147483200;
|
|
32
|
-
|
|
32
|
+
.ring { position: fixed; pointer-events: none; z-index: 2147483200; box-shadow: ${FOCUS_RING_SHADOW};
|
|
33
|
+
transition: left .08s, top .08s, width .08s, height .08s; }
|
|
33
34
|
.ring[hidden] { display: none; }
|
|
34
35
|
.kb { position: fixed; left: 0; right: 0; bottom: 0; z-index: 2147483400; background: #0d0f14ee; padding: 10px;
|
|
35
36
|
pointer-events: auto; border-top: 1px solid #2a3142; }
|
|
@@ -38,7 +39,7 @@ export const OVERLAY_CSS = `
|
|
|
38
39
|
.kb .k { flex: 1; min-width: 0; max-width: 64px; height: 46px; border-radius: 8px; border: 1px solid #2a3142;
|
|
39
40
|
background: #11141c; color: #e8e6df; font: 16px monospace; cursor: pointer; }
|
|
40
41
|
.kb .k.space { max-width: 280px; } .kb .k.wide { max-width: 90px; }
|
|
41
|
-
.kb .k.kfocus {
|
|
42
|
+
.kb .k.kfocus { box-shadow: ${FOCUS_RING_SHADOW}; }
|
|
42
43
|
.panel { position: fixed; inset: 0; z-index: 2147483500; display: grid; place-items: center; background: rgba(0,0,0,.6); pointer-events: auto;
|
|
43
44
|
font-family: 'Space Mono', ui-monospace, monospace; }
|
|
44
45
|
.panel-card { background: #0d0f14; color: #e8e6df; border: 1px solid #2a3142; border-radius: 12px; padding: 18px;
|