@pieai/swimmer-ui-kit 1.11.2 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +65 -0
- package/NOTICE +5 -2
- package/dist/index.d.ts +5 -2
- package/dist/index.js +904 -877
- package/dist/styles.css +1 -1
- package/donors-individual-lock.json +5 -3
- package/donors-individual.md +49 -4
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -90,21 +90,21 @@ function O() {
|
|
|
90
90
|
used: D
|
|
91
91
|
};
|
|
92
92
|
}
|
|
93
|
-
function
|
|
93
|
+
function ee(e) {
|
|
94
94
|
E = Number.isFinite(e) ? Math.max(0, Math.floor(e)) : 0;
|
|
95
95
|
}
|
|
96
|
-
function
|
|
96
|
+
function k() {
|
|
97
97
|
return D >= E ? !1 : (D += 1, !0);
|
|
98
98
|
}
|
|
99
|
-
function
|
|
99
|
+
function te() {
|
|
100
100
|
D > 0 && --D;
|
|
101
101
|
}
|
|
102
|
-
function
|
|
102
|
+
function ne(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 A = "#version 300 es\nin vec2 position; void main(){ gl_Position = vec4(position,0.,1.); }", j = "#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", M = `${j}
|
|
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
|
+
}`, re = `${j}
|
|
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
|
+
}`, ie = "#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}", ae = "#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}", N = `${j}
|
|
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
|
+
}`, oe = {
|
|
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
|
+
}, se = Object.keys(oe), ce = {
|
|
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
|
+
}, le = Object.keys(ce), ue = {
|
|
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
|
+
}, P = {
|
|
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 de(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 ue(e) {
|
|
|
424
424
|
1
|
|
425
425
|
];
|
|
426
426
|
}
|
|
427
|
-
function
|
|
427
|
+
function fe(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 pe(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 fe(e, t) {
|
|
|
440
440
|
i1: (t, r) => e.uniform1i(n(t), r)
|
|
441
441
|
};
|
|
442
442
|
}
|
|
443
|
-
function
|
|
443
|
+
function me(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 pe(e, t, n) {
|
|
|
456
456
|
if (!r) return null;
|
|
457
457
|
let i = r;
|
|
458
458
|
try {
|
|
459
|
-
return
|
|
459
|
+
return ge(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 he(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 F(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, he(e, e.VERTEX_SHADER, A)), e.attachShader(n, he(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 I(e, t) {
|
|
|
481
481
|
u: r
|
|
482
482
|
};
|
|
483
483
|
}
|
|
484
|
-
function
|
|
485
|
-
let i =
|
|
484
|
+
function ge(e, t, n, r) {
|
|
485
|
+
let i = F(e, re), a = F(e, M), o = F(e, ie), s = F(e, ae), c = F(e, N), 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 he(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 ee() {
|
|
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 he(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 k(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 te = new Float32Array(se.length), ne = new Float32Array(le.length), A = 0, j = 0, me = 0, he = performance.now(), ge = [
|
|
525
525
|
0,
|
|
526
526
|
1,
|
|
527
527
|
2
|
|
@@ -530,100 +530,100 @@ function he(e, t, n, r) {
|
|
|
530
530
|
y: 0,
|
|
531
531
|
t: -99,
|
|
532
532
|
on: 0
|
|
533
|
-
})),
|
|
533
|
+
})), I = /* @__PURE__ */ new Float32Array(12), L = 0, R = 0, z = 0, _e = {
|
|
534
534
|
x: 0,
|
|
535
535
|
y: 0
|
|
536
|
-
},
|
|
536
|
+
}, B = {
|
|
537
537
|
x: 0,
|
|
538
538
|
y: 0
|
|
539
|
-
},
|
|
539
|
+
}, V = 0, ve = 0, H = {
|
|
540
540
|
over: !1,
|
|
541
541
|
press: !1,
|
|
542
542
|
focus: !1
|
|
543
543
|
};
|
|
544
544
|
function U(e, t) {
|
|
545
|
-
let n =
|
|
546
|
-
n && (L = (L + 1) %
|
|
545
|
+
let n = ge[L];
|
|
546
|
+
n && (L = (L + 1) % ge.length, n.x = e, n.y = t, n.t = me, 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
|
+
j = 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 ce.base = fe(e, "--game-ui-liquid-metal-rest", ce.base), ce.speed = fe(e, "--game-ui-liquid-metal-sweep-speed", ce.speed), oe.disp = fe(e, "--game-ui-liquid-metal-dispersion", oe.disp), ue.glow = fe(e, "--game-ui-liquid-metal-bloom", ue.glow), { accent: de(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 - he) / 1e3;
|
|
563
|
+
he = t;
|
|
564
564
|
let l = Math.min(r, 1 / 20);
|
|
565
|
-
be.matches || (
|
|
566
|
-
let u =
|
|
567
|
-
|
|
565
|
+
be.matches || (me += l);
|
|
566
|
+
let u = j > A ? 1 - .0012 ** l : 1 - 12e-5 ** l;
|
|
567
|
+
A += (j - A) * u, Math.abs(j - A) < 8e-4 && (A = j);
|
|
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 < ge.length; e += 1) {
|
|
572
|
+
let t = ge[e];
|
|
573
|
+
t && (t.on && me - t.t > 4 && (t.on = 0), t.on && (f = !0), I[e * 4] = t.x, I[e * 4 + 1] = t.y, I[e * 4 + 2] = t.t, I[e * 4 + 3] = t.on);
|
|
574
574
|
}
|
|
575
|
-
let p = 1 -
|
|
576
|
-
|
|
577
|
-
let
|
|
578
|
-
ve += (
|
|
579
|
-
let
|
|
580
|
-
|
|
581
|
-
let
|
|
582
|
-
if (
|
|
575
|
+
let p = 1 - P.ptrLag ** +l, O = (_e.x - B.x) * p, M = (_e.y - B.y) * p;
|
|
576
|
+
B.x += O, B.y += M;
|
|
577
|
+
let re = Math.min(Math.hypot(O, M) / Math.max(l, .001) / P.ptrVref, 1);
|
|
578
|
+
ve += (re - ve) * (1 - (re > ve ? .001 : .02) ** l);
|
|
579
|
+
let ie = H.over || H.press ? 1 : 0;
|
|
580
|
+
V += (ie - V) * (1 - .004 ** l), Math.abs(ie - V) < .002 && (V = ie), H.over = n.matches(":hover"), H.focus = n.matches(":focus-visible"), ye(), D && ee();
|
|
581
|
+
let ae = be.matches && !f && V < .002 ? `${A}|${R}|${b}|${x}` : null;
|
|
582
|
+
if (ae !== null && ae === 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 = ae;
|
|
587
|
+
let { accent: N } = Te();
|
|
588
|
+
for (let e = 0; e < te.length; e += 1) {
|
|
589
|
+
let t = se[e];
|
|
590
|
+
t && (te[e] = oe[t]);
|
|
591
591
|
}
|
|
592
|
-
for (let e = 0; e <
|
|
593
|
-
let t =
|
|
594
|
-
t && (
|
|
592
|
+
for (let e = 0; e < ne.length; e += 1) {
|
|
593
|
+
let t = le[e];
|
|
594
|
+
t && (ne[e] = ce[t]);
|
|
595
595
|
}
|
|
596
|
-
let
|
|
597
|
-
e.useProgram(i.p),
|
|
598
|
-
let De =
|
|
596
|
+
let de = Math.max(C, 110), fe = Math.max(2.4, de / 516 * 3.2), F = pe(e, i.u), L = pe(e, a.u), U = pe(e, o.u), W = pe(e, s.u), G = pe(e, c.u);
|
|
597
|
+
e.useProgram(i.p), F.f2("uC", w, T), F.f2("uHalf", S / 2, C / 2), F.f1("uT", me), F.f1("uHover", A), F.f1("uPress", R), F.fv4("uRip", I), F.f4("uRipK", P.speed, P.width, P.decay, P.amp), F.f4("uRipK2", P.facet, P.lobes, P.sharp, P.emit), F.f4("uPtr", B.x, B.y, V, ve), F.f4("uPtrK", P.ptrRad, P.ptrAmp, P.ptrFast, P.ptrRim), F.f3("uAccent", N[0], N[1], N[2]), F.fv1("uP", te), k(m), e.useProgram(a.p), L.f2("uC", w, T), L.f2("uHalf", S / 2, C / 2), L.f1("uT", me), L.f1("uBw", fe), L.f1("uPress", R), L.fv4("uRip", I), L.f4("uRipK", P.speed, P.width, P.decay, P.amp), L.f4("uRipK2", P.facet, P.lobes, P.sharp, P.emit), L.f4("uPtr", B.x, B.y, V, ve), L.f4("uPtrK", P.ptrRad, P.ptrAmp, P.ptrFast, P.ptrRim), L.f3("uAccent", N[0], N[1], N[2]), L.fv1("uE", ne), k(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), k(g), e.useProgram(s.p), W.i1("uTex", 0), W.f2("uTexel", 1 / g.w, 1 / g.h);
|
|
598
|
+
let De = ue.soften * (de * .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), k(_), e.bindTexture(e.TEXTURE_2D, _.tex), W.f2("uDir", 0, 1), k(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), k(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 = ue.glowR * (de / 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), k(y), e.bindTexture(e.TEXTURE_2D, y.tex), W.f2("uDir", 0, 1), k(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", me), G.fv4("uRip", I), G.f4("uRipK", P.speed, P.width, P.decay, P.amp), G.f4("uRipK2", P.facet, P.lobes, P.sharp, P.emit), G.f3("uAccent", N[0], N[1], N[2]), G.f1("uGlowGain", ue.glow), G.f1("uGlowIn", ue.glowIn), G.f1("uOccl", ue.occl), G.f1("uDim", oe.dim), G.f1("uPunch", ue.punch), k(null), Se = requestAnimationFrame(Ee);
|
|
613
613
|
}
|
|
614
614
|
let G = (e) => {
|
|
615
615
|
if (e.pointerType !== "mouse") return;
|
|
616
616
|
let [t, n] = W(e);
|
|
617
|
-
|
|
617
|
+
_e.x = t, _e.y = n, B.x = t, B.y = n, ve = 0, H.over = !0, ye();
|
|
618
618
|
}, De = (e) => {
|
|
619
619
|
e.pointerType === "mouse" && (H.over = !1, ye());
|
|
620
620
|
}, Oe = (e) => {
|
|
621
621
|
if (!H.over && !H.press) return;
|
|
622
622
|
let [t, n] = W(e);
|
|
623
|
-
|
|
623
|
+
_e.x = t, _e.y = n;
|
|
624
624
|
}, ke = (e) => {
|
|
625
625
|
let [t, n] = W(e);
|
|
626
|
-
|
|
626
|
+
_e.x = t, _e.y = n, H.press = !0, ye(), U(t, n);
|
|
627
627
|
}, Ae = () => {
|
|
628
628
|
H.press = !1, ye();
|
|
629
629
|
}, je = () => {
|
|
@@ -639,12 +639,12 @@ function he(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), ee(), 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, he = 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 he(e, t, n, r) {
|
|
|
653
653
|
}
|
|
654
654
|
//#endregion
|
|
655
655
|
//#region src/LiquidMetalButton.tsx
|
|
656
|
-
function
|
|
656
|
+
function I({ 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 &&= (te(), !1), c || g("css");
|
|
663
663
|
}, p = () => {
|
|
664
|
-
if (!(c || o) &&
|
|
664
|
+
if (!(c || o) && ne({
|
|
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
|
+
}) && k()) {
|
|
670
|
+
if (a = !0, o = me(n, t, e), !o) {
|
|
671
|
+
te(), a = !1;
|
|
672
672
|
return;
|
|
673
673
|
}
|
|
674
674
|
g("webgl");
|
|
@@ -840,7 +840,7 @@ var L = {
|
|
|
840
840
|
dissolveStrength: "var(--game-ui-liquid-gooey-dissolve-strength)",
|
|
841
841
|
dissolveSink: "var(--game-ui-liquid-gooey-dissolve-sink)",
|
|
842
842
|
dissolveSeamBlur: "var(--game-ui-liquid-gooey-dissolve-seam-blur)"
|
|
843
|
-
},
|
|
843
|
+
}, _e = {
|
|
844
844
|
bg: "var(--game-ui-overlay-glass-bg)",
|
|
845
845
|
bgHover: "var(--game-ui-overlay-glass-bg-hover)",
|
|
846
846
|
bgStrong: "var(--game-ui-overlay-glass-bg-strong)",
|
|
@@ -852,7 +852,7 @@ var L = {
|
|
|
852
852
|
blur: "var(--game-ui-overlay-glass-blur)",
|
|
853
853
|
focusRing: "var(--game-ui-overlay-glass-focus-ring)",
|
|
854
854
|
primaryFill: "var(--game-ui-overlay-glass-primary-fill)"
|
|
855
|
-
},
|
|
855
|
+
}, B = {
|
|
856
856
|
background: "var(--game-ui-bg)",
|
|
857
857
|
playfieldScrim: "var(--game-ui-playfield-scrim)",
|
|
858
858
|
surface: "var(--game-ui-surface)",
|
|
@@ -871,7 +871,7 @@ var L = {
|
|
|
871
871
|
borderSubtle: "var(--game-ui-border-subtle)",
|
|
872
872
|
borderStrong: "var(--game-ui-border-strong)",
|
|
873
873
|
disabled: "var(--game-ui-disabled)"
|
|
874
|
-
},
|
|
874
|
+
}, V = {
|
|
875
875
|
familyDisplay: "var(--game-ui-font-display)",
|
|
876
876
|
familyBody: "var(--game-ui-font-body)",
|
|
877
877
|
familyMono: "var(--game-ui-font-mono)",
|
|
@@ -955,8 +955,8 @@ var L = {
|
|
|
955
955
|
brushNumberWidth: "var(--game-ui-brush-number-width)"
|
|
956
956
|
}, Se = {
|
|
957
957
|
colors: L,
|
|
958
|
-
semantic:
|
|
959
|
-
typography:
|
|
958
|
+
semantic: B,
|
|
959
|
+
typography: V,
|
|
960
960
|
spacing: ve,
|
|
961
961
|
radius: H,
|
|
962
962
|
elevation: U,
|
|
@@ -964,7 +964,7 @@ var L = {
|
|
|
964
964
|
layers: ye,
|
|
965
965
|
targets: be,
|
|
966
966
|
assetSizing: xe,
|
|
967
|
-
overlayGlass:
|
|
967
|
+
overlayGlass: _e,
|
|
968
968
|
liquidMetal: R,
|
|
969
969
|
liquidGooey: z
|
|
970
970
|
}, Ce = 2, we = 48e4, Te = 2, Ee = we, G = 0;
|
|
@@ -997,25 +997,31 @@ 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 Fe(
|
|
1001
|
-
|
|
1000
|
+
function Fe(e) {
|
|
1001
|
+
return e.spread === 0 ? "shape" : "bin";
|
|
1002
|
+
}
|
|
1003
|
+
function Ie(e, t) {
|
|
1004
|
+
return t !== null || e.some((e) => e.spread !== 0);
|
|
1005
|
+
}
|
|
1006
|
+
function Le({ index: n, shadow: r }) {
|
|
1007
|
+
let i = [], a = Fe(r), o = a;
|
|
1002
1008
|
return r.spread !== 0 && (i.push(/* @__PURE__ */ t("feMorphology", {
|
|
1003
|
-
in:
|
|
1009
|
+
in: o,
|
|
1004
1010
|
operator: r.spread > 0 ? "erode" : "dilate",
|
|
1005
1011
|
radius: Math.abs(r.spread),
|
|
1006
1012
|
result: `shadow-${n}-erode`
|
|
1007
|
-
}, "erode")),
|
|
1008
|
-
in:
|
|
1013
|
+
}, "erode")), o = `shadow-${n}-erode`), (r.x !== 0 || r.y !== 0) && (i.push(/* @__PURE__ */ t("feOffset", {
|
|
1014
|
+
in: o,
|
|
1009
1015
|
dx: r.x,
|
|
1010
1016
|
dy: r.y,
|
|
1011
1017
|
result: `shadow-${n}-offset`
|
|
1012
|
-
}, "offset")),
|
|
1013
|
-
in:
|
|
1018
|
+
}, "offset")), o = `shadow-${n}-offset`), r.blur > 0 && (i.push(/* @__PURE__ */ t("feGaussianBlur", {
|
|
1019
|
+
in: o,
|
|
1014
1020
|
stdDeviation: r.blur / 2,
|
|
1015
1021
|
result: `shadow-${n}-blur`
|
|
1016
|
-
}, "blur")),
|
|
1017
|
-
in:
|
|
1018
|
-
in2:
|
|
1022
|
+
}, "blur")), o = `shadow-${n}-blur`), i.push(/* @__PURE__ */ t("feComposite", {
|
|
1023
|
+
in: a,
|
|
1024
|
+
in2: o,
|
|
1019
1025
|
operator: "out",
|
|
1020
1026
|
result: `shadow-${n}-band`
|
|
1021
1027
|
}, "band"), /* @__PURE__ */ t("feFlood", {
|
|
@@ -1028,7 +1034,7 @@ function Fe({ index: n, shadow: r }) {
|
|
|
1028
1034
|
result: `shadow-${n}`
|
|
1029
1035
|
}, "fill")), /* @__PURE__ */ t(e, { children: i });
|
|
1030
1036
|
}
|
|
1031
|
-
function
|
|
1037
|
+
function Re({ index: n, shadow: r }) {
|
|
1032
1038
|
let i = [], a = "shape";
|
|
1033
1039
|
return r.spread !== 0 && (i.push(/* @__PURE__ */ t("feMorphology", {
|
|
1034
1040
|
in: "bin",
|
|
@@ -1054,7 +1060,7 @@ function Ie({ index: n, shadow: r }) {
|
|
|
1054
1060
|
result: `shadow-${n}`
|
|
1055
1061
|
}, "fill")), /* @__PURE__ */ t(e, { children: i });
|
|
1056
1062
|
}
|
|
1057
|
-
function
|
|
1063
|
+
function ze({ stroke: n }) {
|
|
1058
1064
|
let r = [];
|
|
1059
1065
|
return r.push(/* @__PURE__ */ t("feMorphology", {
|
|
1060
1066
|
in: "bin",
|
|
@@ -1076,7 +1082,7 @@ function Le({ stroke: n }) {
|
|
|
1076
1082
|
result: "stroke-out"
|
|
1077
1083
|
}, "fill")), /* @__PURE__ */ t(e, { children: r });
|
|
1078
1084
|
}
|
|
1079
|
-
function
|
|
1085
|
+
function Be({ blur: r, contrast: i, shadows: a, stroke: o, waviness: s = Pe.waviness, wavinessFreq: c = Pe.wavinessFreq }) {
|
|
1080
1086
|
let l = Math.round((.5 - 5 / 12 * i) * 100) / 100, u = s > 0;
|
|
1081
1087
|
return /* @__PURE__ */ n(e, { children: [
|
|
1082
1088
|
/* @__PURE__ */ t("feGaussianBlur", {
|
|
@@ -1118,20 +1124,20 @@ function Re({ blur: r, contrast: i, shadows: a, stroke: o, waviness: s = Pe.wavi
|
|
|
1118
1124
|
result: "shape"
|
|
1119
1125
|
})
|
|
1120
1126
|
] }) : null,
|
|
1121
|
-
|
|
1127
|
+
Ie(a, o) ? /* @__PURE__ */ t("feColorMatrix", {
|
|
1122
1128
|
in: "shape",
|
|
1123
1129
|
type: "matrix",
|
|
1124
1130
|
values: Me,
|
|
1125
1131
|
result: "bin"
|
|
1126
1132
|
}) : null,
|
|
1127
|
-
a.map((e, n) => e.inset ? /* @__PURE__ */ t(
|
|
1133
|
+
a.map((e, n) => e.inset ? /* @__PURE__ */ t(Le, {
|
|
1128
1134
|
index: n,
|
|
1129
1135
|
shadow: e
|
|
1130
|
-
}, n) : /* @__PURE__ */ t(
|
|
1136
|
+
}, n) : /* @__PURE__ */ t(Re, {
|
|
1131
1137
|
index: n,
|
|
1132
1138
|
shadow: e
|
|
1133
1139
|
}, n)),
|
|
1134
|
-
o ? /* @__PURE__ */ t(
|
|
1140
|
+
o ? /* @__PURE__ */ t(ze, { stroke: o }) : null,
|
|
1135
1141
|
a.length > 0 || o ? /* @__PURE__ */ n("feMerge", { children: [
|
|
1136
1142
|
a.map((e, t) => e.inset ? -1 : t).filter((e) => e >= 0).reverse().map((e) => /* @__PURE__ */ t("feMergeNode", { in: `shadow-${e}` }, e)),
|
|
1137
1143
|
/* @__PURE__ */ t("feMergeNode", { in: "shape" }),
|
|
@@ -1142,16 +1148,16 @@ function Re({ blur: r, contrast: i, shadows: a, stroke: o, waviness: s = Pe.wavi
|
|
|
1142
1148
|
}
|
|
1143
1149
|
//#endregion
|
|
1144
1150
|
//#region src/liquidGooeyWaviness.ts
|
|
1145
|
-
var
|
|
1146
|
-
function
|
|
1151
|
+
var Ve = .3;
|
|
1152
|
+
function He(e, t, n = Ve) {
|
|
1147
1153
|
let r = Math.max(0, Number.isFinite(e) ? e : 0);
|
|
1148
1154
|
if (n === !1) return r;
|
|
1149
|
-
let i = Math.max(0, Number.isFinite(n) ? n :
|
|
1155
|
+
let i = Math.max(0, Number.isFinite(n) ? n : Ve), a = Math.max(0, Number.isFinite(t) ? t : 0);
|
|
1150
1156
|
return a > 0 ? Math.min(r, a * i) : r;
|
|
1151
1157
|
}
|
|
1152
1158
|
//#endregion
|
|
1153
1159
|
//#region src/liquidGooeyGeometry.ts
|
|
1154
|
-
function
|
|
1160
|
+
function Ue(e, t) {
|
|
1155
1161
|
let n = 0, r = 0, i = e;
|
|
1156
1162
|
for (; i && i !== t && t.contains(i);) n += i.offsetLeft, r += i.offsetTop, i = i.offsetParent;
|
|
1157
1163
|
return {
|
|
@@ -1159,7 +1165,7 @@ function Ve(e, t) {
|
|
|
1159
1165
|
y: r
|
|
1160
1166
|
};
|
|
1161
1167
|
}
|
|
1162
|
-
function
|
|
1168
|
+
function We(e, t, n) {
|
|
1163
1169
|
let r = getComputedStyle(e), i = (e) => {
|
|
1164
1170
|
let r = e.split(" ")[0] ?? "";
|
|
1165
1171
|
return r.endsWith("%") ? (parseFloat(r) || 0) / 100 * Math.min(t, n) : parseFloat(r) || 0;
|
|
@@ -1171,7 +1177,7 @@ function He(e, t, n) {
|
|
|
1171
1177
|
i(r.borderBottomLeftRadius)
|
|
1172
1178
|
];
|
|
1173
1179
|
}
|
|
1174
|
-
function
|
|
1180
|
+
function Ge(e) {
|
|
1175
1181
|
return typeof e == "number" ? [
|
|
1176
1182
|
e,
|
|
1177
1183
|
e,
|
|
@@ -1179,13 +1185,13 @@ function Ue(e) {
|
|
|
1179
1185
|
e
|
|
1180
1186
|
] : e;
|
|
1181
1187
|
}
|
|
1182
|
-
function
|
|
1188
|
+
function Ke(e, t, n, r, i) {
|
|
1183
1189
|
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));
|
|
1184
1190
|
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`;
|
|
1185
1191
|
}
|
|
1186
1192
|
//#endregion
|
|
1187
1193
|
//#region src/liquidGooeyMove.ts
|
|
1188
|
-
var
|
|
1194
|
+
var qe = {
|
|
1189
1195
|
stiffness: 380,
|
|
1190
1196
|
damping: 18,
|
|
1191
1197
|
stretch: .18,
|
|
@@ -1215,29 +1221,29 @@ var Ge = {
|
|
|
1215
1221
|
settleSpeed: 1,
|
|
1216
1222
|
integrationRate: 60
|
|
1217
1223
|
};
|
|
1218
|
-
function
|
|
1224
|
+
function Je(e, t = 0, n = 1) {
|
|
1219
1225
|
return Math.min(n, Math.max(t, e));
|
|
1220
1226
|
}
|
|
1221
|
-
function
|
|
1227
|
+
function Ye(e, t) {
|
|
1222
1228
|
return e !== void 0 && Number.isFinite(e) ? e : t;
|
|
1223
1229
|
}
|
|
1224
|
-
function
|
|
1230
|
+
function Xe(e) {
|
|
1225
1231
|
return /^var\((--[\w-]+)\)$/.exec(e.trim())?.[1] ?? null;
|
|
1226
1232
|
}
|
|
1227
|
-
function
|
|
1228
|
-
let r = e?.ownerDocument.defaultView, i =
|
|
1233
|
+
function Ze(e, t, n) {
|
|
1234
|
+
let r = e?.ownerDocument.defaultView, i = Xe(z[t]);
|
|
1229
1235
|
if (!r || !i) return n;
|
|
1230
1236
|
let a = r.getComputedStyle(e).getPropertyValue(i), o = Number.parseFloat(a);
|
|
1231
1237
|
return Number.isFinite(o) ? o : n;
|
|
1232
1238
|
}
|
|
1233
|
-
function
|
|
1234
|
-
let t = (t, n) =>
|
|
1239
|
+
function Qe(e) {
|
|
1240
|
+
let t = (t, n) => Ze(e, t, n);
|
|
1235
1241
|
return {
|
|
1236
|
-
stiffness: Math.max(.001, t("moveStiffness",
|
|
1237
|
-
damping: Math.max(0, t("moveDamping",
|
|
1238
|
-
stretch:
|
|
1239
|
-
tail:
|
|
1240
|
-
force:
|
|
1242
|
+
stiffness: Math.max(.001, t("moveStiffness", qe.stiffness)),
|
|
1243
|
+
damping: Math.max(0, t("moveDamping", qe.damping)),
|
|
1244
|
+
stretch: Je(t("moveStretch", qe.stretch)),
|
|
1245
|
+
tail: Je(t("moveTail", qe.tail)),
|
|
1246
|
+
force: Je(t("moveForce", qe.force)),
|
|
1241
1247
|
tailSpringStiffness: Math.max(.001, t("moveTailSpringStiffness", K.tailSpringStiffness)),
|
|
1242
1248
|
tailSpringDamping: Math.max(0, t("moveTailSpringDamping", K.tailSpringDamping)),
|
|
1243
1249
|
stretchSpeed: Math.max(0, t("moveStretchSpeed", K.stretchSpeed)),
|
|
@@ -1249,10 +1255,10 @@ function Xe(e) {
|
|
|
1249
1255
|
tailMinRadius: Math.max(0, t("moveTailMinRadius", K.tailMinRadius)),
|
|
1250
1256
|
tailWobble: Math.max(0, t("moveTailWobble", K.tailWobble)),
|
|
1251
1257
|
tailPhaseSpeed: Math.max(0, t("moveTailPhaseSpeed", K.tailPhaseSpeed)),
|
|
1252
|
-
tailMidpointA:
|
|
1253
|
-
tailMidpointB:
|
|
1254
|
-
tailMidRadiusA:
|
|
1255
|
-
tailMidRadiusB:
|
|
1258
|
+
tailMidpointA: Je(t("moveTailMidpointA", K.tailMidpointA)),
|
|
1259
|
+
tailMidpointB: Je(t("moveTailMidpointB", K.tailMidpointB)),
|
|
1260
|
+
tailMidRadiusA: Je(t("moveTailMidRadiusA", K.tailMidRadiusA)),
|
|
1261
|
+
tailMidRadiusB: Je(t("moveTailMidRadiusB", K.tailMidRadiusB)),
|
|
1256
1262
|
tailWobblePhase: t("moveTailWobblePhase", K.tailWobblePhase),
|
|
1257
1263
|
minPerpendicular: Math.max(0, t("moveMinPerpendicular", K.minPerpendicular)),
|
|
1258
1264
|
lagBase: Math.max(0, t("moveLagBase", K.lagBase)),
|
|
@@ -1262,32 +1268,32 @@ function Xe(e) {
|
|
|
1262
1268
|
integrationRate: Math.max(1, t("moveIntegrationRate", K.integrationRate))
|
|
1263
1269
|
};
|
|
1264
1270
|
}
|
|
1265
|
-
function
|
|
1271
|
+
function $e(e, t) {
|
|
1266
1272
|
return {
|
|
1267
|
-
vertical:
|
|
1268
|
-
horizontal:
|
|
1269
|
-
velocityVertical: Math.max(0,
|
|
1270
|
-
velocityHorizontal: Math.max(0,
|
|
1271
|
-
smoothing: Math.max(0,
|
|
1272
|
-
activeThreshold: Math.max(0,
|
|
1273
|
-
verticalCap: Math.max(0,
|
|
1274
|
-
horizontalCap: Math.max(0,
|
|
1275
|
-
radiusMin: Math.max(0,
|
|
1276
|
-
radiusMax: Math.max(0,
|
|
1277
|
-
leadingCapFactor: Math.max(0,
|
|
1278
|
-
trailingCapFactor: Math.max(0,
|
|
1273
|
+
vertical: Je(Ye(t?.vertical, Ze(e, "bendVertical", .6))),
|
|
1274
|
+
horizontal: Je(Ye(t?.horizontal, Ze(e, "bendHorizontal", .35))),
|
|
1275
|
+
velocityVertical: Math.max(0, Ze(e, "bendVelocityVertical", .05)),
|
|
1276
|
+
velocityHorizontal: Math.max(0, Ze(e, "bendVelocityHorizontal", .09)),
|
|
1277
|
+
smoothing: Math.max(0, Ze(e, "bendSmoothing", 9)),
|
|
1278
|
+
activeThreshold: Math.max(0, Ze(e, "bendActiveThreshold", .5)),
|
|
1279
|
+
verticalCap: Math.max(0, Ze(e, "bendVerticalCap", .5)),
|
|
1280
|
+
horizontalCap: Math.max(0, Ze(e, "bendHorizontalCap", .9)),
|
|
1281
|
+
radiusMin: Math.max(0, Ze(e, "bendRadiusMin", .2)),
|
|
1282
|
+
radiusMax: Math.max(0, Ze(e, "bendRadiusMax", 3)),
|
|
1283
|
+
leadingCapFactor: Math.max(0, Ze(e, "bendLeadingCapFactor", .8)),
|
|
1284
|
+
trailingCapFactor: Math.max(0, Ze(e, "bendTrailingCapFactor", 1.6))
|
|
1279
1285
|
};
|
|
1280
1286
|
}
|
|
1281
|
-
function
|
|
1287
|
+
function et(e, t, n, r, i, a) {
|
|
1282
1288
|
let o = t + (r * (n - e) - i * t) * a;
|
|
1283
1289
|
return [e + o * a, o];
|
|
1284
1290
|
}
|
|
1285
|
-
function
|
|
1286
|
-
let s = Math.max(0,
|
|
1287
|
-
for (; c-- > 0;) [u, d] =
|
|
1291
|
+
function tt(e, t, n, r, i, a, o) {
|
|
1292
|
+
let s = Math.max(0, Ye(a, 0)), c = Math.max(1, Math.ceil(s * o)), l = s / c, u = e, d = t;
|
|
1293
|
+
for (; c-- > 0;) [u, d] = et(u, d, n, r, i, l);
|
|
1288
1294
|
return [u, d];
|
|
1289
1295
|
}
|
|
1290
|
-
function
|
|
1296
|
+
function nt(e) {
|
|
1291
1297
|
return {
|
|
1292
1298
|
cx: e.cx,
|
|
1293
1299
|
cy: e.cy,
|
|
@@ -1302,35 +1308,35 @@ function et(e) {
|
|
|
1302
1308
|
tailInitialized: !0
|
|
1303
1309
|
};
|
|
1304
1310
|
}
|
|
1305
|
-
function
|
|
1311
|
+
function rt(e, t) {
|
|
1306
1312
|
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;
|
|
1307
1313
|
}
|
|
1308
|
-
function
|
|
1314
|
+
function it(e) {
|
|
1309
1315
|
return String(Math.round(e * 1e3) / 1e3);
|
|
1310
1316
|
}
|
|
1311
1317
|
function q(e) {
|
|
1312
1318
|
return Math.round(e * 10) / 10;
|
|
1313
1319
|
}
|
|
1314
|
-
function
|
|
1315
|
-
let a = Math.max(.01,
|
|
1316
|
-
[e.cx, e.vcx] =
|
|
1320
|
+
function at(e, t, n, r, i) {
|
|
1321
|
+
let a = Math.max(.01, Ye(t.scale, 1));
|
|
1322
|
+
[e.cx, e.vcx] = tt(e.cx, e.vcx, t.cx, i.stiffness, i.damping, r, i.integrationRate), [e.cy, e.vcy] = tt(e.cy, e.vcy, t.cy, i.stiffness, i.damping, r, i.integrationRate);
|
|
1317
1323
|
let o = Math.hypot(e.vcx, e.vcy), s = 0, c = 1, l = 1;
|
|
1318
1324
|
if (o > i.speedThreshold) {
|
|
1319
1325
|
let t = Math.min(i.stretch, o * i.stretchSpeed);
|
|
1320
1326
|
s = Math.round(Math.atan2(e.vcy, e.vcx) * 100) / 100, c = 1 + t, l = 1 / (1 + t * i.stretchSquash);
|
|
1321
1327
|
}
|
|
1322
|
-
e.tailInitialized ||= (e.tailX = e.cx, e.tailY = e.cy, !0), [e.tailX, e.tailVx] =
|
|
1328
|
+
e.tailInitialized ||= (e.tailX = e.cx, e.tailY = e.cy, !0), [e.tailX, e.tailVx] = tt(e.tailX, e.tailVx, e.cx, i.tailSpringStiffness, i.tailSpringDamping, r, i.integrationRate), [e.tailY, e.tailVy] = tt(e.tailY, e.tailVy, e.cy, i.tailSpringStiffness, i.tailSpringDamping, r, i.integrationRate);
|
|
1323
1329
|
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);
|
|
1324
1330
|
y > b && y > 0 && (e.tailX = e.cx + _ / y * b, e.tailY = e.cy + v / y * b);
|
|
1325
|
-
let x =
|
|
1331
|
+
let x = Je((o - i.tailOnsetSpeed) / i.tailOnsetRange), S = g * i.tail * x;
|
|
1326
1332
|
e.tailR += (S - e.tailR) * Math.min(1, Math.max(0, r) * i.tailRamp);
|
|
1327
|
-
let C = e.tailR >= i.tailMinRadius, w = e.cx, T = e.cy, E = e.cx, D = e.cy, O = 0,
|
|
1333
|
+
let C = e.tailR >= i.tailMinRadius, w = e.cx, T = e.cy, E = e.cx, D = e.cy, O = 0, ee = 0;
|
|
1328
1334
|
if (C) {
|
|
1329
|
-
e.tailPhase += o * Math.max(0,
|
|
1335
|
+
e.tailPhase += o * Math.max(0, Ye(r, 0)) * i.tailPhaseSpeed;
|
|
1330
1336
|
let t = e.tailR * i.tailWobble, n = -p, a = f, s = Math.sin(e.tailPhase) * t, c = Math.sin(e.tailPhase + i.tailWobblePhase) * -t;
|
|
1331
|
-
w = e.cx + _ * i.tailMidpointA + n * s, T = e.cy + v * i.tailMidpointA + a * s, E = e.cx + _ * i.tailMidpointB + n * c, D = e.cy + v * i.tailMidpointB + a * c, O = e.tailR * i.tailMidRadiusA,
|
|
1337
|
+
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, ee = e.tailR * i.tailMidRadiusB;
|
|
1332
1338
|
}
|
|
1333
|
-
let
|
|
1339
|
+
let k = {
|
|
1334
1340
|
cx: q(e.tailX),
|
|
1335
1341
|
cy: q(e.tailY),
|
|
1336
1342
|
radius: C ? q(e.tailR) : 0,
|
|
@@ -1339,7 +1345,7 @@ function rt(e, t, n, r, i) {
|
|
|
1339
1345
|
midARadius: C ? q(O) : 0,
|
|
1340
1346
|
midBCx: q(E),
|
|
1341
1347
|
midBCy: q(D),
|
|
1342
|
-
midBRadius: C ? q(
|
|
1348
|
+
midBRadius: C ? q(ee) : 0,
|
|
1343
1349
|
visible: C,
|
|
1344
1350
|
fingerprint: C ? [
|
|
1345
1351
|
q(e.tailX),
|
|
@@ -1352,17 +1358,17 @@ function rt(e, t, n, r, i) {
|
|
|
1352
1358
|
].join(",") : "hidden"
|
|
1353
1359
|
};
|
|
1354
1360
|
return {
|
|
1355
|
-
path:
|
|
1356
|
-
transform: `translate(${
|
|
1357
|
-
tail:
|
|
1361
|
+
path: Ke(-n.w / 2, -n.h / 2, n.w, n.h, n.r),
|
|
1362
|
+
transform: `translate(${it(e.cx)} ${it(e.cy)}) ` + (o > i.speedThreshold ? `rotate(${it(s * 180 / Math.PI)}) scale(${it(c)} ${it(l)}) ` : "") + `scale(${it(a)})`,
|
|
1363
|
+
tail: k,
|
|
1358
1364
|
moving: Math.hypot(e.cx - t.cx, e.cy - t.cy) > i.settleDistance || o > i.settleSpeed || e.tailR >= i.tailMinRadius
|
|
1359
1365
|
};
|
|
1360
1366
|
}
|
|
1361
|
-
function
|
|
1367
|
+
function ot(e, t, n, r, i, a) {
|
|
1362
1368
|
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;
|
|
1363
1369
|
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`;
|
|
1364
1370
|
}
|
|
1365
|
-
function
|
|
1371
|
+
function st(e) {
|
|
1366
1372
|
return {
|
|
1367
1373
|
cx: e.cx,
|
|
1368
1374
|
cy: e.cy,
|
|
@@ -1375,20 +1381,20 @@ function at(e) {
|
|
|
1375
1381
|
initialized: !1
|
|
1376
1382
|
};
|
|
1377
1383
|
}
|
|
1378
|
-
function
|
|
1384
|
+
function ct(e, t) {
|
|
1379
1385
|
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;
|
|
1380
1386
|
}
|
|
1381
|
-
function
|
|
1387
|
+
function lt(e, t) {
|
|
1382
1388
|
return Math.min(e.w, e.h) * t.verticalCap * 2 * t.vertical;
|
|
1383
1389
|
}
|
|
1384
|
-
function
|
|
1385
|
-
let a = Math.max(1 / 240,
|
|
1390
|
+
function ut(e, t, n, r, i) {
|
|
1391
|
+
let a = Math.max(1 / 240, Ye(r, 1 / 60));
|
|
1386
1392
|
e.initialized ||= (e.previousCx = t.cx, e.previousCy = t.cy, !0);
|
|
1387
1393
|
let o = (t.cx - e.previousCx) / a, s = (t.cy - e.previousCy) / a;
|
|
1388
1394
|
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;
|
|
1389
1395
|
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;
|
|
1390
1396
|
e.bendY += (u - e.bendY) * Math.min(1, a * i.smoothing), e.bendX += (f - e.bendX) * Math.min(1, a * i.smoothing);
|
|
1391
|
-
let p = Math.abs(e.bendY) > i.activeThreshold || Math.abs(e.bendX) > i.activeThreshold, m = Math.min(...n.r), h = p ?
|
|
1397
|
+
let p = Math.abs(e.bendY) > i.activeThreshold || Math.abs(e.bendX) > i.activeThreshold, m = Math.min(...n.r), h = p ? ot(n.w, n.h, m, e.bendY, e.bendX, i) : Ke(-n.w / 2, -n.h / 2, n.w, n.h, n.r), g = p ? `translate(${it(e.cx - n.w / 2)} ${it(e.cy - n.h / 2)}) scale(${it(t.scale)})` : `translate(${it(e.cx)} ${it(e.cy)}) scale(${it(t.scale)})`, _ = Math.round(e.bendX * 10) / 10, v = Math.round(e.bendY * 10) / 10;
|
|
1392
1398
|
return {
|
|
1393
1399
|
path: h,
|
|
1394
1400
|
transform: g,
|
|
@@ -1400,7 +1406,7 @@ function ct(e, t, n, r, i) {
|
|
|
1400
1406
|
}
|
|
1401
1407
|
//#endregion
|
|
1402
1408
|
//#region src/liquidGooeyEvolve.ts
|
|
1403
|
-
var
|
|
1409
|
+
var dt = {
|
|
1404
1410
|
massStiffness: 320,
|
|
1405
1411
|
massDamping: 17,
|
|
1406
1412
|
sizeStiffness: 170,
|
|
@@ -1415,41 +1421,41 @@ var lt = {
|
|
|
1415
1421
|
anticipation: 90,
|
|
1416
1422
|
travel: 32
|
|
1417
1423
|
};
|
|
1418
|
-
function
|
|
1424
|
+
function ft(e) {
|
|
1419
1425
|
return /^var\((--[\w-]+)\)$/.exec(e.trim())?.[1] ?? null;
|
|
1420
1426
|
}
|
|
1421
|
-
function
|
|
1427
|
+
function pt(e, t) {
|
|
1422
1428
|
return e !== void 0 && Number.isFinite(e) ? e : t;
|
|
1423
1429
|
}
|
|
1424
|
-
function
|
|
1430
|
+
function mt(e, t = 0, n = 1) {
|
|
1425
1431
|
return Math.min(n, Math.max(t, e));
|
|
1426
1432
|
}
|
|
1427
|
-
function
|
|
1428
|
-
let r = e?.ownerDocument.defaultView, i =
|
|
1433
|
+
function ht(e, t, n) {
|
|
1434
|
+
let r = e?.ownerDocument.defaultView, i = ft(z[t]);
|
|
1429
1435
|
if (!r || !i) return n;
|
|
1430
1436
|
let a = Number.parseFloat(r.getComputedStyle(e).getPropertyValue(i));
|
|
1431
1437
|
return Number.isFinite(a) ? a : n;
|
|
1432
1438
|
}
|
|
1433
|
-
function
|
|
1434
|
-
let r = e?.ownerDocument.defaultView, i =
|
|
1439
|
+
function gt(e, t, n) {
|
|
1440
|
+
let r = e?.ownerDocument.defaultView, i = ft(z[t]);
|
|
1435
1441
|
return !r || !i ? n : r.getComputedStyle(e).getPropertyValue(i).trim() || n;
|
|
1436
1442
|
}
|
|
1437
|
-
function
|
|
1438
|
-
let n = (t, n) =>
|
|
1439
|
-
massStiffness: Math.max(.001, n("evolveMassStiffness",
|
|
1440
|
-
massDamping: Math.max(0, n("evolveMassDamping",
|
|
1441
|
-
sizeStiffness: Math.max(.001, n("evolveSizeStiffness",
|
|
1442
|
-
sizeDamping: Math.max(0, n("evolveSizeDamping",
|
|
1443
|
-
radiusStiffness: Math.max(.001, n("evolveRadiusStiffness",
|
|
1444
|
-
radiusDamping: Math.max(0, n("evolveRadiusDamping",
|
|
1445
|
-
contentBlur: Math.max(0, n("evolveContentBlur",
|
|
1446
|
-
roundness:
|
|
1447
|
-
cornerDuration: Math.max(0, n("evolveCornerDuration",
|
|
1448
|
-
cornerDelay: Math.max(0, n("evolveCornerDelay",
|
|
1449
|
-
cornerEase:
|
|
1450
|
-
anticipation: Math.max(0, n("evolveAnticipation",
|
|
1451
|
-
travel: Math.max(0, n("evolveTravel",
|
|
1452
|
-
}, i = Math.max(.25,
|
|
1443
|
+
function _t(e, t) {
|
|
1444
|
+
let n = (t, n) => ht(e, t, n), r = {
|
|
1445
|
+
massStiffness: Math.max(.001, n("evolveMassStiffness", dt.massStiffness)),
|
|
1446
|
+
massDamping: Math.max(0, n("evolveMassDamping", dt.massDamping)),
|
|
1447
|
+
sizeStiffness: Math.max(.001, n("evolveSizeStiffness", dt.sizeStiffness)),
|
|
1448
|
+
sizeDamping: Math.max(0, n("evolveSizeDamping", dt.sizeDamping)),
|
|
1449
|
+
radiusStiffness: Math.max(.001, n("evolveRadiusStiffness", dt.radiusStiffness)),
|
|
1450
|
+
radiusDamping: Math.max(0, n("evolveRadiusDamping", dt.radiusDamping)),
|
|
1451
|
+
contentBlur: Math.max(0, n("evolveContentBlur", dt.contentBlur)),
|
|
1452
|
+
roundness: mt(n("evolveRoundness", dt.roundness)),
|
|
1453
|
+
cornerDuration: Math.max(0, n("evolveCornerDuration", dt.cornerDuration)),
|
|
1454
|
+
cornerDelay: Math.max(0, n("evolveCornerDelay", dt.cornerDelay)),
|
|
1455
|
+
cornerEase: gt(e, "evolveCornerEase", dt.cornerEase),
|
|
1456
|
+
anticipation: Math.max(0, n("evolveAnticipation", dt.anticipation)),
|
|
1457
|
+
travel: Math.max(0, n("evolveTravel", dt.travel))
|
|
1458
|
+
}, i = Math.max(.25, pt(t?.speed, n("morphSpeed", 1))), a = mt(pt(t?.bounce, n("morphBounce", .5))), o = (e) => Math.max(.12, 1 - 1.1 * mt(e)), s = o(a) / o(.5);
|
|
1453
1459
|
return {
|
|
1454
1460
|
massStiffness: r.massStiffness * i * i,
|
|
1455
1461
|
massDamping: r.massDamping * i * s,
|
|
@@ -1457,7 +1463,7 @@ function ht(e, t) {
|
|
|
1457
1463
|
sizeDamping: r.sizeDamping * i * s,
|
|
1458
1464
|
radiusStiffness: r.radiusStiffness * i * i,
|
|
1459
1465
|
radiusDamping: r.radiusDamping * i,
|
|
1460
|
-
contentBlur: Math.max(0,
|
|
1466
|
+
contentBlur: Math.max(0, pt(t?.contentBlur, r.contentBlur)),
|
|
1461
1467
|
roundness: r.roundness,
|
|
1462
1468
|
cornerDuration: r.cornerDuration / i,
|
|
1463
1469
|
cornerDelay: r.cornerDelay,
|
|
@@ -1467,14 +1473,14 @@ function ht(e, t) {
|
|
|
1467
1473
|
...t?.advanced ?? {}
|
|
1468
1474
|
};
|
|
1469
1475
|
}
|
|
1470
|
-
function
|
|
1471
|
-
return t?.shape === void 0 ?
|
|
1476
|
+
function vt(e, t) {
|
|
1477
|
+
return t?.shape === void 0 ? ht(e, "morphShape", 1) >= .5 : t.shape;
|
|
1472
1478
|
}
|
|
1473
|
-
function
|
|
1474
|
-
let n =
|
|
1479
|
+
function yt(e, t) {
|
|
1480
|
+
let n = _t(e, t), r = Math.max(0, ht(e, "contentBlurAreaMultiplier", 3));
|
|
1475
1481
|
return n.contentBlur * r;
|
|
1476
1482
|
}
|
|
1477
|
-
function
|
|
1483
|
+
function bt(e) {
|
|
1478
1484
|
return {
|
|
1479
1485
|
cx: e.cx,
|
|
1480
1486
|
cy: e.cy,
|
|
@@ -1499,7 +1505,7 @@ function vt(e) {
|
|
|
1499
1505
|
round01: 0
|
|
1500
1506
|
};
|
|
1501
1507
|
}
|
|
1502
|
-
function
|
|
1508
|
+
function xt(e, t) {
|
|
1503
1509
|
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 = {
|
|
1504
1510
|
cx: t.cx,
|
|
1505
1511
|
cy: t.cy
|
|
@@ -1508,18 +1514,18 @@ function yt(e, t) {
|
|
|
1508
1514
|
h: t.h
|
|
1509
1515
|
}, e.morphActive = !1, e.round01 = 0;
|
|
1510
1516
|
}
|
|
1511
|
-
function
|
|
1517
|
+
function St(e, t, n, r, i, a) {
|
|
1512
1518
|
let o = t + (r * (n - e) - i * t) * a;
|
|
1513
1519
|
return [e + o * a, o];
|
|
1514
1520
|
}
|
|
1515
|
-
function
|
|
1516
|
-
let o = Math.max(0,
|
|
1517
|
-
for (; s-- > 0;) [l, u] =
|
|
1521
|
+
function Ct(e, t, n, r, i, a) {
|
|
1522
|
+
let o = Math.max(0, pt(a, 0)), s = Math.max(1, Math.ceil(o * 60)), c = o / s, l = e, u = t;
|
|
1523
|
+
for (; s-- > 0;) [l, u] = St(l, u, n, r, i, c);
|
|
1518
1524
|
return [l, u];
|
|
1519
1525
|
}
|
|
1520
|
-
var
|
|
1521
|
-
function
|
|
1522
|
-
let t =
|
|
1526
|
+
var wt = /* @__PURE__ */ new Map();
|
|
1527
|
+
function Tt(e) {
|
|
1528
|
+
let t = wt.get(e);
|
|
1523
1529
|
if (t) return t;
|
|
1524
1530
|
let n = /cubic-bezier\(([^)]+)\)/.exec(e);
|
|
1525
1531
|
if (n) {
|
|
@@ -1535,14 +1541,14 @@ function Ct(e) {
|
|
|
1535
1541
|
let s = (n + o) / 2;
|
|
1536
1542
|
return 3 * s * (1 - s) * (1 - s) * r + 3 * s * s * (1 - s) * a + s ** 3;
|
|
1537
1543
|
};
|
|
1538
|
-
} else t = e === "ease-in-out" ?
|
|
1539
|
-
return
|
|
1544
|
+
} else t = e === "ease-in-out" ? Tt("cubic-bezier(0.42, 0, 0.58, 1)") : (e) => mt(e);
|
|
1545
|
+
return wt.set(e, t), t;
|
|
1540
1546
|
}
|
|
1541
|
-
function
|
|
1547
|
+
function Et(e) {
|
|
1542
1548
|
return String(Math.round(e * 1e3) / 1e3);
|
|
1543
1549
|
}
|
|
1544
|
-
function
|
|
1545
|
-
let a = Math.max(0,
|
|
1550
|
+
function Dt(e, t, n, r, i) {
|
|
1551
|
+
let a = Math.max(0, pt(n, 0)), o = t.cx, s = t.cy;
|
|
1546
1552
|
e.tPrev ||= {
|
|
1547
1553
|
cx: o,
|
|
1548
1554
|
cy: s
|
|
@@ -1557,7 +1563,7 @@ function Tt(e, t, n, r, i) {
|
|
|
1557
1563
|
let g = Math.max(0, i.anticipation) / 1e3, _ = g > 0 ? 1 - Math.exp(-a / g) : 1;
|
|
1558
1564
|
e.lead01 += (+(f > .5) - e.lead01) * _;
|
|
1559
1565
|
let v = Math.min(Math.max(0, i.travel) * e.lead01, f);
|
|
1560
|
-
[e.cx, e.vcx] =
|
|
1566
|
+
[e.cx, e.vcx] = Ct(e.cx, e.vcx, o + m * v, i.massStiffness, i.massDamping, a), [e.cy, e.vcy] = Ct(e.cy, e.vcy, s + h * v, i.massStiffness, i.massDamping, a), [e.w, e.vw] = Ct(e.w, e.vw, t.w, i.sizeStiffness, i.sizeDamping, a), [e.h, e.vh] = Ct(e.h, e.vh, t.h, i.sizeStiffness, i.sizeDamping, a), [e.r, e.vr] = Ct(e.r, e.vr, t.r, i.radiusStiffness, i.radiusDamping, a);
|
|
1561
1567
|
let y = e.lastTargetSize;
|
|
1562
1568
|
(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 = {
|
|
1563
1569
|
w: t.w,
|
|
@@ -1565,8 +1571,8 @@ function Tt(e, t, n, r, i) {
|
|
|
1565
1571
|
};
|
|
1566
1572
|
let b = Math.max(0, i.cornerDelay) + Math.max(1, i.cornerDuration), x = 0;
|
|
1567
1573
|
if (e.cornerStarted && i.roundness > 0 && r - e.cornerT0 < b) {
|
|
1568
|
-
let t =
|
|
1569
|
-
x =
|
|
1574
|
+
let t = mt((r - e.cornerT0 - Math.max(0, i.cornerDelay)) / Math.max(1, i.cornerDuration));
|
|
1575
|
+
x = mt((1 - Tt(i.cornerEase)(t)) * i.roundness);
|
|
1570
1576
|
}
|
|
1571
1577
|
let S = a * 8;
|
|
1572
1578
|
e.round01 += Math.max(-S, Math.min(S, x - e.round01));
|
|
@@ -1577,22 +1583,22 @@ function Tt(e, t, n, r, i) {
|
|
|
1577
1583
|
}
|
|
1578
1584
|
let w = Math.min(1, (Math.hypot(e.vcx, e.vcy) + Math.abs(e.vw) + Math.abs(e.vh)) / 420);
|
|
1579
1585
|
e.motionEnv = Math.max(w, e.motionEnv - a * 1.9);
|
|
1580
|
-
let T = e.motionEnv * e.motionEnv * Math.max(0, i.contentBlur), E = e.cornerStarted && r - e.cornerT0 < b + 80 || Math.abs(x - e.round01) > .004 || e.round01 > .004, D = Math.hypot(e.vcx, e.vcy), O = Math.abs(e.cx - o) < .05 && Math.abs(e.cy - s) < .05 && Math.abs(e.w - t.w) < .05 && Math.abs(e.h - t.h) < .05 && Math.abs(e.r - t.r) < .05 && D < 1 && Math.abs(e.vw) + Math.abs(e.vh) + Math.abs(e.vr) < 1 && e.motionEnv < .01 && !E,
|
|
1586
|
+
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, ee = [
|
|
1581
1587
|
C,
|
|
1582
1588
|
C,
|
|
1583
1589
|
C,
|
|
1584
1590
|
C
|
|
1585
1591
|
];
|
|
1586
1592
|
return {
|
|
1587
|
-
path:
|
|
1588
|
-
transform: `translate(${
|
|
1593
|
+
path: Ke(-e.w / 2, -e.h / 2, e.w, e.h, ee),
|
|
1594
|
+
transform: `translate(${Et(e.cx)} ${Et(e.cy)}) scale(${Et(t.scale)})`,
|
|
1589
1595
|
contentBlur: T,
|
|
1590
1596
|
moving: !O
|
|
1591
1597
|
};
|
|
1592
1598
|
}
|
|
1593
1599
|
//#endregion
|
|
1594
1600
|
//#region src/liquidGooeySpring.ts
|
|
1595
|
-
var
|
|
1601
|
+
var Ot = {
|
|
1596
1602
|
snappy: {
|
|
1597
1603
|
stiffness: 480,
|
|
1598
1604
|
damping: 34,
|
|
@@ -1608,16 +1614,16 @@ var Et = {
|
|
|
1608
1614
|
damping: 17,
|
|
1609
1615
|
mass: 1
|
|
1610
1616
|
}
|
|
1611
|
-
},
|
|
1612
|
-
function
|
|
1617
|
+
}, kt = 1 / 240;
|
|
1618
|
+
function At(e) {
|
|
1613
1619
|
let t = 0, n = 0, r = 0, i = -1, a = 0, o = [0];
|
|
1614
1620
|
for (; r < 10;) {
|
|
1615
1621
|
let s = (-e.stiffness * (t - 1) - e.damping * n) / e.mass;
|
|
1616
|
-
if (n += s *
|
|
1622
|
+
if (n += s * kt, t += n * kt, r += kt, o.push(t), t > a && (a = t), Math.abs(t - 1) < .001 && Math.abs(n) < .02) {
|
|
1617
1623
|
if (i < 0 && (i = r), r - i >= .064) break;
|
|
1618
1624
|
} else i = -1;
|
|
1619
1625
|
}
|
|
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 /
|
|
1626
|
+
let s = i > 0 ? i : r, c = Math.round(Math.min(120, Math.max(24, s * 90))), l = Math.min(o.length - 1, s / kt), u = [];
|
|
1621
1627
|
for (let e = 0; e <= c; e += 1) {
|
|
1622
1628
|
let t = Math.min(o.length - 1, Math.round(e / c * l));
|
|
1623
1629
|
u.push(Math.round((o[t] ?? 1) * 1e4) / 1e4);
|
|
@@ -1628,13 +1634,13 @@ function Ot(e) {
|
|
|
1628
1634
|
overshoots: a > 1.001
|
|
1629
1635
|
};
|
|
1630
1636
|
}
|
|
1631
|
-
var
|
|
1632
|
-
function
|
|
1633
|
-
return
|
|
1637
|
+
var jt = null;
|
|
1638
|
+
function Mt() {
|
|
1639
|
+
return jt === null && (jt = typeof CSS < "u" && typeof CSS.supports == "function" && CSS.supports("transition-timing-function", "linear(0, 1)")), jt;
|
|
1634
1640
|
}
|
|
1635
|
-
var
|
|
1636
|
-
function
|
|
1637
|
-
let t =
|
|
1641
|
+
var Nt = /* @__PURE__ */ new Map(), Pt = /* @__PURE__ */ new Map();
|
|
1642
|
+
function Ft(e) {
|
|
1643
|
+
let t = Pt.get(e);
|
|
1638
1644
|
if (t) return t;
|
|
1639
1645
|
let n = /^linear\(([^)]+)\)$/.exec(e.trim()), r = /^cubic-bezier\(([^)]+)\)$/.exec(e.trim()), i;
|
|
1640
1646
|
if (n) {
|
|
@@ -1658,10 +1664,10 @@ function Nt(e) {
|
|
|
1658
1664
|
let s = (i + o) / 2;
|
|
1659
1665
|
return 3 * s * (1 - s) * (1 - s) * t + 3 * s * s * (1 - s) * a + s ** 3;
|
|
1660
1666
|
};
|
|
1661
|
-
} else i = e === "ease" ?
|
|
1662
|
-
return
|
|
1667
|
+
} else i = e === "ease" ? Ft("cubic-bezier(0.25, 0.1, 0.25, 1)") : e === "ease-in" ? Ft("cubic-bezier(0.42, 0, 1, 1)") : e === "ease-out" ? Ft("cubic-bezier(0, 0, 0.58, 1)") : e === "ease-in-out" ? Ft("cubic-bezier(0.42, 0, 0.58, 1)") : (e) => Math.min(1, Math.max(0, e));
|
|
1668
|
+
return Pt.set(e, i), i;
|
|
1663
1669
|
}
|
|
1664
|
-
function
|
|
1670
|
+
function It(e, t = !1) {
|
|
1665
1671
|
if (t) return {
|
|
1666
1672
|
duration: 0,
|
|
1667
1673
|
easing: "linear"
|
|
@@ -1671,58 +1677,58 @@ function Pt(e, t = !1) {
|
|
|
1671
1677
|
duration: Math.max(0, n.duration),
|
|
1672
1678
|
easing: n.ease ?? "cubic-bezier(0.22, 1, 0.36, 1)"
|
|
1673
1679
|
};
|
|
1674
|
-
let r = typeof n == "string" ?
|
|
1680
|
+
let r = typeof n == "string" ? Ot[n] : {
|
|
1675
1681
|
stiffness: 300,
|
|
1676
1682
|
damping: 24,
|
|
1677
1683
|
mass: 1,
|
|
1678
1684
|
...n
|
|
1679
|
-
}, i = `${r.stiffness}/${r.damping}/${r.mass}/${
|
|
1685
|
+
}, i = `${r.stiffness}/${r.damping}/${r.mass}/${Mt()}`, a = Nt.get(i);
|
|
1680
1686
|
if (!a) {
|
|
1681
|
-
let e =
|
|
1687
|
+
let e = At(r);
|
|
1682
1688
|
a = {
|
|
1683
1689
|
duration: Math.round(e.duration * 1e3),
|
|
1684
|
-
easing:
|
|
1685
|
-
},
|
|
1690
|
+
easing: Mt() ? `linear(${e.values.join(", ")})` : e.overshoots ? "cubic-bezier(0.34, 1.56, 0.64, 1)" : "cubic-bezier(0.22, 1, 0.36, 1)"
|
|
1691
|
+
}, Nt.set(i, a);
|
|
1686
1692
|
}
|
|
1687
1693
|
return a;
|
|
1688
1694
|
}
|
|
1689
1695
|
//#endregion
|
|
1690
1696
|
//#region src/liquidGooeyEngine.ts
|
|
1691
|
-
function
|
|
1697
|
+
function Lt(e, t) {
|
|
1692
1698
|
return e !== void 0 && Number.isFinite(e) ? e : t;
|
|
1693
1699
|
}
|
|
1694
|
-
function
|
|
1700
|
+
function Rt(e) {
|
|
1695
1701
|
let t = {
|
|
1696
1702
|
observe: e.observe ?? !1,
|
|
1697
|
-
x:
|
|
1698
|
-
y:
|
|
1699
|
-
scale: Math.max(.01,
|
|
1703
|
+
x: Lt(e.x, 0),
|
|
1704
|
+
y: Lt(e.y, 0),
|
|
1705
|
+
scale: Math.max(.01, Lt(e.scale, 1))
|
|
1700
1706
|
};
|
|
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,
|
|
1707
|
+
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, Lt(e.delay, 0))), e.radius !== void 0 && (t.radius = e.radius), t;
|
|
1702
1708
|
}
|
|
1703
|
-
function
|
|
1709
|
+
function zt(e) {
|
|
1704
1710
|
return {
|
|
1705
1711
|
x: e.x,
|
|
1706
1712
|
y: e.y,
|
|
1707
1713
|
scale: e.scale
|
|
1708
1714
|
};
|
|
1709
1715
|
}
|
|
1710
|
-
function
|
|
1716
|
+
function Bt(e, t) {
|
|
1711
1717
|
return e.x === t.x && e.y === t.y && e.scale === t.scale;
|
|
1712
1718
|
}
|
|
1713
|
-
function
|
|
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 &&
|
|
1719
|
+
function Vt(e, t) {
|
|
1720
|
+
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 && Ht(e.radius) === Ht(t.radius);
|
|
1715
1721
|
}
|
|
1716
|
-
function
|
|
1722
|
+
function Ht(e) {
|
|
1717
1723
|
return e === void 0 ? "" : JSON.stringify(e);
|
|
1718
1724
|
}
|
|
1719
|
-
function
|
|
1725
|
+
function Ut(e, t) {
|
|
1720
1726
|
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));
|
|
1721
1727
|
}
|
|
1722
|
-
function
|
|
1728
|
+
function Wt(e) {
|
|
1723
1729
|
return String(Math.round(e * 1e3) / 1e3);
|
|
1724
1730
|
}
|
|
1725
|
-
var
|
|
1731
|
+
var Gt = class {
|
|
1726
1732
|
getGroup;
|
|
1727
1733
|
getFilterArea;
|
|
1728
1734
|
onModeChange;
|
|
@@ -1752,11 +1758,11 @@ var Ut = class {
|
|
|
1752
1758
|
}
|
|
1753
1759
|
register(e) {
|
|
1754
1760
|
this.revive(), this.unregister(e.id);
|
|
1755
|
-
let t =
|
|
1761
|
+
let t = Rt(e.config), n = {
|
|
1756
1762
|
...e,
|
|
1757
1763
|
config: t,
|
|
1758
|
-
target:
|
|
1759
|
-
current:
|
|
1764
|
+
target: zt(t),
|
|
1765
|
+
current: zt(t),
|
|
1760
1766
|
motion: null,
|
|
1761
1767
|
lastBox: null,
|
|
1762
1768
|
lastPaint: null,
|
|
@@ -1778,7 +1784,7 @@ var Ut = class {
|
|
|
1778
1784
|
update(e, t) {
|
|
1779
1785
|
let n = this.items.get(e);
|
|
1780
1786
|
if (!n) return;
|
|
1781
|
-
let r =
|
|
1787
|
+
let r = Rt(t), i = zt(r), a = !Bt(n.target, i), o = !Vt(n.config, r);
|
|
1782
1788
|
if (n.config = r, this.updateFeaturePadding(), !a) {
|
|
1783
1789
|
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());
|
|
1784
1790
|
return;
|
|
@@ -1786,13 +1792,13 @@ var Ut = class {
|
|
|
1786
1792
|
let s = this.now();
|
|
1787
1793
|
if (this.advanceEntry(n, s), n.target = i, this.reducedMotion) this.snapEntry(n), this.resetMoveEntry(n), this.resetDynamicEntry(n), this.setMode("reduced");
|
|
1788
1794
|
else {
|
|
1789
|
-
let e =
|
|
1795
|
+
let e = It(r.transition), t = e.duration > 0;
|
|
1790
1796
|
!(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 = {
|
|
1791
1797
|
from: { ...n.current },
|
|
1792
1798
|
to: { ...i },
|
|
1793
1799
|
start: s + (r.delay ?? 0),
|
|
1794
1800
|
duration: e.duration,
|
|
1795
|
-
ease:
|
|
1801
|
+
ease: Ft(e.easing)
|
|
1796
1802
|
}, n.host.style.willChange = r.observe ? "" : "transform", this.setMode("animated"));
|
|
1797
1803
|
}
|
|
1798
1804
|
this.touch(s), this.needsPaint = !0, this.wake();
|
|
@@ -1849,7 +1855,7 @@ var Ut = class {
|
|
|
1849
1855
|
ensureClaim() {
|
|
1850
1856
|
if (this.claimed) return !0;
|
|
1851
1857
|
let e = this.getFilterArea();
|
|
1852
|
-
return Number.isFinite(e) && (this.filterArea = Math.max(0, e)), Ae(this.filterArea) ? (this.claimed = !0, this.moveOptions =
|
|
1858
|
+
return Number.isFinite(e) && (this.filterArea = Math.max(0, e)), Ae(this.filterArea) ? (this.claimed = !0, this.moveOptions = Qe(this.getGroup()), !0) : (this.warnBudgetFallback(), !1);
|
|
1853
1859
|
}
|
|
1854
1860
|
warnBudgetFallback() {
|
|
1855
1861
|
if (this.budgetWarningEmitted) return;
|
|
@@ -1867,7 +1873,7 @@ var Ut = class {
|
|
|
1867
1873
|
return e.config.effect === "bend";
|
|
1868
1874
|
}
|
|
1869
1875
|
isShape(e) {
|
|
1870
|
-
return !this.isBend(e) && e.config.morph !== void 0 &&
|
|
1876
|
+
return !this.isBend(e) && e.config.morph !== void 0 && vt(this.getGroup(), e.config.morph);
|
|
1871
1877
|
}
|
|
1872
1878
|
isDynamic(e) {
|
|
1873
1879
|
return this.isBend(e) || this.isShape(e);
|
|
@@ -1890,7 +1896,7 @@ var Ut = class {
|
|
|
1890
1896
|
let e = 0;
|
|
1891
1897
|
for (let t of this.items.values()) {
|
|
1892
1898
|
let n = this.featureBox(t);
|
|
1893
|
-
this.isBend(t) ? e = Math.max(e,
|
|
1899
|
+
this.isBend(t) ? e = Math.max(e, lt(n, $e(this.getGroup(), t.config.bend))) : this.isShape(t) && (e = Math.max(e, yt(this.getGroup(), t.config.morph)));
|
|
1894
1900
|
}
|
|
1895
1901
|
Math.abs(e - this.featurePadding) < .5 || (this.featurePadding = e, this.onFeaturePaddingChange?.(e));
|
|
1896
1902
|
}
|
|
@@ -1903,7 +1909,7 @@ var Ut = class {
|
|
|
1903
1909
|
this.clearContentBlur(e);
|
|
1904
1910
|
return;
|
|
1905
1911
|
}
|
|
1906
|
-
let r = e.baseContentFilter.trim(), i = `${r && r !== "none" ? `${r} ` : ""}blur(${
|
|
1912
|
+
let r = e.baseContentFilter.trim(), i = `${r && r !== "none" ? `${r} ` : ""}blur(${Wt(n)}px)`;
|
|
1907
1913
|
e.lastContentFilter !== i && (e.host.style.filter = i, e.lastContentFilter = i, e.contentBlurred = !0);
|
|
1908
1914
|
}
|
|
1909
1915
|
clearBendVars(e) {
|
|
@@ -1946,7 +1952,7 @@ var Ut = class {
|
|
|
1946
1952
|
e.ownTransform && e.host.style.transform === e.ownTransform && e.host.style.removeProperty("transform"), e.ownTransform = "";
|
|
1947
1953
|
return;
|
|
1948
1954
|
}
|
|
1949
|
-
let t = `translate(${
|
|
1955
|
+
let t = `translate(${Wt(e.current.x)}px, ${Wt(e.current.y)}px) scale(${Wt(e.current.scale)})`;
|
|
1950
1956
|
e.ownTransform !== t && (e.ownTransform = t, e.host.style.transform = t);
|
|
1951
1957
|
}
|
|
1952
1958
|
createTailElements(e) {
|
|
@@ -1982,15 +1988,15 @@ var Ut = class {
|
|
|
1982
1988
|
};
|
|
1983
1989
|
}
|
|
1984
1990
|
readBox(e, t) {
|
|
1985
|
-
let n = e.host.firstElementChild ?? e.host, r =
|
|
1991
|
+
let n = e.host.firstElementChild ?? e.host, r = Ue(e.host, t), i = e.host.offsetWidth, a = e.host.offsetHeight;
|
|
1986
1992
|
if (e.config.observe) {
|
|
1987
1993
|
let o = n.getBoundingClientRect(), s = t.getBoundingClientRect();
|
|
1988
1994
|
o.width > 0 || o.height > 0 ? (r = {
|
|
1989
1995
|
x: o.left - s.left,
|
|
1990
1996
|
y: o.top - s.top
|
|
1991
|
-
}, i = o.width || n.offsetWidth, a = o.height || n.offsetHeight) : (r =
|
|
1997
|
+
}, i = o.width || n.offsetWidth, a = o.height || n.offsetHeight) : (r = Ue(n, t), i = n.offsetWidth || e.host.offsetWidth, a = n.offsetHeight || e.host.offsetHeight);
|
|
1992
1998
|
}
|
|
1993
|
-
let o = e.config.radius === void 0 ?
|
|
1999
|
+
let o = e.config.radius === void 0 ? We(n, i, a) : Ge(e.config.radius);
|
|
1994
2000
|
return {
|
|
1995
2001
|
x: r.x,
|
|
1996
2002
|
y: r.y,
|
|
@@ -2012,8 +2018,8 @@ var Ut = class {
|
|
|
2012
2018
|
}
|
|
2013
2019
|
paintEvolveEntry(e, t, n, r) {
|
|
2014
2020
|
let i = this.dynamicTarget(e, t);
|
|
2015
|
-
e.evolve ||=
|
|
2016
|
-
let a =
|
|
2021
|
+
e.evolve ||= bt(i), (this.reducedMotion || !this.claimed && !r) && xt(e.evolve, i);
|
|
2022
|
+
let a = _t(this.getGroup(), e.config.morph), o = Dt(e.evolve, i, this.reducedMotion || !this.claimed && !r ? 0 : n, this.now(), a), s = `${o.path}|${o.transform}`, c = !1;
|
|
2017
2023
|
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), {
|
|
2018
2024
|
changed: c,
|
|
2019
2025
|
moving: !this.reducedMotion && this.claimed && o.moving
|
|
@@ -2021,8 +2027,8 @@ var Ut = class {
|
|
|
2021
2027
|
}
|
|
2022
2028
|
paintBendEntry(e, t, n, r) {
|
|
2023
2029
|
let i = this.dynamicTarget(e, t);
|
|
2024
|
-
e.bendState ||=
|
|
2025
|
-
let a =
|
|
2030
|
+
e.bendState ||= st(i), (this.reducedMotion || !this.claimed && !r) && ct(e.bendState, i);
|
|
2031
|
+
let a = $e(this.getGroup(), e.config.bend), o = ut(e.bendState, i, t, this.reducedMotion || !this.claimed && !r ? 0 : n, a), s = !1;
|
|
2026
2032
|
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), {
|
|
2027
2033
|
changed: s,
|
|
2028
2034
|
moving: !this.reducedMotion && this.claimed && o.moving
|
|
@@ -2030,15 +2036,15 @@ var Ut = class {
|
|
|
2030
2036
|
}
|
|
2031
2037
|
paintFollowEntry(e, t, n, r, i) {
|
|
2032
2038
|
let a = this.moveTarget(e, t);
|
|
2033
|
-
!i && r && !this.reducedMotion && !this.claimed && (this.ensureClaim() ? this.setMode("animated") : (this.resetMoveEntry(e), e.move =
|
|
2034
|
-
let o = this.moveOptions ??=
|
|
2039
|
+
!i && r && !this.reducedMotion && !this.claimed && (this.ensureClaim() ? this.setMode("animated") : (this.resetMoveEntry(e), e.move = nt(a))), e.move ||= nt(a), this.reducedMotion && rt(e.move, a);
|
|
2040
|
+
let o = this.moveOptions ??= Qe(this.getGroup()), s = at(e.move, a, t, this.reducedMotion ? 0 : n, o), c = `${s.path}|${s.transform}`, l = !1;
|
|
2035
2041
|
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), {
|
|
2036
2042
|
changed: l,
|
|
2037
2043
|
moving: !this.reducedMotion && s.moving && this.claimed
|
|
2038
2044
|
};
|
|
2039
2045
|
}
|
|
2040
2046
|
paintEntry(e, t) {
|
|
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(${
|
|
2047
|
+
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(${Wt(n)} ${Wt(r)}) scale(${Wt(e.current.scale)})`, a = Ke(0, 0, t.w, t.h, t.r), o = `${a}|${i}`;
|
|
2042
2048
|
return e.lastPaint === o ? !1 : (e.lastPaint = o, e.blob.setAttribute("d", a), e.blob.setAttribute("transform", i), !0);
|
|
2043
2049
|
}
|
|
2044
2050
|
loop = (e) => {
|
|
@@ -2057,7 +2063,7 @@ var Ut = class {
|
|
|
2057
2063
|
for (let t of this.items.values()) {
|
|
2058
2064
|
let n = e.get(t.id);
|
|
2059
2065
|
if (!n) continue;
|
|
2060
|
-
let r = t.lastBox === null, s = !
|
|
2066
|
+
let r = t.lastBox === null, s = !Ut(t.lastBox, n);
|
|
2061
2067
|
r && a.add(t.id), s && o.add(t.id), s && (t.lastBox = n, t.lastPaint = null, i = !0);
|
|
2062
2068
|
}
|
|
2063
2069
|
this.updateFeaturePadding();
|
|
@@ -2125,18 +2131,18 @@ var Ut = class {
|
|
|
2125
2131
|
};
|
|
2126
2132
|
//#endregion
|
|
2127
2133
|
//#region src/liquidGooeyShadow.ts
|
|
2128
|
-
function
|
|
2134
|
+
function Kt(e, t) {
|
|
2129
2135
|
let n = [], r = 0, i = "";
|
|
2130
2136
|
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;
|
|
2131
2137
|
return i.trim() && n.push(i.trim()), n;
|
|
2132
2138
|
}
|
|
2133
|
-
var
|
|
2134
|
-
function
|
|
2139
|
+
var qt = /^[+-]?(\d+\.?\d*|\.\d+)(px)?$/;
|
|
2140
|
+
function Jt(e) {
|
|
2135
2141
|
if (!e || e.trim() === "" || e.trim() === "none") return [];
|
|
2136
2142
|
let t = [];
|
|
2137
|
-
for (let n of
|
|
2138
|
-
let e =
|
|
2139
|
-
for (let t of e) t !== "inset" && (i.length < 4 &&
|
|
2143
|
+
for (let n of Kt(e, ",")) {
|
|
2144
|
+
let e = Kt(n, " "), r = e.includes("inset"), i = [], a = [];
|
|
2145
|
+
for (let t of e) t !== "inset" && (i.length < 4 && qt.test(t) ? i.push(parseFloat(t)) : a.push(t));
|
|
2140
2146
|
let [o = 0, s = 0, c = 0, l = 0] = i;
|
|
2141
2147
|
t.push({
|
|
2142
2148
|
x: o,
|
|
@@ -2149,18 +2155,31 @@ function Kt(e) {
|
|
|
2149
2155
|
}
|
|
2150
2156
|
return t;
|
|
2151
2157
|
}
|
|
2152
|
-
function
|
|
2158
|
+
function Yt(e) {
|
|
2153
2159
|
if (!e || e.trim() === "" || e.trim() === "none") return null;
|
|
2154
|
-
let t =
|
|
2155
|
-
for (let e of t) e !== "solid" && (n === 0 &&
|
|
2160
|
+
let t = Kt(e, " "), n = 0, r = [];
|
|
2161
|
+
for (let e of t) e !== "solid" && (n === 0 && qt.test(e) ? n = parseFloat(e) : r.push(e));
|
|
2156
2162
|
return {
|
|
2157
2163
|
width: n,
|
|
2158
2164
|
color: r.join(" ") || "var(--game-ui-stroke, transparent)"
|
|
2159
2165
|
};
|
|
2160
2166
|
}
|
|
2167
|
+
function Xt(e) {
|
|
2168
|
+
return !e.inset && e.spread === 0 && (e.blur > 0 || e.x !== 0 || e.y !== 0);
|
|
2169
|
+
}
|
|
2170
|
+
function Zt(e) {
|
|
2171
|
+
let t = e.filter(Xt).map((e) => `drop-shadow(${e.x}px ${e.y}px ${e.blur}px ${e.color})`);
|
|
2172
|
+
return t.length > 0 ? t.join(" ") : void 0;
|
|
2173
|
+
}
|
|
2174
|
+
function Qt(e) {
|
|
2175
|
+
return e.filter((e) => !Xt(e));
|
|
2176
|
+
}
|
|
2177
|
+
function $t(e) {
|
|
2178
|
+
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);
|
|
2179
|
+
}
|
|
2161
2180
|
//#endregion
|
|
2162
2181
|
//#region src/liquidGooeyImageMelt.tsx
|
|
2163
|
-
var
|
|
2182
|
+
var en = 24, tn = 500, nn = 16, rn = 6, an = {
|
|
2164
2183
|
blur: 7,
|
|
2165
2184
|
contrast: 40,
|
|
2166
2185
|
reach: .8,
|
|
@@ -2190,13 +2209,13 @@ var Jt = 24, Yt = 500, Xt = 16, Zt = 6, Qt = {
|
|
|
2190
2209
|
sink: .8,
|
|
2191
2210
|
seamBlur: 12.8
|
|
2192
2211
|
};
|
|
2193
|
-
function
|
|
2212
|
+
function on(e, t = 0, n = 1) {
|
|
2194
2213
|
return Math.min(n, Math.max(t, e));
|
|
2195
2214
|
}
|
|
2196
|
-
function
|
|
2215
|
+
function sn(e, t) {
|
|
2197
2216
|
return e !== void 0 && Number.isFinite(e) ? e : t;
|
|
2198
2217
|
}
|
|
2199
|
-
function
|
|
2218
|
+
function cn(e, t, n) {
|
|
2200
2219
|
let r = e?.ownerDocument.defaultView;
|
|
2201
2220
|
if (!r) return n;
|
|
2202
2221
|
let i = z[t], a = /^var\((--[\w-]+)\)$/.exec(i)?.[1];
|
|
@@ -2204,34 +2223,34 @@ function tn(e, t, n) {
|
|
|
2204
2223
|
let o = Number.parseFloat(r.getComputedStyle(e).getPropertyValue(a));
|
|
2205
2224
|
return Number.isFinite(o) ? o : n;
|
|
2206
2225
|
}
|
|
2207
|
-
function
|
|
2208
|
-
let n = (n, r) =>
|
|
2226
|
+
function ln(e, t = {}) {
|
|
2227
|
+
let n = (n, r) => sn(t[n], cn(e, r, an[n]));
|
|
2209
2228
|
return {
|
|
2210
2229
|
blur: Math.max(0, n("blur", "meltBlur")),
|
|
2211
2230
|
contrast: Math.max(1, n("contrast", "meltContrast")),
|
|
2212
2231
|
reach: Math.max(0, n("reach", "meltReach")),
|
|
2213
2232
|
fade: Math.max(0, n("fade", "meltFade")),
|
|
2214
2233
|
warp: Math.max(0, n("warp", "meltWarp")),
|
|
2215
|
-
mix:
|
|
2234
|
+
mix: on(n("mix", "meltMix")),
|
|
2216
2235
|
mixBlur: Math.max(0, n("mixBlur", "meltMixBlur")),
|
|
2217
2236
|
gravity: Math.max(0, n("gravity", "meltGravity")),
|
|
2218
2237
|
waviness: Math.max(0, n("waviness", "meltWaviness"))
|
|
2219
2238
|
};
|
|
2220
2239
|
}
|
|
2221
|
-
function
|
|
2240
|
+
function un(e, t) {
|
|
2222
2241
|
let n = typeof t == "object" && t ? t : {}, r = (t, r, i) => {
|
|
2223
2242
|
let a = n[t];
|
|
2224
|
-
return
|
|
2225
|
-
}, i =
|
|
2243
|
+
return sn(typeof a == "number" ? a : void 0, cn(e, r, i));
|
|
2244
|
+
}, i = on(typeof t == "number" ? t : r("strength", "dissolveStrength", J.strength));
|
|
2226
2245
|
return {
|
|
2227
2246
|
blur: Math.max(0, r("blur", "dissolveBlur", J.blur)),
|
|
2228
2247
|
warp: Math.max(0, r("warp", "dissolveWarp", J.warp)),
|
|
2229
2248
|
pull: Math.max(0, r("pull", "dissolvePull", J.pull)),
|
|
2230
2249
|
range: Math.max(1, r("range", "dissolveRange", J.range)),
|
|
2231
2250
|
zone: Math.max(1, r("zone", "dissolveZone", J.zone)),
|
|
2232
|
-
mix:
|
|
2251
|
+
mix: on(r("mix", "dissolveMix", J.mix)),
|
|
2233
2252
|
gravity: Math.max(0, r("gravity", "dissolveGravity", J.gravity)),
|
|
2234
|
-
taper:
|
|
2253
|
+
taper: on(r("taper", "dissolveTaper", J.taper)),
|
|
2235
2254
|
warpFreq: Math.max(.2, r("warpFreq", "dissolveWarpFreq", J.warpFreq)),
|
|
2236
2255
|
flowSpeed: Math.max(0, r("flowSpeed", "dissolveFlowSpeed", J.flowSpeed)),
|
|
2237
2256
|
warpStyle: n.warpStyle ?? J.warpStyle,
|
|
@@ -2244,13 +2263,13 @@ function rn(e, t) {
|
|
|
2244
2263
|
seamBlur: Math.max(0, r("seamBlur", "dissolveSeamBlur", J.seamBlur))
|
|
2245
2264
|
};
|
|
2246
2265
|
}
|
|
2247
|
-
function
|
|
2266
|
+
function dn(e) {
|
|
2248
2267
|
return e ? e instanceof HTMLImageElement ? e : e.querySelector("img") : null;
|
|
2249
2268
|
}
|
|
2250
|
-
function
|
|
2269
|
+
function fn(e) {
|
|
2251
2270
|
return e && (e.currentSrc || e.src) || null;
|
|
2252
2271
|
}
|
|
2253
|
-
function
|
|
2272
|
+
function pn(e) {
|
|
2254
2273
|
return {
|
|
2255
2274
|
maskImage: e.style.getPropertyValue("mask-image"),
|
|
2256
2275
|
maskPriority: e.style.getPropertyPriority("mask-image"),
|
|
@@ -2258,11 +2277,11 @@ function sn(e) {
|
|
|
2258
2277
|
webkitMaskPriority: e.style.getPropertyPriority("-webkit-mask-image")
|
|
2259
2278
|
};
|
|
2260
2279
|
}
|
|
2261
|
-
function
|
|
2280
|
+
function mn(e) {
|
|
2262
2281
|
let t = e.image, n = e.previousMask;
|
|
2263
2282
|
!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"));
|
|
2264
2283
|
}
|
|
2265
|
-
function
|
|
2284
|
+
function hn() {
|
|
2266
2285
|
let e = /* @__PURE__ */ new Set(), t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set(), r = 0, i = () => n.forEach((e) => e());
|
|
2267
2286
|
return {
|
|
2268
2287
|
registerMelt(t) {
|
|
@@ -2280,15 +2299,15 @@ function ln() {
|
|
|
2280
2299
|
let n = {
|
|
2281
2300
|
...e,
|
|
2282
2301
|
id: `dissolve-${++r}`,
|
|
2283
|
-
previousMask: e.image ?
|
|
2302
|
+
previousMask: e.image ? pn(e.image) : null
|
|
2284
2303
|
};
|
|
2285
2304
|
return t.add(n), i(), {
|
|
2286
2305
|
update(e) {
|
|
2287
|
-
let t =
|
|
2288
|
-
t !== n.image && (
|
|
2306
|
+
let t = dn(n.el);
|
|
2307
|
+
t !== n.image && (mn(n), n.image = t, n.previousMask = t ? pn(t) : null), n.opts = un(n.el, e), i();
|
|
2289
2308
|
},
|
|
2290
2309
|
unregister() {
|
|
2291
|
-
|
|
2310
|
+
mn(n), t.delete(n), i();
|
|
2292
2311
|
}
|
|
2293
2312
|
};
|
|
2294
2313
|
},
|
|
@@ -2299,20 +2318,20 @@ function ln() {
|
|
|
2299
2318
|
dissolveEntries: () => [...t]
|
|
2300
2319
|
};
|
|
2301
2320
|
}
|
|
2302
|
-
function
|
|
2303
|
-
let r =
|
|
2321
|
+
function gn(e, t, n) {
|
|
2322
|
+
let r = dn(t);
|
|
2304
2323
|
return r || console.warn("[swimmer-ui] `dissolve` needs an <img> inside the item; text and other DOM content stay unchanged."), e.registerDissolve({
|
|
2305
2324
|
el: t,
|
|
2306
2325
|
image: r,
|
|
2307
|
-
opts:
|
|
2326
|
+
opts: un(t, n)
|
|
2308
2327
|
});
|
|
2309
2328
|
}
|
|
2310
|
-
function
|
|
2329
|
+
function _n({ src: e, options: n = {}, registry: r, children: i, forwardedRef: a, className: o, style: s, ...c }) {
|
|
2311
2330
|
let l = p(null), u = JSON.stringify(n), f = p(!1), m = (e) => {
|
|
2312
2331
|
l.current = e, typeof a == "function" ? a(e) : a && (a.current = e);
|
|
2313
2332
|
};
|
|
2314
2333
|
return d(() => {
|
|
2315
|
-
let t = l.current, i = t?.firstElementChild, a =
|
|
2334
|
+
let t = l.current, i = t?.firstElementChild, a = dn(i), o = e ?? fn(a);
|
|
2316
2335
|
if (!t || !i || !a || !o) {
|
|
2317
2336
|
f.current || (f.current = !0, console.warn("[swimmer-ui] effect=\"melt\" needs an image: pass melt={{ src }} or put an <img> inside the item."));
|
|
2318
2337
|
return;
|
|
@@ -2321,7 +2340,7 @@ function dn({ src: e, options: n = {}, registry: r, children: i, forwardedRef: a
|
|
|
2321
2340
|
el: t,
|
|
2322
2341
|
target: a,
|
|
2323
2342
|
src: o,
|
|
2324
|
-
opts:
|
|
2343
|
+
opts: ln(t, n)
|
|
2325
2344
|
});
|
|
2326
2345
|
}, [
|
|
2327
2346
|
u,
|
|
@@ -2335,7 +2354,7 @@ function dn({ src: e, options: n = {}, registry: r, children: i, forwardedRef: a
|
|
|
2335
2354
|
children: i
|
|
2336
2355
|
});
|
|
2337
2356
|
}
|
|
2338
|
-
var
|
|
2357
|
+
var vn = {
|
|
2339
2358
|
width: 0,
|
|
2340
2359
|
height: 0,
|
|
2341
2360
|
melt: null,
|
|
@@ -2345,28 +2364,28 @@ function Y(e, t = 2) {
|
|
|
2345
2364
|
let n = 10 ** t;
|
|
2346
2365
|
return Math.round(e * n) / n;
|
|
2347
2366
|
}
|
|
2348
|
-
function
|
|
2349
|
-
let t =
|
|
2367
|
+
function yn(e) {
|
|
2368
|
+
let t = on(e);
|
|
2350
2369
|
return t * t * (3 - 2 * t);
|
|
2351
2370
|
}
|
|
2352
|
-
function
|
|
2371
|
+
function bn(e, t) {
|
|
2353
2372
|
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);
|
|
2354
2373
|
return Math.hypot(n, r);
|
|
2355
2374
|
}
|
|
2356
|
-
function
|
|
2375
|
+
function xn(e, t) {
|
|
2357
2376
|
return {
|
|
2358
2377
|
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,
|
|
2359
2378
|
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
|
|
2360
2379
|
};
|
|
2361
2380
|
}
|
|
2362
|
-
function
|
|
2381
|
+
function Sn(e, t, n) {
|
|
2363
2382
|
let r = e.ownerDocument.defaultView?.getComputedStyle(e).borderTopLeftRadius ?? "";
|
|
2364
2383
|
return Math.max(0, Math.min(Number.parseFloat(r) || 0, t / 2, n / 2));
|
|
2365
2384
|
}
|
|
2366
|
-
function
|
|
2385
|
+
function Cn(e) {
|
|
2367
2386
|
return e.getBoundingClientRect();
|
|
2368
2387
|
}
|
|
2369
|
-
function
|
|
2388
|
+
function wn(e, t) {
|
|
2370
2389
|
let n = e.getBoundingClientRect();
|
|
2371
2390
|
return {
|
|
2372
2391
|
x: n.left - t.left,
|
|
@@ -2375,21 +2394,21 @@ function vn(e, t) {
|
|
|
2375
2394
|
h: n.height
|
|
2376
2395
|
};
|
|
2377
2396
|
}
|
|
2378
|
-
function
|
|
2379
|
-
let n =
|
|
2397
|
+
function Tn(e, t) {
|
|
2398
|
+
let n = wn(e, t);
|
|
2380
2399
|
return {
|
|
2381
2400
|
...n,
|
|
2382
|
-
r:
|
|
2401
|
+
r: Sn(e, n.w, n.h)
|
|
2383
2402
|
};
|
|
2384
2403
|
}
|
|
2385
|
-
function
|
|
2404
|
+
function En(e) {
|
|
2386
2405
|
return `${Y(e.x)}:${Y(e.y)}:${Y(e.w)}:${Y(e.h)}`;
|
|
2387
2406
|
}
|
|
2388
|
-
function
|
|
2389
|
-
let r = Math.max(1, e.offsetWidth || e.getBoundingClientRect().width), i = Math.max(1, e.offsetHeight || e.getBoundingClientRect().height), a = t ? Math.max(
|
|
2407
|
+
function Dn(e, t, n) {
|
|
2408
|
+
let r = Math.max(1, e.offsetWidth || e.getBoundingClientRect().width), i = Math.max(1, e.offsetHeight || e.getBoundingClientRect().height), a = t ? Math.max(en, t.blur * 3, t.fade * 2, t.warp + t.waviness, t.mixBlur * 2, t.gravity * .5) : 0, o = n ? Math.max(en, n.blur * 3, n.warp + n.zone, n.gravity * .5, n.seamBlur * 3) : 0, s = Math.ceil(Math.max(a, o, en));
|
|
2390
2409
|
return (r + s * 2) * (i + s * 2);
|
|
2391
2410
|
}
|
|
2392
|
-
function
|
|
2411
|
+
function On(e) {
|
|
2393
2412
|
let t = e[0]?.opts;
|
|
2394
2413
|
return t ? e.slice(1).reduce((e, t) => ({
|
|
2395
2414
|
...e,
|
|
@@ -2400,25 +2419,25 @@ function Sn(e) {
|
|
|
2400
2419
|
seamBlur: Math.max(e.seamBlur, t.opts.seamBlur)
|
|
2401
2420
|
}), { ...t }) : null;
|
|
2402
2421
|
}
|
|
2403
|
-
function
|
|
2422
|
+
function kn(e, t, n, r, i, a, o, s, c) {
|
|
2404
2423
|
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);
|
|
2405
2424
|
return `translate(${Y(m)} ${Y(h)}) rotate(${Y(l)}) scale(${Y(f, 3)} ${Y(p, 3)}) rotate(${-Y(l)}) translate(${Y(-m)} ${Y(-h)})`;
|
|
2406
2425
|
}
|
|
2407
|
-
function
|
|
2426
|
+
function An(e, t, n, r, i, a) {
|
|
2408
2427
|
let o = t - e.x, s = n - e.y;
|
|
2409
2428
|
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;
|
|
2410
2429
|
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;
|
|
2411
2430
|
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)`;
|
|
2412
2431
|
}
|
|
2413
|
-
function
|
|
2432
|
+
function jn(e) {
|
|
2414
2433
|
if (e < .002) return "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1";
|
|
2415
2434
|
let t = Y(1 + 4 * e, 3);
|
|
2416
2435
|
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)}`;
|
|
2417
2436
|
}
|
|
2418
|
-
function
|
|
2437
|
+
function Mn(e) {
|
|
2419
2438
|
return e.replace(/[^a-zA-Z0-9_-]/g, "");
|
|
2420
2439
|
}
|
|
2421
|
-
var
|
|
2440
|
+
var Nn = class {
|
|
2422
2441
|
registry;
|
|
2423
2442
|
getGroup;
|
|
2424
2443
|
onState;
|
|
@@ -2450,7 +2469,7 @@ var Dn = class {
|
|
|
2450
2469
|
if (!this.disposed) {
|
|
2451
2470
|
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;
|
|
2452
2471
|
for (let e of this.registry.entries()) this.setMeltPainted(e, !1);
|
|
2453
|
-
for (let e of this.registry.dissolveEntries())
|
|
2472
|
+
for (let e of this.registry.dissolveEntries()) mn(e);
|
|
2454
2473
|
this.releaseClaim(), this.observed.clear();
|
|
2455
2474
|
}
|
|
2456
2475
|
}
|
|
@@ -2464,7 +2483,7 @@ var Dn = class {
|
|
|
2464
2483
|
let t = /* @__PURE__ */ new Set(), n = (e) => {
|
|
2465
2484
|
e && (t.add(e), this.observed.has(e) || this.resizeObserver?.observe(e));
|
|
2466
2485
|
};
|
|
2467
|
-
for (let e of this.registry.entries()) n(e.el), n(e.target), n(
|
|
2486
|
+
for (let e of this.registry.entries()) n(e.el), n(e.target), n(dn(e.target));
|
|
2468
2487
|
for (let e of this.registry.dissolveEntries()) n(e.el), n(e.image);
|
|
2469
2488
|
for (let e of this.observed) t.has(e) || this.resizeObserver?.unobserve(e);
|
|
2470
2489
|
this.observed.clear(), t.forEach((e) => this.observed.add(e)), !this.mutationObserver && typeof MutationObserver < "u" && (this.mutationObserver = new MutationObserver((e) => {
|
|
@@ -2504,7 +2523,7 @@ var Dn = class {
|
|
|
2504
2523
|
}
|
|
2505
2524
|
ensureClaim(e, t, n) {
|
|
2506
2525
|
if (this.claimed) return !0;
|
|
2507
|
-
if (!Ae(
|
|
2526
|
+
if (!Ae(Dn(e, t, n))) {
|
|
2508
2527
|
if (!this.budgetWarningEmitted) {
|
|
2509
2528
|
this.budgetWarningEmitted = !0;
|
|
2510
2529
|
let e = Oe(), t = e.activeGroups >= e.maxAnimatedGroups ? "the active-group limit is reached" : "the filter-area limit is exceeded";
|
|
@@ -2518,7 +2537,7 @@ var Dn = class {
|
|
|
2518
2537
|
if (this.raf = 0, this.disposed) return;
|
|
2519
2538
|
let t = this.registry.entries(), n = this.registry.dissolveEntries();
|
|
2520
2539
|
if (t.length === 0 && n.length === 0) {
|
|
2521
|
-
this.awake = !1, this.lastNow = 0, this.lastActivity = 0, this.meltPairKey = "", this.meltProximity = 0, this.lastStateKey && (this.lastStateKey = "", this.onState(
|
|
2540
|
+
this.awake = !1, this.lastNow = 0, this.lastActivity = 0, this.meltPairKey = "", this.meltProximity = 0, this.lastStateKey && (this.lastStateKey = "", this.onState(vn)), this.releaseClaim();
|
|
2522
2541
|
return;
|
|
2523
2542
|
}
|
|
2524
2543
|
let r = this.getGroup();
|
|
@@ -2528,23 +2547,23 @@ var Dn = class {
|
|
|
2528
2547
|
}
|
|
2529
2548
|
let i = this.lastNow ? Math.min(.25, Math.max(1 / 240, (e - this.lastNow) / 1e3)) : 1 / 60;
|
|
2530
2549
|
this.lastNow = e;
|
|
2531
|
-
let a =
|
|
2532
|
-
for (let e of r.querySelectorAll(".game-ui-liquid-item")) e.closest(".game-ui-liquid-group") === r && o.set(e,
|
|
2550
|
+
let a = Cn(r), o = /* @__PURE__ */ new Map();
|
|
2551
|
+
for (let e of r.querySelectorAll(".game-ui-liquid-item")) e.closest(".game-ui-liquid-group") === r && o.set(e, wn(e, a));
|
|
2533
2552
|
let s = t.slice(0, 2), c = s.map((e) => {
|
|
2534
|
-
let t = o.get(e.el) ??
|
|
2553
|
+
let t = o.get(e.el) ?? wn(e.el, a), n = fn(dn(e.target));
|
|
2535
2554
|
return n && (e.src = n), {
|
|
2536
2555
|
...t,
|
|
2537
|
-
r:
|
|
2556
|
+
r: Sn(e.target, t.w, t.h)
|
|
2538
2557
|
};
|
|
2539
2558
|
}), 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}` : "";
|
|
2540
2559
|
d !== this.meltPairKey && (this.meltPairKey = d, this.meltProximity = 0);
|
|
2541
|
-
let f = l && c[0] && c[1] ?
|
|
2560
|
+
let f = l && c[0] && c[1] ? yn(1 - bn(c[0], c[1]) / Math.max(8, u.blur * 2.6)) : 0;
|
|
2542
2561
|
this.meltProximity += (f - this.meltProximity) * (1 - Math.exp(-14 * i)), Math.abs(this.meltProximity - f) < .004 && (this.meltProximity = f);
|
|
2543
|
-
let p = this.computeDissolves(n, o, a, i), m = l, h = p.visuals.length > 0, g = m || h, _ =
|
|
2562
|
+
let p = this.computeDissolves(n, o, a, i), m = l, h = p.visuals.length > 0, g = m || h, _ = On(n);
|
|
2544
2563
|
if (g && !this.ensureClaim(r, u, _)) {
|
|
2545
2564
|
for (let e of t) this.setMeltPainted(e, !1);
|
|
2546
|
-
for (let e of n)
|
|
2547
|
-
this.onState(
|
|
2565
|
+
for (let e of n) mn(e);
|
|
2566
|
+
this.onState(vn), this.lastStateKey = "", this.awake = !1, this.lastNow = 0;
|
|
2548
2567
|
return;
|
|
2549
2568
|
}
|
|
2550
2569
|
if (m) for (let [e, n] of t.entries()) this.setMeltPainted(n, e < 2);
|
|
@@ -2561,14 +2580,14 @@ var Dn = class {
|
|
|
2561
2580
|
srcA: s[0].src,
|
|
2562
2581
|
srcB: s[1].src,
|
|
2563
2582
|
opts: s[0].opts,
|
|
2564
|
-
prox:
|
|
2583
|
+
prox: on(this.meltProximity)
|
|
2565
2584
|
} : null,
|
|
2566
2585
|
dissolves: p.visuals
|
|
2567
2586
|
}, y = this.renderStateKey(v), b = y !== this.lastStateKey;
|
|
2568
|
-
b && (this.lastStateKey = y, this.onState(v), this.lastActivity = e), b || p.pending || e - this.lastActivity <
|
|
2587
|
+
b && (this.lastStateKey = y, this.onState(v), this.lastActivity = e), b || p.pending || e - this.lastActivity < tn ? (this.awake = !0, this.raf = requestAnimationFrame(this.loop)) : (this.awake = !1, this.lastNow = 0);
|
|
2569
2588
|
};
|
|
2570
2589
|
renderStateKey(e) {
|
|
2571
|
-
let t = e.melt ? `${e.melt.srcA}|${e.melt.srcB}|${
|
|
2590
|
+
let t = e.melt ? `${e.melt.srcA}|${e.melt.srcB}|${En(e.melt.a)}|${En(e.melt.b)}|${Y(e.melt.prox, 3)}` : "", n = e.dissolves.map((e) => `${e.id}|${e.src}|${e.neighborSrc ?? ""}|${En(e.image)}|${Y(e.cx)}|${Y(e.cy)}|${Y(e.d, 2)}|${Y(e.opacity, 3)}|${Y(e.phase, 3)}|${e.mask ?? ""}`).join(";");
|
|
2572
2591
|
return `${e.width}x${e.height}|${t}|${n}`;
|
|
2573
2592
|
}
|
|
2574
2593
|
computeDissolves(e, t, n, r) {
|
|
@@ -2576,7 +2595,7 @@ var Dn = class {
|
|
|
2576
2595
|
for (let s of e) {
|
|
2577
2596
|
let e = t.get(s.el), c = s.image;
|
|
2578
2597
|
if (!e || !c) {
|
|
2579
|
-
s.image &&
|
|
2598
|
+
s.image && mn(s);
|
|
2580
2599
|
continue;
|
|
2581
2600
|
}
|
|
2582
2601
|
let l = this.motions.get(s.id) ?? {
|
|
@@ -2592,7 +2611,7 @@ var Dn = class {
|
|
|
2592
2611
|
let u = Infinity, d = null, f = null;
|
|
2593
2612
|
for (let [t, n] of o) {
|
|
2594
2613
|
if (t === s.el) continue;
|
|
2595
|
-
let r =
|
|
2614
|
+
let r = bn(e, n);
|
|
2596
2615
|
r < u && (u = r, d = n, f = t);
|
|
2597
2616
|
}
|
|
2598
2617
|
let p = 0, m = 0;
|
|
@@ -2602,11 +2621,11 @@ var Dn = class {
|
|
|
2602
2621
|
}
|
|
2603
2622
|
let h = 0;
|
|
2604
2623
|
if (d && u < s.opts.range && s.opts.active) {
|
|
2605
|
-
let e =
|
|
2624
|
+
let e = yn((1 - u / s.opts.range) / .65), t = yn((p - s.opts.sink * .2) / Math.max(.01, s.opts.sink * .8));
|
|
2606
2625
|
h = e ** 1.25 * s.opts.strength * (1 - t);
|
|
2607
2626
|
}
|
|
2608
|
-
if (h >= l.fade) l.fade += (h - l.fade) * Math.min(1, r *
|
|
2609
|
-
else if (h > .02) l.fade += (h - l.fade) * Math.min(1, r *
|
|
2627
|
+
if (h >= l.fade) l.fade += (h - l.fade) * Math.min(1, r * nn), l.release = null;
|
|
2628
|
+
else if (h > .02) l.fade += (h - l.fade) * Math.min(1, r * rn), l.release = null;
|
|
2610
2629
|
else if (l.fade > .001 || l.release) {
|
|
2611
2630
|
l.release ||= {
|
|
2612
2631
|
from: l.fade,
|
|
@@ -2616,26 +2635,26 @@ var Dn = class {
|
|
|
2616
2635
|
l.fade = l.release.from * (1 - t) ** 2;
|
|
2617
2636
|
} else l.fade = 0;
|
|
2618
2637
|
if (l.fade <= .001) {
|
|
2619
|
-
l.fade = 0,
|
|
2638
|
+
l.fade = 0, mn(s);
|
|
2620
2639
|
continue;
|
|
2621
2640
|
}
|
|
2622
2641
|
let g = d ?? l.contact;
|
|
2623
2642
|
if (!g) continue;
|
|
2624
|
-
let _ =
|
|
2643
|
+
let _ = xn(e, g);
|
|
2625
2644
|
l.contact = { ...g };
|
|
2626
|
-
let v =
|
|
2627
|
-
l.opacity = l.release ? (1 - y) ** 2 : l.opacity + (1 - l.opacity) * Math.min(1, r *
|
|
2645
|
+
let v = yn(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;
|
|
2646
|
+
l.opacity = l.release ? (1 - y) ** 2 : l.opacity + (1 - l.opacity) * Math.min(1, r * nn);
|
|
2628
2647
|
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;
|
|
2629
2648
|
l.previous = {
|
|
2630
2649
|
x: e.x,
|
|
2631
2650
|
y: e.y
|
|
2632
2651
|
}, l.phase += Math.min(r, 1 / 24) * s.opts.flowSpeed * .12 * Math.min(1, S / 40);
|
|
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 =
|
|
2634
|
-
O ? (c.style.setProperty("mask-image", O), c.style.setProperty("-webkit-mask-image", O)) :
|
|
2635
|
-
let
|
|
2652
|
+
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 = Tn(c, n), D = d && u < Math.max(10, s.opts.blur * 2.5) ? yn(1 - u / Math.max(10, s.opts.blur * 2.5)) : l.fade, O = An(E, _.x, _.y, b, l.fade, Math.max(D, m * .75));
|
|
2653
|
+
O ? (c.style.setProperty("mask-image", O), c.style.setProperty("-webkit-mask-image", O)) : mn(s);
|
|
2654
|
+
let ee = Math.atan2(w, C) * 180 / Math.PI, k = {
|
|
2636
2655
|
id: s.id,
|
|
2637
|
-
src:
|
|
2638
|
-
neighborSrc: f ?
|
|
2656
|
+
src: fn(c) ?? c.src,
|
|
2657
|
+
neighborSrc: f ? fn(dn(f)) : null,
|
|
2639
2658
|
image: E,
|
|
2640
2659
|
cx: _.x,
|
|
2641
2660
|
cy: _.y,
|
|
@@ -2643,7 +2662,7 @@ var Dn = class {
|
|
|
2643
2662
|
opacity: l.opacity,
|
|
2644
2663
|
phase: l.phase,
|
|
2645
2664
|
structure: v,
|
|
2646
|
-
angle:
|
|
2665
|
+
angle: ee,
|
|
2647
2666
|
gravityX: C,
|
|
2648
2667
|
gravityY: w,
|
|
2649
2668
|
elongation: T,
|
|
@@ -2652,7 +2671,7 @@ var Dn = class {
|
|
|
2652
2671
|
options: s.opts,
|
|
2653
2672
|
mask: O
|
|
2654
2673
|
};
|
|
2655
|
-
i.push(
|
|
2674
|
+
i.push(k), a = a || !!l.release || Math.abs(h - l.fade) > .004 || l.previous === null;
|
|
2656
2675
|
}
|
|
2657
2676
|
return {
|
|
2658
2677
|
visuals: i,
|
|
@@ -2660,8 +2679,8 @@ var Dn = class {
|
|
|
2660
2679
|
};
|
|
2661
2680
|
}
|
|
2662
2681
|
};
|
|
2663
|
-
function
|
|
2664
|
-
let f = `lgm-${
|
|
2682
|
+
function Pn({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox: d }) {
|
|
2683
|
+
let f = `lgm-${Mn(u())}`, { blur: p, contrast: m, reach: h, fade: g, warp: _, mix: v, mixBlur: y, gravity: b, waviness: x } = s, S = {
|
|
2665
2684
|
x: r.x + r.w / 2,
|
|
2666
2685
|
y: r.y + r.h / 2
|
|
2667
2686
|
}, C = {
|
|
@@ -2670,7 +2689,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2670
2689
|
}, w = Math.hypot(r.w, r.h) / 2 * h * d, T = Math.hypot(i.w, i.h) / 2 * h * d, E = {
|
|
2671
2690
|
x: (S.x + C.x) / 2,
|
|
2672
2691
|
y: (S.y + C.y) / 2
|
|
2673
|
-
}, D = C.x - S.x, O = C.y - S.y,
|
|
2692
|
+
}, D = C.x - S.x, O = C.y - S.y, ee = Math.max(.001, Math.hypot(D, O)), k = -O / ee, te = D / ee, ne = Math.max(0, (r.w + i.w) / 2 - Math.abs(D)), A = Math.max(0, (r.h + i.h) / 2 - Math.abs(O)), j = .5 * (ne * Math.abs(k) + A * Math.abs(te)) * d, M = Math.round(Math.atan2(te, k) * 180 / Math.PI), re = Math.round(v * d * 100) / 100, ie = Math.round((2 + (p - 2) * d) * 10) / 10, ae = Math.round(_ * d * 10) / 10, N = Math.round(ie * 2.5 * 10) / 10, oe = Math.round((.4 + (2 + p * .8) * d) * 10) / 10, se = `translate(${r.x}, ${r.y})`, ce = `translate(${i.x}, ${i.y})`;
|
|
2674
2693
|
return /* @__PURE__ */ n("svg", {
|
|
2675
2694
|
"aria-hidden": "true",
|
|
2676
2695
|
focusable: "false",
|
|
@@ -2720,7 +2739,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2720
2739
|
children: [
|
|
2721
2740
|
/* @__PURE__ */ t("feGaussianBlur", {
|
|
2722
2741
|
in: "SourceGraphic",
|
|
2723
|
-
stdDeviation:
|
|
2742
|
+
stdDeviation: ie,
|
|
2724
2743
|
result: "b"
|
|
2725
2744
|
}),
|
|
2726
2745
|
/* @__PURE__ */ t("feColorMatrix", {
|
|
@@ -2731,7 +2750,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2731
2750
|
}),
|
|
2732
2751
|
/* @__PURE__ */ t("feGaussianBlur", {
|
|
2733
2752
|
in: "SourceGraphic",
|
|
2734
|
-
stdDeviation:
|
|
2753
|
+
stdDeviation: N,
|
|
2735
2754
|
result: "bc"
|
|
2736
2755
|
}),
|
|
2737
2756
|
/* @__PURE__ */ t("feComposite", {
|
|
@@ -2750,7 +2769,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2750
2769
|
/* @__PURE__ */ t("feDisplacementMap", {
|
|
2751
2770
|
in: "mix",
|
|
2752
2771
|
in2: "wn",
|
|
2753
|
-
scale:
|
|
2772
|
+
scale: ae,
|
|
2754
2773
|
xChannelSelector: "R",
|
|
2755
2774
|
yChannelSelector: "G",
|
|
2756
2775
|
result: "warped"
|
|
@@ -2787,7 +2806,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2787
2806
|
height: "220%",
|
|
2788
2807
|
children: /* @__PURE__ */ t("feGaussianBlur", { stdDeviation: g })
|
|
2789
2808
|
}),
|
|
2790
|
-
|
|
2809
|
+
re > .01 ? /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ n("filter", {
|
|
2791
2810
|
id: `${f}-marble`,
|
|
2792
2811
|
x: "-25%",
|
|
2793
2812
|
y: "-25%",
|
|
@@ -2810,7 +2829,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2810
2829
|
/* @__PURE__ */ t("feDisplacementMap", {
|
|
2811
2830
|
in: "c",
|
|
2812
2831
|
in2: "n1",
|
|
2813
|
-
scale:
|
|
2832
|
+
scale: re * 90,
|
|
2814
2833
|
xChannelSelector: "R",
|
|
2815
2834
|
yChannelSelector: "G",
|
|
2816
2835
|
result: "d1"
|
|
@@ -2825,7 +2844,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2825
2844
|
/* @__PURE__ */ t("feDisplacementMap", {
|
|
2826
2845
|
in: "d1",
|
|
2827
2846
|
in2: "n2",
|
|
2828
|
-
scale:
|
|
2847
|
+
scale: re * 50,
|
|
2829
2848
|
xChannelSelector: "R",
|
|
2830
2849
|
yChannelSelector: "G",
|
|
2831
2850
|
result: "d2"
|
|
@@ -2849,7 +2868,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2849
2868
|
}),
|
|
2850
2869
|
/* @__PURE__ */ t("feGaussianBlur", {
|
|
2851
2870
|
in: "SourceGraphic",
|
|
2852
|
-
stdDeviation:
|
|
2871
|
+
stdDeviation: ie,
|
|
2853
2872
|
result: "mb"
|
|
2854
2873
|
}),
|
|
2855
2874
|
/* @__PURE__ */ t("feColorMatrix", {
|
|
@@ -2868,7 +2887,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2868
2887
|
/* @__PURE__ */ t("feDisplacementMap", {
|
|
2869
2888
|
in: "mg",
|
|
2870
2889
|
in2: "mwn",
|
|
2871
|
-
scale:
|
|
2890
|
+
scale: ae,
|
|
2872
2891
|
xChannelSelector: "R",
|
|
2873
2892
|
yChannelSelector: "G",
|
|
2874
2893
|
result: "mshape"
|
|
@@ -2891,9 +2910,9 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2891
2910
|
children: /* @__PURE__ */ t("ellipse", {
|
|
2892
2911
|
cx: E.x,
|
|
2893
2912
|
cy: E.y,
|
|
2894
|
-
rx: (w + T) / 2 +
|
|
2913
|
+
rx: (w + T) / 2 + j,
|
|
2895
2914
|
ry: (w + T) / 2 * b,
|
|
2896
|
-
transform: `rotate(${
|
|
2915
|
+
transform: `rotate(${M}, ${E.x}, ${E.y})`,
|
|
2897
2916
|
fill: "#fff"
|
|
2898
2917
|
})
|
|
2899
2918
|
})
|
|
@@ -2904,7 +2923,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2904
2923
|
y: "-40%",
|
|
2905
2924
|
width: "180%",
|
|
2906
2925
|
height: "180%",
|
|
2907
|
-
children: /* @__PURE__ */ t("feGaussianBlur", { stdDeviation:
|
|
2926
|
+
children: /* @__PURE__ */ t("feGaussianBlur", { stdDeviation: oe })
|
|
2908
2927
|
}),
|
|
2909
2928
|
/* @__PURE__ */ n("mask", {
|
|
2910
2929
|
id: `${f}-ma`,
|
|
@@ -2916,7 +2935,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2916
2935
|
children: [/* @__PURE__ */ t("g", {
|
|
2917
2936
|
filter: `url(#${f}-edge)`,
|
|
2918
2937
|
children: /* @__PURE__ */ t("g", {
|
|
2919
|
-
transform:
|
|
2938
|
+
transform: se,
|
|
2920
2939
|
children: /* @__PURE__ */ t("rect", {
|
|
2921
2940
|
width: r.w,
|
|
2922
2941
|
height: r.h,
|
|
@@ -2929,9 +2948,9 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2929
2948
|
children: /* @__PURE__ */ t("ellipse", {
|
|
2930
2949
|
cx: E.x,
|
|
2931
2950
|
cy: E.y,
|
|
2932
|
-
rx: T +
|
|
2951
|
+
rx: T + j,
|
|
2933
2952
|
ry: T,
|
|
2934
|
-
transform: `rotate(${
|
|
2953
|
+
transform: `rotate(${M}, ${E.x}, ${E.y})`,
|
|
2935
2954
|
fill: "#000"
|
|
2936
2955
|
})
|
|
2937
2956
|
})]
|
|
@@ -2946,7 +2965,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2946
2965
|
children: [/* @__PURE__ */ t("g", {
|
|
2947
2966
|
filter: `url(#${f}-edge)`,
|
|
2948
2967
|
children: /* @__PURE__ */ t("g", {
|
|
2949
|
-
transform:
|
|
2968
|
+
transform: ce,
|
|
2950
2969
|
children: /* @__PURE__ */ t("rect", {
|
|
2951
2970
|
width: i.w,
|
|
2952
2971
|
height: i.h,
|
|
@@ -2959,9 +2978,9 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2959
2978
|
children: /* @__PURE__ */ t("ellipse", {
|
|
2960
2979
|
cx: E.x,
|
|
2961
2980
|
cy: E.y,
|
|
2962
|
-
rx: w +
|
|
2981
|
+
rx: w + j,
|
|
2963
2982
|
ry: w,
|
|
2964
|
-
transform: `rotate(${
|
|
2983
|
+
transform: `rotate(${M}, ${E.x}, ${E.y})`,
|
|
2965
2984
|
fill: "#000"
|
|
2966
2985
|
})
|
|
2967
2986
|
})]
|
|
@@ -2970,7 +2989,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2970
2989
|
/* @__PURE__ */ n("g", {
|
|
2971
2990
|
filter: `url(#${f}-goo)`,
|
|
2972
2991
|
children: [/* @__PURE__ */ t("g", {
|
|
2973
|
-
transform:
|
|
2992
|
+
transform: se,
|
|
2974
2993
|
children: /* @__PURE__ */ t("rect", {
|
|
2975
2994
|
width: r.w,
|
|
2976
2995
|
height: r.h,
|
|
@@ -2978,7 +2997,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2978
2997
|
fill: `url(#${f}-pa)`
|
|
2979
2998
|
})
|
|
2980
2999
|
}), /* @__PURE__ */ t("g", {
|
|
2981
|
-
transform:
|
|
3000
|
+
transform: ce,
|
|
2982
3001
|
children: /* @__PURE__ */ t("rect", {
|
|
2983
3002
|
width: i.w,
|
|
2984
3003
|
height: i.h,
|
|
@@ -2987,12 +3006,12 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
2987
3006
|
})
|
|
2988
3007
|
})]
|
|
2989
3008
|
}),
|
|
2990
|
-
|
|
3009
|
+
re > .01 ? /* @__PURE__ */ t("g", {
|
|
2991
3010
|
mask: `url(#${f}-marblemask)`,
|
|
2992
3011
|
children: /* @__PURE__ */ n("g", {
|
|
2993
3012
|
filter: `url(#${f}-marble)`,
|
|
2994
3013
|
children: [/* @__PURE__ */ t("g", {
|
|
2995
|
-
transform:
|
|
3014
|
+
transform: se,
|
|
2996
3015
|
children: /* @__PURE__ */ t("rect", {
|
|
2997
3016
|
width: r.w,
|
|
2998
3017
|
height: r.h,
|
|
@@ -3000,7 +3019,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
3000
3019
|
fill: `url(#${f}-pa)`
|
|
3001
3020
|
})
|
|
3002
3021
|
}), /* @__PURE__ */ t("g", {
|
|
3003
|
-
transform:
|
|
3022
|
+
transform: ce,
|
|
3004
3023
|
children: /* @__PURE__ */ t("rect", {
|
|
3005
3024
|
width: i.w,
|
|
3006
3025
|
height: i.h,
|
|
@@ -3013,7 +3032,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
3013
3032
|
/* @__PURE__ */ t("g", {
|
|
3014
3033
|
mask: `url(#${f}-ma)`,
|
|
3015
3034
|
children: /* @__PURE__ */ t("g", {
|
|
3016
|
-
transform:
|
|
3035
|
+
transform: se,
|
|
3017
3036
|
children: /* @__PURE__ */ t("rect", {
|
|
3018
3037
|
width: r.w,
|
|
3019
3038
|
height: r.h,
|
|
@@ -3025,7 +3044,7 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
3025
3044
|
/* @__PURE__ */ t("g", {
|
|
3026
3045
|
mask: `url(#${f}-mb)`,
|
|
3027
3046
|
children: /* @__PURE__ */ t("g", {
|
|
3028
|
-
transform:
|
|
3047
|
+
transform: ce,
|
|
3029
3048
|
children: /* @__PURE__ */ t("rect", {
|
|
3030
3049
|
width: i.w,
|
|
3031
3050
|
height: i.h,
|
|
@@ -3037,10 +3056,10 @@ function On({ a: r, b: i, srcA: a, srcB: o, opts: s, width: c, height: l, prox:
|
|
|
3037
3056
|
]
|
|
3038
3057
|
});
|
|
3039
3058
|
}
|
|
3040
|
-
function
|
|
3041
|
-
let i = `lgd-${
|
|
3059
|
+
function Fn({ visuals: r }) {
|
|
3060
|
+
let i = `lgd-${Mn(u())}`;
|
|
3042
3061
|
return /* @__PURE__ */ t(e, { children: r.map((e) => {
|
|
3043
|
-
let r = `${i}-${
|
|
3062
|
+
let r = `${i}-${Mn(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 = kn(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);
|
|
3044
3063
|
return /* @__PURE__ */ n("g", {
|
|
3045
3064
|
"data-liquid-gooey-dissolve": "",
|
|
3046
3065
|
children: [
|
|
@@ -3172,7 +3191,7 @@ function kn({ visuals: r }) {
|
|
|
3172
3191
|
/* @__PURE__ */ t("feColorMatrix", {
|
|
3173
3192
|
in: "erosion-noise",
|
|
3174
3193
|
type: "matrix",
|
|
3175
|
-
values:
|
|
3194
|
+
values: jn(c),
|
|
3176
3195
|
result: "erosion"
|
|
3177
3196
|
}),
|
|
3178
3197
|
/* @__PURE__ */ t("feComposite", {
|
|
@@ -3244,10 +3263,10 @@ function kn({ visuals: r }) {
|
|
|
3244
3263
|
}, e.id);
|
|
3245
3264
|
}) });
|
|
3246
3265
|
}
|
|
3247
|
-
function
|
|
3248
|
-
let [i, a] = m(
|
|
3266
|
+
function In({ registry: e, getGroup: r }) {
|
|
3267
|
+
let [i, a] = m(vn);
|
|
3249
3268
|
return d(() => {
|
|
3250
|
-
let t = new
|
|
3269
|
+
let t = new Nn({
|
|
3251
3270
|
registry: e,
|
|
3252
3271
|
getGroup: r,
|
|
3253
3272
|
onState: a
|
|
@@ -3269,42 +3288,42 @@ function An({ registry: e, getGroup: r }) {
|
|
|
3269
3288
|
overflow: "visible",
|
|
3270
3289
|
pointerEvents: "none"
|
|
3271
3290
|
},
|
|
3272
|
-
children: [i.melt ? /* @__PURE__ */ t(
|
|
3291
|
+
children: [i.melt ? /* @__PURE__ */ t(Pn, {
|
|
3273
3292
|
...i.melt,
|
|
3274
3293
|
width: i.width,
|
|
3275
3294
|
height: i.height
|
|
3276
|
-
}) : null, i.dissolves.length > 0 ? /* @__PURE__ */ t(
|
|
3295
|
+
}) : null, i.dissolves.length > 0 ? /* @__PURE__ */ t(Fn, { visuals: i.dissolves }) : null]
|
|
3277
3296
|
});
|
|
3278
3297
|
}
|
|
3279
3298
|
//#endregion
|
|
3280
3299
|
//#region src/LiquidGroup.tsx
|
|
3281
|
-
var
|
|
3282
|
-
function
|
|
3283
|
-
let e = c(
|
|
3300
|
+
var Ln = i(null);
|
|
3301
|
+
function Rn() {
|
|
3302
|
+
let e = c(Ln);
|
|
3284
3303
|
if (!e) throw Error("<LiquidGroup.Item> must be rendered inside <LiquidGroup>.");
|
|
3285
3304
|
return e;
|
|
3286
3305
|
}
|
|
3287
|
-
function
|
|
3306
|
+
function zn(e) {
|
|
3288
3307
|
return e.replace(/[^a-zA-Z0-9_-]/g, "");
|
|
3289
3308
|
}
|
|
3290
|
-
function
|
|
3309
|
+
function Bn(e, t) {
|
|
3291
3310
|
return Number.isFinite(e) ? e : t;
|
|
3292
3311
|
}
|
|
3293
|
-
function
|
|
3312
|
+
function Vn(e, t) {
|
|
3294
3313
|
if (!e) return e;
|
|
3295
3314
|
let n = /^var\((--[\w-]+)\)$/.exec(e.trim());
|
|
3296
3315
|
if (!n || !t) return e;
|
|
3297
3316
|
let r = t.ownerDocument.defaultView;
|
|
3298
3317
|
return r && r.getComputedStyle(t).getPropertyValue(n[1] ?? "").trim() || e;
|
|
3299
3318
|
}
|
|
3300
|
-
function
|
|
3301
|
-
let r =
|
|
3319
|
+
function Hn(e, t, n) {
|
|
3320
|
+
let r = Vn(e, t), i = Number.parseFloat(r ?? "");
|
|
3302
3321
|
return Number.isFinite(i) ? i : n;
|
|
3303
3322
|
}
|
|
3304
|
-
function
|
|
3323
|
+
function Un(...e) {
|
|
3305
3324
|
return e.filter(Boolean).join(" ") || void 0;
|
|
3306
3325
|
}
|
|
3307
|
-
function
|
|
3326
|
+
function Wn(e) {
|
|
3308
3327
|
let t = { ...e };
|
|
3309
3328
|
for (let e of [
|
|
3310
3329
|
"children",
|
|
@@ -3323,56 +3342,53 @@ function Rn(e) {
|
|
|
3323
3342
|
]) delete t[e];
|
|
3324
3343
|
return t;
|
|
3325
3344
|
}
|
|
3326
|
-
function
|
|
3345
|
+
function Gn() {
|
|
3327
3346
|
return typeof window > "u" || typeof window.matchMedia != "function" ? null : window.matchMedia("(prefers-reduced-motion: reduce)");
|
|
3328
3347
|
}
|
|
3329
|
-
function
|
|
3330
|
-
let [e, t] = m(() =>
|
|
3348
|
+
function Kn() {
|
|
3349
|
+
let [e, t] = m(() => Gn()?.matches ?? !1);
|
|
3331
3350
|
return l(() => {
|
|
3332
|
-
let e =
|
|
3351
|
+
let e = Gn();
|
|
3333
3352
|
if (!e) return;
|
|
3334
3353
|
let n = (e) => t(e.matches);
|
|
3335
3354
|
return t(e.matches), e.addEventListener("change", n), () => e.removeEventListener("change", n);
|
|
3336
3355
|
}, []), e;
|
|
3337
3356
|
}
|
|
3338
|
-
function
|
|
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);
|
|
3340
|
-
}
|
|
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) {
|
|
3357
|
+
var qn = 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
3358
|
let w = p(null), [T, E] = m(null), [D, O] = m({
|
|
3343
3359
|
w: 0,
|
|
3344
3360
|
h: 0
|
|
3345
|
-
}), [
|
|
3361
|
+
}), [ee, k] = m({
|
|
3346
3362
|
waviness: Pe.waviness,
|
|
3347
3363
|
wavinessFreq: Pe.wavinessFreq
|
|
3348
|
-
}), [
|
|
3349
|
-
|
|
3350
|
-
let I = Math.ceil(
|
|
3351
|
-
|
|
3352
|
-
let
|
|
3364
|
+
}), [te, ne] = m(0), A = p(0), j = Kn(), M = v === "reduced" || j, [re, ie] = m(M ? "reduced" : "static"), ae = Math.max(0, Bn(e, 6)), N = Math.max(1, Bn(r, 18)), oe = Math.max(0, Bn(a, 24)), se = Math.max(0, Bn(h ?? ee.waviness, Pe.waviness)), ce = _ !== !1 && Math.max(0, Bn(_ ?? .3, Ve)), le = He(se, D.w > 0 && D.h > 0 ? Math.min(D.w, D.h) : 0, ce), ue = Math.max(0, Bn(g ?? ee.wavinessFreq, Pe.wavinessFreq)), P = Vn(o, w.current), de = Vn(c, w.current), fe = f(() => Jt(P), [P]), pe = f(() => Qt(fe), [fe]), me = f(() => Zt(fe), [fe]), he = f(() => Yt(de), [de]), F = Math.ceil(ae * 3 + oe + $t(pe) + (he ? he.width : 0) + le + (le > 0 ? Math.ceil(Ne * 3) : 0)), ge = p(F);
|
|
3365
|
+
ge.current = F;
|
|
3366
|
+
let I = Math.ceil(F + te), L = p(I);
|
|
3367
|
+
L.current = I;
|
|
3368
|
+
let R = `liquid-gooey-${zn(u())}`, _e = s((e) => {
|
|
3353
3369
|
w.current = e, typeof C == "function" ? C(e) : C && (C.current = e);
|
|
3354
|
-
}, [C]),
|
|
3370
|
+
}, [C]), B = s((e) => E(e), []);
|
|
3355
3371
|
d(() => {
|
|
3356
3372
|
let e = w.current;
|
|
3357
3373
|
if (!e) return;
|
|
3358
3374
|
let t = {
|
|
3359
|
-
waviness: Math.max(0, h === void 0 ?
|
|
3360
|
-
wavinessFreq: Math.max(0, g === void 0 ?
|
|
3375
|
+
waviness: Math.max(0, h === void 0 ? Hn(z.waviness, e, Pe.waviness) : Bn(h, Pe.waviness)),
|
|
3376
|
+
wavinessFreq: Math.max(0, g === void 0 ? Hn(z.wavinessFreq, e, Pe.wavinessFreq) : Bn(g, Pe.wavinessFreq))
|
|
3361
3377
|
};
|
|
3362
|
-
|
|
3378
|
+
k((e) => e.waviness === t.waviness && e.wavinessFreq === t.wavinessFreq ? e : t);
|
|
3363
3379
|
}, [h, g]);
|
|
3364
|
-
let
|
|
3380
|
+
let V = f(() => new Gt({
|
|
3365
3381
|
getGroup: () => w.current,
|
|
3366
3382
|
getFilterArea: () => {
|
|
3367
3383
|
let e = w.current;
|
|
3368
|
-
return e ? (e.offsetWidth + (
|
|
3384
|
+
return e ? (e.offsetWidth + (ge.current + A.current) * 2) * (e.offsetHeight + (ge.current + A.current) * 2) : 0;
|
|
3369
3385
|
},
|
|
3370
|
-
onModeChange:
|
|
3386
|
+
onModeChange: ie,
|
|
3371
3387
|
onFeaturePaddingChange: (e) => {
|
|
3372
|
-
|
|
3388
|
+
A.current = e, ne((t) => Math.abs(t - e) < .5 ? t : e);
|
|
3373
3389
|
},
|
|
3374
3390
|
follow: v === "follow"
|
|
3375
|
-
}), [v]),
|
|
3391
|
+
}), [v]), ve = f(() => hn(), []);
|
|
3376
3392
|
d(() => {
|
|
3377
3393
|
let e = w.current;
|
|
3378
3394
|
if (!e) return;
|
|
@@ -3381,24 +3397,24 @@ var Hn = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-su
|
|
|
3381
3397
|
w: e.offsetWidth,
|
|
3382
3398
|
h: e.offsetHeight
|
|
3383
3399
|
};
|
|
3384
|
-
O((e) => e.w === t.w && e.h === t.h ? e : t),
|
|
3400
|
+
O((e) => e.w === t.w && e.h === t.h ? e : t), V.setFilterArea((t.w + L.current * 2) * (t.h + L.current * 2));
|
|
3385
3401
|
};
|
|
3386
3402
|
if (t(), typeof ResizeObserver > "u") return;
|
|
3387
3403
|
let n = new ResizeObserver(t);
|
|
3388
3404
|
return n.observe(e), () => n.disconnect();
|
|
3389
|
-
}, [
|
|
3390
|
-
|
|
3391
|
-
}, [
|
|
3392
|
-
let
|
|
3405
|
+
}, [V, I]), l(() => {
|
|
3406
|
+
V.setReducedMotion(M);
|
|
3407
|
+
}, [V, M]), l(() => () => V.dispose(), [V]);
|
|
3408
|
+
let H = Math.max(1, D.w), U = Math.max(1, D.h), W = Un("game-ui-liquid-group", y);
|
|
3393
3409
|
return /* @__PURE__ */ n("div", {
|
|
3394
3410
|
...S,
|
|
3395
|
-
ref:
|
|
3396
|
-
className:
|
|
3411
|
+
ref: _e,
|
|
3412
|
+
className: W,
|
|
3397
3413
|
"data-liquid-filter-area": Math.round((D.w + I * 2) * (D.h + I * 2)),
|
|
3398
3414
|
"data-liquid-filter-budget": we,
|
|
3399
|
-
"data-liquid-feature-padding": Math.round(
|
|
3400
|
-
"data-liquid-motion":
|
|
3401
|
-
"data-liquid-waviness": Math.round(
|
|
3415
|
+
"data-liquid-feature-padding": Math.round(te * 10) / 10,
|
|
3416
|
+
"data-liquid-motion": re,
|
|
3417
|
+
"data-liquid-waviness": Math.round(le * 100) / 100,
|
|
3402
3418
|
style: b,
|
|
3403
3419
|
children: [
|
|
3404
3420
|
/* @__PURE__ */ n("svg", {
|
|
@@ -3406,39 +3422,40 @@ var Hn = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-su
|
|
|
3406
3422
|
className: "game-ui-liquid-silhouette",
|
|
3407
3423
|
"data-liquid-gooey-silhouette": "",
|
|
3408
3424
|
focusable: "false",
|
|
3409
|
-
|
|
3425
|
+
style: me ? { filter: me } : void 0,
|
|
3426
|
+
viewBox: `0 0 ${H} ${U}`,
|
|
3410
3427
|
children: [/* @__PURE__ */ t("defs", { children: /* @__PURE__ */ t("filter", {
|
|
3411
3428
|
colorInterpolationFilters: "sRGB",
|
|
3412
3429
|
filterUnits: "userSpaceOnUse",
|
|
3413
|
-
height:
|
|
3414
|
-
id:
|
|
3415
|
-
width:
|
|
3430
|
+
height: U + I * 2,
|
|
3431
|
+
id: R,
|
|
3432
|
+
width: H + I * 2,
|
|
3416
3433
|
x: -I,
|
|
3417
3434
|
y: -I,
|
|
3418
|
-
children: /* @__PURE__ */ t(
|
|
3419
|
-
blur:
|
|
3420
|
-
contrast:
|
|
3421
|
-
shadows:
|
|
3422
|
-
stroke:
|
|
3423
|
-
waviness:
|
|
3424
|
-
wavinessFreq:
|
|
3435
|
+
children: /* @__PURE__ */ t(Be, {
|
|
3436
|
+
blur: ae,
|
|
3437
|
+
contrast: N,
|
|
3438
|
+
shadows: pe,
|
|
3439
|
+
stroke: he,
|
|
3440
|
+
waviness: le,
|
|
3441
|
+
wavinessFreq: ue
|
|
3425
3442
|
})
|
|
3426
3443
|
}) }), /* @__PURE__ */ t("g", {
|
|
3427
|
-
ref:
|
|
3444
|
+
ref: B,
|
|
3428
3445
|
fill: i,
|
|
3429
|
-
filter: `url(#${
|
|
3446
|
+
filter: `url(#${R})`
|
|
3430
3447
|
})]
|
|
3431
3448
|
}),
|
|
3432
|
-
/* @__PURE__ */ t(
|
|
3433
|
-
registry:
|
|
3449
|
+
/* @__PURE__ */ t(In, {
|
|
3450
|
+
registry: ve,
|
|
3434
3451
|
getGroup: () => w.current
|
|
3435
3452
|
}),
|
|
3436
|
-
/* @__PURE__ */ t(
|
|
3453
|
+
/* @__PURE__ */ t(Ln.Provider, {
|
|
3437
3454
|
value: {
|
|
3438
3455
|
portal: T,
|
|
3439
|
-
engine:
|
|
3456
|
+
engine: V,
|
|
3440
3457
|
follow: v === "follow",
|
|
3441
|
-
imageMelt:
|
|
3458
|
+
imageMelt: ve
|
|
3442
3459
|
},
|
|
3443
3460
|
children: /* @__PURE__ */ t("div", {
|
|
3444
3461
|
className: "game-ui-liquid-content",
|
|
@@ -3447,24 +3464,24 @@ var Hn = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-su
|
|
|
3447
3464
|
})
|
|
3448
3465
|
]
|
|
3449
3466
|
});
|
|
3450
|
-
}),
|
|
3451
|
-
let { portal: D, engine: O, follow:
|
|
3452
|
-
let e = r === "morph" || r === "bend" ? r : void 0, t = e === "bend", n = r === "bend" ||
|
|
3467
|
+
}), Jn = 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) {
|
|
3468
|
+
let { portal: D, engine: O, follow: ee, imageMelt: k } = Rn(), te = `liquid-item-${zn(u())}`, ne = p(null), A = p(null), j = p(null), M = p(null), re = JSON.stringify(a ?? null), ie = a !== void 0 && a !== !1, ae = f(() => {
|
|
3469
|
+
let e = r === "morph" || r === "bend" ? r : void 0, t = e === "bend", n = r === "bend" || ee && y === void 0 && r !== "morph" || ie && y === void 0 && r !== "morph" ? void 0 : y ?? {}, i = {
|
|
3453
3470
|
...e === void 0 ? {} : { effect: e },
|
|
3454
3471
|
...n === void 0 ? {} : { morph: n },
|
|
3455
3472
|
...b === void 0 ? {} : { bend: b },
|
|
3456
3473
|
...x === void 0 && !t ? {} : { observe: t || x },
|
|
3457
|
-
x:
|
|
3458
|
-
y:
|
|
3459
|
-
scale:
|
|
3474
|
+
x: Bn(o, 0),
|
|
3475
|
+
y: Bn(c, 0),
|
|
3476
|
+
scale: Bn(m, 1)
|
|
3460
3477
|
};
|
|
3461
3478
|
return g !== void 0 && (i.transition = g), _ !== void 0 && (i.delay = _), v !== void 0 && (i.radius = v), i;
|
|
3462
3479
|
}, [
|
|
3463
3480
|
b,
|
|
3464
3481
|
_,
|
|
3465
3482
|
r,
|
|
3466
|
-
|
|
3467
|
-
|
|
3483
|
+
ee,
|
|
3484
|
+
ie,
|
|
3468
3485
|
y,
|
|
3469
3486
|
x,
|
|
3470
3487
|
v,
|
|
@@ -3473,66 +3490,76 @@ var Hn = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-su
|
|
|
3473
3490
|
o,
|
|
3474
3491
|
c
|
|
3475
3492
|
]);
|
|
3476
|
-
|
|
3477
|
-
let
|
|
3478
|
-
|
|
3493
|
+
j.current === null && (j.current = ae);
|
|
3494
|
+
let N = s((e) => {
|
|
3495
|
+
ne.current = e, typeof E == "function" ? E(e) : E && (E.current = e);
|
|
3479
3496
|
}, [E]);
|
|
3480
3497
|
return d(() => {
|
|
3481
|
-
let e =
|
|
3482
|
-
if (!(!D || !e || !t || !
|
|
3483
|
-
id:
|
|
3498
|
+
let e = ne.current, t = A.current;
|
|
3499
|
+
if (!(!D || !e || !t || !j.current)) return O.register({
|
|
3500
|
+
id: te,
|
|
3484
3501
|
host: e,
|
|
3485
3502
|
blob: t,
|
|
3486
|
-
config:
|
|
3503
|
+
config: j.current
|
|
3487
3504
|
});
|
|
3488
3505
|
}, [
|
|
3489
3506
|
O,
|
|
3490
|
-
|
|
3507
|
+
te,
|
|
3491
3508
|
D
|
|
3492
3509
|
]), d(() => {
|
|
3493
|
-
O.update(
|
|
3510
|
+
O.update(te, ae);
|
|
3494
3511
|
}, [
|
|
3495
|
-
|
|
3512
|
+
ae,
|
|
3496
3513
|
O,
|
|
3497
|
-
|
|
3514
|
+
te
|
|
3498
3515
|
]), d(() => () => {
|
|
3499
|
-
|
|
3500
|
-
}, [
|
|
3516
|
+
M.current?.unregister(), M.current = null;
|
|
3517
|
+
}, [k]), d(() => {
|
|
3501
3518
|
if (r === "move" || a === void 0 || a === !1) {
|
|
3502
|
-
|
|
3519
|
+
M.current?.unregister(), M.current = null;
|
|
3503
3520
|
return;
|
|
3504
3521
|
}
|
|
3505
|
-
let e =
|
|
3522
|
+
let e = ne.current;
|
|
3506
3523
|
if (e) {
|
|
3507
|
-
if (
|
|
3508
|
-
|
|
3524
|
+
if (M.current) {
|
|
3525
|
+
M.current.update(a);
|
|
3509
3526
|
return;
|
|
3510
3527
|
}
|
|
3511
|
-
|
|
3528
|
+
M.current = gn(k, e, a);
|
|
3512
3529
|
}
|
|
3513
3530
|
}, [
|
|
3514
|
-
|
|
3531
|
+
re,
|
|
3515
3532
|
r,
|
|
3516
|
-
|
|
3517
|
-
]), l(() => {
|
|
3533
|
+
k
|
|
3534
|
+
]), l(() => {
|
|
3535
|
+
let e = r;
|
|
3536
|
+
e === "move" && console.warn("[swimmer-ui] effect=\"move\" is not an item effect. Use <LiquidGroup motion=\"follow\"> for selection and progress."), !(e !== "move" || !ie) && console.warn("[swimmer-ui] dissolve is ignored for effect=\"move\" because Move intentionally lags the measured image rect.");
|
|
3537
|
+
}, [r, ie]), d(() => {
|
|
3538
|
+
let e = ne.current;
|
|
3539
|
+
if (!e) return;
|
|
3540
|
+
let t = e.firstElementChild;
|
|
3541
|
+
if (!t) return;
|
|
3542
|
+
let n = window.getComputedStyle(t), r = n.borderStyle !== "none" && n.borderWidth !== "0px" && n.borderWidth !== "", i = n.outlineStyle !== "none" && n.outlineWidth !== "0px" && n.outlineWidth !== "", a = n.boxShadow && n.boxShadow !== "none";
|
|
3543
|
+
(r || i || a) && console.warn("LiquidGroup.Item children should not have their own border, outline, or box-shadow. They exist on the content layer and will not merge with the liquid silhouette. Use the `stroke` and `shadow` props on <LiquidGroup> instead.");
|
|
3544
|
+
}, []), /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ t("div", {
|
|
3518
3545
|
...T,
|
|
3519
|
-
ref:
|
|
3520
|
-
className:
|
|
3546
|
+
ref: N,
|
|
3547
|
+
className: Un("game-ui-liquid-item", S),
|
|
3521
3548
|
style: C,
|
|
3522
3549
|
children: w
|
|
3523
3550
|
}), D ? h(/* @__PURE__ */ t("path", {
|
|
3524
|
-
ref:
|
|
3551
|
+
ref: A,
|
|
3525
3552
|
d: "",
|
|
3526
3553
|
"data-liquid-gooey-blob": ""
|
|
3527
3554
|
}), D) : null] });
|
|
3528
|
-
}),
|
|
3529
|
-
let { imageMelt: r } =
|
|
3530
|
-
if (e.effect !== "melt") return /* @__PURE__ */ t(
|
|
3555
|
+
}), Yn = a(function(e, n) {
|
|
3556
|
+
let { imageMelt: r } = Rn();
|
|
3557
|
+
if (e.effect !== "melt") return /* @__PURE__ */ t(Jn, {
|
|
3531
3558
|
...e,
|
|
3532
3559
|
ref: n
|
|
3533
3560
|
});
|
|
3534
|
-
let i =
|
|
3535
|
-
return delete o.src, /* @__PURE__ */ t(
|
|
3561
|
+
let i = Wn(e), a = e.children, o = { ...e.melt ?? {} }, s = o.src;
|
|
3562
|
+
return delete o.src, /* @__PURE__ */ t(_n, {
|
|
3536
3563
|
...i,
|
|
3537
3564
|
registry: r,
|
|
3538
3565
|
children: a,
|
|
@@ -3540,10 +3567,10 @@ var Hn = a(function({ blur: e = 6, contrast: r = 18, fill: i = "var(--game-ui-su
|
|
|
3540
3567
|
...s === void 0 ? {} : { src: s },
|
|
3541
3568
|
...n === void 0 ? {} : { forwardedRef: n }
|
|
3542
3569
|
});
|
|
3543
|
-
}),
|
|
3570
|
+
}), Xn = Object.assign(qn, { Item: Yn });
|
|
3544
3571
|
//#endregion
|
|
3545
3572
|
//#region src/GameCallout.tsx
|
|
3546
|
-
function
|
|
3573
|
+
function Zn({ heading: e, children: r, tone: i = "info", className: a, ...o }) {
|
|
3547
3574
|
return /* @__PURE__ */ n("div", {
|
|
3548
3575
|
className: [
|
|
3549
3576
|
"game-ui-callout",
|
|
@@ -3564,7 +3591,7 @@ function Kn({ heading: e, children: r, tone: i = "info", className: a, ...o }) {
|
|
|
3564
3591
|
}
|
|
3565
3592
|
//#endregion
|
|
3566
3593
|
//#region src/GameDialog.tsx
|
|
3567
|
-
function
|
|
3594
|
+
function Qn({ children: e, className: r, title: i }) {
|
|
3568
3595
|
let a = u();
|
|
3569
3596
|
return /* @__PURE__ */ n("section", {
|
|
3570
3597
|
"aria-labelledby": a,
|
|
@@ -3582,7 +3609,7 @@ function qn({ children: e, className: r, title: i }) {
|
|
|
3582
3609
|
}
|
|
3583
3610
|
//#endregion
|
|
3584
3611
|
//#region src/GameHistoryPanel.tsx
|
|
3585
|
-
function
|
|
3612
|
+
function $n({ entries: e, label: r }) {
|
|
3586
3613
|
return /* @__PURE__ */ t("section", {
|
|
3587
3614
|
"aria-label": r,
|
|
3588
3615
|
className: "game-ui-history",
|
|
@@ -3598,7 +3625,7 @@ function Jn({ entries: e, label: r }) {
|
|
|
3598
3625
|
}
|
|
3599
3626
|
//#endregion
|
|
3600
3627
|
//#region src/GameHudActions.tsx
|
|
3601
|
-
function
|
|
3628
|
+
function er({ children: e, className: n, label: r, ...i }) {
|
|
3602
3629
|
return /* @__PURE__ */ t("nav", {
|
|
3603
3630
|
"aria-label": r,
|
|
3604
3631
|
className: ["game-ui-hud-actions", n].filter(Boolean).join(" "),
|
|
@@ -3618,7 +3645,7 @@ function X({ children: e, className: r, title: i, tone: a = "default", ...o }) {
|
|
|
3618
3645
|
children: [i ? /* @__PURE__ */ t("h3", { children: i }) : null, e]
|
|
3619
3646
|
});
|
|
3620
3647
|
}
|
|
3621
|
-
function
|
|
3648
|
+
function tr({ children: e, className: n, label: r, type: i = "button", ...a }) {
|
|
3622
3649
|
return /* @__PURE__ */ t("button", {
|
|
3623
3650
|
"aria-label": r,
|
|
3624
3651
|
className: ["game-ui-icon-button", n].filter(Boolean).join(" "),
|
|
@@ -3627,7 +3654,7 @@ function Xn({ children: e, className: n, label: r, type: i = "button", ...a }) {
|
|
|
3627
3654
|
children: e
|
|
3628
3655
|
});
|
|
3629
3656
|
}
|
|
3630
|
-
function
|
|
3657
|
+
function nr({ children: e, label: i }) {
|
|
3631
3658
|
let a = u();
|
|
3632
3659
|
return /* @__PURE__ */ n("span", {
|
|
3633
3660
|
className: "game-ui-tooltip",
|
|
@@ -3638,7 +3665,7 @@ function Zn({ children: e, label: i }) {
|
|
|
3638
3665
|
})]
|
|
3639
3666
|
});
|
|
3640
3667
|
}
|
|
3641
|
-
function
|
|
3668
|
+
function rr({ activeId: e, id: n, onSelect: r, tabs: i }) {
|
|
3642
3669
|
let a = u(), o = n ?? a;
|
|
3643
3670
|
return /* @__PURE__ */ t("div", {
|
|
3644
3671
|
className: "game-ui-tabs",
|
|
@@ -3678,10 +3705,10 @@ function Qn({ activeId: e, id: n, onSelect: r, tabs: i }) {
|
|
|
3678
3705
|
}, n.id))
|
|
3679
3706
|
});
|
|
3680
3707
|
}
|
|
3681
|
-
function
|
|
3708
|
+
function ir(e, t) {
|
|
3682
3709
|
return e.x === t.x && e.y === t.y && e.width === t.width && e.height === t.height;
|
|
3683
3710
|
}
|
|
3684
|
-
function
|
|
3711
|
+
function ar({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
3685
3712
|
let o = p(null), s = p([]), [c, l] = m({
|
|
3686
3713
|
x: 0,
|
|
3687
3714
|
y: 0,
|
|
@@ -3698,7 +3725,7 @@ function er({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3698
3725
|
width: r.width,
|
|
3699
3726
|
height: r.height
|
|
3700
3727
|
};
|
|
3701
|
-
l((e) =>
|
|
3728
|
+
l((e) => ir(e, i) ? e : i);
|
|
3702
3729
|
};
|
|
3703
3730
|
if (n(), typeof ResizeObserver > "u") return;
|
|
3704
3731
|
let r = new ResizeObserver(n);
|
|
@@ -3713,7 +3740,7 @@ function er({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3713
3740
|
className: "game-ui-segmented",
|
|
3714
3741
|
role: "group",
|
|
3715
3742
|
children: [
|
|
3716
|
-
/* @__PURE__ */ t(
|
|
3743
|
+
/* @__PURE__ */ t(Xn, {
|
|
3717
3744
|
"aria-hidden": "true",
|
|
3718
3745
|
className: "game-ui-segmented-surface",
|
|
3719
3746
|
fill: "var(--game-ui-surface-raised)",
|
|
@@ -3724,7 +3751,7 @@ function er({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3724
3751
|
pointerEvents: "none",
|
|
3725
3752
|
position: "absolute"
|
|
3726
3753
|
},
|
|
3727
|
-
children: /* @__PURE__ */ t(
|
|
3754
|
+
children: /* @__PURE__ */ t(Xn.Item, {
|
|
3728
3755
|
style: {
|
|
3729
3756
|
borderRadius: "var(--game-ui-radius-control)",
|
|
3730
3757
|
inset: 0,
|
|
@@ -3733,7 +3760,7 @@ function er({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3733
3760
|
children: null
|
|
3734
3761
|
})
|
|
3735
3762
|
}),
|
|
3736
|
-
c.width > 0 && c.height > 0 ? /* @__PURE__ */ t(
|
|
3763
|
+
c.width > 0 && c.height > 0 ? /* @__PURE__ */ t(Xn, {
|
|
3737
3764
|
"aria-hidden": "true",
|
|
3738
3765
|
className: "game-ui-segmented-follow",
|
|
3739
3766
|
fill: "var(--game-ui-secondary)",
|
|
@@ -3744,7 +3771,7 @@ function er({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3744
3771
|
pointerEvents: "none",
|
|
3745
3772
|
position: "absolute"
|
|
3746
3773
|
},
|
|
3747
|
-
children: /* @__PURE__ */ t(
|
|
3774
|
+
children: /* @__PURE__ */ t(Xn.Item, {
|
|
3748
3775
|
"aria-hidden": "true",
|
|
3749
3776
|
style: {
|
|
3750
3777
|
borderRadius: "var(--game-ui-radius-control)",
|
|
@@ -3773,7 +3800,7 @@ function er({ activeId: e, label: r, onSelect: i, options: a }) {
|
|
|
3773
3800
|
]
|
|
3774
3801
|
});
|
|
3775
3802
|
}
|
|
3776
|
-
function
|
|
3803
|
+
function or({ label: e, max: r, min: i, onChange: a, value: o }) {
|
|
3777
3804
|
return /* @__PURE__ */ n("label", {
|
|
3778
3805
|
className: "game-ui-slider",
|
|
3779
3806
|
children: [/* @__PURE__ */ t("span", { children: e }), /* @__PURE__ */ t("input", {
|
|
@@ -3787,7 +3814,7 @@ function tr({ label: e, max: r, min: i, onChange: a, value: o }) {
|
|
|
3787
3814
|
})]
|
|
3788
3815
|
});
|
|
3789
3816
|
}
|
|
3790
|
-
function
|
|
3817
|
+
function sr({ checked: e, disabled: r, label: i, onClick: a }) {
|
|
3791
3818
|
return /* @__PURE__ */ n("button", {
|
|
3792
3819
|
"aria-checked": e,
|
|
3793
3820
|
className: "game-ui-toggle",
|
|
@@ -3801,7 +3828,7 @@ function nr({ checked: e, disabled: r, label: i, onClick: a }) {
|
|
|
3801
3828
|
})]
|
|
3802
3829
|
});
|
|
3803
3830
|
}
|
|
3804
|
-
function
|
|
3831
|
+
function cr({ items: e, label: n, onSelect: r }) {
|
|
3805
3832
|
return /* @__PURE__ */ t("div", {
|
|
3806
3833
|
"aria-label": n,
|
|
3807
3834
|
className: "game-ui-radial-menu",
|
|
@@ -3816,7 +3843,7 @@ function rr({ items: e, label: n, onSelect: r }) {
|
|
|
3816
3843
|
}, e.id))
|
|
3817
3844
|
});
|
|
3818
3845
|
}
|
|
3819
|
-
function
|
|
3846
|
+
function lr({ children: e, tone: n = "info" }) {
|
|
3820
3847
|
return /* @__PURE__ */ t("div", {
|
|
3821
3848
|
className: "game-ui-toast",
|
|
3822
3849
|
"data-toast-tone": n,
|
|
@@ -3824,7 +3851,7 @@ function ir({ children: e, tone: n = "info" }) {
|
|
|
3824
3851
|
children: e
|
|
3825
3852
|
});
|
|
3826
3853
|
}
|
|
3827
|
-
function
|
|
3854
|
+
function ur({ actionLabel: e, children: r, title: i }) {
|
|
3828
3855
|
return /* @__PURE__ */ n("section", {
|
|
3829
3856
|
"aria-label": i,
|
|
3830
3857
|
className: "game-ui-prompt",
|
|
@@ -3836,7 +3863,7 @@ function ar({ actionLabel: e, children: r, title: i }) {
|
|
|
3836
3863
|
}
|
|
3837
3864
|
//#endregion
|
|
3838
3865
|
//#region src/clay/assets.ts
|
|
3839
|
-
var
|
|
3866
|
+
var dr = "/assets/game/ui/clay/phase03-clay-kit", Z = (e) => `${dr}/${e}`, fr = {
|
|
3840
3867
|
ai: { line: Z("icons/function/brain-v1.png") },
|
|
3841
3868
|
alert: {
|
|
3842
3869
|
game: Z("components/common/alert-v1.png"),
|
|
@@ -3926,20 +3953,20 @@ var or = "/assets/game/ui/clay/phase03-clay-kit", Z = (e) => `${or}/${e}`, sr =
|
|
|
3926
3953
|
game: Z("icons/common/target-v1.png"),
|
|
3927
3954
|
line: Z("icons/function/target-v1.png")
|
|
3928
3955
|
}
|
|
3929
|
-
},
|
|
3930
|
-
function
|
|
3931
|
-
let t =
|
|
3956
|
+
}, pr = Object.keys(fr), mr = dr;
|
|
3957
|
+
function hr(e) {
|
|
3958
|
+
let t = mr;
|
|
3932
3959
|
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;
|
|
3933
3960
|
}
|
|
3934
|
-
function
|
|
3935
|
-
let n =
|
|
3936
|
-
return
|
|
3961
|
+
function gr(e, t) {
|
|
3962
|
+
let n = fr[e];
|
|
3963
|
+
return hr(t === "line" ? n.line ?? n.game ?? "" : n.game ?? n.line ?? "");
|
|
3937
3964
|
}
|
|
3938
|
-
function
|
|
3939
|
-
let t =
|
|
3965
|
+
function _r(e) {
|
|
3966
|
+
let t = fr[e], n = [];
|
|
3940
3967
|
return t.game && n.push("game"), t.line && n.push("line"), n;
|
|
3941
3968
|
}
|
|
3942
|
-
var
|
|
3969
|
+
var vr = {
|
|
3943
3970
|
anvil: Z("icons/common/anvil-v1.png"),
|
|
3944
3971
|
arrow: Z("icons/common/arrow-v1.png"),
|
|
3945
3972
|
bomb: Z("icons/common/bomb-v1.png"),
|
|
@@ -3966,7 +3993,7 @@ var pr = {
|
|
|
3966
3993
|
swordB: Z("icons/common/sword-b-v1.png"),
|
|
3967
3994
|
talaria: Z("icons/common/talaria-v1.png"),
|
|
3968
3995
|
treasure: Z("icons/common/treasure-v1.png")
|
|
3969
|
-
},
|
|
3996
|
+
}, yr = Object.keys(vr), br = {
|
|
3970
3997
|
buttons: {
|
|
3971
3998
|
primary: Z("buttons/button-brown-large-v2.png"),
|
|
3972
3999
|
blue: Z("buttons/button-blue-large-v2.png"),
|
|
@@ -3987,7 +4014,7 @@ var pr = {
|
|
|
3987
4014
|
tabSelected: Z("components/common/tab-s-v1.png"),
|
|
3988
4015
|
tabNormal: Z("components/common/tab-n-v1.png")
|
|
3989
4016
|
},
|
|
3990
|
-
icons: Object.fromEntries(
|
|
4017
|
+
icons: Object.fromEntries(pr.map((e) => [e, gr(e)])),
|
|
3991
4018
|
catalog: {
|
|
3992
4019
|
manifest: "/assets/game/ui/clay/asset-manifest.json",
|
|
3993
4020
|
sourceCatalog: Z("catalog/phase03-clay-ui-catalog.json"),
|
|
@@ -3995,7 +4022,7 @@ var pr = {
|
|
|
3995
4022
|
contactSheetComponents: Z("catalog/component-candidates-contact-sheet-v1.png"),
|
|
3996
4023
|
contactSheetFunction: Z("catalog/function-icons-contact-sheet-v1.png")
|
|
3997
4024
|
}
|
|
3998
|
-
},
|
|
4025
|
+
}, xr = {
|
|
3999
4026
|
ai: "AI",
|
|
4000
4027
|
alert: "!",
|
|
4001
4028
|
card: "▣",
|
|
@@ -4031,7 +4058,7 @@ var pr = {
|
|
|
4031
4058
|
timer: "◷",
|
|
4032
4059
|
trophy: "★",
|
|
4033
4060
|
vote: "⌾"
|
|
4034
|
-
},
|
|
4061
|
+
}, Sr = {
|
|
4035
4062
|
ai: L.berry,
|
|
4036
4063
|
alert: L.red,
|
|
4037
4064
|
card: L.honey,
|
|
@@ -4068,35 +4095,35 @@ var pr = {
|
|
|
4068
4095
|
trophy: L.honey,
|
|
4069
4096
|
vote: L.red
|
|
4070
4097
|
};
|
|
4071
|
-
function
|
|
4072
|
-
let t =
|
|
4098
|
+
function Cr(e) {
|
|
4099
|
+
let t = xr[e], n = Sr[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
4100
|
return `data:image/svg+xml,${encodeURIComponent(i)}`;
|
|
4074
4101
|
}
|
|
4075
|
-
var
|
|
4076
|
-
function
|
|
4077
|
-
|
|
4102
|
+
var wr = "inline";
|
|
4103
|
+
function Tr(e) {
|
|
4104
|
+
wr = e;
|
|
4078
4105
|
}
|
|
4079
|
-
function
|
|
4080
|
-
return
|
|
4106
|
+
function Er() {
|
|
4107
|
+
return wr;
|
|
4081
4108
|
}
|
|
4082
|
-
function
|
|
4083
|
-
|
|
4109
|
+
function Dr(e) {
|
|
4110
|
+
mr = e.replace(/\/+$/, "");
|
|
4084
4111
|
}
|
|
4085
|
-
function
|
|
4086
|
-
return
|
|
4112
|
+
function Or() {
|
|
4113
|
+
return mr;
|
|
4087
4114
|
}
|
|
4088
|
-
var
|
|
4089
|
-
function
|
|
4090
|
-
|
|
4115
|
+
var kr = !1;
|
|
4116
|
+
function Ar() {
|
|
4117
|
+
kr || (kr = !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."));
|
|
4091
4118
|
}
|
|
4092
|
-
function
|
|
4093
|
-
|
|
4119
|
+
function jr() {
|
|
4120
|
+
kr = !0;
|
|
4094
4121
|
}
|
|
4095
|
-
function
|
|
4096
|
-
return t.inline ??
|
|
4122
|
+
function Mr(e, t = {}) {
|
|
4123
|
+
return t.inline ?? wr === "inline" ? (Ar(), Cr(e)) : gr(e, t.style);
|
|
4097
4124
|
}
|
|
4098
|
-
function
|
|
4099
|
-
return
|
|
4125
|
+
function Nr(e, t) {
|
|
4126
|
+
return gr(e, t);
|
|
4100
4127
|
}
|
|
4101
4128
|
//#endregion
|
|
4102
4129
|
//#region src/ClayComponents.tsx
|
|
@@ -4108,7 +4135,7 @@ function Q({ children: e, className: n, tone: r = "neutral" }) {
|
|
|
4108
4135
|
});
|
|
4109
4136
|
}
|
|
4110
4137
|
function $({ className: e, icon: n, label: r, size: i = "md", style: a, useSourceAsset: o = !1 }) {
|
|
4111
|
-
let s = ["game-ui-asset-icon", e].filter(Boolean).join(" "), c = r ? { "aria-label": r } : { "aria-hidden": !0 }, l =
|
|
4138
|
+
let s = ["game-ui-asset-icon", e].filter(Boolean).join(" "), c = r ? { "aria-label": r } : { "aria-hidden": !0 }, l = Mr(n, {
|
|
4112
4139
|
...a ? { style: a } : {},
|
|
4113
4140
|
...o ? { inline: !1 } : {}
|
|
4114
4141
|
});
|
|
@@ -4123,7 +4150,7 @@ function $({ className: e, icon: n, label: r, size: i = "md", style: a, useSourc
|
|
|
4123
4150
|
})
|
|
4124
4151
|
});
|
|
4125
4152
|
}
|
|
4126
|
-
function
|
|
4153
|
+
function Pr({ actions: e, className: r, items: i, label: a }) {
|
|
4127
4154
|
return /* @__PURE__ */ n("section", {
|
|
4128
4155
|
"aria-label": a,
|
|
4129
4156
|
className: ["game-ui-hud", r].filter(Boolean).join(" "),
|
|
@@ -4146,7 +4173,7 @@ function kr({ actions: e, className: r, items: i, label: a }) {
|
|
|
4146
4173
|
}) : null]
|
|
4147
4174
|
});
|
|
4148
4175
|
}
|
|
4149
|
-
function
|
|
4176
|
+
function Fr({ cards: e, className: r, label: i }) {
|
|
4150
4177
|
let a = ["game-ui-card-fan", r].filter(Boolean).join(" "), o = (e.length - 1) / 2;
|
|
4151
4178
|
return /* @__PURE__ */ t("div", {
|
|
4152
4179
|
"aria-label": i,
|
|
@@ -4169,7 +4196,7 @@ function Ar({ cards: e, className: r, label: i }) {
|
|
|
4169
4196
|
}, e.id))
|
|
4170
4197
|
});
|
|
4171
4198
|
}
|
|
4172
|
-
function
|
|
4199
|
+
function Ir({ badge: e, className: r, icon: i, kicker: a, selected: o = !1, summary: s, title: c, tone: l = "daily", type: u = "button", ...d }) {
|
|
4173
4200
|
return /* @__PURE__ */ n("button", {
|
|
4174
4201
|
"aria-pressed": o,
|
|
4175
4202
|
className: ["game-ui-stage-tile", r].filter(Boolean).join(" "),
|
|
@@ -4196,15 +4223,15 @@ function jr({ badge: e, className: r, icon: i, kicker: a, selected: o = !1, summ
|
|
|
4196
4223
|
]
|
|
4197
4224
|
});
|
|
4198
4225
|
}
|
|
4199
|
-
function
|
|
4226
|
+
function Lr() {
|
|
4200
4227
|
return typeof window > "u" ? !1 : (window.matchMedia?.("(pointer: coarse), (max-width: 899px)").matches ?? window.innerWidth < 900) && window.innerHeight > window.innerWidth;
|
|
4201
4228
|
}
|
|
4202
|
-
function
|
|
4203
|
-
let [c, u] = m(o ||
|
|
4229
|
+
function Rr({ body: e, cta: r, badgeLabel: i = "Landscape only", manualHint: a = "Rotate manually if this browser blocks automatic landscape lock.", preview: o = !1, title: s }) {
|
|
4230
|
+
let [c, u] = m(o || Lr), [d, f] = m("");
|
|
4204
4231
|
if (l(() => {
|
|
4205
4232
|
if (o) return;
|
|
4206
4233
|
let e = () => {
|
|
4207
|
-
let e =
|
|
4234
|
+
let e = Lr();
|
|
4208
4235
|
u(e), e || f("");
|
|
4209
4236
|
};
|
|
4210
4237
|
return e(), window.addEventListener("resize", e), window.addEventListener("orientationchange", e), () => {
|
|
@@ -4214,7 +4241,7 @@ function Nr({ body: e, cta: r, badgeLabel: i = "Landscape only", manualHint: a =
|
|
|
4214
4241
|
let p = async () => {
|
|
4215
4242
|
if (f(""), !o) try {
|
|
4216
4243
|
let e = document.documentElement;
|
|
4217
|
-
!document.fullscreenElement && e.requestFullscreen && await e.requestFullscreen(), await screen.orientation.lock?.("landscape-primary"), u(
|
|
4244
|
+
!document.fullscreenElement && e.requestFullscreen && await e.requestFullscreen(), await screen.orientation.lock?.("landscape-primary"), u(Lr());
|
|
4218
4245
|
} catch {
|
|
4219
4246
|
f(a);
|
|
4220
4247
|
}
|
|
@@ -4245,7 +4272,7 @@ function Nr({ body: e, cta: r, badgeLabel: i = "Landscape only", manualHint: a =
|
|
|
4245
4272
|
})
|
|
4246
4273
|
});
|
|
4247
4274
|
}
|
|
4248
|
-
function
|
|
4275
|
+
function zr({ className: e, currentLabel: r, label: i, options: a, value: o, defaultValue: s, onSelect: c }) {
|
|
4249
4276
|
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) => {
|
|
4250
4277
|
o === void 0 && p(e), c?.(e), d(!1);
|
|
4251
4278
|
};
|
|
@@ -4277,34 +4304,34 @@ function Pr({ className: e, currentLabel: r, label: i, options: a, value: o, def
|
|
|
4277
4304
|
}) : null]
|
|
4278
4305
|
});
|
|
4279
4306
|
}
|
|
4280
|
-
function
|
|
4307
|
+
function Br({ label: e, tone: r = "loading" }) {
|
|
4281
4308
|
return /* @__PURE__ */ n("div", {
|
|
4282
4309
|
className: "game-ui-loading-state",
|
|
4283
4310
|
"data-loading-tone": r,
|
|
4284
4311
|
role: r === "error" ? "alert" : "status",
|
|
4285
4312
|
children: [/* @__PURE__ */ t("img", {
|
|
4286
4313
|
alt: "",
|
|
4287
|
-
src:
|
|
4314
|
+
src: Mr(r === "error" ? "alert" : "timer")
|
|
4288
4315
|
}), /* @__PURE__ */ t("span", { children: e })]
|
|
4289
4316
|
});
|
|
4290
4317
|
}
|
|
4291
|
-
function
|
|
4292
|
-
return
|
|
4318
|
+
function Vr() {
|
|
4319
|
+
return br.catalog;
|
|
4293
4320
|
}
|
|
4294
4321
|
//#endregion
|
|
4295
4322
|
//#region src/FirstSessionGameShell.tsx
|
|
4296
|
-
function
|
|
4323
|
+
function Hr({ fallback: e, slot: n }) {
|
|
4297
4324
|
return n ?? /* @__PURE__ */ t($, {
|
|
4298
4325
|
icon: e,
|
|
4299
4326
|
size: "sm"
|
|
4300
4327
|
});
|
|
4301
4328
|
}
|
|
4302
|
-
function
|
|
4329
|
+
function Ur({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, iconSlots: o, labels: s, onHistory: c, onSettings: l, onWardrobe: u, playerName: d }) {
|
|
4303
4330
|
let f = ["swimmer-first-session-shell", i].filter(Boolean).join(" "), p = e ? `${r} 🔋` : s.guest ?? "guest";
|
|
4304
4331
|
return /* @__PURE__ */ n("section", {
|
|
4305
4332
|
"aria-label": s.shell,
|
|
4306
4333
|
className: f,
|
|
4307
|
-
children: [/* @__PURE__ */ t(
|
|
4334
|
+
children: [/* @__PURE__ */ t(Pr, {
|
|
4308
4335
|
className: "swimmer-first-session-hud",
|
|
4309
4336
|
items: [
|
|
4310
4337
|
{
|
|
@@ -4336,7 +4363,7 @@ function Rr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4336
4363
|
}
|
|
4337
4364
|
],
|
|
4338
4365
|
label: s.hud,
|
|
4339
|
-
actions: /* @__PURE__ */ n(
|
|
4366
|
+
actions: /* @__PURE__ */ n(er, {
|
|
4340
4367
|
className: "swimmer-first-session-hud-actions",
|
|
4341
4368
|
label: s.tools,
|
|
4342
4369
|
children: [
|
|
@@ -4344,7 +4371,7 @@ function Rr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4344
4371
|
"aria-label": s.wardrobe,
|
|
4345
4372
|
onClick: u,
|
|
4346
4373
|
variant: "secondary",
|
|
4347
|
-
children: [/* @__PURE__ */ t(
|
|
4374
|
+
children: [/* @__PURE__ */ t(Hr, {
|
|
4348
4375
|
fallback: "shirt",
|
|
4349
4376
|
slot: o?.wardrobe
|
|
4350
4377
|
}), s.wardrobe]
|
|
@@ -4353,7 +4380,7 @@ function Rr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4353
4380
|
"aria-label": s.settings,
|
|
4354
4381
|
onClick: l,
|
|
4355
4382
|
variant: "secondary",
|
|
4356
|
-
children: [/* @__PURE__ */ t(
|
|
4383
|
+
children: [/* @__PURE__ */ t(Hr, {
|
|
4357
4384
|
fallback: "settings",
|
|
4358
4385
|
slot: o?.settings
|
|
4359
4386
|
}), s.settings]
|
|
@@ -4362,7 +4389,7 @@ function Rr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4362
4389
|
"aria-label": s.history,
|
|
4363
4390
|
onClick: c,
|
|
4364
4391
|
variant: "secondary",
|
|
4365
|
-
children: [/* @__PURE__ */ t(
|
|
4392
|
+
children: [/* @__PURE__ */ t(Hr, {
|
|
4366
4393
|
fallback: "history",
|
|
4367
4394
|
slot: o?.history
|
|
4368
4395
|
}), s.history]
|
|
@@ -4387,7 +4414,7 @@ function Rr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4387
4414
|
}),
|
|
4388
4415
|
/* @__PURE__ */ n("label", {
|
|
4389
4416
|
className: "swimmer-first-session-input",
|
|
4390
|
-
children: [/* @__PURE__ */ t(
|
|
4417
|
+
children: [/* @__PURE__ */ t(Hr, {
|
|
4391
4418
|
fallback: "chat",
|
|
4392
4419
|
slot: o?.input
|
|
4393
4420
|
}), /* @__PURE__ */ t("span", { children: s.input })]
|
|
@@ -4395,7 +4422,7 @@ function Rr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4395
4422
|
/* @__PURE__ */ n("button", {
|
|
4396
4423
|
className: "swimmer-first-session-emote",
|
|
4397
4424
|
type: "button",
|
|
4398
|
-
children: [/* @__PURE__ */ t(
|
|
4425
|
+
children: [/* @__PURE__ */ t(Hr, {
|
|
4399
4426
|
fallback: "smile",
|
|
4400
4427
|
slot: o?.emote
|
|
4401
4428
|
}), s.emote]
|
|
@@ -4404,7 +4431,7 @@ function Rr({ authenticated: e, batteryCount: r, className: i, dailyStreak: a, i
|
|
|
4404
4431
|
})]
|
|
4405
4432
|
});
|
|
4406
4433
|
}
|
|
4407
|
-
function
|
|
4434
|
+
function Wr({ labels: e, onDismiss: r, open: i }) {
|
|
4408
4435
|
return i ? /* @__PURE__ */ n("aside", {
|
|
4409
4436
|
"aria-labelledby": "swimmer-first-session-onboarding-title",
|
|
4410
4437
|
"aria-modal": "true",
|
|
@@ -4452,7 +4479,7 @@ function zr({ labels: e, onDismiss: r, open: i }) {
|
|
|
4452
4479
|
}
|
|
4453
4480
|
//#endregion
|
|
4454
4481
|
//#region src/GameForms.tsx
|
|
4455
|
-
var
|
|
4482
|
+
var Gr = a(function({ className: e, invalid: n, type: r = "text", ...i }, a) {
|
|
4456
4483
|
return /* @__PURE__ */ t("input", {
|
|
4457
4484
|
className: ["game-ui-input", e].filter(Boolean).join(" "),
|
|
4458
4485
|
"data-invalid": n ? "true" : void 0,
|
|
@@ -4460,7 +4487,7 @@ var Br = a(function({ className: e, invalid: n, type: r = "text", ...i }, a) {
|
|
|
4460
4487
|
type: r,
|
|
4461
4488
|
...i
|
|
4462
4489
|
});
|
|
4463
|
-
}),
|
|
4490
|
+
}), Kr = a(function({ className: e, invalid: n, rows: r = 3, ...i }, a) {
|
|
4464
4491
|
return /* @__PURE__ */ t("textarea", {
|
|
4465
4492
|
className: [
|
|
4466
4493
|
"game-ui-input",
|
|
@@ -4473,7 +4500,7 @@ var Br = a(function({ className: e, invalid: n, type: r = "text", ...i }, a) {
|
|
|
4473
4500
|
...i
|
|
4474
4501
|
});
|
|
4475
4502
|
});
|
|
4476
|
-
function
|
|
4503
|
+
function qr({ children: e, className: r, error: i, hint: a, label: o, required: s }) {
|
|
4477
4504
|
return /* @__PURE__ */ n("label", {
|
|
4478
4505
|
className: ["game-ui-field", r].filter(Boolean).join(" "),
|
|
4479
4506
|
"data-invalid": i ? "true" : void 0,
|
|
@@ -4499,7 +4526,7 @@ function Hr({ children: e, className: r, error: i, hint: a, label: o, required:
|
|
|
4499
4526
|
]
|
|
4500
4527
|
});
|
|
4501
4528
|
}
|
|
4502
|
-
function
|
|
4529
|
+
function Jr({ className: e, label: r, ...i }) {
|
|
4503
4530
|
return /* @__PURE__ */ n("label", {
|
|
4504
4531
|
className: ["game-ui-checkbox", e].filter(Boolean).join(" "),
|
|
4505
4532
|
children: [
|
|
@@ -4521,11 +4548,11 @@ function Ur({ className: e, label: r, ...i }) {
|
|
|
4521
4548
|
}
|
|
4522
4549
|
//#endregion
|
|
4523
4550
|
//#region src/GameDisplay.tsx
|
|
4524
|
-
function
|
|
4551
|
+
function Yr(e) {
|
|
4525
4552
|
let t = e.trim().split(/\s+/).filter(Boolean);
|
|
4526
4553
|
return t.length === 0 ? "?" : t.slice(0, 2).map((e) => e[0] ?? "").join("").toUpperCase();
|
|
4527
4554
|
}
|
|
4528
|
-
function
|
|
4555
|
+
function Xr({ className: r, name: i, size: a = "md", src: o, status: s = "none" }) {
|
|
4529
4556
|
return /* @__PURE__ */ n("span", {
|
|
4530
4557
|
className: ["game-ui-avatar", r].filter(Boolean).join(" "),
|
|
4531
4558
|
"data-avatar-size": a,
|
|
@@ -4536,7 +4563,7 @@ function Gr({ className: r, name: i, size: a = "md", src: o, status: s = "none"
|
|
|
4536
4563
|
}) : /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ t("span", {
|
|
4537
4564
|
"aria-hidden": "true",
|
|
4538
4565
|
className: "game-ui-avatar-initials",
|
|
4539
|
-
children:
|
|
4566
|
+
children: Yr(i)
|
|
4540
4567
|
}), /* @__PURE__ */ t("span", {
|
|
4541
4568
|
className: "game-ui-sr-only",
|
|
4542
4569
|
children: i
|
|
@@ -4546,7 +4573,7 @@ function Gr({ className: r, name: i, size: a = "md", src: o, status: s = "none"
|
|
|
4546
4573
|
})]
|
|
4547
4574
|
});
|
|
4548
4575
|
}
|
|
4549
|
-
function
|
|
4576
|
+
function Zr({ className: e, label: r, max: i = 100, showValue: a = !1, tone: o = "accent", value: s, valueLabel: c }) {
|
|
4550
4577
|
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 = {
|
|
4551
4578
|
accent: "var(--game-ui-accent)",
|
|
4552
4579
|
danger: "var(--game-ui-danger)",
|
|
@@ -4564,7 +4591,7 @@ function Kr({ className: e, label: r, max: i = 100, showValue: a = !1, tone: o =
|
|
|
4564
4591
|
"aria-valuetext": f ? c : void 0,
|
|
4565
4592
|
className: "game-ui-progress-track",
|
|
4566
4593
|
role: "progressbar",
|
|
4567
|
-
children: /* @__PURE__ */ t(
|
|
4594
|
+
children: /* @__PURE__ */ t(Xn, {
|
|
4568
4595
|
"aria-hidden": "true",
|
|
4569
4596
|
className: "game-ui-progress-liquid",
|
|
4570
4597
|
fill: p,
|
|
@@ -4575,7 +4602,7 @@ function Kr({ className: e, label: r, max: i = 100, showValue: a = !1, tone: o =
|
|
|
4575
4602
|
pointerEvents: "none",
|
|
4576
4603
|
position: "absolute"
|
|
4577
4604
|
},
|
|
4578
|
-
children: /* @__PURE__ */ t(
|
|
4605
|
+
children: /* @__PURE__ */ t(Xn.Item, {
|
|
4579
4606
|
"aria-hidden": "true",
|
|
4580
4607
|
className: "game-ui-progress-fill",
|
|
4581
4608
|
style: {
|
|
@@ -4598,7 +4625,7 @@ function Kr({ className: e, label: r, max: i = 100, showValue: a = !1, tone: o =
|
|
|
4598
4625
|
}) : null]
|
|
4599
4626
|
});
|
|
4600
4627
|
}
|
|
4601
|
-
function
|
|
4628
|
+
function Qr({ action: e, className: r, description: i, icon: a, title: o }) {
|
|
4602
4629
|
return /* @__PURE__ */ n("div", {
|
|
4603
4630
|
className: ["game-ui-empty-state", r].filter(Boolean).join(" "),
|
|
4604
4631
|
children: [
|
|
@@ -4623,7 +4650,7 @@ function qr({ action: e, className: r, description: i, icon: a, title: o }) {
|
|
|
4623
4650
|
}
|
|
4624
4651
|
//#endregion
|
|
4625
4652
|
//#region src/GameSurfacePack.tsx
|
|
4626
|
-
function
|
|
4653
|
+
function $r({ assetLibrary: e, bottomBar: r, children: i, className: a, density: o = "comfortable", hud: s, layout: c = "auto", movementPad: l, overlay: u, sidePanel: d, title: f }) {
|
|
4627
4654
|
return /* @__PURE__ */ n("section", {
|
|
4628
4655
|
"aria-label": f,
|
|
4629
4656
|
className: ["game-ui-shell", a].filter(Boolean).join(" "),
|
|
@@ -4661,8 +4688,8 @@ function Jr({ assetLibrary: e, bottomBar: r, children: i, className: a, density:
|
|
|
4661
4688
|
]
|
|
4662
4689
|
});
|
|
4663
4690
|
}
|
|
4664
|
-
var
|
|
4665
|
-
function
|
|
4691
|
+
var ei = $r;
|
|
4692
|
+
function ti({ className: e, density: r = "comfortable", facts: i, label: a, variant: o = "facts" }) {
|
|
4666
4693
|
return /* @__PURE__ */ t("section", {
|
|
4667
4694
|
"aria-label": a,
|
|
4668
4695
|
className: ["game-ui-fact-list", e].filter(Boolean).join(" "),
|
|
@@ -4691,9 +4718,9 @@ function Xr({ className: e, density: r = "comfortable", facts: i, label: a, vari
|
|
|
4691
4718
|
}, e.id))
|
|
4692
4719
|
});
|
|
4693
4720
|
}
|
|
4694
|
-
var
|
|
4695
|
-
function
|
|
4696
|
-
return /* @__PURE__ */ n(
|
|
4721
|
+
var ni = ti;
|
|
4722
|
+
function ri({ actions: r, className: i, density: a = "comfortable", iconLabelMode: o = "hidden", label: s, style: c = "button" }) {
|
|
4723
|
+
return /* @__PURE__ */ n(er, {
|
|
4697
4724
|
className: ["game-ui-action-grid", i].filter(Boolean).join(" "),
|
|
4698
4725
|
"data-icon-label-mode": c === "icon" ? o : void 0,
|
|
4699
4726
|
label: s,
|
|
@@ -4718,7 +4745,7 @@ function Qr({ actions: r, className: i, density: a = "comfortable", iconLabelMod
|
|
|
4718
4745
|
}) : null,
|
|
4719
4746
|
r.shortcut ? /* @__PURE__ */ t("kbd", { children: r.shortcut }) : null
|
|
4720
4747
|
] }), l = () => r.onAction?.(r.id);
|
|
4721
|
-
return c === "icon" ? /* @__PURE__ */ t(
|
|
4748
|
+
return c === "icon" ? /* @__PURE__ */ t(tr, {
|
|
4722
4749
|
"aria-pressed": r.selected,
|
|
4723
4750
|
className: "game-ui-action-grid-button",
|
|
4724
4751
|
disabled: r.disabled,
|
|
@@ -4736,7 +4763,7 @@ function Qr({ actions: r, className: i, density: a = "comfortable", iconLabelMod
|
|
|
4736
4763
|
})]
|
|
4737
4764
|
});
|
|
4738
4765
|
}
|
|
4739
|
-
var
|
|
4766
|
+
var ii = [
|
|
4740
4767
|
{
|
|
4741
4768
|
direction: "forward",
|
|
4742
4769
|
label: "Move forward",
|
|
@@ -4761,7 +4788,7 @@ var $r = [
|
|
|
4761
4788
|
shortcut: "S / ↓",
|
|
4762
4789
|
symbol: "↓"
|
|
4763
4790
|
}
|
|
4764
|
-
],
|
|
4791
|
+
], ai = {
|
|
4765
4792
|
ArrowUp: "forward",
|
|
4766
4793
|
w: "forward",
|
|
4767
4794
|
W: "forward",
|
|
@@ -4776,7 +4803,7 @@ var $r = [
|
|
|
4776
4803
|
S: "backward",
|
|
4777
4804
|
" ": "reset"
|
|
4778
4805
|
};
|
|
4779
|
-
function
|
|
4806
|
+
function oi({ actions: e = ii, className: r, density: i = "comfortable", disabled: a = !1, helpText: o, label: s, layout: c = "dpad", onMove: l }) {
|
|
4780
4807
|
let u = ["game-ui-movement-pad", r].filter(Boolean).join(" "), d = (e) => {
|
|
4781
4808
|
a || l?.(e);
|
|
4782
4809
|
};
|
|
@@ -4786,7 +4813,7 @@ function ti({ actions: e = $r, className: r, density: i = "comfortable", disable
|
|
|
4786
4813
|
"data-density": i,
|
|
4787
4814
|
"data-layout": c,
|
|
4788
4815
|
onKeyDown: (t) => {
|
|
4789
|
-
let n =
|
|
4816
|
+
let n = ai[t.key];
|
|
4790
4817
|
if (!n) return;
|
|
4791
4818
|
let r = e.find((e) => e.direction === n);
|
|
4792
4819
|
!r || r.disabled || a || (t.preventDefault(), d(n));
|
|
@@ -4794,7 +4821,7 @@ function ti({ actions: e = $r, className: r, density: i = "comfortable", disable
|
|
|
4794
4821
|
tabIndex: 0,
|
|
4795
4822
|
children: [/* @__PURE__ */ t("div", {
|
|
4796
4823
|
className: "game-ui-movement-pad-grid",
|
|
4797
|
-
children: e.map((e) => /* @__PURE__ */ n(
|
|
4824
|
+
children: e.map((e) => /* @__PURE__ */ n(tr, {
|
|
4798
4825
|
className: "game-ui-movement-button",
|
|
4799
4826
|
"data-direction": e.direction,
|
|
4800
4827
|
disabled: a || e.disabled,
|
|
@@ -4812,15 +4839,15 @@ function ti({ actions: e = $r, className: r, density: i = "comfortable", disable
|
|
|
4812
4839
|
}), o ? /* @__PURE__ */ t("p", { children: o }) : null]
|
|
4813
4840
|
});
|
|
4814
4841
|
}
|
|
4815
|
-
var
|
|
4842
|
+
var si = {
|
|
4816
4843
|
generated: "Generated",
|
|
4817
4844
|
imported: "Imported",
|
|
4818
4845
|
starter: "Starter"
|
|
4819
|
-
},
|
|
4846
|
+
}, ci = {
|
|
4820
4847
|
generated: "ai",
|
|
4821
4848
|
imported: "warning",
|
|
4822
4849
|
starter: "neutral"
|
|
4823
|
-
},
|
|
4850
|
+
}, li = {
|
|
4824
4851
|
error: "danger",
|
|
4825
4852
|
generating: "ai",
|
|
4826
4853
|
missing: "danger",
|
|
@@ -4828,8 +4855,8 @@ var ni = {
|
|
|
4828
4855
|
ready: "neutral",
|
|
4829
4856
|
selected: "success"
|
|
4830
4857
|
};
|
|
4831
|
-
function
|
|
4832
|
-
let { "aria-label": S, ...C } = x, w = ["game-ui-asset-card", a].filter(Boolean).join(" "), T = m ??
|
|
4858
|
+
function ui({ 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 }) {
|
|
4859
|
+
let { "aria-label": S, ...C } = x, w = ["game-ui-asset-card", a].filter(Boolean).join(" "), T = m ?? si[p], E = g ?? h;
|
|
4833
4860
|
return /* @__PURE__ */ n("button", {
|
|
4834
4861
|
"aria-label": S ?? y,
|
|
4835
4862
|
"aria-pressed": f,
|
|
@@ -4860,11 +4887,11 @@ function ai({ assetId: e, badges: r = [], cardLayout: i = "list", className: a,
|
|
|
4860
4887
|
className: "game-ui-asset-card-badges",
|
|
4861
4888
|
children: [
|
|
4862
4889
|
/* @__PURE__ */ t(Q, {
|
|
4863
|
-
tone:
|
|
4890
|
+
tone: ci[p],
|
|
4864
4891
|
children: T
|
|
4865
4892
|
}),
|
|
4866
4893
|
/* @__PURE__ */ t(Q, {
|
|
4867
|
-
tone:
|
|
4894
|
+
tone: li[h],
|
|
4868
4895
|
children: E
|
|
4869
4896
|
}),
|
|
4870
4897
|
r.map((e) => /* @__PURE__ */ t(Q, {
|
|
@@ -4883,7 +4910,7 @@ function ai({ assetId: e, badges: r = [], cardLayout: i = "list", className: a,
|
|
|
4883
4910
|
})]
|
|
4884
4911
|
});
|
|
4885
4912
|
}
|
|
4886
|
-
function
|
|
4913
|
+
function di({ 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 }) {
|
|
4887
4914
|
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) => {
|
|
4888
4915
|
e[t.source] += 1;
|
|
4889
4916
|
}), e), {
|
|
@@ -4908,15 +4935,15 @@ function oi({ cardLayout: e = "auto", className: r, density: i = "comfortable",
|
|
|
4908
4935
|
"aria-label": "Asset source counts",
|
|
4909
4936
|
className: "game-ui-asset-library-counts",
|
|
4910
4937
|
children: Object.entries(g).map(([e, t]) => /* @__PURE__ */ n(Q, {
|
|
4911
|
-
tone:
|
|
4938
|
+
tone: ci[e],
|
|
4912
4939
|
children: [
|
|
4913
|
-
|
|
4940
|
+
si[e],
|
|
4914
4941
|
" ",
|
|
4915
4942
|
t
|
|
4916
4943
|
]
|
|
4917
4944
|
}, e))
|
|
4918
4945
|
}),
|
|
4919
|
-
h === 0 ? /* @__PURE__ */ t(
|
|
4946
|
+
h === 0 ? /* @__PURE__ */ t(Qr, {
|
|
4920
4947
|
action: a,
|
|
4921
4948
|
description: o,
|
|
4922
4949
|
icon: "gem",
|
|
@@ -4928,13 +4955,13 @@ function oi({ cardLayout: e = "auto", className: r, density: i = "comfortable",
|
|
|
4928
4955
|
className: "game-ui-asset-library-group",
|
|
4929
4956
|
"data-asset-source": r.source,
|
|
4930
4957
|
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t("strong", { children: r.label }), r.source ? /* @__PURE__ */ t(Q, {
|
|
4931
|
-
tone:
|
|
4932
|
-
children:
|
|
4958
|
+
tone: ci[r.source],
|
|
4959
|
+
children: si[r.source]
|
|
4933
4960
|
}) : null] }), /* @__PURE__ */ t("div", {
|
|
4934
4961
|
className: "game-ui-asset-library-grid",
|
|
4935
4962
|
children: r.assets.map((n) => {
|
|
4936
4963
|
let r = e === "auto" ? n.cardLayout : e;
|
|
4937
|
-
return /* @__PURE__ */ t(
|
|
4964
|
+
return /* @__PURE__ */ t(ui, {
|
|
4938
4965
|
...n,
|
|
4939
4966
|
...r ? { cardLayout: r } : {},
|
|
4940
4967
|
...u ? { onSelect: u } : {},
|
|
@@ -4948,7 +4975,7 @@ function oi({ cardLayout: e = "auto", className: r, density: i = "comfortable",
|
|
|
4948
4975
|
})
|
|
4949
4976
|
});
|
|
4950
4977
|
}
|
|
4951
|
-
function
|
|
4978
|
+
function fi({ 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 }) {
|
|
4952
4979
|
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;
|
|
4953
4980
|
return /* @__PURE__ */ t(X, {
|
|
4954
4981
|
className: h,
|
|
@@ -4957,7 +4984,7 @@ function si({ actions: e = [], capacityLabel: r = "Objects", className: i, densi
|
|
|
4957
4984
|
children: /* @__PURE__ */ n("div", {
|
|
4958
4985
|
"data-density": a,
|
|
4959
4986
|
children: [
|
|
4960
|
-
/* @__PURE__ */ t(
|
|
4987
|
+
/* @__PURE__ */ t(ti, {
|
|
4961
4988
|
density: a,
|
|
4962
4989
|
facts: [{
|
|
4963
4990
|
icon: "gem",
|
|
@@ -4973,19 +5000,19 @@ function si({ actions: e = [], capacityLabel: r = "Objects", className: i, densi
|
|
|
4973
5000
|
}],
|
|
4974
5001
|
label: `${m} facts`
|
|
4975
5002
|
}),
|
|
4976
|
-
g ? /* @__PURE__ */ t(
|
|
5003
|
+
g ? /* @__PURE__ */ t(Zr, {
|
|
4977
5004
|
label: r,
|
|
4978
5005
|
max: o,
|
|
4979
5006
|
showValue: !0,
|
|
4980
5007
|
tone: _ >= o ? "warning" : "success",
|
|
4981
5008
|
value: _
|
|
4982
5009
|
}) : null,
|
|
4983
|
-
e.length > 0 ? /* @__PURE__ */ t(
|
|
5010
|
+
e.length > 0 ? /* @__PURE__ */ t(ri, {
|
|
4984
5011
|
actions: e,
|
|
4985
5012
|
density: a,
|
|
4986
5013
|
label: `${m} actions`
|
|
4987
5014
|
}) : null,
|
|
4988
|
-
s.length > 0 ? /* @__PURE__ */ t(
|
|
5015
|
+
s.length > 0 ? /* @__PURE__ */ t(ri, {
|
|
4989
5016
|
actions: s,
|
|
4990
5017
|
density: a,
|
|
4991
5018
|
label: `${m} object actions`,
|
|
@@ -4995,7 +5022,7 @@ function si({ actions: e = [], capacityLabel: r = "Objects", className: i, densi
|
|
|
4995
5022
|
})
|
|
4996
5023
|
});
|
|
4997
5024
|
}
|
|
4998
|
-
var
|
|
5025
|
+
var pi = fi, mi = {
|
|
4999
5026
|
build: "home",
|
|
5000
5027
|
flatten: "card",
|
|
5001
5028
|
inspect: "compass",
|
|
@@ -5005,7 +5032,7 @@ var ci = si, li = {
|
|
|
5005
5032
|
raise: "energy",
|
|
5006
5033
|
smooth: "lucky",
|
|
5007
5034
|
terrain: "portal"
|
|
5008
|
-
},
|
|
5035
|
+
}, hi = {
|
|
5009
5036
|
error: "danger",
|
|
5010
5037
|
locked: "warning",
|
|
5011
5038
|
missing: "danger",
|
|
@@ -5013,10 +5040,10 @@ var ci = si, li = {
|
|
|
5013
5040
|
ready: "neutral",
|
|
5014
5041
|
selected: "success"
|
|
5015
5042
|
};
|
|
5016
|
-
function
|
|
5043
|
+
function gi(e, t, n, r) {
|
|
5017
5044
|
let i = {
|
|
5018
5045
|
disabled: !!(r || e.disabled),
|
|
5019
|
-
icon: e.icon ??
|
|
5046
|
+
icon: e.icon ?? mi[e.id] ?? "gem",
|
|
5020
5047
|
id: e.id,
|
|
5021
5048
|
label: e.label,
|
|
5022
5049
|
selected: e.id === t,
|
|
@@ -5024,21 +5051,21 @@ function di(e, t, n, r) {
|
|
|
5024
5051
|
};
|
|
5025
5052
|
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;
|
|
5026
5053
|
}
|
|
5027
|
-
function
|
|
5054
|
+
function _i(e, t, n) {
|
|
5028
5055
|
return Number.isNaN(e) ? t : Math.min(n, Math.max(t, e));
|
|
5029
5056
|
}
|
|
5030
|
-
function
|
|
5057
|
+
function vi(e) {
|
|
5031
5058
|
return e;
|
|
5032
5059
|
}
|
|
5033
|
-
function
|
|
5060
|
+
function yi(e, t) {
|
|
5034
5061
|
return e === "auto" ? t === "mobile" || t === "small-mobile" ? "caption" : "hidden" : e;
|
|
5035
5062
|
}
|
|
5036
|
-
function
|
|
5063
|
+
function bi({ activeModeId: e, className: r, disabled: i = !1, label: a, modes: o, onModeChange: s, variant: c = "desktop", "data-testid": l }) {
|
|
5037
5064
|
return /* @__PURE__ */ n("section", {
|
|
5038
5065
|
"aria-label": a,
|
|
5039
5066
|
className: ["game-ui-terrain-mode-control", r].filter(Boolean).join(" "),
|
|
5040
5067
|
"data-ui-hook": "terrain-mode-control",
|
|
5041
|
-
"data-variant":
|
|
5068
|
+
"data-variant": vi(c),
|
|
5042
5069
|
"data-testid": l,
|
|
5043
5070
|
children: [/* @__PURE__ */ t("span", {
|
|
5044
5071
|
className: "game-ui-sr-only",
|
|
@@ -5060,7 +5087,7 @@ function hi({ activeModeId: e, className: r, disabled: i = !1, label: a, modes:
|
|
|
5060
5087
|
type: "button",
|
|
5061
5088
|
children: [
|
|
5062
5089
|
/* @__PURE__ */ t($, {
|
|
5063
|
-
icon: r.icon ??
|
|
5090
|
+
icon: r.icon ?? mi[r.id] ?? "portal",
|
|
5064
5091
|
size: c === "small-mobile" ? "sm" : "md",
|
|
5065
5092
|
style: "line"
|
|
5066
5093
|
}),
|
|
@@ -5075,8 +5102,8 @@ function hi({ activeModeId: e, className: r, disabled: i = !1, label: a, modes:
|
|
|
5075
5102
|
})]
|
|
5076
5103
|
});
|
|
5077
5104
|
}
|
|
5078
|
-
function
|
|
5079
|
-
let d = ["game-ui-terrain-tool-strip", n].filter(Boolean).join(" "), f =
|
|
5105
|
+
function xi({ 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 }) {
|
|
5106
|
+
let d = ["game-ui-terrain-tool-strip", n].filter(Boolean).join(" "), f = yi(r, l);
|
|
5080
5107
|
return /* @__PURE__ */ t("section", {
|
|
5081
5108
|
"aria-label": o,
|
|
5082
5109
|
className: d,
|
|
@@ -5085,8 +5112,8 @@ function gi({ activeToolId: e, className: n, compactLabelMode: r = "auto", densi
|
|
|
5085
5112
|
"data-ui-hook": "terrain-tool-strip",
|
|
5086
5113
|
"data-variant": l,
|
|
5087
5114
|
"data-testid": u,
|
|
5088
|
-
children: /* @__PURE__ */ t(
|
|
5089
|
-
actions: c.map((t) =>
|
|
5115
|
+
children: /* @__PURE__ */ t(ri, {
|
|
5116
|
+
actions: c.map((t) => gi(t, e, s, a)),
|
|
5090
5117
|
density: i,
|
|
5091
5118
|
iconLabelMode: f,
|
|
5092
5119
|
label: o,
|
|
@@ -5094,18 +5121,18 @@ function gi({ activeToolId: e, className: n, compactLabelMode: r = "auto", densi
|
|
|
5094
5121
|
})
|
|
5095
5122
|
});
|
|
5096
5123
|
}
|
|
5097
|
-
function
|
|
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 =
|
|
5099
|
-
i?.(
|
|
5124
|
+
function Si({ className: e, labels: r = {}, onRadiusChange: i, onStrengthChange: a, state: o, variant: s = "desktop", "data-testid": c }) {
|
|
5125
|
+
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 = _i(o.radius, u, d), _ = _i(o.strength, p, m), v = !!o.disabled, y = (e) => {
|
|
5126
|
+
i?.(_i(Number(e.currentTarget.value), u, d));
|
|
5100
5127
|
}, b = (e) => {
|
|
5101
|
-
a?.(
|
|
5128
|
+
a?.(_i(Number(e.currentTarget.value), p, m));
|
|
5102
5129
|
};
|
|
5103
5130
|
return /* @__PURE__ */ n("section", {
|
|
5104
5131
|
className: l,
|
|
5105
5132
|
"data-ui-hook": "brush-controls",
|
|
5106
5133
|
"data-variant": s,
|
|
5107
5134
|
"data-testid": c,
|
|
5108
|
-
children: [/* @__PURE__ */ t(
|
|
5135
|
+
children: [/* @__PURE__ */ t(qr, {
|
|
5109
5136
|
...r.radiusHint ? { hint: r.radiusHint } : {},
|
|
5110
5137
|
label: r.radius ?? "Brush radius",
|
|
5111
5138
|
children: /* @__PURE__ */ n("div", {
|
|
@@ -5135,7 +5162,7 @@ function _i({ className: e, labels: r = {}, onRadiusChange: i, onStrengthChange:
|
|
|
5135
5162
|
value: g
|
|
5136
5163
|
})]
|
|
5137
5164
|
})
|
|
5138
|
-
}), /* @__PURE__ */ t(
|
|
5165
|
+
}), /* @__PURE__ */ t(qr, {
|
|
5139
5166
|
...r.strengthHint ? { hint: r.strengthHint } : {},
|
|
5140
5167
|
label: r.strength ?? "Brush strength",
|
|
5141
5168
|
children: /* @__PURE__ */ n("div", {
|
|
@@ -5168,7 +5195,7 @@ function _i({ className: e, labels: r = {}, onRadiusChange: i, onStrengthChange:
|
|
|
5168
5195
|
})]
|
|
5169
5196
|
});
|
|
5170
5197
|
}
|
|
5171
|
-
function
|
|
5198
|
+
function Ci({ activeMaterialId: e, className: r, disabled: i = !1, label: a, materials: o, onMaterialChange: s, variant: c = "desktop", "data-testid": l }) {
|
|
5172
5199
|
return /* @__PURE__ */ t("section", {
|
|
5173
5200
|
"aria-label": a,
|
|
5174
5201
|
className: ["game-ui-material-swatches", r].filter(Boolean).join(" "),
|
|
@@ -5211,14 +5238,14 @@ function vi({ activeMaterialId: e, className: r, disabled: i = !1, label: a, mat
|
|
|
5211
5238
|
})
|
|
5212
5239
|
});
|
|
5213
5240
|
}
|
|
5214
|
-
function
|
|
5241
|
+
function wi({ 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 }) {
|
|
5215
5242
|
return /* @__PURE__ */ t("section", {
|
|
5216
5243
|
"aria-label": a,
|
|
5217
5244
|
className: ["game-ui-undo-redo-actions", r].filter(Boolean).join(" "),
|
|
5218
5245
|
"data-ui-hook": "undo-redo-actions",
|
|
5219
5246
|
"data-variant": u,
|
|
5220
5247
|
"data-testid": d,
|
|
5221
|
-
children: /* @__PURE__ */ t(
|
|
5248
|
+
children: /* @__PURE__ */ t(ri, {
|
|
5222
5249
|
actions: [{
|
|
5223
5250
|
disabled: i || !n,
|
|
5224
5251
|
icon: "undo",
|
|
@@ -5244,7 +5271,7 @@ function yi({ canRedo: e = !1, canUndo: n = !1, className: r, disabled: i = !1,
|
|
|
5244
5271
|
})
|
|
5245
5272
|
});
|
|
5246
5273
|
}
|
|
5247
|
-
function
|
|
5274
|
+
function Ti({ 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 }) {
|
|
5248
5275
|
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";
|
|
5249
5276
|
return /* @__PURE__ */ t(X, {
|
|
5250
5277
|
className: h,
|
|
@@ -5274,7 +5301,7 @@ function bi({ activeCategoryId: e, categories: r, className: i, density: a = "co
|
|
|
5274
5301
|
type: "button",
|
|
5275
5302
|
children: [
|
|
5276
5303
|
/* @__PURE__ */ t($, {
|
|
5277
|
-
icon: e.icon ??
|
|
5304
|
+
icon: e.icon ?? mi[e.id] ?? "home",
|
|
5278
5305
|
size: "sm",
|
|
5279
5306
|
style: "line"
|
|
5280
5307
|
}),
|
|
@@ -5283,7 +5310,7 @@ function bi({ activeCategoryId: e, categories: r, className: i, density: a = "co
|
|
|
5283
5310
|
]
|
|
5284
5311
|
}, e.id);
|
|
5285
5312
|
})
|
|
5286
|
-
}), v.length === 0 || !_ ? /* @__PURE__ */ t(
|
|
5313
|
+
}), v.length === 0 || !_ ? /* @__PURE__ */ t(Qr, {
|
|
5287
5314
|
description: o,
|
|
5288
5315
|
icon: "home",
|
|
5289
5316
|
title: s
|
|
@@ -5321,7 +5348,7 @@ function bi({ activeCategoryId: e, categories: r, className: i, density: a = "co
|
|
|
5321
5348
|
/* @__PURE__ */ n("span", {
|
|
5322
5349
|
className: "game-ui-build-item-badges",
|
|
5323
5350
|
children: [/* @__PURE__ */ t(Q, {
|
|
5324
|
-
tone:
|
|
5351
|
+
tone: hi[i],
|
|
5325
5352
|
children: i
|
|
5326
5353
|
}), e.badges?.map((e) => /* @__PURE__ */ t(Q, {
|
|
5327
5354
|
tone: e.tone ?? "neutral",
|
|
@@ -5339,7 +5366,7 @@ function bi({ activeCategoryId: e, categories: r, className: i, density: a = "co
|
|
|
5339
5366
|
})
|
|
5340
5367
|
});
|
|
5341
5368
|
}
|
|
5342
|
-
function
|
|
5369
|
+
function Ei({ 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 }) {
|
|
5343
5370
|
let g = ["game-ui-compact-game-drawer", r].filter(Boolean).join(" "), _ = u ?? `${d.toLowerCase().replace(/[^a-z0-9]+/g, "-") || "tools"}-drawer-panel`;
|
|
5344
5371
|
return /* @__PURE__ */ n("aside", {
|
|
5345
5372
|
"aria-label": s,
|
|
@@ -5374,7 +5401,7 @@ function xi({ children: e, className: r, closeIcon: i = "close", closeLabel: a =
|
|
|
5374
5401
|
})]
|
|
5375
5402
|
});
|
|
5376
5403
|
}
|
|
5377
|
-
function
|
|
5404
|
+
function Di({ status: e }) {
|
|
5378
5405
|
if (!e) return null;
|
|
5379
5406
|
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;
|
|
5380
5407
|
return /* @__PURE__ */ n("div", {
|
|
@@ -5387,7 +5414,7 @@ function Si({ status: e }) {
|
|
|
5387
5414
|
children: e.label
|
|
5388
5415
|
}),
|
|
5389
5416
|
e.description ? /* @__PURE__ */ t("p", { children: e.description }) : null,
|
|
5390
|
-
r ? /* @__PURE__ */ t(
|
|
5417
|
+
r ? /* @__PURE__ */ t(Zr, {
|
|
5391
5418
|
label: e.progressLabel ?? e.label,
|
|
5392
5419
|
max: a,
|
|
5393
5420
|
showValue: !0,
|
|
@@ -5397,15 +5424,15 @@ function Si({ status: e }) {
|
|
|
5397
5424
|
]
|
|
5398
5425
|
});
|
|
5399
5426
|
}
|
|
5400
|
-
function
|
|
5427
|
+
function Oi({ 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" }) {
|
|
5401
5428
|
return /* @__PURE__ */ n("div", {
|
|
5402
5429
|
className: "game-ui-terrain-build-toolbox-body",
|
|
5403
5430
|
"data-active-mode": i,
|
|
5404
5431
|
"data-active-tool": a,
|
|
5405
5432
|
"data-variant": E,
|
|
5406
5433
|
children: [
|
|
5407
|
-
/* @__PURE__ */ t(
|
|
5408
|
-
/* @__PURE__ */ t(
|
|
5434
|
+
/* @__PURE__ */ t(Di, { status: S }),
|
|
5435
|
+
/* @__PURE__ */ t(bi, {
|
|
5409
5436
|
activeModeId: i,
|
|
5410
5437
|
disabled: l,
|
|
5411
5438
|
label: "Tool mode",
|
|
@@ -5416,7 +5443,7 @@ function Ci({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5416
5443
|
/* @__PURE__ */ n("div", {
|
|
5417
5444
|
className: "game-ui-terrain-build-main-grid",
|
|
5418
5445
|
children: [
|
|
5419
|
-
/* @__PURE__ */ t(
|
|
5446
|
+
/* @__PURE__ */ t(xi, {
|
|
5420
5447
|
activeToolId: a,
|
|
5421
5448
|
compactLabelMode: C,
|
|
5422
5449
|
density: c,
|
|
@@ -5426,7 +5453,7 @@ function Ci({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5426
5453
|
tools: w,
|
|
5427
5454
|
variant: E
|
|
5428
5455
|
}),
|
|
5429
|
-
/* @__PURE__ */ t(
|
|
5456
|
+
/* @__PURE__ */ t(wi, {
|
|
5430
5457
|
canRedo: T?.canRedo,
|
|
5431
5458
|
canUndo: T?.canUndo,
|
|
5432
5459
|
disabled: l,
|
|
@@ -5437,7 +5464,7 @@ function Ci({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5437
5464
|
undoLabel: T?.undoLabel,
|
|
5438
5465
|
variant: E
|
|
5439
5466
|
}),
|
|
5440
|
-
/* @__PURE__ */ t(
|
|
5467
|
+
/* @__PURE__ */ t(Si, {
|
|
5441
5468
|
onRadiusChange: f,
|
|
5442
5469
|
onStrengthChange: p,
|
|
5443
5470
|
state: {
|
|
@@ -5446,7 +5473,7 @@ function Ci({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5446
5473
|
},
|
|
5447
5474
|
variant: E
|
|
5448
5475
|
}),
|
|
5449
|
-
u.length > 0 ? /* @__PURE__ */ t(
|
|
5476
|
+
u.length > 0 ? /* @__PURE__ */ t(Ci, {
|
|
5450
5477
|
activeMaterialId: r,
|
|
5451
5478
|
disabled: l,
|
|
5452
5479
|
label: "Terrain materials",
|
|
@@ -5456,7 +5483,7 @@ function Ci({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5456
5483
|
}) : null
|
|
5457
5484
|
]
|
|
5458
5485
|
}),
|
|
5459
|
-
s.length > 0 ? /* @__PURE__ */ t(
|
|
5486
|
+
s.length > 0 ? /* @__PURE__ */ t(Ti, {
|
|
5460
5487
|
activeCategoryId: e,
|
|
5461
5488
|
categories: s,
|
|
5462
5489
|
density: c,
|
|
@@ -5470,12 +5497,12 @@ function Ci({ activeBuildCategoryId: e, activeMaterialId: r, activeModeId: i, ac
|
|
|
5470
5497
|
]
|
|
5471
5498
|
});
|
|
5472
5499
|
}
|
|
5473
|
-
function
|
|
5474
|
-
let u = ["game-ui-terrain-build-toolbox", e].filter(Boolean).join(" "), d = /* @__PURE__ */ t(
|
|
5500
|
+
function ki({ className: e, drawerOpen: n = !1, drawerTitle: r = "Terrain and build tools", label: i, onDrawerOpenChange: a, title: o, variant: s = "desktop", "data-testid": c, ...l }) {
|
|
5501
|
+
let u = ["game-ui-terrain-build-toolbox", e].filter(Boolean).join(" "), d = /* @__PURE__ */ t(Oi, {
|
|
5475
5502
|
...l,
|
|
5476
5503
|
variant: s
|
|
5477
5504
|
});
|
|
5478
|
-
return s === "mobile" || s === "small-mobile" ? /* @__PURE__ */ t(
|
|
5505
|
+
return s === "mobile" || s === "small-mobile" ? /* @__PURE__ */ t(Ei, {
|
|
5479
5506
|
className: u,
|
|
5480
5507
|
label: i,
|
|
5481
5508
|
onOpenChange: a,
|
|
@@ -5500,7 +5527,7 @@ function wi({ className: e, drawerOpen: n = !1, drawerTitle: r = "Terrain and bu
|
|
|
5500
5527
|
}
|
|
5501
5528
|
//#endregion
|
|
5502
5529
|
//#region src/GameContractorTools.tsx
|
|
5503
|
-
var
|
|
5530
|
+
var Ai = {
|
|
5504
5531
|
accepted: "success",
|
|
5505
5532
|
blocked: "danger",
|
|
5506
5533
|
cancelled: "neutral",
|
|
@@ -5509,7 +5536,7 @@ var Ti = {
|
|
|
5509
5536
|
queued: "warning",
|
|
5510
5537
|
readyForReview: "success",
|
|
5511
5538
|
working: "ai"
|
|
5512
|
-
},
|
|
5539
|
+
}, ji = {
|
|
5513
5540
|
accepted: "check",
|
|
5514
5541
|
blocked: "alert",
|
|
5515
5542
|
cancelled: "close",
|
|
@@ -5518,26 +5545,26 @@ var Ti = {
|
|
|
5518
5545
|
queued: "hourglass",
|
|
5519
5546
|
readyForReview: "vote",
|
|
5520
5547
|
working: "energy"
|
|
5521
|
-
},
|
|
5548
|
+
}, Mi = {
|
|
5522
5549
|
active: "ai",
|
|
5523
5550
|
blocked: "danger",
|
|
5524
5551
|
complete: "success",
|
|
5525
5552
|
pending: "neutral"
|
|
5526
|
-
},
|
|
5553
|
+
}, Ni = {
|
|
5527
5554
|
blocked: "danger",
|
|
5528
5555
|
done: "success",
|
|
5529
5556
|
idle: "neutral",
|
|
5530
5557
|
queued: "warning",
|
|
5531
5558
|
working: "ai"
|
|
5532
|
-
},
|
|
5559
|
+
}, Pi = {
|
|
5533
5560
|
"local-only": "Local only",
|
|
5534
5561
|
mock: "Mock run",
|
|
5535
5562
|
"paid-disabled": "Paid provider off"
|
|
5536
|
-
},
|
|
5563
|
+
}, Fi = {
|
|
5537
5564
|
"local-only": "success",
|
|
5538
5565
|
mock: "ai",
|
|
5539
5566
|
"paid-disabled": "warning"
|
|
5540
|
-
},
|
|
5567
|
+
}, Ii = {
|
|
5541
5568
|
accepted: [{
|
|
5542
5569
|
id: "revert",
|
|
5543
5570
|
label: "Revert",
|
|
@@ -5643,17 +5670,17 @@ var Ti = {
|
|
|
5643
5670
|
tone: "danger"
|
|
5644
5671
|
}]
|
|
5645
5672
|
};
|
|
5646
|
-
function
|
|
5673
|
+
function Li(e, t) {
|
|
5647
5674
|
if (t) return t;
|
|
5648
5675
|
switch (e) {
|
|
5649
5676
|
case "readyForReview": return "Ready for review";
|
|
5650
5677
|
default: return e.replace(/([A-Z])/g, " $1").replace(/^./, (e) => e.toUpperCase());
|
|
5651
5678
|
}
|
|
5652
5679
|
}
|
|
5653
|
-
function
|
|
5680
|
+
function Ri(e) {
|
|
5654
5681
|
return e === "blocked" || e === "cancelled" ? "danger" : e === "accepted" || e === "readyForReview" ? "success" : e === "queued" || e === "draft" || e === "preview" ? "warning" : "accent";
|
|
5655
5682
|
}
|
|
5656
|
-
function
|
|
5683
|
+
function zi(e) {
|
|
5657
5684
|
switch (e) {
|
|
5658
5685
|
case "accepted": return 100;
|
|
5659
5686
|
case "blocked": return 42;
|
|
@@ -5665,7 +5692,7 @@ function Pi(e) {
|
|
|
5665
5692
|
case "working": return 64;
|
|
5666
5693
|
}
|
|
5667
5694
|
}
|
|
5668
|
-
function
|
|
5695
|
+
function Bi(e, t, n) {
|
|
5669
5696
|
let r = {
|
|
5670
5697
|
disabled: !!(n || e.disabled),
|
|
5671
5698
|
id: e.id,
|
|
@@ -5674,14 +5701,14 @@ function Fi(e, t, n) {
|
|
|
5674
5701
|
};
|
|
5675
5702
|
return e.icon && (r.icon = e.icon), e.ariaLabel && (r.ariaLabel = e.ariaLabel), e.meta && (r.meta = e.meta), t && (r.onAction = t), r;
|
|
5676
5703
|
}
|
|
5677
|
-
function
|
|
5704
|
+
function Vi(e) {
|
|
5678
5705
|
return e === "danger" || e === "warning" ? "alert" : "status";
|
|
5679
5706
|
}
|
|
5680
|
-
function
|
|
5707
|
+
function Hi(e) {
|
|
5681
5708
|
return !!(e.before && e.after);
|
|
5682
5709
|
}
|
|
5683
|
-
function
|
|
5684
|
-
let m = ["game-ui-construction-progress", e].filter(Boolean).join(" "), h = d ??
|
|
5710
|
+
function Ui({ 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 }) {
|
|
5711
|
+
let m = ["game-ui-construction-progress", e].filter(Boolean).join(" "), h = d ?? zi(s), g = Li(s, c);
|
|
5685
5712
|
return /* @__PURE__ */ n("section", {
|
|
5686
5713
|
"aria-label": r,
|
|
5687
5714
|
className: m,
|
|
@@ -5693,18 +5720,18 @@ function Ri({ className: e, label: r, max: i = 100, progressLabel: a = "Construc
|
|
|
5693
5720
|
/* @__PURE__ */ n("header", {
|
|
5694
5721
|
className: "game-ui-construction-progress-header",
|
|
5695
5722
|
children: [/* @__PURE__ */ n("span", { children: [/* @__PURE__ */ t($, {
|
|
5696
|
-
icon:
|
|
5723
|
+
icon: ji[s],
|
|
5697
5724
|
size: "sm"
|
|
5698
5725
|
}), /* @__PURE__ */ t("strong", { children: a })] }), o ? /* @__PURE__ */ t(Q, {
|
|
5699
|
-
tone:
|
|
5726
|
+
tone: Ai[s],
|
|
5700
5727
|
children: g
|
|
5701
5728
|
}) : null]
|
|
5702
5729
|
}),
|
|
5703
|
-
/* @__PURE__ */ t(
|
|
5730
|
+
/* @__PURE__ */ t(Zr, {
|
|
5704
5731
|
label: a,
|
|
5705
5732
|
max: i,
|
|
5706
5733
|
showValue: !0,
|
|
5707
|
-
tone:
|
|
5734
|
+
tone: Ri(s),
|
|
5708
5735
|
value: h
|
|
5709
5736
|
}),
|
|
5710
5737
|
l.length > 0 ? /* @__PURE__ */ t("ol", {
|
|
@@ -5719,7 +5746,7 @@ function Ri({ className: e, label: r, max: i = 100, progressLabel: a = "Construc
|
|
|
5719
5746
|
}),
|
|
5720
5747
|
/* @__PURE__ */ n("span", { children: [/* @__PURE__ */ t("strong", { children: e.label }), e.caption ? /* @__PURE__ */ t("small", { children: e.caption }) : null] }),
|
|
5721
5748
|
/* @__PURE__ */ t(Q, {
|
|
5722
|
-
tone:
|
|
5749
|
+
tone: Mi[e.status],
|
|
5723
5750
|
children: e.status
|
|
5724
5751
|
})
|
|
5725
5752
|
]
|
|
@@ -5731,7 +5758,7 @@ function Ri({ className: e, label: r, max: i = 100, progressLabel: a = "Construc
|
|
|
5731
5758
|
children: u.map((e) => /* @__PURE__ */ n("div", {
|
|
5732
5759
|
className: "game-ui-construction-warning",
|
|
5733
5760
|
"data-warning-tone": e.tone ?? "warning",
|
|
5734
|
-
role:
|
|
5761
|
+
role: Vi(e.tone),
|
|
5735
5762
|
children: [/* @__PURE__ */ t($, {
|
|
5736
5763
|
icon: e.tone === "danger" || e.tone === "warning" ? "alert" : "check",
|
|
5737
5764
|
size: "sm"
|
|
@@ -5741,8 +5768,8 @@ function Ri({ className: e, label: r, max: i = 100, progressLabel: a = "Construc
|
|
|
5741
5768
|
]
|
|
5742
5769
|
});
|
|
5743
5770
|
}
|
|
5744
|
-
function
|
|
5745
|
-
let p = ["game-ui-construction-approval-bar", r].filter(Boolean).join(" "), m = e ??
|
|
5771
|
+
function Wi({ 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 }) {
|
|
5772
|
+
let p = ["game-ui-construction-approval-bar", r].filter(Boolean).join(" "), m = e ?? Ii[l], h = u.filter((e) => e.tone !== "success").length, g = m.map((e) => Bi(e, s, i));
|
|
5746
5773
|
return /* @__PURE__ */ n("section", {
|
|
5747
5774
|
"aria-label": a,
|
|
5748
5775
|
className: p,
|
|
@@ -5753,8 +5780,8 @@ function zi({ actions: e, className: r, disabled: i = !1, label: a, localOnlyLab
|
|
|
5753
5780
|
children: [/* @__PURE__ */ n("div", {
|
|
5754
5781
|
className: "game-ui-construction-approval-meta",
|
|
5755
5782
|
children: [c ? /* @__PURE__ */ t(Q, {
|
|
5756
|
-
tone:
|
|
5757
|
-
children:
|
|
5783
|
+
tone: Fi[c],
|
|
5784
|
+
children: Pi[c]
|
|
5758
5785
|
}) : /* @__PURE__ */ t(Q, {
|
|
5759
5786
|
tone: "success",
|
|
5760
5787
|
children: o
|
|
@@ -5769,21 +5796,21 @@ function zi({ actions: e, className: r, disabled: i = !1, label: a, localOnlyLab
|
|
|
5769
5796
|
tone: "success",
|
|
5770
5797
|
children: "Validation clear"
|
|
5771
5798
|
})]
|
|
5772
|
-
}), g.length > 0 ? /* @__PURE__ */ t(
|
|
5799
|
+
}), g.length > 0 ? /* @__PURE__ */ t(ri, {
|
|
5773
5800
|
actions: g,
|
|
5774
5801
|
density: d === "small-mobile" ? "dense" : "comfortable",
|
|
5775
5802
|
label: `${a} actions`
|
|
5776
5803
|
}) : null]
|
|
5777
5804
|
});
|
|
5778
5805
|
}
|
|
5779
|
-
function
|
|
5806
|
+
function Gi({ 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 }) {
|
|
5780
5807
|
return /* @__PURE__ */ n("section", {
|
|
5781
5808
|
"aria-label": o,
|
|
5782
5809
|
className: ["game-ui-robot-crew-status", e].filter(Boolean).join(" "),
|
|
5783
5810
|
"data-ui-hook": "robot-crew-status",
|
|
5784
5811
|
"data-variant": c,
|
|
5785
5812
|
"data-testid": l,
|
|
5786
|
-
children: [s ? /* @__PURE__ */ t("header", { children: /* @__PURE__ */ t("strong", { children: s }) }) : null, r.length === 0 ? /* @__PURE__ */ t(
|
|
5813
|
+
children: [s ? /* @__PURE__ */ t("header", { children: /* @__PURE__ */ t("strong", { children: s }) }) : null, r.length === 0 ? /* @__PURE__ */ t(Qr, {
|
|
5787
5814
|
description: i,
|
|
5788
5815
|
icon: "ai",
|
|
5789
5816
|
title: a
|
|
@@ -5806,7 +5833,7 @@ function Bi({ className: e, crew: r, emptyDescription: i = "Robot crew members a
|
|
|
5806
5833
|
]
|
|
5807
5834
|
}),
|
|
5808
5835
|
/* @__PURE__ */ t(Q, {
|
|
5809
|
-
tone:
|
|
5836
|
+
tone: Ni[e.status],
|
|
5810
5837
|
children: e.status
|
|
5811
5838
|
})
|
|
5812
5839
|
]
|
|
@@ -5814,7 +5841,7 @@ function Bi({ className: e, crew: r, emptyDescription: i = "Robot crew members a
|
|
|
5814
5841
|
})]
|
|
5815
5842
|
});
|
|
5816
5843
|
}
|
|
5817
|
-
function
|
|
5844
|
+
function Ki({ activeView: e, after: r, before: i, className: a, label: o, onViewChange: s, variant: c = "desktop", "data-testid": l }) {
|
|
5818
5845
|
let u = ["game-ui-before-after-toggle", a].filter(Boolean).join(" "), d = e === "before" ? i : r;
|
|
5819
5846
|
return /* @__PURE__ */ n("section", {
|
|
5820
5847
|
"aria-label": o,
|
|
@@ -5823,7 +5850,7 @@ function Vi({ activeView: e, after: r, before: i, className: a, label: o, onView
|
|
|
5823
5850
|
"data-ui-hook": "before-after-toggle",
|
|
5824
5851
|
"data-variant": c,
|
|
5825
5852
|
"data-testid": l,
|
|
5826
|
-
children: [/* @__PURE__ */ t(
|
|
5853
|
+
children: [/* @__PURE__ */ t(ar, {
|
|
5827
5854
|
activeId: e,
|
|
5828
5855
|
label: `${o} view`,
|
|
5829
5856
|
...s ? { onSelect: (e) => s(e) } : {},
|
|
@@ -5850,8 +5877,8 @@ function Vi({ activeView: e, after: r, before: i, className: a, label: o, onView
|
|
|
5850
5877
|
})]
|
|
5851
5878
|
});
|
|
5852
5879
|
}
|
|
5853
|
-
function
|
|
5854
|
-
let f = ["game-ui-construction-job-card", e].filter(Boolean).join(" "), p =
|
|
5880
|
+
function qi({ 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 }) {
|
|
5881
|
+
let f = ["game-ui-construction-job-card", e].filter(Boolean).join(" "), p = Li(i.status, i.statusLabel), m = u === "mobile" || u === "small-mobile", h = i.facts ?? [];
|
|
5855
5882
|
return /* @__PURE__ */ n("article", {
|
|
5856
5883
|
className: f,
|
|
5857
5884
|
"data-density": r,
|
|
@@ -5871,19 +5898,19 @@ function Hi({ className: e, density: r = "comfortable", job: i, onAction: a, onS
|
|
|
5871
5898
|
onClick: () => o?.(i.id),
|
|
5872
5899
|
type: "button",
|
|
5873
5900
|
children: [/* @__PURE__ */ t($, {
|
|
5874
|
-
icon:
|
|
5901
|
+
icon: ji[i.status],
|
|
5875
5902
|
size: m ? "sm" : "md"
|
|
5876
5903
|
}), /* @__PURE__ */ n("span", { children: [/* @__PURE__ */ t("strong", { children: i.title }), i.description ? /* @__PURE__ */ t("small", { children: i.description }) : null] })]
|
|
5877
5904
|
}), /* @__PURE__ */ n("span", {
|
|
5878
5905
|
className: "game-ui-construction-job-badges",
|
|
5879
5906
|
children: [
|
|
5880
5907
|
/* @__PURE__ */ t(Q, {
|
|
5881
|
-
tone:
|
|
5908
|
+
tone: Ai[i.status],
|
|
5882
5909
|
children: p
|
|
5883
5910
|
}),
|
|
5884
5911
|
i.providerMode ? /* @__PURE__ */ t(Q, {
|
|
5885
|
-
tone:
|
|
5886
|
-
children:
|
|
5912
|
+
tone: Fi[i.providerMode],
|
|
5913
|
+
children: Pi[i.providerMode]
|
|
5887
5914
|
}) : null,
|
|
5888
5915
|
i.badges?.map((e) => /* @__PURE__ */ t(Q, {
|
|
5889
5916
|
tone: e.tone ?? "neutral",
|
|
@@ -5901,7 +5928,7 @@ function Hi({ className: e, density: r = "comfortable", job: i, onAction: a, onS
|
|
|
5901
5928
|
h.map((e) => /* @__PURE__ */ n("span", { children: [/* @__PURE__ */ t("small", { children: e.label }), /* @__PURE__ */ t("b", { children: e.value })] }, e.id))
|
|
5902
5929
|
]
|
|
5903
5930
|
}),
|
|
5904
|
-
/* @__PURE__ */ t(
|
|
5931
|
+
/* @__PURE__ */ t(Ui, {
|
|
5905
5932
|
label: `${i.title} progress`,
|
|
5906
5933
|
progressLabel: i.progressLabel,
|
|
5907
5934
|
status: i.status,
|
|
@@ -5912,19 +5939,19 @@ function Hi({ className: e, density: r = "comfortable", job: i, onAction: a, onS
|
|
|
5912
5939
|
max: i.progressMax,
|
|
5913
5940
|
variant: u
|
|
5914
5941
|
}),
|
|
5915
|
-
l &&
|
|
5942
|
+
l && Hi(i) ? /* @__PURE__ */ t(Ki, {
|
|
5916
5943
|
activeView: "after",
|
|
5917
5944
|
after: i.after,
|
|
5918
5945
|
before: i.before,
|
|
5919
5946
|
label: `${i.title} preview`,
|
|
5920
5947
|
variant: u
|
|
5921
5948
|
}) : null,
|
|
5922
|
-
i.crew && i.crew.length > 0 ? /* @__PURE__ */ t(
|
|
5949
|
+
i.crew && i.crew.length > 0 ? /* @__PURE__ */ t(Gi, {
|
|
5923
5950
|
crew: i.crew,
|
|
5924
5951
|
label: `${i.title} robot crew`,
|
|
5925
5952
|
variant: u
|
|
5926
5953
|
}) : null,
|
|
5927
|
-
c ? /* @__PURE__ */ t(
|
|
5954
|
+
c ? /* @__PURE__ */ t(Wi, {
|
|
5928
5955
|
actions: i.actions,
|
|
5929
5956
|
label: `${i.title} approval`,
|
|
5930
5957
|
onAction: (e) => a?.(e, i.id),
|
|
@@ -5936,8 +5963,8 @@ function Hi({ className: e, density: r = "comfortable", job: i, onAction: a, onS
|
|
|
5936
5963
|
]
|
|
5937
5964
|
});
|
|
5938
5965
|
}
|
|
5939
|
-
function
|
|
5940
|
-
return /* @__PURE__ */ t(
|
|
5966
|
+
function Ji({ 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 }) {
|
|
5967
|
+
return /* @__PURE__ */ t(Ei, {
|
|
5941
5968
|
className: ["game-ui-compact-job-drawer", n].filter(Boolean).join(" "),
|
|
5942
5969
|
closeLabel: r,
|
|
5943
5970
|
disabled: i,
|
|
@@ -5953,7 +5980,7 @@ function Ui({ children: e, className: n, closeLabel: r = "Close jobs", disabled:
|
|
|
5953
5980
|
children: e ?? /* @__PURE__ */ t("div", {
|
|
5954
5981
|
className: "game-ui-compact-job-drawer-list",
|
|
5955
5982
|
tabIndex: 0,
|
|
5956
|
-
children: a.map((e) => /* @__PURE__ */ t(
|
|
5983
|
+
children: a.map((e) => /* @__PURE__ */ t(qi, {
|
|
5957
5984
|
density: "dense",
|
|
5958
5985
|
job: e,
|
|
5959
5986
|
onAction: s,
|
|
@@ -5965,7 +5992,7 @@ function Ui({ children: e, className: n, closeLabel: r = "Close jobs", disabled:
|
|
|
5965
5992
|
})
|
|
5966
5993
|
});
|
|
5967
5994
|
}
|
|
5968
|
-
function
|
|
5995
|
+
function Yi({ 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 }) {
|
|
5969
5996
|
let y = ["game-ui-contractor-panel", r].filter(Boolean).join(" "), b = c.find((e) => e.id === m) ?? c[0];
|
|
5970
5997
|
return _ === "mobile" || _ === "small-mobile" ? /* @__PURE__ */ n("section", {
|
|
5971
5998
|
"aria-label": l,
|
|
@@ -5974,7 +6001,7 @@ function Wi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
5974
6001
|
"data-variant": _,
|
|
5975
6002
|
"data-testid": v,
|
|
5976
6003
|
children: [
|
|
5977
|
-
/* @__PURE__ */ t(
|
|
6004
|
+
/* @__PURE__ */ t(Ji, {
|
|
5978
6005
|
jobs: c,
|
|
5979
6006
|
label: `${l} drawer`,
|
|
5980
6007
|
onAction: u,
|
|
@@ -5986,16 +6013,16 @@ function Wi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
5986
6013
|
triggerLabel: "Contractor",
|
|
5987
6014
|
variant: _
|
|
5988
6015
|
}),
|
|
5989
|
-
b && !a ? /* @__PURE__ */ t(
|
|
6016
|
+
b && !a ? /* @__PURE__ */ t(qi, {
|
|
5990
6017
|
density: "dense",
|
|
5991
6018
|
job: b,
|
|
5992
6019
|
onAction: u,
|
|
5993
6020
|
onSelect: p,
|
|
5994
6021
|
selected: !0,
|
|
5995
|
-
showBeforeAfter:
|
|
6022
|
+
showBeforeAfter: Hi(b),
|
|
5996
6023
|
variant: _
|
|
5997
6024
|
}) : null,
|
|
5998
|
-
b ? null : /* @__PURE__ */ t(
|
|
6025
|
+
b ? null : /* @__PURE__ */ t(Qr, {
|
|
5999
6026
|
description: o,
|
|
6000
6027
|
icon: "energy",
|
|
6001
6028
|
title: s
|
|
@@ -6016,7 +6043,7 @@ function Wi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6016
6043
|
className: "game-ui-contractor-panel-subtitle",
|
|
6017
6044
|
children: h
|
|
6018
6045
|
}) : null,
|
|
6019
|
-
c.length === 0 ? /* @__PURE__ */ t(
|
|
6046
|
+
c.length === 0 ? /* @__PURE__ */ t(Qr, {
|
|
6020
6047
|
description: o,
|
|
6021
6048
|
icon: "energy",
|
|
6022
6049
|
title: s
|
|
@@ -6027,7 +6054,7 @@ function Wi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6027
6054
|
"aria-label": "Construction job queue",
|
|
6028
6055
|
className: "game-ui-contractor-job-list",
|
|
6029
6056
|
tabIndex: 0,
|
|
6030
|
-
children: c.map((e) => /* @__PURE__ */ t(
|
|
6057
|
+
children: c.map((e) => /* @__PURE__ */ t(qi, {
|
|
6031
6058
|
density: i,
|
|
6032
6059
|
job: e,
|
|
6033
6060
|
onAction: u,
|
|
@@ -6040,7 +6067,7 @@ function Wi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6040
6067
|
className: "game-ui-contractor-detail",
|
|
6041
6068
|
"aria-label": `${b.title} detail`,
|
|
6042
6069
|
children: [
|
|
6043
|
-
/* @__PURE__ */ t(
|
|
6070
|
+
/* @__PURE__ */ t(Ui, {
|
|
6044
6071
|
label: `${b.title} progress detail`,
|
|
6045
6072
|
progressLabel: b.progressLabel,
|
|
6046
6073
|
status: b.status,
|
|
@@ -6051,7 +6078,7 @@ function Wi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6051
6078
|
max: b.progressMax,
|
|
6052
6079
|
variant: _
|
|
6053
6080
|
}),
|
|
6054
|
-
|
|
6081
|
+
Hi(b) ? /* @__PURE__ */ t(Ki, {
|
|
6055
6082
|
activeView: e,
|
|
6056
6083
|
after: b.after,
|
|
6057
6084
|
before: b.before,
|
|
@@ -6059,13 +6086,13 @@ function Wi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6059
6086
|
onViewChange: f,
|
|
6060
6087
|
variant: _
|
|
6061
6088
|
}) : null,
|
|
6062
|
-
/* @__PURE__ */ t(
|
|
6089
|
+
/* @__PURE__ */ t(Gi, {
|
|
6063
6090
|
crew: b.crew ?? [],
|
|
6064
6091
|
label: `${b.title} robot crew`,
|
|
6065
6092
|
title: "Robot crew",
|
|
6066
6093
|
variant: _
|
|
6067
6094
|
}),
|
|
6068
|
-
/* @__PURE__ */ t(
|
|
6095
|
+
/* @__PURE__ */ t(Wi, {
|
|
6069
6096
|
actions: b.actions,
|
|
6070
6097
|
label: `${b.title} approval`,
|
|
6071
6098
|
onAction: u ? (e) => u(e, b.id) : void 0,
|
|
@@ -6083,16 +6110,16 @@ function Wi({ activePreviewView: e = "after", className: r, density: i = "comfor
|
|
|
6083
6110
|
}
|
|
6084
6111
|
//#endregion
|
|
6085
6112
|
//#region src/GamePanelSystem.tsx
|
|
6086
|
-
function
|
|
6113
|
+
function Xi(...e) {
|
|
6087
6114
|
return e.filter(Boolean).join(" ");
|
|
6088
6115
|
}
|
|
6089
|
-
var
|
|
6116
|
+
var Zi = {
|
|
6090
6117
|
collapse: "Collapse",
|
|
6091
6118
|
expand: "Expand"
|
|
6092
6119
|
};
|
|
6093
|
-
function
|
|
6120
|
+
function Qi({ actions: e, children: r, className: i, defaultOpen: a = !0, labels: o, onOpenChange: s, open: c, title: l, tone: d = "default", ...f }) {
|
|
6094
6121
|
let p = u(), [h, g] = m(a), _ = c ?? h, v = {
|
|
6095
|
-
...
|
|
6122
|
+
...Zi,
|
|
6096
6123
|
...o
|
|
6097
6124
|
}, y = () => {
|
|
6098
6125
|
let e = !_;
|
|
@@ -6100,7 +6127,7 @@ function qi({ actions: e, children: r, className: i, defaultOpen: a = !0, labels
|
|
|
6100
6127
|
};
|
|
6101
6128
|
return /* @__PURE__ */ n("section", {
|
|
6102
6129
|
...f,
|
|
6103
|
-
className:
|
|
6130
|
+
className: Xi("game-ui-collapsible", i),
|
|
6104
6131
|
"data-open": _,
|
|
6105
6132
|
"data-panel-tone": d,
|
|
6106
6133
|
children: [/* @__PURE__ */ n("header", {
|
|
@@ -6139,13 +6166,13 @@ function qi({ actions: e, children: r, className: i, defaultOpen: a = !0, labels
|
|
|
6139
6166
|
})]
|
|
6140
6167
|
});
|
|
6141
6168
|
}
|
|
6142
|
-
var
|
|
6169
|
+
var $i = {
|
|
6143
6170
|
close: "Close",
|
|
6144
6171
|
maximize: "Maximize",
|
|
6145
6172
|
minimize: "Minimize",
|
|
6146
6173
|
restore: "Restore"
|
|
6147
6174
|
};
|
|
6148
|
-
function
|
|
6175
|
+
function ea({ kind: e }) {
|
|
6149
6176
|
return /* @__PURE__ */ t("svg", {
|
|
6150
6177
|
"aria-hidden": "true",
|
|
6151
6178
|
fill: "none",
|
|
@@ -6165,9 +6192,9 @@ function Yi({ kind: e }) {
|
|
|
6165
6192
|
})
|
|
6166
6193
|
});
|
|
6167
6194
|
}
|
|
6168
|
-
function
|
|
6195
|
+
function ta({ 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 }) {
|
|
6169
6196
|
let [g, _] = m(o), v = f ?? g, y = {
|
|
6170
|
-
|
|
6197
|
+
...$i,
|
|
6171
6198
|
...l
|
|
6172
6199
|
}, b = (e) => {
|
|
6173
6200
|
f === void 0 && _(e), d?.(e);
|
|
@@ -6175,7 +6202,7 @@ function Xi({ allowMaximize: e = !0, allowMinimize: r = !0, children: i, classNa
|
|
|
6175
6202
|
return /* @__PURE__ */ n("section", {
|
|
6176
6203
|
...h,
|
|
6177
6204
|
"aria-label": p,
|
|
6178
|
-
className:
|
|
6205
|
+
className: Xi("game-ui-window", a),
|
|
6179
6206
|
"data-window-state": v,
|
|
6180
6207
|
role: "group",
|
|
6181
6208
|
children: [/* @__PURE__ */ n("header", {
|
|
@@ -6198,21 +6225,21 @@ function Xi({ allowMaximize: e = !0, allowMinimize: r = !0, children: i, classNa
|
|
|
6198
6225
|
className: "game-ui-icon-button game-ui-window-button",
|
|
6199
6226
|
onClick: () => b(x ? "normal" : "minimized"),
|
|
6200
6227
|
type: "button",
|
|
6201
|
-
children: /* @__PURE__ */ t(
|
|
6228
|
+
children: /* @__PURE__ */ t(ea, { kind: x ? "restore" : "minimize" })
|
|
6202
6229
|
}) : null,
|
|
6203
6230
|
e ? /* @__PURE__ */ t("button", {
|
|
6204
6231
|
"aria-label": S ? y.restore : y.maximize,
|
|
6205
6232
|
className: "game-ui-icon-button game-ui-window-button",
|
|
6206
6233
|
onClick: () => b(S ? "normal" : "maximized"),
|
|
6207
6234
|
type: "button",
|
|
6208
|
-
children: /* @__PURE__ */ t(
|
|
6235
|
+
children: /* @__PURE__ */ t(ea, { kind: S ? "restore" : "maximize" })
|
|
6209
6236
|
}) : null,
|
|
6210
6237
|
u ? /* @__PURE__ */ t("button", {
|
|
6211
6238
|
"aria-label": y.close,
|
|
6212
6239
|
className: "game-ui-icon-button game-ui-window-button",
|
|
6213
6240
|
onClick: u,
|
|
6214
6241
|
type: "button",
|
|
6215
|
-
children: /* @__PURE__ */ t(
|
|
6242
|
+
children: /* @__PURE__ */ t(ea, { kind: "close" })
|
|
6216
6243
|
}) : null
|
|
6217
6244
|
]
|
|
6218
6245
|
})
|
|
@@ -6232,14 +6259,14 @@ function Xi({ allowMaximize: e = !0, allowMinimize: r = !0, children: i, classNa
|
|
|
6232
6259
|
})]
|
|
6233
6260
|
});
|
|
6234
6261
|
}
|
|
6235
|
-
function
|
|
6262
|
+
function na({ children: e, className: r, closeLabel: i = "Close", closeOnBackdrop: a = !0, footer: o, onClose: s, open: c, position: d = "center", size: f = "md", title: m }) {
|
|
6236
6263
|
let h = p(null), g = u();
|
|
6237
6264
|
return l(() => {
|
|
6238
6265
|
let e = h.current;
|
|
6239
6266
|
e && (c && !e.open && e.showModal(), !c && e.open && e.close());
|
|
6240
6267
|
}, [c]), /* @__PURE__ */ t("dialog", {
|
|
6241
6268
|
"aria-labelledby": g,
|
|
6242
|
-
className:
|
|
6269
|
+
className: Xi("game-ui-modal", r),
|
|
6243
6270
|
"data-position": d,
|
|
6244
6271
|
"data-size": f,
|
|
6245
6272
|
onCancel: (e) => {
|
|
@@ -6263,7 +6290,7 @@ function Zi({ children: e, className: r, closeLabel: i = "Close", closeOnBackdro
|
|
|
6263
6290
|
className: "game-ui-icon-button game-ui-window-button",
|
|
6264
6291
|
onClick: s,
|
|
6265
6292
|
type: "button",
|
|
6266
|
-
children: /* @__PURE__ */ t(
|
|
6293
|
+
children: /* @__PURE__ */ t(ea, { kind: "close" })
|
|
6267
6294
|
})]
|
|
6268
6295
|
}),
|
|
6269
6296
|
/* @__PURE__ */ t("div", {
|
|
@@ -6280,7 +6307,7 @@ function Zi({ children: e, className: r, closeLabel: i = "Close", closeOnBackdro
|
|
|
6280
6307
|
}
|
|
6281
6308
|
//#endregion
|
|
6282
6309
|
//#region src/previewStates.ts
|
|
6283
|
-
var
|
|
6310
|
+
var ra = [
|
|
6284
6311
|
{
|
|
6285
6312
|
id: "history-human-long",
|
|
6286
6313
|
kind: "human",
|
|
@@ -6302,9 +6329,9 @@ var Qi = [
|
|
|
6302
6329
|
speaker: "Table",
|
|
6303
6330
|
text: "Three votes are locked. One more read can still change the pact."
|
|
6304
6331
|
}
|
|
6305
|
-
],
|
|
6332
|
+
], ia = {
|
|
6333
|
+
...B,
|
|
6306
6334
|
...V,
|
|
6307
|
-
..._e,
|
|
6308
6335
|
...ve,
|
|
6309
6336
|
...H,
|
|
6310
6337
|
...U,
|
|
@@ -6312,13 +6339,13 @@ var Qi = [
|
|
|
6312
6339
|
...ye,
|
|
6313
6340
|
...xe,
|
|
6314
6341
|
...z
|
|
6315
|
-
},
|
|
6342
|
+
}, aa = {
|
|
6316
6343
|
toneAttr: "data-game-ui-tone",
|
|
6317
6344
|
toneGlass: "glass",
|
|
6318
6345
|
densityAttr: "data-game-ui-density",
|
|
6319
6346
|
densityCompact: "compact",
|
|
6320
6347
|
scopeClass: "game-ui-overlay-scope"
|
|
6321
|
-
},
|
|
6348
|
+
}, oa = be, sa = /* @__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("."), ca = {
|
|
6322
6349
|
en: {
|
|
6323
6350
|
triggerLabel: "EN",
|
|
6324
6351
|
langMenuLabel: "Preview language",
|
|
@@ -6520,7 +6547,7 @@ var Qi = [
|
|
|
6520
6547
|
hint: "Rotate manually if this browser blocks automatic landscape lock."
|
|
6521
6548
|
},
|
|
6522
6549
|
historyLabel: "Round history",
|
|
6523
|
-
history:
|
|
6550
|
+
history: ra
|
|
6524
6551
|
},
|
|
6525
6552
|
"zh-CN": {
|
|
6526
6553
|
triggerLabel: "中",
|
|
@@ -6747,18 +6774,18 @@ var Qi = [
|
|
|
6747
6774
|
}
|
|
6748
6775
|
]
|
|
6749
6776
|
}
|
|
6750
|
-
},
|
|
6777
|
+
}, la = i(ca.en), ua = () => c(la), da = [
|
|
6751
6778
|
{
|
|
6752
6779
|
id: "colors",
|
|
6753
6780
|
tokens: L
|
|
6754
6781
|
},
|
|
6755
6782
|
{
|
|
6756
6783
|
id: "semantic",
|
|
6757
|
-
tokens:
|
|
6784
|
+
tokens: B
|
|
6758
6785
|
},
|
|
6759
6786
|
{
|
|
6760
6787
|
id: "typography",
|
|
6761
|
-
tokens:
|
|
6788
|
+
tokens: V
|
|
6762
6789
|
},
|
|
6763
6790
|
{
|
|
6764
6791
|
id: "spacing",
|
|
@@ -6778,7 +6805,7 @@ var Qi = [
|
|
|
6778
6805
|
},
|
|
6779
6806
|
{
|
|
6780
6807
|
id: "overlayGlass",
|
|
6781
|
-
tokens:
|
|
6808
|
+
tokens: _e
|
|
6782
6809
|
},
|
|
6783
6810
|
{
|
|
6784
6811
|
id: "liquidMetal",
|
|
@@ -6801,7 +6828,7 @@ var Qi = [
|
|
|
6801
6828
|
tokens: xe
|
|
6802
6829
|
}
|
|
6803
6830
|
];
|
|
6804
|
-
function
|
|
6831
|
+
function fa({ id: e, label: r, tokens: i }) {
|
|
6805
6832
|
return /* @__PURE__ */ n("article", {
|
|
6806
6833
|
className: "game-ui-token-card",
|
|
6807
6834
|
children: [/* @__PURE__ */ t("h3", { children: r }), /* @__PURE__ */ t("div", {
|
|
@@ -6813,7 +6840,7 @@ function sa({ id: e, label: r, tokens: i }) {
|
|
|
6813
6840
|
})]
|
|
6814
6841
|
});
|
|
6815
6842
|
}
|
|
6816
|
-
function
|
|
6843
|
+
function pa() {
|
|
6817
6844
|
return /* @__PURE__ */ t("div", {
|
|
6818
6845
|
"aria-label": "Clay color swatches",
|
|
6819
6846
|
className: "game-ui-swatch-grid",
|
|
@@ -6823,8 +6850,8 @@ function ca() {
|
|
|
6823
6850
|
}, e))
|
|
6824
6851
|
});
|
|
6825
6852
|
}
|
|
6826
|
-
function
|
|
6827
|
-
let { type: e } =
|
|
6853
|
+
function ma() {
|
|
6854
|
+
let { type: e } = ua();
|
|
6828
6855
|
return /* @__PURE__ */ n("div", {
|
|
6829
6856
|
className: "game-ui-type-scale",
|
|
6830
6857
|
children: [
|
|
@@ -6839,8 +6866,8 @@ function la() {
|
|
|
6839
6866
|
]
|
|
6840
6867
|
});
|
|
6841
6868
|
}
|
|
6842
|
-
function
|
|
6843
|
-
let { buttons: e } =
|
|
6869
|
+
function ha() {
|
|
6870
|
+
let { buttons: e } = ua();
|
|
6844
6871
|
return /* @__PURE__ */ n(X, {
|
|
6845
6872
|
title: e.panelTitle,
|
|
6846
6873
|
tone: "strong",
|
|
@@ -6878,9 +6905,9 @@ function ua() {
|
|
|
6878
6905
|
/* @__PURE__ */ n("div", {
|
|
6879
6906
|
className: "game-ui-component-row",
|
|
6880
6907
|
children: [
|
|
6881
|
-
/* @__PURE__ */ t(
|
|
6908
|
+
/* @__PURE__ */ t(nr, {
|
|
6882
6909
|
label: e.settingsTip,
|
|
6883
|
-
children: /* @__PURE__ */ t(
|
|
6910
|
+
children: /* @__PURE__ */ t(tr, {
|
|
6884
6911
|
label: e.settingsTip,
|
|
6885
6912
|
children: /* @__PURE__ */ t($, {
|
|
6886
6913
|
icon: "settings",
|
|
@@ -6888,7 +6915,7 @@ function ua() {
|
|
|
6888
6915
|
})
|
|
6889
6916
|
})
|
|
6890
6917
|
}),
|
|
6891
|
-
/* @__PURE__ */ t(
|
|
6918
|
+
/* @__PURE__ */ t(tr, {
|
|
6892
6919
|
label: e.copyInvite,
|
|
6893
6920
|
children: /* @__PURE__ */ t($, {
|
|
6894
6921
|
icon: "copy",
|
|
@@ -6909,7 +6936,7 @@ function ua() {
|
|
|
6909
6936
|
})
|
|
6910
6937
|
]
|
|
6911
6938
|
}),
|
|
6912
|
-
/* @__PURE__ */ t(
|
|
6939
|
+
/* @__PURE__ */ t(ar, {
|
|
6913
6940
|
activeId: "live",
|
|
6914
6941
|
label: e.segmentedLabel,
|
|
6915
6942
|
options: [
|
|
@@ -6927,7 +6954,7 @@ function ua() {
|
|
|
6927
6954
|
}
|
|
6928
6955
|
]
|
|
6929
6956
|
}),
|
|
6930
|
-
/* @__PURE__ */ t(
|
|
6957
|
+
/* @__PURE__ */ t(rr, {
|
|
6931
6958
|
activeId: "portal",
|
|
6932
6959
|
tabs: [
|
|
6933
6960
|
{
|
|
@@ -6944,7 +6971,7 @@ function ua() {
|
|
|
6944
6971
|
}
|
|
6945
6972
|
]
|
|
6946
6973
|
}),
|
|
6947
|
-
/* @__PURE__ */ t(
|
|
6974
|
+
/* @__PURE__ */ t(cr, {
|
|
6948
6975
|
items: [
|
|
6949
6976
|
{
|
|
6950
6977
|
id: "wave",
|
|
@@ -6961,28 +6988,28 @@ function ua() {
|
|
|
6961
6988
|
],
|
|
6962
6989
|
label: e.radialLabel
|
|
6963
6990
|
}),
|
|
6964
|
-
/* @__PURE__ */ t(
|
|
6991
|
+
/* @__PURE__ */ t(or, {
|
|
6965
6992
|
label: e.sliderLabel,
|
|
6966
6993
|
max: 100,
|
|
6967
6994
|
min: 0,
|
|
6968
6995
|
value: 68
|
|
6969
6996
|
}),
|
|
6970
|
-
/* @__PURE__ */ t(
|
|
6997
|
+
/* @__PURE__ */ t(sr, {
|
|
6971
6998
|
checked: !0,
|
|
6972
6999
|
label: e.toggleLabel
|
|
6973
7000
|
})
|
|
6974
7001
|
]
|
|
6975
7002
|
});
|
|
6976
7003
|
}
|
|
6977
|
-
function
|
|
6978
|
-
let { hud: e, tiles: r } =
|
|
7004
|
+
function ga() {
|
|
7005
|
+
let { hud: e, tiles: r } = ua();
|
|
6979
7006
|
return /* @__PURE__ */ n("div", {
|
|
6980
7007
|
className: "game-ui-stage-demo",
|
|
6981
7008
|
children: [/* @__PURE__ */ n("div", {
|
|
6982
7009
|
"aria-label": "Clay world HUD preview",
|
|
6983
7010
|
className: "game-ui-stage-world",
|
|
6984
7011
|
children: [
|
|
6985
|
-
/* @__PURE__ */ t(
|
|
7012
|
+
/* @__PURE__ */ t(Pr, {
|
|
6986
7013
|
label: e.label,
|
|
6987
7014
|
items: [
|
|
6988
7015
|
{
|
|
@@ -7005,15 +7032,15 @@ function da() {
|
|
|
7005
7032
|
value: "02:46"
|
|
7006
7033
|
}
|
|
7007
7034
|
],
|
|
7008
|
-
actions: /* @__PURE__ */ n(
|
|
7035
|
+
actions: /* @__PURE__ */ n(er, {
|
|
7009
7036
|
label: e.tools,
|
|
7010
|
-
children: [/* @__PURE__ */ t(
|
|
7037
|
+
children: [/* @__PURE__ */ t(tr, {
|
|
7011
7038
|
label: e.history,
|
|
7012
7039
|
children: /* @__PURE__ */ t($, {
|
|
7013
7040
|
icon: "scroll",
|
|
7014
7041
|
size: "sm"
|
|
7015
7042
|
})
|
|
7016
|
-
}), /* @__PURE__ */ t(
|
|
7043
|
+
}), /* @__PURE__ */ t(tr, {
|
|
7017
7044
|
label: e.settings,
|
|
7018
7045
|
children: /* @__PURE__ */ t($, {
|
|
7019
7046
|
icon: "settings",
|
|
@@ -7053,7 +7080,7 @@ function da() {
|
|
|
7053
7080
|
}), /* @__PURE__ */ n("div", {
|
|
7054
7081
|
className: "game-ui-stage-sidecar",
|
|
7055
7082
|
children: [
|
|
7056
|
-
/* @__PURE__ */ t(
|
|
7083
|
+
/* @__PURE__ */ t(Ir, {
|
|
7057
7084
|
badge: r.daily.badge,
|
|
7058
7085
|
icon: "scroll",
|
|
7059
7086
|
kicker: r.daily.kicker,
|
|
@@ -7062,7 +7089,7 @@ function da() {
|
|
|
7062
7089
|
title: r.daily.title,
|
|
7063
7090
|
tone: "daily"
|
|
7064
7091
|
}),
|
|
7065
|
-
/* @__PURE__ */ t(
|
|
7092
|
+
/* @__PURE__ */ t(Ir, {
|
|
7066
7093
|
badge: r.portal.badge,
|
|
7067
7094
|
icon: "portal",
|
|
7068
7095
|
kicker: r.portal.kicker,
|
|
@@ -7070,7 +7097,7 @@ function da() {
|
|
|
7070
7097
|
title: r.portal.title,
|
|
7071
7098
|
tone: "portal"
|
|
7072
7099
|
}),
|
|
7073
|
-
/* @__PURE__ */ t(
|
|
7100
|
+
/* @__PURE__ */ t(Ir, {
|
|
7074
7101
|
icon: "energy",
|
|
7075
7102
|
kicker: r.host.kicker,
|
|
7076
7103
|
summary: r.host.summary,
|
|
@@ -7081,21 +7108,21 @@ function da() {
|
|
|
7081
7108
|
})]
|
|
7082
7109
|
});
|
|
7083
7110
|
}
|
|
7084
|
-
function
|
|
7085
|
-
let { hud: e, buttons: r } =
|
|
7111
|
+
function _a() {
|
|
7112
|
+
let { hud: e, buttons: r } = ua(), i = (i) => {
|
|
7086
7113
|
let a = i === "glass";
|
|
7087
7114
|
return /* @__PURE__ */ n("div", {
|
|
7088
7115
|
"aria-label": a ? "Overlay glass HUD" : "Default clay HUD",
|
|
7089
7116
|
className: [
|
|
7090
7117
|
"game-ui-stage-world",
|
|
7091
7118
|
"game-ui-overlay-glass-proof",
|
|
7092
|
-
a ?
|
|
7119
|
+
a ? aa.scopeClass : void 0
|
|
7093
7120
|
].filter(Boolean).join(" "),
|
|
7094
7121
|
...a ? {
|
|
7095
|
-
[
|
|
7096
|
-
[
|
|
7122
|
+
[aa.toneAttr]: aa.toneGlass,
|
|
7123
|
+
[aa.densityAttr]: aa.densityCompact
|
|
7097
7124
|
} : {},
|
|
7098
|
-
children: [/* @__PURE__ */ t(
|
|
7125
|
+
children: [/* @__PURE__ */ t(Pr, {
|
|
7099
7126
|
label: e.label,
|
|
7100
7127
|
items: [
|
|
7101
7128
|
{
|
|
@@ -7118,15 +7145,15 @@ function fa() {
|
|
|
7118
7145
|
value: "02:46"
|
|
7119
7146
|
}
|
|
7120
7147
|
],
|
|
7121
|
-
actions: /* @__PURE__ */ n(
|
|
7148
|
+
actions: /* @__PURE__ */ n(er, {
|
|
7122
7149
|
label: e.tools,
|
|
7123
|
-
children: [/* @__PURE__ */ t(
|
|
7150
|
+
children: [/* @__PURE__ */ t(tr, {
|
|
7124
7151
|
label: e.history,
|
|
7125
7152
|
children: /* @__PURE__ */ t($, {
|
|
7126
7153
|
icon: "scroll",
|
|
7127
7154
|
size: "sm"
|
|
7128
7155
|
})
|
|
7129
|
-
}), /* @__PURE__ */ t(
|
|
7156
|
+
}), /* @__PURE__ */ t(tr, {
|
|
7130
7157
|
label: e.settings,
|
|
7131
7158
|
children: /* @__PURE__ */ t($, {
|
|
7132
7159
|
icon: "settings",
|
|
@@ -7147,7 +7174,7 @@ function fa() {
|
|
|
7147
7174
|
tone: "success",
|
|
7148
7175
|
children: r.readyBadge
|
|
7149
7176
|
}),
|
|
7150
|
-
/* @__PURE__ */ t(
|
|
7177
|
+
/* @__PURE__ */ t(Zr, {
|
|
7151
7178
|
label: e.reveal,
|
|
7152
7179
|
value: 68
|
|
7153
7180
|
})
|
|
@@ -7185,22 +7212,22 @@ function fa() {
|
|
|
7185
7212
|
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t("strong", { children: "Overlay glass + compact" }), /* @__PURE__ */ n("span", {
|
|
7186
7213
|
className: "game-ui-small-copy",
|
|
7187
7214
|
children: [
|
|
7188
|
-
|
|
7215
|
+
aa.toneAttr,
|
|
7189
7216
|
"=\"",
|
|
7190
|
-
|
|
7217
|
+
aa.toneGlass,
|
|
7191
7218
|
"\" ·",
|
|
7192
7219
|
" ",
|
|
7193
|
-
|
|
7220
|
+
aa.densityAttr,
|
|
7194
7221
|
"=\"",
|
|
7195
|
-
|
|
7222
|
+
aa.densityCompact,
|
|
7196
7223
|
"\""
|
|
7197
7224
|
]
|
|
7198
7225
|
})] }), i("glass")]
|
|
7199
7226
|
})]
|
|
7200
7227
|
});
|
|
7201
7228
|
}
|
|
7202
|
-
function
|
|
7203
|
-
let { liquidMetal: e } =
|
|
7229
|
+
function va() {
|
|
7230
|
+
let { liquidMetal: e } = ua();
|
|
7204
7231
|
return /* @__PURE__ */ n("div", {
|
|
7205
7232
|
className: "game-ui-liquid-metal-compare",
|
|
7206
7233
|
children: [/* @__PURE__ */ t(X, {
|
|
@@ -7208,7 +7235,7 @@ function pa() {
|
|
|
7208
7235
|
tone: "strong",
|
|
7209
7236
|
children: /* @__PURE__ */ t("div", {
|
|
7210
7237
|
className: "game-ui-liquid-metal-stage",
|
|
7211
|
-
children: /* @__PURE__ */ t(
|
|
7238
|
+
children: /* @__PURE__ */ t(I, {
|
|
7212
7239
|
renderer: "css",
|
|
7213
7240
|
children: e.cta
|
|
7214
7241
|
})
|
|
@@ -7218,7 +7245,7 @@ function pa() {
|
|
|
7218
7245
|
tone: "strong",
|
|
7219
7246
|
children: /* @__PURE__ */ t("div", {
|
|
7220
7247
|
className: "game-ui-liquid-metal-stage",
|
|
7221
|
-
children: /* @__PURE__ */ t(
|
|
7248
|
+
children: /* @__PURE__ */ t(I, {
|
|
7222
7249
|
renderer: "webgl",
|
|
7223
7250
|
children: e.cta
|
|
7224
7251
|
})
|
|
@@ -7226,13 +7253,13 @@ function pa() {
|
|
|
7226
7253
|
})]
|
|
7227
7254
|
});
|
|
7228
7255
|
}
|
|
7229
|
-
function
|
|
7230
|
-
let { modals: e } =
|
|
7256
|
+
function ya() {
|
|
7257
|
+
let { modals: e } = ua();
|
|
7231
7258
|
return /* @__PURE__ */ n("div", {
|
|
7232
7259
|
className: "game-ui-preview-two-up",
|
|
7233
|
-
children: [/* @__PURE__ */ n(
|
|
7260
|
+
children: [/* @__PURE__ */ n(Qn, {
|
|
7234
7261
|
title: e.dialogTitle,
|
|
7235
|
-
children: [/* @__PURE__ */ t("p", { children: e.dialogBody }), /* @__PURE__ */ n(
|
|
7262
|
+
children: [/* @__PURE__ */ t("p", { children: e.dialogBody }), /* @__PURE__ */ n(er, {
|
|
7236
7263
|
label: e.actionsLabel,
|
|
7237
7264
|
children: [/* @__PURE__ */ t(w, {
|
|
7238
7265
|
variant: "primary",
|
|
@@ -7246,16 +7273,16 @@ function ma() {
|
|
|
7246
7273
|
title: e.panelTitle,
|
|
7247
7274
|
tone: "strong",
|
|
7248
7275
|
children: [
|
|
7249
|
-
/* @__PURE__ */ t(
|
|
7276
|
+
/* @__PURE__ */ t(lr, {
|
|
7250
7277
|
tone: "success",
|
|
7251
7278
|
children: e.toastOk
|
|
7252
7279
|
}),
|
|
7253
|
-
/* @__PURE__ */ t(
|
|
7280
|
+
/* @__PURE__ */ t(lr, {
|
|
7254
7281
|
tone: "danger",
|
|
7255
7282
|
children: e.toastErr
|
|
7256
7283
|
}),
|
|
7257
|
-
/* @__PURE__ */ t(
|
|
7258
|
-
/* @__PURE__ */ t(
|
|
7284
|
+
/* @__PURE__ */ t(Br, { label: e.loading }),
|
|
7285
|
+
/* @__PURE__ */ t(Br, {
|
|
7259
7286
|
label: e.loadingErr,
|
|
7260
7287
|
tone: "error"
|
|
7261
7288
|
})
|
|
@@ -7263,14 +7290,14 @@ function ma() {
|
|
|
7263
7290
|
})]
|
|
7264
7291
|
});
|
|
7265
7292
|
}
|
|
7266
|
-
function
|
|
7267
|
-
let { cards: e } =
|
|
7293
|
+
function ba() {
|
|
7294
|
+
let { cards: e } = ua();
|
|
7268
7295
|
return /* @__PURE__ */ n("div", {
|
|
7269
7296
|
className: "game-ui-preview-two-up",
|
|
7270
7297
|
children: [/* @__PURE__ */ t(X, {
|
|
7271
7298
|
title: e.fanTitle,
|
|
7272
7299
|
tone: "strong",
|
|
7273
|
-
children: /* @__PURE__ */ t(
|
|
7300
|
+
children: /* @__PURE__ */ t(Fr, {
|
|
7274
7301
|
label: e.fanLabel,
|
|
7275
7302
|
cards: [
|
|
7276
7303
|
{
|
|
@@ -7302,16 +7329,16 @@ function ha() {
|
|
|
7302
7329
|
}), /* @__PURE__ */ n("div", {
|
|
7303
7330
|
className: "game-ui-asset-path-grid",
|
|
7304
7331
|
children: [
|
|
7305
|
-
/* @__PURE__ */ t("code", { children:
|
|
7306
|
-
/* @__PURE__ */ t("code", { children:
|
|
7307
|
-
/* @__PURE__ */ t("code", { children:
|
|
7308
|
-
/* @__PURE__ */ t("code", { children:
|
|
7332
|
+
/* @__PURE__ */ t("code", { children: br.catalog.manifest }),
|
|
7333
|
+
/* @__PURE__ */ t("code", { children: br.catalog.sourceCatalog }),
|
|
7334
|
+
/* @__PURE__ */ t("code", { children: br.buttons.primary }),
|
|
7335
|
+
/* @__PURE__ */ t("code", { children: br.icons.trophy })
|
|
7309
7336
|
]
|
|
7310
7337
|
})]
|
|
7311
7338
|
})]
|
|
7312
7339
|
});
|
|
7313
7340
|
}
|
|
7314
|
-
var
|
|
7341
|
+
var xa = [
|
|
7315
7342
|
{
|
|
7316
7343
|
id: "terrain",
|
|
7317
7344
|
label: "Terrain",
|
|
@@ -7327,7 +7354,7 @@ var ga = [
|
|
|
7327
7354
|
label: "Place",
|
|
7328
7355
|
icon: "gem"
|
|
7329
7356
|
}
|
|
7330
|
-
],
|
|
7357
|
+
], Sa = [
|
|
7331
7358
|
{
|
|
7332
7359
|
id: "raise",
|
|
7333
7360
|
label: "Raise",
|
|
@@ -7353,7 +7380,7 @@ var ga = [
|
|
|
7353
7380
|
label: "Paint",
|
|
7354
7381
|
shortcut: "5"
|
|
7355
7382
|
}
|
|
7356
|
-
],
|
|
7383
|
+
], Ca = [
|
|
7357
7384
|
{
|
|
7358
7385
|
id: "grass",
|
|
7359
7386
|
label: "Grass",
|
|
@@ -7369,7 +7396,7 @@ var ga = [
|
|
|
7369
7396
|
label: "Path",
|
|
7370
7397
|
color: "#b98d5d"
|
|
7371
7398
|
}
|
|
7372
|
-
],
|
|
7399
|
+
], wa = [{
|
|
7373
7400
|
id: "foundation",
|
|
7374
7401
|
label: "Foundation",
|
|
7375
7402
|
icon: "home",
|
|
@@ -7388,10 +7415,10 @@ var ga = [
|
|
|
7388
7415
|
status: "ready"
|
|
7389
7416
|
}]
|
|
7390
7417
|
}];
|
|
7391
|
-
function
|
|
7418
|
+
function Ta() {
|
|
7392
7419
|
return /* @__PURE__ */ n("div", {
|
|
7393
7420
|
className: "game-ui-preview-two-up",
|
|
7394
|
-
children: [/* @__PURE__ */ t(
|
|
7421
|
+
children: [/* @__PURE__ */ t(ki, {
|
|
7395
7422
|
activeBuildCategoryId: "foundation",
|
|
7396
7423
|
activeMaterialId: "grass",
|
|
7397
7424
|
activeModeId: "terrain",
|
|
@@ -7400,10 +7427,10 @@ function ba() {
|
|
|
7400
7427
|
radius: 2.75,
|
|
7401
7428
|
strength: .45
|
|
7402
7429
|
},
|
|
7403
|
-
buildCategories:
|
|
7430
|
+
buildCategories: wa,
|
|
7404
7431
|
label: "Desktop terrain and build tools",
|
|
7405
|
-
materials:
|
|
7406
|
-
modes:
|
|
7432
|
+
materials: Ca,
|
|
7433
|
+
modes: xa,
|
|
7407
7434
|
selectedBuildItemId: "floor-2x2",
|
|
7408
7435
|
status: {
|
|
7409
7436
|
label: "Ready",
|
|
@@ -7414,12 +7441,12 @@ function ba() {
|
|
|
7414
7441
|
progressValue: 68
|
|
7415
7442
|
},
|
|
7416
7443
|
title: "Island tools",
|
|
7417
|
-
tools:
|
|
7444
|
+
tools: Sa,
|
|
7418
7445
|
undoRedo: {
|
|
7419
7446
|
canRedo: !1,
|
|
7420
7447
|
canUndo: !0
|
|
7421
7448
|
}
|
|
7422
|
-
}), /* @__PURE__ */ t(
|
|
7449
|
+
}), /* @__PURE__ */ t(ki, {
|
|
7423
7450
|
activeBuildCategoryId: "foundation",
|
|
7424
7451
|
activeMaterialId: "path",
|
|
7425
7452
|
activeModeId: "terrain",
|
|
@@ -7428,11 +7455,11 @@ function ba() {
|
|
|
7428
7455
|
radius: 1.5,
|
|
7429
7456
|
strength: .3
|
|
7430
7457
|
},
|
|
7431
|
-
buildCategories:
|
|
7458
|
+
buildCategories: wa,
|
|
7432
7459
|
drawerOpen: !0,
|
|
7433
7460
|
label: "Small mobile terrain drawer",
|
|
7434
|
-
materials:
|
|
7435
|
-
modes:
|
|
7461
|
+
materials: Ca,
|
|
7462
|
+
modes: xa,
|
|
7436
7463
|
selectedBuildItemId: "floor-2x2",
|
|
7437
7464
|
status: {
|
|
7438
7465
|
label: "Blocked",
|
|
@@ -7440,7 +7467,7 @@ function ba() {
|
|
|
7440
7467
|
description: "This edit would bury a placed object."
|
|
7441
7468
|
},
|
|
7442
7469
|
title: "Tools",
|
|
7443
|
-
tools:
|
|
7470
|
+
tools: Sa,
|
|
7444
7471
|
undoRedo: {
|
|
7445
7472
|
canRedo: !0,
|
|
7446
7473
|
canUndo: !0
|
|
@@ -7449,7 +7476,7 @@ function ba() {
|
|
|
7449
7476
|
})]
|
|
7450
7477
|
});
|
|
7451
7478
|
}
|
|
7452
|
-
function
|
|
7479
|
+
function Ea({ label: e, mode: r }) {
|
|
7453
7480
|
return /* @__PURE__ */ n("div", {
|
|
7454
7481
|
className: "game-ui-construction-preview-card",
|
|
7455
7482
|
"data-preview": r,
|
|
@@ -7463,7 +7490,7 @@ function xa({ label: e, mode: r }) {
|
|
|
7463
7490
|
]
|
|
7464
7491
|
});
|
|
7465
7492
|
}
|
|
7466
|
-
var
|
|
7493
|
+
var Da = [
|
|
7467
7494
|
{
|
|
7468
7495
|
id: "preview-deck",
|
|
7469
7496
|
title: "Deck robot crew",
|
|
@@ -7524,7 +7551,7 @@ var Sa = [
|
|
|
7524
7551
|
before: {
|
|
7525
7552
|
label: "Before",
|
|
7526
7553
|
caption: "Uneven terrain pad.",
|
|
7527
|
-
content: /* @__PURE__ */ t(
|
|
7554
|
+
content: /* @__PURE__ */ t(Ea, {
|
|
7528
7555
|
label: "Rough pad",
|
|
7529
7556
|
mode: "before"
|
|
7530
7557
|
})
|
|
@@ -7532,7 +7559,7 @@ var Sa = [
|
|
|
7532
7559
|
after: {
|
|
7533
7560
|
label: "After",
|
|
7534
7561
|
caption: "Flattened foundation pad with safe clearance.",
|
|
7535
|
-
content: /* @__PURE__ */ t(
|
|
7562
|
+
content: /* @__PURE__ */ t(Ea, {
|
|
7536
7563
|
label: "Foundation ready",
|
|
7537
7564
|
mode: "after"
|
|
7538
7565
|
})
|
|
@@ -7561,19 +7588,19 @@ var Sa = [
|
|
|
7561
7588
|
}]
|
|
7562
7589
|
}
|
|
7563
7590
|
];
|
|
7564
|
-
function
|
|
7591
|
+
function Oa() {
|
|
7565
7592
|
return /* @__PURE__ */ n("div", {
|
|
7566
7593
|
className: "game-ui-preview-two-up",
|
|
7567
|
-
children: [/* @__PURE__ */ t(
|
|
7568
|
-
jobs:
|
|
7594
|
+
children: [/* @__PURE__ */ t(Yi, {
|
|
7595
|
+
jobs: Da,
|
|
7569
7596
|
label: "AI contractor jobs",
|
|
7570
7597
|
selectedJobId: "review-house-pad",
|
|
7571
7598
|
subtitle: "Official contractor UI covers drafts, previews, robot work, validation, review, and local-only provider boundaries.",
|
|
7572
7599
|
title: "AI contractor",
|
|
7573
7600
|
variant: "desktop"
|
|
7574
|
-
}), /* @__PURE__ */ t(
|
|
7601
|
+
}), /* @__PURE__ */ t(Yi, {
|
|
7575
7602
|
drawerOpen: !0,
|
|
7576
|
-
jobs:
|
|
7603
|
+
jobs: Da,
|
|
7577
7604
|
label: "Small mobile contractor jobs",
|
|
7578
7605
|
selectedJobId: "blocked-fence",
|
|
7579
7606
|
title: "Contractor",
|
|
@@ -7581,10 +7608,10 @@ function Ca() {
|
|
|
7581
7608
|
})]
|
|
7582
7609
|
});
|
|
7583
7610
|
}
|
|
7584
|
-
function
|
|
7585
|
-
return /* @__PURE__ */ t(
|
|
7611
|
+
function ka() {
|
|
7612
|
+
return /* @__PURE__ */ t($r, {
|
|
7586
7613
|
title: "OwnMySpace island editor preview",
|
|
7587
|
-
hud: /* @__PURE__ */ t(
|
|
7614
|
+
hud: /* @__PURE__ */ t(ti, {
|
|
7588
7615
|
label: "Island facts",
|
|
7589
7616
|
facts: [
|
|
7590
7617
|
{
|
|
@@ -7608,11 +7635,11 @@ function wa() {
|
|
|
7608
7635
|
}
|
|
7609
7636
|
]
|
|
7610
7637
|
}),
|
|
7611
|
-
movementPad: /* @__PURE__ */ t(
|
|
7638
|
+
movementPad: /* @__PURE__ */ t(oi, {
|
|
7612
7639
|
helpText: "WASD or arrows",
|
|
7613
7640
|
label: "Move avatar"
|
|
7614
7641
|
}),
|
|
7615
|
-
assetLibrary: /* @__PURE__ */ t(
|
|
7642
|
+
assetLibrary: /* @__PURE__ */ t(di, {
|
|
7616
7643
|
label: "Placeable assets",
|
|
7617
7644
|
title: "Assets",
|
|
7618
7645
|
subtitle: "Starter, generated, and imported assets stay visibly distinct but share one placement path.",
|
|
@@ -7659,7 +7686,7 @@ function wa() {
|
|
|
7659
7686
|
}
|
|
7660
7687
|
]
|
|
7661
7688
|
}),
|
|
7662
|
-
bottomBar: /* @__PURE__ */ t(
|
|
7689
|
+
bottomBar: /* @__PURE__ */ t(fi, {
|
|
7663
7690
|
title: "Placement",
|
|
7664
7691
|
selectedTitle: "Manual chair",
|
|
7665
7692
|
placedObjects: 3,
|
|
@@ -7695,7 +7722,7 @@ function wa() {
|
|
|
7695
7722
|
})
|
|
7696
7723
|
});
|
|
7697
7724
|
}
|
|
7698
|
-
var
|
|
7725
|
+
var Aa = [{
|
|
7699
7726
|
id: "starter",
|
|
7700
7727
|
label: "Starter pieces",
|
|
7701
7728
|
source: "starter",
|
|
@@ -7726,7 +7753,7 @@ var Ta = [{
|
|
|
7726
7753
|
}
|
|
7727
7754
|
]
|
|
7728
7755
|
}];
|
|
7729
|
-
function
|
|
7756
|
+
function ja() {
|
|
7730
7757
|
return /* @__PURE__ */ t("div", {
|
|
7731
7758
|
className: "game-ui-asset-compression-repro",
|
|
7732
7759
|
"aria-label": "Asset card compression repro",
|
|
@@ -7750,9 +7777,9 @@ function Ea() {
|
|
|
7750
7777
|
className: "game-ui-asset-compression-repro-surface",
|
|
7751
7778
|
"data-repro-surface": e.id,
|
|
7752
7779
|
style: { "--repro-width": e.width },
|
|
7753
|
-
children: [/* @__PURE__ */ t(Q, { children: e.label }), /* @__PURE__ */ t(
|
|
7780
|
+
children: [/* @__PURE__ */ t(Q, { children: e.label }), /* @__PURE__ */ t(di, {
|
|
7754
7781
|
density: "dense",
|
|
7755
|
-
groups:
|
|
7782
|
+
groups: Aa,
|
|
7756
7783
|
label: `${e.label} assets`,
|
|
7757
7784
|
selectedAssetId: "asset-repro-chair",
|
|
7758
7785
|
title: "Build"
|
|
@@ -7760,13 +7787,13 @@ function Ea() {
|
|
|
7760
7787
|
}, e.id))
|
|
7761
7788
|
});
|
|
7762
7789
|
}
|
|
7763
|
-
function
|
|
7764
|
-
let { firstSession: e } =
|
|
7790
|
+
function Ma() {
|
|
7791
|
+
let { firstSession: e } = ua();
|
|
7765
7792
|
return /* @__PURE__ */ n("div", {
|
|
7766
7793
|
className: "game-ui-first-session-preview",
|
|
7767
7794
|
children: [/* @__PURE__ */ t("div", {
|
|
7768
7795
|
className: "game-ui-first-session-world",
|
|
7769
|
-
children: /* @__PURE__ */ t(
|
|
7796
|
+
children: /* @__PURE__ */ t(Ur, {
|
|
7770
7797
|
authenticated: !0,
|
|
7771
7798
|
batteryCount: 5,
|
|
7772
7799
|
dailyStreak: 3,
|
|
@@ -7800,7 +7827,7 @@ function Da() {
|
|
|
7800
7827
|
})
|
|
7801
7828
|
}), /* @__PURE__ */ t("div", {
|
|
7802
7829
|
className: "game-ui-first-session-modal-slot",
|
|
7803
|
-
children: /* @__PURE__ */ t(
|
|
7830
|
+
children: /* @__PURE__ */ t(Wr, {
|
|
7804
7831
|
open: !0,
|
|
7805
7832
|
onDismiss: () => void 0,
|
|
7806
7833
|
labels: {
|
|
@@ -7828,46 +7855,46 @@ function Da() {
|
|
|
7828
7855
|
})]
|
|
7829
7856
|
});
|
|
7830
7857
|
}
|
|
7831
|
-
function
|
|
7832
|
-
let { responsive: e } =
|
|
7858
|
+
function Na() {
|
|
7859
|
+
let { responsive: e } = ua();
|
|
7833
7860
|
return /* @__PURE__ */ n("div", {
|
|
7834
7861
|
className: "game-ui-proof-frames",
|
|
7835
7862
|
children: [/* @__PURE__ */ n("article", {
|
|
7836
7863
|
className: "game-ui-proof-frame is-desktop",
|
|
7837
|
-
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t(Q, { children: e.desktop }), /* @__PURE__ */ t("strong", { children: "1440×900" })] }), /* @__PURE__ */ t(
|
|
7864
|
+
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t(Q, { children: e.desktop }), /* @__PURE__ */ t("strong", { children: "1440×900" })] }), /* @__PURE__ */ t(ga, {})]
|
|
7838
7865
|
}), /* @__PURE__ */ n("article", {
|
|
7839
7866
|
className: "game-ui-proof-frame is-mobile-landscape",
|
|
7840
|
-
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t(Q, { children: e.mobileLandscape }), /* @__PURE__ */ t("strong", { children: "844×390" })] }), /* @__PURE__ */ t(
|
|
7867
|
+
children: [/* @__PURE__ */ n("header", { children: [/* @__PURE__ */ t(Q, { children: e.mobileLandscape }), /* @__PURE__ */ t("strong", { children: "844×390" })] }), /* @__PURE__ */ t(ga, {})]
|
|
7841
7868
|
})]
|
|
7842
7869
|
});
|
|
7843
7870
|
}
|
|
7844
|
-
function
|
|
7845
|
-
let { forms: e } =
|
|
7871
|
+
function Pa() {
|
|
7872
|
+
let { forms: e } = ua();
|
|
7846
7873
|
return /* @__PURE__ */ n("div", {
|
|
7847
7874
|
className: "game-ui-preview-two-up",
|
|
7848
7875
|
children: [/* @__PURE__ */ n(X, {
|
|
7849
7876
|
title: e.formsTitle,
|
|
7850
7877
|
tone: "strong",
|
|
7851
7878
|
children: [
|
|
7852
|
-
/* @__PURE__ */ t(
|
|
7879
|
+
/* @__PURE__ */ t(qr, {
|
|
7853
7880
|
hint: e.roomCodeHint,
|
|
7854
7881
|
label: e.roomCodeLabel,
|
|
7855
|
-
children: /* @__PURE__ */ t(
|
|
7882
|
+
children: /* @__PURE__ */ t(Gr, { placeholder: e.roomCodePlaceholder })
|
|
7856
7883
|
}),
|
|
7857
|
-
/* @__PURE__ */ t(
|
|
7884
|
+
/* @__PURE__ */ t(qr, {
|
|
7858
7885
|
label: e.nameLabel,
|
|
7859
7886
|
required: !0,
|
|
7860
|
-
children: /* @__PURE__ */ t(
|
|
7887
|
+
children: /* @__PURE__ */ t(Gr, { placeholder: e.namePlaceholder })
|
|
7861
7888
|
}),
|
|
7862
|
-
/* @__PURE__ */ t(
|
|
7889
|
+
/* @__PURE__ */ t(qr, {
|
|
7863
7890
|
error: e.readError,
|
|
7864
7891
|
label: e.readLabel,
|
|
7865
|
-
children: /* @__PURE__ */ t(
|
|
7892
|
+
children: /* @__PURE__ */ t(Kr, {
|
|
7866
7893
|
invalid: !0,
|
|
7867
7894
|
placeholder: e.readPlaceholder
|
|
7868
7895
|
})
|
|
7869
7896
|
}),
|
|
7870
|
-
/* @__PURE__ */ t(
|
|
7897
|
+
/* @__PURE__ */ t(Jr, {
|
|
7871
7898
|
defaultChecked: !0,
|
|
7872
7899
|
label: e.rememberLabel
|
|
7873
7900
|
})
|
|
@@ -7879,38 +7906,38 @@ function ka() {
|
|
|
7879
7906
|
/* @__PURE__ */ n("div", {
|
|
7880
7907
|
className: "game-ui-component-row",
|
|
7881
7908
|
children: [
|
|
7882
|
-
/* @__PURE__ */ t(
|
|
7909
|
+
/* @__PURE__ */ t(Xr, {
|
|
7883
7910
|
name: "Mika Ono",
|
|
7884
7911
|
status: "online"
|
|
7885
7912
|
}),
|
|
7886
|
-
/* @__PURE__ */ t(
|
|
7913
|
+
/* @__PURE__ */ t(Xr, {
|
|
7887
7914
|
name: "River",
|
|
7888
7915
|
size: "lg",
|
|
7889
7916
|
status: "busy"
|
|
7890
7917
|
}),
|
|
7891
|
-
/* @__PURE__ */ t(
|
|
7918
|
+
/* @__PURE__ */ t(Xr, {
|
|
7892
7919
|
name: "Noa",
|
|
7893
7920
|
status: "away"
|
|
7894
7921
|
}),
|
|
7895
|
-
/* @__PURE__ */ t(
|
|
7922
|
+
/* @__PURE__ */ t(Xr, {
|
|
7896
7923
|
name: e.guestName,
|
|
7897
7924
|
size: "sm"
|
|
7898
7925
|
})
|
|
7899
7926
|
]
|
|
7900
7927
|
}),
|
|
7901
|
-
/* @__PURE__ */ t(
|
|
7928
|
+
/* @__PURE__ */ t(Zr, {
|
|
7902
7929
|
label: e.revealLabel,
|
|
7903
7930
|
showValue: !0,
|
|
7904
7931
|
value: 64
|
|
7905
7932
|
}),
|
|
7906
|
-
/* @__PURE__ */ t(
|
|
7933
|
+
/* @__PURE__ */ t(Zr, {
|
|
7907
7934
|
label: e.batteryLabel,
|
|
7908
7935
|
max: 20,
|
|
7909
7936
|
showValue: !0,
|
|
7910
7937
|
tone: "success",
|
|
7911
7938
|
value: 14
|
|
7912
7939
|
}),
|
|
7913
|
-
/* @__PURE__ */ t(
|
|
7940
|
+
/* @__PURE__ */ t(Qr, {
|
|
7914
7941
|
action: /* @__PURE__ */ t(w, {
|
|
7915
7942
|
variant: "primary",
|
|
7916
7943
|
children: e.emptyCta
|
|
@@ -7923,8 +7950,8 @@ function ka() {
|
|
|
7923
7950
|
})]
|
|
7924
7951
|
});
|
|
7925
7952
|
}
|
|
7926
|
-
var
|
|
7927
|
-
function
|
|
7953
|
+
var Fa = pr.filter((e) => _r(e).includes("game")), Ia = pr.filter((e) => _r(e).includes("line"));
|
|
7954
|
+
function La({ names: e, style: r }) {
|
|
7928
7955
|
return /* @__PURE__ */ t("div", {
|
|
7929
7956
|
className: "game-ui-icon-grid",
|
|
7930
7957
|
children: e.map((e) => /* @__PURE__ */ n("figure", {
|
|
@@ -7937,10 +7964,10 @@ function Ma({ names: e, style: r }) {
|
|
|
7937
7964
|
}, `${r}-${e}`))
|
|
7938
7965
|
});
|
|
7939
7966
|
}
|
|
7940
|
-
function
|
|
7967
|
+
function Ra() {
|
|
7941
7968
|
return /* @__PURE__ */ t("div", {
|
|
7942
7969
|
className: "game-ui-icon-grid",
|
|
7943
|
-
children:
|
|
7970
|
+
children: yr.map((e) => /* @__PURE__ */ n("figure", {
|
|
7944
7971
|
className: "game-ui-icon-cell",
|
|
7945
7972
|
children: [/* @__PURE__ */ t("span", {
|
|
7946
7973
|
className: "game-ui-asset-icon",
|
|
@@ -7949,14 +7976,14 @@ function Na() {
|
|
|
7949
7976
|
"aria-hidden": !0,
|
|
7950
7977
|
children: /* @__PURE__ */ t("img", {
|
|
7951
7978
|
alt: "",
|
|
7952
|
-
src:
|
|
7979
|
+
src: vr[e]
|
|
7953
7980
|
})
|
|
7954
7981
|
}), /* @__PURE__ */ t("figcaption", { children: e })]
|
|
7955
7982
|
}, `sprite-${e}`))
|
|
7956
7983
|
});
|
|
7957
7984
|
}
|
|
7958
|
-
function
|
|
7959
|
-
let { gallery: e } =
|
|
7985
|
+
function za() {
|
|
7986
|
+
let { gallery: e } = ua();
|
|
7960
7987
|
return /* @__PURE__ */ n("div", {
|
|
7961
7988
|
className: "game-ui-icon-gallery",
|
|
7962
7989
|
children: [
|
|
@@ -7971,8 +7998,8 @@ function Pa() {
|
|
|
7971
7998
|
className: "game-ui-small-copy",
|
|
7972
7999
|
children: e.gameHint
|
|
7973
8000
|
})]
|
|
7974
|
-
}), /* @__PURE__ */ t(
|
|
7975
|
-
names:
|
|
8001
|
+
}), /* @__PURE__ */ t(La, {
|
|
8002
|
+
names: Fa,
|
|
7976
8003
|
style: "game"
|
|
7977
8004
|
})]
|
|
7978
8005
|
}),
|
|
@@ -7984,8 +8011,8 @@ function Pa() {
|
|
|
7984
8011
|
className: "game-ui-small-copy",
|
|
7985
8012
|
children: e.lineHint
|
|
7986
8013
|
})]
|
|
7987
|
-
}), /* @__PURE__ */ t(
|
|
7988
|
-
names:
|
|
8014
|
+
}), /* @__PURE__ */ t(La, {
|
|
8015
|
+
names: Ia,
|
|
7989
8016
|
style: "line"
|
|
7990
8017
|
})]
|
|
7991
8018
|
}),
|
|
@@ -8000,16 +8027,16 @@ function Pa() {
|
|
|
8000
8027
|
className: "game-ui-small-copy",
|
|
8001
8028
|
children: e.spriteHint
|
|
8002
8029
|
})]
|
|
8003
|
-
}), /* @__PURE__ */ t(
|
|
8030
|
+
}), /* @__PURE__ */ t(Ra, {})]
|
|
8004
8031
|
})
|
|
8005
8032
|
]
|
|
8006
8033
|
});
|
|
8007
8034
|
}
|
|
8008
|
-
function
|
|
8009
|
-
let [i, a] = m("en"), o =
|
|
8035
|
+
function Ba({ title: e, body: r }) {
|
|
8036
|
+
let [i, a] = m("en"), o = ca[i], s = e && i === "en" ? e : o.heroTitle, c = r && i === "en" ? r : o.heroBody;
|
|
8010
8037
|
return l(() => (document.documentElement.dataset.gameUiPreview = "clay", () => {
|
|
8011
8038
|
delete document.documentElement.dataset.gameUiPreview;
|
|
8012
|
-
}), []), /* @__PURE__ */ t(
|
|
8039
|
+
}), []), /* @__PURE__ */ t(la.Provider, {
|
|
8013
8040
|
value: o,
|
|
8014
8041
|
children: /* @__PURE__ */ n("main", {
|
|
8015
8042
|
"aria-label": "Swimmer UI Kit clay preview",
|
|
@@ -8022,7 +8049,7 @@ function Fa({ title: e, body: r }) {
|
|
|
8022
8049
|
tone: "ai",
|
|
8023
8050
|
children: "@pieai/swimmer-ui-kit"
|
|
8024
8051
|
}),
|
|
8025
|
-
/* @__PURE__ */ t(
|
|
8052
|
+
/* @__PURE__ */ t(zr, {
|
|
8026
8053
|
currentLabel: o.triggerLabel,
|
|
8027
8054
|
label: o.langMenuLabel,
|
|
8028
8055
|
onSelect: (e) => a(e),
|
|
@@ -8049,10 +8076,10 @@ function Fa({ title: e, body: r }) {
|
|
|
8049
8076
|
id: "game-ui-preview-token-title",
|
|
8050
8077
|
children: o.sections.tokens
|
|
8051
8078
|
}),
|
|
8052
|
-
/* @__PURE__ */ t(
|
|
8079
|
+
/* @__PURE__ */ t(pa, {}),
|
|
8053
8080
|
/* @__PURE__ */ t("div", {
|
|
8054
8081
|
className: "game-ui-token-ledger",
|
|
8055
|
-
children:
|
|
8082
|
+
children: da.map((e) => /* @__PURE__ */ t(fa, {
|
|
8056
8083
|
id: e.id,
|
|
8057
8084
|
label: o.tokenGroups[e.id] ?? e.id,
|
|
8058
8085
|
tokens: e.tokens
|
|
@@ -8072,7 +8099,7 @@ function Fa({ title: e, body: r }) {
|
|
|
8072
8099
|
className: "game-ui-small-copy",
|
|
8073
8100
|
children: o.iconsIntro
|
|
8074
8101
|
}),
|
|
8075
|
-
/* @__PURE__ */ t(
|
|
8102
|
+
/* @__PURE__ */ t(za, {})
|
|
8076
8103
|
]
|
|
8077
8104
|
}),
|
|
8078
8105
|
/* @__PURE__ */ n("section", {
|
|
@@ -8081,7 +8108,7 @@ function Fa({ title: e, body: r }) {
|
|
|
8081
8108
|
children: [/* @__PURE__ */ t("h2", {
|
|
8082
8109
|
id: "game-ui-preview-type-title",
|
|
8083
8110
|
children: o.sections.typography
|
|
8084
|
-
}), /* @__PURE__ */ t(
|
|
8111
|
+
}), /* @__PURE__ */ t(ma, {})]
|
|
8085
8112
|
}),
|
|
8086
8113
|
/* @__PURE__ */ n("section", {
|
|
8087
8114
|
"aria-labelledby": "game-ui-preview-components-title",
|
|
@@ -8091,11 +8118,11 @@ function Fa({ title: e, body: r }) {
|
|
|
8091
8118
|
id: "game-ui-preview-components-title",
|
|
8092
8119
|
children: o.sections.components
|
|
8093
8120
|
}),
|
|
8094
|
-
/* @__PURE__ */ t(ua, {}),
|
|
8095
|
-
/* @__PURE__ */ t(da, {}),
|
|
8096
|
-
/* @__PURE__ */ t(ma, {}),
|
|
8097
8121
|
/* @__PURE__ */ t(ha, {}),
|
|
8098
|
-
/* @__PURE__ */ t(
|
|
8122
|
+
/* @__PURE__ */ t(ga, {}),
|
|
8123
|
+
/* @__PURE__ */ t(ya, {}),
|
|
8124
|
+
/* @__PURE__ */ t(ba, {}),
|
|
8125
|
+
/* @__PURE__ */ t($n, {
|
|
8099
8126
|
entries: o.history,
|
|
8100
8127
|
label: o.historyLabel
|
|
8101
8128
|
})
|
|
@@ -8107,7 +8134,7 @@ function Fa({ title: e, body: r }) {
|
|
|
8107
8134
|
children: [/* @__PURE__ */ t("h2", {
|
|
8108
8135
|
id: "game-ui-preview-forms-title",
|
|
8109
8136
|
children: o.sections.forms
|
|
8110
|
-
}), /* @__PURE__ */ t(
|
|
8137
|
+
}), /* @__PURE__ */ t(Pa, {})]
|
|
8111
8138
|
}),
|
|
8112
8139
|
/* @__PURE__ */ n("section", {
|
|
8113
8140
|
"aria-labelledby": "game-ui-preview-overlay-glass-title",
|
|
@@ -8121,7 +8148,7 @@ function Fa({ title: e, body: r }) {
|
|
|
8121
8148
|
className: "game-ui-small-copy",
|
|
8122
8149
|
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."
|
|
8123
8150
|
}),
|
|
8124
|
-
/* @__PURE__ */ t(
|
|
8151
|
+
/* @__PURE__ */ t(_a, {})
|
|
8125
8152
|
]
|
|
8126
8153
|
}),
|
|
8127
8154
|
/* @__PURE__ */ n("section", {
|
|
@@ -8136,7 +8163,7 @@ function Fa({ title: e, body: r }) {
|
|
|
8136
8163
|
className: "game-ui-small-copy",
|
|
8137
8164
|
children: o.liquidMetal.body
|
|
8138
8165
|
}),
|
|
8139
|
-
/* @__PURE__ */ t(
|
|
8166
|
+
/* @__PURE__ */ t(va, {})
|
|
8140
8167
|
]
|
|
8141
8168
|
}),
|
|
8142
8169
|
/* @__PURE__ */ n("section", {
|
|
@@ -8145,7 +8172,7 @@ function Fa({ title: e, body: r }) {
|
|
|
8145
8172
|
children: [/* @__PURE__ */ t("h2", {
|
|
8146
8173
|
id: "game-ui-preview-ownmyspace-title",
|
|
8147
8174
|
children: "OwnMySpace game surface pack"
|
|
8148
|
-
}), /* @__PURE__ */ t(
|
|
8175
|
+
}), /* @__PURE__ */ t(ka, {})]
|
|
8149
8176
|
}),
|
|
8150
8177
|
/* @__PURE__ */ n("section", {
|
|
8151
8178
|
"aria-labelledby": "game-ui-preview-terrain-build-title",
|
|
@@ -8159,7 +8186,7 @@ function Fa({ title: e, body: r }) {
|
|
|
8159
8186
|
className: "game-ui-small-copy",
|
|
8160
8187
|
children: "Official terrain controls cover mode, brush, material, undo/redo, build library, status, progress, and compact mobile drawer surfaces."
|
|
8161
8188
|
}),
|
|
8162
|
-
/* @__PURE__ */ t(
|
|
8189
|
+
/* @__PURE__ */ t(Ta, {})
|
|
8163
8190
|
]
|
|
8164
8191
|
}),
|
|
8165
8192
|
/* @__PURE__ */ n("section", {
|
|
@@ -8174,7 +8201,7 @@ function Fa({ title: e, body: r }) {
|
|
|
8174
8201
|
className: "game-ui-small-copy",
|
|
8175
8202
|
children: "Official construction surfaces cover job queue states, before/after review, robot crew status, validation warnings, approval actions, and local-only provider badges."
|
|
8176
8203
|
}),
|
|
8177
|
-
/* @__PURE__ */ t(
|
|
8204
|
+
/* @__PURE__ */ t(Oa, {})
|
|
8178
8205
|
]
|
|
8179
8206
|
}),
|
|
8180
8207
|
/* @__PURE__ */ n("section", {
|
|
@@ -8189,7 +8216,7 @@ function Fa({ title: e, body: r }) {
|
|
|
8189
8216
|
className: "game-ui-small-copy",
|
|
8190
8217
|
children: "Official asset cards must stay visually complete when a game shell uses dense, narrow, or rail-style inventory slots."
|
|
8191
8218
|
}),
|
|
8192
|
-
/* @__PURE__ */ t(
|
|
8219
|
+
/* @__PURE__ */ t(ja, {})
|
|
8193
8220
|
]
|
|
8194
8221
|
}),
|
|
8195
8222
|
/* @__PURE__ */ n("section", {
|
|
@@ -8198,7 +8225,7 @@ function Fa({ title: e, body: r }) {
|
|
|
8198
8225
|
children: [/* @__PURE__ */ t("h2", {
|
|
8199
8226
|
id: "game-ui-preview-first-session-title",
|
|
8200
8227
|
children: o.sections.firstSession
|
|
8201
|
-
}), /* @__PURE__ */ t(
|
|
8228
|
+
}), /* @__PURE__ */ t(Ma, {})]
|
|
8202
8229
|
}),
|
|
8203
8230
|
/* @__PURE__ */ n("section", {
|
|
8204
8231
|
"aria-labelledby": "game-ui-preview-orientation-title",
|
|
@@ -8206,7 +8233,7 @@ function Fa({ title: e, body: r }) {
|
|
|
8206
8233
|
children: [/* @__PURE__ */ t("h2", {
|
|
8207
8234
|
id: "game-ui-preview-orientation-title",
|
|
8208
8235
|
children: o.sections.orientation
|
|
8209
|
-
}), /* @__PURE__ */ t(
|
|
8236
|
+
}), /* @__PURE__ */ t(Rr, {
|
|
8210
8237
|
badgeLabel: o.orientation.badge,
|
|
8211
8238
|
body: o.orientation.body,
|
|
8212
8239
|
cta: o.orientation.cta,
|
|
@@ -8221,11 +8248,11 @@ function Fa({ title: e, body: r }) {
|
|
|
8221
8248
|
children: [/* @__PURE__ */ t("h2", {
|
|
8222
8249
|
id: "game-ui-preview-responsive-title",
|
|
8223
8250
|
children: o.sections.responsive
|
|
8224
|
-
}), /* @__PURE__ */ t(
|
|
8251
|
+
}), /* @__PURE__ */ t(Na, {})]
|
|
8225
8252
|
})
|
|
8226
8253
|
]
|
|
8227
8254
|
})
|
|
8228
8255
|
});
|
|
8229
8256
|
}
|
|
8230
8257
|
//#endregion
|
|
8231
|
-
export {
|
|
8258
|
+
export { br as CLAY_ASSETS, dr as CLAY_ASSET_BASE_PATH, xe as CLAY_ASSET_SIZE_TOKENS, L as CLAY_COLOR_TOKENS, U as CLAY_ELEVATION_TOKENS, vr as CLAY_GAME_SPRITES, yr as CLAY_GAME_SPRITE_NAMES, pr as CLAY_ICON_NAMES, fr 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, _e as CLAY_OVERLAY_GLASS_TOKENS, _e as GAME_UI_OVERLAY_GLASS_TOKENS, H as CLAY_RADIUS_TOKENS, B as CLAY_SEMANTIC_TOKENS, ve as CLAY_SPACE_TOKENS, be as CLAY_TARGET_TOKENS, V 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, Ur as FirstSessionHud, Wr as FirstSessionOnboarding, aa as GAME_UI_OVERLAY, ra as GAME_UI_PREVIEW_MESSAGES, oa as GAME_UI_TARGETS, sa as GAME_UI_THEME_CONTRACT, ia as GAME_UI_TOKENS, ri as GameActionGrid, ui as GameAssetCard, $ as GameAssetIcon, di as GameAssetLibrary, Xr as GameAvatar, Q as GameBadge, Ki as GameBeforeAfterToggle, Si as GameBrushControls, Ti as GameBuildLibrary, w as GameButton, Zn as GameCallout, Fr as GameCardFan, Jr as GameCheckbox, Qi as GameCollapsiblePanel, Ei as GameCompactGameDrawer, Ji as GameCompactJobDrawer, Wi as GameConstructionApprovalBar, qi as GameConstructionJobCard, Ui as GameConstructionProgress, Yi as GameContractorPanel, Qn as GameDialog, Qr as GameEmptyState, ti as GameFactList, qr as GameField, $n as GameHistoryPanel, Pr as GameHud, er as GameHudActions, tr as GameIconButton, Gr as GameInput, zr as GameLanguageMenu, Br as GameLoadingState, Ci as GameMaterialSwatches, na as GameModal, oi as GameMovementPad, pi as GameObjectToolbar, Rr as GameOrientationGate, X as GamePanel, fi as GamePlacementToolbar, Zr as GameProgress, ur as GamePrompt, cr as GameRadialMenu, Gi as GameRobotCrewStatus, ei as GameSceneHudLayout, ar as GameSegmentedControl, $r as GameShell, or as GameSlider, Ir as GameStageTile, ni as GameStatList, rr as GameTabs, ki as GameTerrainBuildToolbox, bi as GameTerrainModeControl, xi as GameTerrainToolStrip, Kr as GameTextArea, lr as GameToast, sr as GameToggle, nr as GameTooltip, Ba as GameUiPreview, wi as GameUndoRedoActions, ta as GameWindowPanel, an as IMAGE_MELT_DEFAULTS, Ve as LIQUID_GOOEY_WAVINESS_MAX_FRACTION, Xn as LiquidGroup, Yn as LiquidItem, I as LiquidMetalButton, jr as acknowledgeClayPlaceholders, Or as getClayAssetBasePath, Er as getClayAssetMode, Vr as getClayCatalogPaths, Mr as getClayIconPath, _r as getClayIconStyles, Nr as getClaySourceAssetPath, Oe as getLiquidGooeyBudget, O as getLiquidMetalContextBudget, C as playGameInteractionSound, S as playGameInteractionSoundForContext, un as resolveDissolveOptions, Dr as setClayAssetBasePath, Tr as setClayAssetMode, ke as setLiquidGooeyBudget, ee as setLiquidMetalContextBudget };
|