@rydr/game-sdk 3.10.0 → 3.12.0
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/dist/client/PlatformClient.d.ts +15 -3
- package/dist/client/PlatformClient.d.ts.map +1 -1
- package/dist/client/PlatformClient.js +1 -1
- package/dist/client/PlatformClient.js.map +1 -1
- package/dist/conversations/index.d.ts +15 -4
- package/dist/conversations/index.d.ts.map +1 -1
- package/dist/conversations/index.js +43 -14
- package/dist/conversations/index.js.map +1 -1
- package/dist/conversations/voice-samples.d.ts +45 -0
- package/dist/conversations/voice-samples.d.ts.map +1 -0
- package/dist/conversations/voice-samples.js +244 -0
- package/dist/conversations/voice-samples.js.map +1 -0
- package/dist/conversations/voices.d.ts +33 -5
- package/dist/conversations/voices.d.ts.map +1 -1
- package/dist/conversations/voices.js +61 -31
- package/dist/conversations/voices.js.map +1 -1
- package/dist/host/PlatformHost.d.ts +4 -2
- package/dist/host/PlatformHost.d.ts.map +1 -1
- package/dist/host/PlatformHost.js +1 -1
- package/dist/host/PlatformHost.js.map +1 -1
- package/dist/protocol/conversations.d.ts +13 -2
- package/dist/protocol/conversations.d.ts.map +1 -1
- package/dist/protocol/conversations.js +14 -0
- package/dist/protocol/conversations.js.map +1 -1
- package/dist/protocol/messages.d.ts +7 -1
- package/dist/protocol/messages.d.ts.map +1 -1
- package/dist/protocol/version.d.ts +2 -2
- package/dist/protocol/version.d.ts.map +1 -1
- package/dist/protocol/version.js +7 -2
- package/dist/protocol/version.js.map +1 -1
- package/dist/sound-gallery/index.d.ts +41 -0
- package/dist/sound-gallery/index.d.ts.map +1 -0
- package/dist/sound-gallery/index.js +1264 -0
- package/dist/sound-gallery/index.js.map +1 -0
- package/dist/sounds/audio-utils.d.ts +16 -0
- package/dist/sounds/audio-utils.d.ts.map +1 -0
- package/dist/sounds/audio-utils.js +150 -0
- package/dist/sounds/audio-utils.js.map +1 -0
- package/dist/sounds/index.d.ts +23 -0
- package/dist/sounds/index.d.ts.map +1 -0
- package/dist/sounds/index.js +21 -0
- package/dist/sounds/index.js.map +1 -0
- package/dist/sounds/sound-bank.d.ts +70 -0
- package/dist/sounds/sound-bank.d.ts.map +1 -0
- package/dist/sounds/sound-bank.js +313 -0
- package/dist/sounds/sound-bank.js.map +1 -0
- package/dist/sounds/types.d.ts +88 -0
- package/dist/sounds/types.d.ts.map +1 -0
- package/dist/sounds/types.js +8 -0
- package/dist/sounds/types.js.map +1 -0
- package/dist/ui/README.md +2 -0
- package/dist/ui/index.d.ts +4 -1
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +4 -1
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/power-race.d.ts +125 -0
- package/dist/ui/power-race.d.ts.map +1 -0
- package/dist/ui/power-race.js +662 -0
- package/dist/ui/power-race.js.map +1 -0
- package/dist/ui/showcase/index.d.ts.map +1 -1
- package/dist/ui/showcase/index.js +85 -1
- package/dist/ui/showcase/index.js.map +1 -1
- package/dist/ui/solo-labeled-diamond.d.ts +69 -0
- package/dist/ui/solo-labeled-diamond.d.ts.map +1 -0
- package/dist/ui/solo-labeled-diamond.js +168 -0
- package/dist/ui/solo-labeled-diamond.js.map +1 -0
- package/dist/ui/styles.js +24 -2
- package/dist/ui/styles.js.map +1 -1
- package/dist/ui/subtitle.d.ts +27 -0
- package/dist/ui/subtitle.d.ts.map +1 -0
- package/dist/ui/subtitle.js +77 -0
- package/dist/ui/subtitle.js.map +1 -0
- package/dist/voice-gallery/index.d.ts +31 -0
- package/dist/voice-gallery/index.d.ts.map +1 -0
- package/dist/voice-gallery/index.js +396 -0
- package/dist/voice-gallery/index.js.map +1 -0
- package/dist/voiceover-editor/index.d.ts +6 -0
- package/dist/voiceover-editor/index.d.ts.map +1 -1
- package/dist/voiceover-editor/index.js +222 -14
- package/dist/voiceover-editor/index.js.map +1 -1
- package/package.json +16 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"power-race.js","sourceRoot":"","sources":["../../src/ui/power-race.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/showcase/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/showcase/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAyBH,OAAO,EAA2B,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAE7E,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAoBpD,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,mGAAmG;AACnG,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,GAAE,iBAAsB,GAAG,UAAU,CAiV3F"}
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* components never pulls the catalog into its bundle. Pass a real `session` for live watts + real
|
|
13
13
|
* button reflection; omit it and the catalog renders static.
|
|
14
14
|
*/
|
|
15
|
-
import { createKeycap, createDpadKeycap, mountCard, mountActionCard, mountActionDiamond, mountDialogueCard, mountChoiceCard, mountLabeledDiamond, mountRarityCard, RARITY, } from "../index.js";
|
|
15
|
+
import { createKeycap, createDpadKeycap, mountCard, mountActionCard, mountActionDiamond, mountDialogueCard, mountChoiceCard, mountLabeledDiamond, mountSoloLabeledDiamond, mountRarityCard, createPowerRace, RARITY, } from "../index.js";
|
|
16
16
|
import { Gallery, el, makeCanvas } from "./gallery.js";
|
|
17
17
|
const FACES = ["A", "B", "Y", "Z"];
|
|
18
18
|
const DIRS = ["UP", "RIGHT", "DOWN", "LEFT"];
|
|
@@ -46,6 +46,16 @@ export function mountUiShowcase(host, opts = {}) {
|
|
|
46
46
|
let offButton;
|
|
47
47
|
const rarityCards = [];
|
|
48
48
|
let offRarity;
|
|
49
|
+
const ftp = session?.identity.ftp ?? 250;
|
|
50
|
+
let race;
|
|
51
|
+
let raceHideT = 0;
|
|
52
|
+
const launchRace = (o) => {
|
|
53
|
+
race?.dispose();
|
|
54
|
+
raceHideT = 0;
|
|
55
|
+
race = createPowerRace({ ftp, ...o });
|
|
56
|
+
host.appendChild(race.element);
|
|
57
|
+
race.start();
|
|
58
|
+
};
|
|
49
59
|
// a captioned cell holding a centred node
|
|
50
60
|
const cell = (grid, caption, node) => {
|
|
51
61
|
const c = el(grid, "div", "bs-cell");
|
|
@@ -222,6 +232,47 @@ export function mountUiShowcase(host, opts = {}) {
|
|
|
222
232
|
btn.addEventListener("click", () => { disabled = !disabled; sync(); });
|
|
223
233
|
sync();
|
|
224
234
|
}
|
|
235
|
+
// --- the solo labeled diamond ------------------------------------------
|
|
236
|
+
g.section("Labeled diamond — solo (one active)", "The labeled diamond's radiating card label, but with exactly ONE active button at a time — a big lit pip, the other three the small blank grey circles of the A/B/Y/Z diamond. Colour and mono. Press ‘Next’ to move the active button (setActive).");
|
|
237
|
+
{
|
|
238
|
+
const grid = el(g.list, "div", "bs-grid");
|
|
239
|
+
const LABELS = { Y: "Inspect", A: "Equip", B: "Inventory", Z: "Back" };
|
|
240
|
+
const order = ["A", "Y", "B", "Z"];
|
|
241
|
+
for (const colored of [true, false]) {
|
|
242
|
+
const cellWrap = el(grid, "div", "bs-cell ld-cell");
|
|
243
|
+
const stage = el(cellWrap, "div", "bs-ld");
|
|
244
|
+
const sld = mountSoloLabeledDiamond(stage, { inline: true, colored, animate: false, active: "A", label: LABELS.A });
|
|
245
|
+
let i = 0;
|
|
246
|
+
const btn = el(cellWrap, "button", "bs-btn");
|
|
247
|
+
btn.textContent = "Next button";
|
|
248
|
+
btn.addEventListener("click", () => {
|
|
249
|
+
i = (i + 1) % order.length;
|
|
250
|
+
const b = order[i];
|
|
251
|
+
sld.setActive(b, LABELS[b] ?? "");
|
|
252
|
+
});
|
|
253
|
+
el(cellWrap, "div", "bs-cap", colored ? "Colour" : "Mono");
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
// --- solo labeled diamond: label placement -----------------------------
|
|
257
|
+
g.section("Solo diamond — label placement", "The label side is set with labelPos (default ‘auto’ = the active button's side), independent of which button is active. Change the active button AND the label side separately: the tuck adapts to the pip under the label — deeper for a small grey circle, shallower for the big active pip — so the letter is never covered.");
|
|
258
|
+
{
|
|
259
|
+
const grid = el(g.list, "div", "bs-grid");
|
|
260
|
+
const sides = ["top", "right", "bottom", "left"];
|
|
261
|
+
for (const colored of [true, false]) {
|
|
262
|
+
const cellWrap = el(grid, "div", "bs-cell ld-cell");
|
|
263
|
+
const stage = el(cellWrap, "div", "bs-ld");
|
|
264
|
+
const sld = mountSoloLabeledDiamond(stage, { inline: true, colored, animate: false, active: "A", label: "Equip", labelPos: "right" });
|
|
265
|
+
let si = 1; // start on "right"
|
|
266
|
+
const sideBtn = el(cellWrap, "button", "bs-btn");
|
|
267
|
+
sideBtn.addEventListener("click", () => { si = (si + 1) % sides.length; sld.setLabelPos(sides[si]); sideBtn.textContent = `Side: ${sides[si]} → next`; });
|
|
268
|
+
sideBtn.textContent = `Side: ${sides[si]} → next`;
|
|
269
|
+
let ai = 0;
|
|
270
|
+
const actBtn = el(cellWrap, "button", "bs-btn");
|
|
271
|
+
actBtn.addEventListener("click", () => { ai = (ai + 1) % FACES.length; sld.setActive(FACES[ai]); actBtn.textContent = `Active: ${FACES[ai]} → next`; });
|
|
272
|
+
actBtn.textContent = `Active: ${FACES[ai]} → next`;
|
|
273
|
+
el(cellWrap, "div", "bs-cap", colored ? "Colour" : "Mono");
|
|
274
|
+
}
|
|
275
|
+
}
|
|
225
276
|
// --- the rarity card ---------------------------------------------------
|
|
226
277
|
g.section("Rarity card", "A generic rarity-tinted frame + a content slot the game fills (here a name + a stat line). The SDK ships the rarity palette and the label band; .selected adds the ring + deeper glow. ◄ / ► move the selection (pass a session).");
|
|
227
278
|
{
|
|
@@ -255,10 +306,41 @@ export function mountUiShowcase(host, opts = {}) {
|
|
|
255
306
|
});
|
|
256
307
|
}
|
|
257
308
|
}
|
|
309
|
+
// --- the power-race overlay -------------------------------------------
|
|
310
|
+
g.section("Power race (overlay)", "The timed ∫power-vs-deadline race: charge bar (your effort) vs a deadline bar (the clock). First to 100% wins. It's a full-screen overlay — launch one and it plays out, fed by real watts (or a ~1.3×FTP sim without a session). Recolour with `theme`, relabel with `text`.");
|
|
311
|
+
{
|
|
312
|
+
const row = el(g.list, "div", "bs-btnrow");
|
|
313
|
+
const mk = (label, o) => {
|
|
314
|
+
const b = el(row, "button", "bs-btn", label);
|
|
315
|
+
b.addEventListener("click", () => launchRace(o));
|
|
316
|
+
};
|
|
317
|
+
mk("Twin stacked", { variant: "twin-stacked", scoreVariant: "impact" });
|
|
318
|
+
mk("Twin towers", { variant: "twin-towers" });
|
|
319
|
+
mk("Charge (no rival)", {
|
|
320
|
+
mode: "charge",
|
|
321
|
+
text: { heading: "CHARGING", prompt: "PUSH TO CHARGE", chargeLabel: "CHARGE", win: "CHARGED" },
|
|
322
|
+
});
|
|
323
|
+
mk("Themed + relabelled", {
|
|
324
|
+
variant: "twin-stacked",
|
|
325
|
+
theme: { deadline: "#c084fc", deadlineDeep: "#4c1d95", charge: "#22d3ee", chargeDeep: "#0e7490", win: "#22c55e", winDeep: "#166534" },
|
|
326
|
+
text: { heading: "RÉSONANCE INSTABLE", prompt: "PÉDALE POUR CHARGER", deadlineLabel: "INSTABILITÉ", chargeLabel: "CHARGE", win: "CHARGÉE", lose: "TROP TARD" },
|
|
327
|
+
});
|
|
328
|
+
}
|
|
258
329
|
g.run({
|
|
259
330
|
session,
|
|
260
331
|
perFrame: (dt) => {
|
|
261
332
|
clock += dt;
|
|
333
|
+
if (race) {
|
|
334
|
+
race.setPower(session ? session.hardware.current.power : 1.3 * ftp);
|
|
335
|
+
const ph = race.tick(dt);
|
|
336
|
+
if (ph === "won" || ph === "lost") {
|
|
337
|
+
raceHideT += dt;
|
|
338
|
+
if (raceHideT > 1.8) {
|
|
339
|
+
race.dispose();
|
|
340
|
+
race = undefined;
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
}
|
|
262
344
|
for (const { kc, total } of cooldowns) {
|
|
263
345
|
const phase = clock % (total + READY_HOLD);
|
|
264
346
|
if (phase < total)
|
|
@@ -280,6 +362,7 @@ export function mountUiShowcase(host, opts = {}) {
|
|
|
280
362
|
offRarity?.();
|
|
281
363
|
choice?.dispose();
|
|
282
364
|
dialogue?.dispose();
|
|
365
|
+
race?.dispose();
|
|
283
366
|
for (const c of rarityCards)
|
|
284
367
|
c.dispose();
|
|
285
368
|
g.dispose();
|
|
@@ -303,5 +386,6 @@ const BS_CSS = `
|
|
|
303
386
|
font: 700 0.82rem system-ui, sans-serif; color: #eef4ff;
|
|
304
387
|
background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.18); }
|
|
305
388
|
.bs-btn:hover { background: rgba(255,255,255,0.12); border-color: rgba(255,255,255,0.3); }
|
|
389
|
+
.bs-btnrow { display: flex; gap: 0.6rem; flex-wrap: wrap; }
|
|
306
390
|
`;
|
|
307
391
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/showcase/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/showcase/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SOLO LABELED DIAMOND — the {@link mountLabeledDiamond} look (a card-seated label radiating out from a
|
|
3
|
+
* button in an A/B/Y/Z cluster) but with EXACTLY ONE active button at a time, and the other three drawn
|
|
4
|
+
* as the small blank grey circles of the classic A/B/Y/Z diamond (`createKeycap(…, { variant: "full" })`
|
|
5
|
+
* in {@link ./keycap}). Where the labeled diamond is a "here are all the actions on offer" menu (any
|
|
6
|
+
* number lit at once), this is the "press THIS one" affordance: a single plain label on one button, the
|
|
7
|
+
* rest sunk and quiet.
|
|
8
|
+
*
|
|
9
|
+
* The centre cluster IS a full A/B/Y/Z keycap, so it inherits that state machine for free — colour vs
|
|
10
|
+
* mono (`colored`), the bouncing pulse (`animate`), pressed sink, cooldown ring, and disabled — all
|
|
11
|
+
* driven through the exposed `keycap` handle. `setActive` moves the active button to any of A/B/Y/Z.
|
|
12
|
+
*
|
|
13
|
+
* The label's SIDE is independent of which button is active: `labelPos` defaults to `"auto"` (the active
|
|
14
|
+
* button's own side) but can be forced to `"top"/"right"/"bottom"/"left"` — including a side holding a
|
|
15
|
+
* small inactive circle. The label's tuck is computed from the real pip geometry, so it seats neatly on
|
|
16
|
+
* the big active pip AND the smaller inactive ones.
|
|
17
|
+
*
|
|
18
|
+
* Fixed-overlay by default (call `setScreenPos` to track a projected world point), or `inline:true` to
|
|
19
|
+
* lay it in normal flow.
|
|
20
|
+
*/
|
|
21
|
+
import { type ButtonLetter, type ButtonSource, type Keycap } from "./keycap.js";
|
|
22
|
+
/** Which side the single label sits on. `"auto"` follows the active button; the rest force a side. */
|
|
23
|
+
export type SoloLabelPos = "auto" | "top" | "right" | "bottom" | "left";
|
|
24
|
+
export interface SoloLabeledDiamondOptions {
|
|
25
|
+
/** Lay the diamond inline (normal flow, full width) instead of as a fixed overlay. */
|
|
26
|
+
inline?: boolean;
|
|
27
|
+
/** Per-button hue (default true). `false` → mono: a white active face with a dark letter. */
|
|
28
|
+
colored?: boolean;
|
|
29
|
+
/** Run the bouncing attract pulse on the active button (default true). */
|
|
30
|
+
animate?: boolean;
|
|
31
|
+
/** Wire to real controller input: the active keycap shows its pressed sink while ITS button is held. */
|
|
32
|
+
press?: ButtonSource;
|
|
33
|
+
/** Which button starts active (default `"A"`). */
|
|
34
|
+
active?: ButtonLetter;
|
|
35
|
+
/** The label text (radiates from `labelPos`). */
|
|
36
|
+
label?: string;
|
|
37
|
+
/** Which side the label sits on (default `"auto"` = the active button's side). */
|
|
38
|
+
labelPos?: SoloLabelPos;
|
|
39
|
+
/**
|
|
40
|
+
* Hug the keycap: size the cluster cell to the diamond's real bounding box instead of the fixed
|
|
41
|
+
* 110×100 overlay cell, so an inline chip carries no dead space around the glyph (and the wrap
|
|
42
|
+
* hugs its content rather than filling its width). The box tracks the active button's bbox on
|
|
43
|
+
* `setActive`. Intended for compact inline chips; leave off for the fixed screen-tracking overlay.
|
|
44
|
+
*/
|
|
45
|
+
compact?: boolean;
|
|
46
|
+
}
|
|
47
|
+
export interface SoloLabeledDiamond {
|
|
48
|
+
root: HTMLElement;
|
|
49
|
+
/** The centre A/B/Y/Z keycap — drive cooldown / disabled / pressed / colour through it. */
|
|
50
|
+
keycap: Keycap;
|
|
51
|
+
/** Which button is currently active. */
|
|
52
|
+
active: ButtonLetter;
|
|
53
|
+
/** Move the single active button to `button`; optionally set its label. */
|
|
54
|
+
setActive(button: ButtonLetter, label?: string): void;
|
|
55
|
+
/** Update the label text (`null`/`""` hides it). */
|
|
56
|
+
setLabel(text: string | null): void;
|
|
57
|
+
/** Move the label to a side (`"auto"` = follow the active button). */
|
|
58
|
+
setLabelPos(pos: SoloLabelPos): void;
|
|
59
|
+
setVisible(v: boolean): void;
|
|
60
|
+
/** Centre the diamond at a viewport pixel (e.g. a target projected to screen). */
|
|
61
|
+
setScreenPos(x: number, y: number): void;
|
|
62
|
+
dispose(): void;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Mount a solo labeled diamond: a full A/B/Y/Z keycap (one big active pip, three small blank grey
|
|
66
|
+
* circles) with a single card-seated label radiating from a configurable side.
|
|
67
|
+
*/
|
|
68
|
+
export declare function mountSoloLabeledDiamond(host: HTMLElement, opts?: SoloLabeledDiamondOptions): SoloLabeledDiamond;
|
|
69
|
+
//# sourceMappingURL=solo-labeled-diamond.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solo-labeled-diamond.d.ts","sourceRoot":"","sources":["../../src/ui/solo-labeled-diamond.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,EAAgB,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAM9F,sGAAsG;AACtG,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AA0CxE,MAAM,WAAW,yBAAyB;IACxC,sFAAsF;IACtF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,6FAA6F;IAC7F,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wGAAwG;IACxG,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,kDAAkD;IAClD,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kFAAkF;IAClF,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,WAAW,CAAC;IAClB,2FAA2F;IAC3F,MAAM,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,MAAM,EAAE,YAAY,CAAC;IACrB,2EAA2E;IAC3E,SAAS,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD,oDAAoD;IACpD,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;IACpC,sEAAsE;IACtE,WAAW,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI,CAAC;IACrC,UAAU,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,kFAAkF;IAClF,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,GAAE,yBAA8B,GAAG,kBAAkB,CA2GnH"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SOLO LABELED DIAMOND — the {@link mountLabeledDiamond} look (a card-seated label radiating out from a
|
|
3
|
+
* button in an A/B/Y/Z cluster) but with EXACTLY ONE active button at a time, and the other three drawn
|
|
4
|
+
* as the small blank grey circles of the classic A/B/Y/Z diamond (`createKeycap(…, { variant: "full" })`
|
|
5
|
+
* in {@link ./keycap}). Where the labeled diamond is a "here are all the actions on offer" menu (any
|
|
6
|
+
* number lit at once), this is the "press THIS one" affordance: a single plain label on one button, the
|
|
7
|
+
* rest sunk and quiet.
|
|
8
|
+
*
|
|
9
|
+
* The centre cluster IS a full A/B/Y/Z keycap, so it inherits that state machine for free — colour vs
|
|
10
|
+
* mono (`colored`), the bouncing pulse (`animate`), pressed sink, cooldown ring, and disabled — all
|
|
11
|
+
* driven through the exposed `keycap` handle. `setActive` moves the active button to any of A/B/Y/Z.
|
|
12
|
+
*
|
|
13
|
+
* The label's SIDE is independent of which button is active: `labelPos` defaults to `"auto"` (the active
|
|
14
|
+
* button's own side) but can be forced to `"top"/"right"/"bottom"/"left"` — including a side holding a
|
|
15
|
+
* small inactive circle. The label's tuck is computed from the real pip geometry, so it seats neatly on
|
|
16
|
+
* the big active pip AND the smaller inactive ones.
|
|
17
|
+
*
|
|
18
|
+
* Fixed-overlay by default (call `setScreenPos` to track a projected world point), or `inline:true` to
|
|
19
|
+
* lay it in normal flow.
|
|
20
|
+
*/
|
|
21
|
+
import { mountCard } from "./card.js";
|
|
22
|
+
import { createKeycap } from "./keycap.js";
|
|
23
|
+
import { injectCss } from "./styles.js";
|
|
24
|
+
const POS = { Y: "top", A: "rgt", B: "bot", Z: "lft" };
|
|
25
|
+
const SIDE = { top: "top", right: "rgt", bottom: "bot", left: "lft" };
|
|
26
|
+
// Keycap "full" geometry (mirrors keycap.ts): small pip radius, active pip radius, and the on-axis
|
|
27
|
+
// distance of each — inactive pips sit at r0 from centre, the active one is pushed out to D.
|
|
28
|
+
const RI = 10, RA = 19, R0 = 19, D = 29;
|
|
29
|
+
const DIRV = { top: [0, -1], bot: [0, 1], lft: [-1, 0], rgt: [1, 0] };
|
|
30
|
+
// The DEFAULT cluster cell (matches .rydr-ui-sld-cluster): a fixed overlay box the keycap is pinned to,
|
|
31
|
+
// so every pip lands at a known cluster pixel regardless of which button is active. `compact` mode
|
|
32
|
+
// replaces this frame with the keycap's own tight bbox (keycapFrame) so an inline chip has no dead space.
|
|
33
|
+
const CW = 110, CH = 100;
|
|
34
|
+
// How far the pip's OUTER edge tucks UNDER the label card (px). The card has 20px side padding, so a
|
|
35
|
+
// left/right pip must overlap by well under that or it hides the first/last letter — hence the smaller
|
|
36
|
+
// horizontal value. Vertical text is centred, so a top/bottom pip can sit a touch deeper.
|
|
37
|
+
const OVERLAP_V = 6;
|
|
38
|
+
const OVERLAP_H = 10;
|
|
39
|
+
const FIXED_FRAME = { w: CW, h: CH, cx: CW / 2, cy: CH / 2 };
|
|
40
|
+
/** The keycap's OWN tight bounding box for a given active pos, plus where the pip-cluster centre sits
|
|
41
|
+
* inside it (mirrors keycap.ts `buildPips`). Used as the cluster frame in `compact` mode so the box
|
|
42
|
+
* hugs the glyph. Tracks the active button — its big pip pushes the bounds out on one side. */
|
|
43
|
+
function keycapFrame(active) {
|
|
44
|
+
let minX = Infinity, minY = Infinity, maxX = -Infinity, maxY = -Infinity;
|
|
45
|
+
for (const k of ["top", "bot", "lft", "rgt"]) {
|
|
46
|
+
const isA = k === active, r = isA ? RA : RI, dist = isA ? D : R0;
|
|
47
|
+
minX = Math.min(minX, DIRV[k][0] * dist - r);
|
|
48
|
+
maxX = Math.max(maxX, DIRV[k][0] * dist + r);
|
|
49
|
+
minY = Math.min(minY, DIRV[k][1] * dist - r);
|
|
50
|
+
maxY = Math.max(maxY, DIRV[k][1] * dist + r);
|
|
51
|
+
}
|
|
52
|
+
return { w: maxX - minX, h: maxY - minY, cx: -minX, cy: -minY };
|
|
53
|
+
}
|
|
54
|
+
/** Centre + radius (in cluster pixels) of the pip at `side`, given the frame's pip-cluster centre. */
|
|
55
|
+
function pipGeom(side, active, fx, fy) {
|
|
56
|
+
const isActive = side === active;
|
|
57
|
+
const r = isActive ? RA : RI;
|
|
58
|
+
const dist = isActive ? D : R0;
|
|
59
|
+
return { cx: fx + DIRV[side][0] * dist, cy: fy + DIRV[side][1] * dist, r };
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Mount a solo labeled diamond: a full A/B/Y/Z keycap (one big active pip, three small blank grey
|
|
63
|
+
* circles) with a single card-seated label radiating from a configurable side.
|
|
64
|
+
*/
|
|
65
|
+
export function mountSoloLabeledDiamond(host, opts = {}) {
|
|
66
|
+
injectCss();
|
|
67
|
+
const colored = opts.colored ?? true;
|
|
68
|
+
const animate = opts.animate ?? true;
|
|
69
|
+
const root = document.createElement("div");
|
|
70
|
+
root.className = "rydr-ui-ld-host rydr-ui-sld-host" + (opts.inline ? " inline" : "");
|
|
71
|
+
const wrap = document.createElement("div");
|
|
72
|
+
wrap.className = "rydr-ui-ld-wrap";
|
|
73
|
+
root.appendChild(wrap);
|
|
74
|
+
// centre cell: the full A/B/Y/Z keycap, absolutely placed so its pip-cluster centre is the cell centre
|
|
75
|
+
const cluster = document.createElement("div");
|
|
76
|
+
cluster.className = "rydr-ui-sld-cluster";
|
|
77
|
+
wrap.appendChild(cluster);
|
|
78
|
+
// ONE label (any number of sides possible, but only one active at a time), seated in the dark card
|
|
79
|
+
const slot = document.createElement("div");
|
|
80
|
+
slot.className = "rydr-ui-ld-lbl";
|
|
81
|
+
const card = mountCard(slot, { content: "", inline: true });
|
|
82
|
+
wrap.appendChild(slot);
|
|
83
|
+
host.appendChild(root);
|
|
84
|
+
const compact = opts.compact ?? false;
|
|
85
|
+
// In compact mode the wrap hugs its content instead of the inline default (full width + 210px min-
|
|
86
|
+
// height), so the chip is as small as the glyph + label — no game-side CSS override needed. The grid
|
|
87
|
+
// stays 3×3 (so the label's grid-area still picks its side) but every track is `auto`: an empty side
|
|
88
|
+
// track then collapses to 0. (Under `max-content` the default `1fr` tracks do NOT collapse — they keep
|
|
89
|
+
// a flexible share — which left a wide empty cell on the label-less side.)
|
|
90
|
+
if (compact) {
|
|
91
|
+
wrap.style.width = "max-content";
|
|
92
|
+
wrap.style.minHeight = "0";
|
|
93
|
+
wrap.style.padding = "0";
|
|
94
|
+
wrap.style.gridTemplateColumns = "auto auto auto";
|
|
95
|
+
wrap.style.gridTemplateRows = "auto auto auto";
|
|
96
|
+
}
|
|
97
|
+
let active = opts.active ?? "A";
|
|
98
|
+
let label = opts.label ?? null;
|
|
99
|
+
let labelPos = opts.labelPos ?? "auto";
|
|
100
|
+
let keycap;
|
|
101
|
+
let frame = FIXED_FRAME;
|
|
102
|
+
const side = () => (labelPos === "auto" ? POS[active] : SIDE[labelPos]);
|
|
103
|
+
const buildKeycap = () => {
|
|
104
|
+
keycap?.dispose();
|
|
105
|
+
keycap = createKeycap(active, { variant: "full", colored, animate, press: opts.press });
|
|
106
|
+
// compact → the cluster hugs the keycap's own bbox; otherwise it stays the fixed overlay cell.
|
|
107
|
+
frame = compact ? keycapFrame(POS[active]) : FIXED_FRAME;
|
|
108
|
+
if (compact) {
|
|
109
|
+
cluster.style.width = `${frame.w}px`;
|
|
110
|
+
cluster.style.height = `${frame.h}px`;
|
|
111
|
+
}
|
|
112
|
+
// Place the keycap so its 4-pip centre lands at the frame's pip-cluster centre. The keycap's own
|
|
113
|
+
// bbox top-left is at (-kc.cx, -kc.cy) from that centre; in compact mode this resolves to (0, 0).
|
|
114
|
+
const kc = keycapFrame(POS[active]);
|
|
115
|
+
keycap.el.style.position = "absolute";
|
|
116
|
+
keycap.el.style.left = `${frame.cx - kc.cx}px`;
|
|
117
|
+
keycap.el.style.top = `${frame.cy - kc.cy}px`;
|
|
118
|
+
cluster.appendChild(keycap.el);
|
|
119
|
+
};
|
|
120
|
+
const paintLabel = () => {
|
|
121
|
+
const s = side();
|
|
122
|
+
slot.className = `rydr-ui-ld-lbl rydr-ui-ld-lbl-${s}`;
|
|
123
|
+
const on = label != null && label !== "";
|
|
124
|
+
slot.style.display = on ? "" : "none";
|
|
125
|
+
if (on)
|
|
126
|
+
card.setLabel(label);
|
|
127
|
+
// tuck the label so the pip's OUTER edge sits a fixed overlap under the card — computed from THIS
|
|
128
|
+
// pip's real radius/position, so a big active pip and a small grey one each seat correctly.
|
|
129
|
+
const { cx, cy, r } = pipGeom(s, POS[active], frame.cx, frame.cy);
|
|
130
|
+
slot.style.margin = "0";
|
|
131
|
+
if (s === "top")
|
|
132
|
+
slot.style.marginBottom = `${-((cy - r) + OVERLAP_V)}px`;
|
|
133
|
+
else if (s === "bot")
|
|
134
|
+
slot.style.marginTop = `${-((frame.h - (cy + r)) + OVERLAP_V)}px`;
|
|
135
|
+
else if (s === "lft")
|
|
136
|
+
slot.style.marginRight = `${-((cx - r) + OVERLAP_H)}px`;
|
|
137
|
+
else
|
|
138
|
+
slot.style.marginLeft = `${-((frame.w - (cx + r)) + OVERLAP_H)}px`;
|
|
139
|
+
// Cross-axis: seat the label on the TARGET pip's centre, not the box centre. A compact box grows
|
|
140
|
+
// toward the big active pip, so its geometric centre can differ from the pip the label tucks to
|
|
141
|
+
// (e.g. Back = big B + right label). A no-op for the symmetric fixed frame (frame centre = box centre).
|
|
142
|
+
slot.style.transform =
|
|
143
|
+
s === "lft" || s === "rgt" ? `translateY(${frame.cy - frame.h / 2}px)` : `translateX(${frame.cx - frame.w / 2}px)`;
|
|
144
|
+
};
|
|
145
|
+
buildKeycap();
|
|
146
|
+
paintLabel();
|
|
147
|
+
return {
|
|
148
|
+
root,
|
|
149
|
+
get keycap() { return keycap; },
|
|
150
|
+
get active() { return active; },
|
|
151
|
+
setActive: (button, next) => {
|
|
152
|
+
active = button;
|
|
153
|
+
if (next !== undefined)
|
|
154
|
+
label = next;
|
|
155
|
+
buildKeycap();
|
|
156
|
+
paintLabel();
|
|
157
|
+
},
|
|
158
|
+
setLabel: (text) => { label = text; paintLabel(); },
|
|
159
|
+
setLabelPos: (pos) => { labelPos = pos; paintLabel(); },
|
|
160
|
+
setVisible: (v) => { root.style.visibility = v ? "" : "hidden"; },
|
|
161
|
+
setScreenPos(x, y) {
|
|
162
|
+
root.style.left = `${x}px`;
|
|
163
|
+
root.style.top = `${y}px`;
|
|
164
|
+
},
|
|
165
|
+
dispose: () => { keycap?.dispose(); root.remove(); },
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=solo-labeled-diamond.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solo-labeled-diamond.js","sourceRoot":"","sources":["../../src/ui/solo-labeled-diamond.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,SAAS,EAAa,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,YAAY,EAAqD,MAAM,aAAa,CAAC;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,GAAG,GAA8B,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;AAIlF,MAAM,IAAI,GAA+C,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAElH,mGAAmG;AACnG,6FAA6F;AAC7F,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;AACxC,MAAM,IAAI,GAAkC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AACrG,wGAAwG;AACxG,mGAAmG;AACnG,0GAA0G;AAC1G,MAAM,EAAE,GAAG,GAAG,EAAE,EAAE,GAAG,GAAG,CAAC;AACzB,qGAAqG;AACrG,uGAAuG;AACvG,0FAA0F;AAC1F,MAAM,SAAS,GAAG,CAAC,CAAC;AACpB,MAAM,SAAS,GAAG,EAAE,CAAC;AAIrB,MAAM,WAAW,GAAU,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC;AAEpE;;gGAEgG;AAChG,SAAS,WAAW,CAAC,MAAW;IAC9B,IAAI,IAAI,GAAG,QAAQ,EAAE,IAAI,GAAG,QAAQ,EAAE,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,GAAG,CAAC,QAAQ,CAAC;IACzE,KAAK,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAU,EAAE,CAAC;QACtD,MAAM,GAAG,GAAG,CAAC,KAAK,MAAM,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC;QAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC;QAC3F,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC;QAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;AAClE,CAAC;AAED,sGAAsG;AACtG,SAAS,OAAO,CAAC,IAAS,EAAE,MAAW,EAAE,EAAU,EAAE,EAAU;IAC7D,MAAM,QAAQ,GAAG,IAAI,KAAK,MAAM,CAAC;IACjC,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/B,OAAO,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,CAAC;AAC7E,CAAC;AA4CD;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAiB,EAAE,OAAkC,EAAE;IAC7F,SAAS,EAAE,CAAC;IACZ,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;IAErC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,GAAG,kCAAkC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACrF,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC;IACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEvB,uGAAuG;IACvG,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,CAAC,SAAS,GAAG,qBAAqB,CAAC;IAC1C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAE1B,mGAAmG;IACnG,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,GAAG,gBAAgB,CAAC;IAClC,MAAM,IAAI,GAAS,SAAS,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAClE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEvB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEvB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC;IACtC,mGAAmG;IACnG,qGAAqG;IACrG,qGAAqG;IACrG,uGAAuG;IACvG,2EAA2E;IAC3E,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,aAAa,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,GAAG,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,gBAAgB,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IACjD,CAAC;IAED,IAAI,MAAM,GAAiB,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC;IAC9C,IAAI,KAAK,GAAkB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC;IAC9C,IAAI,QAAQ,GAAiB,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC;IACrD,IAAI,MAAe,CAAC;IACpB,IAAI,KAAK,GAAU,WAAW,CAAC;IAE/B,MAAM,IAAI,GAAG,GAAQ,EAAE,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE7E,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,MAAM,EAAE,OAAO,EAAE,CAAC;QAClB,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACxF,+FAA+F;QAC/F,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QACzD,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC;QACxC,CAAC;QACD,iGAAiG;QACjG,kGAAkG;QAClG,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QACpC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC;QACtC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC;QAC/C,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC;QAC9C,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,iCAAiC,CAAC,EAAE,CAAC;QACtD,MAAM,EAAE,GAAG,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QACtC,IAAI,EAAE;YAAE,IAAI,CAAC,QAAQ,CAAC,KAAe,CAAC,CAAC;QACvC,kGAAkG;QAClG,4FAA4F;QAC5F,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC;QACxB,IAAI,CAAC,KAAK,KAAK;YAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC;aACrE,IAAI,CAAC,KAAK,KAAK;YAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC;aACnF,IAAI,CAAC,KAAK,KAAK;YAAE,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC;;YACzE,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC;QACxE,iGAAiG;QACjG,gGAAgG;QAChG,wGAAwG;QACxG,IAAI,CAAC,KAAK,CAAC,SAAS;YAClB,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;IACvH,CAAC,CAAC;IAEF,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,CAAC;IAEb,OAAO;QACL,IAAI;QACJ,IAAI,MAAM,KAAK,OAAO,MAAM,CAAC,CAAC,CAAC;QAC/B,IAAI,MAAM,KAAK,OAAO,MAAM,CAAC,CAAC,CAAC;QAC/B,SAAS,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YAC1B,MAAM,GAAG,MAAM,CAAC;YAChB,IAAI,IAAI,KAAK,SAAS;gBAAE,KAAK,GAAG,IAAI,CAAC;YACrC,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,CAAC;QACf,CAAC;QACD,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACnD,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,GAAG,QAAQ,GAAG,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACvD,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjE,YAAY,CAAC,CAAC,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC;QAC5B,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;KACrD,CAAC;AACJ,CAAC"}
|
package/dist/ui/styles.js
CHANGED
|
@@ -24,8 +24,10 @@ const CSS = `
|
|
|
24
24
|
.rydr-ui-root { position: fixed; left: 50%; bottom: 96px; z-index: 40; pointer-events: none;
|
|
25
25
|
transform: translateX(-50%); opacity: 0; transition: opacity 0.18s; }
|
|
26
26
|
.rydr-ui-root.inline { position: relative; left: auto; bottom: auto; transform: none; opacity: 1; display: inline-block; z-index: auto; }
|
|
27
|
-
/* the dark action card holding the content slot
|
|
28
|
-
|
|
27
|
+
/* the dark action card holding the content slot. Padding is a var so a consumer can retune it (the
|
|
28
|
+
default 10/20/12 is asymmetric to seat a bottom-straddling keycap; a chip with a side keycap or
|
|
29
|
+
custom content may want it symmetric/tighter) via the --rydr-ui-card-pad property on an ancestor. */
|
|
30
|
+
.rydr-ui-card { position: relative; padding: var(--rydr-ui-card-pad, 10px 20px 12px); border-radius: 12px; background: rgba(8,14,24,0.7);
|
|
29
31
|
border: 1px solid rgba(255,255,255,0.16); backdrop-filter: blur(8px); box-shadow: 0 6px 18px rgba(0,0,0,0.4);
|
|
30
32
|
color: #eef4ff; text-align: center; }
|
|
31
33
|
/* the card is JUST a dark container with padding — it hugs its content by default. A consumer can fix
|
|
@@ -172,6 +174,13 @@ const CSS = `
|
|
|
172
174
|
/* a disabled action's label fades back (the pip carries its own inert grey via .rydr-ui-pip.disabled) */
|
|
173
175
|
.rydr-ui-ld-lbl-off { opacity: 0.4; transition: opacity 0.12s; }
|
|
174
176
|
|
|
177
|
+
/* SOLO LABELED DIAMOND (mountSoloLabeledDiamond) — reuses the labeled-diamond grid + label cells, but
|
|
178
|
+
its centre cell is a full A/B/Y/Z keycap (one big active pip, three small blank grey circles) rather
|
|
179
|
+
than the same-size pip cluster. The keycap is absolutely placed by JS so its 4-pip centre lands at
|
|
180
|
+
the cell centre (a known pixel), and the single label's tuck margin is computed per-pip in JS (so it
|
|
181
|
+
seats on the big active pip AND the small inactive ones) — hence no per-side margins here. */
|
|
182
|
+
.rydr-ui-sld-cluster { grid-area: 2 / 2; position: relative; width: 110px; height: 100px; z-index: 3; }
|
|
183
|
+
|
|
175
184
|
/* RARITY CARD (mountRarityCard) — a generic rarity-tinted glass frame + a content slot the game fills.
|
|
176
185
|
The whole frame is tinted by --rarity (set inline per card). An optional top band carries the rarity
|
|
177
186
|
label; .selected adds a ring + deeper glow and lifts the card for arrow-navigable pickers. */
|
|
@@ -201,6 +210,19 @@ const CSS = `
|
|
|
201
210
|
box-shadow: 0 24px 60px rgba(0,0,0,0.55), inset 0 2px 22px rgba(0,0,0,0.55), inset 0 0 32px -2px var(--rarity),
|
|
202
211
|
0 0 64px -2px var(--rarity); }
|
|
203
212
|
|
|
213
|
+
/* SUBTITLE (mountSubtitle) — the voice-over "auto" caption: a boxless, centred, self-dismissing line —
|
|
214
|
+
a large speaker name over a large dialogue line with a soft drop shadow and NO frame, so it reads over
|
|
215
|
+
live gameplay without the dialogue card's weight. The type sizes + shadow are contract (trainer-screen
|
|
216
|
+
legibility); only position (anchor + offset, set inline) and name visibility vary. */
|
|
217
|
+
.rydr-ui-sub { position: fixed; left: 50%; bottom: 9%; transform: translateX(-50%); z-index: 40;
|
|
218
|
+
width: min(1400px, 92vw); text-align: center; pointer-events: none;
|
|
219
|
+
opacity: 0; transition: opacity 0.28s ease; font-family: system-ui, sans-serif; }
|
|
220
|
+
.rydr-ui-sub.show { opacity: 1; }
|
|
221
|
+
.rydr-ui-sub-name { color: #ffe27a; font-weight: 800; font-size: 42px; letter-spacing: 0.01em;
|
|
222
|
+
margin-bottom: 12px; text-shadow: 0 2px 6px rgba(0,0,0,0.85); }
|
|
223
|
+
.rydr-ui-sub-text { color: #fff; font-weight: 700; font-size: 72px; line-height: 1.28;
|
|
224
|
+
text-shadow: 0 4px 18px rgba(0,0,0,0.9), 0 0 5px rgba(0,0,0,0.85); }
|
|
225
|
+
|
|
204
226
|
@keyframes rydr-ui-pulse {
|
|
205
227
|
0%,100% { transform: translateY(0);
|
|
206
228
|
box-shadow: 0 4px 0 color-mix(in srgb, var(--c) 55%, #000), 0 7px 12px rgba(0,0,0,0.5),
|
package/dist/ui/styles.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/ui/styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB,MAAM,UAAU,SAAS;IACvB,IAAI,WAAW,IAAI,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC;QAAC,WAAW,GAAG,IAAI,CAAC;QAAC,OAAO;IAAC,CAAC;IAC1F,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,EAAE,GAAG,aAAa,CAAC;IACzB,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACjC,WAAW,GAAG,IAAI,CAAC;AACrB,CAAC;AAED,MAAM,GAAG,GAAG
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/ui/styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB,MAAM,UAAU,SAAS;IACvB,IAAI,WAAW,IAAI,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC;QAAC,WAAW,GAAG,IAAI,CAAC;QAAC,OAAO;IAAC,CAAC;IAC1F,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,EAAE,GAAG,aAAa,CAAC;IACzB,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACjC,WAAW,GAAG,IAAI,CAAC;AACrB,CAAC;AAED,MAAM,GAAG,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkNX,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export interface SubtitleOptions {
|
|
2
|
+
/** Screen edge the caption anchors to (default `"bottom"`). */
|
|
3
|
+
anchor?: "top" | "bottom";
|
|
4
|
+
/** Distance from the anchored edge — a number (px) or any CSS length (e.g. `"9%"`, `"12vh"`). Default `"9%"`. */
|
|
5
|
+
offset?: number | string;
|
|
6
|
+
/** Show the speaker NAME line above the caption (default `true`). A line opened with an empty name
|
|
7
|
+
* never shows the name regardless. */
|
|
8
|
+
showName?: boolean;
|
|
9
|
+
/** Typewriter speed, ms per character (default 18; 0 = reveal instantly). */
|
|
10
|
+
typeMs?: number;
|
|
11
|
+
}
|
|
12
|
+
export interface Subtitle {
|
|
13
|
+
root: HTMLElement;
|
|
14
|
+
/** Show one caption (fades in). `name` seats the speaker line above it (hidden when empty or
|
|
15
|
+
* `showName:false`). Replaces whatever was showing. */
|
|
16
|
+
open(name: string, text: string): void;
|
|
17
|
+
/** Finish the typewriter if one is running (returns `true`); otherwise a no-op (returns `false`). The
|
|
18
|
+
* auto-mode player skips the whole line on a press rather than calling this, but standalone callers can. */
|
|
19
|
+
advance(): boolean;
|
|
20
|
+
/** Fade the caption out. */
|
|
21
|
+
close(): void;
|
|
22
|
+
setVisible(v: boolean): void;
|
|
23
|
+
dispose(): void;
|
|
24
|
+
}
|
|
25
|
+
/** Mount a boxless self-dismissing subtitle (the voice-over "auto" caption). */
|
|
26
|
+
export declare function mountSubtitle(host: HTMLElement, opts?: SubtitleOptions): Subtitle;
|
|
27
|
+
//# sourceMappingURL=subtitle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subtitle.d.ts","sourceRoot":"","sources":["../../src/ui/subtitle.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,eAAe;IAC9B,+DAA+D;IAC/D,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC1B,iHAAiH;IACjH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB;2CACuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,WAAW,CAAC;IAClB;4DACwD;IACxD,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC;iHAC6G;IAC7G,OAAO,IAAI,OAAO,CAAC;IACnB,4BAA4B;IAC5B,KAAK,IAAI,IAAI,CAAC;IACd,UAAU,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,gFAAgF;AAChF,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,GAAE,eAAoB,GAAG,QAAQ,CAqDrF"}
|