@diffenderfer-games/hub 0.0.0-stage → 2.0.0-next.1
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 +9 -0
- package/LICENSE +21 -0
- package/README.md +191 -3
- package/dist/auto.d.ts +36 -0
- package/dist/auto.d.ts.map +1 -0
- package/dist/auto.js +27 -0
- package/dist/auto.js.map +1 -0
- package/dist/daily.d.ts +2 -0
- package/dist/daily.js +1 -0
- package/dist/doctor/cli.mjs +268 -0
- package/dist/doctor/cli.mjs.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +6 -0
- package/dist/input.d.ts +2 -0
- package/dist/input.js +3 -0
- package/dist/mp.d.ts +4 -0
- package/dist/mp.js +1 -0
- package/dist/race.d.ts +4 -0
- package/dist/race.js +1 -0
- package/dist/rooms.d.ts +4 -0
- package/dist/rooms.js +1 -0
- package/dist/shared/bridge.js +209 -0
- package/dist/shared/bridge.js.map +1 -0
- package/dist/shared/client-version.gen.js +7 -0
- package/dist/shared/client-version.gen.js.map +1 -0
- package/dist/shared/daily.d.ts +123 -0
- package/dist/shared/daily.d.ts.map +1 -0
- package/dist/shared/daily.js +191 -0
- package/dist/shared/daily.js.map +1 -0
- package/dist/shared/dom.js +48 -0
- package/dist/shared/dom.js.map +1 -0
- package/dist/shared/globals.js +102 -0
- package/dist/shared/globals.js.map +1 -0
- package/dist/shared/index.d.ts +706 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/input.d.ts +730 -0
- package/dist/shared/input.d.ts.map +1 -0
- package/dist/shared/input.js +2718 -0
- package/dist/shared/input.js.map +1 -0
- package/dist/shared/latest-state.js +17 -0
- package/dist/shared/latest-state.js.map +1 -0
- package/dist/shared/mp.d.ts +9 -0
- package/dist/shared/mp.d.ts.map +1 -0
- package/dist/shared/mp.js +30 -0
- package/dist/shared/mp.js.map +1 -0
- package/dist/shared/multiplayer-types.d.ts +47 -0
- package/dist/shared/multiplayer-types.d.ts.map +1 -0
- package/dist/shared/page-stack.js +207 -0
- package/dist/shared/page-stack.js.map +1 -0
- package/dist/shared/race-types.d.ts +126 -0
- package/dist/shared/race-types.d.ts.map +1 -0
- package/dist/shared/race.d.ts +9 -0
- package/dist/shared/race.d.ts.map +1 -0
- package/dist/shared/race.js +53 -0
- package/dist/shared/race.js.map +1 -0
- package/dist/shared/room-types.d.ts +125 -0
- package/dist/shared/room-types.d.ts.map +1 -0
- package/dist/shared/rooms.d.ts +9 -0
- package/dist/shared/rooms.d.ts.map +1 -0
- package/dist/shared/rooms.js +62 -0
- package/dist/shared/rooms.js.map +1 -0
- package/dist/shared/runtime-opener.js +84 -0
- package/dist/shared/runtime-opener.js.map +1 -0
- package/dist/shared/social.d.ts +148 -0
- package/dist/shared/social.d.ts.map +1 -0
- package/dist/shared/social.js +73 -0
- package/dist/shared/social.js.map +1 -0
- package/dist/shared/src.js +2164 -0
- package/dist/shared/src.js.map +1 -0
- package/dist/shared/wire-types.d.ts +51 -0
- package/dist/shared/wire-types.d.ts.map +1 -0
- package/dist/social.d.ts +6 -0
- package/dist/social.js +3 -0
- package/dist/types.d.ts +1 -0
- package/dist/types.js +0 -0
- package/package.json +89 -6
- package/src/auto.ts +39 -0
- package/src/core/connection.ts +299 -0
- package/src/core/errors.ts +147 -0
- package/src/core/game-data.ts +38 -0
- package/src/core/hub-economy.ts +179 -0
- package/src/core/hub-progress.ts +205 -0
- package/src/core/hub.ts +131 -0
- package/src/core/menu-control.ts +61 -0
- package/src/core/offline/events.ts +50 -0
- package/src/core/offline/favorites.ts +21 -0
- package/src/core/offline/local-store.ts +261 -0
- package/src/core/offline/queue.ts +171 -0
- package/src/core/page.ts +74 -0
- package/src/core/rest/endpoint-types.ts +22 -0
- package/src/core/rest/rest-client.ts +152 -0
- package/src/core/rest/routes.gen.ts +90 -0
- package/src/core/storage/json-guards.ts +74 -0
- package/src/core/storage/key-value.ts +66 -0
- package/src/core/ticket.ts +43 -0
- package/src/core/types.ts +134 -0
- package/src/core/version/client-version.gen.ts +3 -0
- package/src/core/version/hub-version.ts +62 -0
- package/src/core/version/semver.ts +97 -0
- package/src/daily/daily-system.ts +161 -0
- package/src/daily/page-daily.ts +36 -0
- package/src/daily/types.ts +67 -0
- package/src/daily.ts +10 -0
- package/src/doctor/checks.ts +78 -0
- package/src/doctor/cli.ts +98 -0
- package/src/doctor/hub-version-fetch.ts +43 -0
- package/src/doctor/tsconfig.json +12 -0
- package/src/globals.ts +115 -0
- package/src/index.ts +50 -0
- package/src/input/device-state.ts +146 -0
- package/src/input/edges.ts +55 -0
- package/src/input/gamepad.ts +61 -0
- package/src/input/input-events.ts +32 -0
- package/src/input/input-registry.ts +164 -0
- package/src/input/input-system.ts +393 -0
- package/src/input/legacy-controls.ts +64 -0
- package/src/input/nav-state.ts +191 -0
- package/src/input/navigator.ts +171 -0
- package/src/input/on-screen-controls.ts +101 -0
- package/src/input/page-control.ts +43 -0
- package/src/input/page-input.ts +193 -0
- package/src/input/player-remaps.ts +77 -0
- package/src/input/source-values.ts +116 -0
- package/src/input/spatial.ts +47 -0
- package/src/input/types.ts +331 -0
- package/src/input/zero-config.ts +177 -0
- package/src/input.ts +22 -0
- package/src/mp.ts +10 -0
- package/src/overlay/controls-panel.ts +163 -0
- package/src/overlay/dom.ts +46 -0
- package/src/overlay/layout-clusters.ts +162 -0
- package/src/overlay/layout-geometry.ts +136 -0
- package/src/overlay/layout.ts +203 -0
- package/src/overlay/listener-scope.ts +23 -0
- package/src/overlay/on-screen-keyboard.ts +137 -0
- package/src/overlay/overlay.ts +208 -0
- package/src/overlay/styles.ts +54 -0
- package/src/overlay/virtual-controls.ts +262 -0
- package/src/race.ts +10 -0
- package/src/realtime/bridge.ts +121 -0
- package/src/realtime/cross-bundle.ts +29 -0
- package/src/realtime/fallback-notice.ts +48 -0
- package/src/realtime/hub-link.ts +65 -0
- package/src/realtime/latest-state.ts +33 -0
- package/src/realtime/multiplayer-forwarder.ts +28 -0
- package/src/realtime/multiplayer-types.ts +52 -0
- package/src/realtime/page-runtime.ts +60 -0
- package/src/realtime/race-forwarder.ts +59 -0
- package/src/realtime/race-types.ts +132 -0
- package/src/realtime/room-types.ts +125 -0
- package/src/realtime/rooms-forwarder.ts +79 -0
- package/src/realtime/runtime-api.ts +49 -0
- package/src/realtime/runtime-opener.ts +61 -0
- package/src/realtime/social-forwarder.ts +72 -0
- package/src/realtime/social-types.ts +78 -0
- package/src/realtime/types.ts +53 -0
- package/src/realtime/wire-types.ts +72 -0
- package/src/rooms.ts +10 -0
- package/src/social.ts +18 -0
- package/src/types.ts +13 -0
- package/src/uistack/page-stack.ts +45 -0
- package/src/uistack/play-suspension.ts +82 -0
- package/src/uistack/types.ts +76 -0
- package/src/uistack/ui-stack.ts +144 -0
|
@@ -0,0 +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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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { t as pageBridge } from "./bridge.js";
|
|
2
|
+
//#region src/realtime/latest-state.ts
|
|
3
|
+
/** The latest state calls, as last made on this page. */
|
|
4
|
+
const latestState = {
|
|
5
|
+
presence: null,
|
|
6
|
+
busy: null,
|
|
7
|
+
isQuiet: null
|
|
8
|
+
};
|
|
9
|
+
pageBridge.onReady((realtime) => {
|
|
10
|
+
if (latestState.presence !== null) realtime.presence.set(latestState.presence);
|
|
11
|
+
if (latestState.busy !== null) realtime.mp.setBusy(latestState.busy.isBusy, latestState.busy.options);
|
|
12
|
+
if (latestState.isQuiet !== null) realtime.notify.setQuiet(latestState.isQuiet);
|
|
13
|
+
});
|
|
14
|
+
//#endregion
|
|
15
|
+
export { latestState as t };
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=latest-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"latest-state.js","names":[],"sources":["../../src/realtime/latest-state.ts"],"mappings":";;;AAgBA,MAAa,cAAmG;CAC9G,UAAU;CACV,MAAM;CACN,SAAS;AACX;AAEA,WAAW,SAAS,aAAa;CAC/B,IAAI,YAAY,aAAa,MAC3B,SAAS,SAAS,IAAI,YAAY,QAAQ;CAE5C,IAAI,YAAY,SAAS,MACvB,SAAS,GAAG,QAAQ,YAAY,KAAK,QAAQ,YAAY,KAAK,OAAO;CAEvE,IAAI,YAAY,YAAY,MAC1B,SAAS,OAAO,SAAS,YAAY,OAAO;AAEhD,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import "./wire-types.js";
|
|
2
|
+
import { n as HubMpApi } from "./multiplayer-types.js";
|
|
3
|
+
import { Invite as Invite$1, JoinInfo as JoinInfo$1, Launch as Launch$1, LaunchTicket, Party as Party$1 } from "@diffenderfer-games/hub-contract";
|
|
4
|
+
//#region src/realtime/multiplayer-forwarder.d.ts
|
|
5
|
+
/** `hub.mp`: the multiplayer lifecycle. */
|
|
6
|
+
declare const multiplayerForwarder: HubMpApi;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { Party$1 as a, LaunchTicket as i, JoinInfo$1 as n, multiplayerForwarder as o, Launch$1 as r, Invite$1 as t };
|
|
9
|
+
//# sourceMappingURL=mp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mp.d.ts","names":[],"sources":["../../src/realtime/multiplayer-forwarder.ts"],"mappings":";;;;;cAWa,sBAAsB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { t as getUiStack } from "./page-stack.js";
|
|
2
|
+
import { t as pageBridge, u as hubLink } from "./bridge.js";
|
|
3
|
+
import { t as latestState } from "./latest-state.js";
|
|
4
|
+
//#region src/realtime/multiplayer-forwarder.ts
|
|
5
|
+
/**
|
|
6
|
+
* `hub.mp`: invites, launches, the leave guard and own-server tickets,
|
|
7
|
+
* forwarded to the social runtime.
|
|
8
|
+
*/
|
|
9
|
+
/** `hub.mp`: the multiplayer lifecycle. */
|
|
10
|
+
const multiplayerForwarder = {
|
|
11
|
+
onLaunch: (listener) => pageBridge.subscribe((realtime) => realtime.mp.onLaunch(listener)),
|
|
12
|
+
onJoinInfo: (listener) => pageBridge.subscribe((realtime) => realtime.mp.onJoinInfo(listener)),
|
|
13
|
+
invite: (userId, options) => pageBridge.call((realtime) => realtime.mp.invite(userId, options)),
|
|
14
|
+
setBusy(isBusy, options) {
|
|
15
|
+
const busyOptions = options?.label === void 0 ? {} : { label: options.label };
|
|
16
|
+
latestState.busy = {
|
|
17
|
+
isBusy,
|
|
18
|
+
options: busyOptions
|
|
19
|
+
};
|
|
20
|
+
getUiStack().setCanPause(!isBusy);
|
|
21
|
+
pageBridge.current()?.mp.setBusy(isBusy, busyOptions);
|
|
22
|
+
},
|
|
23
|
+
ticket: () => hubLink().getGameServerTicket(),
|
|
24
|
+
setJoinInfo: (partyId, joinInfo) => pageBridge.call((realtime) => realtime.mp.setJoinInfo(partyId, joinInfo)),
|
|
25
|
+
party: () => pageBridge.current()?.mp.party() ?? null
|
|
26
|
+
};
|
|
27
|
+
//#endregion
|
|
28
|
+
export { multiplayerForwarder as t };
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=mp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mp.js","names":[],"sources":["../../src/realtime/multiplayer-forwarder.ts"],"mappings":";;;;;;;;;AAWA,MAAa,uBAAiC;CAC5C,WAAW,aAAa,WAAW,WAAW,aAAa,SAAS,GAAG,SAAS,QAAQ,CAAC;CACzF,aAAa,aAAa,WAAW,WAAW,aAAa,SAAS,GAAG,WAAW,QAAQ,CAAC;CAC7F,SAAS,QAAQ,YAAY,WAAW,MAAM,aAAa,SAAS,GAAG,OAAO,QAAQ,OAAO,CAAC;CAC9F,QAAQ,QAAQ,SAAS;EACvB,MAAM,cAAc,SAAS,UAAU,KAAA,IAAY,CAAC,IAAI,EAAE,OAAO,QAAQ,MAAM;EAC/E,YAAY,OAAO;GAAE;GAAQ,SAAS;EAAY;EAElD,WAAW,CAAC,CAAC,YAAY,CAAC,MAAM;EAChC,WAAW,QAAQ,CAAC,EAAE,GAAG,QAAQ,QAAQ,WAAW;CACtD;CAGA,cAAc,QAAQ,CAAC,CAAC,oBAAoB;CAC5C,cAAc,SAAS,aAAa,WAAW,MAAM,aAAa,SAAS,GAAG,YAAY,SAAS,QAAQ,CAAC;CAC5G,aAAa,WAAW,QAAQ,CAAC,EAAE,GAAG,MAAM,KAAK;AACnD"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Invite, JoinInfo, Launch, Party } from "@diffenderfer-games/hub-contract";
|
|
2
|
+
//#region src/realtime/multiplayer-types.d.ts
|
|
3
|
+
/** `hub.mp.onJoinInfo` payload: the party leader published where to connect. */
|
|
4
|
+
interface JoinInfoEvent {
|
|
5
|
+
/** The party it is for. */
|
|
6
|
+
partyId: string;
|
|
7
|
+
/** Opaque connection details (a room code, a server address…). */
|
|
8
|
+
info: JoinInfo;
|
|
9
|
+
}
|
|
10
|
+
/** What `hub.mp.invite` resolves with. */
|
|
11
|
+
interface InviteResult {
|
|
12
|
+
/** The invite as sent. */
|
|
13
|
+
invite: Invite;
|
|
14
|
+
}
|
|
15
|
+
/** Options for `hub.mp.invite`. */
|
|
16
|
+
interface InviteOptions {
|
|
17
|
+
/** The game mode to invite to. */
|
|
18
|
+
mode?: string;
|
|
19
|
+
}
|
|
20
|
+
/** Options for `hub.mp.setBusy`. */
|
|
21
|
+
interface BusyOptions {
|
|
22
|
+
/** What the leave-confirmation calls the match ("a duel"). */
|
|
23
|
+
label?: string;
|
|
24
|
+
}
|
|
25
|
+
/** `hub.mp`: the multiplayer lifecycle (docs/multiplayer.md §7). */
|
|
26
|
+
interface HubMpApi {
|
|
27
|
+
/** Invite, join and watch arrivals. Call at boot; launches that arrived earlier are buffered. */
|
|
28
|
+
onLaunch(listener: (launch: Launch) => void): () => void;
|
|
29
|
+
/** The party leader published join info (e.g. a room code). */
|
|
30
|
+
onJoinInfo(listener: (event: JoinInfoEvent) => void): () => void;
|
|
31
|
+
/** Invite a friend to this game. Rejects with `HubError` or `OfflineError`. */
|
|
32
|
+
invite(userId: number, options?: InviteOptions): Promise<InviteResult>;
|
|
33
|
+
/**
|
|
34
|
+
* A live match is in progress: the hub confirms before navigating away and
|
|
35
|
+
* overlay events carry `canPause: false`.
|
|
36
|
+
*/
|
|
37
|
+
setBusy(isBusy: boolean, options?: BusyOptions): void;
|
|
38
|
+
/** A 60-second identity ticket for your own game server. */
|
|
39
|
+
ticket(): Promise<string>;
|
|
40
|
+
/** Host side, own-server games: tell the party where to connect. */
|
|
41
|
+
setJoinInfo(partyId: string, joinInfo: JoinInfo): Promise<void>;
|
|
42
|
+
/** My current party, or `null` (also `null` until the runtime is up). */
|
|
43
|
+
party(): Party | null;
|
|
44
|
+
}
|
|
45
|
+
//#endregion
|
|
46
|
+
export { JoinInfoEvent as a, InviteResult as i, HubMpApi as n, InviteOptions as r, BusyOptions as t };
|
|
47
|
+
//# sourceMappingURL=multiplayer-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multiplayer-types.d.ts","names":[],"sources":["../../src/realtime/multiplayer-types.ts"],"mappings":";;;UAOiB;;EAEf;;EAEA,MAAM;;;UAIS;;EAEf,QAAQ;;;UAIO;;EAEf;;;UAIe;;EAEf;;;UAIe;;EAEf,SAAS,WAAW,QAAQ;;EAE5B,WAAW,WAAW,OAAO;;EAE7B,OAAO,gBAAgB,UAAU,gBAAgB,QAAQ;;;;;EAKzD,QAAQ,iBAAiB,UAAU;;EAEnC,UAAU;;EAEV,YAAY,iBAAiB,UAAU,WAAW;;EAElD,SAAS"}
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import { i as hasMethods, o as readField, r as _defineProperty, t as LEGACY_GLOBAL_NAMES } from "./globals.js";
|
|
2
|
+
//#region src/uistack/play-suspension.ts
|
|
3
|
+
/**
|
|
4
|
+
* While hub UI covers the game, its `play` input group is held disabled (so a
|
|
5
|
+
* paddle doesn't move while the player types), even for games that ignore
|
|
6
|
+
* the overlay events. The game's own enable/disable calls for `play` are
|
|
7
|
+
* recorded instead of applied, and the last one wins on release, so a game
|
|
8
|
+
* that pauses itself on `open` stays paused afterwards.
|
|
9
|
+
*/
|
|
10
|
+
/** The input group the stack suspends. */
|
|
11
|
+
const PLAY_GROUP = "play";
|
|
12
|
+
/** Whether `candidate` can switch input groups. */
|
|
13
|
+
function isGroupSwitch(candidate) {
|
|
14
|
+
return hasMethods(candidate, [
|
|
15
|
+
"isEnabled",
|
|
16
|
+
"enable",
|
|
17
|
+
"disable"
|
|
18
|
+
]);
|
|
19
|
+
}
|
|
20
|
+
/** The intercepted method names. */
|
|
21
|
+
const SWITCH_METHODS = ["enable", "disable"];
|
|
22
|
+
/** Holds `play` disabled for one overlay visit. */
|
|
23
|
+
var PlaySuspension = class {
|
|
24
|
+
constructor(input) {
|
|
25
|
+
_defineProperty(this, "input", void 0);
|
|
26
|
+
_defineProperty(this, "shouldPlayAfter", void 0);
|
|
27
|
+
_defineProperty(this, "savedMethods", void 0);
|
|
28
|
+
this.input = input;
|
|
29
|
+
this.shouldPlayAfter = input.isEnabled(PLAY_GROUP);
|
|
30
|
+
if (this.shouldPlayAfter) input.disable(PLAY_GROUP);
|
|
31
|
+
this.savedMethods = {
|
|
32
|
+
enable: Object.getOwnPropertyDescriptor(input, "enable"),
|
|
33
|
+
disable: Object.getOwnPropertyDescriptor(input, "disable")
|
|
34
|
+
};
|
|
35
|
+
const enableGroup = input.enable.bind(input);
|
|
36
|
+
const disableGroup = input.disable.bind(input);
|
|
37
|
+
input.enable = (group) => {
|
|
38
|
+
if (group === "play") this.shouldPlayAfter = true;
|
|
39
|
+
else enableGroup(group);
|
|
40
|
+
};
|
|
41
|
+
input.disable = (group) => {
|
|
42
|
+
if (group === "play") this.shouldPlayAfter = false;
|
|
43
|
+
else disableGroup(group);
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
/** Remove the interception and apply the state the game last asked for. */
|
|
47
|
+
release() {
|
|
48
|
+
for (const method of SWITCH_METHODS) {
|
|
49
|
+
const saved = this.savedMethods[method];
|
|
50
|
+
if (saved === void 0) Reflect.deleteProperty(this.input, method);
|
|
51
|
+
else Object.defineProperty(this.input, method, saved);
|
|
52
|
+
}
|
|
53
|
+
if (this.shouldPlayAfter) this.input.enable(PLAY_GROUP);
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
//#endregion
|
|
57
|
+
//#region src/uistack/ui-stack.ts
|
|
58
|
+
/**
|
|
59
|
+
* The overlay stack implementation: two edges (`open` when depth goes
|
|
60
|
+
* 0 → 1, `close` when it returns to 0) mirrored as window events, the
|
|
61
|
+
* `autoPause` helper, and the `play` suspension.
|
|
62
|
+
*/
|
|
63
|
+
/** Bump when the UiStack contract gains behaviour; idle older instances are replaced. */
|
|
64
|
+
const UI_STACK_VERSION = 1;
|
|
65
|
+
/** The page-wide overlay stack (see {@link UiStack}). */
|
|
66
|
+
var UiStackImpl = class {
|
|
67
|
+
constructor(handoff) {
|
|
68
|
+
_defineProperty(this, "version", 1);
|
|
69
|
+
_defineProperty(this, "entries", []);
|
|
70
|
+
_defineProperty(this, "listeners", {
|
|
71
|
+
open: /* @__PURE__ */ new Set(),
|
|
72
|
+
close: /* @__PURE__ */ new Set()
|
|
73
|
+
});
|
|
74
|
+
_defineProperty(this, "isPausable", true);
|
|
75
|
+
_defineProperty(this, "suspension", null);
|
|
76
|
+
if (handoff === void 0) return;
|
|
77
|
+
handoff.listeners.open.forEach((listener) => this.listeners.open.add(listener));
|
|
78
|
+
handoff.listeners.close.forEach((listener) => this.listeners.close.add(listener));
|
|
79
|
+
this.isPausable = handoff.canPause;
|
|
80
|
+
}
|
|
81
|
+
get isOpen() {
|
|
82
|
+
return this.entries.length > 0;
|
|
83
|
+
}
|
|
84
|
+
get depth() {
|
|
85
|
+
return this.entries.length;
|
|
86
|
+
}
|
|
87
|
+
get canPause() {
|
|
88
|
+
return this.isPausable;
|
|
89
|
+
}
|
|
90
|
+
push(reason) {
|
|
91
|
+
const entry = { reason };
|
|
92
|
+
this.entries.push(entry);
|
|
93
|
+
if (this.entries.length === 1) {
|
|
94
|
+
this.suspendPlay();
|
|
95
|
+
this.emit("open", {
|
|
96
|
+
reason,
|
|
97
|
+
canPause: this.isPausable
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
let wasPopped = false;
|
|
101
|
+
return () => {
|
|
102
|
+
if (wasPopped) return;
|
|
103
|
+
wasPopped = true;
|
|
104
|
+
const index = this.entries.indexOf(entry);
|
|
105
|
+
if (index < 0) return;
|
|
106
|
+
this.entries.splice(index, 1);
|
|
107
|
+
if (this.entries.length === 0) {
|
|
108
|
+
this.emit("close", {
|
|
109
|
+
reason,
|
|
110
|
+
canPause: this.isPausable
|
|
111
|
+
});
|
|
112
|
+
this.suspension?.release();
|
|
113
|
+
this.suspension = null;
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
on(edge, listener) {
|
|
118
|
+
this.listeners[edge].add(listener);
|
|
119
|
+
return () => {
|
|
120
|
+
this.listeners[edge].delete(listener);
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
autoPause(options) {
|
|
124
|
+
let wasPausedByUs = false;
|
|
125
|
+
const pauseOnOpen = (event) => {
|
|
126
|
+
if (!event.canPause) return;
|
|
127
|
+
wasPausedByUs = true;
|
|
128
|
+
options.pause();
|
|
129
|
+
};
|
|
130
|
+
const resumeOnClose = () => {
|
|
131
|
+
if (wasPausedByUs && options.resumeOnClose === true) options.resume?.();
|
|
132
|
+
wasPausedByUs = false;
|
|
133
|
+
};
|
|
134
|
+
const stopOpen = this.on("open", pauseOnOpen);
|
|
135
|
+
const stopClose = this.on("close", resumeOnClose);
|
|
136
|
+
const firstEntry = this.entries[0];
|
|
137
|
+
if (firstEntry !== void 0) pauseOnOpen({
|
|
138
|
+
reason: firstEntry.reason,
|
|
139
|
+
canPause: this.isPausable
|
|
140
|
+
});
|
|
141
|
+
return () => {
|
|
142
|
+
stopOpen();
|
|
143
|
+
stopClose();
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
setCanPause(canPause) {
|
|
147
|
+
this.isPausable = canPause;
|
|
148
|
+
}
|
|
149
|
+
handoff() {
|
|
150
|
+
const handoff = {
|
|
151
|
+
listeners: {
|
|
152
|
+
open: [...this.listeners.open],
|
|
153
|
+
close: [...this.listeners.close]
|
|
154
|
+
},
|
|
155
|
+
canPause: this.isPausable
|
|
156
|
+
};
|
|
157
|
+
this.listeners.open.clear();
|
|
158
|
+
this.listeners.close.clear();
|
|
159
|
+
return handoff;
|
|
160
|
+
}
|
|
161
|
+
suspendPlay() {
|
|
162
|
+
const input = typeof window === "undefined" ? void 0 : window[LEGACY_GLOBAL_NAMES.input];
|
|
163
|
+
if (this.suspension === null && isGroupSwitch(input)) this.suspension = new PlaySuspension(input);
|
|
164
|
+
}
|
|
165
|
+
emit(edge, event) {
|
|
166
|
+
for (const listener of [...this.listeners[edge]]) try {
|
|
167
|
+
listener(event);
|
|
168
|
+
} catch (error) {
|
|
169
|
+
console.error("[hub] overlay listener failed", error);
|
|
170
|
+
}
|
|
171
|
+
if (typeof window !== "undefined") window.dispatchEvent(new CustomEvent(`hub:overlay-${edge}`, { detail: event }));
|
|
172
|
+
}
|
|
173
|
+
};
|
|
174
|
+
//#endregion
|
|
175
|
+
//#region src/uistack/page-stack.ts
|
|
176
|
+
/**
|
|
177
|
+
* The overlay stack is one per page, on `window.__HUB_UI__`, because several
|
|
178
|
+
* bundles share it: the host's `/_hub/hub.js`, a game's bundled client and
|
|
179
|
+
* the social runtime. It has its own handover rule (older than plan §4.4's
|
|
180
|
+
* registry, and kept for v1 copies): a newer implementation replaces an older
|
|
181
|
+
* one only while it is idle, adopting its listeners, so open entries are
|
|
182
|
+
* never orphaned.
|
|
183
|
+
*/
|
|
184
|
+
/** Whether `candidate` is some bundle's overlay stack. */
|
|
185
|
+
function isUiStack(candidate) {
|
|
186
|
+
return typeof readField(candidate, "version") === "number" && hasMethods(candidate, ["push", "on"]);
|
|
187
|
+
}
|
|
188
|
+
let pagelessStack = null;
|
|
189
|
+
/**
|
|
190
|
+
* The page-wide overlay stack, created on first use. Outside a browser a
|
|
191
|
+
* module-local instance is returned.
|
|
192
|
+
*/
|
|
193
|
+
function getUiStack() {
|
|
194
|
+
if (typeof window === "undefined") {
|
|
195
|
+
pagelessStack ?? (pagelessStack = new UiStackImpl());
|
|
196
|
+
return pagelessStack;
|
|
197
|
+
}
|
|
198
|
+
const existing = window.__HUB_UI__;
|
|
199
|
+
if (isUiStack(existing) && (existing.version >= 1 || existing.isOpen)) return existing;
|
|
200
|
+
const stack = new UiStackImpl(isUiStack(existing) && hasMethods(existing, ["handoff"]) ? existing.handoff() : void 0);
|
|
201
|
+
window.__HUB_UI__ = stack;
|
|
202
|
+
return stack;
|
|
203
|
+
}
|
|
204
|
+
//#endregion
|
|
205
|
+
export { isUiStack as n, UI_STACK_VERSION as r, getUiStack as t };
|
|
206
|
+
|
|
207
|
+
//# sourceMappingURL=page-stack.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page-stack.js","names":[],"sources":["../../src/uistack/play-suspension.ts","../../src/uistack/ui-stack.ts","../../src/uistack/page-stack.ts"],"mappings":"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"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { o as RaceStatusEvent, r as RaceHistory$1 } from "./wire-types.js";
|
|
2
|
+
import { r as JoinOptions } from "./room-types.js";
|
|
3
|
+
import { RaceParams, RaceResult, RaceStats, RoomInfo } from "@diffenderfer-games/hub-contract";
|
|
4
|
+
//#region src/realtime/race-types.d.ts
|
|
5
|
+
/** What a race game's `start` receives: build the puzzle from `seed` and `params`. */
|
|
6
|
+
interface RaceStart {
|
|
7
|
+
/** The race room. */
|
|
8
|
+
roomId: string;
|
|
9
|
+
/** 1 for the first race in the room, +1 per rematch. */
|
|
10
|
+
round: number;
|
|
11
|
+
/** The shared seed, revealed at the countdown. */
|
|
12
|
+
seed: number;
|
|
13
|
+
/** The creator's choices. */
|
|
14
|
+
params: RaceParams;
|
|
15
|
+
/** The go, on THIS page's clock (`Date.now()` ms). The hub draws the 3-2-1. */
|
|
16
|
+
startAt: number;
|
|
17
|
+
/** Racer user ids. */
|
|
18
|
+
players: number[];
|
|
19
|
+
/** Watching: don't let a spectator play. */
|
|
20
|
+
spectator: boolean;
|
|
21
|
+
/** A re-join after a reload or reconnect (the race was already running). */
|
|
22
|
+
resumed: boolean;
|
|
23
|
+
}
|
|
24
|
+
/** Options for `hub.race.create`. */
|
|
25
|
+
interface RaceCreateOptions {
|
|
26
|
+
/** The race params (defaults from the manifest). */
|
|
27
|
+
params?: RaceParams;
|
|
28
|
+
/** Public (default true): shows in Open races and can alert friends who follow the game. */
|
|
29
|
+
public?: boolean;
|
|
30
|
+
/** Seats (default the manifest's minimum). The race starts when they're all filled. */
|
|
31
|
+
maxPlayers?: number;
|
|
32
|
+
/** Race this party. */
|
|
33
|
+
partyId?: string;
|
|
34
|
+
}
|
|
35
|
+
/** Where the hub's race HUD sits. */
|
|
36
|
+
type RaceHudPlace = 'top' | 'bottom' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
|
|
37
|
+
/** `hub.race.define`: how the hub drives a race game. */
|
|
38
|
+
interface RaceDefinition {
|
|
39
|
+
/** The countdown began: build the puzzle from `seed` and `params` now and let the player move at `startAt`. */
|
|
40
|
+
start(race: RaceStart): void;
|
|
41
|
+
/** The race was decided (stop input; the hub shows the result card). */
|
|
42
|
+
end?(result: RaceResult): void;
|
|
43
|
+
/** The player left the race screen (Done, cancelled, the room closed): go back to your menu. */
|
|
44
|
+
exit?(): void;
|
|
45
|
+
/** The hub's live race HUD (default on, top). `false` if you draw your own from `hub.race.on('status')`. */
|
|
46
|
+
hud?: false | {
|
|
47
|
+
place?: RaceHudPlace;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/** Events `hub.race.on` delivers, name → payload. */
|
|
51
|
+
interface RaceEvents {
|
|
52
|
+
/** The race room changed (roster, phase, statuses folded in). */
|
|
53
|
+
room: RoomInfo;
|
|
54
|
+
/** The countdown began. */
|
|
55
|
+
start: RaceStart;
|
|
56
|
+
/** Another racer's live status. */
|
|
57
|
+
status: RaceStatusEvent;
|
|
58
|
+
/** The race was decided. */
|
|
59
|
+
result: RaceResult;
|
|
60
|
+
/** The race room is gone for this page (left, closed, kicked). */
|
|
61
|
+
closed: {
|
|
62
|
+
reason: string;
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
/** Filters for the race history. */
|
|
66
|
+
interface RaceHistoryQuery {
|
|
67
|
+
/** A game slug (default: every game). */
|
|
68
|
+
game?: string;
|
|
69
|
+
/** Only races with this player. */
|
|
70
|
+
with?: number;
|
|
71
|
+
/** Only races older than this race id (paging). */
|
|
72
|
+
before?: number;
|
|
73
|
+
/** Page size, 1 to 50. */
|
|
74
|
+
limit?: number;
|
|
75
|
+
}
|
|
76
|
+
/** Options for `hub.race.openHistory`. */
|
|
77
|
+
interface RaceHistoryViewOptions {
|
|
78
|
+
/** This game (default), another slug, or `null` for every game. */
|
|
79
|
+
game?: string | null;
|
|
80
|
+
/** Only races with this player. */
|
|
81
|
+
with?: number;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* `hub.race`: races (docs/multiplayer.md "Races"). Declare `game.race` in
|
|
85
|
+
* package.json, call `define` at boot, put a Race button on your menu that
|
|
86
|
+
* calls `create({ params })` (or `browse()`), and report `status`, `finish`
|
|
87
|
+
* and `lose`. The hub does the matching, the waiting card, invites, the
|
|
88
|
+
* countdown, the live HUD, the referee, the result card and the history.
|
|
89
|
+
*/
|
|
90
|
+
interface HubRaceApi {
|
|
91
|
+
/** Register how the hub starts and ends your race. Call once at boot (works before the runtime loads). */
|
|
92
|
+
define(definition: RaceDefinition): void;
|
|
93
|
+
/** Create a race (you're seated; the hub shows the waiting card). Rejects with `HubError` or `OfflineError`. */
|
|
94
|
+
create(options?: RaceCreateOptions): Promise<RoomInfo>;
|
|
95
|
+
/** Join a race by its 5-character code (or watch: `{ spectate: true }`). */
|
|
96
|
+
join(code: string, options?: JoinOptions): Promise<RoomInfo>;
|
|
97
|
+
/** Public races in this game waiting for racers. */
|
|
98
|
+
list(): Promise<RoomInfo[]>;
|
|
99
|
+
/** Open the hub's "Open races" sheet (join one, or type a code). */
|
|
100
|
+
browse(): void;
|
|
101
|
+
/** Open the hub's race history (this game by default). */
|
|
102
|
+
openHistory(options?: RaceHistoryViewOptions): void;
|
|
103
|
+
/** The signed-in player's races. */
|
|
104
|
+
history(query?: RaceHistoryQuery): Promise<RaceHistory$1>;
|
|
105
|
+
/** Live stats for the HUD (and optional 0..1 progress). Throttled and coalesced: call it on every change. */
|
|
106
|
+
status(stats: RaceStats, progress?: number): void;
|
|
107
|
+
/** I finished: resolves with the result if I won, `null` if someone was first. */
|
|
108
|
+
finish(stats?: RaceStats): Promise<RaceResult | null>;
|
|
109
|
+
/** I'm out (game over, no lives): the others race on, the last one in wins. */
|
|
110
|
+
lose(stats?: RaceStats): Promise<void>;
|
|
111
|
+
/** Give up. */
|
|
112
|
+
forfeit(): Promise<void>;
|
|
113
|
+
/** Leave the race room (a forfeit if it's running). */
|
|
114
|
+
leave(): Promise<void>;
|
|
115
|
+
/** Ask for another round after a race. */
|
|
116
|
+
rematch(params?: RaceParams): Promise<void>;
|
|
117
|
+
/** The race room this page is in (its `RoomInfo` has `race`), or `null`. */
|
|
118
|
+
current(): RoomInfo | null;
|
|
119
|
+
/** Subscribe to race events; works before the runtime loads. Returns the unsubscribe function. */
|
|
120
|
+
on<Name extends keyof RaceEvents>(event: Name, listener: (payload: RaceEvents[Name]) => void): () => void;
|
|
121
|
+
}
|
|
122
|
+
/** What the runtime's `race` section implements (the same surface `hub.race` forwards). */
|
|
123
|
+
type RaceRuntimeApi = HubRaceApi;
|
|
124
|
+
//#endregion
|
|
125
|
+
export { RaceHistoryQuery as a, RaceRuntimeApi as c, RaceEvents as i, RaceStart as l, RaceCreateOptions as n, RaceHistoryViewOptions as o, RaceDefinition as r, RaceHudPlace as s, HubRaceApi as t };
|
|
126
|
+
//# sourceMappingURL=race-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"race-types.d.ts","names":["RaceHistory"],"sources":["../../src/realtime/race-types.ts"],"mappings":";;;;;UAUiB;;EAEf;;EAEA;;EAEA;;EAEA,QAAQ;;EAER;;EAEA;;EAEA;;EAEA;;;UAIe;;EAEf,SAAS;;EAET;;EAEA;;EAEA;;;KAIU;;UAGK;;EAEf,MAAM,MAAM;;EAEZ,KAAK,QAAQ;;EAEb;;EAEA;IAAgB,QAAQ;;;;UAIT;;EAEf,MAAM;;EAEN,OAAO;;EAEP,QAAQ;;EAER,QAAQ;;EAER;IAAU;;;;UAIK;;EAEf;;EAEA;;EAEA;;EAEA;;;UAIe;;EAEf;;EAEA;;;;;;;;;UAUe;;EAEf,OAAO,YAAY;;EAEnB,OAAO,UAAU,oBAAoB,QAAQ;;EAE7C,KAAK,cAAc,UAAU,cAAc,QAAQ;;EAEnD,QAAQ,QAAQ;;EAEhB;;EAEA,YAAY,UAAU;;EAEtB,QAAQ,QAAQ,mBAAmB,QAAQA;;EAE3C,OAAO,OAAO,WAAW;;EAEzB,OAAO,QAAQ,YAAY,QAAQ;;EAEnC,KAAK,QAAQ,YAAY;;EAEzB,WAAW;;EAEX,SAAS;;EAET,QAAQ,SAAS,aAAa;;EAE9B,WAAW;;EAEX,GAAG,mBAAmB,YAAY,OAAO,MAAM,WAAW,SAAS,WAAW;;;KAIpE,iBAAiB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import "./wire-types.js";
|
|
2
|
+
import { t as HubRaceApi } from "./race-types.js";
|
|
3
|
+
import { RaceOutcome, RaceParams as RaceParams$1, RaceRecord, RaceResult as RaceResult$1, RaceStatValue, RaceState, RaceStats as RaceStats$1, Racer, RacerResult, RacerState, RoomInfo as RoomInfo$1 } from "@diffenderfer-games/hub-contract";
|
|
4
|
+
//#region src/realtime/race-forwarder.d.ts
|
|
5
|
+
/** `hub.race`: races. */
|
|
6
|
+
declare const raceForwarder: HubRaceApi;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { RaceStatValue as a, Racer as c, RoomInfo$1 as d, raceForwarder as f, RaceResult$1 as i, RacerResult as l, RaceParams$1 as n, RaceState as o, RaceRecord as r, RaceStats$1 as s, RaceOutcome as t, RacerState as u };
|
|
9
|
+
//# sourceMappingURL=race.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"race.d.ts","names":[],"sources":["../../src/realtime/race-forwarder.ts"],"mappings":";;;;;cA6Ba,eAAe"}
|