@sensiblestats/widget-react 0.50.0 → 0.50.2
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 +12 -0
- package/dist/index.cjs +357 -257
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +366 -266
- package/dist/index.js.map +1 -1
- package/dist/styles.css +110 -86
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -4172,6 +4172,13 @@ var ATTR_KEYS = [
|
|
|
4172
4172
|
"shirtNumber",
|
|
4173
4173
|
"apps"
|
|
4174
4174
|
];
|
|
4175
|
+
function verdictGlyph(v) {
|
|
4176
|
+
if (v.verdict === "exact") return "\u2713";
|
|
4177
|
+
if (v.verdict === "miss") return "\u2717";
|
|
4178
|
+
if (v.direction === "up") return "\u2191";
|
|
4179
|
+
if (v.direction === "down") return "\u2193";
|
|
4180
|
+
return "\u2248";
|
|
4181
|
+
}
|
|
4175
4182
|
function MysteryTigerGame({
|
|
4176
4183
|
config,
|
|
4177
4184
|
result,
|
|
@@ -4181,16 +4188,15 @@ function MysteryTigerGame({
|
|
|
4181
4188
|
const [query, setQuery] = useState23("");
|
|
4182
4189
|
const inputId = useId2();
|
|
4183
4190
|
const clientState = parseClientState(result?.clientStateJson);
|
|
4184
|
-
const
|
|
4185
|
-
|
|
4186
|
-
);
|
|
4191
|
+
const guessResults = clientState?.guessResults ?? [];
|
|
4192
|
+
const alreadyGuessedIds = new Set(guessResults.map((g) => g.playerId));
|
|
4187
4193
|
const isOver = result?.alreadyPlayed === true || clientState?.solved === true || clientState?.failed === true;
|
|
4188
4194
|
const filtered = config && !isOver ? config.squadPlayers.filter(
|
|
4189
4195
|
(p) => !alreadyGuessedIds.has(p.id) && p.name.toLowerCase().includes(query.toLowerCase())
|
|
4190
4196
|
) : [];
|
|
4191
4197
|
function handleSelect(playerId) {
|
|
4192
4198
|
if (!config || isOver || submitting) return;
|
|
4193
|
-
const prevGuesses =
|
|
4199
|
+
const prevGuesses = guessResults.map((g) => g.playerId);
|
|
4194
4200
|
const newGuesses = [...prevGuesses, playerId];
|
|
4195
4201
|
setQuery("");
|
|
4196
4202
|
onSubmit(JSON.stringify({ guesses: newGuesses }));
|
|
@@ -4198,9 +4204,46 @@ function MysteryTigerGame({
|
|
|
4198
4204
|
return /* @__PURE__ */ jsxs49("div", { className: "ss-w-gt", "data-testid": "game-screen-mystery-tiger", children: [
|
|
4199
4205
|
!config && /* @__PURE__ */ jsx55("div", { className: "ss-w-gscreen-body", children: "Loading\u2026" }),
|
|
4200
4206
|
config && /* @__PURE__ */ jsxs49(Fragment9, { children: [
|
|
4201
|
-
|
|
4202
|
-
/* @__PURE__ */
|
|
4203
|
-
|
|
4207
|
+
/* @__PURE__ */ jsxs49("div", { className: "ss-w-gt-head", children: [
|
|
4208
|
+
/* @__PURE__ */ jsxs49("div", { children: [
|
|
4209
|
+
/* @__PURE__ */ jsx55("div", { className: "ss-w-gt-title", children: "Mystery Tiger" }),
|
|
4210
|
+
/* @__PURE__ */ jsx55("div", { className: "ss-w-gt-sub", children: "Guess today's squad player" })
|
|
4211
|
+
] }),
|
|
4212
|
+
clientState && !isOver && /* @__PURE__ */ jsxs49("span", { className: "ss-w-gt-left", children: [
|
|
4213
|
+
clientState.guessesRemaining,
|
|
4214
|
+
" left"
|
|
4215
|
+
] })
|
|
4216
|
+
] }),
|
|
4217
|
+
guessResults.length > 0 && /* @__PURE__ */ jsx55("div", { className: "ss-w-gtrows", children: guessResults.map((gr, i) => {
|
|
4218
|
+
const player = config.squadPlayers.find((p) => p.id === gr.playerId);
|
|
4219
|
+
return /* @__PURE__ */ jsxs49("div", { className: "ss-w-gtguess", children: [
|
|
4220
|
+
/* @__PURE__ */ jsxs49("div", { className: "ss-w-gtguess-nm", children: [
|
|
4221
|
+
i + 1,
|
|
4222
|
+
" \xB7 ",
|
|
4223
|
+
player?.name ?? `#${gr.playerId}`
|
|
4224
|
+
] }),
|
|
4225
|
+
/* @__PURE__ */ jsx55("div", { className: "ss-w-gtrow", children: ATTR_KEYS.map((key) => {
|
|
4226
|
+
const v = gr[key];
|
|
4227
|
+
return /* @__PURE__ */ jsxs49(
|
|
4228
|
+
"div",
|
|
4229
|
+
{
|
|
4230
|
+
className: `ss-w-gtile ss-w-gtile--${v.verdict}`,
|
|
4231
|
+
"data-testid": `verdict-${key}-${i}`,
|
|
4232
|
+
"data-verdict": v.verdict,
|
|
4233
|
+
"aria-label": `${ATTR_LABELS[key]}: ${v.verdict}${v.direction ? ` ${v.direction}` : ""}`,
|
|
4234
|
+
children: [
|
|
4235
|
+
/* @__PURE__ */ jsx55("span", { className: "ss-w-gtile-lab", children: ATTR_LABELS[key] }),
|
|
4236
|
+
/* @__PURE__ */ jsx55("span", { className: "ss-w-gtile-v", "aria-hidden": "true", children: verdictGlyph(v) })
|
|
4237
|
+
]
|
|
4238
|
+
},
|
|
4239
|
+
key
|
|
4240
|
+
);
|
|
4241
|
+
}) })
|
|
4242
|
+
] }, gr.playerId);
|
|
4243
|
+
}) }),
|
|
4244
|
+
clientState?.hintLine && !isOver && /* @__PURE__ */ jsxs49("div", { className: "ss-w-gt-hint", children: [
|
|
4245
|
+
"\u{1F4A1} ",
|
|
4246
|
+
clientState.hintLine
|
|
4204
4247
|
] }),
|
|
4205
4248
|
!isOver && /* @__PURE__ */ jsxs49("div", { className: "ss-w-gtta", children: [
|
|
4206
4249
|
/* @__PURE__ */ jsx55(
|
|
@@ -4235,38 +4278,15 @@ function MysteryTigerGame({
|
|
|
4235
4278
|
p.id
|
|
4236
4279
|
)) })
|
|
4237
4280
|
] }),
|
|
4238
|
-
|
|
4239
|
-
/* @__PURE__ */
|
|
4240
|
-
|
|
4241
|
-
|
|
4242
|
-
|
|
4243
|
-
|
|
4244
|
-
|
|
4245
|
-
|
|
4246
|
-
|
|
4247
|
-
ATTR_KEYS.map((key) => {
|
|
4248
|
-
const v = gr[key];
|
|
4249
|
-
return /* @__PURE__ */ jsx55(
|
|
4250
|
-
"div",
|
|
4251
|
-
{
|
|
4252
|
-
className: `ss-w-gtile ss-w-gtile--${v.verdict}`,
|
|
4253
|
-
"data-testid": `verdict-${key}-${i}`,
|
|
4254
|
-
"data-verdict": v.verdict,
|
|
4255
|
-
"aria-label": `${ATTR_LABELS[key]}: ${v.verdict}${v.direction ? ` ${v.direction}` : ""}`,
|
|
4256
|
-
children: v.direction && /* @__PURE__ */ jsx55("span", { className: "ss-w-gtile-dir", "aria-hidden": "true", children: v.direction === "up" ? "\u2191" : "\u2193" })
|
|
4257
|
-
},
|
|
4258
|
-
key
|
|
4259
|
-
);
|
|
4260
|
-
})
|
|
4261
|
-
] }, gr.playerId);
|
|
4262
|
-
}) })
|
|
4263
|
-
] }),
|
|
4264
|
-
clientState?.hintLine && !isOver && /* @__PURE__ */ jsx55("div", { className: "ss-w-gt-hint", children: clientState.hintLine }),
|
|
4265
|
-
!isOver && clientState && /* @__PURE__ */ jsxs49("div", { className: "ss-w-gt-hint", children: [
|
|
4266
|
-
clientState.guessesRemaining,
|
|
4267
|
-
" guess",
|
|
4268
|
-
clientState.guessesRemaining !== 1 ? "es" : "",
|
|
4269
|
-
" remaining"
|
|
4281
|
+
isOver && clientState && /* @__PURE__ */ jsxs49("div", { className: `ss-w-gt-banner ss-w-gt-banner--${clientState.solved ? "solved" : "failed"}`, children: [
|
|
4282
|
+
/* @__PURE__ */ jsx55("div", { className: "ss-w-gt-banner-label", children: clientState.solved ? "\u{1F42F} You found them!" : "\u{1F614} Out of guesses" }),
|
|
4283
|
+
clientState.revealedPlayerName && /* @__PURE__ */ jsx55("div", { className: "ss-w-gt-banner-name", children: clientState.revealedPlayerName }),
|
|
4284
|
+
/* @__PURE__ */ jsxs49("div", { className: "ss-w-gt-banner-sub", children: [
|
|
4285
|
+
clientState.guessesUsed,
|
|
4286
|
+
" guess",
|
|
4287
|
+
clientState.guessesUsed === 1 ? "" : "es",
|
|
4288
|
+
" \xB7 come back tomorrow"
|
|
4289
|
+
] })
|
|
4270
4290
|
] })
|
|
4271
4291
|
] })
|
|
4272
4292
|
] });
|
|
@@ -4282,22 +4302,6 @@ function parseClientState2(json) {
|
|
|
4282
4302
|
return null;
|
|
4283
4303
|
}
|
|
4284
4304
|
}
|
|
4285
|
-
function AnsweredRow({
|
|
4286
|
-
answered,
|
|
4287
|
-
pair
|
|
4288
|
-
}) {
|
|
4289
|
-
const cls = `ss-w-hlrrow ss-w-hlrrow--${answered.wasCorrect ? "correct" : "wrong"}`;
|
|
4290
|
-
const icon = answered.wasCorrect ? "\u2713" : "\u2717";
|
|
4291
|
-
return /* @__PURE__ */ jsxs50("div", { className: cls, children: [
|
|
4292
|
-
/* @__PURE__ */ jsxs50("span", { className: "ss-w-hlrrow-names", children: [
|
|
4293
|
-
pair?.playerAName ?? "?",
|
|
4294
|
-
" vs ",
|
|
4295
|
-
pair?.playerBName ?? "?"
|
|
4296
|
-
] }),
|
|
4297
|
-
/* @__PURE__ */ jsx56("span", { className: "ss-w-hlrrow-pick", children: answered.pick }),
|
|
4298
|
-
/* @__PURE__ */ jsx56("span", { className: "ss-w-hlrrow-icon", children: icon })
|
|
4299
|
-
] });
|
|
4300
|
-
}
|
|
4301
4305
|
function HigherOrLowerGame({
|
|
4302
4306
|
config,
|
|
4303
4307
|
result,
|
|
@@ -4305,82 +4309,122 @@ function HigherOrLowerGame({
|
|
|
4305
4309
|
onSubmit
|
|
4306
4310
|
}) {
|
|
4307
4311
|
const clientState = parseClientState2(result?.clientStateJson);
|
|
4308
|
-
const
|
|
4309
|
-
const
|
|
4312
|
+
const answeredPairs = clientState?.answeredPairs ?? [];
|
|
4313
|
+
const answeredCount = answeredPairs.length;
|
|
4314
|
+
const runEndedWrong = answeredPairs.some((p) => !p.wasCorrect);
|
|
4310
4315
|
const allPairsAnswered = config != null && answeredCount >= config.pairs.length;
|
|
4311
4316
|
const isOver = result?.alreadyPlayed === true || runEndedWrong || allPairsAnswered;
|
|
4312
4317
|
const currentPair = config && !isOver ? config.pairs[answeredCount] ?? null : null;
|
|
4318
|
+
const correctCount = answeredPairs.filter((p) => p.wasCorrect).length;
|
|
4319
|
+
const score = clientState?.score ?? correctCount;
|
|
4320
|
+
const runLength = clientState?.runLength ?? 0;
|
|
4313
4321
|
function handlePick(pick) {
|
|
4314
4322
|
if (!config || isOver || submitting || !currentPair) return;
|
|
4315
|
-
const prevAnswers =
|
|
4323
|
+
const prevAnswers = answeredPairs.map((p) => ({ pairIndex: p.pairIndex, pick: p.pick }));
|
|
4316
4324
|
const newAnswers = [...prevAnswers, { pairIndex: currentPair.pairIndex, pick }];
|
|
4317
4325
|
onSubmit(JSON.stringify({ answers: newAnswers }));
|
|
4318
4326
|
}
|
|
4319
4327
|
return /* @__PURE__ */ jsxs50("div", { className: "ss-w-hl", "data-testid": "game-screen-higher-or-lower", children: [
|
|
4320
4328
|
!config && /* @__PURE__ */ jsx56("div", { className: "ss-w-gscreen-body", children: "Loading\u2026" }),
|
|
4321
4329
|
config && /* @__PURE__ */ jsxs50(Fragment10, { children: [
|
|
4322
|
-
/* @__PURE__ */ jsxs50("div", { className: "ss-w-
|
|
4323
|
-
/* @__PURE__ */
|
|
4324
|
-
|
|
4330
|
+
/* @__PURE__ */ jsxs50("div", { className: "ss-w-hl-head", children: [
|
|
4331
|
+
/* @__PURE__ */ jsxs50("div", { children: [
|
|
4332
|
+
/* @__PURE__ */ jsx56("div", { className: "ss-w-hl-title", children: "Higher or Lower" }),
|
|
4333
|
+
/* @__PURE__ */ jsxs50("div", { className: "ss-w-hl-sub", children: [
|
|
4334
|
+
config.statLabel,
|
|
4335
|
+
" \xB7 ",
|
|
4336
|
+
config.seasonLabel
|
|
4337
|
+
] })
|
|
4338
|
+
] }),
|
|
4339
|
+
runLength > 0 && !isOver && /* @__PURE__ */ jsxs50("span", { className: "ss-w-hl-streak", children: [
|
|
4340
|
+
"\u{1F525} ",
|
|
4341
|
+
runLength
|
|
4342
|
+
] })
|
|
4325
4343
|
] }),
|
|
4326
|
-
currentPair && /* @__PURE__ */ jsxs50(
|
|
4327
|
-
/* @__PURE__ */ jsxs50("div", { className: "ss-w-
|
|
4328
|
-
|
|
4329
|
-
|
|
4344
|
+
currentPair && /* @__PURE__ */ jsxs50(Fragment10, { children: [
|
|
4345
|
+
/* @__PURE__ */ jsxs50("div", { className: "ss-w-hl-q", children: [
|
|
4346
|
+
"Who has more ",
|
|
4347
|
+
config.statLabel.toLowerCase(),
|
|
4348
|
+
"?"
|
|
4330
4349
|
] }),
|
|
4331
|
-
/* @__PURE__ */ jsxs50("div", { className: "ss-w-
|
|
4332
|
-
/* @__PURE__ */
|
|
4333
|
-
|
|
4350
|
+
/* @__PURE__ */ jsxs50("div", { className: "ss-w-hlpair", children: [
|
|
4351
|
+
/* @__PURE__ */ jsxs50("div", { className: "ss-w-hlpc", children: [
|
|
4352
|
+
/* @__PURE__ */ jsx56("div", { className: "ss-w-hlpc-av", "aria-hidden": "true", children: "\u26BD" }),
|
|
4353
|
+
/* @__PURE__ */ jsx56("div", { className: "ss-w-hlpc-name", children: currentPair.playerAName }),
|
|
4354
|
+
/* @__PURE__ */ jsx56("div", { className: "ss-w-hlpc-stat", children: config.statLabel }),
|
|
4355
|
+
/* @__PURE__ */ jsx56("div", { className: "ss-w-hlpc-val", children: currentPair.playerAValue })
|
|
4356
|
+
] }),
|
|
4357
|
+
/* @__PURE__ */ jsxs50("div", { className: "ss-w-hlbtns", children: [
|
|
4358
|
+
/* @__PURE__ */ jsx56(
|
|
4359
|
+
"button",
|
|
4360
|
+
{
|
|
4361
|
+
type: "button",
|
|
4362
|
+
className: "ss-w-hlbtn ss-w-hlbtn--up",
|
|
4363
|
+
disabled: submitting,
|
|
4364
|
+
onClick: () => handlePick("higher"),
|
|
4365
|
+
children: "Higher \u25B2"
|
|
4366
|
+
}
|
|
4367
|
+
),
|
|
4368
|
+
/* @__PURE__ */ jsx56("span", { className: "ss-w-hl-or", children: "or" }),
|
|
4369
|
+
/* @__PURE__ */ jsx56(
|
|
4370
|
+
"button",
|
|
4371
|
+
{
|
|
4372
|
+
type: "button",
|
|
4373
|
+
className: "ss-w-hlbtn ss-w-hlbtn--dn",
|
|
4374
|
+
disabled: submitting,
|
|
4375
|
+
onClick: () => handlePick("lower"),
|
|
4376
|
+
children: "Lower \u25BC"
|
|
4377
|
+
}
|
|
4378
|
+
)
|
|
4379
|
+
] }),
|
|
4380
|
+
/* @__PURE__ */ jsxs50("div", { className: "ss-w-hlpc ss-w-hlpc--b", children: [
|
|
4381
|
+
/* @__PURE__ */ jsx56("div", { className: "ss-w-hlpc-av", "aria-hidden": "true", children: "\u26BD" }),
|
|
4382
|
+
/* @__PURE__ */ jsx56("div", { className: "ss-w-hlpc-name", children: currentPair.playerBName }),
|
|
4383
|
+
/* @__PURE__ */ jsx56("div", { className: "ss-w-hlpc-stat", children: config.statLabel }),
|
|
4384
|
+
/* @__PURE__ */ jsx56("div", { className: "ss-w-hlpc-val ss-w-hlpc-val--hidden", children: "?" })
|
|
4385
|
+
] })
|
|
4334
4386
|
] })
|
|
4335
4387
|
] }),
|
|
4336
|
-
|
|
4337
|
-
/* @__PURE__ */ jsx56(
|
|
4338
|
-
|
|
4339
|
-
|
|
4340
|
-
|
|
4341
|
-
|
|
4342
|
-
|
|
4343
|
-
|
|
4344
|
-
|
|
4345
|
-
}
|
|
4346
|
-
),
|
|
4347
|
-
/* @__PURE__ */ jsx56(
|
|
4348
|
-
"button",
|
|
4349
|
-
{
|
|
4350
|
-
type: "button",
|
|
4351
|
-
className: "ss-w-hlbtn",
|
|
4352
|
-
disabled: submitting,
|
|
4353
|
-
onClick: () => handlePick("lower"),
|
|
4354
|
-
children: "Lower"
|
|
4355
|
-
}
|
|
4356
|
-
)
|
|
4388
|
+
isOver && /* @__PURE__ */ jsxs50("div", { className: "ss-w-hl-over", children: [
|
|
4389
|
+
/* @__PURE__ */ jsx56("div", { className: "ss-w-hl-over-title", children: runEndedWrong ? "Run over" : "Nice run!" }),
|
|
4390
|
+
/* @__PURE__ */ jsx56("div", { className: "ss-w-hl-over-score", children: score }),
|
|
4391
|
+
/* @__PURE__ */ jsxs50("div", { className: "ss-w-hl-over-sub", children: [
|
|
4392
|
+
correctCount,
|
|
4393
|
+
" correct",
|
|
4394
|
+
correctCount === 1 ? "" : "",
|
|
4395
|
+
" \xB7 come back tomorrow for a new run"
|
|
4396
|
+
] })
|
|
4357
4397
|
] }),
|
|
4358
|
-
|
|
4398
|
+
answeredPairs.length > 0 && /* @__PURE__ */ jsx56("div", { className: "ss-w-hlresults", children: answeredPairs.map((answered) => {
|
|
4359
4399
|
const pair = config.pairs.find((p) => p.pairIndex === answered.pairIndex);
|
|
4360
|
-
|
|
4361
|
-
|
|
4362
|
-
|
|
4363
|
-
|
|
4364
|
-
|
|
4365
|
-
/* @__PURE__ */
|
|
4366
|
-
|
|
4367
|
-
|
|
4368
|
-
|
|
4369
|
-
|
|
4370
|
-
|
|
4371
|
-
|
|
4372
|
-
|
|
4373
|
-
|
|
4374
|
-
|
|
4375
|
-
|
|
4400
|
+
return /* @__PURE__ */ jsxs50(
|
|
4401
|
+
"div",
|
|
4402
|
+
{
|
|
4403
|
+
className: `ss-w-hlrrow ss-w-hlrrow--${answered.wasCorrect ? "correct" : "wrong"}`,
|
|
4404
|
+
children: [
|
|
4405
|
+
/* @__PURE__ */ jsxs50("span", { className: "ss-w-hlrrow-names", children: [
|
|
4406
|
+
pair?.playerAName ?? "?",
|
|
4407
|
+
" ",
|
|
4408
|
+
/* @__PURE__ */ jsx56("b", { className: "ss-w-hlrrow-val", children: pair?.playerAValue }),
|
|
4409
|
+
" vs ",
|
|
4410
|
+
pair?.playerBName ?? "?",
|
|
4411
|
+
" ",
|
|
4412
|
+
/* @__PURE__ */ jsx56("b", { className: "ss-w-hlrrow-val", children: answered.playerBValue })
|
|
4413
|
+
] }),
|
|
4414
|
+
/* @__PURE__ */ jsx56("span", { className: "ss-w-hlrrow-pick", children: answered.pick }),
|
|
4415
|
+
/* @__PURE__ */ jsx56("span", { className: "ss-w-hlrrow-icon", children: answered.wasCorrect ? "\u2713" : "\u2717" })
|
|
4416
|
+
]
|
|
4417
|
+
},
|
|
4418
|
+
answered.pairIndex
|
|
4419
|
+
);
|
|
4376
4420
|
}) })
|
|
4377
4421
|
] })
|
|
4378
4422
|
] });
|
|
4379
4423
|
}
|
|
4380
4424
|
|
|
4381
4425
|
// src/components/games/CareerPathGame.tsx
|
|
4382
|
-
import { useState as useState24, useId as useId3 } from "react";
|
|
4383
|
-
import { Fragment as
|
|
4426
|
+
import { useState as useState24, useId as useId3, Fragment as Fragment11 } from "react";
|
|
4427
|
+
import { Fragment as Fragment12, jsx as jsx57, jsxs as jsxs51 } from "react/jsx-runtime";
|
|
4384
4428
|
function parseClientState3(json) {
|
|
4385
4429
|
if (!json) return null;
|
|
4386
4430
|
try {
|
|
@@ -4389,29 +4433,19 @@ function parseClientState3(json) {
|
|
|
4389
4433
|
return null;
|
|
4390
4434
|
}
|
|
4391
4435
|
}
|
|
4392
|
-
function
|
|
4436
|
+
function spellYears(spell) {
|
|
4393
4437
|
const parts = [];
|
|
4394
4438
|
if (spell.startYear) parts.push(String(spell.startYear));
|
|
4395
4439
|
if (spell.endYear) parts.push(String(spell.endYear));
|
|
4396
|
-
|
|
4397
|
-
return /* @__PURE__ */ jsx57("span", { className: "ss-w-cpath-spell-yr", children: parts.join(" \u2013 ") });
|
|
4440
|
+
return parts.join("\u2013");
|
|
4398
4441
|
}
|
|
4399
4442
|
function ClubSpellCard({ spell }) {
|
|
4443
|
+
const years = spellYears(spell);
|
|
4400
4444
|
return /* @__PURE__ */ jsxs51("div", { className: `ss-w-cpath-club${spell.isLoan ? " ss-w-cpath-club--loan" : ""}`, children: [
|
|
4401
|
-
spell.crestUrl ? /* @__PURE__ */ jsx57(
|
|
4402
|
-
|
|
4403
|
-
|
|
4404
|
-
|
|
4405
|
-
alt: spell.clubName,
|
|
4406
|
-
className: "ss-w-cpath-crest",
|
|
4407
|
-
loading: "lazy"
|
|
4408
|
-
}
|
|
4409
|
-
) : /* @__PURE__ */ jsx57("div", { className: "ss-w-cpath-crest ss-w-cpath-crest--fallback", "aria-hidden": "true" }),
|
|
4410
|
-
/* @__PURE__ */ jsxs51("div", { className: "ss-w-cpath-club-info", children: [
|
|
4411
|
-
/* @__PURE__ */ jsx57("span", { className: "ss-w-cpath-club-name", children: spell.clubName }),
|
|
4412
|
-
/* @__PURE__ */ jsx57(SpellYear, { spell }),
|
|
4413
|
-
spell.isLoan && /* @__PURE__ */ jsx57("span", { className: "ss-w-cpath-loan-badge", children: "Loan" })
|
|
4414
|
-
] })
|
|
4445
|
+
spell.crestUrl ? /* @__PURE__ */ jsx57("img", { src: spell.crestUrl, alt: "", className: "ss-w-cpath-crest", loading: "lazy" }) : /* @__PURE__ */ jsx57("div", { className: "ss-w-cpath-crest ss-w-cpath-crest--fallback", "aria-hidden": "true", children: spell.clubName.slice(0, 3).toUpperCase() }),
|
|
4446
|
+
/* @__PURE__ */ jsx57("span", { className: "ss-w-cpath-club-name", children: spell.clubName }),
|
|
4447
|
+
years && /* @__PURE__ */ jsx57("span", { className: "ss-w-cpath-spell-yr", children: years }),
|
|
4448
|
+
spell.isLoan && /* @__PURE__ */ jsx57("span", { className: "ss-w-cpath-loan-badge", children: "Loan" })
|
|
4415
4449
|
] });
|
|
4416
4450
|
}
|
|
4417
4451
|
function CareerPathGame({
|
|
@@ -4423,11 +4457,11 @@ function CareerPathGame({
|
|
|
4423
4457
|
const [query, setQuery] = useState24("");
|
|
4424
4458
|
const inputId = useId3();
|
|
4425
4459
|
const clientState = parseClientState3(result?.clientStateJson);
|
|
4426
|
-
const alreadyGuessedIds = new Set(
|
|
4427
|
-
clientState?.guessResults.map((g) => g.playerId) ?? []
|
|
4428
|
-
);
|
|
4460
|
+
const alreadyGuessedIds = new Set(clientState?.guessResults.map((g) => g.playerId) ?? []);
|
|
4429
4461
|
const isOver = result?.alreadyPlayed === true || clientState?.solved === true || clientState?.failed === true;
|
|
4430
4462
|
const visiblePath = clientState?.visiblePath ?? config?.initialPath ?? [];
|
|
4463
|
+
const totalClubs = clientState?.totalClubs ?? config?.totalClubs ?? visiblePath.length;
|
|
4464
|
+
const hiddenCount = Math.max(0, totalClubs - visiblePath.length);
|
|
4431
4465
|
const filtered = config && !isOver ? config.typeaheadPool.filter(
|
|
4432
4466
|
(p) => !alreadyGuessedIds.has(p.id) && p.name.toLowerCase().includes(query.toLowerCase())
|
|
4433
4467
|
) : [];
|
|
@@ -4440,25 +4474,34 @@ function CareerPathGame({
|
|
|
4440
4474
|
}
|
|
4441
4475
|
return /* @__PURE__ */ jsxs51("div", { className: "ss-w-cpath", "data-testid": "game-screen-career-path", children: [
|
|
4442
4476
|
!config && /* @__PURE__ */ jsx57("div", { className: "ss-w-gscreen-body", children: "Loading\u2026" }),
|
|
4443
|
-
config && /* @__PURE__ */ jsxs51(
|
|
4444
|
-
/* @__PURE__ */ jsxs51("div", { className: "ss-w-cpath-
|
|
4445
|
-
/* @__PURE__ */
|
|
4446
|
-
|
|
4447
|
-
|
|
4448
|
-
|
|
4477
|
+
config && /* @__PURE__ */ jsxs51(Fragment12, { children: [
|
|
4478
|
+
/* @__PURE__ */ jsxs51("div", { className: "ss-w-cpath-head", children: [
|
|
4479
|
+
/* @__PURE__ */ jsxs51("div", { children: [
|
|
4480
|
+
/* @__PURE__ */ jsx57("div", { className: "ss-w-cpath-title", children: "Career Path" }),
|
|
4481
|
+
/* @__PURE__ */ jsx57("div", { className: "ss-w-cpath-sub", children: "Which player had this career?" })
|
|
4482
|
+
] }),
|
|
4483
|
+
clientState && !isOver && /* @__PURE__ */ jsxs51("span", { className: "ss-w-cpath-left", children: [
|
|
4484
|
+
clientState.guessesRemaining,
|
|
4485
|
+
" left"
|
|
4449
4486
|
] })
|
|
4450
4487
|
] }),
|
|
4451
|
-
/* @__PURE__ */ jsxs51("div", { className: "ss-w-cpath-
|
|
4452
|
-
visiblePath.map((spell, i) => /* @__PURE__ */
|
|
4453
|
-
|
|
4454
|
-
|
|
4455
|
-
|
|
4456
|
-
|
|
4488
|
+
/* @__PURE__ */ jsxs51("div", { className: "ss-w-cpath-seq", children: [
|
|
4489
|
+
visiblePath.map((spell, i) => /* @__PURE__ */ jsxs51(Fragment11, { children: [
|
|
4490
|
+
i > 0 && /* @__PURE__ */ jsx57("span", { className: "ss-w-cpath-arrow", "aria-hidden": "true", children: "\u2192" }),
|
|
4491
|
+
/* @__PURE__ */ jsx57(ClubSpellCard, { spell })
|
|
4492
|
+
] }, `${spell.clubName}-${i}`)),
|
|
4493
|
+
hiddenCount > 0 && /* @__PURE__ */ jsxs51(Fragment12, { children: [
|
|
4494
|
+
/* @__PURE__ */ jsx57("span", { className: "ss-w-cpath-arrow", "aria-hidden": "true", children: "\u2192" }),
|
|
4495
|
+
/* @__PURE__ */ jsxs51("div", { className: "ss-w-cpath-hidden", children: [
|
|
4496
|
+
"+",
|
|
4497
|
+
hiddenCount,
|
|
4498
|
+
" more"
|
|
4499
|
+
] })
|
|
4457
4500
|
] })
|
|
4458
4501
|
] }),
|
|
4459
|
-
|
|
4460
|
-
|
|
4461
|
-
clientState.
|
|
4502
|
+
clientState?.hintLine && !isOver && /* @__PURE__ */ jsxs51("div", { className: "ss-w-cpath-hint", children: [
|
|
4503
|
+
"\u{1F4A1} ",
|
|
4504
|
+
clientState.hintLine
|
|
4462
4505
|
] }),
|
|
4463
4506
|
!isOver && /* @__PURE__ */ jsxs51("div", { className: "ss-w-gtta", children: [
|
|
4464
4507
|
/* @__PURE__ */ jsx57(
|
|
@@ -4468,7 +4511,7 @@ function CareerPathGame({
|
|
|
4468
4511
|
type: "text",
|
|
4469
4512
|
role: "textbox",
|
|
4470
4513
|
className: "ss-w-gtta-i",
|
|
4471
|
-
placeholder: "
|
|
4514
|
+
placeholder: "Name the player\u2026",
|
|
4472
4515
|
value: query,
|
|
4473
4516
|
disabled: submitting || isOver,
|
|
4474
4517
|
onChange: (e) => setQuery(e.target.value),
|
|
@@ -4493,12 +4536,15 @@ function CareerPathGame({
|
|
|
4493
4536
|
p.id
|
|
4494
4537
|
)) })
|
|
4495
4538
|
] }),
|
|
4496
|
-
|
|
4497
|
-
|
|
4498
|
-
clientState.
|
|
4499
|
-
"
|
|
4500
|
-
|
|
4501
|
-
|
|
4539
|
+
isOver && clientState && /* @__PURE__ */ jsxs51("div", { className: `ss-w-cpath-banner ss-w-cpath-banner--${clientState.solved ? "solved" : "failed"}`, children: [
|
|
4540
|
+
/* @__PURE__ */ jsx57("div", { className: "ss-w-cpath-banner-label", children: clientState.solved ? "\u2705 Career traced!" : "\u{1F614} Out of guesses" }),
|
|
4541
|
+
clientState.revealedPlayerName && /* @__PURE__ */ jsx57("div", { className: "ss-w-cpath-banner-name", children: clientState.revealedPlayerName }),
|
|
4542
|
+
/* @__PURE__ */ jsxs51("div", { className: "ss-w-cpath-banner-sub", children: [
|
|
4543
|
+
clientState.guessesUsed,
|
|
4544
|
+
" guess",
|
|
4545
|
+
clientState.guessesUsed === 1 ? "" : "es",
|
|
4546
|
+
" \xB7 come back tomorrow"
|
|
4547
|
+
] })
|
|
4502
4548
|
] })
|
|
4503
4549
|
] })
|
|
4504
4550
|
] });
|
|
@@ -4506,7 +4552,7 @@ function CareerPathGame({
|
|
|
4506
4552
|
|
|
4507
4553
|
// src/components/games/BeatTheGridGame.tsx
|
|
4508
4554
|
import React, { useState as useState25, useId as useId4 } from "react";
|
|
4509
|
-
import { Fragment as
|
|
4555
|
+
import { Fragment as Fragment13, jsx as jsx58, jsxs as jsxs52 } from "react/jsx-runtime";
|
|
4510
4556
|
function parseClientState4(json) {
|
|
4511
4557
|
if (!json) return null;
|
|
4512
4558
|
try {
|
|
@@ -4552,7 +4598,7 @@ function SearchSheet({
|
|
|
4552
4598
|
}
|
|
4553
4599
|
)
|
|
4554
4600
|
] }),
|
|
4555
|
-
/* @__PURE__ */ jsxs52("div", { className: "ss-w-gtta", children: [
|
|
4601
|
+
playerPool.length === 0 ? /* @__PURE__ */ jsx58("div", { className: "ss-w-btg-sheet-empty", children: "No players available to search yet." }) : /* @__PURE__ */ jsxs52("div", { className: "ss-w-gtta", children: [
|
|
4556
4602
|
/* @__PURE__ */ jsx58(
|
|
4557
4603
|
"input",
|
|
4558
4604
|
{
|
|
@@ -4617,18 +4663,23 @@ function BeatTheGridGame({
|
|
|
4617
4663
|
const rows = config.rows;
|
|
4618
4664
|
const cols = config.cols;
|
|
4619
4665
|
return /* @__PURE__ */ jsxs52("div", { className: "ss-w-btg", "data-testid": "game-screen-beat-the-grid", children: [
|
|
4620
|
-
/* @__PURE__ */ jsxs52("div", { className: "ss-w-btg-
|
|
4621
|
-
/* @__PURE__ */ jsxs52("
|
|
4622
|
-
"
|
|
4623
|
-
|
|
4666
|
+
/* @__PURE__ */ jsxs52("div", { className: "ss-w-btg-head", children: [
|
|
4667
|
+
/* @__PURE__ */ jsxs52("div", { children: [
|
|
4668
|
+
/* @__PURE__ */ jsx58("div", { className: "ss-w-btg-title", children: "Beat the Grid" }),
|
|
4669
|
+
/* @__PURE__ */ jsx58("div", { className: "ss-w-btg-sub", children: "Fill each cell with a player who fits" })
|
|
4624
4670
|
] }),
|
|
4625
|
-
|
|
4626
|
-
|
|
4627
|
-
|
|
4628
|
-
|
|
4629
|
-
|
|
4630
|
-
|
|
4631
|
-
|
|
4671
|
+
/* @__PURE__ */ jsxs52("div", { className: "ss-w-btg-ctx", children: [
|
|
4672
|
+
/* @__PURE__ */ jsxs52("span", { className: "ss-w-btg-ctx-score", children: [
|
|
4673
|
+
clientState?.totalScore ?? 0,
|
|
4674
|
+
" pts"
|
|
4675
|
+
] }),
|
|
4676
|
+
!isLocked2 && /* @__PURE__ */ jsxs52("span", { className: "ss-w-btg-ctx-left", children: [
|
|
4677
|
+
config.maxGuesses - filledCells.length,
|
|
4678
|
+
" cell",
|
|
4679
|
+
config.maxGuesses - filledCells.length !== 1 ? "s" : "",
|
|
4680
|
+
" left"
|
|
4681
|
+
] })
|
|
4682
|
+
] })
|
|
4632
4683
|
] }),
|
|
4633
4684
|
/* @__PURE__ */ jsxs52(
|
|
4634
4685
|
"div",
|
|
@@ -4657,7 +4708,7 @@ function BeatTheGridGame({
|
|
|
4657
4708
|
].filter(Boolean).join(" "),
|
|
4658
4709
|
disabled: isLocked2 || submitting,
|
|
4659
4710
|
onClick: () => handleCellClick(rowIdx, colIdx),
|
|
4660
|
-
children: filled ? /* @__PURE__ */ jsxs52(
|
|
4711
|
+
children: filled ? /* @__PURE__ */ jsxs52(Fragment13, { children: [
|
|
4661
4712
|
/* @__PURE__ */ jsx58("span", { className: "ss-w-btg-cell-score", children: filled.rarityScore }),
|
|
4662
4713
|
filled.isCorrect && /* @__PURE__ */ jsx58("span", { className: "ss-w-btg-cell-check", "aria-hidden": "true", children: "\u2713" })
|
|
4663
4714
|
] }) : /* @__PURE__ */ jsx58("span", { className: "ss-w-btg-cell-empty", "aria-hidden": "true", children: "+" })
|
|
@@ -4669,6 +4720,16 @@ function BeatTheGridGame({
|
|
|
4669
4720
|
]
|
|
4670
4721
|
}
|
|
4671
4722
|
),
|
|
4723
|
+
isLocked2 && /* @__PURE__ */ jsxs52("div", { className: "ss-w-btg-done", children: [
|
|
4724
|
+
/* @__PURE__ */ jsx58("div", { className: "ss-w-btg-done-label", children: "\u{1F532} Grid complete" }),
|
|
4725
|
+
/* @__PURE__ */ jsx58("div", { className: "ss-w-btg-done-score", children: clientState?.totalScore ?? 0 }),
|
|
4726
|
+
/* @__PURE__ */ jsxs52("div", { className: "ss-w-btg-done-sub", children: [
|
|
4727
|
+
filledCells.filter((c) => c.isCorrect).length,
|
|
4728
|
+
"/",
|
|
4729
|
+
filledCells.length,
|
|
4730
|
+
" correct \xB7 come back tomorrow"
|
|
4731
|
+
] })
|
|
4732
|
+
] }),
|
|
4672
4733
|
activeCell !== null && /* @__PURE__ */ jsx58(
|
|
4673
4734
|
SearchSheet,
|
|
4674
4735
|
{
|
|
@@ -4686,7 +4747,7 @@ function BeatTheGridGame({
|
|
|
4686
4747
|
}
|
|
4687
4748
|
|
|
4688
4749
|
// src/components/games/GuessTheXiGame.tsx
|
|
4689
|
-
import { Fragment as
|
|
4750
|
+
import { Fragment as Fragment14, jsx as jsx59, jsxs as jsxs53 } from "react/jsx-runtime";
|
|
4690
4751
|
function parseClientState5(json) {
|
|
4691
4752
|
if (!json) return null;
|
|
4692
4753
|
try {
|
|
@@ -4709,6 +4770,7 @@ function GuessTheXiGame({
|
|
|
4709
4770
|
}) {
|
|
4710
4771
|
const clientState = parseClientState5(result?.clientStateJson);
|
|
4711
4772
|
const isOver = result?.alreadyPlayed === true || clientState?.status === "solved" || clientState?.status === "failed";
|
|
4773
|
+
const solved = clientState?.status === "solved";
|
|
4712
4774
|
function handlePick(teamId) {
|
|
4713
4775
|
if (!config || isOver || submitting) return;
|
|
4714
4776
|
const prevGuesses = clientState?.guessHistory.map((g) => ({ teamId: g.teamId })) ?? [];
|
|
@@ -4717,15 +4779,24 @@ function GuessTheXiGame({
|
|
|
4717
4779
|
}
|
|
4718
4780
|
return /* @__PURE__ */ jsxs53("div", { className: "ss-w-gxi", "data-testid": "game-screen-guess-the-xi", children: [
|
|
4719
4781
|
!config && /* @__PURE__ */ jsx59("div", { className: "ss-w-gscreen-body", children: "Loading\u2026" }),
|
|
4720
|
-
config && /* @__PURE__ */ jsxs53(
|
|
4721
|
-
/* @__PURE__ */
|
|
4722
|
-
|
|
4782
|
+
config && /* @__PURE__ */ jsxs53(Fragment14, { children: [
|
|
4783
|
+
/* @__PURE__ */ jsxs53("div", { className: "ss-w-gxi-head", children: [
|
|
4784
|
+
/* @__PURE__ */ jsxs53("div", { children: [
|
|
4785
|
+
/* @__PURE__ */ jsx59("div", { className: "ss-w-gxi-title", children: "Guess the XI" }),
|
|
4786
|
+
/* @__PURE__ */ jsx59("div", { className: "ss-w-gxi-sub", children: config.poolLabel })
|
|
4787
|
+
] }),
|
|
4788
|
+
clientState && !isOver && /* @__PURE__ */ jsxs53("span", { className: "ss-w-gxi-left", children: [
|
|
4789
|
+
"Guess ",
|
|
4790
|
+
clientState.guessesUsed + 1,
|
|
4791
|
+
"/6"
|
|
4792
|
+
] })
|
|
4793
|
+
] }),
|
|
4794
|
+
config.positions.length > 0 && /* @__PURE__ */ jsx59("div", { className: "ss-w-gxi-pitch", children: config.positions.map((pos, i) => /* @__PURE__ */ jsxs53("div", { className: "ss-w-gxi-pslot", children: [
|
|
4723
4795
|
/* @__PURE__ */ jsx59("span", { className: "ss-w-gxi-pslot-pos", children: pos.slot }),
|
|
4724
4796
|
/* @__PURE__ */ jsx59("span", { className: "ss-w-gxi-pslot-nat", children: pos.nationality })
|
|
4725
|
-
] }, pos.slot)) }),
|
|
4797
|
+
] }, `${pos.slot}-${i}`)) }),
|
|
4726
4798
|
clientState && clientState.earnedReveals.length > 0 && /* @__PURE__ */ jsx59("div", { className: "ss-w-gxi-reveals", children: clientState.earnedReveals.map((r, i) => /* @__PURE__ */ jsx59(RevealCard, { reveal: r }, i)) }),
|
|
4727
|
-
isOver
|
|
4728
|
-
/* @__PURE__ */ jsx59("div", { className: "ss-w-gxi-pool", children: config.teamPool.map((team) => {
|
|
4799
|
+
!isOver ? /* @__PURE__ */ jsx59("div", { className: "ss-w-gxi-pool", children: config.teamPool.map((team) => {
|
|
4729
4800
|
const guessRecord = clientState?.guessHistory.find((g) => g.teamId === team.teamId);
|
|
4730
4801
|
return /* @__PURE__ */ jsx59(
|
|
4731
4802
|
"button",
|
|
@@ -4735,17 +4806,21 @@ function GuessTheXiGame({
|
|
|
4735
4806
|
"ss-w-gxi-team-btn",
|
|
4736
4807
|
guessRecord ? guessRecord.wasCorrect ? "ss-w-gxi-team-btn--correct" : "ss-w-gxi-team-btn--wrong" : ""
|
|
4737
4808
|
].filter(Boolean).join(" "),
|
|
4738
|
-
disabled:
|
|
4809
|
+
disabled: submitting,
|
|
4739
4810
|
onClick: () => handlePick(team.teamId),
|
|
4740
4811
|
children: team.teamName
|
|
4741
4812
|
},
|
|
4742
4813
|
team.teamId
|
|
4743
4814
|
);
|
|
4744
|
-
}) }),
|
|
4745
|
-
|
|
4746
|
-
"
|
|
4747
|
-
|
|
4748
|
-
|
|
4815
|
+
}) }) : clientState && /* @__PURE__ */ jsxs53("div", { className: `ss-w-gxi-banner ss-w-gxi-banner--${solved ? "solved" : "failed"}`, children: [
|
|
4816
|
+
/* @__PURE__ */ jsx59("div", { className: "ss-w-gxi-banner-label", children: solved ? "\u2705 Solved!" : "\u{1F614} Out of guesses" }),
|
|
4817
|
+
/* @__PURE__ */ jsx59("div", { className: "ss-w-gxi-banner-score", children: clientState.score }),
|
|
4818
|
+
/* @__PURE__ */ jsxs53("div", { className: "ss-w-gxi-banner-sub", children: [
|
|
4819
|
+
clientState.guessesUsed,
|
|
4820
|
+
" guess",
|
|
4821
|
+
clientState.guessesUsed === 1 ? "" : "es",
|
|
4822
|
+
" \xB7 come back tomorrow"
|
|
4823
|
+
] })
|
|
4749
4824
|
] })
|
|
4750
4825
|
] })
|
|
4751
4826
|
] });
|
|
@@ -4753,7 +4828,7 @@ function GuessTheXiGame({
|
|
|
4753
4828
|
|
|
4754
4829
|
// src/components/games/DailyQuizGame.tsx
|
|
4755
4830
|
import { useState as useState26 } from "react";
|
|
4756
|
-
import { Fragment as
|
|
4831
|
+
import { Fragment as Fragment15, jsx as jsx60, jsxs as jsxs54 } from "react/jsx-runtime";
|
|
4757
4832
|
function parseClientState6(json) {
|
|
4758
4833
|
if (!json) return null;
|
|
4759
4834
|
try {
|
|
@@ -4789,7 +4864,7 @@ function DailyQuizGame({
|
|
|
4789
4864
|
}
|
|
4790
4865
|
return /* @__PURE__ */ jsxs54("div", { className: "ss-w-dq", "data-testid": "game-screen-daily-quiz", children: [
|
|
4791
4866
|
!config && /* @__PURE__ */ jsx60("div", { className: "ss-w-gscreen-body", children: "Loading\u2026" }),
|
|
4792
|
-
config && /* @__PURE__ */ jsxs54(
|
|
4867
|
+
config && /* @__PURE__ */ jsxs54(Fragment15, { children: [
|
|
4793
4868
|
isRevealed && result?.score != null && /* @__PURE__ */ jsxs54("div", { className: "ss-w-dq-score", children: [
|
|
4794
4869
|
/* @__PURE__ */ jsx60("span", { className: "ss-w-dq-score-val", children: result.score }),
|
|
4795
4870
|
/* @__PURE__ */ jsx60("span", { className: "ss-w-dq-score-label", children: "pts" })
|
|
@@ -6600,101 +6675,121 @@ var WIDGET_CSS = `.ss-w-root { all: revert; }
|
|
|
6600
6675
|
.ss-w-gtta-opt { padding: 9px 12px; font-size: 13px; cursor: pointer; color: var(--ss-w-ink); border-bottom: 1px solid var(--ss-w-line); }
|
|
6601
6676
|
.ss-w-gtta-opt:last-child { border-bottom: none; }
|
|
6602
6677
|
.ss-w-gtta-opt:hover { background: var(--ss-w-bubble); }
|
|
6603
|
-
/*
|
|
6604
|
-
.ss-w-
|
|
6605
|
-
.ss-w-
|
|
6606
|
-
.ss-w-
|
|
6607
|
-
|
|
6608
|
-
|
|
6609
|
-
.ss-w-
|
|
6610
|
-
.ss-w-
|
|
6611
|
-
|
|
6612
|
-
.ss-w-
|
|
6613
|
-
|
|
6614
|
-
.ss-w-gtile
|
|
6678
|
+
/* Header: title + sub + remaining chip */
|
|
6679
|
+
.ss-w-gt-head { display: flex; align-items: flex-start; gap: 8px; }
|
|
6680
|
+
.ss-w-gt-title { font-size: 18px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; color: var(--ss-w-ink); line-height: 1; }
|
|
6681
|
+
.ss-w-gt-sub { font-size: 11px; color: var(--ss-w-faint); margin-top: 4px; }
|
|
6682
|
+
.ss-w-gt-left { margin-left: auto; flex: none; font-size: 11px; font-weight: 700; color: var(--ss-w-accent); background: color-mix(in srgb, var(--ss-w-accent) 11%, var(--ss-w-panel)); border: 1px solid color-mix(in srgb, var(--ss-w-accent) 22%, var(--ss-w-line)); border-radius: 999px; padding: 4px 10px; white-space: nowrap; }
|
|
6683
|
+
/* Guess rows \u2014 one labelled block per guess */
|
|
6684
|
+
.ss-w-gtrows { display: flex; flex-direction: column; gap: 8px; }
|
|
6685
|
+
.ss-w-gtguess { display: flex; flex-direction: column; gap: 4px; }
|
|
6686
|
+
.ss-w-gtguess-nm { font-size: 11px; font-weight: 600; color: var(--ss-w-faint); }
|
|
6687
|
+
.ss-w-gtrow { display: grid; grid-template-columns: repeat(5, 1fr); gap: 5px; }
|
|
6688
|
+
/* Verdict tiles: label on top, verdict glyph below */
|
|
6689
|
+
.ss-w-gtile { display: flex; flex-direction: column; align-items: center; justify-content: center; aspect-ratio: 1; border-radius: 8px; gap: 2px; min-width: 0; }
|
|
6690
|
+
.ss-w-gtile-lab { font-size: 8px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; opacity: .75; }
|
|
6691
|
+
.ss-w-gtile-v { font-size: 15px; font-weight: 800; line-height: 1; }
|
|
6692
|
+
.ss-w-gtile--exact { background: var(--ss-w-correct); color: #062611; }
|
|
6693
|
+
.ss-w-gtile--near { background: var(--ss-w-accent); color: #241700; }
|
|
6615
6694
|
.ss-w-gtile--miss { background: var(--ss-w-bubble); color: var(--ss-w-faint); border: 1px solid var(--ss-w-line); }
|
|
6616
|
-
.ss-w-gtile-dir { font-size: 11px; line-height: 1; }
|
|
6617
6695
|
/* Hint line */
|
|
6618
|
-
.ss-w-gt-hint { font-size: 11.5px; color: var(--ss-w-faint); text-align: center; padding:
|
|
6619
|
-
/*
|
|
6620
|
-
.ss-w-gt-banner { display: flex; flex-direction: column; align-items: center; gap:
|
|
6696
|
+
.ss-w-gt-hint { font-size: 11.5px; color: var(--ss-w-faint); text-align: center; padding: 6px 10px; border-radius: 10px; background: color-mix(in srgb, var(--ss-w-accent) 8%, var(--ss-w-panel)); border: 1px dashed color-mix(in srgb, var(--ss-w-accent) 30%, var(--ss-w-line)); }
|
|
6697
|
+
/* Terminal outcome banner */
|
|
6698
|
+
.ss-w-gt-banner { display: flex; flex-direction: column; align-items: center; gap: 5px; padding: 16px 12px; border-radius: 14px; text-align: center; }
|
|
6621
6699
|
.ss-w-gt-banner--solved { background: color-mix(in srgb, var(--ss-w-correct) 12%, var(--ss-w-panel)); border: 1px solid color-mix(in srgb, var(--ss-w-correct) 28%, var(--ss-w-line)); }
|
|
6622
|
-
.ss-w-gt-banner--failed { background:
|
|
6623
|
-
.ss-w-gt-banner-name { font-size:
|
|
6624
|
-
.ss-w-gt-banner-label { font-size:
|
|
6700
|
+
.ss-w-gt-banner--failed { background: var(--ss-w-panel); border: 1px solid var(--ss-w-line); }
|
|
6701
|
+
.ss-w-gt-banner-name { font-size: 20px; font-weight: 800; text-transform: uppercase; letter-spacing: .01em; color: var(--ss-w-accent); }
|
|
6702
|
+
.ss-w-gt-banner-label { font-size: 13px; font-weight: 700; color: var(--ss-w-ink); }
|
|
6703
|
+
.ss-w-gt-banner-sub { font-size: 11px; color: var(--ss-w-faint); }
|
|
6625
6704
|
|
|
6626
|
-
/* ---- Higher or Lower game screen (D3) ---- */
|
|
6705
|
+
/* ---- Higher or Lower game screen (D3) \u2014 artifact hl-pair/pcard/hlb layout ---- */
|
|
6627
6706
|
.ss-w-hl { display: flex; flex-direction: column; gap: 12px; }
|
|
6628
|
-
/*
|
|
6629
|
-
.ss-w-
|
|
6630
|
-
.ss-w-
|
|
6631
|
-
.ss-w-
|
|
6632
|
-
|
|
6633
|
-
|
|
6634
|
-
|
|
6635
|
-
|
|
6636
|
-
|
|
6637
|
-
.ss-w-hlpc {
|
|
6638
|
-
.ss-w-hlpc
|
|
6639
|
-
.ss-w-hlpc-name { font-size: 12.5px; font-weight:
|
|
6640
|
-
.ss-w-hlpc-
|
|
6641
|
-
.ss-w-hlpc-val
|
|
6642
|
-
.ss-w-hlpc-val--
|
|
6643
|
-
|
|
6644
|
-
.ss-w-
|
|
6645
|
-
.ss-w-
|
|
6646
|
-
.ss-w-
|
|
6647
|
-
|
|
6648
|
-
.ss-w-
|
|
6649
|
-
.ss-w-hlbtn
|
|
6650
|
-
.ss-w-hlbtn:hover:not(:disabled) { background: var(--ss-w-bubble); border-color: var(--ss-w-accent); color: var(--ss-w-accent); }
|
|
6707
|
+
/* Header: title + sub + streak chip */
|
|
6708
|
+
.ss-w-hl-head { display: flex; align-items: flex-start; gap: 8px; }
|
|
6709
|
+
.ss-w-hl-title { font-size: 18px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; color: var(--ss-w-ink); line-height: 1; }
|
|
6710
|
+
.ss-w-hl-sub { font-size: 11px; color: var(--ss-w-faint); margin-top: 4px; }
|
|
6711
|
+
.ss-w-hl-streak { margin-left: auto; flex: none; font-size: 12px; font-weight: 700; color: var(--ss-w-accent); background: color-mix(in srgb, var(--ss-w-accent) 11%, var(--ss-w-panel)); border: 1px solid color-mix(in srgb, var(--ss-w-accent) 22%, var(--ss-w-line)); border-radius: 999px; padding: 4px 10px; white-space: nowrap; }
|
|
6712
|
+
/* Question line */
|
|
6713
|
+
.ss-w-hl-q { text-align: center; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; color: var(--ss-w-faint); }
|
|
6714
|
+
/* Pair: player A | Higher/Lower | player B */
|
|
6715
|
+
.ss-w-hlpair { display: grid; grid-template-columns: 1fr auto 1fr; gap: 8px; align-items: stretch; }
|
|
6716
|
+
.ss-w-hlpc { background: var(--ss-w-panel); border: 1px solid var(--ss-w-line); border-radius: 14px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 14px 6px; text-align: center; min-width: 0; }
|
|
6717
|
+
.ss-w-hlpc-av { width: 42px; height: 42px; border-radius: 50%; background: var(--ss-w-bubble); border: 1px solid var(--ss-w-line); display: grid; place-items: center; font-size: 20px; flex: none; }
|
|
6718
|
+
.ss-w-hlpc-name { font-size: 12.5px; font-weight: 700; color: var(--ss-w-ink); line-height: 1.15; }
|
|
6719
|
+
.ss-w-hlpc-stat { font-size: 8.5px; color: var(--ss-w-faint); text-transform: uppercase; letter-spacing: .04em; }
|
|
6720
|
+
.ss-w-hlpc-val { font-size: 30px; font-weight: 800; color: var(--ss-w-accent); font-variant-numeric: tabular-nums; line-height: 1; }
|
|
6721
|
+
.ss-w-hlpc-val--hidden { color: var(--ss-w-faint); }
|
|
6722
|
+
/* Higher / Lower \u2014 middle column */
|
|
6723
|
+
.ss-w-hlbtns { display: flex; flex-direction: column; gap: 6px; justify-content: center; }
|
|
6724
|
+
.ss-w-hl-or { text-align: center; font-size: 11px; font-weight: 700; color: var(--ss-w-faint); }
|
|
6725
|
+
.ss-w-hlbtn { font: inherit; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .03em; border-radius: 9px; padding: 10px 12px; cursor: pointer; border: 1px solid var(--ss-w-line); white-space: nowrap; transition: border-color .1s, background .1s; }
|
|
6726
|
+
.ss-w-hlbtn--up { background: color-mix(in srgb, var(--ss-w-accent) 12%, var(--ss-w-panel)); color: var(--ss-w-accent); border-color: color-mix(in srgb, var(--ss-w-accent) 40%, var(--ss-w-line)); }
|
|
6727
|
+
.ss-w-hlbtn--dn { background: var(--ss-w-panel); color: var(--ss-w-ink); }
|
|
6728
|
+
.ss-w-hlbtn:hover:not(:disabled) { border-color: var(--ss-w-accent); }
|
|
6651
6729
|
.ss-w-hlbtn:disabled { opacity: .5; cursor: not-allowed; }
|
|
6652
|
-
/*
|
|
6653
|
-
.ss-w-
|
|
6654
|
-
.ss-w-
|
|
6655
|
-
.ss-w-
|
|
6730
|
+
/* Run-over terminal panel */
|
|
6731
|
+
.ss-w-hl-over { background: var(--ss-w-panel); border: 1px solid var(--ss-w-line); border-radius: 14px; padding: 16px; text-align: center; display: flex; flex-direction: column; gap: 5px; }
|
|
6732
|
+
.ss-w-hl-over-title { font-size: 16px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; color: var(--ss-w-ink); }
|
|
6733
|
+
.ss-w-hl-over-score { font-size: 34px; font-weight: 800; color: var(--ss-w-accent); line-height: 1; font-variant-numeric: tabular-nums; }
|
|
6734
|
+
.ss-w-hl-over-sub { font-size: 11px; color: var(--ss-w-faint); }
|
|
6735
|
+
/* Answered history \u2014 clean single-line rows with the revealed value */
|
|
6736
|
+
.ss-w-hlresults { display: flex; flex-direction: column; gap: 5px; }
|
|
6737
|
+
.ss-w-hlrrow { display: flex; align-items: center; gap: 8px; padding: 8px 11px; border-radius: 10px; font-size: 12px; background: var(--ss-w-bubble); border: 1px solid var(--ss-w-line); }
|
|
6738
|
+
.ss-w-hlrrow--correct { background: color-mix(in srgb, var(--ss-w-correct) 10%, var(--ss-w-panel)); border-color: color-mix(in srgb, var(--ss-w-correct) 30%, var(--ss-w-line)); }
|
|
6656
6739
|
.ss-w-hlrrow--wrong { background: color-mix(in srgb, var(--ss-w-cta) 8%, var(--ss-w-panel)); }
|
|
6657
6740
|
.ss-w-hlrrow-names { flex: 1; min-width: 0; font-weight: 600; color: var(--ss-w-ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
|
|
6658
|
-
.ss-w-hlrrow-
|
|
6741
|
+
.ss-w-hlrrow-val { font-weight: 800; color: var(--ss-w-accent); font-variant-numeric: tabular-nums; }
|
|
6742
|
+
.ss-w-hlrrow-pick { font-size: 10px; font-weight: 700; text-transform: uppercase; color: var(--ss-w-faint); flex: none; }
|
|
6659
6743
|
.ss-w-hlrrow-icon { font-size: 14px; flex: none; }
|
|
6744
|
+
.ss-w-hlrrow--correct .ss-w-hlrrow-icon { color: var(--ss-w-correct); }
|
|
6745
|
+
.ss-w-hlrrow--wrong .ss-w-hlrrow-icon { color: var(--ss-w-cta); }
|
|
6660
6746
|
|
|
6661
|
-
/* ---- Career Path game screen (D3) ---- */
|
|
6747
|
+
/* ---- Career Path game screen (D3) \u2014 artifact cpath/club/cto layout ---- */
|
|
6662
6748
|
.ss-w-cpath { display: flex; flex-direction: column; gap: 12px; }
|
|
6663
|
-
/*
|
|
6664
|
-
.ss-w-cpath-
|
|
6665
|
-
.ss-w-cpath-
|
|
6666
|
-
.ss-w-cpath-
|
|
6667
|
-
|
|
6668
|
-
|
|
6669
|
-
|
|
6670
|
-
.ss-w-cpath-
|
|
6671
|
-
|
|
6672
|
-
|
|
6673
|
-
.ss-w-cpath-crest { width:
|
|
6674
|
-
.ss-w-cpath-crest--fallback { background: var(--ss-w-bubble); border: 1px solid var(--ss-w-line);
|
|
6675
|
-
|
|
6676
|
-
.ss-w-cpath-
|
|
6677
|
-
.ss-w-cpath-
|
|
6678
|
-
.ss-w-cpath-
|
|
6679
|
-
|
|
6680
|
-
|
|
6681
|
-
.ss-w-cpath-hidden { font-size: 11.5px; color: var(--ss-w-faint); font-style: italic; text-align: center; padding: 6px 0 2px; }
|
|
6749
|
+
/* Header */
|
|
6750
|
+
.ss-w-cpath-head { display: flex; align-items: flex-start; gap: 8px; }
|
|
6751
|
+
.ss-w-cpath-title { font-size: 18px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; color: var(--ss-w-ink); line-height: 1; }
|
|
6752
|
+
.ss-w-cpath-sub { font-size: 11px; color: var(--ss-w-faint); margin-top: 4px; }
|
|
6753
|
+
.ss-w-cpath-left { margin-left: auto; flex: none; font-size: 11px; font-weight: 700; color: var(--ss-w-accent); background: color-mix(in srgb, var(--ss-w-accent) 11%, var(--ss-w-panel)); border: 1px solid color-mix(in srgb, var(--ss-w-accent) 22%, var(--ss-w-line)); border-radius: 999px; padding: 4px 10px; white-space: nowrap; }
|
|
6754
|
+
/* Career sequence \u2014 horizontal crests with arrows */
|
|
6755
|
+
.ss-w-cpath-seq { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 6px; background: var(--ss-w-panel); border: 1px solid var(--ss-w-line); border-radius: 14px; padding: 13px 11px; }
|
|
6756
|
+
.ss-w-cpath-arrow { align-self: center; color: var(--ss-w-faint); font-size: 13px; padding-top: 10px; }
|
|
6757
|
+
/* Single club \u2014 small vertical card */
|
|
6758
|
+
.ss-w-cpath-club { display: flex; flex-direction: column; align-items: center; gap: 3px; width: 58px; }
|
|
6759
|
+
.ss-w-cpath-crest { width: 34px; height: 34px; object-fit: contain; flex: none; border-radius: 8px; }
|
|
6760
|
+
.ss-w-cpath-crest--fallback { background: var(--ss-w-bubble); border: 1px solid var(--ss-w-line); display: grid; place-items: center; font-size: 9px; font-weight: 800; letter-spacing: .02em; color: var(--ss-w-faint); }
|
|
6761
|
+
.ss-w-cpath-club-name { font-size: 9px; font-weight: 600; color: var(--ss-w-ink); text-align: center; line-height: 1.1; overflow-wrap: anywhere; }
|
|
6762
|
+
.ss-w-cpath-spell-yr { font-size: 8px; color: var(--ss-w-faint); font-weight: 500; white-space: nowrap; }
|
|
6763
|
+
.ss-w-cpath-loan-badge { font-size: 7.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; padding: 0 5px; border-radius: 999px; background: color-mix(in srgb, var(--ss-w-accent) 15%, var(--ss-w-panel)); color: var(--ss-w-accent); border: 1px solid color-mix(in srgb, var(--ss-w-accent) 30%, var(--ss-w-line)); }
|
|
6764
|
+
.ss-w-cpath-club--loan .ss-w-cpath-crest { border: 1px dashed color-mix(in srgb, var(--ss-w-accent) 40%, var(--ss-w-line)); }
|
|
6765
|
+
/* Hidden clubs chip */
|
|
6766
|
+
.ss-w-cpath-hidden { align-self: center; font-size: 9px; font-weight: 700; color: var(--ss-w-faint); background: var(--ss-w-bubble); border: 1px dashed var(--ss-w-line); border-radius: 8px; padding: 6px 8px; }
|
|
6682
6767
|
/* Hint line */
|
|
6683
|
-
.ss-w-cpath-hint { font-size: 11.5px; color: var(--ss-w-faint); text-align: center; padding:
|
|
6684
|
-
/*
|
|
6685
|
-
.ss-w-cpath-banner { display: flex; flex-direction: column; align-items: center; gap:
|
|
6768
|
+
.ss-w-cpath-hint { font-size: 11.5px; color: var(--ss-w-faint); text-align: center; padding: 6px 10px; border-radius: 10px; background: color-mix(in srgb, var(--ss-w-accent) 8%, var(--ss-w-panel)); border: 1px dashed color-mix(in srgb, var(--ss-w-accent) 30%, var(--ss-w-line)); }
|
|
6769
|
+
/* Terminal outcome */
|
|
6770
|
+
.ss-w-cpath-banner { display: flex; flex-direction: column; align-items: center; gap: 5px; padding: 16px 12px; border-radius: 14px; text-align: center; }
|
|
6686
6771
|
.ss-w-cpath-banner--solved { background: color-mix(in srgb, var(--ss-w-correct) 12%, var(--ss-w-panel)); border: 1px solid color-mix(in srgb, var(--ss-w-correct) 28%, var(--ss-w-line)); }
|
|
6687
|
-
.ss-w-cpath-banner--failed { background:
|
|
6688
|
-
.ss-w-cpath-banner-name { font-size:
|
|
6689
|
-
.ss-w-cpath-banner-label { font-size:
|
|
6772
|
+
.ss-w-cpath-banner--failed { background: var(--ss-w-panel); border: 1px solid var(--ss-w-line); }
|
|
6773
|
+
.ss-w-cpath-banner-name { font-size: 20px; font-weight: 800; text-transform: uppercase; letter-spacing: .01em; color: var(--ss-w-accent); }
|
|
6774
|
+
.ss-w-cpath-banner-label { font-size: 13px; font-weight: 700; color: var(--ss-w-ink); }
|
|
6775
|
+
.ss-w-cpath-banner-sub { font-size: 11px; color: var(--ss-w-faint); }
|
|
6690
6776
|
|
|
6691
|
-
/* ---- Beat the Grid game screen (D3) ---- */
|
|
6777
|
+
/* ---- Beat the Grid game screen (D3) \u2014 artifact grid/gc layout ---- */
|
|
6692
6778
|
.ss-w-btg { display: flex; flex-direction: column; gap: 10px; }
|
|
6693
|
-
/*
|
|
6694
|
-
.ss-w-btg-
|
|
6695
|
-
.ss-w-btg-
|
|
6696
|
-
.ss-w-btg-
|
|
6697
|
-
.ss-w-btg-ctx
|
|
6779
|
+
/* Header */
|
|
6780
|
+
.ss-w-btg-head { display: flex; align-items: flex-start; gap: 8px; }
|
|
6781
|
+
.ss-w-btg-title { font-size: 18px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; color: var(--ss-w-ink); line-height: 1; }
|
|
6782
|
+
.ss-w-btg-sub { font-size: 11px; color: var(--ss-w-faint); margin-top: 4px; }
|
|
6783
|
+
.ss-w-btg-ctx { margin-left: auto; display: flex; flex-direction: column; align-items: flex-end; gap: 2px; }
|
|
6784
|
+
.ss-w-btg-ctx-score { font-size: 13px; font-weight: 800; color: var(--ss-w-accent); font-variant-numeric: tabular-nums; }
|
|
6785
|
+
.ss-w-btg-ctx-left { font-size: 11px; color: var(--ss-w-faint); font-weight: 500; white-space: nowrap; }
|
|
6786
|
+
/* Terminal summary */
|
|
6787
|
+
.ss-w-btg-done { display: flex; flex-direction: column; align-items: center; gap: 5px; padding: 16px 12px; border-radius: 14px; text-align: center; background: var(--ss-w-panel); border: 1px solid var(--ss-w-line); }
|
|
6788
|
+
.ss-w-btg-done-label { font-size: 13px; font-weight: 700; color: var(--ss-w-ink); }
|
|
6789
|
+
.ss-w-btg-done-score { font-size: 34px; font-weight: 800; color: var(--ss-w-accent); line-height: 1; font-variant-numeric: tabular-nums; }
|
|
6790
|
+
.ss-w-btg-done-sub { font-size: 11px; color: var(--ss-w-faint); }
|
|
6791
|
+
/* Empty search pool note */
|
|
6792
|
+
.ss-w-btg-sheet-empty { font-size: 12px; color: var(--ss-w-faint); text-align: center; padding: 14px 8px; }
|
|
6698
6793
|
/* Grid layout \u2014 col count driven inline via style */
|
|
6699
6794
|
.ss-w-btg-grid { display: grid; gap: 4px; width: 100%; }
|
|
6700
6795
|
/* Generic grid cell */
|
|
@@ -6727,9 +6822,11 @@ var WIDGET_CSS = `.ss-w-root { all: revert; }
|
|
|
6727
6822
|
|
|
6728
6823
|
/* ---- Guess the XI game screen (D3) ---- */
|
|
6729
6824
|
.ss-w-gxi { display: flex; flex-direction: column; gap: 12px; }
|
|
6730
|
-
/*
|
|
6731
|
-
.ss-w-gxi-
|
|
6732
|
-
.ss-w-gxi-
|
|
6825
|
+
/* Header */
|
|
6826
|
+
.ss-w-gxi-head { display: flex; align-items: flex-start; gap: 8px; }
|
|
6827
|
+
.ss-w-gxi-title { font-size: 18px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; color: var(--ss-w-ink); line-height: 1; }
|
|
6828
|
+
.ss-w-gxi-sub { font-size: 11px; color: var(--ss-w-faint); margin-top: 4px; }
|
|
6829
|
+
.ss-w-gxi-left { margin-left: auto; flex: none; font-size: 11px; font-weight: 700; color: var(--ss-w-accent); background: color-mix(in srgb, var(--ss-w-accent) 11%, var(--ss-w-panel)); border: 1px solid color-mix(in srgb, var(--ss-w-accent) 22%, var(--ss-w-line)); border-radius: 999px; padding: 4px 10px; white-space: nowrap; }
|
|
6733
6830
|
/* Positions pitch: compact slot grid */
|
|
6734
6831
|
.ss-w-gxi-pitch { display: flex; flex-wrap: wrap; gap: 5px; }
|
|
6735
6832
|
.ss-w-gxi-pslot { display: flex; flex-direction: column; align-items: center; gap: 2px; background: var(--ss-w-bubble); border: 1px solid var(--ss-w-line); border-radius: 8px; padding: 6px 10px; min-width: 52px; }
|
|
@@ -6747,11 +6844,13 @@ var WIDGET_CSS = `.ss-w-root { all: revert; }
|
|
|
6747
6844
|
.ss-w-gxi-team-btn:disabled { opacity: .5; cursor: not-allowed; }
|
|
6748
6845
|
.ss-w-gxi-team-btn--correct { background: color-mix(in srgb, var(--ss-w-correct) 14%, var(--ss-w-panel)); border-color: color-mix(in srgb, var(--ss-w-correct) 35%, var(--ss-w-line)); color: var(--ss-w-correct); }
|
|
6749
6846
|
.ss-w-gxi-team-btn--wrong { background: color-mix(in srgb, var(--ss-w-wrong) 8%, var(--ss-w-panel)); text-decoration: line-through; opacity: .65; }
|
|
6750
|
-
/*
|
|
6751
|
-
.ss-w-gxi-banner { display: flex; align-items: center;
|
|
6847
|
+
/* Terminal outcome banner */
|
|
6848
|
+
.ss-w-gxi-banner { display: flex; flex-direction: column; align-items: center; gap: 5px; padding: 16px 12px; border-radius: 14px; text-align: center; }
|
|
6752
6849
|
.ss-w-gxi-banner--solved { background: color-mix(in srgb, var(--ss-w-correct) 12%, var(--ss-w-panel)); border: 1px solid color-mix(in srgb, var(--ss-w-correct) 28%, var(--ss-w-line)); }
|
|
6753
|
-
.ss-w-gxi-banner--failed { background:
|
|
6850
|
+
.ss-w-gxi-banner--failed { background: var(--ss-w-panel); border: 1px solid var(--ss-w-line); }
|
|
6754
6851
|
.ss-w-gxi-banner-label { font-size: 13px; font-weight: 700; color: var(--ss-w-ink); }
|
|
6852
|
+
.ss-w-gxi-banner-score { font-size: 34px; font-weight: 800; color: var(--ss-w-accent); line-height: 1; font-variant-numeric: tabular-nums; }
|
|
6853
|
+
.ss-w-gxi-banner-sub { font-size: 11px; color: var(--ss-w-faint); }
|
|
6755
6854
|
/* Hint line */
|
|
6756
6855
|
.ss-w-gxi-hint { font-size: 11.5px; color: var(--ss-w-faint); text-align: center; font-style: italic; }
|
|
6757
6856
|
|
|
@@ -7046,7 +7145,8 @@ function StatsWidget(props) {
|
|
|
7046
7145
|
discovery,
|
|
7047
7146
|
gamesResult,
|
|
7048
7147
|
leaderboardResult,
|
|
7049
|
-
loggedIn: !!operatorUserId
|
|
7148
|
+
loggedIn: !!operatorUserId,
|
|
7149
|
+
conversation: built?.conversation ?? null
|
|
7050
7150
|
}
|
|
7051
7151
|
) : /* @__PURE__ */ jsx71(
|
|
7052
7152
|
ChatFab,
|