@pieai/swimmer-ui-kit 1.11.1 → 1.11.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 +28 -29
- package/dist/index.js +738 -741
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -90,21 +90,21 @@ function O() {
|
|
|
90
90
|
used: D
|
|
91
91
|
};
|
|
92
92
|
}
|
|
93
|
-
function
|
|
93
|
+
function k(e) {
|
|
94
94
|
E = Number.isFinite(e) ? Math.max(0, Math.floor(e)) : 0;
|
|
95
95
|
}
|
|
96
|
-
function
|
|
96
|
+
function A() {
|
|
97
97
|
return D >= E ? !1 : (D += 1, !0);
|
|
98
98
|
}
|
|
99
|
-
function
|
|
99
|
+
function j() {
|
|
100
100
|
D > 0 && --D;
|
|
101
101
|
}
|
|
102
|
-
function
|
|
102
|
+
function ee(e) {
|
|
103
103
|
return !(e.renderer === "css" || !e.hasWebGL2 || e.prefersReducedMotion || !e.isInViewport);
|
|
104
104
|
}
|
|
105
105
|
//#endregion
|
|
106
106
|
//#region src/liquidMetalWebGL.ts
|
|
107
|
-
var
|
|
107
|
+
var M = "#version 300 es\nin vec2 position; void main(){ gl_Position = vec4(position,0.,1.); }", N = "#version 300 es\nprecision highp float;\nout vec4 o;\n\nuniform vec2 uC; // pill centre, device px\nuniform vec2 uHalf; // pill half-extent, device px\nuniform float uT; // seconds\nuniform float uHover; // 0..1\nuniform float uPress; // 0..1, eased\nuniform vec4 uRip[3]; // xy centre (button heights, +y down), z start, w live\nuniform vec4 uRipK; // speed, ring width, decay, amplitude\nuniform vec4 uRipK2; // facet depth, facet count, crest sharpness, emission\nuniform vec4 uPtr; // xy trailing cursor, z strength, w normalised speed\nuniform vec4 uPtrK; // radius, base amplitude, speed amplitude, rim lift\nuniform vec3 uAccent; // brand tint from computed --game-ui-liquid-metal-accent\n\n#define PI 3.14159265\n\nfloat sdPill(vec2 p, vec2 b, float r){\n vec2 q = abs(p) - b + r;\n return min(max(q.x,q.y),0.) + length(max(q,0.)) - r;\n}\n\n/* Expanding ring from each press, in button-height units. Three slots so a\n quick double-tap overlaps instead of cutting the first one off.\n\n Two things keep it from reading as a water ripple: the wavefront is\n faceted rather than circular — its radius is modulated by angle, and the\n facets rotate as it travels — and the crest profile is a cusp rather than\n a gaussian, so it lands as a crease in sheet metal instead of a soft swell. */\nfloat ripple(vec2 p, float t){\n float sum = 0.;\n for(int i = 0; i < 3; i++){\n if(uRip[i].w < 0.5) continue;\n float age = t - uRip[i].z;\n if(age < 0. || age > 4.) continue;\n vec2 rp = p - uRip[i].xy;\n float facet = 1. + uRipK2.x * cos(uRipK2.y * atan(rp.y, rp.x) + age * 2.1 + float(i) * 2.4);\n float x = (length(rp) - age * uRipK.x * facet) / uRipK.y;\n sum += exp(-pow(abs(x) + 1e-4, uRipK2.z)) * exp(-age * uRipK.z);\n }\n return sum;\n}\n\n/* A soft well under the cursor. It lags behind the real pointer and swells\n with speed, so moving across the button drags the metal rather than sliding\n a static blob over it. */\nfloat pointerW(vec2 p){\n if(uPtr.z < 0.001) return 0.;\n float d = length(p - uPtr.xy) / uPtrK.x;\n return exp(-d*d) * uPtr.z;\n}\n/* Displacing the sample point, not the field value, is what makes this read as\n liquid: the bands bulge and stretch around the cursor like a lens instead of\n just getting brighter under it. */\nvec2 pointerWarp(vec2 p){\n float w = pointerW(p);\n if(w <= 0.) return vec2(0.);\n return normalize(p - uPtr.xy + vec2(1e-5)) * w * (uPtrK.y + uPtrK.z * uPtr.w);\n}\n", P = `${N}
|
|
108
108
|
uniform float uBw; // stroke half-width, device px
|
|
109
109
|
uniform float uE[8]; // base, hot, chroma-across, chroma-along, speed,
|
|
110
110
|
// topBias, press lift, ripple lift
|
|
@@ -174,7 +174,7 @@ void main(){
|
|
|
174
174
|
// what make it metal, and replacing them with a flat accent would turn
|
|
175
175
|
// the rim into a neon sticker.
|
|
176
176
|
o.rgb *= mix(vec3(1.0), uAccent, 0.40);
|
|
177
|
-
}`,
|
|
177
|
+
}`, te = `${N}
|
|
178
178
|
uniform float uP[21]; // tunables
|
|
179
179
|
|
|
180
180
|
float h21(vec2 p){
|
|
@@ -296,7 +296,7 @@ void main(){
|
|
|
296
296
|
col = col * (1. + rip * 1.15 + well * 0.60);
|
|
297
297
|
|
|
298
298
|
o = vec4(col * pill * uHover, pill);
|
|
299
|
-
}`,
|
|
299
|
+
}`, ne = "#version 300 es\nprecision highp float;\nout vec4 o;\nuniform sampler2D uTex, uTex2;\nuniform vec2 uDstTexel; // 1 / destination size (maps dest fragCoord -> uv)\nuniform vec2 uSrcTexel; // 1 / source size (tap spacing)\nuniform float uAdd; // 1 to include uTex2\nvoid main(){\n vec2 uv = gl_FragCoord.xy * uDstTexel;\n // Taps sit a quarter of a *destination* texel out, so for a 2x reduction\n // they land exactly on the four source texel centres. Spacing them by a\n // whole source texel instead — as this did originally — skips every other\n // pixel, and any fine detail in the field folds down into low-frequency\n // moiré that no amount of subsequent blurring can remove.\n vec2 e = uDstTexel * 0.25;\n vec4 s = texture(uTex, uv + vec2(-e.x,-e.y)) + texture(uTex, uv + vec2( e.x,-e.y))\n + texture(uTex, uv + vec2(-e.x, e.y)) + texture(uTex, uv + vec2( e.x, e.y));\n s *= 0.25;\n if(uAdd > 0.5){\n vec4 r = texture(uTex2, uv + vec2(-e.x,-e.y)) + texture(uTex2, uv + vec2( e.x,-e.y))\n + texture(uTex2, uv + vec2(-e.x, e.y)) + texture(uTex2, uv + vec2( e.x, e.y));\n s.rgb += r.rgb * 0.25;\n }\n o = s;\n}", re = "#version 300 es\nprecision highp float;\nout vec4 o;\nuniform sampler2D uTex; uniform vec2 uTexel; uniform vec2 uDir; uniform float uR;\nvoid main(){\n vec2 uv = gl_FragCoord.xy * uTexel;\n vec2 st = uTexel * uDir * uR;\n vec4 s = texture(uTex, uv) * 0.1964;\n s += (texture(uTex, uv + st*1.4118) + texture(uTex, uv - st*1.4118)) * 0.2969;\n s += (texture(uTex, uv + st*3.2941) + texture(uTex, uv - st*3.2941)) * 0.0944;\n s += (texture(uTex, uv + st*5.1765) + texture(uTex, uv - st*5.1765)) * 0.0104;\n o = s;\n}", ie = `${N}
|
|
300
300
|
uniform sampler2D uSoft, uRim, uGlow;
|
|
301
301
|
uniform vec2 uRes;
|
|
302
302
|
uniform float uGlowGain, uGlowIn, uOccl, uDim, uPunch;
|
|
@@ -345,7 +345,7 @@ void main(){
|
|
|
345
345
|
// CSS underneath, and this layer adds light on top of them
|
|
346
346
|
float a = clamp(max(rgb.r, max(rgb.g, rgb.b)), 0., 1.);
|
|
347
347
|
o = vec4(min(rgb, vec3(1.)), a);
|
|
348
|
-
}`,
|
|
348
|
+
}`, ae = {
|
|
349
349
|
valFreq: .5,
|
|
350
350
|
valAmp: .55,
|
|
351
351
|
dens: 2.4,
|
|
@@ -367,7 +367,7 @@ void main(){
|
|
|
367
367
|
litLo: -.26,
|
|
368
368
|
litHi: .1,
|
|
369
369
|
dim: .44
|
|
370
|
-
},
|
|
370
|
+
}, oe = Object.keys(ae), se = {
|
|
371
371
|
base: .2,
|
|
372
372
|
hot: .82,
|
|
373
373
|
chromA: .42,
|
|
@@ -376,14 +376,14 @@ void main(){
|
|
|
376
376
|
top: .35,
|
|
377
377
|
press: .85,
|
|
378
378
|
ripple: 1.6
|
|
379
|
-
},
|
|
379
|
+
}, ce = Object.keys(se), le = {
|
|
380
380
|
glow: 1.95,
|
|
381
381
|
glowR: 1.3,
|
|
382
382
|
glowIn: .3,
|
|
383
383
|
occl: .62,
|
|
384
384
|
soften: .24,
|
|
385
385
|
punch: 1.5
|
|
386
|
-
},
|
|
386
|
+
}, F = {
|
|
387
387
|
speed: 1.85,
|
|
388
388
|
width: .2,
|
|
389
389
|
decay: 1.35,
|
|
@@ -399,7 +399,7 @@ void main(){
|
|
|
399
399
|
ptrLag: .0016,
|
|
400
400
|
ptrVref: 4.5
|
|
401
401
|
};
|
|
402
|
-
function
|
|
402
|
+
function ue(e) {
|
|
403
403
|
let t = e.trim(), n = /^#([0-9a-f]{3,8})$/i.exec(t);
|
|
404
404
|
if (n?.[1]) {
|
|
405
405
|
let e = n[1];
|
|
@@ -424,11 +424,11 @@ function de(e) {
|
|
|
424
424
|
1
|
|
425
425
|
];
|
|
426
426
|
}
|
|
427
|
-
function
|
|
427
|
+
function de(e, t, n) {
|
|
428
428
|
let r = Number.parseFloat(e.getPropertyValue(t).trim());
|
|
429
429
|
return Number.isFinite(r) ? r : n;
|
|
430
430
|
}
|
|
431
|
-
function
|
|
431
|
+
function fe(e, t) {
|
|
432
432
|
let n = (e) => t[e] ?? null;
|
|
433
433
|
return {
|
|
434
434
|
f1: (t, r) => e.uniform1f(n(t), r),
|
|
@@ -440,7 +440,7 @@ function pe(e, t) {
|
|
|
440
440
|
i1: (t, r) => e.uniform1i(n(t), r)
|
|
441
441
|
};
|
|
442
442
|
}
|
|
443
|
-
function
|
|
443
|
+
function pe(e, t, n) {
|
|
444
444
|
if (typeof e.getContext != "function") return null;
|
|
445
445
|
let r = null;
|
|
446
446
|
try {
|
|
@@ -456,21 +456,21 @@ function me(e, t, n) {
|
|
|
456
456
|
if (!r) return null;
|
|
457
457
|
let i = r;
|
|
458
458
|
try {
|
|
459
|
-
return
|
|
459
|
+
return he(i, e, t, n);
|
|
460
460
|
} catch {
|
|
461
461
|
return i.getExtension("WEBGL_lose_context")?.loseContext(), null;
|
|
462
462
|
}
|
|
463
463
|
}
|
|
464
|
-
function
|
|
464
|
+
function me(e, t, n) {
|
|
465
465
|
let r = e.createShader(t);
|
|
466
466
|
if (!r) throw Error("liquid-metal: createShader returned null");
|
|
467
467
|
if (e.shaderSource(r, n), e.compileShader(r), !e.getShaderParameter(r, e.COMPILE_STATUS)) throw Error(e.getShaderInfoLog(r) ?? "liquid-metal: shader compile failed");
|
|
468
468
|
return r;
|
|
469
469
|
}
|
|
470
|
-
function
|
|
470
|
+
function I(e, t) {
|
|
471
471
|
let n = e.createProgram();
|
|
472
472
|
if (!n) throw Error("liquid-metal: createProgram returned null");
|
|
473
|
-
if (e.attachShader(n,
|
|
473
|
+
if (e.attachShader(n, me(e, e.VERTEX_SHADER, M)), e.attachShader(n, me(e, e.FRAGMENT_SHADER, t)), e.bindAttribLocation(n, 0, "position"), e.linkProgram(n), !e.getProgramParameter(n, e.LINK_STATUS)) throw Error(e.getProgramInfoLog(n) ?? "liquid-metal: program link failed");
|
|
474
474
|
let r = {}, i = e.getProgramParameter(n, e.ACTIVE_UNIFORMS);
|
|
475
475
|
for (let t = 0; t < i; t += 1) {
|
|
476
476
|
let i = e.getActiveUniform(n, t);
|
|
@@ -481,8 +481,8 @@ function F(e, t) {
|
|
|
481
481
|
u: r
|
|
482
482
|
};
|
|
483
483
|
}
|
|
484
|
-
function
|
|
485
|
-
let i =
|
|
484
|
+
function he(e, t, n, r) {
|
|
485
|
+
let i = I(e, te), a = I(e, P), o = I(e, ne), s = I(e, re), c = I(e, ie), l = e.createVertexArray(), u = e.createBuffer();
|
|
486
486
|
if (!l || !u) throw Error("liquid-metal: VAO/VBO unavailable");
|
|
487
487
|
e.bindVertexArray(l), e.bindBuffer(e.ARRAY_BUFFER, u), e.bufferData(e.ARRAY_BUFFER, new Float32Array([
|
|
488
488
|
-1,
|
|
@@ -508,7 +508,7 @@ function ge(e, t, n, r) {
|
|
|
508
508
|
}
|
|
509
509
|
let m = f(), h = f(), g = f(), _ = f(), v = f(), y = f(), b = 0, x = 0, S = 0, C = 0, w = 0, T = 0, E = 4, D = !0, O = document.createElement("span");
|
|
510
510
|
O.setAttribute("aria-hidden", "true"), O.style.cssText = "position:absolute;width:0;height:0;overflow:hidden;pointer-events:none;color:var(--game-ui-liquid-metal-accent)", r.appendChild(O);
|
|
511
|
-
function
|
|
511
|
+
function k() {
|
|
512
512
|
let e = n.getBoundingClientRect(), r = Math.min(window.devicePixelRatio || 1, 2), i = 900 / 516 * Math.max(e.height, 1), a = e.width + i * 2, o = e.height + i * 2;
|
|
513
513
|
t.style.width = `${a}px`, t.style.height = `${o}px`;
|
|
514
514
|
let s = Math.max(2, Math.round(a * r)), c = Math.max(2, Math.round(o * r));
|
|
@@ -518,10 +518,10 @@ function ge(e, t, n, r) {
|
|
|
518
518
|
let d = Math.max(2, Math.ceil(b / E)), f = Math.max(2, Math.ceil(x / E));
|
|
519
519
|
p(v, d, f), p(y, d, f), D = !1;
|
|
520
520
|
}
|
|
521
|
-
function
|
|
521
|
+
function A(t) {
|
|
522
522
|
e.bindFramebuffer(e.FRAMEBUFFER, t ? t.fbo : null), e.viewport(0, 0, t ? t.w : b, t ? t.h : x), e.drawArrays(e.TRIANGLES, 0, 3);
|
|
523
523
|
}
|
|
524
|
-
let
|
|
524
|
+
let j = new Float32Array(oe.length), ee = new Float32Array(ce.length), M = 0, N = 0, pe = 0, me = performance.now(), he = [
|
|
525
525
|
0,
|
|
526
526
|
1,
|
|
527
527
|
2
|
|
@@ -530,100 +530,100 @@ function ge(e, t, n, r) {
|
|
|
530
530
|
y: 0,
|
|
531
531
|
t: -99,
|
|
532
532
|
on: 0
|
|
533
|
-
})),
|
|
533
|
+
})), ge = /* @__PURE__ */ new Float32Array(12), L = 0, R = 0, z = 0, B = {
|
|
534
534
|
x: 0,
|
|
535
535
|
y: 0
|
|
536
|
-
},
|
|
536
|
+
}, V = {
|
|
537
537
|
x: 0,
|
|
538
538
|
y: 0
|
|
539
|
-
},
|
|
539
|
+
}, _e = 0, ve = 0, H = {
|
|
540
540
|
over: !1,
|
|
541
541
|
press: !1,
|
|
542
542
|
focus: !1
|
|
543
543
|
};
|
|
544
544
|
function U(e, t) {
|
|
545
|
-
let n =
|
|
546
|
-
n && (
|
|
545
|
+
let n = he[L];
|
|
546
|
+
n && (L = (L + 1) % he.length, n.x = e, n.y = t, n.t = pe, n.on = 1);
|
|
547
547
|
}
|
|
548
548
|
function W(e) {
|
|
549
549
|
let t = n.getBoundingClientRect(), r = t.height || 1;
|
|
550
550
|
return [(e.clientX - (t.left + t.width / 2)) / r, (e.clientY - (t.top + t.height / 2)) / r];
|
|
551
551
|
}
|
|
552
552
|
function ye() {
|
|
553
|
-
|
|
553
|
+
N = H.over || H.press || H.focus ? 1 : 0, z = +!!H.press;
|
|
554
554
|
}
|
|
555
555
|
let be = window.matchMedia("(prefers-reduced-motion: reduce)"), xe = null, Se = 0, Ce = !1, we = !1;
|
|
556
556
|
function Te() {
|
|
557
557
|
let e = getComputedStyle(n);
|
|
558
|
-
return
|
|
558
|
+
return se.base = de(e, "--game-ui-liquid-metal-rest", se.base), se.speed = de(e, "--game-ui-liquid-metal-sweep-speed", se.speed), ae.disp = de(e, "--game-ui-liquid-metal-dispersion", ae.disp), le.glow = de(e, "--game-ui-liquid-metal-bloom", le.glow), { accent: ue(getComputedStyle(O).color) };
|
|
559
559
|
}
|
|
560
560
|
function Ee(t) {
|
|
561
561
|
if (Se = 0, Ce || we) return;
|
|
562
|
-
let r = (t -
|
|
563
|
-
|
|
562
|
+
let r = (t - me) / 1e3;
|
|
563
|
+
me = t;
|
|
564
564
|
let l = Math.min(r, 1 / 20);
|
|
565
|
-
be.matches || (
|
|
566
|
-
let u =
|
|
567
|
-
|
|
568
|
-
let d =
|
|
569
|
-
|
|
565
|
+
be.matches || (pe += l);
|
|
566
|
+
let u = N > M ? 1 - .0012 ** l : 1 - 12e-5 ** l;
|
|
567
|
+
M += (N - M) * u, Math.abs(N - M) < 8e-4 && (M = N);
|
|
568
|
+
let d = z > R ? 1 - 1e-9 ** l : 1 - .004 ** l;
|
|
569
|
+
R += (z - R) * d, Math.abs(z - R) < .002 && (R = z);
|
|
570
570
|
let f = !1;
|
|
571
|
-
for (let e = 0; e <
|
|
572
|
-
let t =
|
|
573
|
-
t && (t.on &&
|
|
571
|
+
for (let e = 0; e < he.length; e += 1) {
|
|
572
|
+
let t = he[e];
|
|
573
|
+
t && (t.on && pe - t.t > 4 && (t.on = 0), t.on && (f = !0), ge[e * 4] = t.x, ge[e * 4 + 1] = t.y, ge[e * 4 + 2] = t.t, ge[e * 4 + 3] = t.on);
|
|
574
574
|
}
|
|
575
|
-
let p = 1 -
|
|
576
|
-
|
|
577
|
-
let
|
|
578
|
-
ve += (
|
|
579
|
-
let
|
|
580
|
-
|
|
581
|
-
let
|
|
582
|
-
if (
|
|
575
|
+
let p = 1 - F.ptrLag ** +l, O = (B.x - V.x) * p, P = (B.y - V.y) * p;
|
|
576
|
+
V.x += O, V.y += P;
|
|
577
|
+
let te = Math.min(Math.hypot(O, P) / Math.max(l, .001) / F.ptrVref, 1);
|
|
578
|
+
ve += (te - ve) * (1 - (te > ve ? .001 : .02) ** l);
|
|
579
|
+
let ne = H.over || H.press ? 1 : 0;
|
|
580
|
+
_e += (ne - _e) * (1 - .004 ** l), Math.abs(ne - _e) < .002 && (_e = ne), H.over = n.matches(":hover"), H.focus = n.matches(":focus-visible"), ye(), D && k();
|
|
581
|
+
let re = be.matches && !f && _e < .002 ? `${M}|${R}|${b}|${x}` : null;
|
|
582
|
+
if (re !== null && re === xe) {
|
|
583
583
|
Se = requestAnimationFrame(Ee);
|
|
584
584
|
return;
|
|
585
585
|
}
|
|
586
|
-
xe =
|
|
587
|
-
let { accent:
|
|
588
|
-
for (let e = 0; e <
|
|
589
|
-
let t =
|
|
590
|
-
t && (
|
|
586
|
+
xe = re;
|
|
587
|
+
let { accent: ie } = Te();
|
|
588
|
+
for (let e = 0; e < j.length; e += 1) {
|
|
589
|
+
let t = oe[e];
|
|
590
|
+
t && (j[e] = ae[t]);
|
|
591
591
|
}
|
|
592
|
-
for (let e = 0; e <
|
|
593
|
-
let t =
|
|
594
|
-
t && (
|
|
592
|
+
for (let e = 0; e < ee.length; e += 1) {
|
|
593
|
+
let t = ce[e];
|
|
594
|
+
t && (ee[e] = se[t]);
|
|
595
595
|
}
|
|
596
|
-
let
|
|
597
|
-
e.useProgram(i.p),
|
|
598
|
-
let De =
|
|
596
|
+
let ue = Math.max(C, 110), de = Math.max(2.4, ue / 516 * 3.2), I = fe(e, i.u), L = fe(e, a.u), U = fe(e, o.u), W = fe(e, s.u), G = fe(e, c.u);
|
|
597
|
+
e.useProgram(i.p), I.f2("uC", w, T), I.f2("uHalf", S / 2, C / 2), I.f1("uT", pe), I.f1("uHover", M), I.f1("uPress", R), I.fv4("uRip", ge), I.f4("uRipK", F.speed, F.width, F.decay, F.amp), I.f4("uRipK2", F.facet, F.lobes, F.sharp, F.emit), I.f4("uPtr", V.x, V.y, _e, ve), I.f4("uPtrK", F.ptrRad, F.ptrAmp, F.ptrFast, F.ptrRim), I.f3("uAccent", ie[0], ie[1], ie[2]), I.fv1("uP", j), A(m), e.useProgram(a.p), L.f2("uC", w, T), L.f2("uHalf", S / 2, C / 2), L.f1("uT", pe), L.f1("uBw", de), L.f1("uPress", R), L.fv4("uRip", ge), L.f4("uRipK", F.speed, F.width, F.decay, F.amp), L.f4("uRipK2", F.facet, F.lobes, F.sharp, F.emit), L.f4("uPtr", V.x, V.y, _e, ve), L.f4("uPtrK", F.ptrRad, F.ptrAmp, F.ptrFast, F.ptrRim), L.f3("uAccent", ie[0], ie[1], ie[2]), L.fv1("uE", ee), A(h), e.useProgram(o.p), e.activeTexture(e.TEXTURE0), e.bindTexture(e.TEXTURE_2D, m.tex), U.i1("uTex", 0), U.f1("uAdd", 0), U.f2("uDstTexel", 1 / g.w, 1 / g.h), U.f2("uSrcTexel", 1 / b, 1 / x), A(g), e.useProgram(s.p), W.i1("uTex", 0), W.f2("uTexel", 1 / g.w, 1 / g.h);
|
|
598
|
+
let De = le.soften * (ue * .5) * .95;
|
|
599
599
|
if (De > .1) {
|
|
600
600
|
let t = Math.min(4, Math.max(1, Math.ceil(De / 3)));
|
|
601
601
|
W.f1("uR", De / Math.sqrt(t) / 1.95);
|
|
602
|
-
for (let n = 0; n < t; n += 1) e.bindTexture(e.TEXTURE_2D, g.tex), W.f2("uDir", 1, 0),
|
|
602
|
+
for (let n = 0; n < t; n += 1) e.bindTexture(e.TEXTURE_2D, g.tex), W.f2("uDir", 1, 0), A(_), e.bindTexture(e.TEXTURE_2D, _.tex), W.f2("uDir", 0, 1), A(g);
|
|
603
603
|
}
|
|
604
|
-
e.useProgram(o.p), e.activeTexture(e.TEXTURE0), e.bindTexture(e.TEXTURE_2D, g.tex), e.activeTexture(e.TEXTURE1), e.bindTexture(e.TEXTURE_2D, h.tex), U.i1("uTex", 0), U.i1("uTex2", 1), U.f1("uAdd", 1), U.f2("uDstTexel", 1 / v.w, 1 / v.h), U.f2("uSrcTexel", 1 / g.w, 1 / g.h),
|
|
605
|
-
let Oe =
|
|
604
|
+
e.useProgram(o.p), e.activeTexture(e.TEXTURE0), e.bindTexture(e.TEXTURE_2D, g.tex), e.activeTexture(e.TEXTURE1), e.bindTexture(e.TEXTURE_2D, h.tex), U.i1("uTex", 0), U.i1("uTex2", 1), U.f1("uAdd", 1), U.f2("uDstTexel", 1 / v.w, 1 / v.h), U.f2("uSrcTexel", 1 / g.w, 1 / g.h), A(v), e.useProgram(s.p), e.activeTexture(e.TEXTURE0), W.i1("uTex", 0), W.f2("uTexel", 1 / v.w, 1 / v.h);
|
|
605
|
+
let Oe = le.glowR * (ue / E) / 129;
|
|
606
606
|
for (let t of [
|
|
607
607
|
1,
|
|
608
608
|
2.3,
|
|
609
609
|
5.2,
|
|
610
610
|
9
|
|
611
|
-
].map((e) => e * Oe)) W.f1("uR", t), e.bindTexture(e.TEXTURE_2D, v.tex), W.f2("uDir", 1, 0),
|
|
612
|
-
e.useProgram(c.p), e.activeTexture(e.TEXTURE0), e.bindTexture(e.TEXTURE_2D, g.tex), G.i1("uSoft", 0), e.activeTexture(e.TEXTURE1), e.bindTexture(e.TEXTURE_2D, h.tex), G.i1("uRim", 1), e.activeTexture(e.TEXTURE2), e.bindTexture(e.TEXTURE_2D, v.tex), G.i1("uGlow", 2), G.f2("uRes", b, x), G.f2("uC", w, T), G.f2("uHalf", S / 2, C / 2), G.f1("uT",
|
|
611
|
+
].map((e) => e * Oe)) W.f1("uR", t), e.bindTexture(e.TEXTURE_2D, v.tex), W.f2("uDir", 1, 0), A(y), e.bindTexture(e.TEXTURE_2D, y.tex), W.f2("uDir", 0, 1), A(v);
|
|
612
|
+
e.useProgram(c.p), e.activeTexture(e.TEXTURE0), e.bindTexture(e.TEXTURE_2D, g.tex), G.i1("uSoft", 0), e.activeTexture(e.TEXTURE1), e.bindTexture(e.TEXTURE_2D, h.tex), G.i1("uRim", 1), e.activeTexture(e.TEXTURE2), e.bindTexture(e.TEXTURE_2D, v.tex), G.i1("uGlow", 2), G.f2("uRes", b, x), G.f2("uC", w, T), G.f2("uHalf", S / 2, C / 2), G.f1("uT", pe), G.fv4("uRip", ge), G.f4("uRipK", F.speed, F.width, F.decay, F.amp), G.f4("uRipK2", F.facet, F.lobes, F.sharp, F.emit), G.f3("uAccent", ie[0], ie[1], ie[2]), G.f1("uGlowGain", le.glow), G.f1("uGlowIn", le.glowIn), G.f1("uOccl", le.occl), G.f1("uDim", ae.dim), G.f1("uPunch", le.punch), A(null), Se = requestAnimationFrame(Ee);
|
|
613
613
|
}
|
|
614
614
|
let G = (e) => {
|
|
615
615
|
if (e.pointerType !== "mouse") return;
|
|
616
616
|
let [t, n] = W(e);
|
|
617
|
-
|
|
617
|
+
B.x = t, B.y = n, V.x = t, V.y = n, ve = 0, H.over = !0, ye();
|
|
618
618
|
}, De = (e) => {
|
|
619
619
|
e.pointerType === "mouse" && (H.over = !1, ye());
|
|
620
620
|
}, Oe = (e) => {
|
|
621
621
|
if (!H.over && !H.press) return;
|
|
622
622
|
let [t, n] = W(e);
|
|
623
|
-
|
|
623
|
+
B.x = t, B.y = n;
|
|
624
624
|
}, ke = (e) => {
|
|
625
625
|
let [t, n] = W(e);
|
|
626
|
-
|
|
626
|
+
B.x = t, B.y = n, H.press = !0, ye(), U(t, n);
|
|
627
627
|
}, Ae = () => {
|
|
628
628
|
H.press = !1, ye();
|
|
629
629
|
}, je = () => {
|
|
@@ -639,12 +639,12 @@ function ge(e, t, n, r) {
|
|
|
639
639
|
let Fe = new ResizeObserver(() => {
|
|
640
640
|
D = !0;
|
|
641
641
|
});
|
|
642
|
-
return Fe.observe(r), Fe.observe(n),
|
|
642
|
+
return Fe.observe(r), Fe.observe(n), k(), Se = requestAnimationFrame(Ee), {
|
|
643
643
|
pause: () => {
|
|
644
644
|
Ce = !0, Se && cancelAnimationFrame(Se), Se = 0;
|
|
645
645
|
},
|
|
646
646
|
resume: () => {
|
|
647
|
-
we || (Ce = !1,
|
|
647
|
+
we || (Ce = !1, me = performance.now(), xe = null, Se ||= requestAnimationFrame(Ee));
|
|
648
648
|
},
|
|
649
649
|
dispose: () => {
|
|
650
650
|
we || (we = !0, Ce = !0, Se && cancelAnimationFrame(Se), Se = 0, Fe.disconnect(), n.removeEventListener("pointerenter", G), n.removeEventListener("pointerleave", De), window.removeEventListener("pointermove", Oe), n.removeEventListener("pointerdown", ke), window.removeEventListener("pointerup", Ae), window.removeEventListener("pointercancel", Ae), n.removeEventListener("focus", je), n.removeEventListener("blur", Me), n.removeEventListener("keydown", Ne), n.removeEventListener("keyup", Pe), O.remove(), e.getExtension("WEBGL_lose_context")?.loseContext());
|
|
@@ -653,22 +653,22 @@ function ge(e, t, n, r) {
|
|
|
653
653
|
}
|
|
654
654
|
//#endregion
|
|
655
655
|
//#region src/LiquidMetalButton.tsx
|
|
656
|
-
function
|
|
656
|
+
function ge({ children: e, className: r, onClick: i, sound: a = !1, type: o = "button", renderer: s = "auto", ...c }) {
|
|
657
657
|
let u = p(null), d = p(null), f = p(null), [h, g] = m("css");
|
|
658
658
|
l(() => {
|
|
659
659
|
let e = u.current, t = d.current, n = f.current;
|
|
660
660
|
if (!e || !t || !n) return;
|
|
661
661
|
let r = window.matchMedia("(prefers-reduced-motion: reduce)"), i = !1, a = !1, o = null, c = !1, l = () => {
|
|
662
|
-
o?.dispose(), o = null, a &&= (
|
|
662
|
+
o?.dispose(), o = null, a &&= (j(), !1), c || g("css");
|
|
663
663
|
}, p = () => {
|
|
664
|
-
if (!(c || o) &&
|
|
664
|
+
if (!(c || o) && ee({
|
|
665
665
|
renderer: s,
|
|
666
666
|
hasWebGL2: typeof WebGL2RenderingContext < "u",
|
|
667
667
|
prefersReducedMotion: r.matches,
|
|
668
668
|
isInViewport: i
|
|
669
|
-
}) &&
|
|
670
|
-
if (a = !0, o =
|
|
671
|
-
|
|
669
|
+
}) && A()) {
|
|
670
|
+
if (a = !0, o = pe(n, t, e), !o) {
|
|
671
|
+
j(), a = !1;
|
|
672
672
|
return;
|
|
673
673
|
}
|
|
674
674
|
g("webgl");
|
|
@@ -725,7 +725,7 @@ function _e({ children: e, className: r, onClick: i, sound: a = !1, type: o = "b
|
|
|
725
725
|
}
|
|
726
726
|
//#endregion
|
|
727
727
|
//#region src/clay/tokens.ts
|
|
728
|
-
var
|
|
728
|
+
var L = {
|
|
729
729
|
ink: "#3b2d23",
|
|
730
730
|
inkMuted: "#786250",
|
|
731
731
|
parchment: "#fff8ec",
|
|
@@ -748,7 +748,7 @@ var I = {
|
|
|
748
748
|
overlayGlassText: "#fff6ee",
|
|
749
749
|
liquidMetalFace: "#3a2518",
|
|
750
750
|
liquidMetalInk: "#fff8ec"
|
|
751
|
-
},
|
|
751
|
+
}, R = {
|
|
752
752
|
face: "var(--game-ui-liquid-metal-face)",
|
|
753
753
|
ink: "var(--game-ui-liquid-metal-ink)",
|
|
754
754
|
accent: "var(--game-ui-liquid-metal-accent)",
|
|
@@ -756,7 +756,7 @@ var I = {
|
|
|
756
756
|
sweepSpeed: "var(--game-ui-liquid-metal-sweep-speed)",
|
|
757
757
|
rest: "var(--game-ui-liquid-metal-rest)",
|
|
758
758
|
bloom: "var(--game-ui-liquid-metal-bloom)"
|
|
759
|
-
},
|
|
759
|
+
}, z = {
|
|
760
760
|
morphShape: "var(--game-ui-liquid-gooey-morph-shape)",
|
|
761
761
|
morphSpeed: "var(--game-ui-liquid-gooey-morph-speed)",
|
|
762
762
|
morphBounce: "var(--game-ui-liquid-gooey-morph-bounce)",
|
|
@@ -840,7 +840,7 @@ var I = {
|
|
|
840
840
|
dissolveStrength: "var(--game-ui-liquid-gooey-dissolve-strength)",
|
|
841
841
|
dissolveSink: "var(--game-ui-liquid-gooey-dissolve-sink)",
|
|
842
842
|
dissolveSeamBlur: "var(--game-ui-liquid-gooey-dissolve-seam-blur)"
|
|
843
|
-
},
|
|
843
|
+
}, B = {
|
|
844
844
|
bg: "var(--game-ui-overlay-glass-bg)",
|
|
845
845
|
bgHover: "var(--game-ui-overlay-glass-bg-hover)",
|
|
846
846
|
bgStrong: "var(--game-ui-overlay-glass-bg-strong)",
|
|
@@ -852,7 +852,7 @@ var I = {
|
|
|
852
852
|
blur: "var(--game-ui-overlay-glass-blur)",
|
|
853
853
|
focusRing: "var(--game-ui-overlay-glass-focus-ring)",
|
|
854
854
|
primaryFill: "var(--game-ui-overlay-glass-primary-fill)"
|
|
855
|
-
},
|
|
855
|
+
}, V = {
|
|
856
856
|
background: "var(--game-ui-bg)",
|
|
857
857
|
playfieldScrim: "var(--game-ui-playfield-scrim)",
|
|
858
858
|
surface: "var(--game-ui-surface)",
|
|
@@ -871,7 +871,7 @@ var I = {
|
|
|
871
871
|
borderSubtle: "var(--game-ui-border-subtle)",
|
|
872
872
|
borderStrong: "var(--game-ui-border-strong)",
|
|
873
873
|
disabled: "var(--game-ui-disabled)"
|
|
874
|
-
},
|
|
874
|
+
}, _e = {
|
|
875
875
|
familyDisplay: "var(--game-ui-font-display)",
|
|
876
876
|
familyBody: "var(--game-ui-font-body)",
|
|
877
877
|
familyMono: "var(--game-ui-font-mono)",
|
|
@@ -954,9 +954,9 @@ var I = {
|
|
|
954
954
|
buildRailCardSize: "var(--game-ui-build-rail-card-size)",
|
|
955
955
|
brushNumberWidth: "var(--game-ui-brush-number-width)"
|
|
956
956
|
}, Se = {
|
|
957
|
-
colors:
|
|
958
|
-
semantic:
|
|
959
|
-
typography:
|
|
957
|
+
colors: L,
|
|
958
|
+
semantic: V,
|
|
959
|
+
typography: _e,
|
|
960
960
|
spacing: ve,
|
|
961
961
|
radius: H,
|
|
962
962
|
elevation: U,
|
|
@@ -964,9 +964,9 @@ var I = {
|
|
|
964
964
|
layers: ye,
|
|
965
965
|
targets: be,
|
|
966
966
|
assetSizing: xe,
|
|
967
|
-
overlayGlass:
|
|
968
|
-
liquidMetal:
|
|
969
|
-
liquidGooey:
|
|
967
|
+
overlayGlass: B,
|
|
968
|
+
liquidMetal: R,
|
|
969
|
+
liquidGooey: z
|
|
970
970
|
}, Ce = 2, we = 48e4, Te = 2, Ee = we, G = 0;
|
|
971
971
|
function De(e, t) {
|
|
972
972
|
return Number.isFinite(e) ? Math.max(0, Math.floor(e)) : t;
|
|
@@ -1225,7 +1225,7 @@ function Je(e) {
|
|
|
1225
1225
|
return /^var\((--[\w-]+)\)$/.exec(e.trim())?.[1] ?? null;
|
|
1226
1226
|
}
|
|
1227
1227
|
function Ye(e, t, n) {
|
|
1228
|
-
let r = e?.ownerDocument.defaultView, i = Je(
|
|
1228
|
+
let r = e?.ownerDocument.defaultView, i = Je(z[t]);
|
|
1229
1229
|
if (!r || !i) return n;
|
|
1230
1230
|
let a = r.getComputedStyle(e).getPropertyValue(i), o = Number.parseFloat(a);
|
|
1231
1231
|
return Number.isFinite(o) ? o : n;
|
|
@@ -1324,13 +1324,13 @@ function rt(e, t, n, r, i) {
|
|
|
1324
1324
|
y > b && y > 0 && (e.tailX = e.cx + _ / y * b, e.tailY = e.cy + v / y * b);
|
|
1325
1325
|
let x = Ke((o - i.tailOnsetSpeed) / i.tailOnsetRange), S = g * i.tail * x;
|
|
1326
1326
|
e.tailR += (S - e.tailR) * Math.min(1, Math.max(0, r) * i.tailRamp);
|
|
1327
|
-
let C = e.tailR >= i.tailMinRadius, w = e.cx, T = e.cy, E = e.cx, D = e.cy, O = 0,
|
|
1327
|
+
let C = e.tailR >= i.tailMinRadius, w = e.cx, T = e.cy, E = e.cx, D = e.cy, O = 0, k = 0;
|
|
1328
1328
|
if (C) {
|
|
1329
1329
|
e.tailPhase += o * Math.max(0, qe(r, 0)) * i.tailPhaseSpeed;
|
|
1330
1330
|
let t = e.tailR * i.tailWobble, n = -p, a = f, s = Math.sin(e.tailPhase) * t, c = Math.sin(e.tailPhase + i.tailWobblePhase) * -t;
|
|
1331
|
-
w = e.cx + _ * i.tailMidpointA + n * s, T = e.cy + v * i.tailMidpointA + a * s, E = e.cx + _ * i.tailMidpointB + n * c, D = e.cy + v * i.tailMidpointB + a * c, O = e.tailR * i.tailMidRadiusA,
|
|
1331
|
+
w = e.cx + _ * i.tailMidpointA + n * s, T = e.cy + v * i.tailMidpointA + a * s, E = e.cx + _ * i.tailMidpointB + n * c, D = e.cy + v * i.tailMidpointB + a * c, O = e.tailR * i.tailMidRadiusA, k = e.tailR * i.tailMidRadiusB;
|
|
1332
1332
|
}
|
|
1333
|
-
let
|
|
1333
|
+
let A = {
|
|
1334
1334
|
cx: q(e.tailX),
|
|
1335
1335
|
cy: q(e.tailY),
|
|
1336
1336
|
radius: C ? q(e.tailR) : 0,
|
|
@@ -1339,7 +1339,7 @@ function rt(e, t, n, r, i) {
|
|
|
1339
1339
|
midARadius: C ? q(O) : 0,
|
|
1340
1340
|
midBCx: q(E),
|
|
1341
1341
|
midBCy: q(D),
|
|
1342
|
-
midBRadius: C ? q(
|
|
1342
|
+
midBRadius: C ? q(k) : 0,
|
|
1343
1343
|
visible: C,
|
|
1344
1344
|
fingerprint: C ? [
|
|
1345
1345
|
q(e.tailX),
|
|
@@ -1354,7 +1354,7 @@ function rt(e, t, n, r, i) {
|
|
|
1354
1354
|
return {
|
|
1355
1355
|
path: We(-n.w / 2, -n.h / 2, n.w, n.h, n.r),
|
|
1356
1356
|
transform: `translate(${nt(e.cx)} ${nt(e.cy)}) ` + (o > i.speedThreshold ? `rotate(${nt(s * 180 / Math.PI)}) scale(${nt(c)} ${nt(l)}) ` : "") + `scale(${nt(a)})`,
|
|
1357
|
-
tail:
|
|
1357
|
+
tail: A,
|
|
1358
1358
|
moving: Math.hypot(e.cx - t.cx, e.cy - t.cy) > i.settleDistance || o > i.settleSpeed || e.tailR >= i.tailMinRadius
|
|
1359
1359
|
};
|
|
1360
1360
|
}
|
|
@@ -1425,13 +1425,13 @@ function ft(e, t = 0, n = 1) {
|
|
|
1425
1425
|
return Math.min(n, Math.max(t, e));
|
|
1426
1426
|
}
|
|
1427
1427
|
function pt(e, t, n) {
|
|
1428
|
-
let r = e?.ownerDocument.defaultView, i = ut(
|
|
1428
|
+
let r = e?.ownerDocument.defaultView, i = ut(z[t]);
|
|
1429
1429
|
if (!r || !i) return n;
|
|
1430
1430
|
let a = Number.parseFloat(r.getComputedStyle(e).getPropertyValue(i));
|
|
1431
1431
|
return Number.isFinite(a) ? a : n;
|
|
1432
1432
|
}
|
|
1433
1433
|
function mt(e, t, n) {
|
|
1434
|
-
let r = e?.ownerDocument.defaultView, i = ut(
|
|
1434
|
+
let r = e?.ownerDocument.defaultView, i = ut(z[t]);
|
|
1435
1435
|
return !r || !i ? n : r.getComputedStyle(e).getPropertyValue(i).trim() || n;
|
|
1436
1436
|
}
|
|
1437
1437
|
function ht(e, t) {
|
|
@@ -1577,14 +1577,14 @@ function Tt(e, t, n, r, i) {
|
|
|
1577
1577
|
}
|
|
1578
1578
|
let w = Math.min(1, (Math.hypot(e.vcx, e.vcy) + Math.abs(e.vw) + Math.abs(e.vh)) / 420);
|
|
1579
1579
|
e.motionEnv = Math.max(w, e.motionEnv - a * 1.9);
|
|
1580
|
-
let T = e.motionEnv * e.motionEnv * Math.max(0, i.contentBlur), E = e.cornerStarted && r - e.cornerT0 < b + 80 || Math.abs(x - e.round01) > .004 || e.round01 > .004, D = Math.hypot(e.vcx, e.vcy), O = Math.abs(e.cx - o) < .05 && Math.abs(e.cy - s) < .05 && Math.abs(e.w - t.w) < .05 && Math.abs(e.h - t.h) < .05 && Math.abs(e.r - t.r) < .05 && D < 1 && Math.abs(e.vw) + Math.abs(e.vh) + Math.abs(e.vr) < 1 && e.motionEnv < .01 && !E,
|
|
1580
|
+
let T = e.motionEnv * e.motionEnv * Math.max(0, i.contentBlur), E = e.cornerStarted && r - e.cornerT0 < b + 80 || Math.abs(x - e.round01) > .004 || e.round01 > .004, D = Math.hypot(e.vcx, e.vcy), O = Math.abs(e.cx - o) < .05 && Math.abs(e.cy - s) < .05 && Math.abs(e.w - t.w) < .05 && Math.abs(e.h - t.h) < .05 && Math.abs(e.r - t.r) < .05 && D < 1 && Math.abs(e.vw) + Math.abs(e.vh) + Math.abs(e.vr) < 1 && e.motionEnv < .01 && !E, k = [
|
|
1581
1581
|
C,
|
|
1582
1582
|
C,
|
|
1583
1583
|
C,
|
|
1584
1584
|
C
|
|
1585
1585
|
];
|
|
1586
1586
|
return {
|
|
1587
|
-
path: We(-e.w / 2, -e.h / 2, e.w, e.h,
|
|
1587
|
+
path: We(-e.w / 2, -e.h / 2, e.w, e.h, k),
|
|
1588
1588
|
transform: `translate(${wt(e.cx)} ${wt(e.cy)}) scale(${wt(t.scale)})`,
|
|
1589
1589
|
contentBlur: T,
|
|
1590
1590
|
moving: !O
|
|
@@ -1852,7 +1852,7 @@ var Ut = class {
|
|
|
1852
1852
|
return Number.isFinite(e) && (this.filterArea = Math.max(0, e)), Ae(this.filterArea) ? (this.claimed = !0, this.moveOptions = Xe(this.getGroup()), !0) : (this.warnBudgetFallback(), !1);
|
|
1853
1853
|
}
|
|
1854
1854
|
warnBudgetFallback() {
|
|
1855
|
-
if (this.budgetWarningEmitted
|
|
1855
|
+
if (this.budgetWarningEmitted) return;
|
|
1856
1856
|
this.budgetWarningEmitted = !0;
|
|
1857
1857
|
let e = Oe(), t = e.activeGroups >= e.maxAnimatedGroups ? "the active-group limit is reached" : "the filter-area limit is exceeded";
|
|
1858
1858
|
console.warn(`LiquidGroup: the liquid animation budget is insufficient (${t}); degrading to static rendering for this group.`);
|
|
@@ -2190,51 +2190,48 @@ var Jt = 24, Yt = 500, Xt = 16, Zt = 6, Qt = {
|
|
|
2190
2190
|
sink: .8,
|
|
2191
2191
|
seamBlur: 12.8
|
|
2192
2192
|
};
|
|
2193
|
-
function $t() {
|
|
2194
|
-
return !1;
|
|
2195
|
-
}
|
|
2196
|
-
function en(e, t = 0, n = 1) {
|
|
2193
|
+
function $t(e, t = 0, n = 1) {
|
|
2197
2194
|
return Math.min(n, Math.max(t, e));
|
|
2198
2195
|
}
|
|
2199
|
-
function
|
|
2196
|
+
function en(e, t) {
|
|
2200
2197
|
return e !== void 0 && Number.isFinite(e) ? e : t;
|
|
2201
2198
|
}
|
|
2202
|
-
function
|
|
2199
|
+
function tn(e, t, n) {
|
|
2203
2200
|
let r = e?.ownerDocument.defaultView;
|
|
2204
2201
|
if (!r) return n;
|
|
2205
|
-
let i =
|
|
2202
|
+
let i = z[t], a = /^var\((--[\w-]+)\)$/.exec(i)?.[1];
|
|
2206
2203
|
if (!a) return n;
|
|
2207
2204
|
let o = Number.parseFloat(r.getComputedStyle(e).getPropertyValue(a));
|
|
2208
2205
|
return Number.isFinite(o) ? o : n;
|
|
2209
2206
|
}
|
|
2210
|
-
function
|
|
2211
|
-
let n = (n, r) =>
|
|
2207
|
+
function nn(e, t = {}) {
|
|
2208
|
+
let n = (n, r) => en(t[n], tn(e, r, Qt[n]));
|
|
2212
2209
|
return {
|
|
2213
2210
|
blur: Math.max(0, n("blur", "meltBlur")),
|
|
2214
2211
|
contrast: Math.max(1, n("contrast", "meltContrast")),
|
|
2215
2212
|
reach: Math.max(0, n("reach", "meltReach")),
|
|
2216
2213
|
fade: Math.max(0, n("fade", "meltFade")),
|
|
2217
2214
|
warp: Math.max(0, n("warp", "meltWarp")),
|
|
2218
|
-
mix:
|
|
2215
|
+
mix: $t(n("mix", "meltMix")),
|
|
2219
2216
|
mixBlur: Math.max(0, n("mixBlur", "meltMixBlur")),
|
|
2220
2217
|
gravity: Math.max(0, n("gravity", "meltGravity")),
|
|
2221
2218
|
waviness: Math.max(0, n("waviness", "meltWaviness"))
|
|
2222
2219
|
};
|
|
2223
2220
|
}
|
|
2224
|
-
function
|
|
2221
|
+
function rn(e, t) {
|
|
2225
2222
|
let n = typeof t == "object" && t ? t : {}, r = (t, r, i) => {
|
|
2226
2223
|
let a = n[t];
|
|
2227
|
-
return
|
|
2228
|
-
}, i =
|
|
2224
|
+
return en(typeof a == "number" ? a : void 0, tn(e, r, i));
|
|
2225
|
+
}, i = $t(typeof t == "number" ? t : r("strength", "dissolveStrength", J.strength));
|
|
2229
2226
|
return {
|
|
2230
2227
|
blur: Math.max(0, r("blur", "dissolveBlur", J.blur)),
|
|
2231
2228
|
warp: Math.max(0, r("warp", "dissolveWarp", J.warp)),
|
|
2232
2229
|
pull: Math.max(0, r("pull", "dissolvePull", J.pull)),
|
|
2233
2230
|
range: Math.max(1, r("range", "dissolveRange", J.range)),
|
|
2234
2231
|
zone: Math.max(1, r("zone", "dissolveZone", J.zone)),
|
|
2235
|
-
mix:
|
|
2232
|
+
mix: $t(r("mix", "dissolveMix", J.mix)),
|
|
2236
2233
|
gravity: Math.max(0, r("gravity", "dissolveGravity", J.gravity)),
|
|
2237
|
-
taper:
|
|
2234
|
+
taper: $t(r("taper", "dissolveTaper", J.taper)),
|
|
2238
2235
|
warpFreq: Math.max(.2, r("warpFreq", "dissolveWarpFreq", J.warpFreq)),
|
|
2239
2236
|
flowSpeed: Math.max(0, r("flowSpeed", "dissolveFlowSpeed", J.flowSpeed)),
|
|
2240
2237
|
warpStyle: n.warpStyle ?? J.warpStyle,
|
|
@@ -2247,13 +2244,13 @@ function an(e, t) {
|
|
|
2247
2244
|
seamBlur: Math.max(0, r("seamBlur", "dissolveSeamBlur", J.seamBlur))
|
|
2248
2245
|
};
|
|
2249
2246
|
}
|
|
2250
|
-
function
|
|
2247
|
+
function an(e) {
|
|
2251
2248
|
return e ? e instanceof HTMLImageElement ? e : e.querySelector("img") : null;
|
|
2252
2249
|
}
|
|
2253
|
-
function
|
|
2250
|
+
function on(e) {
|
|
2254
2251
|
return e && (e.currentSrc || e.src) || null;
|
|
2255
2252
|
}
|
|
2256
|
-
function
|
|
2253
|
+
function sn(e) {
|
|
2257
2254
|
return {
|
|
2258
2255
|
maskImage: e.style.getPropertyValue("mask-image"),
|
|
2259
2256
|
maskPriority: e.style.getPropertyPriority("mask-image"),
|
|
@@ -2261,11 +2258,11 @@ function cn(e) {
|
|
|
2261
2258
|
webkitMaskPriority: e.style.getPropertyPriority("-webkit-mask-image")
|
|
2262
2259
|
};
|
|
2263
2260
|
}
|
|
2264
|
-
function
|
|
2261
|
+
function cn(e) {
|
|
2265
2262
|
let t = e.image, n = e.previousMask;
|
|
2266
2263
|
!t || !n || (n.maskImage ? t.style.setProperty("mask-image", n.maskImage, n.maskPriority) : t.style.removeProperty("mask-image"), n.webkitMaskImage ? t.style.setProperty("-webkit-mask-image", n.webkitMaskImage, n.webkitMaskPriority) : t.style.removeProperty("-webkit-mask-image"));
|
|
2267
2264
|
}
|
|
2268
|
-
function
|
|
2265
|
+
function ln() {
|
|
2269
2266
|
let e = /* @__PURE__ */ new Set(), t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set(), r = 0, i = () => n.forEach((e) => e());
|
|
2270
2267
|
return {
|
|
2271
2268
|
registerMelt(t) {
|
|
@@ -2283,15 +2280,15 @@ function un() {
|
|
|
2283
2280
|
let n = {
|
|
2284
2281
|
...e,
|
|
2285
2282
|
id: `dissolve-${++r}`,
|
|
2286
|
-
previousMask: e.image ?
|
|
2283
|
+
previousMask: e.image ? sn(e.image) : null
|
|
2287
2284
|
};
|
|
2288
2285
|
return t.add(n), i(), {
|
|
2289
2286
|
update(e) {
|
|
2290
|
-
let t =
|
|
2291
|
-
t !== n.image && (
|
|
2287
|
+
let t = an(n.el);
|
|
2288
|
+
t !== n.image && (cn(n), n.image = t, n.previousMask = t ? sn(t) : null), n.opts = rn(n.el, e), i();
|
|
2292
2289
|
},
|
|
2293
2290
|
unregister() {
|
|
2294
|
-
|
|
2291
|
+
cn(n), t.delete(n), i();
|
|
2295
2292
|
}
|
|
2296
2293
|
};
|
|
2297
2294
|
},
|
|
@@ -2302,29 +2299,29 @@ function un() {
|
|
|
2302
2299
|
dissolveEntries: () => [...t]
|
|
2303
2300
|
};
|
|
2304
2301
|
}
|
|
2305
|
-
function
|
|
2306
|
-
let r =
|
|
2307
|
-
return
|
|
2302
|
+
function un(e, t, n) {
|
|
2303
|
+
let r = an(t);
|
|
2304
|
+
return r || console.warn("[swimmer-ui] `dissolve` needs an <img> inside the item; text and other DOM content stay unchanged."), e.registerDissolve({
|
|
2308
2305
|
el: t,
|
|
2309
2306
|
image: r,
|
|
2310
|
-
opts:
|
|
2307
|
+
opts: rn(t, n)
|
|
2311
2308
|
});
|
|
2312
2309
|
}
|
|
2313
|
-
function
|
|
2310
|
+
function dn({ src: e, options: n = {}, registry: r, children: i, forwardedRef: a, className: o, style: s, ...c }) {
|
|
2314
2311
|
let l = p(null), u = JSON.stringify(n), f = p(!1), m = (e) => {
|
|
2315
2312
|
l.current = e, typeof a == "function" ? a(e) : a && (a.current = e);
|
|
2316
2313
|
};
|
|
2317
2314
|
return d(() => {
|
|
2318
|
-
let t = l.current, i = t?.firstElementChild, a =
|
|
2315
|
+
let t = l.current, i = t?.firstElementChild, a = an(i), o = e ?? on(a);
|
|
2319
2316
|
if (!t || !i || !a || !o) {
|
|
2320
|
-
|
|
2317
|
+
f.current || (f.current = !0, console.warn("[swimmer-ui] effect=\"melt\" needs an image: pass melt={{ src }} or put an <img> inside the item."));
|
|
2321
2318
|
return;
|
|
2322
2319
|
}
|
|
2323
2320
|
return r.registerMelt({
|
|
2324
2321
|
el: t,
|
|
2325
2322
|
target: a,
|
|
2326
2323
|
src: o,
|
|
2327
|
-
opts:
|
|
2324
|
+
opts: nn(t, n)
|
|
2328
2325
|
});
|
|
2329
2326
|
}, [
|
|
2330
2327
|
u,
|
|
@@ -2338,7 +2335,7 @@ function fn({ src: e, options: n = {}, registry: r, children: i, forwardedRef: a
|
|
|
2338
2335
|
children: i
|
|
2339
2336
|
});
|
|
2340
2337
|
}
|
|
2341
|
-
var
|
|
2338
|
+
var fn = {
|
|
2342
2339
|
width: 0,
|
|
2343
2340
|
height: 0,
|
|
2344
2341
|
melt: null,
|
|
@@ -2348,28 +2345,28 @@ function Y(e, t = 2) {
|
|
|
2348
2345
|
let n = 10 ** t;
|
|
2349
2346
|
return Math.round(e * n) / n;
|
|
2350
2347
|
}
|
|
2351
|
-
function
|
|
2352
|
-
let t =
|
|
2348
|
+
function pn(e) {
|
|
2349
|
+
let t = $t(e);
|
|
2353
2350
|
return t * t * (3 - 2 * t);
|
|
2354
2351
|
}
|
|
2355
|
-
function
|
|
2352
|
+
function mn(e, t) {
|
|
2356
2353
|
let n = Math.max(t.x - (e.x + e.w), e.x - (t.x + t.w), 0), r = Math.max(t.y - (e.y + e.h), e.y - (t.y + t.h), 0);
|
|
2357
2354
|
return Math.hypot(n, r);
|
|
2358
2355
|
}
|
|
2359
|
-
function
|
|
2356
|
+
function hn(e, t) {
|
|
2360
2357
|
return {
|
|
2361
2358
|
x: e.x + e.w < t.x ? (e.x + e.w + t.x) / 2 : t.x + t.w < e.x ? (t.x + t.w + e.x) / 2 : (Math.max(e.x, t.x) + Math.min(e.x + e.w, t.x + t.w)) / 2,
|
|
2362
2359
|
y: e.y + e.h < t.y ? (e.y + e.h + t.y) / 2 : t.y + t.h < e.y ? (t.y + t.h + e.y) / 2 : (Math.max(e.y, t.y) + Math.min(e.y + e.h, t.y + t.h)) / 2
|
|
2363
2360
|
};
|
|
2364
2361
|
}
|
|
2365
|
-
function
|
|
2362
|
+
function gn(e, t, n) {
|
|
2366
2363
|
let r = e.ownerDocument.defaultView?.getComputedStyle(e).borderTopLeftRadius ?? "";
|
|
2367
2364
|
return Math.max(0, Math.min(Number.parseFloat(r) || 0, t / 2, n / 2));
|
|
2368
2365
|
}
|
|
2369
|
-
function
|
|
2366
|
+
function _n(e) {
|
|
2370
2367
|
return e.getBoundingClientRect();
|
|
2371
2368
|
}
|
|
2372
|
-
function
|
|
2369
|
+
function vn(e, t) {
|
|
2373
2370
|
let n = e.getBoundingClientRect();
|
|
2374
2371
|
return {
|
|
2375
2372
|
x: n.left - t.left,
|
|
@@ -2378,21 +2375,21 @@ function yn(e, t) {
|
|
|
2378
2375
|
h: n.height
|
|
2379
2376
|
};
|
|
2380
2377
|
}
|
|
2381
|
-
function
|
|
2382
|
-
let n =
|
|
2378
|
+
function yn(e, t) {
|
|
2379
|
+
let n = vn(e, t);
|
|
2383
2380
|
return {
|
|
2384
2381
|
...n,
|
|
2385
|
-
r:
|
|
2382
|
+
r: gn(e, n.w, n.h)
|
|
2386
2383
|
};
|
|
2387
2384
|
}
|
|
2388
|
-
function
|
|
2385
|
+
function bn(e) {
|
|
2389
2386
|
return `${Y(e.x)}:${Y(e.y)}:${Y(e.w)}:${Y(e.h)}`;
|
|
2390
2387
|
}
|
|
2391
|
-
function
|
|
2388
|
+
function xn(e, t, n) {
|
|
2392
2389
|
let r = Math.max(1, e.offsetWidth || e.getBoundingClientRect().width), i = Math.max(1, e.offsetHeight || e.getBoundingClientRect().height), a = t ? Math.max(Jt, t.blur * 3, t.fade * 2, t.warp + t.waviness, t.mixBlur * 2, t.gravity * .5) : 0, o = n ? Math.max(Jt, n.blur * 3, n.warp + n.zone, n.gravity * .5, n.seamBlur * 3) : 0, s = Math.ceil(Math.max(a, o, Jt));
|
|
2393
2390
|
return (r + s * 2) * (i + s * 2);
|
|
2394
2391
|
}
|
|
2395
|
-
function
|
|
2392
|
+
function Sn(e) {
|
|
2396
2393
|
let t = e[0]?.opts;
|
|
2397
2394
|
return t ? e.slice(1).reduce((e, t) => ({
|
|
2398
2395
|
...e,
|
|
@@ -2403,25 +2400,25 @@ function Cn(e) {
|
|
|
2403
2400
|
seamBlur: Math.max(e.seamBlur, t.opts.seamBlur)
|
|
2404
2401
|
}), { ...t }) : null;
|
|
2405
2402
|
}
|
|
2406
|
-
function
|
|
2403
|
+
function Cn(e, t, n, r, i, a, o, s, c) {
|
|
2407
2404
|
let l = Math.atan2(r, n) * 180 / Math.PI, u = Math.max(0, (s - 1) * Math.max(8, 2 * i)), d = Math.min(2.2, (Math.max(0, o) + u) / Math.max(8, 2 * i)) * (.5 + c), f = 1 + d, p = 1 / (1 + d * .35), m = e - n * (i + a), h = t - r * (i + a);
|
|
2408
2405
|
return `translate(${Y(m)} ${Y(h)}) rotate(${Y(l)}) scale(${Y(f, 3)} ${Y(p, 3)}) rotate(${-Y(l)}) translate(${Y(-m)} ${Y(-h)})`;
|
|
2409
2406
|
}
|
|
2410
|
-
function
|
|
2407
|
+
function wn(e, t, n, r, i, a) {
|
|
2411
2408
|
let o = t - e.x, s = n - e.y;
|
|
2412
2409
|
if (Math.hypot(Math.max(e.x - t, t - (e.x + e.w), 0), Math.max(e.y - n, n - (e.y + e.h), 0)) > r + 2) return null;
|
|
2413
2410
|
let c = Math.min(e.w, e.h) / 2, l = Math.min(Math.max(r, a * .75), c), u = Y(Math.max(0, 1 - Math.min(i, a) * 2.2), 2), d = Y((1 + 2 * u) / 3, 2), f = Math.max(Math.hypot(o, s), Math.hypot(o - e.w, s), Math.hypot(o, s - e.h), Math.hypot(o - e.w, s - e.h)) + 2;
|
|
2414
2411
|
return `radial-gradient(circle at ${Y(o)}px ${Y(s)}px, rgba(255,255,255,${u}) ${Y(l * .2)}px, rgba(255,255,255,${d}) ${Y(l * .45)}px, #fff ${Y(l * .78)}px, #fff ${Y(f)}px)`;
|
|
2415
2412
|
}
|
|
2416
|
-
function
|
|
2413
|
+
function Tn(e) {
|
|
2417
2414
|
if (e < .002) return "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1";
|
|
2418
2415
|
let t = Y(1 + 4 * e, 3);
|
|
2419
2416
|
return `0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ${t} 0 0 0 ${Y(1 - t * (.38 + .12 * e), 3)}`;
|
|
2420
2417
|
}
|
|
2421
|
-
function
|
|
2418
|
+
function En(e) {
|
|
2422
2419
|
return e.replace(/[^a-zA-Z0-9_-]/g, "");
|
|
2423
2420
|
}
|
|
2424
|
-
var
|
|
2421
|
+
var Dn = class {
|
|
2425
2422
|
registry;
|
|
2426
2423
|
getGroup;
|
|
2427
2424
|
onState;
|
|
@@ -2453,7 +2450,7 @@ var On = class {
|
|
|
2453
2450
|
if (!this.disposed) {
|
|
2454
2451
|
this.disposed = !0, this.raf && cancelAnimationFrame(this.raf), this.raf = 0, this.awake = !1, this.resizeObserver?.disconnect(), this.mutationObserver?.disconnect(), this.removeListeners.forEach((e) => e()), this.removeListeners.length = 0;
|
|
2455
2452
|
for (let e of this.registry.entries()) this.setMeltPainted(e, !1);
|
|
2456
|
-
for (let e of this.registry.dissolveEntries())
|
|
2453
|
+
for (let e of this.registry.dissolveEntries()) cn(e);
|
|
2457
2454
|
this.releaseClaim(), this.observed.clear();
|
|
2458
2455
|
}
|
|
2459
2456
|
}
|
|
@@ -2467,7 +2464,7 @@ var On = class {
|
|
|
2467
2464
|
let t = /* @__PURE__ */ new Set(), n = (e) => {
|
|
2468
2465
|
e && (t.add(e), this.observed.has(e) || this.resizeObserver?.observe(e));
|
|
2469
2466
|
};
|
|
2470
|
-
for (let e of this.registry.entries()) n(e.el), n(e.target), n(
|
|
2467
|
+
for (let e of this.registry.entries()) n(e.el), n(e.target), n(an(e.target));
|
|
2471
2468
|
for (let e of this.registry.dissolveEntries()) n(e.el), n(e.image);
|
|
2472
2469
|
for (let e of this.observed) t.has(e) || this.resizeObserver?.unobserve(e);
|
|
2473
2470
|
this.observed.clear(), t.forEach((e) => this.observed.add(e)), !this.mutationObserver && typeof MutationObserver < "u" && (this.mutationObserver = new MutationObserver((e) => {
|
|
@@ -2507,8 +2504,8 @@ var On = class {
|
|
|
2507
2504
|
}
|
|
2508
2505
|
ensureClaim(e, t, n) {
|
|
2509
2506
|
if (this.claimed) return !0;
|
|
2510
|
-
if (!Ae(
|
|
2511
|
-
if (!this.budgetWarningEmitted
|
|
2507
|
+
if (!Ae(xn(e, t, n))) {
|
|
2508
|
+
if (!this.budgetWarningEmitted) {
|
|
2512
2509
|
this.budgetWarningEmitted = !0;
|
|
2513
2510
|
let e = Oe(), t = e.activeGroups >= e.maxAnimatedGroups ? "the active-group limit is reached" : "the filter-area limit is exceeded";
|
|
2514
2511
|
console.warn(`LiquidGroup: the Melt/dissolve image filter budget is insufficient (${t}); degrading to crisp imagery for this group.`);
|
|
@@ -2521,7 +2518,7 @@ var On = class {
|
|
|
2521
2518
|
if (this.raf = 0, this.disposed) return;
|
|
2522
2519
|
let t = this.registry.entries(), n = this.registry.dissolveEntries();
|
|
2523
2520
|
if (t.length === 0 && n.length === 0) {
|
|
2524
|
-
this.awake = !1, this.lastNow = 0, this.lastActivity = 0, this.meltPairKey = "", this.meltProximity = 0, this.lastStateKey && (this.lastStateKey = "", this.onState(
|
|
2521
|
+
this.awake = !1, this.lastNow = 0, this.lastActivity = 0, this.meltPairKey = "", this.meltProximity = 0, this.lastStateKey && (this.lastStateKey = "", this.onState(fn)), this.releaseClaim();
|
|
2525
2522
|
return;
|
|
2526
2523
|
}
|
|
2527
2524
|
let r = this.getGroup();
|
|
@@ -2531,23 +2528,23 @@ var On = class {
|
|
|
2531
2528
|
}
|
|
2532
2529
|
let i = this.lastNow ? Math.min(.25, Math.max(1 / 240, (e - this.lastNow) / 1e3)) : 1 / 60;
|
|
2533
2530
|
this.lastNow = e;
|
|
2534
|
-
let a =
|
|
2535
|
-
for (let e of r.querySelectorAll(".game-ui-liquid-item")) e.closest(".game-ui-liquid-group") === r && o.set(e,
|
|
2531
|
+
let a = _n(r), o = /* @__PURE__ */ new Map();
|
|
2532
|
+
for (let e of r.querySelectorAll(".game-ui-liquid-item")) e.closest(".game-ui-liquid-group") === r && o.set(e, vn(e, a));
|
|
2536
2533
|
let s = t.slice(0, 2), c = s.map((e) => {
|
|
2537
|
-
let t = o.get(e.el) ??
|
|
2534
|
+
let t = o.get(e.el) ?? vn(e.el, a), n = on(an(e.target));
|
|
2538
2535
|
return n && (e.src = n), {
|
|
2539
2536
|
...t,
|
|
2540
|
-
r:
|
|
2537
|
+
r: gn(e.target, t.w, t.h)
|
|
2541
2538
|
};
|
|
2542
2539
|
}), l = s.length === 2 && c.every((e) => e.w > 0 && e.h > 0), u = l ? s[0]?.opts ?? null : null, d = l ? `${s[0]?.id}|${s[1]?.id}` : "";
|
|
2543
2540
|
d !== this.meltPairKey && (this.meltPairKey = d, this.meltProximity = 0);
|
|
2544
|
-
let f = l && c[0] && c[1] ?
|
|
2541
|
+
let f = l && c[0] && c[1] ? pn(1 - mn(c[0], c[1]) / Math.max(8, u.blur * 2.6)) : 0;
|
|
2545
2542
|
this.meltProximity += (f - this.meltProximity) * (1 - Math.exp(-14 * i)), Math.abs(this.meltProximity - f) < .004 && (this.meltProximity = f);
|
|
2546
|
-
let p = this.computeDissolves(n, o, a, i), m = l, h = p.visuals.length > 0, g = m || h, _ =
|
|
2543
|
+
let p = this.computeDissolves(n, o, a, i), m = l, h = p.visuals.length > 0, g = m || h, _ = Sn(n);
|
|
2547
2544
|
if (g && !this.ensureClaim(r, u, _)) {
|
|
2548
2545
|
for (let e of t) this.setMeltPainted(e, !1);
|
|
2549
|
-
for (let e of n)
|
|
2550
|
-
this.onState(
|
|
2546
|
+
for (let e of n) cn(e);
|
|
2547
|
+
this.onState(fn), this.lastStateKey = "", this.awake = !1, this.lastNow = 0;
|
|
2551
2548
|
return;
|
|
2552
2549
|
}
|
|
2553
2550
|
if (m) for (let [e, n] of t.entries()) this.setMeltPainted(n, e < 2);
|
|
@@ -2564,14 +2561,14 @@ var On = class {
|
|
|
2564
2561
|
srcA: s[0].src,
|
|
2565
2562
|
srcB: s[1].src,
|
|
2566
2563
|
opts: s[0].opts,
|
|
2567
|
-
prox:
|
|
2564
|
+
prox: $t(this.meltProximity)
|
|
2568
2565
|
} : null,
|
|
2569
2566
|
dissolves: p.visuals
|
|
2570
2567
|
}, y = this.renderStateKey(v), b = y !== this.lastStateKey;
|
|
2571
2568
|
b && (this.lastStateKey = y, this.onState(v), this.lastActivity = e), b || p.pending || e - this.lastActivity < Yt ? (this.awake = !0, this.raf = requestAnimationFrame(this.loop)) : (this.awake = !1, this.lastNow = 0);
|
|
2572
2569
|
};
|
|
2573
2570
|
renderStateKey(e) {
|
|
2574
|
-
let t = e.melt ? `${e.melt.srcA}|${e.melt.srcB}|${
|
|
2571
|
+
let t = e.melt ? `${e.melt.srcA}|${e.melt.srcB}|${bn(e.melt.a)}|${bn(e.melt.b)}|${Y(e.melt.prox, 3)}` : "", n = e.dissolves.map((e) => `${e.id}|${e.src}|${e.neighborSrc ?? ""}|${bn(e.image)}|${Y(e.cx)}|${Y(e.cy)}|${Y(e.d, 2)}|${Y(e.opacity, 3)}|${Y(e.phase, 3)}|${e.mask ?? ""}`).join(";");
|
|
2575
2572
|
return `${e.width}x${e.height}|${t}|${n}`;
|
|
2576
2573
|
}
|
|
2577
2574
|
computeDissolves(e, t, n, r) {
|
|
@@ -2579,7 +2576,7 @@ var On = class {
|
|
|
2579
2576
|
for (let s of e) {
|
|
2580
2577
|
let e = t.get(s.el), c = s.image;
|
|
2581
2578
|
if (!e || !c) {
|
|
2582
|
-
s.image &&
|
|
2579
|
+
s.image && cn(s);
|
|
2583
2580
|
continue;
|
|
2584
2581
|
}
|
|
2585
2582
|
let l = this.motions.get(s.id) ?? {
|
|
@@ -2595,7 +2592,7 @@ var On = class {
|
|
|
2595
2592
|
let u = Infinity, d = null, f = null;
|
|
2596
2593
|
for (let [t, n] of o) {
|
|
2597
2594
|
if (t === s.el) continue;
|
|
2598
|
-
let r =
|
|
2595
|
+
let r = mn(e, n);
|
|
2599
2596
|
r < u && (u = r, d = n, f = t);
|
|
2600
2597
|
}
|
|
2601
2598
|
let p = 0, m = 0;
|
|
@@ -2605,7 +2602,7 @@ var On = class {
|
|
|
2605
2602
|
}
|
|
2606
2603
|
let h = 0;
|
|
2607
2604
|
if (d && u < s.opts.range && s.opts.active) {
|
|
2608
|
-
let e =
|
|
2605
|
+
let e = pn((1 - u / s.opts.range) / .65), t = pn((p - s.opts.sink * .2) / Math.max(.01, s.opts.sink * .8));
|
|
2609
2606
|
h = e ** 1.25 * s.opts.strength * (1 - t);
|
|
2610
2607
|
}
|
|
2611
2608
|
if (h >= l.fade) l.fade += (h - l.fade) * Math.min(1, r * Xt), l.release = null;
|
|
@@ -2619,26 +2616,26 @@ var On = class {
|
|
|
2619
2616
|
l.fade = l.release.from * (1 - t) ** 2;
|
|
2620
2617
|
} else l.fade = 0;
|
|
2621
2618
|
if (l.fade <= .001) {
|
|
2622
|
-
l.fade = 0,
|
|
2619
|
+
l.fade = 0, cn(s);
|
|
2623
2620
|
continue;
|
|
2624
2621
|
}
|
|
2625
2622
|
let g = d ?? l.contact;
|
|
2626
2623
|
if (!g) continue;
|
|
2627
|
-
let _ =
|
|
2624
|
+
let _ = hn(e, g);
|
|
2628
2625
|
l.contact = { ...g };
|
|
2629
|
-
let v =
|
|
2626
|
+
let v = pn(l.release ? l.release.from * (.55 + .45 * (1 - Math.min(1, l.release.elapsed / Math.max(40, s.opts.fadeMs)))) : l.fade), y = l.release ? Math.min(1, l.release.elapsed / Math.max(40, s.opts.fadeMs)) : 0;
|
|
2630
2627
|
l.opacity = l.release ? (1 - y) ** 2 : l.opacity + (1 - l.opacity) * Math.min(1, r * Xt);
|
|
2631
2628
|
let b = Math.min(Math.min(e.w, e.h) * .9, s.opts.zone * (.7 + .6 * v)), x = l.previous, S = x ? Math.hypot(e.x - x.x, e.y - x.y) / Math.max(.001, r) : 0;
|
|
2632
2629
|
l.previous = {
|
|
2633
2630
|
x: e.x,
|
|
2634
2631
|
y: e.y
|
|
2635
2632
|
}, l.phase += Math.min(r, 1 / 24) * s.opts.flowSpeed * .12 * Math.min(1, S / 40);
|
|
2636
|
-
let C = (g.x + g.w / 2 - _.x) / Math.max(.001, Math.hypot(g.x + g.w / 2 - _.x, g.y + g.h / 2 - _.y)), w = (g.y + g.h / 2 - _.y) / Math.max(.001, Math.hypot(g.x + g.w / 2 - _.x, g.y + g.h / 2 - _.y)), T = 1 + Math.min(1.8, u / Math.max(8, 2 * b)), E =
|
|
2637
|
-
O ? (c.style.setProperty("mask-image", O), c.style.setProperty("-webkit-mask-image", O)) :
|
|
2638
|
-
let
|
|
2633
|
+
let C = (g.x + g.w / 2 - _.x) / Math.max(.001, Math.hypot(g.x + g.w / 2 - _.x, g.y + g.h / 2 - _.y)), w = (g.y + g.h / 2 - _.y) / Math.max(.001, Math.hypot(g.x + g.w / 2 - _.x, g.y + g.h / 2 - _.y)), T = 1 + Math.min(1.8, u / Math.max(8, 2 * b)), E = yn(c, n), D = d && u < Math.max(10, s.opts.blur * 2.5) ? pn(1 - u / Math.max(10, s.opts.blur * 2.5)) : l.fade, O = wn(E, _.x, _.y, b, l.fade, Math.max(D, m * .75));
|
|
2634
|
+
O ? (c.style.setProperty("mask-image", O), c.style.setProperty("-webkit-mask-image", O)) : cn(s);
|
|
2635
|
+
let k = Math.atan2(w, C) * 180 / Math.PI, A = {
|
|
2639
2636
|
id: s.id,
|
|
2640
|
-
src:
|
|
2641
|
-
neighborSrc: f ?
|
|
2637
|
+
src: on(c) ?? c.src,
|
|
2638
|
+
neighborSrc: f ? on(an(f)) : null,
|
|
2642
2639
|
image: E,
|
|
2643
2640
|
cx: _.x,
|
|
2644
2641
|
cy: _.y,
|
|
@@ -2646,7 +2643,7 @@ var On = class {
|
|
|
2646
2643
|
opacity: l.opacity,
|
|
2647
2644
|
phase: l.phase,
|
|
2648
2645
|
structure: v,
|
|
2649
|
-
angle:
|
|
2646
|
+
angle: k,
|
|
2650
2647
|
gravityX: C,
|
|
2651
2648
|
gravityY: w,
|
|
2652
2649
|
elongation: T,
|
|
@@ -2655,7 +2652,7 @@ var On = class {
|
|
|
2655
2652
|
options: s.opts,
|
|
2656
2653
|
mask: O
|
|
2657
2654
|
};
|
|
2658
|
-
i.push(
|
|
2655
|
+
i.push(A), a = a || !!l.release || Math.abs(h - l.fade) > .004 || l.previous === null;
|
|
2659
2656
|
}
|
|
2660
2657
|
return {
|
|
2661
2658
|
visuals: i,
|
|
@@ -2663,8 +2660,8 @@ var On = class {
|
|
|
2663
2660
|
};
|
|
2664
2661
|
}
|
|
2665
2662
|
};
|
|
2666
|
-
function
|
|
2667
|
-
let f = `lgm-${
|
|
2663
|
+
function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox: d }) {
|
|
2664
|
+
let f = `lgm-${En(u())}`, { blur: p, contrast: m, reach: h, fade: g, warp: _, mix: v, mixBlur: y, gravity: b, waviness: x } = s, S = {
|
|
2668
2665
|
x: r.x + r.w / 2,
|
|
2669
2666
|
y: r.y + r.h / 2
|
|
2670
2667
|
}, C = {
|
|
@@ -2673,7 +2670,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2673
2670
|
}, w = Math.hypot(r.w, r.h) / 2 * h * d, T = Math.hypot(i.w, i.h) / 2 * h * d, E = {
|
|
2674
2671
|
x: (S.x + C.x) / 2,
|
|
2675
2672
|
y: (S.y + C.y) / 2
|
|
2676
|
-
}, D = C.x - S.x, O = C.y - S.y,
|
|
2673
|
+
}, D = C.x - S.x, O = C.y - S.y, k = Math.max(.001, Math.hypot(D, O)), A = -O / k, j = D / k, ee = Math.max(0, (r.w + i.w) / 2 - Math.abs(D)), M = Math.max(0, (r.h + i.h) / 2 - Math.abs(O)), N = .5 * (ee * Math.abs(A) + M * Math.abs(j)) * d, P = Math.round(Math.atan2(j, A) * 180 / Math.PI), te = Math.round(v * d * 100) / 100, ne = Math.round((2 + (p - 2) * d) * 10) / 10, re = Math.round(_ * d * 10) / 10, ie = Math.round(ne * 2.5 * 10) / 10, ae = Math.round((.4 + (2 + p * .8) * d) * 10) / 10, oe = `translate(${r.x}, ${r.y})`, se = `translate(${i.x}, ${i.y})`;
|
|
2677
2674
|
return /* @__PURE__ */ n("svg", {
|
|
2678
2675
|
"aria-hidden": "true",
|
|
2679
2676
|
focusable: "false",
|
|
@@ -2723,7 +2720,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2723
2720
|
children: [
|
|
2724
2721
|
/* @__PURE__ */ t("feGaussianBlur", {
|
|
2725
2722
|
in: "SourceGraphic",
|
|
2726
|
-
stdDeviation:
|
|
2723
|
+
stdDeviation: ne,
|
|
2727
2724
|
result: "b"
|
|
2728
2725
|
}),
|
|
2729
2726
|
/* @__PURE__ */ t("feColorMatrix", {
|
|
@@ -2734,7 +2731,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2734
2731
|
}),
|
|
2735
2732
|
/* @__PURE__ */ t("feGaussianBlur", {
|
|
2736
2733
|
in: "SourceGraphic",
|
|
2737
|
-
stdDeviation:
|
|
2734
|
+
stdDeviation: ie,
|
|
2738
2735
|
result: "bc"
|
|
2739
2736
|
}),
|
|
2740
2737
|
/* @__PURE__ */ t("feComposite", {
|
|
@@ -2753,7 +2750,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2753
2750
|
/* @__PURE__ */ t("feDisplacementMap", {
|
|
2754
2751
|
in: "mix",
|
|
2755
2752
|
in2: "wn",
|
|
2756
|
-
scale:
|
|
2753
|
+
scale: re,
|
|
2757
2754
|
xChannelSelector: "R",
|
|
2758
2755
|
yChannelSelector: "G",
|
|
2759
2756
|
result: "warped"
|
|
@@ -2790,7 +2787,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2790
2787
|
height: "220%",
|
|
2791
2788
|
children: /* @__PURE__ */ t("feGaussianBlur", { stdDeviation: g })
|
|
2792
2789
|
}),
|
|
2793
|
-
|
|
2790
|
+
te > .01 ? /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ n("filter", {
|
|
2794
2791
|
id: `${f}-marble`,
|
|
2795
2792
|
x: "-25%",
|
|
2796
2793
|
y: "-25%",
|
|
@@ -2813,7 +2810,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2813
2810
|
/* @__PURE__ */ t("feDisplacementMap", {
|
|
2814
2811
|
in: "c",
|
|
2815
2812
|
in2: "n1",
|
|
2816
|
-
scale:
|
|
2813
|
+
scale: te * 90,
|
|
2817
2814
|
xChannelSelector: "R",
|
|
2818
2815
|
yChannelSelector: "G",
|
|
2819
2816
|
result: "d1"
|
|
@@ -2828,7 +2825,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2828
2825
|
/* @__PURE__ */ t("feDisplacementMap", {
|
|
2829
2826
|
in: "d1",
|
|
2830
2827
|
in2: "n2",
|
|
2831
|
-
scale:
|
|
2828
|
+
scale: te * 50,
|
|
2832
2829
|
xChannelSelector: "R",
|
|
2833
2830
|
yChannelSelector: "G",
|
|
2834
2831
|
result: "d2"
|
|
@@ -2852,7 +2849,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2852
2849
|
}),
|
|
2853
2850
|
/* @__PURE__ */ t("feGaussianBlur", {
|
|
2854
2851
|
in: "SourceGraphic",
|
|
2855
|
-
stdDeviation:
|
|
2852
|
+
stdDeviation: ne,
|
|
2856
2853
|
result: "mb"
|
|
2857
2854
|
}),
|
|
2858
2855
|
/* @__PURE__ */ t("feColorMatrix", {
|
|
@@ -2871,7 +2868,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2871
2868
|
/* @__PURE__ */ t("feDisplacementMap", {
|
|
2872
2869
|
in: "mg",
|
|
2873
2870
|
in2: "mwn",
|
|
2874
|
-
scale:
|
|
2871
|
+
scale: re,
|
|
2875
2872
|
xChannelSelector: "R",
|
|
2876
2873
|
yChannelSelector: "G",
|
|
2877
2874
|
result: "mshape"
|
|
@@ -2894,9 +2891,9 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2894
2891
|
children: /* @__PURE__ */ t("ellipse", {
|
|
2895
2892
|
cx: E.x,
|
|
2896
2893
|
cy: E.y,
|
|
2897
|
-
rx: (w + T) / 2 +
|
|
2894
|
+
rx: (w + T) / 2 + N,
|
|
2898
2895
|
ry: (w + T) / 2 * b,
|
|
2899
|
-
transform: `rotate(${
|
|
2896
|
+
transform: `rotate(${P}, ${E.x}, ${E.y})`,
|
|
2900
2897
|
fill: "#fff"
|
|
2901
2898
|
})
|
|
2902
2899
|
})
|
|
@@ -2907,7 +2904,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2907
2904
|
y: "-40%",
|
|
2908
2905
|
width: "180%",
|
|
2909
2906
|
height: "180%",
|
|
2910
|
-
children: /* @__PURE__ */ t("feGaussianBlur", { stdDeviation:
|
|
2907
|
+
children: /* @__PURE__ */ t("feGaussianBlur", { stdDeviation: ae })
|
|
2911
2908
|
}),
|
|
2912
2909
|
/* @__PURE__ */ n("mask", {
|
|
2913
2910
|
id: `${f}-ma`,
|
|
@@ -2919,7 +2916,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2919
2916
|
children: [/* @__PURE__ */ t("g", {
|
|
2920
2917
|
filter: `url(#${f}-edge)`,
|
|
2921
2918
|
children: /* @__PURE__ */ t("g", {
|
|
2922
|
-
transform:
|
|
2919
|
+
transform: oe,
|
|
2923
2920
|
children: /* @__PURE__ */ t("rect", {
|
|
2924
2921
|
width: r.w,
|
|
2925
2922
|
height: r.h,
|
|
@@ -2932,9 +2929,9 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2932
2929
|
children: /* @__PURE__ */ t("ellipse", {
|
|
2933
2930
|
cx: E.x,
|
|
2934
2931
|
cy: E.y,
|
|
2935
|
-
rx: T +
|
|
2932
|
+
rx: T + N,
|
|
2936
2933
|
ry: T,
|
|
2937
|
-
transform: `rotate(${
|
|
2934
|
+
transform: `rotate(${P}, ${E.x}, ${E.y})`,
|
|
2938
2935
|
fill: "#000"
|
|
2939
2936
|
})
|
|
2940
2937
|
})]
|
|
@@ -2949,7 +2946,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2949
2946
|
children: [/* @__PURE__ */ t("g", {
|
|
2950
2947
|
filter: `url(#${f}-edge)`,
|
|
2951
2948
|
children: /* @__PURE__ */ t("g", {
|
|
2952
|
-
transform:
|
|
2949
|
+
transform: se,
|
|
2953
2950
|
children: /* @__PURE__ */ t("rect", {
|
|
2954
2951
|
width: i.w,
|
|
2955
2952
|
height: i.h,
|
|
@@ -2962,9 +2959,9 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2962
2959
|
children: /* @__PURE__ */ t("ellipse", {
|
|
2963
2960
|
cx: E.x,
|
|
2964
2961
|
cy: E.y,
|
|
2965
|
-
rx: w +
|
|
2962
|
+
rx: w + N,
|
|
2966
2963
|
ry: w,
|
|
2967
|
-
transform: `rotate(${
|
|
2964
|
+
transform: `rotate(${P}, ${E.x}, ${E.y})`,
|
|
2968
2965
|
fill: "#000"
|
|
2969
2966
|
})
|
|
2970
2967
|
})]
|
|
@@ -2973,7 +2970,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2973
2970
|
/* @__PURE__ */ n("g", {
|
|
2974
2971
|
filter: `url(#${f}-goo)`,
|
|
2975
2972
|
children: [/* @__PURE__ */ t("g", {
|
|
2976
|
-
transform:
|
|
2973
|
+
transform: oe,
|
|
2977
2974
|
children: /* @__PURE__ */ t("rect", {
|
|
2978
2975
|
width: r.w,
|
|
2979
2976
|
height: r.h,
|
|
@@ -2981,7 +2978,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2981
2978
|
fill: `url(#${f}-pa)`
|
|
2982
2979
|
})
|
|
2983
2980
|
}), /* @__PURE__ */ t("g", {
|
|
2984
|
-
transform:
|
|
2981
|
+
transform: se,
|
|
2985
2982
|
children: /* @__PURE__ */ t("rect", {
|
|
2986
2983
|
width: i.w,
|
|
2987
2984
|
height: i.h,
|
|
@@ -2990,12 +2987,12 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2990
2987
|
})
|
|
2991
2988
|
})]
|
|
2992
2989
|
}),
|
|
2993
|
-
|
|
2990
|
+
te > .01 ? /* @__PURE__ */ t("g", {
|
|
2994
2991
|
mask: `url(#${f}-marblemask)`,
|
|
2995
2992
|
children: /* @__PURE__ */ n("g", {
|
|
2996
2993
|
filter: `url(#${f}-marble)`,
|
|
2997
2994
|
children: [/* @__PURE__ */ t("g", {
|
|
2998
|
-
transform:
|
|
2995
|
+
transform: oe,
|
|
2999
2996
|
children: /* @__PURE__ */ t("rect", {
|
|
3000
2997
|
width: r.w,
|
|
3001
2998
|
height: r.h,
|
|
@@ -3003,7 +3000,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
3003
3000
|
fill: `url(#${f}-pa)`
|
|
3004
3001
|
})
|
|
3005
3002
|
}), /* @__PURE__ */ t("g", {
|
|
3006
|
-
transform:
|
|
3003
|
+
transform: se,
|
|
3007
3004
|
children: /* @__PURE__ */ t("rect", {
|
|
3008
3005
|
width: i.w,
|
|
3009
3006
|
height: i.h,
|
|
@@ -3016,7 +3013,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
3016
3013
|
/* @__PURE__ */ t("g", {
|
|
3017
3014
|
mask: `url(#${f}-ma)`,
|
|
3018
3015
|
children: /* @__PURE__ */ t("g", {
|
|
3019
|
-
transform:
|
|
3016
|
+
transform: oe,
|
|
3020
3017
|
children: /* @__PURE__ */ t("rect", {
|
|
3021
3018
|
width: r.w,
|
|
3022
3019
|
height: r.h,
|
|
@@ -3028,7 +3025,7 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
3028
3025
|
/* @__PURE__ */ t("g", {
|
|
3029
3026
|
mask: `url(#${f}-mb)`,
|
|
3030
3027
|
children: /* @__PURE__ */ t("g", {
|
|
3031
|
-
transform:
|
|
3028
|
+
transform: se,
|
|
3032
3029
|
children: /* @__PURE__ */ t("rect", {
|
|
3033
3030
|
width: i.w,
|
|
3034
3031
|
height: i.h,
|
|
@@ -3040,10 +3037,10 @@ function kn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
3040
3037
|
]
|
|
3041
3038
|
});
|
|
3042
3039
|
}
|
|
3043
|
-
function
|
|
3044
|
-
let i = `lgd-${
|
|
3040
|
+
function kn({ visuals: r }) {
|
|
3041
|
+
let i = `lgd-${En(u())}`;
|
|
3045
3042
|
return /* @__PURE__ */ t(e, { children: r.map((e) => {
|
|
3046
|
-
let r = `${i}-${
|
|
3043
|
+
let r = `${i}-${En(e.id)}`, a = `${r}-pattern`, o = `${r}-mask`, s = r + "-neighbor", c = e.image, l = e.elongation > 1.001 ? `translate(${Y(e.cx)} ${Y(e.cy)}) rotate(${Y(e.angle)}) scale(${Y(e.elongation, 3)} 1) rotate(${-Y(e.angle)}) translate(${Y(-e.cx)} ${Y(-e.cy)})` : void 0, u = e.d * e.elongation + e.options.blur * 2.5 + e.options.warp + e.options.gravity * .5 + 8, d = Math.min(.3, Math.max(.01, e.options.warpFreq / (e.options.zone * 1.1))), f = Cn(e.cx, e.cy, e.gravityX, e.gravityY, e.d, e.options.pull * e.structure, e.options.gravity * e.structure, e.elongation, e.options.taper);
|
|
3047
3044
|
return /* @__PURE__ */ n("g", {
|
|
3048
3045
|
"data-liquid-gooey-dissolve": "",
|
|
3049
3046
|
children: [
|
|
@@ -3175,7 +3172,7 @@ function An({ visuals: r }) {
|
|
|
3175
3172
|
/* @__PURE__ */ t("feColorMatrix", {
|
|
3176
3173
|
in: "erosion-noise",
|
|
3177
3174
|
type: "matrix",
|
|
3178
|
-
values:
|
|
3175
|
+
values: Tn(c),
|
|
3179
3176
|
result: "erosion"
|
|
3180
3177
|
}),
|
|
3181
3178
|
/* @__PURE__ */ t("feComposite", {
|
|
@@ -3247,10 +3244,10 @@ function An({ visuals: r }) {
|
|
|
3247
3244
|
}, e.id);
|
|
3248
3245
|
}) });
|
|
3249
3246
|
}
|
|
3250
|
-
function
|
|
3251
|
-
let [i, a] = m(
|
|
3247
|
+
function An({ registry: e, getGroup: r }) {
|
|
3248
|
+
let [i, a] = m(fn);
|
|
3252
3249
|
return d(() => {
|
|
3253
|
-
let t = new
|
|
3250
|
+
let t = new Dn({
|
|
3254
3251
|
registry: e,
|
|
3255
3252
|
getGroup: r,
|
|
3256
3253
|
onState: a
|
|
@@ -3272,42 +3269,42 @@ function jn({ registry: e, getGroup: r }) {
|
|
|
3272
3269
|
overflow: "visible",
|
|
3273
3270
|
pointerEvents: "none"
|
|
3274
3271
|
},
|
|
3275
|
-
children: [i.melt ? /* @__PURE__ */ t(
|
|
3272
|
+
children: [i.melt ? /* @__PURE__ */ t(On, {
|
|
3276
3273
|
...i.melt,
|
|
3277
3274
|
width: i.width,
|
|
3278
3275
|
height: i.height
|
|
3279
|
-
}) : null, i.dissolves.length > 0 ? /* @__PURE__ */ t(
|
|
3276
|
+
}) : null, i.dissolves.length > 0 ? /* @__PURE__ */ t(kn, { visuals: i.dissolves }) : null]
|
|
3280
3277
|
});
|
|
3281
3278
|
}
|
|
3282
3279
|
//#endregion
|
|
3283
3280
|
//#region src/LiquidGroup.tsx
|
|
3284
|
-
var
|
|
3285
|
-
function
|
|
3286
|
-
let e = c(
|
|
3281
|
+
var jn = i(null);
|
|
3282
|
+
function Mn() {
|
|
3283
|
+
let e = c(jn);
|
|
3287
3284
|
if (!e) throw Error("<LiquidGroup.Item> must be rendered inside <LiquidGroup>.");
|
|
3288
3285
|
return e;
|
|
3289
3286
|
}
|
|
3290
|
-
function
|
|
3287
|
+
function Nn(e) {
|
|
3291
3288
|
return e.replace(/[^a-zA-Z0-9_-]/g, "");
|
|
3292
3289
|
}
|
|
3293
|
-
function
|
|
3290
|
+
function Pn(e, t) {
|
|
3294
3291
|
return Number.isFinite(e) ? e : t;
|
|
3295
3292
|
}
|
|
3296
|
-
function
|
|
3293
|
+
function Fn(e, t) {
|
|
3297
3294
|
if (!e) return e;
|
|
3298
3295
|
let n = /^var\((--[\w-]+)\)$/.exec(e.trim());
|
|
3299
3296
|
if (!n || !t) return e;
|
|
3300
3297
|
let r = t.ownerDocument.defaultView;
|
|
3301
3298
|
return r && r.getComputedStyle(t).getPropertyValue(n[1] ?? "").trim() || e;
|
|
3302
3299
|
}
|
|
3303
|
-
function
|
|
3304
|
-
let r =
|
|
3300
|
+
function In(e, t, n) {
|
|
3301
|
+
let r = Fn(e, t), i = Number.parseFloat(r ?? "");
|
|
3305
3302
|
return Number.isFinite(i) ? i : n;
|
|
3306
3303
|
}
|
|
3307
|
-
function
|
|
3304
|
+
function Ln(...e) {
|
|
3308
3305
|
return e.filter(Boolean).join(" ") || void 0;
|
|
3309
3306
|
}
|
|
3310
|
-
function
|
|
3307
|
+
function Rn(e) {
|
|
3311
3308
|
let t = { ...e };
|
|
3312
3309
|
for (let e of [
|
|
3313
3310
|
"children",
|
|
@@ -3326,56 +3323,56 @@ function zn(e) {
|
|
|
3326
3323
|
]) delete t[e];
|
|
3327
3324
|
return t;
|
|
3328
3325
|
}
|
|
3329
|
-
function
|
|
3326
|
+
function zn() {
|
|
3330
3327
|
return typeof window > "u" || typeof window.matchMedia != "function" ? null : window.matchMedia("(prefers-reduced-motion: reduce)");
|
|
3331
3328
|
}
|
|
3332
|
-
function
|
|
3333
|
-
let [e, t] = m(() =>
|
|
3329
|
+
function Bn() {
|
|
3330
|
+
let [e, t] = m(() => zn()?.matches ?? !1);
|
|
3334
3331
|
return l(() => {
|
|
3335
|
-
let e =
|
|
3332
|
+
let e = zn();
|
|
3336
3333
|
if (!e) return;
|
|
3337
3334
|
let n = (e) => t(e.matches);
|
|
3338
3335
|
return t(e.matches), e.addEventListener("change", n), () => e.removeEventListener("change", n);
|
|
3339
3336
|
}, []), e;
|
|
3340
3337
|
}
|
|
3341
|
-
function
|
|
3338
|
+
function Vn(e) {
|
|
3342
3339
|
return e.reduce((e, t) => Math.max(e, Math.max(Math.abs(t.x), Math.abs(t.y)) + t.blur * 1.5 + Math.max(0, t.spread)), 0);
|
|
3343
3340
|
}
|
|
3344
|
-
var
|
|
3341
|
+
var Hn = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-surface, var(--game-ui-panel-strong))", filterPadding: a = 24, shadow: o, stroke: c, waviness: h, wavinessFreq: g, wavinessClamp: _, motion: v = "auto", className: y, style: b, children: x, ...S }, C) {
|
|
3345
3342
|
let w = p(null), [T, E] = m(null), [D, O] = m({
|
|
3346
3343
|
w: 0,
|
|
3347
3344
|
h: 0
|
|
3348
|
-
}), [
|
|
3345
|
+
}), [k, A] = m({
|
|
3349
3346
|
waviness: Pe.waviness,
|
|
3350
3347
|
wavinessFreq: Pe.wavinessFreq
|
|
3351
|
-
}), [
|
|
3352
|
-
|
|
3353
|
-
let
|
|
3354
|
-
|
|
3355
|
-
let
|
|
3348
|
+
}), [j, ee] = m(0), M = p(0), N = Bn(), P = v === "reduced" || N, [te, ne] = m(P ? "reduced" : "static"), re = Math.max(0, Pn(e, 6)), ie = Math.max(1, Pn(r, 18)), ae = Math.max(0, Pn(a, 24)), oe = Math.max(0, Pn(h ?? k.waviness, Pe.waviness)), se = _ !== !1 && Math.max(0, Pn(_ ?? .3, ze)), ce = Be(oe, D.w > 0 && D.h > 0 ? Math.min(D.w, D.h) : 0, se), le = Math.max(0, Pn(g ?? k.wavinessFreq, Pe.wavinessFreq)), F = Fn(o, w.current), ue = Fn(c, w.current), de = f(() => Kt(F), [F]), fe = f(() => qt(ue), [ue]), pe = Math.ceil(re * 3 + ae + Vn(de) + (fe ? fe.width : 0) + ce + (ce > 0 ? Math.ceil(Ne * 3) : 0)), me = p(pe);
|
|
3349
|
+
me.current = pe;
|
|
3350
|
+
let I = Math.ceil(pe + j), he = p(I);
|
|
3351
|
+
he.current = I;
|
|
3352
|
+
let ge = `liquid-gooey-${Nn(u())}`, L = s((e) => {
|
|
3356
3353
|
w.current = e, typeof C == "function" ? C(e) : C && (C.current = e);
|
|
3357
|
-
}, [C]),
|
|
3354
|
+
}, [C]), R = s((e) => E(e), []);
|
|
3358
3355
|
d(() => {
|
|
3359
3356
|
let e = w.current;
|
|
3360
3357
|
if (!e) return;
|
|
3361
3358
|
let t = {
|
|
3362
|
-
waviness: Math.max(0, h === void 0 ?
|
|
3363
|
-
wavinessFreq: Math.max(0, g === void 0 ?
|
|
3359
|
+
waviness: Math.max(0, h === void 0 ? In(z.waviness, e, Pe.waviness) : Pn(h, Pe.waviness)),
|
|
3360
|
+
wavinessFreq: Math.max(0, g === void 0 ? In(z.wavinessFreq, e, Pe.wavinessFreq) : Pn(g, Pe.wavinessFreq))
|
|
3364
3361
|
};
|
|
3365
|
-
|
|
3362
|
+
A((e) => e.waviness === t.waviness && e.wavinessFreq === t.wavinessFreq ? e : t);
|
|
3366
3363
|
}, [h, g]);
|
|
3367
|
-
let
|
|
3364
|
+
let B = f(() => new Ut({
|
|
3368
3365
|
getGroup: () => w.current,
|
|
3369
3366
|
getFilterArea: () => {
|
|
3370
3367
|
let e = w.current;
|
|
3371
|
-
return e ? (e.offsetWidth + (
|
|
3368
|
+
return e ? (e.offsetWidth + (me.current + M.current) * 2) * (e.offsetHeight + (me.current + M.current) * 2) : 0;
|
|
3372
3369
|
},
|
|
3373
|
-
onModeChange:
|
|
3370
|
+
onModeChange: ne,
|
|
3374
3371
|
onFeaturePaddingChange: (e) => {
|
|
3375
|
-
|
|
3372
|
+
M.current = e, ee((t) => Math.abs(t - e) < .5 ? t : e);
|
|
3376
3373
|
},
|
|
3377
3374
|
follow: v === "follow"
|
|
3378
|
-
}), [v]),
|
|
3375
|
+
}), [v]), V = f(() => ln(), []);
|
|
3379
3376
|
d(() => {
|
|
3380
3377
|
let e = w.current;
|
|
3381
3378
|
if (!e) return;
|
|
@@ -3384,24 +3381,24 @@ var Un = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-su
|
|
|
3384
3381
|
w: e.offsetWidth,
|
|
3385
3382
|
h: e.offsetHeight
|
|
3386
3383
|
};
|
|
3387
|
-
O((e) => e.w === t.w && e.h === t.h ? e : t),
|
|
3384
|
+
O((e) => e.w === t.w && e.h === t.h ? e : t), B.setFilterArea((t.w + he.current * 2) * (t.h + he.current * 2));
|
|
3388
3385
|
};
|
|
3389
3386
|
if (t(), typeof ResizeObserver > "u") return;
|
|
3390
3387
|
let n = new ResizeObserver(t);
|
|
3391
3388
|
return n.observe(e), () => n.disconnect();
|
|
3392
|
-
}, [
|
|
3393
|
-
|
|
3394
|
-
}, [
|
|
3395
|
-
let
|
|
3389
|
+
}, [B, I]), l(() => {
|
|
3390
|
+
B.setReducedMotion(P);
|
|
3391
|
+
}, [B, P]), l(() => () => B.dispose(), [B]);
|
|
3392
|
+
let _e = Math.max(1, D.w), ve = Math.max(1, D.h), H = Ln("game-ui-liquid-group", y);
|
|
3396
3393
|
return /* @__PURE__ */ n("div", {
|
|
3397
3394
|
...S,
|
|
3398
|
-
ref:
|
|
3395
|
+
ref: L,
|
|
3399
3396
|
className: H,
|
|
3400
|
-
"data-liquid-filter-area": Math.round((D.w +
|
|
3397
|
+
"data-liquid-filter-area": Math.round((D.w + I * 2) * (D.h + I * 2)),
|
|
3401
3398
|
"data-liquid-filter-budget": we,
|
|
3402
|
-
"data-liquid-feature-padding": Math.round(
|
|
3403
|
-
"data-liquid-motion":
|
|
3404
|
-
"data-liquid-waviness": Math.round(
|
|
3399
|
+
"data-liquid-feature-padding": Math.round(j * 10) / 10,
|
|
3400
|
+
"data-liquid-motion": te,
|
|
3401
|
+
"data-liquid-waviness": Math.round(ce * 100) / 100,
|
|
3405
3402
|
style: b,
|
|
3406
3403
|
children: [
|
|
3407
3404
|
/* @__PURE__ */ n("svg", {
|
|
@@ -3409,39 +3406,39 @@ var Un = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-su
|
|
|
3409
3406
|
className: "game-ui-liquid-silhouette",
|
|
3410
3407
|
"data-liquid-gooey-silhouette": "",
|
|
3411
3408
|
focusable: "false",
|
|
3412
|
-
viewBox: `0 0 ${
|
|
3409
|
+
viewBox: `0 0 ${_e} ${ve}`,
|
|
3413
3410
|
children: [/* @__PURE__ */ t("defs", { children: /* @__PURE__ */ t("filter", {
|
|
3414
3411
|
colorInterpolationFilters: "sRGB",
|
|
3415
3412
|
filterUnits: "userSpaceOnUse",
|
|
3416
|
-
height: ve +
|
|
3417
|
-
id:
|
|
3418
|
-
width:
|
|
3419
|
-
x: -
|
|
3420
|
-
y: -
|
|
3413
|
+
height: ve + I * 2,
|
|
3414
|
+
id: ge,
|
|
3415
|
+
width: _e + I * 2,
|
|
3416
|
+
x: -I,
|
|
3417
|
+
y: -I,
|
|
3421
3418
|
children: /* @__PURE__ */ t(Re, {
|
|
3422
|
-
blur:
|
|
3423
|
-
contrast:
|
|
3424
|
-
shadows:
|
|
3425
|
-
stroke:
|
|
3426
|
-
waviness:
|
|
3427
|
-
wavinessFreq:
|
|
3419
|
+
blur: re,
|
|
3420
|
+
contrast: ie,
|
|
3421
|
+
shadows: de,
|
|
3422
|
+
stroke: fe,
|
|
3423
|
+
waviness: ce,
|
|
3424
|
+
wavinessFreq: le
|
|
3428
3425
|
})
|
|
3429
3426
|
}) }), /* @__PURE__ */ t("g", {
|
|
3430
|
-
ref:
|
|
3427
|
+
ref: R,
|
|
3431
3428
|
fill: i,
|
|
3432
|
-
filter: `url(#${
|
|
3429
|
+
filter: `url(#${ge})`
|
|
3433
3430
|
})]
|
|
3434
3431
|
}),
|
|
3435
|
-
/* @__PURE__ */ t(
|
|
3436
|
-
registry:
|
|
3432
|
+
/* @__PURE__ */ t(An, {
|
|
3433
|
+
registry: V,
|
|
3437
3434
|
getGroup: () => w.current
|
|
3438
3435
|
}),
|
|
3439
|
-
/* @__PURE__ */ t(
|
|
3436
|
+
/* @__PURE__ */ t(jn.Provider, {
|
|
3440
3437
|
value: {
|
|
3441
3438
|
portal: T,
|
|
3442
|
-
engine:
|
|
3439
|
+
engine: B,
|
|
3443
3440
|
follow: v === "follow",
|
|
3444
|
-
imageMelt:
|
|
3441
|
+
imageMelt: V
|
|
3445
3442
|
},
|
|
3446
3443
|
children: /* @__PURE__ */ t("div", {
|
|
3447
3444
|
className: "game-ui-liquid-content",
|
|
@@ -3450,24 +3447,24 @@ var Un = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-su
|
|
|
3450
3447
|
})
|
|
3451
3448
|
]
|
|
3452
3449
|
});
|
|
3453
|
-
}),
|
|
3454
|
-
let { portal: D, engine: O, follow:
|
|
3455
|
-
let e = r === "morph" || r === "bend" ? r : void 0, t = e === "bend", n = r === "bend" ||
|
|
3450
|
+
}), Un = a(function({ effect: r, melt: i, dissolve: a, x: o = 0, y: c = 0, scale: m = 1, transition: g, delay: _, radius: v, morph: y, bend: b, observe: x, className: S, style: C, children: w, ...T }, E) {
|
|
3451
|
+
let { portal: D, engine: O, follow: k, imageMelt: A } = Mn(), j = `liquid-item-${Nn(u())}`, ee = p(null), M = p(null), N = p(null), P = p(null), te = JSON.stringify(a ?? null), ne = a !== void 0 && a !== !1, re = f(() => {
|
|
3452
|
+
let e = r === "morph" || r === "bend" ? r : void 0, t = e === "bend", n = r === "bend" || k && y === void 0 && r !== "morph" || ne && y === void 0 && r !== "morph" ? void 0 : y ?? {}, i = {
|
|
3456
3453
|
...e === void 0 ? {} : { effect: e },
|
|
3457
3454
|
...n === void 0 ? {} : { morph: n },
|
|
3458
3455
|
...b === void 0 ? {} : { bend: b },
|
|
3459
3456
|
...x === void 0 && !t ? {} : { observe: t || x },
|
|
3460
|
-
x:
|
|
3461
|
-
y:
|
|
3462
|
-
scale:
|
|
3457
|
+
x: Pn(o, 0),
|
|
3458
|
+
y: Pn(c, 0),
|
|
3459
|
+
scale: Pn(m, 1)
|
|
3463
3460
|
};
|
|
3464
3461
|
return g !== void 0 && (i.transition = g), _ !== void 0 && (i.delay = _), v !== void 0 && (i.radius = v), i;
|
|
3465
3462
|
}, [
|
|
3466
3463
|
b,
|
|
3467
3464
|
_,
|
|
3468
3465
|
r,
|
|
3469
|
-
|
|
3470
|
-
|
|
3466
|
+
k,
|
|
3467
|
+
ne,
|
|
3471
3468
|
y,
|
|
3472
3469
|
x,
|
|
3473
3470
|
v,
|
|
@@ -3476,66 +3473,66 @@ var Un = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-su
|
|
|
3476
3473
|
o,
|
|
3477
3474
|
c
|
|
3478
3475
|
]);
|
|
3479
|
-
|
|
3480
|
-
let
|
|
3481
|
-
|
|
3476
|
+
N.current === null && (N.current = re);
|
|
3477
|
+
let ie = s((e) => {
|
|
3478
|
+
ee.current = e, typeof E == "function" ? E(e) : E && (E.current = e);
|
|
3482
3479
|
}, [E]);
|
|
3483
3480
|
return d(() => {
|
|
3484
|
-
let e =
|
|
3485
|
-
if (!(!D || !e || !t || !
|
|
3486
|
-
id:
|
|
3481
|
+
let e = ee.current, t = M.current;
|
|
3482
|
+
if (!(!D || !e || !t || !N.current)) return O.register({
|
|
3483
|
+
id: j,
|
|
3487
3484
|
host: e,
|
|
3488
3485
|
blob: t,
|
|
3489
|
-
config:
|
|
3486
|
+
config: N.current
|
|
3490
3487
|
});
|
|
3491
3488
|
}, [
|
|
3492
3489
|
O,
|
|
3493
|
-
|
|
3490
|
+
j,
|
|
3494
3491
|
D
|
|
3495
3492
|
]), d(() => {
|
|
3496
|
-
O.update(
|
|
3493
|
+
O.update(j, re);
|
|
3497
3494
|
}, [
|
|
3498
|
-
|
|
3495
|
+
re,
|
|
3499
3496
|
O,
|
|
3500
|
-
|
|
3497
|
+
j
|
|
3501
3498
|
]), d(() => () => {
|
|
3502
|
-
|
|
3503
|
-
}, [
|
|
3499
|
+
P.current?.unregister(), P.current = null;
|
|
3500
|
+
}, [A]), d(() => {
|
|
3504
3501
|
if (r === "move" || a === void 0 || a === !1) {
|
|
3505
|
-
|
|
3502
|
+
P.current?.unregister(), P.current = null;
|
|
3506
3503
|
return;
|
|
3507
3504
|
}
|
|
3508
|
-
let e =
|
|
3505
|
+
let e = ee.current;
|
|
3509
3506
|
if (e) {
|
|
3510
|
-
if (
|
|
3511
|
-
|
|
3507
|
+
if (P.current) {
|
|
3508
|
+
P.current.update(a);
|
|
3512
3509
|
return;
|
|
3513
3510
|
}
|
|
3514
|
-
|
|
3511
|
+
P.current = un(A, e, a);
|
|
3515
3512
|
}
|
|
3516
3513
|
}, [
|
|
3517
|
-
|
|
3514
|
+
te,
|
|
3518
3515
|
r,
|
|
3519
|
-
|
|
3520
|
-
]), l(() => {}, [r,
|
|
3516
|
+
A
|
|
3517
|
+
]), l(() => {}, [r, ne]), d(() => {}, []), /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ t("div", {
|
|
3521
3518
|
...T,
|
|
3522
|
-
ref:
|
|
3523
|
-
className:
|
|
3519
|
+
ref: ie,
|
|
3520
|
+
className: Ln("game-ui-liquid-item", S),
|
|
3524
3521
|
style: C,
|
|
3525
3522
|
children: w
|
|
3526
3523
|
}), D ? h(/* @__PURE__ */ t("path", {
|
|
3527
|
-
ref:
|
|
3524
|
+
ref: M,
|
|
3528
3525
|
d: "",
|
|
3529
3526
|
"data-liquid-gooey-blob": ""
|
|
3530
3527
|
}), D) : null] });
|
|
3531
|
-
}),
|
|
3532
|
-
let { imageMelt: r } =
|
|
3533
|
-
if (e.effect !== "melt") return /* @__PURE__ */ t(
|
|
3528
|
+
}), Wn = a(function(e, n) {
|
|
3529
|
+
let { imageMelt: r } = Mn();
|
|
3530
|
+
if (e.effect !== "melt") return /* @__PURE__ */ t(Un, {
|
|
3534
3531
|
...e,
|
|
3535
3532
|
ref: n
|
|
3536
3533
|
});
|
|
3537
|
-
let i =
|
|
3538
|
-
return delete o.src, /* @__PURE__ */ t(
|
|
3534
|
+
let i = Rn(e), a = e.children, o = { ...e.melt ?? {} }, s = o.src;
|
|
3535
|
+
return delete o.src, /* @__PURE__ */ t(dn, {
|
|
3539
3536
|
...i,
|
|
3540
3537
|
registry: r,
|
|
3541
3538
|
children: a,
|
|
@@ -3543,10 +3540,10 @@ var Un = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-su
|
|
|
3543
3540
|
...s === void 0 ? {} : { src: s },
|
|
3544
3541
|
...n === void 0 ? {} : { forwardedRef: n }
|
|
3545
3542
|
});
|
|
3546
|
-
}),
|
|
3543
|
+
}), Gn = Object.assign(Hn, { Item: Wn });
|
|
3547
3544
|
//#endregion
|
|
3548
3545
|
//#region src/GameCallout.tsx
|
|
3549
|
-
function
|
|
3546
|
+
function Kn({ heading: e, children: r, tone: i = "info", className: a, ...o }) {
|
|
3550
3547
|
return /* @__PURE__ */ n("div", {
|
|
3551
3548
|
className: [
|
|
3552
3549
|
"game-ui-callout",
|
|
@@ -3567,7 +3564,7 @@ function qn({ heading: e, children: r, tone: i = "info", className: a, ...o }) {
|
|
|
3567
3564
|
}
|
|
3568
3565
|
//#endregion
|
|
3569
3566
|
//#region src/GameDialog.tsx
|
|
3570
|
-
function
|
|
3567
|
+
function qn({ children: e, className: r, title: i }) {
|
|
3571
3568
|
let a = u();
|
|
3572
3569
|
return /* @__PURE__ */ n("section", {
|
|
3573
3570
|
"aria-labelledby": a,
|
|
@@ -3585,7 +3582,7 @@ function Jn({ children: e, className: r, title: i }) {
|
|
|
3585
3582
|
}
|
|
3586
3583
|
//#endregion
|
|
3587
3584
|
//#region src/GameHistoryPanel.tsx
|
|
3588
|
-
function
|
|
3585
|
+
function Jn({ entries: e, label: r }) {
|
|
3589
3586
|
return /* @__PURE__ */ t("section", {
|
|
3590
3587
|
"aria-label": r,
|
|
3591
3588
|
className: "game-ui-history",
|
|
@@ -3601,7 +3598,7 @@ function Yn({ entries: e, label: r }) {
|
|
|
3601
3598
|
}
|
|
3602
3599
|
//#endregion
|
|
3603
3600
|
//#region src/GameHudActions.tsx
|
|
3604
|
-
function
|
|
3601
|
+
function Yn({ children: e, className: n, label: r, ...i }) {
|
|
3605
3602
|
return /* @__PURE__ */ t("nav", {
|
|
3606
3603
|
"aria-label": r,
|
|
3607
3604
|
className: ["game-ui-hud-actions", n].filter(Boolean).join(" "),
|
|
@@ -3621,7 +3618,7 @@ function X({ children: e, className: r, title: i, tone: a = "default", ...o }) {
|
|
|
3621
3618
|
children: [i ? /* @__PURE__ */ t("h3", { children: i }) : null, e]
|
|
3622
3619
|
});
|
|
3623
3620
|
}
|
|
3624
|
-
function
|
|
3621
|
+
function Xn({ children: e, className: n, label: r, type: i = "button", ...a }) {
|
|
3625
3622
|
return /* @__PURE__ */ t("button", {
|
|
3626
3623
|
"aria-label": r,
|
|
3627
3624
|
className: ["game-ui-icon-button", n].filter(Boolean).join(" "),
|
|
@@ -3630,7 +3627,7 @@ function Zn({ children: e, className: n, label: r, type: i = "button", ...a }) {
|
|
|
3630
3627
|
children: e
|
|
3631
3628
|
});
|
|
3632
3629
|
}
|
|
3633
|
-
function
|
|
3630
|
+
function Zn({ children: e, label: i }) {
|
|
3634
3631
|
let a = u();
|
|
3635
3632
|
return /* @__PURE__ */ n("span", {
|
|
3636
3633
|
className: "game-ui-tooltip",
|
|
@@ -3641,7 +3638,7 @@ function Qn({ children: e, label: i }) {
|
|
|
3641
3638
|
})]
|
|
3642
3639
|
});
|
|
3643
3640
|
}
|
|
3644
|
-
function
|
|
3641
|
+
function Qn({ activeId: e, id: n, onSelect: r, tabs: i }) {
|
|
3645
3642
|
let a = u(), o = n ?? a;
|
|
3646
3643
|
return /* @__PURE__ */ t("div", {
|
|
3647
3644
|
className: "game-ui-tabs",
|
|
@@ -3681,10 +3678,10 @@ function $n({ activeId: e, id: n, onSelect: r, tabs: i }) {
|
|
|
3681
3678
|
}, n.id))
|
|
3682
3679
|
});
|
|
3683
3680
|
}
|
|
3684
|
-
function
|
|
3681
|
+
function $n(e, t) {
|
|
3685
3682
|
return e.x === t.x && e.y === t.y && e.width === t.width && e.height === t.height;
|
|
3686
3683
|
}
|
|
3687
|
-
function
|
|
3684
|
+
function er({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
3688
3685
|
let o = p(null), s = p([]), [c, l] = m({
|
|
3689
3686
|
x: 0,
|
|
3690
3687
|
y: 0,
|
|
@@ -3701,7 +3698,7 @@ function tr({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3701
3698
|
width: r.width,
|
|
3702
3699
|
height: r.height
|
|
3703
3700
|
};
|
|
3704
|
-
l((e) =>
|
|
3701
|
+
l((e) => $n(e, i) ? e : i);
|
|
3705
3702
|
};
|
|
3706
3703
|
if (n(), typeof ResizeObserver > "u") return;
|
|
3707
3704
|
let r = new ResizeObserver(n);
|
|
@@ -3716,7 +3713,7 @@ function tr({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3716
3713
|
className: "game-ui-segmented",
|
|
3717
3714
|
role: "group",
|
|
3718
3715
|
children: [
|
|
3719
|
-
/* @__PURE__ */ t(
|
|
3716
|
+
/* @__PURE__ */ t(Gn, {
|
|
3720
3717
|
"aria-hidden": "true",
|
|
3721
3718
|
className: "game-ui-segmented-surface",
|
|
3722
3719
|
fill: "var(--game-ui-surface-raised)",
|
|
@@ -3727,7 +3724,7 @@ function tr({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3727
3724
|
pointerEvents: "none",
|
|
3728
3725
|
position: "absolute"
|
|
3729
3726
|
},
|
|
3730
|
-
children: /* @__PURE__ */ t(
|
|
3727
|
+
children: /* @__PURE__ */ t(Gn.Item, {
|
|
3731
3728
|
style: {
|
|
3732
3729
|
borderRadius: "var(--game-ui-radius-control)",
|
|
3733
3730
|
inset: 0,
|
|
@@ -3736,7 +3733,7 @@ function tr({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3736
3733
|
children: null
|
|
3737
3734
|
})
|
|
3738
3735
|
}),
|
|
3739
|
-
c.width > 0 && c.height > 0 ? /* @__PURE__ */ t(
|
|
3736
|
+
c.width > 0 && c.height > 0 ? /* @__PURE__ */ t(Gn, {
|
|
3740
3737
|
"aria-hidden": "true",
|
|
3741
3738
|
className: "game-ui-segmented-follow",
|
|
3742
3739
|
fill: "var(--game-ui-secondary)",
|
|
@@ -3747,7 +3744,7 @@ function tr({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3747
3744
|
pointerEvents: "none",
|
|
3748
3745
|
position: "absolute"
|
|
3749
3746
|
},
|
|
3750
|
-
children: /* @__PURE__ */ t(
|
|
3747
|
+
children: /* @__PURE__ */ t(Gn.Item, {
|
|
3751
3748
|
"aria-hidden": "true",
|
|
3752
3749
|
style: {
|
|
3753
3750
|
borderRadius: "var(--game-ui-radius-control)",
|
|
@@ -3776,7 +3773,7 @@ function tr({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3776
3773
|
]
|
|
3777
3774
|
});
|
|
3778
3775
|
}
|
|
3779
|
-
function
|
|
3776
|
+
function tr({ label: e, max: r, min: i, onChange: a, value: o }) {
|
|
3780
3777
|
return /* @__PURE__ */ n("label", {
|
|
3781
3778
|
className: "game-ui-slider",
|
|
3782
3779
|
children: [/* @__PURE__ */ t("span", { children: e }), /* @__PURE__ */ t("input", {
|
|
@@ -3790,7 +3787,7 @@ function nr({ label: e, max: r, min: i, onChange: a, value: o }) {
|
|
|
3790
3787
|
})]
|
|
3791
3788
|
});
|
|
3792
3789
|
}
|
|
3793
|
-
function
|
|
3790
|
+
function nr({ checked: e, disabled: r, label: i, onClick: a }) {
|
|
3794
3791
|
return /* @__PURE__ */ n("button", {
|
|
3795
3792
|
"aria-checked": e,
|
|
3796
3793
|
className: "game-ui-toggle",
|
|
@@ -3804,7 +3801,7 @@ function rr({ checked: e, disabled: r, label: i, onClick: a }) {
|
|
|
3804
3801
|
})]
|
|
3805
3802
|
});
|
|
3806
3803
|
}
|
|
3807
|
-
function
|
|
3804
|
+
function rr({ items: e, label: n, onSelect: r }) {
|
|
3808
3805
|
return /* @__PURE__ */ t("div", {
|
|
3809
3806
|
"aria-label": n,
|
|
3810
3807
|
className: "game-ui-radial-menu",
|
|
@@ -3819,7 +3816,7 @@ function ir({ items: e, label: n, onSelect: r }) {
|
|
|
3819
3816
|
}, e.id))
|
|
3820
3817
|
});
|
|
3821
3818
|
}
|
|
3822
|
-
function
|
|
3819
|
+
function ir({ children: e, tone: n = "info" }) {
|
|
3823
3820
|
return /* @__PURE__ */ t("div", {
|
|
3824
3821
|
className: "game-ui-toast",
|
|
3825
3822
|
"data-toast-tone": n,
|
|
@@ -3827,7 +3824,7 @@ function ar({ children: e, tone: n = "info" }) {
|
|
|
3827
3824
|
children: e
|
|
3828
3825
|
});
|
|
3829
3826
|
}
|
|
3830
|
-
function
|
|
3827
|
+
function ar({ actionLabel: e, children: r, title: i }) {
|
|
3831
3828
|
return /* @__PURE__ */ n("section", {
|
|
3832
3829
|
"aria-label": i,
|
|
3833
3830
|
className: "game-ui-prompt",
|
|
@@ -3839,7 +3836,7 @@ function or({ actionLabel: e, children: r, title: i }) {
|
|
|
3839
3836
|
}
|
|
3840
3837
|
//#endregion
|
|
3841
3838
|
//#region src/clay/assets.ts
|
|
3842
|
-
var
|
|
3839
|
+
var or = "/assets/game/ui/clay/phase03-clay-kit", Z = (e) => `${or}/${e}`, sr = {
|
|
3843
3840
|
ai: { line: Z("icons/function/brain-v1.png") },
|
|
3844
3841
|
alert: {
|
|
3845
3842
|
game: Z("components/common/alert-v1.png"),
|
|
@@ -3929,20 +3926,20 @@ var sr = "/assets/game/ui/clay/phase03-clay-kit", Z = (e) => `${sr}/${e}`, cr =
|
|
|
3929
3926
|
game: Z("icons/common/target-v1.png"),
|
|
3930
3927
|
line: Z("icons/function/target-v1.png")
|
|
3931
3928
|
}
|
|
3932
|
-
},
|
|
3933
|
-
function
|
|
3934
|
-
let t =
|
|
3929
|
+
}, cr = Object.keys(sr), lr = or;
|
|
3930
|
+
function ur(e) {
|
|
3931
|
+
let t = lr;
|
|
3935
3932
|
return !e || t === "/assets/game/ui/clay/phase03-clay-kit" ? e : e.startsWith("/assets/game/ui/clay/phase03-clay-kit") ? `${t}${e.slice(37)}` : e;
|
|
3936
3933
|
}
|
|
3937
|
-
function
|
|
3938
|
-
let n =
|
|
3939
|
-
return
|
|
3934
|
+
function dr(e, t) {
|
|
3935
|
+
let n = sr[e];
|
|
3936
|
+
return ur(t === "line" ? n.line ?? n.game ?? "" : n.game ?? n.line ?? "");
|
|
3940
3937
|
}
|
|
3941
|
-
function
|
|
3942
|
-
let t =
|
|
3938
|
+
function fr(e) {
|
|
3939
|
+
let t = sr[e], n = [];
|
|
3943
3940
|
return t.game && n.push("game"), t.line && n.push("line"), n;
|
|
3944
3941
|
}
|
|
3945
|
-
var
|
|
3942
|
+
var pr = {
|
|
3946
3943
|
anvil: Z("icons/common/anvil-v1.png"),
|
|
3947
3944
|
arrow: Z("icons/common/arrow-v1.png"),
|
|
3948
3945
|
bomb: Z("icons/common/bomb-v1.png"),
|
|
@@ -3969,7 +3966,7 @@ var mr = {
|
|
|
3969
3966
|
swordB: Z("icons/common/sword-b-v1.png"),
|
|
3970
3967
|
talaria: Z("icons/common/talaria-v1.png"),
|
|
3971
3968
|
treasure: Z("icons/common/treasure-v1.png")
|
|
3972
|
-
},
|
|
3969
|
+
}, mr = Object.keys(pr), hr = {
|
|
3973
3970
|
buttons: {
|
|
3974
3971
|
primary: Z("buttons/button-brown-large-v2.png"),
|
|
3975
3972
|
blue: Z("buttons/button-blue-large-v2.png"),
|
|
@@ -3990,7 +3987,7 @@ var mr = {
|
|
|
3990
3987
|
tabSelected: Z("components/common/tab-s-v1.png"),
|
|
3991
3988
|
tabNormal: Z("components/common/tab-n-v1.png")
|
|
3992
3989
|
},
|
|
3993
|
-
icons: Object.fromEntries(
|
|
3990
|
+
icons: Object.fromEntries(cr.map((e) => [e, dr(e)])),
|
|
3994
3991
|
catalog: {
|
|
3995
3992
|
manifest: "/assets/game/ui/clay/asset-manifest.json",
|
|
3996
3993
|
sourceCatalog: Z("catalog/phase03-clay-ui-catalog.json"),
|
|
@@ -3998,7 +3995,7 @@ var mr = {
|
|
|
3998
3995
|
contactSheetComponents: Z("catalog/component-candidates-contact-sheet-v1.png"),
|
|
3999
3996
|
contactSheetFunction: Z("catalog/function-icons-contact-sheet-v1.png")
|
|
4000
3997
|
}
|
|
4001
|
-
},
|
|
3998
|
+
}, gr = {
|
|
4002
3999
|
ai: "AI",
|
|
4003
4000
|
alert: "!",
|
|
4004
4001
|
card: "▣",
|
|
@@ -4034,72 +4031,72 @@ var mr = {
|
|
|
4034
4031
|
timer: "◷",
|
|
4035
4032
|
trophy: "★",
|
|
4036
4033
|
vote: "⌾"
|
|
4037
|
-
},
|
|
4038
|
-
ai:
|
|
4039
|
-
alert:
|
|
4040
|
-
card:
|
|
4041
|
-
chat:
|
|
4042
|
-
check:
|
|
4043
|
-
close:
|
|
4044
|
-
coin:
|
|
4045
|
-
compass:
|
|
4046
|
-
copy:
|
|
4047
|
-
crown:
|
|
4048
|
-
energy:
|
|
4049
|
-
gem:
|
|
4050
|
-
gift:
|
|
4051
|
-
globe:
|
|
4052
|
-
history:
|
|
4053
|
-
redo:
|
|
4054
|
-
undo:
|
|
4055
|
-
home:
|
|
4056
|
-
hourglass:
|
|
4057
|
-
laurel:
|
|
4058
|
-
lock:
|
|
4059
|
-
lucky:
|
|
4060
|
-
mail:
|
|
4061
|
-
medal:
|
|
4062
|
-
mission:
|
|
4063
|
-
mobile:
|
|
4064
|
-
portal:
|
|
4065
|
-
scroll:
|
|
4066
|
-
settings:
|
|
4067
|
-
shirt:
|
|
4068
|
-
shop:
|
|
4069
|
-
smile:
|
|
4070
|
-
timer:
|
|
4071
|
-
trophy:
|
|
4072
|
-
vote:
|
|
4034
|
+
}, _r = {
|
|
4035
|
+
ai: L.berry,
|
|
4036
|
+
alert: L.red,
|
|
4037
|
+
card: L.honey,
|
|
4038
|
+
chat: L.sky,
|
|
4039
|
+
check: L.green,
|
|
4040
|
+
close: L.red,
|
|
4041
|
+
coin: L.honey,
|
|
4042
|
+
compass: L.teal,
|
|
4043
|
+
copy: L.wood,
|
|
4044
|
+
crown: L.honey,
|
|
4045
|
+
energy: L.orange,
|
|
4046
|
+
gem: L.sky,
|
|
4047
|
+
gift: L.red,
|
|
4048
|
+
globe: L.teal,
|
|
4049
|
+
history: L.inkMuted,
|
|
4050
|
+
redo: L.wood,
|
|
4051
|
+
undo: L.wood,
|
|
4052
|
+
home: L.wood,
|
|
4053
|
+
hourglass: L.orange,
|
|
4054
|
+
laurel: L.green,
|
|
4055
|
+
lock: L.ink,
|
|
4056
|
+
lucky: L.green,
|
|
4057
|
+
mail: L.sky,
|
|
4058
|
+
medal: L.honey,
|
|
4059
|
+
mission: L.berry,
|
|
4060
|
+
mobile: L.sky,
|
|
4061
|
+
portal: L.teal,
|
|
4062
|
+
scroll: L.berry,
|
|
4063
|
+
settings: L.inkMuted,
|
|
4064
|
+
shirt: L.sky,
|
|
4065
|
+
shop: L.inkMuted,
|
|
4066
|
+
smile: L.honey,
|
|
4067
|
+
timer: L.orange,
|
|
4068
|
+
trophy: L.honey,
|
|
4069
|
+
vote: L.red
|
|
4073
4070
|
};
|
|
4074
|
-
function
|
|
4075
|
-
let t =
|
|
4071
|
+
function vr(e) {
|
|
4072
|
+
let t = gr[e], n = _r[e], r = L.parchment, i = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96"><defs><filter id="s" x="-20%" y="-20%" width="140%" height="140%"><feDropShadow dx="0" dy="5" stdDeviation="4" flood-color="#4c341c" flood-opacity=".22"/></filter></defs><rect x="10" y="8" width="76" height="76" rx="25" fill="${r}" filter="url(#s)"/><circle cx="48" cy="46" r="28" fill="${n}" opacity=".88"/><path d="M23 28c10-12 36-16 52 0" stroke="#fff" stroke-width="6" stroke-linecap="round" opacity=".38"/><text x="48" y="58" text-anchor="middle" font-family="system-ui,sans-serif" font-size="28" font-weight="900" fill="${r}">${t}</text></svg>`;
|
|
4076
4073
|
return `data:image/svg+xml,${encodeURIComponent(i)}`;
|
|
4077
4074
|
}
|
|
4078
|
-
var
|
|
4079
|
-
function
|
|
4080
|
-
|
|
4075
|
+
var yr = "inline";
|
|
4076
|
+
function br(e) {
|
|
4077
|
+
yr = e;
|
|
4081
4078
|
}
|
|
4082
|
-
function
|
|
4083
|
-
return
|
|
4079
|
+
function xr() {
|
|
4080
|
+
return yr;
|
|
4084
4081
|
}
|
|
4085
|
-
function
|
|
4086
|
-
|
|
4082
|
+
function Sr(e) {
|
|
4083
|
+
lr = e.replace(/\/+$/, "");
|
|
4087
4084
|
}
|
|
4088
|
-
function
|
|
4089
|
-
return
|
|
4085
|
+
function Cr() {
|
|
4086
|
+
return lr;
|
|
4090
4087
|
}
|
|
4091
|
-
var
|
|
4092
|
-
function
|
|
4093
|
-
|
|
4088
|
+
var wr = !1;
|
|
4089
|
+
function Tr() {
|
|
4090
|
+
wr || (wr = !0, !(typeof console > "u") && console.warn("[SwimmerUIKit] Clay icons are rendering placeholders, not the icon set. The sculpted PNGs ship inside this package but must be served by your app:\n npx swimmer-ui-assets public\n setClayAssetMode('source') // once, at your entry\nCall setClayAssetMode('inline') explicitly to keep placeholders and silence this."));
|
|
4094
4091
|
}
|
|
4095
|
-
function
|
|
4096
|
-
|
|
4092
|
+
function Er() {
|
|
4093
|
+
wr = !0;
|
|
4097
4094
|
}
|
|
4098
|
-
function
|
|
4099
|
-
return t.inline ??
|
|
4095
|
+
function Dr(e, t = {}) {
|
|
4096
|
+
return t.inline ?? yr === "inline" ? (Tr(), vr(e)) : dr(e, t.style);
|
|
4100
4097
|
}
|
|
4101
|
-
function
|
|
4102
|
-
return
|
|
4098
|
+
function Or(e, t) {
|
|
4099
|
+
return dr(e, t);
|
|
4103
4100
|
}
|
|
4104
4101
|
//#endregion
|
|
4105
4102
|
//#region src/ClayComponents.tsx
|
|
@@ -4111,7 +4108,7 @@ function Q({ children: e, className: n, tone: r = "neutral" }) {
|
|
|
4111
4108
|
});
|
|
4112
4109
|
}
|
|
4113
4110
|
function $({ className: e, icon: n, label: r, size: i = "md", style: a, useSourceAsset: o = !1 }) {
|
|
4114
|
-
let s = ["game-ui-asset-icon", e].filter(Boolean).join(" "), c = r ? { "aria-label": r } : { "aria-hidden": !0 }, l =
|
|
4111
|
+
let s = ["game-ui-asset-icon", e].filter(Boolean).join(" "), c = r ? { "aria-label": r } : { "aria-hidden": !0 }, l = Dr(n, {
|
|
4115
4112
|
...a ? { style: a } : {},
|
|
4116
4113
|
...o ? { inline: !1 } : {}
|
|
4117
4114
|
});
|
|
@@ -4126,7 +4123,7 @@ function $({ className: e, icon: n, label: r, size: i = "md", style: a, useSourc
|
|
|
4126
4123
|
})
|
|
4127
4124
|
});
|
|
4128
4125
|
}
|
|
4129
|
-
function
|
|
4126
|
+
function kr({ actions: e, className: r, items: i, label: a }) {
|
|
4130
4127
|
return /* @__PURE__ */ n("section", {
|
|
4131
4128
|
"aria-label": a,
|
|
4132
4129
|
className: ["game-ui-hud", r].filter(Boolean).join(" "),
|
|
@@ -4149,7 +4146,7 @@ function Ar({ actions: e, className: r, items: i, label: a }) {
|
|
|
4149
4146
|
}) : null]
|
|
4150
4147
|
});
|
|
4151
4148
|
}
|
|
4152
|
-
function
|
|
4149
|
+
function Ar({ cards: e, className: r, label: i }) {
|
|
4153
4150
|
let a = ["game-ui-card-fan", r].filter(Boolean).join(" "), o = (e.length - 1) / 2;
|
|
4154
4151
|
return /* @__PURE__ */ t("div", {
|
|
4155
4152
|
"aria-label": i,
|
|
@@ -4172,7 +4169,7 @@ function jr({ cards: e, className: r, label: i }) {
|
|
|
4172
4169
|
}, e.id))
|
|
4173
4170
|
});
|
|
4174
4171
|
}
|
|
4175
|
-
function
|
|
4172
|
+
function jr({ badge: e, className: r, icon: i, kicker: a, selected: o = !1, summary: s, title: c, tone: l = "daily", type: u = "button", ...d }) {
|
|
4176
4173
|
return /* @__PURE__ */ n("button", {
|
|
4177
4174
|
"aria-pressed": o,
|
|
4178
4175
|
className: ["game-ui-stage-tile", r].filter(Boolean).join(" "),
|
|
@@ -4199,15 +4196,15 @@ function Mr({ badge: e, className: r, icon: i, kicker: a, selected: o = !1, summ
|
|
|
4199
4196
|
]
|
|
4200
4197
|
});
|
|
4201
4198
|
}
|
|
4202
|
-
function
|
|
4199
|
+
function Mr() {
|
|
4203
4200
|
return typeof window > "u" ? !1 : (window.matchMedia?.("(pointer: coarse), (max-width: 899px)").matches ?? window.innerWidth < 900) && window.innerHeight > window.innerWidth;
|
|
4204
4201
|
}
|
|
4205
|
-
function
|
|
4206
|
-
let [c, u] = m(o ||
|
|
4202
|
+
function Nr({ body: e, cta: r, badgeLabel: i = "Landscape only", manualHint: a = "Rotate manually if this browser blocks automatic landscape lock.", preview: o = !1, title: s }) {
|
|
4203
|
+
let [c, u] = m(o || Mr), [d, f] = m("");
|
|
4207
4204
|
if (l(() => {
|
|
4208
4205
|
if (o) return;
|
|
4209
4206
|
let e = () => {
|
|
4210
|
-
let e =
|
|
4207
|
+
let e = Mr();
|
|
4211
4208
|
u(e), e || f("");
|
|
4212
4209
|
};
|
|
4213
4210
|
return e(), window.addEventListener("resize", e), window.addEventListener("orientationchange", e), () => {
|
|
@@ -4217,7 +4214,7 @@ function Pr({ body: e, cta: r, badgeLabel: i = "Landscape only", manualHint: a =
|
|
|
4217
4214
|
let p = async () => {
|
|
4218
4215
|
if (f(""), !o) try {
|
|
4219
4216
|
let e = document.documentElement;
|
|
4220
|
-
!document.fullscreenElement && e.requestFullscreen && await e.requestFullscreen(), await screen.orientation.lock?.("landscape-primary"), u(
|
|
4217
|
+
!document.fullscreenElement && e.requestFullscreen && await e.requestFullscreen(), await screen.orientation.lock?.("landscape-primary"), u(Mr());
|
|
4221
4218
|
} catch {
|
|
4222
4219
|
f(a);
|
|
4223
4220
|
}
|
|
@@ -4248,7 +4245,7 @@ function Pr({ body: e, cta: r, badgeLabel: i = "Landscape only", manualHint: a =
|
|
|
4248
4245
|
})
|
|
4249
4246
|
});
|
|
4250
4247
|
}
|
|
4251
|
-
function
|
|
4248
|
+
function Pr({ className: e, currentLabel: r, label: i, options: a, value: o, defaultValue: s, onSelect: c }) {
|
|
4252
4249
|
let [l, d] = m(!1), [f, p] = m(s ?? a[0]?.id ?? ""), h = u(), g = ["game-ui-language-menu", e].filter(Boolean).join(" "), _ = o ?? f, v = a.find((e) => e.id === _), y = r ?? v?.label ?? a[0]?.label ?? "", b = (e) => {
|
|
4253
4250
|
o === void 0 && p(e), c?.(e), d(!1);
|
|
4254
4251
|
};
|
|
@@ -4280,34 +4277,34 @@ function Fr({ className: e, currentLabel: r, label: i, options: a, value: o, def
|
|
|
4280
4277
|
}) : null]
|
|
4281
4278
|
});
|
|
4282
4279
|
}
|
|
4283
|
-
function
|
|
4280
|
+
function Fr({ label: e, tone: r = "loading" }) {
|
|
4284
4281
|
return /* @__PURE__ */ n("div", {
|
|
4285
4282
|
className: "game-ui-loading-state",
|
|
4286
4283
|
"data-loading-tone": r,
|
|
4287
4284
|
role: r === "error" ? "alert" : "status",
|
|
4288
4285
|
children: [/* @__PURE__ */ t("img", {
|
|
4289
4286
|
alt: "",
|
|
4290
|
-
src:
|
|
4287
|
+
src: Dr(r === "error" ? "alert" : "timer")
|
|
4291
4288
|
}), /* @__PURE__ */ t("span", { children: e })]
|
|
4292
4289
|
});
|
|
4293
4290
|
}
|
|
4294
|
-
function
|
|
4295
|
-
return
|
|
4291
|
+
function Ir() {
|
|
4292
|
+
return hr.catalog;
|
|
4296
4293
|
}
|
|
4297
4294
|
//#endregion
|
|
4298
4295
|
//#region src/FirstSessionGameShell.tsx
|
|
4299
|
-
function
|
|
4296
|
+
function Lr({ fallback: e, slot: n }) {
|
|
4300
4297
|
return n ?? /* @__PURE__ */ t($, {
|
|
4301
4298
|
icon: e,
|
|
4302
4299
|
size: "sm"
|
|
4303
4300
|
});
|
|
4304
4301
|
}
|
|
4305
|
-
function
|
|
4302
|
+
function Rr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, iconSlots: o, labels: s, onHistory: c, onSettings: l, onWardrobe: u, playerName: d }) {
|
|
4306
4303
|
let f = ["swimmer-first-session-shell", i].filter(Boolean).join(" "), p = e ? `${r} 🔋` : s.guest ?? "guest";
|
|
4307
4304
|
return /* @__PURE__ */ n("section", {
|
|
4308
4305
|
"aria-label": s.shell,
|
|
4309
4306
|
className: f,
|
|
4310
|
-
children: [/* @__PURE__ */ t(
|
|
4307
|
+
children: [/* @__PURE__ */ t(kr, {
|
|
4311
4308
|
className: "swimmer-first-session-hud",
|
|
4312
4309
|
items: [
|
|
4313
4310
|
{
|
|
@@ -4339,7 +4336,7 @@ function zr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4339
4336
|
}
|
|
4340
4337
|
],
|
|
4341
4338
|
label: s.hud,
|
|
4342
|
-
actions: /* @__PURE__ */ n(
|
|
4339
|
+
actions: /* @__PURE__ */ n(Yn, {
|
|
4343
4340
|
className: "swimmer-first-session-hud-actions",
|
|
4344
4341
|
label: s.tools,
|
|
4345
4342
|
children: [
|
|
@@ -4347,7 +4344,7 @@ function zr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4347
4344
|
"aria-label": s.wardrobe,
|
|
4348
4345
|
onClick: u,
|
|
4349
4346
|
variant: "secondary",
|
|
4350
|
-
children: [/* @__PURE__ */ t(
|
|
4347
|
+
children: [/* @__PURE__ */ t(Lr, {
|
|
4351
4348
|
fallback: "shirt",
|
|
4352
4349
|
slot: o?.wardrobe
|
|
4353
4350
|
}), s.wardrobe]
|
|
@@ -4356,7 +4353,7 @@ function zr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4356
4353
|
"aria-label": s.settings,
|
|
4357
4354
|
onClick: l,
|
|
4358
4355
|
variant: "secondary",
|
|
4359
|
-
children: [/* @__PURE__ */ t(
|
|
4356
|
+
children: [/* @__PURE__ */ t(Lr, {
|
|
4360
4357
|
fallback: "settings",
|
|
4361
4358
|
slot: o?.settings
|
|
4362
4359
|
}), s.settings]
|
|
@@ -4365,7 +4362,7 @@ function zr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4365
4362
|
"aria-label": s.history,
|
|
4366
4363
|
onClick: c,
|
|
4367
4364
|
variant: "secondary",
|
|
4368
|
-
children: [/* @__PURE__ */ t(
|
|
4365
|
+
children: [/* @__PURE__ */ t(Lr, {
|
|
4369
4366
|
fallback: "history",
|
|
4370
4367
|
slot: o?.history
|
|
4371
4368
|
}), s.history]
|
|
@@ -4390,7 +4387,7 @@ function zr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4390
4387
|
}),
|
|
4391
4388
|
/* @__PURE__ */ n("label", {
|
|
4392
4389
|
className: "swimmer-first-session-input",
|
|
4393
|
-
children: [/* @__PURE__ */ t(
|
|
4390
|
+
children: [/* @__PURE__ */ t(Lr, {
|
|
4394
4391
|
fallback: "chat",
|
|
4395
4392
|
slot: o?.input
|
|
4396
4393
|
}), /* @__PURE__ */ t("span", { children: s.input })]
|
|
@@ -4398,7 +4395,7 @@ function zr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4398
4395
|
/* @__PURE__ */ n("button", {
|
|
4399
4396
|
className: "swimmer-first-session-emote",
|
|
4400
4397
|
type: "button",
|
|
4401
|
-
children: [/* @__PURE__ */ t(
|
|
4398
|
+
children: [/* @__PURE__ */ t(Lr, {
|
|
4402
4399
|
fallback: "smile",
|
|
4403
4400
|
slot: o?.emote
|
|
4404
4401
|
}), s.emote]
|
|
@@ -4407,7 +4404,7 @@ function zr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4407
4404
|
})]
|
|
4408
4405
|
});
|
|
4409
4406
|
}
|
|
4410
|
-
function
|
|
4407
|
+
function zr({ labels: e, onDismiss: r, open: i }) {
|
|
4411
4408
|
return i ? /* @__PURE__ */ n("aside", {
|
|
4412
4409
|
"aria-labelledby": "swimmer-first-session-onboarding-title",
|
|
4413
4410
|
"aria-modal": "true",
|
|
@@ -4455,7 +4452,7 @@ function Br({ labels: e, onDismiss: r, open: i }) {
|
|
|
4455
4452
|
}
|
|
4456
4453
|
//#endregion
|
|
4457
4454
|
//#region src/GameForms.tsx
|
|
4458
|
-
var
|
|
4455
|
+
var Br = a(function({ className: e, invalid: n, type: r = "text", ...i }, a) {
|
|
4459
4456
|
return /* @__PURE__ */ t("input", {
|
|
4460
4457
|
className: ["game-ui-input", e].filter(Boolean).join(" "),
|
|
4461
4458
|
"data-invalid": n ? "true" : void 0,
|
|
@@ -4463,7 +4460,7 @@ var Vr = a(function({ className: e, invalid: n, type: r = "text", ...i }, a) {
|
|
|
4463
4460
|
type: r,
|
|
4464
4461
|
...i
|
|
4465
4462
|
});
|
|
4466
|
-
}),
|
|
4463
|
+
}), Vr = a(function({ className: e, invalid: n, rows: r = 3, ...i }, a) {
|
|
4467
4464
|
return /* @__PURE__ */ t("textarea", {
|
|
4468
4465
|
className: [
|
|
4469
4466
|
"game-ui-input",
|
|
@@ -4476,7 +4473,7 @@ var Vr = a(function({ className: e, invalid: n, type: r = "text", ...i }, a) {
|
|
|
4476
4473
|
...i
|
|
4477
4474
|
});
|
|
4478
4475
|
});
|
|
4479
|
-
function
|
|
4476
|
+
function Hr({ children: e, className: r, error: i, hint: a, label: o, required: s }) {
|
|
4480
4477
|
return /* @__PURE__ */ n("label", {
|
|
4481
4478
|
className: ["game-ui-field", r].filter(Boolean).join(" "),
|
|
4482
4479
|
"data-invalid": i ? "true" : void 0,
|
|
@@ -4502,7 +4499,7 @@ function Ur({ children: e, className: r, error: i, hint: a, label: o, required:
|
|
|
4502
4499
|
]
|
|
4503
4500
|
});
|
|
4504
4501
|
}
|
|
4505
|
-
function
|
|
4502
|
+
function Ur({ className: e, label: r, ...i }) {
|
|
4506
4503
|
return /* @__PURE__ */ n("label", {
|
|
4507
4504
|
className: ["game-ui-checkbox", e].filter(Boolean).join(" "),
|
|
4508
4505
|
children: [
|
|
@@ -4524,11 +4521,11 @@ function Wr({ className: e, label: r, ...i }) {
|
|
|
4524
4521
|
}
|
|
4525
4522
|
//#endregion
|
|
4526
4523
|
//#region src/GameDisplay.tsx
|
|
4527
|
-
function
|
|
4524
|
+
function Wr(e) {
|
|
4528
4525
|
let t = e.trim().split(/\s+/).filter(Boolean);
|
|
4529
4526
|
return t.length === 0 ? "?" : t.slice(0, 2).map((e) => e[0] ?? "").join("").toUpperCase();
|
|
4530
4527
|
}
|
|
4531
|
-
function
|
|
4528
|
+
function Gr({ className: r, name: i, size: a = "md", src: o, status: s = "none" }) {
|
|
4532
4529
|
return /* @__PURE__ */ n("span", {
|
|
4533
4530
|
className: ["game-ui-avatar", r].filter(Boolean).join(" "),
|
|
4534
4531
|
"data-avatar-size": a,
|
|
@@ -4539,7 +4536,7 @@ function Kr({ className: r, name: i, size: a = "md", src: o, status: s = "none"
|
|
|
4539
4536
|
}) : /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ t("span", {
|
|
4540
4537
|
"aria-hidden": "true",
|
|
4541
4538
|
className: "game-ui-avatar-initials",
|
|
4542
|
-
children:
|
|
4539
|
+
children: Wr(i)
|
|
4543
4540
|
}), /* @__PURE__ */ t("span", {
|
|
4544
4541
|
className: "game-ui-sr-only",
|
|
4545
4542
|
children: i
|
|
@@ -4549,7 +4546,7 @@ function Kr({ className: r, name: i, size: a = "md", src: o, status: s = "none"
|
|
|
4549
4546
|
})]
|
|
4550
4547
|
});
|
|
4551
4548
|
}
|
|
4552
|
-
function
|
|
4549
|
+
function Kr({ className: e, label: r, max: i = 100, showValue: a = !1, tone: o = "accent", value: s, valueLabel: c }) {
|
|
4553
4550
|
let l = i <= 0 ? 100 : i, u = Math.max(0, Math.min(100, s / l * 100)), d = ["game-ui-progress", e].filter(Boolean).join(" "), f = !!c, p = {
|
|
4554
4551
|
accent: "var(--game-ui-accent)",
|
|
4555
4552
|
danger: "var(--game-ui-danger)",
|
|
@@ -4567,7 +4564,7 @@ function qr({ className: e, label: r, max: i = 100, showValue: a = !1, tone: o =
|
|
|
4567
4564
|
"aria-valuetext": f ? c : void 0,
|
|
4568
4565
|
className: "game-ui-progress-track",
|
|
4569
4566
|
role: "progressbar",
|
|
4570
|
-
children: /* @__PURE__ */ t(
|
|
4567
|
+
children: /* @__PURE__ */ t(Gn, {
|
|
4571
4568
|
"aria-hidden": "true",
|
|
4572
4569
|
className: "game-ui-progress-liquid",
|
|
4573
4570
|
fill: p,
|
|
@@ -4578,7 +4575,7 @@ function qr({ className: e, label: r, max: i = 100, showValue: a = !1, tone: o =
|
|
|
4578
4575
|
pointerEvents: "none",
|
|
4579
4576
|
position: "absolute"
|
|
4580
4577
|
},
|
|
4581
|
-
children: /* @__PURE__ */ t(
|
|
4578
|
+
children: /* @__PURE__ */ t(Gn.Item, {
|
|
4582
4579
|
"aria-hidden": "true",
|
|
4583
4580
|
className: "game-ui-progress-fill",
|
|
4584
4581
|
style: {
|
|
@@ -4601,7 +4598,7 @@ function qr({ className: e, label: r, max: i = 100, showValue: a = !1, tone: o =
|
|
|
4601
4598
|
}) : null]
|
|
4602
4599
|
});
|
|
4603
4600
|
}
|
|
4604
|
-
function
|
|
4601
|
+
function qr({ action: e, className: r, description: i, icon: a, title: o }) {
|
|
4605
4602
|
return /* @__PURE__ */ n("div", {
|
|
4606
4603
|
className: ["game-ui-empty-state", r].filter(Boolean).join(" "),
|
|
4607
4604
|
children: [
|
|
@@ -4626,7 +4623,7 @@ function Jr({ action: e, className: r, description: i, icon: a, title: o }) {
|
|
|
4626
4623
|
}
|
|
4627
4624
|
//#endregion
|
|
4628
4625
|
//#region src/GameSurfacePack.tsx
|
|
4629
|
-
function
|
|
4626
|
+
function Jr({ assetLibrary: e, bottomBar: r, children: i, className: a, density: o = "comfortable", hud: s, layout: c = "auto", movementPad: l, overlay: u, sidePanel: d, title: f }) {
|
|
4630
4627
|
return /* @__PURE__ */ n("section", {
|
|
4631
4628
|
"aria-label": f,
|
|
4632
4629
|
className: ["game-ui-shell", a].filter(Boolean).join(" "),
|
|
@@ -4664,8 +4661,8 @@ function Yr({ assetLibrary: e, bottomBar: r, children: i, className: a, density:
|
|
|
4664
4661
|
]
|
|
4665
4662
|
});
|
|
4666
4663
|
}
|
|
4667
|
-
var
|
|
4668
|
-
function
|
|
4664
|
+
var Yr = Jr;
|
|
4665
|
+
function Xr({ className: e, density: r = "comfortable", facts: i, label: a, variant: o = "facts" }) {
|
|
4669
4666
|
return /* @__PURE__ */ t("section", {
|
|
4670
4667
|
"aria-label": a,
|
|
4671
4668
|
className: ["game-ui-fact-list", e].filter(Boolean).join(" "),
|
|
@@ -4694,9 +4691,9 @@ function Zr({ className: e, density: r = "comfortable", facts: i, label: a, vari
|
|
|
4694
4691
|
}, e.id))
|
|
4695
4692
|
});
|
|
4696
4693
|
}
|
|
4697
|
-
var
|
|
4698
|
-
function
|
|
4699
|
-
return /* @__PURE__ */ n(
|
|
4694
|
+
var Zr = Xr;
|
|
4695
|
+
function Qr({ actions: r, className: i, density: a = "comfortable", iconLabelMode: o = "hidden", label: s, style: c = "button" }) {
|
|
4696
|
+
return /* @__PURE__ */ n(Yn, {
|
|
4700
4697
|
className: ["game-ui-action-grid", i].filter(Boolean).join(" "),
|
|
4701
4698
|
"data-icon-label-mode": c === "icon" ? o : void 0,
|
|
4702
4699
|
label: s,
|
|
@@ -4721,7 +4718,7 @@ function $r({ actions: r, className: i, density: a = "comfortable", iconLabelMod
|
|
|
4721
4718
|
}) : null,
|
|
4722
4719
|
r.shortcut ? /* @__PURE__ */ t("kbd", { children: r.shortcut }) : null
|
|
4723
4720
|
] }), l = () => r.onAction?.(r.id);
|
|
4724
|
-
return c === "icon" ? /* @__PURE__ */ t(
|
|
4721
|
+
return c === "icon" ? /* @__PURE__ */ t(Xn, {
|
|
4725
4722
|
"aria-pressed": r.selected,
|
|
4726
4723
|
className: "game-ui-action-grid-button",
|
|
4727
4724
|
disabled: r.disabled,
|
|
@@ -4739,7 +4736,7 @@ function $r({ actions: r, className: i, density: a = "comfortable", iconLabelMod
|
|
|
4739
4736
|
})]
|
|
4740
4737
|
});
|
|
4741
4738
|
}
|
|
4742
|
-
var
|
|
4739
|
+
var $r = [
|
|
4743
4740
|
{
|
|
4744
4741
|
direction: "forward",
|
|
4745
4742
|
label: "Move forward",
|
|
@@ -4764,7 +4761,7 @@ var ei = [
|
|
|
4764
4761
|
shortcut: "S / ↓",
|
|
4765
4762
|
symbol: "↓"
|
|
4766
4763
|
}
|
|
4767
|
-
],
|
|
4764
|
+
], ei = {
|
|
4768
4765
|
ArrowUp: "forward",
|
|
4769
4766
|
w: "forward",
|
|
4770
4767
|
W: "forward",
|
|
@@ -4779,7 +4776,7 @@ var ei = [
|
|
|
4779
4776
|
S: "backward",
|
|
4780
4777
|
" ": "reset"
|
|
4781
4778
|
};
|
|
4782
|
-
function
|
|
4779
|
+
function ti({ actions: e = $r, className: r, density: i = "comfortable", disabled: a = !1, helpText: o, label: s, layout: c = "dpad", onMove: l }) {
|
|
4783
4780
|
let u = ["game-ui-movement-pad", r].filter(Boolean).join(" "), d = (e) => {
|
|
4784
4781
|
a || l?.(e);
|
|
4785
4782
|
};
|
|
@@ -4789,7 +4786,7 @@ function ni({ actions: e = ei, className: r, density: i = "comfortable", disable
|
|
|
4789
4786
|
"data-density": i,
|
|
4790
4787
|
"data-layout": c,
|
|
4791
4788
|
onKeyDown: (t) => {
|
|
4792
|
-
let n =
|
|
4789
|
+
let n = ei[t.key];
|
|
4793
4790
|
if (!n) return;
|
|
4794
4791
|
let r = e.find((e) => e.direction === n);
|
|
4795
4792
|
!r || r.disabled || a || (t.preventDefault(), d(n));
|
|
@@ -4797,7 +4794,7 @@ function ni({ actions: e = ei, className: r, density: i = "comfortable", disable
|
|
|
4797
4794
|
tabIndex: 0,
|
|
4798
4795
|
children: [/* @__PURE__ */ t("div", {
|
|
4799
4796
|
className: "game-ui-movement-pad-grid",
|
|
4800
|
-
children: e.map((e) => /* @__PURE__ */ n(
|
|
4797
|
+
children: e.map((e) => /* @__PURE__ */ n(Xn, {
|
|
4801
4798
|
className: "game-ui-movement-button",
|
|
4802
4799
|
"data-direction": e.direction,
|
|
4803
4800
|
disabled: a || e.disabled,
|
|
@@ -4815,15 +4812,15 @@ function ni({ actions: e = ei, className: r, density: i = "comfortable", disable
|
|
|
4815
4812
|
}), o ? /* @__PURE__ */ t("p", { children: o }) : null]
|
|
4816
4813
|
});
|
|
4817
4814
|
}
|
|
4818
|
-
var
|
|
4815
|
+
var ni = {
|
|
4819
4816
|
generated: "Generated",
|
|
4820
4817
|
imported: "Imported",
|
|
4821
4818
|
starter: "Starter"
|
|
4822
|
-
},
|
|
4819
|
+
}, ri = {
|
|
4823
4820
|
generated: "ai",
|
|
4824
4821
|
imported: "warning",
|
|
4825
4822
|
starter: "neutral"
|
|
4826
|
-
},
|
|
4823
|
+
}, ii = {
|
|
4827
4824
|
error: "danger",
|
|
4828
4825
|
generating: "ai",
|
|
4829
4826
|
missing: "danger",
|
|
@@ -4831,8 +4828,8 @@ var ri = {
|
|
|
4831
4828
|
ready: "neutral",
|
|
4832
4829
|
selected: "success"
|
|
4833
4830
|
};
|
|
4834
|
-
function
|
|
4835
|
-
let { "aria-label": S, ...C } = x, w = ["game-ui-asset-card", a].filter(Boolean).join(" "), T = m ??
|
|
4831
|
+
function ai({ assetId: e, badges: r = [], cardLayout: i = "list", className: a, description: o, disabled: s, facts: c = [], icon: l = "gem", onClick: u, onSelect: d, selected: f = !1, source: p, sourceLabel: m, status: h = "ready", statusLabel: g, thumbnailAlt: _ = "", thumbnailSrc: v, title: y, type: b = "button", ...x }) {
|
|
4832
|
+
let { "aria-label": S, ...C } = x, w = ["game-ui-asset-card", a].filter(Boolean).join(" "), T = m ?? ni[p], E = g ?? h;
|
|
4836
4833
|
return /* @__PURE__ */ n("button", {
|
|
4837
4834
|
"aria-label": S ?? y,
|
|
4838
4835
|
"aria-pressed": f,
|
|
@@ -4863,11 +4860,11 @@ function oi({ assetId: e, badges: r = [], cardLayout: i = "list", className: a,
|
|
|
4863
4860
|
className: "game-ui-asset-card-badges",
|
|
4864
4861
|
children: [
|
|
4865
4862
|
/* @__PURE__ */ t(Q, {
|
|
4866
|
-
tone:
|
|
4863
|
+
tone: ri[p],
|
|
4867
4864
|
children: T
|
|
4868
4865
|
}),
|
|
4869
4866
|
/* @__PURE__ */ t(Q, {
|
|
4870
|
-
tone:
|
|
4867
|
+
tone: ii[h],
|
|
4871
4868
|
children: E
|
|
4872
4869
|
}),
|
|
4873
4870
|
r.map((e) => /* @__PURE__ */ t(Q, {
|
|
@@ -4886,7 +4883,7 @@ function oi({ assetId: e, badges: r = [], cardLayout: i = "list", className: a,
|
|
|
4886
4883
|
})]
|
|
4887
4884
|
});
|
|
4888
4885
|
}
|
|
4889
|
-
function
|
|
4886
|
+
function oi({ cardLayout: e = "auto", className: r, density: i = "comfortable", emptyAction: a, emptyDescription: o = "Assets will appear here when they are ready to place.", emptyTitle: s = "No assets ready", groups: c, label: l, onSelectAsset: u, selectedAssetId: d, subtitle: f, title: p }) {
|
|
4890
4887
|
let m = ["game-ui-asset-library", r].filter(Boolean).join(" "), h = c.reduce((e, t) => e + t.assets.length, 0), g = c.reduce((e, t) => (t.assets.forEach((t) => {
|
|
4891
4888
|
e[t.source] += 1;
|
|
4892
4889
|
}), e), {
|
|
@@ -4911,15 +4908,15 @@ function si({ cardLayout: e = "auto", className: r, density: i = "comfortable",
|
|
|
4911
4908
|
"aria-label": "Asset source counts",
|
|
4912
4909
|
className: "game-ui-asset-library-counts",
|
|
4913
4910
|
children: Object.entries(g).map(([e, t]) => /* @__PURE__ */ n(Q, {
|
|
4914
|
-
tone:
|
|
4911
|
+
tone: ri[e],
|
|
4915
4912
|
children: [
|
|
4916
|
-
|
|
4913
|
+
ni[e],
|
|
4917
4914
|
" ",
|
|
4918
4915
|
t
|
|
4919
4916
|
]
|
|
4920
4917
|
}, e))
|
|
4921
4918
|
}),
|
|
4922
|
-
h === 0 ? /* @__PURE__ */ t(
|
|
4919
|
+
h === 0 ? /* @__PURE__ */ t(qr, {
|
|
4923
4920
|
action: a,
|
|
4924
4921
|
description: o,
|
|
4925
4922
|
icon: "gem",
|
|
@@ -4931,13 +4928,13 @@ function si({ cardLayout: e = "auto", className: r, density: i = "comfortable",
|
|
|
4931
4928
|
className: "game-ui-asset-library-group",
|
|
4932
4929
|
"data-asset-source": r.source,
|
|
4933
4930
|
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t("strong", { children: r.label }), r.source ? /* @__PURE__ */ t(Q, {
|
|
4934
|
-
tone:
|
|
4935
|
-
children:
|
|
4931
|
+
tone: ri[r.source],
|
|
4932
|
+
children: ni[r.source]
|
|
4936
4933
|
}) : null] }), /* @__PURE__ */ t("div", {
|
|
4937
4934
|
className: "game-ui-asset-library-grid",
|
|
4938
4935
|
children: r.assets.map((n) => {
|
|
4939
4936
|
let r = e === "auto" ? n.cardLayout : e;
|
|
4940
|
-
return /* @__PURE__ */ t(
|
|
4937
|
+
return /* @__PURE__ */ t(ai, {
|
|
4941
4938
|
...n,
|
|
4942
4939
|
...r ? { cardLayout: r } : {},
|
|
4943
4940
|
...u ? { onSelect: u } : {},
|
|
@@ -4951,7 +4948,7 @@ function si({ cardLayout: e = "auto", className: r, density: i = "comfortable",
|
|
|
4951
4948
|
})
|
|
4952
4949
|
});
|
|
4953
4950
|
}
|
|
4954
|
-
function
|
|
4951
|
+
function si({ actions: e = [], capacityLabel: r = "Objects", className: i, density: a = "comfortable", maxObjects: o, objectActions: s = [], placedObjects: c, selectedLabel: l = "Selected", selectedTitle: u, statusLabel: d = "Status", statusTone: f = "neutral", statusValue: p = "Idle", title: m }) {
|
|
4955
4952
|
let h = ["game-ui-placement-toolbar", i].filter(Boolean).join(" "), g = typeof c == "number" && typeof o == "number", _ = g && o > 0 ? Math.min(o, c) : 0;
|
|
4956
4953
|
return /* @__PURE__ */ t(X, {
|
|
4957
4954
|
className: h,
|
|
@@ -4960,7 +4957,7 @@ function ci({ actions: e = [], capacityLabel: r = "Objects", className: i, densi
|
|
|
4960
4957
|
children: /* @__PURE__ */ n("div", {
|
|
4961
4958
|
"data-density": a,
|
|
4962
4959
|
children: [
|
|
4963
|
-
/* @__PURE__ */ t(
|
|
4960
|
+
/* @__PURE__ */ t(Xr, {
|
|
4964
4961
|
density: a,
|
|
4965
4962
|
facts: [{
|
|
4966
4963
|
icon: "gem",
|
|
@@ -4976,19 +4973,19 @@ function ci({ actions: e = [], capacityLabel: r = "Objects", className: i, densi
|
|
|
4976
4973
|
}],
|
|
4977
4974
|
label: `${m} facts`
|
|
4978
4975
|
}),
|
|
4979
|
-
g ? /* @__PURE__ */ t(
|
|
4976
|
+
g ? /* @__PURE__ */ t(Kr, {
|
|
4980
4977
|
label: r,
|
|
4981
4978
|
max: o,
|
|
4982
4979
|
showValue: !0,
|
|
4983
4980
|
tone: _ >= o ? "warning" : "success",
|
|
4984
4981
|
value: _
|
|
4985
4982
|
}) : null,
|
|
4986
|
-
e.length > 0 ? /* @__PURE__ */ t(
|
|
4983
|
+
e.length > 0 ? /* @__PURE__ */ t(Qr, {
|
|
4987
4984
|
actions: e,
|
|
4988
4985
|
density: a,
|
|
4989
4986
|
label: `${m} actions`
|
|
4990
4987
|
}) : null,
|
|
4991
|
-
s.length > 0 ? /* @__PURE__ */ t(
|
|
4988
|
+
s.length > 0 ? /* @__PURE__ */ t(Qr, {
|
|
4992
4989
|
actions: s,
|
|
4993
4990
|
density: a,
|
|
4994
4991
|
label: `${m} object actions`,
|
|
@@ -4998,7 +4995,7 @@ function ci({ actions: e = [], capacityLabel: r = "Objects", className: i, densi
|
|
|
4998
4995
|
})
|
|
4999
4996
|
});
|
|
5000
4997
|
}
|
|
5001
|
-
var
|
|
4998
|
+
var ci = si, li = {
|
|
5002
4999
|
build: "home",
|
|
5003
5000
|
flatten: "card",
|
|
5004
5001
|
inspect: "compass",
|
|
@@ -5008,7 +5005,7 @@ var li = ci, ui = {
|
|
|
5008
5005
|
raise: "energy",
|
|
5009
5006
|
smooth: "lucky",
|
|
5010
5007
|
terrain: "portal"
|
|
5011
|
-
},
|
|
5008
|
+
}, ui = {
|
|
5012
5009
|
error: "danger",
|
|
5013
5010
|
locked: "warning",
|
|
5014
5011
|
missing: "danger",
|
|
@@ -5016,10 +5013,10 @@ var li = ci, ui = {
|
|
|
5016
5013
|
ready: "neutral",
|
|
5017
5014
|
selected: "success"
|
|
5018
5015
|
};
|
|
5019
|
-
function
|
|
5016
|
+
function di(e, t, n, r) {
|
|
5020
5017
|
let i = {
|
|
5021
5018
|
disabled: !!(r || e.disabled),
|
|
5022
|
-
icon: e.icon ??
|
|
5019
|
+
icon: e.icon ?? li[e.id] ?? "gem",
|
|
5023
5020
|
id: e.id,
|
|
5024
5021
|
label: e.label,
|
|
5025
5022
|
selected: e.id === t,
|
|
@@ -5027,21 +5024,21 @@ function fi(e, t, n, r) {
|
|
|
5027
5024
|
};
|
|
5028
5025
|
return e.ariaLabel && (i.ariaLabel = e.ariaLabel), e.compactLabel && (i.compactLabel = e.compactLabel), e.meta && (i.meta = e.meta), e.shortcut && (i.shortcut = e.shortcut), n && (i.onAction = n), i;
|
|
5029
5026
|
}
|
|
5030
|
-
function
|
|
5027
|
+
function fi(e, t, n) {
|
|
5031
5028
|
return Number.isNaN(e) ? t : Math.min(n, Math.max(t, e));
|
|
5032
5029
|
}
|
|
5033
|
-
function
|
|
5030
|
+
function pi(e) {
|
|
5034
5031
|
return e;
|
|
5035
5032
|
}
|
|
5036
|
-
function
|
|
5033
|
+
function mi(e, t) {
|
|
5037
5034
|
return e === "auto" ? t === "mobile" || t === "small-mobile" ? "caption" : "hidden" : e;
|
|
5038
5035
|
}
|
|
5039
|
-
function
|
|
5036
|
+
function hi({ activeModeId: e, className: r, disabled: i = !1, label: a, modes: o, onModeChange: s, variant: c = "desktop", "data-testid": l }) {
|
|
5040
5037
|
return /* @__PURE__ */ n("section", {
|
|
5041
5038
|
"aria-label": a,
|
|
5042
5039
|
className: ["game-ui-terrain-mode-control", r].filter(Boolean).join(" "),
|
|
5043
5040
|
"data-ui-hook": "terrain-mode-control",
|
|
5044
|
-
"data-variant":
|
|
5041
|
+
"data-variant": pi(c),
|
|
5045
5042
|
"data-testid": l,
|
|
5046
5043
|
children: [/* @__PURE__ */ t("span", {
|
|
5047
5044
|
className: "game-ui-sr-only",
|
|
@@ -5063,7 +5060,7 @@ function gi({ activeModeId: e, className: r, disabled: i = !1, label: a, modes:
|
|
|
5063
5060
|
type: "button",
|
|
5064
5061
|
children: [
|
|
5065
5062
|
/* @__PURE__ */ t($, {
|
|
5066
|
-
icon: r.icon ??
|
|
5063
|
+
icon: r.icon ?? li[r.id] ?? "portal",
|
|
5067
5064
|
size: c === "small-mobile" ? "sm" : "md",
|
|
5068
5065
|
style: "line"
|
|
5069
5066
|
}),
|
|
@@ -5078,8 +5075,8 @@ function gi({ activeModeId: e, className: r, disabled: i = !1, label: a, modes:
|
|
|
5078
5075
|
})]
|
|
5079
5076
|
});
|
|
5080
5077
|
}
|
|
5081
|
-
function
|
|
5082
|
-
let d = ["game-ui-terrain-tool-strip", n].filter(Boolean).join(" "), f =
|
|
5078
|
+
function gi({ activeToolId: e, className: n, compactLabelMode: r = "auto", density: i = "comfortable", disabled: a = !1, label: o, onToolChange: s, tools: c, variant: l = "desktop", "data-testid": u }) {
|
|
5079
|
+
let d = ["game-ui-terrain-tool-strip", n].filter(Boolean).join(" "), f = mi(r, l);
|
|
5083
5080
|
return /* @__PURE__ */ t("section", {
|
|
5084
5081
|
"aria-label": o,
|
|
5085
5082
|
className: d,
|
|
@@ -5088,8 +5085,8 @@ function _i({ activeToolId: e, className: n, compactLabelMode: r = "auto", densi
|
|
|
5088
5085
|
"data-ui-hook": "terrain-tool-strip",
|
|
5089
5086
|
"data-variant": l,
|
|
5090
5087
|
"data-testid": u,
|
|
5091
|
-
children: /* @__PURE__ */ t(
|
|
5092
|
-
actions: c.map((t) =>
|
|
5088
|
+
children: /* @__PURE__ */ t(Qr, {
|
|
5089
|
+
actions: c.map((t) => di(t, e, s, a)),
|
|
5093
5090
|
density: i,
|
|
5094
5091
|
iconLabelMode: f,
|
|
5095
5092
|
label: o,
|
|
@@ -5097,18 +5094,18 @@ function _i({ activeToolId: e, className: n, compactLabelMode: r = "auto", densi
|
|
|
5097
5094
|
})
|
|
5098
5095
|
});
|
|
5099
5096
|
}
|
|
5100
|
-
function
|
|
5101
|
-
let l = ["game-ui-brush-controls", e].filter(Boolean).join(" "), u = o.minRadius ?? 1, d = o.maxRadius ?? 8, f = o.radiusStep ?? .25, p = o.minStrength ?? 0, m = o.maxStrength ?? 1, h = o.strengthStep ?? .05, g =
|
|
5102
|
-
i?.(
|
|
5097
|
+
function _i({ className: e, labels: r = {}, onRadiusChange: i, onStrengthChange: a, state: o, variant: s = "desktop", "data-testid": c }) {
|
|
5098
|
+
let l = ["game-ui-brush-controls", e].filter(Boolean).join(" "), u = o.minRadius ?? 1, d = o.maxRadius ?? 8, f = o.radiusStep ?? .25, p = o.minStrength ?? 0, m = o.maxStrength ?? 1, h = o.strengthStep ?? .05, g = fi(o.radius, u, d), _ = fi(o.strength, p, m), v = !!o.disabled, y = (e) => {
|
|
5099
|
+
i?.(fi(Number(e.currentTarget.value), u, d));
|
|
5103
5100
|
}, b = (e) => {
|
|
5104
|
-
a?.(
|
|
5101
|
+
a?.(fi(Number(e.currentTarget.value), p, m));
|
|
5105
5102
|
};
|
|
5106
5103
|
return /* @__PURE__ */ n("section", {
|
|
5107
5104
|
className: l,
|
|
5108
5105
|
"data-ui-hook": "brush-controls",
|
|
5109
5106
|
"data-variant": s,
|
|
5110
5107
|
"data-testid": c,
|
|
5111
|
-
children: [/* @__PURE__ */ t(
|
|
5108
|
+
children: [/* @__PURE__ */ t(Hr, {
|
|
5112
5109
|
...r.radiusHint ? { hint: r.radiusHint } : {},
|
|
5113
5110
|
label: r.radius ?? "Brush radius",
|
|
5114
5111
|
children: /* @__PURE__ */ n("div", {
|
|
@@ -5138,7 +5135,7 @@ function vi({ className: e, labels: r = {}, onRadiusChange: i, onStrengthChange:
|
|
|
5138
5135
|
value: g
|
|
5139
5136
|
})]
|
|
5140
5137
|
})
|
|
5141
|
-
}), /* @__PURE__ */ t(
|
|
5138
|
+
}), /* @__PURE__ */ t(Hr, {
|
|
5142
5139
|
...r.strengthHint ? { hint: r.strengthHint } : {},
|
|
5143
5140
|
label: r.strength ?? "Brush strength",
|
|
5144
5141
|
children: /* @__PURE__ */ n("div", {
|
|
@@ -5171,7 +5168,7 @@ function vi({ className: e, labels: r = {}, onRadiusChange: i, onStrengthChange:
|
|
|
5171
5168
|
})]
|
|
5172
5169
|
});
|
|
5173
5170
|
}
|
|
5174
|
-
function
|
|
5171
|
+
function vi({ activeMaterialId: e, className: r, disabled: i = !1, label: a, materials: o, onMaterialChange: s, variant: c = "desktop", "data-testid": l }) {
|
|
5175
5172
|
return /* @__PURE__ */ t("section", {
|
|
5176
5173
|
"aria-label": a,
|
|
5177
5174
|
className: ["game-ui-material-swatches", r].filter(Boolean).join(" "),
|
|
@@ -5214,14 +5211,14 @@ function yi({ activeMaterialId: e, className: r, disabled: i = !1, label: a, mat
|
|
|
5214
5211
|
})
|
|
5215
5212
|
});
|
|
5216
5213
|
}
|
|
5217
|
-
function
|
|
5214
|
+
function yi({ canRedo: e = !1, canUndo: n = !1, className: r, disabled: i = !1, label: a, onRedo: o, onUndo: s, redoLabel: c = "Redo", undoLabel: l = "Undo", variant: u = "desktop", "data-testid": d }) {
|
|
5218
5215
|
return /* @__PURE__ */ t("section", {
|
|
5219
5216
|
"aria-label": a,
|
|
5220
5217
|
className: ["game-ui-undo-redo-actions", r].filter(Boolean).join(" "),
|
|
5221
5218
|
"data-ui-hook": "undo-redo-actions",
|
|
5222
5219
|
"data-variant": u,
|
|
5223
5220
|
"data-testid": d,
|
|
5224
|
-
children: /* @__PURE__ */ t(
|
|
5221
|
+
children: /* @__PURE__ */ t(Qr, {
|
|
5225
5222
|
actions: [{
|
|
5226
5223
|
disabled: i || !n,
|
|
5227
5224
|
icon: "undo",
|
|
@@ -5247,7 +5244,7 @@ function bi({ canRedo: e = !1, canUndo: n = !1, className: r, disabled: i = !1,
|
|
|
5247
5244
|
})
|
|
5248
5245
|
});
|
|
5249
5246
|
}
|
|
5250
|
-
function
|
|
5247
|
+
function bi({ activeCategoryId: e, categories: r, className: i, density: a = "comfortable", emptyDescription: o = "Building pieces will appear here when a category is available.", emptyTitle: s = "No build pieces ready", label: c, onCategoryChange: l, onSelectItem: u, selectedItemId: d, title: f, variant: p = "desktop", "data-testid": m }) {
|
|
5251
5248
|
let h = ["game-ui-build-library", i].filter(Boolean).join(" "), g = r.filter((e) => !e.disabled), _ = r.find((t) => t.id === e) ?? g[0] ?? r[0], v = _?.items ?? [], y = p === "small-mobile";
|
|
5252
5249
|
return /* @__PURE__ */ t(X, {
|
|
5253
5250
|
className: h,
|
|
@@ -5277,7 +5274,7 @@ function xi({ activeCategoryId: e, categories: r, className: i, density: a = "co
|
|
|
5277
5274
|
type: "button",
|
|
5278
5275
|
children: [
|
|
5279
5276
|
/* @__PURE__ */ t($, {
|
|
5280
|
-
icon: e.icon ??
|
|
5277
|
+
icon: e.icon ?? li[e.id] ?? "home",
|
|
5281
5278
|
size: "sm",
|
|
5282
5279
|
style: "line"
|
|
5283
5280
|
}),
|
|
@@ -5286,7 +5283,7 @@ function xi({ activeCategoryId: e, categories: r, className: i, density: a = "co
|
|
|
5286
5283
|
]
|
|
5287
5284
|
}, e.id);
|
|
5288
5285
|
})
|
|
5289
|
-
}), v.length === 0 || !_ ? /* @__PURE__ */ t(
|
|
5286
|
+
}), v.length === 0 || !_ ? /* @__PURE__ */ t(qr, {
|
|
5290
5287
|
description: o,
|
|
5291
5288
|
icon: "home",
|
|
5292
5289
|
title: s
|
|
@@ -5324,7 +5321,7 @@ function xi({ activeCategoryId: e, categories: r, className: i, density: a = "co
|
|
|
5324
5321
|
/* @__PURE__ */ n("span", {
|
|
5325
5322
|
className: "game-ui-build-item-badges",
|
|
5326
5323
|
children: [/* @__PURE__ */ t(Q, {
|
|
5327
|
-
tone:
|
|
5324
|
+
tone: ui[i],
|
|
5328
5325
|
children: i
|
|
5329
5326
|
}), e.badges?.map((e) => /* @__PURE__ */ t(Q, {
|
|
5330
5327
|
tone: e.tone ?? "neutral",
|
|
@@ -5342,7 +5339,7 @@ function xi({ activeCategoryId: e, categories: r, className: i, density: a = "co
|
|
|
5342
5339
|
})
|
|
5343
5340
|
});
|
|
5344
5341
|
}
|
|
5345
|
-
function
|
|
5342
|
+
function xi({ children: e, className: r, closeIcon: i = "close", closeLabel: a = "Close tools", disabled: o = !1, label: s, onOpenChange: c, open: l, panelId: u, title: d, triggerIcon: f = "settings", triggerLabel: p = "Tools", variant: m = "mobile", "data-testid": h }) {
|
|
5346
5343
|
let g = ["game-ui-compact-game-drawer", r].filter(Boolean).join(" "), _ = u ?? `${d.toLowerCase().replace(/[^a-z0-9]+/g, "-") || "tools"}-drawer-panel`;
|
|
5347
5344
|
return /* @__PURE__ */ n("aside", {
|
|
5348
5345
|
"aria-label": s,
|
|
@@ -5377,7 +5374,7 @@ function Si({ children: e, className: r, closeIcon: i = "close", closeLabel: a =
|
|
|
5377
5374
|
})]
|
|
5378
5375
|
});
|
|
5379
5376
|
}
|
|
5380
|
-
function
|
|
5377
|
+
function Si({ status: e }) {
|
|
5381
5378
|
if (!e) return null;
|
|
5382
5379
|
let r = typeof e.progressValue == "number" && typeof e.progressMax == "number", i = e.tone === "danger" ? "danger" : e.tone === "warning" ? "warning" : "success", a = e.progressMax ?? 100, o = e.progressValue ?? 0;
|
|
5383
5380
|
return /* @__PURE__ */ n("div", {
|
|
@@ -5390,7 +5387,7 @@ function Ci({ status: e }) {
|
|
|
5390
5387
|
children: e.label
|
|
5391
5388
|
}),
|
|
5392
5389
|
e.description ? /* @__PURE__ */ t("p", { children: e.description }) : null,
|
|
5393
|
-
r ? /* @__PURE__ */ t(
|
|
5390
|
+
r ? /* @__PURE__ */ t(Kr, {
|
|
5394
5391
|
label: e.progressLabel ?? e.label,
|
|
5395
5392
|
max: a,
|
|
5396
5393
|
showValue: !0,
|
|
@@ -5400,15 +5397,15 @@ function Ci({ status: e }) {
|
|
|
5400
5397
|
]
|
|
5401
5398
|
});
|
|
5402
5399
|
}
|
|
5403
|
-
function
|
|
5400
|
+
function Ci({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, activeToolId: a, brush: o, buildCategories: s = [], density: c = "comfortable", disabled: l = !1, materials: u = [], modes: d, onBrushRadiusChange: f, onBrushStrengthChange: p, onBuildCategoryChange: m, onMaterialChange: h, onModeChange: g, onRedo: _, onSelectBuildItem: v, onToolChange: y, onUndo: b, selectedBuildItemId: x, status: S, toolCompactLabelMode: C = "auto", tools: w, undoRedo: T, variant: E = "desktop" }) {
|
|
5404
5401
|
return /* @__PURE__ */ n("div", {
|
|
5405
5402
|
className: "game-ui-terrain-build-toolbox-body",
|
|
5406
5403
|
"data-active-mode": i,
|
|
5407
5404
|
"data-active-tool": a,
|
|
5408
5405
|
"data-variant": E,
|
|
5409
5406
|
children: [
|
|
5410
|
-
/* @__PURE__ */ t(
|
|
5411
|
-
/* @__PURE__ */ t(
|
|
5407
|
+
/* @__PURE__ */ t(Si, { status: S }),
|
|
5408
|
+
/* @__PURE__ */ t(hi, {
|
|
5412
5409
|
activeModeId: i,
|
|
5413
5410
|
disabled: l,
|
|
5414
5411
|
label: "Tool mode",
|
|
@@ -5419,7 +5416,7 @@ function wi({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5419
5416
|
/* @__PURE__ */ n("div", {
|
|
5420
5417
|
className: "game-ui-terrain-build-main-grid",
|
|
5421
5418
|
children: [
|
|
5422
|
-
/* @__PURE__ */ t(
|
|
5419
|
+
/* @__PURE__ */ t(gi, {
|
|
5423
5420
|
activeToolId: a,
|
|
5424
5421
|
compactLabelMode: C,
|
|
5425
5422
|
density: c,
|
|
@@ -5429,7 +5426,7 @@ function wi({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5429
5426
|
tools: w,
|
|
5430
5427
|
variant: E
|
|
5431
5428
|
}),
|
|
5432
|
-
/* @__PURE__ */ t(
|
|
5429
|
+
/* @__PURE__ */ t(yi, {
|
|
5433
5430
|
canRedo: T?.canRedo,
|
|
5434
5431
|
canUndo: T?.canUndo,
|
|
5435
5432
|
disabled: l,
|
|
@@ -5440,7 +5437,7 @@ function wi({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5440
5437
|
undoLabel: T?.undoLabel,
|
|
5441
5438
|
variant: E
|
|
5442
5439
|
}),
|
|
5443
|
-
/* @__PURE__ */ t(
|
|
5440
|
+
/* @__PURE__ */ t(_i, {
|
|
5444
5441
|
onRadiusChange: f,
|
|
5445
5442
|
onStrengthChange: p,
|
|
5446
5443
|
state: {
|
|
@@ -5449,7 +5446,7 @@ function wi({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5449
5446
|
},
|
|
5450
5447
|
variant: E
|
|
5451
5448
|
}),
|
|
5452
|
-
u.length > 0 ? /* @__PURE__ */ t(
|
|
5449
|
+
u.length > 0 ? /* @__PURE__ */ t(vi, {
|
|
5453
5450
|
activeMaterialId: r,
|
|
5454
5451
|
disabled: l,
|
|
5455
5452
|
label: "Terrain materials",
|
|
@@ -5459,7 +5456,7 @@ function wi({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5459
5456
|
}) : null
|
|
5460
5457
|
]
|
|
5461
5458
|
}),
|
|
5462
|
-
s.length > 0 ? /* @__PURE__ */ t(
|
|
5459
|
+
s.length > 0 ? /* @__PURE__ */ t(bi, {
|
|
5463
5460
|
activeCategoryId: e,
|
|
5464
5461
|
categories: s,
|
|
5465
5462
|
density: c,
|
|
@@ -5473,12 +5470,12 @@ function wi({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5473
5470
|
]
|
|
5474
5471
|
});
|
|
5475
5472
|
}
|
|
5476
|
-
function
|
|
5477
|
-
let u = ["game-ui-terrain-build-toolbox", e].filter(Boolean).join(" "), d = /* @__PURE__ */ t(
|
|
5473
|
+
function wi({ className: e, drawerOpen: n = !1, drawerTitle: r = "Terrain and build tools", label: i, onDrawerOpenChange: a, title: o, variant: s = "desktop", "data-testid": c, ...l }) {
|
|
5474
|
+
let u = ["game-ui-terrain-build-toolbox", e].filter(Boolean).join(" "), d = /* @__PURE__ */ t(Ci, {
|
|
5478
5475
|
...l,
|
|
5479
5476
|
variant: s
|
|
5480
5477
|
});
|
|
5481
|
-
return s === "mobile" || s === "small-mobile" ? /* @__PURE__ */ t(
|
|
5478
|
+
return s === "mobile" || s === "small-mobile" ? /* @__PURE__ */ t(xi, {
|
|
5482
5479
|
className: u,
|
|
5483
5480
|
label: i,
|
|
5484
5481
|
onOpenChange: a,
|
|
@@ -5503,7 +5500,7 @@ function Ti({ className: e, drawerOpen: n = !1, drawerTitle: r = "Terrain and bu
|
|
|
5503
5500
|
}
|
|
5504
5501
|
//#endregion
|
|
5505
5502
|
//#region src/GameContractorTools.tsx
|
|
5506
|
-
var
|
|
5503
|
+
var Ti = {
|
|
5507
5504
|
accepted: "success",
|
|
5508
5505
|
blocked: "danger",
|
|
5509
5506
|
cancelled: "neutral",
|
|
@@ -5512,7 +5509,7 @@ var Ei = {
|
|
|
5512
5509
|
queued: "warning",
|
|
5513
5510
|
readyForReview: "success",
|
|
5514
5511
|
working: "ai"
|
|
5515
|
-
},
|
|
5512
|
+
}, Ei = {
|
|
5516
5513
|
accepted: "check",
|
|
5517
5514
|
blocked: "alert",
|
|
5518
5515
|
cancelled: "close",
|
|
@@ -5521,26 +5518,26 @@ var Ei = {
|
|
|
5521
5518
|
queued: "hourglass",
|
|
5522
5519
|
readyForReview: "vote",
|
|
5523
5520
|
working: "energy"
|
|
5524
|
-
},
|
|
5521
|
+
}, Di = {
|
|
5525
5522
|
active: "ai",
|
|
5526
5523
|
blocked: "danger",
|
|
5527
5524
|
complete: "success",
|
|
5528
5525
|
pending: "neutral"
|
|
5529
|
-
},
|
|
5526
|
+
}, Oi = {
|
|
5530
5527
|
blocked: "danger",
|
|
5531
5528
|
done: "success",
|
|
5532
5529
|
idle: "neutral",
|
|
5533
5530
|
queued: "warning",
|
|
5534
5531
|
working: "ai"
|
|
5535
|
-
},
|
|
5532
|
+
}, ki = {
|
|
5536
5533
|
"local-only": "Local only",
|
|
5537
5534
|
mock: "Mock run",
|
|
5538
5535
|
"paid-disabled": "Paid provider off"
|
|
5539
|
-
},
|
|
5536
|
+
}, Ai = {
|
|
5540
5537
|
"local-only": "success",
|
|
5541
5538
|
mock: "ai",
|
|
5542
5539
|
"paid-disabled": "warning"
|
|
5543
|
-
},
|
|
5540
|
+
}, ji = {
|
|
5544
5541
|
accepted: [{
|
|
5545
5542
|
id: "revert",
|
|
5546
5543
|
label: "Revert",
|
|
@@ -5646,17 +5643,17 @@ var Ei = {
|
|
|
5646
5643
|
tone: "danger"
|
|
5647
5644
|
}]
|
|
5648
5645
|
};
|
|
5649
|
-
function
|
|
5646
|
+
function Mi(e, t) {
|
|
5650
5647
|
if (t) return t;
|
|
5651
5648
|
switch (e) {
|
|
5652
5649
|
case "readyForReview": return "Ready for review";
|
|
5653
5650
|
default: return e.replace(/([A-Z])/g, " $1").replace(/^./, (e) => e.toUpperCase());
|
|
5654
5651
|
}
|
|
5655
5652
|
}
|
|
5656
|
-
function
|
|
5653
|
+
function Ni(e) {
|
|
5657
5654
|
return e === "blocked" || e === "cancelled" ? "danger" : e === "accepted" || e === "readyForReview" ? "success" : e === "queued" || e === "draft" || e === "preview" ? "warning" : "accent";
|
|
5658
5655
|
}
|
|
5659
|
-
function
|
|
5656
|
+
function Pi(e) {
|
|
5660
5657
|
switch (e) {
|
|
5661
5658
|
case "accepted": return 100;
|
|
5662
5659
|
case "blocked": return 42;
|
|
@@ -5668,7 +5665,7 @@ function Fi(e) {
|
|
|
5668
5665
|
case "working": return 64;
|
|
5669
5666
|
}
|
|
5670
5667
|
}
|
|
5671
|
-
function
|
|
5668
|
+
function Fi(e, t, n) {
|
|
5672
5669
|
let r = {
|
|
5673
5670
|
disabled: !!(n || e.disabled),
|
|
5674
5671
|
id: e.id,
|
|
@@ -5677,14 +5674,14 @@ function Ii(e, t, n) {
|
|
|
5677
5674
|
};
|
|
5678
5675
|
return e.icon && (r.icon = e.icon), e.ariaLabel && (r.ariaLabel = e.ariaLabel), e.meta && (r.meta = e.meta), t && (r.onAction = t), r;
|
|
5679
5676
|
}
|
|
5680
|
-
function
|
|
5677
|
+
function Ii(e) {
|
|
5681
5678
|
return e === "danger" || e === "warning" ? "alert" : "status";
|
|
5682
5679
|
}
|
|
5683
|
-
function
|
|
5680
|
+
function Li(e) {
|
|
5684
5681
|
return !!(e.before && e.after);
|
|
5685
5682
|
}
|
|
5686
|
-
function
|
|
5687
|
-
let m = ["game-ui-construction-progress", e].filter(Boolean).join(" "), h = d ??
|
|
5683
|
+
function Ri({ className: e, label: r, max: i = 100, progressLabel: a = "Construction progress", showStatusBadge: o = !0, status: s, statusLabel: c, steps: l = [], validationWarnings: u = [], value: d, variant: f = "desktop", "data-testid": p }) {
|
|
5684
|
+
let m = ["game-ui-construction-progress", e].filter(Boolean).join(" "), h = d ?? Pi(s), g = Mi(s, c);
|
|
5688
5685
|
return /* @__PURE__ */ n("section", {
|
|
5689
5686
|
"aria-label": r,
|
|
5690
5687
|
className: m,
|
|
@@ -5696,18 +5693,18 @@ function zi({ className: e, label: r, max: i = 100, progressLabel: a = "Construc
|
|
|
5696
5693
|
/* @__PURE__ */ n("header", {
|
|
5697
5694
|
className: "game-ui-construction-progress-header",
|
|
5698
5695
|
children: [/* @__PURE__ */ n("span", { children: [/* @__PURE__ */ t($, {
|
|
5699
|
-
icon:
|
|
5696
|
+
icon: Ei[s],
|
|
5700
5697
|
size: "sm"
|
|
5701
5698
|
}), /* @__PURE__ */ t("strong", { children: a })] }), o ? /* @__PURE__ */ t(Q, {
|
|
5702
|
-
tone:
|
|
5699
|
+
tone: Ti[s],
|
|
5703
5700
|
children: g
|
|
5704
5701
|
}) : null]
|
|
5705
5702
|
}),
|
|
5706
|
-
/* @__PURE__ */ t(
|
|
5703
|
+
/* @__PURE__ */ t(Kr, {
|
|
5707
5704
|
label: a,
|
|
5708
5705
|
max: i,
|
|
5709
5706
|
showValue: !0,
|
|
5710
|
-
tone:
|
|
5707
|
+
tone: Ni(s),
|
|
5711
5708
|
value: h
|
|
5712
5709
|
}),
|
|
5713
5710
|
l.length > 0 ? /* @__PURE__ */ t("ol", {
|
|
@@ -5722,7 +5719,7 @@ function zi({ className: e, label: r, max: i = 100, progressLabel: a = "Construc
|
|
|
5722
5719
|
}),
|
|
5723
5720
|
/* @__PURE__ */ n("span", { children: [/* @__PURE__ */ t("strong", { children: e.label }), e.caption ? /* @__PURE__ */ t("small", { children: e.caption }) : null] }),
|
|
5724
5721
|
/* @__PURE__ */ t(Q, {
|
|
5725
|
-
tone:
|
|
5722
|
+
tone: Di[e.status],
|
|
5726
5723
|
children: e.status
|
|
5727
5724
|
})
|
|
5728
5725
|
]
|
|
@@ -5734,7 +5731,7 @@ function zi({ className: e, label: r, max: i = 100, progressLabel: a = "Construc
|
|
|
5734
5731
|
children: u.map((e) => /* @__PURE__ */ n("div", {
|
|
5735
5732
|
className: "game-ui-construction-warning",
|
|
5736
5733
|
"data-warning-tone": e.tone ?? "warning",
|
|
5737
|
-
role:
|
|
5734
|
+
role: Ii(e.tone),
|
|
5738
5735
|
children: [/* @__PURE__ */ t($, {
|
|
5739
5736
|
icon: e.tone === "danger" || e.tone === "warning" ? "alert" : "check",
|
|
5740
5737
|
size: "sm"
|
|
@@ -5744,8 +5741,8 @@ function zi({ className: e, label: r, max: i = 100, progressLabel: a = "Construc
|
|
|
5744
5741
|
]
|
|
5745
5742
|
});
|
|
5746
5743
|
}
|
|
5747
|
-
function
|
|
5748
|
-
let p = ["game-ui-construction-approval-bar", r].filter(Boolean).join(" "), m = e ??
|
|
5744
|
+
function zi({ actions: e, className: r, disabled: i = !1, label: a, localOnlyLabel: o = "Local-only construction", onAction: s, providerMode: c, status: l, validationWarnings: u = [], variant: d = "desktop", "data-testid": f }) {
|
|
5745
|
+
let p = ["game-ui-construction-approval-bar", r].filter(Boolean).join(" "), m = e ?? ji[l], h = u.filter((e) => e.tone !== "success").length, g = m.map((e) => Fi(e, s, i));
|
|
5749
5746
|
return /* @__PURE__ */ n("section", {
|
|
5750
5747
|
"aria-label": a,
|
|
5751
5748
|
className: p,
|
|
@@ -5756,8 +5753,8 @@ function Bi({ actions: e, className: r, disabled: i = !1, label: a, localOnlyLab
|
|
|
5756
5753
|
children: [/* @__PURE__ */ n("div", {
|
|
5757
5754
|
className: "game-ui-construction-approval-meta",
|
|
5758
5755
|
children: [c ? /* @__PURE__ */ t(Q, {
|
|
5759
|
-
tone:
|
|
5760
|
-
children:
|
|
5756
|
+
tone: Ai[c],
|
|
5757
|
+
children: ki[c]
|
|
5761
5758
|
}) : /* @__PURE__ */ t(Q, {
|
|
5762
5759
|
tone: "success",
|
|
5763
5760
|
children: o
|
|
@@ -5772,21 +5769,21 @@ function Bi({ actions: e, className: r, disabled: i = !1, label: a, localOnlyLab
|
|
|
5772
5769
|
tone: "success",
|
|
5773
5770
|
children: "Validation clear"
|
|
5774
5771
|
})]
|
|
5775
|
-
}), g.length > 0 ? /* @__PURE__ */ t(
|
|
5772
|
+
}), g.length > 0 ? /* @__PURE__ */ t(Qr, {
|
|
5776
5773
|
actions: g,
|
|
5777
5774
|
density: d === "small-mobile" ? "dense" : "comfortable",
|
|
5778
5775
|
label: `${a} actions`
|
|
5779
5776
|
}) : null]
|
|
5780
5777
|
});
|
|
5781
5778
|
}
|
|
5782
|
-
function
|
|
5779
|
+
function Bi({ className: e, crew: r, emptyDescription: i = "Robot crew members appear here when a construction job starts.", emptyTitle: a = "No robot crew assigned", label: o, title: s, variant: c = "desktop", "data-testid": l }) {
|
|
5783
5780
|
return /* @__PURE__ */ n("section", {
|
|
5784
5781
|
"aria-label": o,
|
|
5785
5782
|
className: ["game-ui-robot-crew-status", e].filter(Boolean).join(" "),
|
|
5786
5783
|
"data-ui-hook": "robot-crew-status",
|
|
5787
5784
|
"data-variant": c,
|
|
5788
5785
|
"data-testid": l,
|
|
5789
|
-
children: [s ? /* @__PURE__ */ t("header", { children: /* @__PURE__ */ t("strong", { children: s }) }) : null, r.length === 0 ? /* @__PURE__ */ t(
|
|
5786
|
+
children: [s ? /* @__PURE__ */ t("header", { children: /* @__PURE__ */ t("strong", { children: s }) }) : null, r.length === 0 ? /* @__PURE__ */ t(qr, {
|
|
5790
5787
|
description: i,
|
|
5791
5788
|
icon: "ai",
|
|
5792
5789
|
title: a
|
|
@@ -5809,7 +5806,7 @@ function Vi({ className: e, crew: r, emptyDescription: i = "Robot crew members a
|
|
|
5809
5806
|
]
|
|
5810
5807
|
}),
|
|
5811
5808
|
/* @__PURE__ */ t(Q, {
|
|
5812
|
-
tone:
|
|
5809
|
+
tone: Oi[e.status],
|
|
5813
5810
|
children: e.status
|
|
5814
5811
|
})
|
|
5815
5812
|
]
|
|
@@ -5817,7 +5814,7 @@ function Vi({ className: e, crew: r, emptyDescription: i = "Robot crew members a
|
|
|
5817
5814
|
})]
|
|
5818
5815
|
});
|
|
5819
5816
|
}
|
|
5820
|
-
function
|
|
5817
|
+
function Vi({ activeView: e, after: r, before: i, className: a, label: o, onViewChange: s, variant: c = "desktop", "data-testid": l }) {
|
|
5821
5818
|
let u = ["game-ui-before-after-toggle", a].filter(Boolean).join(" "), d = e === "before" ? i : r;
|
|
5822
5819
|
return /* @__PURE__ */ n("section", {
|
|
5823
5820
|
"aria-label": o,
|
|
@@ -5826,7 +5823,7 @@ function Hi({ activeView: e, after: r, before: i, className: a, label: o, onView
|
|
|
5826
5823
|
"data-ui-hook": "before-after-toggle",
|
|
5827
5824
|
"data-variant": c,
|
|
5828
5825
|
"data-testid": l,
|
|
5829
|
-
children: [/* @__PURE__ */ t(
|
|
5826
|
+
children: [/* @__PURE__ */ t(er, {
|
|
5830
5827
|
activeId: e,
|
|
5831
5828
|
label: `${o} view`,
|
|
5832
5829
|
...s ? { onSelect: (e) => s(e) } : {},
|
|
@@ -5853,8 +5850,8 @@ function Hi({ activeView: e, after: r, before: i, className: a, label: o, onView
|
|
|
5853
5850
|
})]
|
|
5854
5851
|
});
|
|
5855
5852
|
}
|
|
5856
|
-
function
|
|
5857
|
-
let f = ["game-ui-construction-job-card", e].filter(Boolean).join(" "), p =
|
|
5853
|
+
function Hi({ className: e, density: r = "comfortable", job: i, onAction: a, onSelect: o, selected: s = !1, showApprovalBar: c = !0, showBeforeAfter: l = !1, variant: u = "desktop", "data-testid": d }) {
|
|
5854
|
+
let f = ["game-ui-construction-job-card", e].filter(Boolean).join(" "), p = Mi(i.status, i.statusLabel), m = u === "mobile" || u === "small-mobile", h = i.facts ?? [];
|
|
5858
5855
|
return /* @__PURE__ */ n("article", {
|
|
5859
5856
|
className: f,
|
|
5860
5857
|
"data-density": r,
|
|
@@ -5874,19 +5871,19 @@ function Ui({ className: e, density: r = "comfortable", job: i, onAction: a, onS
|
|
|
5874
5871
|
onClick: () => o?.(i.id),
|
|
5875
5872
|
type: "button",
|
|
5876
5873
|
children: [/* @__PURE__ */ t($, {
|
|
5877
|
-
icon:
|
|
5874
|
+
icon: Ei[i.status],
|
|
5878
5875
|
size: m ? "sm" : "md"
|
|
5879
5876
|
}), /* @__PURE__ */ n("span", { children: [/* @__PURE__ */ t("strong", { children: i.title }), i.description ? /* @__PURE__ */ t("small", { children: i.description }) : null] })]
|
|
5880
5877
|
}), /* @__PURE__ */ n("span", {
|
|
5881
5878
|
className: "game-ui-construction-job-badges",
|
|
5882
5879
|
children: [
|
|
5883
5880
|
/* @__PURE__ */ t(Q, {
|
|
5884
|
-
tone:
|
|
5881
|
+
tone: Ti[i.status],
|
|
5885
5882
|
children: p
|
|
5886
5883
|
}),
|
|
5887
5884
|
i.providerMode ? /* @__PURE__ */ t(Q, {
|
|
5888
|
-
tone:
|
|
5889
|
-
children:
|
|
5885
|
+
tone: Ai[i.providerMode],
|
|
5886
|
+
children: ki[i.providerMode]
|
|
5890
5887
|
}) : null,
|
|
5891
5888
|
i.badges?.map((e) => /* @__PURE__ */ t(Q, {
|
|
5892
5889
|
tone: e.tone ?? "neutral",
|
|
@@ -5904,7 +5901,7 @@ function Ui({ className: e, density: r = "comfortable", job: i, onAction: a, onS
|
|
|
5904
5901
|
h.map((e) => /* @__PURE__ */ n("span", { children: [/* @__PURE__ */ t("small", { children: e.label }), /* @__PURE__ */ t("b", { children: e.value })] }, e.id))
|
|
5905
5902
|
]
|
|
5906
5903
|
}),
|
|
5907
|
-
/* @__PURE__ */ t(
|
|
5904
|
+
/* @__PURE__ */ t(Ri, {
|
|
5908
5905
|
label: `${i.title} progress`,
|
|
5909
5906
|
progressLabel: i.progressLabel,
|
|
5910
5907
|
status: i.status,
|
|
@@ -5915,19 +5912,19 @@ function Ui({ className: e, density: r = "comfortable", job: i, onAction: a, onS
|
|
|
5915
5912
|
max: i.progressMax,
|
|
5916
5913
|
variant: u
|
|
5917
5914
|
}),
|
|
5918
|
-
l &&
|
|
5915
|
+
l && Li(i) ? /* @__PURE__ */ t(Vi, {
|
|
5919
5916
|
activeView: "after",
|
|
5920
5917
|
after: i.after,
|
|
5921
5918
|
before: i.before,
|
|
5922
5919
|
label: `${i.title} preview`,
|
|
5923
5920
|
variant: u
|
|
5924
5921
|
}) : null,
|
|
5925
|
-
i.crew && i.crew.length > 0 ? /* @__PURE__ */ t(
|
|
5922
|
+
i.crew && i.crew.length > 0 ? /* @__PURE__ */ t(Bi, {
|
|
5926
5923
|
crew: i.crew,
|
|
5927
5924
|
label: `${i.title} robot crew`,
|
|
5928
5925
|
variant: u
|
|
5929
5926
|
}) : null,
|
|
5930
|
-
c ? /* @__PURE__ */ t(
|
|
5927
|
+
c ? /* @__PURE__ */ t(zi, {
|
|
5931
5928
|
actions: i.actions,
|
|
5932
5929
|
label: `${i.title} approval`,
|
|
5933
5930
|
onAction: (e) => a?.(e, i.id),
|
|
@@ -5939,8 +5936,8 @@ function Ui({ className: e, density: r = "comfortable", job: i, onAction: a, onS
|
|
|
5939
5936
|
]
|
|
5940
5937
|
});
|
|
5941
5938
|
}
|
|
5942
|
-
function
|
|
5943
|
-
return /* @__PURE__ */ t(
|
|
5939
|
+
function Ui({ children: e, className: n, closeLabel: r = "Close jobs", disabled: i = !1, jobs: a = [], label: o, onAction: s, onOpenChange: c, onSelectJob: l, open: u, panelId: d = "game-compact-job-drawer-panel", selectedJobId: f, title: p, triggerLabel: m = "Construction jobs", variant: h = "mobile", "data-testid": g }) {
|
|
5940
|
+
return /* @__PURE__ */ t(xi, {
|
|
5944
5941
|
className: ["game-ui-compact-job-drawer", n].filter(Boolean).join(" "),
|
|
5945
5942
|
closeLabel: r,
|
|
5946
5943
|
disabled: i,
|
|
@@ -5956,7 +5953,7 @@ function Wi({ children: e, className: n, closeLabel: r = "Close jobs", disabled:
|
|
|
5956
5953
|
children: e ?? /* @__PURE__ */ t("div", {
|
|
5957
5954
|
className: "game-ui-compact-job-drawer-list",
|
|
5958
5955
|
tabIndex: 0,
|
|
5959
|
-
children: a.map((e) => /* @__PURE__ */ t(
|
|
5956
|
+
children: a.map((e) => /* @__PURE__ */ t(Hi, {
|
|
5960
5957
|
density: "dense",
|
|
5961
5958
|
job: e,
|
|
5962
5959
|
onAction: s,
|
|
@@ -5968,7 +5965,7 @@ function Wi({ children: e, className: n, closeLabel: r = "Close jobs", disabled:
|
|
|
5968
5965
|
})
|
|
5969
5966
|
});
|
|
5970
5967
|
}
|
|
5971
|
-
function
|
|
5968
|
+
function Wi({ activePreviewView: e = "after", className: r, density: i = "comfortable", drawerOpen: a = !1, emptyDescription: o = "Draft construction jobs will appear here before any provider call is allowed.", emptyTitle: s = "No construction jobs", jobs: c, label: l, onAction: u, onDrawerOpenChange: d, onPreviewViewChange: f, onSelectJob: p, selectedJobId: m, subtitle: h, title: g, variant: _ = "desktop", "data-testid": v }) {
|
|
5972
5969
|
let y = ["game-ui-contractor-panel", r].filter(Boolean).join(" "), b = c.find((e) => e.id === m) ?? c[0];
|
|
5973
5970
|
return _ === "mobile" || _ === "small-mobile" ? /* @__PURE__ */ n("section", {
|
|
5974
5971
|
"aria-label": l,
|
|
@@ -5977,7 +5974,7 @@ function Gi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
5977
5974
|
"data-variant": _,
|
|
5978
5975
|
"data-testid": v,
|
|
5979
5976
|
children: [
|
|
5980
|
-
/* @__PURE__ */ t(
|
|
5977
|
+
/* @__PURE__ */ t(Ui, {
|
|
5981
5978
|
jobs: c,
|
|
5982
5979
|
label: `${l} drawer`,
|
|
5983
5980
|
onAction: u,
|
|
@@ -5989,16 +5986,16 @@ function Gi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
5989
5986
|
triggerLabel: "Contractor",
|
|
5990
5987
|
variant: _
|
|
5991
5988
|
}),
|
|
5992
|
-
b && !a ? /* @__PURE__ */ t(
|
|
5989
|
+
b && !a ? /* @__PURE__ */ t(Hi, {
|
|
5993
5990
|
density: "dense",
|
|
5994
5991
|
job: b,
|
|
5995
5992
|
onAction: u,
|
|
5996
5993
|
onSelect: p,
|
|
5997
5994
|
selected: !0,
|
|
5998
|
-
showBeforeAfter:
|
|
5995
|
+
showBeforeAfter: Li(b),
|
|
5999
5996
|
variant: _
|
|
6000
5997
|
}) : null,
|
|
6001
|
-
b ? null : /* @__PURE__ */ t(
|
|
5998
|
+
b ? null : /* @__PURE__ */ t(qr, {
|
|
6002
5999
|
description: o,
|
|
6003
6000
|
icon: "energy",
|
|
6004
6001
|
title: s
|
|
@@ -6019,7 +6016,7 @@ function Gi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6019
6016
|
className: "game-ui-contractor-panel-subtitle",
|
|
6020
6017
|
children: h
|
|
6021
6018
|
}) : null,
|
|
6022
|
-
c.length === 0 ? /* @__PURE__ */ t(
|
|
6019
|
+
c.length === 0 ? /* @__PURE__ */ t(qr, {
|
|
6023
6020
|
description: o,
|
|
6024
6021
|
icon: "energy",
|
|
6025
6022
|
title: s
|
|
@@ -6030,7 +6027,7 @@ function Gi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6030
6027
|
"aria-label": "Construction job queue",
|
|
6031
6028
|
className: "game-ui-contractor-job-list",
|
|
6032
6029
|
tabIndex: 0,
|
|
6033
|
-
children: c.map((e) => /* @__PURE__ */ t(
|
|
6030
|
+
children: c.map((e) => /* @__PURE__ */ t(Hi, {
|
|
6034
6031
|
density: i,
|
|
6035
6032
|
job: e,
|
|
6036
6033
|
onAction: u,
|
|
@@ -6043,7 +6040,7 @@ function Gi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6043
6040
|
className: "game-ui-contractor-detail",
|
|
6044
6041
|
"aria-label": `${b.title} detail`,
|
|
6045
6042
|
children: [
|
|
6046
|
-
/* @__PURE__ */ t(
|
|
6043
|
+
/* @__PURE__ */ t(Ri, {
|
|
6047
6044
|
label: `${b.title} progress detail`,
|
|
6048
6045
|
progressLabel: b.progressLabel,
|
|
6049
6046
|
status: b.status,
|
|
@@ -6054,7 +6051,7 @@ function Gi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6054
6051
|
max: b.progressMax,
|
|
6055
6052
|
variant: _
|
|
6056
6053
|
}),
|
|
6057
|
-
|
|
6054
|
+
Li(b) ? /* @__PURE__ */ t(Vi, {
|
|
6058
6055
|
activeView: e,
|
|
6059
6056
|
after: b.after,
|
|
6060
6057
|
before: b.before,
|
|
@@ -6062,13 +6059,13 @@ function Gi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6062
6059
|
onViewChange: f,
|
|
6063
6060
|
variant: _
|
|
6064
6061
|
}) : null,
|
|
6065
|
-
/* @__PURE__ */ t(
|
|
6062
|
+
/* @__PURE__ */ t(Bi, {
|
|
6066
6063
|
crew: b.crew ?? [],
|
|
6067
6064
|
label: `${b.title} robot crew`,
|
|
6068
6065
|
title: "Robot crew",
|
|
6069
6066
|
variant: _
|
|
6070
6067
|
}),
|
|
6071
|
-
/* @__PURE__ */ t(
|
|
6068
|
+
/* @__PURE__ */ t(zi, {
|
|
6072
6069
|
actions: b.actions,
|
|
6073
6070
|
label: `${b.title} approval`,
|
|
6074
6071
|
onAction: u ? (e) => u(e, b.id) : void 0,
|
|
@@ -6086,16 +6083,16 @@ function Gi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6086
6083
|
}
|
|
6087
6084
|
//#endregion
|
|
6088
6085
|
//#region src/GamePanelSystem.tsx
|
|
6089
|
-
function
|
|
6086
|
+
function Gi(...e) {
|
|
6090
6087
|
return e.filter(Boolean).join(" ");
|
|
6091
6088
|
}
|
|
6092
|
-
var
|
|
6089
|
+
var Ki = {
|
|
6093
6090
|
collapse: "Collapse",
|
|
6094
6091
|
expand: "Expand"
|
|
6095
6092
|
};
|
|
6096
|
-
function
|
|
6093
|
+
function qi({ actions: e, children: r, className: i, defaultOpen: a = !0, labels: o, onOpenChange: s, open: c, title: l, tone: d = "default", ...f }) {
|
|
6097
6094
|
let p = u(), [h, g] = m(a), _ = c ?? h, v = {
|
|
6098
|
-
...
|
|
6095
|
+
...Ki,
|
|
6099
6096
|
...o
|
|
6100
6097
|
}, y = () => {
|
|
6101
6098
|
let e = !_;
|
|
@@ -6103,7 +6100,7 @@ function Ji({ actions: e, children: r, className: i, defaultOpen: a = !0, labels
|
|
|
6103
6100
|
};
|
|
6104
6101
|
return /* @__PURE__ */ n("section", {
|
|
6105
6102
|
...f,
|
|
6106
|
-
className:
|
|
6103
|
+
className: Gi("game-ui-collapsible", i),
|
|
6107
6104
|
"data-open": _,
|
|
6108
6105
|
"data-panel-tone": d,
|
|
6109
6106
|
children: [/* @__PURE__ */ n("header", {
|
|
@@ -6142,13 +6139,13 @@ function Ji({ actions: e, children: r, className: i, defaultOpen: a = !0, labels
|
|
|
6142
6139
|
})]
|
|
6143
6140
|
});
|
|
6144
6141
|
}
|
|
6145
|
-
var
|
|
6142
|
+
var Ji = {
|
|
6146
6143
|
close: "Close",
|
|
6147
6144
|
maximize: "Maximize",
|
|
6148
6145
|
minimize: "Minimize",
|
|
6149
6146
|
restore: "Restore"
|
|
6150
6147
|
};
|
|
6151
|
-
function
|
|
6148
|
+
function Yi({ kind: e }) {
|
|
6152
6149
|
return /* @__PURE__ */ t("svg", {
|
|
6153
6150
|
"aria-hidden": "true",
|
|
6154
6151
|
fill: "none",
|
|
@@ -6168,9 +6165,9 @@ function Xi({ kind: e }) {
|
|
|
6168
6165
|
})
|
|
6169
6166
|
});
|
|
6170
6167
|
}
|
|
6171
|
-
function
|
|
6168
|
+
function Xi({ allowMaximize: e = !0, allowMinimize: r = !0, children: i, className: a, defaultState: o = "normal", footer: s, icon: c, labels: l, onClose: u, onStateChange: d, state: f, title: p, ...h }) {
|
|
6172
6169
|
let [g, _] = m(o), v = f ?? g, y = {
|
|
6173
|
-
...
|
|
6170
|
+
...Ji,
|
|
6174
6171
|
...l
|
|
6175
6172
|
}, b = (e) => {
|
|
6176
6173
|
f === void 0 && _(e), d?.(e);
|
|
@@ -6178,7 +6175,7 @@ function Zi({ allowMaximize: e = !0, allowMinimize: r = !0, children: i, classNa
|
|
|
6178
6175
|
return /* @__PURE__ */ n("section", {
|
|
6179
6176
|
...h,
|
|
6180
6177
|
"aria-label": p,
|
|
6181
|
-
className:
|
|
6178
|
+
className: Gi("game-ui-window", a),
|
|
6182
6179
|
"data-window-state": v,
|
|
6183
6180
|
role: "group",
|
|
6184
6181
|
children: [/* @__PURE__ */ n("header", {
|
|
@@ -6201,21 +6198,21 @@ function Zi({ allowMaximize: e = !0, allowMinimize: r = !0, children: i, classNa
|
|
|
6201
6198
|
className: "game-ui-icon-button game-ui-window-button",
|
|
6202
6199
|
onClick: () => b(x ? "normal" : "minimized"),
|
|
6203
6200
|
type: "button",
|
|
6204
|
-
children: /* @__PURE__ */ t(
|
|
6201
|
+
children: /* @__PURE__ */ t(Yi, { kind: x ? "restore" : "minimize" })
|
|
6205
6202
|
}) : null,
|
|
6206
6203
|
e ? /* @__PURE__ */ t("button", {
|
|
6207
6204
|
"aria-label": S ? y.restore : y.maximize,
|
|
6208
6205
|
className: "game-ui-icon-button game-ui-window-button",
|
|
6209
6206
|
onClick: () => b(S ? "normal" : "maximized"),
|
|
6210
6207
|
type: "button",
|
|
6211
|
-
children: /* @__PURE__ */ t(
|
|
6208
|
+
children: /* @__PURE__ */ t(Yi, { kind: S ? "restore" : "maximize" })
|
|
6212
6209
|
}) : null,
|
|
6213
6210
|
u ? /* @__PURE__ */ t("button", {
|
|
6214
6211
|
"aria-label": y.close,
|
|
6215
6212
|
className: "game-ui-icon-button game-ui-window-button",
|
|
6216
6213
|
onClick: u,
|
|
6217
6214
|
type: "button",
|
|
6218
|
-
children: /* @__PURE__ */ t(
|
|
6215
|
+
children: /* @__PURE__ */ t(Yi, { kind: "close" })
|
|
6219
6216
|
}) : null
|
|
6220
6217
|
]
|
|
6221
6218
|
})
|
|
@@ -6235,14 +6232,14 @@ function Zi({ allowMaximize: e = !0, allowMinimize: r = !0, children: i, classNa
|
|
|
6235
6232
|
})]
|
|
6236
6233
|
});
|
|
6237
6234
|
}
|
|
6238
|
-
function
|
|
6235
|
+
function Zi({ children: e, className: r, closeLabel: i = "Close", closeOnBackdrop: a = !0, footer: o, onClose: s, open: c, position: d = "center", size: f = "md", title: m }) {
|
|
6239
6236
|
let h = p(null), g = u();
|
|
6240
6237
|
return l(() => {
|
|
6241
6238
|
let e = h.current;
|
|
6242
6239
|
e && (c && !e.open && e.showModal(), !c && e.open && e.close());
|
|
6243
6240
|
}, [c]), /* @__PURE__ */ t("dialog", {
|
|
6244
6241
|
"aria-labelledby": g,
|
|
6245
|
-
className:
|
|
6242
|
+
className: Gi("game-ui-modal", r),
|
|
6246
6243
|
"data-position": d,
|
|
6247
6244
|
"data-size": f,
|
|
6248
6245
|
onCancel: (e) => {
|
|
@@ -6266,7 +6263,7 @@ function Qi({ children: e, className: r, closeLabel: i = "Close", closeOnBackdro
|
|
|
6266
6263
|
className: "game-ui-icon-button game-ui-window-button",
|
|
6267
6264
|
onClick: s,
|
|
6268
6265
|
type: "button",
|
|
6269
|
-
children: /* @__PURE__ */ t(
|
|
6266
|
+
children: /* @__PURE__ */ t(Yi, { kind: "close" })
|
|
6270
6267
|
})]
|
|
6271
6268
|
}),
|
|
6272
6269
|
/* @__PURE__ */ t("div", {
|
|
@@ -6283,7 +6280,7 @@ function Qi({ children: e, className: r, closeLabel: i = "Close", closeOnBackdro
|
|
|
6283
6280
|
}
|
|
6284
6281
|
//#endregion
|
|
6285
6282
|
//#region src/previewStates.ts
|
|
6286
|
-
var
|
|
6283
|
+
var Qi = [
|
|
6287
6284
|
{
|
|
6288
6285
|
id: "history-human-long",
|
|
6289
6286
|
kind: "human",
|
|
@@ -6305,23 +6302,23 @@ var $i = [
|
|
|
6305
6302
|
speaker: "Table",
|
|
6306
6303
|
text: "Three votes are locked. One more read can still change the pact."
|
|
6307
6304
|
}
|
|
6308
|
-
],
|
|
6309
|
-
...B,
|
|
6305
|
+
], $i = {
|
|
6310
6306
|
...V,
|
|
6307
|
+
..._e,
|
|
6311
6308
|
...ve,
|
|
6312
6309
|
...H,
|
|
6313
6310
|
...U,
|
|
6314
6311
|
...W,
|
|
6315
6312
|
...ye,
|
|
6316
6313
|
...xe,
|
|
6317
|
-
...
|
|
6318
|
-
},
|
|
6314
|
+
...z
|
|
6315
|
+
}, ea = {
|
|
6319
6316
|
toneAttr: "data-game-ui-tone",
|
|
6320
6317
|
toneGlass: "glass",
|
|
6321
6318
|
densityAttr: "data-game-ui-density",
|
|
6322
6319
|
densityCompact: "compact",
|
|
6323
6320
|
scopeClass: "game-ui-overlay-scope"
|
|
6324
|
-
},
|
|
6321
|
+
}, ta = be, na = /* @__PURE__ */ "--game-ui-bg.--game-ui-surface.--game-ui-surface-raised.--game-ui-panel.--game-ui-panel-strong.--game-ui-panel-deep.--game-ui-text.--game-ui-text-muted.--game-ui-accent.--game-ui-accent-bright.--game-ui-secondary.--game-ui-success.--game-ui-success-bright.--game-ui-danger.--game-ui-danger-bright.--game-ui-warning.--game-ui-focus-ring.--game-ui-border-subtle.--game-ui-border-strong.--game-ui-disabled.--game-ui-ink-deep.--game-ui-border-ink.--game-ui-wood.--game-ui-ink-title.--game-ui-ink-heading.--game-ui-liquid-metal-face.--game-ui-liquid-metal-ink".split("."), ra = {
|
|
6325
6322
|
en: {
|
|
6326
6323
|
triggerLabel: "EN",
|
|
6327
6324
|
langMenuLabel: "Preview language",
|
|
@@ -6523,7 +6520,7 @@ var $i = [
|
|
|
6523
6520
|
hint: "Rotate manually if this browser blocks automatic landscape lock."
|
|
6524
6521
|
},
|
|
6525
6522
|
historyLabel: "Round history",
|
|
6526
|
-
history:
|
|
6523
|
+
history: Qi
|
|
6527
6524
|
},
|
|
6528
6525
|
"zh-CN": {
|
|
6529
6526
|
triggerLabel: "中",
|
|
@@ -6750,18 +6747,18 @@ var $i = [
|
|
|
6750
6747
|
}
|
|
6751
6748
|
]
|
|
6752
6749
|
}
|
|
6753
|
-
},
|
|
6750
|
+
}, ia = i(ra.en), aa = () => c(ia), oa = [
|
|
6754
6751
|
{
|
|
6755
6752
|
id: "colors",
|
|
6756
|
-
tokens:
|
|
6753
|
+
tokens: L
|
|
6757
6754
|
},
|
|
6758
6755
|
{
|
|
6759
6756
|
id: "semantic",
|
|
6760
|
-
tokens:
|
|
6757
|
+
tokens: V
|
|
6761
6758
|
},
|
|
6762
6759
|
{
|
|
6763
6760
|
id: "typography",
|
|
6764
|
-
tokens:
|
|
6761
|
+
tokens: _e
|
|
6765
6762
|
},
|
|
6766
6763
|
{
|
|
6767
6764
|
id: "spacing",
|
|
@@ -6781,15 +6778,15 @@ var $i = [
|
|
|
6781
6778
|
},
|
|
6782
6779
|
{
|
|
6783
6780
|
id: "overlayGlass",
|
|
6784
|
-
tokens:
|
|
6781
|
+
tokens: B
|
|
6785
6782
|
},
|
|
6786
6783
|
{
|
|
6787
6784
|
id: "liquidMetal",
|
|
6788
|
-
tokens:
|
|
6785
|
+
tokens: R
|
|
6789
6786
|
},
|
|
6790
6787
|
{
|
|
6791
6788
|
id: "liquidGooey",
|
|
6792
|
-
tokens:
|
|
6789
|
+
tokens: z
|
|
6793
6790
|
},
|
|
6794
6791
|
{
|
|
6795
6792
|
id: "layers",
|
|
@@ -6804,7 +6801,7 @@ var $i = [
|
|
|
6804
6801
|
tokens: xe
|
|
6805
6802
|
}
|
|
6806
6803
|
];
|
|
6807
|
-
function
|
|
6804
|
+
function sa({ id: e, label: r, tokens: i }) {
|
|
6808
6805
|
return /* @__PURE__ */ n("article", {
|
|
6809
6806
|
className: "game-ui-token-card",
|
|
6810
6807
|
children: [/* @__PURE__ */ t("h3", { children: r }), /* @__PURE__ */ t("div", {
|
|
@@ -6816,18 +6813,18 @@ function ca({ id: e, label: r, tokens: i }) {
|
|
|
6816
6813
|
})]
|
|
6817
6814
|
});
|
|
6818
6815
|
}
|
|
6819
|
-
function
|
|
6816
|
+
function ca() {
|
|
6820
6817
|
return /* @__PURE__ */ t("div", {
|
|
6821
6818
|
"aria-label": "Clay color swatches",
|
|
6822
6819
|
className: "game-ui-swatch-grid",
|
|
6823
|
-
children: Object.entries(
|
|
6820
|
+
children: Object.entries(L).map(([e, r]) => /* @__PURE__ */ n("figure", {
|
|
6824
6821
|
className: "game-ui-swatch",
|
|
6825
6822
|
children: [/* @__PURE__ */ t("span", { style: { background: r } }), /* @__PURE__ */ n("figcaption", { children: [/* @__PURE__ */ t("strong", { children: e }), /* @__PURE__ */ t("code", { children: r })] })]
|
|
6826
6823
|
}, e))
|
|
6827
6824
|
});
|
|
6828
6825
|
}
|
|
6829
|
-
function
|
|
6830
|
-
let { type: e } =
|
|
6826
|
+
function la() {
|
|
6827
|
+
let { type: e } = aa();
|
|
6831
6828
|
return /* @__PURE__ */ n("div", {
|
|
6832
6829
|
className: "game-ui-type-scale",
|
|
6833
6830
|
children: [
|
|
@@ -6842,8 +6839,8 @@ function ua() {
|
|
|
6842
6839
|
]
|
|
6843
6840
|
});
|
|
6844
6841
|
}
|
|
6845
|
-
function
|
|
6846
|
-
let { buttons: e } =
|
|
6842
|
+
function ua() {
|
|
6843
|
+
let { buttons: e } = aa();
|
|
6847
6844
|
return /* @__PURE__ */ n(X, {
|
|
6848
6845
|
title: e.panelTitle,
|
|
6849
6846
|
tone: "strong",
|
|
@@ -6881,9 +6878,9 @@ function da() {
|
|
|
6881
6878
|
/* @__PURE__ */ n("div", {
|
|
6882
6879
|
className: "game-ui-component-row",
|
|
6883
6880
|
children: [
|
|
6884
|
-
/* @__PURE__ */ t(
|
|
6881
|
+
/* @__PURE__ */ t(Zn, {
|
|
6885
6882
|
label: e.settingsTip,
|
|
6886
|
-
children: /* @__PURE__ */ t(
|
|
6883
|
+
children: /* @__PURE__ */ t(Xn, {
|
|
6887
6884
|
label: e.settingsTip,
|
|
6888
6885
|
children: /* @__PURE__ */ t($, {
|
|
6889
6886
|
icon: "settings",
|
|
@@ -6891,7 +6888,7 @@ function da() {
|
|
|
6891
6888
|
})
|
|
6892
6889
|
})
|
|
6893
6890
|
}),
|
|
6894
|
-
/* @__PURE__ */ t(
|
|
6891
|
+
/* @__PURE__ */ t(Xn, {
|
|
6895
6892
|
label: e.copyInvite,
|
|
6896
6893
|
children: /* @__PURE__ */ t($, {
|
|
6897
6894
|
icon: "copy",
|
|
@@ -6912,7 +6909,7 @@ function da() {
|
|
|
6912
6909
|
})
|
|
6913
6910
|
]
|
|
6914
6911
|
}),
|
|
6915
|
-
/* @__PURE__ */ t(
|
|
6912
|
+
/* @__PURE__ */ t(er, {
|
|
6916
6913
|
activeId: "live",
|
|
6917
6914
|
label: e.segmentedLabel,
|
|
6918
6915
|
options: [
|
|
@@ -6930,7 +6927,7 @@ function da() {
|
|
|
6930
6927
|
}
|
|
6931
6928
|
]
|
|
6932
6929
|
}),
|
|
6933
|
-
/* @__PURE__ */ t(
|
|
6930
|
+
/* @__PURE__ */ t(Qn, {
|
|
6934
6931
|
activeId: "portal",
|
|
6935
6932
|
tabs: [
|
|
6936
6933
|
{
|
|
@@ -6947,7 +6944,7 @@ function da() {
|
|
|
6947
6944
|
}
|
|
6948
6945
|
]
|
|
6949
6946
|
}),
|
|
6950
|
-
/* @__PURE__ */ t(
|
|
6947
|
+
/* @__PURE__ */ t(rr, {
|
|
6951
6948
|
items: [
|
|
6952
6949
|
{
|
|
6953
6950
|
id: "wave",
|
|
@@ -6964,28 +6961,28 @@ function da() {
|
|
|
6964
6961
|
],
|
|
6965
6962
|
label: e.radialLabel
|
|
6966
6963
|
}),
|
|
6967
|
-
/* @__PURE__ */ t(
|
|
6964
|
+
/* @__PURE__ */ t(tr, {
|
|
6968
6965
|
label: e.sliderLabel,
|
|
6969
6966
|
max: 100,
|
|
6970
6967
|
min: 0,
|
|
6971
6968
|
value: 68
|
|
6972
6969
|
}),
|
|
6973
|
-
/* @__PURE__ */ t(
|
|
6970
|
+
/* @__PURE__ */ t(nr, {
|
|
6974
6971
|
checked: !0,
|
|
6975
6972
|
label: e.toggleLabel
|
|
6976
6973
|
})
|
|
6977
6974
|
]
|
|
6978
6975
|
});
|
|
6979
6976
|
}
|
|
6980
|
-
function
|
|
6981
|
-
let { hud: e, tiles: r } =
|
|
6977
|
+
function da() {
|
|
6978
|
+
let { hud: e, tiles: r } = aa();
|
|
6982
6979
|
return /* @__PURE__ */ n("div", {
|
|
6983
6980
|
className: "game-ui-stage-demo",
|
|
6984
6981
|
children: [/* @__PURE__ */ n("div", {
|
|
6985
6982
|
"aria-label": "Clay world HUD preview",
|
|
6986
6983
|
className: "game-ui-stage-world",
|
|
6987
6984
|
children: [
|
|
6988
|
-
/* @__PURE__ */ t(
|
|
6985
|
+
/* @__PURE__ */ t(kr, {
|
|
6989
6986
|
label: e.label,
|
|
6990
6987
|
items: [
|
|
6991
6988
|
{
|
|
@@ -7008,15 +7005,15 @@ function fa() {
|
|
|
7008
7005
|
value: "02:46"
|
|
7009
7006
|
}
|
|
7010
7007
|
],
|
|
7011
|
-
actions: /* @__PURE__ */ n(
|
|
7008
|
+
actions: /* @__PURE__ */ n(Yn, {
|
|
7012
7009
|
label: e.tools,
|
|
7013
|
-
children: [/* @__PURE__ */ t(
|
|
7010
|
+
children: [/* @__PURE__ */ t(Xn, {
|
|
7014
7011
|
label: e.history,
|
|
7015
7012
|
children: /* @__PURE__ */ t($, {
|
|
7016
7013
|
icon: "scroll",
|
|
7017
7014
|
size: "sm"
|
|
7018
7015
|
})
|
|
7019
|
-
}), /* @__PURE__ */ t(
|
|
7016
|
+
}), /* @__PURE__ */ t(Xn, {
|
|
7020
7017
|
label: e.settings,
|
|
7021
7018
|
children: /* @__PURE__ */ t($, {
|
|
7022
7019
|
icon: "settings",
|
|
@@ -7056,7 +7053,7 @@ function fa() {
|
|
|
7056
7053
|
}), /* @__PURE__ */ n("div", {
|
|
7057
7054
|
className: "game-ui-stage-sidecar",
|
|
7058
7055
|
children: [
|
|
7059
|
-
/* @__PURE__ */ t(
|
|
7056
|
+
/* @__PURE__ */ t(jr, {
|
|
7060
7057
|
badge: r.daily.badge,
|
|
7061
7058
|
icon: "scroll",
|
|
7062
7059
|
kicker: r.daily.kicker,
|
|
@@ -7065,7 +7062,7 @@ function fa() {
|
|
|
7065
7062
|
title: r.daily.title,
|
|
7066
7063
|
tone: "daily"
|
|
7067
7064
|
}),
|
|
7068
|
-
/* @__PURE__ */ t(
|
|
7065
|
+
/* @__PURE__ */ t(jr, {
|
|
7069
7066
|
badge: r.portal.badge,
|
|
7070
7067
|
icon: "portal",
|
|
7071
7068
|
kicker: r.portal.kicker,
|
|
@@ -7073,7 +7070,7 @@ function fa() {
|
|
|
7073
7070
|
title: r.portal.title,
|
|
7074
7071
|
tone: "portal"
|
|
7075
7072
|
}),
|
|
7076
|
-
/* @__PURE__ */ t(
|
|
7073
|
+
/* @__PURE__ */ t(jr, {
|
|
7077
7074
|
icon: "energy",
|
|
7078
7075
|
kicker: r.host.kicker,
|
|
7079
7076
|
summary: r.host.summary,
|
|
@@ -7084,21 +7081,21 @@ function fa() {
|
|
|
7084
7081
|
})]
|
|
7085
7082
|
});
|
|
7086
7083
|
}
|
|
7087
|
-
function
|
|
7088
|
-
let { hud: e, buttons: r } =
|
|
7084
|
+
function fa() {
|
|
7085
|
+
let { hud: e, buttons: r } = aa(), i = (i) => {
|
|
7089
7086
|
let a = i === "glass";
|
|
7090
7087
|
return /* @__PURE__ */ n("div", {
|
|
7091
7088
|
"aria-label": a ? "Overlay glass HUD" : "Default clay HUD",
|
|
7092
7089
|
className: [
|
|
7093
7090
|
"game-ui-stage-world",
|
|
7094
7091
|
"game-ui-overlay-glass-proof",
|
|
7095
|
-
a ?
|
|
7092
|
+
a ? ea.scopeClass : void 0
|
|
7096
7093
|
].filter(Boolean).join(" "),
|
|
7097
7094
|
...a ? {
|
|
7098
|
-
[
|
|
7099
|
-
[
|
|
7095
|
+
[ea.toneAttr]: ea.toneGlass,
|
|
7096
|
+
[ea.densityAttr]: ea.densityCompact
|
|
7100
7097
|
} : {},
|
|
7101
|
-
children: [/* @__PURE__ */ t(
|
|
7098
|
+
children: [/* @__PURE__ */ t(kr, {
|
|
7102
7099
|
label: e.label,
|
|
7103
7100
|
items: [
|
|
7104
7101
|
{
|
|
@@ -7121,15 +7118,15 @@ function pa() {
|
|
|
7121
7118
|
value: "02:46"
|
|
7122
7119
|
}
|
|
7123
7120
|
],
|
|
7124
|
-
actions: /* @__PURE__ */ n(
|
|
7121
|
+
actions: /* @__PURE__ */ n(Yn, {
|
|
7125
7122
|
label: e.tools,
|
|
7126
|
-
children: [/* @__PURE__ */ t(
|
|
7123
|
+
children: [/* @__PURE__ */ t(Xn, {
|
|
7127
7124
|
label: e.history,
|
|
7128
7125
|
children: /* @__PURE__ */ t($, {
|
|
7129
7126
|
icon: "scroll",
|
|
7130
7127
|
size: "sm"
|
|
7131
7128
|
})
|
|
7132
|
-
}), /* @__PURE__ */ t(
|
|
7129
|
+
}), /* @__PURE__ */ t(Xn, {
|
|
7133
7130
|
label: e.settings,
|
|
7134
7131
|
children: /* @__PURE__ */ t($, {
|
|
7135
7132
|
icon: "settings",
|
|
@@ -7150,7 +7147,7 @@ function pa() {
|
|
|
7150
7147
|
tone: "success",
|
|
7151
7148
|
children: r.readyBadge
|
|
7152
7149
|
}),
|
|
7153
|
-
/* @__PURE__ */ t(
|
|
7150
|
+
/* @__PURE__ */ t(Kr, {
|
|
7154
7151
|
label: e.reveal,
|
|
7155
7152
|
value: 68
|
|
7156
7153
|
})
|
|
@@ -7188,22 +7185,22 @@ function pa() {
|
|
|
7188
7185
|
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t("strong", { children: "Overlay glass + compact" }), /* @__PURE__ */ n("span", {
|
|
7189
7186
|
className: "game-ui-small-copy",
|
|
7190
7187
|
children: [
|
|
7191
|
-
|
|
7188
|
+
ea.toneAttr,
|
|
7192
7189
|
"=\"",
|
|
7193
|
-
|
|
7190
|
+
ea.toneGlass,
|
|
7194
7191
|
"\" ·",
|
|
7195
7192
|
" ",
|
|
7196
|
-
|
|
7193
|
+
ea.densityAttr,
|
|
7197
7194
|
"=\"",
|
|
7198
|
-
|
|
7195
|
+
ea.densityCompact,
|
|
7199
7196
|
"\""
|
|
7200
7197
|
]
|
|
7201
7198
|
})] }), i("glass")]
|
|
7202
7199
|
})]
|
|
7203
7200
|
});
|
|
7204
7201
|
}
|
|
7205
|
-
function
|
|
7206
|
-
let { liquidMetal: e } =
|
|
7202
|
+
function pa() {
|
|
7203
|
+
let { liquidMetal: e } = aa();
|
|
7207
7204
|
return /* @__PURE__ */ n("div", {
|
|
7208
7205
|
className: "game-ui-liquid-metal-compare",
|
|
7209
7206
|
children: [/* @__PURE__ */ t(X, {
|
|
@@ -7211,7 +7208,7 @@ function ma() {
|
|
|
7211
7208
|
tone: "strong",
|
|
7212
7209
|
children: /* @__PURE__ */ t("div", {
|
|
7213
7210
|
className: "game-ui-liquid-metal-stage",
|
|
7214
|
-
children: /* @__PURE__ */ t(
|
|
7211
|
+
children: /* @__PURE__ */ t(ge, {
|
|
7215
7212
|
renderer: "css",
|
|
7216
7213
|
children: e.cta
|
|
7217
7214
|
})
|
|
@@ -7221,7 +7218,7 @@ function ma() {
|
|
|
7221
7218
|
tone: "strong",
|
|
7222
7219
|
children: /* @__PURE__ */ t("div", {
|
|
7223
7220
|
className: "game-ui-liquid-metal-stage",
|
|
7224
|
-
children: /* @__PURE__ */ t(
|
|
7221
|
+
children: /* @__PURE__ */ t(ge, {
|
|
7225
7222
|
renderer: "webgl",
|
|
7226
7223
|
children: e.cta
|
|
7227
7224
|
})
|
|
@@ -7229,13 +7226,13 @@ function ma() {
|
|
|
7229
7226
|
})]
|
|
7230
7227
|
});
|
|
7231
7228
|
}
|
|
7232
|
-
function
|
|
7233
|
-
let { modals: e } =
|
|
7229
|
+
function ma() {
|
|
7230
|
+
let { modals: e } = aa();
|
|
7234
7231
|
return /* @__PURE__ */ n("div", {
|
|
7235
7232
|
className: "game-ui-preview-two-up",
|
|
7236
|
-
children: [/* @__PURE__ */ n(
|
|
7233
|
+
children: [/* @__PURE__ */ n(qn, {
|
|
7237
7234
|
title: e.dialogTitle,
|
|
7238
|
-
children: [/* @__PURE__ */ t("p", { children: e.dialogBody }), /* @__PURE__ */ n(
|
|
7235
|
+
children: [/* @__PURE__ */ t("p", { children: e.dialogBody }), /* @__PURE__ */ n(Yn, {
|
|
7239
7236
|
label: e.actionsLabel,
|
|
7240
7237
|
children: [/* @__PURE__ */ t(w, {
|
|
7241
7238
|
variant: "primary",
|
|
@@ -7249,16 +7246,16 @@ function ha() {
|
|
|
7249
7246
|
title: e.panelTitle,
|
|
7250
7247
|
tone: "strong",
|
|
7251
7248
|
children: [
|
|
7252
|
-
/* @__PURE__ */ t(
|
|
7249
|
+
/* @__PURE__ */ t(ir, {
|
|
7253
7250
|
tone: "success",
|
|
7254
7251
|
children: e.toastOk
|
|
7255
7252
|
}),
|
|
7256
|
-
/* @__PURE__ */ t(
|
|
7253
|
+
/* @__PURE__ */ t(ir, {
|
|
7257
7254
|
tone: "danger",
|
|
7258
7255
|
children: e.toastErr
|
|
7259
7256
|
}),
|
|
7260
|
-
/* @__PURE__ */ t(
|
|
7261
|
-
/* @__PURE__ */ t(
|
|
7257
|
+
/* @__PURE__ */ t(Fr, { label: e.loading }),
|
|
7258
|
+
/* @__PURE__ */ t(Fr, {
|
|
7262
7259
|
label: e.loadingErr,
|
|
7263
7260
|
tone: "error"
|
|
7264
7261
|
})
|
|
@@ -7266,14 +7263,14 @@ function ha() {
|
|
|
7266
7263
|
})]
|
|
7267
7264
|
});
|
|
7268
7265
|
}
|
|
7269
|
-
function
|
|
7270
|
-
let { cards: e } =
|
|
7266
|
+
function ha() {
|
|
7267
|
+
let { cards: e } = aa();
|
|
7271
7268
|
return /* @__PURE__ */ n("div", {
|
|
7272
7269
|
className: "game-ui-preview-two-up",
|
|
7273
7270
|
children: [/* @__PURE__ */ t(X, {
|
|
7274
7271
|
title: e.fanTitle,
|
|
7275
7272
|
tone: "strong",
|
|
7276
|
-
children: /* @__PURE__ */ t(
|
|
7273
|
+
children: /* @__PURE__ */ t(Ar, {
|
|
7277
7274
|
label: e.fanLabel,
|
|
7278
7275
|
cards: [
|
|
7279
7276
|
{
|
|
@@ -7305,16 +7302,16 @@ function ga() {
|
|
|
7305
7302
|
}), /* @__PURE__ */ n("div", {
|
|
7306
7303
|
className: "game-ui-asset-path-grid",
|
|
7307
7304
|
children: [
|
|
7308
|
-
/* @__PURE__ */ t("code", { children:
|
|
7309
|
-
/* @__PURE__ */ t("code", { children:
|
|
7310
|
-
/* @__PURE__ */ t("code", { children:
|
|
7311
|
-
/* @__PURE__ */ t("code", { children:
|
|
7305
|
+
/* @__PURE__ */ t("code", { children: hr.catalog.manifest }),
|
|
7306
|
+
/* @__PURE__ */ t("code", { children: hr.catalog.sourceCatalog }),
|
|
7307
|
+
/* @__PURE__ */ t("code", { children: hr.buttons.primary }),
|
|
7308
|
+
/* @__PURE__ */ t("code", { children: hr.icons.trophy })
|
|
7312
7309
|
]
|
|
7313
7310
|
})]
|
|
7314
7311
|
})]
|
|
7315
7312
|
});
|
|
7316
7313
|
}
|
|
7317
|
-
var
|
|
7314
|
+
var ga = [
|
|
7318
7315
|
{
|
|
7319
7316
|
id: "terrain",
|
|
7320
7317
|
label: "Terrain",
|
|
@@ -7330,7 +7327,7 @@ var _a = [
|
|
|
7330
7327
|
label: "Place",
|
|
7331
7328
|
icon: "gem"
|
|
7332
7329
|
}
|
|
7333
|
-
],
|
|
7330
|
+
], _a = [
|
|
7334
7331
|
{
|
|
7335
7332
|
id: "raise",
|
|
7336
7333
|
label: "Raise",
|
|
@@ -7356,7 +7353,7 @@ var _a = [
|
|
|
7356
7353
|
label: "Paint",
|
|
7357
7354
|
shortcut: "5"
|
|
7358
7355
|
}
|
|
7359
|
-
],
|
|
7356
|
+
], va = [
|
|
7360
7357
|
{
|
|
7361
7358
|
id: "grass",
|
|
7362
7359
|
label: "Grass",
|
|
@@ -7372,7 +7369,7 @@ var _a = [
|
|
|
7372
7369
|
label: "Path",
|
|
7373
7370
|
color: "#b98d5d"
|
|
7374
7371
|
}
|
|
7375
|
-
],
|
|
7372
|
+
], ya = [{
|
|
7376
7373
|
id: "foundation",
|
|
7377
7374
|
label: "Foundation",
|
|
7378
7375
|
icon: "home",
|
|
@@ -7391,10 +7388,10 @@ var _a = [
|
|
|
7391
7388
|
status: "ready"
|
|
7392
7389
|
}]
|
|
7393
7390
|
}];
|
|
7394
|
-
function
|
|
7391
|
+
function ba() {
|
|
7395
7392
|
return /* @__PURE__ */ n("div", {
|
|
7396
7393
|
className: "game-ui-preview-two-up",
|
|
7397
|
-
children: [/* @__PURE__ */ t(
|
|
7394
|
+
children: [/* @__PURE__ */ t(wi, {
|
|
7398
7395
|
activeBuildCategoryId: "foundation",
|
|
7399
7396
|
activeMaterialId: "grass",
|
|
7400
7397
|
activeModeId: "terrain",
|
|
@@ -7403,10 +7400,10 @@ function xa() {
|
|
|
7403
7400
|
radius: 2.75,
|
|
7404
7401
|
strength: .45
|
|
7405
7402
|
},
|
|
7406
|
-
buildCategories:
|
|
7403
|
+
buildCategories: ya,
|
|
7407
7404
|
label: "Desktop terrain and build tools",
|
|
7408
|
-
materials:
|
|
7409
|
-
modes:
|
|
7405
|
+
materials: va,
|
|
7406
|
+
modes: ga,
|
|
7410
7407
|
selectedBuildItemId: "floor-2x2",
|
|
7411
7408
|
status: {
|
|
7412
7409
|
label: "Ready",
|
|
@@ -7417,12 +7414,12 @@ function xa() {
|
|
|
7417
7414
|
progressValue: 68
|
|
7418
7415
|
},
|
|
7419
7416
|
title: "Island tools",
|
|
7420
|
-
tools:
|
|
7417
|
+
tools: _a,
|
|
7421
7418
|
undoRedo: {
|
|
7422
7419
|
canRedo: !1,
|
|
7423
7420
|
canUndo: !0
|
|
7424
7421
|
}
|
|
7425
|
-
}), /* @__PURE__ */ t(
|
|
7422
|
+
}), /* @__PURE__ */ t(wi, {
|
|
7426
7423
|
activeBuildCategoryId: "foundation",
|
|
7427
7424
|
activeMaterialId: "path",
|
|
7428
7425
|
activeModeId: "terrain",
|
|
@@ -7431,11 +7428,11 @@ function xa() {
|
|
|
7431
7428
|
radius: 1.5,
|
|
7432
7429
|
strength: .3
|
|
7433
7430
|
},
|
|
7434
|
-
buildCategories:
|
|
7431
|
+
buildCategories: ya,
|
|
7435
7432
|
drawerOpen: !0,
|
|
7436
7433
|
label: "Small mobile terrain drawer",
|
|
7437
|
-
materials:
|
|
7438
|
-
modes:
|
|
7434
|
+
materials: va,
|
|
7435
|
+
modes: ga,
|
|
7439
7436
|
selectedBuildItemId: "floor-2x2",
|
|
7440
7437
|
status: {
|
|
7441
7438
|
label: "Blocked",
|
|
@@ -7443,7 +7440,7 @@ function xa() {
|
|
|
7443
7440
|
description: "This edit would bury a placed object."
|
|
7444
7441
|
},
|
|
7445
7442
|
title: "Tools",
|
|
7446
|
-
tools:
|
|
7443
|
+
tools: _a,
|
|
7447
7444
|
undoRedo: {
|
|
7448
7445
|
canRedo: !0,
|
|
7449
7446
|
canUndo: !0
|
|
@@ -7452,7 +7449,7 @@ function xa() {
|
|
|
7452
7449
|
})]
|
|
7453
7450
|
});
|
|
7454
7451
|
}
|
|
7455
|
-
function
|
|
7452
|
+
function xa({ label: e, mode: r }) {
|
|
7456
7453
|
return /* @__PURE__ */ n("div", {
|
|
7457
7454
|
className: "game-ui-construction-preview-card",
|
|
7458
7455
|
"data-preview": r,
|
|
@@ -7466,7 +7463,7 @@ function Sa({ label: e, mode: r }) {
|
|
|
7466
7463
|
]
|
|
7467
7464
|
});
|
|
7468
7465
|
}
|
|
7469
|
-
var
|
|
7466
|
+
var Sa = [
|
|
7470
7467
|
{
|
|
7471
7468
|
id: "preview-deck",
|
|
7472
7469
|
title: "Deck robot crew",
|
|
@@ -7527,7 +7524,7 @@ var Ca = [
|
|
|
7527
7524
|
before: {
|
|
7528
7525
|
label: "Before",
|
|
7529
7526
|
caption: "Uneven terrain pad.",
|
|
7530
|
-
content: /* @__PURE__ */ t(
|
|
7527
|
+
content: /* @__PURE__ */ t(xa, {
|
|
7531
7528
|
label: "Rough pad",
|
|
7532
7529
|
mode: "before"
|
|
7533
7530
|
})
|
|
@@ -7535,7 +7532,7 @@ var Ca = [
|
|
|
7535
7532
|
after: {
|
|
7536
7533
|
label: "After",
|
|
7537
7534
|
caption: "Flattened foundation pad with safe clearance.",
|
|
7538
|
-
content: /* @__PURE__ */ t(
|
|
7535
|
+
content: /* @__PURE__ */ t(xa, {
|
|
7539
7536
|
label: "Foundation ready",
|
|
7540
7537
|
mode: "after"
|
|
7541
7538
|
})
|
|
@@ -7564,19 +7561,19 @@ var Ca = [
|
|
|
7564
7561
|
}]
|
|
7565
7562
|
}
|
|
7566
7563
|
];
|
|
7567
|
-
function
|
|
7564
|
+
function Ca() {
|
|
7568
7565
|
return /* @__PURE__ */ n("div", {
|
|
7569
7566
|
className: "game-ui-preview-two-up",
|
|
7570
|
-
children: [/* @__PURE__ */ t(
|
|
7571
|
-
jobs:
|
|
7567
|
+
children: [/* @__PURE__ */ t(Wi, {
|
|
7568
|
+
jobs: Sa,
|
|
7572
7569
|
label: "AI contractor jobs",
|
|
7573
7570
|
selectedJobId: "review-house-pad",
|
|
7574
7571
|
subtitle: "Official contractor UI covers drafts, previews, robot work, validation, review, and local-only provider boundaries.",
|
|
7575
7572
|
title: "AI contractor",
|
|
7576
7573
|
variant: "desktop"
|
|
7577
|
-
}), /* @__PURE__ */ t(
|
|
7574
|
+
}), /* @__PURE__ */ t(Wi, {
|
|
7578
7575
|
drawerOpen: !0,
|
|
7579
|
-
jobs:
|
|
7576
|
+
jobs: Sa,
|
|
7580
7577
|
label: "Small mobile contractor jobs",
|
|
7581
7578
|
selectedJobId: "blocked-fence",
|
|
7582
7579
|
title: "Contractor",
|
|
@@ -7584,10 +7581,10 @@ function wa() {
|
|
|
7584
7581
|
})]
|
|
7585
7582
|
});
|
|
7586
7583
|
}
|
|
7587
|
-
function
|
|
7588
|
-
return /* @__PURE__ */ t(
|
|
7584
|
+
function wa() {
|
|
7585
|
+
return /* @__PURE__ */ t(Jr, {
|
|
7589
7586
|
title: "OwnMySpace island editor preview",
|
|
7590
|
-
hud: /* @__PURE__ */ t(
|
|
7587
|
+
hud: /* @__PURE__ */ t(Xr, {
|
|
7591
7588
|
label: "Island facts",
|
|
7592
7589
|
facts: [
|
|
7593
7590
|
{
|
|
@@ -7611,11 +7608,11 @@ function Ta() {
|
|
|
7611
7608
|
}
|
|
7612
7609
|
]
|
|
7613
7610
|
}),
|
|
7614
|
-
movementPad: /* @__PURE__ */ t(
|
|
7611
|
+
movementPad: /* @__PURE__ */ t(ti, {
|
|
7615
7612
|
helpText: "WASD or arrows",
|
|
7616
7613
|
label: "Move avatar"
|
|
7617
7614
|
}),
|
|
7618
|
-
assetLibrary: /* @__PURE__ */ t(
|
|
7615
|
+
assetLibrary: /* @__PURE__ */ t(oi, {
|
|
7619
7616
|
label: "Placeable assets",
|
|
7620
7617
|
title: "Assets",
|
|
7621
7618
|
subtitle: "Starter, generated, and imported assets stay visibly distinct but share one placement path.",
|
|
@@ -7662,7 +7659,7 @@ function Ta() {
|
|
|
7662
7659
|
}
|
|
7663
7660
|
]
|
|
7664
7661
|
}),
|
|
7665
|
-
bottomBar: /* @__PURE__ */ t(
|
|
7662
|
+
bottomBar: /* @__PURE__ */ t(si, {
|
|
7666
7663
|
title: "Placement",
|
|
7667
7664
|
selectedTitle: "Manual chair",
|
|
7668
7665
|
placedObjects: 3,
|
|
@@ -7698,7 +7695,7 @@ function Ta() {
|
|
|
7698
7695
|
})
|
|
7699
7696
|
});
|
|
7700
7697
|
}
|
|
7701
|
-
var
|
|
7698
|
+
var Ta = [{
|
|
7702
7699
|
id: "starter",
|
|
7703
7700
|
label: "Starter pieces",
|
|
7704
7701
|
source: "starter",
|
|
@@ -7729,7 +7726,7 @@ var Ea = [{
|
|
|
7729
7726
|
}
|
|
7730
7727
|
]
|
|
7731
7728
|
}];
|
|
7732
|
-
function
|
|
7729
|
+
function Ea() {
|
|
7733
7730
|
return /* @__PURE__ */ t("div", {
|
|
7734
7731
|
className: "game-ui-asset-compression-repro",
|
|
7735
7732
|
"aria-label": "Asset card compression repro",
|
|
@@ -7753,9 +7750,9 @@ function Da() {
|
|
|
7753
7750
|
className: "game-ui-asset-compression-repro-surface",
|
|
7754
7751
|
"data-repro-surface": e.id,
|
|
7755
7752
|
style: { "--repro-width": e.width },
|
|
7756
|
-
children: [/* @__PURE__ */ t(Q, { children: e.label }), /* @__PURE__ */ t(
|
|
7753
|
+
children: [/* @__PURE__ */ t(Q, { children: e.label }), /* @__PURE__ */ t(oi, {
|
|
7757
7754
|
density: "dense",
|
|
7758
|
-
groups:
|
|
7755
|
+
groups: Ta,
|
|
7759
7756
|
label: `${e.label} assets`,
|
|
7760
7757
|
selectedAssetId: "asset-repro-chair",
|
|
7761
7758
|
title: "Build"
|
|
@@ -7763,13 +7760,13 @@ function Da() {
|
|
|
7763
7760
|
}, e.id))
|
|
7764
7761
|
});
|
|
7765
7762
|
}
|
|
7766
|
-
function
|
|
7767
|
-
let { firstSession: e } =
|
|
7763
|
+
function Da() {
|
|
7764
|
+
let { firstSession: e } = aa();
|
|
7768
7765
|
return /* @__PURE__ */ n("div", {
|
|
7769
7766
|
className: "game-ui-first-session-preview",
|
|
7770
7767
|
children: [/* @__PURE__ */ t("div", {
|
|
7771
7768
|
className: "game-ui-first-session-world",
|
|
7772
|
-
children: /* @__PURE__ */ t(
|
|
7769
|
+
children: /* @__PURE__ */ t(Rr, {
|
|
7773
7770
|
authenticated: !0,
|
|
7774
7771
|
batteryCount: 5,
|
|
7775
7772
|
dailyStreak: 3,
|
|
@@ -7803,7 +7800,7 @@ function Oa() {
|
|
|
7803
7800
|
})
|
|
7804
7801
|
}), /* @__PURE__ */ t("div", {
|
|
7805
7802
|
className: "game-ui-first-session-modal-slot",
|
|
7806
|
-
children: /* @__PURE__ */ t(
|
|
7803
|
+
children: /* @__PURE__ */ t(zr, {
|
|
7807
7804
|
open: !0,
|
|
7808
7805
|
onDismiss: () => void 0,
|
|
7809
7806
|
labels: {
|
|
@@ -7831,46 +7828,46 @@ function Oa() {
|
|
|
7831
7828
|
})]
|
|
7832
7829
|
});
|
|
7833
7830
|
}
|
|
7834
|
-
function
|
|
7835
|
-
let { responsive: e } =
|
|
7831
|
+
function Oa() {
|
|
7832
|
+
let { responsive: e } = aa();
|
|
7836
7833
|
return /* @__PURE__ */ n("div", {
|
|
7837
7834
|
className: "game-ui-proof-frames",
|
|
7838
7835
|
children: [/* @__PURE__ */ n("article", {
|
|
7839
7836
|
className: "game-ui-proof-frame is-desktop",
|
|
7840
|
-
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t(Q, { children: e.desktop }), /* @__PURE__ */ t("strong", { children: "1440×900" })] }), /* @__PURE__ */ t(
|
|
7837
|
+
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t(Q, { children: e.desktop }), /* @__PURE__ */ t("strong", { children: "1440×900" })] }), /* @__PURE__ */ t(da, {})]
|
|
7841
7838
|
}), /* @__PURE__ */ n("article", {
|
|
7842
7839
|
className: "game-ui-proof-frame is-mobile-landscape",
|
|
7843
|
-
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t(Q, { children: e.mobileLandscape }), /* @__PURE__ */ t("strong", { children: "844×390" })] }), /* @__PURE__ */ t(
|
|
7840
|
+
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t(Q, { children: e.mobileLandscape }), /* @__PURE__ */ t("strong", { children: "844×390" })] }), /* @__PURE__ */ t(da, {})]
|
|
7844
7841
|
})]
|
|
7845
7842
|
});
|
|
7846
7843
|
}
|
|
7847
|
-
function
|
|
7848
|
-
let { forms: e } =
|
|
7844
|
+
function ka() {
|
|
7845
|
+
let { forms: e } = aa();
|
|
7849
7846
|
return /* @__PURE__ */ n("div", {
|
|
7850
7847
|
className: "game-ui-preview-two-up",
|
|
7851
7848
|
children: [/* @__PURE__ */ n(X, {
|
|
7852
7849
|
title: e.formsTitle,
|
|
7853
7850
|
tone: "strong",
|
|
7854
7851
|
children: [
|
|
7855
|
-
/* @__PURE__ */ t(
|
|
7852
|
+
/* @__PURE__ */ t(Hr, {
|
|
7856
7853
|
hint: e.roomCodeHint,
|
|
7857
7854
|
label: e.roomCodeLabel,
|
|
7858
|
-
children: /* @__PURE__ */ t(
|
|
7855
|
+
children: /* @__PURE__ */ t(Br, { placeholder: e.roomCodePlaceholder })
|
|
7859
7856
|
}),
|
|
7860
|
-
/* @__PURE__ */ t(
|
|
7857
|
+
/* @__PURE__ */ t(Hr, {
|
|
7861
7858
|
label: e.nameLabel,
|
|
7862
7859
|
required: !0,
|
|
7863
|
-
children: /* @__PURE__ */ t(
|
|
7860
|
+
children: /* @__PURE__ */ t(Br, { placeholder: e.namePlaceholder })
|
|
7864
7861
|
}),
|
|
7865
|
-
/* @__PURE__ */ t(
|
|
7862
|
+
/* @__PURE__ */ t(Hr, {
|
|
7866
7863
|
error: e.readError,
|
|
7867
7864
|
label: e.readLabel,
|
|
7868
|
-
children: /* @__PURE__ */ t(
|
|
7865
|
+
children: /* @__PURE__ */ t(Vr, {
|
|
7869
7866
|
invalid: !0,
|
|
7870
7867
|
placeholder: e.readPlaceholder
|
|
7871
7868
|
})
|
|
7872
7869
|
}),
|
|
7873
|
-
/* @__PURE__ */ t(
|
|
7870
|
+
/* @__PURE__ */ t(Ur, {
|
|
7874
7871
|
defaultChecked: !0,
|
|
7875
7872
|
label: e.rememberLabel
|
|
7876
7873
|
})
|
|
@@ -7882,38 +7879,38 @@ function Aa() {
|
|
|
7882
7879
|
/* @__PURE__ */ n("div", {
|
|
7883
7880
|
className: "game-ui-component-row",
|
|
7884
7881
|
children: [
|
|
7885
|
-
/* @__PURE__ */ t(
|
|
7882
|
+
/* @__PURE__ */ t(Gr, {
|
|
7886
7883
|
name: "Mika Ono",
|
|
7887
7884
|
status: "online"
|
|
7888
7885
|
}),
|
|
7889
|
-
/* @__PURE__ */ t(
|
|
7886
|
+
/* @__PURE__ */ t(Gr, {
|
|
7890
7887
|
name: "River",
|
|
7891
7888
|
size: "lg",
|
|
7892
7889
|
status: "busy"
|
|
7893
7890
|
}),
|
|
7894
|
-
/* @__PURE__ */ t(
|
|
7891
|
+
/* @__PURE__ */ t(Gr, {
|
|
7895
7892
|
name: "Noa",
|
|
7896
7893
|
status: "away"
|
|
7897
7894
|
}),
|
|
7898
|
-
/* @__PURE__ */ t(
|
|
7895
|
+
/* @__PURE__ */ t(Gr, {
|
|
7899
7896
|
name: e.guestName,
|
|
7900
7897
|
size: "sm"
|
|
7901
7898
|
})
|
|
7902
7899
|
]
|
|
7903
7900
|
}),
|
|
7904
|
-
/* @__PURE__ */ t(
|
|
7901
|
+
/* @__PURE__ */ t(Kr, {
|
|
7905
7902
|
label: e.revealLabel,
|
|
7906
7903
|
showValue: !0,
|
|
7907
7904
|
value: 64
|
|
7908
7905
|
}),
|
|
7909
|
-
/* @__PURE__ */ t(
|
|
7906
|
+
/* @__PURE__ */ t(Kr, {
|
|
7910
7907
|
label: e.batteryLabel,
|
|
7911
7908
|
max: 20,
|
|
7912
7909
|
showValue: !0,
|
|
7913
7910
|
tone: "success",
|
|
7914
7911
|
value: 14
|
|
7915
7912
|
}),
|
|
7916
|
-
/* @__PURE__ */ t(
|
|
7913
|
+
/* @__PURE__ */ t(qr, {
|
|
7917
7914
|
action: /* @__PURE__ */ t(w, {
|
|
7918
7915
|
variant: "primary",
|
|
7919
7916
|
children: e.emptyCta
|
|
@@ -7926,8 +7923,8 @@ function Aa() {
|
|
|
7926
7923
|
})]
|
|
7927
7924
|
});
|
|
7928
7925
|
}
|
|
7929
|
-
var
|
|
7930
|
-
function
|
|
7926
|
+
var Aa = cr.filter((e) => fr(e).includes("game")), ja = cr.filter((e) => fr(e).includes("line"));
|
|
7927
|
+
function Ma({ names: e, style: r }) {
|
|
7931
7928
|
return /* @__PURE__ */ t("div", {
|
|
7932
7929
|
className: "game-ui-icon-grid",
|
|
7933
7930
|
children: e.map((e) => /* @__PURE__ */ n("figure", {
|
|
@@ -7940,10 +7937,10 @@ function Na({ names: e, style: r }) {
|
|
|
7940
7937
|
}, `${r}-${e}`))
|
|
7941
7938
|
});
|
|
7942
7939
|
}
|
|
7943
|
-
function
|
|
7940
|
+
function Na() {
|
|
7944
7941
|
return /* @__PURE__ */ t("div", {
|
|
7945
7942
|
className: "game-ui-icon-grid",
|
|
7946
|
-
children:
|
|
7943
|
+
children: mr.map((e) => /* @__PURE__ */ n("figure", {
|
|
7947
7944
|
className: "game-ui-icon-cell",
|
|
7948
7945
|
children: [/* @__PURE__ */ t("span", {
|
|
7949
7946
|
className: "game-ui-asset-icon",
|
|
@@ -7952,14 +7949,14 @@ function Pa() {
|
|
|
7952
7949
|
"aria-hidden": !0,
|
|
7953
7950
|
children: /* @__PURE__ */ t("img", {
|
|
7954
7951
|
alt: "",
|
|
7955
|
-
src:
|
|
7952
|
+
src: pr[e]
|
|
7956
7953
|
})
|
|
7957
7954
|
}), /* @__PURE__ */ t("figcaption", { children: e })]
|
|
7958
7955
|
}, `sprite-${e}`))
|
|
7959
7956
|
});
|
|
7960
7957
|
}
|
|
7961
|
-
function
|
|
7962
|
-
let { gallery: e } =
|
|
7958
|
+
function Pa() {
|
|
7959
|
+
let { gallery: e } = aa();
|
|
7963
7960
|
return /* @__PURE__ */ n("div", {
|
|
7964
7961
|
className: "game-ui-icon-gallery",
|
|
7965
7962
|
children: [
|
|
@@ -7974,8 +7971,8 @@ function Fa() {
|
|
|
7974
7971
|
className: "game-ui-small-copy",
|
|
7975
7972
|
children: e.gameHint
|
|
7976
7973
|
})]
|
|
7977
|
-
}), /* @__PURE__ */ t(
|
|
7978
|
-
names:
|
|
7974
|
+
}), /* @__PURE__ */ t(Ma, {
|
|
7975
|
+
names: Aa,
|
|
7979
7976
|
style: "game"
|
|
7980
7977
|
})]
|
|
7981
7978
|
}),
|
|
@@ -7987,8 +7984,8 @@ function Fa() {
|
|
|
7987
7984
|
className: "game-ui-small-copy",
|
|
7988
7985
|
children: e.lineHint
|
|
7989
7986
|
})]
|
|
7990
|
-
}), /* @__PURE__ */ t(
|
|
7991
|
-
names:
|
|
7987
|
+
}), /* @__PURE__ */ t(Ma, {
|
|
7988
|
+
names: ja,
|
|
7992
7989
|
style: "line"
|
|
7993
7990
|
})]
|
|
7994
7991
|
}),
|
|
@@ -8003,16 +8000,16 @@ function Fa() {
|
|
|
8003
8000
|
className: "game-ui-small-copy",
|
|
8004
8001
|
children: e.spriteHint
|
|
8005
8002
|
})]
|
|
8006
|
-
}), /* @__PURE__ */ t(
|
|
8003
|
+
}), /* @__PURE__ */ t(Na, {})]
|
|
8007
8004
|
})
|
|
8008
8005
|
]
|
|
8009
8006
|
});
|
|
8010
8007
|
}
|
|
8011
|
-
function
|
|
8012
|
-
let [i, a] = m("en"), o =
|
|
8008
|
+
function Fa({ title: e, body: r }) {
|
|
8009
|
+
let [i, a] = m("en"), o = ra[i], s = e && i === "en" ? e : o.heroTitle, c = r && i === "en" ? r : o.heroBody;
|
|
8013
8010
|
return l(() => (document.documentElement.dataset.gameUiPreview = "clay", () => {
|
|
8014
8011
|
delete document.documentElement.dataset.gameUiPreview;
|
|
8015
|
-
}), []), /* @__PURE__ */ t(
|
|
8012
|
+
}), []), /* @__PURE__ */ t(ia.Provider, {
|
|
8016
8013
|
value: o,
|
|
8017
8014
|
children: /* @__PURE__ */ n("main", {
|
|
8018
8015
|
"aria-label": "Swimmer UI Kit clay preview",
|
|
@@ -8025,7 +8022,7 @@ function Ia({ title: e, body: r }) {
|
|
|
8025
8022
|
tone: "ai",
|
|
8026
8023
|
children: "@pieai/swimmer-ui-kit"
|
|
8027
8024
|
}),
|
|
8028
|
-
/* @__PURE__ */ t(
|
|
8025
|
+
/* @__PURE__ */ t(Pr, {
|
|
8029
8026
|
currentLabel: o.triggerLabel,
|
|
8030
8027
|
label: o.langMenuLabel,
|
|
8031
8028
|
onSelect: (e) => a(e),
|
|
@@ -8052,10 +8049,10 @@ function Ia({ title: e, body: r }) {
|
|
|
8052
8049
|
id: "game-ui-preview-token-title",
|
|
8053
8050
|
children: o.sections.tokens
|
|
8054
8051
|
}),
|
|
8055
|
-
/* @__PURE__ */ t(
|
|
8052
|
+
/* @__PURE__ */ t(ca, {}),
|
|
8056
8053
|
/* @__PURE__ */ t("div", {
|
|
8057
8054
|
className: "game-ui-token-ledger",
|
|
8058
|
-
children:
|
|
8055
|
+
children: oa.map((e) => /* @__PURE__ */ t(sa, {
|
|
8059
8056
|
id: e.id,
|
|
8060
8057
|
label: o.tokenGroups[e.id] ?? e.id,
|
|
8061
8058
|
tokens: e.tokens
|
|
@@ -8075,7 +8072,7 @@ function Ia({ title: e, body: r }) {
|
|
|
8075
8072
|
className: "game-ui-small-copy",
|
|
8076
8073
|
children: o.iconsIntro
|
|
8077
8074
|
}),
|
|
8078
|
-
/* @__PURE__ */ t(
|
|
8075
|
+
/* @__PURE__ */ t(Pa, {})
|
|
8079
8076
|
]
|
|
8080
8077
|
}),
|
|
8081
8078
|
/* @__PURE__ */ n("section", {
|
|
@@ -8084,7 +8081,7 @@ function Ia({ title: e, body: r }) {
|
|
|
8084
8081
|
children: [/* @__PURE__ */ t("h2", {
|
|
8085
8082
|
id: "game-ui-preview-type-title",
|
|
8086
8083
|
children: o.sections.typography
|
|
8087
|
-
}), /* @__PURE__ */ t(
|
|
8084
|
+
}), /* @__PURE__ */ t(la, {})]
|
|
8088
8085
|
}),
|
|
8089
8086
|
/* @__PURE__ */ n("section", {
|
|
8090
8087
|
"aria-labelledby": "game-ui-preview-components-title",
|
|
@@ -8094,11 +8091,11 @@ function Ia({ title: e, body: r }) {
|
|
|
8094
8091
|
id: "game-ui-preview-components-title",
|
|
8095
8092
|
children: o.sections.components
|
|
8096
8093
|
}),
|
|
8094
|
+
/* @__PURE__ */ t(ua, {}),
|
|
8097
8095
|
/* @__PURE__ */ t(da, {}),
|
|
8098
|
-
/* @__PURE__ */ t(
|
|
8096
|
+
/* @__PURE__ */ t(ma, {}),
|
|
8099
8097
|
/* @__PURE__ */ t(ha, {}),
|
|
8100
|
-
/* @__PURE__ */ t(
|
|
8101
|
-
/* @__PURE__ */ t(Yn, {
|
|
8098
|
+
/* @__PURE__ */ t(Jn, {
|
|
8102
8099
|
entries: o.history,
|
|
8103
8100
|
label: o.historyLabel
|
|
8104
8101
|
})
|
|
@@ -8110,7 +8107,7 @@ function Ia({ title: e, body: r }) {
|
|
|
8110
8107
|
children: [/* @__PURE__ */ t("h2", {
|
|
8111
8108
|
id: "game-ui-preview-forms-title",
|
|
8112
8109
|
children: o.sections.forms
|
|
8113
|
-
}), /* @__PURE__ */ t(
|
|
8110
|
+
}), /* @__PURE__ */ t(ka, {})]
|
|
8114
8111
|
}),
|
|
8115
8112
|
/* @__PURE__ */ n("section", {
|
|
8116
8113
|
"aria-labelledby": "game-ui-preview-overlay-glass-title",
|
|
@@ -8124,7 +8121,7 @@ function Ia({ title: e, body: r }) {
|
|
|
8124
8121
|
className: "game-ui-small-copy",
|
|
8125
8122
|
children: "Official HUD-on-scene tone: dark translucent glass, thin light border, no clay cast shadow, compact density. Use on any container that wraps scene-overlay chrome (3D tavern, cinematic stage). Nest inside light or night theme."
|
|
8126
8123
|
}),
|
|
8127
|
-
/* @__PURE__ */ t(
|
|
8124
|
+
/* @__PURE__ */ t(fa, {})
|
|
8128
8125
|
]
|
|
8129
8126
|
}),
|
|
8130
8127
|
/* @__PURE__ */ n("section", {
|
|
@@ -8139,7 +8136,7 @@ function Ia({ title: e, body: r }) {
|
|
|
8139
8136
|
className: "game-ui-small-copy",
|
|
8140
8137
|
children: o.liquidMetal.body
|
|
8141
8138
|
}),
|
|
8142
|
-
/* @__PURE__ */ t(
|
|
8139
|
+
/* @__PURE__ */ t(pa, {})
|
|
8143
8140
|
]
|
|
8144
8141
|
}),
|
|
8145
8142
|
/* @__PURE__ */ n("section", {
|
|
@@ -8148,7 +8145,7 @@ function Ia({ title: e, body: r }) {
|
|
|
8148
8145
|
children: [/* @__PURE__ */ t("h2", {
|
|
8149
8146
|
id: "game-ui-preview-ownmyspace-title",
|
|
8150
8147
|
children: "OwnMySpace game surface pack"
|
|
8151
|
-
}), /* @__PURE__ */ t(
|
|
8148
|
+
}), /* @__PURE__ */ t(wa, {})]
|
|
8152
8149
|
}),
|
|
8153
8150
|
/* @__PURE__ */ n("section", {
|
|
8154
8151
|
"aria-labelledby": "game-ui-preview-terrain-build-title",
|
|
@@ -8162,7 +8159,7 @@ function Ia({ title: e, body: r }) {
|
|
|
8162
8159
|
className: "game-ui-small-copy",
|
|
8163
8160
|
children: "Official terrain controls cover mode, brush, material, undo/redo, build library, status, progress, and compact mobile drawer surfaces."
|
|
8164
8161
|
}),
|
|
8165
|
-
/* @__PURE__ */ t(
|
|
8162
|
+
/* @__PURE__ */ t(ba, {})
|
|
8166
8163
|
]
|
|
8167
8164
|
}),
|
|
8168
8165
|
/* @__PURE__ */ n("section", {
|
|
@@ -8177,7 +8174,7 @@ function Ia({ title: e, body: r }) {
|
|
|
8177
8174
|
className: "game-ui-small-copy",
|
|
8178
8175
|
children: "Official construction surfaces cover job queue states, before/after review, robot crew status, validation warnings, approval actions, and local-only provider badges."
|
|
8179
8176
|
}),
|
|
8180
|
-
/* @__PURE__ */ t(
|
|
8177
|
+
/* @__PURE__ */ t(Ca, {})
|
|
8181
8178
|
]
|
|
8182
8179
|
}),
|
|
8183
8180
|
/* @__PURE__ */ n("section", {
|
|
@@ -8192,7 +8189,7 @@ function Ia({ title: e, body: r }) {
|
|
|
8192
8189
|
className: "game-ui-small-copy",
|
|
8193
8190
|
children: "Official asset cards must stay visually complete when a game shell uses dense, narrow, or rail-style inventory slots."
|
|
8194
8191
|
}),
|
|
8195
|
-
/* @__PURE__ */ t(
|
|
8192
|
+
/* @__PURE__ */ t(Ea, {})
|
|
8196
8193
|
]
|
|
8197
8194
|
}),
|
|
8198
8195
|
/* @__PURE__ */ n("section", {
|
|
@@ -8201,7 +8198,7 @@ function Ia({ title: e, body: r }) {
|
|
|
8201
8198
|
children: [/* @__PURE__ */ t("h2", {
|
|
8202
8199
|
id: "game-ui-preview-first-session-title",
|
|
8203
8200
|
children: o.sections.firstSession
|
|
8204
|
-
}), /* @__PURE__ */ t(
|
|
8201
|
+
}), /* @__PURE__ */ t(Da, {})]
|
|
8205
8202
|
}),
|
|
8206
8203
|
/* @__PURE__ */ n("section", {
|
|
8207
8204
|
"aria-labelledby": "game-ui-preview-orientation-title",
|
|
@@ -8209,7 +8206,7 @@ function Ia({ title: e, body: r }) {
|
|
|
8209
8206
|
children: [/* @__PURE__ */ t("h2", {
|
|
8210
8207
|
id: "game-ui-preview-orientation-title",
|
|
8211
8208
|
children: o.sections.orientation
|
|
8212
|
-
}), /* @__PURE__ */ t(
|
|
8209
|
+
}), /* @__PURE__ */ t(Nr, {
|
|
8213
8210
|
badgeLabel: o.orientation.badge,
|
|
8214
8211
|
body: o.orientation.body,
|
|
8215
8212
|
cta: o.orientation.cta,
|
|
@@ -8224,11 +8221,11 @@ function Ia({ title: e, body: r }) {
|
|
|
8224
8221
|
children: [/* @__PURE__ */ t("h2", {
|
|
8225
8222
|
id: "game-ui-preview-responsive-title",
|
|
8226
8223
|
children: o.sections.responsive
|
|
8227
|
-
}), /* @__PURE__ */ t(
|
|
8224
|
+
}), /* @__PURE__ */ t(Oa, {})]
|
|
8228
8225
|
})
|
|
8229
8226
|
]
|
|
8230
8227
|
})
|
|
8231
8228
|
});
|
|
8232
8229
|
}
|
|
8233
8230
|
//#endregion
|
|
8234
|
-
export {
|
|
8231
|
+
export { hr as CLAY_ASSETS, or as CLAY_ASSET_BASE_PATH, xe as CLAY_ASSET_SIZE_TOKENS, L as CLAY_COLOR_TOKENS, U as CLAY_ELEVATION_TOKENS, pr as CLAY_GAME_SPRITES, mr as CLAY_GAME_SPRITE_NAMES, cr as CLAY_ICON_NAMES, sr as CLAY_ICON_VARIANTS, ye as CLAY_LAYER_TOKENS, z as CLAY_LIQUID_GOOEY_TOKENS, z as GAME_UI_LIQUID_GOOEY_TOKENS, R as CLAY_LIQUID_METAL_TOKENS, R as GAME_UI_LIQUID_METAL_TOKENS, W as CLAY_MOTION_TOKENS, B as CLAY_OVERLAY_GLASS_TOKENS, B as GAME_UI_OVERLAY_GLASS_TOKENS, H as CLAY_RADIUS_TOKENS, V as CLAY_SEMANTIC_TOKENS, ve as CLAY_SPACE_TOKENS, be as CLAY_TARGET_TOKENS, _e as CLAY_TYPE_TOKENS, Se as CLAY_UI_TOKENS, Ce as DEFAULT_LIQUID_GOOEY_ANIMATION_BUDGET, we as DEFAULT_LIQUID_GOOEY_FILTER_AREA_BUDGET, T as DEFAULT_LIQUID_METAL_CONTEXT_BUDGET, J as DISSOLVE_DEFAULTS, Rr as FirstSessionHud, zr as FirstSessionOnboarding, ea as GAME_UI_OVERLAY, Qi as GAME_UI_PREVIEW_MESSAGES, ta as GAME_UI_TARGETS, na as GAME_UI_THEME_CONTRACT, $i as GAME_UI_TOKENS, Qr as GameActionGrid, ai as GameAssetCard, $ as GameAssetIcon, oi as GameAssetLibrary, Gr as GameAvatar, Q as GameBadge, Vi as GameBeforeAfterToggle, _i as GameBrushControls, bi as GameBuildLibrary, w as GameButton, Kn as GameCallout, Ar as GameCardFan, Ur as GameCheckbox, qi as GameCollapsiblePanel, xi as GameCompactGameDrawer, Ui as GameCompactJobDrawer, zi as GameConstructionApprovalBar, Hi as GameConstructionJobCard, Ri as GameConstructionProgress, Wi as GameContractorPanel, qn as GameDialog, qr as GameEmptyState, Xr as GameFactList, Hr as GameField, Jn as GameHistoryPanel, kr as GameHud, Yn as GameHudActions, Xn as GameIconButton, Br as GameInput, Pr as GameLanguageMenu, Fr as GameLoadingState, vi as GameMaterialSwatches, Zi as GameModal, ti as GameMovementPad, ci as GameObjectToolbar, Nr as GameOrientationGate, X as GamePanel, si as GamePlacementToolbar, Kr as GameProgress, ar as GamePrompt, rr as GameRadialMenu, Bi as GameRobotCrewStatus, Yr as GameSceneHudLayout, er as GameSegmentedControl, Jr as GameShell, tr as GameSlider, jr as GameStageTile, Zr as GameStatList, Qn as GameTabs, wi as GameTerrainBuildToolbox, hi as GameTerrainModeControl, gi as GameTerrainToolStrip, Vr as GameTextArea, ir as GameToast, nr as GameToggle, Zn as GameTooltip, Fa as GameUiPreview, yi as GameUndoRedoActions, Xi as GameWindowPanel, Qt as IMAGE_MELT_DEFAULTS, ze as LIQUID_GOOEY_WAVINESS_MAX_FRACTION, Gn as LiquidGroup, Wn as LiquidItem, ge as LiquidMetalButton, Er as acknowledgeClayPlaceholders, Cr as getClayAssetBasePath, xr as getClayAssetMode, Ir as getClayCatalogPaths, Dr as getClayIconPath, fr as getClayIconStyles, Or as getClaySourceAssetPath, Oe as getLiquidGooeyBudget, O as getLiquidMetalContextBudget, C as playGameInteractionSound, S as playGameInteractionSoundForContext, rn as resolveDissolveOptions, Sr as setClayAssetBasePath, br as setClayAssetMode, ke as setLiquidGooeyBudget, k as setLiquidMetalContextBudget };
|