@sensiblestats/widget-react 0.55.0 → 0.57.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/CHANGELOG.md +26 -0
- package/dist/index.cjs +308 -194
- 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 +308 -194
- package/dist/index.js.map +1 -1
- package/dist/styles.css +35 -5
- package/package.json +1 -1
package/dist/styles.css
CHANGED
|
@@ -914,7 +914,24 @@
|
|
|
914
914
|
.ss-w-tile-chip--fun { color: var(--ss-w-faint); background: var(--ss-w-bubble); border: 1px solid var(--ss-w-line); }
|
|
915
915
|
|
|
916
916
|
/* Game screen host: back-row + placeholder body */
|
|
917
|
-
|
|
917
|
+
/* Game screen fills the panel; the board scrolls internally and the search/input bar stays
|
|
918
|
+
pinned at the bottom so the fan never has to scroll to reach it. */
|
|
919
|
+
.ss-w-gscreen-wrap { flex: 1; min-height: 0; display: flex; flex-direction: column; padding: 14px; overflow: hidden; }
|
|
920
|
+
.ss-w-gscreen { flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 0; }
|
|
921
|
+
.ss-w-gscreen > .ss-w-gxi, .ss-w-gscreen > .ss-w-gt, .ss-w-gscreen > .ss-w-cpath,
|
|
922
|
+
.ss-w-gscreen > .ss-w-btg, .ss-w-gscreen > .ss-w-hl { flex: 1; min-height: 0; }
|
|
923
|
+
/* Scrollable board + guess-history region. */
|
|
924
|
+
.ss-w-gscroll { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; display: flex; flex-direction: column; gap: 10px; padding-bottom: 2px; }
|
|
925
|
+
/* Bottom-pinned bar (search input / action). */
|
|
926
|
+
.ss-w-gpin { flex-shrink: 0; padding-top: 10px; }
|
|
927
|
+
/* Heads stay put above the scroll region. */
|
|
928
|
+
.ss-w-gxi-head, .ss-w-gt-head, .ss-w-cpath-head, .ss-w-btg-head { flex-shrink: 0; }
|
|
929
|
+
/* Mystery Tiger explainer key (✓ / ▲ / ▼). */
|
|
930
|
+
.ss-w-gt-key { white-space: nowrap; }
|
|
931
|
+
.ss-w-gt-key b { font-weight: 800; color: var(--ss-w-ink); }
|
|
932
|
+
.ss-w-gt-key-ok { color: var(--ss-w-correct) !important; }
|
|
933
|
+
/* Higher or Lower terminal score unit. */
|
|
934
|
+
.ss-w-hl-over-unit { font-size: 14px; font-weight: 700; color: var(--ss-w-faint); }
|
|
918
935
|
.ss-w-gscreen-back { display: inline-flex; align-items: center; gap: 5px; background: none; border: none; color: var(--ss-w-accent); font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; padding: 6px 0 10px; align-self: flex-start; }
|
|
919
936
|
.ss-w-gscreen-back-arrow { font-size: 11px; font-weight: 700; }
|
|
920
937
|
.ss-w-gscreen-body { flex: 1; display: flex; align-items: center; justify-content: center; padding: 40px 16px; color: var(--ss-w-faint); font-size: 13px; text-align: center; }
|
|
@@ -968,7 +985,9 @@
|
|
|
968
985
|
.ss-w-gtta-i { width: 100%; box-sizing: border-box; padding: 9px 12px; border-radius: 10px; border: 1.5px solid var(--ss-w-line); background: var(--ss-w-panel); color: var(--ss-w-ink); font: inherit; font-size: 13px; outline: none; transition: border-color .12s; }
|
|
969
986
|
.ss-w-gtta-i:focus { border-color: var(--ss-w-accent); }
|
|
970
987
|
.ss-w-gtta-i:disabled { opacity: .5; cursor: not-allowed; }
|
|
971
|
-
|
|
988
|
+
/* Opens UPWARD (bottom-anchored) because the input is pinned to the panel's bottom edge — a
|
|
989
|
+
downward menu would be clipped off-screen. */
|
|
990
|
+
.ss-w-gtta-drop { position: absolute; left: 0; right: 0; bottom: calc(100% + 4px); top: auto; z-index: 10; background: var(--ss-w-panel); border: 1px solid var(--ss-w-line); border-radius: 10px; max-height: 200px; overflow-y: auto; box-shadow: 0 -4px 16px rgba(0,0,0,.16); }
|
|
972
991
|
.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); }
|
|
973
992
|
.ss-w-gtta-opt:last-child { border-bottom: none; }
|
|
974
993
|
.ss-w-gtta-opt:hover { background: var(--ss-w-bubble); }
|
|
@@ -1118,7 +1137,9 @@
|
|
|
1118
1137
|
.ss-w-gxi { display: flex; flex-direction: column; gap: 12px; }
|
|
1119
1138
|
/* Header */
|
|
1120
1139
|
.ss-w-gxi-head { display: flex; align-items: flex-start; gap: 8px; }
|
|
1121
|
-
.ss-w-gxi-title { font-size: 18px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; color: var(--ss-w-ink); line-height: 1; }
|
|
1140
|
+
.ss-w-gxi-title { font-size: 18px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; color: var(--ss-w-ink); line-height: 1; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
|
|
1141
|
+
/* Formation pill next to the title, e.g. "4-2-3-1". */
|
|
1142
|
+
.ss-w-gxi-form { font-size: 12px; font-weight: 800; letter-spacing: .06em; color: var(--ss-w-accent); background: color-mix(in srgb, var(--ss-w-accent) 12%, var(--ss-w-panel)); border: 1px solid color-mix(in srgb, var(--ss-w-accent) 26%, var(--ss-w-line)); border-radius: 999px; padding: 2px 9px; font-variant-numeric: tabular-nums; }
|
|
1122
1143
|
.ss-w-gxi-sub { font-size: 11px; color: var(--ss-w-faint); margin-top: 4px; }
|
|
1123
1144
|
.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; }
|
|
1124
1145
|
/* Pitch: a flag per slot laid out in formation rows on a green field. A real min-height plus
|
|
@@ -1127,13 +1148,22 @@
|
|
|
1127
1148
|
/* A football pitch is grass-green regardless of the operator accent, so the field uses fixed
|
|
1128
1149
|
green values (not --ss-w-correct, which is a muted per-operator token that vanished on dark
|
|
1129
1150
|
themes) plus visible horizontal yard-lines and a brighter halfway line. */
|
|
1130
|
-
.ss-w-gxi-pitch { position: relative; display: flex; flex-direction: column; justify-content: space-between; gap:
|
|
1151
|
+
.ss-w-gxi-pitch { position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 6px; min-height: 210px; padding: 14px 10px; border-radius: 14px; border: 1px solid rgba(46, 160, 86, .38);
|
|
1131
1152
|
background:
|
|
1132
1153
|
linear-gradient(180deg, rgba(46, 160, 86, .015) 0, rgba(46, 160, 86, .015) 49.5%, rgba(255,255,255,.14) 49.5%, rgba(255,255,255,.14) 50.5%, rgba(46, 160, 86, .015) 50.5%),
|
|
1133
1154
|
repeating-linear-gradient(180deg, transparent 0 31px, rgba(255,255,255,.045) 31px 32px),
|
|
1134
1155
|
linear-gradient(180deg, rgba(46, 160, 86, .28), rgba(38, 132, 71, .16)); }
|
|
1135
|
-
.ss-w-gxi-prow { display: flex; justify-content: center; align-items:
|
|
1156
|
+
.ss-w-gxi-prow { display: flex; justify-content: center; align-items: flex-start; gap: 12px; }
|
|
1157
|
+
.ss-w-gxi-slot { display: flex; flex-direction: column; align-items: center; gap: 2px; width: 46px; }
|
|
1136
1158
|
.ss-w-gxi-flag { width: 32px; height: 32px; flex: none; border-radius: 50%; display: grid; place-items: center; font-size: 17px; line-height: 1; background: rgba(9, 12, 10, .55); border: 1px solid rgba(255,255,255,.16); box-shadow: 0 1px 3px rgba(0,0,0,.3); overflow: hidden; }
|
|
1159
|
+
/* A slot whose player has been revealed by a wrong guess. */
|
|
1160
|
+
.ss-w-gxi-flag--revealed { border-color: var(--ss-w-accent); box-shadow: 0 0 0 2px color-mix(in srgb, var(--ss-w-accent) 45%, transparent); }
|
|
1161
|
+
/* Position label shown under every flag (GK, CB, CM, ST…) — reads the formation and marks the
|
|
1162
|
+
keeper's end. Muted so it sits behind the flag, not competing with it. */
|
|
1163
|
+
.ss-w-gxi-pos { font-size: 8.5px; line-height: 1.05; font-weight: 800; letter-spacing: .04em; text-align: center; color: rgba(255,255,255,.82); text-shadow: 0 1px 2px rgba(0,0,0,.5); }
|
|
1164
|
+
/* Player surname, shown under the position once a wrong guess reveals it — in the accent colour. */
|
|
1165
|
+
.ss-w-gxi-flag-lab { font-size: 8px; line-height: 1.05; font-weight: 700; text-align: center; color: var(--ss-w-accent); max-width: 46px; word-break: break-word; }
|
|
1166
|
+
.ss-w-gxi-revnote { font-size: 11px; color: var(--ss-w-faint); }
|
|
1137
1167
|
/* Wrong-guess trail */
|
|
1138
1168
|
.ss-w-gxi-wrong { display: flex; flex-wrap: wrap; gap: 6px; }
|
|
1139
1169
|
.ss-w-gxi-wrong-pill { font-size: 11px; font-weight: 600; padding: 3px 9px; border-radius: 999px; background: color-mix(in srgb, var(--ss-w-wrong) 10%, var(--ss-w-panel)); border: 1px solid var(--ss-w-line); color: var(--ss-w-faint); text-decoration: line-through; }
|