@diffenderfer-games/hub 2.0.0-next.4 → 2.0.0-next.6
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 +54 -11
- package/README.md +3 -6
- package/dist/auto.d.ts +5 -5
- package/dist/auto.js +2 -2
- package/dist/avatar-pixi.d.ts +147 -0
- package/dist/avatar-pixi.d.ts.map +1 -0
- package/dist/avatar-pixi.js +280 -0
- package/dist/avatar-pixi.js.map +1 -0
- package/dist/avatar-svg.d.ts +4 -0
- package/dist/avatar-svg.js +5 -0
- package/dist/avatar-three.d.ts +69 -0
- package/dist/avatar-three.d.ts.map +1 -0
- package/dist/avatar-three.js +49 -0
- package/dist/avatar-three.js.map +1 -0
- package/dist/avatar.d.ts +7 -0
- package/dist/avatar.js +487 -0
- package/dist/avatar.js.map +1 -0
- package/dist/daily.d.ts +2 -2
- package/dist/doctor/cli.mjs +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.js +2 -2
- package/dist/input.d.ts +2 -2
- package/dist/shared/animator.d.ts +104 -0
- package/dist/shared/animator.d.ts.map +1 -0
- package/dist/shared/art.js +1804 -0
- package/dist/shared/art.js.map +1 -0
- package/dist/shared/atlas.d.ts +134 -0
- package/dist/shared/atlas.d.ts.map +1 -0
- package/dist/shared/avatar.d.ts +117 -0
- package/dist/shared/avatar.d.ts.map +1 -0
- package/dist/shared/bridge.js +13 -5
- package/dist/shared/bridge.js.map +1 -1
- package/dist/shared/client-version.gen.js +1 -1
- package/dist/shared/daily.d.ts +129 -18
- package/dist/shared/daily.d.ts.map +1 -1
- package/dist/shared/daily.js +120 -26
- package/dist/shared/daily.js.map +1 -1
- package/dist/shared/defineProperty.js +39 -0
- package/dist/shared/describe.d.ts +32 -0
- package/dist/shared/describe.d.ts.map +1 -0
- package/dist/shared/describe.js +101 -0
- package/dist/shared/describe.js.map +1 -0
- package/dist/shared/globals.js +1 -39
- package/dist/shared/globals.js.map +1 -1
- package/dist/shared/index.d.ts +537 -17
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/input.d.ts +31 -13
- package/dist/shared/input.d.ts.map +1 -1
- package/dist/shared/input.js +40 -2
- package/dist/shared/input.js.map +1 -1
- package/dist/shared/json-guards.js +48 -0
- package/dist/shared/json-guards.js.map +1 -0
- package/dist/shared/live-canvas.js +62 -0
- package/dist/shared/live-canvas.js.map +1 -0
- package/dist/shared/mp.js +1 -1
- package/dist/shared/overlays.js +800 -0
- package/dist/shared/overlays.js.map +1 -0
- package/dist/shared/page-stack.js +2 -1
- package/dist/shared/page-stack.js.map +1 -1
- package/dist/shared/pose-key.js +249 -0
- package/dist/shared/pose-key.js.map +1 -0
- package/dist/shared/race.js +1 -1
- package/dist/shared/rooms.js +1 -1
- package/dist/shared/scene.d.ts +90 -0
- package/dist/shared/scene.d.ts.map +1 -0
- package/dist/shared/social.d.ts +55 -4
- package/dist/shared/social.d.ts.map +1 -1
- package/dist/shared/src.js +2217 -199
- package/dist/shared/src.js.map +1 -1
- package/dist/shared/svg-markup.js +1860 -0
- package/dist/shared/svg-markup.js.map +1 -0
- package/dist/shared/svg.js +27 -0
- package/dist/shared/svg.js.map +1 -0
- package/dist/shared/types.d.ts +166 -0
- package/dist/shared/types.d.ts.map +1 -0
- package/dist/social.d.ts +2 -2
- package/dist/social.js +2 -2
- package/dist/turns.d.ts +39 -0
- package/dist/turns.d.ts.map +1 -0
- package/dist/turns.js +117 -0
- package/dist/turns.js.map +1 -0
- package/package.json +33 -3
- package/src/avatar/adapters/pixi-avatar.ts +73 -0
- package/src/avatar/adapters/pixi-crowd.ts +302 -0
- package/src/avatar/adapters/pixi-types.ts +84 -0
- package/src/avatar/adapters/three.ts +126 -0
- package/src/avatar/animator/animator.ts +285 -0
- package/src/avatar/animator/reactions.ts +44 -0
- package/src/avatar/animator/schedule.ts +73 -0
- package/src/avatar/art/beard.ts +49 -0
- package/src/avatar/art/glasses.ts +9 -0
- package/src/avatar/art/hair.ts +254 -0
- package/src/avatar/art/headwear.ts +75 -0
- package/src/avatar/art/index.ts +21 -0
- package/src/avatar/art/shape.ts +68 -0
- package/src/avatar/art-store.ts +36 -0
- package/src/avatar/atlas.ts +236 -0
- package/src/avatar/catalog-view.ts +14 -0
- package/src/avatar/colour.ts +109 -0
- package/src/avatar/describe.ts +76 -0
- package/src/avatar/face.ts +187 -0
- package/src/avatar/geom.ts +168 -0
- package/src/avatar/layout.ts +47 -0
- package/src/avatar/look-like.ts +52 -0
- package/src/avatar/outputs/bitmap.ts +75 -0
- package/src/avatar/outputs/canvas-paint.ts +177 -0
- package/src/avatar/outputs/canvas.ts +62 -0
- package/src/avatar/outputs/custom-element.ts +140 -0
- package/src/avatar/outputs/element.ts +58 -0
- package/src/avatar/outputs/live-canvas.ts +57 -0
- package/src/avatar/outputs/overlay-svg.ts +22 -0
- package/src/avatar/outputs/pose-key.ts +30 -0
- package/src/avatar/outputs/svg-markup.ts +113 -0
- package/src/avatar/outputs/svg.ts +41 -0
- package/src/avatar/overlays.ts +128 -0
- package/src/avatar/render/body.ts +116 -0
- package/src/avatar/render/colours.ts +81 -0
- package/src/avatar/render/compose.ts +258 -0
- package/src/avatar/render/context.ts +117 -0
- package/src/avatar/render/eyes.ts +78 -0
- package/src/avatar/render/eyewear.ts +56 -0
- package/src/avatar/render/frame.ts +60 -0
- package/src/avatar/render/head.ts +81 -0
- package/src/avatar/render/mouth.ts +86 -0
- package/src/avatar/render/props.ts +91 -0
- package/src/avatar/render/types.ts +84 -0
- package/src/avatar/scene.ts +119 -0
- package/src/avatar-pixi.ts +20 -0
- package/src/avatar-svg.ts +21 -0
- package/src/avatar-three.ts +18 -0
- package/src/avatar.ts +62 -0
- package/src/core/avatar/avatar-cache.ts +95 -0
- package/src/core/avatar/avatar-ref.ts +34 -0
- package/src/core/avatar/avatar-types.ts +43 -0
- package/src/core/avatar/hub-avatar.ts +308 -0
- package/src/core/connection.ts +9 -0
- package/src/core/errors.ts +15 -2
- package/src/core/hub-progress.ts +269 -202
- package/src/core/hub.ts +174 -6
- package/src/core/offline/cloud-saves.ts +62 -0
- package/src/core/offline/hub-kinds/avatar-kind.ts +42 -0
- package/src/core/offline/hub-kinds/index.ts +14 -3
- package/src/core/offline/hub-kinds/progress-kinds.ts +21 -4
- package/src/core/offline/hub-kinds/saved-kind.ts +93 -0
- package/src/core/offline/local-store.ts +46 -1
- package/src/core/page-account.ts +121 -0
- package/src/core/rest/routes.gen.ts +31 -1
- package/src/core/resume/hub-resume.ts +39 -5
- package/src/core/resume/resume-types.ts +2 -2
- package/src/core/saved/daily-saves.ts +196 -0
- package/src/core/saved/daily-seed.ts +16 -0
- package/src/core/saved/hub-saved.ts +221 -0
- package/src/core/saved/local-saved.ts +122 -0
- package/src/core/saved/saved-list.ts +129 -0
- package/src/core/saved/saved-open.ts +104 -0
- package/src/core/saved/saved-order.ts +49 -0
- package/src/core/saved/saved-types.ts +24 -0
- package/src/core/turns/hub-turns.ts +140 -0
- package/src/core/turns/turn-game.ts +388 -0
- package/src/core/version/client-version.gen.ts +2 -2
- package/src/daily/daily-system.ts +112 -13
- package/src/daily/page-daily.ts +2 -2
- package/src/daily/types.ts +46 -9
- package/src/doctor/hub-version-fetch.ts +43 -43
- package/src/index.ts +11 -1
- package/src/input/input-system.ts +10 -1
- package/src/input/navigator.ts +11 -0
- package/src/input.ts +1 -0
- package/src/overlay/overlay.ts +25 -1
- package/src/realtime/runtime-api.ts +14 -3
- package/src/social.ts +1 -0
- package/src/turns-kit/check-rules.ts +182 -0
- package/src/turns.ts +13 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"overlays.js","names":[],"sources":["../../src/avatar/outputs/bitmap.ts","../../src/avatar/animator/reactions.ts","../../src/avatar/animator/schedule.ts","../../src/avatar/animator/animator.ts","../../src/avatar/layout.ts","../../src/avatar/overlays.ts"],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { a as readField, r as hasMethods, t as LEGACY_GLOBAL_NAMES } from "./globals.js";
|
|
2
|
+
import { t as _defineProperty } from "./defineProperty.js";
|
|
2
3
|
//#region src/uistack/play-suspension.ts
|
|
3
4
|
/**
|
|
4
5
|
* While hub UI covers the game, its `play` input group is held disabled (so a
|
|
@@ -1 +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":"
|
|
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,249 @@
|
|
|
1
|
+
import { P as toLook, S as pixelSize, a as composeAvatar, b as frameOf, t as RIM_COLOUR, x as framed, y as FRAMES } from "./svg-markup.js";
|
|
2
|
+
//#region src/avatar/outputs/canvas-paint.ts
|
|
3
|
+
const FONTS = {
|
|
4
|
+
mono: "'Space Mono', monospace",
|
|
5
|
+
pixel: "'VT323', monospace"
|
|
6
|
+
};
|
|
7
|
+
const pathCache = /* @__PURE__ */ new Map();
|
|
8
|
+
const PATH_CACHE = 4096;
|
|
9
|
+
function path2d(d) {
|
|
10
|
+
let p = pathCache.get(d);
|
|
11
|
+
if (!p) {
|
|
12
|
+
p = new Path2D(d);
|
|
13
|
+
if (pathCache.size >= PATH_CACHE) pathCache.clear();
|
|
14
|
+
pathCache.set(d, p);
|
|
15
|
+
}
|
|
16
|
+
return p;
|
|
17
|
+
}
|
|
18
|
+
function applyTf(ctx, tf) {
|
|
19
|
+
for (const op of tf ?? []) switch (op.k) {
|
|
20
|
+
case "t":
|
|
21
|
+
ctx.translate(op.x, op.y);
|
|
22
|
+
break;
|
|
23
|
+
case "s":
|
|
24
|
+
ctx.scale(op.x, op.y);
|
|
25
|
+
break;
|
|
26
|
+
case "r":
|
|
27
|
+
ctx.rotate(op.a * Math.PI / 180);
|
|
28
|
+
break;
|
|
29
|
+
case "skx": ctx.transform(1, 0, Math.tan(op.a * Math.PI / 180), 1, 0, 0);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
function shapePath(node) {
|
|
33
|
+
if (node.k === "path") return path2d(node.d);
|
|
34
|
+
if (node.k === "ellipse") {
|
|
35
|
+
const p = new Path2D();
|
|
36
|
+
p.ellipse(node.cx, node.cy, node.rx, node.ry, 0, 0, Math.PI * 2);
|
|
37
|
+
return p;
|
|
38
|
+
}
|
|
39
|
+
if (node.k === "rect") {
|
|
40
|
+
const p = new Path2D();
|
|
41
|
+
const r = Math.min(node.r ?? 0, node.w / 2, node.h / 2);
|
|
42
|
+
p.moveTo(node.x + r, node.y);
|
|
43
|
+
p.arcTo(node.x + node.w, node.y, node.x + node.w, node.y + node.h, r);
|
|
44
|
+
p.arcTo(node.x + node.w, node.y + node.h, node.x, node.y + node.h, r);
|
|
45
|
+
p.arcTo(node.x, node.y + node.h, node.x, node.y, r);
|
|
46
|
+
p.arcTo(node.x, node.y, node.x + node.w, node.y, r);
|
|
47
|
+
p.closePath();
|
|
48
|
+
return p;
|
|
49
|
+
}
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
function applyClip(ctx, clip) {
|
|
53
|
+
const all = new Path2D();
|
|
54
|
+
for (const shape of clip.shapes) {
|
|
55
|
+
const p = shapePath(shape);
|
|
56
|
+
if (p) all.addPath(p);
|
|
57
|
+
}
|
|
58
|
+
ctx.clip(all, clip.evenOdd ? "evenodd" : "nonzero");
|
|
59
|
+
}
|
|
60
|
+
function fillAndStroke(ctx, p, paint) {
|
|
61
|
+
const alpha = ctx.globalAlpha;
|
|
62
|
+
if (paint.opacity !== void 0) ctx.globalAlpha = alpha * paint.opacity;
|
|
63
|
+
if (paint.fill && paint.fill !== "none") {
|
|
64
|
+
const fillAlpha = ctx.globalAlpha;
|
|
65
|
+
if (paint.fillOpacity !== void 0) ctx.globalAlpha = fillAlpha * paint.fillOpacity;
|
|
66
|
+
ctx.fillStyle = paint.fill;
|
|
67
|
+
ctx.fill(p, paint.evenOdd ? "evenodd" : "nonzero");
|
|
68
|
+
ctx.globalAlpha = fillAlpha;
|
|
69
|
+
}
|
|
70
|
+
if (paint.stroke && paint.stroke !== "none") {
|
|
71
|
+
ctx.strokeStyle = paint.stroke;
|
|
72
|
+
ctx.lineWidth = paint.sw ?? 1;
|
|
73
|
+
ctx.lineJoin = "round";
|
|
74
|
+
ctx.lineCap = paint.cap ?? "round";
|
|
75
|
+
ctx.stroke(p);
|
|
76
|
+
}
|
|
77
|
+
ctx.globalAlpha = alpha;
|
|
78
|
+
}
|
|
79
|
+
/** Paints scene nodes in the context's current transform (rig units → pixels is the caller's job). */
|
|
80
|
+
function paintNodes(ctx, nodes, layer) {
|
|
81
|
+
for (const node of nodes) paintNode(ctx, node, layer);
|
|
82
|
+
}
|
|
83
|
+
function paintRim(ctx, children, layer) {
|
|
84
|
+
const target = ctx.canvas;
|
|
85
|
+
const made = layer?.(target.width, target.height);
|
|
86
|
+
if (!made || !("filter" in made.ctx)) return false;
|
|
87
|
+
made.ctx.setTransform(ctx.getTransform());
|
|
88
|
+
paintNodes(made.ctx, children, layer);
|
|
89
|
+
const scale = Math.hypot(ctx.getTransform().a, ctx.getTransform().b);
|
|
90
|
+
const r = Math.max(1, 2.8 * scale);
|
|
91
|
+
const c = `${RIM_COLOUR}7a`;
|
|
92
|
+
ctx.save();
|
|
93
|
+
ctx.setTransform(1, 0, 0, 1, 0, 0);
|
|
94
|
+
ctx.filter = `drop-shadow(${String(r)}px 0 0 ${c}) drop-shadow(${String(-r)}px 0 0 ${c}) drop-shadow(0 ${String(r)}px 0 ${c}) drop-shadow(0 ${String(-r)}px 0 ${c})`;
|
|
95
|
+
ctx.drawImage(made.canvas, 0, 0);
|
|
96
|
+
ctx.restore();
|
|
97
|
+
return true;
|
|
98
|
+
}
|
|
99
|
+
function paintNode(ctx, node, layer) {
|
|
100
|
+
ctx.save();
|
|
101
|
+
if (node.k === "g") {
|
|
102
|
+
applyTf(ctx, node.tf);
|
|
103
|
+
if (node.clip) applyClip(ctx, node.clip);
|
|
104
|
+
if (node.opacity !== void 0) ctx.globalAlpha *= node.opacity;
|
|
105
|
+
if (!(node.rim === true && paintRim(ctx, node.children, layer))) paintNodes(ctx, node.children, layer);
|
|
106
|
+
ctx.restore();
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
if (node.k === "text") {
|
|
110
|
+
ctx.font = `${node.bold ? "700 " : ""}${String(node.size)}px ${FONTS[node.font]}`;
|
|
111
|
+
ctx.textAlign = node.anchor === "middle" ? "center" : "left";
|
|
112
|
+
ctx.textBaseline = "alphabetic";
|
|
113
|
+
if (node.opacity !== void 0) ctx.globalAlpha *= node.opacity;
|
|
114
|
+
if (node.stroke && node.stroke !== "none") {
|
|
115
|
+
ctx.strokeStyle = node.stroke;
|
|
116
|
+
ctx.lineWidth = node.sw ?? 1;
|
|
117
|
+
ctx.lineJoin = "round";
|
|
118
|
+
ctx.strokeText(node.text, node.x, node.y);
|
|
119
|
+
}
|
|
120
|
+
if (node.fill && node.fill !== "none") {
|
|
121
|
+
ctx.fillStyle = node.fill;
|
|
122
|
+
ctx.fillText(node.text, node.x, node.y);
|
|
123
|
+
}
|
|
124
|
+
ctx.restore();
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
127
|
+
applyTf(ctx, node.tf);
|
|
128
|
+
const p = shapePath(node);
|
|
129
|
+
if (p) fillAndStroke(ctx, p, node);
|
|
130
|
+
ctx.restore();
|
|
131
|
+
}
|
|
132
|
+
//#endregion
|
|
133
|
+
//#region src/avatar/outputs/canvas.ts
|
|
134
|
+
/**
|
|
135
|
+
* `render.canvas` and `render.canvasAt`: draw an avatar on a 2D canvas,
|
|
136
|
+
* synchronously once the art is ready. `canvas` fills a frame box at (x, y);
|
|
137
|
+
* `canvasAt` puts the feet at (x, y) with a pixels-per-unit scale (the world
|
|
138
|
+
* and crowds).
|
|
139
|
+
*/
|
|
140
|
+
/** A scratch canvas for the rim layer: an `OffscreenCanvas`, else a DOM canvas, else none. */
|
|
141
|
+
const defaultLayer = (width, height) => {
|
|
142
|
+
if (typeof OffscreenCanvas !== "undefined") {
|
|
143
|
+
const canvas = new OffscreenCanvas(width, height);
|
|
144
|
+
const ctx = canvas.getContext("2d");
|
|
145
|
+
return ctx ? {
|
|
146
|
+
canvas,
|
|
147
|
+
ctx
|
|
148
|
+
} : null;
|
|
149
|
+
}
|
|
150
|
+
if (typeof document !== "undefined") {
|
|
151
|
+
const canvas = document.createElement("canvas");
|
|
152
|
+
canvas.width = width;
|
|
153
|
+
canvas.height = height;
|
|
154
|
+
const ctx = canvas.getContext("2d");
|
|
155
|
+
return ctx ? {
|
|
156
|
+
canvas,
|
|
157
|
+
ctx
|
|
158
|
+
} : null;
|
|
159
|
+
}
|
|
160
|
+
return null;
|
|
161
|
+
};
|
|
162
|
+
/** Paints scene nodes with rig space mapped to the frame box at (x, y). */
|
|
163
|
+
function paintFramed(ctx, nodes, opts) {
|
|
164
|
+
const [fx, fy] = FRAMES[frameOf(opts)];
|
|
165
|
+
const { scale } = pixelSize(opts);
|
|
166
|
+
ctx.save();
|
|
167
|
+
ctx.translate(opts.x, opts.y);
|
|
168
|
+
ctx.scale(scale, scale);
|
|
169
|
+
ctx.translate(-fx, -fy);
|
|
170
|
+
paintNodes(ctx, nodes, defaultLayer);
|
|
171
|
+
ctx.restore();
|
|
172
|
+
}
|
|
173
|
+
/** Draws an avatar in a frame box whose top-left is (x, y), `size` px on its longer edge. */
|
|
174
|
+
function renderCanvas(ctx, like, opts) {
|
|
175
|
+
const look = toLook(like);
|
|
176
|
+
paintFramed(ctx, framed(composeAvatar(look, opts).nodes, look, opts), opts);
|
|
177
|
+
}
|
|
178
|
+
/** Draws the full character with its feet at (x, y), `scale` px per rig unit (a 100-unit head). */
|
|
179
|
+
function renderCanvasAt(ctx, like, opts) {
|
|
180
|
+
ctx.save();
|
|
181
|
+
ctx.translate(opts.x, opts.y);
|
|
182
|
+
ctx.scale(opts.scale, opts.scale);
|
|
183
|
+
paintNodes(ctx, composeAvatar(toLook(like), {
|
|
184
|
+
frame: "full",
|
|
185
|
+
...opts
|
|
186
|
+
}).nodes, defaultLayer);
|
|
187
|
+
ctx.restore();
|
|
188
|
+
}
|
|
189
|
+
//#endregion
|
|
190
|
+
//#region src/avatar/outputs/pose-key.ts
|
|
191
|
+
const q = (v, step) => v === void 0 ? "" : String(Math.round(v / step));
|
|
192
|
+
function faceKey(face) {
|
|
193
|
+
if (!face) return "";
|
|
194
|
+
const m = face.mouth;
|
|
195
|
+
return [
|
|
196
|
+
face.lidL,
|
|
197
|
+
face.lidR,
|
|
198
|
+
face.lowL,
|
|
199
|
+
face.lowR,
|
|
200
|
+
face.browL.dy,
|
|
201
|
+
face.browL.tilt,
|
|
202
|
+
face.browR.dy,
|
|
203
|
+
face.browR.tilt,
|
|
204
|
+
m.open,
|
|
205
|
+
m.sL,
|
|
206
|
+
m.sR,
|
|
207
|
+
m.w,
|
|
208
|
+
m.round,
|
|
209
|
+
face.cheeks,
|
|
210
|
+
face.headTilt
|
|
211
|
+
].map((v) => q(v, .05)).join(",") + face.extras.join("");
|
|
212
|
+
}
|
|
213
|
+
/** The pose part of a cache key. */
|
|
214
|
+
function poseKey(pose) {
|
|
215
|
+
if (!pose) return "-";
|
|
216
|
+
return [
|
|
217
|
+
pose.expression ?? "",
|
|
218
|
+
faceKey(pose.face),
|
|
219
|
+
q(pose.look?.x, .05),
|
|
220
|
+
q(pose.look?.y, .05),
|
|
221
|
+
q(pose.blink, .1),
|
|
222
|
+
q(pose.talk, .1),
|
|
223
|
+
pose.body ?? "",
|
|
224
|
+
q(pose.phase, .125),
|
|
225
|
+
pose.status ?? "",
|
|
226
|
+
q(pose.bob?.x, .25),
|
|
227
|
+
q(pose.bob?.y, .25),
|
|
228
|
+
q(pose.tilt, .5),
|
|
229
|
+
q(pose.squash, .005)
|
|
230
|
+
].join("|");
|
|
231
|
+
}
|
|
232
|
+
/** The full render key for caches: code, pose bucket, size, frame, facing and background. */
|
|
233
|
+
function renderKey(code, opts) {
|
|
234
|
+
return [
|
|
235
|
+
code,
|
|
236
|
+
poseKey(opts.pose),
|
|
237
|
+
String(opts.size ?? 48),
|
|
238
|
+
opts.frame ?? "head",
|
|
239
|
+
opts.facing ?? opts.view ?? "S",
|
|
240
|
+
opts.background ?? "",
|
|
241
|
+
opts.rim ? "r" : "",
|
|
242
|
+
opts.stool ? "s" : "",
|
|
243
|
+
opts.shadow === void 0 ? "" : String(opts.shadow)
|
|
244
|
+
].join("~");
|
|
245
|
+
}
|
|
246
|
+
//#endregion
|
|
247
|
+
export { paintNodes as a, renderCanvasAt as i, defaultLayer as n, renderCanvas as r, renderKey as t };
|
|
248
|
+
|
|
249
|
+
//# sourceMappingURL=pose-key.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pose-key.js","names":[],"sources":["../../src/avatar/outputs/canvas-paint.ts","../../src/avatar/outputs/canvas.ts","../../src/avatar/outputs/pose-key.ts"],"mappings":"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"}
|
package/dist/shared/race.js
CHANGED
package/dist/shared/rooms.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { t as _defineProperty } from "./defineProperty.js";
|
|
2
2
|
import { n as pageBridge, r as rethrowAsHubError, t as outdatedRuntime } from "./bridge.js";
|
|
3
3
|
//#region src/realtime/rooms-forwarder.ts
|
|
4
4
|
/** The rooms this page is in (created, joined or reclaimed, and not yet left or closed). */
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
//#region src/avatar/scene.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* The display list every renderer draws: a small tree of groups and shapes
|
|
4
|
+
* in rig units. The composer builds it once per pose; `toSvg` turns it into
|
|
5
|
+
* markup, `paintCanvas` draws it on a 2D canvas, and the Pixi and three.js
|
|
6
|
+
* adapters draw it through a canvas. Colours in a scene are always derived
|
|
7
|
+
* `#rrggbb` values or fixed constants, never caller text.
|
|
8
|
+
*/
|
|
9
|
+
/** One transform step, applied in order (SVG semantics). */
|
|
10
|
+
type TfOp = {
|
|
11
|
+
readonly k: 't';
|
|
12
|
+
readonly x: number;
|
|
13
|
+
readonly y: number;
|
|
14
|
+
} | {
|
|
15
|
+
readonly k: 's';
|
|
16
|
+
readonly x: number;
|
|
17
|
+
readonly y: number;
|
|
18
|
+
} | {
|
|
19
|
+
readonly k: 'r';
|
|
20
|
+
readonly a: number;
|
|
21
|
+
} | {
|
|
22
|
+
readonly k: 'skx';
|
|
23
|
+
readonly a: number;
|
|
24
|
+
};
|
|
25
|
+
/** How a shape is painted. */
|
|
26
|
+
interface Paint {
|
|
27
|
+
readonly fill?: string;
|
|
28
|
+
readonly fillOpacity?: number;
|
|
29
|
+
readonly stroke?: string;
|
|
30
|
+
readonly sw?: number;
|
|
31
|
+
readonly cap?: 'round' | 'butt';
|
|
32
|
+
readonly opacity?: number;
|
|
33
|
+
readonly evenOdd?: boolean;
|
|
34
|
+
}
|
|
35
|
+
/** A path shape. */
|
|
36
|
+
interface PathNode extends Paint {
|
|
37
|
+
readonly k: 'path';
|
|
38
|
+
readonly d: string;
|
|
39
|
+
readonly tf?: readonly TfOp[];
|
|
40
|
+
}
|
|
41
|
+
/** An ellipse (a circle when rx = ry). */
|
|
42
|
+
interface EllipseNode extends Paint {
|
|
43
|
+
readonly k: 'ellipse';
|
|
44
|
+
readonly cx: number;
|
|
45
|
+
readonly cy: number;
|
|
46
|
+
readonly rx: number;
|
|
47
|
+
readonly ry: number;
|
|
48
|
+
readonly tf?: readonly TfOp[];
|
|
49
|
+
}
|
|
50
|
+
/** A rectangle with optional rounded corners. */
|
|
51
|
+
interface RectNode extends Paint {
|
|
52
|
+
readonly k: 'rect';
|
|
53
|
+
readonly x: number;
|
|
54
|
+
readonly y: number;
|
|
55
|
+
readonly w: number;
|
|
56
|
+
readonly h: number;
|
|
57
|
+
readonly r?: number;
|
|
58
|
+
readonly tf?: readonly TfOp[];
|
|
59
|
+
}
|
|
60
|
+
/** A line of text (overlay labels and FX glyphs). */
|
|
61
|
+
interface TextNode extends Paint {
|
|
62
|
+
readonly k: 'text';
|
|
63
|
+
readonly x: number;
|
|
64
|
+
readonly y: number;
|
|
65
|
+
readonly text: string;
|
|
66
|
+
readonly size: number;
|
|
67
|
+
readonly font: 'mono' | 'pixel';
|
|
68
|
+
readonly anchor?: 'start' | 'middle';
|
|
69
|
+
readonly bold?: boolean;
|
|
70
|
+
}
|
|
71
|
+
/** A clip region: the union of its shapes (even-odd when asked). */
|
|
72
|
+
interface Clip {
|
|
73
|
+
readonly shapes: readonly (PathNode | EllipseNode | RectNode)[];
|
|
74
|
+
readonly evenOdd?: boolean;
|
|
75
|
+
}
|
|
76
|
+
/** A group: a transform, an optional clip and opacity, and children. */
|
|
77
|
+
interface GroupNode {
|
|
78
|
+
readonly k: 'g';
|
|
79
|
+
readonly tf?: readonly TfOp[];
|
|
80
|
+
readonly clip?: Clip;
|
|
81
|
+
readonly opacity?: number;
|
|
82
|
+
/** A soft light rim around the silhouette (the world, §14.2). */
|
|
83
|
+
readonly rim?: boolean;
|
|
84
|
+
readonly children: readonly SceneNode[];
|
|
85
|
+
}
|
|
86
|
+
/** Anything in a scene. */
|
|
87
|
+
type SceneNode = GroupNode | PathNode | EllipseNode | RectNode | TextNode;
|
|
88
|
+
//#endregion
|
|
89
|
+
export { SceneNode as t };
|
|
90
|
+
//# sourceMappingURL=scene.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene.d.ts","names":[],"sources":["../../src/avatar/scene.ts"],"mappings":";;;;;;;;;KASY;WACG;WAAiB;WAAoB;;WACrC;WAAiB;WAAoB;;WACrC;WAAiB;;WACjB;WAAmB;;;UAGjB;WACN;WACA;WACA;WACA;WACA;WACA;WACA;;;UAIM,iBAAiB;WACvB;WACA;WACA,cAAc;;;UAIR,oBAAoB;WAC1B;WACA;WACA;WACA;WACA;WACA,cAAc;;;UAIR,iBAAiB;WACvB;WACA;WACA;WACA;WACA;WACA;WACA,cAAc;;;UAIR,iBAAiB;WACvB;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;;UAIM;WACN,kBAAkB,WAAW,cAAc;WAC3C;;;UAIM;WACN;WACA,cAAc;WACd,OAAO;WACP;;WAEA;WACA,mBAAmB;;;KAIlB,YAAY,YAAY,WAAW,cAAc,WAAW"}
|
package/dist/shared/social.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import "./wire-types.js";
|
|
|
2
2
|
import { n as HubMpApi, r as InviteLinkMethods } from "./multiplayer-types.js";
|
|
3
3
|
import { n as HubRoomsApi, s as RoomReclaimMethods } from "./room-types.js";
|
|
4
4
|
import { t as HubRaceApi } from "./race-types.js";
|
|
5
|
+
import { AvatarLook } from "@diffenderfer-games/hub-contract/avatar";
|
|
5
6
|
import { Audience, ChatMode, ChatMode as ChatMode$1, Conversation, Counts, ErrorBody, FriendEntry, FriendEntry as FriendEntry$1, Invite, Invite as Invite$1, JoinInfo as JoinInfo$1, Launch as Launch$1, LaunchTicket, Message, MessagesPage, NotifyChange, NotifyPrefs, Party, Party as Party$1, PlayerCard, PlayerLite, Presence, Presence as Presence$1, PresenceInput, PresenceInput as PresenceInput$1, PresenceKind, RaceOutcome, RaceParams as RaceParams$1, RaceRecord, RaceResult as RaceResult$1, RaceStatValue, RaceState, RaceStats as RaceStats$1, Racer, RacerResult, RacerState, RecentPlayer, Relation, ReportInput, ReportKind, ReportReason, RoomInfo as RoomInfo$1, SocialConfig, SocialMe, Suggestion, SuggestionStatus } from "@diffenderfer-games/hub-contract";
|
|
6
7
|
//#region src/realtime/social-types.d.ts
|
|
7
8
|
/** Online counts as a game sees them. */
|
|
@@ -108,14 +109,55 @@ interface RealtimeHubLink {
|
|
|
108
109
|
/** Called once by the core client so forwarder errors use its classes and tickets use its REST client. */
|
|
109
110
|
declare function linkRealtimeToHub(link: RealtimeHubLink): void;
|
|
110
111
|
//#endregion
|
|
112
|
+
//#region src/core/avatar/avatar-types.d.ts
|
|
113
|
+
/**
|
|
114
|
+
* A player's avatar as games hold it: the code (pass it to any renderer),
|
|
115
|
+
* the decoded look, whether it is their generated default, and whether the
|
|
116
|
+
* player is hidden from you (draw the silhouette).
|
|
117
|
+
*/
|
|
118
|
+
interface AvatarRef {
|
|
119
|
+
readonly code: string;
|
|
120
|
+
/** `null` when hidden or the code is malformed (renderers draw the silhouette). */
|
|
121
|
+
readonly look: AvatarLook | null;
|
|
122
|
+
/** They never designed one: this is their generated default. */
|
|
123
|
+
readonly isDefault: boolean;
|
|
124
|
+
/** Hidden where the username is hidden (§2.8). */
|
|
125
|
+
readonly hidden: boolean;
|
|
126
|
+
}
|
|
127
|
+
/** A player's avatar changed (`hub.avatar.on('change')`). */
|
|
128
|
+
interface AvatarChange {
|
|
129
|
+
readonly userId: number;
|
|
130
|
+
readonly ref: AvatarRef;
|
|
131
|
+
}
|
|
132
|
+
/** Options for the designer. */
|
|
133
|
+
interface OpenDesignerOptions {
|
|
134
|
+
/** Why it opened (`'game'`, `'world'`, …), for metrics only. */
|
|
135
|
+
readonly reason?: string;
|
|
136
|
+
}
|
|
137
|
+
/** What the designer reports when it closes. */
|
|
138
|
+
interface DesignerResult {
|
|
139
|
+
/** The player saved a new look. */
|
|
140
|
+
readonly saved: boolean;
|
|
141
|
+
}
|
|
142
|
+
/** What the social runtime adds for avatars (feature version 5). */
|
|
143
|
+
interface RuntimeAvatarApi {
|
|
144
|
+
/** Open "Make your avatar" over the page; resolves when it closes. */
|
|
145
|
+
openDesigner(options?: OpenDesignerOptions): Promise<DesignerResult>;
|
|
146
|
+
/** Live `ev:avatar` changes (yours, friends', your room's). */
|
|
147
|
+
on(event: 'change', listener: (change: {
|
|
148
|
+
readonly userId: number;
|
|
149
|
+
readonly code: string;
|
|
150
|
+
}) => void): () => void;
|
|
151
|
+
}
|
|
152
|
+
//#endregion
|
|
111
153
|
//#region src/realtime/runtime-api.d.ts
|
|
112
154
|
/**
|
|
113
155
|
* The realtime feature version the runtime reports in {@link RealtimeApi.version}.
|
|
114
156
|
* 2 added races; 3 added invite links and taking back a held seat; 4 added
|
|
115
|
-
* "Play online" (tournaments)
|
|
116
|
-
* it (or by the optional method).
|
|
157
|
+
* "Play online" (tournaments); 5 added avatars (the designer and `ev:avatar`).
|
|
158
|
+
* A client feature-detects newer additions with it (or by the optional method).
|
|
117
159
|
*/
|
|
118
|
-
declare const REALTIME_FEATURE_VERSION =
|
|
160
|
+
declare const REALTIME_FEATURE_VERSION = 5;
|
|
119
161
|
/** `hub.social` as a runtime installs it: version 4's `openPlayOnline` is missing on older runtimes. */
|
|
120
162
|
type RuntimeSocialApi = Omit<HubSocialApi, keyof PlayOnlineMethods> & Partial<PlayOnlineMethods>;
|
|
121
163
|
/** `hub.mp` as a runtime installs it: version 3's invite-link methods are missing on older runtimes. */
|
|
@@ -130,6 +172,13 @@ type RuntimeRoomsApi = Omit<HubRoomsApi, keyof RoomReclaimMethods> & Partial<Roo
|
|
|
130
172
|
declare const REALTIME_SINGLETON_API = 1;
|
|
131
173
|
/** The window event the runtime fires once it has installed itself. */
|
|
132
174
|
declare const REALTIME_READY_EVENT = "hub:rt-ready";
|
|
175
|
+
/**
|
|
176
|
+
* The window event the runtime fires each time its socket says hello (it
|
|
177
|
+
* connected, or connected again after a drop), with `{ user: { id, look } }`
|
|
178
|
+
* from the hello snapshot. `hub.avatar` and `hub.userId()` follow it; changes
|
|
179
|
+
* sent while the socket was down are fetched again.
|
|
180
|
+
*/
|
|
181
|
+
declare const SESSION_EVENT = "hub:session";
|
|
133
182
|
/** The window event the menu fires when the runtime failed to load (its reason is on `window.__HUB_RT_ERROR__`). */
|
|
134
183
|
declare const REALTIME_FAILED_EVENT = "hub:rt-failed";
|
|
135
184
|
/**
|
|
@@ -151,6 +200,8 @@ interface RealtimeApi {
|
|
|
151
200
|
notify: HubNotifyApi;
|
|
152
201
|
/** Races (feature version 2 and later). */
|
|
153
202
|
race?: HubRaceApi;
|
|
203
|
+
/** Avatars: the designer and live changes (feature version 5 and later). */
|
|
204
|
+
avatar?: RuntimeAvatarApi;
|
|
154
205
|
}
|
|
155
206
|
//#endregion
|
|
156
207
|
//#region src/realtime/page-runtime.d.ts
|
|
@@ -159,5 +210,5 @@ declare function isRealtimeApi(candidate: unknown): candidate is RealtimeApi;
|
|
|
159
210
|
/** The page's realtime API if the runtime has loaded, else `null`. */
|
|
160
211
|
declare function findRealtimeApi(): RealtimeApi | null;
|
|
161
212
|
//#endregion
|
|
162
|
-
export {
|
|
213
|
+
export { RuntimeAvatarApi as $, RacerState as A, SuggestionStatus as B, RaceRecord as C, RaceStats$1 as D, RaceState as E, ReportReason as F, REALTIME_READY_EVENT as G, isRealtimeApi as H, RoomInfo$1 as I, SESSION_EVENT as J, REALTIME_SINGLETON_API as K, SocialConfig as L, Relation as M, ReportInput as N, Racer as O, ReportKind as P, OpenDesignerOptions as Q, SocialMe as R, RaceParams$1 as S, RaceStatValue as T, REALTIME_FAILED_EVENT as U, findRealtimeApi as V, REALTIME_FEATURE_VERSION as W, AvatarRef as X, AvatarChange as Y, DesignerResult as Z, PlayerLite as _, ErrorBody as a, HubNotifyApi as at, PresenceKind as b, JoinInfo$1 as c, OpenInviteOptions as ct, Message as d, SocialCounts as dt, RealtimeHubLink as et, MessagesPage as f, SocialEvents as ft, PlayerCard as g, Party$1 as h, Counts as i, socialForwarder as it, RecentPlayer as j, RacerResult as k, Launch$1 as l, PlayOnlineMethods as lt, NotifyPrefs as m, ChatMode$1 as n, notifyForwarder as nt, FriendEntry$1 as o, HubPresenceApi as ot, NotifyChange as p, RealtimeApi as q, Conversation as r, presenceForwarder as rt, Invite$1 as s, HubSocialApi as st, Audience as t, linkRealtimeToHub as tt, LaunchTicket as u, PlayerRef as ut, Presence$1 as v, RaceResult$1 as w, RaceOutcome as x, PresenceInput$1 as y, Suggestion as z };
|
|
163
214
|
//# sourceMappingURL=social.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"social.d.ts","names":[],"sources":["../../src/realtime/social-types.ts","../../src/realtime/social-forwarder.ts","../../src/realtime/hub-link.ts","../../src/realtime/runtime-api.ts","../../src/realtime/page-runtime.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"social.d.ts","names":[],"sources":["../../src/realtime/social-types.ts","../../src/realtime/social-forwarder.ts","../../src/realtime/hub-link.ts","../../src/core/avatar/avatar-types.ts","../../src/realtime/runtime-api.ts","../../src/realtime/page-runtime.ts"],"mappings":";;;;;;;;UAOiB;;EAEf;;EAEA;;EAEA;;;UAIe;;EAEf,SAAS;;EAET;IAAY;IAAgB,GAAG;;;EAE/B,QAAQ;;EAER,QAAQ;;EAER,OAAO;;;KAIG;EAAc;;EAAqB;;;UAG9B;;EAEf;;EAEA;;;UAIe;;EAEf,IAAI,UAAU;;EAEd;;;UAIe;;EAEf,WAAW,KAAK;;EAEhB;;EAEA,SAAS;;EAET,WAAW,UAAU;;EAErB;;EAEA,WAAW;IAAY;;;;;;EAKvB;;EAEA,WAAW,QAAQ;;EAEnB,UAAU;;EAEV,SAAS,qBAAqB;;EAE9B,GAAG,mBAAmB,cAAc,OAAO,MAAM,WAAW,SAAS,aAAa;;;KAIxE,oBAAoB,KAAK;;UAGpB;;EAEf,SAAS;;;;;cCpEE,mBAAmB;;cAYnB,iBAAiB;;cAQjB,iBAAiB;;;;UCzBb;;EAGf,WAAW,iBAAiB;;EAE5B,mBAAmB,kBAAkB;;EAErC,uBAAuB;;;iBAuCT,kBAAkB,MAAM;;;;;;;;UCjDvB;WACN;;WAEA,MAAM;;WAEN;;WAEA;;;UAIM;WACN;WACA,KAAK;;;UAIC;;WAEN;;;UAIM;;WAEN;;;UAIM;;EAEf,aAAa,UAAU,sBAAsB,QAAQ;;EAErD,GAAG,iBAAiB,WAAW;aAAmB;aAAyB;;;;;;;;;;;cCxBhE;;KAGD,mBAAmB,KAAK,oBAAoB,qBAAqB,QAAQ;;KAGzE,eAAe,KAAK,gBAAgB,qBAAqB,QAAQ;;KAGjE,kBAAkB,KAAK,mBAAmB,sBAAsB,QAAQ;;;;;;cAOvE;;cAGA;;;;;;;cAQA;;cAGA;;;;;UAMI;;WAEN;;EAET,UAAU;;EAEV,QAAQ;;EAER,IAAI;;EAEJ,OAAO;;EAEP,QAAQ;;EAER,OAAO;;EAEP,SAAS;;;;;iBCzDK,cAAc,qBAAqB,aAAa;;iBAsBhD,mBAAmB"}
|