@pieai/swimmer-ui-kit 1.11.0 → 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 +50 -29
- package/dist/index.d.ts +12 -0
- package/dist/index.js +900 -885
- package/dist/preview.css +1 -1
- 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 fe(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 P(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,7 +530,7 @@ 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 = {
|
|
@@ -542,74 +542,74 @@ function ge(e, t, n, r) {
|
|
|
542
542
|
focus: !1
|
|
543
543
|
};
|
|
544
544
|
function U(e, t) {
|
|
545
|
-
let n =
|
|
546
|
-
n && (L = (L + 1) %
|
|
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
|
-
|
|
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
568
|
let d = z > R ? 1 - 1e-9 ** l : 1 - .004 ** l;
|
|
569
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
|
-
V.x += O, V.y +=
|
|
577
|
-
let
|
|
578
|
-
ve += (
|
|
579
|
-
let
|
|
580
|
-
_e += (
|
|
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;
|
|
@@ -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");
|
|
@@ -993,11 +993,11 @@ function je() {
|
|
|
993
993
|
}
|
|
994
994
|
//#endregion
|
|
995
995
|
//#region src/liquidGooeyFilter.tsx
|
|
996
|
-
var Me = "1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 60 -29.5", Ne = {
|
|
996
|
+
var Me = "1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 60 -29.5", Ne = .5, Pe = {
|
|
997
997
|
waviness: 6,
|
|
998
998
|
wavinessFreq: .018
|
|
999
999
|
};
|
|
1000
|
-
function
|
|
1000
|
+
function Fe({ index: n, shadow: r }) {
|
|
1001
1001
|
let i = [], a = "bin";
|
|
1002
1002
|
return r.spread !== 0 && (i.push(/* @__PURE__ */ t("feMorphology", {
|
|
1003
1003
|
in: a,
|
|
@@ -1028,7 +1028,7 @@ function Pe({ index: n, shadow: r }) {
|
|
|
1028
1028
|
result: `shadow-${n}`
|
|
1029
1029
|
}, "fill")), /* @__PURE__ */ t(e, { children: i });
|
|
1030
1030
|
}
|
|
1031
|
-
function
|
|
1031
|
+
function Ie({ index: n, shadow: r }) {
|
|
1032
1032
|
let i = [], a = "shape";
|
|
1033
1033
|
return r.spread !== 0 && (i.push(/* @__PURE__ */ t("feMorphology", {
|
|
1034
1034
|
in: "bin",
|
|
@@ -1054,7 +1054,7 @@ function Fe({ index: n, shadow: r }) {
|
|
|
1054
1054
|
result: `shadow-${n}`
|
|
1055
1055
|
}, "fill")), /* @__PURE__ */ t(e, { children: i });
|
|
1056
1056
|
}
|
|
1057
|
-
function
|
|
1057
|
+
function Le({ stroke: n }) {
|
|
1058
1058
|
let r = [];
|
|
1059
1059
|
return r.push(/* @__PURE__ */ t("feMorphology", {
|
|
1060
1060
|
in: "bin",
|
|
@@ -1076,7 +1076,7 @@ function Ie({ stroke: n }) {
|
|
|
1076
1076
|
result: "stroke-out"
|
|
1077
1077
|
}, "fill")), /* @__PURE__ */ t(e, { children: r });
|
|
1078
1078
|
}
|
|
1079
|
-
function
|
|
1079
|
+
function Re({ blur: r, contrast: i, shadows: a, stroke: o, waviness: s = Pe.waviness, wavinessFreq: c = Pe.wavinessFreq }) {
|
|
1080
1080
|
let l = Math.round((.5 - 5 / 12 * i) * 100) / 100, u = s > 0;
|
|
1081
1081
|
return /* @__PURE__ */ n(e, { children: [
|
|
1082
1082
|
/* @__PURE__ */ t("feGaussianBlur", {
|
|
@@ -1096,34 +1096,42 @@ function Le({ blur: r, contrast: i, shadows: a, stroke: o, waviness: s = Ne.wavi
|
|
|
1096
1096
|
operator: "atop",
|
|
1097
1097
|
result: u ? "shape-raw" : "shape"
|
|
1098
1098
|
}),
|
|
1099
|
-
u ? /* @__PURE__ */ n(e, { children: [
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1099
|
+
u ? /* @__PURE__ */ n(e, { children: [
|
|
1100
|
+
/* @__PURE__ */ t("feTurbulence", {
|
|
1101
|
+
type: "fractalNoise",
|
|
1102
|
+
baseFrequency: c,
|
|
1103
|
+
numOctaves: 2,
|
|
1104
|
+
seed: "7",
|
|
1105
|
+
result: "wave-noise"
|
|
1106
|
+
}),
|
|
1107
|
+
/* @__PURE__ */ t("feDisplacementMap", {
|
|
1108
|
+
in: "shape-raw",
|
|
1109
|
+
in2: "wave-noise",
|
|
1110
|
+
scale: s * 2,
|
|
1111
|
+
xChannelSelector: "R",
|
|
1112
|
+
yChannelSelector: "G",
|
|
1113
|
+
result: "shape-displaced"
|
|
1114
|
+
}),
|
|
1115
|
+
/* @__PURE__ */ t("feGaussianBlur", {
|
|
1116
|
+
in: "shape-displaced",
|
|
1117
|
+
stdDeviation: Ne,
|
|
1118
|
+
result: "shape"
|
|
1119
|
+
})
|
|
1120
|
+
] }) : null,
|
|
1113
1121
|
o !== null || a.some((e) => e.inset || e.spread !== 0) ? /* @__PURE__ */ t("feColorMatrix", {
|
|
1114
1122
|
in: "shape",
|
|
1115
1123
|
type: "matrix",
|
|
1116
1124
|
values: Me,
|
|
1117
1125
|
result: "bin"
|
|
1118
1126
|
}) : null,
|
|
1119
|
-
a.map((e, n) => e.inset ? /* @__PURE__ */ t(
|
|
1127
|
+
a.map((e, n) => e.inset ? /* @__PURE__ */ t(Fe, {
|
|
1120
1128
|
index: n,
|
|
1121
1129
|
shadow: e
|
|
1122
|
-
}, n) : /* @__PURE__ */ t(
|
|
1130
|
+
}, n) : /* @__PURE__ */ t(Ie, {
|
|
1123
1131
|
index: n,
|
|
1124
1132
|
shadow: e
|
|
1125
1133
|
}, n)),
|
|
1126
|
-
o ? /* @__PURE__ */ t(
|
|
1134
|
+
o ? /* @__PURE__ */ t(Le, { stroke: o }) : null,
|
|
1127
1135
|
a.length > 0 || o ? /* @__PURE__ */ n("feMerge", { children: [
|
|
1128
1136
|
a.map((e, t) => e.inset ? -1 : t).filter((e) => e >= 0).reverse().map((e) => /* @__PURE__ */ t("feMergeNode", { in: `shadow-${e}` }, e)),
|
|
1129
1137
|
/* @__PURE__ */ t("feMergeNode", { in: "shape" }),
|
|
@@ -1133,8 +1141,17 @@ function Le({ blur: r, contrast: i, shadows: a, stroke: o, waviness: s = Ne.wavi
|
|
|
1133
1141
|
] });
|
|
1134
1142
|
}
|
|
1135
1143
|
//#endregion
|
|
1144
|
+
//#region src/liquidGooeyWaviness.ts
|
|
1145
|
+
var ze = .3;
|
|
1146
|
+
function Be(e, t, n = ze) {
|
|
1147
|
+
let r = Math.max(0, Number.isFinite(e) ? e : 0);
|
|
1148
|
+
if (n === !1) return r;
|
|
1149
|
+
let i = Math.max(0, Number.isFinite(n) ? n : ze), a = Math.max(0, Number.isFinite(t) ? t : 0);
|
|
1150
|
+
return a > 0 ? Math.min(r, a * i) : r;
|
|
1151
|
+
}
|
|
1152
|
+
//#endregion
|
|
1136
1153
|
//#region src/liquidGooeyGeometry.ts
|
|
1137
|
-
function
|
|
1154
|
+
function Ve(e, t) {
|
|
1138
1155
|
let n = 0, r = 0, i = e;
|
|
1139
1156
|
for (; i && i !== t && t.contains(i);) n += i.offsetLeft, r += i.offsetTop, i = i.offsetParent;
|
|
1140
1157
|
return {
|
|
@@ -1142,7 +1159,7 @@ function Re(e, t) {
|
|
|
1142
1159
|
y: r
|
|
1143
1160
|
};
|
|
1144
1161
|
}
|
|
1145
|
-
function
|
|
1162
|
+
function He(e, t, n) {
|
|
1146
1163
|
let r = getComputedStyle(e), i = (e) => {
|
|
1147
1164
|
let r = e.split(" ")[0] ?? "";
|
|
1148
1165
|
return r.endsWith("%") ? (parseFloat(r) || 0) / 100 * Math.min(t, n) : parseFloat(r) || 0;
|
|
@@ -1154,7 +1171,7 @@ function ze(e, t, n) {
|
|
|
1154
1171
|
i(r.borderBottomLeftRadius)
|
|
1155
1172
|
];
|
|
1156
1173
|
}
|
|
1157
|
-
function
|
|
1174
|
+
function Ue(e) {
|
|
1158
1175
|
return typeof e == "number" ? [
|
|
1159
1176
|
e,
|
|
1160
1177
|
e,
|
|
@@ -1162,13 +1179,13 @@ function Be(e) {
|
|
|
1162
1179
|
e
|
|
1163
1180
|
] : e;
|
|
1164
1181
|
}
|
|
1165
|
-
function
|
|
1182
|
+
function We(e, t, n, r, i) {
|
|
1166
1183
|
let [a, o, s, c] = i.map((e) => Math.max(0, e)), l = Math.min(1, n / Math.max(1e-6, a + o), n / Math.max(1e-6, c + s), r / Math.max(1e-6, a + c), r / Math.max(1e-6, o + s));
|
|
1167
1184
|
return a *= l, o *= l, s *= l, c *= l, `M ${e + a} ${t} H ${e + n - o} A ${o} ${o} 0 0 1 ${e + n} ${t + o} V ${t + r - s} A ${s} ${s} 0 0 1 ${e + n - s} ${t + r} H ${e + c} A ${c} ${c} 0 0 1 ${e} ${t + r - c} V ${t + a} A ${a} ${a} 0 0 1 ${e + a} ${t} Z`;
|
|
1168
1185
|
}
|
|
1169
1186
|
//#endregion
|
|
1170
1187
|
//#region src/liquidGooeyMove.ts
|
|
1171
|
-
var
|
|
1188
|
+
var Ge = {
|
|
1172
1189
|
stiffness: 380,
|
|
1173
1190
|
damping: 18,
|
|
1174
1191
|
stretch: .18,
|
|
@@ -1198,29 +1215,29 @@ var He = {
|
|
|
1198
1215
|
settleSpeed: 1,
|
|
1199
1216
|
integrationRate: 60
|
|
1200
1217
|
};
|
|
1201
|
-
function
|
|
1218
|
+
function Ke(e, t = 0, n = 1) {
|
|
1202
1219
|
return Math.min(n, Math.max(t, e));
|
|
1203
1220
|
}
|
|
1204
|
-
function
|
|
1221
|
+
function qe(e, t) {
|
|
1205
1222
|
return e !== void 0 && Number.isFinite(e) ? e : t;
|
|
1206
1223
|
}
|
|
1207
|
-
function
|
|
1224
|
+
function Je(e) {
|
|
1208
1225
|
return /^var\((--[\w-]+)\)$/.exec(e.trim())?.[1] ?? null;
|
|
1209
1226
|
}
|
|
1210
|
-
function
|
|
1211
|
-
let r = e?.ownerDocument.defaultView, i =
|
|
1227
|
+
function Ye(e, t, n) {
|
|
1228
|
+
let r = e?.ownerDocument.defaultView, i = Je(z[t]);
|
|
1212
1229
|
if (!r || !i) return n;
|
|
1213
1230
|
let a = r.getComputedStyle(e).getPropertyValue(i), o = Number.parseFloat(a);
|
|
1214
1231
|
return Number.isFinite(o) ? o : n;
|
|
1215
1232
|
}
|
|
1216
|
-
function
|
|
1217
|
-
let t = (t, n) =>
|
|
1233
|
+
function Xe(e) {
|
|
1234
|
+
let t = (t, n) => Ye(e, t, n);
|
|
1218
1235
|
return {
|
|
1219
|
-
stiffness: Math.max(.001, t("moveStiffness",
|
|
1220
|
-
damping: Math.max(0, t("moveDamping",
|
|
1221
|
-
stretch:
|
|
1222
|
-
tail:
|
|
1223
|
-
force:
|
|
1236
|
+
stiffness: Math.max(.001, t("moveStiffness", Ge.stiffness)),
|
|
1237
|
+
damping: Math.max(0, t("moveDamping", Ge.damping)),
|
|
1238
|
+
stretch: Ke(t("moveStretch", Ge.stretch)),
|
|
1239
|
+
tail: Ke(t("moveTail", Ge.tail)),
|
|
1240
|
+
force: Ke(t("moveForce", Ge.force)),
|
|
1224
1241
|
tailSpringStiffness: Math.max(.001, t("moveTailSpringStiffness", K.tailSpringStiffness)),
|
|
1225
1242
|
tailSpringDamping: Math.max(0, t("moveTailSpringDamping", K.tailSpringDamping)),
|
|
1226
1243
|
stretchSpeed: Math.max(0, t("moveStretchSpeed", K.stretchSpeed)),
|
|
@@ -1232,10 +1249,10 @@ function qe(e) {
|
|
|
1232
1249
|
tailMinRadius: Math.max(0, t("moveTailMinRadius", K.tailMinRadius)),
|
|
1233
1250
|
tailWobble: Math.max(0, t("moveTailWobble", K.tailWobble)),
|
|
1234
1251
|
tailPhaseSpeed: Math.max(0, t("moveTailPhaseSpeed", K.tailPhaseSpeed)),
|
|
1235
|
-
tailMidpointA:
|
|
1236
|
-
tailMidpointB:
|
|
1237
|
-
tailMidRadiusA:
|
|
1238
|
-
tailMidRadiusB:
|
|
1252
|
+
tailMidpointA: Ke(t("moveTailMidpointA", K.tailMidpointA)),
|
|
1253
|
+
tailMidpointB: Ke(t("moveTailMidpointB", K.tailMidpointB)),
|
|
1254
|
+
tailMidRadiusA: Ke(t("moveTailMidRadiusA", K.tailMidRadiusA)),
|
|
1255
|
+
tailMidRadiusB: Ke(t("moveTailMidRadiusB", K.tailMidRadiusB)),
|
|
1239
1256
|
tailWobblePhase: t("moveTailWobblePhase", K.tailWobblePhase),
|
|
1240
1257
|
minPerpendicular: Math.max(0, t("moveMinPerpendicular", K.minPerpendicular)),
|
|
1241
1258
|
lagBase: Math.max(0, t("moveLagBase", K.lagBase)),
|
|
@@ -1245,32 +1262,32 @@ function qe(e) {
|
|
|
1245
1262
|
integrationRate: Math.max(1, t("moveIntegrationRate", K.integrationRate))
|
|
1246
1263
|
};
|
|
1247
1264
|
}
|
|
1248
|
-
function
|
|
1265
|
+
function Ze(e, t) {
|
|
1249
1266
|
return {
|
|
1250
|
-
vertical:
|
|
1251
|
-
horizontal:
|
|
1252
|
-
velocityVertical: Math.max(0,
|
|
1253
|
-
velocityHorizontal: Math.max(0,
|
|
1254
|
-
smoothing: Math.max(0,
|
|
1255
|
-
activeThreshold: Math.max(0,
|
|
1256
|
-
verticalCap: Math.max(0,
|
|
1257
|
-
horizontalCap: Math.max(0,
|
|
1258
|
-
radiusMin: Math.max(0,
|
|
1259
|
-
radiusMax: Math.max(0,
|
|
1260
|
-
leadingCapFactor: Math.max(0,
|
|
1261
|
-
trailingCapFactor: Math.max(0,
|
|
1267
|
+
vertical: Ke(qe(t?.vertical, Ye(e, "bendVertical", .6))),
|
|
1268
|
+
horizontal: Ke(qe(t?.horizontal, Ye(e, "bendHorizontal", .35))),
|
|
1269
|
+
velocityVertical: Math.max(0, Ye(e, "bendVelocityVertical", .05)),
|
|
1270
|
+
velocityHorizontal: Math.max(0, Ye(e, "bendVelocityHorizontal", .09)),
|
|
1271
|
+
smoothing: Math.max(0, Ye(e, "bendSmoothing", 9)),
|
|
1272
|
+
activeThreshold: Math.max(0, Ye(e, "bendActiveThreshold", .5)),
|
|
1273
|
+
verticalCap: Math.max(0, Ye(e, "bendVerticalCap", .5)),
|
|
1274
|
+
horizontalCap: Math.max(0, Ye(e, "bendHorizontalCap", .9)),
|
|
1275
|
+
radiusMin: Math.max(0, Ye(e, "bendRadiusMin", .2)),
|
|
1276
|
+
radiusMax: Math.max(0, Ye(e, "bendRadiusMax", 3)),
|
|
1277
|
+
leadingCapFactor: Math.max(0, Ye(e, "bendLeadingCapFactor", .8)),
|
|
1278
|
+
trailingCapFactor: Math.max(0, Ye(e, "bendTrailingCapFactor", 1.6))
|
|
1262
1279
|
};
|
|
1263
1280
|
}
|
|
1264
|
-
function
|
|
1281
|
+
function Qe(e, t, n, r, i, a) {
|
|
1265
1282
|
let o = t + (r * (n - e) - i * t) * a;
|
|
1266
1283
|
return [e + o * a, o];
|
|
1267
1284
|
}
|
|
1268
|
-
function
|
|
1269
|
-
let s = Math.max(0,
|
|
1270
|
-
for (; c-- > 0;) [u, d] =
|
|
1285
|
+
function $e(e, t, n, r, i, a, o) {
|
|
1286
|
+
let s = Math.max(0, qe(a, 0)), c = Math.max(1, Math.ceil(s * o)), l = s / c, u = e, d = t;
|
|
1287
|
+
for (; c-- > 0;) [u, d] = Qe(u, d, n, r, i, l);
|
|
1271
1288
|
return [u, d];
|
|
1272
1289
|
}
|
|
1273
|
-
function
|
|
1290
|
+
function et(e) {
|
|
1274
1291
|
return {
|
|
1275
1292
|
cx: e.cx,
|
|
1276
1293
|
cy: e.cy,
|
|
@@ -1285,35 +1302,35 @@ function Ze(e) {
|
|
|
1285
1302
|
tailInitialized: !0
|
|
1286
1303
|
};
|
|
1287
1304
|
}
|
|
1288
|
-
function
|
|
1305
|
+
function tt(e, t) {
|
|
1289
1306
|
e.cx = t.cx, e.cy = t.cy, e.vcx = 0, e.vcy = 0, e.tailX = t.cx, e.tailY = t.cy, e.tailVx = 0, e.tailVy = 0, e.tailR = 0, e.tailPhase = 0, e.tailInitialized = !0;
|
|
1290
1307
|
}
|
|
1291
|
-
function
|
|
1308
|
+
function nt(e) {
|
|
1292
1309
|
return String(Math.round(e * 1e3) / 1e3);
|
|
1293
1310
|
}
|
|
1294
1311
|
function q(e) {
|
|
1295
1312
|
return Math.round(e * 10) / 10;
|
|
1296
1313
|
}
|
|
1297
|
-
function
|
|
1298
|
-
let a = Math.max(.01,
|
|
1299
|
-
[e.cx, e.vcx] =
|
|
1314
|
+
function rt(e, t, n, r, i) {
|
|
1315
|
+
let a = Math.max(.01, qe(t.scale, 1));
|
|
1316
|
+
[e.cx, e.vcx] = $e(e.cx, e.vcx, t.cx, i.stiffness, i.damping, r, i.integrationRate), [e.cy, e.vcy] = $e(e.cy, e.vcy, t.cy, i.stiffness, i.damping, r, i.integrationRate);
|
|
1300
1317
|
let o = Math.hypot(e.vcx, e.vcy), s = 0, c = 1, l = 1;
|
|
1301
1318
|
if (o > i.speedThreshold) {
|
|
1302
1319
|
let t = Math.min(i.stretch, o * i.stretchSpeed);
|
|
1303
1320
|
s = Math.round(Math.atan2(e.vcy, e.vcx) * 100) / 100, c = 1 + t, l = 1 / (1 + t * i.stretchSquash);
|
|
1304
1321
|
}
|
|
1305
|
-
e.tailInitialized ||= (e.tailX = e.cx, e.tailY = e.cy, !0), [e.tailX, e.tailVx] =
|
|
1322
|
+
e.tailInitialized ||= (e.tailX = e.cx, e.tailY = e.cy, !0), [e.tailX, e.tailVx] = $e(e.tailX, e.tailVx, e.cx, i.tailSpringStiffness, i.tailSpringDamping, r, i.integrationRate), [e.tailY, e.tailVy] = $e(e.tailY, e.tailVy, e.cy, i.tailSpringStiffness, i.tailSpringDamping, r, i.integrationRate);
|
|
1306
1323
|
let u = Math.max(0, n.w * a), d = Math.max(0, n.h * a), f = o > .001 ? e.vcx / o : 1, p = o > .001 ? e.vcy / o : 0, m = Math.max(i.minPerpendicular, Math.abs(f) * d + Math.abs(p) * u), h = (Math.abs(f) * u + Math.abs(p) * d) / 2, g = m / 2, _ = e.tailX - e.cx, v = e.tailY - e.cy, y = Math.hypot(_, v), b = h + g * (i.lagBase + i.force * i.lagForce);
|
|
1307
1324
|
y > b && y > 0 && (e.tailX = e.cx + _ / y * b, e.tailY = e.cy + v / y * b);
|
|
1308
|
-
let x =
|
|
1325
|
+
let x = Ke((o - i.tailOnsetSpeed) / i.tailOnsetRange), S = g * i.tail * x;
|
|
1309
1326
|
e.tailR += (S - e.tailR) * Math.min(1, Math.max(0, r) * i.tailRamp);
|
|
1310
|
-
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;
|
|
1311
1328
|
if (C) {
|
|
1312
|
-
e.tailPhase += o * Math.max(0,
|
|
1329
|
+
e.tailPhase += o * Math.max(0, qe(r, 0)) * i.tailPhaseSpeed;
|
|
1313
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;
|
|
1314
|
-
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;
|
|
1315
1332
|
}
|
|
1316
|
-
let
|
|
1333
|
+
let A = {
|
|
1317
1334
|
cx: q(e.tailX),
|
|
1318
1335
|
cy: q(e.tailY),
|
|
1319
1336
|
radius: C ? q(e.tailR) : 0,
|
|
@@ -1322,7 +1339,7 @@ function et(e, t, n, r, i) {
|
|
|
1322
1339
|
midARadius: C ? q(O) : 0,
|
|
1323
1340
|
midBCx: q(E),
|
|
1324
1341
|
midBCy: q(D),
|
|
1325
|
-
midBRadius: C ? q(
|
|
1342
|
+
midBRadius: C ? q(k) : 0,
|
|
1326
1343
|
visible: C,
|
|
1327
1344
|
fingerprint: C ? [
|
|
1328
1345
|
q(e.tailX),
|
|
@@ -1335,17 +1352,17 @@ function et(e, t, n, r, i) {
|
|
|
1335
1352
|
].join(",") : "hidden"
|
|
1336
1353
|
};
|
|
1337
1354
|
return {
|
|
1338
|
-
path:
|
|
1339
|
-
transform: `translate(${
|
|
1340
|
-
tail:
|
|
1355
|
+
path: We(-n.w / 2, -n.h / 2, n.w, n.h, n.r),
|
|
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: A,
|
|
1341
1358
|
moving: Math.hypot(e.cx - t.cx, e.cy - t.cy) > i.settleDistance || o > i.settleSpeed || e.tailR >= i.tailMinRadius
|
|
1342
1359
|
};
|
|
1343
1360
|
}
|
|
1344
|
-
function
|
|
1361
|
+
function it(e, t, n, r, i, a) {
|
|
1345
1362
|
let o = Math.min(Math.max(0, n), e / 2, t / 2), s = Math.round(r * 2 * 10) / 10, c = Math.max(o * a.radiusMin, Math.min(o * a.radiusMax, i > 0 ? o - a.leadingCapFactor * i : o + a.trailingCapFactor * -i)), l = Math.max(o * a.radiusMin, Math.min(o * a.radiusMax, i > 0 ? o + a.trailingCapFactor * i : o - a.leadingCapFactor * -i)), u = .5523, d = (e) => Math.round(e * 10) / 10;
|
|
1346
1363
|
return `M ${d(l)} 0 Q ${d(e / 2)} ${d(s)} ${d(e - c)} 0 C ${d(e - c + u * c)} 0 ${d(e)} ${d(o - u * o)} ${d(e)} ${d(o)} L ${d(e)} ${d(t - o)} C ${d(e)} ${d(t - o + u * o)} ${d(e - c + u * c)} ${d(t)} ${d(e - c)} ${d(t)} Q ${d(e / 2)} ${d(t + r * 2)} ${d(l)} ${d(t)} C ${d(l - u * l)} ${d(t)} 0 ${d(t - o + u * o)} 0 ${d(t - o)} L 0 ${d(o)} C 0 ${d(o - u * o)} ${d(l - u * l)} 0 ${d(l)} 0 Z`;
|
|
1347
1364
|
}
|
|
1348
|
-
function
|
|
1365
|
+
function at(e) {
|
|
1349
1366
|
return {
|
|
1350
1367
|
cx: e.cx,
|
|
1351
1368
|
cy: e.cy,
|
|
@@ -1358,20 +1375,20 @@ function nt(e) {
|
|
|
1358
1375
|
initialized: !1
|
|
1359
1376
|
};
|
|
1360
1377
|
}
|
|
1361
|
-
function
|
|
1378
|
+
function ot(e, t) {
|
|
1362
1379
|
e.cx = t.cx, e.cy = t.cy, e.previousCx = t.cx, e.previousCy = t.cy, e.vcx = 0, e.vcy = 0, e.bendY = 0, e.bendX = 0, e.initialized = !0;
|
|
1363
1380
|
}
|
|
1364
|
-
function
|
|
1381
|
+
function st(e, t) {
|
|
1365
1382
|
return Math.min(e.w, e.h) * t.verticalCap * 2 * t.vertical;
|
|
1366
1383
|
}
|
|
1367
|
-
function
|
|
1368
|
-
let a = Math.max(1 / 240,
|
|
1384
|
+
function ct(e, t, n, r, i) {
|
|
1385
|
+
let a = Math.max(1 / 240, qe(r, 1 / 60));
|
|
1369
1386
|
e.initialized ||= (e.previousCx = t.cx, e.previousCy = t.cy, !0);
|
|
1370
1387
|
let o = (t.cx - e.previousCx) / a, s = (t.cy - e.previousCy) / a;
|
|
1371
1388
|
e.previousCx = t.cx, e.previousCy = t.cy, e.vcx = e.vcx * .7 + o * .3, e.vcy = e.vcy * .7 + s * .3, e.cx = t.cx, e.cy = t.cy;
|
|
1372
1389
|
let c = Math.min(n.w, n.h), l = c * i.verticalCap, u = Math.max(-l, Math.min(l, e.vcy * i.velocityVertical)) * i.vertical, d = c * i.horizontalCap, f = Math.max(-d, Math.min(d, e.vcx * i.velocityHorizontal)) * i.horizontal;
|
|
1373
1390
|
e.bendY += (u - e.bendY) * Math.min(1, a * i.smoothing), e.bendX += (f - e.bendX) * Math.min(1, a * i.smoothing);
|
|
1374
|
-
let p = Math.abs(e.bendY) > i.activeThreshold || Math.abs(e.bendX) > i.activeThreshold, m = Math.min(...n.r), h = p ?
|
|
1391
|
+
let p = Math.abs(e.bendY) > i.activeThreshold || Math.abs(e.bendX) > i.activeThreshold, m = Math.min(...n.r), h = p ? it(n.w, n.h, m, e.bendY, e.bendX, i) : We(-n.w / 2, -n.h / 2, n.w, n.h, n.r), g = p ? `translate(${nt(e.cx - n.w / 2)} ${nt(e.cy - n.h / 2)}) scale(${nt(t.scale)})` : `translate(${nt(e.cx)} ${nt(e.cy)}) scale(${nt(t.scale)})`, _ = Math.round(e.bendX * 10) / 10, v = Math.round(e.bendY * 10) / 10;
|
|
1375
1392
|
return {
|
|
1376
1393
|
path: h,
|
|
1377
1394
|
transform: g,
|
|
@@ -1383,7 +1400,7 @@ function at(e, t, n, r, i) {
|
|
|
1383
1400
|
}
|
|
1384
1401
|
//#endregion
|
|
1385
1402
|
//#region src/liquidGooeyEvolve.ts
|
|
1386
|
-
var
|
|
1403
|
+
var lt = {
|
|
1387
1404
|
massStiffness: 320,
|
|
1388
1405
|
massDamping: 17,
|
|
1389
1406
|
sizeStiffness: 170,
|
|
@@ -1398,41 +1415,41 @@ var ot = {
|
|
|
1398
1415
|
anticipation: 90,
|
|
1399
1416
|
travel: 32
|
|
1400
1417
|
};
|
|
1401
|
-
function
|
|
1418
|
+
function ut(e) {
|
|
1402
1419
|
return /^var\((--[\w-]+)\)$/.exec(e.trim())?.[1] ?? null;
|
|
1403
1420
|
}
|
|
1404
|
-
function
|
|
1421
|
+
function dt(e, t) {
|
|
1405
1422
|
return e !== void 0 && Number.isFinite(e) ? e : t;
|
|
1406
1423
|
}
|
|
1407
|
-
function
|
|
1424
|
+
function ft(e, t = 0, n = 1) {
|
|
1408
1425
|
return Math.min(n, Math.max(t, e));
|
|
1409
1426
|
}
|
|
1410
|
-
function
|
|
1411
|
-
let r = e?.ownerDocument.defaultView, i =
|
|
1427
|
+
function pt(e, t, n) {
|
|
1428
|
+
let r = e?.ownerDocument.defaultView, i = ut(z[t]);
|
|
1412
1429
|
if (!r || !i) return n;
|
|
1413
1430
|
let a = Number.parseFloat(r.getComputedStyle(e).getPropertyValue(i));
|
|
1414
1431
|
return Number.isFinite(a) ? a : n;
|
|
1415
1432
|
}
|
|
1416
|
-
function
|
|
1417
|
-
let r = e?.ownerDocument.defaultView, i =
|
|
1433
|
+
function mt(e, t, n) {
|
|
1434
|
+
let r = e?.ownerDocument.defaultView, i = ut(z[t]);
|
|
1418
1435
|
return !r || !i ? n : r.getComputedStyle(e).getPropertyValue(i).trim() || n;
|
|
1419
1436
|
}
|
|
1420
|
-
function
|
|
1421
|
-
let n = (t, n) =>
|
|
1422
|
-
massStiffness: Math.max(.001, n("evolveMassStiffness",
|
|
1423
|
-
massDamping: Math.max(0, n("evolveMassDamping",
|
|
1424
|
-
sizeStiffness: Math.max(.001, n("evolveSizeStiffness",
|
|
1425
|
-
sizeDamping: Math.max(0, n("evolveSizeDamping",
|
|
1426
|
-
radiusStiffness: Math.max(.001, n("evolveRadiusStiffness",
|
|
1427
|
-
radiusDamping: Math.max(0, n("evolveRadiusDamping",
|
|
1428
|
-
contentBlur: Math.max(0, n("evolveContentBlur",
|
|
1429
|
-
roundness:
|
|
1430
|
-
cornerDuration: Math.max(0, n("evolveCornerDuration",
|
|
1431
|
-
cornerDelay: Math.max(0, n("evolveCornerDelay",
|
|
1432
|
-
cornerEase:
|
|
1433
|
-
anticipation: Math.max(0, n("evolveAnticipation",
|
|
1434
|
-
travel: Math.max(0, n("evolveTravel",
|
|
1435
|
-
}, i = Math.max(.25,
|
|
1437
|
+
function ht(e, t) {
|
|
1438
|
+
let n = (t, n) => pt(e, t, n), r = {
|
|
1439
|
+
massStiffness: Math.max(.001, n("evolveMassStiffness", lt.massStiffness)),
|
|
1440
|
+
massDamping: Math.max(0, n("evolveMassDamping", lt.massDamping)),
|
|
1441
|
+
sizeStiffness: Math.max(.001, n("evolveSizeStiffness", lt.sizeStiffness)),
|
|
1442
|
+
sizeDamping: Math.max(0, n("evolveSizeDamping", lt.sizeDamping)),
|
|
1443
|
+
radiusStiffness: Math.max(.001, n("evolveRadiusStiffness", lt.radiusStiffness)),
|
|
1444
|
+
radiusDamping: Math.max(0, n("evolveRadiusDamping", lt.radiusDamping)),
|
|
1445
|
+
contentBlur: Math.max(0, n("evolveContentBlur", lt.contentBlur)),
|
|
1446
|
+
roundness: ft(n("evolveRoundness", lt.roundness)),
|
|
1447
|
+
cornerDuration: Math.max(0, n("evolveCornerDuration", lt.cornerDuration)),
|
|
1448
|
+
cornerDelay: Math.max(0, n("evolveCornerDelay", lt.cornerDelay)),
|
|
1449
|
+
cornerEase: mt(e, "evolveCornerEase", lt.cornerEase),
|
|
1450
|
+
anticipation: Math.max(0, n("evolveAnticipation", lt.anticipation)),
|
|
1451
|
+
travel: Math.max(0, n("evolveTravel", lt.travel))
|
|
1452
|
+
}, i = Math.max(.25, dt(t?.speed, n("morphSpeed", 1))), a = ft(dt(t?.bounce, n("morphBounce", .5))), o = (e) => Math.max(.12, 1 - 1.1 * ft(e)), s = o(a) / o(.5);
|
|
1436
1453
|
return {
|
|
1437
1454
|
massStiffness: r.massStiffness * i * i,
|
|
1438
1455
|
massDamping: r.massDamping * i * s,
|
|
@@ -1440,7 +1457,7 @@ function ft(e, t) {
|
|
|
1440
1457
|
sizeDamping: r.sizeDamping * i * s,
|
|
1441
1458
|
radiusStiffness: r.radiusStiffness * i * i,
|
|
1442
1459
|
radiusDamping: r.radiusDamping * i,
|
|
1443
|
-
contentBlur: Math.max(0,
|
|
1460
|
+
contentBlur: Math.max(0, dt(t?.contentBlur, r.contentBlur)),
|
|
1444
1461
|
roundness: r.roundness,
|
|
1445
1462
|
cornerDuration: r.cornerDuration / i,
|
|
1446
1463
|
cornerDelay: r.cornerDelay,
|
|
@@ -1450,14 +1467,14 @@ function ft(e, t) {
|
|
|
1450
1467
|
...t?.advanced ?? {}
|
|
1451
1468
|
};
|
|
1452
1469
|
}
|
|
1453
|
-
function
|
|
1454
|
-
return t?.shape === void 0 ?
|
|
1470
|
+
function gt(e, t) {
|
|
1471
|
+
return t?.shape === void 0 ? pt(e, "morphShape", 1) >= .5 : t.shape;
|
|
1455
1472
|
}
|
|
1456
|
-
function
|
|
1457
|
-
let n =
|
|
1473
|
+
function _t(e, t) {
|
|
1474
|
+
let n = ht(e, t), r = Math.max(0, pt(e, "contentBlurAreaMultiplier", 3));
|
|
1458
1475
|
return n.contentBlur * r;
|
|
1459
1476
|
}
|
|
1460
|
-
function
|
|
1477
|
+
function vt(e) {
|
|
1461
1478
|
return {
|
|
1462
1479
|
cx: e.cx,
|
|
1463
1480
|
cy: e.cy,
|
|
@@ -1482,7 +1499,7 @@ function ht(e) {
|
|
|
1482
1499
|
round01: 0
|
|
1483
1500
|
};
|
|
1484
1501
|
}
|
|
1485
|
-
function
|
|
1502
|
+
function yt(e, t) {
|
|
1486
1503
|
e.cx = t.cx, e.cy = t.cy, e.w = t.w, e.h = t.h, e.r = t.r, e.vcx = 0, e.vcy = 0, e.vw = 0, e.vh = 0, e.vr = 0, e.motionEnv = 0, e.tPrev = {
|
|
1487
1504
|
cx: t.cx,
|
|
1488
1505
|
cy: t.cy
|
|
@@ -1491,18 +1508,18 @@ function gt(e, t) {
|
|
|
1491
1508
|
h: t.h
|
|
1492
1509
|
}, e.morphActive = !1, e.round01 = 0;
|
|
1493
1510
|
}
|
|
1494
|
-
function
|
|
1511
|
+
function bt(e, t, n, r, i, a) {
|
|
1495
1512
|
let o = t + (r * (n - e) - i * t) * a;
|
|
1496
1513
|
return [e + o * a, o];
|
|
1497
1514
|
}
|
|
1498
|
-
function
|
|
1499
|
-
let o = Math.max(0,
|
|
1500
|
-
for (; s-- > 0;) [l, u] =
|
|
1515
|
+
function xt(e, t, n, r, i, a) {
|
|
1516
|
+
let o = Math.max(0, dt(a, 0)), s = Math.max(1, Math.ceil(o * 60)), c = o / s, l = e, u = t;
|
|
1517
|
+
for (; s-- > 0;) [l, u] = bt(l, u, n, r, i, c);
|
|
1501
1518
|
return [l, u];
|
|
1502
1519
|
}
|
|
1503
|
-
var
|
|
1504
|
-
function
|
|
1505
|
-
let t =
|
|
1520
|
+
var St = /* @__PURE__ */ new Map();
|
|
1521
|
+
function Ct(e) {
|
|
1522
|
+
let t = St.get(e);
|
|
1506
1523
|
if (t) return t;
|
|
1507
1524
|
let n = /cubic-bezier\(([^)]+)\)/.exec(e);
|
|
1508
1525
|
if (n) {
|
|
@@ -1518,14 +1535,14 @@ function bt(e) {
|
|
|
1518
1535
|
let s = (n + o) / 2;
|
|
1519
1536
|
return 3 * s * (1 - s) * (1 - s) * r + 3 * s * s * (1 - s) * a + s ** 3;
|
|
1520
1537
|
};
|
|
1521
|
-
} else t = e === "ease-in-out" ?
|
|
1522
|
-
return
|
|
1538
|
+
} else t = e === "ease-in-out" ? Ct("cubic-bezier(0.42, 0, 0.58, 1)") : (e) => ft(e);
|
|
1539
|
+
return St.set(e, t), t;
|
|
1523
1540
|
}
|
|
1524
|
-
function
|
|
1541
|
+
function wt(e) {
|
|
1525
1542
|
return String(Math.round(e * 1e3) / 1e3);
|
|
1526
1543
|
}
|
|
1527
|
-
function
|
|
1528
|
-
let a = Math.max(0,
|
|
1544
|
+
function Tt(e, t, n, r, i) {
|
|
1545
|
+
let a = Math.max(0, dt(n, 0)), o = t.cx, s = t.cy;
|
|
1529
1546
|
e.tPrev ||= {
|
|
1530
1547
|
cx: o,
|
|
1531
1548
|
cy: s
|
|
@@ -1540,7 +1557,7 @@ function St(e, t, n, r, i) {
|
|
|
1540
1557
|
let g = Math.max(0, i.anticipation) / 1e3, _ = g > 0 ? 1 - Math.exp(-a / g) : 1;
|
|
1541
1558
|
e.lead01 += (+(f > .5) - e.lead01) * _;
|
|
1542
1559
|
let v = Math.min(Math.max(0, i.travel) * e.lead01, f);
|
|
1543
|
-
[e.cx, e.vcx] =
|
|
1560
|
+
[e.cx, e.vcx] = xt(e.cx, e.vcx, o + m * v, i.massStiffness, i.massDamping, a), [e.cy, e.vcy] = xt(e.cy, e.vcy, s + h * v, i.massStiffness, i.massDamping, a), [e.w, e.vw] = xt(e.w, e.vw, t.w, i.sizeStiffness, i.sizeDamping, a), [e.h, e.vh] = xt(e.h, e.vh, t.h, i.sizeStiffness, i.sizeDamping, a), [e.r, e.vr] = xt(e.r, e.vr, t.r, i.radiusStiffness, i.radiusDamping, a);
|
|
1544
1561
|
let y = e.lastTargetSize;
|
|
1545
1562
|
(y ? Math.abs(t.w - y.w) + Math.abs(t.h - y.h) : 0) > .5 ? (e.morphActive ||= (e.cornerT0 = r, e.cornerStarted = !0, !0), e.lastTargetMoveT = r) : e.morphActive && r - e.lastTargetMoveT > 150 && r - e.cornerT0 > Math.max(0, i.cornerDelay) + Math.max(1, i.cornerDuration) && (e.morphActive = !1), e.lastTargetSize = {
|
|
1546
1563
|
w: t.w,
|
|
@@ -1548,8 +1565,8 @@ function St(e, t, n, r, i) {
|
|
|
1548
1565
|
};
|
|
1549
1566
|
let b = Math.max(0, i.cornerDelay) + Math.max(1, i.cornerDuration), x = 0;
|
|
1550
1567
|
if (e.cornerStarted && i.roundness > 0 && r - e.cornerT0 < b) {
|
|
1551
|
-
let t =
|
|
1552
|
-
x =
|
|
1568
|
+
let t = ft((r - e.cornerT0 - Math.max(0, i.cornerDelay)) / Math.max(1, i.cornerDuration));
|
|
1569
|
+
x = ft((1 - Ct(i.cornerEase)(t)) * i.roundness);
|
|
1553
1570
|
}
|
|
1554
1571
|
let S = a * 8;
|
|
1555
1572
|
e.round01 += Math.max(-S, Math.min(S, x - e.round01));
|
|
@@ -1560,22 +1577,22 @@ function St(e, t, n, r, i) {
|
|
|
1560
1577
|
}
|
|
1561
1578
|
let w = Math.min(1, (Math.hypot(e.vcx, e.vcy) + Math.abs(e.vw) + Math.abs(e.vh)) / 420);
|
|
1562
1579
|
e.motionEnv = Math.max(w, e.motionEnv - a * 1.9);
|
|
1563
|
-
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 = [
|
|
1564
1581
|
C,
|
|
1565
1582
|
C,
|
|
1566
1583
|
C,
|
|
1567
1584
|
C
|
|
1568
1585
|
];
|
|
1569
1586
|
return {
|
|
1570
|
-
path:
|
|
1571
|
-
transform: `translate(${
|
|
1587
|
+
path: We(-e.w / 2, -e.h / 2, e.w, e.h, k),
|
|
1588
|
+
transform: `translate(${wt(e.cx)} ${wt(e.cy)}) scale(${wt(t.scale)})`,
|
|
1572
1589
|
contentBlur: T,
|
|
1573
1590
|
moving: !O
|
|
1574
1591
|
};
|
|
1575
1592
|
}
|
|
1576
1593
|
//#endregion
|
|
1577
1594
|
//#region src/liquidGooeySpring.ts
|
|
1578
|
-
var
|
|
1595
|
+
var Et = {
|
|
1579
1596
|
snappy: {
|
|
1580
1597
|
stiffness: 480,
|
|
1581
1598
|
damping: 34,
|
|
@@ -1591,16 +1608,16 @@ var Ct = {
|
|
|
1591
1608
|
damping: 17,
|
|
1592
1609
|
mass: 1
|
|
1593
1610
|
}
|
|
1594
|
-
},
|
|
1595
|
-
function
|
|
1611
|
+
}, Dt = 1 / 240;
|
|
1612
|
+
function Ot(e) {
|
|
1596
1613
|
let t = 0, n = 0, r = 0, i = -1, a = 0, o = [0];
|
|
1597
1614
|
for (; r < 10;) {
|
|
1598
1615
|
let s = (-e.stiffness * (t - 1) - e.damping * n) / e.mass;
|
|
1599
|
-
if (n += s *
|
|
1616
|
+
if (n += s * Dt, t += n * Dt, r += Dt, o.push(t), t > a && (a = t), Math.abs(t - 1) < .001 && Math.abs(n) < .02) {
|
|
1600
1617
|
if (i < 0 && (i = r), r - i >= .064) break;
|
|
1601
1618
|
} else i = -1;
|
|
1602
1619
|
}
|
|
1603
|
-
let s = i > 0 ? i : r, c = Math.round(Math.min(120, Math.max(24, s * 90))), l = Math.min(o.length - 1, s /
|
|
1620
|
+
let s = i > 0 ? i : r, c = Math.round(Math.min(120, Math.max(24, s * 90))), l = Math.min(o.length - 1, s / Dt), u = [];
|
|
1604
1621
|
for (let e = 0; e <= c; e += 1) {
|
|
1605
1622
|
let t = Math.min(o.length - 1, Math.round(e / c * l));
|
|
1606
1623
|
u.push(Math.round((o[t] ?? 1) * 1e4) / 1e4);
|
|
@@ -1611,13 +1628,13 @@ function Tt(e) {
|
|
|
1611
1628
|
overshoots: a > 1.001
|
|
1612
1629
|
};
|
|
1613
1630
|
}
|
|
1614
|
-
var
|
|
1615
|
-
function
|
|
1616
|
-
return
|
|
1631
|
+
var kt = null;
|
|
1632
|
+
function At() {
|
|
1633
|
+
return kt === null && (kt = typeof CSS < "u" && typeof CSS.supports == "function" && CSS.supports("transition-timing-function", "linear(0, 1)")), kt;
|
|
1617
1634
|
}
|
|
1618
|
-
var
|
|
1619
|
-
function
|
|
1620
|
-
let t =
|
|
1635
|
+
var jt = /* @__PURE__ */ new Map(), Mt = /* @__PURE__ */ new Map();
|
|
1636
|
+
function Nt(e) {
|
|
1637
|
+
let t = Mt.get(e);
|
|
1621
1638
|
if (t) return t;
|
|
1622
1639
|
let n = /^linear\(([^)]+)\)$/.exec(e.trim()), r = /^cubic-bezier\(([^)]+)\)$/.exec(e.trim()), i;
|
|
1623
1640
|
if (n) {
|
|
@@ -1641,10 +1658,10 @@ function At(e) {
|
|
|
1641
1658
|
let s = (i + o) / 2;
|
|
1642
1659
|
return 3 * s * (1 - s) * (1 - s) * t + 3 * s * s * (1 - s) * a + s ** 3;
|
|
1643
1660
|
};
|
|
1644
|
-
} else i = e === "ease" ?
|
|
1645
|
-
return
|
|
1661
|
+
} else i = e === "ease" ? Nt("cubic-bezier(0.25, 0.1, 0.25, 1)") : e === "ease-in" ? Nt("cubic-bezier(0.42, 0, 1, 1)") : e === "ease-out" ? Nt("cubic-bezier(0, 0, 0.58, 1)") : e === "ease-in-out" ? Nt("cubic-bezier(0.42, 0, 0.58, 1)") : (e) => Math.min(1, Math.max(0, e));
|
|
1662
|
+
return Mt.set(e, i), i;
|
|
1646
1663
|
}
|
|
1647
|
-
function
|
|
1664
|
+
function Pt(e, t = !1) {
|
|
1648
1665
|
if (t) return {
|
|
1649
1666
|
duration: 0,
|
|
1650
1667
|
easing: "linear"
|
|
@@ -1654,58 +1671,58 @@ function jt(e, t = !1) {
|
|
|
1654
1671
|
duration: Math.max(0, n.duration),
|
|
1655
1672
|
easing: n.ease ?? "cubic-bezier(0.22, 1, 0.36, 1)"
|
|
1656
1673
|
};
|
|
1657
|
-
let r = typeof n == "string" ?
|
|
1674
|
+
let r = typeof n == "string" ? Et[n] : {
|
|
1658
1675
|
stiffness: 300,
|
|
1659
1676
|
damping: 24,
|
|
1660
1677
|
mass: 1,
|
|
1661
1678
|
...n
|
|
1662
|
-
}, i = `${r.stiffness}/${r.damping}/${r.mass}/${
|
|
1679
|
+
}, i = `${r.stiffness}/${r.damping}/${r.mass}/${At()}`, a = jt.get(i);
|
|
1663
1680
|
if (!a) {
|
|
1664
|
-
let e =
|
|
1681
|
+
let e = Ot(r);
|
|
1665
1682
|
a = {
|
|
1666
1683
|
duration: Math.round(e.duration * 1e3),
|
|
1667
|
-
easing:
|
|
1668
|
-
},
|
|
1684
|
+
easing: At() ? `linear(${e.values.join(", ")})` : e.overshoots ? "cubic-bezier(0.34, 1.56, 0.64, 1)" : "cubic-bezier(0.22, 1, 0.36, 1)"
|
|
1685
|
+
}, jt.set(i, a);
|
|
1669
1686
|
}
|
|
1670
1687
|
return a;
|
|
1671
1688
|
}
|
|
1672
1689
|
//#endregion
|
|
1673
1690
|
//#region src/liquidGooeyEngine.ts
|
|
1674
|
-
function
|
|
1691
|
+
function Ft(e, t) {
|
|
1675
1692
|
return e !== void 0 && Number.isFinite(e) ? e : t;
|
|
1676
1693
|
}
|
|
1677
|
-
function
|
|
1694
|
+
function It(e) {
|
|
1678
1695
|
let t = {
|
|
1679
1696
|
observe: e.observe ?? !1,
|
|
1680
|
-
x:
|
|
1681
|
-
y:
|
|
1682
|
-
scale: Math.max(.01,
|
|
1697
|
+
x: Ft(e.x, 0),
|
|
1698
|
+
y: Ft(e.y, 0),
|
|
1699
|
+
scale: Math.max(.01, Ft(e.scale, 1))
|
|
1683
1700
|
};
|
|
1684
|
-
return e.effect !== void 0 && (t.effect = e.effect), e.morph !== void 0 && (t.morph = e.morph), e.bend !== void 0 && (t.bend = e.bend), e.transition !== void 0 && (t.transition = e.transition), e.delay !== void 0 && (t.delay = Math.max(0,
|
|
1701
|
+
return e.effect !== void 0 && (t.effect = e.effect), e.morph !== void 0 && (t.morph = e.morph), e.bend !== void 0 && (t.bend = e.bend), e.transition !== void 0 && (t.transition = e.transition), e.delay !== void 0 && (t.delay = Math.max(0, Ft(e.delay, 0))), e.radius !== void 0 && (t.radius = e.radius), t;
|
|
1685
1702
|
}
|
|
1686
|
-
function
|
|
1703
|
+
function Lt(e) {
|
|
1687
1704
|
return {
|
|
1688
1705
|
x: e.x,
|
|
1689
1706
|
y: e.y,
|
|
1690
1707
|
scale: e.scale
|
|
1691
1708
|
};
|
|
1692
1709
|
}
|
|
1693
|
-
function
|
|
1710
|
+
function Rt(e, t) {
|
|
1694
1711
|
return e.x === t.x && e.y === t.y && e.scale === t.scale;
|
|
1695
1712
|
}
|
|
1696
|
-
function
|
|
1697
|
-
return e.effect === t.effect && e.observe === t.observe && JSON.stringify(e.morph) === JSON.stringify(t.morph) && JSON.stringify(e.bend) === JSON.stringify(t.bend) && JSON.stringify(e.transition) === JSON.stringify(t.transition) && e.delay === t.delay &&
|
|
1713
|
+
function zt(e, t) {
|
|
1714
|
+
return e.effect === t.effect && e.observe === t.observe && JSON.stringify(e.morph) === JSON.stringify(t.morph) && JSON.stringify(e.bend) === JSON.stringify(t.bend) && JSON.stringify(e.transition) === JSON.stringify(t.transition) && e.delay === t.delay && Bt(e.radius) === Bt(t.radius);
|
|
1698
1715
|
}
|
|
1699
|
-
function
|
|
1716
|
+
function Bt(e) {
|
|
1700
1717
|
return e === void 0 ? "" : JSON.stringify(e);
|
|
1701
1718
|
}
|
|
1702
|
-
function
|
|
1719
|
+
function Vt(e, t) {
|
|
1703
1720
|
return !!(e && Math.abs(e.x - t.x) < .01 && Math.abs(e.y - t.y) < .01 && Math.abs(e.w - t.w) < .01 && Math.abs(e.h - t.h) < .01 && e.r.every((e, n) => Math.abs(e - (t.r[n] ?? 0)) < .01));
|
|
1704
1721
|
}
|
|
1705
|
-
function
|
|
1722
|
+
function Ht(e) {
|
|
1706
1723
|
return String(Math.round(e * 1e3) / 1e3);
|
|
1707
1724
|
}
|
|
1708
|
-
var
|
|
1725
|
+
var Ut = class {
|
|
1709
1726
|
getGroup;
|
|
1710
1727
|
getFilterArea;
|
|
1711
1728
|
onModeChange;
|
|
@@ -1735,11 +1752,11 @@ var Bt = class {
|
|
|
1735
1752
|
}
|
|
1736
1753
|
register(e) {
|
|
1737
1754
|
this.revive(), this.unregister(e.id);
|
|
1738
|
-
let t =
|
|
1755
|
+
let t = It(e.config), n = {
|
|
1739
1756
|
...e,
|
|
1740
1757
|
config: t,
|
|
1741
|
-
target:
|
|
1742
|
-
current:
|
|
1758
|
+
target: Lt(t),
|
|
1759
|
+
current: Lt(t),
|
|
1743
1760
|
motion: null,
|
|
1744
1761
|
lastBox: null,
|
|
1745
1762
|
lastPaint: null,
|
|
@@ -1761,7 +1778,7 @@ var Bt = class {
|
|
|
1761
1778
|
update(e, t) {
|
|
1762
1779
|
let n = this.items.get(e);
|
|
1763
1780
|
if (!n) return;
|
|
1764
|
-
let r =
|
|
1781
|
+
let r = It(t), i = Lt(r), a = !Rt(n.target, i), o = !zt(n.config, r);
|
|
1765
1782
|
if (n.config = r, this.updateFeaturePadding(), !a) {
|
|
1766
1783
|
o && (n.lastPaint = null, this.isDynamic(n) || this.resetDynamicEntry(n), r.effect === "bend" && this.writeBendVars(n, 0, 0), this.isDynamic(n) && !this.reducedMotion && (this.ensureClaim() ? this.setMode("animated") : (this.snapEntry(n), this.resetDynamicEntry(n), this.setMode("static"))), this.touch(), this.wake());
|
|
1767
1784
|
return;
|
|
@@ -1769,13 +1786,13 @@ var Bt = class {
|
|
|
1769
1786
|
let s = this.now();
|
|
1770
1787
|
if (this.advanceEntry(n, s), n.target = i, this.reducedMotion) this.snapEntry(n), this.resetMoveEntry(n), this.resetDynamicEntry(n), this.setMode("reduced");
|
|
1771
1788
|
else {
|
|
1772
|
-
let e =
|
|
1789
|
+
let e = Pt(r.transition), t = e.duration > 0;
|
|
1773
1790
|
!(t || this.follow || this.isDynamic(n)) || !this.ensureClaim() ? (this.snapEntry(n), this.resetMoveEntry(n), this.resetDynamicEntry(n), this.setMode("static")) : !t || r.observe ? (n.current = { ...i }, n.motion = null, n.host.style.willChange = "", n.lastPaint = null, this.applyHost(n), this.setMode("animated")) : (n.motion = {
|
|
1774
1791
|
from: { ...n.current },
|
|
1775
1792
|
to: { ...i },
|
|
1776
1793
|
start: s + (r.delay ?? 0),
|
|
1777
1794
|
duration: e.duration,
|
|
1778
|
-
ease:
|
|
1795
|
+
ease: Nt(e.easing)
|
|
1779
1796
|
}, n.host.style.willChange = r.observe ? "" : "transform", this.setMode("animated"));
|
|
1780
1797
|
}
|
|
1781
1798
|
this.touch(s), this.needsPaint = !0, this.wake();
|
|
@@ -1832,10 +1849,10 @@ var Bt = class {
|
|
|
1832
1849
|
ensureClaim() {
|
|
1833
1850
|
if (this.claimed) return !0;
|
|
1834
1851
|
let e = this.getFilterArea();
|
|
1835
|
-
return Number.isFinite(e) && (this.filterArea = Math.max(0, e)), Ae(this.filterArea) ? (this.claimed = !0, this.moveOptions =
|
|
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);
|
|
1836
1853
|
}
|
|
1837
1854
|
warnBudgetFallback() {
|
|
1838
|
-
if (this.budgetWarningEmitted
|
|
1855
|
+
if (this.budgetWarningEmitted) return;
|
|
1839
1856
|
this.budgetWarningEmitted = !0;
|
|
1840
1857
|
let e = Oe(), t = e.activeGroups >= e.maxAnimatedGroups ? "the active-group limit is reached" : "the filter-area limit is exceeded";
|
|
1841
1858
|
console.warn(`LiquidGroup: the liquid animation budget is insufficient (${t}); degrading to static rendering for this group.`);
|
|
@@ -1850,7 +1867,7 @@ var Bt = class {
|
|
|
1850
1867
|
return e.config.effect === "bend";
|
|
1851
1868
|
}
|
|
1852
1869
|
isShape(e) {
|
|
1853
|
-
return !this.isBend(e) && e.config.morph !== void 0 &&
|
|
1870
|
+
return !this.isBend(e) && e.config.morph !== void 0 && gt(this.getGroup(), e.config.morph);
|
|
1854
1871
|
}
|
|
1855
1872
|
isDynamic(e) {
|
|
1856
1873
|
return this.isBend(e) || this.isShape(e);
|
|
@@ -1873,7 +1890,7 @@ var Bt = class {
|
|
|
1873
1890
|
let e = 0;
|
|
1874
1891
|
for (let t of this.items.values()) {
|
|
1875
1892
|
let n = this.featureBox(t);
|
|
1876
|
-
this.isBend(t) ? e = Math.max(e,
|
|
1893
|
+
this.isBend(t) ? e = Math.max(e, st(n, Ze(this.getGroup(), t.config.bend))) : this.isShape(t) && (e = Math.max(e, _t(this.getGroup(), t.config.morph)));
|
|
1877
1894
|
}
|
|
1878
1895
|
Math.abs(e - this.featurePadding) < .5 || (this.featurePadding = e, this.onFeaturePaddingChange?.(e));
|
|
1879
1896
|
}
|
|
@@ -1886,7 +1903,7 @@ var Bt = class {
|
|
|
1886
1903
|
this.clearContentBlur(e);
|
|
1887
1904
|
return;
|
|
1888
1905
|
}
|
|
1889
|
-
let r = e.baseContentFilter.trim(), i = `${r && r !== "none" ? `${r} ` : ""}blur(${
|
|
1906
|
+
let r = e.baseContentFilter.trim(), i = `${r && r !== "none" ? `${r} ` : ""}blur(${Ht(n)}px)`;
|
|
1890
1907
|
e.lastContentFilter !== i && (e.host.style.filter = i, e.lastContentFilter = i, e.contentBlurred = !0);
|
|
1891
1908
|
}
|
|
1892
1909
|
clearBendVars(e) {
|
|
@@ -1929,7 +1946,7 @@ var Bt = class {
|
|
|
1929
1946
|
e.ownTransform && e.host.style.transform === e.ownTransform && e.host.style.removeProperty("transform"), e.ownTransform = "";
|
|
1930
1947
|
return;
|
|
1931
1948
|
}
|
|
1932
|
-
let t = `translate(${
|
|
1949
|
+
let t = `translate(${Ht(e.current.x)}px, ${Ht(e.current.y)}px) scale(${Ht(e.current.scale)})`;
|
|
1933
1950
|
e.ownTransform !== t && (e.ownTransform = t, e.host.style.transform = t);
|
|
1934
1951
|
}
|
|
1935
1952
|
createTailElements(e) {
|
|
@@ -1965,15 +1982,15 @@ var Bt = class {
|
|
|
1965
1982
|
};
|
|
1966
1983
|
}
|
|
1967
1984
|
readBox(e, t) {
|
|
1968
|
-
let n = e.host.firstElementChild ?? e.host, r =
|
|
1985
|
+
let n = e.host.firstElementChild ?? e.host, r = Ve(e.host, t), i = e.host.offsetWidth, a = e.host.offsetHeight;
|
|
1969
1986
|
if (e.config.observe) {
|
|
1970
1987
|
let o = n.getBoundingClientRect(), s = t.getBoundingClientRect();
|
|
1971
1988
|
o.width > 0 || o.height > 0 ? (r = {
|
|
1972
1989
|
x: o.left - s.left,
|
|
1973
1990
|
y: o.top - s.top
|
|
1974
|
-
}, i = o.width || n.offsetWidth, a = o.height || n.offsetHeight) : (r =
|
|
1991
|
+
}, i = o.width || n.offsetWidth, a = o.height || n.offsetHeight) : (r = Ve(n, t), i = n.offsetWidth || e.host.offsetWidth, a = n.offsetHeight || e.host.offsetHeight);
|
|
1975
1992
|
}
|
|
1976
|
-
let o = e.config.radius === void 0 ?
|
|
1993
|
+
let o = e.config.radius === void 0 ? He(n, i, a) : Ue(e.config.radius);
|
|
1977
1994
|
return {
|
|
1978
1995
|
x: r.x,
|
|
1979
1996
|
y: r.y,
|
|
@@ -1995,8 +2012,8 @@ var Bt = class {
|
|
|
1995
2012
|
}
|
|
1996
2013
|
paintEvolveEntry(e, t, n, r) {
|
|
1997
2014
|
let i = this.dynamicTarget(e, t);
|
|
1998
|
-
e.evolve ||=
|
|
1999
|
-
let a =
|
|
2015
|
+
e.evolve ||= vt(i), (this.reducedMotion || !this.claimed && !r) && yt(e.evolve, i);
|
|
2016
|
+
let a = ht(this.getGroup(), e.config.morph), o = Tt(e.evolve, i, this.reducedMotion || !this.claimed && !r ? 0 : n, this.now(), a), s = `${o.path}|${o.transform}`, c = !1;
|
|
2000
2017
|
return e.lastPaint !== s && (e.lastPaint = s, e.blob.setAttribute("d", o.path), e.blob.setAttribute("transform", o.transform), c = !0), this.hideTail(e), this.writeContentBlur(e, o.contentBlur), {
|
|
2001
2018
|
changed: c,
|
|
2002
2019
|
moving: !this.reducedMotion && this.claimed && o.moving
|
|
@@ -2004,8 +2021,8 @@ var Bt = class {
|
|
|
2004
2021
|
}
|
|
2005
2022
|
paintBendEntry(e, t, n, r) {
|
|
2006
2023
|
let i = this.dynamicTarget(e, t);
|
|
2007
|
-
e.bendState ||=
|
|
2008
|
-
let a =
|
|
2024
|
+
e.bendState ||= at(i), (this.reducedMotion || !this.claimed && !r) && ot(e.bendState, i);
|
|
2025
|
+
let a = Ze(this.getGroup(), e.config.bend), o = ct(e.bendState, i, t, this.reducedMotion || !this.claimed && !r ? 0 : n, a), s = !1;
|
|
2009
2026
|
return e.lastPaint !== o.fingerprint && (e.lastPaint = o.fingerprint, e.blob.setAttribute("d", o.path), e.blob.setAttribute("transform", o.transform), s = !0), this.hideTail(e), this.clearContentBlur(e), this.writeBendVars(e, o.bendX, o.bendY), {
|
|
2010
2027
|
changed: s,
|
|
2011
2028
|
moving: !this.reducedMotion && this.claimed && o.moving
|
|
@@ -2013,15 +2030,15 @@ var Bt = class {
|
|
|
2013
2030
|
}
|
|
2014
2031
|
paintFollowEntry(e, t, n, r, i) {
|
|
2015
2032
|
let a = this.moveTarget(e, t);
|
|
2016
|
-
!i && r && !this.reducedMotion && !this.claimed && (this.ensureClaim() ? this.setMode("animated") : (this.resetMoveEntry(e), e.move =
|
|
2017
|
-
let o = this.moveOptions ??=
|
|
2033
|
+
!i && r && !this.reducedMotion && !this.claimed && (this.ensureClaim() ? this.setMode("animated") : (this.resetMoveEntry(e), e.move = et(a))), e.move ||= et(a), this.reducedMotion && tt(e.move, a);
|
|
2034
|
+
let o = this.moveOptions ??= Xe(this.getGroup()), s = rt(e.move, a, t, this.reducedMotion ? 0 : n, o), c = `${s.path}|${s.transform}`, l = !1;
|
|
2018
2035
|
return e.lastPaint !== c && (e.lastPaint = c, e.blob.setAttribute("d", s.path), e.blob.setAttribute("transform", s.transform), l = !0), this.paintTail(e, s.tail) && (l = !0), {
|
|
2019
2036
|
changed: l,
|
|
2020
2037
|
moving: !this.reducedMotion && s.moving && this.claimed
|
|
2021
2038
|
};
|
|
2022
2039
|
}
|
|
2023
2040
|
paintEntry(e, t) {
|
|
2024
|
-
let n = t.x + e.current.x + t.w * (1 - e.current.scale) / 2, r = t.y + e.current.y + t.h * (1 - e.current.scale) / 2, i = `translate(${
|
|
2041
|
+
let n = t.x + e.current.x + t.w * (1 - e.current.scale) / 2, r = t.y + e.current.y + t.h * (1 - e.current.scale) / 2, i = `translate(${Ht(n)} ${Ht(r)}) scale(${Ht(e.current.scale)})`, a = We(0, 0, t.w, t.h, t.r), o = `${a}|${i}`;
|
|
2025
2042
|
return e.lastPaint === o ? !1 : (e.lastPaint = o, e.blob.setAttribute("d", a), e.blob.setAttribute("transform", i), !0);
|
|
2026
2043
|
}
|
|
2027
2044
|
loop = (e) => {
|
|
@@ -2040,7 +2057,7 @@ var Bt = class {
|
|
|
2040
2057
|
for (let t of this.items.values()) {
|
|
2041
2058
|
let n = e.get(t.id);
|
|
2042
2059
|
if (!n) continue;
|
|
2043
|
-
let r = t.lastBox === null, s = !
|
|
2060
|
+
let r = t.lastBox === null, s = !Vt(t.lastBox, n);
|
|
2044
2061
|
r && a.add(t.id), s && o.add(t.id), s && (t.lastBox = n, t.lastPaint = null, i = !0);
|
|
2045
2062
|
}
|
|
2046
2063
|
this.updateFeaturePadding();
|
|
@@ -2108,18 +2125,18 @@ var Bt = class {
|
|
|
2108
2125
|
};
|
|
2109
2126
|
//#endregion
|
|
2110
2127
|
//#region src/liquidGooeyShadow.ts
|
|
2111
|
-
function
|
|
2128
|
+
function Wt(e, t) {
|
|
2112
2129
|
let n = [], r = 0, i = "";
|
|
2113
2130
|
for (let a of e) a === "(" ? r += 1 : a === ")" && --r, r === 0 && (t === "," ? a === "," : /\s/.test(a)) ? (i.trim() && n.push(i.trim()), i = "") : i += a;
|
|
2114
2131
|
return i.trim() && n.push(i.trim()), n;
|
|
2115
2132
|
}
|
|
2116
|
-
var
|
|
2117
|
-
function
|
|
2133
|
+
var Gt = /^[+-]?(\d+\.?\d*|\.\d+)(px)?$/;
|
|
2134
|
+
function Kt(e) {
|
|
2118
2135
|
if (!e || e.trim() === "" || e.trim() === "none") return [];
|
|
2119
2136
|
let t = [];
|
|
2120
|
-
for (let n of
|
|
2121
|
-
let e =
|
|
2122
|
-
for (let t of e) t !== "inset" && (i.length < 4 &&
|
|
2137
|
+
for (let n of Wt(e, ",")) {
|
|
2138
|
+
let e = Wt(n, " "), r = e.includes("inset"), i = [], a = [];
|
|
2139
|
+
for (let t of e) t !== "inset" && (i.length < 4 && Gt.test(t) ? i.push(parseFloat(t)) : a.push(t));
|
|
2123
2140
|
let [o = 0, s = 0, c = 0, l = 0] = i;
|
|
2124
2141
|
t.push({
|
|
2125
2142
|
x: o,
|
|
@@ -2132,10 +2149,10 @@ function Ut(e) {
|
|
|
2132
2149
|
}
|
|
2133
2150
|
return t;
|
|
2134
2151
|
}
|
|
2135
|
-
function
|
|
2152
|
+
function qt(e) {
|
|
2136
2153
|
if (!e || e.trim() === "" || e.trim() === "none") return null;
|
|
2137
|
-
let t =
|
|
2138
|
-
for (let e of t) e !== "solid" && (n === 0 &&
|
|
2154
|
+
let t = Wt(e, " "), n = 0, r = [];
|
|
2155
|
+
for (let e of t) e !== "solid" && (n === 0 && Gt.test(e) ? n = parseFloat(e) : r.push(e));
|
|
2139
2156
|
return {
|
|
2140
2157
|
width: n,
|
|
2141
2158
|
color: r.join(" ") || "var(--game-ui-stroke, transparent)"
|
|
@@ -2143,7 +2160,7 @@ function Wt(e) {
|
|
|
2143
2160
|
}
|
|
2144
2161
|
//#endregion
|
|
2145
2162
|
//#region src/liquidGooeyImageMelt.tsx
|
|
2146
|
-
var
|
|
2163
|
+
var Jt = 24, Yt = 500, Xt = 16, Zt = 6, Qt = {
|
|
2147
2164
|
blur: 7,
|
|
2148
2165
|
contrast: 40,
|
|
2149
2166
|
reach: .8,
|
|
@@ -2173,16 +2190,13 @@ var Gt = 24, Kt = 500, qt = 16, Jt = 6, Yt = {
|
|
|
2173
2190
|
sink: .8,
|
|
2174
2191
|
seamBlur: 12.8
|
|
2175
2192
|
};
|
|
2176
|
-
function
|
|
2177
|
-
return !1;
|
|
2178
|
-
}
|
|
2179
|
-
function Zt(e, t = 0, n = 1) {
|
|
2193
|
+
function $t(e, t = 0, n = 1) {
|
|
2180
2194
|
return Math.min(n, Math.max(t, e));
|
|
2181
2195
|
}
|
|
2182
|
-
function
|
|
2196
|
+
function en(e, t) {
|
|
2183
2197
|
return e !== void 0 && Number.isFinite(e) ? e : t;
|
|
2184
2198
|
}
|
|
2185
|
-
function
|
|
2199
|
+
function tn(e, t, n) {
|
|
2186
2200
|
let r = e?.ownerDocument.defaultView;
|
|
2187
2201
|
if (!r) return n;
|
|
2188
2202
|
let i = z[t], a = /^var\((--[\w-]+)\)$/.exec(i)?.[1];
|
|
@@ -2190,34 +2204,34 @@ function $t(e, t, n) {
|
|
|
2190
2204
|
let o = Number.parseFloat(r.getComputedStyle(e).getPropertyValue(a));
|
|
2191
2205
|
return Number.isFinite(o) ? o : n;
|
|
2192
2206
|
}
|
|
2193
|
-
function
|
|
2194
|
-
let n = (n, r) =>
|
|
2207
|
+
function nn(e, t = {}) {
|
|
2208
|
+
let n = (n, r) => en(t[n], tn(e, r, Qt[n]));
|
|
2195
2209
|
return {
|
|
2196
2210
|
blur: Math.max(0, n("blur", "meltBlur")),
|
|
2197
2211
|
contrast: Math.max(1, n("contrast", "meltContrast")),
|
|
2198
2212
|
reach: Math.max(0, n("reach", "meltReach")),
|
|
2199
2213
|
fade: Math.max(0, n("fade", "meltFade")),
|
|
2200
2214
|
warp: Math.max(0, n("warp", "meltWarp")),
|
|
2201
|
-
mix:
|
|
2215
|
+
mix: $t(n("mix", "meltMix")),
|
|
2202
2216
|
mixBlur: Math.max(0, n("mixBlur", "meltMixBlur")),
|
|
2203
2217
|
gravity: Math.max(0, n("gravity", "meltGravity")),
|
|
2204
2218
|
waviness: Math.max(0, n("waviness", "meltWaviness"))
|
|
2205
2219
|
};
|
|
2206
2220
|
}
|
|
2207
|
-
function
|
|
2221
|
+
function rn(e, t) {
|
|
2208
2222
|
let n = typeof t == "object" && t ? t : {}, r = (t, r, i) => {
|
|
2209
2223
|
let a = n[t];
|
|
2210
|
-
return
|
|
2211
|
-
}, 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));
|
|
2212
2226
|
return {
|
|
2213
2227
|
blur: Math.max(0, r("blur", "dissolveBlur", J.blur)),
|
|
2214
2228
|
warp: Math.max(0, r("warp", "dissolveWarp", J.warp)),
|
|
2215
2229
|
pull: Math.max(0, r("pull", "dissolvePull", J.pull)),
|
|
2216
2230
|
range: Math.max(1, r("range", "dissolveRange", J.range)),
|
|
2217
2231
|
zone: Math.max(1, r("zone", "dissolveZone", J.zone)),
|
|
2218
|
-
mix:
|
|
2232
|
+
mix: $t(r("mix", "dissolveMix", J.mix)),
|
|
2219
2233
|
gravity: Math.max(0, r("gravity", "dissolveGravity", J.gravity)),
|
|
2220
|
-
taper:
|
|
2234
|
+
taper: $t(r("taper", "dissolveTaper", J.taper)),
|
|
2221
2235
|
warpFreq: Math.max(.2, r("warpFreq", "dissolveWarpFreq", J.warpFreq)),
|
|
2222
2236
|
flowSpeed: Math.max(0, r("flowSpeed", "dissolveFlowSpeed", J.flowSpeed)),
|
|
2223
2237
|
warpStyle: n.warpStyle ?? J.warpStyle,
|
|
@@ -2230,13 +2244,13 @@ function tn(e, t) {
|
|
|
2230
2244
|
seamBlur: Math.max(0, r("seamBlur", "dissolveSeamBlur", J.seamBlur))
|
|
2231
2245
|
};
|
|
2232
2246
|
}
|
|
2233
|
-
function
|
|
2247
|
+
function an(e) {
|
|
2234
2248
|
return e ? e instanceof HTMLImageElement ? e : e.querySelector("img") : null;
|
|
2235
2249
|
}
|
|
2236
|
-
function
|
|
2250
|
+
function on(e) {
|
|
2237
2251
|
return e && (e.currentSrc || e.src) || null;
|
|
2238
2252
|
}
|
|
2239
|
-
function
|
|
2253
|
+
function sn(e) {
|
|
2240
2254
|
return {
|
|
2241
2255
|
maskImage: e.style.getPropertyValue("mask-image"),
|
|
2242
2256
|
maskPriority: e.style.getPropertyPriority("mask-image"),
|
|
@@ -2244,11 +2258,11 @@ function an(e) {
|
|
|
2244
2258
|
webkitMaskPriority: e.style.getPropertyPriority("-webkit-mask-image")
|
|
2245
2259
|
};
|
|
2246
2260
|
}
|
|
2247
|
-
function
|
|
2261
|
+
function cn(e) {
|
|
2248
2262
|
let t = e.image, n = e.previousMask;
|
|
2249
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"));
|
|
2250
2264
|
}
|
|
2251
|
-
function
|
|
2265
|
+
function ln() {
|
|
2252
2266
|
let e = /* @__PURE__ */ new Set(), t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set(), r = 0, i = () => n.forEach((e) => e());
|
|
2253
2267
|
return {
|
|
2254
2268
|
registerMelt(t) {
|
|
@@ -2266,15 +2280,15 @@ function sn() {
|
|
|
2266
2280
|
let n = {
|
|
2267
2281
|
...e,
|
|
2268
2282
|
id: `dissolve-${++r}`,
|
|
2269
|
-
previousMask: e.image ?
|
|
2283
|
+
previousMask: e.image ? sn(e.image) : null
|
|
2270
2284
|
};
|
|
2271
2285
|
return t.add(n), i(), {
|
|
2272
2286
|
update(e) {
|
|
2273
|
-
let t =
|
|
2274
|
-
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();
|
|
2275
2289
|
},
|
|
2276
2290
|
unregister() {
|
|
2277
|
-
|
|
2291
|
+
cn(n), t.delete(n), i();
|
|
2278
2292
|
}
|
|
2279
2293
|
};
|
|
2280
2294
|
},
|
|
@@ -2285,29 +2299,29 @@ function sn() {
|
|
|
2285
2299
|
dissolveEntries: () => [...t]
|
|
2286
2300
|
};
|
|
2287
2301
|
}
|
|
2288
|
-
function
|
|
2289
|
-
let r =
|
|
2290
|
-
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({
|
|
2291
2305
|
el: t,
|
|
2292
2306
|
image: r,
|
|
2293
|
-
opts:
|
|
2307
|
+
opts: rn(t, n)
|
|
2294
2308
|
});
|
|
2295
2309
|
}
|
|
2296
|
-
function
|
|
2310
|
+
function dn({ src: e, options: n = {}, registry: r, children: i, forwardedRef: a, className: o, style: s, ...c }) {
|
|
2297
2311
|
let l = p(null), u = JSON.stringify(n), f = p(!1), m = (e) => {
|
|
2298
2312
|
l.current = e, typeof a == "function" ? a(e) : a && (a.current = e);
|
|
2299
2313
|
};
|
|
2300
2314
|
return d(() => {
|
|
2301
|
-
let t = l.current, i = t?.firstElementChild, a =
|
|
2315
|
+
let t = l.current, i = t?.firstElementChild, a = an(i), o = e ?? on(a);
|
|
2302
2316
|
if (!t || !i || !a || !o) {
|
|
2303
|
-
|
|
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."));
|
|
2304
2318
|
return;
|
|
2305
2319
|
}
|
|
2306
2320
|
return r.registerMelt({
|
|
2307
2321
|
el: t,
|
|
2308
2322
|
target: a,
|
|
2309
2323
|
src: o,
|
|
2310
|
-
opts:
|
|
2324
|
+
opts: nn(t, n)
|
|
2311
2325
|
});
|
|
2312
2326
|
}, [
|
|
2313
2327
|
u,
|
|
@@ -2321,7 +2335,7 @@ function ln({ src: e, options: n = {}, registry: r, children: i, forwardedRef: a
|
|
|
2321
2335
|
children: i
|
|
2322
2336
|
});
|
|
2323
2337
|
}
|
|
2324
|
-
var
|
|
2338
|
+
var fn = {
|
|
2325
2339
|
width: 0,
|
|
2326
2340
|
height: 0,
|
|
2327
2341
|
melt: null,
|
|
@@ -2331,28 +2345,28 @@ function Y(e, t = 2) {
|
|
|
2331
2345
|
let n = 10 ** t;
|
|
2332
2346
|
return Math.round(e * n) / n;
|
|
2333
2347
|
}
|
|
2334
|
-
function
|
|
2335
|
-
let t =
|
|
2348
|
+
function pn(e) {
|
|
2349
|
+
let t = $t(e);
|
|
2336
2350
|
return t * t * (3 - 2 * t);
|
|
2337
2351
|
}
|
|
2338
|
-
function
|
|
2352
|
+
function mn(e, t) {
|
|
2339
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);
|
|
2340
2354
|
return Math.hypot(n, r);
|
|
2341
2355
|
}
|
|
2342
|
-
function
|
|
2356
|
+
function hn(e, t) {
|
|
2343
2357
|
return {
|
|
2344
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,
|
|
2345
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
|
|
2346
2360
|
};
|
|
2347
2361
|
}
|
|
2348
|
-
function
|
|
2362
|
+
function gn(e, t, n) {
|
|
2349
2363
|
let r = e.ownerDocument.defaultView?.getComputedStyle(e).borderTopLeftRadius ?? "";
|
|
2350
2364
|
return Math.max(0, Math.min(Number.parseFloat(r) || 0, t / 2, n / 2));
|
|
2351
2365
|
}
|
|
2352
|
-
function
|
|
2366
|
+
function _n(e) {
|
|
2353
2367
|
return e.getBoundingClientRect();
|
|
2354
2368
|
}
|
|
2355
|
-
function
|
|
2369
|
+
function vn(e, t) {
|
|
2356
2370
|
let n = e.getBoundingClientRect();
|
|
2357
2371
|
return {
|
|
2358
2372
|
x: n.left - t.left,
|
|
@@ -2361,21 +2375,21 @@ function gn(e, t) {
|
|
|
2361
2375
|
h: n.height
|
|
2362
2376
|
};
|
|
2363
2377
|
}
|
|
2364
|
-
function
|
|
2365
|
-
let n =
|
|
2378
|
+
function yn(e, t) {
|
|
2379
|
+
let n = vn(e, t);
|
|
2366
2380
|
return {
|
|
2367
2381
|
...n,
|
|
2368
|
-
r:
|
|
2382
|
+
r: gn(e, n.w, n.h)
|
|
2369
2383
|
};
|
|
2370
2384
|
}
|
|
2371
|
-
function
|
|
2385
|
+
function bn(e) {
|
|
2372
2386
|
return `${Y(e.x)}:${Y(e.y)}:${Y(e.w)}:${Y(e.h)}`;
|
|
2373
2387
|
}
|
|
2374
|
-
function
|
|
2375
|
-
let r = Math.max(1, e.offsetWidth || e.getBoundingClientRect().width), i = Math.max(1, e.offsetHeight || e.getBoundingClientRect().height), a = t ? Math.max(
|
|
2388
|
+
function xn(e, t, n) {
|
|
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));
|
|
2376
2390
|
return (r + s * 2) * (i + s * 2);
|
|
2377
2391
|
}
|
|
2378
|
-
function
|
|
2392
|
+
function Sn(e) {
|
|
2379
2393
|
let t = e[0]?.opts;
|
|
2380
2394
|
return t ? e.slice(1).reduce((e, t) => ({
|
|
2381
2395
|
...e,
|
|
@@ -2386,25 +2400,25 @@ function bn(e) {
|
|
|
2386
2400
|
seamBlur: Math.max(e.seamBlur, t.opts.seamBlur)
|
|
2387
2401
|
}), { ...t }) : null;
|
|
2388
2402
|
}
|
|
2389
|
-
function
|
|
2403
|
+
function Cn(e, t, n, r, i, a, o, s, c) {
|
|
2390
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);
|
|
2391
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)})`;
|
|
2392
2406
|
}
|
|
2393
|
-
function
|
|
2407
|
+
function wn(e, t, n, r, i, a) {
|
|
2394
2408
|
let o = t - e.x, s = n - e.y;
|
|
2395
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;
|
|
2396
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;
|
|
2397
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)`;
|
|
2398
2412
|
}
|
|
2399
|
-
function
|
|
2413
|
+
function Tn(e) {
|
|
2400
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";
|
|
2401
2415
|
let t = Y(1 + 4 * e, 3);
|
|
2402
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)}`;
|
|
2403
2417
|
}
|
|
2404
|
-
function
|
|
2418
|
+
function En(e) {
|
|
2405
2419
|
return e.replace(/[^a-zA-Z0-9_-]/g, "");
|
|
2406
2420
|
}
|
|
2407
|
-
var
|
|
2421
|
+
var Dn = class {
|
|
2408
2422
|
registry;
|
|
2409
2423
|
getGroup;
|
|
2410
2424
|
onState;
|
|
@@ -2436,7 +2450,7 @@ var Tn = class {
|
|
|
2436
2450
|
if (!this.disposed) {
|
|
2437
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;
|
|
2438
2452
|
for (let e of this.registry.entries()) this.setMeltPainted(e, !1);
|
|
2439
|
-
for (let e of this.registry.dissolveEntries())
|
|
2453
|
+
for (let e of this.registry.dissolveEntries()) cn(e);
|
|
2440
2454
|
this.releaseClaim(), this.observed.clear();
|
|
2441
2455
|
}
|
|
2442
2456
|
}
|
|
@@ -2450,7 +2464,7 @@ var Tn = class {
|
|
|
2450
2464
|
let t = /* @__PURE__ */ new Set(), n = (e) => {
|
|
2451
2465
|
e && (t.add(e), this.observed.has(e) || this.resizeObserver?.observe(e));
|
|
2452
2466
|
};
|
|
2453
|
-
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));
|
|
2454
2468
|
for (let e of this.registry.dissolveEntries()) n(e.el), n(e.image);
|
|
2455
2469
|
for (let e of this.observed) t.has(e) || this.resizeObserver?.unobserve(e);
|
|
2456
2470
|
this.observed.clear(), t.forEach((e) => this.observed.add(e)), !this.mutationObserver && typeof MutationObserver < "u" && (this.mutationObserver = new MutationObserver((e) => {
|
|
@@ -2490,8 +2504,8 @@ var Tn = class {
|
|
|
2490
2504
|
}
|
|
2491
2505
|
ensureClaim(e, t, n) {
|
|
2492
2506
|
if (this.claimed) return !0;
|
|
2493
|
-
if (!Ae(
|
|
2494
|
-
if (!this.budgetWarningEmitted
|
|
2507
|
+
if (!Ae(xn(e, t, n))) {
|
|
2508
|
+
if (!this.budgetWarningEmitted) {
|
|
2495
2509
|
this.budgetWarningEmitted = !0;
|
|
2496
2510
|
let e = Oe(), t = e.activeGroups >= e.maxAnimatedGroups ? "the active-group limit is reached" : "the filter-area limit is exceeded";
|
|
2497
2511
|
console.warn(`LiquidGroup: the Melt/dissolve image filter budget is insufficient (${t}); degrading to crisp imagery for this group.`);
|
|
@@ -2504,7 +2518,7 @@ var Tn = class {
|
|
|
2504
2518
|
if (this.raf = 0, this.disposed) return;
|
|
2505
2519
|
let t = this.registry.entries(), n = this.registry.dissolveEntries();
|
|
2506
2520
|
if (t.length === 0 && n.length === 0) {
|
|
2507
|
-
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();
|
|
2508
2522
|
return;
|
|
2509
2523
|
}
|
|
2510
2524
|
let r = this.getGroup();
|
|
@@ -2514,23 +2528,23 @@ var Tn = class {
|
|
|
2514
2528
|
}
|
|
2515
2529
|
let i = this.lastNow ? Math.min(.25, Math.max(1 / 240, (e - this.lastNow) / 1e3)) : 1 / 60;
|
|
2516
2530
|
this.lastNow = e;
|
|
2517
|
-
let a =
|
|
2518
|
-
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));
|
|
2519
2533
|
let s = t.slice(0, 2), c = s.map((e) => {
|
|
2520
|
-
let t = o.get(e.el) ??
|
|
2534
|
+
let t = o.get(e.el) ?? vn(e.el, a), n = on(an(e.target));
|
|
2521
2535
|
return n && (e.src = n), {
|
|
2522
2536
|
...t,
|
|
2523
|
-
r:
|
|
2537
|
+
r: gn(e.target, t.w, t.h)
|
|
2524
2538
|
};
|
|
2525
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}` : "";
|
|
2526
2540
|
d !== this.meltPairKey && (this.meltPairKey = d, this.meltProximity = 0);
|
|
2527
|
-
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;
|
|
2528
2542
|
this.meltProximity += (f - this.meltProximity) * (1 - Math.exp(-14 * i)), Math.abs(this.meltProximity - f) < .004 && (this.meltProximity = f);
|
|
2529
|
-
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);
|
|
2530
2544
|
if (g && !this.ensureClaim(r, u, _)) {
|
|
2531
2545
|
for (let e of t) this.setMeltPainted(e, !1);
|
|
2532
|
-
for (let e of n)
|
|
2533
|
-
this.onState(
|
|
2546
|
+
for (let e of n) cn(e);
|
|
2547
|
+
this.onState(fn), this.lastStateKey = "", this.awake = !1, this.lastNow = 0;
|
|
2534
2548
|
return;
|
|
2535
2549
|
}
|
|
2536
2550
|
if (m) for (let [e, n] of t.entries()) this.setMeltPainted(n, e < 2);
|
|
@@ -2547,14 +2561,14 @@ var Tn = class {
|
|
|
2547
2561
|
srcA: s[0].src,
|
|
2548
2562
|
srcB: s[1].src,
|
|
2549
2563
|
opts: s[0].opts,
|
|
2550
|
-
prox:
|
|
2564
|
+
prox: $t(this.meltProximity)
|
|
2551
2565
|
} : null,
|
|
2552
2566
|
dissolves: p.visuals
|
|
2553
2567
|
}, y = this.renderStateKey(v), b = y !== this.lastStateKey;
|
|
2554
|
-
b && (this.lastStateKey = y, this.onState(v), this.lastActivity = e), b || p.pending || e - this.lastActivity <
|
|
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);
|
|
2555
2569
|
};
|
|
2556
2570
|
renderStateKey(e) {
|
|
2557
|
-
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(";");
|
|
2558
2572
|
return `${e.width}x${e.height}|${t}|${n}`;
|
|
2559
2573
|
}
|
|
2560
2574
|
computeDissolves(e, t, n, r) {
|
|
@@ -2562,7 +2576,7 @@ var Tn = class {
|
|
|
2562
2576
|
for (let s of e) {
|
|
2563
2577
|
let e = t.get(s.el), c = s.image;
|
|
2564
2578
|
if (!e || !c) {
|
|
2565
|
-
s.image &&
|
|
2579
|
+
s.image && cn(s);
|
|
2566
2580
|
continue;
|
|
2567
2581
|
}
|
|
2568
2582
|
let l = this.motions.get(s.id) ?? {
|
|
@@ -2578,7 +2592,7 @@ var Tn = class {
|
|
|
2578
2592
|
let u = Infinity, d = null, f = null;
|
|
2579
2593
|
for (let [t, n] of o) {
|
|
2580
2594
|
if (t === s.el) continue;
|
|
2581
|
-
let r =
|
|
2595
|
+
let r = mn(e, n);
|
|
2582
2596
|
r < u && (u = r, d = n, f = t);
|
|
2583
2597
|
}
|
|
2584
2598
|
let p = 0, m = 0;
|
|
@@ -2588,11 +2602,11 @@ var Tn = class {
|
|
|
2588
2602
|
}
|
|
2589
2603
|
let h = 0;
|
|
2590
2604
|
if (d && u < s.opts.range && s.opts.active) {
|
|
2591
|
-
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));
|
|
2592
2606
|
h = e ** 1.25 * s.opts.strength * (1 - t);
|
|
2593
2607
|
}
|
|
2594
|
-
if (h >= l.fade) l.fade += (h - l.fade) * Math.min(1, r *
|
|
2595
|
-
else if (h > .02) l.fade += (h - l.fade) * Math.min(1, r *
|
|
2608
|
+
if (h >= l.fade) l.fade += (h - l.fade) * Math.min(1, r * Xt), l.release = null;
|
|
2609
|
+
else if (h > .02) l.fade += (h - l.fade) * Math.min(1, r * Zt), l.release = null;
|
|
2596
2610
|
else if (l.fade > .001 || l.release) {
|
|
2597
2611
|
l.release ||= {
|
|
2598
2612
|
from: l.fade,
|
|
@@ -2602,26 +2616,26 @@ var Tn = class {
|
|
|
2602
2616
|
l.fade = l.release.from * (1 - t) ** 2;
|
|
2603
2617
|
} else l.fade = 0;
|
|
2604
2618
|
if (l.fade <= .001) {
|
|
2605
|
-
l.fade = 0,
|
|
2619
|
+
l.fade = 0, cn(s);
|
|
2606
2620
|
continue;
|
|
2607
2621
|
}
|
|
2608
2622
|
let g = d ?? l.contact;
|
|
2609
2623
|
if (!g) continue;
|
|
2610
|
-
let _ =
|
|
2624
|
+
let _ = hn(e, g);
|
|
2611
2625
|
l.contact = { ...g };
|
|
2612
|
-
let v =
|
|
2613
|
-
l.opacity = l.release ? (1 - y) ** 2 : l.opacity + (1 - l.opacity) * Math.min(1, r *
|
|
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;
|
|
2627
|
+
l.opacity = l.release ? (1 - y) ** 2 : l.opacity + (1 - l.opacity) * Math.min(1, r * Xt);
|
|
2614
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;
|
|
2615
2629
|
l.previous = {
|
|
2616
2630
|
x: e.x,
|
|
2617
2631
|
y: e.y
|
|
2618
2632
|
}, l.phase += Math.min(r, 1 / 24) * s.opts.flowSpeed * .12 * Math.min(1, S / 40);
|
|
2619
|
-
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 =
|
|
2620
|
-
O ? (c.style.setProperty("mask-image", O), c.style.setProperty("-webkit-mask-image", O)) :
|
|
2621
|
-
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 = {
|
|
2622
2636
|
id: s.id,
|
|
2623
|
-
src:
|
|
2624
|
-
neighborSrc: f ?
|
|
2637
|
+
src: on(c) ?? c.src,
|
|
2638
|
+
neighborSrc: f ? on(an(f)) : null,
|
|
2625
2639
|
image: E,
|
|
2626
2640
|
cx: _.x,
|
|
2627
2641
|
cy: _.y,
|
|
@@ -2629,7 +2643,7 @@ var Tn = class {
|
|
|
2629
2643
|
opacity: l.opacity,
|
|
2630
2644
|
phase: l.phase,
|
|
2631
2645
|
structure: v,
|
|
2632
|
-
angle:
|
|
2646
|
+
angle: k,
|
|
2633
2647
|
gravityX: C,
|
|
2634
2648
|
gravityY: w,
|
|
2635
2649
|
elongation: T,
|
|
@@ -2638,7 +2652,7 @@ var Tn = class {
|
|
|
2638
2652
|
options: s.opts,
|
|
2639
2653
|
mask: O
|
|
2640
2654
|
};
|
|
2641
|
-
i.push(
|
|
2655
|
+
i.push(A), a = a || !!l.release || Math.abs(h - l.fade) > .004 || l.previous === null;
|
|
2642
2656
|
}
|
|
2643
2657
|
return {
|
|
2644
2658
|
visuals: i,
|
|
@@ -2646,8 +2660,8 @@ var Tn = class {
|
|
|
2646
2660
|
};
|
|
2647
2661
|
}
|
|
2648
2662
|
};
|
|
2649
|
-
function
|
|
2650
|
-
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 = {
|
|
2651
2665
|
x: r.x + r.w / 2,
|
|
2652
2666
|
y: r.y + r.h / 2
|
|
2653
2667
|
}, C = {
|
|
@@ -2656,7 +2670,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2656
2670
|
}, w = Math.hypot(r.w, r.h) / 2 * h * d, T = Math.hypot(i.w, i.h) / 2 * h * d, E = {
|
|
2657
2671
|
x: (S.x + C.x) / 2,
|
|
2658
2672
|
y: (S.y + C.y) / 2
|
|
2659
|
-
}, 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})`;
|
|
2660
2674
|
return /* @__PURE__ */ n("svg", {
|
|
2661
2675
|
"aria-hidden": "true",
|
|
2662
2676
|
focusable: "false",
|
|
@@ -2706,7 +2720,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2706
2720
|
children: [
|
|
2707
2721
|
/* @__PURE__ */ t("feGaussianBlur", {
|
|
2708
2722
|
in: "SourceGraphic",
|
|
2709
|
-
stdDeviation:
|
|
2723
|
+
stdDeviation: ne,
|
|
2710
2724
|
result: "b"
|
|
2711
2725
|
}),
|
|
2712
2726
|
/* @__PURE__ */ t("feColorMatrix", {
|
|
@@ -2717,7 +2731,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2717
2731
|
}),
|
|
2718
2732
|
/* @__PURE__ */ t("feGaussianBlur", {
|
|
2719
2733
|
in: "SourceGraphic",
|
|
2720
|
-
stdDeviation:
|
|
2734
|
+
stdDeviation: ie,
|
|
2721
2735
|
result: "bc"
|
|
2722
2736
|
}),
|
|
2723
2737
|
/* @__PURE__ */ t("feComposite", {
|
|
@@ -2736,7 +2750,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2736
2750
|
/* @__PURE__ */ t("feDisplacementMap", {
|
|
2737
2751
|
in: "mix",
|
|
2738
2752
|
in2: "wn",
|
|
2739
|
-
scale:
|
|
2753
|
+
scale: re,
|
|
2740
2754
|
xChannelSelector: "R",
|
|
2741
2755
|
yChannelSelector: "G",
|
|
2742
2756
|
result: "warped"
|
|
@@ -2773,7 +2787,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2773
2787
|
height: "220%",
|
|
2774
2788
|
children: /* @__PURE__ */ t("feGaussianBlur", { stdDeviation: g })
|
|
2775
2789
|
}),
|
|
2776
|
-
|
|
2790
|
+
te > .01 ? /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ n("filter", {
|
|
2777
2791
|
id: `${f}-marble`,
|
|
2778
2792
|
x: "-25%",
|
|
2779
2793
|
y: "-25%",
|
|
@@ -2796,7 +2810,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2796
2810
|
/* @__PURE__ */ t("feDisplacementMap", {
|
|
2797
2811
|
in: "c",
|
|
2798
2812
|
in2: "n1",
|
|
2799
|
-
scale:
|
|
2813
|
+
scale: te * 90,
|
|
2800
2814
|
xChannelSelector: "R",
|
|
2801
2815
|
yChannelSelector: "G",
|
|
2802
2816
|
result: "d1"
|
|
@@ -2811,7 +2825,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2811
2825
|
/* @__PURE__ */ t("feDisplacementMap", {
|
|
2812
2826
|
in: "d1",
|
|
2813
2827
|
in2: "n2",
|
|
2814
|
-
scale:
|
|
2828
|
+
scale: te * 50,
|
|
2815
2829
|
xChannelSelector: "R",
|
|
2816
2830
|
yChannelSelector: "G",
|
|
2817
2831
|
result: "d2"
|
|
@@ -2835,7 +2849,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2835
2849
|
}),
|
|
2836
2850
|
/* @__PURE__ */ t("feGaussianBlur", {
|
|
2837
2851
|
in: "SourceGraphic",
|
|
2838
|
-
stdDeviation:
|
|
2852
|
+
stdDeviation: ne,
|
|
2839
2853
|
result: "mb"
|
|
2840
2854
|
}),
|
|
2841
2855
|
/* @__PURE__ */ t("feColorMatrix", {
|
|
@@ -2854,7 +2868,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2854
2868
|
/* @__PURE__ */ t("feDisplacementMap", {
|
|
2855
2869
|
in: "mg",
|
|
2856
2870
|
in2: "mwn",
|
|
2857
|
-
scale:
|
|
2871
|
+
scale: re,
|
|
2858
2872
|
xChannelSelector: "R",
|
|
2859
2873
|
yChannelSelector: "G",
|
|
2860
2874
|
result: "mshape"
|
|
@@ -2877,9 +2891,9 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2877
2891
|
children: /* @__PURE__ */ t("ellipse", {
|
|
2878
2892
|
cx: E.x,
|
|
2879
2893
|
cy: E.y,
|
|
2880
|
-
rx: (w + T) / 2 +
|
|
2894
|
+
rx: (w + T) / 2 + N,
|
|
2881
2895
|
ry: (w + T) / 2 * b,
|
|
2882
|
-
transform: `rotate(${
|
|
2896
|
+
transform: `rotate(${P}, ${E.x}, ${E.y})`,
|
|
2883
2897
|
fill: "#fff"
|
|
2884
2898
|
})
|
|
2885
2899
|
})
|
|
@@ -2890,7 +2904,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2890
2904
|
y: "-40%",
|
|
2891
2905
|
width: "180%",
|
|
2892
2906
|
height: "180%",
|
|
2893
|
-
children: /* @__PURE__ */ t("feGaussianBlur", { stdDeviation:
|
|
2907
|
+
children: /* @__PURE__ */ t("feGaussianBlur", { stdDeviation: ae })
|
|
2894
2908
|
}),
|
|
2895
2909
|
/* @__PURE__ */ n("mask", {
|
|
2896
2910
|
id: `${f}-ma`,
|
|
@@ -2902,7 +2916,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2902
2916
|
children: [/* @__PURE__ */ t("g", {
|
|
2903
2917
|
filter: `url(#${f}-edge)`,
|
|
2904
2918
|
children: /* @__PURE__ */ t("g", {
|
|
2905
|
-
transform:
|
|
2919
|
+
transform: oe,
|
|
2906
2920
|
children: /* @__PURE__ */ t("rect", {
|
|
2907
2921
|
width: r.w,
|
|
2908
2922
|
height: r.h,
|
|
@@ -2915,9 +2929,9 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2915
2929
|
children: /* @__PURE__ */ t("ellipse", {
|
|
2916
2930
|
cx: E.x,
|
|
2917
2931
|
cy: E.y,
|
|
2918
|
-
rx: T +
|
|
2932
|
+
rx: T + N,
|
|
2919
2933
|
ry: T,
|
|
2920
|
-
transform: `rotate(${
|
|
2934
|
+
transform: `rotate(${P}, ${E.x}, ${E.y})`,
|
|
2921
2935
|
fill: "#000"
|
|
2922
2936
|
})
|
|
2923
2937
|
})]
|
|
@@ -2932,7 +2946,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2932
2946
|
children: [/* @__PURE__ */ t("g", {
|
|
2933
2947
|
filter: `url(#${f}-edge)`,
|
|
2934
2948
|
children: /* @__PURE__ */ t("g", {
|
|
2935
|
-
transform:
|
|
2949
|
+
transform: se,
|
|
2936
2950
|
children: /* @__PURE__ */ t("rect", {
|
|
2937
2951
|
width: i.w,
|
|
2938
2952
|
height: i.h,
|
|
@@ -2945,9 +2959,9 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2945
2959
|
children: /* @__PURE__ */ t("ellipse", {
|
|
2946
2960
|
cx: E.x,
|
|
2947
2961
|
cy: E.y,
|
|
2948
|
-
rx: w +
|
|
2962
|
+
rx: w + N,
|
|
2949
2963
|
ry: w,
|
|
2950
|
-
transform: `rotate(${
|
|
2964
|
+
transform: `rotate(${P}, ${E.x}, ${E.y})`,
|
|
2951
2965
|
fill: "#000"
|
|
2952
2966
|
})
|
|
2953
2967
|
})]
|
|
@@ -2956,7 +2970,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2956
2970
|
/* @__PURE__ */ n("g", {
|
|
2957
2971
|
filter: `url(#${f}-goo)`,
|
|
2958
2972
|
children: [/* @__PURE__ */ t("g", {
|
|
2959
|
-
transform:
|
|
2973
|
+
transform: oe,
|
|
2960
2974
|
children: /* @__PURE__ */ t("rect", {
|
|
2961
2975
|
width: r.w,
|
|
2962
2976
|
height: r.h,
|
|
@@ -2964,7 +2978,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2964
2978
|
fill: `url(#${f}-pa)`
|
|
2965
2979
|
})
|
|
2966
2980
|
}), /* @__PURE__ */ t("g", {
|
|
2967
|
-
transform:
|
|
2981
|
+
transform: se,
|
|
2968
2982
|
children: /* @__PURE__ */ t("rect", {
|
|
2969
2983
|
width: i.w,
|
|
2970
2984
|
height: i.h,
|
|
@@ -2973,12 +2987,12 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2973
2987
|
})
|
|
2974
2988
|
})]
|
|
2975
2989
|
}),
|
|
2976
|
-
|
|
2990
|
+
te > .01 ? /* @__PURE__ */ t("g", {
|
|
2977
2991
|
mask: `url(#${f}-marblemask)`,
|
|
2978
2992
|
children: /* @__PURE__ */ n("g", {
|
|
2979
2993
|
filter: `url(#${f}-marble)`,
|
|
2980
2994
|
children: [/* @__PURE__ */ t("g", {
|
|
2981
|
-
transform:
|
|
2995
|
+
transform: oe,
|
|
2982
2996
|
children: /* @__PURE__ */ t("rect", {
|
|
2983
2997
|
width: r.w,
|
|
2984
2998
|
height: r.h,
|
|
@@ -2986,7 +3000,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2986
3000
|
fill: `url(#${f}-pa)`
|
|
2987
3001
|
})
|
|
2988
3002
|
}), /* @__PURE__ */ t("g", {
|
|
2989
|
-
transform:
|
|
3003
|
+
transform: se,
|
|
2990
3004
|
children: /* @__PURE__ */ t("rect", {
|
|
2991
3005
|
width: i.w,
|
|
2992
3006
|
height: i.h,
|
|
@@ -2999,7 +3013,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2999
3013
|
/* @__PURE__ */ t("g", {
|
|
3000
3014
|
mask: `url(#${f}-ma)`,
|
|
3001
3015
|
children: /* @__PURE__ */ t("g", {
|
|
3002
|
-
transform:
|
|
3016
|
+
transform: oe,
|
|
3003
3017
|
children: /* @__PURE__ */ t("rect", {
|
|
3004
3018
|
width: r.w,
|
|
3005
3019
|
height: r.h,
|
|
@@ -3011,7 +3025,7 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
3011
3025
|
/* @__PURE__ */ t("g", {
|
|
3012
3026
|
mask: `url(#${f}-mb)`,
|
|
3013
3027
|
children: /* @__PURE__ */ t("g", {
|
|
3014
|
-
transform:
|
|
3028
|
+
transform: se,
|
|
3015
3029
|
children: /* @__PURE__ */ t("rect", {
|
|
3016
3030
|
width: i.w,
|
|
3017
3031
|
height: i.h,
|
|
@@ -3023,10 +3037,10 @@ function En({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
3023
3037
|
]
|
|
3024
3038
|
});
|
|
3025
3039
|
}
|
|
3026
|
-
function
|
|
3027
|
-
let i = `lgd-${
|
|
3040
|
+
function kn({ visuals: r }) {
|
|
3041
|
+
let i = `lgd-${En(u())}`;
|
|
3028
3042
|
return /* @__PURE__ */ t(e, { children: r.map((e) => {
|
|
3029
|
-
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);
|
|
3030
3044
|
return /* @__PURE__ */ n("g", {
|
|
3031
3045
|
"data-liquid-gooey-dissolve": "",
|
|
3032
3046
|
children: [
|
|
@@ -3158,7 +3172,7 @@ function Dn({ visuals: r }) {
|
|
|
3158
3172
|
/* @__PURE__ */ t("feColorMatrix", {
|
|
3159
3173
|
in: "erosion-noise",
|
|
3160
3174
|
type: "matrix",
|
|
3161
|
-
values:
|
|
3175
|
+
values: Tn(c),
|
|
3162
3176
|
result: "erosion"
|
|
3163
3177
|
}),
|
|
3164
3178
|
/* @__PURE__ */ t("feComposite", {
|
|
@@ -3230,10 +3244,10 @@ function Dn({ visuals: r }) {
|
|
|
3230
3244
|
}, e.id);
|
|
3231
3245
|
}) });
|
|
3232
3246
|
}
|
|
3233
|
-
function
|
|
3234
|
-
let [i, a] = m(
|
|
3247
|
+
function An({ registry: e, getGroup: r }) {
|
|
3248
|
+
let [i, a] = m(fn);
|
|
3235
3249
|
return d(() => {
|
|
3236
|
-
let t = new
|
|
3250
|
+
let t = new Dn({
|
|
3237
3251
|
registry: e,
|
|
3238
3252
|
getGroup: r,
|
|
3239
3253
|
onState: a
|
|
@@ -3255,42 +3269,42 @@ function On({ registry: e, getGroup: r }) {
|
|
|
3255
3269
|
overflow: "visible",
|
|
3256
3270
|
pointerEvents: "none"
|
|
3257
3271
|
},
|
|
3258
|
-
children: [i.melt ? /* @__PURE__ */ t(
|
|
3272
|
+
children: [i.melt ? /* @__PURE__ */ t(On, {
|
|
3259
3273
|
...i.melt,
|
|
3260
3274
|
width: i.width,
|
|
3261
3275
|
height: i.height
|
|
3262
|
-
}) : null, i.dissolves.length > 0 ? /* @__PURE__ */ t(
|
|
3276
|
+
}) : null, i.dissolves.length > 0 ? /* @__PURE__ */ t(kn, { visuals: i.dissolves }) : null]
|
|
3263
3277
|
});
|
|
3264
3278
|
}
|
|
3265
3279
|
//#endregion
|
|
3266
3280
|
//#region src/LiquidGroup.tsx
|
|
3267
|
-
var
|
|
3268
|
-
function
|
|
3269
|
-
let e = c(
|
|
3281
|
+
var jn = i(null);
|
|
3282
|
+
function Mn() {
|
|
3283
|
+
let e = c(jn);
|
|
3270
3284
|
if (!e) throw Error("<LiquidGroup.Item> must be rendered inside <LiquidGroup>.");
|
|
3271
3285
|
return e;
|
|
3272
3286
|
}
|
|
3273
|
-
function
|
|
3287
|
+
function Nn(e) {
|
|
3274
3288
|
return e.replace(/[^a-zA-Z0-9_-]/g, "");
|
|
3275
3289
|
}
|
|
3276
|
-
function
|
|
3290
|
+
function Pn(e, t) {
|
|
3277
3291
|
return Number.isFinite(e) ? e : t;
|
|
3278
3292
|
}
|
|
3279
|
-
function
|
|
3293
|
+
function Fn(e, t) {
|
|
3280
3294
|
if (!e) return e;
|
|
3281
3295
|
let n = /^var\((--[\w-]+)\)$/.exec(e.trim());
|
|
3282
3296
|
if (!n || !t) return e;
|
|
3283
3297
|
let r = t.ownerDocument.defaultView;
|
|
3284
3298
|
return r && r.getComputedStyle(t).getPropertyValue(n[1] ?? "").trim() || e;
|
|
3285
3299
|
}
|
|
3286
|
-
function
|
|
3287
|
-
let r =
|
|
3300
|
+
function In(e, t, n) {
|
|
3301
|
+
let r = Fn(e, t), i = Number.parseFloat(r ?? "");
|
|
3288
3302
|
return Number.isFinite(i) ? i : n;
|
|
3289
3303
|
}
|
|
3290
|
-
function
|
|
3304
|
+
function Ln(...e) {
|
|
3291
3305
|
return e.filter(Boolean).join(" ") || void 0;
|
|
3292
3306
|
}
|
|
3293
|
-
function
|
|
3307
|
+
function Rn(e) {
|
|
3294
3308
|
let t = { ...e };
|
|
3295
3309
|
for (let e of [
|
|
3296
3310
|
"children",
|
|
@@ -3309,147 +3323,148 @@ function In(e) {
|
|
|
3309
3323
|
]) delete t[e];
|
|
3310
3324
|
return t;
|
|
3311
3325
|
}
|
|
3312
|
-
function
|
|
3326
|
+
function zn() {
|
|
3313
3327
|
return typeof window > "u" || typeof window.matchMedia != "function" ? null : window.matchMedia("(prefers-reduced-motion: reduce)");
|
|
3314
3328
|
}
|
|
3315
|
-
function
|
|
3316
|
-
let [e, t] = m(() =>
|
|
3329
|
+
function Bn() {
|
|
3330
|
+
let [e, t] = m(() => zn()?.matches ?? !1);
|
|
3317
3331
|
return l(() => {
|
|
3318
|
-
let e =
|
|
3332
|
+
let e = zn();
|
|
3319
3333
|
if (!e) return;
|
|
3320
3334
|
let n = (e) => t(e.matches);
|
|
3321
3335
|
return t(e.matches), e.addEventListener("change", n), () => e.removeEventListener("change", n);
|
|
3322
3336
|
}, []), e;
|
|
3323
3337
|
}
|
|
3324
|
-
function
|
|
3338
|
+
function Vn(e) {
|
|
3325
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);
|
|
3326
3340
|
}
|
|
3327
|
-
var
|
|
3328
|
-
let
|
|
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) {
|
|
3342
|
+
let w = p(null), [T, E] = m(null), [D, O] = m({
|
|
3329
3343
|
w: 0,
|
|
3330
3344
|
h: 0
|
|
3331
|
-
}), [
|
|
3332
|
-
waviness:
|
|
3333
|
-
wavinessFreq:
|
|
3334
|
-
}), [
|
|
3335
|
-
|
|
3336
|
-
let
|
|
3337
|
-
|
|
3338
|
-
let
|
|
3339
|
-
|
|
3340
|
-
}, [
|
|
3345
|
+
}), [k, A] = m({
|
|
3346
|
+
waviness: Pe.waviness,
|
|
3347
|
+
wavinessFreq: Pe.wavinessFreq
|
|
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) => {
|
|
3353
|
+
w.current = e, typeof C == "function" ? C(e) : C && (C.current = e);
|
|
3354
|
+
}, [C]), R = s((e) => E(e), []);
|
|
3341
3355
|
d(() => {
|
|
3342
|
-
let e =
|
|
3356
|
+
let e = w.current;
|
|
3343
3357
|
if (!e) return;
|
|
3344
3358
|
let t = {
|
|
3345
|
-
waviness: Math.max(0, h === void 0 ?
|
|
3346
|
-
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))
|
|
3347
3361
|
};
|
|
3348
|
-
|
|
3362
|
+
A((e) => e.waviness === t.waviness && e.wavinessFreq === t.wavinessFreq ? e : t);
|
|
3349
3363
|
}, [h, g]);
|
|
3350
|
-
let
|
|
3351
|
-
getGroup: () =>
|
|
3364
|
+
let B = f(() => new Ut({
|
|
3365
|
+
getGroup: () => w.current,
|
|
3352
3366
|
getFilterArea: () => {
|
|
3353
|
-
let e =
|
|
3354
|
-
return e ? (e.offsetWidth + (
|
|
3367
|
+
let e = w.current;
|
|
3368
|
+
return e ? (e.offsetWidth + (me.current + M.current) * 2) * (e.offsetHeight + (me.current + M.current) * 2) : 0;
|
|
3355
3369
|
},
|
|
3356
|
-
onModeChange:
|
|
3370
|
+
onModeChange: ne,
|
|
3357
3371
|
onFeaturePaddingChange: (e) => {
|
|
3358
|
-
|
|
3372
|
+
M.current = e, ee((t) => Math.abs(t - e) < .5 ? t : e);
|
|
3359
3373
|
},
|
|
3360
|
-
follow:
|
|
3361
|
-
}), [
|
|
3374
|
+
follow: v === "follow"
|
|
3375
|
+
}), [v]), V = f(() => ln(), []);
|
|
3362
3376
|
d(() => {
|
|
3363
|
-
let e =
|
|
3377
|
+
let e = w.current;
|
|
3364
3378
|
if (!e) return;
|
|
3365
3379
|
let t = () => {
|
|
3366
3380
|
let t = {
|
|
3367
3381
|
w: e.offsetWidth,
|
|
3368
3382
|
h: e.offsetHeight
|
|
3369
3383
|
};
|
|
3370
|
-
|
|
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));
|
|
3371
3385
|
};
|
|
3372
3386
|
if (t(), typeof ResizeObserver > "u") return;
|
|
3373
3387
|
let n = new ResizeObserver(t);
|
|
3374
3388
|
return n.observe(e), () => n.disconnect();
|
|
3375
|
-
}, [
|
|
3376
|
-
|
|
3377
|
-
}, [
|
|
3378
|
-
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);
|
|
3379
3393
|
return /* @__PURE__ */ n("div", {
|
|
3380
|
-
...
|
|
3381
|
-
ref:
|
|
3382
|
-
className:
|
|
3383
|
-
"data-liquid-filter-area": Math.round((
|
|
3394
|
+
...S,
|
|
3395
|
+
ref: L,
|
|
3396
|
+
className: H,
|
|
3397
|
+
"data-liquid-filter-area": Math.round((D.w + I * 2) * (D.h + I * 2)),
|
|
3384
3398
|
"data-liquid-filter-budget": we,
|
|
3385
|
-
"data-liquid-feature-padding": Math.round(
|
|
3386
|
-
"data-liquid-motion":
|
|
3387
|
-
|
|
3399
|
+
"data-liquid-feature-padding": Math.round(j * 10) / 10,
|
|
3400
|
+
"data-liquid-motion": te,
|
|
3401
|
+
"data-liquid-waviness": Math.round(ce * 100) / 100,
|
|
3402
|
+
style: b,
|
|
3388
3403
|
children: [
|
|
3389
3404
|
/* @__PURE__ */ n("svg", {
|
|
3390
3405
|
"aria-hidden": "true",
|
|
3391
3406
|
className: "game-ui-liquid-silhouette",
|
|
3392
3407
|
"data-liquid-gooey-silhouette": "",
|
|
3393
3408
|
focusable: "false",
|
|
3394
|
-
viewBox: `0 0 ${
|
|
3409
|
+
viewBox: `0 0 ${_e} ${ve}`,
|
|
3395
3410
|
children: [/* @__PURE__ */ t("defs", { children: /* @__PURE__ */ t("filter", {
|
|
3396
3411
|
colorInterpolationFilters: "sRGB",
|
|
3397
3412
|
filterUnits: "userSpaceOnUse",
|
|
3398
|
-
height:
|
|
3399
|
-
id:
|
|
3400
|
-
width:
|
|
3401
|
-
x: -
|
|
3402
|
-
y: -
|
|
3403
|
-
children: /* @__PURE__ */ t(
|
|
3404
|
-
blur:
|
|
3405
|
-
contrast:
|
|
3413
|
+
height: ve + I * 2,
|
|
3414
|
+
id: ge,
|
|
3415
|
+
width: _e + I * 2,
|
|
3416
|
+
x: -I,
|
|
3417
|
+
y: -I,
|
|
3418
|
+
children: /* @__PURE__ */ t(Re, {
|
|
3419
|
+
blur: re,
|
|
3420
|
+
contrast: ie,
|
|
3406
3421
|
shadows: de,
|
|
3407
|
-
stroke:
|
|
3408
|
-
waviness:
|
|
3409
|
-
wavinessFreq:
|
|
3422
|
+
stroke: fe,
|
|
3423
|
+
waviness: ce,
|
|
3424
|
+
wavinessFreq: le
|
|
3410
3425
|
})
|
|
3411
3426
|
}) }), /* @__PURE__ */ t("g", {
|
|
3412
|
-
ref:
|
|
3427
|
+
ref: R,
|
|
3413
3428
|
fill: i,
|
|
3414
|
-
filter: `url(#${
|
|
3429
|
+
filter: `url(#${ge})`
|
|
3415
3430
|
})]
|
|
3416
3431
|
}),
|
|
3417
|
-
/* @__PURE__ */ t(
|
|
3418
|
-
registry:
|
|
3419
|
-
getGroup: () =>
|
|
3432
|
+
/* @__PURE__ */ t(An, {
|
|
3433
|
+
registry: V,
|
|
3434
|
+
getGroup: () => w.current
|
|
3420
3435
|
}),
|
|
3421
|
-
/* @__PURE__ */ t(
|
|
3436
|
+
/* @__PURE__ */ t(jn.Provider, {
|
|
3422
3437
|
value: {
|
|
3423
|
-
portal:
|
|
3424
|
-
engine:
|
|
3425
|
-
follow:
|
|
3426
|
-
imageMelt:
|
|
3438
|
+
portal: T,
|
|
3439
|
+
engine: B,
|
|
3440
|
+
follow: v === "follow",
|
|
3441
|
+
imageMelt: V
|
|
3427
3442
|
},
|
|
3428
3443
|
children: /* @__PURE__ */ t("div", {
|
|
3429
3444
|
className: "game-ui-liquid-content",
|
|
3430
|
-
children:
|
|
3445
|
+
children: x
|
|
3431
3446
|
})
|
|
3432
3447
|
})
|
|
3433
3448
|
]
|
|
3434
3449
|
});
|
|
3435
|
-
}),
|
|
3436
|
-
let { portal: D, engine: O, follow:
|
|
3437
|
-
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 = {
|
|
3438
3453
|
...e === void 0 ? {} : { effect: e },
|
|
3439
3454
|
...n === void 0 ? {} : { morph: n },
|
|
3440
3455
|
...b === void 0 ? {} : { bend: b },
|
|
3441
3456
|
...x === void 0 && !t ? {} : { observe: t || x },
|
|
3442
|
-
x:
|
|
3443
|
-
y:
|
|
3444
|
-
scale:
|
|
3457
|
+
x: Pn(o, 0),
|
|
3458
|
+
y: Pn(c, 0),
|
|
3459
|
+
scale: Pn(m, 1)
|
|
3445
3460
|
};
|
|
3446
3461
|
return g !== void 0 && (i.transition = g), _ !== void 0 && (i.delay = _), v !== void 0 && (i.radius = v), i;
|
|
3447
3462
|
}, [
|
|
3448
3463
|
b,
|
|
3449
3464
|
_,
|
|
3450
3465
|
r,
|
|
3451
|
-
|
|
3452
|
-
|
|
3466
|
+
k,
|
|
3467
|
+
ne,
|
|
3453
3468
|
y,
|
|
3454
3469
|
x,
|
|
3455
3470
|
v,
|
|
@@ -3458,66 +3473,66 @@ var Bn = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-su
|
|
|
3458
3473
|
o,
|
|
3459
3474
|
c
|
|
3460
3475
|
]);
|
|
3461
|
-
|
|
3462
|
-
let
|
|
3463
|
-
|
|
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);
|
|
3464
3479
|
}, [E]);
|
|
3465
3480
|
return d(() => {
|
|
3466
|
-
let e =
|
|
3467
|
-
if (!(!D || !e || !t || !
|
|
3468
|
-
id:
|
|
3481
|
+
let e = ee.current, t = M.current;
|
|
3482
|
+
if (!(!D || !e || !t || !N.current)) return O.register({
|
|
3483
|
+
id: j,
|
|
3469
3484
|
host: e,
|
|
3470
3485
|
blob: t,
|
|
3471
|
-
config:
|
|
3486
|
+
config: N.current
|
|
3472
3487
|
});
|
|
3473
3488
|
}, [
|
|
3474
3489
|
O,
|
|
3475
|
-
|
|
3490
|
+
j,
|
|
3476
3491
|
D
|
|
3477
3492
|
]), d(() => {
|
|
3478
|
-
O.update(
|
|
3493
|
+
O.update(j, re);
|
|
3479
3494
|
}, [
|
|
3480
|
-
|
|
3495
|
+
re,
|
|
3481
3496
|
O,
|
|
3482
|
-
|
|
3497
|
+
j
|
|
3483
3498
|
]), d(() => () => {
|
|
3484
|
-
|
|
3485
|
-
}, [
|
|
3499
|
+
P.current?.unregister(), P.current = null;
|
|
3500
|
+
}, [A]), d(() => {
|
|
3486
3501
|
if (r === "move" || a === void 0 || a === !1) {
|
|
3487
|
-
|
|
3502
|
+
P.current?.unregister(), P.current = null;
|
|
3488
3503
|
return;
|
|
3489
3504
|
}
|
|
3490
|
-
let e =
|
|
3505
|
+
let e = ee.current;
|
|
3491
3506
|
if (e) {
|
|
3492
|
-
if (
|
|
3493
|
-
|
|
3507
|
+
if (P.current) {
|
|
3508
|
+
P.current.update(a);
|
|
3494
3509
|
return;
|
|
3495
3510
|
}
|
|
3496
|
-
|
|
3511
|
+
P.current = un(A, e, a);
|
|
3497
3512
|
}
|
|
3498
3513
|
}, [
|
|
3499
|
-
|
|
3514
|
+
te,
|
|
3500
3515
|
r,
|
|
3501
|
-
|
|
3502
|
-
]), l(() => {}, [r,
|
|
3516
|
+
A
|
|
3517
|
+
]), l(() => {}, [r, ne]), d(() => {}, []), /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ t("div", {
|
|
3503
3518
|
...T,
|
|
3504
|
-
ref:
|
|
3505
|
-
className:
|
|
3519
|
+
ref: ie,
|
|
3520
|
+
className: Ln("game-ui-liquid-item", S),
|
|
3506
3521
|
style: C,
|
|
3507
3522
|
children: w
|
|
3508
3523
|
}), D ? h(/* @__PURE__ */ t("path", {
|
|
3509
|
-
ref:
|
|
3524
|
+
ref: M,
|
|
3510
3525
|
d: "",
|
|
3511
3526
|
"data-liquid-gooey-blob": ""
|
|
3512
3527
|
}), D) : null] });
|
|
3513
|
-
}),
|
|
3514
|
-
let { imageMelt: r } =
|
|
3515
|
-
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, {
|
|
3516
3531
|
...e,
|
|
3517
3532
|
ref: n
|
|
3518
3533
|
});
|
|
3519
|
-
let i =
|
|
3520
|
-
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, {
|
|
3521
3536
|
...i,
|
|
3522
3537
|
registry: r,
|
|
3523
3538
|
children: a,
|
|
@@ -3525,10 +3540,10 @@ var Bn = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-su
|
|
|
3525
3540
|
...s === void 0 ? {} : { src: s },
|
|
3526
3541
|
...n === void 0 ? {} : { forwardedRef: n }
|
|
3527
3542
|
});
|
|
3528
|
-
}),
|
|
3543
|
+
}), Gn = Object.assign(Hn, { Item: Wn });
|
|
3529
3544
|
//#endregion
|
|
3530
3545
|
//#region src/GameCallout.tsx
|
|
3531
|
-
function
|
|
3546
|
+
function Kn({ heading: e, children: r, tone: i = "info", className: a, ...o }) {
|
|
3532
3547
|
return /* @__PURE__ */ n("div", {
|
|
3533
3548
|
className: [
|
|
3534
3549
|
"game-ui-callout",
|
|
@@ -3549,7 +3564,7 @@ function Wn({ heading: e, children: r, tone: i = "info", className: a, ...o }) {
|
|
|
3549
3564
|
}
|
|
3550
3565
|
//#endregion
|
|
3551
3566
|
//#region src/GameDialog.tsx
|
|
3552
|
-
function
|
|
3567
|
+
function qn({ children: e, className: r, title: i }) {
|
|
3553
3568
|
let a = u();
|
|
3554
3569
|
return /* @__PURE__ */ n("section", {
|
|
3555
3570
|
"aria-labelledby": a,
|
|
@@ -3567,7 +3582,7 @@ function Gn({ children: e, className: r, title: i }) {
|
|
|
3567
3582
|
}
|
|
3568
3583
|
//#endregion
|
|
3569
3584
|
//#region src/GameHistoryPanel.tsx
|
|
3570
|
-
function
|
|
3585
|
+
function Jn({ entries: e, label: r }) {
|
|
3571
3586
|
return /* @__PURE__ */ t("section", {
|
|
3572
3587
|
"aria-label": r,
|
|
3573
3588
|
className: "game-ui-history",
|
|
@@ -3583,7 +3598,7 @@ function Kn({ entries: e, label: r }) {
|
|
|
3583
3598
|
}
|
|
3584
3599
|
//#endregion
|
|
3585
3600
|
//#region src/GameHudActions.tsx
|
|
3586
|
-
function
|
|
3601
|
+
function Yn({ children: e, className: n, label: r, ...i }) {
|
|
3587
3602
|
return /* @__PURE__ */ t("nav", {
|
|
3588
3603
|
"aria-label": r,
|
|
3589
3604
|
className: ["game-ui-hud-actions", n].filter(Boolean).join(" "),
|
|
@@ -3603,7 +3618,7 @@ function X({ children: e, className: r, title: i, tone: a = "default", ...o }) {
|
|
|
3603
3618
|
children: [i ? /* @__PURE__ */ t("h3", { children: i }) : null, e]
|
|
3604
3619
|
});
|
|
3605
3620
|
}
|
|
3606
|
-
function
|
|
3621
|
+
function Xn({ children: e, className: n, label: r, type: i = "button", ...a }) {
|
|
3607
3622
|
return /* @__PURE__ */ t("button", {
|
|
3608
3623
|
"aria-label": r,
|
|
3609
3624
|
className: ["game-ui-icon-button", n].filter(Boolean).join(" "),
|
|
@@ -3612,7 +3627,7 @@ function Jn({ children: e, className: n, label: r, type: i = "button", ...a }) {
|
|
|
3612
3627
|
children: e
|
|
3613
3628
|
});
|
|
3614
3629
|
}
|
|
3615
|
-
function
|
|
3630
|
+
function Zn({ children: e, label: i }) {
|
|
3616
3631
|
let a = u();
|
|
3617
3632
|
return /* @__PURE__ */ n("span", {
|
|
3618
3633
|
className: "game-ui-tooltip",
|
|
@@ -3623,7 +3638,7 @@ function Yn({ children: e, label: i }) {
|
|
|
3623
3638
|
})]
|
|
3624
3639
|
});
|
|
3625
3640
|
}
|
|
3626
|
-
function
|
|
3641
|
+
function Qn({ activeId: e, id: n, onSelect: r, tabs: i }) {
|
|
3627
3642
|
let a = u(), o = n ?? a;
|
|
3628
3643
|
return /* @__PURE__ */ t("div", {
|
|
3629
3644
|
className: "game-ui-tabs",
|
|
@@ -3663,10 +3678,10 @@ function Xn({ activeId: e, id: n, onSelect: r, tabs: i }) {
|
|
|
3663
3678
|
}, n.id))
|
|
3664
3679
|
});
|
|
3665
3680
|
}
|
|
3666
|
-
function
|
|
3681
|
+
function $n(e, t) {
|
|
3667
3682
|
return e.x === t.x && e.y === t.y && e.width === t.width && e.height === t.height;
|
|
3668
3683
|
}
|
|
3669
|
-
function
|
|
3684
|
+
function er({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
3670
3685
|
let o = p(null), s = p([]), [c, l] = m({
|
|
3671
3686
|
x: 0,
|
|
3672
3687
|
y: 0,
|
|
@@ -3683,7 +3698,7 @@ function Qn({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3683
3698
|
width: r.width,
|
|
3684
3699
|
height: r.height
|
|
3685
3700
|
};
|
|
3686
|
-
l((e) =>
|
|
3701
|
+
l((e) => $n(e, i) ? e : i);
|
|
3687
3702
|
};
|
|
3688
3703
|
if (n(), typeof ResizeObserver > "u") return;
|
|
3689
3704
|
let r = new ResizeObserver(n);
|
|
@@ -3698,7 +3713,7 @@ function Qn({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3698
3713
|
className: "game-ui-segmented",
|
|
3699
3714
|
role: "group",
|
|
3700
3715
|
children: [
|
|
3701
|
-
/* @__PURE__ */ t(
|
|
3716
|
+
/* @__PURE__ */ t(Gn, {
|
|
3702
3717
|
"aria-hidden": "true",
|
|
3703
3718
|
className: "game-ui-segmented-surface",
|
|
3704
3719
|
fill: "var(--game-ui-surface-raised)",
|
|
@@ -3709,7 +3724,7 @@ function Qn({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3709
3724
|
pointerEvents: "none",
|
|
3710
3725
|
position: "absolute"
|
|
3711
3726
|
},
|
|
3712
|
-
children: /* @__PURE__ */ t(
|
|
3727
|
+
children: /* @__PURE__ */ t(Gn.Item, {
|
|
3713
3728
|
style: {
|
|
3714
3729
|
borderRadius: "var(--game-ui-radius-control)",
|
|
3715
3730
|
inset: 0,
|
|
@@ -3718,7 +3733,7 @@ function Qn({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3718
3733
|
children: null
|
|
3719
3734
|
})
|
|
3720
3735
|
}),
|
|
3721
|
-
c.width > 0 && c.height > 0 ? /* @__PURE__ */ t(
|
|
3736
|
+
c.width > 0 && c.height > 0 ? /* @__PURE__ */ t(Gn, {
|
|
3722
3737
|
"aria-hidden": "true",
|
|
3723
3738
|
className: "game-ui-segmented-follow",
|
|
3724
3739
|
fill: "var(--game-ui-secondary)",
|
|
@@ -3729,7 +3744,7 @@ function Qn({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3729
3744
|
pointerEvents: "none",
|
|
3730
3745
|
position: "absolute"
|
|
3731
3746
|
},
|
|
3732
|
-
children: /* @__PURE__ */ t(
|
|
3747
|
+
children: /* @__PURE__ */ t(Gn.Item, {
|
|
3733
3748
|
"aria-hidden": "true",
|
|
3734
3749
|
style: {
|
|
3735
3750
|
borderRadius: "var(--game-ui-radius-control)",
|
|
@@ -3758,7 +3773,7 @@ function Qn({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3758
3773
|
]
|
|
3759
3774
|
});
|
|
3760
3775
|
}
|
|
3761
|
-
function
|
|
3776
|
+
function tr({ label: e, max: r, min: i, onChange: a, value: o }) {
|
|
3762
3777
|
return /* @__PURE__ */ n("label", {
|
|
3763
3778
|
className: "game-ui-slider",
|
|
3764
3779
|
children: [/* @__PURE__ */ t("span", { children: e }), /* @__PURE__ */ t("input", {
|
|
@@ -3772,7 +3787,7 @@ function $n({ label: e, max: r, min: i, onChange: a, value: o }) {
|
|
|
3772
3787
|
})]
|
|
3773
3788
|
});
|
|
3774
3789
|
}
|
|
3775
|
-
function
|
|
3790
|
+
function nr({ checked: e, disabled: r, label: i, onClick: a }) {
|
|
3776
3791
|
return /* @__PURE__ */ n("button", {
|
|
3777
3792
|
"aria-checked": e,
|
|
3778
3793
|
className: "game-ui-toggle",
|
|
@@ -3786,7 +3801,7 @@ function er({ checked: e, disabled: r, label: i, onClick: a }) {
|
|
|
3786
3801
|
})]
|
|
3787
3802
|
});
|
|
3788
3803
|
}
|
|
3789
|
-
function
|
|
3804
|
+
function rr({ items: e, label: n, onSelect: r }) {
|
|
3790
3805
|
return /* @__PURE__ */ t("div", {
|
|
3791
3806
|
"aria-label": n,
|
|
3792
3807
|
className: "game-ui-radial-menu",
|
|
@@ -3801,7 +3816,7 @@ function tr({ items: e, label: n, onSelect: r }) {
|
|
|
3801
3816
|
}, e.id))
|
|
3802
3817
|
});
|
|
3803
3818
|
}
|
|
3804
|
-
function
|
|
3819
|
+
function ir({ children: e, tone: n = "info" }) {
|
|
3805
3820
|
return /* @__PURE__ */ t("div", {
|
|
3806
3821
|
className: "game-ui-toast",
|
|
3807
3822
|
"data-toast-tone": n,
|
|
@@ -3809,7 +3824,7 @@ function nr({ children: e, tone: n = "info" }) {
|
|
|
3809
3824
|
children: e
|
|
3810
3825
|
});
|
|
3811
3826
|
}
|
|
3812
|
-
function
|
|
3827
|
+
function ar({ actionLabel: e, children: r, title: i }) {
|
|
3813
3828
|
return /* @__PURE__ */ n("section", {
|
|
3814
3829
|
"aria-label": i,
|
|
3815
3830
|
className: "game-ui-prompt",
|
|
@@ -3821,7 +3836,7 @@ function rr({ actionLabel: e, children: r, title: i }) {
|
|
|
3821
3836
|
}
|
|
3822
3837
|
//#endregion
|
|
3823
3838
|
//#region src/clay/assets.ts
|
|
3824
|
-
var
|
|
3839
|
+
var or = "/assets/game/ui/clay/phase03-clay-kit", Z = (e) => `${or}/${e}`, sr = {
|
|
3825
3840
|
ai: { line: Z("icons/function/brain-v1.png") },
|
|
3826
3841
|
alert: {
|
|
3827
3842
|
game: Z("components/common/alert-v1.png"),
|
|
@@ -3911,20 +3926,20 @@ var ir = "/assets/game/ui/clay/phase03-clay-kit", Z = (e) => `${ir}/${e}`, ar =
|
|
|
3911
3926
|
game: Z("icons/common/target-v1.png"),
|
|
3912
3927
|
line: Z("icons/function/target-v1.png")
|
|
3913
3928
|
}
|
|
3914
|
-
},
|
|
3915
|
-
function
|
|
3916
|
-
let t =
|
|
3929
|
+
}, cr = Object.keys(sr), lr = or;
|
|
3930
|
+
function ur(e) {
|
|
3931
|
+
let t = lr;
|
|
3917
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;
|
|
3918
3933
|
}
|
|
3919
|
-
function
|
|
3920
|
-
let n =
|
|
3921
|
-
return
|
|
3934
|
+
function dr(e, t) {
|
|
3935
|
+
let n = sr[e];
|
|
3936
|
+
return ur(t === "line" ? n.line ?? n.game ?? "" : n.game ?? n.line ?? "");
|
|
3922
3937
|
}
|
|
3923
|
-
function
|
|
3924
|
-
let t =
|
|
3938
|
+
function fr(e) {
|
|
3939
|
+
let t = sr[e], n = [];
|
|
3925
3940
|
return t.game && n.push("game"), t.line && n.push("line"), n;
|
|
3926
3941
|
}
|
|
3927
|
-
var
|
|
3942
|
+
var pr = {
|
|
3928
3943
|
anvil: Z("icons/common/anvil-v1.png"),
|
|
3929
3944
|
arrow: Z("icons/common/arrow-v1.png"),
|
|
3930
3945
|
bomb: Z("icons/common/bomb-v1.png"),
|
|
@@ -3951,7 +3966,7 @@ var dr = {
|
|
|
3951
3966
|
swordB: Z("icons/common/sword-b-v1.png"),
|
|
3952
3967
|
talaria: Z("icons/common/talaria-v1.png"),
|
|
3953
3968
|
treasure: Z("icons/common/treasure-v1.png")
|
|
3954
|
-
},
|
|
3969
|
+
}, mr = Object.keys(pr), hr = {
|
|
3955
3970
|
buttons: {
|
|
3956
3971
|
primary: Z("buttons/button-brown-large-v2.png"),
|
|
3957
3972
|
blue: Z("buttons/button-blue-large-v2.png"),
|
|
@@ -3972,7 +3987,7 @@ var dr = {
|
|
|
3972
3987
|
tabSelected: Z("components/common/tab-s-v1.png"),
|
|
3973
3988
|
tabNormal: Z("components/common/tab-n-v1.png")
|
|
3974
3989
|
},
|
|
3975
|
-
icons: Object.fromEntries(
|
|
3990
|
+
icons: Object.fromEntries(cr.map((e) => [e, dr(e)])),
|
|
3976
3991
|
catalog: {
|
|
3977
3992
|
manifest: "/assets/game/ui/clay/asset-manifest.json",
|
|
3978
3993
|
sourceCatalog: Z("catalog/phase03-clay-ui-catalog.json"),
|
|
@@ -3980,7 +3995,7 @@ var dr = {
|
|
|
3980
3995
|
contactSheetComponents: Z("catalog/component-candidates-contact-sheet-v1.png"),
|
|
3981
3996
|
contactSheetFunction: Z("catalog/function-icons-contact-sheet-v1.png")
|
|
3982
3997
|
}
|
|
3983
|
-
},
|
|
3998
|
+
}, gr = {
|
|
3984
3999
|
ai: "AI",
|
|
3985
4000
|
alert: "!",
|
|
3986
4001
|
card: "▣",
|
|
@@ -4016,7 +4031,7 @@ var dr = {
|
|
|
4016
4031
|
timer: "◷",
|
|
4017
4032
|
trophy: "★",
|
|
4018
4033
|
vote: "⌾"
|
|
4019
|
-
},
|
|
4034
|
+
}, _r = {
|
|
4020
4035
|
ai: L.berry,
|
|
4021
4036
|
alert: L.red,
|
|
4022
4037
|
card: L.honey,
|
|
@@ -4053,35 +4068,35 @@ var dr = {
|
|
|
4053
4068
|
trophy: L.honey,
|
|
4054
4069
|
vote: L.red
|
|
4055
4070
|
};
|
|
4056
|
-
function gr(e) {
|
|
4057
|
-
let t = mr[e], n = hr[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>`;
|
|
4058
|
-
return `data:image/svg+xml,${encodeURIComponent(i)}`;
|
|
4059
|
-
}
|
|
4060
|
-
var _r = "inline";
|
|
4061
4071
|
function vr(e) {
|
|
4062
|
-
_r =
|
|
4063
|
-
}
|
|
4064
|
-
function yr() {
|
|
4065
|
-
return _r;
|
|
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>`;
|
|
4073
|
+
return `data:image/svg+xml,${encodeURIComponent(i)}`;
|
|
4066
4074
|
}
|
|
4075
|
+
var yr = "inline";
|
|
4067
4076
|
function br(e) {
|
|
4068
|
-
|
|
4077
|
+
yr = e;
|
|
4069
4078
|
}
|
|
4070
4079
|
function xr() {
|
|
4071
|
-
return
|
|
4080
|
+
return yr;
|
|
4081
|
+
}
|
|
4082
|
+
function Sr(e) {
|
|
4083
|
+
lr = e.replace(/\/+$/, "");
|
|
4072
4084
|
}
|
|
4073
|
-
var Sr = !1;
|
|
4074
4085
|
function Cr() {
|
|
4075
|
-
|
|
4086
|
+
return lr;
|
|
4087
|
+
}
|
|
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."));
|
|
4076
4091
|
}
|
|
4077
|
-
function
|
|
4078
|
-
|
|
4092
|
+
function Er() {
|
|
4093
|
+
wr = !0;
|
|
4079
4094
|
}
|
|
4080
|
-
function
|
|
4081
|
-
return t.inline ??
|
|
4095
|
+
function Dr(e, t = {}) {
|
|
4096
|
+
return t.inline ?? yr === "inline" ? (Tr(), vr(e)) : dr(e, t.style);
|
|
4082
4097
|
}
|
|
4083
|
-
function
|
|
4084
|
-
return
|
|
4098
|
+
function Or(e, t) {
|
|
4099
|
+
return dr(e, t);
|
|
4085
4100
|
}
|
|
4086
4101
|
//#endregion
|
|
4087
4102
|
//#region src/ClayComponents.tsx
|
|
@@ -4093,7 +4108,7 @@ function Q({ children: e, className: n, tone: r = "neutral" }) {
|
|
|
4093
4108
|
});
|
|
4094
4109
|
}
|
|
4095
4110
|
function $({ className: e, icon: n, label: r, size: i = "md", style: a, useSourceAsset: o = !1 }) {
|
|
4096
|
-
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, {
|
|
4097
4112
|
...a ? { style: a } : {},
|
|
4098
4113
|
...o ? { inline: !1 } : {}
|
|
4099
4114
|
});
|
|
@@ -4108,7 +4123,7 @@ function $({ className: e, icon: n, label: r, size: i = "md", style: a, useSourc
|
|
|
4108
4123
|
})
|
|
4109
4124
|
});
|
|
4110
4125
|
}
|
|
4111
|
-
function
|
|
4126
|
+
function kr({ actions: e, className: r, items: i, label: a }) {
|
|
4112
4127
|
return /* @__PURE__ */ n("section", {
|
|
4113
4128
|
"aria-label": a,
|
|
4114
4129
|
className: ["game-ui-hud", r].filter(Boolean).join(" "),
|
|
@@ -4131,7 +4146,7 @@ function Dr({ actions: e, className: r, items: i, label: a }) {
|
|
|
4131
4146
|
}) : null]
|
|
4132
4147
|
});
|
|
4133
4148
|
}
|
|
4134
|
-
function
|
|
4149
|
+
function Ar({ cards: e, className: r, label: i }) {
|
|
4135
4150
|
let a = ["game-ui-card-fan", r].filter(Boolean).join(" "), o = (e.length - 1) / 2;
|
|
4136
4151
|
return /* @__PURE__ */ t("div", {
|
|
4137
4152
|
"aria-label": i,
|
|
@@ -4154,7 +4169,7 @@ function Or({ cards: e, className: r, label: i }) {
|
|
|
4154
4169
|
}, e.id))
|
|
4155
4170
|
});
|
|
4156
4171
|
}
|
|
4157
|
-
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 }) {
|
|
4158
4173
|
return /* @__PURE__ */ n("button", {
|
|
4159
4174
|
"aria-pressed": o,
|
|
4160
4175
|
className: ["game-ui-stage-tile", r].filter(Boolean).join(" "),
|
|
@@ -4181,15 +4196,15 @@ function kr({ badge: e, className: r, icon: i, kicker: a, selected: o = !1, summ
|
|
|
4181
4196
|
]
|
|
4182
4197
|
});
|
|
4183
4198
|
}
|
|
4184
|
-
function
|
|
4199
|
+
function Mr() {
|
|
4185
4200
|
return typeof window > "u" ? !1 : (window.matchMedia?.("(pointer: coarse), (max-width: 899px)").matches ?? window.innerWidth < 900) && window.innerHeight > window.innerWidth;
|
|
4186
4201
|
}
|
|
4187
|
-
function
|
|
4188
|
-
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("");
|
|
4189
4204
|
if (l(() => {
|
|
4190
4205
|
if (o) return;
|
|
4191
4206
|
let e = () => {
|
|
4192
|
-
let e =
|
|
4207
|
+
let e = Mr();
|
|
4193
4208
|
u(e), e || f("");
|
|
4194
4209
|
};
|
|
4195
4210
|
return e(), window.addEventListener("resize", e), window.addEventListener("orientationchange", e), () => {
|
|
@@ -4199,7 +4214,7 @@ function jr({ body: e, cta: r, badgeLabel: i = "Landscape only", manualHint: a =
|
|
|
4199
4214
|
let p = async () => {
|
|
4200
4215
|
if (f(""), !o) try {
|
|
4201
4216
|
let e = document.documentElement;
|
|
4202
|
-
!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());
|
|
4203
4218
|
} catch {
|
|
4204
4219
|
f(a);
|
|
4205
4220
|
}
|
|
@@ -4230,7 +4245,7 @@ function jr({ body: e, cta: r, badgeLabel: i = "Landscape only", manualHint: a =
|
|
|
4230
4245
|
})
|
|
4231
4246
|
});
|
|
4232
4247
|
}
|
|
4233
|
-
function
|
|
4248
|
+
function Pr({ className: e, currentLabel: r, label: i, options: a, value: o, defaultValue: s, onSelect: c }) {
|
|
4234
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) => {
|
|
4235
4250
|
o === void 0 && p(e), c?.(e), d(!1);
|
|
4236
4251
|
};
|
|
@@ -4262,34 +4277,34 @@ function Mr({ className: e, currentLabel: r, label: i, options: a, value: o, def
|
|
|
4262
4277
|
}) : null]
|
|
4263
4278
|
});
|
|
4264
4279
|
}
|
|
4265
|
-
function
|
|
4280
|
+
function Fr({ label: e, tone: r = "loading" }) {
|
|
4266
4281
|
return /* @__PURE__ */ n("div", {
|
|
4267
4282
|
className: "game-ui-loading-state",
|
|
4268
4283
|
"data-loading-tone": r,
|
|
4269
4284
|
role: r === "error" ? "alert" : "status",
|
|
4270
4285
|
children: [/* @__PURE__ */ t("img", {
|
|
4271
4286
|
alt: "",
|
|
4272
|
-
src:
|
|
4287
|
+
src: Dr(r === "error" ? "alert" : "timer")
|
|
4273
4288
|
}), /* @__PURE__ */ t("span", { children: e })]
|
|
4274
4289
|
});
|
|
4275
4290
|
}
|
|
4276
|
-
function
|
|
4277
|
-
return
|
|
4291
|
+
function Ir() {
|
|
4292
|
+
return hr.catalog;
|
|
4278
4293
|
}
|
|
4279
4294
|
//#endregion
|
|
4280
4295
|
//#region src/FirstSessionGameShell.tsx
|
|
4281
|
-
function
|
|
4296
|
+
function Lr({ fallback: e, slot: n }) {
|
|
4282
4297
|
return n ?? /* @__PURE__ */ t($, {
|
|
4283
4298
|
icon: e,
|
|
4284
4299
|
size: "sm"
|
|
4285
4300
|
});
|
|
4286
4301
|
}
|
|
4287
|
-
function
|
|
4302
|
+
function Rr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, iconSlots: o, labels: s, onHistory: c, onSettings: l, onWardrobe: u, playerName: d }) {
|
|
4288
4303
|
let f = ["swimmer-first-session-shell", i].filter(Boolean).join(" "), p = e ? `${r} 🔋` : s.guest ?? "guest";
|
|
4289
4304
|
return /* @__PURE__ */ n("section", {
|
|
4290
4305
|
"aria-label": s.shell,
|
|
4291
4306
|
className: f,
|
|
4292
|
-
children: [/* @__PURE__ */ t(
|
|
4307
|
+
children: [/* @__PURE__ */ t(kr, {
|
|
4293
4308
|
className: "swimmer-first-session-hud",
|
|
4294
4309
|
items: [
|
|
4295
4310
|
{
|
|
@@ -4321,7 +4336,7 @@ function Ir({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4321
4336
|
}
|
|
4322
4337
|
],
|
|
4323
4338
|
label: s.hud,
|
|
4324
|
-
actions: /* @__PURE__ */ n(
|
|
4339
|
+
actions: /* @__PURE__ */ n(Yn, {
|
|
4325
4340
|
className: "swimmer-first-session-hud-actions",
|
|
4326
4341
|
label: s.tools,
|
|
4327
4342
|
children: [
|
|
@@ -4329,7 +4344,7 @@ function Ir({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4329
4344
|
"aria-label": s.wardrobe,
|
|
4330
4345
|
onClick: u,
|
|
4331
4346
|
variant: "secondary",
|
|
4332
|
-
children: [/* @__PURE__ */ t(
|
|
4347
|
+
children: [/* @__PURE__ */ t(Lr, {
|
|
4333
4348
|
fallback: "shirt",
|
|
4334
4349
|
slot: o?.wardrobe
|
|
4335
4350
|
}), s.wardrobe]
|
|
@@ -4338,7 +4353,7 @@ function Ir({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4338
4353
|
"aria-label": s.settings,
|
|
4339
4354
|
onClick: l,
|
|
4340
4355
|
variant: "secondary",
|
|
4341
|
-
children: [/* @__PURE__ */ t(
|
|
4356
|
+
children: [/* @__PURE__ */ t(Lr, {
|
|
4342
4357
|
fallback: "settings",
|
|
4343
4358
|
slot: o?.settings
|
|
4344
4359
|
}), s.settings]
|
|
@@ -4347,7 +4362,7 @@ function Ir({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4347
4362
|
"aria-label": s.history,
|
|
4348
4363
|
onClick: c,
|
|
4349
4364
|
variant: "secondary",
|
|
4350
|
-
children: [/* @__PURE__ */ t(
|
|
4365
|
+
children: [/* @__PURE__ */ t(Lr, {
|
|
4351
4366
|
fallback: "history",
|
|
4352
4367
|
slot: o?.history
|
|
4353
4368
|
}), s.history]
|
|
@@ -4372,7 +4387,7 @@ function Ir({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4372
4387
|
}),
|
|
4373
4388
|
/* @__PURE__ */ n("label", {
|
|
4374
4389
|
className: "swimmer-first-session-input",
|
|
4375
|
-
children: [/* @__PURE__ */ t(
|
|
4390
|
+
children: [/* @__PURE__ */ t(Lr, {
|
|
4376
4391
|
fallback: "chat",
|
|
4377
4392
|
slot: o?.input
|
|
4378
4393
|
}), /* @__PURE__ */ t("span", { children: s.input })]
|
|
@@ -4380,7 +4395,7 @@ function Ir({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4380
4395
|
/* @__PURE__ */ n("button", {
|
|
4381
4396
|
className: "swimmer-first-session-emote",
|
|
4382
4397
|
type: "button",
|
|
4383
|
-
children: [/* @__PURE__ */ t(
|
|
4398
|
+
children: [/* @__PURE__ */ t(Lr, {
|
|
4384
4399
|
fallback: "smile",
|
|
4385
4400
|
slot: o?.emote
|
|
4386
4401
|
}), s.emote]
|
|
@@ -4389,7 +4404,7 @@ function Ir({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4389
4404
|
})]
|
|
4390
4405
|
});
|
|
4391
4406
|
}
|
|
4392
|
-
function
|
|
4407
|
+
function zr({ labels: e, onDismiss: r, open: i }) {
|
|
4393
4408
|
return i ? /* @__PURE__ */ n("aside", {
|
|
4394
4409
|
"aria-labelledby": "swimmer-first-session-onboarding-title",
|
|
4395
4410
|
"aria-modal": "true",
|
|
@@ -4437,7 +4452,7 @@ function Lr({ labels: e, onDismiss: r, open: i }) {
|
|
|
4437
4452
|
}
|
|
4438
4453
|
//#endregion
|
|
4439
4454
|
//#region src/GameForms.tsx
|
|
4440
|
-
var
|
|
4455
|
+
var Br = a(function({ className: e, invalid: n, type: r = "text", ...i }, a) {
|
|
4441
4456
|
return /* @__PURE__ */ t("input", {
|
|
4442
4457
|
className: ["game-ui-input", e].filter(Boolean).join(" "),
|
|
4443
4458
|
"data-invalid": n ? "true" : void 0,
|
|
@@ -4445,7 +4460,7 @@ var Rr = a(function({ className: e, invalid: n, type: r = "text", ...i }, a) {
|
|
|
4445
4460
|
type: r,
|
|
4446
4461
|
...i
|
|
4447
4462
|
});
|
|
4448
|
-
}),
|
|
4463
|
+
}), Vr = a(function({ className: e, invalid: n, rows: r = 3, ...i }, a) {
|
|
4449
4464
|
return /* @__PURE__ */ t("textarea", {
|
|
4450
4465
|
className: [
|
|
4451
4466
|
"game-ui-input",
|
|
@@ -4458,7 +4473,7 @@ var Rr = a(function({ className: e, invalid: n, type: r = "text", ...i }, a) {
|
|
|
4458
4473
|
...i
|
|
4459
4474
|
});
|
|
4460
4475
|
});
|
|
4461
|
-
function
|
|
4476
|
+
function Hr({ children: e, className: r, error: i, hint: a, label: o, required: s }) {
|
|
4462
4477
|
return /* @__PURE__ */ n("label", {
|
|
4463
4478
|
className: ["game-ui-field", r].filter(Boolean).join(" "),
|
|
4464
4479
|
"data-invalid": i ? "true" : void 0,
|
|
@@ -4484,7 +4499,7 @@ function Br({ children: e, className: r, error: i, hint: a, label: o, required:
|
|
|
4484
4499
|
]
|
|
4485
4500
|
});
|
|
4486
4501
|
}
|
|
4487
|
-
function
|
|
4502
|
+
function Ur({ className: e, label: r, ...i }) {
|
|
4488
4503
|
return /* @__PURE__ */ n("label", {
|
|
4489
4504
|
className: ["game-ui-checkbox", e].filter(Boolean).join(" "),
|
|
4490
4505
|
children: [
|
|
@@ -4506,11 +4521,11 @@ function Vr({ className: e, label: r, ...i }) {
|
|
|
4506
4521
|
}
|
|
4507
4522
|
//#endregion
|
|
4508
4523
|
//#region src/GameDisplay.tsx
|
|
4509
|
-
function
|
|
4524
|
+
function Wr(e) {
|
|
4510
4525
|
let t = e.trim().split(/\s+/).filter(Boolean);
|
|
4511
4526
|
return t.length === 0 ? "?" : t.slice(0, 2).map((e) => e[0] ?? "").join("").toUpperCase();
|
|
4512
4527
|
}
|
|
4513
|
-
function
|
|
4528
|
+
function Gr({ className: r, name: i, size: a = "md", src: o, status: s = "none" }) {
|
|
4514
4529
|
return /* @__PURE__ */ n("span", {
|
|
4515
4530
|
className: ["game-ui-avatar", r].filter(Boolean).join(" "),
|
|
4516
4531
|
"data-avatar-size": a,
|
|
@@ -4521,7 +4536,7 @@ function Ur({ className: r, name: i, size: a = "md", src: o, status: s = "none"
|
|
|
4521
4536
|
}) : /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ t("span", {
|
|
4522
4537
|
"aria-hidden": "true",
|
|
4523
4538
|
className: "game-ui-avatar-initials",
|
|
4524
|
-
children:
|
|
4539
|
+
children: Wr(i)
|
|
4525
4540
|
}), /* @__PURE__ */ t("span", {
|
|
4526
4541
|
className: "game-ui-sr-only",
|
|
4527
4542
|
children: i
|
|
@@ -4531,7 +4546,7 @@ function Ur({ className: r, name: i, size: a = "md", src: o, status: s = "none"
|
|
|
4531
4546
|
})]
|
|
4532
4547
|
});
|
|
4533
4548
|
}
|
|
4534
|
-
function
|
|
4549
|
+
function Kr({ className: e, label: r, max: i = 100, showValue: a = !1, tone: o = "accent", value: s, valueLabel: c }) {
|
|
4535
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 = {
|
|
4536
4551
|
accent: "var(--game-ui-accent)",
|
|
4537
4552
|
danger: "var(--game-ui-danger)",
|
|
@@ -4549,7 +4564,7 @@ function Wr({ className: e, label: r, max: i = 100, showValue: a = !1, tone: o =
|
|
|
4549
4564
|
"aria-valuetext": f ? c : void 0,
|
|
4550
4565
|
className: "game-ui-progress-track",
|
|
4551
4566
|
role: "progressbar",
|
|
4552
|
-
children: /* @__PURE__ */ t(
|
|
4567
|
+
children: /* @__PURE__ */ t(Gn, {
|
|
4553
4568
|
"aria-hidden": "true",
|
|
4554
4569
|
className: "game-ui-progress-liquid",
|
|
4555
4570
|
fill: p,
|
|
@@ -4560,7 +4575,7 @@ function Wr({ className: e, label: r, max: i = 100, showValue: a = !1, tone: o =
|
|
|
4560
4575
|
pointerEvents: "none",
|
|
4561
4576
|
position: "absolute"
|
|
4562
4577
|
},
|
|
4563
|
-
children: /* @__PURE__ */ t(
|
|
4578
|
+
children: /* @__PURE__ */ t(Gn.Item, {
|
|
4564
4579
|
"aria-hidden": "true",
|
|
4565
4580
|
className: "game-ui-progress-fill",
|
|
4566
4581
|
style: {
|
|
@@ -4583,7 +4598,7 @@ function Wr({ className: e, label: r, max: i = 100, showValue: a = !1, tone: o =
|
|
|
4583
4598
|
}) : null]
|
|
4584
4599
|
});
|
|
4585
4600
|
}
|
|
4586
|
-
function
|
|
4601
|
+
function qr({ action: e, className: r, description: i, icon: a, title: o }) {
|
|
4587
4602
|
return /* @__PURE__ */ n("div", {
|
|
4588
4603
|
className: ["game-ui-empty-state", r].filter(Boolean).join(" "),
|
|
4589
4604
|
children: [
|
|
@@ -4608,7 +4623,7 @@ function Gr({ action: e, className: r, description: i, icon: a, title: o }) {
|
|
|
4608
4623
|
}
|
|
4609
4624
|
//#endregion
|
|
4610
4625
|
//#region src/GameSurfacePack.tsx
|
|
4611
|
-
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 }) {
|
|
4612
4627
|
return /* @__PURE__ */ n("section", {
|
|
4613
4628
|
"aria-label": f,
|
|
4614
4629
|
className: ["game-ui-shell", a].filter(Boolean).join(" "),
|
|
@@ -4646,8 +4661,8 @@ function Kr({ assetLibrary: e, bottomBar: r, children: i, className: a, density:
|
|
|
4646
4661
|
]
|
|
4647
4662
|
});
|
|
4648
4663
|
}
|
|
4649
|
-
var
|
|
4650
|
-
function
|
|
4664
|
+
var Yr = Jr;
|
|
4665
|
+
function Xr({ className: e, density: r = "comfortable", facts: i, label: a, variant: o = "facts" }) {
|
|
4651
4666
|
return /* @__PURE__ */ t("section", {
|
|
4652
4667
|
"aria-label": a,
|
|
4653
4668
|
className: ["game-ui-fact-list", e].filter(Boolean).join(" "),
|
|
@@ -4676,9 +4691,9 @@ function Jr({ className: e, density: r = "comfortable", facts: i, label: a, vari
|
|
|
4676
4691
|
}, e.id))
|
|
4677
4692
|
});
|
|
4678
4693
|
}
|
|
4679
|
-
var
|
|
4680
|
-
function
|
|
4681
|
-
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, {
|
|
4682
4697
|
className: ["game-ui-action-grid", i].filter(Boolean).join(" "),
|
|
4683
4698
|
"data-icon-label-mode": c === "icon" ? o : void 0,
|
|
4684
4699
|
label: s,
|
|
@@ -4703,7 +4718,7 @@ function Xr({ actions: r, className: i, density: a = "comfortable", iconLabelMod
|
|
|
4703
4718
|
}) : null,
|
|
4704
4719
|
r.shortcut ? /* @__PURE__ */ t("kbd", { children: r.shortcut }) : null
|
|
4705
4720
|
] }), l = () => r.onAction?.(r.id);
|
|
4706
|
-
return c === "icon" ? /* @__PURE__ */ t(
|
|
4721
|
+
return c === "icon" ? /* @__PURE__ */ t(Xn, {
|
|
4707
4722
|
"aria-pressed": r.selected,
|
|
4708
4723
|
className: "game-ui-action-grid-button",
|
|
4709
4724
|
disabled: r.disabled,
|
|
@@ -4721,7 +4736,7 @@ function Xr({ actions: r, className: i, density: a = "comfortable", iconLabelMod
|
|
|
4721
4736
|
})]
|
|
4722
4737
|
});
|
|
4723
4738
|
}
|
|
4724
|
-
var
|
|
4739
|
+
var $r = [
|
|
4725
4740
|
{
|
|
4726
4741
|
direction: "forward",
|
|
4727
4742
|
label: "Move forward",
|
|
@@ -4746,7 +4761,7 @@ var Zr = [
|
|
|
4746
4761
|
shortcut: "S / ↓",
|
|
4747
4762
|
symbol: "↓"
|
|
4748
4763
|
}
|
|
4749
|
-
],
|
|
4764
|
+
], ei = {
|
|
4750
4765
|
ArrowUp: "forward",
|
|
4751
4766
|
w: "forward",
|
|
4752
4767
|
W: "forward",
|
|
@@ -4761,7 +4776,7 @@ var Zr = [
|
|
|
4761
4776
|
S: "backward",
|
|
4762
4777
|
" ": "reset"
|
|
4763
4778
|
};
|
|
4764
|
-
function
|
|
4779
|
+
function ti({ actions: e = $r, className: r, density: i = "comfortable", disabled: a = !1, helpText: o, label: s, layout: c = "dpad", onMove: l }) {
|
|
4765
4780
|
let u = ["game-ui-movement-pad", r].filter(Boolean).join(" "), d = (e) => {
|
|
4766
4781
|
a || l?.(e);
|
|
4767
4782
|
};
|
|
@@ -4771,7 +4786,7 @@ function $r({ actions: e = Zr, className: r, density: i = "comfortable", disable
|
|
|
4771
4786
|
"data-density": i,
|
|
4772
4787
|
"data-layout": c,
|
|
4773
4788
|
onKeyDown: (t) => {
|
|
4774
|
-
let n =
|
|
4789
|
+
let n = ei[t.key];
|
|
4775
4790
|
if (!n) return;
|
|
4776
4791
|
let r = e.find((e) => e.direction === n);
|
|
4777
4792
|
!r || r.disabled || a || (t.preventDefault(), d(n));
|
|
@@ -4779,7 +4794,7 @@ function $r({ actions: e = Zr, className: r, density: i = "comfortable", disable
|
|
|
4779
4794
|
tabIndex: 0,
|
|
4780
4795
|
children: [/* @__PURE__ */ t("div", {
|
|
4781
4796
|
className: "game-ui-movement-pad-grid",
|
|
4782
|
-
children: e.map((e) => /* @__PURE__ */ n(
|
|
4797
|
+
children: e.map((e) => /* @__PURE__ */ n(Xn, {
|
|
4783
4798
|
className: "game-ui-movement-button",
|
|
4784
4799
|
"data-direction": e.direction,
|
|
4785
4800
|
disabled: a || e.disabled,
|
|
@@ -4797,15 +4812,15 @@ function $r({ actions: e = Zr, className: r, density: i = "comfortable", disable
|
|
|
4797
4812
|
}), o ? /* @__PURE__ */ t("p", { children: o }) : null]
|
|
4798
4813
|
});
|
|
4799
4814
|
}
|
|
4800
|
-
var
|
|
4815
|
+
var ni = {
|
|
4801
4816
|
generated: "Generated",
|
|
4802
4817
|
imported: "Imported",
|
|
4803
4818
|
starter: "Starter"
|
|
4804
|
-
},
|
|
4819
|
+
}, ri = {
|
|
4805
4820
|
generated: "ai",
|
|
4806
4821
|
imported: "warning",
|
|
4807
4822
|
starter: "neutral"
|
|
4808
|
-
},
|
|
4823
|
+
}, ii = {
|
|
4809
4824
|
error: "danger",
|
|
4810
4825
|
generating: "ai",
|
|
4811
4826
|
missing: "danger",
|
|
@@ -4813,8 +4828,8 @@ var ei = {
|
|
|
4813
4828
|
ready: "neutral",
|
|
4814
4829
|
selected: "success"
|
|
4815
4830
|
};
|
|
4816
|
-
function
|
|
4817
|
-
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;
|
|
4818
4833
|
return /* @__PURE__ */ n("button", {
|
|
4819
4834
|
"aria-label": S ?? y,
|
|
4820
4835
|
"aria-pressed": f,
|
|
@@ -4845,11 +4860,11 @@ function ri({ assetId: e, badges: r = [], cardLayout: i = "list", className: a,
|
|
|
4845
4860
|
className: "game-ui-asset-card-badges",
|
|
4846
4861
|
children: [
|
|
4847
4862
|
/* @__PURE__ */ t(Q, {
|
|
4848
|
-
tone:
|
|
4863
|
+
tone: ri[p],
|
|
4849
4864
|
children: T
|
|
4850
4865
|
}),
|
|
4851
4866
|
/* @__PURE__ */ t(Q, {
|
|
4852
|
-
tone:
|
|
4867
|
+
tone: ii[h],
|
|
4853
4868
|
children: E
|
|
4854
4869
|
}),
|
|
4855
4870
|
r.map((e) => /* @__PURE__ */ t(Q, {
|
|
@@ -4868,7 +4883,7 @@ function ri({ assetId: e, badges: r = [], cardLayout: i = "list", className: a,
|
|
|
4868
4883
|
})]
|
|
4869
4884
|
});
|
|
4870
4885
|
}
|
|
4871
|
-
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 }) {
|
|
4872
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) => {
|
|
4873
4888
|
e[t.source] += 1;
|
|
4874
4889
|
}), e), {
|
|
@@ -4893,15 +4908,15 @@ function ii({ cardLayout: e = "auto", className: r, density: i = "comfortable",
|
|
|
4893
4908
|
"aria-label": "Asset source counts",
|
|
4894
4909
|
className: "game-ui-asset-library-counts",
|
|
4895
4910
|
children: Object.entries(g).map(([e, t]) => /* @__PURE__ */ n(Q, {
|
|
4896
|
-
tone:
|
|
4911
|
+
tone: ri[e],
|
|
4897
4912
|
children: [
|
|
4898
|
-
|
|
4913
|
+
ni[e],
|
|
4899
4914
|
" ",
|
|
4900
4915
|
t
|
|
4901
4916
|
]
|
|
4902
4917
|
}, e))
|
|
4903
4918
|
}),
|
|
4904
|
-
h === 0 ? /* @__PURE__ */ t(
|
|
4919
|
+
h === 0 ? /* @__PURE__ */ t(qr, {
|
|
4905
4920
|
action: a,
|
|
4906
4921
|
description: o,
|
|
4907
4922
|
icon: "gem",
|
|
@@ -4913,13 +4928,13 @@ function ii({ cardLayout: e = "auto", className: r, density: i = "comfortable",
|
|
|
4913
4928
|
className: "game-ui-asset-library-group",
|
|
4914
4929
|
"data-asset-source": r.source,
|
|
4915
4930
|
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t("strong", { children: r.label }), r.source ? /* @__PURE__ */ t(Q, {
|
|
4916
|
-
tone:
|
|
4917
|
-
children:
|
|
4931
|
+
tone: ri[r.source],
|
|
4932
|
+
children: ni[r.source]
|
|
4918
4933
|
}) : null] }), /* @__PURE__ */ t("div", {
|
|
4919
4934
|
className: "game-ui-asset-library-grid",
|
|
4920
4935
|
children: r.assets.map((n) => {
|
|
4921
4936
|
let r = e === "auto" ? n.cardLayout : e;
|
|
4922
|
-
return /* @__PURE__ */ t(
|
|
4937
|
+
return /* @__PURE__ */ t(ai, {
|
|
4923
4938
|
...n,
|
|
4924
4939
|
...r ? { cardLayout: r } : {},
|
|
4925
4940
|
...u ? { onSelect: u } : {},
|
|
@@ -4933,7 +4948,7 @@ function ii({ cardLayout: e = "auto", className: r, density: i = "comfortable",
|
|
|
4933
4948
|
})
|
|
4934
4949
|
});
|
|
4935
4950
|
}
|
|
4936
|
-
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 }) {
|
|
4937
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;
|
|
4938
4953
|
return /* @__PURE__ */ t(X, {
|
|
4939
4954
|
className: h,
|
|
@@ -4942,7 +4957,7 @@ function ai({ actions: e = [], capacityLabel: r = "Objects", className: i, densi
|
|
|
4942
4957
|
children: /* @__PURE__ */ n("div", {
|
|
4943
4958
|
"data-density": a,
|
|
4944
4959
|
children: [
|
|
4945
|
-
/* @__PURE__ */ t(
|
|
4960
|
+
/* @__PURE__ */ t(Xr, {
|
|
4946
4961
|
density: a,
|
|
4947
4962
|
facts: [{
|
|
4948
4963
|
icon: "gem",
|
|
@@ -4958,19 +4973,19 @@ function ai({ actions: e = [], capacityLabel: r = "Objects", className: i, densi
|
|
|
4958
4973
|
}],
|
|
4959
4974
|
label: `${m} facts`
|
|
4960
4975
|
}),
|
|
4961
|
-
g ? /* @__PURE__ */ t(
|
|
4976
|
+
g ? /* @__PURE__ */ t(Kr, {
|
|
4962
4977
|
label: r,
|
|
4963
4978
|
max: o,
|
|
4964
4979
|
showValue: !0,
|
|
4965
4980
|
tone: _ >= o ? "warning" : "success",
|
|
4966
4981
|
value: _
|
|
4967
4982
|
}) : null,
|
|
4968
|
-
e.length > 0 ? /* @__PURE__ */ t(
|
|
4983
|
+
e.length > 0 ? /* @__PURE__ */ t(Qr, {
|
|
4969
4984
|
actions: e,
|
|
4970
4985
|
density: a,
|
|
4971
4986
|
label: `${m} actions`
|
|
4972
4987
|
}) : null,
|
|
4973
|
-
s.length > 0 ? /* @__PURE__ */ t(
|
|
4988
|
+
s.length > 0 ? /* @__PURE__ */ t(Qr, {
|
|
4974
4989
|
actions: s,
|
|
4975
4990
|
density: a,
|
|
4976
4991
|
label: `${m} object actions`,
|
|
@@ -4980,7 +4995,7 @@ function ai({ actions: e = [], capacityLabel: r = "Objects", className: i, densi
|
|
|
4980
4995
|
})
|
|
4981
4996
|
});
|
|
4982
4997
|
}
|
|
4983
|
-
var
|
|
4998
|
+
var ci = si, li = {
|
|
4984
4999
|
build: "home",
|
|
4985
5000
|
flatten: "card",
|
|
4986
5001
|
inspect: "compass",
|
|
@@ -4990,7 +5005,7 @@ var oi = ai, si = {
|
|
|
4990
5005
|
raise: "energy",
|
|
4991
5006
|
smooth: "lucky",
|
|
4992
5007
|
terrain: "portal"
|
|
4993
|
-
},
|
|
5008
|
+
}, ui = {
|
|
4994
5009
|
error: "danger",
|
|
4995
5010
|
locked: "warning",
|
|
4996
5011
|
missing: "danger",
|
|
@@ -4998,10 +5013,10 @@ var oi = ai, si = {
|
|
|
4998
5013
|
ready: "neutral",
|
|
4999
5014
|
selected: "success"
|
|
5000
5015
|
};
|
|
5001
|
-
function
|
|
5016
|
+
function di(e, t, n, r) {
|
|
5002
5017
|
let i = {
|
|
5003
5018
|
disabled: !!(r || e.disabled),
|
|
5004
|
-
icon: e.icon ??
|
|
5019
|
+
icon: e.icon ?? li[e.id] ?? "gem",
|
|
5005
5020
|
id: e.id,
|
|
5006
5021
|
label: e.label,
|
|
5007
5022
|
selected: e.id === t,
|
|
@@ -5009,21 +5024,21 @@ function li(e, t, n, r) {
|
|
|
5009
5024
|
};
|
|
5010
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;
|
|
5011
5026
|
}
|
|
5012
|
-
function
|
|
5027
|
+
function fi(e, t, n) {
|
|
5013
5028
|
return Number.isNaN(e) ? t : Math.min(n, Math.max(t, e));
|
|
5014
5029
|
}
|
|
5015
|
-
function
|
|
5030
|
+
function pi(e) {
|
|
5016
5031
|
return e;
|
|
5017
5032
|
}
|
|
5018
|
-
function
|
|
5033
|
+
function mi(e, t) {
|
|
5019
5034
|
return e === "auto" ? t === "mobile" || t === "small-mobile" ? "caption" : "hidden" : e;
|
|
5020
5035
|
}
|
|
5021
|
-
function
|
|
5036
|
+
function hi({ activeModeId: e, className: r, disabled: i = !1, label: a, modes: o, onModeChange: s, variant: c = "desktop", "data-testid": l }) {
|
|
5022
5037
|
return /* @__PURE__ */ n("section", {
|
|
5023
5038
|
"aria-label": a,
|
|
5024
5039
|
className: ["game-ui-terrain-mode-control", r].filter(Boolean).join(" "),
|
|
5025
5040
|
"data-ui-hook": "terrain-mode-control",
|
|
5026
|
-
"data-variant":
|
|
5041
|
+
"data-variant": pi(c),
|
|
5027
5042
|
"data-testid": l,
|
|
5028
5043
|
children: [/* @__PURE__ */ t("span", {
|
|
5029
5044
|
className: "game-ui-sr-only",
|
|
@@ -5045,7 +5060,7 @@ function pi({ activeModeId: e, className: r, disabled: i = !1, label: a, modes:
|
|
|
5045
5060
|
type: "button",
|
|
5046
5061
|
children: [
|
|
5047
5062
|
/* @__PURE__ */ t($, {
|
|
5048
|
-
icon: r.icon ??
|
|
5063
|
+
icon: r.icon ?? li[r.id] ?? "portal",
|
|
5049
5064
|
size: c === "small-mobile" ? "sm" : "md",
|
|
5050
5065
|
style: "line"
|
|
5051
5066
|
}),
|
|
@@ -5060,8 +5075,8 @@ function pi({ activeModeId: e, className: r, disabled: i = !1, label: a, modes:
|
|
|
5060
5075
|
})]
|
|
5061
5076
|
});
|
|
5062
5077
|
}
|
|
5063
|
-
function
|
|
5064
|
-
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);
|
|
5065
5080
|
return /* @__PURE__ */ t("section", {
|
|
5066
5081
|
"aria-label": o,
|
|
5067
5082
|
className: d,
|
|
@@ -5070,8 +5085,8 @@ function mi({ activeToolId: e, className: n, compactLabelMode: r = "auto", densi
|
|
|
5070
5085
|
"data-ui-hook": "terrain-tool-strip",
|
|
5071
5086
|
"data-variant": l,
|
|
5072
5087
|
"data-testid": u,
|
|
5073
|
-
children: /* @__PURE__ */ t(
|
|
5074
|
-
actions: c.map((t) =>
|
|
5088
|
+
children: /* @__PURE__ */ t(Qr, {
|
|
5089
|
+
actions: c.map((t) => di(t, e, s, a)),
|
|
5075
5090
|
density: i,
|
|
5076
5091
|
iconLabelMode: f,
|
|
5077
5092
|
label: o,
|
|
@@ -5079,18 +5094,18 @@ function mi({ activeToolId: e, className: n, compactLabelMode: r = "auto", densi
|
|
|
5079
5094
|
})
|
|
5080
5095
|
});
|
|
5081
5096
|
}
|
|
5082
|
-
function
|
|
5083
|
-
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 =
|
|
5084
|
-
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));
|
|
5085
5100
|
}, b = (e) => {
|
|
5086
|
-
a?.(
|
|
5101
|
+
a?.(fi(Number(e.currentTarget.value), p, m));
|
|
5087
5102
|
};
|
|
5088
5103
|
return /* @__PURE__ */ n("section", {
|
|
5089
5104
|
className: l,
|
|
5090
5105
|
"data-ui-hook": "brush-controls",
|
|
5091
5106
|
"data-variant": s,
|
|
5092
5107
|
"data-testid": c,
|
|
5093
|
-
children: [/* @__PURE__ */ t(
|
|
5108
|
+
children: [/* @__PURE__ */ t(Hr, {
|
|
5094
5109
|
...r.radiusHint ? { hint: r.radiusHint } : {},
|
|
5095
5110
|
label: r.radius ?? "Brush radius",
|
|
5096
5111
|
children: /* @__PURE__ */ n("div", {
|
|
@@ -5120,7 +5135,7 @@ function hi({ className: e, labels: r = {}, onRadiusChange: i, onStrengthChange:
|
|
|
5120
5135
|
value: g
|
|
5121
5136
|
})]
|
|
5122
5137
|
})
|
|
5123
|
-
}), /* @__PURE__ */ t(
|
|
5138
|
+
}), /* @__PURE__ */ t(Hr, {
|
|
5124
5139
|
...r.strengthHint ? { hint: r.strengthHint } : {},
|
|
5125
5140
|
label: r.strength ?? "Brush strength",
|
|
5126
5141
|
children: /* @__PURE__ */ n("div", {
|
|
@@ -5153,7 +5168,7 @@ function hi({ className: e, labels: r = {}, onRadiusChange: i, onStrengthChange:
|
|
|
5153
5168
|
})]
|
|
5154
5169
|
});
|
|
5155
5170
|
}
|
|
5156
|
-
function
|
|
5171
|
+
function vi({ activeMaterialId: e, className: r, disabled: i = !1, label: a, materials: o, onMaterialChange: s, variant: c = "desktop", "data-testid": l }) {
|
|
5157
5172
|
return /* @__PURE__ */ t("section", {
|
|
5158
5173
|
"aria-label": a,
|
|
5159
5174
|
className: ["game-ui-material-swatches", r].filter(Boolean).join(" "),
|
|
@@ -5196,14 +5211,14 @@ function gi({ activeMaterialId: e, className: r, disabled: i = !1, label: a, mat
|
|
|
5196
5211
|
})
|
|
5197
5212
|
});
|
|
5198
5213
|
}
|
|
5199
|
-
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 }) {
|
|
5200
5215
|
return /* @__PURE__ */ t("section", {
|
|
5201
5216
|
"aria-label": a,
|
|
5202
5217
|
className: ["game-ui-undo-redo-actions", r].filter(Boolean).join(" "),
|
|
5203
5218
|
"data-ui-hook": "undo-redo-actions",
|
|
5204
5219
|
"data-variant": u,
|
|
5205
5220
|
"data-testid": d,
|
|
5206
|
-
children: /* @__PURE__ */ t(
|
|
5221
|
+
children: /* @__PURE__ */ t(Qr, {
|
|
5207
5222
|
actions: [{
|
|
5208
5223
|
disabled: i || !n,
|
|
5209
5224
|
icon: "undo",
|
|
@@ -5229,7 +5244,7 @@ function _i({ canRedo: e = !1, canUndo: n = !1, className: r, disabled: i = !1,
|
|
|
5229
5244
|
})
|
|
5230
5245
|
});
|
|
5231
5246
|
}
|
|
5232
|
-
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 }) {
|
|
5233
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";
|
|
5234
5249
|
return /* @__PURE__ */ t(X, {
|
|
5235
5250
|
className: h,
|
|
@@ -5259,7 +5274,7 @@ function vi({ activeCategoryId: e, categories: r, className: i, density: a = "co
|
|
|
5259
5274
|
type: "button",
|
|
5260
5275
|
children: [
|
|
5261
5276
|
/* @__PURE__ */ t($, {
|
|
5262
|
-
icon: e.icon ??
|
|
5277
|
+
icon: e.icon ?? li[e.id] ?? "home",
|
|
5263
5278
|
size: "sm",
|
|
5264
5279
|
style: "line"
|
|
5265
5280
|
}),
|
|
@@ -5268,7 +5283,7 @@ function vi({ activeCategoryId: e, categories: r, className: i, density: a = "co
|
|
|
5268
5283
|
]
|
|
5269
5284
|
}, e.id);
|
|
5270
5285
|
})
|
|
5271
|
-
}), v.length === 0 || !_ ? /* @__PURE__ */ t(
|
|
5286
|
+
}), v.length === 0 || !_ ? /* @__PURE__ */ t(qr, {
|
|
5272
5287
|
description: o,
|
|
5273
5288
|
icon: "home",
|
|
5274
5289
|
title: s
|
|
@@ -5306,7 +5321,7 @@ function vi({ activeCategoryId: e, categories: r, className: i, density: a = "co
|
|
|
5306
5321
|
/* @__PURE__ */ n("span", {
|
|
5307
5322
|
className: "game-ui-build-item-badges",
|
|
5308
5323
|
children: [/* @__PURE__ */ t(Q, {
|
|
5309
|
-
tone:
|
|
5324
|
+
tone: ui[i],
|
|
5310
5325
|
children: i
|
|
5311
5326
|
}), e.badges?.map((e) => /* @__PURE__ */ t(Q, {
|
|
5312
5327
|
tone: e.tone ?? "neutral",
|
|
@@ -5324,7 +5339,7 @@ function vi({ activeCategoryId: e, categories: r, className: i, density: a = "co
|
|
|
5324
5339
|
})
|
|
5325
5340
|
});
|
|
5326
5341
|
}
|
|
5327
|
-
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 }) {
|
|
5328
5343
|
let g = ["game-ui-compact-game-drawer", r].filter(Boolean).join(" "), _ = u ?? `${d.toLowerCase().replace(/[^a-z0-9]+/g, "-") || "tools"}-drawer-panel`;
|
|
5329
5344
|
return /* @__PURE__ */ n("aside", {
|
|
5330
5345
|
"aria-label": s,
|
|
@@ -5359,7 +5374,7 @@ function yi({ children: e, className: r, closeIcon: i = "close", closeLabel: a =
|
|
|
5359
5374
|
})]
|
|
5360
5375
|
});
|
|
5361
5376
|
}
|
|
5362
|
-
function
|
|
5377
|
+
function Si({ status: e }) {
|
|
5363
5378
|
if (!e) return null;
|
|
5364
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;
|
|
5365
5380
|
return /* @__PURE__ */ n("div", {
|
|
@@ -5372,7 +5387,7 @@ function bi({ status: e }) {
|
|
|
5372
5387
|
children: e.label
|
|
5373
5388
|
}),
|
|
5374
5389
|
e.description ? /* @__PURE__ */ t("p", { children: e.description }) : null,
|
|
5375
|
-
r ? /* @__PURE__ */ t(
|
|
5390
|
+
r ? /* @__PURE__ */ t(Kr, {
|
|
5376
5391
|
label: e.progressLabel ?? e.label,
|
|
5377
5392
|
max: a,
|
|
5378
5393
|
showValue: !0,
|
|
@@ -5382,15 +5397,15 @@ function bi({ status: e }) {
|
|
|
5382
5397
|
]
|
|
5383
5398
|
});
|
|
5384
5399
|
}
|
|
5385
|
-
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" }) {
|
|
5386
5401
|
return /* @__PURE__ */ n("div", {
|
|
5387
5402
|
className: "game-ui-terrain-build-toolbox-body",
|
|
5388
5403
|
"data-active-mode": i,
|
|
5389
5404
|
"data-active-tool": a,
|
|
5390
5405
|
"data-variant": E,
|
|
5391
5406
|
children: [
|
|
5392
|
-
/* @__PURE__ */ t(
|
|
5393
|
-
/* @__PURE__ */ t(
|
|
5407
|
+
/* @__PURE__ */ t(Si, { status: S }),
|
|
5408
|
+
/* @__PURE__ */ t(hi, {
|
|
5394
5409
|
activeModeId: i,
|
|
5395
5410
|
disabled: l,
|
|
5396
5411
|
label: "Tool mode",
|
|
@@ -5401,7 +5416,7 @@ function xi({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5401
5416
|
/* @__PURE__ */ n("div", {
|
|
5402
5417
|
className: "game-ui-terrain-build-main-grid",
|
|
5403
5418
|
children: [
|
|
5404
|
-
/* @__PURE__ */ t(
|
|
5419
|
+
/* @__PURE__ */ t(gi, {
|
|
5405
5420
|
activeToolId: a,
|
|
5406
5421
|
compactLabelMode: C,
|
|
5407
5422
|
density: c,
|
|
@@ -5411,7 +5426,7 @@ function xi({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5411
5426
|
tools: w,
|
|
5412
5427
|
variant: E
|
|
5413
5428
|
}),
|
|
5414
|
-
/* @__PURE__ */ t(
|
|
5429
|
+
/* @__PURE__ */ t(yi, {
|
|
5415
5430
|
canRedo: T?.canRedo,
|
|
5416
5431
|
canUndo: T?.canUndo,
|
|
5417
5432
|
disabled: l,
|
|
@@ -5422,7 +5437,7 @@ function xi({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5422
5437
|
undoLabel: T?.undoLabel,
|
|
5423
5438
|
variant: E
|
|
5424
5439
|
}),
|
|
5425
|
-
/* @__PURE__ */ t(
|
|
5440
|
+
/* @__PURE__ */ t(_i, {
|
|
5426
5441
|
onRadiusChange: f,
|
|
5427
5442
|
onStrengthChange: p,
|
|
5428
5443
|
state: {
|
|
@@ -5431,7 +5446,7 @@ function xi({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5431
5446
|
},
|
|
5432
5447
|
variant: E
|
|
5433
5448
|
}),
|
|
5434
|
-
u.length > 0 ? /* @__PURE__ */ t(
|
|
5449
|
+
u.length > 0 ? /* @__PURE__ */ t(vi, {
|
|
5435
5450
|
activeMaterialId: r,
|
|
5436
5451
|
disabled: l,
|
|
5437
5452
|
label: "Terrain materials",
|
|
@@ -5441,7 +5456,7 @@ function xi({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5441
5456
|
}) : null
|
|
5442
5457
|
]
|
|
5443
5458
|
}),
|
|
5444
|
-
s.length > 0 ? /* @__PURE__ */ t(
|
|
5459
|
+
s.length > 0 ? /* @__PURE__ */ t(bi, {
|
|
5445
5460
|
activeCategoryId: e,
|
|
5446
5461
|
categories: s,
|
|
5447
5462
|
density: c,
|
|
@@ -5455,12 +5470,12 @@ function xi({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5455
5470
|
]
|
|
5456
5471
|
});
|
|
5457
5472
|
}
|
|
5458
|
-
function
|
|
5459
|
-
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, {
|
|
5460
5475
|
...l,
|
|
5461
5476
|
variant: s
|
|
5462
5477
|
});
|
|
5463
|
-
return s === "mobile" || s === "small-mobile" ? /* @__PURE__ */ t(
|
|
5478
|
+
return s === "mobile" || s === "small-mobile" ? /* @__PURE__ */ t(xi, {
|
|
5464
5479
|
className: u,
|
|
5465
5480
|
label: i,
|
|
5466
5481
|
onOpenChange: a,
|
|
@@ -5485,7 +5500,7 @@ function Si({ className: e, drawerOpen: n = !1, drawerTitle: r = "Terrain and bu
|
|
|
5485
5500
|
}
|
|
5486
5501
|
//#endregion
|
|
5487
5502
|
//#region src/GameContractorTools.tsx
|
|
5488
|
-
var
|
|
5503
|
+
var Ti = {
|
|
5489
5504
|
accepted: "success",
|
|
5490
5505
|
blocked: "danger",
|
|
5491
5506
|
cancelled: "neutral",
|
|
@@ -5494,7 +5509,7 @@ var Ci = {
|
|
|
5494
5509
|
queued: "warning",
|
|
5495
5510
|
readyForReview: "success",
|
|
5496
5511
|
working: "ai"
|
|
5497
|
-
},
|
|
5512
|
+
}, Ei = {
|
|
5498
5513
|
accepted: "check",
|
|
5499
5514
|
blocked: "alert",
|
|
5500
5515
|
cancelled: "close",
|
|
@@ -5503,26 +5518,26 @@ var Ci = {
|
|
|
5503
5518
|
queued: "hourglass",
|
|
5504
5519
|
readyForReview: "vote",
|
|
5505
5520
|
working: "energy"
|
|
5506
|
-
},
|
|
5521
|
+
}, Di = {
|
|
5507
5522
|
active: "ai",
|
|
5508
5523
|
blocked: "danger",
|
|
5509
5524
|
complete: "success",
|
|
5510
5525
|
pending: "neutral"
|
|
5511
|
-
},
|
|
5526
|
+
}, Oi = {
|
|
5512
5527
|
blocked: "danger",
|
|
5513
5528
|
done: "success",
|
|
5514
5529
|
idle: "neutral",
|
|
5515
5530
|
queued: "warning",
|
|
5516
5531
|
working: "ai"
|
|
5517
|
-
},
|
|
5532
|
+
}, ki = {
|
|
5518
5533
|
"local-only": "Local only",
|
|
5519
5534
|
mock: "Mock run",
|
|
5520
5535
|
"paid-disabled": "Paid provider off"
|
|
5521
|
-
},
|
|
5536
|
+
}, Ai = {
|
|
5522
5537
|
"local-only": "success",
|
|
5523
5538
|
mock: "ai",
|
|
5524
5539
|
"paid-disabled": "warning"
|
|
5525
|
-
},
|
|
5540
|
+
}, ji = {
|
|
5526
5541
|
accepted: [{
|
|
5527
5542
|
id: "revert",
|
|
5528
5543
|
label: "Revert",
|
|
@@ -5628,17 +5643,17 @@ var Ci = {
|
|
|
5628
5643
|
tone: "danger"
|
|
5629
5644
|
}]
|
|
5630
5645
|
};
|
|
5631
|
-
function
|
|
5646
|
+
function Mi(e, t) {
|
|
5632
5647
|
if (t) return t;
|
|
5633
5648
|
switch (e) {
|
|
5634
5649
|
case "readyForReview": return "Ready for review";
|
|
5635
5650
|
default: return e.replace(/([A-Z])/g, " $1").replace(/^./, (e) => e.toUpperCase());
|
|
5636
5651
|
}
|
|
5637
5652
|
}
|
|
5638
|
-
function
|
|
5653
|
+
function Ni(e) {
|
|
5639
5654
|
return e === "blocked" || e === "cancelled" ? "danger" : e === "accepted" || e === "readyForReview" ? "success" : e === "queued" || e === "draft" || e === "preview" ? "warning" : "accent";
|
|
5640
5655
|
}
|
|
5641
|
-
function
|
|
5656
|
+
function Pi(e) {
|
|
5642
5657
|
switch (e) {
|
|
5643
5658
|
case "accepted": return 100;
|
|
5644
5659
|
case "blocked": return 42;
|
|
@@ -5650,7 +5665,7 @@ function Mi(e) {
|
|
|
5650
5665
|
case "working": return 64;
|
|
5651
5666
|
}
|
|
5652
5667
|
}
|
|
5653
|
-
function
|
|
5668
|
+
function Fi(e, t, n) {
|
|
5654
5669
|
let r = {
|
|
5655
5670
|
disabled: !!(n || e.disabled),
|
|
5656
5671
|
id: e.id,
|
|
@@ -5659,14 +5674,14 @@ function Ni(e, t, n) {
|
|
|
5659
5674
|
};
|
|
5660
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;
|
|
5661
5676
|
}
|
|
5662
|
-
function
|
|
5677
|
+
function Ii(e) {
|
|
5663
5678
|
return e === "danger" || e === "warning" ? "alert" : "status";
|
|
5664
5679
|
}
|
|
5665
|
-
function
|
|
5680
|
+
function Li(e) {
|
|
5666
5681
|
return !!(e.before && e.after);
|
|
5667
5682
|
}
|
|
5668
|
-
function
|
|
5669
|
-
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);
|
|
5670
5685
|
return /* @__PURE__ */ n("section", {
|
|
5671
5686
|
"aria-label": r,
|
|
5672
5687
|
className: m,
|
|
@@ -5678,18 +5693,18 @@ function Ii({ className: e, label: r, max: i = 100, progressLabel: a = "Construc
|
|
|
5678
5693
|
/* @__PURE__ */ n("header", {
|
|
5679
5694
|
className: "game-ui-construction-progress-header",
|
|
5680
5695
|
children: [/* @__PURE__ */ n("span", { children: [/* @__PURE__ */ t($, {
|
|
5681
|
-
icon:
|
|
5696
|
+
icon: Ei[s],
|
|
5682
5697
|
size: "sm"
|
|
5683
5698
|
}), /* @__PURE__ */ t("strong", { children: a })] }), o ? /* @__PURE__ */ t(Q, {
|
|
5684
|
-
tone:
|
|
5699
|
+
tone: Ti[s],
|
|
5685
5700
|
children: g
|
|
5686
5701
|
}) : null]
|
|
5687
5702
|
}),
|
|
5688
|
-
/* @__PURE__ */ t(
|
|
5703
|
+
/* @__PURE__ */ t(Kr, {
|
|
5689
5704
|
label: a,
|
|
5690
5705
|
max: i,
|
|
5691
5706
|
showValue: !0,
|
|
5692
|
-
tone:
|
|
5707
|
+
tone: Ni(s),
|
|
5693
5708
|
value: h
|
|
5694
5709
|
}),
|
|
5695
5710
|
l.length > 0 ? /* @__PURE__ */ t("ol", {
|
|
@@ -5704,7 +5719,7 @@ function Ii({ className: e, label: r, max: i = 100, progressLabel: a = "Construc
|
|
|
5704
5719
|
}),
|
|
5705
5720
|
/* @__PURE__ */ n("span", { children: [/* @__PURE__ */ t("strong", { children: e.label }), e.caption ? /* @__PURE__ */ t("small", { children: e.caption }) : null] }),
|
|
5706
5721
|
/* @__PURE__ */ t(Q, {
|
|
5707
|
-
tone:
|
|
5722
|
+
tone: Di[e.status],
|
|
5708
5723
|
children: e.status
|
|
5709
5724
|
})
|
|
5710
5725
|
]
|
|
@@ -5716,7 +5731,7 @@ function Ii({ className: e, label: r, max: i = 100, progressLabel: a = "Construc
|
|
|
5716
5731
|
children: u.map((e) => /* @__PURE__ */ n("div", {
|
|
5717
5732
|
className: "game-ui-construction-warning",
|
|
5718
5733
|
"data-warning-tone": e.tone ?? "warning",
|
|
5719
|
-
role:
|
|
5734
|
+
role: Ii(e.tone),
|
|
5720
5735
|
children: [/* @__PURE__ */ t($, {
|
|
5721
5736
|
icon: e.tone === "danger" || e.tone === "warning" ? "alert" : "check",
|
|
5722
5737
|
size: "sm"
|
|
@@ -5726,8 +5741,8 @@ function Ii({ className: e, label: r, max: i = 100, progressLabel: a = "Construc
|
|
|
5726
5741
|
]
|
|
5727
5742
|
});
|
|
5728
5743
|
}
|
|
5729
|
-
function
|
|
5730
|
-
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));
|
|
5731
5746
|
return /* @__PURE__ */ n("section", {
|
|
5732
5747
|
"aria-label": a,
|
|
5733
5748
|
className: p,
|
|
@@ -5738,8 +5753,8 @@ function Li({ actions: e, className: r, disabled: i = !1, label: a, localOnlyLab
|
|
|
5738
5753
|
children: [/* @__PURE__ */ n("div", {
|
|
5739
5754
|
className: "game-ui-construction-approval-meta",
|
|
5740
5755
|
children: [c ? /* @__PURE__ */ t(Q, {
|
|
5741
|
-
tone:
|
|
5742
|
-
children:
|
|
5756
|
+
tone: Ai[c],
|
|
5757
|
+
children: ki[c]
|
|
5743
5758
|
}) : /* @__PURE__ */ t(Q, {
|
|
5744
5759
|
tone: "success",
|
|
5745
5760
|
children: o
|
|
@@ -5754,21 +5769,21 @@ function Li({ actions: e, className: r, disabled: i = !1, label: a, localOnlyLab
|
|
|
5754
5769
|
tone: "success",
|
|
5755
5770
|
children: "Validation clear"
|
|
5756
5771
|
})]
|
|
5757
|
-
}), g.length > 0 ? /* @__PURE__ */ t(
|
|
5772
|
+
}), g.length > 0 ? /* @__PURE__ */ t(Qr, {
|
|
5758
5773
|
actions: g,
|
|
5759
5774
|
density: d === "small-mobile" ? "dense" : "comfortable",
|
|
5760
5775
|
label: `${a} actions`
|
|
5761
5776
|
}) : null]
|
|
5762
5777
|
});
|
|
5763
5778
|
}
|
|
5764
|
-
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 }) {
|
|
5765
5780
|
return /* @__PURE__ */ n("section", {
|
|
5766
5781
|
"aria-label": o,
|
|
5767
5782
|
className: ["game-ui-robot-crew-status", e].filter(Boolean).join(" "),
|
|
5768
5783
|
"data-ui-hook": "robot-crew-status",
|
|
5769
5784
|
"data-variant": c,
|
|
5770
5785
|
"data-testid": l,
|
|
5771
|
-
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, {
|
|
5772
5787
|
description: i,
|
|
5773
5788
|
icon: "ai",
|
|
5774
5789
|
title: a
|
|
@@ -5791,7 +5806,7 @@ function Ri({ className: e, crew: r, emptyDescription: i = "Robot crew members a
|
|
|
5791
5806
|
]
|
|
5792
5807
|
}),
|
|
5793
5808
|
/* @__PURE__ */ t(Q, {
|
|
5794
|
-
tone:
|
|
5809
|
+
tone: Oi[e.status],
|
|
5795
5810
|
children: e.status
|
|
5796
5811
|
})
|
|
5797
5812
|
]
|
|
@@ -5799,7 +5814,7 @@ function Ri({ className: e, crew: r, emptyDescription: i = "Robot crew members a
|
|
|
5799
5814
|
})]
|
|
5800
5815
|
});
|
|
5801
5816
|
}
|
|
5802
|
-
function
|
|
5817
|
+
function Vi({ activeView: e, after: r, before: i, className: a, label: o, onViewChange: s, variant: c = "desktop", "data-testid": l }) {
|
|
5803
5818
|
let u = ["game-ui-before-after-toggle", a].filter(Boolean).join(" "), d = e === "before" ? i : r;
|
|
5804
5819
|
return /* @__PURE__ */ n("section", {
|
|
5805
5820
|
"aria-label": o,
|
|
@@ -5808,7 +5823,7 @@ function zi({ activeView: e, after: r, before: i, className: a, label: o, onView
|
|
|
5808
5823
|
"data-ui-hook": "before-after-toggle",
|
|
5809
5824
|
"data-variant": c,
|
|
5810
5825
|
"data-testid": l,
|
|
5811
|
-
children: [/* @__PURE__ */ t(
|
|
5826
|
+
children: [/* @__PURE__ */ t(er, {
|
|
5812
5827
|
activeId: e,
|
|
5813
5828
|
label: `${o} view`,
|
|
5814
5829
|
...s ? { onSelect: (e) => s(e) } : {},
|
|
@@ -5835,8 +5850,8 @@ function zi({ activeView: e, after: r, before: i, className: a, label: o, onView
|
|
|
5835
5850
|
})]
|
|
5836
5851
|
});
|
|
5837
5852
|
}
|
|
5838
|
-
function
|
|
5839
|
-
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 ?? [];
|
|
5840
5855
|
return /* @__PURE__ */ n("article", {
|
|
5841
5856
|
className: f,
|
|
5842
5857
|
"data-density": r,
|
|
@@ -5856,19 +5871,19 @@ function Bi({ className: e, density: r = "comfortable", job: i, onAction: a, onS
|
|
|
5856
5871
|
onClick: () => o?.(i.id),
|
|
5857
5872
|
type: "button",
|
|
5858
5873
|
children: [/* @__PURE__ */ t($, {
|
|
5859
|
-
icon:
|
|
5874
|
+
icon: Ei[i.status],
|
|
5860
5875
|
size: m ? "sm" : "md"
|
|
5861
5876
|
}), /* @__PURE__ */ n("span", { children: [/* @__PURE__ */ t("strong", { children: i.title }), i.description ? /* @__PURE__ */ t("small", { children: i.description }) : null] })]
|
|
5862
5877
|
}), /* @__PURE__ */ n("span", {
|
|
5863
5878
|
className: "game-ui-construction-job-badges",
|
|
5864
5879
|
children: [
|
|
5865
5880
|
/* @__PURE__ */ t(Q, {
|
|
5866
|
-
tone:
|
|
5881
|
+
tone: Ti[i.status],
|
|
5867
5882
|
children: p
|
|
5868
5883
|
}),
|
|
5869
5884
|
i.providerMode ? /* @__PURE__ */ t(Q, {
|
|
5870
|
-
tone:
|
|
5871
|
-
children:
|
|
5885
|
+
tone: Ai[i.providerMode],
|
|
5886
|
+
children: ki[i.providerMode]
|
|
5872
5887
|
}) : null,
|
|
5873
5888
|
i.badges?.map((e) => /* @__PURE__ */ t(Q, {
|
|
5874
5889
|
tone: e.tone ?? "neutral",
|
|
@@ -5886,7 +5901,7 @@ function Bi({ className: e, density: r = "comfortable", job: i, onAction: a, onS
|
|
|
5886
5901
|
h.map((e) => /* @__PURE__ */ n("span", { children: [/* @__PURE__ */ t("small", { children: e.label }), /* @__PURE__ */ t("b", { children: e.value })] }, e.id))
|
|
5887
5902
|
]
|
|
5888
5903
|
}),
|
|
5889
|
-
/* @__PURE__ */ t(
|
|
5904
|
+
/* @__PURE__ */ t(Ri, {
|
|
5890
5905
|
label: `${i.title} progress`,
|
|
5891
5906
|
progressLabel: i.progressLabel,
|
|
5892
5907
|
status: i.status,
|
|
@@ -5897,19 +5912,19 @@ function Bi({ className: e, density: r = "comfortable", job: i, onAction: a, onS
|
|
|
5897
5912
|
max: i.progressMax,
|
|
5898
5913
|
variant: u
|
|
5899
5914
|
}),
|
|
5900
|
-
l &&
|
|
5915
|
+
l && Li(i) ? /* @__PURE__ */ t(Vi, {
|
|
5901
5916
|
activeView: "after",
|
|
5902
5917
|
after: i.after,
|
|
5903
5918
|
before: i.before,
|
|
5904
5919
|
label: `${i.title} preview`,
|
|
5905
5920
|
variant: u
|
|
5906
5921
|
}) : null,
|
|
5907
|
-
i.crew && i.crew.length > 0 ? /* @__PURE__ */ t(
|
|
5922
|
+
i.crew && i.crew.length > 0 ? /* @__PURE__ */ t(Bi, {
|
|
5908
5923
|
crew: i.crew,
|
|
5909
5924
|
label: `${i.title} robot crew`,
|
|
5910
5925
|
variant: u
|
|
5911
5926
|
}) : null,
|
|
5912
|
-
c ? /* @__PURE__ */ t(
|
|
5927
|
+
c ? /* @__PURE__ */ t(zi, {
|
|
5913
5928
|
actions: i.actions,
|
|
5914
5929
|
label: `${i.title} approval`,
|
|
5915
5930
|
onAction: (e) => a?.(e, i.id),
|
|
@@ -5921,8 +5936,8 @@ function Bi({ className: e, density: r = "comfortable", job: i, onAction: a, onS
|
|
|
5921
5936
|
]
|
|
5922
5937
|
});
|
|
5923
5938
|
}
|
|
5924
|
-
function
|
|
5925
|
-
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, {
|
|
5926
5941
|
className: ["game-ui-compact-job-drawer", n].filter(Boolean).join(" "),
|
|
5927
5942
|
closeLabel: r,
|
|
5928
5943
|
disabled: i,
|
|
@@ -5938,7 +5953,7 @@ function Vi({ children: e, className: n, closeLabel: r = "Close jobs", disabled:
|
|
|
5938
5953
|
children: e ?? /* @__PURE__ */ t("div", {
|
|
5939
5954
|
className: "game-ui-compact-job-drawer-list",
|
|
5940
5955
|
tabIndex: 0,
|
|
5941
|
-
children: a.map((e) => /* @__PURE__ */ t(
|
|
5956
|
+
children: a.map((e) => /* @__PURE__ */ t(Hi, {
|
|
5942
5957
|
density: "dense",
|
|
5943
5958
|
job: e,
|
|
5944
5959
|
onAction: s,
|
|
@@ -5950,7 +5965,7 @@ function Vi({ children: e, className: n, closeLabel: r = "Close jobs", disabled:
|
|
|
5950
5965
|
})
|
|
5951
5966
|
});
|
|
5952
5967
|
}
|
|
5953
|
-
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 }) {
|
|
5954
5969
|
let y = ["game-ui-contractor-panel", r].filter(Boolean).join(" "), b = c.find((e) => e.id === m) ?? c[0];
|
|
5955
5970
|
return _ === "mobile" || _ === "small-mobile" ? /* @__PURE__ */ n("section", {
|
|
5956
5971
|
"aria-label": l,
|
|
@@ -5959,7 +5974,7 @@ function Hi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
5959
5974
|
"data-variant": _,
|
|
5960
5975
|
"data-testid": v,
|
|
5961
5976
|
children: [
|
|
5962
|
-
/* @__PURE__ */ t(
|
|
5977
|
+
/* @__PURE__ */ t(Ui, {
|
|
5963
5978
|
jobs: c,
|
|
5964
5979
|
label: `${l} drawer`,
|
|
5965
5980
|
onAction: u,
|
|
@@ -5971,16 +5986,16 @@ function Hi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
5971
5986
|
triggerLabel: "Contractor",
|
|
5972
5987
|
variant: _
|
|
5973
5988
|
}),
|
|
5974
|
-
b && !a ? /* @__PURE__ */ t(
|
|
5989
|
+
b && !a ? /* @__PURE__ */ t(Hi, {
|
|
5975
5990
|
density: "dense",
|
|
5976
5991
|
job: b,
|
|
5977
5992
|
onAction: u,
|
|
5978
5993
|
onSelect: p,
|
|
5979
5994
|
selected: !0,
|
|
5980
|
-
showBeforeAfter:
|
|
5995
|
+
showBeforeAfter: Li(b),
|
|
5981
5996
|
variant: _
|
|
5982
5997
|
}) : null,
|
|
5983
|
-
b ? null : /* @__PURE__ */ t(
|
|
5998
|
+
b ? null : /* @__PURE__ */ t(qr, {
|
|
5984
5999
|
description: o,
|
|
5985
6000
|
icon: "energy",
|
|
5986
6001
|
title: s
|
|
@@ -6001,7 +6016,7 @@ function Hi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6001
6016
|
className: "game-ui-contractor-panel-subtitle",
|
|
6002
6017
|
children: h
|
|
6003
6018
|
}) : null,
|
|
6004
|
-
c.length === 0 ? /* @__PURE__ */ t(
|
|
6019
|
+
c.length === 0 ? /* @__PURE__ */ t(qr, {
|
|
6005
6020
|
description: o,
|
|
6006
6021
|
icon: "energy",
|
|
6007
6022
|
title: s
|
|
@@ -6012,7 +6027,7 @@ function Hi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6012
6027
|
"aria-label": "Construction job queue",
|
|
6013
6028
|
className: "game-ui-contractor-job-list",
|
|
6014
6029
|
tabIndex: 0,
|
|
6015
|
-
children: c.map((e) => /* @__PURE__ */ t(
|
|
6030
|
+
children: c.map((e) => /* @__PURE__ */ t(Hi, {
|
|
6016
6031
|
density: i,
|
|
6017
6032
|
job: e,
|
|
6018
6033
|
onAction: u,
|
|
@@ -6025,7 +6040,7 @@ function Hi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6025
6040
|
className: "game-ui-contractor-detail",
|
|
6026
6041
|
"aria-label": `${b.title} detail`,
|
|
6027
6042
|
children: [
|
|
6028
|
-
/* @__PURE__ */ t(
|
|
6043
|
+
/* @__PURE__ */ t(Ri, {
|
|
6029
6044
|
label: `${b.title} progress detail`,
|
|
6030
6045
|
progressLabel: b.progressLabel,
|
|
6031
6046
|
status: b.status,
|
|
@@ -6036,7 +6051,7 @@ function Hi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6036
6051
|
max: b.progressMax,
|
|
6037
6052
|
variant: _
|
|
6038
6053
|
}),
|
|
6039
|
-
|
|
6054
|
+
Li(b) ? /* @__PURE__ */ t(Vi, {
|
|
6040
6055
|
activeView: e,
|
|
6041
6056
|
after: b.after,
|
|
6042
6057
|
before: b.before,
|
|
@@ -6044,13 +6059,13 @@ function Hi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6044
6059
|
onViewChange: f,
|
|
6045
6060
|
variant: _
|
|
6046
6061
|
}) : null,
|
|
6047
|
-
/* @__PURE__ */ t(
|
|
6062
|
+
/* @__PURE__ */ t(Bi, {
|
|
6048
6063
|
crew: b.crew ?? [],
|
|
6049
6064
|
label: `${b.title} robot crew`,
|
|
6050
6065
|
title: "Robot crew",
|
|
6051
6066
|
variant: _
|
|
6052
6067
|
}),
|
|
6053
|
-
/* @__PURE__ */ t(
|
|
6068
|
+
/* @__PURE__ */ t(zi, {
|
|
6054
6069
|
actions: b.actions,
|
|
6055
6070
|
label: `${b.title} approval`,
|
|
6056
6071
|
onAction: u ? (e) => u(e, b.id) : void 0,
|
|
@@ -6068,16 +6083,16 @@ function Hi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6068
6083
|
}
|
|
6069
6084
|
//#endregion
|
|
6070
6085
|
//#region src/GamePanelSystem.tsx
|
|
6071
|
-
function
|
|
6086
|
+
function Gi(...e) {
|
|
6072
6087
|
return e.filter(Boolean).join(" ");
|
|
6073
6088
|
}
|
|
6074
|
-
var
|
|
6089
|
+
var Ki = {
|
|
6075
6090
|
collapse: "Collapse",
|
|
6076
6091
|
expand: "Expand"
|
|
6077
6092
|
};
|
|
6078
|
-
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 }) {
|
|
6079
6094
|
let p = u(), [h, g] = m(a), _ = c ?? h, v = {
|
|
6080
|
-
...
|
|
6095
|
+
...Ki,
|
|
6081
6096
|
...o
|
|
6082
6097
|
}, y = () => {
|
|
6083
6098
|
let e = !_;
|
|
@@ -6085,7 +6100,7 @@ function Gi({ actions: e, children: r, className: i, defaultOpen: a = !0, labels
|
|
|
6085
6100
|
};
|
|
6086
6101
|
return /* @__PURE__ */ n("section", {
|
|
6087
6102
|
...f,
|
|
6088
|
-
className:
|
|
6103
|
+
className: Gi("game-ui-collapsible", i),
|
|
6089
6104
|
"data-open": _,
|
|
6090
6105
|
"data-panel-tone": d,
|
|
6091
6106
|
children: [/* @__PURE__ */ n("header", {
|
|
@@ -6124,13 +6139,13 @@ function Gi({ actions: e, children: r, className: i, defaultOpen: a = !0, labels
|
|
|
6124
6139
|
})]
|
|
6125
6140
|
});
|
|
6126
6141
|
}
|
|
6127
|
-
var
|
|
6142
|
+
var Ji = {
|
|
6128
6143
|
close: "Close",
|
|
6129
6144
|
maximize: "Maximize",
|
|
6130
6145
|
minimize: "Minimize",
|
|
6131
6146
|
restore: "Restore"
|
|
6132
6147
|
};
|
|
6133
|
-
function
|
|
6148
|
+
function Yi({ kind: e }) {
|
|
6134
6149
|
return /* @__PURE__ */ t("svg", {
|
|
6135
6150
|
"aria-hidden": "true",
|
|
6136
6151
|
fill: "none",
|
|
@@ -6150,9 +6165,9 @@ function qi({ kind: e }) {
|
|
|
6150
6165
|
})
|
|
6151
6166
|
});
|
|
6152
6167
|
}
|
|
6153
|
-
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 }) {
|
|
6154
6169
|
let [g, _] = m(o), v = f ?? g, y = {
|
|
6155
|
-
...
|
|
6170
|
+
...Ji,
|
|
6156
6171
|
...l
|
|
6157
6172
|
}, b = (e) => {
|
|
6158
6173
|
f === void 0 && _(e), d?.(e);
|
|
@@ -6160,7 +6175,7 @@ function Ji({ allowMaximize: e = !0, allowMinimize: r = !0, children: i, classNa
|
|
|
6160
6175
|
return /* @__PURE__ */ n("section", {
|
|
6161
6176
|
...h,
|
|
6162
6177
|
"aria-label": p,
|
|
6163
|
-
className:
|
|
6178
|
+
className: Gi("game-ui-window", a),
|
|
6164
6179
|
"data-window-state": v,
|
|
6165
6180
|
role: "group",
|
|
6166
6181
|
children: [/* @__PURE__ */ n("header", {
|
|
@@ -6183,21 +6198,21 @@ function Ji({ allowMaximize: e = !0, allowMinimize: r = !0, children: i, classNa
|
|
|
6183
6198
|
className: "game-ui-icon-button game-ui-window-button",
|
|
6184
6199
|
onClick: () => b(x ? "normal" : "minimized"),
|
|
6185
6200
|
type: "button",
|
|
6186
|
-
children: /* @__PURE__ */ t(
|
|
6201
|
+
children: /* @__PURE__ */ t(Yi, { kind: x ? "restore" : "minimize" })
|
|
6187
6202
|
}) : null,
|
|
6188
6203
|
e ? /* @__PURE__ */ t("button", {
|
|
6189
6204
|
"aria-label": S ? y.restore : y.maximize,
|
|
6190
6205
|
className: "game-ui-icon-button game-ui-window-button",
|
|
6191
6206
|
onClick: () => b(S ? "normal" : "maximized"),
|
|
6192
6207
|
type: "button",
|
|
6193
|
-
children: /* @__PURE__ */ t(
|
|
6208
|
+
children: /* @__PURE__ */ t(Yi, { kind: S ? "restore" : "maximize" })
|
|
6194
6209
|
}) : null,
|
|
6195
6210
|
u ? /* @__PURE__ */ t("button", {
|
|
6196
6211
|
"aria-label": y.close,
|
|
6197
6212
|
className: "game-ui-icon-button game-ui-window-button",
|
|
6198
6213
|
onClick: u,
|
|
6199
6214
|
type: "button",
|
|
6200
|
-
children: /* @__PURE__ */ t(
|
|
6215
|
+
children: /* @__PURE__ */ t(Yi, { kind: "close" })
|
|
6201
6216
|
}) : null
|
|
6202
6217
|
]
|
|
6203
6218
|
})
|
|
@@ -6217,14 +6232,14 @@ function Ji({ allowMaximize: e = !0, allowMinimize: r = !0, children: i, classNa
|
|
|
6217
6232
|
})]
|
|
6218
6233
|
});
|
|
6219
6234
|
}
|
|
6220
|
-
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 }) {
|
|
6221
6236
|
let h = p(null), g = u();
|
|
6222
6237
|
return l(() => {
|
|
6223
6238
|
let e = h.current;
|
|
6224
6239
|
e && (c && !e.open && e.showModal(), !c && e.open && e.close());
|
|
6225
6240
|
}, [c]), /* @__PURE__ */ t("dialog", {
|
|
6226
6241
|
"aria-labelledby": g,
|
|
6227
|
-
className:
|
|
6242
|
+
className: Gi("game-ui-modal", r),
|
|
6228
6243
|
"data-position": d,
|
|
6229
6244
|
"data-size": f,
|
|
6230
6245
|
onCancel: (e) => {
|
|
@@ -6248,7 +6263,7 @@ function Yi({ children: e, className: r, closeLabel: i = "Close", closeOnBackdro
|
|
|
6248
6263
|
className: "game-ui-icon-button game-ui-window-button",
|
|
6249
6264
|
onClick: s,
|
|
6250
6265
|
type: "button",
|
|
6251
|
-
children: /* @__PURE__ */ t(
|
|
6266
|
+
children: /* @__PURE__ */ t(Yi, { kind: "close" })
|
|
6252
6267
|
})]
|
|
6253
6268
|
}),
|
|
6254
6269
|
/* @__PURE__ */ t("div", {
|
|
@@ -6265,7 +6280,7 @@ function Yi({ children: e, className: r, closeLabel: i = "Close", closeOnBackdro
|
|
|
6265
6280
|
}
|
|
6266
6281
|
//#endregion
|
|
6267
6282
|
//#region src/previewStates.ts
|
|
6268
|
-
var
|
|
6283
|
+
var Qi = [
|
|
6269
6284
|
{
|
|
6270
6285
|
id: "history-human-long",
|
|
6271
6286
|
kind: "human",
|
|
@@ -6287,7 +6302,7 @@ var Xi = [
|
|
|
6287
6302
|
speaker: "Table",
|
|
6288
6303
|
text: "Three votes are locked. One more read can still change the pact."
|
|
6289
6304
|
}
|
|
6290
|
-
],
|
|
6305
|
+
], $i = {
|
|
6291
6306
|
...V,
|
|
6292
6307
|
..._e,
|
|
6293
6308
|
...ve,
|
|
@@ -6297,13 +6312,13 @@ var Xi = [
|
|
|
6297
6312
|
...ye,
|
|
6298
6313
|
...xe,
|
|
6299
6314
|
...z
|
|
6300
|
-
},
|
|
6315
|
+
}, ea = {
|
|
6301
6316
|
toneAttr: "data-game-ui-tone",
|
|
6302
6317
|
toneGlass: "glass",
|
|
6303
6318
|
densityAttr: "data-game-ui-density",
|
|
6304
6319
|
densityCompact: "compact",
|
|
6305
6320
|
scopeClass: "game-ui-overlay-scope"
|
|
6306
|
-
},
|
|
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 = {
|
|
6307
6322
|
en: {
|
|
6308
6323
|
triggerLabel: "EN",
|
|
6309
6324
|
langMenuLabel: "Preview language",
|
|
@@ -6505,7 +6520,7 @@ var Xi = [
|
|
|
6505
6520
|
hint: "Rotate manually if this browser blocks automatic landscape lock."
|
|
6506
6521
|
},
|
|
6507
6522
|
historyLabel: "Round history",
|
|
6508
|
-
history:
|
|
6523
|
+
history: Qi
|
|
6509
6524
|
},
|
|
6510
6525
|
"zh-CN": {
|
|
6511
6526
|
triggerLabel: "中",
|
|
@@ -6732,7 +6747,7 @@ var Xi = [
|
|
|
6732
6747
|
}
|
|
6733
6748
|
]
|
|
6734
6749
|
}
|
|
6735
|
-
},
|
|
6750
|
+
}, ia = i(ra.en), aa = () => c(ia), oa = [
|
|
6736
6751
|
{
|
|
6737
6752
|
id: "colors",
|
|
6738
6753
|
tokens: L
|
|
@@ -6786,7 +6801,7 @@ var Xi = [
|
|
|
6786
6801
|
tokens: xe
|
|
6787
6802
|
}
|
|
6788
6803
|
];
|
|
6789
|
-
function
|
|
6804
|
+
function sa({ id: e, label: r, tokens: i }) {
|
|
6790
6805
|
return /* @__PURE__ */ n("article", {
|
|
6791
6806
|
className: "game-ui-token-card",
|
|
6792
6807
|
children: [/* @__PURE__ */ t("h3", { children: r }), /* @__PURE__ */ t("div", {
|
|
@@ -6798,7 +6813,7 @@ function aa({ id: e, label: r, tokens: i }) {
|
|
|
6798
6813
|
})]
|
|
6799
6814
|
});
|
|
6800
6815
|
}
|
|
6801
|
-
function
|
|
6816
|
+
function ca() {
|
|
6802
6817
|
return /* @__PURE__ */ t("div", {
|
|
6803
6818
|
"aria-label": "Clay color swatches",
|
|
6804
6819
|
className: "game-ui-swatch-grid",
|
|
@@ -6808,8 +6823,8 @@ function oa() {
|
|
|
6808
6823
|
}, e))
|
|
6809
6824
|
});
|
|
6810
6825
|
}
|
|
6811
|
-
function
|
|
6812
|
-
let { type: e } =
|
|
6826
|
+
function la() {
|
|
6827
|
+
let { type: e } = aa();
|
|
6813
6828
|
return /* @__PURE__ */ n("div", {
|
|
6814
6829
|
className: "game-ui-type-scale",
|
|
6815
6830
|
children: [
|
|
@@ -6824,8 +6839,8 @@ function sa() {
|
|
|
6824
6839
|
]
|
|
6825
6840
|
});
|
|
6826
6841
|
}
|
|
6827
|
-
function
|
|
6828
|
-
let { buttons: e } =
|
|
6842
|
+
function ua() {
|
|
6843
|
+
let { buttons: e } = aa();
|
|
6829
6844
|
return /* @__PURE__ */ n(X, {
|
|
6830
6845
|
title: e.panelTitle,
|
|
6831
6846
|
tone: "strong",
|
|
@@ -6863,9 +6878,9 @@ function ca() {
|
|
|
6863
6878
|
/* @__PURE__ */ n("div", {
|
|
6864
6879
|
className: "game-ui-component-row",
|
|
6865
6880
|
children: [
|
|
6866
|
-
/* @__PURE__ */ t(
|
|
6881
|
+
/* @__PURE__ */ t(Zn, {
|
|
6867
6882
|
label: e.settingsTip,
|
|
6868
|
-
children: /* @__PURE__ */ t(
|
|
6883
|
+
children: /* @__PURE__ */ t(Xn, {
|
|
6869
6884
|
label: e.settingsTip,
|
|
6870
6885
|
children: /* @__PURE__ */ t($, {
|
|
6871
6886
|
icon: "settings",
|
|
@@ -6873,7 +6888,7 @@ function ca() {
|
|
|
6873
6888
|
})
|
|
6874
6889
|
})
|
|
6875
6890
|
}),
|
|
6876
|
-
/* @__PURE__ */ t(
|
|
6891
|
+
/* @__PURE__ */ t(Xn, {
|
|
6877
6892
|
label: e.copyInvite,
|
|
6878
6893
|
children: /* @__PURE__ */ t($, {
|
|
6879
6894
|
icon: "copy",
|
|
@@ -6894,7 +6909,7 @@ function ca() {
|
|
|
6894
6909
|
})
|
|
6895
6910
|
]
|
|
6896
6911
|
}),
|
|
6897
|
-
/* @__PURE__ */ t(
|
|
6912
|
+
/* @__PURE__ */ t(er, {
|
|
6898
6913
|
activeId: "live",
|
|
6899
6914
|
label: e.segmentedLabel,
|
|
6900
6915
|
options: [
|
|
@@ -6912,7 +6927,7 @@ function ca() {
|
|
|
6912
6927
|
}
|
|
6913
6928
|
]
|
|
6914
6929
|
}),
|
|
6915
|
-
/* @__PURE__ */ t(
|
|
6930
|
+
/* @__PURE__ */ t(Qn, {
|
|
6916
6931
|
activeId: "portal",
|
|
6917
6932
|
tabs: [
|
|
6918
6933
|
{
|
|
@@ -6929,7 +6944,7 @@ function ca() {
|
|
|
6929
6944
|
}
|
|
6930
6945
|
]
|
|
6931
6946
|
}),
|
|
6932
|
-
/* @__PURE__ */ t(
|
|
6947
|
+
/* @__PURE__ */ t(rr, {
|
|
6933
6948
|
items: [
|
|
6934
6949
|
{
|
|
6935
6950
|
id: "wave",
|
|
@@ -6946,28 +6961,28 @@ function ca() {
|
|
|
6946
6961
|
],
|
|
6947
6962
|
label: e.radialLabel
|
|
6948
6963
|
}),
|
|
6949
|
-
/* @__PURE__ */ t(
|
|
6964
|
+
/* @__PURE__ */ t(tr, {
|
|
6950
6965
|
label: e.sliderLabel,
|
|
6951
6966
|
max: 100,
|
|
6952
6967
|
min: 0,
|
|
6953
6968
|
value: 68
|
|
6954
6969
|
}),
|
|
6955
|
-
/* @__PURE__ */ t(
|
|
6970
|
+
/* @__PURE__ */ t(nr, {
|
|
6956
6971
|
checked: !0,
|
|
6957
6972
|
label: e.toggleLabel
|
|
6958
6973
|
})
|
|
6959
6974
|
]
|
|
6960
6975
|
});
|
|
6961
6976
|
}
|
|
6962
|
-
function
|
|
6963
|
-
let { hud: e, tiles: r } =
|
|
6977
|
+
function da() {
|
|
6978
|
+
let { hud: e, tiles: r } = aa();
|
|
6964
6979
|
return /* @__PURE__ */ n("div", {
|
|
6965
6980
|
className: "game-ui-stage-demo",
|
|
6966
6981
|
children: [/* @__PURE__ */ n("div", {
|
|
6967
6982
|
"aria-label": "Clay world HUD preview",
|
|
6968
6983
|
className: "game-ui-stage-world",
|
|
6969
6984
|
children: [
|
|
6970
|
-
/* @__PURE__ */ t(
|
|
6985
|
+
/* @__PURE__ */ t(kr, {
|
|
6971
6986
|
label: e.label,
|
|
6972
6987
|
items: [
|
|
6973
6988
|
{
|
|
@@ -6990,15 +7005,15 @@ function la() {
|
|
|
6990
7005
|
value: "02:46"
|
|
6991
7006
|
}
|
|
6992
7007
|
],
|
|
6993
|
-
actions: /* @__PURE__ */ n(
|
|
7008
|
+
actions: /* @__PURE__ */ n(Yn, {
|
|
6994
7009
|
label: e.tools,
|
|
6995
|
-
children: [/* @__PURE__ */ t(
|
|
7010
|
+
children: [/* @__PURE__ */ t(Xn, {
|
|
6996
7011
|
label: e.history,
|
|
6997
7012
|
children: /* @__PURE__ */ t($, {
|
|
6998
7013
|
icon: "scroll",
|
|
6999
7014
|
size: "sm"
|
|
7000
7015
|
})
|
|
7001
|
-
}), /* @__PURE__ */ t(
|
|
7016
|
+
}), /* @__PURE__ */ t(Xn, {
|
|
7002
7017
|
label: e.settings,
|
|
7003
7018
|
children: /* @__PURE__ */ t($, {
|
|
7004
7019
|
icon: "settings",
|
|
@@ -7038,7 +7053,7 @@ function la() {
|
|
|
7038
7053
|
}), /* @__PURE__ */ n("div", {
|
|
7039
7054
|
className: "game-ui-stage-sidecar",
|
|
7040
7055
|
children: [
|
|
7041
|
-
/* @__PURE__ */ t(
|
|
7056
|
+
/* @__PURE__ */ t(jr, {
|
|
7042
7057
|
badge: r.daily.badge,
|
|
7043
7058
|
icon: "scroll",
|
|
7044
7059
|
kicker: r.daily.kicker,
|
|
@@ -7047,7 +7062,7 @@ function la() {
|
|
|
7047
7062
|
title: r.daily.title,
|
|
7048
7063
|
tone: "daily"
|
|
7049
7064
|
}),
|
|
7050
|
-
/* @__PURE__ */ t(
|
|
7065
|
+
/* @__PURE__ */ t(jr, {
|
|
7051
7066
|
badge: r.portal.badge,
|
|
7052
7067
|
icon: "portal",
|
|
7053
7068
|
kicker: r.portal.kicker,
|
|
@@ -7055,7 +7070,7 @@ function la() {
|
|
|
7055
7070
|
title: r.portal.title,
|
|
7056
7071
|
tone: "portal"
|
|
7057
7072
|
}),
|
|
7058
|
-
/* @__PURE__ */ t(
|
|
7073
|
+
/* @__PURE__ */ t(jr, {
|
|
7059
7074
|
icon: "energy",
|
|
7060
7075
|
kicker: r.host.kicker,
|
|
7061
7076
|
summary: r.host.summary,
|
|
@@ -7066,21 +7081,21 @@ function la() {
|
|
|
7066
7081
|
})]
|
|
7067
7082
|
});
|
|
7068
7083
|
}
|
|
7069
|
-
function
|
|
7070
|
-
let { hud: e, buttons: r } =
|
|
7084
|
+
function fa() {
|
|
7085
|
+
let { hud: e, buttons: r } = aa(), i = (i) => {
|
|
7071
7086
|
let a = i === "glass";
|
|
7072
7087
|
return /* @__PURE__ */ n("div", {
|
|
7073
7088
|
"aria-label": a ? "Overlay glass HUD" : "Default clay HUD",
|
|
7074
7089
|
className: [
|
|
7075
7090
|
"game-ui-stage-world",
|
|
7076
7091
|
"game-ui-overlay-glass-proof",
|
|
7077
|
-
a ?
|
|
7092
|
+
a ? ea.scopeClass : void 0
|
|
7078
7093
|
].filter(Boolean).join(" "),
|
|
7079
7094
|
...a ? {
|
|
7080
|
-
[
|
|
7081
|
-
[
|
|
7095
|
+
[ea.toneAttr]: ea.toneGlass,
|
|
7096
|
+
[ea.densityAttr]: ea.densityCompact
|
|
7082
7097
|
} : {},
|
|
7083
|
-
children: [/* @__PURE__ */ t(
|
|
7098
|
+
children: [/* @__PURE__ */ t(kr, {
|
|
7084
7099
|
label: e.label,
|
|
7085
7100
|
items: [
|
|
7086
7101
|
{
|
|
@@ -7103,15 +7118,15 @@ function ua() {
|
|
|
7103
7118
|
value: "02:46"
|
|
7104
7119
|
}
|
|
7105
7120
|
],
|
|
7106
|
-
actions: /* @__PURE__ */ n(
|
|
7121
|
+
actions: /* @__PURE__ */ n(Yn, {
|
|
7107
7122
|
label: e.tools,
|
|
7108
|
-
children: [/* @__PURE__ */ t(
|
|
7123
|
+
children: [/* @__PURE__ */ t(Xn, {
|
|
7109
7124
|
label: e.history,
|
|
7110
7125
|
children: /* @__PURE__ */ t($, {
|
|
7111
7126
|
icon: "scroll",
|
|
7112
7127
|
size: "sm"
|
|
7113
7128
|
})
|
|
7114
|
-
}), /* @__PURE__ */ t(
|
|
7129
|
+
}), /* @__PURE__ */ t(Xn, {
|
|
7115
7130
|
label: e.settings,
|
|
7116
7131
|
children: /* @__PURE__ */ t($, {
|
|
7117
7132
|
icon: "settings",
|
|
@@ -7132,7 +7147,7 @@ function ua() {
|
|
|
7132
7147
|
tone: "success",
|
|
7133
7148
|
children: r.readyBadge
|
|
7134
7149
|
}),
|
|
7135
|
-
/* @__PURE__ */ t(
|
|
7150
|
+
/* @__PURE__ */ t(Kr, {
|
|
7136
7151
|
label: e.reveal,
|
|
7137
7152
|
value: 68
|
|
7138
7153
|
})
|
|
@@ -7170,22 +7185,22 @@ function ua() {
|
|
|
7170
7185
|
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t("strong", { children: "Overlay glass + compact" }), /* @__PURE__ */ n("span", {
|
|
7171
7186
|
className: "game-ui-small-copy",
|
|
7172
7187
|
children: [
|
|
7173
|
-
|
|
7188
|
+
ea.toneAttr,
|
|
7174
7189
|
"=\"",
|
|
7175
|
-
|
|
7190
|
+
ea.toneGlass,
|
|
7176
7191
|
"\" ·",
|
|
7177
7192
|
" ",
|
|
7178
|
-
|
|
7193
|
+
ea.densityAttr,
|
|
7179
7194
|
"=\"",
|
|
7180
|
-
|
|
7195
|
+
ea.densityCompact,
|
|
7181
7196
|
"\""
|
|
7182
7197
|
]
|
|
7183
7198
|
})] }), i("glass")]
|
|
7184
7199
|
})]
|
|
7185
7200
|
});
|
|
7186
7201
|
}
|
|
7187
|
-
function
|
|
7188
|
-
let { liquidMetal: e } =
|
|
7202
|
+
function pa() {
|
|
7203
|
+
let { liquidMetal: e } = aa();
|
|
7189
7204
|
return /* @__PURE__ */ n("div", {
|
|
7190
7205
|
className: "game-ui-liquid-metal-compare",
|
|
7191
7206
|
children: [/* @__PURE__ */ t(X, {
|
|
@@ -7193,7 +7208,7 @@ function da() {
|
|
|
7193
7208
|
tone: "strong",
|
|
7194
7209
|
children: /* @__PURE__ */ t("div", {
|
|
7195
7210
|
className: "game-ui-liquid-metal-stage",
|
|
7196
|
-
children: /* @__PURE__ */ t(
|
|
7211
|
+
children: /* @__PURE__ */ t(ge, {
|
|
7197
7212
|
renderer: "css",
|
|
7198
7213
|
children: e.cta
|
|
7199
7214
|
})
|
|
@@ -7203,7 +7218,7 @@ function da() {
|
|
|
7203
7218
|
tone: "strong",
|
|
7204
7219
|
children: /* @__PURE__ */ t("div", {
|
|
7205
7220
|
className: "game-ui-liquid-metal-stage",
|
|
7206
|
-
children: /* @__PURE__ */ t(
|
|
7221
|
+
children: /* @__PURE__ */ t(ge, {
|
|
7207
7222
|
renderer: "webgl",
|
|
7208
7223
|
children: e.cta
|
|
7209
7224
|
})
|
|
@@ -7211,13 +7226,13 @@ function da() {
|
|
|
7211
7226
|
})]
|
|
7212
7227
|
});
|
|
7213
7228
|
}
|
|
7214
|
-
function
|
|
7215
|
-
let { modals: e } =
|
|
7229
|
+
function ma() {
|
|
7230
|
+
let { modals: e } = aa();
|
|
7216
7231
|
return /* @__PURE__ */ n("div", {
|
|
7217
7232
|
className: "game-ui-preview-two-up",
|
|
7218
|
-
children: [/* @__PURE__ */ n(
|
|
7233
|
+
children: [/* @__PURE__ */ n(qn, {
|
|
7219
7234
|
title: e.dialogTitle,
|
|
7220
|
-
children: [/* @__PURE__ */ t("p", { children: e.dialogBody }), /* @__PURE__ */ n(
|
|
7235
|
+
children: [/* @__PURE__ */ t("p", { children: e.dialogBody }), /* @__PURE__ */ n(Yn, {
|
|
7221
7236
|
label: e.actionsLabel,
|
|
7222
7237
|
children: [/* @__PURE__ */ t(w, {
|
|
7223
7238
|
variant: "primary",
|
|
@@ -7231,16 +7246,16 @@ function fa() {
|
|
|
7231
7246
|
title: e.panelTitle,
|
|
7232
7247
|
tone: "strong",
|
|
7233
7248
|
children: [
|
|
7234
|
-
/* @__PURE__ */ t(
|
|
7249
|
+
/* @__PURE__ */ t(ir, {
|
|
7235
7250
|
tone: "success",
|
|
7236
7251
|
children: e.toastOk
|
|
7237
7252
|
}),
|
|
7238
|
-
/* @__PURE__ */ t(
|
|
7253
|
+
/* @__PURE__ */ t(ir, {
|
|
7239
7254
|
tone: "danger",
|
|
7240
7255
|
children: e.toastErr
|
|
7241
7256
|
}),
|
|
7242
|
-
/* @__PURE__ */ t(
|
|
7243
|
-
/* @__PURE__ */ t(
|
|
7257
|
+
/* @__PURE__ */ t(Fr, { label: e.loading }),
|
|
7258
|
+
/* @__PURE__ */ t(Fr, {
|
|
7244
7259
|
label: e.loadingErr,
|
|
7245
7260
|
tone: "error"
|
|
7246
7261
|
})
|
|
@@ -7248,14 +7263,14 @@ function fa() {
|
|
|
7248
7263
|
})]
|
|
7249
7264
|
});
|
|
7250
7265
|
}
|
|
7251
|
-
function
|
|
7252
|
-
let { cards: e } =
|
|
7266
|
+
function ha() {
|
|
7267
|
+
let { cards: e } = aa();
|
|
7253
7268
|
return /* @__PURE__ */ n("div", {
|
|
7254
7269
|
className: "game-ui-preview-two-up",
|
|
7255
7270
|
children: [/* @__PURE__ */ t(X, {
|
|
7256
7271
|
title: e.fanTitle,
|
|
7257
7272
|
tone: "strong",
|
|
7258
|
-
children: /* @__PURE__ */ t(
|
|
7273
|
+
children: /* @__PURE__ */ t(Ar, {
|
|
7259
7274
|
label: e.fanLabel,
|
|
7260
7275
|
cards: [
|
|
7261
7276
|
{
|
|
@@ -7287,16 +7302,16 @@ function pa() {
|
|
|
7287
7302
|
}), /* @__PURE__ */ n("div", {
|
|
7288
7303
|
className: "game-ui-asset-path-grid",
|
|
7289
7304
|
children: [
|
|
7290
|
-
/* @__PURE__ */ t("code", { children:
|
|
7291
|
-
/* @__PURE__ */ t("code", { children:
|
|
7292
|
-
/* @__PURE__ */ t("code", { children:
|
|
7293
|
-
/* @__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 })
|
|
7294
7309
|
]
|
|
7295
7310
|
})]
|
|
7296
7311
|
})]
|
|
7297
7312
|
});
|
|
7298
7313
|
}
|
|
7299
|
-
var
|
|
7314
|
+
var ga = [
|
|
7300
7315
|
{
|
|
7301
7316
|
id: "terrain",
|
|
7302
7317
|
label: "Terrain",
|
|
@@ -7312,7 +7327,7 @@ var ma = [
|
|
|
7312
7327
|
label: "Place",
|
|
7313
7328
|
icon: "gem"
|
|
7314
7329
|
}
|
|
7315
|
-
],
|
|
7330
|
+
], _a = [
|
|
7316
7331
|
{
|
|
7317
7332
|
id: "raise",
|
|
7318
7333
|
label: "Raise",
|
|
@@ -7338,7 +7353,7 @@ var ma = [
|
|
|
7338
7353
|
label: "Paint",
|
|
7339
7354
|
shortcut: "5"
|
|
7340
7355
|
}
|
|
7341
|
-
],
|
|
7356
|
+
], va = [
|
|
7342
7357
|
{
|
|
7343
7358
|
id: "grass",
|
|
7344
7359
|
label: "Grass",
|
|
@@ -7354,7 +7369,7 @@ var ma = [
|
|
|
7354
7369
|
label: "Path",
|
|
7355
7370
|
color: "#b98d5d"
|
|
7356
7371
|
}
|
|
7357
|
-
],
|
|
7372
|
+
], ya = [{
|
|
7358
7373
|
id: "foundation",
|
|
7359
7374
|
label: "Foundation",
|
|
7360
7375
|
icon: "home",
|
|
@@ -7373,10 +7388,10 @@ var ma = [
|
|
|
7373
7388
|
status: "ready"
|
|
7374
7389
|
}]
|
|
7375
7390
|
}];
|
|
7376
|
-
function
|
|
7391
|
+
function ba() {
|
|
7377
7392
|
return /* @__PURE__ */ n("div", {
|
|
7378
7393
|
className: "game-ui-preview-two-up",
|
|
7379
|
-
children: [/* @__PURE__ */ t(
|
|
7394
|
+
children: [/* @__PURE__ */ t(wi, {
|
|
7380
7395
|
activeBuildCategoryId: "foundation",
|
|
7381
7396
|
activeMaterialId: "grass",
|
|
7382
7397
|
activeModeId: "terrain",
|
|
@@ -7385,10 +7400,10 @@ function va() {
|
|
|
7385
7400
|
radius: 2.75,
|
|
7386
7401
|
strength: .45
|
|
7387
7402
|
},
|
|
7388
|
-
buildCategories:
|
|
7403
|
+
buildCategories: ya,
|
|
7389
7404
|
label: "Desktop terrain and build tools",
|
|
7390
|
-
materials:
|
|
7391
|
-
modes:
|
|
7405
|
+
materials: va,
|
|
7406
|
+
modes: ga,
|
|
7392
7407
|
selectedBuildItemId: "floor-2x2",
|
|
7393
7408
|
status: {
|
|
7394
7409
|
label: "Ready",
|
|
@@ -7399,12 +7414,12 @@ function va() {
|
|
|
7399
7414
|
progressValue: 68
|
|
7400
7415
|
},
|
|
7401
7416
|
title: "Island tools",
|
|
7402
|
-
tools:
|
|
7417
|
+
tools: _a,
|
|
7403
7418
|
undoRedo: {
|
|
7404
7419
|
canRedo: !1,
|
|
7405
7420
|
canUndo: !0
|
|
7406
7421
|
}
|
|
7407
|
-
}), /* @__PURE__ */ t(
|
|
7422
|
+
}), /* @__PURE__ */ t(wi, {
|
|
7408
7423
|
activeBuildCategoryId: "foundation",
|
|
7409
7424
|
activeMaterialId: "path",
|
|
7410
7425
|
activeModeId: "terrain",
|
|
@@ -7413,11 +7428,11 @@ function va() {
|
|
|
7413
7428
|
radius: 1.5,
|
|
7414
7429
|
strength: .3
|
|
7415
7430
|
},
|
|
7416
|
-
buildCategories:
|
|
7431
|
+
buildCategories: ya,
|
|
7417
7432
|
drawerOpen: !0,
|
|
7418
7433
|
label: "Small mobile terrain drawer",
|
|
7419
|
-
materials:
|
|
7420
|
-
modes:
|
|
7434
|
+
materials: va,
|
|
7435
|
+
modes: ga,
|
|
7421
7436
|
selectedBuildItemId: "floor-2x2",
|
|
7422
7437
|
status: {
|
|
7423
7438
|
label: "Blocked",
|
|
@@ -7425,7 +7440,7 @@ function va() {
|
|
|
7425
7440
|
description: "This edit would bury a placed object."
|
|
7426
7441
|
},
|
|
7427
7442
|
title: "Tools",
|
|
7428
|
-
tools:
|
|
7443
|
+
tools: _a,
|
|
7429
7444
|
undoRedo: {
|
|
7430
7445
|
canRedo: !0,
|
|
7431
7446
|
canUndo: !0
|
|
@@ -7434,7 +7449,7 @@ function va() {
|
|
|
7434
7449
|
})]
|
|
7435
7450
|
});
|
|
7436
7451
|
}
|
|
7437
|
-
function
|
|
7452
|
+
function xa({ label: e, mode: r }) {
|
|
7438
7453
|
return /* @__PURE__ */ n("div", {
|
|
7439
7454
|
className: "game-ui-construction-preview-card",
|
|
7440
7455
|
"data-preview": r,
|
|
@@ -7448,7 +7463,7 @@ function ya({ label: e, mode: r }) {
|
|
|
7448
7463
|
]
|
|
7449
7464
|
});
|
|
7450
7465
|
}
|
|
7451
|
-
var
|
|
7466
|
+
var Sa = [
|
|
7452
7467
|
{
|
|
7453
7468
|
id: "preview-deck",
|
|
7454
7469
|
title: "Deck robot crew",
|
|
@@ -7509,7 +7524,7 @@ var ba = [
|
|
|
7509
7524
|
before: {
|
|
7510
7525
|
label: "Before",
|
|
7511
7526
|
caption: "Uneven terrain pad.",
|
|
7512
|
-
content: /* @__PURE__ */ t(
|
|
7527
|
+
content: /* @__PURE__ */ t(xa, {
|
|
7513
7528
|
label: "Rough pad",
|
|
7514
7529
|
mode: "before"
|
|
7515
7530
|
})
|
|
@@ -7517,7 +7532,7 @@ var ba = [
|
|
|
7517
7532
|
after: {
|
|
7518
7533
|
label: "After",
|
|
7519
7534
|
caption: "Flattened foundation pad with safe clearance.",
|
|
7520
|
-
content: /* @__PURE__ */ t(
|
|
7535
|
+
content: /* @__PURE__ */ t(xa, {
|
|
7521
7536
|
label: "Foundation ready",
|
|
7522
7537
|
mode: "after"
|
|
7523
7538
|
})
|
|
@@ -7546,19 +7561,19 @@ var ba = [
|
|
|
7546
7561
|
}]
|
|
7547
7562
|
}
|
|
7548
7563
|
];
|
|
7549
|
-
function
|
|
7564
|
+
function Ca() {
|
|
7550
7565
|
return /* @__PURE__ */ n("div", {
|
|
7551
7566
|
className: "game-ui-preview-two-up",
|
|
7552
|
-
children: [/* @__PURE__ */ t(
|
|
7553
|
-
jobs:
|
|
7567
|
+
children: [/* @__PURE__ */ t(Wi, {
|
|
7568
|
+
jobs: Sa,
|
|
7554
7569
|
label: "AI contractor jobs",
|
|
7555
7570
|
selectedJobId: "review-house-pad",
|
|
7556
7571
|
subtitle: "Official contractor UI covers drafts, previews, robot work, validation, review, and local-only provider boundaries.",
|
|
7557
7572
|
title: "AI contractor",
|
|
7558
7573
|
variant: "desktop"
|
|
7559
|
-
}), /* @__PURE__ */ t(
|
|
7574
|
+
}), /* @__PURE__ */ t(Wi, {
|
|
7560
7575
|
drawerOpen: !0,
|
|
7561
|
-
jobs:
|
|
7576
|
+
jobs: Sa,
|
|
7562
7577
|
label: "Small mobile contractor jobs",
|
|
7563
7578
|
selectedJobId: "blocked-fence",
|
|
7564
7579
|
title: "Contractor",
|
|
@@ -7566,10 +7581,10 @@ function xa() {
|
|
|
7566
7581
|
})]
|
|
7567
7582
|
});
|
|
7568
7583
|
}
|
|
7569
|
-
function
|
|
7570
|
-
return /* @__PURE__ */ t(
|
|
7584
|
+
function wa() {
|
|
7585
|
+
return /* @__PURE__ */ t(Jr, {
|
|
7571
7586
|
title: "OwnMySpace island editor preview",
|
|
7572
|
-
hud: /* @__PURE__ */ t(
|
|
7587
|
+
hud: /* @__PURE__ */ t(Xr, {
|
|
7573
7588
|
label: "Island facts",
|
|
7574
7589
|
facts: [
|
|
7575
7590
|
{
|
|
@@ -7593,11 +7608,11 @@ function Sa() {
|
|
|
7593
7608
|
}
|
|
7594
7609
|
]
|
|
7595
7610
|
}),
|
|
7596
|
-
movementPad: /* @__PURE__ */ t(
|
|
7611
|
+
movementPad: /* @__PURE__ */ t(ti, {
|
|
7597
7612
|
helpText: "WASD or arrows",
|
|
7598
7613
|
label: "Move avatar"
|
|
7599
7614
|
}),
|
|
7600
|
-
assetLibrary: /* @__PURE__ */ t(
|
|
7615
|
+
assetLibrary: /* @__PURE__ */ t(oi, {
|
|
7601
7616
|
label: "Placeable assets",
|
|
7602
7617
|
title: "Assets",
|
|
7603
7618
|
subtitle: "Starter, generated, and imported assets stay visibly distinct but share one placement path.",
|
|
@@ -7644,7 +7659,7 @@ function Sa() {
|
|
|
7644
7659
|
}
|
|
7645
7660
|
]
|
|
7646
7661
|
}),
|
|
7647
|
-
bottomBar: /* @__PURE__ */ t(
|
|
7662
|
+
bottomBar: /* @__PURE__ */ t(si, {
|
|
7648
7663
|
title: "Placement",
|
|
7649
7664
|
selectedTitle: "Manual chair",
|
|
7650
7665
|
placedObjects: 3,
|
|
@@ -7680,7 +7695,7 @@ function Sa() {
|
|
|
7680
7695
|
})
|
|
7681
7696
|
});
|
|
7682
7697
|
}
|
|
7683
|
-
var
|
|
7698
|
+
var Ta = [{
|
|
7684
7699
|
id: "starter",
|
|
7685
7700
|
label: "Starter pieces",
|
|
7686
7701
|
source: "starter",
|
|
@@ -7711,7 +7726,7 @@ var Ca = [{
|
|
|
7711
7726
|
}
|
|
7712
7727
|
]
|
|
7713
7728
|
}];
|
|
7714
|
-
function
|
|
7729
|
+
function Ea() {
|
|
7715
7730
|
return /* @__PURE__ */ t("div", {
|
|
7716
7731
|
className: "game-ui-asset-compression-repro",
|
|
7717
7732
|
"aria-label": "Asset card compression repro",
|
|
@@ -7735,9 +7750,9 @@ function wa() {
|
|
|
7735
7750
|
className: "game-ui-asset-compression-repro-surface",
|
|
7736
7751
|
"data-repro-surface": e.id,
|
|
7737
7752
|
style: { "--repro-width": e.width },
|
|
7738
|
-
children: [/* @__PURE__ */ t(Q, { children: e.label }), /* @__PURE__ */ t(
|
|
7753
|
+
children: [/* @__PURE__ */ t(Q, { children: e.label }), /* @__PURE__ */ t(oi, {
|
|
7739
7754
|
density: "dense",
|
|
7740
|
-
groups:
|
|
7755
|
+
groups: Ta,
|
|
7741
7756
|
label: `${e.label} assets`,
|
|
7742
7757
|
selectedAssetId: "asset-repro-chair",
|
|
7743
7758
|
title: "Build"
|
|
@@ -7745,13 +7760,13 @@ function wa() {
|
|
|
7745
7760
|
}, e.id))
|
|
7746
7761
|
});
|
|
7747
7762
|
}
|
|
7748
|
-
function
|
|
7749
|
-
let { firstSession: e } =
|
|
7763
|
+
function Da() {
|
|
7764
|
+
let { firstSession: e } = aa();
|
|
7750
7765
|
return /* @__PURE__ */ n("div", {
|
|
7751
7766
|
className: "game-ui-first-session-preview",
|
|
7752
7767
|
children: [/* @__PURE__ */ t("div", {
|
|
7753
7768
|
className: "game-ui-first-session-world",
|
|
7754
|
-
children: /* @__PURE__ */ t(
|
|
7769
|
+
children: /* @__PURE__ */ t(Rr, {
|
|
7755
7770
|
authenticated: !0,
|
|
7756
7771
|
batteryCount: 5,
|
|
7757
7772
|
dailyStreak: 3,
|
|
@@ -7785,7 +7800,7 @@ function Ta() {
|
|
|
7785
7800
|
})
|
|
7786
7801
|
}), /* @__PURE__ */ t("div", {
|
|
7787
7802
|
className: "game-ui-first-session-modal-slot",
|
|
7788
|
-
children: /* @__PURE__ */ t(
|
|
7803
|
+
children: /* @__PURE__ */ t(zr, {
|
|
7789
7804
|
open: !0,
|
|
7790
7805
|
onDismiss: () => void 0,
|
|
7791
7806
|
labels: {
|
|
@@ -7813,46 +7828,46 @@ function Ta() {
|
|
|
7813
7828
|
})]
|
|
7814
7829
|
});
|
|
7815
7830
|
}
|
|
7816
|
-
function
|
|
7817
|
-
let { responsive: e } =
|
|
7831
|
+
function Oa() {
|
|
7832
|
+
let { responsive: e } = aa();
|
|
7818
7833
|
return /* @__PURE__ */ n("div", {
|
|
7819
7834
|
className: "game-ui-proof-frames",
|
|
7820
7835
|
children: [/* @__PURE__ */ n("article", {
|
|
7821
7836
|
className: "game-ui-proof-frame is-desktop",
|
|
7822
|
-
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, {})]
|
|
7823
7838
|
}), /* @__PURE__ */ n("article", {
|
|
7824
7839
|
className: "game-ui-proof-frame is-mobile-landscape",
|
|
7825
|
-
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, {})]
|
|
7826
7841
|
})]
|
|
7827
7842
|
});
|
|
7828
7843
|
}
|
|
7829
|
-
function
|
|
7830
|
-
let { forms: e } =
|
|
7844
|
+
function ka() {
|
|
7845
|
+
let { forms: e } = aa();
|
|
7831
7846
|
return /* @__PURE__ */ n("div", {
|
|
7832
7847
|
className: "game-ui-preview-two-up",
|
|
7833
7848
|
children: [/* @__PURE__ */ n(X, {
|
|
7834
7849
|
title: e.formsTitle,
|
|
7835
7850
|
tone: "strong",
|
|
7836
7851
|
children: [
|
|
7837
|
-
/* @__PURE__ */ t(
|
|
7852
|
+
/* @__PURE__ */ t(Hr, {
|
|
7838
7853
|
hint: e.roomCodeHint,
|
|
7839
7854
|
label: e.roomCodeLabel,
|
|
7840
|
-
children: /* @__PURE__ */ t(
|
|
7855
|
+
children: /* @__PURE__ */ t(Br, { placeholder: e.roomCodePlaceholder })
|
|
7841
7856
|
}),
|
|
7842
|
-
/* @__PURE__ */ t(
|
|
7857
|
+
/* @__PURE__ */ t(Hr, {
|
|
7843
7858
|
label: e.nameLabel,
|
|
7844
7859
|
required: !0,
|
|
7845
|
-
children: /* @__PURE__ */ t(
|
|
7860
|
+
children: /* @__PURE__ */ t(Br, { placeholder: e.namePlaceholder })
|
|
7846
7861
|
}),
|
|
7847
|
-
/* @__PURE__ */ t(
|
|
7862
|
+
/* @__PURE__ */ t(Hr, {
|
|
7848
7863
|
error: e.readError,
|
|
7849
7864
|
label: e.readLabel,
|
|
7850
|
-
children: /* @__PURE__ */ t(
|
|
7865
|
+
children: /* @__PURE__ */ t(Vr, {
|
|
7851
7866
|
invalid: !0,
|
|
7852
7867
|
placeholder: e.readPlaceholder
|
|
7853
7868
|
})
|
|
7854
7869
|
}),
|
|
7855
|
-
/* @__PURE__ */ t(
|
|
7870
|
+
/* @__PURE__ */ t(Ur, {
|
|
7856
7871
|
defaultChecked: !0,
|
|
7857
7872
|
label: e.rememberLabel
|
|
7858
7873
|
})
|
|
@@ -7864,38 +7879,38 @@ function Da() {
|
|
|
7864
7879
|
/* @__PURE__ */ n("div", {
|
|
7865
7880
|
className: "game-ui-component-row",
|
|
7866
7881
|
children: [
|
|
7867
|
-
/* @__PURE__ */ t(
|
|
7882
|
+
/* @__PURE__ */ t(Gr, {
|
|
7868
7883
|
name: "Mika Ono",
|
|
7869
7884
|
status: "online"
|
|
7870
7885
|
}),
|
|
7871
|
-
/* @__PURE__ */ t(
|
|
7886
|
+
/* @__PURE__ */ t(Gr, {
|
|
7872
7887
|
name: "River",
|
|
7873
7888
|
size: "lg",
|
|
7874
7889
|
status: "busy"
|
|
7875
7890
|
}),
|
|
7876
|
-
/* @__PURE__ */ t(
|
|
7891
|
+
/* @__PURE__ */ t(Gr, {
|
|
7877
7892
|
name: "Noa",
|
|
7878
7893
|
status: "away"
|
|
7879
7894
|
}),
|
|
7880
|
-
/* @__PURE__ */ t(
|
|
7895
|
+
/* @__PURE__ */ t(Gr, {
|
|
7881
7896
|
name: e.guestName,
|
|
7882
7897
|
size: "sm"
|
|
7883
7898
|
})
|
|
7884
7899
|
]
|
|
7885
7900
|
}),
|
|
7886
|
-
/* @__PURE__ */ t(
|
|
7901
|
+
/* @__PURE__ */ t(Kr, {
|
|
7887
7902
|
label: e.revealLabel,
|
|
7888
7903
|
showValue: !0,
|
|
7889
7904
|
value: 64
|
|
7890
7905
|
}),
|
|
7891
|
-
/* @__PURE__ */ t(
|
|
7906
|
+
/* @__PURE__ */ t(Kr, {
|
|
7892
7907
|
label: e.batteryLabel,
|
|
7893
7908
|
max: 20,
|
|
7894
7909
|
showValue: !0,
|
|
7895
7910
|
tone: "success",
|
|
7896
7911
|
value: 14
|
|
7897
7912
|
}),
|
|
7898
|
-
/* @__PURE__ */ t(
|
|
7913
|
+
/* @__PURE__ */ t(qr, {
|
|
7899
7914
|
action: /* @__PURE__ */ t(w, {
|
|
7900
7915
|
variant: "primary",
|
|
7901
7916
|
children: e.emptyCta
|
|
@@ -7908,8 +7923,8 @@ function Da() {
|
|
|
7908
7923
|
})]
|
|
7909
7924
|
});
|
|
7910
7925
|
}
|
|
7911
|
-
var
|
|
7912
|
-
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 }) {
|
|
7913
7928
|
return /* @__PURE__ */ t("div", {
|
|
7914
7929
|
className: "game-ui-icon-grid",
|
|
7915
7930
|
children: e.map((e) => /* @__PURE__ */ n("figure", {
|
|
@@ -7922,10 +7937,10 @@ function Aa({ names: e, style: r }) {
|
|
|
7922
7937
|
}, `${r}-${e}`))
|
|
7923
7938
|
});
|
|
7924
7939
|
}
|
|
7925
|
-
function
|
|
7940
|
+
function Na() {
|
|
7926
7941
|
return /* @__PURE__ */ t("div", {
|
|
7927
7942
|
className: "game-ui-icon-grid",
|
|
7928
|
-
children:
|
|
7943
|
+
children: mr.map((e) => /* @__PURE__ */ n("figure", {
|
|
7929
7944
|
className: "game-ui-icon-cell",
|
|
7930
7945
|
children: [/* @__PURE__ */ t("span", {
|
|
7931
7946
|
className: "game-ui-asset-icon",
|
|
@@ -7934,14 +7949,14 @@ function ja() {
|
|
|
7934
7949
|
"aria-hidden": !0,
|
|
7935
7950
|
children: /* @__PURE__ */ t("img", {
|
|
7936
7951
|
alt: "",
|
|
7937
|
-
src:
|
|
7952
|
+
src: pr[e]
|
|
7938
7953
|
})
|
|
7939
7954
|
}), /* @__PURE__ */ t("figcaption", { children: e })]
|
|
7940
7955
|
}, `sprite-${e}`))
|
|
7941
7956
|
});
|
|
7942
7957
|
}
|
|
7943
|
-
function
|
|
7944
|
-
let { gallery: e } =
|
|
7958
|
+
function Pa() {
|
|
7959
|
+
let { gallery: e } = aa();
|
|
7945
7960
|
return /* @__PURE__ */ n("div", {
|
|
7946
7961
|
className: "game-ui-icon-gallery",
|
|
7947
7962
|
children: [
|
|
@@ -7956,8 +7971,8 @@ function Ma() {
|
|
|
7956
7971
|
className: "game-ui-small-copy",
|
|
7957
7972
|
children: e.gameHint
|
|
7958
7973
|
})]
|
|
7959
|
-
}), /* @__PURE__ */ t(
|
|
7960
|
-
names:
|
|
7974
|
+
}), /* @__PURE__ */ t(Ma, {
|
|
7975
|
+
names: Aa,
|
|
7961
7976
|
style: "game"
|
|
7962
7977
|
})]
|
|
7963
7978
|
}),
|
|
@@ -7969,8 +7984,8 @@ function Ma() {
|
|
|
7969
7984
|
className: "game-ui-small-copy",
|
|
7970
7985
|
children: e.lineHint
|
|
7971
7986
|
})]
|
|
7972
|
-
}), /* @__PURE__ */ t(
|
|
7973
|
-
names:
|
|
7987
|
+
}), /* @__PURE__ */ t(Ma, {
|
|
7988
|
+
names: ja,
|
|
7974
7989
|
style: "line"
|
|
7975
7990
|
})]
|
|
7976
7991
|
}),
|
|
@@ -7985,16 +8000,16 @@ function Ma() {
|
|
|
7985
8000
|
className: "game-ui-small-copy",
|
|
7986
8001
|
children: e.spriteHint
|
|
7987
8002
|
})]
|
|
7988
|
-
}), /* @__PURE__ */ t(
|
|
8003
|
+
}), /* @__PURE__ */ t(Na, {})]
|
|
7989
8004
|
})
|
|
7990
8005
|
]
|
|
7991
8006
|
});
|
|
7992
8007
|
}
|
|
7993
|
-
function
|
|
7994
|
-
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;
|
|
7995
8010
|
return l(() => (document.documentElement.dataset.gameUiPreview = "clay", () => {
|
|
7996
8011
|
delete document.documentElement.dataset.gameUiPreview;
|
|
7997
|
-
}), []), /* @__PURE__ */ t(
|
|
8012
|
+
}), []), /* @__PURE__ */ t(ia.Provider, {
|
|
7998
8013
|
value: o,
|
|
7999
8014
|
children: /* @__PURE__ */ n("main", {
|
|
8000
8015
|
"aria-label": "Swimmer UI Kit clay preview",
|
|
@@ -8007,7 +8022,7 @@ function Na({ title: e, body: r }) {
|
|
|
8007
8022
|
tone: "ai",
|
|
8008
8023
|
children: "@pieai/swimmer-ui-kit"
|
|
8009
8024
|
}),
|
|
8010
|
-
/* @__PURE__ */ t(
|
|
8025
|
+
/* @__PURE__ */ t(Pr, {
|
|
8011
8026
|
currentLabel: o.triggerLabel,
|
|
8012
8027
|
label: o.langMenuLabel,
|
|
8013
8028
|
onSelect: (e) => a(e),
|
|
@@ -8034,10 +8049,10 @@ function Na({ title: e, body: r }) {
|
|
|
8034
8049
|
id: "game-ui-preview-token-title",
|
|
8035
8050
|
children: o.sections.tokens
|
|
8036
8051
|
}),
|
|
8037
|
-
/* @__PURE__ */ t(
|
|
8052
|
+
/* @__PURE__ */ t(ca, {}),
|
|
8038
8053
|
/* @__PURE__ */ t("div", {
|
|
8039
8054
|
className: "game-ui-token-ledger",
|
|
8040
|
-
children:
|
|
8055
|
+
children: oa.map((e) => /* @__PURE__ */ t(sa, {
|
|
8041
8056
|
id: e.id,
|
|
8042
8057
|
label: o.tokenGroups[e.id] ?? e.id,
|
|
8043
8058
|
tokens: e.tokens
|
|
@@ -8057,7 +8072,7 @@ function Na({ title: e, body: r }) {
|
|
|
8057
8072
|
className: "game-ui-small-copy",
|
|
8058
8073
|
children: o.iconsIntro
|
|
8059
8074
|
}),
|
|
8060
|
-
/* @__PURE__ */ t(
|
|
8075
|
+
/* @__PURE__ */ t(Pa, {})
|
|
8061
8076
|
]
|
|
8062
8077
|
}),
|
|
8063
8078
|
/* @__PURE__ */ n("section", {
|
|
@@ -8066,7 +8081,7 @@ function Na({ title: e, body: r }) {
|
|
|
8066
8081
|
children: [/* @__PURE__ */ t("h2", {
|
|
8067
8082
|
id: "game-ui-preview-type-title",
|
|
8068
8083
|
children: o.sections.typography
|
|
8069
|
-
}), /* @__PURE__ */ t(
|
|
8084
|
+
}), /* @__PURE__ */ t(la, {})]
|
|
8070
8085
|
}),
|
|
8071
8086
|
/* @__PURE__ */ n("section", {
|
|
8072
8087
|
"aria-labelledby": "game-ui-preview-components-title",
|
|
@@ -8076,11 +8091,11 @@ function Na({ title: e, body: r }) {
|
|
|
8076
8091
|
id: "game-ui-preview-components-title",
|
|
8077
8092
|
children: o.sections.components
|
|
8078
8093
|
}),
|
|
8079
|
-
/* @__PURE__ */ t(
|
|
8080
|
-
/* @__PURE__ */ t(
|
|
8081
|
-
/* @__PURE__ */ t(
|
|
8082
|
-
/* @__PURE__ */ t(
|
|
8083
|
-
/* @__PURE__ */ t(
|
|
8094
|
+
/* @__PURE__ */ t(ua, {}),
|
|
8095
|
+
/* @__PURE__ */ t(da, {}),
|
|
8096
|
+
/* @__PURE__ */ t(ma, {}),
|
|
8097
|
+
/* @__PURE__ */ t(ha, {}),
|
|
8098
|
+
/* @__PURE__ */ t(Jn, {
|
|
8084
8099
|
entries: o.history,
|
|
8085
8100
|
label: o.historyLabel
|
|
8086
8101
|
})
|
|
@@ -8092,7 +8107,7 @@ function Na({ title: e, body: r }) {
|
|
|
8092
8107
|
children: [/* @__PURE__ */ t("h2", {
|
|
8093
8108
|
id: "game-ui-preview-forms-title",
|
|
8094
8109
|
children: o.sections.forms
|
|
8095
|
-
}), /* @__PURE__ */ t(
|
|
8110
|
+
}), /* @__PURE__ */ t(ka, {})]
|
|
8096
8111
|
}),
|
|
8097
8112
|
/* @__PURE__ */ n("section", {
|
|
8098
8113
|
"aria-labelledby": "game-ui-preview-overlay-glass-title",
|
|
@@ -8106,7 +8121,7 @@ function Na({ title: e, body: r }) {
|
|
|
8106
8121
|
className: "game-ui-small-copy",
|
|
8107
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."
|
|
8108
8123
|
}),
|
|
8109
|
-
/* @__PURE__ */ t(
|
|
8124
|
+
/* @__PURE__ */ t(fa, {})
|
|
8110
8125
|
]
|
|
8111
8126
|
}),
|
|
8112
8127
|
/* @__PURE__ */ n("section", {
|
|
@@ -8121,7 +8136,7 @@ function Na({ title: e, body: r }) {
|
|
|
8121
8136
|
className: "game-ui-small-copy",
|
|
8122
8137
|
children: o.liquidMetal.body
|
|
8123
8138
|
}),
|
|
8124
|
-
/* @__PURE__ */ t(
|
|
8139
|
+
/* @__PURE__ */ t(pa, {})
|
|
8125
8140
|
]
|
|
8126
8141
|
}),
|
|
8127
8142
|
/* @__PURE__ */ n("section", {
|
|
@@ -8130,7 +8145,7 @@ function Na({ title: e, body: r }) {
|
|
|
8130
8145
|
children: [/* @__PURE__ */ t("h2", {
|
|
8131
8146
|
id: "game-ui-preview-ownmyspace-title",
|
|
8132
8147
|
children: "OwnMySpace game surface pack"
|
|
8133
|
-
}), /* @__PURE__ */ t(
|
|
8148
|
+
}), /* @__PURE__ */ t(wa, {})]
|
|
8134
8149
|
}),
|
|
8135
8150
|
/* @__PURE__ */ n("section", {
|
|
8136
8151
|
"aria-labelledby": "game-ui-preview-terrain-build-title",
|
|
@@ -8144,7 +8159,7 @@ function Na({ title: e, body: r }) {
|
|
|
8144
8159
|
className: "game-ui-small-copy",
|
|
8145
8160
|
children: "Official terrain controls cover mode, brush, material, undo/redo, build library, status, progress, and compact mobile drawer surfaces."
|
|
8146
8161
|
}),
|
|
8147
|
-
/* @__PURE__ */ t(
|
|
8162
|
+
/* @__PURE__ */ t(ba, {})
|
|
8148
8163
|
]
|
|
8149
8164
|
}),
|
|
8150
8165
|
/* @__PURE__ */ n("section", {
|
|
@@ -8159,7 +8174,7 @@ function Na({ title: e, body: r }) {
|
|
|
8159
8174
|
className: "game-ui-small-copy",
|
|
8160
8175
|
children: "Official construction surfaces cover job queue states, before/after review, robot crew status, validation warnings, approval actions, and local-only provider badges."
|
|
8161
8176
|
}),
|
|
8162
|
-
/* @__PURE__ */ t(
|
|
8177
|
+
/* @__PURE__ */ t(Ca, {})
|
|
8163
8178
|
]
|
|
8164
8179
|
}),
|
|
8165
8180
|
/* @__PURE__ */ n("section", {
|
|
@@ -8174,7 +8189,7 @@ function Na({ title: e, body: r }) {
|
|
|
8174
8189
|
className: "game-ui-small-copy",
|
|
8175
8190
|
children: "Official asset cards must stay visually complete when a game shell uses dense, narrow, or rail-style inventory slots."
|
|
8176
8191
|
}),
|
|
8177
|
-
/* @__PURE__ */ t(
|
|
8192
|
+
/* @__PURE__ */ t(Ea, {})
|
|
8178
8193
|
]
|
|
8179
8194
|
}),
|
|
8180
8195
|
/* @__PURE__ */ n("section", {
|
|
@@ -8183,7 +8198,7 @@ function Na({ title: e, body: r }) {
|
|
|
8183
8198
|
children: [/* @__PURE__ */ t("h2", {
|
|
8184
8199
|
id: "game-ui-preview-first-session-title",
|
|
8185
8200
|
children: o.sections.firstSession
|
|
8186
|
-
}), /* @__PURE__ */ t(
|
|
8201
|
+
}), /* @__PURE__ */ t(Da, {})]
|
|
8187
8202
|
}),
|
|
8188
8203
|
/* @__PURE__ */ n("section", {
|
|
8189
8204
|
"aria-labelledby": "game-ui-preview-orientation-title",
|
|
@@ -8191,7 +8206,7 @@ function Na({ title: e, body: r }) {
|
|
|
8191
8206
|
children: [/* @__PURE__ */ t("h2", {
|
|
8192
8207
|
id: "game-ui-preview-orientation-title",
|
|
8193
8208
|
children: o.sections.orientation
|
|
8194
|
-
}), /* @__PURE__ */ t(
|
|
8209
|
+
}), /* @__PURE__ */ t(Nr, {
|
|
8195
8210
|
badgeLabel: o.orientation.badge,
|
|
8196
8211
|
body: o.orientation.body,
|
|
8197
8212
|
cta: o.orientation.cta,
|
|
@@ -8206,11 +8221,11 @@ function Na({ title: e, body: r }) {
|
|
|
8206
8221
|
children: [/* @__PURE__ */ t("h2", {
|
|
8207
8222
|
id: "game-ui-preview-responsive-title",
|
|
8208
8223
|
children: o.sections.responsive
|
|
8209
|
-
}), /* @__PURE__ */ t(
|
|
8224
|
+
}), /* @__PURE__ */ t(Oa, {})]
|
|
8210
8225
|
})
|
|
8211
8226
|
]
|
|
8212
8227
|
})
|
|
8213
8228
|
});
|
|
8214
8229
|
}
|
|
8215
8230
|
//#endregion
|
|
8216
|
-
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 };
|